ABB机器人RAPID指令中文翻译_第1页
ABB机器人RAPID指令中文翻译_第2页
ABB机器人RAPID指令中文翻译_第3页
ABB机器人RAPID指令中文翻译_第4页
ABB机器人RAPID指令中文翻译_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

RAPID 参考手册 指令指令 张建辉 韩 鹏 1 指令 1 1 AccSet 降低加速度 用途 当处理较大负载时使用 AccSet 指令 它允许减慢加速度和减速度 使机器人有一个更平滑的运动 该指令只能在主任务 T ROB1 中使用 或者如果处于多运动系统 在 Motion 任务中 基本范例 AccSet 的基本范例说明如下 例 1AccSet 50 100 加速度备限制到正常值的 50 例 2AccSet 100 50 加速度斜线限制到正常值的 50 项目 AccSet Acc Ramp Acc 数据类型 num 数值 加速度和减速度作为正常值的百分比 100 对应最大加速度 最大值 100 输入值 20 则给出最大加 速度的 20 Ramp 数据类型 num 数值 加速度和减速度的增加作为正常值的百分比的比例 如图 通过减小这个数值可以限制震动 100 对应 最大比例 最大值 100 输入值 10 则给出最大比例的 10 下图说明减小加速度可以平滑运动 加速度 加速度 加速度 时间 时间 时间 AccSet 100 100 正常加速度 AccSet 30 100 AccSet 100 30 程序执行 该加速度值应用到机器人和外部轴 直到一个新的 AccSet 指令执行 缺省值 100 在以下情况是自动设置 冷启动 加载了新的程序 从头开始执行程序时 语法 AccSet AccSet Ramp 相关信息 有关信息有关信息参看参看 在世界坐标系统中控制加速度第 590 页 WorldAccLim 在世界坐标系统中控制加速 度 沿着路径降低 TCP 加速度第 265 页 PathAccLim 沿路径降低 TCP 加速度 定位指令RAPID 参考手册 RAPID 概述 RAPID 摘要部分 运动 1 2 ActUnit 激活一个机械单元激活一个机械单元 用途 ActUnit 用来激活一个机械单元 例如当使用普通驱动单元的时候 它可以用来决定哪一个单元被激活 该指令只能在主任务 T ROB1 中使用 或者如果处于多运动系统 在 Motion 任务中 基本范例 ActUnit 的基本范例说明如下 例 1 ActUnit orbit a orbit a 机械单元的激活 项目 AccUnit MechUnit MechUnit 机械单元 数据类型 mecunit 机械单元 要激活的机械单元的名称 程序执行 当机器人的和外部轴的实际路径准备好以后 整个路径被清理并且特定的机械单元被激活 这意味着它被 机器人控制和监视 如果多个机械单元共享一个普通驱动单元 这些单元中的一个的激活 也将把该单元连接到普通驱动单元 限制 如果在该指令之前有一个运动指令 那个指令的程序中必须带有停止点 区域数据 fine 而不是一个通 过点 否则将不能进行电源失败后的重启 AccUnit 指令不能在连接到以下任何特定的系统事件的 RAPID 程序中执行 电源上电 停止 Q 停止 重 启或者复位 语法 ActUnit MechUnit 相关信息 相关信息相关信息参照参照 废除机械单元第 69 页 DeactUnit 废除一个机械单元 机械单元第 969 页 MecUnit 机械单元 更多例子第 69 页 DeactUnit 废除一个机械单元 1 3 Add 增加一个数字数值增加一个数字数值 用途 Add 用于增加一个数值到一个数字变量或恒量 或者从一个数字变量或者恒量中减去一个数值 基本范例 Add 的基本范例说明如下 例 1Add reg1 3 3 被增加到 reg1 即 reg1 reg1 3 例 2Add reg1 reg2 从 reg1 减去 reg2 即 reg1 reg1 reg2 项目 Add Name AddValue Name 数据类型 数字 将要改变的变量或者恒量的名称 AddValue 数据类型 数字 要增加的数值 语法 Add Name AddValue 相关信息 相关的信息相关的信息参看参看 给变量加 1Incr 增加 1 第 117 页 改变量减 1Decr 减 1 第 71 页 使用一个任意的表达式改变数据 例如乘法 赋值 第 19 页 1 4 AliasIO 用别名定义用别名定义 I O 用途 AliasIO 用来用别名定义一个任意类型的信号 或者用来在内置 built in 任务模块中使用信号 在不同的机器人安装中 带别名的信号可以被用来预定义常规程序 而不用在运行之前进行任何的程序更 新 在任何实际信号的使用之前 必须运行 AliasIO 指令 参看第 17 页的基本范例来加载模块 第 18 页更多 范例来安装模块 基本范例 指令 AliasIO 的基本范例说明如下 也可参看第 18 页更多范例 例 1 VAR signaldo alias do PROC Prog start AliasIO config do alias do ENDPROC 程序 prog start 链接到系统参数的 START 事件 程序定义的数字输出信号 alias do 链接到程序开头配置的 数字输出信号 config do 项目 AliasIO FromSignal ToSignal FromSignal 数据类型 signalxx 或者字符串 加载的模块 加载的模块 信号标识符按照配置 数据类型 signalxx 命名 信号描述符也从配置中复制 信号必须在 IO 配置中定 义 安装的模块或者加载的系统模块 安装的模块或者加载的系统模块 一个相关 CONST VAR PERS 或者它们的参数 包含信号 数据类型 string 字符串 的名称 从该信 号中 信号描述符在系统中搜索后被复制 信号必须在 IO 配置中定义 ToSignal 数据类型 signalxx 信号标识符按照程序 数据类型 signalxx 命名 信号描述符复制到该系统中 信号必须在 RAPID 程序中 声明 FromSignal 和 ToSignal 项目必须使用 或者找到 相同的数据类型 并且必须是类型 signalxx signalai signalao signaldi signaldo signalgi 或者 signalgo 中的一个 程序执行 信号描述符数值从 FromSignal 项目给出的信号复制到 ToSignal 项目给出的信号 更多范例 指令 AliasIO 的更多范例说明如下 例 1VAR signaldi alias di PROC prog start CONST string config string config di AliasIO config string alias di ENDPROC 程序 prog start 链接到系统参数中的 START 事件 程序定义的数字输入信号 alias di 链接到程序开头配置 的数字输入信号 config di 通过常量 config string 限制 当开始程序的时候 别名信号直到 AliasIO 指令执行之后才能使用 指令 AliasIO 必须放置在 或者在程序开始 事件 START 时执行的事件程序中 或者在每一个程序开始之后 信号使用之前 执行的程序部分 为了防止错误 不推荐使用把 AliasIO 信号动态重新链接到不同的物理信号 语法 AliasIO FromSignal ToSignal 相关信息 相关信息相关信息参看参看 输入 输出指令RAPID 参考手册 RAPID 概述 RAPID 摘要部分 输入和输出信号 通常的输入输出功能性RAPID 参考手册 RAPID 概述 运动和 I O 原理部分 I O 原理 I O 配置技术相关手册 系统参数 定义事件程序技术相关手册 系统参数 加载 安装任务模块技术相关手册 系统参数 1 5 赋值赋值 用途 指令用来给数据赋一个新值 这一个值可以是包括从常量值到任意的表达式中的任何一个 例如 reg1 5 reg3 基本范例 指令的基本范例说明如下 也可参见第 19 页更多范例 例 1reg1 5 数值 5 赋给 reg1 例 2reg1 reg2 reg3 reg2 reg3 计算返回的数值赋给 reg1 例 3counter counter 1 counter 增加 1 项目 Data Value Data 数据类型 所有 将被赋新值的数据 Value 数据类型 和 Data 一样 期望的数值 更多范例 该指令的更多范例说明如下 例 1tool1 tframe trans x tool1 tframe trans x 20 tool1 的 TCP 在 X 方向上移动 20 毫米 例 2pallet 5 8 Abs value pallet 矩阵的一个元素被赋予一个等于 value 变量的绝对值的数值 限制 数据 将被改变数值的 不可以是 常量 非数值数据类型 数值或者数据必须有相似的 相同的或者别名的 数据类型 语法 EBNF 相关信息 相关信息相关信息参看参看 表达式RAPID 参考手册 RAPID 概述 基本特性部分 表达式 非数值数据类型RAPID 参考手册 RAPID 概述 基本特性部分 数据类型 给数据赋一个初始数值操作员手册 IRC5 和 FlexPendant FlexPendant 部分编辑数据实例 1 6 BitClear 在一个字节数据中清除一个特定位在一个字节数据中清除一个特定位 用途 BitClear 用来清除 设为 0 定义的字节数据中一个特定的位 基本范例 该指令的基本范例说明如下 例 1CONST num parity bit 8 VAR byte data1 130 BitClear data1 parity bit 变量 data1 中位号 8 parity bit 将设为 0 例如变量 data1 的内容将从 130 变成 2 整数表示法 当使用 BitClear 时数据类型 byte 的位操作在下图有说明 项目 BitClear BitData BitPos BitData 数据类型 字节 整型表示法的位数据 将被改变的数据 BitPos 数据类型 数字 BitData 中将被设为零的位的位置 1 8 限制 字节数据类型的范围是十进制的 0 255 有效的位的位置为 1 8 语法 BitClear BitData BitPos 相关信息 相关信息相关信息参看参看 在字节数据中设定一个特定的位BitSet 在字节数据中设定一个特定的位 第 23 页 检查字节数据中特定的位是否被设置BitCheck 检查字节数据中特定的位是否被设置 第 654 页 位的其他功能RAPID 参考手册 RAPID 概述 RAPID 摘要部分 数学 位功能 1 7 BitSet 在字节数据中设定一个特定的位在字节数据中设定一个特定的位 用途 BitSet 用来在定义的字节数据中把一个特定位设为 1 基本范例 该指令的基本范例说明如下 例 1CONST num parity bit 8 VAR byte data1 2 BitSet data1 parity bit 变量 data1 中位号 8 parity bit 将设为 1 例如变量 data1 的内容将从 2 变成 130 整数表示法 当使用 BitClear 时数据类型 byte 的位操作在下图有说明 项目 BitSet BitData BitPos BitData 数据类型 字节 整型表示法的位数据 将被改变的数据 BitPos 位的位置 数据类型 数字 BitData 中将被设为零的位的位置 1 8 限制 字节数据类型的范围是十进制的 0 255 有效的位的位置为 1 8 语法 BitSet BitData BitPos 相关信息 相关信息相关信息参看参看 在字节数据中清除一个特定的位BitClear 在字节数据中清除一个特定的位 第 23 页 检查字节数据中特定的位是否被设置BitCheck 检查字节数据中特定的位是否被设置 第 654 页 位的其他功能RAPID 参考手册 RAPID 概述 RAPID 摘要部分 数学 位功能 1 8 BookErrNo 定制一个定制一个 RAPID 系统错误号码系统错误号码 用途 BookErrNo 用来定制一个新的 RAPID 系统错误号码 基本范例 该指令的基本范例说明如下 例 1 Introduce a new error number in a glue system Note The new error variable must be declared with the initial value 1 VAR errnum ERR GLUEFLOW 1 Book the new RAPID system error number BookErrNo ERR GLUEFLOW 变量 ERR GLUEFLOW 将被赋给一个空闲的系统错误号码 将在 RAPID 代码中使用 Use the new error number IF dil 0 THEN RAISE ERR GLUEFLOW ELSE ENDIF Error handling ERROR IF ERRNO ERR GLUEFLOW THEN ELSE ENDIF 如果数字输入 dil 是 0 新定制的错误号码将被提出并且系统错误变量 ERRNO 将被设定到新定制的错误 号码 这些用户产生的错误的错误处理然后可以像平常一样在错误处理器中处理 项目 BookErrNo ErrorName ErrorName 数据类型 errnum 新的 RAPID 系统错误变量名称 限制 新的错误变量不可以像程序变量一样被声明 新的错误变量必须带初始值 1 声明 这就给出一个信息 该错误应该是一个 RAPID 系统错误 语法 BookErrNo ErrorName 相关信息 相关信息相关信息参看参看 错误处理RAPID 参考手册 RAPID 概述 基本特性部分 错误恢复 错误号码Errnum 错误号码 第 941 页 调用一个错误处理器RAISE 调用一个错误处理器 第 303 页 1 9 Break 跳出程序执行跳出程序执行 用途 Break 用来在程序执行中制造一个立即跳出 为了 RAPID 程序代码调试的目的 基本范例 该指令的基本范例说明如下 例 1 Break 程序执行停止 为了调试目的的分析变量 数值等成为可能 程序执行 该指令立即停止程序执行 不用等机器人或者外部轴到达他们编程的当时运动的目的点 程序执行然后能 从下一条指令重新开始 如果在一些事件程序中有 Break 指令 程序的执行将被打断 并且没有停止事件程序将被执行 下次同一 事件发生的时候事件程序将从开头执行 语法 Break 相关信息 相关信息相关信息参看参看 程序活动停止Stop 停止程序执行 第 438 页 致命错误后停止EXIT 终止程序执行 第 92 页 终止程序执行EXIT 终止程序执行 第 92 页 只停止机器人运动StopMove 停止机器人运动 第 442 页 1 10 CallByVar 通过一个变量调用程序通过一个变量调用程序 用途 CallByVar Call By Variable 可以使用一个特定的名称 例如 proc name1 proc name2 proc name3 proc namex 通过一个变量调用程序 基本范例 该指令的基本范例说明如下 也可参照第 28 页更多范例 例 1reg1 2 CallByVar proc reg1 程序 proc2 被调用 项目 CallByVar Name Number Name 数据类型 字符串 程序名称的第一部分 例如 proc name Number 数据类型 数字 程序号码的数字数值 该数值将被转换成一个字符串 给出程序名称的第二部分 例如 1 数值必须是 一个正整数 更多范例 如何作出程序调用的动态和静态选择的更多范例 例 1 程序调用的静态选择 TEST reg1 CASE 1 Lf door door loc Case 2 Rf door door loc Case 3 Lr door door loc Case 4 Rr door door loc DEFAULT EXIT ENDTEST 取决于寄存器 reg1 的数值是 1 2 3 或者 4 来调用不同的程序来对选择的门完成合适的工作 门位于项 目 door loc 例 2 用 RAPID 语法动态选择程序调用 Reg1 2 proc NumToStr reg1 0 door loc 程序 proc2 和项目 door loc 被调用 限制 所有程序必须有一个特定的名称 例如 proc1 proc2 proc3 例 3 用 CallByVar 动态选择程序调用 Reg1 2 CallByVar proc reg1 程序 proc2 被调用 限制 所有程序必须有一个特定的名称 如 proc1 proc2 proc3 并且没有项目可以被使 用 限制 只能被用来调用不带参数的程序 不能用来调用 LOCAL 本地 程序 CallByVar 的执行比普通的程序调用要占用多一点的时间 错误处理 如果 Number 项目小于零或者不是一个整数 系统参数 ERRNO 被设成 ERR ARGVALERR 如果相关到一个未知的程序 系统参数 ERRNO 被设成 ERR REFUNKPRC 如果程序调用错误 不是程序错误 系统参数 ERRNO 被设成 ERR CALLPROC 这些错误可以在错误处理器中进行处理 语法 CallByVar 名称 号码 相关信息 相关信息参照 调用程序RAPID 参考手册 RAPID 概述 基本特性部分 程序 操作员手册 IRC5 和 FlexPendant 1 11 CancelLoad 取消模块的加载取消模块的加载 用途 CancelLoad 用来取消用 StartLoad 指令正在加载或者已经加载的模块 CancelLoad 只能用在指令 StartLoad 和 WaitLoad 之间 基本范例 该指令的基本范例说明如下 也可参见第 30 页的更多范例 例 1ConcelLoad load1 加载 load1 被取消 项目 CancelLoad LoadNo LoadNo 数据类型 loadsession 相关到被 StartLoad 所开始的加载系列 更多范例 如何使用该指令的更多范例说明如下 例 1VAR loadsession load1 StartLoad HOME File PART B MOD load1 IF CancelLoad Load1 StartLoad HOME File PART C MOD load1 ENDIF WaitLoad load1 指令 CancelLoad 将取消正在进行的 PART B MOD 模块的加载 而要使加载 PART C MOD 成为可能 错误处理 如果项目 LoadNo 指定的变量没有在使用 也就是说没有进行加载 系统变量 ERRNO 将设为 ERR LOADNO NOUSE 这个错误然后在错误处理器中可能被处理 语法 CancelLoad LoadNo 相关信息 相关信息相关信息参照参照 在执行过程中加载一个程序模块StartLoad 在执行过程中加载一个程序模块 第 410 页 把加载的模块连接到任务中WaitLoad 把加载的模块连接到任务中 第 566 页 加载系列Loadsession 程序加载系列 第 968 页 加载一个程序模块Load 在执行过程中加载一个程序模块 第 182 页 卸载一个程序模块Unload 在执行过程中卸载一个程序模块 第 553 页 接受未解决的相关技术相关手册 系统参数 标题控制器部分 任务类型 检查未解决的相关 1 12 CirPathMode 在圆形路径过程中工具再定位在圆形路径过程中工具再定位 用途 CirPathMode 圆形路径模式 使在圆周运动中选择不同的模式再定位工具成为可能 该指令只能被使用在主任务 T ROB1 或者如果在多运动系统中 使用在运动任务中 基本范例 该指令的基本范例说明如下 例 1CirPathMode PathFrame 在所有成功的圆形运行过程中 从开始点到 ToPoint 的实际路径格式中工具再定位的标准模式 这是系统 中的缺省值 例 2CirPathMode ObjectFrame 在所有成功的圆形运行过程中 从开始点到 ToPoint 的实际对象格式中工具再定位的修改的模式 例 3CirPathMode CirPointOri 在所有成功的圆形运行过程中 从开始点通过程序中的 CirPoint 再定位到 ToPoint 的工具再定位的标准模 式 描述 PathFrame 以下表格中的图显示了标准模式 PathFrame 下的工具再定位 说明说明描述描述 箭头显示了工具从腕部中心点到工具中心点也就是编 程点 腕部中心点的路径在图中用虚线点出 PathFrame 模式使工具绕圆柱得到相同的角度变得容 易 机器人手腕将不能突破 CirPoint 中编程的方向 以下表格中的图显示了用固定工具方向的标准模式 PathFrame 的使用 说明说明描述描述 该图片显示了用倾斜工具和 PathFrame 模式在圆的中 心获得的工具方向 和下图中使用 ObjectFrame 模式的相比较 ObjectFrame 下表中的图显示了修改的模式 ObjectFrame 和固定工具方向的使用 说明说明描述描述 该图片显示了用倾斜工具和 ObjectFrame 模式在圆的 中心获得的工具方向 该模式将做出和 MoveL 用相同方法的工具的线性再定 位 机器人手腕将不能穿过 CirPoint 中编程的方向 和上图中使用 PathFrame 模式的相比较 CirPointOri 以下表格中的图显示了标准模式 PathFrame 和修改的模式 CirPointOri 之间不同的工具再定位 说明说明描述描述 箭头显示了工具从腕部中心点到工具中心点也就是编 程点 腕部中心点的不同路径在图中用虚线点出 CirPointOri 模式使机器人手腕突破 CirPoint 中编程的 方向 项目 CirPathMode PathFrame ObjectFrame CirPointOri PathFrame 数据类型 switch 在圆周运动过程中 工具的再定位在实际路径格式中的从开始点方向到 ToPoint 方向连续完成 这是系统 中的标准模式 ObjectFrame 数据类型 switch 在圆周运动中 工具的再定位在实际对象格式中从开始点方向到 ToPoint 方向连续完成 CirPointOri 数据类型 switch 在圆周运动中 工具的再定位在实际对象格式中从开始点方向到程序中 CirPoint 方向再到 ToPoint 方向连 续完成 只有编程的 CirPointMode 没有任何转换导致和 CirPointMode PathFrame 相同的结果 程序执行 特定的圆形工具再定位模式应用于下一个执行的机器人任意类型的圆周运动 MoveC SearchC TriggC MoveCDO MoveCSync ArcC PaintC 并且直到新的 CirPathMode 或者 旧的 CirPathReori 指令执行之前都有效 标准的圆形再定位程序 CirPathMode PathFrame 在以下情况下自动设定 冷启动 当加载一个新的程序 当从开头执行程序时 限制 该指令只影响圆周运动 当使用 CirPointOri 模式时 CirPoint 必须在点 A 和点 B 之间 按照下图是圆周运动在 CirPoint 突破程序中 的方向 如果工作在手腕单一点区域附近并且 SingArea Wrist 指令已经被执行 指令 CirPathMode 将没有影响 因 为系统那时候选择另一种圆周运动 关节插补 的工具再定位模式 该指令代替旧的指令 CirPathReori 即使在将来也可以使用 但是在文档中不再介绍 语法 CirPathMode PathFrame ObjectFrame CirPointOri 相关信息 相关信息相关信息参照参照 插补RAPID 参考手册 RAPID 概述 运动和 I O 原理部分 程序执行过程中的定位 运动设定数据Motsetdata 运动设定数据 第 971 页 圆周运动指令MoveC 使机器人圆周运动 第 209 页 1 13 Clear 清除数值清除数值 用途 Clear 用来清除一个数字变量或恒量 即把它设为零 基本范例 该指令的基本范例说明如下 例 1Clear reg1 Reg1 被清除 即 reg1 0 项目 Clear Name Name 数据类型 数字 即将清除的变量或恒量的名称 语法 Clear Name 相关信息 相关信息相关信息参看参看 给变量加 1Incr 给变量加 1 第 117 页 使变量减 1Decr 变量减 1 第 71 页 给变量增加任何值Add 增加数字数值 第 16 页 使用任意值改变数据 给变量赋值 第 19 页 1 14 ClearIOBuff 清除串行通道的输入缓冲器清除串行通道的输入缓冲器 用途 ClearIOBuff 用来清理串行通道的输入缓冲器 所有来自串口通道的缓冲的字母将被丢弃 基本范例 该指令的基本范例说明如下 例 1VAR iodev channel2 Open com2 channel2 Bin ClearIOBuff channel2 WaitTime 0 1 相关到 channel2 的串行通道的输入缓冲器被清空 等待时间保证足够时间来完成清空操作 项目 ClearIOBuff IODevice IODevice 数据类型 iodev 将被清空缓冲器的串行通道的名称 相关 程序执行 所有输入串行通道的缓冲器的字母被清除 下一个读取指令将等待来自通道的新的指令 限制 该指令只能被串行通道使用 不等待操作完成的通知 在每一次使用中 推荐在指令后使用 0 1 秒的等待 时间 来给操作足够的时间 错误处理 如果要在一个文件上使用该指令 清除文件 系统变量 ERRNO 将被设成 ERR FILEACC 该错误可以 在错误处理器中处理 语法 ClearIOBuff IODevice 相关信息 相关信息相关信息参看参看 打开一个串行通道RAPID 参考手册 RAPID 概述 RAPID 摘要部分 通讯 1 15 ClearPath 清除当前路径清除当前路径 用途 ClearPath 清除当前运动路径层次上 基本层次或者 StorePath 层次 的整个运动路径 运动路径是指在 ClearPath 执行的时候 从 RAPID 已经执行但是机器人没有完成的运动开始所有的运动段 落 在 ClearPath 指令执行前机器人必须在停止点位置 或者用 StopMove 指令停止机器人 基本范例 该指令的基本范例说明如下 在下列程序例子中 机器人从初始位置到达 p1 点 在点 px 信号 dil 将指示有效负载被丢掉 在陷阱程 序 gohome 中 继续执行 机器人将在 px 停止运动 开始跳出 路径将被清除 机器人将移动到初始位置 错误将被提高到调用 minicycle 程序 并且整个用户定义的程序循环 proc1 proc2 将被再次从开始执行 例 1VAR intnum drop payload CONST errnum ERR DROP LOAD 1 PROC minicycle BookErrNo ERR DROP LOAD Proc1 ERROR ERR DROP LOAD RETRY ENDPROC PROC proc1 proc2 ENDPROC PROC proc2 CONNECT drop payload WITH gohome IsignalDI Single dil 1 drop payload MoveL p1 v500 fine gripper Idelete drop payload ENDPROC TRAP gohome StopMove Quick ClearPath Idelete drop payload MoveL home v500 fine gripper RAISE ERR DROP LOAD ERROR RAISE ENDTROP 如果正在运行相同的程序 但是在陷阱程序 gohome 中没有使用 StopMove 和 ClearPath 在回到初始位置 home 之前机器人将继续运动到 p1 位置 如果编程时在 MoveL home 中使用飞点 zone 代替停止点 fine 在调用 minicycle 程序中的错误处理 器的过程中 运动将会继续并且直到运动准备好 语法 ClearPath 相关信息 相关信息相关信息参看参看 停止机器人运动StopMove 停止机器人运动 第 442 页 错误恢复RAPID 参考手册 RAPID 概述 RAPID 摘要部分 错误 恢复 RAPID 参考手册 RAPID 概述 基本特性部分 错误恢 复 1 16 ClearRawBytes 清除原始字节数据的内容清除原始字节数据的内容 用途 ClearRawBytes 用来把原始字节变量的所有内容设为 0 基本范例 指令的基本范例说明如下 例 1VAR rawbytes raw data VAR num integer 8 VAR num float 13 4 PackRawBytes integer raw data 1 IntX DINT PackRawBytes float raw data RawBytesLen raw data 1 Float4 ClearRawBytes raw data FromIndex 5 在前 4 个字节里 放入 integer 的数值 从索引 1 开始 从索引 5 开始的后 4 个字节里放入了 float 的数值 例子中的最后一个指令清除了 Raw data 的内容 从索引 5 开始 例如 float 将被清除 但是 integer 被保 存在 raw data 中 当前 Raw data 中有效字节的长度被设为 4 项目 ClearRawbytes RawData FromIndex RawData 数据类型 原始字节 RawData 是将被清除的数据容器 FromIndex 数据类型 数字 带有指定的 FromIndex 将从 FromIndex 开始清除 RawData 的内容 一直到头的所有东西都被清除 如果没有指定 FromIndex 从索引 1 开始的所有数据将被清除 程序执行 在指定的变量中 从索引 1 缺省 开始或者从 FromIndex 开始的数据被复位到 0 指定变量中有效字节的当前长度被设为 0 缺省 或者如果 FromIndex 使用的话为 FromIndex 1 语法 ClearRawBytes RawData FromIndex 相关信息 相关信息相关信息参看参看 原始字节的数据Rawbytes 原始数据 第 994 页 得到原始字节数据的长度RawBytesLen 得到原始字节数据的长度 第 806 页 复制原始字节数据的内容CopyRawBytes 复制原始字节数据的内容 第 58 页 将设备网标题打包进原始字节数据PackDNHeader 将设备网标题打包进原始字节数据 第 258 页 将数据打包进原始字节数据PackRawBytes 将数据打包进原始字节数据 第 261 页 写入原始字节数据WriteRawBytes 写入原始字节数据 第 604 页 读取原始字节数据ReadRawBytes 读取原始字节数据 第 319 页 从原始字节数据将数据拆包UnpackRawBytes 从原始字节数据中将数据拆包 第 556 页 1 17 ClkReset 复位一个用来计时的时钟复位一个用来计时的时钟 用途 ClkReset 用来复位一个用来计时的停止监视功能的时钟 该指令在使用时钟指令之前使用 用来确保它归 零 基本范例 该指令的基本范例说明如下 例 1CleReset Clock1 时钟 Clock1 被复位 项目 ClkReset Clock Clock 数据类型 时钟 要复位的时钟的名称 程序执行 当时钟被复位 它被设为 0 如果时钟正在运行 它将被停止然后复位 语法 ClkReset Clock 相关信息 相关信息参看 其他时钟指令RAPID 参考手册 RAPID 概述 RAPID 摘要部分 系统 和时间 1 18 ClkStart 开始一个用来计时的时钟开始一个用来计时的时钟 用途 ClkStart 用来开始一个用于计时的停止 监视功能的时钟 基本范例 该指令的基本范例说明如下 也可参看第 43 页的更多范例 例 1ClkStart Clock1 时钟 Clock1 开始计时 项目 ClkStart Clock Clock 数据类型 时钟 将要开始计时的时钟的名称 程序执行 当时钟开始计时 它将运行并且继续计秒直到它停止 当让它开始计时的程序停止的时候 时钟继续运行 但是 你想要计时的事件可能不再有效 例如 如果程序测量输入的等待时间 当程序停止的时候 输入已经 被接收 在这种情况下 当程序停止的时候 程序将不能 看到 事件的发生 当机器人电源断电的时候 只要备份电池保留包含时钟变量的程序 始终将继续运行 如果时钟正在运行 它可以被读取 停止或者复位 更多范例 该指令的更多范例说明如下 例 1VAR clock clock2 VAR num time ClkReset clock2 ClkStart clock2 WaitUntil dil 1 ClkStop clock2 Time ClkRead clock2 Dil 变成 1 的等待时间被测量 错误处理 如果时钟运行了 4 294 967 秒 49 天 17 个小时 2 分钟 47 秒 它将超载并且系统变量 ERRNO 被设成 ERR OVERFLOW 该错误可以在错误处理器中处理 语法 ClkStart Clock 相关信息 相关信息相关信息描述在描述在 其他时钟指令RAPID 参考手册 RAPID 概述 RAPID 摘要部分 系统和时间 1 19 ClkStop 停止一个用来计时的时钟停止一个用来计时的时钟 用途 ClkStop 用来停止一个用于计时的停止 监视功能的时钟 基本范例 该指令的基本范例说明如下 ClkStop Clock1 时钟 Clock1 停止计时 项目 ClkStop Clock Clock 数据类型 时钟 将要停止计时的时钟的名称 程序执行 当时钟停止计时 它将停止运行 如果时钟被停止 它可以被读取 再次开始或者复位 错误处理 如果时钟运行了 4 294 967 秒 49 天 17 个小时 2 分钟 47 秒 它将超载并且系统变量 ERRNO 被设成 ERR OVERFLOW 该错误可以在错误处理器中处理 语法 ClkStop Clock 相关信息 相关信息相关信息参看参看 其他时钟指令RAPID 参考手册 RAPID 概述 RAPID 摘要部分 系统和时间 更多例子ClkStart 开始一个用来计时的时钟 第 43 页 1 20 Close 关闭一个文件或者串行通道关闭一个文件或者串行通道 用途 用途 Close 用来关闭一个文件或者串行通道 基本范例 基本范例 该指令的基本范例说明如下 例 1Close channel2 被 channel2 相关到的串行通道被关闭 项目 项目 Close IODevice IODevice 数据类型 iodev 将要被关闭的文件或者串行通道的名称 相关 程序执行 程序执行 指定的文件或者串行通道被关闭并且在读或写之前必须重新打开 如果它已经被关闭 该指令被忽略 语法 语法 Close IODevice 相关信息 相关信息 相关信息相关信息参看参看 打开一个文件或者串行通道RAPID 参考手册 RAPID 概述 RAPID 摘要部分 通讯 1 21 CloseDir 关闭一个目录关闭一个目录 用途 CloseDir 用来关闭一个目录 和 OpenDir 达到平衡 基本范例 该指令的基本范例说明如下 例 1PROC 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 页 1 22 comment 注释注释 用途 comment 只是用来使程序容易理解 对程序的执行没有影响 基本范例 该指令的基本范例说明如下 例 1 Goto the position above pallet MoveL p100 v500 z20 tool1 一个注释被插入程序 使程序更容易理解 项目 Comment Comment 文本字符串 任何文本 程序执行 执行该指令的时候不会发生什么 语法 EBNF 相关信息 相关信息相关信息参看参看 注释中允许的字母RAPID 参考手册 RAPID 概述 基本特征部分 基本元素 数据或者程序声明中的注释RAPID 参考手册 RAPID 概述 基本特征部分 基本元素 1 23 Compact IF 如果满足一个条件 那么 如果满足一个条件 那么 执行一个指令 执行一个指令 用途 如果满足一个给定的条件 只有将执行一个单一指令的时候才使用 Compact IF 如果不同的指令将被执行 取决于给定的条件是否满足 使用 IF 指令 基本范例 该指令的基本范例说明如下 例 1IF reg1 5 GOTO next 如果 reg1 大于 5 程序继续从下一个标签执行 例 2IF conter 10 Set do1 如果 conter 10 那么 do1 信号被设置 项目 IF Condition Condition 数据类型 bool 指令的执行必须满足的条件 语法 EBNF IF 相关信息 相关信息相关信息参看参看 条件 逻辑表达式 RAPID 参考手册 RAPID 概述 基本特性部分 表达式 IF 带多个指令IF 如果一个条件满足 那么 否则 第 115 页 1 24 ConfJ 在关节运动过程中控制配置在关节运动过程中控制配置 用途 ConfJ 配置关节 用来指定在关节运动过程中是否控制机器人配置 如果不控制 机器人有时候会使用 与程序中不同的配置 ConfJ Off 时 机器人不能转变主轴配置 它将寻找和当前途径具有相同主轴配置的途径 但是它移动到轴 4 和轴 6 的最近的腕配置 该指令只能使用在主任务中 或者在多运动系统中 使用在运动任务中 基本范例 该指令的基本范例说明如下 例 1ConfJ Off MoveJ v1000 fine tool1 机器人移动到编程位置和方向 如果该位置可以用多种不同的方式到达 用多种轴配置 将选择最近的可 能位置 例 2ConfJ 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 页 1 25 ConfL 在线性运动过程中监视配置在线性运动过程中监视配置 用途 ConfJ 配置关节 用来指定在线性或者圆周运动过程中是否监视机器人配置 如果不监视 执行时候的 配置可能和程序中的配置不一样 当模式改变为关节运动的时候 也可能导致不可预知的清扫机器人运动 该指令只能使用在主任务中 或者在多运动系统中 使用在运动任务中 注意 在 IRB5400 机器人中 无论在 ConfL 中怎么指定 监视总是关闭的 基本范例 该指令的基本范例说明如下 例 1ConfL On MoveL v1000 fine tool1 当从当前位置不能到达程序中的配置时 程序执行停止 例 2SingArea Wrist ConfL On MoveL v1000 fine tool1 机器人运动到编程位置 方向和腕部轴配置 如果不能到达 程序执行停止 例 3ConfL Off MoveJ v1000 fine tool1 机器人移动到程序中的位置和方向 但是到达最近的可能轴配置 这可能和程序中的轴位置不同 项目 ConfL On Off On 数据类型 switch 机器人配置被监视 Off 数据类型 switch 机器人配置不被监视 程序执行 在线性或者圆周运动过程中 机器人通常运动到拥有最接近的可能轴配置的程序中的位置和方向 如果选 择了项目 On 或者没有选择项目 如果有从当前位置不能到达程序中的位置的风险 程序执行立即停止 然而 虽然腕部轴可能继续朝错误的配置运动 仍旧可以重启程序 在停止点 机器人将检查所有轴的配置是 否都到达 不仅仅是腕部轴 如果也使用了 SingArea Wrist 机器人总是运动到程序中的腕部轴配置 并且在停止点将检查剩余的轴配 置 如果选择了项目 Off 就没有监视 对于 ConfL On 和 Off 避免问题的一个简单的规则就是插入中间点 使点之间的每一个轴的运动小于 90 度 更精确地

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论