首页 理论教育 PAC编程教程:模拟量报警功能详解

PAC编程教程:模拟量报警功能详解

时间:2023-10-26 理论教育 版权反馈
【摘要】:模拟量报警功能的梯形图编程如图20-15所示。此处设置默认值500为报警级别,即中优先级别。此处设定为3000ms,即报警条件持续了3s之后才产生相应的报警动作。图20-15 模拟量报警功能的梯级逻辑图20-16 ALMA指令组态页面左侧部分●Deadband:设定死区范围。报警分类命名必须精确符合,并区分大小写。

PAC编程教程:模拟量报警功能详解

模拟量报警源于对现场一个数据量的监视,当被监视的数据量超越了预先设定的上限值或者下限值,触发相应的报警状态,有时是高报警状态,有时是低报警状态,一般在状态维持一段时间之后,确认为真实的报警状态,然后作出报警的处理。

模拟量报警功能的梯形图编程如图20-15所示。

报警指令的程控参数:

●ALMD的报警确认AlarmA_AckAll执行报警确认;

●报警取消AlarmA_Disable为1取消ALMA指令报警功能;

●报警使能AlarmA_Enable为1使能ALMA指令报警功能。

报警指令的输出状态:

●报警状态HHInAlarm为1表示处在高高报警中,为0表示未报警;

●报警状态HInAlarm为1表示处在高报警中,为0表示未报警;

●报警状态LInAlarm为1表示处在低报警中,为0表示未报警;

●报警状态LLInAlarm为1表示处在低低报警中,为0表示未报警;

●报警状态ROCPosInAlarm为1表示处在正向变化率报警中,为0表示未报警;

●报警状态ROCNegInAlarm为1表示处在反向变化率报警中,为0表示未报警;

●报警已确认HHAcked为1表示高高报警已被确认,为0表示未确认;

●报警已确认HAcked为1表示高报警已被确认,为0表示未确认;

●报警已确认LAcked为1表示低报警已被确认,为0表示未确认;

●报警已确认LLAcked为1表示低低报警已被确认,为0表示未确认;

●报警已确认ROCPosAcked为1表示正向变化率报警已被确认,为0表示未确认;

●报警已确认ROCNegAcked为1表示反向变化率报警已被确认,为0表示未确认;

●报警禁止Suppressed为1表示报警被禁止,为0表示未被禁止;

●报警消除Disabled为1表示报警取消,为0表示报警使能;

●报警指令故障InstructFault为1表示指令故障,为0表示指令正常。

指令运行显示的组态参数:

●HHLimit:高高报警限值;

●HLimit:高报警限值;

●LLimit:低报警限值;

●LLLimit:低低报警限值。

点击指令右上角的978-7-111-36030-8-Chapter20-19.jpg,展开ALMA指令的组态页面,也是模拟量报警结构数据标签AlarmA_LD的数据界面,在组态页面组态的信息将存放在结构数据标签AlarmA_LD中,参数页面的信息也将存放在结构数据标签AlarmA_LD中。在创建标签的数据库中,我们能看到大量的参数,在指令面板上出现的只是显示参数。

如图20-16所示是组态页面左侧部分,是有关报警界限和延时时间的设定。

参数说明:

●High High:高高报警限值设定,勾选并键入设定值。

●High:高报警限值设定,勾选并键入设定值。

●Low:低报警限值设定,勾选并键入设定值。

●Low Low:低低报警限值设定,勾选并键入设定值。

●Severity:报警等级范围,每个限值后面自行独立设定。可选1~1000作为报警等级,当多个报警同时触发时的优先级别设定如下:

-设定1~250为低优先级别;

-设定251~500为中优先级别;

-设定501~750为高优先级别;

-设定751~1000为紧急优先级别。

此处设置默认值500为报警级别,即中优先级别。

●Minimum Duration(最小持续时间):当满足报警条件后至少要持续这段时间才产生报警报告信息。此处设定为3000ms,即报警条件持续了3s之后才产生相应的报警动作。

978-7-111-36030-8-Chapter20-20.jpg

图20-15 模拟量报警功能的梯级逻辑

