基于ADAMS和MATLAB的模块化建模方法与实现

2017-04-28 02:21岳玉娜齐志会
导弹与航天运载技术 2017年2期
关键词:样机功能模块模块化

吴 艳,岳玉娜,齐志会

(北京航天发射技术研究所,北京,100076)

基于ADAMS和MATLAB的模块化建模方法与实现

吴 艳,岳玉娜,齐志会

(北京航天发射技术研究所,北京,100076)

从动力学模块化模型重用的需求出发,采用ADAMS与MATLAB联合开发的方法,以多轴重型车辆为对象,从拓扑结构与模型设计、模版开发、服务开发3个方面利用cmd脚本和m语言进行模块化建模与快速装订的方法研究,最后通过多轴重型车辆动力学建模原型系统验证了模块化建模方法的可行性、有效性以及模型的可重用性能,为复杂动力学系统建模与模型重用提供了可以参考的方法。

模块化;建模方法;ADAMS;MATLAB

0 引 言

随着计算机技术与仿真技术的发展,功能化虚拟样机被广泛用于复杂产品设计与分析中。基于商用软件和计算多体动力学的动力学虚拟试验样机构建及其仿真分析,为产品设计、性能分析、故障预示与诊断、可靠性分析等设计和分析提供了技术手段。

MSC ADAMS是目前被广泛应用的机构动力学建模与仿真集成环境之一。它提供了SDK开发、用户子程序和cmd脚本+宏命令3种主要二次开发方式。其中SDK二次开发方式可以实现外部程序和过程对ADAMS仿真的控制和数据交互,可用于分布式仿真[1];用户子程序可以实现ADAMS没有提供特殊功能的函数[2],支持Fortran和C++两种开发方式;cmd脚本+宏命令可以实现 ADAMS软件平台内的用户化设计和界面开发[3~5]以及模型的参数化[5]。上述3种二次开发方法,主要针对ADAMS与外部的数据交互、用户特殊的建模和仿真功能,虽然一定程度上提高了建模效率,但是没有解决相同模型在不同动力学仿真过程中的重用问题。

本文从模型重用角度出发,以多轴重型车辆动力学模型为对象,提出了基于ADAMS与MATLAB 的模块化建模方法,通过模块化模型模版和参数化自动装配解决了多轴车辆建模工作量大、效率低、错误率高的问题,实现了典型功能模块在不同类型车辆模型中的重用。

1 基于ADAMS与MATLAB的建模原理

1.1 cmd脚本语言

cmd脚本语言是ADAMS中View和PostProcessor模块采用的开发语言。它能够实现View中大部分的建模过程,同时还可以对ADAMS软件进行用户定制开发。利用cmd脚本语言可以无损的存储模型,同时能够实现模型跨平台、跨版本的移植。

cmd脚本中,典型的命令行语法结构如图1所示。语法结构中,关键字1~3描述命令的对象,参数1~参数n描述命令的内容,典型的关键字和参数如表 1所示。

表1 cmd语言说明

续表1

利用cmd脚本语言,可以实现参数化的用户模型开发过程和基于脚本文件的用户过程重用。图2为利用 cmd语言建立参数化单向力模版的实例,其中model_name_new是模型名称,axis_num为表示编号的变量。

1.2 m语言

m语言的语法结构和使用方式与 Fortran语言相似,它通过调用MATLAB基本库和工具箱的函数,实现用户过程的编程开发。图3为m语言文档解析实例。

文件解析是iSight、Model Center等基于过程的多学科优化系统常用的过程集成方式之一。利用MATLAB对文件操作的功能和m语言编程,可以方便地实现文件解析过程。

1.3 基于ADAMS与MATLAB的快速建模

基于ADAMS与MATLAB的快速建模方法,其实质是利用cmd脚本语言实现用户模版的参数化、模块化,利用m语言实现用户模版的实例化和模型装配。可以用积木的制作过程来形象的描述基于ADAMS与MATLAB的快速建模过程。3种不同形状的积木设计图纸,可以看做是cmd脚本语言开发的3个模版。不同数量积木的加工和组装过程,就是m语言对模版实例化和模型装配的过程,如图4所示。

