发布于 2009-05-17 19:44:30
0楼
我以前也做过类似的事情,我把我做的思路和脚本给你参考一下!希望对你有些帮助!
一:先建一个bool类型的内部变量"TEST_START";建一个浮点类型的内部变量"TEST_BAR"。
二:在画面里面组态两个按钮 1、TEST_START 2、TEST_STOP ;再组态一个棒图。(组态TEST_START按钮,当鼠标点击此按钮时,将内部变量"TEST_START"置位;组态TEST_STOP按钮,当鼠标点击此按钮时,将内部变量"TEST_START"复位;组态棒图,将变量"TEST_BAR"链接到棒图的Process Driver Connection)
三:写一个全局c脚本,这个全局c脚本循环触发时间不宜过短,本人设置为1秒。相关代码如下
#include "apdefap.h"
int gscAction( void )
{
static float a=0;
if (GetTagBit("TEST_START")) { a+=1; }
if (a>=100) { a=0; }
SetTagFloat("TEST_BAR",a);
return 0;
}
激活WinCC时,鼠标点击TEST_START按钮后,棒图就会每秒加1的速度递增;当点击TEST_STOP按钮后,棒图就会保持原来的状态不变化。根据自己需要,自己控制按钮就可。
佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!”