LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

What is the relay amplitude parameter for the PID Autotuning addon VI?

I don't understand this parameter.  I've tried to find a more descriptive help on it, but my searching skills are failing me.  Can someone explain this parameter to me?  I'm trying to auto tune  heater control system where the feedback temperature to the controller is a fluid temperature, so there is a lot of seperation between the heating source and the control feedback transducer.  There is also a lot of mass and I'm not happy with the amount of oscillation that I am getting around my setpoints.
0 Kudos
Message 1 of 20
(8,078 Views)
Hi,
 
I will talk to R&D about this input and get back to you.
 
Thank You,
Jaidev
Senior Product Manager
National Instruments
0 Kudos
Message 2 of 20
(8,053 Views)
Hi,
 
So the PID Autotuning VI uses the Ziegler-Nichols method to auto tune the system. This is explained in the PID user manual on page 2-7 (page 20 of the pdf file). This manual can be found here: C:\Program Files\National Instruments\LabVIEW 8.5\manuals\PID_User_Manual.pdf
 
Here's a quick explaination of the auto-tuning algorithm:
A relay is connected at the input of the system and using an extra feedback loop the input to the system is varied between setpoint + relay amplitude and setpoint - relay amplitude. Thus the system is excited with a square wave of particular amplitude and period. The response of the system is studied to tweak the PID parameters.
 
You can read more about these concepts here:
 
Hope this answers your question.
 
Jaidev
 
Senior Product Manager
National Instruments
0 Kudos
Message 3 of 20
(8,023 Views)

hi,

    i read your explanation about relay amplitude . But still the explanation doesnt give a clear idea about the relay amplitude .Is relay amplitude the amplitude of the control signal applying to relay or is that the amplitude of the o/p of the relay(which is equal to i/p of plant) ?

--varun

0 Kudos
Message 4 of 20
(7,598 Views)

Hey Varun,

 

As mentioned in Jaidev's post, in the autotuning vi, the system is excited with a square wave of particular amplitude and period and using the output of this excitation to determine the PID gains. This relay amplitude is the amplitude for this excitation signal.

Hope this helps.
-Ben

WaterlooLabs
0 Kudos
Message 5 of 20
(7,573 Views)

dear Ben,

       The system will automatically get excited from the set point . That is why we are going for pid controller (that is what i think) Then why we have to excite the system using the square wave ?

0 Kudos
Message 6 of 20
(7,562 Views)

Hi -

 

The relay amplitude gives a ± to your set point during the autotune process.  The control variable must be in steady oscillation about the set point(s) in order for the auto operation to succeed.  There is a parameters "number of cycles to average" that is based on the number of times the control variable crosses the set point.  Once this has occured a sufficient number of times, the autotuning has enough data to calculate PID parameters for you.  If you have poor starter PID parameters such that (for example) it takes a long time for the control variable to cross the set point, then your autotune process is going to take a long time.  Kicking up the relay some seems to make the autotuning go faster and work better.  Additionally, setting the relay too high may give you less-ideal PID parameters for the setpoint you are trying to maintain.

Message Edited by Nickerbocker on 08-28-2009 09:25 AM
0 Kudos
Message 7 of 20
(7,555 Views)

hi,

   when i use relay method for autotuning , the oscillations obtained are asymmetric . So , how will i make it symmetric so that i can proceed calculating Ku and Tu?

 

hopefully

--varun

0 Kudos
Message 8 of 20
(7,488 Views)

Hey Varun,

 

I am not exactly sure why you may be getting an asymmetric oscillations. Perhaps a screen shot or a diagram of the oscillations you are getting would be helpful. Also, check out this PID Autotuning VI and Limitations knowledgebase or this A Simple Method for Servo Motor Tuning knowledgebase. You could also use the Ziegler–Nichols method to manually find your PID gains.

Hope this helps.
-Ben

WaterlooLabs
0 Kudos
Message 9 of 20
(7,472 Views)

Dear all,

              Thanks for you people's reply . I really appreciate your helping mentality .

when we go for relay auto tuning using PID controller,we have to Substitute a relay with amplitude d  and from the desribing function we get the eqn Ku =4d/pa  .

my doubt here how will i obtain d (ie.,relay amplitude)?

In order to analyse this , I first implented simple ON OFF(relay) temperature controller .From that I observed the oscillations getting are asymmetric .In order to get symmetric oscillations, i know that we have to select a suitable value for d ? Is there any theoretical method to find d? I really got stuck in this part . Considering the fact that i want to design completely automatic system , i  want my miccrocontroller to find d rather than manually . So it would be very helpful if you give me a solution for this and I will be always indebted to you.

hopefully,

--varun

0 Kudos
Message 10 of 20
(7,446 Views)