RS5000 PID instruction help?

Okay,

I got this thing working in the shop. (stand alone controls, not total system)



The following was my version applicable to a compact logix 1769-L31 PLC with 1769 modules using RSLogix 5000 (v15). If RS5000 is used for Control Logix PLCs and modules or the 1769 modules are used with MicroLogix and RSLogix 500, things WILL be different.



As noted by tomalbright, there are substantial differences between compact logix ( micro logix ) and control logix modules. The 1769 analog out modules don’t have the jiffy configuration tool ( or as many options when configured via “data monitor” ) and as such I couldn’t configure the output as 0-100 = 4-20Ma



Perhaps, this wasn’t the best way (I didn’t want to re-scale some things used for other purposes) but here is how I set up PID_TEMP.



Process Variable: (in this case the average of 2 thermocouples) The thermocouple channels are configured for PID data format, type j, deg f.

Control Variable: directly to analog out channel, Local:7:O.Ch1Data. This channel configured for, range = 1- 4-20Ma, dataFormat = 2 , PID.

SetPoint: DRY_TEMP_SET_HMI, read straight from the HMI and moved into PID_TEMP.SP. Entered and read as Deg f. No conversions or such.



PID Setup Dialogs: ( This version of the program was captured/saved while active, thus some values are shown that normally are blank but are being displayed here as the PID ramps up)

Tuning Tab: Pgain, .02, (As noted by others, my initial values were way to large and based on my previous Omron CX1 project)

Reset Time: .05.

Derivative Rate: 0. ( As always these will be field tuned on start-up)

Config Tab: Dependant ( I must have mouse wheeled it to independent in the first set up, Side note: most mouse wheel function are disabled in RS5000 but not this)

SP-PV

Derivative of = PV (default, not using here)

Loop update .25 sec ( maybe much faster than needed )

CV High 100

CV low 0

Deadband 0

Alarms: not using atm

Scaling:

PV: unscaled max = 16383

Unscaled min = 0 ( this is set to match the DataFormat of the analog IN card )

Eng Units max = 2193

Eng Units min = -346 ( eng unit range of my type j thermo couples in Deg f. )

CV: unscaled max = 16383

Unscaled min = 0 ( this is set to match the DataFormat of the analog OUT card )

Tieback: max; 100, min 0 ( I didn’t enable tieback but these values appear when “online” and I couldn’t change them to play with )



As recommended, I now clock the PID instruction all the time (maybe to fast for a temp loop ) and also set/unset PID_TEMP.SWM ( PID software manual mode ) as required with pre-conditions. ( I had some no longer present test bits for that.)



I treat the Vacuum level PID different in that I don’t enable it until the vac pump hits setpoint level and then introduce an “air bleed” which I will try to regulate vacuum with.

And the Condenser cooling flow loop is also different, it only regulates flow to 20 GPM.

( This loop is stupid, it has no user set ability and always maintains 20 GPM flow. It should have just used a manual flow control valve but I could not convince the process engineer of this. It is just an unnecessary expensive complication. IMHO there are quite a few things not needed and some missing from this mechanical design but I’m sure we all feel that way at times. )



I had warned my boss that I was stuck on the last programming item (PID setup) and and the cost of getting “free” help would be posting the program publicly and sharing the results. So here it is. (disclamer… this works in the shop as a stand alone control panel but won’t be field started for a month or 2 )



Thanks for the help!!!
 
What the heck,

Here's the HMI file, RSView 4.0 for a 10" panelview plus touch screen.
It includes some examples of setpoint entry, alarm messages and poor mans data logging to memory card.
 
Max Tieback

Can any one tell why the max Tieback is 4095? and can I use another range for the Tieback? Tank you all
 
Okay,

I got this thing working in the shop. (stand alone controls, not total system)



The following was my version applicable to a compact logix 1769-L31 PLC with 1769 modules using RSLogix 5000 (v15). If RS5000 is used for Control Logix PLCs and modules or the 1769 modules are used with MicroLogix and RSLogix 500, things WILL be different.



