点击上方蓝色字体“PLC发烧友”,一起学习交流涨知识~
![ad2d460845b684f3d6a607709f766566.gif](https://i-blog.csdnimg.cn/blog_migrate/1e8d37ec3cb40697dcf23f45eae64de4.gif)
MCGS嵌入版组态软件把报警处理作为数据对象的属性封装在数据对象内,由实时数据库来自动分析处理。当数据对象的值或状态发生改变时,实时数据库判断对应的数据对象是否产生了报警或已产生的报警是否已经结束,并把所发生的报警信息通知给系统工程的其他部分。实时数据库根据用户的组态设定,把报警信息存入指定的存盘数据库文件中。实时数据库只负责对报警进行的判断、通知和存储三项工作, 报警产生后所要进行其他处理操作,则需要用户在组态过程中制定方案,来完成该报警信息的使用和报警的显示等。
1定义报警
报警的定义在数据对象的属性页中进行完成的。首先选中“允许进行报警处理”复选框,确定报警的优先级,使实时数据库能对该对象进行报警处理;报警定义是要填写报警注释、正确设置报警限值或报警状态,如图4-1所示。
图4-1 数据对象报警属性
数值型数据对象有六种报警 下下限、下限、上限、上上限、上偏差、下偏差。开关型数据对象有四种报警方式 开关晕报警、开关晕跳变报警、开关晕正跳变报警和开关晕负跳变报警,开关晕报警时可以选择是开报警或者关报警,当一种状态为报警状态时,另一种状态就为正常状态。用户在使用时可以根据不同的需要选择一种或多种报警方式。事件型数据对象不进行报警限值或状态设置,当对应的事件产生时报警也就产生,对事件型数据对象报警的产生和结束是同时完成的。字符型数据对象和组对象不能设置报警属性,但对组对象而言所包含的成员可以单个设置报警。组对象一般可用来对报警进行分类管理,以方便系统其他部分对同类报警进行处理。当报警信息产生时可以设置报警信息是否需要自动存盘,这种设置操作需要在数据对象的存盘属性中完成。
以循环水控制系统中的“液位1”数据对象为例进行讲解定义数据对象报警信息的过程;在实时数据库中双击“液位1” 数据对象,在报警属性中选中“允许进行报警处理”;在报警设置中选中“上限报警”,把报警值设为 9 米;报警注释为 水满了;在报警设置中选中“下限报警”,把报警值设为 1米;报警注释为 水没了,如图4-2所示。在存盘属性中,选中“自动保存产生的报警信”,确认后完成数据对象的属性设置,如图4-3所 示。
图4-2 “液位1” 数据对象的报警属性设置
图4-3 数据对象的存盘属性设置
对千液位2、液位3数据对象只需要把“上限报警”的报警值设为 4m和8m,把“下限报警”的报警值设为 2m和3m,注释内容与液位1其他一样相同。在存盘属性中选中“自动保存产生的报警信息”。具体操作如图4-4、图4-5所示。
图4-4 数据对象的报警属性设置
图4-5液位2、液位3数据对象的报警属性设置
2报警显示画面设置
实时数据库只负责关千报警的判断、通知和存储三项工作,而报警产生后所要进行的其他处理操作需要用户在组态过程中实现。
0 1 报警浏览构件设置打开“用户窗口”,进入“报警”窗口在工具条中单击“工具箱”弹出“工具箱”,从“工具箱”选择“标签”的图标,变“十”后用鼠标拖动到适当位置与大小。填写三个文本框内容分别“实时报警”“历史报警”“修改报警限值”字体为红色、背景为臼色。
从“工具箱”选择“报警浏览”图标,变“十”后用鼠标拖动到适当大小放到“实时报警”字体的下面,如图4-6所示。
图4-6 报警浏览构件
报警浏览构件的作用是显示实时的报警信息,双击报警浏览构件弹出报 警浏览构件属性设置。在“报警浏览构件属性设置”中,打开基本属性把显 示模式的实时报警数据改为 液位组,基本显示行数改为3行,滚动方向改为新报警在上。其他设置如图4-7所示。按“确认”后则报警显示设置完毕。
图4-7 报警浏览构件属性设置
0 2 报警显示构件设置从“工具箱”选择“报警显示” 图标,变“十”后用鼠标拖动到适当大小放到“历史报警”字体的下面,如图4-8所示。
图4-8 报警显示构件
报警显示构件的作用是显示历史的报警信息,双击报警属性构件弹出报警浏览构件属性设置。在“报警显示构件属性设置”中,打开基本属性把对应的数据对象名称改为;液位组,最大记录数改为6并且选择运行时,允许改变列的宽度。其他设置如图4-9所示。按“确认”后则报警显示设置完毕。
图4-9 报警显示构件属性设置
0 3 修改报警限值打开工作台的“实时数据库”,对“液位1”、“液位2”、“液位3”的上下限报警值都定义好了,如果想在运行环境下根据实际情况随时需要改变报警上下限值,如何实现呢?在MCGS嵌入式组态软件中,为用户提供了大晕的函数,可以根据用户的需要灵活地进行设置。具体操作如下
打开“实时数据库”中的 “新增对象”提示框,增加六个变晕,分别为 液位1上限、液位1下限、液位2上限、液位2下限、液位3上限、液位3下限,具体设置如图4-10至图4-12所示。
图4-10 液位1上限报警和液位1下限报警的数据对象属性设置
图4-11 液位2上限报警和 液位2下限报警的数据对象属性设置
图4-12 液位3上限报警和 液位3下限报警的数据对象属性设置
在“用户窗口”选“循环水控制”窗口进入,在“工具箱”选“标签” 图标用千文字注释,分别在适当的位置写入“上限值”、“上限值”、“液位1”、“液位2”、“液位3”。选中工具箱当中的“输入框”
图标,用千在运行时输入上下限值,如图4-13所示。
图4-13“上限值”和“上限值”的输入框
以“液位1上限”输入框为例进行说明;双击图标进行输入框构件属性设置,在设置属性过程中只需要设置“操作属性”,把对应数据对象的 名称改为 “ 液位1上限”即可,其他设置属性不变。“液位1上下限”、“液位2上限”、“液位2下限”、“液位3上限”、“液位3下限”。操作步骤如图4-14至图4-16所示。
图4-14“液位1上限”和“液位1下限”输入框属性设置
图4-15“液位2上限”和“液位2下限”输入框属性设置
图4-16“液位3上限” 和“液位3下限”输入框属性设置
以上的组态画面设置完成后进入MCGS组态环境工作台,在“运行策略”中双击“循环策略”,打开脚本程序编辑环境,在脚本程序中增加如下语句
!SetAlmValue(液位1,液位1上限报警,3)
!SetAlmValue(液位1,液位1下限报警,2)
!SetAlmValue(液位2,液位2上限报警,3)
!SetAlmValue(液位2,液位2下限报警,2)
!SetAlmValue(液位3,液位3上限报警,3)
!SetAlmValue(液位3,液位3下限报警,2)
若对该函数!SetAlmValue(液位1,液位1上限,3)不了解,按工具条上的“在线帮助”, MCGS嵌入组态软件给出解释信息。按“帮助”按钮弹出“MCGS帮助系统”,在“索引”中输入!SetAlmValue (DatName,Value,Flag)
函数意义 设置数据对象DatName对应的报警限值,只有在数据对象DatName“允许进行报警处理”的属性被选中后,本函数的操作才有意义。对组对象、字符型数据对象、事件型数据对象本函数无效。对数值型数据对象,用Flag来标识改变何种报警限值。
返 回 值 数值型,返回值等千0 调用正常,不等千0 调用不正常。
参 数 DatName 数据对象名。
Value 新的报警值,数值型。
Flag 数值型,标志要操作何种限值,具体意义如下
Flag参数具体意义如下 1下下限报警值、2下限报警值、3上限报警值、4上上限报警值、5下偏差报警限值、6上偏差报警限值、7偏差报警基准值。
实 例 !SetAlmValue (电机温度,200,3),把数据对象“电机温度”的报警上限值设为200。
0 4 报警动画设置在实际运行过程中当有报警产生时,通常有提示灯进行显示输出不同的工作状态,下面来讲解制作报警动画的具体操作步骤
在“用户窗口”中选中“报警”窗口双击进入,单击“工具箱”中的“插入元件” 图标,进入“对象元件库管理”,从“指示”中选取如下图 ,调整大小放在适当位置。作为“液位1”、“液位2”、“液位3”的报警指示,具体设置如 图4-16至图4-18所示。
图4-16“液位1”的报警指示灯属性设置
图4-17“液位2”的报警指示灯属性设置
图4-18“液位3”的报警指示灯属性设置
上述报警窗口的属性设置全部设置完成后,退出运行策略窗口。点击下载按钮进入模拟运行环境,检查所有设定的报警信息、报警指示灯、修改报警限值是否按照编写的控制流程出现相应的动画效果。报警窗口效果图如图4-19所示。
图4-19报警查看的效果图
总结:重点介绍了MCGS嵌入版组态软件的报警系统的属性设置,如定义报警、报警显示画面设置、修改报警限值、报警动画等。通过本章的学习使学生能够进一步了解MCGS嵌入版组态软件的特点,应用MCGS嵌入版组态软件来编写比较复杂实际工程。
(文章来源网络,仅供参考。评论处大家可以补充文章解释不对或欠缺的部分)
推荐阅读:
昆仑通态专题(二):MCGS嵌入版组态软件的动态链接
昆仑通态专题(一):MCGS嵌入版组态软件的组建工程
免费领取 | 最全三菱系列必备资料:案例、软件、手册统统都有~(马上收藏)
电气工程师吐血推荐:学会用这些工具,月薪20000不是事儿!
【实用案例】博途V15动态加密计时催款程序
【免费下载】工控人都抢着收藏!超全西门子资料包限时免费下载啦
戳↓
文章好看就点这里![eccd46f5ac1c8cec2f4a181f99850a89.gif](https://i-blog.csdnimg.cn/blog_migrate/dfedf6c3c7ef1df88c4a650bf286640e.gif)