frappy-psi.logo: fix IO.communicate reply

This commit is contained in:
zolliker 2025-05-27 15:41:33 +02:00
parent 0dd13d7ef9
commit f9880f1473
2 changed files with 18 additions and 8 deletions

View File

@ -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' # by ID (independent of plug location)
press_uri = '/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.2:1.0-port0' turbo_uri = '/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A601PCGF-if00-port0'
itc_uri = '/dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.3:1.0-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', Node('dil5.psi.ch',
@ -133,6 +141,7 @@ Mod('p2max',
'frappy_psi.logo.safetyfeatureParam', 'frappy_psi.logo.safetyfeatureParam',
'Safety Feature Param', 'Safety Feature Param',
io = 'io', io = 'io',
target = 2000,
vm_address ="VW8", vm_address ="VW8",
) )
@ -140,6 +149,7 @@ Mod('pcond',
'frappy_psi.logo.safetyfeatureParam', 'frappy_psi.logo.safetyfeatureParam',
'Safety Feature Param', 'Safety Feature Param',
io = 'io', io = 'io',
target = 1800,
vm_address ="VW10", vm_address ="VW10",
) )
@ -147,7 +157,7 @@ Mod('p5min',
'frappy_psi.logo.safetyfeatureParam', 'frappy_psi.logo.safetyfeatureParam',
'Safety Feature Param', 'Safety Feature Param',
io = 'io', io = 'io',
target = 200, target = 0,
vm_address ="VW12", vm_address ="VW12",
) )
@ -163,7 +173,7 @@ Mod('p5max',
Mod('io_ls273', Mod('io_ls273',
'frappy_psi.ls372.StringIO', 'frappy_psi.ls372.StringIO',
'io for Ls372', 'io for Ls372',
uri='serial:///dev/ttyACM1?baudrate=57600+parity=odd+bytesize=7+stopbits=1', uri=lsc_uri,
) )
Mod('sw', Mod('sw',
'frappy_psi.ls372.Switcher', 'frappy_psi.ls372.Switcher',

View File

@ -70,7 +70,7 @@ class IO(Communicator):
self.comLog('> %s', cmd[0]) self.comLog('> %s', cmd[0])
reply = self._plc.read(cmd[0]) reply = self._plc.read(cmd[0])
self.comLog('< %s', reply) self.comLog('< %s', reply)
return reply return str(reply)
except Exception as e: except Exception as e:
if self._plc: if self._plc:
self.comLog('? %r', e) self.comLog('? %r', e)
@ -84,11 +84,11 @@ class Snap7Mixin(HasIO):
ioclass = IO ioclass = IO
def get_vm_value(self, vm_address): 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): 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): class Pressure(Snap7Mixin, Readable):
vm_address = Property('VM address', datatype= StringType()) vm_address = Property('VM address', datatype= StringType())