更全的杂志信息网

基于EtherCAT总线的ROS运动控制器设计与实现*

更新时间:2009-03-28

引言

随着计算机技术和自动控制技术的进一步发展,机器人技术已经成为21世纪十分重要和热门的研究领域.常见的机器人按用途类别可分为工业机器人,服务机器人,医疗机器人,微纳米机器人等[1].机器人是一门交叉性强的学科,而控制科学对于机器人的运动至关重要.机器人控制器的作用是按照指令和传感信息控制机器人完成特定动作或作业任务.早期的机器人控制器功能简单,对于机器人的运动仅仅停留在定性描述层面.20世纪90年代,IPC+DSP的控制模式在机器人运动控制领域的应用越来越广,之后也出现了利用运动控制卡对机器人控制的嵌入式方法.ROS作为机器人操作系统,其控制体系能够与机器人建模与运动学解算良好的结合在一起,达到精度很高的控制效果[2,3].控制器通信系统是控制器的命脉,通信系统应该能保证可靠性,实时性和反馈同步性.传统总线由于协议不统一,应用较为复杂,正在逐步退出市场.EtherCAT是目前实时性最好、速度最快的工业以太网协议之一,因此EtherCAT是控制器通信的良好选择[4,5].机器人控制器的系统复杂,在实际设计中往往多样性丰富,但通用性较差.新西兰奥克兰 Weiliang Xu 和德国 Christian Daniel 等人研究了 ROS在面向实时性领域的扩展,并且采用模块化的方式进行控制驱动[6,7].其控制器采用TwinCAT进行实时控制.然而,Windows系统对于机器人控制系统负荷过重,同时如果将Windows 用于工业控制并且增加硬件结构,扩展实时性或者修改内核,那么修改之后的系统便不再被认为是开放式结构,而是专用的PC系统,进而拥有自己的局限与支持标准.作为开源平台,使用ROS开发控制器具有很多好处[8].ROS在制订了机器人开发的统一接口标准的同时,也能够避免使用者重复进行代码编写[9,10].哈工大Yanyu Su等人设计的YARC机器人控制器基于ROS和Moveit!进行规划控制,采用PMAC运动控制卡进行通信[11,12].PMAC运动控制卡的接线十分复杂,因此,开发基于ROS与EtherCAT的运动控制器十分必要.

1 机器人结构及控制特点

1.1 机器人结构

系统控制机器人为SCARA平面型机器人,SCARA机器人包含大小臂的转动自由度、一个竖直方向的移动自由度和末端的旋转自由度.其运动学模型可由机器人标准D-H模型表达,运动学简图如图1所示.

  

图1 SCARA机器人运动学简图

在上图所示的坐标系中,SCARA机器人的D-H参数表如表 1所示.

 

表1 SCARA机器人D-H参数表

  

连杆iaiαidiθi100d1 θ1(0)2a100θ2(0)3a20d3040πd4θ4(π2)

可由图中参数推导机器人正运动学与逆运动学的公式如下所示.

 

(1)

 

(2)

1.2 机器人控制特点

机器人共有四个自由度,对于前两轴,即大小臂的转动,直接用电机驱动谐波减速机实现.对于末端移动和自转自由度,则由于结构不同而导致控制方式不同,本系统中,机器人末端采用滚珠丝杠花键副,如图 2所示,上下两电机分别通过带传动驱动螺母转动,当丝杠处螺母转动时,花键处起止推作用,整体上下移动而不发生自转.当末端自转时,两电机驱动两螺母同时转动并保持同速,这样末端发生自转而不产生上下移动.

  

图2 滚珠丝杠花键副

2 系统硬件结构

系统硬件结构框图如图 3所示,可通过两种方式与系统进行交互.当采用示教盒方式时,摆动摇杆进行点动功能或记录各点实现示教再现功能.采用不同的功能时,示教盒向工控机发送不同类型的指令,工控机接收后进行运动规划,通过EtherCAT总线发送至电机驱动器,最终实现机器人运动.当采用人机界面交互方式时,界面程序运行在工控机上,通过电机编码器返回值实时显示当前机器人状态,同时可拖动机器人末端,实现对预定位置的运动规划,并可以实现躲避障碍物的功能,同样的,轨迹通过EtherCAT总线发送至电机驱动器,实现机器人整体运动.

图3 硬件系统结构框图

3 系统软件实施

