A "pure" PID calculation (CmdCorrection(e)=P(e)+I(e)+D(e)) outputs a
pure "correction" value. Because of the integral term, the output
command will recursively converge to any value that makes the error sink
to 0, so it is not stupid to wire it as an absolute command value, with
no (ie. null) offset. In some case (!), it will converge.
But because of the recursive nature of that calculation, you have an
initialization problem. To function properly, your regulation needs to
start in a reasonable initial system state, including an appropriate
initial command value, which should cause a reasonable initial error. So
the total command calculation rather looks like:
Cmd=InitialCmd+CmdCorrection(e)
Do I get the point ?
(cea... Grenoble ?) - oz
Fab
rice François a écrit:
>Hello
>
>I'm using the PID VI (PID compatibility in Labview V6.i) in order to control
>an experimental loop (try to control the gas flow rate in my experiment).
>In all exemples that I could find in the LABVIEW help, it seems that the
>output signal (in %) is an ''absolute'' signal, so that this value shouls
>directly be sent to my valve which is controlling the gas flow rate.
>Unfortunately, If I suppose that it is really the case (absolute signal), it
>doesn't work.
>On the contrary, If I consider that the output coming from the PID is a
>relative corrective signal, it seems to better function.
>does anyone know why ?
>Sincerely yours
>Fabrice
>