Coming soon - Get a detailed view of why an account is flagged as spam!
view details

This post has been de-listed

It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.

3
What variable should PID controller control?
Post Flair (click to view more posts with a particular flair)
Post Body

I'm trying to wrap my head around PID controllers. The question in the title might seem simple, but let's consider following situation:

Let's say I have GPU that produces some amount of heat. That's obviously my process variable. I can set the fan RPM to whatever value I want. The PID calculation gives me for each time t control variable value u(t).

The most obvious thing would be to just say that the variable I control is the RPM of the fan as that's what I can directly control. (The fans magically spin to whatever speed I set, I don't need to worry about how they are controlled.) But who's to say this is the most fundamental thing? What if I pretended I can't control the RPM directly, but I control rate of change of the rpm. (Pretend it's some kind of magical throttle lever that controls spinning up or down.) I could probably find more variables that would make sense. How do I choose the correct one.

Let's say I would control RPM directly only using the P-component. When GPU is producing lot's of heat, it needs hight RPM just to keep the temperature steady. You would need big temperature differential for that hight RPM. Solution would be to add strong I-component to compensate for this, but it feels somehow wrong, especially when I compare this with other systems. For example when you are steering ship, even with simple P-controller you would eventually reach desired azimuth (be it maybe with some oscillations, or maybe you'll need to add small contribution from I to compensate for wind). When you are heating a room, P-controller will get you there (maybe use some small help from I-component to compensate heat loss).

If I would control the rate of change of the fan, I would no longer need crazy high I-component as the fan would eventually reach speed that's enough to compensate for heating, but but maybe there are some disadvantages to that. Maybe I would need high D-component to avoid oscillation. But this feels way more natural to me for some reason.

To me seems like I have this infinite ladder of variables I can choose from that are related by derivative (or integral), and I don't know how to choose the right one for use-case. I don't really see the connections why some options feel better than others.

Author
Account Strength
100%
Account Age
4 years
Verified Email
Yes
Verified Flair
No
Total Karma
15,573
Link Karma
201
Comment Karma
15,011
Profile updated: 4 days ago

Subreddit

Post Details

We try to extract some basic information from the post title. This is not always successful or accurate, please use your best judgement and compare these values to the post title and body for confirmation.
Posted
4 months ago