3.1 示教器功能实现方式

COMMAND=MOVJ_LSPB,

示教器操作系统为Ubuntu 12.04 for ARM, 环境为LXDE,系统依赖库中,ROS库使程序作为节点与规划器通讯,Qt库用于界面生成并作为IDE,还包括开源硬件Arduino库、Boost库等用于基本功能的实现.示教器指令列表如表 2所示.

 

表2 示教器发送指令列表

  

指令名称指令内容DMOVJ手动关节坐标系控制DMOVL手动笛卡尔坐标系控制MOVJ_LSPB关节插补,梯形速度MOVL_RPY_LSPB直线插补,RPY 角,梯形速度MOVC_RPY_LSPB圆弧插补,RPY 角,梯形速度MOVJ_SPLINE_LSPB样条、关节插补,梯形速度STOP停止运动

3.2 规划器轨迹规划功能实现方式

规划器程序运行在工控机中,实现对机器人的控制,其工作方式有两种,包括接受示教器指令后进行规划和接受人机交互界面指令后进行规划.

分享收获农场不仅种蔬果、卖蔬果,还开辟了“田间教育职能”板块。早在几年前,农场就开始展开丰富的服务式体验活动,有帮助小朋友了解蔬果、了解自然的“食农教育”“亲子活动”“夏令营”,也有针对专业农民进行有机种植培训的“新农人培训”等等。

2018年10月22日,省委常委会审议通过《关于支持检察机关公益诉讼工作的意见》。省委书记娄勤俭强调,检察机关公益诉讼工作要坚持司法为民,要紧盯生态环境、资源保护等社会关切、群众关注的重点领域,加大公益诉讼办案力度,推动有关部门及时履职、解决问题,切实增强人民群众的获得感、幸福感、安全感,让公益诉讼真正体现公益、惠及民生。这为检察机关开展公益诉讼工作进一步提供了制度保障,并指明了工作方向。

当接受示教盒指令进行规划时,系统输入为示教盒指令,输出为规划后的路径点序列,信息包含点位置及对应时间.

a) 接受指令,具体指令如图 4所示.

具体处理过程如下:

本节实验中,假设采样率定义为α=M′/M,其中M′为重构利用的量测值个数,M为所有的量测值个数;重构误差计算公式为式中x为原信号,为重构结果;信噪比添加方式同文献[10].由于本文方法在方位向重构时利用了联合稀疏特征,因此本节首先分析方位向基于联合稀疏模型的重构性能,再进行二维成像性能分析.

  

图4 详细指令

b) 利用Boost库对指令进行分解,分解依据为空格符,最终分解结果为ID, COMMAND, TARGET.如上图中指令,分解结果为:

ID = 0001,

改革创新方面,正在积极探索“农房对外出租”“共享农家小院”等模式,盘活利用乡村闲置农房。已有7~8户村民主动响应,准备将空余住宅改作民宿。

示教器需要实现的功能中,提供给操作者的有交互界面及摇杆操作,用于机器人控制的为向机器人发送的指令及从机器人控制器接受的数据.总之,系统输入为操作者的动作,输出为发送至规划器的指令.

TARGET=tool.

按照父母是否有宗教信仰把被试分为两组。分别以儿童在来生信念测量的每个维度的得分及总分为因变量,进行2(父母宗教信仰组别)×6(问题维度)的重复测量方差分析发现,宗教信仰组别和问题维度的交互作用边缘显著,问题维度主效应显著,父母宗教信仰组别主效应显著,其中,父母有宗教信仰组M=1.03,SD=0.10;父母无宗教信仰组M=1.40,SD=0.11。

具体实现过程包括SCARA机器人的URDF模型生成、Moveit!包配置及参数设置.系统输入为操作者通过拖拽界面中末端点的位置与姿态设定目标位姿,并设置运动参数和障碍物等约束,输出为规划好的轨迹点位置、速度及对应时间.

d) 规划结果以ROS通用格式发布到系统中,格式为/joint_path_command,包括header、joint_names和pionts信息.

3.2.2 人机界面实现方式

对示教器功能进行测试,其中包括点动功能的测试及示教再现功能的测试.

c) 根据以上结果获取处理方式,选择相应的方式对后续数据进行获取并完成规划.

3.3 规划器EtherCAT接口功能实现方式

