def __init__(self, hostname, debug=False, errorchecking=True): self._debug = bool(debug) self._debug_verbose = debug > 1 self._SCPI = _SCPI.SCPI(hostname, 5025, self._debug_verbose) ident = self._SCPI.query('*IDN?\n') self._DNUM = ident.split(',')[1] if self._debug: print 'Connected to:\n ', ident if hasattr(self, 'DEVSTR'): if self._DNUM != self.DEVSTR: raise AgilentDeviceError('Wrong Agilent device! ' 'Connected to a %s' % self._DNUM)
def start_measure(): # open remote measurement device (replace "hostname" by its actual name) device = SCPI.SCPI("192.168.0.94") #setup voltage meter device.setVoltage(1, 2.8) #device.setCurrent(1, 0.1) # enable output device.setOutput(1, True) print "Start measurement..." device.startPowerMeasurement(1, 3000) time.sleep(10) print "Collect data..." current = device.getCurrentMeasurements(1, 30000) time = 0 # plot data for item in current: print str(time) + " " + str(item) + "\n" time = time + 0.001
from types import * from numpy import array import SCPI # font settings rcParams['pdf.use14corefonts'] = True rcParams['font.family'] = 'serif' rcParams['font.serif'] = 'Helvetica' rcParams['ps.useafm'] = True rcParams['axes.unicode_minus'] = False # open remote measurement device (replace "hostname" by its actual name) device = SCPI.SCPI("hostname") y = list() timebase = 0.1 # timebase in seconds slices = 20 # number of measurements channel = 1 # setup device for measurement device.setup(timebase, channel) for i in range(slices): print time.time() voltage = 1000*device.measure(channel) y.extend(voltage)
RD_Div = 0.5426 RTD_M_Div = 0.3835 GD0_Div = 0.3210 PCLK2_Div = 0.8264 PCLK1_Div = 0.8554 PCLK0_Div = 0.8850 RTD_P1_Div = 0.3333 RG_Div = 0.5000 RTD_P0_Div = 0.3333 SCLK0_Div = 0.8006 SCLK1_Div = 0.7692 SCLK2_Div = 0.7353 GD1_Div = 0.3210 OG_Div = 0.6289 device = SCPI.SCPI("192.168.0.2", 1394) print("Connected.") for loop in range(0, 4, 1): #print("Factory configuration.") device.s.send("SYST:PRES\n") time.sleep(2) #print("Clears buffer.") device.s.send("TRAC:CLE\n") #print("Disables continuous initiation.") device.s.send("INIT:CONT OFF\n") #print("Immediate trigger control source.") device.s.send("TRIG:SOUR IMM\n") #print("One Scan.") device.s.send("TRIG:COUN 1\n")
import SCPI import time totalSamples = 5000 sampleFreq = 500 freq = SCPI.SCPI("172.17.5.121") voltage = SCPI.SCPI("172.17.5.125") current = SCPI.SCPI("172.17.5.124") #setup freq gen freq.setSquare() freq.setVoltage(0, 3) freq.setFrequency(sampleFreq) #setup voltage meter voltage.setVoltageDC("10V", "MAX") # set external trigger voltage.setTriggerSource() voltage.setTriggerCount(str(totalSamples)) # wait for trigger voltage.setInitiate() current.setCurrentDC("100mA", "MAX") current.setTriggerSource() current.setTriggerCount(str(totalSamples)) current.setInitiate() time.sleep(1) freq.setOutput(1)
import SCPI import time import numpy totalSamples = 10000 sampleFreq = 1000 freq= SCPI.SCPI("ag-fg0") voltage = SCPI.SCPI("ag-mm1") current = SCPI.SCPI("ag-mm0") #setup freq gen freq.setSquare() freq.setVoltage(0,3) freq.setFrequency(sampleFreq) #setup voltage meter voltage.setVoltageDC("10V", "MAX") # set external trigger voltage.setTriggerSource() voltage.setTriggerCount(str(totalSamples)) # wait for trigger voltage.setInitiate() current.setCurrentDC("100mA", "MAX") current.setTriggerSource() current.setFrequency(sampleFreq) current.setTriggerCount(str(totalSamples)) current.setInitiate() time.sleep(1)
import SCPI import time # Sampling frequency in Hz sampleFreq = 1000 freq = SCPI.SCPI("172.17.5.121") #left voltage = SCPI.SCPI("172.17.5.124") #right temperature = SCPI.SCPI("172.17.5.125") #setup freq gen freq.setSquare() freq.setVoltage(0, 3) freq.setFrequency(sampleFreq) #setup voltage meter voltage.setVoltageDC("100mV", "MAX") # set external trigger voltage.setTriggerSource() voltage.setTriggerCount() # wait for trigger voltage.setInitiate() temperature.setTemperature() temperature.setTriggerSource() temperature.setTriggerCount() temperature.setInitiate() time.sleep(1)
import SCPI import time import numpy totalSamples = 5000 sampleFreq = 500 freq = SCPI.SCPI("172.17.5.121") dmm = SCPI.SCPI("172.17.5.125") #setup freq gen freq.setSquare() freq.setVoltage(0, 3) freq.setFrequency(sampleFreq) #setup voltage meter dmm.setVoltageDC("10V", "MAX") # set external trigger dmm.setTriggerSource() dmm.setTriggerCount(str(totalSamples)) # wait for trigger dmm.setInitiate() dmm.setCurrentDC("100mA", "MAX") dmm.setTriggerSource() dmm.setTriggerCount(str(totalSamples)) dmm.setInitiate() time.sleep(1) freq.setOutput(1)
import SCPI import time import numpy totalSamples = 10 sampleFreq = 100 #freq= SCPI.SCPI("172.17.5.121") dmm = SCPI.SCPI("172.17.5.131") #setup freq gen #freq.setSquare() #freq.setVoltage(0,3) #freq.setFrequency(sampleFreq) #setup voltage meter #dmm.setVoltageDC("10V", "MAX") # set external trigger #dmm.setTriggerSource("INT") #dmm.setTriggerCount(str(totalSamples)) # wait for trigger dmm.setInitiate() dmm.setCurrentDC("500mA", "MAX") dmm.setTriggerSource("INT") dmm.setTriggerCount(str(totalSamples)) dmm.setInitiate() time.sleep(1) #freq.setOutput(1)