张帅卿,史春景,李 伦,郝永平
(沈阳理工大学 机械工程学院,辽宁 沈阳 110159)
随着科技的发展,虚拟现实技术在航空航天、工业仿真、室内设计、教学培训等领域大放异彩。虚拟现实技术本质上是人类通过了解和模仿自然现象,对自然规律进行科学利用的技术[1-3]。虚拟仿真即采用虚拟系统来模仿实际系统的技术[4]。虚拟现实技术为科学技术研究提供了一种便捷的手段。
当今,无人飞行器的研制和应用发展迅猛[5-6]。基于无人飞行器,未来战争会出现多种作战方式,无人飞行器能够与巡航导弹、各类机种、地面部队协同作战[7-9]。扑翼式飞行器因其便携性强、速度快、隐蔽性佳等,目前已从形形色色的飞行器中脱颖而出,受到国内外学者的高度重视[10-13]。
传统上,机械领域的仿真研究主要采用Matlab、Adams、Abaqus等仿真软件,对设计模型进行数据仿真,且多以形式单一的数据或图表来呈现设计方案。虽然相关数据可直接呈现,但科研人员无法直观地看到模型在真实环境下的运行效果,从而会忽略仿真过程中可能出现的问题。Unity3D引擎作为支持虚拟现实技术的主流开发平台,相对于传统的仿真软件,其高可视化水平与高反馈性使得关于其与武器装备联动的研究具有很大的应用价值。本文将以无人飞行器的扑翼机构作为研究对象,通过设计其机构运动的相关算法,在Unity3D引擎中实现运动仿真。
无人飞行器的扑翼机构主要由两部分组成。第一部分是由三级直齿圆柱齿轮减速器构成的传动机构。直齿圆柱齿轮的传动性能优良,其提供的扭矩足以带动扑翼扇动,且其振动噪声小,可以搭建左右对称的飞行器结构,以保证无人飞行器的飞行稳定。图1所示为在Creo软件中通过机构仿真绘制的无人飞行器模型。
图1 通过机构仿真绘制的无人飞行器模型
三级直齿圆柱齿轮减速器的传动比为:
i=(Z1/Z0)×(Z2/Z1)×(Z4/Z3)=17.43
(1)
式中,Z0-Z4分别为三级直齿圆柱齿轮减速器中各齿轮的齿数。
减速器输出轴的转矩为:
T=TM×i=(9 550P/n)×i=1 967.21 N·m
(2)
式中:TM为电机转矩;n为电机转速;P为电机功率。
扑翼机构的第二部分是I型曲柄摇杆机构。它作为主要驱动机构,使原动件曲柄围绕旋转中心旋转,同时让连杆的两端以球副作为旋转副,形成空间曲柄摇杆机构,从而通过连杆带动摇杆往复摆动(即无人飞行器扑翼的扇动)。
曲柄摇杆机构的最小传动角为:
(3)
曲柄摇杆机构的幅值角为:
(4)
曲柄摇杆机构的极位夹角为:
(5)
本文基于Unity3D引擎,通过搭建虚拟场景,针对扑翼机构每个零部件的运行模式,采用运动学模型来表述,并以Transform组件的Position和Rotation元素为中心,通过C#语言编译,以脚本的形式实现运动仿真。扑翼机构运动仿真的流程如图2 所示。
图2 扑翼机构运动仿真的流程
在无人飞行器的扑翼机构中,作为传动机构的三级直齿圆柱齿轮减速器,其机构简图如图3所示。
图3 三级直齿圆柱齿轮减速器的机构简图
由图3可知,减速器的动力元件为马达,马达提供初速度并通过马达轴使齿轮Z0获得与马达轴相同的角速度;齿轮Z0与Z1啮合,根据齿轮啮合特性,齿轮Z1的线速度与齿轮Z0的线速度大小相等、方向相反。分析可知,在不计损耗的情况下,给定马达的初速度,设定各齿轮的半径,明确各零部件之间的同轴或啮合关系,即可确定减速器中关键零部件的运动情况。
(1) 动力元件模拟算法。该算法的功能是设定动力源,并模拟动力源驱动来提供转速。
通过设定动力源的目标转速,采用线性插值法来模拟动力元件的瞬时转速,并将角速度实时传递给连接动力元件的轴。
(2) 主动轴类模拟算法。该算法的功能是接收动力元件传递的角速度,并作为主动元件将此角速度传递给主动轴上的其他被动元件。将相应脚本挂载于马达与齿轮Z0相连接的轴上,以便从马达上获取角速度,使轴自身以与马达相同的角速度旋转,同时驱动齿轮Z0以该角速度旋转。
(3) 齿轮模拟算法。该算法在作为主动元件的齿轮上使用。齿轮作为动力元件可通过啮合关系带动被动齿轮运动,也可以通过所在的齿轮轴带动同轴上的其他被动元件运动。齿轮本身以一定线速度旋转的同时,将大小相等、方向相反的线速度传递给与其啮合的齿轮。图4所示为齿轮类脚本界面。图5所示为Unity3D引擎中Scene面板显示的齿轮模型。
图4 齿轮类脚本界面
图5 Unity3D引擎中Scene面板显示的齿轮模型
空间曲柄摇杆机构作为无人飞行器扑翼机构的驱动机构,在运动仿真时与传动机构中齿轮组(以各零部件为单元)的情况不同,它是以各关键点为单元进行运动轨迹模拟的,因此可将该驱动机构的整体运动分解成针对各关键点的单一运动。图6所示为空间曲柄摇杆机构简图。
图6 空间曲柄摇杆机构简图
分析可知,在无人飞行器扑翼机构的驱动机构中,曲柄OA以O点为中心旋转,其角速度与传动机构中齿轮组输出的角速度大小相等、方向相同,且摇杆CB中C点的自由度为1,即只具有绕Z轴旋转的能力。因此,该驱动机构中只有A、B两点具有位移能力,只要求出A、B两点的坐标即可获得整个曲柄摇杆机构关键点的运动轨迹。在此基础上,准确设定模型中的各关键点,即可完成相应的运动仿真。
(1) 曲柄模拟算法。该算法可应用在曲柄摇杆机构上。其功能为接收齿轮轴传递的角速度,在旋转的同时获取O、A两个关键点的信息。
(2) 曲柄摇杆关键点算法。该算法用于获取曲柄摇杆机构的关键点位置信息,并实时计算连杆AB和摇杆连接球副关键点B的位置。
在空间曲柄摇杆机构中,B点只能在X轴和Y轴方向移动,C点只能绕Z轴方向旋转。因此,将A点投影到X-Y平面上,可将三维立体问题转化成二维平面问题,以便在不影响正常计算结果的情况下缩减计算量。
首先以A点为圆心,以连杆AB长度为半径作圆;然后以C点为圆心,以摇杆CB长度为半径作圆,求出两圆交点即点B的位置。设a,b分别为A点的x,y坐标;r为连杆AB的长度;c,d分别为C点的x,y坐标;l为摇杆CB的长度。则可列出下列关系式:
(6)
根据两圆相交两点的直线公式,由式(6)可得:
(7)
若这两圆相交的两点P1和P2满足xP1>xP2,则
(8)
如果B点为摇杆的上顶点,则点P1为B点位置;如果B点为摇杆的下顶点,则点P2为B点位置。当B点为上顶点时,摇杆作顺时针转动;当B点为下顶点时,摇杆作逆时针转动。由曲柄摇杆机构的急回特性以及扑翼机构从上至下扑扇的工作原理可知,B点应为摇杆的上顶点。由此可得出关键点B的位置并可获取其信息。将各关键点信息输入脚本,在Unity3D引擎中进行计算,并以线条的形式反映计算结果,可得图7所示曲柄摇杆关键点算法的脚本计算结果。
图7 曲柄摇杆关键点算法的脚本计算结果
(3) 旋转参照点类算法。该算法用于设置各零部件的旋转参照点(即由曲柄摇杆关键点算法获取的4个关键点)。
首先将搭载旋转参照点类算法的脚本挂载于各零部件的中心,使各零部件围绕旋转参照点运动;其次以旋转参照点为目标,将各零部件旋转中心的Z轴与旋转参照点的Z轴对齐,且使零部件中心始终对准旋转参照点;然后将B点作为摇杆中心C点和曲柄连杆球副连接中心A点的旋转参照点,并将A点作为B点的旋转参照点,使各零部件均能围绕旋转参照点运动;最后得到符合实际运动规律的曲柄摇杆运动轨迹。
(1) 在完成整体算法的衔接后,将搭载动力元件模拟算法的脚本挂载于马达上,并对马达转速进行设置。
(2) 将连接动力元件的轴设置为电机轴,并将搭载主动轴类模拟算法的脚本挂载于电机轴上。
(3) 将搭载齿轮模拟算法的脚本挂载于各齿轮上,并设置好同轴关系和啮合关系。
(4) 将搭载曲柄模拟算法的脚本挂载于曲柄上,并将搭载曲柄摇杆关键点算法的脚本挂载于曲柄摇杆机构上,设置关键点。
(5) 将搭载旋转参照点类算法的脚本挂载于各旋转中心,并设置约束与旋转参照点。
(6) 在组装后启动程序,进行仿真实验,以验证在Unity3D引擎中各算法的配合情况,对扑翼式飞行器的真实飞行动作进行模拟。图8所示为扑翼式飞行器扑翼机构的传动机构连续仿真图。图9所示为其驱动机构连续仿真图。
图8 传动机构连续仿真图
图9 驱动机构连续仿真图
本文通过研究扑翼式飞行器扑翼机构的传动机构和驱动机构,建立运动学模型,在三级直齿圆柱齿轮减速器中设计了动力元件模拟算法、主动轴类模拟算法、齿轮模拟算法;在空间曲柄摇杆机构中设计了曲柄模拟算法、曲柄摇杆关键点算法、旋转参照点类算法。将搭载算法的脚本挂载于扑翼式飞行器模型的各零部件上,以现实的零部件参数作为算法参考量,并在Unity3D引擎中进行模拟,实现了对扑翼式飞行器扑翼机构的运动仿真。本文采用Unity3D引擎强大的可视化技术,实时观测扑翼式飞行器扑翼机构的运动状态,解决了传统动力学仿真软件表现形式单一的问题。日后可与专业仿真软件相结合,在高度仿真的虚拟场景中实现仿真数据的可视化呈现。