978-7-111-36030-8-Chapter20-21.jpg

图20-16 ALMA指令组态页面左侧部分

●Deadband(死区带宽):设定死区范围。

●Acknowledgement Required(确认需求):勾选该项,有关该报警的所有的条件都需要确认。

●Alarm Class(报警分类):用报警分类来组合相关的报警,例如Tank Farm A组合了油罐的所有报警信息;Control Loop组合了所有的PID环的报警。报警分类命名必须精确符合,并区分大小写。在人机界面,可以通过报警分类来过滤,例如操作员只显示类别是Tank Farm A和Control Loop的所有信息。

●FactoryTalk View Command:键入一个FactoryTalk View命令,这个命令在操作员站执行,当操作员看到指定报警时操作。ALMA指令为FactoryTalk View提供了附加功能,在某个报警发生并通过面板显示给操作员,操作员根据提示按下按钮,运行一个相关的命令。命令执行通常是弹出特定的面板和显示、执行一个宏、访问帮助文件或启动一个外部应用。命令键入没有错误校验,请务必仔细,错误的命令将不会执行。

如图20-17所示是组态页面右侧部分,是有关输入信号变化率监视的设定。

978-7-111-36030-8-Chapter20-22.jpg

图20-17 ALMA指令组态页面右侧部分

参数说明:

●Postive(正向变化率报警值设定):此处设定每秒变化800个单位值;

●Negative(反向变化率报警值设定):此处设定每秒变化800个单位值;

●Period(变化率监测采样时间):此处设定100ms的采样时间。

点击信息组态页面如图20-18所示,是有关信息显示的设定。

参数说明:

●Level关于上下限值的信息说明:

-High High:高高报警信息说明;

-High:高报警信息说明;

-Low:低报警信息说明;

-Low Low:低低报警信息说明。

点击报警栏右侧的978-7-111-36030-8-Chapter20-23.jpg,进入说明设定,如图20-19所示。(www.xing528.com)

●Rate Of Change关于正反变化率的信息说明:

978-7-111-36030-8-Chapter20-24.jpg

图20-18 模拟量报警信息组态页面

978-7-111-36030-8-Chapter20-25.jpg

图20-19 报警信息说明设定

-Positive:正向变化率报警信息说明;

-Negative:反向变化率信息说明。

●Associated Tag(关联标签):指定最多4个与报警有关联的标签,任何时候这些标签被存储的值映射于此,报警条件变成报警状态时,或其他报警状态发生,这些存储值被传送给报警。这些存储的值也可以被内含在报警信息中。关联标签可以是基本数据或字符串,也可以是用户自定义标签的或数组的子元素。

点击Status页面,如图20-20所示是页面左侧的关于高高报警、高报警、低报警和低低报警的时间记录。如图20-21所示的是页面右侧的关于正向变化率报警和反向变化率报警的时间记录。

978-7-111-36030-8-Chapter20-26.jpg

图20-20 报警状态左侧的时间记录

如图20-22所示是参数页面的部分输入参数。此组态页面所见到的只是其中很少的一部分,关于每个参数的含义和运用,在罗克韦尔出版物的指令集中可以找到详细的介绍。

如图20-23所示是参数页面的部分输出参数。此组态页面所见到的只是其中很少的一部分,关于每个参数的含义和运用,在罗克韦尔出版物的指令集中可以找到详细的介绍。

运行测试,当模拟量输入数据27648超过高报警值25000时,延时3s后,相应的报警位HInAlarm置位,同时相应的确认位HAcked复位,其余另外3个确认位依然在置位状态,如图20-24所示。

模拟量报警的功能块组态如图20-25所示。

978-7-111-36030-8-Chapter20-27.jpg

图20-21 报警状态右侧的时间记录

外部显示参数:

●输入In,模拟量报警监测对象,为模拟量模块3通道;

●报警状态HHInAlarm为1表示处在高高报警中,为0表示未报警;

●报警状态HInAlarm为1表示处在高报警中,为0表示未报警;

●报警状态LInAlarm为1表示处在低报警中,为0表示未报警;

