Live data from Hacker News

Proportional-Integral-Derivative (PID) controllers

en.wikipedia.org

41–50 of 65 posts

Re: Proportional-Integral-Derivative (PID) controllers

#41

Earlier quoted context omitted.

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…

I don't have a good intuition about the what makes a problem sensitive to tuning, is it possible there are a large number of control problems where proper tuning doesn't matter much? Or the deleterious effects of improper tuning (like oscillations or overshoot) are masked somehow?

EDIT: I guess intuitively, big (lots of inertia) damped systems are probably pretty safe--you can do all kinds of crazy things with the control input and it won't really have much effect. The only way you could go wrong is drift.. Anything that is inherently stable seems like it should be "easy"--like a high-wing monoplane with lots of dihedral angle, you release all control inputs and it defaults to straight and level flight.

Re: Proportional-Integral-Derivative (PID) controllers

#42

Earlier quoted context omitted.

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…

I don't have a good intuition about the what makes a problem sensitive to tuning, is it possible there are a large number of control problems where proper tuning doesn't matter much? Or the deleterious effects of improper tuning (like oscillations or overshoot) are masked somehow? EDIT: I guess intuitively, big (lots of inertia) damped systems are probably pretty safe--you can do all kinds of crazy things with the co…

Yes, you’re absolutely right, systems that are default-stable are much easier to tune, and large inertia does make the system more stable. For those sorts of systems, any minimal feedback is often enough to get the performance you want. If you have high requirements you might need something fancier, but frankly most systems don’t have high performance requirements. Having very fast feedback loops helps too, so with digital controllers getting better and better you can be a bit sloppier with control design and it will still work.

There are indeed a large number of control problems where proper tuning doesn't matter much. I think we’ve built many of our tools to be “easy” to work with, and one aspect of this is that they’re intentionally made in a way that’s easy to control. Another factor here is that the “difficult” problems need some serious thought, which require research, measurement, and advanced degrees, making them more expensive. Many of these are just not worth the cost (yet). And even if you _do_ design a well-performing complex controller, you need to hire controls engineers to maintain and update it as designs change. I _love_ using LQR, optimal control, robust control, etc, but can almost never justify it. As a result, probably 90%+ of control applications by count just use PID. The remaining 10% are of course where most of the research happens, they’re much more fun.

Re: Proportional-Integral-Derivative (PID) controllers

#43
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?

There are two types of nerd - one who optimized fan speeds and one who just lets ‘er rip for max compute ;)

Re: Proportional-Integral-Derivative (PID) controllers

#44
post #6
post #3

The fascination of programmer types with classical control and estimation topics is endlessly interesting as someone who studied control and estimation and hangs out here for interest in the programming. For me it was surprising to see that JEPA is a model predictive control algorithm it an almost literal sense; I guess I’m happy to have studied what I chose when I was 18.

Yeah, kind of hilarious to me that this was posted here. I suppose if you’ve never encountered control systems at all before they are quite simple, elegant, and cool, but I’m surprised any technical person hasn’t come across them at some point.

I wouldn't underestimate the value of introductory submissions! Every topic is familiar to some users, no topic is familiar to all users, and let's not forget that newcomers, who still have everything to learn, are particularly welcome.

Re: Proportional-Integral-Derivative (PID) controllers

#45
post #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 en…

I use an MT6701 magnetic rotary sensor mounted on the motor shaft, running in AB[Z] mode. This is used to measure the angle of the motor, and generate the correct PWM signals for the three motor coils. My inner current-control loop runs at 15kHz, using a PI controller.

Re: Proportional-Integral-Derivative (PID) controllers

#46
post #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 ?

Depends on how they address the side fumbling between the Spurving bearing and the Dingle arm, vis-a-vis the lotuso-toroidal damping force.

Re: Proportional-Integral-Derivative (PID) controllers

#47
post #7
post #3

The fascination of programmer types with classical control and estimation topics is endlessly interesting as someone who studied control and estimation and hangs out here for interest in the programming. For me it was surprising to see that JEPA is a model predictive control algorithm it an almost literal sense; I guess I’m happy to have studied what I chose when I was 18.

I signed up for one of the first MOOCs ever, about self driving cars by Sebastian Thrun, and of course PID was part of the curriculum. I think that PID hits a certain sweet spot between cleverness, ease of implementation and practical utility that makes it catnip for the typical programmer's mind. I liked it so much that when we had to implement it, I downloaded an open source driving simulator to see it work there i…

> I think that PID hits a certain sweet spot between cleverness, ease of implementation and practical utility that makes it catnip for the typical programmer's mind.

It's easy to implement, but hard to tune.

PID controllers can be built from analog pneumatic components, and often are.[1] This predates computer control. The I term is called "Reset" and the D term is called "Rate" in classical control.

[1] https://control.com/textbook/closed-loop-control/pneumatic-p...

Re: Proportional-Integral-Derivative (PID) controllers

#49
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…

was about to comment similar things! PID is relatively straightforward to tune. Also a lot of the time you just need a PI controller. D can be problematic depending on what noise you have.

Re: Proportional-Integral-Derivative (PID) controllers

#50
post #3

The fascination of programmer types with classical control and estimation topics is endlessly interesting as someone who studied control and estimation and hangs out here for interest in the programming. For me it was surprising to see that JEPA is a model predictive control algorithm it an almost literal sense; I guess I’m happy to have studied what I chose when I was 18.

>> For me it was surprising to see that JEPA is a model predictive control algorithm it an almost literal sense; I guess I’m happy to have studied what I chose when I was 18.

It's sold as something completely different though that will revolutionize autonomous decision-making which it clearly isn't, it's just trying to re-invent the wheel but with neural nets this time around.

I'll confess I didn't understand what you meant with the part of your comment after the semi-colon.

Post reply on HN