HP 8116A 50 MHz Pulse/Function Generator
- class pymeasure.instruments.hp.HP8116A(adapter, name='Hewlett-Packard 8116A', **kwargs)
Bases:
Instrument
Represents the Hewlett-Packard 8116A 50 MHz Pulse/Function Generator and provides a high-level interface for interacting with the instrument. The resolution for all floating point instrument parameters is 3 digits.
- class Digit(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Bases:
Enum
Enum of the digits used with the autovernier (see
HP8116A.start_autovernier()
).
- class Direction(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Bases:
Enum
Enum of the directions used with the autovernier (see
HP8116A.start_autovernier()
).
- GPIB_trigger()
Initiate trigger via low-level GPIB-command (aka GET - group execute trigger).
- property amplitude
Control the amplitude of the output in V (strict float from 10e-3 to 16). The allowed amplitude range is also limited by the current offset.
- ask(command, num_bytes=None)
Write a command to the instrument, read the response, and return the response as ASCII text.
- Parameters
command – The command to send to the instrument.
num_bytes – The number of bytes to read from the instrument. If not specified, the number of bytes is automatically determined by the command.
- property autovernier_enabled
Control whether the autovernier is enabled (bool).
- property burst_number
Control the number of periods generated in a burst (strict int from 1 to 1999). It is only valid for units with Option 001 in one of the burst modes.
- check_errors()
Check for errors in the 8116A.
- Returns
list of error entries or empty list if no error occurred.
- property complement_enabled
Control whether the complement of the signal is generated (bool).
- property complete
Get whether the measurement is complete (bool).
- property control_mode
Control the control mode of the instrument. Possible values are ‘off’, ‘FM’, ‘AM’, ‘PWM’, ‘VCO’.
- property duty_cycle
Control the duty cycle of the output in percent (float). The allowed range generally is 10 % to 90 %, but it also depends on the current frequency. It is valid for all shapes except ‘pulse’, where
pulse_width
is used instead.
- property frequency
Control the frequency of the output in Hz (strict float from 1e-3 to 52.5e6).
- property haversine_enabled
Control whether a haversine/havertriangle signal is generated when in ‘triggered’, ‘internal_burst’ or ‘external_burst’ operating mode.
- property high_level
Control the high level of the output in V (strict float from -7.9 to 8). The allowed high level range must be at least 10 mV greater than the low level.
- property limit_enabled
Control whether parameter limiting is enabled (bool).
- property low_level
Control the low level of the output in V (strict float from -8 to 7.9). The allowed low level range must be at least 10 mV less than the high level.
- property offset
Control the offset of the output in V (strit float from -7.95 to 7.95). The allowed offset range is also limited by the amplitude.
- property operating_mode
Control the operating mode of the instrument. Possible values (without Option 001) are: ‘normal’, ‘triggered’, ‘gate’, ‘external_width’. With Option 001, ‘internal_sweep’, ‘external_sweep’, ‘external_width’, ‘external_pulse’ are also available.
- property options
Get the device options installed. The only possible option is 001.
- property output_enabled
Control whether the output is enabled (bool).
- property pulse_width
Control the pulse width in s (strict float from 8e-9 to 999e-3). The pulse width may not be larger than the period.
- property repetition_rate
Control the repetition rate in s (i.e. the time between bursts) in ‘internal_burst’ mode (strict float from 20e-9 to 999e-3).
- reset()
Initatiate a reset (like a power-on reset) of the 8116A.
- property shape
Control the shape of the output waveform. Possible values are: ‘dc’, ‘sine’, ‘triangle’, ‘square’, ‘pulse’.
- shutdown()
Gracefully close the connection to the 8116A.
- start_autovernier(control, digit, direction, start_value=None)
Start the autovernier on the specified control.
- Parameters
control – The control to change, pass as
HP8116A.some_control
. Allowed controls are frequency, amplitude, offset, duty_cycle, and pulse_widthdigit – The digit to change, type:
HP8116A.Digit
.direction – The direction in which to change the control, type:
HP8116A.Direction
.start_value – An optional value to start the autovernier at. If not specified, the current value of the control is used.
- property status
Get the status byte of the 8116A as a
Status
IntFlag-type enum.
- property sweep_marker_frequency
Control the frequency marker in both sweep modes in Hz (strict float from 1e-3 to 52.5e6). At this frequency, the marker output switches from low to high.
- property sweep_start
Control the start frequency in both sweep modes in Hz (strict float from 1e-3 to 52.5e6).
- property sweep_stop
Control the stop frequency in both sweep modes in Hz (strict float from 1e-3 to 52.5e6).
- property sweep_time
Control the sweep time per decade in both sweep modes in s (float). The sweep time is selectable in a 1-2-5 sequence between 10 ms and 500 s.
- property trigger_slope
Control the slope the trigger triggers on. Possible values are: ‘off’, ‘positive’, ‘negative’.
- write(command)
Write a command to the instrument and wait until the 8116A has interpreted it.