力控实例教程
- 格式:doc
- 大小:954.00 KB
- 文档页数:7
周末没事可干,在家玩力控,哈哈。
一、整体的画面是下面这样的,对像有1、送料的小球;2、传料机构;3、机械手;4、加工机台。
小球负责运送已加工或待加工的料;传料机构把未加工的料传给机械手,或把加工好的传回给小球;机械手把料与加工机台互动;加工机台加工料;
二、建立变量:
如下图列表
三、建立动画
送料机构:
机械手:
加工机台:
下拉清单:
三、程序编写:
条件触发:
主程序:
具体是下面这样的:
//******************************************************************************************** *******************
if (a3.pv==1&&a1.pv<>a2.pv) then
#主画面.Rect100.FColor=1417;
SWITCH (a1.pv)
CASE 0:x.pv=0, y.pv=y.pv+a4.pv
CASE 1:x.pv=x.pv+a4.pv; y.pv=350;
case 2:x.pv=662, y.pv=y.pv-a4.pv;
case 3:x.pv=x.pv-a4.pv, y.pv=0;
DEFAULT: MsgBox("1#小车地标读取错误!")
ENDSWITCH
endif
if (b3.pv==1&&b1.pv<>b2.pv) then
#主画面.Rect101.FColor=1417;
SWITCH (b1.pv)
CASE 0:x1.pv=0, y1.pv=y1.pv+b4.pv
CASE 1:x1.pv=x1.pv+b4.pv; y1.pv=350;
case 2:x1.pv=662, y1.pv=y1.pv-b4.pv;
case 3:x1.pv=x1.pv-a4.pv, y1.pv=0;
DEFAULT: MsgBox("2#小车地标读取错误!")
ENDSWITCH
endif
if a1.pv==a2.pv then a3.pv.01=0; endif
if b1.pv==b2.pv then b3.pv.01=0; endif
IF x.pv==0 && y.pv>=296 && y.pv<=300 && a3.pv.03==0 then a3.pv.02=1;
IF u1.pv<100 then
u1.pv=u1.pv+1;
endif
if u1.pv==100 && v1.pv<100 then
v1.pv=v1.pv+1;
endif
if v1.pv==100 && w1.pv<100 then
w1.pv=w1.pv+1;
endif
if w1.pv==100 then
a3.pv.03=1;//步记标致
endif
endif
if a3.pv.03==1 then
#主画面.Rect100.FColor=236;
y.pv=300;
if v1.pv>0 then
v1.pv=v1.pv-1
else
a3.pv.03=0;a3.pv.02=0;
u1.pv=0;v1.pv=0;w1.pv=0;c.pv=c.pv+1;
endif
endif
IF x1.pv==662 && y1.pv>=96 && y1.pv<=100 && b3.pv.03==0 then
b3.pv.02=1;
if u2.pv<100 then
u2.pv=u2.pv+1;
endif
if u2.pv==100 && v2.pv<100 then
v2.pv=v2.pv+1;
endif
if v2.pv==100 && w2.pv<100 then
w2.pv=w2.pv+1;
endif
if w2.pv==100 then
b3.pv.03=1;
endif
endif
if b3.pv.03==1 then
#主画面.Rect101.FColor=236;
y1.pv=96;
if v2.pv>0 then
v2.pv=v2.pv-1
else
b3.pv.03=0;b3.pv.02=0;
u2.pv=0;v2.pv=0;w2.pv=0;c.pv=c.pv+1;
endif
endif
//******************************************************************************************** ********。