Exemplo n.º 1
0
    def __init__(self, name, address, reset=False,ip="",delay=0):
        '''
        Initializes the AVS_47, and communicates with the wrapper.

        Input:
            name (string)    : name of the instrument
            address (string) : GPIB address
            reset (bool)     : resets to default values, default=false

        Output:
            None
        '''
        
        Instrument.__init__(self, name, tags=['physical'])

        self._address = address
        self._visainstrument = visa.instrument(self._address,ip=ip,delay=delay)

        self.add_parameter('delay', type=types.FloatType,
            flags=Instrument.FLAG_GETSET | Instrument.FLAG_GET_AFTER_SET,
            channels=(1, 2), minval=0.0, maxval=999, units='sec',channel_prefix='ch%d_')

        self.add_function('reset')
        self.add_function('get_all')

        if reset:
            self.reset()
        else:
            self.get_all()
Exemplo n.º 2
0
    def __init__(self, name, address, ip=""):

        Instrument.__init__(self, name, tags=['physical'])

        self._address = address
        self._visainstrument = visa.instrument(self._address, ip=ip)

        self.set_default()  #reset

        self.add_function('set_default')
        self.add_function('get_bandwidth')
        self.add_function('set_bandwidth')
        self.add_function('get_auto_zero')
        self.add_function('set_auto_zero')
        self.add_function('get_configuration')
        self.add_function('get_measurement_mode')
        self.add_function('get_range')
        self.add_function('get_resolution')
        self.add_function('set_measurement_mode')
        self.add_function('set_range_resolution')
        self.add_function('get_NPLC')
        self.add_function('set_NPLC')
        self.add_function('get_autorange')
        self.add_function('set_autorange')
        self.add_function('measure')
Exemplo n.º 3
0
    def __init__(self, name, address,ip=""):

        Instrument.__init__(self, name, tags=['physical'])

        self._address = address
        self._visainstrument = visa.instrument(self._address,ip=ip)

        self.set_default() #reset

        self.add_function('set_default')
        self.add_function('get_bandwidth')
        self.add_function('set_bandwidth')
        self.add_function('get_auto_zero')
        self.add_function('set_auto_zero')
        self.add_function('get_configuration')
        self.add_function('get_measurement_mode')
        self.add_function('get_range')
        self.add_function('get_resolution')
        self.add_function('set_measurement_mode')
        self.add_function('set_range_resolution')
        self.add_function('get_NPLC')
        self.add_function('set_NPLC')
        self.add_function('get_autorange')
        self.add_function('set_autorange')
        self.add_function('measure')
Exemplo n.º 4
0
    def __init__(self,
                 name,
                 ip="129.13.93.65",
                 gpib="GPIB::0",
                 delay = 0.2, 
                 SIM921_port=6,
                 SIM925_port=8,
                 SIM928_port=2):
        
        
        self.SIM=visa.instrument(gpib,ip=ip,delay=delay)
        self.SIM921_port = SIM921_port
        self.SIM925_port = SIM925_port
        self.SIM928_port = SIM928_port
        #  mutex locks
        self.ctrl_lock = Lock()

        print "params",ip,gpib,delay,SIM921_port,SIM925_port,SIM928_port
