def main():
    """ Main function """
    logging.basicConfig(filename="logger.txt", level=logging.ERROR)
    logging.basicConfig(level=logging.ERROR)

    i2c_helper = ABEHelpers()
    bus = i2c_helper.get_smbus()
    adc_instance = DeltaSigma(bus, 0x68, 0x69, 18)

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

    codenames = ['cooling_water_hot', 'cooling_water_cold']
    loggers = {}
    for i in range(0, 2):
        loggers[codenames[i]] = ValueLogger(tempreader,
                                            comp_val=0.5,
                                            channel=i)
        loggers[codenames[i]].start()
    socket = DateDataPullSocket('hall_cooling_water_temp',
                                codenames,
                                timeouts=2.0)
    socket.start()

    live_socket = LiveSocket('hall_waterpressure', codenames)
    live_socket.start()

    db_logger = ContinuousDataSaver(continuous_data_table='dateplots_hall',
                                    username=credentials.user,
                                    password=credentials.passwd,
                                    measurement_codenames=codenames)
    db_logger.start()

    time.sleep(5)

    while tempreader.is_alive():
        time.sleep(0.25)
        for name in codenames:
            value = loggers[name].read_value()
            socket.set_point_now(name, value)
            live_socket.set_point_now(name, value)
            if loggers[name].read_trigged():
                print(value)
                db_logger.save_point_now(name, value)
                loggers[name].clear_trigged()
def main():
    """ Main function """

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

    i2c_helper = ABEHelpers()
    bus = i2c_helper.get_smbus()
    adc_instance = DeltaSigma(bus, 0x68, 0x69, 18)
    pressurereader = PressureReader(adc_instance)
    pressurereader.daemon = True
    pressurereader.start()

    codenames = ['mr_iongauge_pressure']

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

    socket = DateDataPullSocket('Microreactor Ion Gauge', codenames, timeouts=[1.0])
    socket.start()

    live_socket = LiveSocket('Microreactor Ion Gauge', codenames, 2)
    live_socket.start()

    db_logger = ContinuousDataSaver(continuous_data_table='dateplots_microreactor',
                                    username=credentials.user,
                                    password=credentials.passwd,
                                    measurement_codenames=codenames)
    db_logger.start()

    time.sleep(2)

    while True:
        time.sleep(0.25)
        value = logger.read_value()
        socket.set_point_now(codenames[0], value)
        live_socket.set_point_now(codenames[0], value)
        if logger.read_trigged():
            print(value)
            db_logger.save_point_now(codenames[0], value)
            logger.clear_trigged()
ABElectronics Delta-Sigma Pi 8-Channel ADC demo
Version 1.0 Created 09/05/2014
Version 1.1 16/11/2014 updated code and functions to PEP8 format

Requires python smbus to be installed
run with: python demo-read_voltage.py
================================================


Initialise the ADC device using the default addresses and sample rate, change this value if you have changed the address selection jumpers
Sample rate can be 12,14, 16 or 18
"""

i2c_helper = ABEHelpers()
bus = i2c_helper.get_smbus()
adc = DeltaSigma(bus, 0x68, 0x69, 18)

while (True):

    # clear the console
    os.system('clear')

    # read from adc channels and print to screen
    print("Channel 1: %02f" % adc.read_voltage(1))
    print("Channel 2: %02f" % adc.read_voltage(2))
    print("Channel 3: %02f" % adc.read_voltage(3))
    print("Channel 4: %02f" % adc.read_voltage(4))
    print("Channel 5: %02f" % adc.read_voltage(5))
    print("Channel 6: %02f" % adc.read_voltage(6))
    print("Channel 7: %02f" % adc.read_voltage(7))
    print("Channel 8: %02f" % adc.read_voltage(8))
Example #4
0
        while not self.quit:
            temp_hot = 0
            temp_cold = 0
            for _ in range(0, 4):
                temp_hot += adc_instance.read_voltage(1)
                temp_cold += adc_instance.read_voltage(2)
            self.hot = (temp_hot / 4 - 0.4) / 0.0195
            self.cold = (temp_cold / 4 - 0.4) / 0.0195 - 3.5


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

i2c_helper = ABEHelpers()
bus = i2c_helper.get_smbus()
adc_instance = DeltaSigma(bus, 0x68, 0x69, 18)

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

codenames = ['cooling_water_hot', 'cooling_water_cold']
loggers = {}
for i in range(0, 2):
    loggers[codenames[i]] = ValueLogger(tempreader, comp_val=0.5, channel=i)
    loggers[codenames[i]].start()
socket = DateDataPullSocket('hall_cooling_water_temp',
                            codenames,
                            timeouts=[2.0, 2.0])
socket.start()