第二章 MCGS 嵌入版快速入门 ? 37?
[3] 点击基本属性页中的“内部属性”选项,该项右侧会出现 图标,单击此按钮进
入“内部属性”设置。将:通道1、2的最大值分别设置为:10、6 [4] 单击“确认”,完成“内部属性”设置。 [5] 点击通道连接标签,进入通道连接设置。
??选中通道0对应数据对象输入框,输入“液位1”; ??选中通道1对应数据对象输入框,输入“液位2”。如图:
[6] 进入“设备调试”属性页,即可看到通道值中数据在变化。 [7] 按“确认”按钮,完成设备属性设置。
2.7 编写控制流程
用户脚本程序是由用户编制的、用来完成特定操作和处理的程序,脚本程序的编程语
? 38? MCGS 嵌入版组态软件用户指南 法非常类似于普通的 Basic 语言,但在概念和使用上更简单直观,力求做到使大多数普通用 户都能正确、快速地掌握和使用。
对于大多数简单的应用系统,MCGS 嵌入版的简单组态就可完成。只有比较复杂的系 统,才需要使用脚本程序,但正确地编写脚本程序,可简化组态过程,大大提高工作效率, 优化控制过程。
本书将在“MCGS 嵌入版脚本程序”一章中详细介绍脚本程序的语法规则及用法。本 节主要目的是想通过编写一段脚本程序实现水位控制系统的控制流程,从而使您熟悉脚本 程序的编写环境。
下面先对控制流程进行分析:
??当“水罐1”的液位达到9米时,就要把“水泵”关闭,否则就要自动启动“水
泵”;
??当“水罐2”的液位不足1米时,就要自动关闭“出水阀”,否则自动开启“出
水阀”;
??当“水罐1”的液位大于1米,同时“水罐2”的液位小于6米就要自动开启“调
节阀”,否则自动关闭“调节阀”。 具体操作如下:
[1] 在“运行策略”中,双击“循环策略”进入策略组态窗口。
[2] 双击
图标进入“策略属性设置”,将:循环时间设为:200ms,按“确认”。
[3] 在策略组态窗口中,单击工具条中的“新增策略行” 图标,增加一策略行,如
图:
??如果策略组态窗口中,没有策略工具箱,请单击工具条中的“工具箱” 图
标,弹出“策略工具箱”,如下图:
第二章 MCGS 嵌入版快速入门 ? 39?
[4] 单击“策略工具箱”中的“脚本程序”,将鼠标指针移到策略块图标
单击鼠标左键,添加脚本程序构件,如图:
上,
[5] 双击 进入脚本程序编辑环境,输入下面的程序:
IF 液位 1<9 THEN 水泵=1 ELSE 水泵=0 ENDIF
IF 液位2<1 THEN 出水阀=0 ELSE
出水阀=1 ENDIF
IF 液位1>1 and 液位2<9 THEN 调节阀=1 ELSE
调节阀=0 ENDIF
如图所示:
? 40? MCGS 嵌入版组态软件用户指南
[6] 单击“确认”,脚本程序编写完毕。
2.8 报警显示
MCGS 嵌入版把报警处理作为数据对象的属性,封装在数据对象内,由实时数据库来 自动处理。当数据对象的值或状态发生改变时,实时数据库判断对应的数据对象是否发生 了报警或已产生的报警是否已经结束,并把所产生的报警信息通知给系统的其它部分,同 时,实时数据库根据用户的组态设定,把报警信息存入指定的存盘数据库文件中。
2.8.1 定义报警
本样例中需设置报警的数据对象包括: ??液位1 ??液位2
定义报警的具体操作如下:
[1] 进入实时数据库,双击数据对象“液位1”。 [2] 选中“报警属性”标签。
[3] 选中“允许进行报警处理”,报警设置域被激活;
[4] 选中报警设置域中的“下限报警”,报警值设为:2;报警注释输入:“水罐1没
水了!”。
[5] 选中“上限报警”,报警值设为:9;报警注释输入:“水罐1的水已达上限值!”。 [6] 单击“存盘属性”标签,选中报警数据的存盘域中的“自动保存产生的报警信息”。 [7] 按“确认”按钮,“液位1”报警设置完毕。
第二章 MCGS 嵌入版快速入门 ? 41?
[8] 同理设置“液位2”的报警属性。需要改动的设置为:
??下限报警:报警值设为:1.5;报警注释输入:“水罐2没水了!”; ??上限报警:报警值设为:4;报警注释输入:“水罐2的水已达上限值!”。
2.8.2 制作报警显示画面
实时数据库只负责关于报警的判断、通知和存储三项工作,而报警产生后所要进行的 其它处理操作(即对报警动作的响应),则需要您在组态时实现。
具体操作如下:
[1] 双击“用户窗口”中的“水位控制”窗口,进入组态画面。选取“工具箱”中的
“报警显示” 构件。鼠标指针呈“十”后,在适当的位置,拖动鼠标至适当大 小。如图:
[2] 选中该图形,双击,再双击弹出报警显示构件属性设置窗口,如图:
[3] 在基本属性页中,将: