Jump to content

High Speed Outputs and PID


Recommended Posts

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

Link to comment
Share on other sites

  • MVP 2023

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.

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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

Link to comment
Share on other sites

  • MVP 2014

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.

Link to comment
Share on other sites

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

Link to comment
Share on other sites

  • MVP 2014

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). 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...