From f9880f1473f4eb3f6c2267aa59ef3e3c7c6d230d Mon Sep 17 00:00:00 2001 From: Markus Zolliker Date: Tue, 27 May 2025 15:41:33 +0200 Subject: [PATCH] frappy-psi.logo: fix IO.communicate reply --- cfg/{dil5_statemachine_cfg.py => dil5_cfg.py} | 20 ++++++++++++++----- frappy_psi/logo.py | 6 +++--- 2 files changed, 18 insertions(+), 8 deletions(-) rename cfg/{dil5_statemachine_cfg.py => dil5_cfg.py} (89%) diff --git a/cfg/dil5_statemachine_cfg.py b/cfg/dil5_cfg.py similarity index 89% rename from cfg/dil5_statemachine_cfg.py rename to cfg/dil5_cfg.py index 025db56..d16de6d 100644 --- a/cfg/dil5_statemachine_cfg.py +++ b/cfg/dil5_cfg.py @@ -1,6 +1,14 @@ -turbo_uri = '/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.1:1.0-port0' -press_uri = '/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.2:1.0-port0' -itc_uri = '/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.3:1.0-port0' +# by ID (independent of plug location) +turbo_uri = '/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A601PCGF-if00-port0' +press_uri = '/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AH07445U-if00-port0' +itc_uri = '/dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0' +lsc_uri = '192.168.1.2:7777' +# by plug location: +#turbo_uri='/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.1:1.0-port0' +#press_uri = '/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.2:1.0-port0' +#itc_uri = '/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.3:1.0-port0' +# over USB (does not work anymore) +#lsc_uri='serial:///dev/ttyACM1?baudrate=57600+parity=odd+bytesize=7+stopbits=1', Node('dil5.psi.ch', @@ -133,6 +141,7 @@ Mod('p2max', 'frappy_psi.logo.safetyfeatureParam', 'Safety Feature Param', io = 'io', + target = 2000, vm_address ="VW8", ) @@ -140,6 +149,7 @@ Mod('pcond', 'frappy_psi.logo.safetyfeatureParam', 'Safety Feature Param', io = 'io', + target = 1800, vm_address ="VW10", ) @@ -147,7 +157,7 @@ Mod('p5min', 'frappy_psi.logo.safetyfeatureParam', 'Safety Feature Param', io = 'io', - target = 200, + target = 0, vm_address ="VW12", ) @@ -163,7 +173,7 @@ Mod('p5max', Mod('io_ls273', 'frappy_psi.ls372.StringIO', 'io for Ls372', - uri='serial:///dev/ttyACM1?baudrate=57600+parity=odd+bytesize=7+stopbits=1', + uri=lsc_uri, ) Mod('sw', 'frappy_psi.ls372.Switcher', diff --git a/frappy_psi/logo.py b/frappy_psi/logo.py index f8b301b..f770605 100644 --- a/frappy_psi/logo.py +++ b/frappy_psi/logo.py @@ -70,7 +70,7 @@ class IO(Communicator): self.comLog('> %s', cmd[0]) reply = self._plc.read(cmd[0]) self.comLog('< %s', reply) - return reply + return str(reply) except Exception as e: if self._plc: self.comLog('? %r', e) @@ -84,11 +84,11 @@ class Snap7Mixin(HasIO): ioclass = IO def get_vm_value(self, vm_address): - return self.io.communicate(vm_address) + return literal_eval(self.io.communicate(vm_address)) def set_vm_value(self, vm_address, value): - return self.io.communicate(f'{vm_address} {value}') + return literal_eval(self.io.communicate(f'{vm_address} {value}')) class Pressure(Snap7Mixin, Readable): vm_address = Property('VM address', datatype= StringType())