当PLC和HMI有公用的数据库时,采用消息号发送故障信息。组态和编程时,将消息分配给用户程序中的某个位。PLC的状态改变时,只将对应的消息号传送到HMI,显示出保存在HMI或者WinCC中的消息文本,消息使用PLC的时间标记,这种方法的通信减轻了通信负荷。
【例12-14】某控制系统,其主要控制模块由CPU314C-2DP和SM331等组成,要求发生故障时,PLC触发HMI故障报警,请实现此功能。
图12-124 新建画面
图12-125 报警画面
解:
1)用STEP7新建项目。命名为“ALARM2”,先在SIMATIC Manager界面的菜单中,单击“插入”→“站”→“SIMATIC S7300”,然后打开硬件组态界面,并在其中先后插入机架“RACK”和CPU314C-2DP,再插入模拟量模块SM331。保存和编译后回到SIMATIC Manager界面,再单击“插入”→“站”→“SIMATIC HMI-Station”,选择HMI的型号为“TP 177B 6″color PN/DP”,如图12-126所示。最后SIMATIC Manager界面如图12-127所示。
2)在NetPro中建立连接。实现HMI和PLC连接的方法如下:在SIMATIC Manager界面,单击“网络组态”按钮,打开网络组态工具“NetPro”,界面中显示HMI和PLC之间MPI并未连接。用鼠标的左键将两个站代表MPI接口的红色小方框拖拽到MPI网络上,即可实现两个站的连接,如图12-128所示。单击工具栏上的“保存并编译”按钮。
图12-126 选择HMI的型号
图12-127 SIMATIC Manager界面
图12-128 NetPro中建立连接
3)编写功能块FB1的程序。在SIMATIC Manager界面的菜单中,创建一个功能块FB1,双击之,打开FB1。
在FB1的局部变量表中创建一个双字型(Dword)的输入(IN)参数EV_ID1,如图12-129所示。单击鼠标右键,弹出快捷菜单,单击“对象属性”,弹出变量属性对话框,如图12-130所示,选中“属性”选项卡,并作如图12-130所示的设置,单击“确定”按钮。用同样的方法生成输入变量EV_ID2。
在FB1的局部变量表中创建三个双字型(Dword)静态变量SD1、SD2及SD3,用于保存消息的相关值,它可作为消息的组成部分发送到HMI。
图12-129 声明局部变量
图12-130 变量属性
在FB1中,编写如图12-131所示的程序。
图12-131 FB1中的程序
4)创建消息文本。在SIMATIC Manager界面中,选中功能块FB1,单击右键,弹出快捷菜单,选择“特殊对象属性”→“消息”,打开“消息组态”对话框,如图12-132所示。
单击“更多》”按钮,选中“EV_ID1”,在“消息文本”方框中输入“1号电机电流:@1R%5.1f@电压:@2R%5.1f@”,在信息文本中输入“电机过载,电流过大”;再选中“EV_ID2”,在“消息文本”方框中输入“2号电机电流:@1X%5u@电压:@2R%5.2f@”,在信息文本中输入“电机过载,电流过大”,最后单击“确定”按钮,如图12-133所示。
图12-132 消息组态(1)
图12-133 消息组态(2)
SFC用参数SD指定的地址来传递相关值。消息文本要遵循一定的格式,以下简要介绍。
①消息文本的格式:
@<相关值的编号><元素类型><格式代码>@(www.xing528.com)
以上格式中,“@”是字符串的起始和结束标识。
②元素类型。B、Y、C、W、I、X、D和R分别用来表示位(BOOL)、字节(BYTE)、字符串、字(WORD)、整数(INT)、双字(DWORD)、双整数(DINT)和浮点数(REAL)。
③格式代码。格式码见表12-20。
表12-20 格式码
举例,“@2R%5.1f@”表示序号2,浮点数,显示最多5位,显示1位小数;“@1X%5u@”表示序号为1,5位双字十进制显示。
此外,以上所有的标点符号都应该在“英文”状态下输入,而不能在“汉字”状态下输入。
5)在OB1中调用FB1。
6)编写OB35中的程序,如图12-134所示。
图12-134 OB35中的梯形图
7)HMI显示消息相关设置。
①创建画面。在SIMATIC Manager界面中,单击“SIMATIC HMI-Station(1)”→“WinCC flexible RT”→“画面”,如图12-135所示,再把右侧“工具栏”中的“报警视图”控件用鼠标拖拽到HMI的“画面_1”中。
②激活连接。如图12-136所示,双击画面右侧的“通信”中的“连接”图标,弹出“连接”对话框,单击“激活的”下方的倒三角,选择“开”选项,这样原来的“关”选项变为“开”,HMI与PLC就建立起连接了。
图12-135 创建画面
图12-136 激活连接
③设置报警。如图12-137所示,展开目录树“报警管理”→“设置”→“报警设置”,选中“报警设置”并双击之。在“系统报警”中,勾选“S7诊断报警(编号)”和“S7诊断报警(文本)”;在“报警程序”表格的第一行,勾选“所有显示类”,最后单击右下方的“√”按钮。
图12-137 设置报警
④组态报警视图。双击目录树中的“画面_1”,选中“画面_1”中的“报警视图”控件,再选择“常规”选项→“报警事件”→“S7报警”,如图12-138所示。保存所有的设置。
图12-138 组态报警视图
⑤运行仿真。单击工具栏上的“起动运行系统”按钮,HMI的仿真运行开始,因为PLC没有向HMI发送报警触发信号,此时HMI不会报警。
在SIMATIC Manager界面中,单击“打开/关闭仿真器”按钮,并将PLC的程序下载到仿真器中,这部分内容前面章节已经讲述,在此不再赘述。将PLC的仿真器置于“RUN”状态,并将M10.0和M10.1置位,如图12-139所示,M10.0和M10.1置位表示激活了1号报警和2号报警,这点可以在程序FB1中得知。
图12-139 PLC运行仿真
由于,M10.0和M10.1置位表示激活了1号报警和2号报警,可以看到如图12-140所示的画面。
图12-140 HMI运行仿真
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。