APP下载

基于VRML的空间并联机器人运动仿真优化

2012-07-09贾庆浩李啸隽

图学学报 2012年6期
关键词:支杆导杆引线

贾庆浩, 李啸隽, 刘 林

(华南理工大学设计学院,广东 广州 510640)

Stewart平台机构是运动仿真平台中最著名的一种6自由度并联机构平台,如图1所示。本文所建立的Stewart 平台机构,包括驱动机构(液压缸),负载平台和基台,6个可伸缩的支腿,负载平台和导杆之间使用6个球铰连接,基台和液压杆之间使用6个虎克铰连接。通过6个支腿的伸缩运动可以实现负载平台在工作空间范围内的6自由度运动,具有精度高、刚度大、结构稳定、承载能力强、运动惯量小、动态特性好等优点[1]。

机器人反解算法复杂,计算量大。文献[2]构建了一个 Stewart原型仿真平台,单纯采用反解算法,通过计算上铰链点的坐标,生成旋转矢量,并将导杆和液压杆旋转平移到指定位置实现动态装配。文献[3]对该平台极限位姿下的状态进行了仿真,但并未对反解算法的优化做深入分析。这些研究都具有重要的价值,然而在提升仿真效率方面,国内报道甚少。

图1 Stewart平台示意图

本文采用优化后的方法,建立了一个基于VRML的Stewart机构仿真平台,该仿真平台的效率相比于原系统有很大提升,对加速 Stewart机构的开发提供了帮助。用户可以实时观察Stewart平台的运动过程,对其空间运动情况做出分析。在完成通用平台基本核心功能的同时,JavaScript控制台输出的反馈数据可以作为平台的结构设计参考。

1 Stewart平台在虚拟现实中的实现

1.1 Stewart平台的建模

VRML具有很好的构建虚拟环境的能力,但在三维实体建模方面的功能不完善。本文采用首先在SolidWorks中初步建模,导入VRML环境后再进行修改的方法,这种方式快捷、直观,也比较高效。

1.2 运动学反解变换矩阵

Stewart平台的姿态描述采用多刚体的旋转坐标法,通过负载平台绕坐标轴旋转参数与平移参数来求得6个支杆(导杆与套筒)的长度。活动坐标系R′固定在负载平台中心位置,随负载平台变化,固定坐标系R固定在基台中心。如图2所示,固定坐标系R和活动坐标系R′间的矢量可以通过方向余弦矩阵Q[4]来转化,基于以上原则建立的转换矩阵为

Bi为负载平台各铰链点在活动坐标系R′下的坐标, Pi为负载平台相对于基台的平移矢量,从而负载平台各铰链坐标可表示为

图2 坐标转换示意图

1.3 优化原理

在 VRML中,由于没有真实的物理环境,通过运动学反解出支杆的长度之后,还必须再求得每个导杆和套筒的位姿,这样必然造成计算效率降低。在这里,提出一种优化办法,其原理如图3所示。预定义6个引线节点c1-c6,引线节点的方向由 point[-1,-1,0]和 point[-1,1,0]这两个点唯一确定,即沿y轴正向。由于刚导入到VRML环境中的平台各部分之间运动约束尚未添加的缘故,各导杆和套筒方向均与y轴平行,本文以v1表示初始化后的导杆和套筒方向。系统运行后,为了获得支杆的位姿和长度,首先通过 ga(即是负载平台和6个铰链的组合)的 rotation(旋转)与 translation(平移)两个域的改变值计算负载平台上6个铰链的坐标a1-a6。然后求解 a1、b1两点间的距离是否处于杆长最长值与最短值之间,若条件符合,就将两个新的坐标点a1和b1的值传递给预定义的引线节点c1的坐标,以动态更新预定义的引线节点的方向。然后以引线节点的新方向为基准转动导杆和套筒至下一位置,根据上铰链的位移来移动导杆。套筒(tt1)的一端固定在 b1点,并不需要移动,其转动由v1向量转至-c1向量。导杆(gg1)的上端跟随负载平台移动,其转动为v1向量至c1向量,与tt1转动方向相反。采用动态更新的引线节点后,导杆和套筒就可以快速旋转至引线的新方向,提高了计算效率。其流程如图4所示。

图3 优化原理示意图

图4 优化原理流程图

1.4 运动反解模块的实现

