PymateIO-PID-controler: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
| Line 1: | Line 1: | ||
{{PYMATE-HEADER}} | {{PYMATE-HEADER}} | ||
== About PID == | |||
A PID controller is a feedback-based control loop used to manage machines and processes that require continuous control and automatic adjustment! | |||
It can be used to regulates temperature, pressuren, speed, illumination, position, ... | |||
* [https://youtu.be/k7vxUFVR8Ks?si=56PMJ5-f2gEk11ey PID Controler with Arduino] from Andeas Spiess. A very valuable ressource. | |||
* [https://en.wikipedia.org/wiki/PID_controller PID controller on WikiPedia] | |||
== Software PID == | == Software PID == | ||
Revision as of 02:32, 30 June 2026
About PID
A PID controller is a feedback-based control loop used to manage machines and processes that require continuous control and automatic adjustment!
It can be used to regulates temperature, pressuren, speed, illumination, position, ...
- PID Controler with Arduino from Andeas Spiess. A very valuable ressource.
- PID controller on WikiPedia
Software PID
The PymateIO includes the PID class (pid library).
The PID controler do use a Timer to perform its treatments (it is an autonomous process).
As for each PID Controller, the following parameter are required:
- Kp : Proportional constant
- Ki : Integral constant
- Kd : Derivated constant
The software controller requires additional parameters:
- dt: time (ms) between two consecutive measurement
- measure_func : the function that returns the PID input value.
- output_func : the function(value) called by the PID controler to set the output.
- output_min : minimal value for the output.
- output_max : maximal value for the output.
The PID controller starts when setting the setpoint (see setpoint(value) ) and stop when stop() is called.
This controller have been deployed with success into the Plancha-CMS project.
Do not hesitate to read the test_pid.py of Plancha-CMS for implementation example.
Do not hesitate to read the test_pid.py of Plancha-CMS for implementation example.
A typical application of PID would be speed regulation:
- Kp, Ki, Kd : to determine
- dt = 100ms
- measurement_func : returns the measured RPM
- output_func : set the PWM duty cycle (in percent) for the motor
- output_min : 0
- output_max : 100
PymateIO all right reserved © 2026 - Written by MCHobby for PymateIO