示例#1
0
    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)
示例#2
0
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
示例#3
0
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")
示例#5
0
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)
示例#7
0
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)