基于UMAC的工业机器人运动控制系统设计

2015-03-07 09:24俞晓慧田晓青
关键词:样条运动学连杆

夏 链, 俞晓慧, 韩 江, 田晓青

(合肥工业大学 机械与汽车工程学院,安徽 合肥 230009)

随着工业机器人的广泛应用,人们对其工作的可靠性、稳定性、精确性和实时性提出了越来越高的要求。机器人控制系统作为机器人的大脑[1],是决定其功能和性能的主要因素。

传统的机器人控制系统一般采用封闭式的结构控制器来设计,这种控制器的制造和使用成本较高、开发周期长、柔性不足、软件的移植性较差[2],不适应现代机器人控制工业的发展。本文以6自由度工业机器人为载体,通过对机器人运动学及动力学特性规律的分析,提出了基于UMAC(Universal Motion and Automation Controller)运动控制卡的结构设计方案,建立了一种开放式的机器人运动控制系统,以实现对机器人的精确和实时控制。

1 机器人主体结构建模

从机构学的角度来看,机器人的结构是由一系列连杆通过旋转关节或移动关节连接而成的开式运动链。本文采用广州数控的RB 08型搬运机器人的本体作为研究对象,三维造型如图1所示。该机器人具有结构坚固、抗挠性强、动行稳定、灵活和定位精准等特点。

图1 6自由度工业机器人主体结构

该机构主要包括机身的旋转、大臂的摆动、小臂的摆动、肘部的旋转、腕部的摆动、手指关节6个自由度,每个关节采用伺服电机、减速器和若干结构件构成。

2 运动学求解分析

2.1 机器人结构参数建模

由于工业机器人的机械结构相对复杂,且在运动过程中各关节的弹性和机械摩擦等难以精确计算[3],所以采用近似模型进行分析[4],RB 08机器人本体模型连杆坐标系分析如图2所示。

图2 RB 08机器人D-H连杆坐标系

图2中,Zi和Xi分别为建立在关节i上坐标系{Xi}的Z轴和X轴;li为连杆i的长度;di为连杆i的偏置。图中未标出的连杆长度和连杆偏置值为0。连杆参数见表1所列。

表1 6自由度机器人连杆参数

2.2 正运动学求解

按照图2所示的D-H坐标系建立方法,杆件坐标系{Xi}和杆件坐标系{Xi-1}之间的坐标变换关系如下:

机器人结构确定后,连杆长度li、连杆扭角αi和连杆偏置di都已知,只有关节角θi随着机器人各连杆的运行状态而不断变动,因此机器人正运动学方程为:

将表1中机器人连杆参数代入(1)式,得到下面的位姿矩阵:

将上面各位姿变换矩阵代入(2)式,得到:

其中通过(3)式,给出各个关节的指定角度后即可求出机器人末端的位置和姿态。

2.3 逆运动学求解

机器人的正运动学求解时是唯一的,而逆运动学的求解则需要考虑实际使用时机械以及工作环境的限制等情况,选取1组满足各种约束的最优解。RB08型机器人的最后3个关节轴线相互垂直,属于PUMA560类型机器人,其几何结构满足Pieper准则[5-6],存在逆运动学封闭解,可以从正运动学(1)式和(2)式中直接求解关节变量的等式,并得到最多8组逆运动学解。其中1组解如下:

将表1中各连杆参数代入(4)式,即得到机器人的逆运动学解。

3 运动控制系统的设计

3.1 控制系统的硬件设计

为了解决机器人控制系统实时性差的问题,采用IPC+DSP[7]的控制模式,让 Windows处理相对慢一些的任务,运动控制器实现伺服运动控制和数据通讯功能[8],保证计算的高效。

UMAC控制器由美国Delta Tau公司生产,是目前世界上最先进、功能最强的运动控制器之一[9],其本质是一个运动控制计算机,以模块化的PMAC(programmable multi-axes controller)系统为核心,在DSP基础上开发而成。由于DSP芯片及控制器上各种插卡功能强大,基于UMAC技术的控制器可以满足各种实时性控制的需求。

机器人各轴的运动和控制面板的开关量通过UMAC进行控制,同时UMAC还负责反馈信息数据的实时扫描更新,系统的人机管理功能则在工控机IPC上进行开发。IPC与UMAC之间通过以太网进行连接。

本文中,通过在UMAC板上扩展I/O板、伺服驱动单元、伺服电机等,形成一个完整的机器人运动控制系统,此开放式机器人运动控制系统的总体硬件搭建平台如图3所示。

由图3可知,下位机与上位机相互独立,下位机UMAC以上位机IPC为软硬件平台,进行插补、位姿等实时控制,而IPC则负责初始化、编译、参数管理等非实时性的任务。

图3 机器人系统硬件搭建平台

3.2 控制系统的软件设计

