From 91a7a63a074da89eb0f006c1dbcb9cb6304b3255 Mon Sep 17 00:00:00 2001 From: Raptor Engineering Development Team Date: Sun, 29 Apr 2018 07:33:54 -0500 Subject: Switch to PID control of main fans --- .../events.yaml | 127 +++++++++++---------- 1 file changed, 65 insertions(+), 62 deletions(-) diff --git a/meta-openbmc-machines/meta-openpower/meta-rcs/meta-talos/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml b/meta-openbmc-machines/meta-openpower/meta-rcs/meta-talos/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml index 37fbe6dbd..586d83167 100644 --- a/meta-openbmc-machines/meta-openpower/meta-rcs/meta-talos/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml +++ b/meta-openbmc-machines/meta-openpower/meta-rcs/meta-talos/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml @@ -269,6 +269,15 @@ actions: - property - factor - delta + - name: run_pid_control + description: > + Runs PID control trying to keep value at property + parameters: + - property + - integrator_timestep + - kp + - ki + - kd events: - name: default_fan_floor_on_service_fail @@ -510,16 +519,6 @@ events: delta: value: 40 type: uint64_t - - name: set_net_decrease_speed - property: - value: 82000 - type: int64_t - factor: - value: 1000 - type: int64_t - delta: - value: 40 - type: uint64_t timer: interval: 5 - name: occ_active_speed_changes_zone0 @@ -551,25 +550,33 @@ events: - name: interfacesAdded - name: propertiesChanged actions: - - name: set_net_increase_speed + - name: run_pid_control property: - value: 67000 + value: 63000 type: int64_t - factor: - value: 1000 + integrator_timestep: + value: 1 type: int64_t - delta: - value: 40 - type: uint64_t - - name: set_net_decrease_speed + kp: + value: 2000 + type: int64_t + ki: + value: 100 + type: int64_t + kd: + value: 0 + type: int64_t + # Ensure PID values are always translated out to hardware + # This do-nothing "speed increase" is always called on every loop invocation + - name: set_net_increase_speed property: - value: 63000 + value: 0 type: int64_t factor: - value: 1000 + value: 0 type: int64_t delta: - value: 40 + value: 0 type: uint64_t timer: interval: 5 @@ -601,16 +608,6 @@ events: delta: value: 4 type: uint64_t - - name: set_net_decrease_speed - property: - value: 61000 - type: int64_t - factor: - value: 1000 - type: int64_t - delta: - value: 1 - type: uint64_t timer: interval: 5 - name: occ_active_speed_changes_zone1 @@ -642,25 +639,33 @@ events: - name: interfacesAdded - name: propertiesChanged actions: - - name: set_net_increase_speed + - name: run_pid_control property: - value: 67000 + value: 63001 type: int64_t - factor: - value: 1000 + integrator_timestep: + value: 1 type: int64_t - delta: - value: 40 - type: uint64_t - - name: set_net_decrease_speed + kp: + value: 2000 + type: int64_t + ki: + value: 100 + type: int64_t + kd: + value: 0 + type: int64_t + # Ensure PID values are always translated out to hardware + # This do-nothing "speed increase" is always called on every loop invocation + - name: set_net_increase_speed property: - value: 63000 + value: 0 type: int64_t factor: - value: 1000 + value: 0 type: int64_t delta: - value: 40 + value: 0 type: uint64_t timer: interval: 5 @@ -692,16 +697,6 @@ events: delta: value: 40 type: uint64_t - - name: set_net_decrease_speed - property: - value: 61000 - type: int64_t - factor: - value: 1000 - type: int64_t - delta: - value: 40 - type: uint64_t timer: interval: 5 - name: occ_active_speed_changes_zone2 @@ -736,25 +731,33 @@ events: - name: interfacesAdded - name: propertiesChanged actions: - - name: set_net_increase_speed + - name: run_pid_control property: value: 45000 type: int64_t - factor: - value: 1000 + integrator_timestep: + value: 1 type: int64_t - delta: - value: 10 - type: uint64_t - - name: set_net_decrease_speed + kp: + value: 500 + type: int64_t + ki: + value: 25 + type: int64_t + kd: + value: 0 + type: int64_t + # Ensure PID values are always translated out to hardware + # This do-nothing "speed increase" is always called on every loop invocation + - name: set_net_increase_speed property: - value: 35000 + value: 0 type: int64_t factor: - value: 1000 + value: 0 type: int64_t delta: - value: 10 + value: 0 type: uint64_t timer: interval: 5 -- cgit v1.2.1