指令:
无限循环指令: LOOP
ENDLOOP
程序会在LOOP与ENDLOOP之间无限循环,若需要运行一段时间后跳出无限循环,则用EXIT。
例: LOOP
PTP P1 V=100%
IF $IN[1]==TRUE THEN
EXIT
ENDIF
PTP P2 V=100%
ENDLOOP
LIN P3 V=2m/s
上面的例子,机器人就会在P1和P2之间无限循环,直到 $IN[1]==TRUE时,直接跳出循环指令,运行P3这个点上。
二.条件判断指令:IF……..THEN
ELSE
ENDIF

指令运行到这段时,会判断IF与THEN之间的变量是否成立,若成立则运行IF与ENDIF之间的程序,若不成立则直接跳过,也可以在IF指令中加入ELSE,若成立则运行IF下面的程序,若不成立,则运行ELSE下面的程序。ENDIF结束。
三.停止程序:HALT
四.跳转程序:GOTO
五.子程序返回主程序:RETURN
六.程序继续:CONTINUE
七.FOR 循环是一种可以通过规定重复次数执行一个或多个指令的控制结构。
要进行计数循环则必须事先声明 Integer 数据类型的循环计数器。
该计数循环从值等于 start 时开始并最迟于值等于 last 时结束。
步幅为 +1 时的句法
FOR i = 0 TO 5 step 1
ENDFOR
1.步幅1 (increment) 也可通过关键词 STEP 指定为某个整数。
循环计数器被用起始值进行初始化:i = 0 布日期 : 16.01.2015 版本 : P1KSS8 robot programming 1 (R2) V4 225 / 275
循环计数器在 ENDFOR 时会以步幅 STEP 递增计数
3. 循环又从 FOR 行开始
4. 检查进入循环的条件: 循环计数器必须小于等于指定的终值,否则会结束循环
5. 根据检查结果的不同,循环计数器会再次递增计数或结束循环。结束循环
后程序在 ENDFOR 行后继续运行
示例:
n 没有指定步幅的单层计数循环
DECL INT counter 声明counter 为INT整数型变量
FOR counter = 1 TO 50
$OUT[counter] = FALSE
ENDFOR
没有借助 STEP 指定步幅时,会自动使用步幅 +1。
指定步幅的单层计数循环
DECL INT counter
FOR counter = 1 TO 4 STEP 2
$OUT[counter] = TRUE
ENDFOR
该循环只会运行两次。一次以起始数值 counter=1,另一次则以
counter=3。计数值为 5 时,循环立即终止。
使用计数循环进行 DECL INT counter
递减计数
ENDFOR
循环的初始值或者起始值必须大于等于终值,以便循环能够多次运
行。
例如:
指定负向步幅的计数循环
DECL INT counter
FOR counter = 10 TO 1 STEP -1
;指令
ENDFOR
指定步幅的嵌套计数循环
DECL INT counter1, counter2
FOR counter1 = 1 TO 21 STEP 2
FOR counter2 = 20 TO 2 STEP -2
...
ENDFOR
ENDFOR
9.while为当型循环指令
八.当型循环的说明
WHILE 循环也被称为前测试循环。
WHILE 循环是一种当型或者先判断型循环,这种循环会在执行循环的指令部
分前先判断终止条件是否成立。
只要某一执行条件 (conition) 得到满足,这种循环会一直将过程重复下
去。
执行条件不满足时会导致立即结束循环,并执行 ENDWHILE 后的指令
句法
WHILE condition
; 指令
ENDWHILE
型循环可通过 EXIT 指令立即退出。
1. 具有简单执行条件的当型循环
WHILE IN $41]==TRUE ; 部件备好在库中
PICK_PART( )
ENDWILE
...
表达式 WHILE $IN[41]==TRUE 也可简化为 WHILE $IN[41]。省
略始终表示比较为真 (TRUE)。
2.具有复合执行条件的当型循环
...
WHILE (($IN[40]==TRUE) AND ($IN[41]==FALSE) OR (counter>20))
PALLET( )
ENDWILE
...
九.直到型循环的编程
直到型循环也称为后测试型循。
EPEAT 循环是一种直到型或者检验循环,这种循环会在第一次执行完循环
的指令部分后才会检测终止条件。
在指令部分执行完毕之后,检查是否已满足退出循环的条件
(condition)。
条件满足时,退出循环,执行 UNTIL 后的指令。
条件不满足时,在 REPEAT 处重新开始循环。
直到型循环可通过 EXIT 指令立即退出。
句法
REPEAT
; 指令
UNTIL condition
具有简单执行条件的直到型循环。
...
REPEAT
PICK_PART( )
UNTIL $IN[42]==TRUE ; 输入端 42:
...
十.给 SWITCH- CASE 分支编程

若需要区分多种情况并为每种情况执行不同的操作,则可用 SWITCH -
CASE 指令达到目的。
SWITCH- CASE 分支是一个分支或多重分支,并且用于不同情况。
SWITCH 指令中传递的变量用作开关,在指令块中跳到预定义的 CASE 指
令中。
如果 SWITCH 指令未找到预定义的 CASE,而 DEFAULT (默认)段事先
已定义,则运行此段。
SWITCH 选择标准
CASE 值
指令
CASE 值
指令
CASE 值
指令
...
DEFAULT
指令
ENDSWITCH

