2 posts in this topic

Hi there!

I have a problem with a process. The bottom line is I have a quite big asynchronous motor (about 110kw), with this motor I would like to fill a pool. There is a sensor that monitors the level. Im setting the PID for the motor control, it seems to be good, but unfortunately the fultuation is very big, however the level is perfect. I send a 4-20 mA signal to the inverter. Actually, it is almost everytime changing. I think it is not good for the motor. the changing scale is between 100 and 600 rpm ... What do you guys think ? Can this cause early motor or inverter failure?

I had a thought, I did that I was doing an average and sent the current process data every 3 seconds. It causes that, the motor rpm 100 or 600 rpm.. nothing else, and change it about every 3 or 6 seconds,  because of te too much error I think. 

How can I solve the this problem. The material runs out evenly from the pool, but the control variable is still bouncing.

I monitored the process variable and the control variable too and the error too. I noticed that the output only changes when it is very close to the setpoint. for example the setpoint is 5000. And if the process variable is 4950 then the output is 100%. and if the process variable is 4992 then the output is about 67% but, the if the process data is 5010 then the output is 0%.  

I'd expect that, for example that if the process variable is 2000 then the output is will be 100%. but the process data is 4000 then the output will be 50 % ... and so on.... so I hope I can find a permanent output value. 

I dont know, maybe I made some mistake.... pls help me in this situation. Thank you.  




Share this post

Link to post
Share on other sites

What PID parameters are you using? Also - smoothing the process variable isn't a bad idea but 3s is a very long lag time. You've probably changed the PV to a square wave (not good) so every three seconds the process is destabilized 

If you're getting a lot of oscillation it'll be the tuning.Specifically the gain (if I and D are not set too fast, or on the case of D, it shouldn't be enabled at all)

Derivative is typically not used for a level control process.

Integral is typically set to return the PV to the SP but for level you want the time to be fairly large. Integral does not "like" oscillation in the PV, even if it's high frequency. 

Your output swings tell me that the gain is set too high. 

The business that I'm in is a little different than yours (I think, I'm in oil and gas processing) but I can give you an example of how I would tune a level control. There are equations, slide rules, formulas and probably even a little black magic that you can use. I've used many different ways to tune but this is how I like to tune simple processes like level. This will be specific to level:

Derivative - not needed. There is a value to set derivative to in the AB that negates the effect but it's been awhile and I don't recall what it is

Integral - If I remember right the units for the CLX PLC PID loop is minutes per repeat. You'll initially set this to a high value. 20 minutes. Especially if the level is noisy (trend it and see how much it moves. Be aware of high frequency oscillations, large or small)

Gain - A gain of 1 is a good place to start but in this case you already have a value that isn't working for you. Start there. If you can trend the SP, PV, and output while you are changing the Gain it'll help you visualize what's going on. As you increase gain the loop gets more sensitive. Ie the amount of level deviation from setpoint has a greater affect on output. It sounds to me like the gain is set too high. Decrease the value.

You actually have two goals here- decrease the amount of output swing and maintain the level within the boundaries that the process can withstand.

Level is very often mistuned imho (including by me). You have a "volume bottle", ie the pool of water. Typically level does not have to be controlled to exactly X%. There is a range, say 40% - 60% that the process can handle. Maybe it's 45% - 55%... The point is that you can allow swings in the PV as long as the level is maintained within the limits that are allowed. For large surge drums (in our industry, that could be 30% - 70%. We don't care if it is specifically at some value, say 50%, just that it doesn't over fill or run dry.

Back to tuning - Double check that I is set to I relatively high time value and D is disabled. Decrease the gain while watching the output and the PV. As you decrease the gain (slow the loop down) the output swings should start to diminish. At some point things should settle down. Decrease it just a little from there. Watch the loop SP, PV, and output for a bit. Don't worry about SP and PV matching for now. Once you settle the loop down you can slowly decrease integral time and PV / SP should start to come together. If you set I too fast you'll destabilize the loop. Normally (other than level) you might want to adjust I until the loop destabilizes then slow it down about 1/2 way back to where you started. Then decrease the time until it destabilizes and go 1/2 way back to the new setting. At some point you'll find a place that the process likes

You don't want to see a lot of output swings on level. The purpose of the level storage "vessel" is to add capacity to the system to help smooth out the swings. If you're familiar with C power supply design you know that capacitance is used to smooth out the ripple of the rectified AC. Same thing. Sort of

This is pretty decent: http://cats-fs.rpi.edu/~wenj/ECSE446S05/pidtuningguide.pdf

Old school tuning setup: http://www.eng.utoledo.edu/~wevans/chap19_S.pdf



Edited by Michael Lloyd

Share this post

Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now