本文采用模块化设计方法设计系统软件。上位机基于Windows采用VC++高级语言开发控制软件,使得软件具有较好的可扩展性和移植能力,而且具有友好的人机界面。上位机的控制软件主要包含运动轨迹规划、示教在线、正逆运动学等管理模块。下位机利用UMAC自带的开发语言实现高速伺服插补、伺服控制、中断以及回零等功能。

针对RB 08机器人模型,利用表1连杆参数和(3)式、(4)式的正、逆运动学结果,在 VS2010组件编程环境下采用VC++进行HMI的设计,并通过加载动态链接库PComm32获得相应的句柄,利用被调用函数的入口指针调用相应的功能函数,实现计算机与UMAC之间的通讯。

3.3 实验分析

为了保证工作精度和效率,在一些工况下需要机器人末端执行器运行轨迹光滑、末端的速度平稳变化,即需要一定精度的轨迹[10]。末端2个相邻位置点之间的轨迹有直线插补运动、圆弧插补运动以及样条插补运动等,其中,样条插补可以保证末端轨迹在2个相邻点的位置上光滑过渡[11]。本文针对三次样条轨迹进行了相关研究,并以工作空间内2个点P1、P2为例,且对运动控制软件正、逆运动学功能模块和轨迹规划模块进行了实验。

根据给定的位置点P1和P2,利用轨迹规划模块的三次样条轨迹规划和逆运动学模块,得到各关节随时间变化的理论值,如图4所示。

将关节运动指令值写入正运动学模块,得到机器人末端的实际运行轨迹,如图5所示。

图4 三次样条规划下的关节运动指令值

图5 机器人末端运动实际轨迹

图6 关节2采用样条插补、直线插补的位置跟随误差

从图5可以看出,机器人的末端实际运动轨迹光滑,近似为三次样条轨迹,验证了控制系统各功能模块的正确性。同时,得到了各关节在关节空间内样条插补和直线插补的位置跟随误差,以关节2为例,2种插补下的跟随误差如图6所示。从图6可以看出,关节2采用样条插补时平均跟随误差为0.254 5×10-7m,最大跟随误差为5.16×10-7m;采用直线插补时平均跟随误差为-0.044 9×10-7m,最大跟随误差为2.701×10-7m。在笛卡尔空间进行位置点之间的三次样条插补时,关节空间内对各关节进行直线插补的跟随误差比样条插补的小。

4 结束语

本文在对RB 08型工业机器人进行正、逆运动学分析的基础上,基于PC+UMAC的硬件平台,开发了6自由度工业机器人运动控制系统的人机界面、路径规划、示教在线和运动学求解等软件功能模块;利用RB 08机器人工作空间内2点之间的三次样条轨迹规划对路径规划、正逆运动学等功能模块进行了实验和验证;通过实验分别得到了在关节空间进行直线插补和样条插补时的位置跟随误差;通过对实验结果分析,在本次实验环境下,得出直线插补的跟随误差比样条插补小的结论。

[1] 张 玫,邱钊鹏,诸 刚.机器人技术[M].北京:机械工业出版社,2011:87-91.

[2] 林 瀚.基于DSP+FPGA的开放式机器人运动控制器的研究[D].广州:华南理工大学,2013.

[3] 杨 帅,邹智慧.多自由度工业机器人运动控制系统的研究[J].制造业自动化,2013,35(10):117-121.

[4] Craig J J.Introduction to robotics mechanics and control[M].第3版.北京:机械工业出版社,2006:48-59.

[5] Paul R P,Shimano B,Mayer G.Kinematic control equations for simple manipulators[J].IEEE Transactions on Systems,Man,and Cybernetics,1981,11(6):246-252.

[6] 赵大兴,李九灵,赵智明,等.集装箱喷漆机器人逆运动学分析[J].中国机械工程,2008,19(22):2690-2693.

[7] 张俊芳.基于DSP的闭环经济型数控机床数控系统设计[J].组合机床与自动化加工技术,2006(8):61-62.

[8] 杨秋娟,曹树坤.基于“PC+DSP”型开放式数控系统控制器的设计[J].锻压装备与制造技术,2009,44(5):115-117.

[9] 徐欣圻,杨世海.基于UMAC的精密伺服控制系统[J].安徽大学学报:自然科学版,2005,29(4):41-45.

[10] 王健强,程 汀.SCARA机器人结构设计及轨迹规划算法[J].合 肥 工 业 大 学 学 报:自 然 科 学 版,2008,31(7):1026-1028,1041.

[11] 杨兴明,朱 建,高银平,等.欠驱动移动机器人的路径跟踪控制[J].合肥工业大学学报:自然科学版,2014,37(1):53-58.

猜你喜欢
样条运动学连杆
一元五次B样条拟插值研究
压裂泵虚拟试验连杆疲劳性能研究
某发动机连杆螺栓拧紧工艺开发
基于MATLAB的6R机器人逆运动学求解分析
工业机器人在MATLAB-Robotics中的运动学分析
基于D-H法的5-DOF串并联机床运动学分析
三次参数样条在机床高速高精加工中的应用
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
连杆的设计及有限元分析
基于样条函数的高精度电子秤设计