●报警状态LLInAlarm为1表示处在低低报警中,为0表示未报警;

●报警状态ROCPosInAlarm为1表示处在正向变化率报警中,为0表示未报警;

●报警状态ROCNegInAlarm为1表示处在反向变化率报警中,为0表示未报警;

●报警已确认HHAcked为1表示高高报警已被确认,为0表示未确认;

●报警已确认HAcked为1表示高报警已被确认,为0表示未确认;

●报警已确认LAcked为1表示低报警已被确认,为0表示未确认;

●报警已确认LLAcked为1表示低低报警已被确认,为0表示未确认;

●报警已确认ROCPosAcked为1表示正向变化率报警已被确认,为0表示未确认;

●报警已确认ROCNegAcked为1表示反向变化率报警已被确认,为0表示未确认;

●报警禁止Suppressed为1表示报警被禁止,为0表示未被禁止;

●报警消除Disabled为1表示报警取消,为0表示报警使能;

978-7-111-36030-8-Chapter20-28.jpg

图20-22 参数页面的部分输入参数

978-7-111-36030-8-Chapter20-29.jpg

图20-23 参数页面的部分输出参数

978-7-111-36030-8-Chapter20-30.jpg

图20-24 模拟量报警梯级逻辑

978-7-111-36030-8-Chapter20-31.jpg

图20-25 模拟量报警的功能块组态

●报警指令故障InstructFault为1表示指令故障,为0表示指令正常。

点击978-7-111-36030-8-Chapter20-32.jpg后,进入组态页面,跟梯形图指令完全一样,选择相同的设置,这里不再赘述。

运行测试,当模拟量输入数据27392超过高报警值25000时,延时3s后,相应的报警位HInAlarm置位,同时相应的确认位HAcked复位,其余另外3个确认位依然在置位状态,如图20-26所示。

978-7-111-36030-8-Chapter20-33.jpg

图20-26 功能块ALMA执行的结果

最后,我们再来看看报警功能的语句编程。首先,在数据库创建一个模拟量报警的结构数据标签,命名为AlarmA_Text,如图20-27所示。

编写语句报警逻辑如图20-28所示。赋值语句完成了模拟量输入数据、模拟量报警的所有报警确认、报警使能和报警取消的程控操作,指令ALMA及圆括号中相关的参数顺序而列。

语句编程的报警页面组态不能在离线情况下完成,只有在线控制器中可直接进行组态,在语句指令圆括号的参数项中,选中报警结构标签AlarmA_Text,点击右键,选择Configure“AlarmA_Text”,点击进入,即可进入跟梯形图指令和功能块完全一样的组态界面,从而完成组态工作。语句编程的报警页面组态的进入如图20-29所示。

同样,报警的组态必须在模拟量报警结构数据标签AlarmA_Text中完成,不管是梯形图指令编程、功能块编程,抑或是语句编程,模拟量报警结构数据都是一样的,不同的是梯形图逻辑和功能块有特定的界面,可直观地完成。模拟量结构数据如图20-30所示,如果熟练的话,直接在结构数据表中设置有关参数也未尝不可。

978-7-111-36030-8-Chapter20-34.jpg

图20-27 在数据库创建一个模拟量报警的结构数据标签

978-7-111-36030-8-Chapter20-35.jpg

图20-28 编写的语句模拟量报警

978-7-111-36030-8-Chapter20-36.jpg

图20-29 语句编程的报警页面组态的进入

978-7-111-36030-8-Chapter20-37.jpg

图20-30 模拟量报警结构数据标签

978-7-111-36030-8-Chapter20-38.jpg

图20-30 模拟量报警结构数据标签(续)

978-7-111-36030-8-Chapter20-39.jpg

图20-30 模拟量报警结构数据标签(续)

报警功能的讨论中,大家可能已经注意到,我们很少谈论指令编程的技巧,更多的是在讨论参数的含义,这和我们最初讨论的内容是不一样的,这说明系统越成熟,指令功能越强,标准化处理越多,编程人员所需要的技巧越少,编程人员的负担越轻,人为出错的因素越少,项目开发的时间就越短。这不正是我们追求和期望的吗?

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