Robo

Q series PID control

6 posts in this topic

Does anyone know how to reinitialise the PID function on 1 loop only.

I am using 3 loops and don't want to use the PIDINIT command as this will perform an initialise on all loops while they are running OK. I am using the PIDRUN/PIDSTOP commands for loop 3 and this is causing the next PID process to use the "old auto mv" it had stored prior to the PIDSTOP command for the 2nd and subsequent processes. All loops run in auto only. I have used PIDPRMW but this doesn't work.

Share this post


Link to post
Share on other sites

I'm not too into PIDs, but what CPU and software (including version) are you using?

Share this post


Link to post
Share on other sites

Sorry, forgot to ask the first time: Why do you want to re-initialize the loop in the first place? Wouldn't normal start/stop, or maybe bypassing them be sufficient?

Share this post


Link to post
Share on other sites

No. Using start/stop does not re-initialise the PID. It just turns off the PID function leaving the autoMV where it was prior to the stop function. So the next time you use the PID function it resumes at a point you stopped last time. This causes a major malfunction with our process. 

I've just had a colleague tell me that the auto/manual selection bit can be used to move the manMV (writeable) into the autoMV(read only), so by toggling the auto/manual and writing '0' to the manMV should do the trick.

Share this post


Link to post
Share on other sites

Yes, that was what I was wondering about. I've used auto/manual and have never had issues, but I guess I used the wrong term ("start/stop" instead of "auto/manual"). Glad you got it sorted out.

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