lightlab.equipment.lab_instruments.Agilent_N5222A_NA module

Summary

Classes:

Agilent_N5222A_NA Agilent PNA N5222A , RF network analyzer

Reference

class Agilent_N5222A_NA(name='The network analyzer', address=None, **kwargs)[source]

Bases: lightlab.equipment.visa_bases.visa_driver.VISAInstrumentDriver, lightlab.equipment.abstract_drivers.configurable.Configurable

Agilent PNA N5222A , RF network analyzer

Manual

WARNING: The address is the same as the slow function generator, so don’t use both on andromeda at the same time.

Steep learning curve.

Usage: Instrument: NetworkAnalyzer

Todo

All the RF equipment is reusing __enaBlock. Make this a method of Configurable.

When setting up general, you have to setup sweep before setting CW frequency, or else the CW freq becomes the start frequency. Why? See hack in sweepSetup.

instrument_category

alias of lightlab.laboratory.instruments.interfaces.NetworkAnalyzer

startup()[source]
amplitude(amp=None)[source]

Amplitude is in dBm

Parameters:amp (float) – If None, only gets
Returns:output power amplitude
Return type:(float)
frequency(freq=None)[source]

Frequency is in Hertz

Setting the frequency takes you out of sweep mode automatically

Parameters:freq (float) – If None, only gets
Returns:center frequency
Return type:(float)
enable(enaState=None)[source]

Enabler for the entire output

Parameters:enaState (bool) – If None, only gets
Returns:is RF output enabled
Return type:(bool)
run()[source]
sweepSetup(startFreq, stopFreq, nPts=None, dwell=None, ifBandwidth=None)[source]

Configure sweep. See instrument for constraints; they are not checked here.

Does not auto-enable. You must also call :meth:`sweepEnable`

Parameters:
  • startFreq (float) – lower frequency in Hz
  • stopFreq (float) – upper frequency in Hz
  • nPts (int) – number of points
  • dwell (float) – time in seconds to wait at each sweep point. Default is minimum.
Returns:

None

sweepEnable(swpState=None)[source]

Switches between sweeping (True) and CW (False) modes

Parameters:swpState (bool) – If None, only gets, doesn’t set.
Returns:is the output sweeping
Return type:(bool)
normalize()[source]
triggerSetup(useAux=None, handshake=None, isSlave=False)[source]
getSwpDuration(forceHardware=False)[source]
measurementSetup(measType='S21', chanNum=None)[source]
spectrum()[source]
multiSpectra(nSpect=1, livePlot=False)[source]