模型模版开发和实例化的过程示例见图5。

1.4 技术关键点

基于ADAMS和MATLAB的模块化动力学建模的技术关键点主要包括以下4点:

a)对象需求与拓扑结构分析;

b)模型接口与参数设计;

c)模块化模型模版开发;

d)模型装订服务开发。

2 基于ADAMS与MATLAB的建模方法实现

以多轴重型车辆为例介绍基于 ADAMS与MATLAB的模块化建模方法及其技术关键点的实现。

2.1 拓扑结构与模型设计

2.1.1 拓扑结构分析

多轴重型车辆结构复杂、功能模块多,根据动力学模型载荷传递与分配关系,其承载结构主要分为底盘和上装两个部分。

考虑到虚拟试验样机分析过程中模型模块功能拆解的独立性,将多轴重型车辆分解为底盘、转向、上装3类分系统,各个分系统又分解为具体的功能结构模块,如图6所示。

2.1.2 模型设计

模型设计的内容包括接口设计和参数设计两部分。

a)接口设计:接口主要描述模块化模型之间的关系。从模型重用出发,接口设计要点是接口类型和接口参数。接口类型主要描述模型之间的连接方式,包括运动副(约束)类型、载荷特性、刚度特性等。接口参数用于描述接口的数字特征,如位置、刚度、阻尼等。

b)参数设计:参数设计主要是对描述具体模型或模块的参数进行设计。参数类型包括质量参数、模态参数、力学特性参数等,参数示例如表2所示。

表2 质量属性参数

2.2 虚拟试验样机模版开发

虚拟试验样机模版包括模型模版、参数模版、功能模块模版、装订模版4类。

a)模型模版。

模型模版用于描述组成动力学虚拟试验样机的各个功能模块的基本特性。根据表现方式不同,模型模版分为几何模型、柔性承载结构模型、轮胎模型、负载质量模型等多类模版。对于各类模版,通过坐标系分配和规范化的命令方式保证模版可以被不同的动力学模型引用。

典型几何模型模版命名规范和坐标系规定见表3。

b)参数模版。

参数模版用于描述模型模版中各类模型的有效参数,以实现基于参数的虚拟试验样机驱动。参数模版采用cmd脚本语言开发,示例如图7所示。

表3 典型几何模型模版命名规范与坐标系规定

图7中“{}”为参数标识,其主要作用为表示参数位置;“{}”内为用户根据需要输入的模型参数。

c)功能模块模版。

功能模块模版是多轴车辆动力学样机的核心模块,主要描述动力学模型功能模块的组成、功能等。以ADAMS脚本文件为表现形式。功能模块分解的原则是简化系统、保证模块的可重用性。多轴重型车辆动力学模型中根据功能模块的重用情况,将其分为简单功能模块、基本功能模块和复杂功能模块3类,如表4所示。

表4 多轴重型车辆模型功能模块模版

续表4

d)装订模版。

模型装订模版的功能是通过参数模版、功能模块模版的组合,建立满足用户虚拟试验要求的动力学虚拟试验样机,以实现虚拟试验样机参数、功能、模块的可配置,从而简化样机构建过程,提高工作效率。

模型装订模版在MATLAB软件环境下运行,采用文本文件形式对虚拟试验样机进行主要状态描述。状态描述的主要内容包括样机模型文档名称、模型组成、样机属性配置3部分内容。

模型组成部分的模版内容如图8所示。样机属性配置示例如表5所示。

表5 样机属性配置示例

2.3 虚拟试验样机应用服务开发

虚拟试验样机应用服务包括参数解析服务和模型装订服务2个部分。应用服务流程如图9所示。

a)参数解析服务。

参数解析服务是利用样机技术状态文档,对虚拟试验样机的各类参数进行解析,形成样机所需的参数文件和参考点文件。

参数解析服务在MATLAB环境下以m函数脚本方式开发。参数解析服务函数如表6所示。

表6 参数解析服务函数

b)模型装订服务。

模型装订服务是根据模型参数和装订参数,利用模型模版、功能模块模版建立动力学虚拟试验样机。

