From 3abe7568b0d9f1ed6a428c6d59db10c84a88f318 Mon Sep 17 00:00:00 2001 From: Duke NUCem Date: Mon, 11 Oct 2021 20:17:45 +0200 Subject: [PATCH] Added measurement script --- tests/measure.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100755 tests/measure.py diff --git a/tests/measure.py b/tests/measure.py new file mode 100755 index 0000000..d79ccf0 --- /dev/null +++ b/tests/measure.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 +from time import sleep +from sys import exit +import minimalmodbus +import serial + +slave_address = 254 +instrument = minimalmodbus.Instrument('/dev/rs485', slave_address, close_port_after_each_call=True) # port name, slave address (in decimal) + +instrument.serial.baudrate = 19200 +instrument.serial.bytesize = 8 +instrument.serial.parity = serial.PARITY_EVEN +instrument.serial.stopbits = 1 +instrument.serial.timeout = 0.05 # seconds +instrument.mode = minimalmodbus.MODE_RTU # rtu or ascii mode +instrument.clear_buffers_before_each_transaction = True + +# log file +log_file = 'measurement.csv' + +# read +while True: + CO2_addr = 9 + CO2 = instrument.read_register(CO2_addr, 1, functioncode=4) * 10 + T_SHT4x_addr = 10 + T_SHT4x = instrument.read_register(T_SHT4x_addr, 1, functioncode=4) + RH_SHT4x_addr = 11 + RH_SHT4x = instrument.read_register(RH_SHT4x_addr, 1, functioncode=4) * 10 + T_SCD4x_addr = 12 + T_SCD4x = instrument.read_register(T_SCD4x_addr, 1, functioncode=4) + RH_SCD4x_addr = 13 + RH_SCD4x = instrument.read_register(RH_SCD4x_addr, 1, functioncode=4) * 10 + T_SHT4x_signed_addr = 14 + T_SHT4x_signed = instrument.read_register(T_SHT4x_signed_addr, 1, functioncode=4, signed=True) + T_SCD4x_signed_addr = 15 + T_SCD4x_signed = instrument.read_register(T_SCD4x_signed_addr, 1, functioncode=4, signed=True) + with open(log_file, 'a+') as f: + f.write(f'{CO2} {T_SHT4x} {RH_SHT4x} {T_SCD4x} {RH_SCD4x} {T_SHT4x_signed} {T_SCD4x_signed}\n') + sleep(10)