第5章ABB机器人的程序编程第1页共10页5.6RAPID程序指令与功能简述5.6.1程序执行的控制1.程序的调用指令说明ProcCall调用例行程序CallByVar通过带变量的例行程序名称调用例行程序RETURN返回原例行程序2.例行程序内的逻辑控制指令说明CompactIF如果条件满足,就执行下一条指令IF当满足不同的条件时,执行对应的程序FOR根据指定的次数,重复执行对应的程序WHILE如果条件满足,重复执行对应的程序TEST对一个变量进行判断,从而执行不同的程序GOTO跳转到例行程序内标签的位置Lable跳转标签3.停止程序执行指令说明Stop停止程序执行EXIT停止程序执行并禁止在停止处再开始Break临时停止程序的执行,用于手动调试SystemStopAction停止程序执行与机器人运动ExitCycle中止当前程序的运行并将程序指针PP复位到主程序的第一条指令。如果选择了程序连续运行模式,程序将从主程序的第一句重新执行。5.6.2变量指令1.赋值指令指令说明:=对程序数据进行赋值2.等待指令指令说明WaitTime等待一个指定的时间,程序再往下执行WaitUntil等待一个条件满足后,程序继续往下执行第5章ABB机器人的程序编程第2页共10页指令说明WaitDI等待一个输入信号状态为设定值WaitDO等待一个输出信号状态为设定值3.程序注释指令说明Comment对程序进行注释4.程序模块加载指令说明Load从机器人硬盘加载一个程序模块到运行内存UnLoad从运行内存中卸载一个程序模块StartLoad在程序执行的过程中,加载一个程序模块到运行内存中WaitLoad当StartLoad使用后,使用此指令将程序模块连接到任务中使用CancelLoad取消加载程序模块CheckProgRef检查程序引用Save保存程序模块EraseModule从运行内存删除程序模块5.变量功能指令说明TryInt判断数据是否是有效的整数功能说明OpMode读取当前机器人的操作模式RunMode读取当前机器人程序的运行模式NonMotionMode读取程序任务当前是否无运动的执行模式Dim获取一个数组的维数Present读取带参数例行程序的可选参数值IsPers判断一个参数是不是可变量IsVar判断一个参数是不是变量6.转换功能指令说明StrToByte将字符串转换为指定格式的字节数据ByteToStr将字节数据转换为字符串5.6.3运动设定1.速度设定功能说明MaxRobSpeed获取当前型号机器人可实现的最大TCP速度第5章ABB机器人的程序编程第3页共10页指令说明VelSet设定最大的速度与倍率SpeedRefresh更新当前运动的速度倍率AccSet定义机器人的加速度WorldAccLim设定大地坐标中工具与载荷的加速度PathAccLim设定运动路径中TCP的加速度2.轴配置管理指令说明ConfJ关节运动的轴配置控制ConfL线性运动的轴配置控制3.奇异点的管理指令说明SingArea设定机器人运动时,在奇异点的插补方式4.位置偏置功能指令说明PDispOn激活位置偏置PDispSet激活指定数值的位置偏置PDispOff关闭位置偏置EOffsOn激活外轴偏置EOffsSet激活指定数值的外轴偏置EOffsOff关闭外轴位置偏置功能说明DefDFrame通过三个位置数据计算出位置的偏置DefFrame通过六个位置数据计算出位置的偏置ORobT从一个位置数据删除位置偏置DefAccFrame从原始位置和替换位置定义一个框架5.软伺服功能指令说明SoftAct激活一个或多个轴的软伺服功能SoftDeact关闭软伺服功能6.机器人参数调整功能指令说明TuneServo伺服调整TuneReset伺服调整复位PathResol几何路径精度调整CirPathMode在圆弧插补运动时,工具姿态的变换方式第5章ABB机器人的程序编程第4页共10页7.空间监控管理指令说明WZBoxDef定义一个方形的监控空间WZCylDef定义一个圆柱形的监控空间WZSphDef定义一个球形的监控空间WZHomeJointDef定义一个关节轴坐标的监控空间WZLimJointDef定义一个限定为不可进入的关节轴坐标监控空间WZLimSup激活一个监控空间并限定为不可进入WZDOSet激活一个监控空间并与一个输出信号关联WZEnable激活一个临时的监控空间WZFree关闭一个临时的监控空间注:以上这些功能需要选项“Worldzones”配合。5.6.4运动控制1.机器人运动控制指令说明MoveCTCP圆弧运动MoveJ关节运动MoveLTCP线性运动MoveAbsJ轴绝对角度位置运动MoveExtJ外部直线轴和旋转轴运动MoveCDOTCP圆弧运动的同时触发一个输出信号MoveJDO关节运动的同时触发一个输出信号MoveLDOTCP线性运动的同时触发一个输出信号MoveCSyncTCP圆弧运动的同时执行一个例行程序MoveJSync关节运动的同时执行一个例行程序MoveLSyncTCP线性运动的同时执行一个例行程序2.搜索功能指令说明SearchCTCP圆弧搜索运动SearchLTCP线性搜索运动SearchExtJ外轴搜索运动3.指定位置触发信号与中断功能指令说明TriggIO定义触发条件在一个指定的位置触发输出信号TriggInt定义触发条件在一个指定的位置触发中断程序TriggCheckIO定义一个指定的位置进行I/O状态的检查TriggEquip定义触发条件在一个指定的位置触发输出信号,并对信号响应的延迟进行补偿设定第5章ABB机器人的程序编程第5页共10页指令说明TriggRampAO定义触发条件在一个指定的位置触发模拟输出信号,并对信号响应的延迟进行补偿设定TriggC带触发事件的圆弧运动TriggJ带触发事件的关节运动TriggL带触发事件的直线运动TriggLIOs在一个指定的位置触发输出信号的线性运动StepBwdPath在RESTART的事件程序中进行路径的返回TriggStopProc在系统中创建一个监控处理,用于在STOP和QSTOP中需要信号复位和程序数据复位的操作TriggSpeed定义模拟输出信号与实际TCP速度之间的配合4.出错或中断时的运动控制指令说明StopMove停止机器人运动StartMove重新启动机器人运动StartMoveRetry重新启动机器人运动及相关的参数设定StopMoveReset对停止运动状态复位,但不重新启动机器人运动StorePath*存储已生成的最近路径RestoPath*重新生成之前存储的路径ClearPath在当前的运动路径级别中,清空整个运动路径PathLevel获取当前路径级别SyncMoveSuspend*在StorePath的路径级别中暂停同步坐标的运动SyncMoveResume*在StorePath的路径级别中返回同步坐标的运动*:这些功能需要选项“Pathrecovery”配合。5.外轴的控制指令说明DeactUnit关闭一个外轴单元ActUnit激活一个外轴单元MechUnitLoad定义外轴单元的有效载荷功能说明GetNextMechUnit检索外轴单元在机器人系统中的名字IsMechUnitActive检查一个外轴单元状态是关闭/激活6.独立轴控制指令说明IndAMove将一个轴设定为独立轴模式并进行绝对位置方式运动IndCMove将一个轴设定为独立轴模式并进行连续方式运动IndDMove将一个轴设定为独立轴模式并进行角度方式运动IndRMove将一个轴设定为独立轴模式并进行相对位置方式运动IndReset取消独立轴模式第5章ABB机器人的程序编程第6页共10页注:以上这些功能需要选项“Independentmovement”配合。功能说明IndInpos检查独立轴是否已到达指定位置IndSpeed检查独立轴是否已到达指定的速度注:以上这些功能需要选项“Independentmovement”配合。7.路径修正功能指令说明CorrCon连接一个路径修正生成器CorrWrite将路径坐标系统中的修正值写到修正生成器CorrDiscon断开一个已连接的路径修正生成器CorrClear取消所有已连接的路径修正生成器注:以上这些功能需要选项“PathoffsetorRobotWare-Arcsensor”配合。功能说明CorrRead读取所有已连接的路径修正生成器的总修正值注:以上这些功能需要选项“PathoffsetorRobotWare-Arcsensor”配合。8.路径记录功能指令说明PathRecStart开始记录机器人的路径PathRecStop停止记录机器人的路径PathRecMoveBwd机器人根据记录的路径作后退动作PathRecMoveFwd机器人运动到执行PathRecMoveBwd这个指令的位置上注:以上这些功能需要选项“Pathrecovery”配合。功能说明PathRecValidBwd检查是否已激活路径记录和是否有可后退的路径PathRecValidFwd检查是否有可向前的记录路径注:以上这些功能需要选项“Pathrecovery”配合。9.输送链跟踪功能指令说明WaitWObj等待输送链上的工件坐标DropWObj放弃输送链上的工件坐标注:以上这些功能需要选项“Conveyortracking”配合。10.传感器同步功能指令说明WaitSensor将一个在开始窗口的对象与传感器设备关联起来SyncToSensor开始/停止机器人与传感器设备的运动同步DropSensor断开当前对象的连接第5章ABB机器人的程序编程第7页共10页注:以上这些功能需要选项“Sensorsynchronization”配合。11.有效载荷与碰撞检测指令说明MotionSup*激活/关闭运动监控LoadId工具或有效载荷的识别ManLoadId外轴有效载荷的识别*:此功能需要选项“Collisiondetection”配合。12.关于位置的功能功能说明Offs对机器人位置进行偏移RelTool对工具的位置和姿态进行偏移CalcRobT从jointtarget计算出robtargetCPos读取机器人当前的X、Y、ZCRobT读取机器人当前的robtargetCJointT读取机器人当前的关节轴角度ReadMotor读取轴电动机当前的角度CTool读取工具坐标当前的数据CWObj读取工件坐标当前的数据MirPos镜像一个位置CalcJointT从robtarget计算出jointtargetDistance计算两个位置的距离PFRestart检查当路径因电源关闭而中断的时候CSpeedOverride读取当前使用的速度倍率5.6.5输入/输出信号的处理1.对输入/输出信号的值进行设定指令说明InvertDO对一个数字输出信号的值置反PulseDO数字输出信号进行脉冲输出Reset将数字输出信号置为0Set将数字输出信号置为1SetAO设定模拟输出信号的值SetDO设定数字输出信号的值SetGO设定组输出信号的值2.读取输入/输出信号值功能说明AOutput读取模拟输出信号的当前值DOutput读取数字输出信号的当前值第5章ABB机器人的程序编程第8页共10页功能说明GOutput读取组输出信号的当前值TestDI检查一个数字输入信号已置1ValidIO检查I/O信号是否有效指令说明WaitDI等待一个数字输入信号的指定状态WaitDO等待一个数字输出信号的指定状态WaitGI等待一个组输入信号的指定值WaitGO等待一个组输出信号的指定值WaitAI等待一个模拟输入信号的指定值WaitAO等待一个模拟输出信号的指定值3.I/O模块的控制指令说明IODisable关闭一个I/O模块IOEnable开启一个I/O模块5.6.6通信功能1.示教器上人机界面的功能指令说明TPErase清屏TPWrite在示教器操作界面上写信息ErrWrite在示教器事件日志中写报