02-23-2012 03:45 PM
Hello everyone,
Recently, I've been able to use LabVIEW with a digital output module to switch a relay to turn on a heat tape. Basically, if a thermocouple reading is less than the set temperature of the heat tape, the digital output sends a signal therefore switching a relay allowing the output circuit with the heat tape to complete and therefore power the heat tape.
Though my program has been working fine, I have been wanting to add some sort of temperature ramping capability. That is, I would like to be able to control how fast I am heating my apparatus. Because the heat tape is either on or off (no in between temperature settings), my plan is to calculate the current rate of how fast the apparatus is heating, compare this rate to the set rate that I wish to heat at (example 5 degrees Celsius/min), and then use this comparison to control the rate at which the heat tape is turning on and off.
Anyone have any thoughts on my p or ideas on how I should try to implement such a feature?
Justin
02-23-2012 03:48 PM
We had to do this for an airbag center. We had to do heat blanket control. I will tell you that you need to be using a PWM controller so that you never turn your heaters off. They should always be pulsing even if just a little. This will give you the best control possible. This keeps the heater warm when you need to start adding heat again.
The second thing I would reccomend is to use a PID control system. This will give you the ability to control well when you are at or near your setpoints. You will have to build a ramp function that works with these two features to get your finished product.
02-23-2012 06:02 PM
A PID controller connected to a PWM to cycle power to the heater is definitely the way to go. You could control the heating rate directly - use the measured rate as the process variable and the desired ramp rate as the setpoint - or you could ramp the actual temperature setpoint. The former might get you a more even heating rate, but the latter will get you better temperature control at the final temperature, and it's not that much work to ramp the setpoint. For a slow heating system, you can generate a PWM signal in software. Here's an example of a PID controller connected to a square wave generator to get a PWM signal:
You can simplify this slightly by removing the "Tick Count" initial time outside the loop, and the subtraction; connect the timer output directly to the division. It will work the same.