单击“通道连接”,将MCGS中的按钮输入、显示输出与PLC设备中的输入输出口相联接。如图4-10所示:
图4-10 PLC与MCGS的通道连接
然后单击“设备调试 ”就可以在线调试了。若“通信状态标志”为0则表示通讯正常,否则MCGS组态软件和西门子S7-200PLC设备通讯失败。如图4-11所示:
图4-11 PLC与MCGS设备调试
27
4.5监视画面的设定与动画的连接
由图形对象搭制而成的图形画面是静止不动的,需要对这些图形对象进行动画设计,真实地描述外界对象的状态变化,达到过程实时监控的目的。
MCGS实现图形动画设计的主要方法是将用户窗口中图形对象与实时数据库中的数据对象建立相关性连接,并设置相应的动画属性。在系统运行过程中,图形对象的外观和状态特征,由数据对象的实时采集值驱动,从而实现了图形的动画效果。
本立体仓库的制作的动画效果部分包括:
1)库位的库存情况:例如选择库位号并双击,出现属性设置,选择“颜色动画连接”中的“填充颜色”则出现如图4-12所示。在其表达式的“?”中选择需要的实时数据库作为表达式,并使其与库位号库位1传感器建立连接,并添加填充颜色连接。将0对应的颜色改为黄色,即指示灯没指示时的颜色,再次单击“增加”按钮,将1对应的颜色改为红色,即指示灯有指示时的颜色。如图4-12所示:
图4-12数据对象填充颜色设置
2)按钮的开关的设置:添加数据对象“启动\\停止”设置基本属性,并设置好操作属性。本开关设置为“按1松0”。特别要注意的是连接已经建立好的所需要的数据对象。如图4-13所示:
28
图4-13 构件的属性设置
3)指示灯的颜色变化:以堆垛机左移指示灯为例。双击组态画面中的堆垛机左移指示灯,选中属性设置中的“可见度”,使其与相应数据对象进行连接,在“表达式非零时”框中选择对应图符可见,即表达式=1时,指示灯可见。如图4-14和图4-15所示:
图4-14属性设置
29
图4-15可见度设置
4.6编制控制流程
4.6.1脚本程序的简介
脚本程序是组态软件中的一种内置编程语言引擎。当某些控制和计算任务通过常规组态方法难以实现时,通过使用脚本语言,能够增强整个系统的灵活性,解决其常规组态方法难以解决的问题。
MCGS脚本程序为有效地编制各种特定的流程控制程序和操作处理程序提供了方便的途径。它被封装在一个功能构件里(称为脚本程序功能构件),在后台由独立的线程来运行和处理,能够避免由于单个脚本程序的错误而导致整个系统的瘫痪。
在MCGS中,脚本语言是一种语法上类似Basic的编程语言。可以应用在运行策略中,把整个脚本程序作为一个策略功能块执行,也可以在菜单组态中作为菜单的一个辅助功能运行,更常见的用法是应用在动画界面的事件中。MCGS引入的事件驱动机制,与VB或VC中的事件驱动机制类似,比如:对用户窗口,有装载,卸载事件;对窗口中的控件,有鼠标单击事件,键盘按键事件等等。这些事件发生时,就会触发一个脚本程序,执行脚本程序中的操作。 4.6.2 立体仓库脚本程序的编制
由于MCGS脚本程序是为了实现某些多分支流程的控制及操作处理,因此包括了几种最简单的语句:赋值语句、条件语句、退出语句和注释语句,同时,为了提供一些高级的循环和遍历功能,还提供了循环语句。所有的脚本程序都可由这五种语句组成,
30
当需要在一个程序行中包含多条语句时,各条语句之间须用“:”分开,程序行也可以是没有任何语句的空行。大多数情况下,一个程序行只包含一条语句,赋值程序行中根据需要可在一行上放置多条语句。用比较多的是条件语句。
条件语句有如下三种形式:
If 〖表达式〗 Then 〖赋值语句或退出语句〗 If 〖表达式〗 Then 〖语句〗 EndIf
If 〖表达式〗Then 〖语句〗 Else 〖语句〗 EndIf
条件语句中的四个关键字“If”、“Then”、“Else”、“Endif”不分大小写。如拼写不正确,检查程序会提示出错信息。
条件语句允许多级嵌套,即条件语句中可以包含新的条件语句,MCGS脚本程序的条件语句最多可以有8级嵌套,为编制多分支流程的控制程序提供了可能。
本动画我们对“库位显示”、“行显示”“列显示”进行了脚本程序编程。 “库位显示”
If 按钮1=1 then
库位显示=1
else
IF 按钮2=1 THEN 库位显示=2 else
IF 按钮3=1 THEN 库位显示=3 else
IF 按钮4=1 THEN 库位显示=4 else
IF 停止按钮=1 THEN 库位显示=0 endif
31