现有的仿真系统多是借助于通用CAD软件如I2DEAS、Pro/ Engineer、UG、ADAMS、SolidWorks、Auto2 CAD等建立仿真试验平台,也就是通过已有的成型软件进行二次开发。这种方法具有容易实现机床建模、仿真效果较好等优势,但是进行二次开发必须先购买这些通用软件,而这些软件有时难以满足特殊的复杂轨迹的仿真要求,难以实现仿真的控制与人机交互,且所有的仿真都不能脱离这些系统,很难集成到机床控制系统中,因此具有一定的局限性。
并联机器人或并联机床的机构运动比较复杂,其工作空间多为不规则的三维空间,且在操作空间的位移和工作空间的位姿变化是非线性的。通过对并联机床进行实体建模和运动学仿真,利用计算机动画技术模拟机床加工过程,可以提前发现机床设计中结构尺寸不合理带来的静态或动态的干涉问题,验证机床加工轨迹规划结果的正确性,防止出现碰撞或机床本身无法实现的加工区域,避免造成机床损坏。
本文以Windows2000为开发平台,采用Visual C ++及三维图形软件标准接口OpenGL工具开发了并联机床的仿真软件,利用计算机图形技术,通过动画形式形象、直观地模拟并联机床的结构及机构运动过程,对机床结构,运动原理等进行了形象说明,三维机构运动仿真与真实机床基本相同,为新型五自由度并联机床的顺利研制提供了可靠保证。
2.计算机仿真工具
OpenGL OpenGL是一个三维的计算机图形与模型库<5>,即开放性图形库(Open Graphic Library)。由于OpenGL在三维真实感图形制作中的优秀性能,使它成为新一代工业标准的三维计算机图形软件接口。
OpenGL的图形库除了提供基本的几何要素(点、线、多边形)的绘制函数外,也提供了绘制规则的二次曲面(如球、锥、多面体等)以及复杂曲线曲面(如Bezi2 er ,Nurbs等)的绘制函数,在此基础上可以搭建起复杂的三维模型,并可以设置光照模型及材质属性以生成更逼真的图像。OpenGL带有图形消隐功能,利用Z缓存(Z2buffer)技术进行深度测试,实现曲面消隐,增强图形的真实感。此外OpenGL还具有颜色、位图、纹理、混合、反走样等一系列特殊处理功能,使仿真环境更真实。OpenGL的应用使仿真系统的编程量减少,开发者无须掌握大量的图形学知识,而可以集中精力研究困难的算法问题,减少了开发工作量。
此外,OpenGL与硬件无关,可以在不同的硬件平台上得到实现,可以方便地将应用程序移植到不同的操作系统中。由于它是一个应用程序接口- 3D API ,因而可以通过程序调用OpenGL ,将仿真系统集成到控制系统中,实现对机床运动仿真的实时控制,提高系统的交互性与可操作性。
3.并联机床特点与机构运动数学模型
并联机床结构特点和运动学数学模型是其实体建模和运动仿真的基础,因此需要进行具体分析。
五自由度并联机床特点
五自由度并联机床机构所示,由定平台、动平台以及连接定平台与动平台的分支等组成。其特点在于:定平台通过五个结构完全相同的驱动分支UPS(虎克铰―移动副―球副)分支以及一个约束分支PRPU(移动副―转动副―移动副―虎克铰)分支与动平台相连接。该机构可以实现三维移动和两维转动,具有刚度重量比大、结构简单、动态性能好和工作空间较大等优点,并且运动学反解十分简单,使控制算法易于实现。
机构运动数学模型
在上下平台分别建立坐标系,定坐标系{ A }固定于定平台上,动坐标系{ B }建立在动平台上。五自由度并联机床运动包括五个驱动分支驱动机床动平台的运动和约束分支的随动。动平台相对于定平台的位姿参数表示为(A X BO,A Y BO,A Z BO,α,β) ,其中{ B }的原点O B在{ A }中的位置坐标表示为A P BO = < A X BO,A Y BO,A Z BO > T,{ B }相对于{ A }的姿态欧拉角为(α,β)。
由机床的实际结构尺寸,可求得五个驱动分支的杆长l i( i = 1 , 2 ,…, 5)为l i = f i(A X BO,A Y BO,A Z BO,α,β; W , r A, r B,θ,<)(1)式中W , r A,r B,θ,<为机床的结构参数。
用D― H坐标对中间约束分支PRPU分支进行分析(变量d 1、a 2、θ2、θ3、θ4为各个运动副的运动参数,常量a 4为机构参数) ,可得到中间分支的运动模型为d 1 = A Z BO + a 4 sβa 2 =(A X BO - a 4 cacβ)2 + (A Y BO - a 4 sacβ)2θ2 = arctan A Y BO - a 4 sacβA X BO - a 4 cacβθ3 =α-θ2θ4 = -β(2)由动平台的位姿参数,可以确定机床各个分支的运动情况,利用这些数学模型来驱动各个分支联动,就可以实现机床的机构运动仿真。
4.并联机床模型构造
通过以上对并联机床结构特点的分析,即可根据实际结构参数建立机床的模型。建模时首先对机床部件根据其主要形体特征进行简化式造型,然后把这些部件组装成整机。五自由度并联机床结构包括的固定部件为床身和工作台,运动部件为动平台、五个驱动分支和一个约束分支。由于在运动仿真过程中,固定部件是静止不动的,而运动部件按规划的位姿和速度进行运动,因此二者在模型构造时需要采用不同的方法,以便提高机床仿真的效果。
OpenGL绘制的所有复杂三维物体都是由一定数量的基本图形元素构成的。根据并联机床的结构尺寸,可计算出其主要部件在空间的相对位置,再通过OpenGL图形函数库提供的基本建模功能,利用矩阵堆栈技术清晰地表达出各个构件的相对位置关系和运动的层次关系,从而搭建出并联机床的实体模型。
机床固定部件模型构造机床固定部件是静止不动的,在机床运动过程中,这类部件不再进行刷新,可以减少仿真显示的数据量,提高显示速度。床身构件多采用立方体和圆柱体等规则的二次曲面构造,底座和立柱采用长方体模型,直接利用OpenGL中的函数构造;床身的上平台结构比较复杂,由于OpenGL很难实现实体的布尔差运算,因此可由多个简单的规则形体组合而成,且利用复杂多边形的镶嵌技术来实现上平台的建模。同样,机床工作台上的T型槽也可由多个长方体组合简化而成。
机床运动部件模型构造运动部件在机床运动过程中需要实时刷新,因此可通过输入参数进行建模。在机床运动过程中,利用参数变化来确定运动对象在空间的几何位置,实现运动部件的位置变化如旋转和平移等运动。动平台可简化为一台锥体,上面安装的电主轴和铣刀都由圆柱体构造而成。驱动分支本身由摆动杆和伸缩杆组成,其中摆动杆由空心圆柱体构造,伸缩杆由实心圆柱体构造;摆动杆通过虎克铰与床身上平台连接,虎克铰由圆柱体和空心椭圆柱组合而成;伸缩杆通过球铰和动平台相连,球铰简化为球体。约束分支中第一个移动副构件为滑动块,由长方体组合而成,转动副构件由立方体、实心圆柱体和空心圆柱体组合而成,第二个移动副构件由实心圆柱体构成,虎克铰采用圆柱体和空心椭圆柱组合而成。
5.并联机床机构运动仿真设计
经过对并联机床的运动学分析,建立了机床运动学数学模型,可以掌握并联机床的运动特点。并联机床机构运动仿真就是根据机构运动的数学模型,利用OpenGL提供的模型在空间中进行各种矩阵变换如旋转变换、平移变换、缩放变换等实现机床的运动仿真。在并联机床运动的过程中,各个构件的运动不是孤立的,而是与其他构件的运动有一定关联,因此需保证各构件运动的协调一致。
构件运动仿真设计机床运动仿真主要是通过加工过程的轨迹规划,得到在各个离散时间点动平台的位姿,当动平台位姿确定后,根据运动约束关系,驱动分支的位姿也相应确定,驱动分支一端由机床床身上平台的虎克铰位置确定,另一端由动平台上的球铰位置确定,其方向为通过相应虎克铰和球铰之间的连线;约束分支的各个构件的位姿也同样可以确定。
机床运动仿真主要是通过坐标变换来实现。在OpenGL中用的坐标系为世界坐标系和局部坐标系,其中世界坐标系是一个右手坐标系,但是世界坐标系和数学中通用的笛卡儿坐标系不同,其X轴自左向右,Y轴自下而上,Z轴由里及外;局部坐标系是相对于建模的物体而言的,其坐标原点往往是物体的形心并随物体的移动而移动。利用坐标变换来实现机床各个构件模型之间的相对位置和几何变换,其中平移变换时局部坐标系的方位不变,变化的只是局部坐标系的原点位置,旋转变换要改变物体局部坐标系的方位,一旦改变坐标系的方位均影响以后物体的绘制。
由于实际的机床坐标系、定坐标系与OpenGL中的世界坐标系、局部坐标系不同,因此机床各个构件在这些不同坐标系之间位姿的转换便成为机床运动仿真的关键。根据机床运动的数学模型,在机床运动过程中基于动平台的位姿参数可以得到机床各个运动构件在机床定坐标系中的位姿参数,然后将这些位姿参数转换成OpenGL中的坐标系表示形式,利用坐标系的平移变换和旋转变换,可以得到机床各个构件在运动过程中的模型位姿,其中各个构件的位置变化用平移变换实现,姿态变化用旋转变换实现。对每一组位姿参数都进行同样处理,然后对机床模型画面进行计算生成和刷新显示,就实现了机床运动仿真。
机构约束与干涉碰撞检验分析并联机床与传统机床结构形式相差较大,其关键构件的运动不像传统机床那样“规则”,并联机床在运动过程中各个分支之间以及与机床其它部件之间是相互牵制的,在运动到某些位置时可能会出现干涉,即所谓的“卡住”现象。
本机床动平台上有6个铰链,定平台上有6个铰链(实际一个移动副在定平台上方) ,存在的约束主要包括最长最短杆长约束(伸缩杆)或最大最小行程(滑块)约束、球铰和虎克铰的极限摆角约束及构件之间的干涉约束等。由于结构的限制,理论分析和实际制造的机床有一定的差别。对于杆长约束和滑块行程约束,需要保证实际杆长和行程在最短与最长行程极限值范围内,可根据机构的数学模型计算出其实际长度,然后与给定的极限范围进行比较和判断。由于球铰和虎克铰的最大摆角是由各运动副的具体结构确定的,因此,在确定球铰和虎克铰的最大摆角约束时,可通过各驱动杆的方向矢量与动、定平台法矢的点积运算求出各驱动杆相对于动、定平台的摆角,并将此摆角与动、定平台铰接处的虎克铰和球铰所允许的最大摆角进行比较判断。当动平台位姿改变时,动、定平台间的各连杆、连杆与电主轴之间都可能发生碰撞干涉,而本机床由于中间约束分支限制了动平台绕其自身法线的转动,五个驱动分支之间以及中间分支与五个驱动分支之间一般不会存在干涉;由于电主轴和驱动分支均简化为圆柱体,二者之间可能出现的干涉情况可分为两种:一种为两圆柱体轴线相交,交点离电主轴上端面的距离以及二相交轴线的夹角符合特定的几何关系;另一种为二圆柱体轴线异面,公垂线与两线段的垂足在圆柱体轴线与其端面相交得到的两条线段以内,且公垂线的长度小于两圆柱体半径之和。
通过检验各构件之间是否发生干涉,可以验证机床结构设计的合理性和校核机床加工的轨迹规划结果是否正确。
机构运动仿真的实时性策略分析机构运动仿真的实时性对于并联机床的运动仿真效果起着非常重要的作用,下面提出了一些策略以便提高仿真的实时性,增强运动仿真的效果。
1)采用局部刷新技术。局部刷新是指在机床运动过程中,只对运动部件模型部分进行计算和刷新显示,而固定部件保持不变,这样处理可以避免画面的重复刷新显示,有效地解决了动画显示实时性和计算量之间的矛盾。可以利用OpenGL的模板缓冲技术,通过像素操作封锁屏幕上的特定区域来限制屏幕上的绘图显示,可以将机床模型中的固定部件在模板缓冲区中设置为不许刷新显示的部分,而运动部件设置为需要刷新显示的部分,在仿真过程中,模板缓冲区对每一次生成的画面进行测试,对发生变化的图形部分进行刷新显示,从而提高仿真的显示速度。
2)采用显示列表和双缓存技术。由于OpenGL利用多边形建立实体模型,因此机床模型刷新显示的数据量很大,而采用显示列表技术可以有效地提高显示速度。显示列表是一组预先存储起来的高速缓存命令,可以在任何地方被调用,不必进行内存管理,按顺序立即执行,降低时间开销,提高绘图显示效率。对机床运动构件的模型数据进行编译后放入显示列表中,然后在运动过程中依次调用该显示列表,从而降低执行时间,提高显示速度。另外,OpenGL利用双缓存技术来进行动画显示,双缓存包括后台缓存和前台缓存,其中后台缓存计算场景,生成画面,前台缓存显示后台缓存已经生成的画面,从而提高动画实时性刷新显示的速度。
3)采用高精度的时间函数。在Windows应用程序中,可采用Windows操作系统中支持的与硬件相关的高分辨率计时器,即通过调用两个API函数QueryPerformanceFrequency()和QueryPerformance Counter()可以提供高性能的计时器,分辨率可达到1μs ,从而提高运动仿真的实时性。
6.并联机床仿真实现
根据前面的理论分析和技术方法研究,开发了并联机床的仿真系统。
在并联机床仿真系统中,首先调入工件毛坯,选定加工刀具,读取加工所需刀位数据,采用通用的数控加工代码格式(X C,Y C,Z C,θx,θy,θz) ,其中P C = < X C,Y C,Z C > T表示刀具底部中心C的位置坐标,(θx,θy,θz)表示刀具姿态的刀轴矢量的方向角;然后将刀位数据进行处理,得到机床动平台的位姿数据,利用机构运动的数学模型计算各刀具点对应的各个驱动分支及约束分支中各运动构件的位姿变化数据,这些数据经数据处理后转换为仿真系统可以识别的数据,以链表形式在内存中保存,链表的每一个节点保存一组位姿数据;最后利用高精度定时函数在每个周期遍历链表数据,对每一组数据经过运算后生成新的机床运动模型画面,利用双缓存对画面进行刷新显示,读完一组,显示一组,再读下一组,如此循环,从而实现机床的机构运动仿真。可以看出运动过程中图形的真实感较强,实时性策略的应用使构件运动连续流畅,无停顿现象,干涉检验有效地防止了不合理的运动轨迹规划对机床造成的损坏。
利用研制的机床样机和仿真系统分别进行了直径为200mm的圆形轨迹绘制。机床样机用时1018s ,轨迹的弧度圆滑,拟合性较好;仿真系统用时12s ,绘制轨迹封闭,圆度好,与机床实验结果基本一致。
并联机床实体建模和运动仿真的实现方法,较好地解决了机床运动仿真中的真实感图形显示和动画显示。通过建立并联机床运动的数学模型,为机床的运动仿真提供了依据,利用OpenGL图形标准开发了并联机床仿真系统。该仿真系统不依托现有的通用CAD软件,可以独立运行,也可以集成到机床控制系统中,实现机床控制与仿真的一体化。利用仿真系统与机床样机分别进行了圆形轨迹绘制,所用时间接近,效果基本一致。该仿真系统实体建模的真实感较强,运动仿真和干涉检验对该机床的运动研究、控制研究和结构设计等提供了强有力的保障,具有一定的实用价值。
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上所用视频、图片、文字如涉及作品版权问题,请第一时间告知,我们将根据您提供的证明材料确认版权并按国家标准支付稿酬或立即删除内容,以保证您的权益!联系电话:010-58612588 或 Email:editor@mmsonline.com.cn。
- 暂无反馈