如何组态PLC块中的结构变量,使其连接能在OS系统(WinCC) 中使用?

组态步骤 1. 在 simatic manager 中插入一个fb功能块,双击fb1打开此功能块。
2. 在功能块fb1中新建结构变量aaa,然后在此结构变量中建立三个元素为a1、a2、a3。
图1 建立结构变量 3. 在 fb1 中选择结构变量aaa,单击右键打开 aaa 的关联菜单。打开 aaa 的 “object properties”。跳转到 “attributes”标签,输入系统属性 “s7_m_c”。输入值“true”。单击 “ok”保存设置。
图2 组态结构变量属性 注意:在“attributes”标签中,可以看到一个系统属性 “s7_xm_c”,此属性在普通的os项目中没有任何意义,此功能是针对于pcs7项目增加的功能。
图3 结构变量属性 4. 在 simatic manager中创建一个ob1功能块,双击打开ob1,然后在程序中调用fb1并且设置背景数据块为db1。
图4 fb1调用程序 5. 在simatic manager 中选择 db1,单击右键打开 db1 的关联菜单。打开 db1 的 “object properties”。跳转到 “general – part1” 标签,在“symbolic name”中输入ddd并点击“ok”保存设置。
图5 db1符号名设置 6. 在simatic manager 中选择 db1,单击右键打开 db1 的关联菜单。通过 “special object properties > operator control and monitoring...” 打开 db 的 oc&m 属性。启用 “operator control and monitoring”选项框并单击 “save”保存设置。
图6 db1 oc&m设置 7. 在 simatic manager 中选择 db1,单击右键打开 db1 的关联菜单。打开 db 的 “object properties”。跳转到 “attributes” 标签,输入系统属性 “s7_m_c”。输入值 “true”。单击 “ok”保存设置。
图7 db1 attributes设置 8. 在 simatic manager 中选择 os站,单击右键打开 os站 的关联菜单。打开 os站 的 “compile”,点击“next”打开项目选择界面,选择要关联的plc程序如下图,再点击“next”两次,最后点击“compile”完成项目编译。
图8 plc程序选择 9. 在 simatic manager 中打开 os项目,然后在wincc项目树中展开结构变量,可以看到plc程序中的fb1已经被编译过来了。
图9 结构变量 10. 在wincc变量管理器“simatic s7 protocol suite—tcp/ip”下可以看到编译过来的s7连接,在s7连接里可以看到编译过来的fb1中的结构变量。
图10 编译过来的结构变量 声 明 目前plc程序块中的复杂数据类型的编译功能,只支持结构变量的编译,而数组和udt数据类型目前还不支持,因为在数组和udt类型变量的属性中没有“s7_m_c”这个参数,所以无法进行编译。
图11 数组变量属性参数
图12 udt变量属性参数