Posted 11 Aug 2005 Hi everyone, I just joined this forum. I am using AB SLC 505 to control a cooling sequence. How do I go about this? The control is as follows: I have a PID loop with a changing setpoint. The setpoint should change based on time which I will set in a recipe. For example, I want the set point to change linearly from 45deg c to 35 deg c in 65 minutes. Thanks Share this post Link to post Share on other sites
Posted 11 Aug 2005 Should be pretty easy to do with a 390 second timer, just decrease the setpoint every time the done bit goes true. If timer.dn is true, and setpoint > 35, then setpoint = setpoint-1 Or use a 65 minute (3900 seconds) timer and ten compares. If timer.acc > 0 and <= 390 then setpoint = 45 If timer.acc > 390 and <= 780 then setpoint = 44 If timer.acc > 780 and <= 1170 then setpoint = 43 etc.... Share this post Link to post Share on other sites
Posted 11 Aug 2005 The SLC5/05 has a RMP instruction. That is the simplest way. To calculate a ramp the formula is: Start_setpt + (End_Setpoint - Start_Setpt)/Total_Ramp_Time * Ramp_Timer.ACC I encountered an application once where a long ramp had to be calculated but a one second time base resulted in a stepped output that was not acceptable to the customer, but using a .01 second time base would not provide the required time. I built a long duration floating point high resolution timer using two timers. I have never encountered another application where this was required, so its of dubious use, but I attahced a code snip of what I did. You can see the ramp equation I posted above in the last rung of the code snip. The same method could be used with some adjustment to create a timer that would count for thousands of years. long_hi_res_timing.RSS Share this post Link to post Share on other sites
Posted 12 Aug 2005 Just make sure the customer doesn't expect to see the timer reach "Done" before they'll pay you :) Share this post Link to post Share on other sites
Posted 16 Aug 2005 Hello Thanks to everyone for your contribution. The ramp equation did work. Thanks alot Alaric Share this post Link to post Share on other sites