- some twaeks to pot_params

- increased sample rate of TC by factor 10
This commit is contained in:
jens
2020-11-30 19:13:45 +01:00
parent 5102ad935c
commit 919431f02d
2 changed files with 24 additions and 10 deletions
+8 -7
View File
@@ -9,6 +9,7 @@ from components.pid import kalman, temp_controller
from ws.message import MsgIo, MessageDispatcher
from utils.value import Value, ValueChanged
TC_DT = 0.1
class ATask:
def __init__(self, interval):
@@ -198,7 +199,7 @@ if __name__ == '__main__':
# Sensor
sensor = TempSensorSim()
taskmgr.add(TempSensorTask(sensor, 1.0, dispatcher.msgio_get("Sensor"), kalman))
taskmgr.add(TempSensorTask(sensor, TC_DT, dispatcher.msgio_get("Sensor"), kalman))
# Plant
pot_params = {
@@ -206,18 +207,18 @@ if __name__ == '__main__':
"theta" : 20,
"C" : 4190,
"M" : 10,
"L" : 0.1,
"L" : 0.02,
"Td" : 12,
"kn" : 0.2
}
pot = Pot(pot_params, 20)
pot.set_on_changed("temp", ValueChanged(sensor.set_fake_temp, prec=1).set)
taskmgr.add(PotTask(pot, 1.0, dispatcher.msgio_get("Pot")))
pot.set_on_changed("temp", ValueChanged(sensor.set_fake_temp, prec=3).set)
taskmgr.add(PotTask(pot, TC_DT, dispatcher.msgio_get("Pot")))
# Heater
heater = Heater()
heater.set_on_changed("power_eff", ValueChanged(pot.setPower, prec=0).set)
heater_task = HeaterTask(heater, 1.0, dispatcher.msgio_get("Heater"))
heater_task = HeaterTask(heater, TC_DT, dispatcher.msgio_get("Heater"))
taskmgr.add(heater_task)
# Temperature Controller
@@ -242,9 +243,9 @@ if __name__ == '__main__':
}
tc = temp_controller.TempController(tc_params)
tc.set_on_changed("y_hold", heater_task.actor)
tc_task = TcTask(tc, 1.0, dispatcher.msgio_get("Tc"))
tc_task = TcTask(tc, TC_DT, dispatcher.msgio_get("Tc"))
taskmgr.add(tc_task)
sensor.set_on_changed("temp", ValueChanged(tc.set_theta_ist, prec=1).set)
sensor.set_on_changed("temp", ValueChanged(tc.set_theta_ist, prec=2).set)
# Message dispatcher
h_dispatcher = taskmgr.start()