Exemplo n.º 5
0
    def __init__(self, name, address, ip=""):

        Instrument.__init__(self, name, tags=['physical'])

        self._address = address
        self._visainstrument = visa.instrument(self._address, ip=ip)

        self.set_default()  # reset everything to:

        #REFERENCE / PHASE
        #Phase                  0.000 deg
        #Reference Source       Internal
        #Harmonic               1
        #Sine Amplitude         1.000 Vrms
        #Internal Frequency     1.000 kHz
        #Ext Reference Trigger  Sine
        #
        #INPUT / FILTERS
        #Source                 A
        #Grounding              Float
        #Coupling               AC
        #Line Notches           Out
        #
        #GAIN / TC
        #Sensitivity            1V
        #Reserve                Low Noise
        #Time Constant          100 ms
        #Filter dB/oct.         12 dB
        #Synchronous            Off
        #
        #DISPLAY
        #CH1                    X
        #CH2                    Y
        #Ratio                  None
        #Reference              Frequency
        #
        #OUTPUT / OFFSET
        #CH1 Output             X
        #CH2 Output             Y
        #All Offsets            0.00%
        #All Expands            1
        #
        #AUX OUTPUTS
        #All Output Voltages    0.000 V
        #
        #SETUP
        #Output To              GPIB
        #GPIB Address           8
        #RS232 Baud Rate        9600
        #Parity                 None
        #Key Click              On
        #Alarms                 On
        #Override Remote        On
        #
        #DATA STORAGE
        #Sample Rate            1 Hz
        #Scan Mode              Loop
        #Trigger Starts         No
        #
        #STATUS ENABLE
        #REGISTERS              Cleared

        self.add_function('set_default')
        self.add_function('set_outx')
        self.add_function('get_reference')
        self.add_function('set_reference')
        self.add_function('get_phase_shift')
        self.add_function('set_phase_shift')
        self.add_function('get_frequency')
        self.add_function('set_frequency')
        self.add_function('get_ref_trigger')
        self.add_function('set_ref_trigger')
        self.add_function('get_harmonic')
        self.add_function('set_harmonic')
        self.add_function('get_sine_ampl')
        self.add_function('set_sine_ampl')
        self.add_function('get_input_source')
        self.add_function('set_input_source')
        self.add_function('get_input_shield_gnd')
        self.add_function('set_input_shield_gnd')
        self.add_function('get_input_coupling')
        self.add_function('set_input_coupling')
        self.add_function('get_notch_filters')
        self.add_function('set_notch_filters')
        self.add_function('get_sensitivity')
        self.add_function('set_sensitivity')
        self.add_function('get_reserve_mode')
        self.add_function('set_reserve_mode')
        self.add_function('get_time_constant')
        self.add_function('set_time_constant')
        self.add_function('get_filter_slope')
        self.add_function('set_filter_slope')
        self.add_function('get_sync_filter')
        self.add_function('set_sync_filter')
        self.add_function('get_display_CH1')
        self.add_function('get_display_CH2')
        self.add_function('get_display_CH')
        self.add_function('set_display_CH')
        self.add_function('get_front_panel_output_source_CH1')
        self.add_function('get_front_panel_output_source_CH2')
        self.add_function('get_front_panel_output_source')
        self.add_function('set_front_panel_output_source')
        self.add_function('get_offsets_and_expands_X')
        self.add_function('get_offsets_and_expands_Y')
        self.add_function('get_offsets_and_expands_R')
        self.add_function('get_offsets_and_expands')
        self.add_function('set_offsets_and_expands')
        self.add_function('set_auto_offset_X')
        self.add_function('set_auto_offset_Y')
        self.add_function('set_auto_offset_R')
        self.add_function('set_auto_offset')
        self.add_function('get_aux_input_AUX1')
        self.add_function('get_aux_input_AUX2')
        self.add_function('get_aux_input_AUX3')
        self.add_function('get_aux_input_AUX4')
        self.add_function('get_aux_input')
        self.add_function('get_aux_output')
        self.add_function('get_aux_output_AUX1')
        self.add_function('get_aux_output_AUX2')
        self.add_function('get_aux_output_AUX3')
        self.add_function('get_aux_output_AUX4')
        self.add_function('set_aux_output')
        self.add_function('set_override_remote')
        self.add_function('save_setup')
        self.add_function('recall_setup')
        self.add_function('get_output')
        self.add_function('get_output_X')
        self.add_function('get_output_Y')
        self.add_function('get_output_Z')
        self.add_function('get_output_theta')
        self.add_function('get_snap')
Exemplo n.º 6
0
    def __init__(self,
                 name,
                 ip="129.13.93.80",
                 gpib="GPIB::12",
                 delay = 0.1,
                   reset=False, 
                   **kwargs
               ):
                
        self._visa = visa.instrument(gpib,ip=ip,delay=delay)
        
        self._channels = kwargs.get('channels', (1, 2, 5, 6, 7, 8))
        #self.set_scanner_channel
        self.channel = self._get_Channel()
        
        self.R_format_map = {
            1: '2 mOhm',
            2: '6.32 mOhm',
            3: '20 mOhm',
            4: '63.2 mOhm',
            5: '200 mOhm',
            6: '632 mOhm',
            7: '2 Ohm',
            8: '6.32 Ohm',
            9: '20 Ohm',
            10: '63.2 Ohm',
            11: '200 Ohm',
            12: '632 Ohm',
            13: '2 kOhm',
            14: '6.32 kOhm',
            15: '20 kOhm',
            16: '63.2 kOhm',
            17: '200 kOhm',
            18: '632 kOhm',
            19: '2 MOhm',
            20: '6.32 MOhm',
            21: '20 MOhm',
            22: '63.2 MOhm'
            }

        self.Exe_format_map = {
            1: '2 uV or 1 pA',
            2: '6.32 uV or 3.16 pA',
            3: '20 uV or 10 pA',
            4: '63.2 uV or 31.6 pA',
            5: '200 uV or 100 pA',
            6: '632 uV or 316 pA',
            7: '2 mV or 1 nA',
            8: '6.32 mV or 3.16 nA',
            9: '20 mV or 10 nA',
            10: '63.2 mV or 31.6 nA',
            11: '200 mV or 100 nA',
            12: '632 mV or 316nA',
            13: '1 uA',
            14: '3.16 uA',
            15: '10 uA',
            16: '31.6 uA',
            17: '100 uA',
            18: '316 uA',
            19: '1 mA',
            20: '3,16 mA',
            21: '10 mA',
            22: '31.6 mA'
            }


        self._heater_ranges = {
            0: 'off',
            1: '31.6 uA',
            2: '100 uA',
            3: '316 uA',
            4: '1 mA',
            5: '3.16 mA',
            6: '10 mA',
            7: '31.6 mA',
            8: '100 mA' }