Live data from Hacker News

Proportional-Integral-Derivative (PID) controllers

en.wikipedia.org

31–40 of 65 posts

Re: Proportional-Integral-Derivative (PID) controllers

#31
post #19

PIDs are great but notoriously hard to tune. They require deep insight into the underlying physical phenomena to get right. They are also rather rigid and cannot adjust well to a changing environment (temperature and humidity can fluctuate dramatically between summer and winter in some climates). Of course, no one tunes them by hand anymore for these reasons, relying instead on optimization techniques like particle s…

This isn’t meant to be an attack, but almost everything you say here is false.

> PIDs are great but notoriously hard to tune. They require deep insight into the underlying physical phenomena to get right. They are also rather rigid and cannot adjust well to a changing environment (temperature and humidity can fluctuate dramatically between summer and winter in some climates).

This is not true. PID controllers are often the least dependent on the physical characteristics. They can be tuned with heuristic methods like Ziegler-nichols, often with no knowledge of the actual system.

> Of course, no one tunes them by hand anymore for these reasons, relying instead on optimization techniques like particle swarm to find the best set of coefficients for a given steady state condition.

This is also not true. In the Amazon consumer robotics group we still tuned pid by hand. I’ve _never_ heard of tuning pid with particle swarm, that seems very silly, difficult, and overkill. If you’re going to use an optimization technique, you might as well move to a better controller structure like LQR. I have seen particle swarm used as an estimator, as an alternative to a kalman filter, but never seen it used for tuning.

> Eventually, I suspect we will replace most PIDs with a small neural network for almost all industrial applications (a handful of nodes is sufficient). The neural network is also easier to adapt to changing conditions.

This sounds unlikely to me. Classic control techniques give guarantees that a neural net just can’t. For example, things are provably stable under some assumptions. With a neural net you get no such guarantee. Also, it would be harder to debug and understand, and it would take more memory and compute. I can’t imagine a world where we replace pid with neural nets, they’re fit for very different purposes.

Source: have a masters in controls, worked in robotics in controls team, still do consulting in this area when I have time, and I love it all.

Re: Proportional-Integral-Derivative (PID) controllers

#32
post #19

PIDs are great but notoriously hard to tune. They require deep insight into the underlying physical phenomena to get right. They are also rather rigid and cannot adjust well to a changing environment (temperature and humidity can fluctuate dramatically between summer and winter in some climates). Of course, no one tunes them by hand anymore for these reasons, relying instead on optimization techniques like particle s…

> Eventually, I suspect we will replace most PIDs with a small neural network for almost all industrial applications

With or without serverless lambda architecture bitcoins ?

Re: Proportional-Integral-Derivative (PID) controllers

#33
post #29

My personal exposure to the PID algorithm was my GPU fan. There is supposed to be some sort of internal fan curve to control it's speed but mine was not working, crashes everywhere. I Could still set the speed by hand. and while I was putting together a sort of hacky user space fan curve I had an epiphany. I Don't actually want a fan curve. I want to set an ideal temperature and have the computer figure out what fan…

> I do sort of suspect a fan thermal control curve is a PID response curve written out in long hand but don't really have the math to prove it.

No, a fan response curve is kinda-sorta a P controller. It does not take into account 1) how quickly the temperature is rising or dropping (D) 2) the time passed since the system has drifted from the target temp (I).

Re: Proportional-Integral-Derivative (PID) controllers

#34
post #29

My personal exposure to the PID algorithm was my GPU fan. There is supposed to be some sort of internal fan curve to control it's speed but mine was not working, crashes everywhere. I Could still set the speed by hand. and while I was putting together a sort of hacky user space fan curve I had an epiphany. I Don't actually want a fan curve. I want to set an ideal temperature and have the computer figure out what fan…

why not just set maximum speed and forget about it?

Re: Proportional-Integral-Derivative (PID) controllers

#35
post #18
post #9

Earlier quoted context omitted.

I think CS degrees are a bit light on classical theory in the modern day. In Australia CS degrees are what they say on the tin, but in America it seems almost as if CS degrees are anywhere from cybernetics to pure software development

Interesting generalization; that’s almost the opposite of my experience. A common hiring anecdote we share with people outside tech is literally: “A CS degree doesn’t teach you how to code.” For me, ~25 years ago in the UC system, it was all math/science/theory-oriented. Some C++/Java that was introduced to get you through all that theory. Learning how to code/actual software engineering comes with practical experien…

My CS degree was a software engineering degree in a trench coat. I went back to give a guest lecture a decade later and the curriculum had changed to be more theory-focused.

(I am quite happy to have gotten the software engineering education.)

Re: Proportional-Integral-Derivative (PID) controllers

#36
post #19

PIDs are great but notoriously hard to tune. They require deep insight into the underlying physical phenomena to get right. They are also rather rigid and cannot adjust well to a changing environment (temperature and humidity can fluctuate dramatically between summer and winter in some climates). Of course, no one tunes them by hand anymore for these reasons, relying instead on optimization techniques like particle s…

This isn’t meant to be an attack, but almost everything you say here is false. > PIDs are great but notoriously hard to tune. They require deep insight into the underlying physical phenomena to get right. They are also rather rigid and cannot adjust well to a changing environment (temperature and humidity can fluctuate dramatically between summer and winter in some climates). This is not true. PID controllers are oft…

I saw a crazy stat somewhere like some large fraction of the industrial PID controllers that are actually deployed in plants are completely untuned--that is, just running default settings. I think it was a book about tuning PID controllers, but I don't have the exact citation handy..

Re: Proportional-Integral-Derivative (PID) controllers

#37

Earlier quoted context omitted.

This isn’t meant to be an attack, but almost everything you say here is false. > PIDs are great but notoriously hard to tune. They require deep insight into the underlying physical phenomena to get right. They are also rather rigid and cannot adjust well to a changing environment (temperature and humidity can fluctuate dramatically between summer and winter in some climates). This is not true. PID controllers are oft…

I saw a crazy stat somewhere like some large fraction of the industrial PID controllers that are actually deployed in plants are completely untuned--that is, just running default settings. I think it was a book about tuning PID controllers, but I don't have the exact citation handy..

I’d totally believe that. You can buy devices that even tune themselves automatically, using model-free methods like Ziegler-nichols. I’m not familiar with the domains where you would use that sort of thing, but I guess it would be applications that aren’t safety-critical, maybe air conditioning or something like that. I bet many people put the thing in place, and then it works well enough that they never even click the “tune” button

Re: Proportional-Integral-Derivative (PID) controllers

#39
Jesus christ. The wretched control system paper we had for B-Tech computer science!

The text book jumped right on to the integrals and derivations without even a whisper on what the thing is supposed to be useful for!

I want to understand this so much now, but the memories of that paper is such a turn off!

Re: Proportional-Integral-Derivative (PID) controllers

#40
post #30

For a robotic BLDC motor velocity control application, I moved to using a linear ADRC (Active Disturbance Rejection Control) [0] controller. It is not much more complex to implement that a PID, but at least in my context it handles changing real-world environmental conditions with a correctness which I could not achieve with a PID however much I tried to tune it. Still uses a PID for BLDC motor coil current control,…

I once tried to make a RC toy car so that it has proportional speed controls. I used some hall effect sensors to measure the speed at which the wheels are rotating and used it to compute the PWM signal that should be fed to the motor.

But the interference from the PWM signal appeared to mess with the speed sensor readouts that I couldn't make it work.

Can what you describe be used to solve it? If you would be kind enough to describe it, that would be great.

Post reply on HN