一类六自由度串联机器人路径规划与模型仿真

2019-06-24 12:28
制造业自动化 2019年2期
关键词:圆弧执行器轨迹

(青岛大学 自动化与电气工程学院,青岛 266071)

0 引言

机器人轨迹规划是满足实际需求任务的基础,是开发机器人运动控制系统软件的重要研究内容,因此对轨迹规划算法的研究和实际轨迹精度的控制有着重要意义和作用。机器人想要在作业空间中完成特定的作业,其末端执行器则必须按照特定的轨迹运行[3]。轨迹规划是指按照厂家提出的工艺要求,求出运动轨迹的参数并生成我们所期望的运动轨迹。机器人轨迹规划目前主要有基于关节坐标和基于直角坐标的两种轨迹规划方案[4]。现实应用中轨迹规划具有重要的基础意义,也是工业生产向高精度方向发展的必然需求。

1 机器人结构特性

本文研究的工业型六自由度串联机器人由底座,机械臂,末端执行器,伺服电机驱动系统以及本体管线包等部件组成[5]。结构示意图如图1所示。该类型的工业型机器人共有六套伺服系统,伺服系统可以驱动伺服电机来控制关节实现不同形式的运动,改变运末端执行器中心点的位置和姿态完成实际生产作业任务。

图1 ER3A-C60机器人结构示意图

2 作业空间及常用坐标系

机器人作业空间是指末端执行器运动描述参考点所能达到的空间点的集合,一般用水平面和垂直面的投影表示[6]。每个机器人的作业空间范围都与其特性指标密切相关,作业空间描述的是机器人各个关节之间的约束关系。每个机器人都有其特定的作业空间范围,所以在使用机器人的时候必须研究其作业空间,以确保机器人末端执行器能够到达要求的点完成加工任务。本文研究的工业型机器人能达到的作业空间如图2所示。

图2 机器人作业空间及常用坐标系示意图

3 机器人控制流程框架

机器人的控制算法流程框架如图3所示。首先根据给定的起始位置、终点位置、最大速度、最大加速度、最大加加速度、仿真步长等信息,计算插补过程中每一仿真步长的位移,然后分别映射到笛卡尔坐标系中的XYZ坐标上[7],即:

图3 机器人控制结构图

然后再进行逆运动学运算转化为各个关节的相对角度信息(相对于零点)。由于角度×减速比×电机反馈脉冲数/360=脉冲个数,默认仿真步长是4ms,将相邻两个点的脉冲个数做差,然后除以时间4ms,得到速度脉冲/毫秒,据此配置运动控制卡。若要高精度控制,在逆运动学之后,还要在关节空间内进行高次项插值[8]。

4 基于MATLAB的轨迹规划实现

首先需要了解机器人关节坐标运动时的轨迹规划方法,常见的有关节空间的路径规划和笛卡尔坐标系下的路径规划两种[9]。运动过程中的插补一般包括直线插补,圆弧插补两大类。

还需要了解机器人关节运动的常见的两种速度模式:梯形速度模式以及S形速度模式;注意机器人两种位置模式的区别(相对运动位置模式和绝对运动位置模式)[10]。基于此,使用MATLAB对机器人执行器末端执行器进行直线和圆弧两种路径规划,并在MATLAB中建立机器人的数学模型,对规划的两种路径进行在线验证。

4.1 仿真原理

离线编程主要是使用外部规划程序,规划机器人的轨迹,并通过逆运动学转化为各个关节的角度值[11],然后使用Simulink加载数据,通过模型以实时运行进行控制实际机器人的控制。机器人模型实时获取数据,然后进行角度转换,最后驱动运动控制卡进而驱动机器人本体[12]。所有算法全部使用Simulink模型,搭建的机器人控制模型如图4所示,主要实现功能是直线运动。算法中主要分为四部分,参数给定包括DH参数信息,轨迹规划算法,逆运动学算法,运动控制卡控制部分。除了运动控制卡控制模块部分不用进行修改,其余模块,都可以根据需求进行更改替换。例如逆运动学,在确保输入输出参数不变的情况下,可以进行直接替换。为确保安全,在替换模型之前需要先进行数字仿真验证,再把模型转化为二进制可执行代码加载到机器人本体进行实际验证。

