NAME

Lab::Connection::VISA_GPIB - GPIB-type connection class which uses NI VISA (Lab::VISA) as backend

VERSION

version 3.850

SYNOPSIS

This GPIB Connection class for Lab::Bus::VISA implements a GPIB-Standard connection on top of VISA (translates GPIB parameters to VISA resource names, mostly, to be exchangeable with other GPIB connections.

This class is not called directly. To make a GPIB suppporting instrument use Lab::Connection::VISA_GPIB, set the connection_type parameter accordingly:

$instrument = new HP34401A(
   connection_type => 'VISA_GPIB',
   gpib_board => 0,
   gpib_address => 14
)

DESCRIPTION

Lab::Connection::VISA_GPIB provides a GPIB-type connection with Lab::Bus::VISA using NI VISA (Lab::VISA) as backend.

It inherits from Lab::Connection::GPIB and subsequently from Lab::Connection.

The main feature is to assemble the standard gpib connection options gpib_board gpib_address gpib_saddress into a valid NI VISA resource name (see Lab::Connection::VISA for more details).

CONSTRUCTOR

new

my $connection = new Lab::Connection::VISA_GPIB(
   gpib_board => 0,
   gpib_address => $address,
   gpib_saddress => $secondary_address
}

METHODS

This just falls back on the methods inherited from Lab::Connection.

config

Provides unified access to the fields in initial @_ to all the child classes. E.g.

$GPIB_Address=$instrument->Config(gpib_address);

Without arguments, returns a reference to the complete $self->Config aka @_ of the constructor.

$Config = $connection->Config();
$GPIB_Address = $connection->Config()->{'gpib_address'};

TO DO

Access to GPIB VISA attributes, device clear, ...

CAVEATS/BUGS

Probably few. Mostly because there's not a lot to be done here. Please report.

SEE ALSO

COPYRIGHT AND LICENSE

This software is copyright (c) 2023 by the Lab::Measurement team; in detail:

Copyright 2011       Andreas K. Huettel, David Kalok, Florian Olbrich
          2012       Florian Olbrich, Stefan Geissler
          2013       Andreas K. Huettel
          2016       Simon Reinhardt
          2017       Andreas K. Huettel
          2020       Andreas K. Huettel

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.