Help me think about controlling 5 heaters with 3 RTDs - Page 1
Forum section: electronics / projects

author: tmadness
author_rank: Regular Contributor
timestamp: September 03, 2020, 11:53:43 pm
content: I have been thrown a interesting problem: I have to control 5 heating elements with inputs from 3 RTDs. See, normally when the number of RTDs == number of heating elements, the power going to the heaters can be set using an independent PID loop for each pair. But I've been given a device with 3 heating elements directly underneath 3 RTDs, and 2 extra heating elements connected to a common substrate. I've drawn a diagram hopefully clarifying this. Heaters are in orange (H1-H5) and RTDs in purple (RTD1-RTD3), the container is just a "container" for whatever is being heated.Now, how do I think about how much power I ought to send to the two side elements? I do not have the ability to change the RTDs or the elements. All the containers are set to the same temperature.

author: ledtester
author_rank: Super Contributor
timestamp: September 04, 2020, 12:16:07 am
content: Hmm... do you need to use H4 and H5 for this application?Also, do you expect the temperatures to differ a lot between the heaters?It seems that H4 and H5 would heat up the entire space - i.e. affect all of the RTDs. How about using the "max" of the RTDs to control H4 and H5. So if all of the RTDs are below the target temp H4 and H5 are utilized. I'm assuming that there is one single target temperature for all of the heaters.

author: tmadness
author_rank: Regular Contributor
timestamp: September 04, 2020, 12:26:00 am
content: Yup all the containers are set to the same temperature, Ive added that detail to the main post. H4 and H5 are important in keeping even temperature on the whole container, ie no cold spots.The Issue I see with using max is that there may be a race/oscillating condition.

author: NiHaoMike
author_rank: Super Contributor
timestamp: September 04, 2020, 12:39:42 am
content: Control the outer heaters based on the duty cycles of the inner 3, trying to keep those inner 3 at close to a 50% duty cycle. You'll probably have to use a much slower loop to control them compared to the inner heaters.

author: dmendesf
author_rank: Frequent Contributor
timestamp: September 04, 2020, 12:53:37 am
content: Double oven OCXOs usually set the outer oven to a slight lower temp than the desired temp and the inner closes the gap. The idea is to cancel the constant temp difference with the outer oven and the derivative with the inner. Maybe you can work out something like that.

author: wizard69
author_rank: Super Contributor
timestamp: September 04, 2020, 02:15:40 am
content: I see lots of projects like these where it appears that whomever designed the solution never thought about control. In any event this sort of arrangement presents all sort of questions. I would start out trying to figure out what the substrate heater capacity is and how hot the substrate can get if they are simply left on. I could very well be that there isn't enough wattage in those heaters for a run away. Then you may be able to simply control each container individually. I say "may" because there are many issues to contend with.This kinda reminds me of getting barrel heater control loops to work on plastics injection molding machines. Generally in the case you may have 3-4 barrel heaters with a T/C located under the heat zone. The nature of the machine implies heat sinks at each end of the barrel and an uncontrolled heat source in the middle of the barrel. I don't think there is ever a perfect solution to controlling temperatures under these conditions and apparently the manufactures of the machines have given up on a perfect temperature control system. In your case the troublesome unit will the the container in the center (if that is indeed the arrangement) as you will always have heat from the two side zones impacting the temperature of the center zone. It of course depends upon how much coupling there is between zones (containers).Being that information on the substrate is sparse to us at the moment, you might want to consider operating it at a relatively low temperature so that you can easily control your 3 zones.

author: jbb
author_rank: Super Contributor
timestamp: September 04, 2020, 05:34:40 am
content: What’s your control goal? Is it perhaps a calorimeter system?Can you measure the couplings from each heater to each RTD (get 3x5 matrix)? If there’s significant cross-coupling between the 3 ‘inner’ zones then you might benefit from a state space control method, which controls all 5 heaters based on all 3 temperature sensors.If cross coupling is low, rubbing outer heaters at a constant level and using 3 separate PID loops might be just fine.Do you have any other temp sensors around? Maybe an ambient temperature sensor outside the oven?Do you know about / have control over the heat load in the 3 inner zones?

