回复:wincc如何实现电机运行叶轮旋转的动画

CTRL+Z

  • 帖子

    121
  • 精华

    1
  • 被关注

    2

论坛等级:游士

注册时间:2005-09-17

普通 普通 如何晋级?

发布于 2007-03-17 09:18:26

0楼

引用"激情如火"曾经的一个帖子:相信对你有用!
WinCC在其内部的图库里集成很多的图形对象,如水箱、电机、阀门等等,对于污水处理用的最多的是水池,搅拌机等等。为了使组态画面贴近实际,能够更好的反应现场工况,图库里的元素并不能满足要求。我们可以利用WinCC的画图工具自己绘制适应实际的图形元素,并且使用C脚本使其产生动画效果。

对于调节池,反应池等可以用矩形来表示,以图形的填充高度来示意其液位的高度。这里要注意的是一些数值地转化,由于一些仪表例如E+H的超声波液位计,是以4~20毫安的电流信号进入PLC,对于表的参数设定好以后4毫安就对应相应池子的液位最低点,而20毫安对应于池子的液位最高点。所以在显示数字高度的时候要将PLC相对4、20毫安的数值转化为实际池子的高度范围例如,0.5~5.5米。但是对于图形填充的时候是按照百分数来表示的所以还要将PLC数值转化为0~100%的度量范围。
 
搅拌机的组态可以使用C脚本使其产生动画,在其运行时产生视觉上的旋转。实际上搅拌机的图形是用两个部分椭圆组成的,在椭圆的属性->几何->半径中加入代码如下:

  #include \"apdefap.h\"
  long _main(char* lpszPictureName, char* lpszObjectName, char*
lpszPropertyName)
  {
  static int x=25,y,z;//x为半径的初始值为25,y为切换变量,z为搅拌机运行状态变量
  z=GetTagBit(\"202搅拌机运行\"); //取得PLC搅拌机的运行状态
  if(z!=0)
  {
  switch(y)
  {
  case 0:
  x=x-4;
  if(x<=0)
  y=1;
  break;
  default :
  x=x+4;
  if(x>=25)
  y=0;
  break;
  }
  }
  return x;
  }
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32893条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。