机器人设备调试手册 (初级)
本手册旨在总结斯卡普六轴机器人,Delta机器人以及Scara机器人的一般调试过程,并标明调试要求和注意事项。本文件为公司内部文件,非客户文件。
鉴于作者水平有限,请实际操作人员理解并评论文档中的错误,以便改进。
- 概述 斯卡普机器人系列涵盖了常用的工业机器人类型:六轴机器人、水平多关节串联机器人(SCARA)垂直多关节并联机器人(Delta)。斯卡普机器人控制器和六轴伺服驱动器实现了机器人设备的控制驱动系统。其通信应用高效方便EtherCAT通讯协议。应用于windows系统的软件BSI,GUI以及Codesys提供方便、直观、高效的人机交互操作模式。 机器人系列设备调试过程注重机器人设备的点动测试、机器人关节的参数调整和适应、机器人组运动模式下机器人关节轴的微调和机器人运动PLC控制。 第一段将显示如何根据机器人的硬件信息重写机器人配置文件。主要关注Motion文件。 第二段记录了机器人系统(本体+电气控制柜)的硬件调试流程和注意步骤。 第三段是机器人设备的方向校正、零点重置和手动重置JOG测试 第四段是机器人单关节电机参数调整和机器人组参数微调 第五段是机器人设备的控制,简单pick place为例。 机器人设备调试是一项耗时的工作,因此在工作过程中记录、汇总和备份文件是非常必要的步骤。在开始新步骤之间,必须备份现有数据、配置文件和参数文件,PLC工程文件等。每次更改都应另存为新文件,不建议覆盖原文件。
- 机器人设备调试 机器人设备配置文件 默认情况下,斯卡普机器人设备所需的配置文件需要通过GUI该软件上传到机器人控制器(详情请参考机器人控制器手册),用于机器人控制器调度机器人本体设备的任务和路径规划。默认配置文件为: ? Ethercat文件:机器人控制器和伺服驱动器的实时通信 ? Motion文件:设置机器人本体的硬件信息 ? Hand文件:记录灵巧手或智能三爪所需的配置信息 ? Vision文件:相机设备的相关信息,应用于机器人视觉 第一、二文件为必要文件,三、四文件为扩展文件。Ethercat参照相应手册制作文件(Ethercat本文件默认为已知文件。Motion根据不同类型的机器人设备,文件将有所不同。详情请参考手册(机器人控制器用户手册),下表以六轴机器人为例解释机器人设备中的一般配置信息。 定义一个轴 Ax1 轴名称 COE402_EL 轴类型 轴的附属信息 6AX.TxPdo_0.SW1 详见附属信息的具体定义Ethercat配置文件文件 6AX.TxPdo_0.PAV1 6AX.TxPdo_0.VAV1 6AX.TxPdo_0.TAV1 6AX.RxPdo_0.CW1 6AX.RxPdo_0.TPOS1 6AX.RxPdo_0.VOFS1 6AX.RxPdo_0.TOFS1 <OD_Offset>#x000</OD_Offset> 对应 131072 编码器单圈分辨率2^17 100 该轴减速比 1 360.0 轴位置系数 1.0 1.0 速度系数 1.0 加速度系数 0 位置偏置 FALSE 方向置放 TRUE 限位开关 -170.0 最小位置 170.0 最大位置 0.5 电机额定转矩 180.0 计算公式如下: 电机最大转速*360°/(减速比*60) 100.0 900.0 N倍最大速度 n小于等于10 900.0 N倍最大速度 n小于等于10 4500.0 最大加速度为n倍,n小于等于10 35 回零模式 0.0 零点偏置 10.0 返回零进程速度信息 5.0 10.0 30000 回零最大时间 <UseAbsValid_Sw15>1</UseAbsValid_Sw15> 对应 对应 定义组列表 定义群组 TianTai_Test6axis 群组名称 动力学信息 Anthrop6_Cf 群组类型 附属轴信息 Ax1 附属轴名称 Ax2 Ax3 Ax4 Ax5 Ax6 对应 机器人参数 0.387 0.420 0.00 0.030 0.380 0.112 0.025 0.00 0 0 0 0 0 0 0 0 0 0 0 0 <f_w0_1>0.002</f_w0_1> <f_w0_2>0.002</f_w0_2> <f_w0_3>0.002</f_w0_3> <f_w0_4>0.002</f_w0_4> <f_w0_5>0.002</f_w0_5> <f_w0_6>0.002</f_w0_6> 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 机器人本体硬件参数 对应 对应 机器人坐标系偏置 0.0 0.0 0.0 0.0 0.0 0.0 对应 工具坐标系偏置 0.0 0.0 0.0 0.0 0.0 0.0 对应 轴耦合矩阵 1.0;0.0;0.0;0.0;0.0;0.0 0.0;1.0;0.0;0.0;0.0;0.0 0.0;0.0;1.0;0.0;0.0;0.0 0.0;0.0;0.0;1.0;0.0;0.0 0.0;0.0;0.0;0.0;1.0;0.0 0.0;0.0;0.0;0.0;0.0;1.0 ZYZ 欧拉角模式 5.000 机器人组运动速度信息 50.000 500.000 1.0 机器人限制能量 对应上文 对应上文 对应上文 该表内容应依据于机器人本体的硬件信息进行填写,完成后加载至机器人控制器。 机器人系统的硬件调试过程 机器人系统的硬件调试主要是指机器人本体与机器人控制柜之间的连接功能检测,是保证机器人正常运行的关键。调试的目的是确认机器人本体与控制柜之间的正确连接,控制柜功能正常使用,机器人运动不会受到无效信号的干扰,导致设备故障。 机器人电缆检查: 机器人电缆分为动力电缆和编码器电缆。不同机器人本体设备的航插接头会有所不同,容易造成电缆连接错误。首次使用时,应根据机器人本体端航插定义图检查机器人电缆柜端口是否匹配。如果电缆定义口不匹配,可能无法驱动机器人,甚至损坏设备。 机器人控制柜电气接线检查: 根据机器人控制柜的电气线路图,逐步电路连接,确保无线反接、短路、短路或非法(不)接地。常用的电气柜接线图如下: ? 图1中的少数电柜内部接线方法 ? 图2为正规电柜内部接线方法 ? 两者均可以正常使用,未发现会对电柜功能上造成影响
电气柜初步检查完成后,可连接机器人本体和控制柜进行功能测试。首先检查紧急停止按钮的功能,然后检查机器人的每个轴和组。 ? 使用USB连接计算机和伺服驱动器的线路USB接口 ? 通电机器人控制柜观察是否有异常情况或气味 ? 打开BSI软件下的data交流电压值用参数确认 ? 按下急停按钮,确认接触器主线断开,BSI电压值为0,驱动器未死机,未重启。 ? 打开急停按钮,确认接触器主线连接,BSI电压数值恢复正常。驱动器未死机,未重启。 ? 多次重复上诉步骤,建议20次快速开关无异常。 ? 如果驱动器在此过程中重启或死亡,建议在交流接触器线圈端口A1,A两个反串二极管或压敏电阻 ? 在确认急停按钮功能正常后, ? 连接机器人编码器电缆 ? 打开BSI,加载或填写机器人设备的相应参数。DClink相关参数、主板信息参数、轴电机基础参数、轴电机基础增益参数。详情请参考伺服驱动用户手册,加载后重启设备 ? 打开Data下属编码器的工作空间,确认每个电机轴是否能读取编码器的值。如果值为零,请检查编码器参数设置、编码器电缆连接、电气柜端编码器接口定义、机器人本体电机端编码器电源和电机实际编码器信息,以查明原因。 ? 编码器数值正确读取后,断电 ? 连接机器人动力线电缆 ? 上电并再次确认BSI初始参数是否正确,驱动器各轴接线是否合规。 • 多次开关急停按钮,确认设备正常工作。 上述步骤罗列了进行机器人本体硬件与机器人控制柜初步功能检查的流程步骤。完成了上述检查后,可以开始使用机器人控制器进行使能,确认电柜是否正常运行。 • 连接机器人控制器并打开GUI软件 • 加载机器人所属的配置文件并重启控制器 • 点击Ethercat图标确认通讯是否正常。通讯成功则图标为绿色常量,通讯状态为OP,读值实时变动。 • 点击第一轴,使能。确认能否正常使能(电机图标变为绿色)且听到电机报闸开启。 • 观察右侧窗口能够读取使能后该轴当前位置信息 • 降低Jog speed后,向两个方向点动该轴,观察机器人是否运动。 • 连续开关使能该轴,观察驱动器有无死机,重启现象,建议视电机大小连续尝试5-10次 • 一切正常后,对其余各轴依次重复该步骤 • 无异常现象后,点击机器人群组使能按钮,群组使能后,各个Axis同时被点亮,降低jod速度,点动后机器人开始运动 • 关闭群组使能,重复开关使能5次,观察伺服驱动器有无重启或死机 若使能或关闭使能任意轴时,伺服驱动器重启或死机,则检查电柜接线,可选择在电柜内继电器端子排上电机报闸一侧反接二极管,亦可选择对该轴使用单独的继电器。除此外亦可尝试将给DOUT端口供电的24V电源直流负极输出口接在设备接地铜排上,并检查是否电柜内设备已经使用铜排进行有效接地,亦可尝试更换24v电源为性能更好的电源。(前提为机器人本体,机器人线缆与伺服驱动器已检验合格) 合格的机器人硬件系统应满足以下条件并不会造成伺服驱动器死机或重启: • 急停按钮正常使用,连续20次开关 • 机器人各个轴正常使能,点动并关闭使能,连续10次开关使能 • 机器人群组正常使能,点动并关闭使能,连续10次开关使能 • 示例记录如下,展示了一次六轴机器人调试进程记录 ******************示例************** 驱动器设置自启动: 按DEL按键进入BIOS界面,更改Restore Power Off 为Power On 按钮。
检查设备连接状况后,电脑连接不上BSI
- USB线缆问题
- 电脑驱动异常 更换电脑与USB线后一切正常 加载6轴机器人参数,对比各项参数,确认Brake对应关系 (此设备参数为CCW),限制最大电流以防止烧毁电机 天泰机器人规格: 1/2轴 750W ----- 3轴400W----4/5轴100W----6轴50W (多摩川绝对值) CW/CCW 1/6 2/5 3/4 4/3 5/2 6/1 IKpq 8 4.45 10.851 30 25 35 ITiq 2.964 3.7 3.2 2.5 1.5 6 Wkp 0.6 0.43 0.42 0.17 0.042 0.04 Wti 14.826 20 9 4 7 4 PosKp 45 45 70 70 55 45 Homepos 0x00928a36 0x001aa6e3 0xffe8d9f1 0x001b1e41 0x001324c4 0x0018d0f8 Npp 4 4 4 4 4 4 ST 17 17 17 17 17 17 MT 16 16 16 16 16 16 Inom 7 7 4.8 1.1 1.1 0.6 Iextra 9 9 9 2.0 2.0 0.9 Textra 3 3 0 0 0 0 R 0.433 0.433 0.967 6.767 6.767 15.267 L 2.6 2.6 3.667 10.667 10.667 17.333 Ki 0.5 0.5 0.4 0.32 0.32 0.31 Ke 17.4 17.4 13.867 11.233 11.233 10.867 Wnom 3000 3000 3000 3000 3000 3000 Wmax 3599 3599 3599 3599 3599 3599 Indexcal 16331 16331 16338 16388 16336 16338 Jrot 0.8 1.08 0.3 0.03 0.1 0.02 Jload 1.5 5 1 0.8 0.8 0.6 Bload 0.001 0.001 0.001 0.001 0.001 0.001 Brake DOUT1 Brake—AX6 DOUT2 Brake—AX5 DOUT3 Brake—AX4 DOUT4 Brake—AX3 DOUT5 Brake—AX2 DOUT6 Brake—AX1 连接控制器,加载配置文件 Motion文件为反序文件 通电,开急停,使能第6轴(GUI-AX6),驱动器自重启 确认抱闸走线。 P050中设定0b00000001,拆除其余轴连线,使能AX6,自重启 P050设定更为0b00100000,使能AX1,成功 将设备重新更改为正顺序(加载新的配置文件和参数文件),只连接第6轴,自重启 怀疑:滤波器干扰 去除滤波器,使能第六轴,1s后自重启 更换24V3(抱闸24V供电)电源为pheonix,使能第六轴,1s后自重启 去掉第六轴动力线PE,使能第六轴,,有改善 拔出动力线,使能第六轴,成功 怀疑接地不良,设备未共地 另接一铜排使设备共地,使能第六轴,自重启 更换新的滤波器,使能第六轴,自重启 更换新的电柜,使能第六轴,自重启 更换航插,使能第六轴,自重启 将STO,逻辑板24V,DOUT24V统一,使能第六轴,自重启,且第一轴也自重启 更换逻辑板24V,DOUT24V为一个pheonix,使能第六轴,有改善 怀疑直流电源造成干扰 更换大电柜,同样更换电源,使能任意轴成功,关闭使能后一定概率自重启 分开DOUT24V回WM,上电后驱动器死机 怀疑:之前双滤波器,去掉那个是好的—验证无效 怀疑:WM未接地—验证无效 去掉Brake入口即DOUT接口,使能第六轴,自重启 给WM24V出口反接二极管+68k电阻,使能第六轴,有改善 给Brake入口反接二极管电阻,使能第六轴,无改善 去掉Brake入口其他接线,只留第六轴,有效 接回一轴接线,使能第六轴,自重启 第1轴加diode,使能第1轴,自重启 直接第1轴,使能第1轴,自重启 只接第六轴加二极管,使能第六轴,自重启 更换WM为pheonix,使能第六轴,有改善 DOUT24V与逻辑板分别用pheonix不同24V出口(之前用同一个出口),有效 回接第1轴,加二极管,有效 回接所有轴,加二极管,有效 二极管串68k电阻,稳定性加强,有效
总汇:需要一个pheonix双24V出口,一个WM10A供控制器和抱闸输出,在DOUT与抱闸输入端需要反接二极管串电阻给每个轴,连续开关20次 使能后仍有一定几率重启。 *****************示例*************** 机器人设备的运动初始化 在确认了机器人系统硬件功能正常使用后,开始进行机器人设备的运动初始化,其主要为两部分内容机器人各轴运动方向的设定与机器人各轴零点设定。
机器人各轴运动方向与名称如图所示,使能机器人各轴并点击正向负向运动,确认运动方向是否一致。若实际运动方向与图示方向相反则在Motion文件内对应drive列找到并修改数值为当前值的倒数。重复确认各个轴方向无误后即可。 机器人各轴零点的确认需借助于机器人本体上的标定点或特殊的标定设备。以天泰六轴机器人第一轴为例,使能第一轴后,手动JOG该轴指本体背部的锚定点相互重合,点击GUI上的Homing按钮,设定当前点为机械零点。完成后,GUI窗口显示当前位置为0。 机器人设备的参数调整 机器人设备的参数调整实际遵循伺服驱动器电机参数适配的相关步骤,不过需要借助于PLC程序运行机器人设备,然后对于各个轴的运动参数进行适配。参数调整需要使用BSI软件。前置步骤如下 • 打开GUI软件设定控制模式为PLC Control • 打开BSI软件,选定机器人轴 • 打开PLC程序并选择single axis程序 • 在程序中设定运动轴,运动范围以及运动速度,建议速度从0.01开始 • 激活并运行PLC程序,使该轴处于设定的低速运行状态 • 打开BSI软件内对应轴的工作空间,设置采样信息并采样观察 • 手动调整三环参数或使用autotuning功能进行调节
图展示了电机控制方式的概要。黄色区块是标准调节器(P或PI调节器),淡蓝色区块则是其他可调参数影响的区块。在位置调节器(Position regulator)中,用户可以通过改变P670-PosKp参数来调节P的比例增益。在速度调节器中(Speed regulator),用户可以通过改变P630-SpeedKp和P640-SpeedTi 参数来调节PI比例增益和积分增益。在Iq电流调节器(Iq current regulator)中,用户可以通过改变P600-CurrentKpQ 和P610-CurrentTiQ 参数来调节PI比例增益和积分增益。 前馈作用可以通过调整P700-PosKFF和P690-SpeedKFF 参数来分别改变位电流以及速度前馈,在速度过滤器中,可以通过改变P680-SpeedFiltBW 调节过滤带宽。P810-Kcross参数用于设置Iq和Id在Id中的电流环中的交叉补偿。建议值为100%。 在机器人应用中,由于工作环境与工作要求的不同,机器人各个轴的电机参数不尽相同。高负载的参数不一定很好的适合低负载的电机。所以为每个电机确定最优的参数是一项必要的工作。一般而言,每次调整一个电机的参数,依次进行,待全部完成后,再根据需要对整个机器人的运动进行参数调节。在此过程中,BSI的示波窗口能给你巨大的帮助。 电流环是参数调节过程中最关键的一环。我们建议客户直接使用自动调增益的供能来确认参数值,除非您已经很熟悉整个调参环节。在初次参数调整中,我们建议先从速度环开始,因为速度环参数设置不当是大多数情形下机器异常震动的主因。最常用的方法也是同时加大速度环Kp和Ti参数,但在操作之前,请先确认每个轴的运动状态。当速度环调整结束之后,发现速度参考值出现波动,则应调节前馈速度。如果波动剧烈,则适当减小PosFF参数,以后减小PosKp参数来减弱位置环的比例增益。 基于方便用户的考虑,我们提供一个表格。该表格给出了常见电机类型的增益参数范围,可用于增益调试过程中的基础参考值。请注意,该参数适用于安装在机器人上的电机且无额外负载的情况。 电机(W) 电流环 速度环 位置环 速度滤波带宽 Jrot Jload Bload KpQ TiQ Kp Ti Kp 50 33~40 1.5 ~2 0.015~0.025 7~15 50 ~70 2500~3000 0.05 0.1 0 100 25~30 1 ~2 0.04 ~0.1 7~12 70 ~100 2500~3000 0.05 0.1 0.001 400 4~ 11 1.1~3.2 0.14~0.420 8~12 70 ~110 2500~3000 0.3 0.6~1 0.001~0.002 750 4.5~11 2.5 ~3.5 0.4 ~0.6 9~15 50 ~70 2500~3000 0.8 ~1.1 1.5~2 0.001~0.002 在完成了机器人各个关节单轴运动调节以后,可以开始进行机器人群组运动的参数微调,此时只需要将PLC程序更换为机器人的运动程序即可,例如后续章节的Pick Place运动。然后重新开始抓取设备运行波形并微调参数 ****************示例****************
**************示例****************** 机器人设备的控制示例-PickandPlace运动 在完成了机器人硬件功能检查以及各个关节的参数适配之后,可以开始正式使用机器人完成预定任务。以天泰六轴机器人做简单的Pick andPlace运动为例,讲解如何控制机器人运动。 一个简单直线型完整的抓放运动由如图所示六个步骤构成。机器人从起点处抓取物体后经过两个中继点后到达落地,然后重复之前的路径回到起点,此为一个完整的循环。整个完整循环中需要4个固定点,及4个点的世界坐标。
因此需要先确认机器人末端在四个点的世界坐标值,写入PLC程序即可。 • 打开GUI程序,点击virtual按钮虚拟使能机器人群组,并打开右上角的3D虚拟视窗 • 手动JOG6各轴的位置为(0,0,0,0,-90,0),以避开奇异点。 • 手动JOG机器人末端依次到四个固定点并读取GUI中显示的当前坐标,记录下该坐标。
• 打开Pick andPlace程序,依照记录写入四个点坐标。 • 编译更改后的程序,激活并运行。 • 更改ovl,acc和jerk来调整机器人运行速度。观察机器人虚拟运动。 • 停止运动后,取消虚拟化,使能机器人并低速运行 除了使用PLC程序控制机器人外,还可以直接使用CNC程序来编写程序,快速且简单,步骤如下 • 打开GUI程序,真实使能机器人群组。 • 手动JOG6各轴的位置为(0,0,0,0,-90,0),以避开奇异点。 • 打开操作栏下方的CNC面板,新建工程文件
• 手动JOG机器人末端到起点位置,点击teach按钮,该点会记录在右侧视窗中,选择addpos,在程序中就会自动增加一个点位
• 然后,继续点动机器人末端到剩余点位,示较生成额外三个点位 • 点击proram,开始编写CNC程序如下图所示并存储 • 关闭机器人群组使能,再虚拟化使能机器人群组,打开该工程文件 • 点击set按钮,然后点击start,3D虚拟图像开始运行 • 可以在程序开头增加DynOvr(10)来设定机器人速度为10%最大速度 • 点击set和start开始运动机器人设备 • 如果机器人报错,则检查指令是否有误
注意:在机器人老化运行时发现,在连续运行和很久之后,有些时候机器人会突然停止运动,打开GUI群组出现报错,但是BSI却没任何报警记录,暂时原因未知。但是若机器人会在某个固定位置重复报错,则需调用BSI检查是否设备在此位置出现过流或者轨迹超出限位。