author: tmadness
author_rank: Regular Contributor
timestamp: September 04, 2020, 05:58:42 pm
content: @wizard69 yup, its a design that did not take control in mind, but i'm stuck with it. BTW the container is in the middle, the substrate is AL so it does conduct okay. and there is a good amount of cross coupling.@jbbI cant quite reveal what goes into the container, but its very sensitive to temperature, target accuracy spec is ±0.5 C.QuoteI literally asked for the same thing. I was met with "lets put it on the wish list" (never).QuoteIn my initial prototype I got a stable temperatures without the outer heaters, but I only went upto 1/2 the target temperatures, due to limitations in the design. I would imagine the outer two heater play an important role at max temp.

author: KT88
author_rank: Frequent Contributor
timestamp: September 04, 2020, 06:27:52 pm
content: I think dmendesf s on the right track....I would use either an average of all three sensors or just the feedback from the mid one. Then I would use a set value for H4 and H5 slightly below the desired temperature of the containers.With only a slight difference in temperatures the the control of the container values should be far less challenging....It might require a fixed Ratio between PWMs - not sure if different set values based on the same sensor could work...

author: David Hess
author_rank: Super Contributor
timestamp: September 04, 2020, 07:04:03 pm
content: I have seen this done before where the extra heaters were modulated with the average of the controlled heaters.

author: KT88
author_rank: Frequent Contributor
timestamp: September 04, 2020, 09:08:19 pm
content: Rethinking the control scheme...- The containers have to have a defined temperature +/-0.5K.- The power of the heaters H1...H3 is not sufficient.- H4, H4 have no sensor...- The issue is the insufficient power of H1...H3.- Heaters H4, H5 can contribute suffient power to offload H1...H3.- A loop to keep the power of H1..H3 constantly within their capability (~50% DC) would solve the problem.- The power of H1...H3 is proportional to their duty cycle.- That points towards the suggestion of NiHaoMike.

author: ejeffrey
author_rank: Super Contributor
timestamp: September 05, 2020, 05:42:10 pm
content: Quote from: NiHaoMike on September 04, 2020, 12:39:42 amI think this is the best option. You can then tweak the 50% threshold or the max power of the inner heaters as low as possible without getting too much overshoot. That will keep the outer heaters just below the inner ones.

author: KT88
author_rank: Frequent Contributor
timestamp: September 07, 2020, 03:53:23 pm
content: QuoteFor (very) low duty cycles the steps (of the ratio) of the PWM can get pretty coarse. To stay away from the extremes you could reduce the power of the inner heaters, if nescesary...

author: ejeffrey
author_rank: Super Contributor
timestamp: September 07, 2020, 05:19:47 pm
content: Quote from: KT88 on September 07, 2020, 03:53:23 pmThat is a good point, although reducing the max power will increase the time needed to initially reach the setpoint. If this is a problem you could also use a simple delta-sigma modulation of your PWM to get a bit more effective resolution at the low end. This is effectively what PID loop will do: if the ideal setpoint is between two PWM codes, the feedback loop will hop back and forth between two duty cycles. Delta-sigma just does this with a faster digital loop that doesn't have to wait for the slow thermal response.

author: jbb
author_rank: Super Contributor
timestamp: September 07, 2020, 10:29:46 pm
content: I had two thoughts. First: do you have access to the person who designed the heater assembly? They may have already done some work on this, eg their calculations for heater resistance / power.Second - and I may get peanuts thrown at me - but I also wonder if we can help this situation with MOAR MATHS!Can you add some more RTDs for engineering purposes on a small number of development units? Maybe two more on each ‘outer’ heater? This would allow you to characterise a bit more about the heaters.Then you could do a larger system model which includes your 3 inner zones and 2 (or maybe more...) outer zones. At this point you could do some formal control system analysis to see if the system isobservablefor the temporary ‘engineering’ sensors. If these are observable, you could then build a mathematical observer into your control system, which would output temperature observations for the missing 2 sensors.If successful, you would have 5 temperatures for 5 heaters.