The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Lab::Moose::Instrument::Keysight33600 - Keysight 33500/33600 series Function/Arbitrary Waveform Generator (work in progress)

VERSION

version 3.901

SYNOPSIS

 use Lab::Moose;
 my $trueform = instrument(
    type => 'Keysight33600',
    connection_type => '...',
    connection_options => {...}
 );

 ### Setup waveform ###

 # Clear volatile memory
 $trueform->write(command => 'DATA:VOL:CLE');
 # write new waveform into volatile memory
 $trueform->write(command => 'DATA:ARB myarb, 0, 0, 0.1, ...,1, ...');
 # load the new waveform
 $trueform->write(command => 'SOUR:FUNC:ARB myarb');
 # set parameters
 $trueform->write(command => 'SOUR:VOLT 1'); # amplitude
 $trueform->write(command => 'FUNC:ARB:SRAT 100000'); # samples/points per second
 $trueform->write(command => 'FUNC:ARB:FILT STEP'); # interpolation type

 $trueform->write(command => 'OUTP:POL INV'); # invert output polarity 

 # Setup trigger input
 $trueform->write(command => 'BURS:MODE TRIG');
 $trueform->write(command => 'BURS:NCYC 1'); # one ramp per trigger
 $trueform->write(command => 'TRIG:SOUR BUS'}; # use *TRG command as trigger
 

 # Setup trigger output
 $trueform->write(command => 'OUTP:TRIG 1');
 $trueform->write(command => 'OUTP:TRIG:SLOP NEG');
 

 # Turn output on
 $trueform->write(command => 'OUTP ON');

METHODS

Used roles:

Lab::Moose::Instrument::Common

COPYRIGHT AND LICENSE

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

  Copyright 2022       Simon Reinhardt

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