Re: [foxboro] Check against entering ridiculous values

Adam;

How about this.

A Math block feeds values to HI and LO setpoint limits based on the 
current setpoint value.  So, the MATH block reads the setpoint value
each scan and multiplies it against a limit (say 10 % in this example)

Next it sets RO01 to be the current setpoint minus that value, and
RO02 to be current setpoint plus that value.  Theoreticaly, the 
following code does just that (no, I haven't run it.)

Now to allow for conditions when the setpoint must be changed by
larger amounts, we have an override.  Set the value of RO03 to
a time, a number of scans of the MATH block, and for that time
duration, the outputs are copied from inputs RI02 and RI03 which
might be set as the LO and HI measurement range.  If the MATH 
block runs an one scan per second, setting RO03 to 15 gives the
operator 15 seconds to make a big setpoint change.

RO03 can be set because STEP14 does the RELease instruction each
scan, allowing the RO03 parameter to be writable.

Using a MTH block instead of a CALC or CALCA uses 1/4 of the space
in CP memory, and it is shorter and easier to see whats going on
in the block.

The special overlay would only need a pick to set the RO03 value.  
All the logic stays in CIO data base and is not hidden away in the 
display system somewhere; a plus for the maintenance guys.

I didn't run this code so maybe it has a bug (what, in 14 lines ??)
But it should get the idea across.

So, the example code:

RI01 = :PID.SPT

RI02 = the low setpoint limit in the override state
RI03 = the high setpoint limit in the override state

M01  = 0.10

STEP01  MUL RI01 M01 ; CALCULATE 10 % OF SETPOINT
STEP02  STM M02

STEP03  SUB RI01 M02
STEP04  OUT RO01     ; CONNECT TO SPLLIM

STEP05  ADD RI01 M02
STEP06  OUT RO02     ; CONNECT TO SPHLIM


STEP07  IN  RO03     ; OPERATOR OVERRIDE
STEP08  BEQ 14       ; BRANCH IF NO OVERRIDE  (maybe this should be BIN)
STEP09  DEC RO03     ; ELSE COUNT DOWN OVERRIDE TIME

STEP10  IN  RI02     ; COPY LO SETPOINT LIMIT VALUE
STEP11  OUT RO01     ; TO PID.SPLLIM

STEP12  IN  RI03     ; AND COPY SETPOINT HI LIMIT
STEP13  OUT RO02     ; TO PID.SPHLIM

STEP14  REL RO03     ; ALLOW OPS INPUT TO OVERRIDE


Good luck,

William C Ricker
FeedForward, Inc.
 


 
 
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
 
foxboro mailing list:             http://www.freelists.org/list/foxboro
to subscribe:         mailto:foxboro-request@xxxxxxxxxxxxx?subject=join
to unsubscribe:      mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave
 

Other related posts: