基于Matlab的开放式六自由度机器人控制系统研究

2021-07-16 07:02黄家才包光旋
关键词:驱动器运动学上位

段 超,黄家才,包光旋,丁 凌,邹 俊

(南京工程学院工业中心、创新创业学院, 江苏 南京 211167)

国家机器人产业发展规划把加强人才队伍建设作为机器人产业发展的六大保障措施之一,提出要加强大专院校机器人相关专业学科建设.一般高校机器人相关专业以理论和仿真教学为主,辅以少量实践教学环节,其主要原因是现有的商用机器人控制算法部分对用户封闭,导致学生无法将理论和实践相结合,从而形成理解上的偏差.因此,开发出一套适用于教学的开放式机器人控制系统显得尤为重要.文献[1]在Simulink和RTW基础上,以基于模型的设计方法开发了一套电动汽车整车动力控制系统;文献[2]应用Simulink联合MCU硬件平台相关的软件完成C代码生成,并将代码下载至Arduino控制器中,实现四轴串联机器人运动控制.本文利用Simulink和RTW技术,将PC机设计成机器人主控制器,先在上位机中导入机器人模型进行仿真测试,仿真成功后再通过CAN总线实时控制6个关节伺服电机,带动机器人运动并完成相应的动作.

1 开放式控制系统方案

1.1 开放式控制结构介绍

与传统的封闭式控制系统相比,开放式控制系统的核心特点是用户可以直接对控制器、传感器进行操作[3].本套控制系统依托于Matlab强大的硬件在环功能,在Simulink上搭建系统控制算法和监控测量模块,Matlab/Simulink可以通过扩展外部硬件接口的形式与外部进行数据交换,从而形成硬件在环控制.这种开放式结构方法意味着用户可以随时修改Simulink控制模型,从而修改系统的控制算法;在模型上添加示波器就可以实时监测内部运算量或者外部传感器检测量的实时运行状态.

1.2 控制系统总体设计方案

机器人控制系统主要由机器人、机器人运动控制器、关节电机驱动器和通讯网络构成[4].本开放式六自由度机器人实时控制系统采用模块化分布式控制方式,控制系统结构如图1所示.上位机使用Windows操作系统,安装Matlab搭建机器人运动控制模型,安装实时核使上位机成为实时控制系统;下位机是关节电机驱动器,以TI公司TMS320F28335为主控制芯片自主设计伺服电机驱动器;上、下位机采用CAN总线组网进行实时通信,上位机通过CAN总线同时控制6台关节电机驱动器.机器人为实验室自主研发的小型六轴机械臂,以6个交流伺服电机作为动力源,关节电机中内嵌绝对值编码器,驱动器和关节电机之间采用RS-485进行通信,读取关节电机当前位置.

图1 控制系统硬件架构图

上位机主要完成机器人的运动学、轨迹规划和与下位机通信部分,最终通过CAN总线向6台驱动器实时发送各关节的位置信息.关节电机驱动器工作在位置控制模式以提高关节电机的位置控制精度,位置环通过给定位置和反馈位置的差值进行控制,再经过速度环和电流环控制关节电机运动到期望角度,具体控制结构如图2所示.

图2 控制系统结构框图

2 机器人控制器设计

在Matlab中搭建机器人主控制器的Simulink模型,主要包括轨迹给定、运动学正逆解和CAN总线控制.轨迹规划给定机器人运动路径,经运动学逆解分解成6个关节的给定角度,通过CAN总线发送给相应的关节驱动器驱动电机运转,同时将关节电机当前位置发送给上位机,通过运动学正解即可得到机器人末端的位置曲线.控制器模型结构如图3所示.

图3 控制器模型结构

轨迹规划和运动学正逆解算法可以使用Matlab的M语言进行编写,用户可以通过修改这部分代码进行先进控制算法的试验验证或者控制不同型号的机器人进行动作.CAN总线控制模块采用Simulink库中自带的CAN收发模块,完全兼容CAN 2.0B协议.因此,本控制器就可以控制机器人.

3 系统仿真与试验

3.1 物理建模和动画仿真

本文使用SolidWorks和Matlab/Simulink相结合建立机器人仿真动画平台.Simscape可以在Simulink中快速创建物理系统模型,它为多刚体建模提供了大量的对应实际系统的元件,如:刚体、铰链、约束、坐标系统、作动器和传感器等.使用这些模块可以方便地建立复杂机械系统的图示化模型,进行机械系统的单独分析或与任何Simulink设计的控制器及其他动态系统相连进行综合仿真,并且还可以根据输入生成刚体的运动动画.

