about pid speed control

周 远清 zhouyuanqing8 at outlook.com
Sun Sep 27 13:17:49 AEST 2020


Hi everyone,

    I added the phophor-pid-control module to my project. After the PID module was started, the pwm value oscillated between 12 and 153. I deleted other configurations and only kept one fan and one temp. I have debugged various PID parameter values of fan, and there is no obvious change in the phenomenon. Please take a look at it, thank you.

   The configuration is as follows:

   4611 root      7616 S    /usr/bin/swampd -t -l /tmp/

   root at starlake-sn:~# cat /etc/thermal.d/setpoint
   3000

   config.json as follow:
   {
    "sensors" : [
        {
            "name": "Fan0_Speed",
            "type": "fan",
            "readPath": "/xyz/openbmc_project/sensors/fan_tach/Fan0_Speed",
            "writePath": "/xyz/openbmc_project/sensors/fan_tach/Fan0_Speed",
            "min": 0,
            "max": 255,
            "timeout": 0
        },
        {
            "name": "inlet_Temp",
            "type": "temp",
            "readPath": "/xyz/openbmc_project/sensors/temperature/inlet_Temp",
            "writePath": "",
            "min": 0,
            "max": 0,
            "ignoreDbusMinMax": true,
            "timeout": 0
        }
    ],
  "zones" : [
        {
            "id": 1,
            "minThermalOutput": 3000.0,
            "failsafePercent": 75.0,
            "pids": [
                {
                    "name": "Fan0_Speed",
                    "type": "fan",
                    "inputs": ["Fan0_Speed"],
                    "setpoint": 50.0,
                    "pid": {
                        "samplePeriod": 0.1,
                        "proportionalCoeff": 20.0,
                        "integralCoeff": 0.1,
                        "feedFwdOffsetCoeff": 0.0,
                        "feedFwdGainCoeff": 1.0,
                        "integralLimit_min": 0.0,
                        "integralLimit_max": 5.0,
                        "outLim_min": 5.0,
                        "outLim_max": 60.0,
                        "slewNeg": 0.0,
                        "slewPos": 0.0
                    }
                },
                {
                    "name": "inlet_Temp",
                    "type": "temp",
                    "inputs": ["inlet_Temp"],
                    "setpoint": 50.0,
                    "pid": {                      amplePeriod": 0.1,
                        "samplePeriod": 1.0,
                        "proportionalCoeff": -0.1,
                        "integralCoeff": 1.0,     36;34Hin": 5.0,
                        "feedFwdOffsetCoeff": 0.0,
                        "feedFwdGainCoeff": 0.0,
                        "integralLimit_min": 0.0,
                        "integralLimit_max": 0.0,
                        "outLim_min": 3000.0,
                        "outLim_max": 16000.0,
                        "slewNeg": 0.0,
                        "slewPos": 0.0,
                        "positiveHysteresis": 1.0,
                        "negativeHysteresis": 1.0
                    }
           }
            ]
        }
    ]
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20200927/16046138/attachment.htm>


More information about the openbmc mailing list