基于EtherCAT的并联六自由度平台设计
2016-11-17徐志鹏李志嘉谢代梁
周 俊,徐志鹏,李志嘉,谢代梁
(中国计量学院 浙江省流量计量技术研究重点实验室,杭州 310018)
基于EtherCAT的并联六自由度平台设计
周 俊,徐志鹏,李志嘉,谢代梁
(中国计量学院 浙江省流量计量技术研究重点实验室,杭州 310018)
在设计六自由度运动平台时,运动精度是重要的评价指标,为了能够降低位姿跟踪误差并提高各轴的协同控制,在对平台进行位姿正反解的基础上,设计了一套基于EtherCAT总线的六自由度运动平台,通过EtherCAT网络进行数据帧的快速传输;系统硬件由工控机、EtherCAT网络、伺服电机、Stewart型平台构成,系统软件则采用VC++进行上位机界面的开发,由TwinCAT进行下位机控制程序的开发,通过电子凸轮实现平台各轴的同步控制,其中上下位机通过ADS进行通讯;由实验结果可知,六自由度平台平移跟踪误差小于0.04 mm,转动跟踪误差小于0.01°,静态定位精度优于0.1%,达到预定的控制要求;基于EtherCAT的六自由度平台具有良好的同步性能和位姿精度,也表明EtherCAT在多轴同步伺服控制上具有较好的响应速度和控制精度。
六自由度平台;EtherCAT;电子凸轮
0 引言
并联六自由度运动平台是一种可以实现空间6个自由度运动并且能够模拟出空间各种运动姿态的并联机构,可以对舰船、汽车、飞机、宇航等交通工具进行运动模拟[1]。该机构受到学术界的关注起源于德国学者Stewart在1965年发表的论文,随后各国学者对其进行了大量研究,国内部分高校也对其进行了研究并取得一定成果[2]。
六自由度平台的驱动方式主要有液压、气动和电动3种基本方式。目前由于液压驱动的大功率特性,成为国内外科研院所研究的热点,但是液压六自由度平台具有系统结构庞大、控制部分复杂、控制精度难以达到等缺点。本文依此设计了一种以伺服电机驱动电动缸传动的六自由度平台控制系统。
传统的伺服控制方式在网络化、响应速度、实时性等方面已经无法满足高精度的多轴同步控制,因此需要设计一种基于高带宽、高实时性的通信总线来解决这个问题。目前国际上有多种常用的实时以太网总线,EtherCAT是德国Beckhoff公司提出的一种,其在拓扑结构、时钟同步、传输速度和构建成本上有较大优势,因此根据六自由度平台中伺服控制的需求,搭建了以EtherCAT总线为基础的伺服控制系统,结合VC++和TwinCAT编写了控制软件,进行了性能测试。
1 平台运动学分析
六自由度平台的结构主要由基平台、动平台、两平台中间的6个电动缸及上下各6个虎克铰构成。其中基平台固定,通过下虎克铰与电动缸连接,电动缸另一端通过上虎克铰与动平台连接。通过电动缸的伸缩运动实现动平台在x、y、z方向的平移和转动。
1.1 平台坐标系的确定
为了计算平台位姿与电动缸长度的关系,需要建立六自由度平台数学模型(见图1),在基平面建立基坐标系O1-X1Y1Z1,原点在下绞点外接圆的圆心,X1轴垂直下绞点B1和B2的连线,Z1轴垂直基平面向上,Y1轴按右手法则确定;在动平面建立动坐标系O2-X2Y2Z2,原点在上绞点外接圆的圆心,X2轴垂直下绞点P1和P2的连线,Z2轴垂直动平面向上,Y2轴按右手法则确定。
动平台的位姿描述分为两个部分,动坐标系原点O2在基坐标系中的坐标P=[xyz]T以及动坐标系相对于基坐标系3个轴X1、Y1、Z1的转动角度α、β、γ。故位姿可记为:X=[xyzαβγ]。
图1 六自由度平台数学模型
1.2 平台位姿的反解
(1)
式中,T为动坐标系到基坐标系的旋转变换矩阵
(2)
式中,sα为sin(α)的缩写,cα为cos(α)的缩写,其余类推,则各杆的长度为
(3)
1.3 平台位姿的正解
由于结构的复杂性,正解过程难度较大,一般通过牛顿迭代法来实现[3-4]。由于牛顿迭代法计算偏导数较为复杂,本文选择将偏导数替换为差商的弦割法实现。记反解方程为
(4)
(5)
则有迭代格式
(6)
其中
(7)
然后按克拉默法则求得
(8)
以上均有i=1, 2, …, 6,j=1, 2, …, 6。
2 系统软硬件设计
2.1 系统硬件结构
六自由度平台系统结构如图2所示。系统为一主多从结构,以工控机为主站,伺服驱动器为从站,建立EtherCAT线型拓扑网络[5]。工控机协调处理网络数据,通过伺服驱动器控制电机转动,驱动电动缸,实现六自由度平台在三维空间内6个自由度的运动。传感器安装于电动缸的两端,用于原点定位和安全保护,通过驱动器将信号转换为EtherCAT数据。
图2 六自由度平台系统结构图
硬件选型如下:
1)工控机:倍福公司的PC6915一台,具有双网口,可根据网络拓扑结构选择使用。
2)伺服驱动器:倍福AX5203,双通道伺服驱动器,共3个驱动器,控制6台电机。
3)伺服电机:倍福AM8033,共6台;
4)传感器:科瑞DW-AD-621-M8,共12个;
5)平台:由基平台、虎克铰、电动缸和运动平台构成的Stewart型六自由度平台,其运动指标见表1。
表1 6DOF平台运动指标
2.2 系统软件
系统软件构成如图3所示,包括上位机和下位机两部分。上位机使用VisualC++开发,主要包含多个人机交互界面,通过ADS与下位机通信;下位机程序使用倍福公司的TwinCAT软件开发,包含多种平台运行模式下的电机运行指令。
图3 系统软件框图
2.2.1 上位机程序
人机界面可通过运行模式切换按钮进入不同界面。可实现参数设置、运行模式选择、目标运动设定、电机和平台位置实时显示等功能。
其中平台运行模式分为5种:找零位,通过寻找电动缸底端的行程开关来确定各轴原点位置以及平台中位;回中位,回到平台的中心位置,便于平台最大行程的单自由度运动;单缸调试,安装调试时查看电动缸性能;自由度运动调试,平台以在不同自由度运动;连续运动调试,导入轨迹文件,平台在幅度内可以实现任意轨迹运动。
2.2.2 下位机程序
不同运动模式下调用的下位机有所不同,其中找零、回中位、自由度运行调用多轴运行,单缸运行使用单轴运行,调用基本的运动控制模块即可实现(见表2);连续运动则需通过电子凸轮控制来实现连续的不规则轨迹。
表2 基本运动控制功能块
连续运动用于模拟船舶在海上受风浪影响下的振动情况,由于海上船舶的运动轨迹非常不规则,无法使用方程描述,只能使用描点方法将轨迹分成多个点来记录,点间隔时间为50ms。使用上述的基本运动功能难以实现,因此选用了电子凸轮。
电子凸轮(ElectronicCAM),是对机械式凸轮机构的一种模拟,其把机械凸轮的轮廓曲线以表格的方式存储在运动控制器中,其中包含主从轴的对应信息。在执行时,根据主轴位置查询、插补得到从轴控制信息,最后经过从轴的缩放、偏置之后输出给从轴的控制环路执行[6]。
程序中建立6个电子凸轮,从轴分别为6个实轴对应六台电机,耦合于同一个虚拟主轴,通过控制主轴止实现电子凸轮的启动停止,如图4所示。
由于电子凸轮的轨迹大小受到限制,不能实现长时间的变化轨迹,因此将轨迹按固定点数分段,根据更新条件不断分段更新凸轮轨迹。凸轮数据分为前后两段,执行前段时,将后段凸轮曲线进行修改;同理在执行后段时,将前段凸轮曲线进行修改,依此循环,可实现无限长的不规则运动。
图4 电子凸轮程序流程图
2.2.3 上位机和下位机通信
VC++与TwinCATPLC之间的通信主要是由ADS实现。ADS是由倍福公司建立在TCP/IP协议之上,为实现TwinCAT内部与接入系统的设备实现通讯,以及在TwinCAT外部与其他应用程序进行数据交换而开发的一套自动化设备规范[7]。
使用VC++开发HMI时使用ADS-DLL接口方式与TwinCAT进行通信,调用TcAdsDll动态链接库,通过TwinCAT路由器和API函数来实现与ADS设备之间的通讯。TwinCAT软件提供了4个专用接口文件与VisualC++进行链接(见表3)。程序中先将ADS通讯进行初始化,然后调用相关的异步通讯读写函数来实现对PLC变量的读写操作,从而实现PLC与VC++之间的通信。
表3 ADS接口文件
3 测试结果及分析
3.1 动态跟踪测试
经海上船舶运动数据采集,得到一组船舶在海上的运动轨迹。将轨迹文件导入系统软件,进行连续运动测试,其运动轨迹如图5~6所示。图中数据由电机编码器反馈计算得到,不包含机械设计装配造成的误差。测试轨迹在3个平移自由度的轨迹分别如图5中的X、Y、Z所示,运动范围在±40 mm以内。测试轨迹在3个转动自由度的轨迹分别如图6中的rX、rY、rZ所示,运动范围在±7°以内。
图5 平台平移轨迹图
图6 平台转动轨迹图
图7为平台平移3个自由度的跟踪误差图,误差在±0.04 mm以内。
表4 静态定位精度测试
图7 平移跟踪误差
图8为平台在转动3个自由度的跟踪误差图,误差小于±0.006°。
图8 转动跟踪误差
3.2 静态定位精度
在运动平台上面安装激光陀螺仪,进行静态定位测试。受测量仪器限制,只能测试平台转动自由度数据。测量时平台从中位出发运动到目标位置,然后记录数据,每个转动角度测试3次,取平均值为测量结果(见表4)。根据测试结果知,当转角较小时相对误差偏大,最大值为绕Y转动5°时,相对误差优于0.1%。
4 结论
六自由度平台控制系统采用EtherCAT总线控制伺服电机,实现系统的网络化和数字化,降低维护难度。采用电子凸轮控制方式,提高系统的控制精度。平台平移动态跟踪误差小于0.04 mm,转动跟踪误差小于0.01°,具有良好的跟踪特性。静态定位精度在优于0.1%。
[1] 张 淼. 基于滚珠丝杠传动的六自由度平台设计研究[J].机械传动, 2014, 38(8): 100-103.
[2] 皮阳军. 电液伺服并联六自由度舰船运动模拟器轨迹跟踪控制及其应用研究[D]. 杭州: 浙江大学, 2010.
[3] 韩方元. 并联机器人运动学正解新算法及工作空间本体研究[D]. 长春: 吉林大学, 2011.
[4] 张尚盈, 赵 慧, 韩俊伟. 六自由度运动平台实时控制的正反解算法[J]. 机床与液压, 2003, 3: 133-135.
[5] 刘 冬, 闵华松, 杨 杰. 基于EtherCAT的机器人控制总线方案研究[J]. 计算机工程与设计,2013, 34(4):1238-1243.
[6] 卫 光,郭 坤. 三伺服枕式包装机电子凸轮控制系统的研究与应用[J]. 包装与食品机械, 2012, 30(6): 57-59.
[7] 郑士富,彭 铭. VC++与TwinCAT的混合编程研究[J]. 仪器仪表用户, 2008, 15(3): 109-110.
Development of a 6DOF Platform Based on EtherCAT
Zhou Jun,Xu Zhipeng,Li Zhijia,Xie Dailiang
(Flow Measurement Technology Key Laboratory of Zhejiang Province, China Jiliang University,Hangzhou 310018,China)
Motion precision is a important evaluation index when design a 6DOF Platform .In order to reduce pose tracking error and boost synergy control, a multi-axis servo application based on EtherCAT is proposed on the basis of platform pose calculation of positive and negative resolving,and data is swiftly transmited by EtherCAT net. The hardware is mainly made up of IPC, EtherCAT, servomotor and Stewart platform. The software is developed by VC++ and TwinCAT,and ADS is used for communication.Electronic CAM is employed to achieve synchronous control between different axies. Experiment result show that the translational tracking error is less than 0.04 mm, turn tracking error is less than 0.01°, static tracking error is less than 0.1%. In a word, it can achieve the control requirements.A 6DOF platform based on EtherCAT has favourable synchron performance and pose precision.It also showed that EherCAT used in multi-axis synchron control has good response rate and control precision.
6DOF platform; EtherCAT; electronic CAM
2015-09-22;
2015-11-05。
国家自然科学基金(51305419);质检公益性行业科技专项(201410133);浙江省重大科技专项(2013C01137);浙江省“仪器科学与技术”重中之重学科人才培育计划项目资助(JL150514)。
周 俊(1984-),男,浙江金华人,硕士研究生,主要从事总线技术、自动化技术方向的研究。
1671-4598(2016)03-0183-03
10.16526/j.cnki.11-4762/tp.2016.03.049
TP273
A