模型装订功能的核心代码采用 MATLAB语言编写,并编译为可执行文件,对代码实行著作权保护。模型装订服务函数如表7所示。

表7 样机装订的MATLAB子函数

3 应用效果

为验证基于ADAMS与MATLAB的模块化建模方法的可行性,开发了多轴重型车辆建模原型系统。原型系统由界面层、接口层和核心层3个部分组成。界面层为面向用户的原型系统最顶层结构,主要由参数设置、模型查看和数据显示界面组成;接口层是界面层与核心层、核心层各模块间数据传递的桥梁,由核心层各个模块与界面层的接口、核心层各个模块之间的数据接口组成;核心层是原型系统的核心,由参数设置、样机装订、模型初步校核3个模块构成。接口层运行逻辑如图10所示。

原型系统参数界面和装订界面分别如图11、图12所示。

多轴重型车辆动力学建模原型系统,通过界面方式实现接口类型、接口参数、模块内部参数的配置和基于装订参数的模块化模型构建,实现了以参数、接口和组件为基础的动力学参数化、模块化、知识化、通用化,样机构建过程无需人工干预,验证了基于ADAMS与MATLAB的模块化动力学建模方法的可行性和有效性。

采用基于ADAMS与MATLAB的模块化建模方法,与传统方法相比,建模时间从原来的大于15个工作日缩短到不足1个工作日,建模工作规范性明显加强,仿真过程管理和三级审签人员的工作效率大幅提高。

4 结束语

本文提出了一种基于ADAMS与MATLAB的模块化建模方法,以多轴重型车辆为对象,从拓扑结构与模型设计、模版开发、服务开发3个方面介绍了该方法的具体实现途径。最后通过多轴重型车辆动力学建模原型系统验证了基于ADAMS与MATLAB的模块化建模方法的可行性与有效性及模型的可重用性能,实现了动力学模型的参数化和模块化,为其他动力学系统建模提供了可以参考的方法。

[1] 梁思率, 等. ADAMS二次开发技术在分布式仿真中的应用[J]. 系统仿真学报, 2009, 21(10): 2940-2944.

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

[3] 戴闻, 等. 基于ADAMS二次开发的零部件约束库建模仿真研究[J]. 机械工程师, 2009(9): 76-78.

[4] 陈淑艳, 等. 基于ADAMS的履带车辆二次开发建模研究[J]. 机械设计与制造, 2008(10): 192-193.

[5] 姚寿文, 等. 综合传动系统虚拟样机建模与仿真平台研究[J]. 计算机仿真, 2008, 25(2): 257-260.

[6] MSC Software. MSC.ADAMS/View高级培训教程[M]. 邢俊文, 陶永忠,译. 北京: 清华大学出版社, 2004.

Study and Implementation of Modular Modeling Method Based on ADAMS and MATLAB

Wu Yan, Yue Yu-na, Qi Zhi-hui
(Beijing Institute of Space Launch Techology, Beijing, 100076)

A modular modeling method based on co-simulation of ADAMS and MATLAB is developed with multi-axle heavy vehicles as the research object in this paper. The method is illustrated in the aspects of topological model design, templates and services development using cmd script and MATLAB language. The feasibility and effectivity of the method and model reusability are tested through a multi-axle vehicle prototype building. This paper presents a referable approach for complex dynamic system modeling.

Modularization; Modeling method; ADAMS; MATLAB

TP391.9

A

1004-7182(2017)02-0066-06

10.7654/j.issn.1004-7182.20170215

2016-04-06;

2016-07-25

吴 艳(1977-),女,高级工程师,主要研究方向为复杂系统仿真与虚拟试验

猜你喜欢
样机功能模块模块化
重卡内饰模块化技术
模块化策略在建筑设计中的应用研究
基于PD控制的仿昆虫扑翼样机研制
精心准备,蓄势待发——广日电梯地铁项目样机验收顺利通过!
模块化住宅
马勒推出新型模块化混动系统
Dunnnk让设计作品更加形象逼真
雄安新区出现基于区块链技术应用的智慧垃圾收集器样机
商业模式是新媒体的核心
基于ASP.NET标准的采购管理系统研究