接口程序通过节点的方式订阅ROS中发送的轨迹点的话题,接收后按照ROS自定义的数据解析得到相应的时间和轨迹数据.采用SOEM (Simple Open EtherCAT Master)作为EtherCAT主站,使用裸套接字收发EtherCAT帧.EtherCAT总线的特点为网络传输性能高,其可在300 μs的时间内完成一个以太网帧包括1 486个字节数据的传输.

3.4 驱动器驱动方式

本系统中选用松下A5B系列电机驱动器,通常驱动器的模式主要有PP和CSP模式,PP即为点对点运动,而CSP为周期同步控制.PP模式和CSP模式主要的不同点是PP只需要将轨迹通过EtherCAT发送到驱动器,驱动器自动规划,CSP需要根据驱动器提供的插值周期实时发送给驱动器指令,在本文中采用CSP方式.

陈建伟一转脸,也看见了李萍,没表现出来多惊讶,只是点了点头,“你来了。”语气平淡的像和一个老朋友打招呼,仿佛这十几年他们从来没有分开过。等李萍坐下来,陈建伟才慢悠悠地说:“我也是才听说你在这附近开的店铺。”他没说出口的话是,他真的是找了她很久很久,就像他喜欢了她好久好久。他是为了她,才把店铺开在这里的。

4 实验测试

4.1 实验平台

如图 5所示,实验平台包括SCARA机器人机械系统、各电机驱动器、工控机、示教器.

  

图5 实验平台

4.2 示教器功能测试

人机界面主要基于ROS系统Moveit!库及Rviz库等实现,Moveit!是在ROS系统中为了实现机械臂规划提供的一个强大的功能集成包,它提供了C++、Python和GUI三种接口,在本文中,人机交互界面通过其GUI接口实现.

随着年龄增长,多数老年人患有慢性非传染性疾病,而且多种慢性疾病并存,严重影响其健康和生活质量。通过调查发现,在380位男性老年人中,315人患有慢性疾病(82.89%),在413位女性老年人中,335人患有慢性疾病(81.11%),差异无显著性,尚不能认为男性和女性老年人慢性非传染性疾病患病率存在显著性差异。在793位入住老年人中,650人患有慢性疾病(81.97%),其中267人患一种慢性疾病(33.67%),223人患两种慢性疾病(28.12%),160人患两种以上慢性疾病(20.18%),具体见表2。

与西方白种人相比,黄种亚洲人更加追求白皙、莹润、有光泽的皮肤。亚洲区域化妆品研究人员更加注重对改善肤色的研究,但研究较多集中在黑色素对皮肤影响方面,对于皮肤泛黄研究较少。笔者对皮肤泛黄的形成因素、发生机制及影响因素进行综述,以期指导相关化妆品的开发。

4.2.1 点动测试

示教盒界面中点动测试功能如图 6所示.示教盒为通用示教器.最多可支持6轴,由于控制机器人为SCARA机器人,只有4轴进行运动,所以示教盒中5、6轴处于禁止状态,且上方各关节实时显示模块中,5、6轴关节数据不显示.

  

图6 示教器点动测试界面

当移动摇杆进行手动点动时,示教器向主控制器发送指令,具体指令可在ROS系统中显示,如图 7所示.

3.2.1 示教盒指令实现方式

  

图7 示教器发出指令

4.2.2 示教再现功能测试

示教盒示教再现功能如图 8所示.图中为机器人在经点动模式后记录的示教点,在此功能下,示教器将各点信息发送至规划器进行规划,规划器根据发送信息采取不同规划方式.

  

图8 示教器示教再现功能界面

以MOVJ_LSPB为例,对各个关节进行了关节角度的梯形速度曲线插补,进而生成具体轨迹信息.

各轴角度轨迹可在ROS系统中显示,如图 9所示.

从公示语翻译、管理、制作等仅靠译者一人完成是不可能的,因此我们需要团队运作,以免任一环节出现问题。其次要规范公示语的翻译,译者必须精通汉英语言文化,具有扎实的专业知识和社会学知识。我们应聘请汉英翻译专业人士或精通汉语的外国友人认真会诊、审核、校对现有公示语的英文文本的翻译,使公示语的翻译达到最佳效果。

  

图9 各轴角度轨迹图

同时,系统中集成的Rviz模块可以实现机器人的轨迹显示.如图 10所示.

  

图10 机器人轨迹显示

4.3 人机界面功能测试