图4 机器人模型仿真示意图

4.2 仿真流程

将机器人的控制算法比如轨迹规划、逆运动学、关节空间插值等算法使用VS2008的纯软件工程实现,并生成轨迹数据直角坐标系插值数据和关节空间数据。将角度数据通过编写的脚本文件加载到MATLAB工作空间,然后再运行模型、编译模型,将模型导入rt-sim软件中,控制实际的机器人本体按照规划的路径运行[13]。仿真流程如图5所示。

图5 机器人仿真流程图

离线仿真的具体步骤如下:

1)修改LinuxCNC相对的代码;

2)运行linuxCNC程序,生成规划的数据点;

3)将文件复制到Matlab对应的目录下;

4)运行MATLAB的配置脚本;

5)运行Simulink模型,查看各个速度波形的曲线;

6)编译MATLAB的Simulink模型;

7)使用rtsim软件加载控制模型,并进行控制。

4.3 直线运动仿真设计

在linuxCNC中规划从零位到终点,然后从终点回零位的操作。规划机器人末端执行器从零点沿Y轴运行10cm,然后再回到零位。编译工程并运动,将得到文件加载到MATLAB空间,通过3D画图解耦plot函数绘制立体图,是否和规划的路径相同[14]。在轨迹规划中,给定点的时候,程序中会判断是否在运行范围之内,如果给定的坐标超过了可达范围,会终止程序执行,故需要查看文件的数据,确保能够完成轨迹规划[15]。将上述得到的轨迹数据复制到和模型一个目录,运动脚本文件加载数据到工作空间中,然后运行模型查看各个关节运动的轨迹和速度。直线运动轨迹及速度曲线如图6所示。

图6 直线运动轨迹及速度曲线图

4.4 圆弧运动仿真设计

圆弧运动模型操作和直线运动操作流程类似,主要区别是一段圆弧需要设置三个点,当前零位算一个点,然后再另外规划三个点[16]。在机器人末端执行器进行圆弧运动过程中,进行三次项或五次项插值运算,达到较好的运动效果。

起始坐标:[-428.848 0 662.568 0 -90 0]

第一个点坐标:[-428.848 80 662.568 0 -90 0]

第二个点坐标:[-428.848 100 662.568 0 -90 0]

第三个点坐标:[-428.848 0 662.568 0 -90 0]

规划出来的圆弧轨迹以及速度曲线如图7所示。

图7 圆弧运动轨迹及速度曲线图

4.5 仿真效果

在设计了直线运动和圆弧运动之后,对MATLAB环境下建立的机器人模型进行在线验证[17],两种运动方式下的机器人模型运动轨迹图像如图8所示。

图8 直线、圆弧运动轨迹曲线图

经过研究分析:机器人模型的直线和圆弧两种运动轨迹曲线与预想的轨迹曲线基本吻合,由此验证了机器人模型的正确性,从而也验证了运动轨迹设计的合理性。

5 结束语

本文对一类工业型六自由度串联机器人在MATLAB环境下建立机器人仿真模型,进行直线和圆弧两种路径规划,并且对建立的模型进行仿真验证。在工业生产当中,机器人需要进行路径规划以便完成各种复杂的工艺生产动作,依据设计好的路径对机器人进行有效控制,完成实际工作需求。

猜你喜欢
圆弧执行器轨迹
多场下压电喷油器执行器电学特性试验研究
自动驾驶汽车执行器故障冗余算法
解析几何中的轨迹方程的常用求法
圆弧连接几何作图法探析*
浅析圆弧段高大模板支撑体系设计与应用
轨迹
轨迹
外圆弧面铣削刀具
高锁螺母自动化安装机器人末端执行器设计
X-431实测篇2010年奔驰B200空调执行器电机学习