Esempio n. 1
0
 def __init__(self, port):
     threading.Thread.__init__(self)
     self.d6400 = D6400.OmegaD6400(1, port)
     self.d6400.update_range_and_function(1, action='tc', fullrange='K')
     self.d6400.update_range_and_function(2, action='tc', fullrange='K')
     self.d6400.update_range_and_function(3, action='tc', fullrange='K')
     self.d6400.update_range_and_function(4, action='tc', fullrange='K')
     self.d6400.update_range_and_function(5, action='tc', fullrange='K')
     self.d6400.update_range_and_function(6, action='tc', fullrange='K')
     self.d6400.update_range_and_function(7, action='tc', fullrange='K')
     self.temperatures = [float('NaN'),
                          self.d6400.read_value(1),
                          self.d6400.read_value(2),
                          self.d6400.read_value(3),
                          self.d6400.read_value(4),
                          self.d6400.read_value(5),
                          self.d6400.read_value(6),
                          self.d6400.read_value(7)]
     self.quit = False
Esempio n. 2
0
def main():
    """ Main function """
    logging.basicConfig(filename="logger.txt", level=logging.ERROR)
    logging.basicConfig(level=logging.ERROR)

    omega = D6400.OmegaD6400(
        1,
        '/dev/serial/by-id/' + 'usb-FTDI_USB-RS485_Cable_FTWECCJP-if00-port0')
    omega.update_range_and_function(1, action='tc', fullrange='K')
    omega.update_range_and_function(2, action='tc', fullrange='K')
    omega.update_range_and_function(3, action='tc', fullrange='K')
    omega.update_range_and_function(4, action='tc', fullrange='K')
    omega.update_range_and_function(5, action='tc', fullrange='K')
    omega.update_range_and_function(6, action='tc', fullrange='K')
    omega.update_range_and_function(7, action='tc', fullrange='K')

    xgs = xgs600.XGS600Driver(
        '/dev/serial/by-id/usb-Prolific_Technology_Inc.' +
        '_USB-Serial_Controller_D-if00-port0')
    print(xgs.read_all_pressures())

    pressurereader = PressureReader(xgs)
    pressurereader.daemon = True
    pressurereader.start()

    tempreader = TemperatureReader(omega)
    tempreader.daemon = True
    tempreader.start()

    loggers = {}
    loggers['vhp_mass_spec_pressure'] = ValueLogger(pressurereader,
                                                    comp_val=0.1,
                                                    low_comp=1e-11,
                                                    comp_type='log',
                                                    channel=0)
    loggers['vhp_mass_spec_pressure'].start()

    loggers['vhp_pressure_pc_backside'] = ValueLogger(pressurereader,
                                                      comp_val=0.1,
                                                      low_comp=1e-3,
                                                      comp_type='log',
                                                      channel=1)
    loggers['vhp_pressure_pc_backside'].start()

    temp_codenames = [
        'vhp_T_reactor_inlet', 'vhp_T_reactor_outlet', 'vhp_T_reactor_top',
        'vhp_T_mass_spec', 'vhp_T_gas_lines', 'vhp_T_purifying_reactor',
        'vhp_T_furnace'
    ]

    for i in range(0, 7):
        loggers[temp_codenames[i]] = ValueLogger(tempreader,
                                                 comp_val=0.2,
                                                 comp_type='lin',
                                                 channel=i + 1)
        loggers[temp_codenames[i]].start()

    all_codenames = ['vhp_mass_spec_pressure', 'vhp_pressure_pc_backside'
                     ] + temp_codenames
    socket = DateDataPullSocket('vhp', all_codenames, timeouts=1.0)
    socket.start()

    db_logger = ContinuousDataSaver(
        continuous_data_table='dateplots_vhp_setup',
        username=credentials.user,
        password=credentials.passwd,
        measurement_codenames=all_codenames)
    db_logger.start()
    time.sleep(5)

    while tempreader.isAlive():
        time.sleep(0.5)
        for name in all_codenames:
            value = loggers[name].read_value()
            if loggers[name].read_trigged():
                print(value)
                db_logger.save_point_now(name, value)
                loggers[name].clear_trigged()
