1.21.CloseDir—关闭一个目录
用途:
CloseDir用来关闭一个目录,和OpenDir达到平衡。 基本范例: 该指令的基本范例说明如下。 例1 PROC lsdir(string dirname)
VAR dir directory; VAR string filename;
OpenDir directory,dirname;
WHILE ReadDir(directory,filename) DO TPWrite filename; ENDWHILE
CloseDir directory; ENDPEOC
该例子打印出指定目录下所有文件或者子目录名称。 项目: CloseDir Dev Dev: 数据类型:dir 一个相关到OpenDir指令取得的目录的变量。 语法: CloseDir[ Dev’:=’ ]
参看
目录 Dir—文件目录结构,第938页
制作一个目录 MakeDir—创建一个新的目录,第192页 打开一个目录 OpenDir—打开一个目录,第256页
读取一个目录 ReadDir—在一个目录中读取下一个入口,第810页 删除一个目录 RemoveDir—删除一个目录,第322页 删除一个文件 RemoveFile—删除一个文件,第324页 重新命名一个文件 RenameFile—重新命名一个文件,第325页
26
1.22.comment—注释
用途:
comment只是用来使程序容易理解。对程序的执行没有影响。 基本范例: 该指令的基本范例说明如下。 例1 !Goto the position above pallet
MoveL p100, v500, z20, tool1;
一个注释被插入程序,使程序更容易理解。 项目: !Comment Comment: 文本字符串。 任何文本。 程序执行: 执行该指令的时候不会发生什么。 语法: (EBNF) ‘!’{<字母>}
参看
注释中允许的字母 RAPID参考手册-RAPID概述,基本特征部分-基本元素 数据或者程序声明中的注释 RAPID参考手册-RAPID概述,基本特征部分-基本元素
27
1.23.Compact IF—如果满足一个条件,那么。。。(执行一个指令)
用途: 如果满足一个给定的条件,只有将执行一个单一指令的时候才使用Compact IF。 如果不同的指令将被执行,取决于给定的条件是否满足,使用IF指令。 基本范例: 该指令的基本范例说明如下: 例1 IF reg1 >5 GOTO next;
如果reg1大于5,程序继续从下一个标签执行。 例2 IF conter >10 Set do1;
如果conter >10,那么do1信号被设置。 项目:
IF Condition… Condition: 数据类型:bool 指令的执行必须满足的条件。 语法: (EBNF) IF<条件表达式>(<指令> |
参看
条件(逻辑表达式) RAPID参考手册-RAPID概述,基本特性部分-表达式 IF 带多个指令 IF—如果一个条件满足,那么。。。;否则。。。,第115页
28
1.24.ConfJ—在关节运动过程中控制配置
用途:
ConfJ(配置关节)用来指定在关节运动过程中是否控制机器人配置。如果不控制,机器人有时候会使用与程序中不同的配置。 ConfJ \\Off时,机器人不能转变主轴配置-它将寻找和当前途径具有相同主轴配置的途径,但是它移动到轴4和轴6的最近的腕配置。 该指令只能使用在主任务中,或者在多运动系统中,使用在运动任务中。 基本范例: 该指令的基本范例说明如下。 例1 ConfJ \\Off;
MoveJ *, v1000, fine, tool1;
机器人移动到编程位置和方向。如果该位置可以用多种不同的方式到达、用多种轴配置,将选择最近的可能位置。 例2 ConfJ \\On;
MoveJ *, v1000, fine, tool1;
机器人移动到程序中的位置、方向和轴配置。如果这是不可能的,程序执行将停止。 项目:
ConfJ [\\On] | [\\Off ] [\\On]: 数据类型:switch 机器人通常移动到遍编程中的轴配置。如果不能使用编程中的位置和方向,程序执行停止。
IRB5400机器人将移动到程序中的轴配置或者是接近程序中的轴配置的轴配置。如果它不能到达程序中的轴配置的话,程序的执行也不会停止。 [\\Off]: 数据类型:switch 机器人通常运动到最接近的轴配置。 程序执行: 如果选择了项目\On( 或者没有选择项目),机器人通常运动到编程的轴位置。不过不能使用程序中的位置和方向,在运动开始之前程序执行就停止。 如果选择了项目\\Off,机器人通常运动到最近接的轴配置。如果配置被错误地手动指定,或者如果执行了程序移植,这将可能和程序中的不一样。 控制配置(ConfJ \\On)是缺省值。这被自动设置:
?? 冷启动时
?? 新程序被加载 ?? 从头开始程序执行
语法: ConfJ [ ‘\\’ On] | [ ‘\\’ Off] ‘;’ 相关信息: 相关信息
参看
处理不同的配置 RAPID参考手册-RAPID概述,运动和I/O原理部分-机器人配置 线性运动中的机器人配置 ConfL—在线性运动过程中监视配置,第52页
29
1.25.ConfL—在线性运动过程中监视配置
用途:
ConfJ(配置关节)用来指定在线性或者圆周运动过程中是否监视机器人配置。如果不监视,执行时候的配置可能和程序中的配置不一样。当模式改变为关节运动的时候,也可能导致不可预知的清扫机器人运动。 该指令只能使用在主任务中,或者在多运动系统中,使用在运动任务中。 注意!在IRB5400机器人中,无论在ConfL中怎么指定,监视总是关闭的。 基本范例: 该指令的基本范例说明如下。 例1 ConfL \\On;
MoveL *, v1000, fine, tool1;
当从当前位置不能到达程序中的配置时,程序执行停止。 例2 SingArea \\Wrist;
ConfL \\On;
MoveL *, v1000, fine, tool1;
机器人运动到编程位置、方向和腕部轴配置。如果不能到达,程序执行停止。 例3 ConfL \\Off;
MoveJ *, v1000, fine, tool1;
机器人移动到程序中的位置和方向,但是到达最近的可能轴配置,这可能和程序中的轴位置不同。 项目: ConfL [\\On] | [\\Off ] [\\On]: 数据类型:switch 机器人配置被监视。 [\\Off]: 数据类型:switch 机器人配置不被监视。 程序执行: 在线性或者圆周运动过程中,机器人通常运动到拥有最接近的可能轴配置的程序中的位置和方向。如果选择了项目\On( 或者没有选择项目),如果有从当前位置不能到达程序中的位置的风险,程序执行立即停止。然而,虽然腕部轴可能继续朝错误的配置运动,仍旧可以重启程序。在停止点,机器人将检查所有轴的配置是否都到达,不仅仅是腕部轴。 如果也使用了SingArea \\Wrist,机器人总是运动到程序中的腕部轴配置,并且在停止点将检查剩余的轴配置。 如果选择了项目\\Off,就没有监视。 对于ConfL \\On 和\\Off,避免问题的一个简单的规则就是插入中间点,使点之间的每一个轴的运动小于90度。更精确地说,任意一对轴(1+4),(1+6),(3+4),(3+6)的运动的和不应该超过180度。 如果在一个大运动中使用了ConfL \\Off,带错误50050位置不能到达或者错误50080位置不匹配的程序,可能导致直接或者延迟停止。在带有ConfL \\Off的程序中,推荐运动到带“ConfJ \\On+MoveJ”或者“ConfL \\On+SingArea\\Wrist +MoveL”作为为不同的程序部分的开始点的已知配置点。 监视被激活是缺省值。这被自动设置:
?? 冷启动时 ?? 新程序被加载 ?? 从头开始程序执行
语法:
30