基于WinCC的运料小车控制系统监控界面设计.docVIP

  • 27
  • 0
  • 约5.41千字
  • 约 8页
  • 2018-10-13 发布于重庆
  • 举报

基于WinCC的运料小车控制系统监控界面设计.doc

基于WinCC的运料小车控制系统监控界面设计

PAGE 8 《工业组态课程设计》 具体设计如下 一:创建过程画面 图一:创建的过程画面 二:设置所需变量 创建变量 数据类型 变量名称 变量作用 flag1 二进制 单动标志位 控制单动 flag2 二进制 自动标志位 控制自动 xiaochex 无符号16位 小车位置 控制小车的位置 qianxiankaiguan 二进制 前限位开关 限位开关 houxiankaiguan 二进制 后限位开关 限位开关 cheshachuxian 二进制 车沙出现 控制车内的沙出现 loudoushaxiaoshi 二进制 漏斗沙 控制漏斗的沙出现 T5 无符号16位 定时5秒 定时 T7 无符号16位 定时7秒 定时 loudoumen 二进制 漏斗门 控制漏斗 门 xiaochemen 二进制 小车门 控制小车的门 表一:创建所需所有变量(全部为内部变量) 三:四个按钮的的C动作程序代码 单动:SetTagDWord(“flag1”,1); 自动:SetTagDWord(“flag2”,1); 停止:SetTagDWord(“flag1”,0); SetTagDWord(“flag1”,0); 复位:SetTagDWord(“flag1”,0); SetTagDWord(“flag1”,0); SetTagDWord(“xiaochex”,0); 四:全局脚本程序代码 单动程序: #include“apdefap.h” Int gscAction(void) { DWORD autovalue; DWORD autovalue1; DWORD autovalue2; DWORD autovalue3; DWORD flag=0; DWORD time1value=50; DWORD time2value=70; autovalue=GetTagDWord(singleflag); while(autovalue)//按钮触发全局动作脚本 {autovalue=0; SetTagDWord(singleflag,autovalue); flag=GetTagDWord(stop); autovalue1=GetTagDWord(carx); while((autovalue1==10||autovalue2==1)(flag==0))//向右移动 {SetTagDWord(led1color,0xff);//LED1监视 SetTagDWord(led2color,0xFF),//LED2监视 SetTagDWord(coal1disp,0); autovalue2=1; flag=GetTagDWord(stop); autovalue1=GetTagDWord(carx); autovalue1+=10; if(autovalue1700)(autovalue2=0,autovalue1=700); SetTagDWord(carx,autovalue1); } flag=GetTagDWord(stop); if(flag==0) (SetTagDWord(led1color,0xFF),//LED1监视 SetTagDWord(led2color,0xFF00),//LED2监视 SetTagDWord(loumengao,30)//料门监控 ); SetTagDWord(timer2,time2value); while (time2value0flag==0)//定时器2计时 { time2value=GetTagDWord(timer2); time2value-=1; SetTagDWord(timer2,time2value); if (time2value70)(SetTagDWord(coal2y,219));//煤2监控 } SetTagDWord(loumengao,0);//料门监控 SetTagDWord(coal2y,48);//煤2监控 while((autovalue1==700||autovalue3==1)flag==0)//向左移动 {//SetTagDWord(led1color,0xFF),//LED1监视 SetTagDWord(led2color,0xff);//LED2监视 SetTagDWord(coal1disp,1);//煤1监控 autovalue3=1; flag=GetTagDWord(stop); autovalue1=GetTagDWord(carx); autovalue1-=10; if(autovalue110)(autovalue1=10,autovalue3=0,SetTagDWord(led1color,0xff00))

文档评论(0)

1亿VIP精品文档

相关文档