Jump to content
sachinda

PID function not working properly.

Recommended Posts

Hi, 

In my program PID auto tune is not functioning. Overshoot came across when I tried it. After that I entered values manually in the PID loop.In that also little bit of overshoot could  observed. May I get some help from to solve the PID issue.

Share this post


Link to post
Share on other sites
7 hours ago, sachinda said:

In that also little bit of overshoot could  observed.

Are you looking for a perfect loop with zero tolerance for overshoot?  If so, your loop will be quite slow.

Let us know what is acceptable to you and what your current PID parameters are.

Joe T.

Share this post


Link to post
Share on other sites

Hi,

I would like to obtain 0.5 degrees for the temperature difference from the Setpoint. 

For eg. For 110  Setpoint I got 113 for overshoot as above Setpoint. and for below Setpoint I got 109.5. (below undershoot is acceptable)

My PID values are Kp=1, Ki= 65000, kd =10500.

I reduced the Ki and Kp values also but could not achieve. 

I used for PID  kp=5; ki=600, kd =150 also but unable to achieve.

Could you help me to solve this issue. 

Share this post


Link to post
Share on other sites
On 2/14/2019 at 11:31 AM, Gabriel Franco said:

I suggest you to manually tune your PID system using any of well known methods, e.g. Ziegler-Nichols

This is a good suggestion.  I recommend you read up on how PID works and how each parameter affects the loop.  Nobody takes time to learn anymore!

Read the Help topic "PID Config Struct Parameters".

So are you reading temperature in whole units or decimals?  You mention SP = 110, but you say you get 109.5.    Please be more specific.  Is your setpoint 110.0?

I'm going to assume you are working with 0.1 degree resolution.

Your loop is too tight for minimizing overshoot.

Set Kd (Td) derivitive time = 0.  You don't need it unless you anticipate upsetting the system, like opening the door on an oven or dumping cold product in.

The units on Kp are 0.1% of PV, which defines when the algorithm becomes active.  So initially with Kp = 1, and SP 110.0 you are activating the PID at 109.9 degrees.  With Kp = 5, it starts working at 109.5 degrees.

On 2/12/2019 at 7:38 PM, sachinda said:

and for below Setpoint I got 109.5.

Sound familiar?

Manual loop tuning 101:

Start with Kp = 100 (10.0%) and Ki = 0.  Then start lowering Kp until the process starts to just ring around the setpoint.  If it overshoots wildly you need a bigger Kp.  

Measure the time between peaks.  This is the natural cycle of your process.

Then take your Kp value and double it.

The units on Ki are seconds.  Enter the time between peaks value.

Let us know how it goes.

Joe T.

 

  • Like 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...