APP下载

轴对称矢量喷管多刚体动力学自动建模开发

2015-07-01何江军王汉平张少军金文栋

兵器装备工程学报 2015年3期
关键词:对话框按钮约束

何江军,王汉平,张少军,金文栋,巩 明

(1.北京理工大学宇航学院,北京 100081;2.中国航空工业集团沈阳发动机设计研究所,沈阳 110015)

轴对称矢量喷管(AVEN)能够大幅提高战斗机的隐身性、机动性、敏捷性和短距离起落能力[1],是各个国家目前研究的热点。该装置构成零部件多、结构复杂、机构自由度多,是一种高度欠约束系统[2]。因此,目前针对AVEN 的建模仿真工作均只能手动完成,尚未有公开文献报道关于AVEN 的自动建模的研究情况。本文旨在AVEN 的多刚体自动建模界面开发,在AVEN 简化模型的基础上,人为地把AVEN 建模过程分成多个模块来依次进行,通过操作各个模块关联的设计变量对话框修改相应的建模参数,协调促进仿真实验的顺利进行。这有助于对AVEN 实物试验时可能出现的各种情做出全面的预测,并且对产品的设计、优化和改进起到良好的指导作用。根据微调建模参数修正仿真结果来改进产品结构,将大大加速研发进度,节约人力物力成本。

1 基本建模思路

由于AVEN 机构零件较多,自动建模需在简化模型和手动建模的基础上发展完成,其主要建模思路流程如图1所示。

2 AVEN 结构与运动分析

AVEN 装置为双Stewart 平台驱动的复杂空间机构,该双Stewart 平台由A8 收敛调节环和A9 转向控制环组成[3-4]。A8 收敛调节环上有十几组凸轮机构用来和收敛骨架上的特殊圆弧面配合,收敛骨架与收敛调节片前后铰接。A8 收敛调节环由6 个驱动作动筒同步控制,在凸轮和特殊圆弧面的配合下,收敛调节片跟随收敛骨架一起完成收敛段的收扩运动。

A9 转向控制环的3 个驱动作动筒互呈120°周向分布,由定心装置限制在与机匣轴线平行的3 个导轨上,其异步作动可引起A9 转向控制环的偏转,进而带动三角拉杆、扩张支架和扩张调节片完成扩张段喷口的偏转,实现矢量控制的作用(图2)。收敛段和扩张段的连接是通过具有十字转接功能的扩张头部完成的。

图2 AVEN 的截面

3 ADAMS 宏命令编写

要想实现如此复杂机构的自动建模,首先应该通过ADAMS 提供的cmd 宏命令功能建立AVEN 多刚体系统模型,再循序渐进,实现自动建模界面的开发。在通过宏命令AVEN 建立模型时,根据分析需要确定相关的关键变量,并将这些关键变量设置成可变的设计变量。在分析时,只需要改变这些设计变量值的大小,AVEN 虚拟样机模型即可自动更新。

3.1 初步建模

首先,将UG 软件中的AVEN 零件图分别以parasolid 格式按建模顺序编号命名导出并放置在指定位置的文件夹中。为方便后续建模,所有零件均选取在装配位置,而诸如收敛调节片、扩张头部、扩张调节片等沿加力筒体中心轴对称布置的多组零件只选取典型位置的单个零件导出。然后,在ADAMS2012 软件中,新建Nozzle 模型、定义单位和重力、选择工作路径[5]。在UG 中量取需要设置成设计变量的各类尺寸,包括零件几何尺寸、约束点坐标尺寸等,将这些尺寸按建模顺序编写成逐条的设计变量cmd 宏命令。

设计变量cmd 宏命令与建模cmd 宏命令一一对应。每一条建模cmd 宏命令主要包含以下子命令:读入parasolid、重命名part、复制part、移动part、创建marker、创建joint。有些宏命令里还需要添加合并part、重命名solid、创建contact、创建spring damper 等子命令,具体应该添加或者省略哪些子命令视AVEN 模型零件衔接需要而定。为方便建模分析,需要给各part 重新命名和统一编号。针对不同的零件,以构成该零件的汉语拼音或汉语拼音的首字母的组合加上编号来为其命名,为便于识别,每个拼音的首字母均大写。为便于对零件定位、观察和分析,选择典型位置的零件作为1 号零件,比如将Z 轴负向穿过的调节片设定为1 号调节片,将Y轴正向穿过的A8 作动筒设定为1 号作动筒等。复制part、移动part 时,只需要将其余n -1 组零件在1 号零件的重叠位置以宏命令的方式复制完成,再沿加力筒体中心轴逆时针每旋转360°/n 放置一组零件,其中n 为该类零件的总数。创建marker 时,参考需要建立joint 的类型和方位来合理命名,确保是辨识度高的名称即可;创建joint 时,参考i marker、j marker,主要命名为i part_j part_编号或者i part 编号_j part编号的形式。

3.2 简化建模

3.2.1 树状建模原则

建模过程中除喉道密封片与收敛密封片铰接位置(该处难以相对其他典型位置进行定位)外都采用树状建模原则来逐步循序推进,具体而言就是,先建立与ground 相关联的零件约束,以这些零件为树干,再构建与树干相关联的零件约束,以此类推逐步完善AVEN 的建模。为完善树状逻辑表述,借助LOC_RELATIVE_TO 和ORI_RELATIVE_TO 函数将末端零件的marker 与前端的已被参数化的marker 参数关联,这样使整个模型形成形式和逻辑上的树状结构[2]。

3.2.2 过约束问题

AVEN 机构整体上是一个高度欠约束的机构,但其局部环节却会存在过约束,尤其是当机构形成封闭的回路时常常如此。ADAMS 本身的自由度解算和约束检测工具能够剔除一些构型简单的机构过约束,但是当系统过于复杂时,其自动剔除过约束可能会使动力学解算出现不合理的现象,这时需要人工干预消除过约束问题[2]。以立式协同装置为例,按照机构实际的约束情况,(从发动机尾部看去)左右长杆之间、右侧长杆和右侧短杆之间均为铰链约束。但是,如果在ADAMS 中按实际理想约束建模的话,由于这些零件形成了封闭的回路系统,ADAMS 会认定其过约束。因此,经过反复修改验证后将左右长杆之间、右侧长杆和右侧短杆之间的铰链约束分别改为球铰约束和圆柱副约束,使机构正好不出现过约束。进一步细分,ADAMS 建立立式协同装置约束的方式是:左侧长杆和右侧长杆、左侧长杆和左侧销钉、右侧长杆和右侧销钉之间是球绞约束,右侧长杆和右侧短杆之间是圆柱副约束,左侧长杆和左侧短杆、块轴和左右两侧短杆之间是铰链约束。立式协同装置具体的约束示意图如图3 所示。

图3 立式协同装置约束示意图

3.2.3 接触和弹簧阻尼器

为使AVEN 模型最大限度地接近实际约束情形,在一些特定连接位置需要建立特定约束。A8 收敛调节环滚子在运动中始终与收敛骨架上表面相接触,在ADAMS 中二者之间的约束建为线线高副接触约束;收敛密封片与收敛调节片、喉道密封片与收敛密封片之间没有明显直接的约束形式,但是ADAMS 仿真要求二者之间一直接触,建为点面接触约束;扩张密封片与扩张调节片之间不便建立接触点,建为实体接触约束。为了使扩张密封片和扩张调节片在仿真过程中始终贴合在一起,仅凭实体接触约束是不够的,还需要人为地在立式协同装置块轴和扩张密封片之间添加一个拉压弹簧阻尼器、在卧式协同装置盒座和左右曲杆之间添加同样大小的两个扭转弹簧阻尼器[6]。

4 自动建模界面开发

自动建模界面的定制在ADAMS 主菜单界面中完成,将界面风格设为经典模式,以方便后续对话框的放置。新建名为database 的数据库,并在其下创建名为dialog 的对话框数据库和名为variable 的设计变量数据库。把对话框和设计变量与模型独立开来,这样不仅方便对对话框和设计变量查看修改,而且利于对模型进行操作,更重要的是删除原模型并新建模型时原对话框和设计变量的数据得以保留。在dialog对话框数据库下创建名为Nozzle_Toolbox 的总对话框,并合理放置在ADAMS 主界面中[7]。如图4 所示,人为地把AVEN 建模过程分成JLTT(加力筒体)、SLTJP(收敛调节片)、SLGJ(收敛骨架)、KZTB(扩张头部)、KZTJP(扩张调节片)、KZZJ(扩张支架)、SJLG(三角拉杆)、A9Huan(A9 环)、A9HSG(A9 活塞杆)、A9TT(A9 套筒)、A8Huan(A8 环)、A8HSG(A8 活塞杆)、A8ZDT(A8 作动筒)、KongZhiGuiLv(控制规律)、SLMFP(收敛密封片)、HDMFP(喉道密封片)、KZMFP(扩张密封片)共17 个模块。

图4 Nozzle_Toolbox 主对话框

