PID help

Mr. Ro Bot

Lifetime Supporting Member
Join Date
Oct 2019
Location
at home
Posts
23
hey guys - I'm a novice PLC enthusiast, so this may be a simple one. I'm running a PID on a Micrologix 1200 PLC and I want to change the Gain for the PID without having to connect to the PLC and open the Setup screen.

Is there a way to simply use a MOV instruction to accomplish this?

I'd like to use an HMI button to activate different MOV instructions to change the PIDs gain. Any help would be great!
 
Last edited:
Mr. Ro Bot,
I think you could do MOV different values into the gain value for your PID, but you'd need to put that instruction in the logic of your plc and that would require connecting to the plc.

To MOV a new gain Value of 1.5 into your PID:

MOV 15 to PDx:x.KC

Good Luck
Byron
 
Hello and welcome...

In short yes, in the screen shot below, your HMI would write to N7.1 a value and then do a MOV from N7.1 to PD9.0.KC, my PID is in PD9

piddd.png
 
If you use the method above I would check the value from the HMI for limits before moving it to the PID . Use a "LIM" (limit instruction) before the "MOV" instruction.
 
You may be able to directly address PD9:0.KC from the HMI. Can limit the entry at the HMI input and/or also limit it one rung before the PID instruction.
 
mixed messages...

First let me say THANKS! for the help.

When I try the MOV it doesn't transfer correctly. It gives a scrambled number.

Examples: MOV
Source
N7:1
1111

Dest.
PD9:0.KC
-8192

or
Source
N7:1
333

Dest.
PD9.0.KC
-32768

the values seem to be all over the place.
 
Should be able to enter data to an N7:x or F8:x from the hmi, Then just an always open move instruction to PD9:0.KC, or set your limits as conditions of the move with compairitive instructions greater than and less than.
 
fun with numbers...

I did note a pattern in the numbers that I put in N7 when they are moved.

It's almost like the numbers are scaled, but the higher you go the lower the change.

N7:0 PD9:0.kc
257 -32768
258 0
259 -32768
260 0
261 -32768

1344 0
1345 8192
1346 16384
1347 24576
1348 -32768
1349 -24576
1350 -16384
1351 -8192
1352 0

32000 0
32001 512
32002 1024
32003 1536
32004 2048
32005 2560
32006 3072
32007 3584
32008 4096


So technically, the MOV is working, it's just changing it when it's moved. I also noticed it seems to affect Ti moving and filling that field with another number that changes as you change the N7. However, it's much lower incrementally, and only seems to change on the numbers, not the zeros. Almost like it's counting every full cycle of the KC numbers, as the rate of change on the .TI slows the higher the N7 goes. It appears to only change the TI number 0.1 every full cycle back to zero on the .kc

For example:
N7:0 PD9:0.TI
257 1728.0
258 1728.1
259 1728.1
260 1728.2
261 1728.2
 

Similar Topics

Hello all, I have an issue with a PID block in RsLogix 5000. The parameters are P: 3.25 I: 0.11 D: 0.01 The Set Point is 71 psi This loop...
Replies
63
Views
14,815
I need a little help with a project I have been thinking about. We have a belt line that is fed by a gravity door (pretty much a hydraulic...
Replies
14
Views
2,737
Hi all, I have a request from client as follows, There's one PID for Control valve which would be controlling on basis of temperature. One...
Replies
1
Views
1,520
Hi, I am trying to automatically regulate a process ( liquid ) in a tube using an ultrasonic sensor, differential level meter, control valve...
Replies
3
Views
3,146
Peter, I have been following all of your posts since 2009. We (PLCS.NET forum), are all amazed at your acquired empirical knowledge to identify a...
Replies
8
Views
2,460
Back
Top Bottom