NAME

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

VERSION

version 3.611

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) 2017 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

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