PLC Pie Guy
Member
Hey All.
I'm using a 1769-HSC on a version 21 controller.
My goal is to use the active range outputs to control line peripherals.
It works great. Great until I want to change the limit values. I can move a new value for example into the tag "Local:X:C.RangeActive0To11[0].LowLimit". The card configuration will even show that the value is there, but the active range doesn't respond to the change until a power cycle or a download.
So I asked Rockwell.
Long answer short, the values of ranges 0 to 11 cannot be changed on the fly. Values 12 to 15 CAN be changed with a Load Direct Write instruction.
As well as they gave me a technote that says I must inhibit the module and...
"To programmatically inhibit a module, an SSV instruction must be used"
Technote 52041.
They say to inhibit the module, then uninhibit the module. My question is.....
Is this how you folks do it to make constructive use of the active ranges??? I mean, to inhibit the module while a machine is running seems risky, won't I miss counts while the module is inhibited??
How would you best make use of the Actual position to fire peripherals at a given position. Simply using an EQU or GEQ OR a LIM instruction just seems so unpercision to me when I have the active ranges available.
Advice or criticism is welcome.
Thanks a bunch!
P.S. It snowed here yesterday on October 18, CRAZY!
I'm using a 1769-HSC on a version 21 controller.
My goal is to use the active range outputs to control line peripherals.
It works great. Great until I want to change the limit values. I can move a new value for example into the tag "Local:X:C.RangeActive0To11[0].LowLimit". The card configuration will even show that the value is there, but the active range doesn't respond to the change until a power cycle or a download.
So I asked Rockwell.
Long answer short, the values of ranges 0 to 11 cannot be changed on the fly. Values 12 to 15 CAN be changed with a Load Direct Write instruction.
As well as they gave me a technote that says I must inhibit the module and...
"To programmatically inhibit a module, an SSV instruction must be used"
Technote 52041.
They say to inhibit the module, then uninhibit the module. My question is.....
Is this how you folks do it to make constructive use of the active ranges??? I mean, to inhibit the module while a machine is running seems risky, won't I miss counts while the module is inhibited??
How would you best make use of the Actual position to fire peripherals at a given position. Simply using an EQU or GEQ OR a LIM instruction just seems so unpercision to me when I have the active ranges available.
Advice or criticism is welcome.
Thanks a bunch!
P.S. It snowed here yesterday on October 18, CRAZY!