Esempio n. 3
0
    def value(self):
        """ Return the value of the reader """
        return (self.pressure)

    def run(self):
        while not self.quit:
            time.sleep(1)
            self.pressure = self.omega.read_value(1)


#logging.basicConfig(filename="logger.txt", level=logging.ERROR)
#logging.basicConfig(level=logging.ERROR)

port = '/dev/serial/by-id/usb-FTDI_USB-RS485_Cable_FTWE9PXJ-if00-port0'
omega_instance = omega_D6400.OmegaD6400(address=1, port=port)
piranis = []
pressurereader = PressureReader(omega_instance)
pressurereader.daemon = True
pressurereader.start()

logger = ValueLogger(pressurereader, comp_val=0.1)
logger.start()

name = 'stm312_pressure'
codenames = [
    'stm312_hpc_baratron', 'stm312_prepump_bigturbo',
    'stm312_prepump_gashandling', 'stm312_prepump_diff',
    'stm312_prepump_loadlock', 'oldclustersource_prepump_aggregation',
    'oldclustersource_prepump_quadrupole', 'oldclustersource_iongauge',
    'oldclustersource_pirani'
Esempio n. 4
0
def main():
    """ Main function """
    logging.basicConfig(filename="logger.txt", level=logging.ERROR)
    logging.basicConfig(level=logging.ERROR)

    omega = D6400.OmegaD6400(1, '/dev/serial/by-id/' +
                             'usb-FTDI_USB-RS485_Cable_FTWECCJP-if00-port0')
    omega.update_range_and_function(1, action='tc', fullrange='K')
    omega.update_range_and_function(2, action='tc', fullrange='K')
    omega.update_range_and_function(3, action='tc', fullrange='K')
    omega.update_range_and_function(4, action='tc', fullrange='K')
    omega.update_range_and_function(5, action='tc', fullrange='K')
    omega.update_range_and_function(6, action='tc', fullrange='K')
    omega.update_range_and_function(7, action='tc', fullrange='K')

    xgs = xgs600.XGS600Driver('/dev/serial/by-id/usb-Prolific_Technology_Inc.' +
                              '_USB-Serial_Controller_D-if00-port0')
    print(xgs.read_all_pressures())

    pressurereader = PressureReader(xgs)
    pressurereader.daemon = True
    pressurereader.start()

    chamber_logger = PressureLogger(pressurereader, 0)
    chamber_logger.start()

    tempreader = TemperatureReader(omega)
    tempreader.daemon = True
    tempreader.start()

    temp_loggers = {}
    for i in range(0, 7):
        temp_loggers[i] = TemperatureLogger(tempreader, i + 1)
        temp_loggers[i].start()

    temp_codenames = ['vhp_T_reactor_inlet',
                      'vhp_T_reactor_outlet',
                      'vhp_T_reactor_top',
                      'vhp_T_mass_spec',
                      'vhp_T_gas_lines',
                      'vhp_T_purifying_reactor',
                      'vhp_T_furnace']

    socket = DateDataPullSocket('vhp', ['vhp_mass_spec_pressure'] + temp_codenames,
                                timeouts=[1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0])
    socket.start()

    db_logger = ContinuousDataSaver(continuous_data_table='dateplots_vhp_setup',
                                    username=credentials.user,
                                    password=credentials.passwd,
                                    measurement_codenames=['vhp_mass_spec_pressure'] +
                                    temp_codenames)
    db_logger.start()
    time.sleep(5)
    while True:
        time.sleep(0.25)
        for i in range(0, 7):
            value = temp_loggers[i].read_value()
            socket.set_point_now(temp_codenames[i], value)
            if temp_loggers[i].trigged:
                print(value)
                db_logger.save_point_now(temp_codenames[i], value)
                temp_loggers[i].trigged = False

        value = chamber_logger.read_pressure()
        socket.set_point_now('vhp_mass_spec_pressure', value)
        if chamber_logger.trigged:
            print(value)
            db_logger.save_point_now('vhp_mass_spec_pressure', value)
            chamber_logger.trigged = False