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变量更改有可见滞后,原因不明。
原文地址:https://www.cnblogs.com/amosi/p/13756082.html