- removed MsgIo::send_from_thread
- created sync variant of MessageDispatcher and MsgIo - fixed delay in sending client messages
This commit is contained in:
@@ -65,11 +65,9 @@ class HeaterTask(ATask):
|
||||
self.msg_handler = msg_handler
|
||||
msg_handler.set_recv_handler(self.recv)
|
||||
self.heater = heater
|
||||
self.y = 0
|
||||
self.power_soll = 0
|
||||
|
||||
def actor(self, y):
|
||||
self.y = y
|
||||
self.heater.setPower(max(0, 200 + self.heater.get_power_max() * y))
|
||||
|
||||
async def recv(self, data):
|
||||
print(data)
|
||||
@@ -88,8 +86,6 @@ class HeaterTask(ATask):
|
||||
|
||||
power = Value()
|
||||
while True:
|
||||
self.power_soll = max(0, 200 + self.heater.get_power_max()*self.y)
|
||||
self.heater.setPower(self.power_soll)
|
||||
self.heater.process()
|
||||
power.set(round(self.heater.getPower()))
|
||||
if power.is_changed():
|
||||
@@ -243,7 +239,7 @@ if __name__ == '__main__':
|
||||
}
|
||||
tc = temp_controller.TempController(tc_params)
|
||||
tc.set_on_changed("y_hold", heater_task.actor)
|
||||
tc_task = TcTask(tc, TC_DT, dispatcher.msgio_get("Tc"))
|
||||
tc_task = TcTask(tc, TC_DT, dispatcher.msgio_get("TempCtrl"))
|
||||
taskmgr.add(tc_task)
|
||||
sensor.set_on_changed("temp", ValueChanged(tc.set_theta_ist, prec=2).set)
|
||||
|
||||
@@ -256,3 +252,7 @@ if __name__ == '__main__':
|
||||
while True:
|
||||
print("Hallo")
|
||||
sleep(1)
|
||||
|
||||
{"+":"Pot"}
|
||||
{"+":"Heater"}
|
||||
{"Heater": {"Power": 2000, "Activate": 1}}
|
||||
|
||||
Reference in New Issue
Block a user