![组态控制技术实训教程(MCGS)(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/685/33643685/b_33643685.jpg)
实训2 超限报警
一、学习目标
1.掌握组态软件工具箱和“对象元件库管理”功能的使用。
2.掌握实时数据库中开关型对象和字符型对象的定义及使用方法。
3.熟悉循环策略编程中脚本程序的设计方法。
二、设计任务
1.一个整数从零开始每隔1000ms加1,界面中的储藏罐的液位随着累加数增加而上升,同时界面中的仪表指针随着累加数增加而转动。
2.当整数累加值达到8时,停止累加,储藏罐的液位停止上升,界面中的指示灯变换颜色,同时界面中出现提示信息“数值超限!”。
三、任务实现
1.建立新工程项目
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/40_03.jpg?sign=1739249930-B8NVnbjkj98hITdzQVYmFEu2pwmaQ0ck-0-408d8153768ba7a92d65bbdb19ea1e6d)
二维码2-1 新建工程项目
双击桌面“MCGS组态环境”图标,进入MCGS组态环境。
1)单击“文件”菜单,从下拉菜单中选择“新建工程”命令,出现工作台窗口。
2)单击“文件”菜单,从下拉菜单中选择“工程另存为”命令,弹出“保存为”对话框,将文件名改为“超限报警”,单击“保存”按钮(此时建立的工程文件保存在指定文件夹中),进入工作台窗口。
3)单击工作台“用户窗口选项卡中的“新建窗口”按钮,在工作台窗口中新建“窗口0”。
4)选中“窗口0”,单击“窗口属性”按钮,弹出“用户窗口属性设置”对话框。将窗口名称改为“超限报警”,将窗口标题改为“超限报警”,在窗口内容注释文本框内输入“储藏罐液位报警”,窗口位置改为“最大化显示”,单击“确认”按钮。此时“窗口0”变为“超限报警”。
5)选择工作台窗口中的“主控窗口”选项卡,单击“系统属性”按钮,弹出“主控窗口属性设置”对话框,在“启动属性”选项卡中,将“用户窗口列表”中的“超限报警”增加到“自动运行窗口”中。
6)右击工作台“用户窗口”选项卡中的“超限报警”图标,在弹出的快捷菜单中选择“设置为启动窗口”命令。
2.制作图形界面
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/40_04.jpg?sign=1739249930-mMqVJK8XVTik3Nhba2Y35MThVBLIziA2-0-769b5e6a2c96a743352ea238d8de66b1)
二维码2-2 制作图形画面
在工作台“用户窗口”选项卡中双击“超限报警”图标,进入“动画组态超限报警”窗口,此时工具箱自动加载(如果未加载,执行“查看”→“绘图工具箱”命令)。
1)添加1个“仪表”元件。单击工具箱中的“插入元件”图标,系统弹出“对象元件库管理”对话框,选择仪表库中的一个仪表对象(如仪表12),如图2-33所示,单击“确定”按钮,所设计的图形界面中出现选择的仪表元件。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/41_01.jpg?sign=1739249930-shGcUIHJQnFZGgD06ArJNqWPPwejN2xf-0-6abbe8067f78652711253d335a42a2e3)
图2-33 实训2选择仪表对象
2)添加1个“储藏罐”元件。单击工具箱中的“插入元件”图标,系统弹出“对象元件库管理”对话框,选择储藏罐库中的一个储藏罐对象(如罐50),单击“确定”按钮,所设计的图形界面中出现所选择的储藏罐元件。
3)添加一个“输入框”构件。单击工具箱中的“输入框”构件图标,然后将鼠标指针移动到所设计的图形界面上,单击空白处并拖动鼠标,画出一个适当大小的矩形框,这样就出现“输入框”构件。
4)添加1个“指示灯”元件。单击工具箱中的“插入元件”图标,系统弹出“对象元件库管理”对话框,选择指示灯库中的一个指示灯对象(如指示灯2),单击“确定”按钮,所设计的图形界面中出现所选择的指示灯元件。
5)添加一个“按钮”构件。单击工具箱中的“标准按钮”构件图标,然后将鼠标指针移动到界面上,单击空白处并拖动鼠标,画出一个适当大小的矩形框,这样就出现“按钮”构件。双击“按钮”构件,系统弹出“标准按钮构件属性设置”对话框,在“基本属性”选项卡将按钮标题改为“关闭”。
设计完的图形界面如图2-34所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/41_02.jpg?sign=1739249930-kHirNcAimhwnQb0Oo3PZx2bIgIQz4U05-0-1a192455ae6cc8576685e859d837ba5b)
图2-34 实训2图形界面
3.定义数据对象
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/42_01.jpg?sign=1739249930-1HbhDkUllvIDnhxTYhrfE4fb3G4RYh8J-0-d7977e70d338640fe23f4c78835136d4)
二维码2-3 定义数码对象
在工作台窗口“实时数据库”选项卡,单击“新增对象”按钮,再双击新出现的对象,系统弹出“数据对象属性设置”对话框。
(1)定义1个数值型对象
在“基本属性”选项卡中,将对象名称改为“num”,对象类型选“数值”,小数位设为“0”,对象初值设为“0”,最小值设为“0”,最大值设为“100”,如图2-35所示。
定义完成后,单击“确认”按钮,会发现在工作台窗口“实时数据库”选项卡中增加了1个数值型对象“num”。
(2)定义1个字符型对象
在“基本属性”选项卡中,将对象名称改为“str”,对象类型选“字符”,对象初值设为“正常!”,如图2-36所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/42_02.jpg?sign=1739249930-0GvpOgDNxVeqn8e3I8jWQA5MXVjUK5VV-0-61c307abd9f3ce63c4d7b10b73f9a940)
图2-35 实训2对象“num”属性设置
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/42_03.jpg?sign=1739249930-2yhVu6RZFjWVE9v5k00SorX5NEXA8GgE-0-aa2a59e59db0d1609c6a075cdd92af23)
图2-36 实训2对象“str”属性设置
定义完成后,单击“确认”按钮,会发现在工作台窗口“实时数据库”选项卡中增加了1个字符型对象“str”。
(3)定义1个开关型对象
在“基本属性”选项卡中,将对象名称改为“灯”,对象类型选“开关”。
定义完成后,单击“确认”按钮,在工作台窗口“实时数据库”选项卡中增加了1个开关型对象“灯”。
建立的实时数据库如图2-37所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/42_04.jpg?sign=1739249930-ZCngJNsviDkju9jFyvVs2UHJpwUuUAxa-0-0a7a008c305dbf73beb8ad0b2e8452d7)
图2-37 实训2实时数据库
4.建立动画连接
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/43_01.jpg?sign=1739249930-VVzFclkVMtn3JahEAsIFyr08jVDGSjqw-0-5f12fcae8a322d0a45fc7699d7072a59)
二维码2-4 建立动画连接
在工作台窗口“用户窗口”选项卡中,双击“超限报警”图标,进入“动画组态超限报警”窗口。
(1)建立“仪表”元件的动画连接
双击窗口中“仪表”元件,系统弹出“单元属性设置”对话框。在“动画连接”选项卡中,图元名选择“标签”,其右侧出现按钮,如图2-38所示。单击
按钮进入“动画组态属性设置”对话框,在“显示输出”选项卡中,在表达式中选择数据对象“num”,输出值类型选“数值量输出”,整数位数设为“2”,其他属性设置如图2-39所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/43_04.jpg?sign=1739249930-3VbkAen0aXa1Rt5yG51GKP1Y3l26rEKD-0-58a4ef7e1fdf5f66aff89737212eed6d)
图2-38 实训2仪表“单元属性设置”对话框
单击“确认”按钮回到“单元属性设置”对话框。
在“动画连接”选项卡,图元名选择“旋转仪表”,右侧会出现按钮。单击
按钮进入“旋转仪表构件属性设置”对话框,在“操作属性”选项卡,在表达式中选择数据对象“num”,其他属性值设置如图2-40所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/43_07.jpg?sign=1739249930-HPeTW9RTDn1mx72eyj2sBnkpfzg7SCr5-0-bb53ec3ec2040eed1f33f81ca2a6598e)
图2-39 实训2仪表“标签”属性设置
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/43_08.jpg?sign=1739249930-RoqmrUrgNFim4bUTHSMI88JF2ic4tZE1-0-3950e607c13ecfd0a625d68e25971cd9)
图2-40 实训2旋转仪表构件属性设置
单击“确认”按钮回到“单元属性设置”对话框,会发现连接表达式中出现连接的对象“num”,如图2-41所示。
单击“确认”按钮完成“仪表”元件的动画连接。
(2)建立“储藏罐”元件的动画连接
双击窗口中的“储藏罐”元件,系统弹出“单元属性设置”对话框。在“动画连接”选项卡中,选择图元名“矩形”,连接类型为“大小变化”,其右侧会出现按钮,如图2-42所示。单击
按钮进入“动画组态属性设置”对话框,在“大小变化”选项卡中,表达式选择数据对象“num”,最小及最大表达式的值分别设为“0”和“10”,如图2-43所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/44_02.jpg?sign=1739249930-TaYzxfo5yae0YrpmnXdCmEiZ3uaWt6V0-0-436f03e555eddbcb34c8c2b9f7e55b52)
图2-41 实训2出现仪表动画连接的对象“num”
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/44_03.jpg?sign=1739249930-8rQoE9VVaDv7WIDn3sfYyf9O8Nj4GitP-0-28c0323c1972269702aeb57231b48efd)
图2-42 实训2储藏罐动画连接设置
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/44_04.jpg?sign=1739249930-LTTlTYQXttSJ8p2lpjhdTJ5Hp0REzmys-0-bd7e509ab6bd1da5f1a91b1ff11570c7)
图2-43 实训2储藏罐动画组态属性设置
单击“确认”按钮回到“单元属性设置”对话框,会发现动画连接表达式中出现连接的对象“num”。
再次单击“确认”按钮完成“储藏罐”元件的动画连接。
(3)建立“灯”元件的动画连接
双击窗口中的“灯”元件,系统弹出“单元属性设置”对话框。在“动画连接”选项卡中,在列表框的第一行中选择图元名“三维圆球”,连接类型为“可见度”,右侧出现按钮,如图2-44所示。单击
按钮进入“动画组态属性设置”对话框,在“可见度”选项卡中,表达式选择数据对象“灯”,当表达式非零时选择“对应图符可见”,如图2-45所示,单击“确认”按钮回到“单元属性设置”对话框。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/44_07.jpg?sign=1739249930-rHcNEikvTgFeawTL0j9WmNrMVt9gd3RQ-0-b6ad4d2c694e624dce53b53d083136dd)
图2-44 实训2指示灯单元属性设置
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/44_08.jpg?sign=1739249930-e8IYlwOxlgXAROAY211RD2jboKQniozh-0-3ac252d7d66e85fcc6fb9a1d07e9a4f3)
图2-45 实训2指示灯动画组态属性设置
在列表框的第二行中选择图元名“三维圆球”,按上述步骤设置属性,表达式选择数据对象“灯”,当表达式非零时选择“对应图符不可见”。
单击“确认”按钮回到“单元属性设置”对话框,动画连接表达式中出现连接的对象“灯”,如图2-46所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/45_01.jpg?sign=1739249930-7FbXTRqZMI4n2D6nfre9l8XIrdwduZIb-0-c504cc17c6fcbd32a8cf6ef0e8c0b0f9)
图2-46 实训2指示灯动画连接
单击“确认”按钮完成“灯”元件的动画连接。
(4)建立“输入框”构件动画连接
双击窗口中的“输入框”构件,出现“输入框构件属性设置”对话框。在“操作属性”选项卡中将对应数据对象的名称设为“str”,如图2-47所示。
单击“确认”按钮完成“输入框”构件动画连接。
(5)建立“关闭”按钮构件的动画连接
双击“关闭”按钮构件,出现“标准按钮构件属性设置”对话框,如图2-48所示。在“操作属性”选项卡中,选择“关闭用户窗口”,在右侧下拉列表框中选择“超限报警”。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/45_02.jpg?sign=1739249930-Z69fKy8270d0EWv3kDyHgYjGBO4k24b7-0-a6ae4ca7b29ce998882f8ab9ad535ff6)
图2-47 实训2“输入框构件属性设置”对话框
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/45_03.jpg?sign=1739249930-seHCOxM6OEZwYHWTGg4JGtrfweiToa8A-0-db20465e36c98b97fa1ada141722d871)
图2-48 实训2“标准按钮构件属性设置”对话框
单击“确认”按钮完成“关闭”按钮动画连接。
5.策略编程
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/45_04.jpg?sign=1739249930-q3aGP6BSJ0nUCLk5WTROctJN14TuBvxT-0-53d62e309725b01091960b0607905e8a)
二维码2-5 策略编程
在工作台窗口的“运行策略”选项卡中双击“循环策略”项,系统弹出“策略组态:循环策略”编辑窗口,策略工具箱会自动加载(如果未加载,右击,选择“策略工具箱”命令)。
单击组态环境窗口工具条中的“新增策略行”按钮,在“策略组态:循环策略”编辑窗口中出现新增策略行。选中策略工具箱中的“脚本程序”,将鼠标指针移动到策略块图标上,通过单击添加“脚本程序”构件。
双击“脚本程序”策略块,进入“脚本程序”编辑窗口,在编辑区输入程序,如图2-49所示。
单击“确定”按钮,完成程序的输入。
关闭“策略组态:循环策略”编辑窗口,保存程序,返回到工作台窗口的“运行策略”选项卡中,选择“循环策略”项,单击“策略属性”按钮,系统弹出“策略属性设置”对话框,如图2-50所示,将策略执行方式的定时循环时间设置为1000ms,单击“确认”按钮完成设置。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/46_01.jpg?sign=1739249930-8cu3waO6RL1w39Z1q3BpI2ebU0l3SE7E-0-951a19d9ba115f2e6c0c4f83449e2296)
图2-49 实训2编写脚本程序
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/46_02.jpg?sign=1739249930-icYVBOngyCTKOtRnJ9Kcx9mmZw1FprXI-0-4530a8a70f0a0f6ab04ef9cf4c025fe4)
图2-50 实训2“策略属性设置”对话框
6.程序运行
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/46_03.jpg?sign=1739249930-U2mLiNBZDmEPDOfGvf47ctasu07nT5kj-0-f496dad794e90f983bae10e530acf543)
二维码2-6 程序运行
单击组态环境窗口工具条中的“进入运行环境”按钮或按下键盘上的〈F5〉键,系统开始运行工程。
可以看到,一个整数从零开始每隔1000ms加1,储藏罐液位逐渐上升,界面中仪表指针随着累加数增加而转动;当整数累加至8时,停止累加,指示灯颜色改变,界面中出现提示信息“数值超限!”。
程序运行界面如图2-51所示。
![](https://epubservercos.yuewen.com/54EA4D/17977545601604806/epubprivate/OEBPS/Images/46_04.jpg?sign=1739249930-sQYaoEbmmOAfCf9CDPfclbr9X5uZTj8W-0-04fd1aee5181ca03bcc54f1b28c82b4e)
图2-51 实训2程序运行界面