Skip to content

Agilent33220#

Controls an Agilent 33220A function/pulse generator (used as a pulser) from Python. This class inherits from MeasmaticDevice.


property max_output_voltage#

Gets the maximum output voltage of the pulser in volts.

Returns#

Type Description
float The maximum output voltage in volts.

Example#

pulser = measmatic.get_device('device-pulser')
v_max = pulser.max_output_voltage

property max_pulse_count#

Gets the maximum number of pulses that can be generated per trigger.

Returns#

Type Description
int The maximum pulse count.

Example#

pulser = measmatic.get_device('device-pulser')
n_max = pulser.max_pulse_count

property min_transition_time#

Gets the minimum pulse transition (rise/fall) time in seconds.

Returns#

Type Description
float The minimum transition time in seconds.

Example#

pulser = measmatic.get_device('device-pulser')
t_min = pulser.min_transition_time

method check_errors()#

Reads the device error queue and raises an error if the device reports one.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.check_errors()

method check_pulse_option()#

Checks that the pulse option is available. This device performs no check.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.check_pulse_option()

method output(outputOn: bool)#

Switches the pulser output on or off.

Parameters#

Name Description
outputOn True to switch the output on, False to switch it off.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.output(True)

method pulse_start()#

Starts the pulse sequence by sending a software trigger ( *TRG ).

Example#

pulser = measmatic.get_device('device-pulser')
pulser.pulse_start()

method reset()#

Resets the pulser to its default state ( *RST ).

Example#

pulser = measmatic.get_device('device-pulser')
pulser.reset()

method set_pulse_amplitude(amplitudeVolt: float, baseVolt: float)#

Sets the pulse amplitude and base level in volts. If the amplitude is below the base voltage, the output polarity is inverted (negative pulse). Both values must be within -10 V ... 10 V.

Parameters#

Name Description
amplitudeVolt The pulse level (peak) in volts.
baseVolt The base level in volts.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.set_pulse_amplitude(5.0, 0.0)

method set_pulse_count(pulseCount: int)#

Sets the number of pulses generated per trigger (burst cycles). Valid range is 1 ... 50000.

Parameters#

Name Description
pulseCount The number of pulses per trigger.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.set_pulse_count(10)

method set_pulse_period(pulsePeriod: float)#

Sets the pulse period in seconds. Valid range is 200 ns ... 2000 s and the period must not be shorter than the pulse width plus two transition times.

Parameters#

Name Description
pulsePeriod The pulse period in seconds.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.set_pulse_period(1e-3)

method set_pulse_transition_time(transTime: float)#

Sets the pulse transition (rise and fall) time in seconds. Valid range is 5 ns ... 100 ns.

Parameters#

Name Description
transTime The transition time in seconds.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.set_pulse_transition_time(10e-9)

method set_pulse_width(pulseWidth: float)#

Sets the pulse width in seconds. Valid range is 200 ns ... 1999 s.

Parameters#

Name Description
pulseWidth The pulse width in seconds.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.set_pulse_width(100e-6)

method set_trig_delay(trigDelayS: float)#

Sets the trigger delay in seconds. Not supported by this device; the call always raises a NotSupportedException .

Parameters#

Name Description
trigDelayS The trigger delay in seconds.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.set_trig_delay(0.0)

method set_trig_source(trigSource: Any)#

Sets the trigger source of the pulser.

Parameters#

Name Description
trigSource The trigger source of type Atv.Framework.Devices.Enumerations.PulserTriggerSource

Example#

from Atv.Framework.Devices.Enumerations import PulserTriggerSource
pulser = measmatic.get_device('device-pulser')
pulser.set_trig_source(PulserTriggerSource.Bus)

method wait_completed()#

Waits until the device has completed all pending operations ( *OPC? ) and raises an error otherwise.

Example#

pulser = measmatic.get_device('device-pulser')
pulser.wait_completed()