PS:1→2、2→3、7→8、8→9、9→10、10→7为圆弧运动;
6→1、3→4、4→5、5→6、6→7、7→6 为直线运动;
先画图1,循环3次,等待3秒,再画图2,轨迹如上图所示。
10个位置在同一平面。
程序(位置寄存器法:建立坐标系,指定位置具体坐标):
程序行 指令 注释
1 PR[6]=LPOS 以位置6为原点
2 PR[1]=PR[6] 将位置6赋值给位置1
3 PR[1,2]=PR[6,2]+120 位置1:以位置6为基准,其Y方向+120
4 PR[2]=PR[1] 将位置1赋值给位置2
5 PR[2,1]=PR[1,1]+50 位置2:以位置6为基准,其Y方向+50
6 PR[2,2]=PR[1,2]+50 位置2:以位置6为基准,其X方向+50
7 PR[3]=PR[1] 将位置1赋值给位置3
8 PR[3,1]=PR[1,1]+100 位置3:以位置1为基准,其X方向+100
9 PR[4]=PR[3] 将位置3赋值给位置4
10 PR[4,2]=PR[3,2]-120 位置4:以位置3为基准,其Y方向-120
11 PR[5]=PR[2] 将位置2赋值给位置5
12 PR[5,2]=PR[2,2]-220 位置5:以位置2为基准,其Y方向-220
13 PR[6]=PR[1] 将位置1赋值给位置6
14 PR[6,2]=PR[1,2]-120 位置6:以位置1为基准,其Y方向-120
15 R[1]=0 程序1初始值为0
16 LBL[1] 程序1分支标签
17 L PR[6] 2000mm/sec FINE 从其它位置以2000 mm/sec直线运动到位置6
18 L PR[1] 2000mm/sec FINE 从位置6以2000 mm/sec直线运动到位置1
19 C PR[2] 从位置1,经过位置2以2000mm/sec
PR[3]2000mm/sec FINE 圆弧运动到位置3
20 L PR[4] 2000mm/sec FINE 从位置3以2000 mm/sec直线运动到位置4
21 L PR[5] 2000mm/sec FINE 从位置4以2000 mm/sec直线运动到位置5
22 L PR[6] 2000mm/sec FINE 从位置5以2000 mm/sec直线运动到位置6
23 R[1]= R[1]+1 每循环一次,R[1]值加1
24 IF R[1]<3 JMP LBL[1] 如果R[1]<3,程序跳转到16 LBL[1]执行
25 WAIT 3.0sec 在位置6等待3.0秒
26 PR[7]=PR[6] 将位置6赋值给位置7
27 PR[7,1]=PR[6,1]-30 位置7:以位置6为基准,其X方向-30
28 PR[8]=PR[6] 将位置6赋值给位置8
29 PR[8,1]=PR[6,1]-90 位置8:以位置6为基准,其X方向-90
PR[8,2]=PR[6,2]+60 位置8:以位置6为基准,其Y方向+ 60
30 PR[9]=PR[6] 将位置6赋值给位置9
31 PR[9,1]=PR[6,1]-150 位置9:以位置6为基准,其X方向-150
32 PR[10]=PR[6] 将位置6赋值给位置10
33 PR[10,1]=PR[6,1]-90 位置10:以位置6为基准,其X方向-90
PR[10,2]=PR[6,2]-60 位置10:以位置6为基准,其Y方向-60
34 PR[7]=PR[6] 将位置6赋值给位置7
3536 PR[7,1]=PR[6,1]-30 位置7:以位置6为基准,其X方向-30
36 PR[6]=PR[7] 将位置7赋值给位置6
37 PR[6,1]=PR[7,1]+30 位置6:以位置7为基准,其X方向+30
38 L PR[6] 2000mm/sec FINE 从其它位置以2000 mm/sec直线运动到位置6
39 L PR[7] 2000mm/sec FINE 从位置6以2000 mm/sec直线运动到位置7
40 C PR[8] 从位置7,经过位置8以2000mm/sec
PR[9]2000mm/sec FINE 圆弧运动到位置9
41 C PR[10] 从位置9,经过位置10以2000mm/sec
PR[7]2000mm/sec FINE 圆弧运动到位置7
42 L PR[6] 2000mm/sec FINE 从位置7以2000 mm/sec直线运动到位置6
[END] 程序运行结束