专业编程基础技术教程

网站首页 > 基础教程 正文

WinCC入门课程8.3:通过C脚本,实现对象属性的动态化

ccvgpt 2024-07-29 13:38:34 基础教程 8 ℃

WinCC对象属性的动态化也可以通过C动作或VBS动作来实现。用VBS动态化的属性,"小灯泡"变为带"VB"的闪电图标;用C脚本动态化的属性,"小灯泡"变为带"c"的闪电图标。下面试举一例:用C脚本实现一个五角星旋转,说明如何通过脚本实现对象属性的动态化。

动态效果如下图所示:

如图4.1所示,为画面的一些辅助配置:

WinCC入门课程8.3:通过C脚本,实现对象属性的动态化

  • 旋转角与内部变量"angle"相关,画面中的输出域中,显示当前的角度
  • 设置旋转参考坐标X、Y均为50,即"五角星"围绕包围它的矩形的中心点旋转。

一、编写C动作

1、右键单击"旋转角"属性后的"小灯泡",选择"C动作...",弹出"编辑动作"对话框。

2、初步认识"编译动作"窗口

  • 程序在"代码编辑区"编写,代码可以是C语言,也可以调用左边"函数浏览区"的函数;
  • 函数浏览区的函数分为:项目函数、标准函数和内部函数。

项目函数由用户自己创建,可调用其他函数,也可被其他函数或动作调用;

标准函数是WinCC提供的函数,用户不能创建,但可以修改。可调用其他函数,也可被其他函数或动作调用;

内部函数也是由WinCC提供的函数,用户既不能创建,也不能修改。只能被其他函数或动作调用。

3、编写"动作"代码,并编译。

图4.4的代码简单解释:

  • 函数GetTagDWord和SetTagDWORD均为内部函数,属于固定用法,分别用于读变量"angle"的值和将值写入"angle"中。
  • 每执行一次代码,"旋转角"的度数增加13°。

二、设置触发器

代码编写完成且编译无错误后,还需要为动作设置触发器。点击图4.3所示的"触发器"按钮,弹出"触发器"窗口。

可选的触发器有:

  • 变量:用某一变量作为触发器。查询变量的状态,变化时就执行动作。查询周期可选范围为250ms到1小时之间,也可以是用于自定义的周期;
  • 标准周期:周期性的触发动作的执行。周期时间可选范围为250ms到1小时之间,也可以是用户自定义的周期;
  • 画面周期:周期性的触发动作的执行,周期为画面对象的"更新周期";
  • 窗口周期:周期性的触发动作的执行,周期为画面窗口对象的"更新周期"

为了方便演示,本例中触发器选择为"标准周期",周期为250ms。


这样,简单几步就通过C动作,实现了对象“五角星”的动态旋转的动态化过程了。VBS动作的实现过程类似,也包括代码的编写、编译以及触发器的选择,不同的是它使用的是VB语言。

<<上一篇《利用“动态对话框”,实现对象属性的动态化》

Tags:

最近发表
标签列表