JustinCochran Posted September 24, 2013 Report Posted September 24, 2013 Had some questions involving using about 10 to 12 seperate heating controls. I watched the webinar on PID and that explained a whole bunch, but not everything. I noticed in the example in the webinar he used a high speed output to control a solid state relay if I'm understanding that properly. When using PID and heating is using a high speed output a must for this application? I was just looking through the different I/O expansions and wasn't seeing anything that had more than 1 high speed output. Is there one I'm just overlooking or is there a different way to go about this? I don't actually have a project, just doing some different examples on my own time to learn and understand more. Maybe in the future and hopefully this will play a part in a project that I'd like to do. Justin C
MVP 2023 Joe Tauser Posted September 24, 2013 MVP 2023 Report Posted September 24, 2013 You can configure your PID block to output 0-1000 (0-100.0%) and run that into a PWM block. A heating application doesn't need the speed of a true high speed output - you can map the output bit to any DC output if you set the PWM frequency to 100 Hz and it will work fine. I would also think about if your application really needs PID on all heating loops. If your heaters are "matched" to your process and you don't need super-tight control, On-Off control might work just fine and be a lot simpler. Joe T.
JustinCochran Posted September 25, 2013 Author Report Posted September 25, 2013 Thanks for the reply Joe. Once again it is very helpful. From what I understood, PID keeps the temperature close to the setpoint or pretty much right on the setpoint. In the application I would use it in, I would be heating up a heater band that is wrapped around a steel barrel that melts the plastic inside it. Typical heater bands we use are single phase 240 V, the wattage varies. Temps would be about 350 degrees F. I would want to think I would have to use PID on all my loops to keep the temperature as close as possible. The applications I have seen that use a typical heating controller, the temps are always within a degree or so of the setpoint. I was actually looking at examples earlier that dealt with both HSO and PWM blocks. That was actually going to be my next question if PWM blocks would work for this. I was hoping that would be the case. Justin C
JustinCochran Posted September 25, 2013 Author Report Posted September 25, 2013 Another question I thought of using auto PID to calculate the PID parameters. Say I end up using 10 loops, can I use one PB to auto tune them all at once or would it be better to use a different start up procedure for each loop? Is auto tune something that has to be done everytime a machine with heating controls has is turned on? Or is it only have to be done once to find the parameters, then it never has to be auto tuned again? If I do end up doing this application on a machine it would probably be turned on once a week and stay on for 5 days before being powered down. Thanks Justin C
MVP 2014 Simon Posted September 26, 2013 MVP 2014 Report Posted September 26, 2013 Looking at this from the level of general concepts, Autotune enables the PID controller to learn the characteristics of the system (for example, thermal mass, lags and delays, and so on). For your 10 loops, if the charactersitcs of all 10 systems are the same, then you should get a reasonable result by tuning just one of them and copying the values to the other 9 (make sure you include the "vector of 32 MIs" in what you copy). Likeise, if your system doesn't change much over time, then there unlikely to be a need for retuning each time. Of course the opposite is true. If your 10 loops are quite different, then each needs to be tuned separately. If your system changes over time (for example the thermal mass changes, due to different loading patterns) then you may need to re-tune for different loads. These parameters can be saved and recalled. So you may be able to tune for "light load", "Medium Load" and "Full Load" (as examples) and save the values for future use. I am thinking of an oven or kiln in this example. I hope this helps.
JustinCochran Posted September 27, 2013 Author Report Posted September 27, 2013 You can configure your PID block to output 0-1000 (0-100.0%) and run that into a PWM block. A heating application doesn't need the speed of a true high speed output - you can map the output bit to any DC output if you set the PWM frequency to 100 Hz and it will work fine. I would also think about if your application really needs PID on all heating loops. If your heaters are "matched" to your process and you don't need super-tight control, On-Off control might work just fine and be a lot simpler. Joe T. I don't see where you would change the frequency unless I configure a HSO on, for example, the snap in I/O. As far as what I have so far, I'll explain as best as possible. I have a MB that triggers PID autotune RUN, if it is not in the process of auto tune, and the status of PID is greater than or equal to 0. After that, I have the PWM scan FB where I put a number of 400 for cycle time (just made one up for now, not sure as this is all hypothetical right now), and the duty cycle is PID: CV - the PID output. The result MB triggers a relay that lets power go to the heater band. Probably would be a solid state relay or maybe a different type. Does that look like a step in the right direction? Thanks. Justin C
JustinCochran Posted September 27, 2013 Author Report Posted September 27, 2013 Wish I could edit my post I submitted before this one. I'm thinking the frequency is probably the cycle time, correct?
MVP 2023 Joe Tauser Posted September 28, 2013 MVP 2023 Report Posted September 28, 2013 If you look carefully at the PWM Scan configuration, you'll see that Cycle Time is in 2.5 ms units, so it's not really frequency. 1/0.0025 = 400 Hz; to get 100 Hz use a value of 4 for the cycle time (4 x 0.0025 ms = 0.01 ms per cycle = 100 Hz). Joe T.
MVP 2014 Simon Posted October 2, 2013 MVP 2014 Report Posted October 2, 2013 As Joe has illustrated, you set the cycle time as a constant (and by inversion, this sets the frequency of the PWM output), then the heating effect is modulated by the duty cycle (or duty ratio as it is sometimes called). A shorter cycle time will give your heater a faster response, but shorter lifetime of the switching device (in general terms).
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now