李正伟,徐凤军,高跃飞
(中北大学 机电工程学院,山西 太原 030051)
自动机作为高炮的核心,其好坏直接决定了高炮的性能。在自动机设计阶段,为了得到各零部件的动力学响应,需要不断地针对设计机构建立虚拟样机进行动力学分析,且自动机零件繁多,结构十分复杂,每次对结构修改后,往往要对虚拟样机进行修改甚至重复建模,实现模型的参数化又很困难。而ADAMS除了具有很强的动力学分析功能外,还具有很强的二次开发功能,包括ADAMS/View界面的用户化设计、利用cmd语言编辑宏命令实现自动处理和仿真控制、通过编制用户子程序满足用户的某些特定需求,甚至可以拓展ADAMS的功能[1]。因此,为了简化每次重复修改、建立虚拟样机的工作,提高仿真效率,本文应用ADAMS中的View模块,开发了针对某高炮自动机的虚拟样机动力学仿真平台。
自动机是自动炮的重要组成部分,主要完成自动重复装填和发射情况下发炮弹实现连发射击[2]。该自动机结构包括扣机部件、身管部件、进弹机、输弹机、炮闩部件和浮动机部件等部分,这些机构依靠炮箱组成一个整体,并安装在炮架上。
在对自动机结构特点研究分析的基础上,应用UG建立自动机各零部件的三维模型,并按火炮行军状态时自动机各零件的相对位置装配。装配时,应对自动机进行必要的简化,模型中一些次要的对结果基本不影响的零件可省略,不再装配或应用布尔工具合并到其固连的零部件上。
首先将简化后的自动机装配体导出Parasolid文件(.x_t),然后将该文件导入 ADAMS中;然后修改各零件的材料属性,并根据自动机各零件的运动及位置关系添加约束副。该自动机为导气式自动机,载荷主要有弹底压力、炮膛合力、后效期作用力和导气室压力。其中导气室压力采用常用的布拉文经验公式法,因为其他载荷都与事先求得的p-t曲线有线性关系,所以先采用AKSPLINE函数拟合p-t曲线,然后乘以系数后转化得到。
仿真平台的功能主要包括:虚拟样机中零部件的质量、密度、转动惯量的修改;载荷施加、查看与修改;接触力参数、弹簧力参数的修改;零件替换功能;对部分变形量较大的零件进行柔性化处理;对不同仿真参数的结果进行对比分析。
该平台主要包括启动文件、初始化文件、模型文件、菜单文件、对话框文件和平台帮助文件等。为了便于各文件的管理和读取,将上述文件按层次结构存放于同一目录下,其组织结构如图1所示。
应用文本文件编写启动程序,并将文件名改为
“start.dat”,主要程序语句为:
call load_help.bat
call D:\MSC.Software\Adams\2012\common\mdi.bat aview ru-st i
启动过程为:首先运行start.bat文件,然后用start.bat调用load_help.bat,将help文件夹中的帮助文件复制到ADAMS安装目录下的help文件夹中,随后,启动ADAMS安装目录下的mdi.bat文件打开ADAMS。虚拟样机模型的二进制文件命名为“aview.bin”,这样打开的ADAMS便自动搜索到该文件并读入打开。打开虚拟样机模型后,还要将定制好的菜单和对话框读入到虚拟样机环境中,进行动力学仿真平台的初始化。初始化的文件命名为“aviewBS.cmd”,模型文件打开后,ADAMS自动读入该cmd文件[3]。平台初始化文件的主要程序语句为:
!界面改为经典模式,便于菜单显示
defaults interface style=classic
!读入菜单文件
interface menubar read menubar
=.gui.main.mbar file=".\mnu\automat_cla.mnu"
!建立新对象库“.my_gui”
library create library_name=.my_gui
!读入一系列对话框文件
file command read file_name="./dia/create_part.cmd"
……
在ADAMS/View环境中,应用Tools>Menu>Modify工具,遵照菜单语句的语法格式,添加用户需要的菜单命令,并导出为“.mnu”文件,菜单结构如图2所示。
图1 平台组织结构
图2 用户菜单结构图
2.5.1 参数修改对话框
仿真时,经常需要对一些参数进行修改,由于在模型树中一一查找又很麻烦,因此建立如图3所示的参数修改对话框。但自动机中零件繁多,接触关系复杂,不可能将所有接触力全部在对话框中呈现出来,所以图中的接触力和弹簧的参数对话框,只标注出一些对仿真结果影响较大的接触关系和弹簧力。仿真时,可方便地对参数进行修改,对于其他接触力的参数可通过提前定义好的设计变量统一修改,提高仿真效率。
2.5.2 载荷修改对话框
在ADAMS内部对话框“Modifyspline”的基础上添加了载荷单选框控件,建立载荷修改对话框,如图4所示。
图3 参数修改对话框
图4 载荷修改对话框
2.5.3 零件替换
当需要替换Part时,可用宏命令实现零件的自动替换,考虑到通用性只替换零件的Solid。而且零件的Mark点等质量属性信息保留,对约束副的i Mark和j Mark没有影响,所以无需删除零件间约束关系。零件替换的具体过程为:①删除虚拟样机内所有的接触力;②删除需要替换零件的实体;③导入新的实体并重新命名;④重新添加原始接触力。
2.5.4 仿真结果查看
仿真结束后,为了方便查看仿真结果,将需要重点关注的零件的动力学响应曲线融合到如图5所示的结果查看对话框中,用户只需点击相应的按钮,曲线就可显示在绘图区。
图5 结果查看对话框
2.5.5 帮助文档
为了方便用户的使用,将各种功能的使用方法步骤编辑组织在一起形成“.mht”文件,保存在目录下的help文件夹中,在平台初始化时,通过批处理命令将该文件复制到ADAMS安装目录下的help文件夹中,用户可通过用户菜单项中的help打开。
以某高炮为例,在0°高低角、导气室调节孔直径为Φ2.8mm工况下对火炮循环射击时自动机的动力学响应进行仿真分析,基础构件炮闩座的速度-时间曲线如图6所示,炮闩座后坐最大速度为(17.4±0.3)m/s。将上述仿真结果与指标数据[4,5]对比,误差约为6.5%,满足误差要求,说明虚拟样机可信,仿真结果具有一定的参考价值。
基于ADAMS二次开发技术,针对某高炮自动机开发了动力学仿真平台,简化了虚拟样机的修改过程,提高了动力学仿真的效率。但平台只能针对该自动机动力学仿真,通用性差,有待改进。
图6 炮闩座的速度-时间曲线
[1] 陈立平,张云清,任卫群,等.机械系统动力学分析及ADAMS应用教程[M].北京:清华大学出社,2005.
[2] 王文记,赵国豪,赵勇,等.国内外高炮浮动技术的现状与发展趋势[J].火炮发射与控制学报,2007(9):69-72.
[3] 刘吉成,张学红,刘树林,等.基于ADAMS的机械造穴工具二次开发平台研究[J].机械设计,2011(10):41-44.
[4] 冯长根,温波,王茂林,等.高炮发射动力学仿真技术研究[J].兵工学报,2001(5):145-148.
[5] 陈熙,张冠杰.35mm高炮技术基础[M].北京:国防工业出版社,2002.