在实际的生产和学习中越来越多地需要建立机构运动模型,本文介绍了3ds max中动画的形成和运动轨迹的编辑,以三种常见机构为例,对层级关系、正向运动与反向运动功能在建立不同机构运动模型时的应用技巧作了重点阐述。
一、引言
机构运动模型的建立在实际生产与学习中越来越显示出它的重要性。传统的机构设计要历经很多环节,如明确设计任务、方案构思、初步设计、技术设计、样机试制试验以及评价及提供设计方案等。整个过程时间长、效率低,尤其是样机的试制试验,更是一个消耗材料、加工设备、人力和时间等资源的过程。而利用计算机技术建立数字化模型则可以摆脱对物理样机的依赖,在不需要考虑成本与时间的条件下达到与使用物理样机相同的目的。在学校的教学实践中也同样如此,为了对机构的构成及工作原理有一个感性的认识,学生可能会参观一些实际的设备或教学用的模型,但从成本方面考虑,这些东西总不能满足学生的要求。同时,由于实际的机构及零件的外形比较复杂,了解机构的工作原理就存在着一定的难度。而使用数字化模型就不同了,不仅成本低,而且由于在设计过程中只考虑了与运动和动力有关的外形尺寸及主要参数,使运动模型简洁明了,易于理解。
在三维建模、动画制作方面,3ds max是目前世界上应用最广泛的软件,与AutoCAD和 SolidWork相比,唯一的缺点是不容易构建尺寸精确的模型,但由于它可以导入AutoCAD和 SolidWork文件,使这个缺点得以弥补,因而它完全能够用于工程模拟并满足制作高质量机构运动模型的需要。在3ds max中,物体的运动情况可以分为两种:一是物体独立的运动,二是物体牵连或被牵连运动。这里所指的独立运动与机构中构件的独立运动是不同的两个概念,构件的独立运动是指它能沿某个方向移动或绕某个轴转动,而物体独立的运动则是指可以针对物体的移动、转动等设置动画,使它不受其他物体运动影响同时也不影响其他物体的运动。
二、机构运动模型的构建
1.对每个构件设置独立运动动画,从而构建机构运动模型
在3ds max中,使物体独立运动的方法就是在不建立任何层级关系的情况下,打开Auto Key按钮,创建关键桢,在非第0桢改变物体可变参数(如移动、转动),关键桢之间的其他桢 3ds max会用插值的方法自动生成。插值是通过控制器进行的,它最终能够确定物体以时间为横轴的位移曲线。
在设计机构运动模型时,单个物体独立运动主要用于机构中每个构件的位移曲线比较简单的情况,如匀速移动或转动的情况,像各类齿轮机构、蜗轮蜗杆机构等。由于它们都是定比传动,相互啮合的两个构件随时间变化转过的角度很容易确定,因此可以将它们的转动分别设置成动画,并使两个构件在初始状态正确啮合,那么,动画打开后,俨然是一个构件带动另一个构件转动了。
现以圆柱人字齿轮为例,如图1所示。
图1 圆柱人字齿轮
大小两个齿轮没有层级关系,根据传动比分别设计它们的动画,运动曲线如图2、图3所示。
图2 大齿轮运动曲线 图3 小齿轮运动曲线
对于那些各构件运动规律比较复杂,但是通过解析计算可以获得其运动曲线的运动物体来讲,对每个构件设置独立运动动画,从而构建机构运动模型的方法也是可行的。因为在Track view或在Motion命令面板中,输入一些关键值后,通过选择关键点处的切线类型,可以将点拟合成所需要的任何复杂的运动曲线。
2.对机构中的有限构件设置独立运动动画,利用构件间的牵连关系构建机构运动模型
在很多时候,我们不需要设置或很难设置每一个构件的独立的动画,只要设置机构中一两个构件的动画,通过牵连关系就能实现整个机构的运动。建立构件间的层级关系是实现牵连运动关系的前提,在3DS中,层级的建立依靠链接(Link)命令很容易实现,再在运动(Motion)面板中利用正、反向运动功能确定各层之间的的牵连运动关系。这样,一两个构件的动画制作完成后,机构运动模型也就完成了。
(1)利用正向运动功能,构建机构运动模型
层级关系建立后,构件被分成不同的等级,上层是下层的父物体,下层则是上层的子物体。正向运动功能使得父物体运动时,可带动子物体运动,而子物体运动不能带动父物体运动。正向运动的锁定和继承关系可以限定子物体,使之不能做独立运动,并且使子物体有选择地继承父物体运动。在机构运动模型制作中,正向运动的应用很多。
以对心直动推杆盘状凸轮机构为例,介绍正向运动功能在构建机构运动模型中的应用,如图4所示。
图4 凸轮机构
在凸轮机构运动模型构建过程中,首先建立虚拟物体,并为其指定Path控制器,使虚拟物体沿凸轮轮廓曲线运动。在3ds max中,这种沿曲线的移动是匀速的,与凸轮匀速转动时虚拟物体的运动情况不相符。因此,根据凸轮轮廓曲线的具体形状,虚拟物体随凸轮转角变化的运动曲线改变后,如图5所示。
图5 虚拟物体运动曲线
为了使虚拟物体始终处于转动凸轮轮廓与推杆运动轨迹的交点处,利用相对运动的原理,为凸轮设置一个反向的转动(与其实际转动方向相同),转动角度随时间变化的曲线,如图6所示。
图6 凸轮运动曲线
准备工作基本完成后,接下来需要建立层级关系,使推杆成为虚拟物体的子物体,这样虚拟物体运动就可带动推杆运动了。为使推杆直动,限定推杆只继承虚拟物体Z轴方向的运动,凸轮机构运动模型就建成了。
(2)利用反向运动功能,构建机构运动模型
在机构的运动过程中,如果运动构件之间相互影响,也就是说,子物体反过来还可以影响父物体,使父物体受到子物体约束,就需要反向运动功能了。反向运动关系可以通过限定子物体的运动范围来约束父物体运动。下面,以曲柄滑块机构为例,说明反向运动功能在构建机构运动模型中的应用,如图7所示。
图7曲柄滑块机构
首先要在各构件之间建立层级关系,并据此确定它们的运动牵连关系,从而使它们形成一个有机的整体。在曲柄滑块机构中,由于连杆做平面运动,无法使连杆同时移动和转动,所以在曲柄滑块机构中,就产生了两个层级关系。
接下来,根据曲柄滑块机构运动特点,建立如下运动约束。
1)对于转盘,正向运动锁定所有方向的移动和X、Y轴向的转动,使之只能在XOY平面绕Z轴转动。反向运动激活Z轴的转动。
2)对于销1 ,正向运动锁定所有方向的移动和转动,继承所有方向的移动和转动,反向运动不激活任何转动和移动。使之作为原动件的子物体,与原动件没有相对运动。
3)对于连杆,正向运动锁定所有方向的移动和转动,使之不能独立运动,并继承Y向移动和Z轴的转动。反向运动激活Z轴的转动。
4)对于销2,正向运动锁定所有方向的移动和转动,继承所有方向的移动和转动,反向运动不激活任何转动和移动。使之作为原动件的子物体,与原动件没有相对运动。
5)对于滑块,正向运动锁定X、Z方向的移动和所有方向的转动,使之只能沿Y轴做直线运动。反向运动不激活任何方向的转动和X、Z方向的移动。
设置完成后,通过交互式IK方式将曲柄滑块机构设置成动画。由于构件间已建立了正反向运动的牵连关系,将圆盘的匀速转动做成动画,机构的运动模型就建成了。
三、结束语
利用三维动画技术制作机构运动模型,极大地降低了材料与时间成本,同时,由于能够建立准确的运动曲线,确定构件之间的运动关系,并能对构件所受的运动阻力、惯性力等进行模拟,由三维动画技术构建的机构模型就具有了足够的仿真性。