#!/usr/bin/env python # coding: utf-8 # # QCoDeS Example with Signal Hound USB-SA124B ParameterWithSetpoints # This example build on top of the example in [Qcodes example with Signal Hound USB-SA124B.ipynb](Qcodes-example-with-Signal-Hound-USB-SA124B.ipynb) and shows how this driver can be used with a ParameterWithSetpoints # In[1]: # In[2]: from qcodes.dataset import Measurement, plot_by_id from qcodes.instrument_drivers.signal_hound import SignalHoundUSBSA124B # In[3]: mysa = SignalHoundUSBSA124B( "mysa", dll_path="C:\\Program Files\\Signal Hound\\Spike\\sa_api.dll" ) # In[4]: mysa.get_idn() # In[5]: mysa.frequency(2e9) mysa.span(0.5e6) # In[6]: mysa.avg(1) meas = Measurement() meas.register_parameter(mysa.freq_sweep) with meas.run() as datasaver: datasaver.add_result( (mysa.frequency_axis, mysa.frequency_axis.get()), ( mysa.freq_sweep, mysa.freq_sweep.get(), ), ) dataid = datasaver.run_id plot_by_id(dataid) # In[7]: mysa.avg(10) meas = Measurement() meas.register_parameter(mysa.freq_sweep) with meas.run() as datasaver: datasaver.add_result( (mysa.frequency_axis, mysa.frequency_axis.get()), ( mysa.freq_sweep, mysa.freq_sweep.get(), ), ) dataid = datasaver.run_id plot_by_id(dataid) # In[8]: mysa.avg(100) meas = Measurement() meas.register_parameter(mysa.freq_sweep) with meas.run() as datasaver: datasaver.add_result( (mysa.frequency_axis, mysa.frequency_axis.get()), ( mysa.freq_sweep, mysa.freq_sweep.get(), ), ) dataid = datasaver.run_id plot_by_id(dataid) # In[9]: mysa.frequency(3e9) mysa.span(1e6) meas = Measurement() meas.register_parameter(mysa.freq_sweep) with meas.run() as datasaver: datasaver.add_result( (mysa.frequency_axis, mysa.frequency_axis.get()), ( mysa.freq_sweep, mysa.freq_sweep.get(), ), ) dataid = datasaver.run_id plot_by_id(dataid) # In[10]: mysa.frequency(3e9) mysa.span(1e8) meas = Measurement() meas.register_parameter(mysa.freq_sweep) with meas.run() as datasaver: datasaver.add_result( (mysa.frequency_axis, mysa.frequency_axis.get()), ( mysa.freq_sweep, mysa.freq_sweep.get(), ), ) dataid = datasaver.run_id plot_by_id(dataid) # In[11]: mysa.close()