JA机器人高级编程Word格式.docx
- 文档编号:21098929
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:24
- 大小:27.57KB
JA机器人高级编程Word格式.docx
《JA机器人高级编程Word格式.docx》由会员分享,可在线阅读,更多相关《JA机器人高级编程Word格式.docx(24页珍藏版)》请在冰豆网上搜索。
出错处理常用指令
指令
说明
EXIT
当出现无法处理时将程序停止执行
RAISE
当定制出错处理时,用于激活出错处理
RETRY
再次执行激活出错处理的指令
TRYNEXT
执行激活出错处理的下一句指令
RETURN
回到之前的子程序
ResetRestryCount
复位重试的次数
*错误处理中最好不要放运动指令
1.进入“程序编辑器”,新建例行程序“rErrorHandle”,在“错误处理程序”上打勾。
2.添加WaitDI指令,选择MaxTime可选变量,值设置为3。
3.添加写屏指令TPWrite,写一段信息。
4.编辑出错处理,在ERROR下面添加处理指令(打开电子参考手册“技术参考手册”-“RAPID手册”下的《RAPIDInstructions…》说明书,在Instruction章节找到WAITDI指令的说明,找到MaxTime找到此指令触发的错误标示符)。
5.添加IF指令,条件为“ERRNO=ERR_WAIT_MAXTIME”。
6.THEN中可填写错误处理的指令,在此处我们填写一个写屏指令。
7.THEN中添加TRYNEXT指令,继续执行激活出错指令的下一条指令。
8.2.4TCP轨迹限制加减速度的设定
我们可以对机器人运动轨迹的加减速度进行限制来满足一些特殊应用的需要。
如机器人搬运高温液态金属进行浇注的动作,为了防止液体的溢出,这个时候我们就需要对加减速度进行限定。
示例:
•PathAccLimFALSE,FALSE;
TCP的加减速度被设定为最大值(一般默认情况)
•PathAccLimTRUE\AccMax:
=4,TRUE\DecelMax:
=4;
TCP的加减速度被限定在4m/s2
•MoveLp1,v1000,fine,tool0;
•PathAccLimTRUE\AccMax:
=4,FALSE;
加速度被限定为4m/s2
•MoveLp2,v1000,z30,tool0;
•MoveLp3,v1000,fine,tool0;
•PathAccLimFALSE,FALSE;
TCP的加减速度被设定为最大值
限制值最小只能设定为0.5m/s2
8.2.5WorldZone区域监控功能的使用
WorldZone是用于控制机器人在进入一个指定区域后停止或输出一个信号。
应用实例:
当两个机器人协同运动时设定保护区域。
在压铸机的开/合模区设定为WorldZone。
机器人进入了指定区域后,输出信号给外围设备。
•通过定义AB两点的位置来确定进行监控的区域。
•可以定义的WorldZone形状:
矩形、圆柱形、关节位置型。
WorldZone监控的是当前的TCP的坐标值,监控的坐标区域是基于当前使用的工件坐标WOBJ和工具坐标TOOLDATA的。
一定要使用EventRoutine的POWER_ON在启动系统的时候运行一次,就会开始自动监控了。
1.使用WorldZone必须添加WorldZone的选项:
608-1WorldZone。
在“ABB”-“系统信息”-“系统属性”-“控制模块”-“选项”中查看是否有WorldZone的选项。
2.在“手动操纵”界面选定要监控的工具。
3.编制EventRoutine对应的程序:
设置两个矩形对角点Pos1和Pos2,设定对应的坐标值;
使用WZBoxDef\Inside,shPos,Pos1,Pos2;
WZDOSet\Stat,wzPos\Inside,shPos,do1,1;
指令来设定WorldZone和关联的IO信号。
4.设定EventRoutine,与POWER_ON关联,电机上电时自动开启WorldZone功能。
8.2.6限定单轴运动范围的操作
目的:
因为工作环境或控制的需要,我们有时候会对单个轴进行运动范围的限定。
方法:
我们可以对单轴的上限和下限值进行设定。
设定的数据以弧度的方式进行表达。
(1弧度约等于57.3度)。
注意:
对单轴限定后,会使机器人的可到达范围变小。
1.进入“控制面板”-“配置”画面的“Motion”主题,双击“Arm”。
2.选择要限定的轴,进入。
3.设定UpperJointBound和LowerJointBound的值来设定单轴的上限和下限,单位为弧度(默认为±
180度,即±
3.14159),实际的值与设定值留有一定的余量。
4.进入手动操纵模式,当轴运动超出设定的范围后,就会报错。
8.2.7使用IO信号调用例行程序
为了简化控制和对整个系统的一体化控制,我们通常会遇到以下的这种情况:
操作员直接从人机界面直接调出机器人要执行的RAPID例行程序。
要实现这样的操作的设定方法:
人机界面将程序编号发给PLC。
PLC将编号发到机器人的组输入端。
编写对应的RAPID程序。
1.设定组输入gi1。
2.编写几个测试程序proc1()、proc2()和rSelectProg()。
rSelectProg用来判断调用那个程序。
3.rSelectProg内容如图:
使用CallByVar指令,“proc”为固定值,根据后面数字的不同,选择调用proc1或proc2。
4.对gi1的值进行仿真,运行rSelectProc时,会调用与gi1的值对应的程序
8.3知识链接-常用RAPID程序指令与功能表
ABB机器人提供了丰富的RAPID程序指令,方便了大家对程序的编制,同时也为复杂应用的实现提供了可能。
以下就按照RAPID程序指令、功能的用途进行了一个分类,并对每个指令的功能作一个说明,如需对指令的使用与参数进行详细的了解,可以查看ABB机器人随机光盘说明书中的详细说明。
8.3.1程序执行的控制
1.程序的调用
ProcCall
调用例行程序
CallByVar
通过带变量的例行程序名称调用例行程序
返回原例行程序
2.例行程序内的逻辑控制
CompactIF
如果条件满足,就执行一条指令
IF
当满足不同的条件时,执行对应的程序
FOR
根据指定的次数,重复执行对应的程序
WHILE
如果条件满足,重复执行对应的程序
TEST
对一个变量进行判断,从而执行不同的程序
GOTO
跳转到例行程序内标签的位置
Label
跳转标签
3.停止程序执行
Stop
停止程序执行
停止程序执行并禁止在停止处再开始
Break
临时停止程序的执行,用于手动调试
SystemStopAction
停止程序执行与机器人运动
ExitCycle
中止当前程序的运行并将程序指针PP复位到主程序的第一条指令。
如果选择了程序连续运行模式,程序将从主程序的第一句重新执行
8.3.2变量指令
1.赋值指令
:
=
对程序数据进行赋值
2.等待指令
WaitTime
等待一个指定的时间,程序再往下执行
WaitUntil
等待一个条件满足后,程序继续往下执行
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
将字节数据转换成字符串
8.3.3运动设定
1.速度设定
MaxRobSpeed
获取当前型号机器人可实现的最大TCP速度
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
在圆弧插补运动时,工具姿态的变换方式
7.空间监控管理
WZBoxDef
定义一个方形的监控空间
WZCylDef
定义一个圆柱形的监控空间
WZSphDef
定义一个球形的监控空间
WZHomeJointDef
定义一个关节轴坐标的监控空间
WZLimJointDef
定义一个限定为不可进入的关节轴坐标监控空间
WZLimSup
激活一个监控空间并限定为不可进入
WZDOSet
激活一个监控空间并与一个输出信号关联
WZEnable
激活一个临时的监控空间
WZFree
关闭一个临时的监控空间
8.3.4运动控制
1.机器人运动控制
MoveC
TCP圆弧运动
MoveJ
关节运动
MoveL
TCP线性运动
MoveAbsJ
轴绝对角度位置运动
MoveExtJ
外部直线轴和旋转轴运动
MoveCDO
TCP圆弧运动的同时触发一个输出信号
MoveJDO
关节运动的同时触发一个输出信号
MoveLDO
TCP线性运动的同时触发一个输出信号
MoveCSync
TCP圆弧运动的同时执行一个例行程序
MoveJSync
关节运动的同时执行一个例行程序
MoveLSync
TCP线性运动的同时执行一个例行程序
2.搜索功能
SearchC
TCP圆弧搜索运动
SearchL
TCP线性搜索运动
SearchExtJ
外轴搜索运动
3.指定位置触发信号与中断功能
TriggIO
定义触发条件在一个指定的位置触发输出信号
TriggInt
定义触发条件在一个指定的位置触发中断程序
TriggCheckIO
定义一个指定的位置进行I/O状态的检查
TriggEquip
定义触发条件在一个指定的位置触发输出信号,并对信号响应的延迟进行补偿设定
TriggRampAO
定义触发条件在一个指定的位置触发模拟信号,并对信号响应的延迟进行补偿设定
TriggC
带触发事件的圆弧运动
TriggJ
带触发事件的关节运动
TriggL
带触发事件的线性运动
TriggLIOs
在一个指定的位置触发输出信号的线性运动
StepBwdPath
在RESTART的事件程序中进行路径的返回
TriggStopProc
在系统中创建一个监控处理,用于在STOP和QSTOP中需要信号复位和程序数据复位的操作
TriggSpeed
定义模拟输出信号与实机TCP速度之间的配合
4.出错或中断时的运动控制
StopMove
停止机器人运动
StartMove
重新启动机器人运动
StarMoveRetry
重新启动机器人运动及相关的参数设定
StopMoveReset
对停止运动状态复位,但不重新启动机器人运动
StorePath
储存已生成的最近路径
RestoPath
重新生成之前储存的路径
ClearPath
在当前的运动路径级别中,清空整个运动路径
PathLevel
获取当前路径级别
SyncMoveSuspend
在StorePath的路径级别中暂停同步坐标的运动
SyncMoveResume
在StorePath的路径级别中重返同步坐标的运动
IsStopMoveAct
获取当前停止运动标志符
*这些功能需要选项“Pathrecovery”配合
5.外轴的控制
DeactUnit
关闭一个外轴单元
ActUnit
激活一个外轴单元
MechUnitLoad
定义外轴单元的有效载荷
GetNextMechUnit
检索外轴单元在机器人系统中的名字
IsMechUnitActive
检查一个外轴单元状态是关闭/激活
6.独立轴控制
IndAMove
将一个轴设定为独立轴模式并进行绝对位置方式运动
IndCMove
将一个轴设定为独立轴模式并进行连续方式运动
IndDMove
将一个轴设定为独立轴模式并进行角度方式运动
IndRMove
将一个轴设定为独立轴模式并进行相对位置方式运动
IndReset
取消独立轴模式
IndInpos
检查独立轴是否已到达指定位置
IndSpeed
检查独立轴是都已到达指定的速度
注:
这些功能需要选项“Independentmovement”配合
7.路径修正功能
CorrCon
连接一个路径修正生成器
CorrWrite
将路径坐标系统中的修正值写到修正生成器
CorrDiscon
断开一个已连接的路径修正生成器
CorrClear
取消所有已连接的路径修正生成器
CorrRead
读取所有已连接的路径修正生成器的总修正值
这些功能需要选项“PathoffsetorRobotWare-Aresensor”配合
8.路径记录功能
PathRecStart
开始记录机器人的路径
PathRecStop
停止记录机器人的路径
PathRecMoveBwd
机器人根据记录的路径作后退运动
PathRecMoveFwd
机器人运动到执行PathRecMoveBwd这个指令的位置上
PathRecValidBwd
检查是否已激活路径记录和是否有可后退的路径
PathRecValidFwd
检查是否有可向前的记录路径
这些功能需要选项“Pathrecovery”配合
9.输送链跟踪功能
WaitWObj
等待输送链上的工件坐标
DropWObj
放弃输送链上的工件坐标
这些功能需要选项“Conveyortracking”配合
10.传感器同步功能
WaitSensor
将一个在开始窗口的对象与传感器设备关联起来
SyncToSensor
开始/停止机器人与传感器设备的运动同步
DropSensor
断开当前对象的连接
这些功能需要选项“Sensorsynchronization”配合
11.有效载荷与碰撞检测
MotionSup
激活/关闭运动监控
LoadId
工具或有效载荷的识别
ManLoadId
外轴有效载荷的识别
此功能需要选项“Collisiondetection”配合
12.关于位置的功能
Offs
对机器人位置进行偏移
RelTool
对工具的位置和姿态进行偏移
CalcRobT
从jointtarget计算出robtarget
CPos
读取机器人当前的X、Y、Z
CRobT
读取机器人当前的robtarget
CJointT
读取机器人当前的关节轴角度
ReadMotor
读取轴电动机当前的角度
CTool
读取工具坐标当前的数据
CWObj
读取工件坐标当前的数据
MirPos
镜像一个位置
CalcJointT
从robtarget计算出jointtarget
Distance
计算两个位置的距离
PFRestart
检查当路径因电源关闭而中断的时候
CSpeedOverride
读取当前使用的速度倍率
8.3.5输入输出信号的处理
1.对输入输出信号的值进行设定
InvertDO
对一个数字输出信号的值置反
PulseDO
数字输出信号进行脉冲输出
Reset
将数字输出信号置为0
Set
将数字输出信号置为1
SetAO
设定模拟输出信号的值
SetDO
设定数字输出信号的值
SetGO
设定组输出信号的值
2.读取输入输出信号值
AOutput
读取模拟输出信号的当前值
DOutput
读取数字输出信号的当前值
GOutput
读取组输出信号的当前值
TestDI
检查一个数字输入信号已置1
ValidIO
检查I/O信号是否有效
等待一个数字输入信号的指定状态
等待一个数字输出信号的指定状态
WaitGI
等待一个组输入信号的指定值
WaitGO
等待一个组输出信号的指定值
WaitAI
等待一个模拟输入信号的指定值
WaitAO
等待一个模拟输出信号的指定值
3.IO模块的控制
IODisable
关闭一个I/O模块
IOEnable
开启一个I/O模块
8.3.6通信功能
1.示教器上人机界面的功能
TPErase
清屏
TPWrite
在示教器操作界面上写信息
ErrWrite
在示教器事件日志中写报警信息并储存
TPReadFK
互动的功能键操作
TPReadNum
互动的数字键盘操作
TPShow
通过RAPID程序打开指定的窗口
2.通过串口进
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JA 机器人 高级 编程
![提示](https://static.bdocx.com/images/bang_tan.gif)