!!! Proportional–Integral–Derivative (PID) Controller

This page describes information about a ''Proportional–Integral–Derivative Controller'' (PID controller or three-term controller). Rather than rely on the voltage sent to the motors to determine their speed (with
each motor and gearbox requiring slightly different voltages) this uses a __[motor encoder|MotorEncoder]__ that measures the speed of the motors themselves, then uses that to determine the difference between the intended
and actual motor speeds. This is used to determine the distance each motor has traveled. 

More later...

See: [PID Controller|https://en.wikipedia.org/wiki/PID_controller] on Wikipedia
    
!! Links

This needs a lot of cleanup, titles, etc.

* [https://www.microchip.com/forums/m337816.aspx]
* [https://onion.io/2bt-pid-control-python/]
* [https://pypi.org/project/simple-pid/] (too simple)
* [http://code.activestate.com/recipes/577231-discrete-pid-controller/] (also too simple)
* [https://www.oreilly.com/library/view/intelligent-iot-projects/9781787286429/26242fa7-713e-4e5d-b1dc-b5566a39d5b7.xhtml]
* [https://projects.raspberrypi.org/en/projects/robotPID] (Complete PID in Python with integral etc.)
* [Robert O'Hanlan's Robot PID |https://github.com/martinohanlon/RobotPID]
* [Programming PID Control|https://www.societyofrobots.com/programming_PID.shtml] (Society of Robots)
* [https://www.element14.com/community/community/raspberry-pi/blog/2019/02/12/pid-based-dc-motor-controller-project]
* [https://www.phidgets.com/docs21/DC_Motor_-_PID_Control]
* [http://robotsforroboticists.com/pid-control/]
* [Reading encoder Tue Apr 10, 2018 12:04 am|https://www.raspberrypi.org/forums/viewtopic.php?t=210559]
* code: [http://abyz.me.uk/rpi/pigpio/examples.html#Python_rotary_encoder_py]
* [https://projects.raspberrypi.org/en/projects/robotPID]
* [https://www.stuffaboutcode.com/2014/10/raspberry-pi-initio-robot-driving.html]
* [https://github.com/martinohanlon/initio]

----

[{Tag Software}]