sjeggefjes Posted January 15, 2014 Report Posted January 15, 2014 Hi, I have made an temprature controler using PID. I'm using an V130 plc and visilogic 9.3.0.1 The output ( 4-20 mA signal) control an heating cable and the process value is a PT100 sensor on the object that I'm heating up (body temp), and I have one on PT100 on the heating cable as well (cable temp). The input variables that I use is setpoint, cable setpoint and there is an max temprature setting. The object that I heat up is steelpipe with equipment inside. I wrap the heating cable around the pipe and isolate the object. If I use the cable temp as processvalue all is fine but the system is too slow and in accurate. Because there is often much mass to heat the cable temp has usualy to be 10-20 ° over setpoint (to speed tings up) and this is hard to figure out each time becase the object is changing and when the body temprature is at setpoint the cable setpoint has to be changed( lowered). If I use the body temp as processvalue the system is quicker and more accurate but now the cable temp is often over wanted the maximum temprature and is tripping an tempraturelimiter. Becasue of this I've made the system with 2 PID controlers one with body temp as pv and one with cable temp as pv. At first the cable pid is controling the output and sets the cable temp at cable setpoint. Then when body temp is at setpoint the body pid is taking over and the system works fine but now the problem starts. When body temp is at setpoint we are increasing pressure inside the pipe with water or gas( to test the equipent inside) and this usualy takes the temprature down. Now the body pid is detecting this and increase the output but because of great mass this is a slow process the output is to high, so again the temperaturelimitier is tripped. I've not been able to make the system to change between these two controlers in an good way or to make them "play together". So the question is: Has anyone been able to make an PID-controler with 2 processvalues or a system that take in consideration 2 processvalues? brgd sjeggefjes
MVP 2014 Simon Posted January 15, 2014 MVP 2014 Report Posted January 15, 2014 This can probably be solved by cascade control. Use the CV of the Body Temp PID as the SP for the Cable Temp PID. So when the Body temp drops, it asks the Cable Temp PID for more heat (and vice versa). Tune the cable temp PID first, without the Body Temp PID active. You will probably also need to add a limiting function to the Cable Temp PID to restrict the output if the PV gets too high, as a software limiter. Use basic Compare blocks for this. Note also that there is a PID function to suspend and reset the Integral term, and these need to be used if the limiter is active. I can't get into this too deeply, but I hope these ideas give you some leads to follow.
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