compact logix PID issues

csamuelsen

Member
Join Date
Oct 2021
Location
Richmond, VA
Posts
4
Hello all!

First official post here... have been using the site for help but managed to find existing threads to help with all previous issues.

I recently completed an upgrade project and am having issues getting my PID working that controls the main motor.

A brief overall description is a wire spooling application. One motor to turn the reel, another that lays the wire nice and even. I have the line running off of a very crude ramp function but long term need the arbor motor running on a PID.

I have attached screenshots of the code relating to the PID and will appreciate any and all suggestions as this is my first time actually working with a compact logix.

The issue I am facing is that I see the setpoint changing(feet per minute) once I change the line to a run state. The issue I have here is that the output is never changing from 0. I have scaled the setpoint and process variable before inputting to the PID so that 0 is equal to -600 fpm, 8191 is equal to 0 fpm, and 16383 is equal to +600 fpm. I haven't done any tuning yet so I just entered my default non zero values for kp and ki.

Please throw out any suggestions you may have so I can give it a go.

Cheers
Chris

pid block 1.PNG pid block 2.PNG pid block 3.PNG pid block 4.PNG
 
If the PV (Actual_FPM_PID_Scaled = 8191.5) is above the SP (0.0), then does the output CV of the PID need increase or decrease to drive the error towards zero? I.e. if the CV increases, will that increase in CV cause the PV to decrease or to increase?
 
Also, if the normal range of PID PV values is 0.0 to 16383.0, then why are the PID PV input scaling values set to 0.0 to 4095.0?
 
If the PV (Actual_FPM_PID_Scaled = 8191.5) is above the SP (0.0), then does the output CV of the PID need increase or decrease to drive the error towards zero? I.e. if the CV increases, will that increase in CV cause the PV to decrease or to increase?


A SP of 0.0 is equivalent to -600 fpm, so the CV would need to decrease. If the CV increasees, the PV will increase. (increase in speed = increase in FPM).

Side note: the screenshots were taken in an offline state so values associated with tag names may not be correct.
 
The PID output CV will have a min-to-max range of 0.0 to 100.0, clamped to those limits by the PID (see PID Settings dialog menu, Configuration and Scaling tabs).

CV values in that range will be written to tag tu1_speed_pct_2. No CV values will be written outside that range.

The value of tu1_speed_pct_2 is an input to the SCP instruction, where it is linearly scaled from an input range of 0 to 16383 to an output range of -16383 to +16383, and that scaled output is written to the value of tag TU1_FINAL_OUTPUT_TO_DRIVE.

When tu1_speed_pct_2 is at its minimum possible value of 0.0, the value of TU1_FINAL_OUTPUT_TO_DRIVE will be -16383.

When tu1_speed_pct_2 is at its maximum 100.0, the value of TU1_FINAL_OUTPUT_TO_DRIVE will be -15983.

So, the range of possible values for TU1_FINAL_OUTPUT_TO_DRIVE will be a minimum of -16383 and a maximum of -15983; is that what was intended?

This is duck debugging 1.0.
 
Last edited:

Similar Topics

Hello. I am trying to figure out how to setup a PID in Control Logix 1769 Controller in a way that it would control a drive speed by sending...
Replies
3
Views
1,613
Have a application I have been working on today using a compact logix to control temperature of molds. I am using a PID to get the Preset values...
Replies
1
Views
1,835
Have some machines that i used a micrologix 1400 plc and using thermocouple inputs and outputs to control solid state relays to maintain the...
Replies
2
Views
3,651
If anyone could help it would be appreicated....Thanks....
Replies
0
Views
2,749
My compact logix processor has 15 temp pid loops but looking in the program there is only one pid function block? How can this be? Can you run...
Replies
4
Views
4,115
Back
Top Bottom