PIDE and periodic task?

dginbuffalo

Member
Join Date
Dec 2010
Location
Buffalo,NY
Posts
630
i am slowly finding my way on how to use a PIDE and it raised a question- i have other programs written by two contract integrators that used PIDE set to periodic but placed in the "continuous" main task. there out in the field running for over a year so they work you could say! is the scan rate just whatever it happens to be then? Everything i read says the PIDE MUST be in a periodic task?
 
Put it in a periodic task. For best results a PID must be executed at a precise periodic rate - and that is something you can't do in the continuous task.
 
there out in the field running for over a year so they work you could say!

The PIDE Instruction, by default, uses the "Periodic Timing Mode", and it is recommended that it is put into a Periodic Task. For absolute "best" results, that periodic task should have the highest priority (lowest number).

It can be used in a continuous task, triggered by a timer (Oversample mode), or it can be executed every scan and the instruction will use the time-stamp from the process input if available (Real-Time Sampling mode).

As you say they are in periodic mode (default), and they are most likely running OK because they are triggered with a timer.

Typically there's "not much" wrong with that setup, but only in loops that don't need fast response or super-accurate control. The natural fluctuation of scan-rate will affect when a timer .DN bit is seen (in real-time), so the PIDE will not be scanning at a fixed, deterministic, rate.

My guess is - a wild guess - the SIs didn't have a full understanding of how best to use the instructions, and I'll apologise to them if they can demonstrate superior performance the way they have it. A heavy comms load, for example, can affect the continuous task scan-rate dramatically

As Alaric points out "best" performance is achieved if the instruction absolutely knows the exact time-interval from when it what last scanned, because PID uses Integral and Derivative terms that are time-based. Why settle for "second-best" ?

An analogy - would you measure anything with a tape measure that someone had put 1 metre marks on it by eye ?
 
Last edited:
The PIDE Instruction, by default, uses the "Periodic Timing Mode", and it is recommended that it is put into a Periodic Task. For absolute "best" results, that periodic task should have the highest priority (lowest number).

Unless the OP is using CompactLogix the depending on the number of loops you would be better to go with 7-15. 6 or lower will affect I/O update times.
 

Similar Topics

I am currently adding pide's to an existing RSLogix 5000 program (ver 13)for controlling our scrubbers. I am putting the pide's in a periodic...
Replies
18
Views
10,862
Greetings ... someone sent me a request for some student handsouts that I developed ... turns out that I had this hosted on my business website...
Replies
0
Views
132
Have a logix controller and I'm using the PIDE block for the autotuner. I've got the hang of doing it for direct control things like pressure...
Replies
21
Views
1,769
Studio 5000 version 34. Have error on PIDE CVFaulted (Status1.2), Control variable (CV) health bad. No more information online or in...
Replies
3
Views
969
Hi everyone, I am trying to add a control loop to my HMI interface however I keep getting the following issue, any idea why this would happen?
Replies
8
Views
1,615
Back
Top Bottom