人机交互界面主要基于Moveit!库和Rviz库实现.其功能包括实时状态显示和手动交互功能.对于实时状态显示,首先建立机器人统一描述模型URDF,利用TF库实现机器人坐标关系变换的计算,利用Rviz实现状态的显示功能,如图11所示.

  

图11 机器人状态显示

手动交互功能基于Moveit!实现,如图 12所示.机器人末端设置可拖拽球体,通过对球体拖拽可实现对机器人末端的手动移动和转动,从而使机器人移动至期望位置.到达期望位置后可根据设置完毕的参数进行轨迹规划并执行,参数设置及规划执行界面如图 13所示.最终可规划出实际轨迹并显示,如图 14所示.

  

图12 手动交互功能

  

图13 操作界面

  

图14 轨迹规划

5 结论

提出一种基于EtherCAT总线的ROS系统运动控制器设计,由于控制对象为机器人内部伺服电机,所以控制器具有通用性,同时分析了本文中被控SCARA机器人伺服电机控制特点.运动控制器的设计包括示教器、运动规划器及规划器、驱动器接口部分及人机交互界面,硬件部分由示教盒、工控机实现,软件部分基于ROS系统实现,可通过示教方式和人机交互方式实现对机器人的运动控制.最终完成控制器测试实验,分别对示教点动、示教再现及人机交互的方式进行测试,结果表明本设计可以有效的实现SCARA机器人的运动控制.

今年,中华龙舟大赛经历了万宁、长沙、盐城、福州、南京、昆明六大分站赛,赛事为城市带来竞渡激情的同时,也为每一座城市注入了崭新活力和文化自信,带动了当地水文城市建设。划向绿水青山,面朝碧海蓝天,这也许正是中华龙舟大赛的内涵所在吧!

参考文献:

[1]李开生,张慧慧,费仁元,等.机器人控制器体系结构研究的现状和发展[J].机器人,2002,22(3):235-240.

[2]ROS (Robot Operating System)[EB/OL]. http://www.ros.org.

[3]M.T. Hoske. ROS Industrial aims to open, unify advanced robotic programming[J]. Control Engineering, 2013.

[4]U. Reiser. ISG-virtuosM-das Gateway zwischen industrieller Echtzeit-Steuerungstechnik und dem Open Source Roboterbetriebssystem ROS[J]. Software.

[5]王伟. 基于 EtherCAT 的工业机器人控制器通信系统设计[D]. 南京:东南大学, 2015.

[6]C. Scheifele, A. Lechler, C. Daniel and Weiliang Xu. Real-Time Extension of ROS based on a Network of Modular Blocks for Highly Precise Motion Generation[J]. IEEE Advanced Motion Control ,2016,4:22-24.

[7]P. Neto, J.N. Pires and A.P. Moreira. Accelerometer-based control of an industrial robotic arm[C]. The IEEE International Symposium on Robot and Human Interactive Communication, 2009. Ro-Man. IEEE, 2009:1192-1197.

[8]M. Naumann, K. Wegener and R.D. Schraft. Control Architecture for Robot Cells to Enable Plug'n'Produce[C]. IEEE International Conference on Robotics and Automation, 2007:287-292.

[9]黄开宏,杨兴锐,曾志文,等. 基于ROS户外移动机器人软件系统构[J].机器人技术与应用, 2013(4):37-41.

[10]S. Cousins, B. Gerkey and K. Conley. Sharing Software with ROS[J]. IEEE Robotics & Amp Amp Automation Magazine, 2010, 17(2):12-14.

[11]Yanyu Su, Yongzhuo Gao, Yan Wu, Wei Dong, Weidong Wang and Zhijiang Du. YARC-A Universal Kinematic Controller for Serial Robots Based on PMAC and MoveIt![C]. Asia-Pacific Signal and Information Proceeding Association, 2014 Summit and Conference. IEEE, 2014:1-6.

[12]Yongzhuo Gao, Yangyu Su, Wei Dong, Zhijiang Du, Xueshan Gao and Yu Mu. U-Pendant: A Universal Teach Pendant for Serial Robots Based on ROS[C]. IEEE International Conference on Robotics and Biomimetics (ROBIO). IEEE, 2014:2529-2534.

 
李明洋,唐国宝,王立坤,马晓星,高永卓
《菏泽学院学报》 2018年第02期
《菏泽学院学报》2018年第02期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号