VRML不能进行精确的数学计算,运动学反解部分通过JavaScript实现。为了实现控制功能,本文基于运动学反解原理开发了控制模块,控制流程如图5所示。用户对负载平台进行操作,反解模块自动地做运动学反解并判断杆长条件,若符合条件,就赋与6个支杆的位姿和长度。为便于对仿真数据做分析,系统在JavaScript控制台中实时输出6个上铰链点的坐标和6个支杆的长度。此外,还提供了仿真动画接口,为将来的仿真工作提供一个平台。

Script节点是数据在VRML和JavaScript进行通信的桥梁[5-6],事件到达Script的eventIn入口,经过Java程序解释后,在通过eventOut返回值。为了实现仿真过程,必须定义好路径,将JavaScrip与VRML之间的参数进行相互传递,它们的数据类型必须是一致的[7]。路径的设置是关键的一个部分,VRML中的域分为field(私有域)和exposedfield(公共域),其中公共域可以通过引用节点在JavaScript里面直接操作,私有域只能通过路径加上定义原节点的方法改变。交互路径如图6所示。

图5 程序控制流程示意图

图6 主交互路径图

通过JavaScript与VRML的交互,实现了机器人运动的反解优化。部分程序如下:

DEF yingxian1 Shape {

#定义部分

geometry IndexedLineSet {//定义引线

2 仿真结果

2.1 优化前后插补效果

传统的Stewart平台反解计算在求解出支杆的长度后,采用与上文类似的方法获得支杆新位姿的方向向量,再让导杆和套筒旋转到新的方向,但未采用动态更新引线节点的方式来获取新的方向。Stewart平台的位姿有无数种,显然一一列举每种情况下的插补效果不现实。为了验证2种方法的差异性,初始化一组位姿,通过JavaScript控制台,将位姿数据导入Matlab进行分析,得到杆件的长度变化与插补次数曲线。图7分别为未使用、已使用引线引导方法的杆件长度与插补次数变化曲线。通过两者的对比,可以发现,在保证插补精度基本不变的情况下,插补次数从先前的167次下降到了85次左右,降幅达49.1%。由此得知,经过优化后的方法提升了仿真系统的仿真效率。

图7 优化前后插补次数对比图

2.2 机器人位姿效果

完成后的仿真界面如图8所示。拖动其中的X、Y、Z、X_R、Y_R、Z_R滑块分别可以实现平台沿 XYZ轴的平移与转动,也可以直接拖动平台。而浏览器自带的JavaScript控制台可实时输出平台的6个位姿参数与6根导杆的长度,这些参数可以对Stewart的结构设计提供指导。

图8 仿真界面图

3 小 结

本文以Stewart机器人平台为例,基于VRML编程语言实现该型平台的运动学仿真。在实现运动学的过程中,采用动态更新 VRML的IndexedLineSet节点的方式,为机构的位姿提供引导。分析结果表明该方法有很高的效率,说明模型结构合理,实现仿真的思想具有一定的应用价值。总之,现代编程思想利用于工程实践,进行产品的仿真,可以大大提升仿真的效率,对于缩短产品的研发周期、减少开发费用具有重要意义。

[1] Stewart D A. Platform with six degrees of freedom [J].Proc Inst Mech Engrs,1965,180(15): 371-386.

[2] 姜洪洲,赵 慧,韩俊伟,等. VRML在6自由度并联机器人设计中的应用[J]. 中国机械工程,2003,14(11): 920-923.

[3] 马建明,何景峰,熊海国,等.飞行模拟器极限位姿的可视化仿真分析[J]. 计算机仿真,2010,27(9):235-238.

[4] 黄 真. 并联机器人机构学理论与控制[M]. 北京:北京出版社,1997: 36-38.

[5] 孔令富,史庆周,崔 凯. Stewart并联机器人仿真系统的实现[J]. 计算机仿真,2003,24(5): 94-96.

[6] 汪兴谦. VRML与Java编程实例讲解[M]. 北京: 中国水利水电出版社,2001: 83-88.

[7] 管贻生. Java高级实用编程[M]. 北京: 清华大学出版社,2004: 324-325.

猜你喜欢

支杆导杆引线
一种塑料型材热刀的自动张紧装置
基于超导磁体的高温超导电流引线的传热优化
心形曲柄导杆间歇机构分析与综合
单支杆腹撑支架干扰测力及PIV试验研究
带引线的固体酒精
探针支杆尾迹特性对压气机叶栅性能的影响
Cr12MoV导杆热处理开裂分析
鞭炮迷宫
教学用多功能支架
基于RecurDyn的摆动导杆机构的运动特性分析