From a92613dadb0950557837b0bb47dc4d5659aa1990 Mon Sep 17 00:00:00 2001 From: Felix Kunze Date: Tue, 18 Feb 2025 11:33:49 +0100 Subject: [PATCH] fix(pid): add auto_mode check in PID update calculation - Implemented a conditional check for auto_mode in the calculate_update method to determine whether to calculate the PID update. - If auto_mode is off, the update will return None instead of calculating an update. issue #9 --- app/controllers/pid_controller.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/app/controllers/pid_controller.py b/app/controllers/pid_controller.py index b8f489f..ed978c7 100644 --- a/app/controllers/pid_controller.py +++ b/app/controllers/pid_controller.py @@ -19,9 +19,13 @@ def __init__(self): ) def calculate_update(self, sensor_reading: SensorReading) -> Optional[float]: - update = self.pid(sensor_reading.value) - logger.debug(f"Calculated PID Update {update}") - influx_connector.write_pid(self.pid, sensor_reading.timestamp_ns) + if self.pid.auto_mode: + update = self.pid(sensor_reading.value) + logger.debug(f"Calculated PID Update {update}") + influx_connector.write_pid(self.pid, sensor_reading.timestamp_ns) + else: + update = None + return update def set_setpoint(self, setpoint: Optional[float]) -> None: