From 34d7a02a7c51b54087d30eabfa80df7cc13e9377 Mon Sep 17 00:00:00 2001 From: KwanghoKim Date: Fri, 1 Dec 2023 14:13:25 +0900 Subject: [PATCH] Uncomment Serial communication --- cnt_collector_485.py | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/cnt_collector_485.py b/cnt_collector_485.py index 89ae800..90ee33a 100644 --- a/cnt_collector_485.py +++ b/cnt_collector_485.py @@ -15,8 +15,8 @@ if os.system("lsmod | grep max7301") == 0: # For PION-D3W-035(Power Controller) No.1, UT35A(Temperature Controller) No.1 _serial_port_A = serial.Serial('/dev/ttyMAX1', 38400, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout = 1, rtscts=True) _serial_port_A.rs485_mode = serial.rs485.RS485Settings() -# _serial_port_A.close() -# del _serial_port_A +_serial_port_A.close() +del _serial_port_A client1 = ModbusClient(method='rtu', port='/dev/ttyMAX1', baudrate=38400, parity='N', stopbits=1, bytesize=8, timeout=1) @@ -25,8 +25,8 @@ client1 = ModbusClient(method='rtu', port='/dev/ttyMAX1', baudrate=38400, # For PION-D3W-035(Power Controller) No.2, UT35A(Temperature Controller) No.1 _serial_port_B = serial.Serial('/dev/ttyMAX0', 38400, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout = 1, rtscts=True) _serial_port_B.rs485_mode = serial.rs485.RS485Settings() -# _serial_port_B.close() -# del _serial_port_B +_serial_port_B.close() +del _serial_port_B client2 = ModbusClient(method='rtu', port='/dev/ttyMAX0', baudrate=38400, parity='N', stopbits=1, bytesize=8, timeout=1) @@ -34,8 +34,8 @@ client2 = ModbusClient(method='rtu', port='/dev/ttyMAX0', baudrate=38400, # For PION-D3W-035(Power Controller) No.3, UT35A(Temperature Controller) No.1 _serial_port_C = serial.Serial('/dev/ttyMAX2', 38400, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout = 1, rtscts=True) _serial_port_C.rs485_mode = serial.rs485.RS485Settings() -# _serial_port_C.close() -# del _serial_port_C +_serial_port_C.close() +del _serial_port_C client3 = ModbusClient(method='rtu', port='/dev/ttyMAX2', baudrate=38400, parity='N', stopbits=1, bytesize=8, timeout=1) @@ -47,7 +47,7 @@ _serial_port_D.rs485_mode = serial.rs485.RS485Settings() # del _serial_port_A client4 = ModbusClient(method='rtu', port='/dev/ttyMAX3', baudrate=9600, - parity='E', stopbits=1, bytesize=8, timeout=0.5) + parity='N', stopbits=1, bytesize=8, timeout=0.5) client1.connect() client2.connect() @@ -87,7 +87,6 @@ def Read_Temperature(client, ch_num): result = client.read_holding_registers(address=2003, count=2, slave=id) if not result.isError(): # print(f'Temperature: {ch_num} {result.registers}') - # value = (result.registers[0] * 256 + result.registers[1])/10 value = (result.registers[0])/10 else: print(f'Temperature Err: {ch_num} \n {result}') @@ -219,10 +218,19 @@ def Read_GasDetector(client, ch_num): def Set_FlowPump(client, value): id = 31 - register_value = int(((value * 0.32) + 4) * 2500) + # print(f'Set_FlowPump In!: {value}') + val = int(float(value) * 1000) + register_value = val * 8 + 10000 + # print(f'register_value: {register_value}') client.write_registers(address=40004, values=register_value, slave=id) + try: + result = client.read_holding_registers(address=40004, count=1, slave=id) + # print(f'result: {result.registers}') + except Exception as e: + print(e) + def Publish_mqtt(data): send_mqtt_data = json.dumps(data, indent=4) @@ -246,6 +254,8 @@ def Command_Read(): with open(f'{ROOT_PATH}/control.json') as f: cmd = json.load(f) + # print(cmd) + if cmd['type'] != 'null': if 'start' in cmd['type'] or 'change' in cmd['type']: if cmd['cmd']['precAc'] != 'null': @@ -298,5 +308,4 @@ while True: # print(f'diff: {diff}') if diff < 3: - time.sleep(3.0 - diff) - + time.sleep(3.0 - diff) \ No newline at end of file