-
Archives
- June 2017
- November 2012
- September 2012
- July 2012
- June 2012
- April 2012
- March 2012
- January 2012
- December 2011
- October 2011
- September 2011
- August 2011
- July 2011
- June 2011
- May 2011
- April 2011
- September 2010
- August 2010
- July 2010
- March 2010
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
-
Meta
Category Archives: Coding
Proportional on Measurement – The Code
In the previous post I spent all my time explaining the benefits of Proportional on Measurement. In this post I’ll explain the code. People seemed to appreciate the step-by-step way I explained things last time, so that’s what I’ll do … Continue reading
Arduino PID Autotune Library
At long last, I’ve released an Autotune Library to compliment the Arduino PID Library. When I released the current version of the PID Library, I did an insanely extensive series of posts to get people comfortable with what was going … Continue reading
PID Library moved to GitHub
As per the request by the Arduino Team, I’ve moved the Arduino PID Library to GitHub. I’ve also used this opportunity to: Make the Library Arduino 1.0 compliant Release the Library under a GPLv3 License The google code site will … Continue reading
PID: When Should I Compute the Integral Term?
Recently there was a suggestion posted to the Beginner’s PID Series. The contention was that if you solve things in the Laplace domain, it specifies a different way of executing the Integral Term. Rather than looking at the sum of … Continue reading
Posted in Coding, PID
2 Comments
Improving the Beginner’s PID: Direction
(This is the last modification in a larger series on writing a solid PID algorithm) The Problem The processes the PID will be connected to fall into two groups: direct acting and reverse acting. All the examples I’ve shown so … Continue reading
Improving the Beginner’s PID: Initialization
(This is Modification #6 in a larger series on writing a solid PID algorithm) The Problem In the last section we implemented the ability to turn the PID off and on. We turned it off, but now let’s look at … Continue reading
Improving the Beginner’s PID: On/Off
(This is Modification #5 in a larger series on writing a solid PID algorithm) The Problem As nice as it is to have a PID controller, sometimes you don’t care what it has to say. Let’s say at some point … Continue reading
Improving the Beginner’s PID: Reset Windup
(This is Modification #4 in a larger series on writing a solid PID algorithm) The Problem Reset windup is a trap that probably claims more beginners than any other. It occurs when the PID thinks it can do something that … Continue reading
Improving the Beginner’s PID: Tuning Changes
(This is Modification #3 in a larger series on writing a solid PID algorithm) The Problem The ability to change tuning parameters while the system is running is a must for any respectable PID algorithm. The Beginner’s PID acts a … Continue reading
Improving the Beginner’s PID – Derivative Kick
(This is Modification #2 in a larger series on writing a solid PID algorithm) The Problem This modification is going to tweak the derivative term a bit. The goal is to eliminate a phenomenon known as “Derivative Kick”. The image … Continue reading