Teledyne T3AFG Arbitrary Waveform Generator

class pymeasure.instruments.teledyne.TeledyneT3AFG(adapter, name='Teledyne T3AFG', **kwargs)

Bases: SCPIMixin, Instrument

Represents the Teledyne T3AFG series of arbitrary waveform generator interface for interacting with the instrument.

Initially targeting T3AFG80, some features may not be available on lower end models and features from higher end models are not included here yet.

Future improvements (help welcomed):

  • Add other OUTPut related controls like Load and Polarity

  • Add other Basic Waveform related controls like Period

  • Add frequency ranges per model

  • Add channel coupling control

ch_1
Channel:

SignalChannel

ch_2
Channel:

SignalChannel

check_errors()

Read all errors from the instrument.

Returns:

List of error entries.

check_get_errors()

Check for errors after having gotten a property and log them.

Called if check_get_errors=True is set for that property.

If you override this method, you may choose to raise an Exception for certain errors.

Returns:

list – List of error entries.

check_set_errors()

Check for errors after having set a property and log them.

Called if check_set_errors=True is set for that property.

If you override this method, you may choose to raise an Exception for certain errors.

Returns:

list – List of error entries.

clear()

Clear the instrument status byte.

property complete: Any

Get the synchronization bit.

This property allows synchronization between a controller and a device. The Operation Complete query places an ASCII character 1 into the device’s Output Queue when all pending selected device operations have been finished.

property id: Any

Get the identification of the instrument.

property next_error: Any

Get the next error in the queue. If you want to read and log all errors, use check_errors() instead.

property options: Any

Get the device options installed.

read(**kwargs)

Read up to (excluding) read_termination or the whole read buffer.

Return type:

str

read_binary_values(**kwargs)

Read binary values from the device.

read_bytes(count, **kwargs)

Read a certain number of bytes from the instrument.

Parameters:
  • count (int) – Number of bytes to read. A value of -1 indicates to read the whole read buffer.

  • kwargs – Keyword arguments for the adapter.

Returns bytes:

Bytes response of the instrument (including termination).

Return type:

bytes

reset()

Reset the instrument.

shutdown()

Brings the instrument to a safe and stable state

Return type:

None

property status: Any

Get the status byte and Master Summary Status bit.

wait_for(query_delay=None)

Wait for some time. Used by ‘ask’ to wait before reading.

Parameters:

query_delay (Optional[float]) – Delay between writing and reading in seconds. None is default delay. (default: None)

Return type:

None

write(command, **kwargs)

Write a string command to the instrument appending write_termination.

Parameters:
  • command (str) – command string to be sent to the instrument

  • kwargs – Keyword arguments for the adapter.

Return type:

None

write_binary_values(command, values, *args, **kwargs)

Write binary values to the device.

Parameters:
  • command (str) – Command to send.

  • values (Sequence[Union[int, float]]) – The values to transmit.

  • **kwargs (*args,) – Further arguments to hand to the Adapter.

Return type:

None

write_bytes(content, **kwargs)

Write the bytes content to the instrument.

Return type:

None

class pymeasure.instruments.teledyne.teledyneT3AFG.SignalChannel(parent, id, **kwargs)

Bases: Channel

property amplitude: Any

Control the amplitude of waveform to be output in volts peak-to-peak. Has no effect when WVTP is NOISE or DC. Max amplitude depends on offset, frequency, and load. Amplitude is also limited by the channel max output amplitude.(dynamic)

property frequency: Any

Control the frequency of waveform to be output in Hertz. Has no effect when WVTP is NOISE or DC.(dynamic)

property max_output_amplitude: Any

Control the maximum output amplitude of the channel in volts peak to peak.(dynamic)

property offset: Any

Control the offset of waveform to be output in volts. Has no effect when WVTP is NOISE. Max offset depends on amplitude, frequency, and load. Offset is also limited by the channel max output amplitude.(dynamic)

property output_enabled: Any

Control whether the channel output is enabled (boolean).

property wavetype: Any

Control the type of waveform to be output. Options are: {‘SINE’, ‘SQUARE’, ‘RAMP’, ‘PULSE’, ‘NOISE’, ‘ARB’, ‘DC’, ‘PRBS’, ‘IQ’}