OVATION算法模块介绍课件.ppt
0,Combinatorial logic: AND, OR, NOT, XOR, ASSIGN(组合逻辑) AVALGEN, DVALGEN, KEYBOARD Basic Sequential logic: FLIPFLOP, AAFLIPFLOP (基本顺序逻辑) including alternate implentations Complex Sequential logic: DIGDRUM, ANALOGDRUM, (综合顺序逻辑) STEPTIME, MASTERSEQ, DEVICESEQTimer/Counter functions: ONDELAY, OFFDELAY, ONESHOT(时间/记数功能) COUNTER, PULSECNT, DIGCOUNT, RESETSUMSystem time functions: SYSTEMTIME, TIMECHANGE, (系统时间功能) TIMEDETECT, TIMEMON,常用算法,0Combinatorial logic: AND, OR,1,Monitor functions: HIGHMON, LOWMON, HIGHLOWMON, (监视功能) RATEMON, RATECHANGE, QUALITYMON, COMPARE, DBEQUALSFiltering: RUNAVERAGE, SMOOTH, LEADLAG, TRANSPORT, (滤波)PREDICTORTransmitter processing: 2XSELECT, MEDIANSEL, GASFLOW, (转送处理)LEVELCOMP, STEAMTABLE, STEAMFLOW, QAVERAGE, FUNCTION, MULTIPLY, DIVIDE, BILLFLOWCore modulating control: PID, PIDFF, MASTATION, MAMODE, (控制算法)SETPOINT, TRANSFER, HISELECT, LOSELECT,1Monitor functions: HIGHMON, L,2,Hardware interface: FIELD, ATREND, X3STEP, ANALOGDEVICE(硬件接口)Pulse Acuumulator module interface: RPACNT, RPAWIDTH(脉冲记数) Point format conversion: BCDNIN, BCDNOUT, PACK16, (点格式转换) UNPACK16, SATOSP, SPTOSA, TRANSLATOR,Math functions : GAINBIAS,(计算) INTERP, POLYNOMIAL, SQUAREROOT, SUMCustom calculations: CALCBLOCK, CALCBLOCKD(自定义计算),2Hardware interface: FIELD, AT,3,Combinatorial logic 组合逻辑,3Combinatorial logic 组合逻辑FLIPF,4,AAFLIPFLOP - 带复位的交替动作触发器,仿真一个记忆设备的输出状态,当SRST为“1”时,新的SRST改变。输出仍旧保持原来状态。INIT - 初始状态,真值表:,4AAFLIPFLOP - 带复位的交替动作触发器仿真一个,5,Basic Sequential logic 基本顺序逻辑,AND, OR, NOT, XOR, ASSIGN, AVALGEN, DVALGEN, KEYBOARD,5Basic Sequential logic 基本顺序逻辑,6,NOT - 非门,XOR - 异或门,ASSIGN - 传递点信息,相同为0,不同为1,6NOT - 非门XOR - 异或门ASSIGN -,7,AVALGEN - 模拟量发生器,OUT = VALUVALU:是一个整定常数(Tuning Constant) 可(+ 或 -),DVALGEN - 数字量发生器,OUT = VALUVALU:当0.0时,OUT = FALSE 当为非0数值时,OUT = TURE,7AVALGEN - 模拟量发生器OUT = VALUDV,8,KEYBOARD - 键盘接口,与键盘的接口算法当键盘上对应键按下,则相应的输出输出一个 “1”脉冲。* 此算法应用于回路设定值、输出值、手/自动切换。,8KEYBOARD - 键盘接口与键盘的接口算法,9,Complex Sequential logic 综合顺序逻辑,MASTERSEQ, DEVICESEQ, DIGDRUM, ANALOGDRUM, STEPTIME,MASTERSEQ - 主设备顺序控制器算法 DEVICESEQ - 顺控设备算法,设备#1(设备可以是一些复杂的逻辑运算),设备#2,.,反馈信号,9Complex Sequential logic 综合顺,10,参数:MASTERSEQENBL - 允许条件,当为TRUE时,顺序可以执行。PRCD - 为TRUE时,顺序开始执行。OVRD - 为TRUE时,跳过此步。RSET - 为TRUE时,复位。STEP记数回到0。TMOD - 工作方式:Normal(正常),Priority(优先级)TKIN - 有效步数。FAIL - 某执行步故障,输出= 1HOLD - 保持在某步时,输出= 1 DONE - 全部顺序结束,输出=1,且STEP置1。STEP - 当前的步号,输出端由DEVICESEQ算法控制,10参数:MASTERSEQ输出端由DEVICESEQ算法控,11,Normal方式:,STEP=0,清除STEP状态字中的bit,STEP=step+1,Step 是否有效?,Step 最大步?,将DONE输出置1,N,Y,Y,N,N,N,N,N,N,N,Y,N,DV设备输出置1,OVRD = 1?,设备故障?,Y,设备启动成功?,设备正在运行?,Y,设备准备运行?,Y,PROCEED = 1 ?,Y,设备运行,HOLD = 0,FAIL = 1,HOLD = 1,执行下一个逻辑,11Normal方式:STEP=0清除STEP状态字中的bi,12,Priority方式:,STEP=0,TMOD = 1 ?,TKIN = xx ?,Y,STEP = TKIN,设备是否故障?,设备是否启动成功?,设备是否正在运行?,N,N,Y,N,N,设备是否准备运行?,N,Proceed = 1?,设备运行,HOLD = 0,Y,停止设备运行,DV设备输出置1,DVxx = 0设备停,Y,FAIL = 1,Y,Y,Y,HOLD = 1,HOLD = 1,N,N,12Priority方式:STEP=0TMOD = 1 ?T,13,DIGDRUM - 50步开关量顺序控制器,功能:1 顺序控制32个输出状态,最多50步。当到最大步数时,回到Step1。 每一步中用16进制数控制最多32个设备状态。2 步进方式由INC(增加)或DEC(减少)参数为TRUE决定3 当TMOD = 1时,则执行哪一步由TRIN数决定,50个32位整数寄存器(16进制数):,参数:NMIN:最多步数TYPE:Long: 1 50步 Short:1 100步,Step1执行低16位的输出 Step2执行高16位的输出(因而,最多控制16个输出),13DIGDRUM - 50步开关量顺序控制器功能:50个,14,ANALOGDRUM - 模拟量顺序控制器,功能:1 输出OUT的值,由每一步寄存器的值决定, 最多30步,当到最大步数时,回到Step1。2 步进方式由INC(增加)或DEC(减少)参数为TRUE决定3 当TMOD = 1时,则执行哪一步由TRIN数决定,参数:NMIN:最多步数R01:第一步的输出寄存器OUT2:第二个被选中的当前步寄存器值,14ANALOGDRUM - 模拟量顺序控制器功能:参数:,15,STEPTIME - 自动步进定时器,功能:STEP 自动步进,每一步的时间由参数设置。 当 TMOD = 1, STEP = TRIN 决定,当 TMOD = 0,HOLD =1 则STEP保持当前步,当STEP步全部结束,则STEP回到 1。* 控制回路的时间必须是:100,200,500,1000ms,每步时间寄存器:,参数:RHRS:显示当前步设置的以小时为单位的时间RMIN:显示当前步设置的以分钟为单位的时间RSEC:显示当前步设置的以秒为单位的时间EHRS:显示当前步已走过的以小时为单位的时间EMIN:显示当前步已走过的以分钟为单位的时间ESEC:显示当前步已走过的以秒为单位的时间,15STEPTIME - 自动步进定时器功能:每步时间寄存,16,Timer/Counter functions 时间/记数功能,ONDELAY, OFFDELAY, ONESHOT, COUNTER, PULSECNT, DIGCOUNT, RESETSUM,ONDELAY - 前延时,16Timer/Counter functions 时间/,17,OFFDELAY - 后延时,17OFFDELAY - 后延时,18,ONESHOT - 脉冲发生器,18ONESHOT - 脉冲发生器,19,COUNTER - 记数器,功能: 当 ENBL = 1时:IN1= 1每次扫描,记数器增加/减少 1。 当ACT 增加到TARG值时,OUT = 1, 当ACT 从TARG值开始减少时,减到ACT=0时,OUT =1。,19COUNTER - 记数器功能:,20,PULSECNT - 脉冲记数,功能: 当 IN1 有一个 上升沿(从 0 到 1 ),OUT记一个数。,20PULSECNT - 脉冲记数功能:,21,DIGCOUNT - 带标志的数字输入记数器,功能: 当 有多于 MTRU的输入为 1 ,或大于 NMIN 个输入为 1 时, FLAG = 1。 OUT = 当前输入为 1 的个数。参数: MTRU:最多输入为 1 的个数。 NMIN:输入的总数。,21DIGCOUNT - 带标志的数字输入记数器功能:,22,RESETSUM - 带复位的加法器,功能:,参数:R3 = TRST:整定复位参数(Tuning Reset count)R1 = RCNT:复位参数 ( Reset count) TEMP:计算值,22RESETSUM - 带复位的加法器功能:参数:,23,System time functions 系统时间功能: SYSTEMTIME,SYSTEMTIME - 系统时间读取,功能:RUN = 1 :记录当前控制器的时间,时间以 UTC 形式显示(UTC Universal Time Coordinates)SEC:秒MIN:分HOUR:小时DAYM:天MNTH:月YEAR:年,23System time functions 系统时间功,24,ALARMMON - 报警状态监视算法,最多16个模拟量或开关量,OUT = TRUE 的条件: 输入中有任何一个报警 点的1W字段中报警状态位或报警状态位为TRUE且未确认 报警位为FALSE.,参数:ALRM: 报警检查类型 X1= 0 当新报警出现,FOUT = TRUE X1 = 1 当有多个报警、未被确认的报警,FOUT = TRUE X1 = 2 当任何一个报警时,OUT=1, 当又有新报警出现,则FOUT = 1 X1 = 3 当任何一个报警时,OUT=1 只要有报警位为1,及有未被确认的报警,则FOUT=1,Monitor functions 监视功能 HIGHMON, LOWMON, HIGHLOWMONALARMMON, RATEMON, RATELIM, QUALITYMON, COMPARE, DBEQUALS,24 ALARMMON - 报警状态监视算法 最多16个,25,HIGHMON - 高值监视,功能:,若IN1为无效数值,则OUT保持上一次数值,且点质量为BAD。,25HIGHMON - 高值监视功能:若IN1为无效数值,,26,LOWMON - 低值监视,功能:,若IN1为无效数值,则OUT保持上一次数值,且点质量为BAD。,26LOWMON - 低值监视功能:若IN1为无效数值,则,27,HIGHLOWMON - 高低值监视,功能:,27HIGHLOWMON - 高低值监视功能:,28,RATEMON - 变化率监视,功能:,参数:RATE变化率 OLDIN上一个采样值TS采样时间(控制器任务区速度),28RATEMON - 变化率监视功能:参数:,29,RATELIM - 变化率限制,功能:,参数:TEMP变化率 OLDOUT上一个采样输出值TS采样时间(控制器任务区速度)RALM每秒单位的变化率限制值,29RATELIM - 变化率限制功能:参数:,30,QUALITYMON - 质量监视,功能:当IN1质量为参数CHK中设置的质量、或IN1的值不被刷新,则 OUT = TRUE。( CHK: 质量检验类型: BAD, FAIR, NOT GOOD, GOOD可选 ),30QUALITYMON - 质量监视功能:,31,COMPARE - 输入比较,功能:当ENBL = 1 ,比较: IN1 和 IN2结果: IN1 = IN2 OUT = 1 IN1 IN2OUTG = 1 IN1 IN2 OUTL = 1,31COMPARE - 输入比较功能:,32,DBEQUALS - 高低差监视,功能:,参数:RTRN死区反回值DBND死区值,32DBEQUALS - 高低差监视功能:参数:,33,Filtering - 滤波: RUNAVERAGE, SMOOTH, LEADLAG, TRANSPORT, PREDICTOR,RUNAVERAGE - 采样数的平均值,功能:OUT =,N个采样数的和,采样的个数,参数:TIME:时间数UNIT:时间单位(0=0.1S, 1 = 秒, 2 = 分, 3 = 小时, 4 = 天)NUM:采样数(0 8 ),33Filtering - 滤波: RUNAVERAGE,34,SMOOTH - 输入滤波,功能:OUT =(x IN1) + (x 上一个OUT) = 1 - E = E,(- 回路执行周期/SMTH ),(- 回路执行周期/SMTH ),SMTH:秒为单位的平滑数 当SMTH = 0 ,则 OUT = IN1,34SMOOTH - 输入滤波功能:(- 回路执行周期/,35,LEADLAG - 超前/滞后,功能:,OUT = (K1 x IN1) + (K2 x OLDIN1) + ( K3 x OLDOUT),K1 = GAIN x (H + 2 x LEAD)/(H + 2 x LAG)K2 = GAIN x (H - 2 x LEAD)/(H + 2 x LAG)K3 = (2 x LAG - H)/(2 x LAG + H)H = 采样周期(回路周期),35LEADLAG - 超前/滞后功能:OUT = (,36,TRANSPORT - 传输数值,功能:带有延迟时间的数据传输。延迟时间 = TSAM x NSAMTSAM :采样时间 (当 回路时间,TSAM = 回路时间)NSAM:采样延迟数(1 12),参数:INIT:初始采样值 0 或 1 = 当第一次加入控制器时,值为 0。 当电源重启、复位、故障解除时保持老的数据2 = 当电源重启、复位、故障解除时,值为IN1的当前值3 = 当电源重启、复位、故障解除时,值为OUT的当前值4 = 当电源重启、复位、故障解除时,值为0,36TRANSPORT - 传输数值功能:参数:,37,PREDICTOR - 带补偿的纯滞后,功能:,参数: r (s) :设定值 u (s):控制输出 y (s):过程值 t: 滞后时间(dead time),37PREDICTOR - 带补偿的纯滞后功能:参数:,38,例: PID 回路的例子。* 当dead time 8 时,由于 存储器的尺寸原因,需要 TRANSPORT算法来设定 时间。,38例:,39,Transmitter processing 转送处理: 2XSELECT, MEDIANSEL, GASFLOW, LEVELCOMP, STEAMTABLE, STEAMFLOW, QAVERAGE, FUNCTION, MULTIPLY, DIVIDE,2XSELECT - 二选一,功能:,OUT = (A+B)/2(平均值)P4 High(高选)P6 Low(低选)P5 A(选A)P1 B(选B)P2,参数:MODE: 当TMOD为“1”时,MODE数值(15)决定 OUT的功能。 当TMOD为“0”时,OUT的功能由操作员键盘控 制。同时,CNTL参数设为“7”。XDEV:两值差报警(ALDB设置)XABQ:A质量报警XBBQ:B质量报警XALM:A、B都有质量报警、数值无效、差值大于CNDB值。MRE: 报警同XALM,但此输出可由P3键屏蔽。PBPT:打包点,包括以上各状态信息。,39Transmitter processing 转送处理,40,CNTL参数:,40CNTL参数:,41,MEDIANSEL - 中值选择器,功能: 输出3个输入信号中的无质量、差值报警的中值。 监视输入信号的质量及差值。 算法另有两个模拟量输出:HI高报输出、LO低报输出。 当3个输入信号都质量报警,OUT为上一个好质量的值。 输出可以由操作员键盘控制: P1 :中选P2:选AP3:选BP4:选CP5:MRE,参数:XABQ:A质量报警ABDC: A 与B差CNDBXBBQ:B质量报警ABDA: A 与B差ALDBXCBQ:C质量报警ACDC: A 与C差CNDBHMTR:高报警监视值ACDA: A 与C差ALDBLMTR:低报警监视值BCDC: B 与C差CNDBBCDA: B 与C差ALDB其它参数同2XSELECT算法。当三输入中有一个质量有问题,则自动转为2XSELECT算法。,HI :高报警模拟量输出LO:低报警模拟量输出,41MEDIANSEL - 中值选择器功能:参数:HI :,42,GASFLOW - 气体流量的温压补偿,功能: 气体流量的温度压力补偿。 分两种情况:质量流量,体积流量。,质量流量,体积流量,参数:ABSTEMP、ABSPRES:温压转换表生成的常数。,42GASFLOW - 气体流量的温压补偿功能:质量流量体,43,43,44,LEVELCOMP - 液位补偿,应用方式:,汽包蒸汽的specific volume(体积比),汽包水specific volume,参考水specific volume,44LEVELCOMP - 液位补偿应用方式:汽包蒸汽的s,45,参数:VCAL: 流体标定常数,45参数:VCAL: 流体标定常数,46,STEAMTABLE - 计算水和蒸汽的热力学特性,11个计算功能及符号:,46STEAMTABLE - 计算水和蒸汽的热力学特性11,47,47,48,48,49,STEAMFLOW - 蒸汽流量补偿,差压,49STEAMFLOW - 蒸汽流量补偿差压,50,QAVERAGE - N个模拟量的平均值,(不包括坏质量的点),50QAVERAGE - N个模拟量的平均值(不包括坏质量,51,FUNCTION - 函数发生器,功能: 12段函数Y = f(x),参数:GAIN:输入增益BIAS:输入偏置TPSC:输出点最大值BTSC:输出点最小值TRAT:跟踪速率BPTS:折点数X-1:第一点输入Y-1:第一点输出,51FUNCTION - 函数发生器功能:参数:,52,DIVIDE - 除法,功能: OUT =,IN1 * IN1GAIN + IN1BIAS,IN2 * IN2GAIN + IN2BIAS,当IN2的GAIN =0 ,则:OUT = TPSC or BTSC,52DIVIDE - 除法功能:IN1 * IN1GAIN,53,MULTIPLY - 乘法,功能: OUT = (IN1 * IN1GAIN + IN1BIAS)*( IN2 * IN2GAIN + IN2BIAS),53MULTIPLY - 乘法功能:,54,Core modulating control 控制算法: PID, PIDFF, MASTATION, MAMODE, SETPOINT, TRANSFER, HISELECT, LOSELECT,PID算法,功能:,54Core modulating control 控制算,55,PIDFF - 带前馈的PID算法,55PIDFF - 带前馈的PID算法,56,MASTATION - M/A 站,56MASTATION - M/A 站,57,MAMODE - M/A方式控制,57MAMODE - M/A方式控制,58,SETPOINT - 设定算法,58SETPOINT - 设定算法,59,TRANSFER - 切换,59TRANSFER - 切换,60,HISELECT - 高选,60HISELECT - 高选,61,LOSELECT - 低选,61LOSELECT - 低选,62,Hardware interface硬件接口: FIELD, X3STEP, ANALOGDEVICE,FIELD,功能: 与I/O连接. 当I/O通道有故障时, FAIL点会置“1”.,62Hardware interface硬件接口: FIEL,63,X3STEP - 将模拟量信号转换成数字高/低信号,功能: 主要用于正/反作用的设备控制.* IN2: 设备位置反馈值. * 三种数字输出方式: 1. 保持稳定ON. (Maintained Steadily ON) 2. 脉冲ON 和OFF. 3. 保持稳定的OFF.* DIG1 和 DIG2 : 开关量输出* DEVO: 打包点. BIT0: 1: 非操作. 0: 操作.,63X3STEP - 将模拟量信号转换成数字高/低信号功能,64,64,65,ANALOGDEVICE - Local Analog Loop Controller 的接口,功能: 在正常操作下, 模拟量设备由算法控制输出. 当此算法设为AUTO时: 当ERROR ODBN, OUT = ERROR 当ERROR在两者之间, OUT = 01, 输出为标度因子乘偏差ERROR = IN2 - IN1参数:DLAY: 偏差时间延迟OUTU: 模拟量输出增加OUTD: 模拟量输出减少OUT5: 偏差报警SHED: 切断继电器, 是DIGIN的拷贝. 如果DIDIN是RESET或跟踪输入有跟踪信号, 则 TOUT=TRIN,65ANALOGDEVICE - Local Analog,66,Pulse Acuumulator module interface脉冲记数: RPACNT, RPAWIDTH,RPACNT - 计算RPA卡的脉冲数,读脉冲累积器卡, 算法使用硬件地址读取脉冲.当IN1为“1”时, 从脉冲卡中读脉冲数, 并将它送到OUT.FOUT 为脉冲累积数. 直到RSET为“1”当IN1和RSET都为“1”时, FOUT重新从卡中读脉冲数.,66Pulse Acuumulator module int,67,RPAWIDTH - 测RPA卡的脉冲宽度,输出为脉冲卡的输入点,67RPAWIDTH - 测RPA卡的脉冲宽度输出为脉冲卡,68,68,69,69,70,Point format conversion点格式转换: BCDNIN, BCDNOUT, PACK16, UNPACK16, SATOSP, SPTOSA, TRANSLATOR,BCDNIN - 将LP点的确6位转换成实数,IN 为LP 点OUT 为LA点CNTL: 0 直接转换 1 反向后转换BITP: 从LP点的哪个BIT开始转换NDIG: 转换几个四位两进制数,例子:BITP =0 NDIG=4 CNTL =0 输入:0110 0010 1000 0001 (LP点的值) 6 2 8 1 OUT = 6281若CNTL = 1, 则: 输入为: 1001 1101 0111 1110 例子:BITP = 4 NDIG=2 CNTL =0 (读2个BCD数, 从BIT4开始) 输入: xxxx 0010 1000 xxxx 输出: 2 8,70Point format conversion点格式转换,71,BCDNOUT - 将N个BCD数转换成LP的16位,与BCDNIN相反功能.,71BCDNOUT - 将N个BCD数转换成LP的16位与,72,PACK16 - 16个数字点转化成打包点,UNPACK16 - 将打包点转换成开关量点,72PACK16 - 16个数字点转化成打包点UNPACK,73,SATOSP - 模拟量转成打包点,SPTOSA - 打包点转成模拟量,输入模拟量=0.5时, 记为1.BIT15 是“1”时, 模拟量为负数.,BIT15 是“1”时, 模拟量为负数BIT15 是“0”时, 模拟量为正数,73SATOSP - 模拟量转成打包点SPTOSA -,74,TRANSLATOR - 翻译器,输出基于一个预定义的表格的数值.IN1作为表格寄存器的索引号去读取寄存器中的数值. 寄存器I0 I50.若IN1 50, 则有OUT不变.若寄存器中无数据, 则 OUT = 0.,74TRANSLATOR - 翻译器输出基于一个预定义的表,75,Math functions计算: GAINBIAS, INTERP, POLYNOMIAL, SQUAREROOT, SUM,GAINBIAS - 对输入加增益和偏置,75Math functions计算: GAINBIAS,G,76,INTERP - 提供线性表查询和插入法功能,76INTERP - 提供线性表查询和插入法功能,77,POLYNOMIAL - 五阶多元方程,77POLYNOMIAL - 五阶多元方程,78,SQUAREROOT - 平方根,78SQUAREROOT - 平方根,79,SUM - 加法,79SUM - 加法,80,Custom calculations自定义计算: CALCBLOCK, CALCBLOCKD,CALCBLOCK - 混合运算,80Custom calculations自定义计算: CA,81,例子:,81例子:,82,82,83,83,84,84,85,CALCBLOCKD - 数字量的计算,与与非,或,或非,异或,非,85CALCBLOCKD - 数字量的计算与或或非异或非,86,例子:,86例子:,87,87,