首先在SolidWorks中设计机器人的机械结构,然后应用Simscape Multibody Link插件将三维图导入Matlab中建立机器人物理模型.在模型中可以添加或删除系统自动生成的一些模型,再根据机器人的实际情况对模型进行修改.将关节控制模型设置为位置控制模式,同时选择关节传感器,引出位置传感器、速度传感器和加速度传感器,在末端执行器上加装位置测量传感器.将机器人正逆解、轨迹规划的Simulink控制模型与Simscape的机器人物理模型连接,即可对机器人进行物理仿真,并以动画形式实时显示仿真结果,如图4所示.

图4 六自由度机器人的虚拟仿真动画

通过仿真试验的方法对五次多项式插值算法进行轨迹规划效果研究[5].选取4个点做运算,给出起止点的位置、速度、加速度和中间点的位置.一般起止点的速度和加速度取0,这符合实际的工程作业要求.中间点的速度和加速度一般采用适当的启发方法来确定:若中间点前后的速度方向相同,则中间点速度取两段速度的平均值;若中间点前后的速度方向相反,则中间点速度取0;中间点的加速度取中间点前后加速度的平均值.起止点、中间点各个关节角度见表1,预期第2秒达到中间点1,第4秒到达中间点2,第6秒到达终点,插补周期设置为1 ms.

表1 各关节角度预期值 (°)

根据轨迹规划算法在Simulink中搭建控制模型,并将输出的关节角度传给机器人物理模型,在生成的动画中观看机器人运动是否符合要求,点击各个关节的传感器研究机器人在三次多项式插值和五次多项式插值下的运动特点.选取机器人第五轴作为观测轴,如图5所示:在五次多项式插值算法下,关节的角度、角速度和角加速度都是连续的,并且关节角度和角速度都是处处可导的光滑曲线,关节轨迹运动平稳.

(a) 角度曲线图

(b) 角速度曲线图

(c) 角加速度曲线图

3.2 轨迹规划试验

试验所用机器人为实验室自主研发的小型六轴机械臂.第一、五、六轴关节电机额定功率100 W,额定转矩0.3 N·m;第二、三、四轴关节电机额定功率200 W,额定转矩0.637 N·m.所有电机内嵌多摩川绝对值编码器,单圈精度17 bit,多圈精度16 bit.上位机在Matlab中搭建Simulink控制模型,通过德国PEAK-System公司生产的PCAN-USB将CAN报文传输到下位机.在本试验中,CAN通信使用2.0规范标准,CAN标识位为28位,波特率取最大值1 Mbaud.标准的CAN通信没有规定应用层协议,国际上很多公司推出了相应的高层协议,为节约成本和降低系统复杂程度,这里自行设计了应用层协议[6].规定数据帧固定为8位,规范本系统的固定标识、CAN控制模式选择、机器人控制模式选择、电机编号、位置反馈以及速度反馈等信息的通信格式协议.下位机是6个伺服驱动器,工作在位置控制模式,以实现对机器人关节的控制,试验场景及设备如图6所示.

图6 六自由度机器人试验平台

将机器人回零后进行关节空间五次多项式轨迹规划试验.将机器人零点坐标发送给机器人,等待机器人回零完成后,将机器人控制模式切换成轨迹规划模式,插补周期设置为6 ms,上位机向下发送各关节位置信息并读取各关节当前位置.以第五轴作为观测轴,上位机实时显示其位置跟随曲线,如图7所示,可以发现关节角度跟随性良好,符合预期目标.

4 结语

本文在Matlab平台下,基于Simulink/RTW和Simscape完成了六自由度机器人的运动学仿真分析和机器人关节角度跟随试验.使用SolidWorks和Simulink联合建立的机器人仿真动画平台,研究分析了三次多项式和五次多项式插值算法对运动轨迹的影响.本系统首次将机器人正运动学、逆运动学、轨迹规划以及通信算法全都融入Simulink中来控制机器人运动,实现了机器人开放式结构的控制.试验验证控制系统的机器人关节角度跟随性良好,满足机器人控制要求.

(a) 角度给定值与试验采集值

(b) 角度局部放大曲线

猜你喜欢
驱动器运动学上位
轿车前后悬架运动学仿真分析
气动网络多腔室弯曲软体驱动器结构优化
藏起驱动器号确保数据安全
复合切割机器人的运动学分析与仿真研究
特斯拉 风云之老阿姨上位
空间大载荷石蜡驱动器研制
基于ZigBee和VC上位机的教室智能监测管理系统
基于运动学特征的新型滑板对速滑蹬冰动作模拟的有效性
履带式推土机行驶系统运动学分析
基于VC的PLC数据采集管理系统