Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Question: feedback loop for temperature control via peltier#562

kratsg started this conversation inGeneral
Discussion options

This looks like a very nice (and well-developed) package. I haven't done the control systems through matlab (which a lot seems to be referenced) but I'd like to get started, maybe using this package to describe a system that provides feedback on the control of a peltier element (via modifying the voltage on a power supply).

I'm not entirely sure where to get started, but hoping I could get some tips or be pointed along the right path here. Nominally, the functionality would be that the current temperature, reference (goal) temperature, and current voltage as input -- with output being the new voltage to set to. [Perhaps an additional input would be a time-delta between measurements]. Thanks!

You must be logged in to vote

Replies: 2 comments 8 replies

Comment options

Hi,

of course there is thepackage documentation.
You can also start by comparing the examples given inFBS with thoseimplemented for python-control, like the basic cruise control.

You must be logged in to vote
0 replies
Comment options

the basic cruise control.

Sorry, I did see the cruise control example, but that doesn't seem basic? Is this package not meant to be used for something like a simple PID controller? Because it would be really helpful to show how to use it for a simple application like that.

Personally, that's a very long example to try and digest, and I'm not even sure I can clearly formulate a set of equations in my case that describe the temperature flow of a complicated system.

You must be logged in to vote
8 replies
@kratsg
Comment options

I could really be misunderstanding still (sorry!)

Do you mean to simulate or do you want to drive an actual controller with input signals from sensors and output going to actuators?

Drive an actual peltier (in this particular case). I don't even think I can build a model for this, because I'm not trying to drive a single car, but many different cars (to use the metaphor of thecruise example). In this case, we're driving the peltier (no actuators) by setting the voltage.

But you still need to model what we call "the plant". How does your peltier element react to input of some sort (voltage) and how does it interact with the rest of the environment?

This is the part I'm still struggling with (and I'm not sure I want to try and model the incredibly non-linear portion of temperature propagating through various materials of different conductivities - unless that's what you're proposing?).

To clarify (including the "non-deterministic" part) -- we're cooling down a sensor-on-chip and the chip itself is performing scans to read out the sensor. Depending on the radioactive source in play, as well as the sensor performance and behavior, will heat up the entire chip. The goal of the PID controller would be to receive, as input, temperature of the system, and set the voltage of the peltier to some value in a range of [0, 5V], in order to achieve a setpoint temperature.

There's two things that (in my mind) make this different from thecruise example:

  1. delayed response (the conductivity of these materials and how fast the temperature propagates is a function of the temperature of the system) where the peltier has to be driven a bit longer before seeing an impact on the temperature
  2. thousands of chips+sensors will be placed in the housing [all with, of course, different behaviors which means different models] but the same software controller should still be able to cool down the chips to the setpoint temperature.

If you do say that this is possible, it would help if you could point me at something like FBS talking specifically about driving/controlling anything temperature-related. I can find many examples of mechanical systems involving speed/thrust/motion -- but I'm at a loss for anything temperature-related. If I was going to build a model, I'd need to do Finite-Element-Analysis for the thermal portions here in order to model it properly... Or am I somehow overcomplicating things?

@bnavigator
Comment options

In this case, we're driving the peltier (no actuators) by setting the voltage.

So the peltieris the actuator.

But I think I also misunderstood you or still do. Now it sounds like you are more looking for software to do realtime calculations including talking to the interfaces where you get the sensor inputs and set the peltier voltage output. Neither python-control nor MATLAB, which you mentioned are designed for that. (Although with some tweaks, Python or MATLAB may be abused for it)

To simulate anything, you need to model. The degree of approximation used for the model is at the discretion of the engineer. So is the choice of type of controller. It does not have to be a PID. A Bang-Bang controller would be even simpler to implement (but not to model). On the other hand, if robustness against different chip behaviors is key, you might even go overboard with the topic of "robust control".

@kratsg
Comment options

But I think I also misunderstood you or still do. Now it sounds like you are more looking for software to do realtime calculations including talking to the interfaces where you get the sensor inputs and set the peltier voltage output. Neither python-control nor MATLAB, which you mentioned are designed for that. (Although with some tweaks, Python or MATLAB may be abused for it)

I think this is exactly what I want. Ok, I wasn't aware. I thought onecould usepython-control to actually drive something, but if it's purely a simulation-based tool [e.g. to understand exactly your system that you've modeled] then it's different than what I was looking for!

I think if I was to use thecruise metaphor (poorly), this would be like someone giving you a parking lot full of cars of various makes/models and various states of wear and tear -- and giving you the instruction: "give them all cruise control functionality". This probably answers my question then (sorry for misrepresenting it, as I'm not super familiar with the industry-specific jargon here).

@josujugo
Comment options

Hi,

Maybe you should see this one:

https://github.com/robertobucher/pysimCoder

Best regards

josu

@kratsg
Comment options

Thanks Josu! I will look into that. I found this one as well (https://github.com/m-lundberg/simple-pid/) so there seems to be examples I can look at.

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Category
General
Labels
None yet
3 participants
@kratsg@bnavigator@josujugo
Converted from issue

This discussion was converted from issue #559 on March 12, 2021 10:34.


[8]ページ先頭

©2009-2025 Movatter.jp