The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

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

VERSION

version 3.751

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) 2021 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.