As noted by tomalbright, there are substantial differences between compact logix ( micro logix ) and control logix modules. The 1769 analog out modules don’t have the jiffy configuration tool ( or as many options when configured via “data monitor” ) and as such I couldn’t configure the output as 0-100 = 4-20Ma



Perhaps, this wasn’t the best way (I didn’t want to re-scale some things used for other purposes) but here is how I set up PID_TEMP.



Process Variable: (in this case the average of 2 thermocouples) The thermocouple channels are configured for PID data format, type j, deg f.

Control Variable: directly to analog out channel, Local:7:O.Ch1Data. This channel configured for, range = 1- 4-20Ma, dataFormat = 2 , PID.

SetPoint: DRY_TEMP_SET_HMI, read straight from the HMI and moved into PID_TEMP.SP. Entered and read as Deg f. No conversions or such.



PID Setup Dialogs: ( This version of the program was captured/saved while active, thus some values are shown that normally are blank but are being displayed here as the PID ramps up)

Tuning Tab: Pgain, .02, (As noted by others, my initial values were way to large and based on my previous Omron CX1 project)

Reset Time: .05.

Derivative Rate: 0. ( As always these will be field tuned on start-up)

Config Tab: Dependant ( I must have mouse wheeled it to independent in the first set up, Side note: most mouse wheel function are disabled in RS5000 but not this)

SP-PV

Derivative of = PV (default, not using here)

Loop update .25 sec ( maybe much faster than needed )

CV High 100

CV low 0

Deadband 0

Alarms: not using atm

Scaling:

PV: unscaled max = 16383

Unscaled min = 0 ( this is set to match the DataFormat of the analog IN card )

Eng Units max = 2193

Eng Units min = -346 ( eng unit range of my type j thermo couples in Deg f. )

CV: unscaled max = 16383

Unscaled min = 0 ( this is set to match the DataFormat of the analog OUT card )

Tieback: max; 100, min 0 ( I didn’t enable tieback but these values appear when “online” and I couldn’t change them to play with )



As recommended, I now clock the PID instruction all the time (maybe to fast for a temp loop ) and also set/unset PID_TEMP.SWM ( PID software manual mode ) as required with pre-conditions. ( I had some no longer present test bits for that.)



I treat the Vacuum level PID different in that I don’t enable it until the vac pump hits setpoint level and then introduce an “air bleed” which I will try to regulate vacuum with.

And the Condenser cooling flow loop is also different, it only regulates flow to 20 GPM.

( This loop is stupid, it has no user set ability and always maintains 20 GPM flow. It should have just used a manual flow control valve but I could not convince the process engineer of this. It is just an unnecessary expensive complication. IMHO there are quite a few things not needed and some missing from this mechanical design but I’m sure we all feel that way at times. )



I had warned my boss that I was stuck on the last programming item (PID setup) and and the cost of getting “free” help would be posting the program publicly and sharing the results. So here it is. (disclamer… this works in the shop as a stand alone control panel but won’t be field started for a month or 2 )



Thanks for the help!!!

Bumping an old thread instead of starting a new one.

What is the UNSCALED Mnemonic of the Control variable (CV) and the Scaled Mnemonic for the CV.

I M LOOKING FOR A 0-16383 Value representing the 0-100% output AND I AM MISSING IT.
 

Similar Topics

Hello All, Let me first start out by saying this is a great forum. I've found a lot of useful information on this forum and am glad to have...
Replies
27
Views
21,044
I'm trying to control a slow process where we only get an updated PV every 5-10 minutes. Right now we do a pseudo-automatic control that works...
Replies
7
Views
3,343
Hi Guys I have a cooler using evaps to set up PID to control the humidity. I put ugly step logic in it but although it works (+/- 4% humidity...
Replies
0
Views
1,076
Hello all, I am new to 5000 and am trying to set up a PID block. I need to control fan speed VFD using a temp indication. I have the temp coming...
Replies
11
Views
2,035
Good Morning, This may be an easy question for some...but I'll need a little guidance. I have a project where under a particular condition I...
Replies
2
Views
1,612
Back
Top Bottom