New Model 按钮集成了删除原模型新建模型的cmd 宏命令,CMD 按钮指向Command Import 对话框用以导入额外操作的cmd 宏命令。New Model 和CMD 两个按钮右侧按建模顺序紧密布置着前述17 个模块的按钮,每一个按钮指向集中放置在对话框下部的各自对应的container,单击不同按钮可以自由切换到相应的container,每一个container 包含着建立该模块的自动建模cmd 宏命令集成按钮。以SLTJP(收敛调节片)为例,其名为SLTJP Modeling 的container 下包含以下宏命令集成按钮:Paraisolid、Variable、Part Modify、Marker、Joint、GFORCE,通过单击即可实现各自功能。如图5(a)、(b)所示,Paraisolid 按钮指向统一的Parasolid Import 对话框读取并导入相应的parasolid 文件;Variable 按钮指向SLTJP Variable Modify 对话框,该对话框与variable 设计变量数据库采用交互式的方式进行数值传递:它首先读入相关设计变量在variable 设计变量数据库中的值并显示在数值输入框里,然后在数值输入框里可以对各设计变量的值进行修改,修改后的值返回给variable 设计变量数据库中的相关设计变量;Part Modify 按钮集成了重命名为收敛调节片1、复制并移动其他十几组收敛调节片的cmd 宏命令;Marker 按钮集成了建立起始端中铰点和末端中铰点的cmd 宏命令;Joint 按钮集成了创建加力筒体与收敛调节片之间的圆柱副约束的cmd 宏命令;GFORCE 按钮是针对热态多刚体动力学建模而设计的,其功能是在末端中铰点处建立与收敛调节片所承受的燃气载荷等效的gforce 集中力,其赋值则借助ADAMS 二次开发功能编写gfosub 子程序来实现[8]。* KongZhiGuiLv* 按钮指向为A8、A9 作动筒添加驱动的container,这部分内容可以分成State Variable 和Motion 两个模块。如图5(c)所示,单击State Variable 按钮,首先调用if cond=(!db_exists(""))语句在nozzle606 模型数据库里创建D8(喷喉直径)、D9(喷口直径)、Delta9(矢量偏转角)、Theta9(方位角)等状态变量,然后弹出State Variable Modify 对话框,提供修改D8、D9、Delta9、Theta9 这4 个基础状态变量的方程输入框,并与Nozzle模型数据库里的状态变量进行数据交互。单击Motion 按钮,通过其集成的cmd 宏命令直接创建A91、A92、A93、A81、A83、A85 这6 个translational motion。

这样,通过顺序操作自动建模界面并添加等效燃气载荷,就可以自动建立AVEN 多刚体动力学模型。

图5 Nozzle_Toolbox 子对话框

5 仿真计算及结果分析

自动建模界面可以便捷快速地完成AVEN 建模工作,通过对话框输入不同的变量可以切换不同的AVEN 模型、不同的仿真工况。仿真计算时AVEN 多刚体动力学模型进入状态的时间为0.2 s,偏转周期为0.5 s,计算2 个时间周期,整个计算时间为1.2 s,计算步长为0.001 s,求解器为WSTIFF,计算线程为8 个。计算硬件为intel 酷睿i7 四核CPU,主频3.6 GHz,睿频3.8 GHz,内存32G-DDR3-1600 MHz[4]。

图6 展示了0 km、0Ma 中间状态下输入0°、10°、20°矢量偏转角时3 个A8 作动筒X 向载荷叠加曲线。可以看出,在同一工况下,3 个A8 作动筒X 向载荷叠加随着矢量偏转角的增大而增加,矢量偏转平稳后载荷叠加曲线的微小波动主要由密封片和调节片的接触引起。从上可知,该套AVEN 自动建模软件是便捷可行的;同时,通过自动建模界面修改其他零件尺寸参数或者状态变量参数可以得到相应的受载特性曲线,对比不同的状态变量参数所得的受载特性曲线可以指导AVEN 实物试验,对比不同的零件尺寸参数所得的受载特性曲线可以优化AVEN 参数设计。

图6 0°、10°、20°偏角下3 个A8 作动筒X 向受载叠加特性

6 结束语

本文在AVEN 原始模型的基础上,首先简化模型、手动建模,然后将手工建模的操作过程编写成ADAMS 宏命令,进一步定制自动建模界面,通过自动建模界面建立AVEN 模型并实现仿真计算,对比不同参数的载荷曲线优化AVEN 模型、指导AVEN 实物试验。全套方法可为其他类似复杂机构的自动建模提供重要借鉴。

[1]王莉,袁茹,王三民,等.温固耦合下轴对称推力矢量喷管驱动机构的运动精度分析[J].机械科学与技术,2008(6):752-756.

[2]王汉平,张煜冰,杨鸣.轴对称推力矢量喷管冷态多柔体动力学仿真[J].航空动力学报,2011(11):78-81.

[3]王玉新.喷气发动机轴对称推力矢量喷管[M].北京:国防工业出版社,2006.

[4]王林鹏,王汉平,杨鸣,等.复杂空间机构热态刚柔耦合多体动力学建模[J]. 四川兵工学报,2013(9):2427-2432.

[5]王鑫,武建新.轴对称矢量喷管动力学仿真与分析[J].机械设计与制造,2013(10):106-109.

[6]石博强,申焱华,宁晓斌,等.ADAMS 基础与工程范例教程[M].北京:中国铁道出版社,2007.

[7]胡礼,易忠路,龚成斌,等.基于ADAMS/Car 的二次开发和应用[J].计算机辅助工程,2014(1):82-84.

[8]陈立平,张云清,任卫群,等. 机械系统动力学分析及ADAMS 应用教程[M].北京:清华大学出版社,2005.

猜你喜欢

对话框按钮约束
哪个是门铃真正的按钮
当你面前有个按钮
“碳中和”约束下的路径选择
约束离散KP方程族的完全Virasoro对称
正常恢复虚拟机
Bootlace Worms’Secret etc.
死循环
适当放手能让孩子更好地自我约束
内心不能碰的按钮
快速抓取对话框中的完整信息