Files
tell/script/devices/LedCtrl.py
gac-S_Changer bdf5049f96 Creation
2018-12-03 12:17:40 +01:00

46 lines
1.2 KiB
Python

import ch.psi.pshell.device.DiscretePositionerBase as DiscretePositionerBase
class LedPositioner(DiscretePositionerBase):
def __init__(self):
DiscretePositionerBase.__init__(self, "led_ctrl", ["On", "Off"])
self.setState(State.Ready)
self.val = self.doReadReadback()
def doRead(self):
return self.val
def doReadReadback(self):
return "On" if get_led_state() else "Off"
def doWrite(self, val):
self.val = val
if self.val == "On":
set_led_state(True)
else:
set_led_state(False)
add_device(LedPositioner(), True)
led_ctrl.polling = 1000
import ch.psi.pshell.device.ProcessVariableConfig as ProcessVariableConfig
class LedLevel(ProcessVariableBase):
def __init__(self, name):
ProcessVariableBase.__init__(self, name, ProcessVariableConfig())
def doRead(self):
return get_led_level()
def doWrite(self, val):
return set_led_level(val)
led_level = LedLevel("led_level")
led_level.config.minValue = 0.0
led_level.config.maxValue = 100.0
led_level.config.unit = "%"
add_device(led_level, True)
led_level.polling = 1000