WinCC中通过组合框给PLC变量赋值的方法

问题描述

  • 想通过WinCC中的 组合框 来实现给S7-1200PLC中变量赋值,通过更改组合框中的值来改变控制系统参数,组合框文本、组合框索引以及PLC变量之间的关联如下表。
变量对应关系表
组合框文本组合框索引PLC变量X
前进方向11
后退方向20
  • 具体而言,就是当在组合框中选择“前进方向”时,PLC变量X=1;当组合框选择“后退方向时”PLC变量X=0。
图1 组合框示意图

实现思路

实现步骤 

  • 建立内部变量:变量管理>内部变量>新建变量“dir”如图2。
图2 建立内部变量
  • 将内部变量“dir”与组合框索引值关联: 单击“组合框”>属性>其他>选定框>在小灯泡上右击>选择变量>内部变量>“dir”>确定。
  • 关联成功后小灯泡变绿,并显示内部变量名称 。
图3 选择组合框

 

图4 关联内部变量
图5 内部变量关联成功(索引=1)

 

图6 内部变量关联成功(索引=2)
  •  建立全局脚本:WinCC项目管理器>全局脚本>C-Editor>新建全局动作>写脚本内容。
  • 脚本中主要用到两个函数“GetTagWord(“内部变量”)”和“SetTagWord(“变量”,值)”。
  • 脚本写完保存自动编译,不通过根据提示修改即可。
  • 脚本要实现自动运行,还需设置脚本触发器,即图9中时钟按钮,根据图10,11进行设置。
图7 打开脚本编辑器

 

图8 新建全局动作脚本
图9 编写脚本内容
图10 脚本函数与脚本触发器

 

图10 脚本触发器设置
图11 脚本触发器设置

 

总结

  • 主要通过内部变量+全局脚本函数实现组合框变化对PLC变量的修改。
  • 使用过程中发现组合框更改后PLC变量更改有可见滞后,原因不明。
posted @ 2020-04-22 23:00  u7pi  阅读(2064)  评论(0编辑  收藏  举报