ADAMS二次开发及实例

合集下载

基于adams的重卡轮毂轴承仿真平台二次开发

基于adams的重卡轮毂轴承仿真平台二次开发
收稿日期:2019-10-02 基金项目:2019 年杭州市萧山区科技计划项目“重卡轮毂轴承监测系统研究开发”(201911032);2020 年浙江省重点研发计划项目“汽车关键零 部件专用装备研发及产业化”(2019C01SA190114) 作者简介:胡永伟(1992―),男,河南周口人,在读硕士,主要从事机电检测与控制技术研究。
1.1 创建轮毂轴承 ADAMS 仿真模型 轮毂轴承是汽车最具代表性的标准件,在开发轮毂轴承过程中,动力学分析是必不可少的环节。如图
1 所示,轮毂轴承动力学分析分为三步:(1)建立几何模型与约束;(2)求解几何模型;(3)后处理[1]。
图 1 重卡轮毂轴承动力学分析步骤
本课题使用 ADAMS 宏命令定制用户界面,采用参数化坐标法建立了重卡汽车轮毂轴承的模型,利用 ADAMS 软件的 CMD 语言对重卡轮毂轴承的建模、仿真控制以及结果输出进行编译,完成了基于 ADAMS 的重卡轮毂轴承仿真软件的开发 。 [2]
(1.浙江农林大学,浙江 杭州 311300;2.浙江兆丰机电股份有限公司,浙江 杭州 311200)
摘要:轮毂轴承是重卡汽车的重要组成零部件,其动力学性能决定了重卡汽车的安全性。ADAMS 是一款机械
系统动力学仿真分析软件,也是轮毂轴承设计和优化的主要软件。从轴承设计、分析角度二次开发了 1/4
车架环境的重卡轮毂轴承动力学仿真软件 ADAMS/view,并以重卡轮毂轴承 HZF1645BR-2T 为例,使用试验机
图 7 重卡轮毂轴承求解流程 如图 8 所示,重卡轮毂轴承零部件的动力学仿真求解面板是通过 ADAMS 和 Fortran 联合完成的,根 据前节设定的几何模型和运动条件,先在轴承外圈的 ADAMS 仿真模型中输入初速度,对轴承外圈动力学 运动微分方程进行求解 。 [7] 2.2 仿真后处理界面的开发 本课题创建了参数化生成重卡汽车轮毂轴承动力学仿真模型程序,并对 ADAMS 软件进行了二次开发, 那么原后处理界面就不再适用于重卡轮毂轴承二次开发的 ADAMS 软件,因此本课题新开发了 ADAMS 后处

基于ADAMS的履带式起重机履带板二次开发建模

基于ADAMS的履带式起重机履带板二次开发建模

of work. This article uses the secondary development function of ADAMSꎬ writes and records the cmd command streamꎬ puts
the recorded macro command on the front end of the programꎬ and extracts the modeling related parameters in the macro com ̄
研究与试验
2021 年第 2 期 ( 第 34 卷ꎬ总第 172 期) 机械研究与应用
doi:10.16576 / j.cnki.1007-4414.2021.02.026
基于 ADAMS 的履带式起重机履带板二次开发建模

廖建国1 ꎬ尹旭男1 ꎬ齐 芳1 ꎬ张 强2 ꎬ李 兵2
在 ADAMS 软件中添加导出导入命令ꎮ
( 见图 7) 按照图 4 的正确尺寸填写ꎬ在 ADAMS 中实
为了保证接口对齐的准确度ꎬ可以采用 ADAMS
加旋转副建立程序ꎬ然后自动添加每两块履带板之间
1.2 履带板缠绕轨迹线算法
二次开发功能ꎬ编写 cmd 命令流ꎬ通过不断的调整张
紧端的位置ꎬ实现履带板的自动缠绕ꎮ 由于整个履带
图 5 几字型支架有限元分析 图 6 助力椅样机
[4] 王广林ꎬ潘俊兵.基于北斗导航的螺纹调节式智能助老拐杖的设
计与研究[ J] .机械设计与制造工程ꎬ2020ꎬ49(10) :59-62.
[5] 卢佳伟ꎬ张秋菊ꎬ赵宏磊. 助老服务机器人设计及仿人运动研究
放命令ꎬ对履带板建模流程进行录制ꎬ并把录制后的
宏命令作为程序放于程序前部ꎮ 提取宏命令中的建

adams自定义界面 二次开发【精选】

adams自定义界面 二次开发【精选】

ADAMS/View的界面如何起作用
使用ADAMS/View界面建立或修改模型时, 界面执行一系列ADAMS/View命令
通过控制建立或修改的对话窗所提交的命 令来管理该对话窗的功能。
如何改变界面
工具:
菜单修改器(Menu Builder) 对话窗发生器(Dialog-Box Builder) 是交互式的工具,可以用来自定义界面,快速打
例子
MENU1 &Help NAME=help HELP=Get Help on ADAMS BUTTON2 &About... HELP=Display product info CMD=int dia disp dia=.gui.about_adams
MENU1 &Build NAME=build HELP=Create the model entities that make up your design MENU2 &Model NAME=model BUTTON3 &New... NAME=model_new HELP=Create a new model CMD=int dia dis dia=.gui.model_cremod par=""
Dialog-Box 自定义对话框
ADAMS/View使用的对话窗中包含很多类 型的界面对象,如 Labels、Fields、 buttons等,利用它们生成或修改对话窗
生成、修改对话窗 在对话窗中增加、修改、删除界面对象 对话窗的测试 存储、加载、显示、退出用户化的对话窗
生成对话窗 修改对话窗
生成或修改菜单
方法:
菜单修改器(Menu Builder) 修改菜单的文本文件,然后再输入到

MSC.ADAMS 二次开发技术应用研究

MSC.ADAMS 二次开发技术应用研究

MSC.ADAMS二次开发技术应用研究王晓东西北大学MSC.ADAMS二次开发技术应用研究Application Research Of The RedevelopingTechnique Of MSC.ADAMS王晓东西北大学摘要:MSC.ADAMS不仅是一个优秀的虚拟样机建模和分析软件,同时也可作为开发虚拟样机分析应用软件的有效工具。

用户可以针对特定的应用需求,对MSC.ADAMS进行功能定制和二次开发,扩充其功能或者将其仿真分析功能集成到自己的程序中。

本文从编写MSC.ADAMS用户自定义函数和MSC.ADAMS/SDK开发两个方面,对MSC.ADAMS的二次开发技术及其在工程上的应用进行了介绍。

关键词: MSC.ADAMS 虚拟样机二次开发用户自定义函数Abstract: MSC.ADAMS is an excellent software of virtual prototyping analysing,as well as a developing tool .For the specific purpose,users can redevelop the MSC.ADAMS software so as to strengthen the capability of simulation and analysis,or integrate such capability into your own applications. The redeveloping technique of MSC.ADAMS softwre is briefly described in programing user-writen functions and devoloping MSC.ADAMS/SDK.Key words: MSC.ADAMS,virtual prototyping,redevelopment,user writen functions1 前言虚拟样机技术(Virtual Prototype Technology)是当前设计制造领域的一门新兴的CAE技术,主要功能是在计算机上建立机械系统的三维实体模型和力学模型,分析和评估系统的性能,为物理样机的设计和产品的制造提供参数依据。

ADAMS二次开发及实例

ADAMS二次开发及实例

第11章 ADAMS二次开发及实例ADAMS具有很强的二次开发功能,包括ADAMS/View界面的用户化设计,利用cmd语言实现自动建模和仿真控制,通过编制用户子程序满足用户的某些特定需求,甚至可以拓展ADAMS的功能。

本章主要介绍如何定制用户化界面、宏命令的用法和条件循环命令的用法,以及综合以上功能的应用实例。

由于用户子程序的主要内容已在第9章进行了详细介绍,因此本章只对所涉及到的用户子程序编译联接操作过程进行简单介绍。

11.1 定制用户界面ADAMS/View的界面对象都是以层次结构存储在模型数据库中,类似于零件模型的层次结构。

所有定制的界面对象都存储在名为GUI的数据库中,该数据库可以很方便地管理所有的标准界面对象。

如图11-1所示。

图11-1 界面对象的层次结构机械系统动力学分析及ADAMS应用最上层的界面对象是窗口和对话框。

如果主要建模窗口起名为main的话,其数据库全名应为.gui.main。

尽管窗口和对话框看起来很相似,但它们却是很不相同的。

窗口通常是在用户工作的时候在屏幕上停留一段时间,而对话框通常是在用户输入数据或是进行访问控制时才会出现。

窗口有工具条和菜单栏,窗口和对话框也包含其他的界面对象如按钮,标签等等。

大多数用户化操作涉及到创建对话框或者修改标准对话框。

但若不用创建一个完整的用户化界面时,则通常只用修改菜单条和工具栏。

ADAMS所包含界面对象属性如表11-1所示。

表11-1 ADAMS所包含界面对象属性第11章ADAMS二次开发及实例Option menu(可选菜单项) 在多个菜单项中作一选择包含一个弹出菜单的图框只显示一行选定菜单项Radio boa(状态设置框) 设置状态和模式给界面和对话框设置标签Tab container(标签界面对象)Data table(数据表) 用来显示数据的表格,你可增加栏或列在大多数情况下,用户定制界面是指制作用户自己的菜单和对话框。

通常可使用菜单编辑器和对话框编辑器来定制界面,通过它们可以很快地访问并改变大多数界面对象和功能。

ADAMS在某微轿整车动力学仿真中的应用及其二次开发

ADAMS在某微轿整车动力学仿真中的应用及其二次开发

ADAMS在某微轿整车动力学仿真中的应用及其二次开发张云清陈立平任为群宋健华中科技大学清华大学摘要:本文利用ADAMS软件建立了某国产轿车的操纵动力学多体仿真模型,详细考虑了前后悬架系统、转向系统以及轮胎,并考虑了各种连接件中的弹性衬套的影响,对该车稳态、瞬态以及制动等工况进行了动力学仿真。

并结合该车的拓扑结构对ADAMS进行了二次开发,形成了一个自动化建模、仿真系统。

关键词:多体系统动力学,车辆动力学,操纵稳定性,自动化建模,仿真系统一、前言数字化虚拟样机技术是缩短车辆研发周期、降低开发成本、提高产品设计和制造质量的重要途径。

随着虚拟产品开发、虚拟制造技术的逐渐成熟,计算机仿真技术得到大量应用,许多国际知名汽车企业均已构建了数字化虚拟样机设计、开发环境,许多产品已完全实现了数字化。

系统动力学仿真是数字化虚拟样机技术的核心、关键技术。

对汽车而言,车辆动力学性能尤为重要,为了降低产品开发风险,在样车制造出之前,利用数字化样机对车辆的动力学性能进行计算机仿真,并优化其参数就显得十分必要了。

车辆动力学问题本身是多体系统动力学问题,目前国外许多汽车企业都已经大规模应用多体分析程序来进行车辆动力学仿真,并且利用系统仿真的概念,从设计--试验--改进设计—再试验—再设计的设计理念转为设计--仿真--试验,使设计中的主要问题利用数字化样机技术在设计初期得以解决。

目前在汽车上的应用已经可以集成机械、弹性体、液压、控制于一体进行动力学仿真,已处于成熟应用阶段[2~3]。

而且为了能够实现真正的并行工程,许多企业拥有自己的多体车辆动力学仿真专用系统,如ADAMS/Car、 ADAMS/Pre使建模自动化,大大缩短建模、仿真时间。

本文利用多体分析软件ADAMS建立了某国产轿车的操纵动力学多体仿真模型,详细考虑了前悬架系统(麦克弗逊式撑杆式悬架)、后悬架系统(查普曼式撑杆式悬架)、转向系统(齿轮—齿条转向系统)以及轮胎,并考虑了各种连接件中的弹性衬套的影响,对该车进行了整车稳态回转、瞬态以及制动等工况进行了动力学仿真。

ADAMS二次开发

ADAMS二次开发

2.5 ADAMS 软件的二次开发ADAMS 具有很强的二次开发功能,包括ADAMS/View 界面的用户化设计,利用.cmd语言实现自动建模和仿真控制,通过编写用户子程序满足用户的某些需求,甚至可以拓展ADAMS 的功能。

2.5.1 界面的二次开发1、定制菜单选择Tools/Menu/Modify 命令可以打开菜单编辑器窗口。

在默认情况下,菜单编辑器窗口中显示的是描述ADAMS 标准菜单的菜单文件,用户可以修改该菜单文件得到自己所需要的菜单。

菜单文件实际上是用解释性语言编制的程序段,因此,要想定制自己所需的菜单,必须了解编制残单文件的语法规则。

下面介绍该解释性语言的编程语法。

菜单对象有四种类型:菜单、按钮或图标按钮、开关按钮和分割线,分别用关键词MENUn、BUTTONn、TOGGLEn 和SEPARATORn 定义。

各菜单对象的参数含义如下:*n 是从1 到10 之间的整数,通常为1、2、3,它定义了对象在菜单中出现的级别。

Level1 表示第一级。

例如,MENU1 出现在菜单栏,BUTTON2 出现在MENU1 的之中。

MENU菜单后面的n 是必须要的,而对于其他的对象则为可选项。

如果你忽略级别,ADAMS/View 将默认该对象属于最后一个MENU。

你的菜单项可达到10 级,在菜单中你可以按你的需要尽可能多的按钮。

*lable 是出现在菜单中的文本。

对于图标按钮,你可以指定图标的名字,或者其他图形格式文件。

在Windows 中,图标名字为bitmap(.bmp)格式的文件名字。

(1)MENU 的创建可以创建多级的菜单,第一级菜单为MENU1,出现在菜单条上,低一级的菜单如MENU2 和MENU3 出现在层叠的下拉菜单中。

语法:MENUn TITLENAME=nameHELP=Help参数:n 为整数值,表明该菜单在菜单条中出现的层数。

n=1 时菜单出现在菜单栏上,n≥2 时菜单出现在下拉菜单中。

使用自定义函数进行ADAMS的二次开发

使用自定义函数进行ADAMS的二次开发

( 1) 将 vc_user_sub.c 和 mdi_c.h 拷贝到同一个文件夹下,
在 Visual C++ 中打开 vc_user_sub.c 文件进行编译, 则在相同目
录下的 Debug 文件夹下自动生成 vc_user_sub.obj 文件。
( 2) 首 先 把 vc_user_sub.obj 文 件 拷 贝 到 ADAMS软 件 的 安
装目录下的 common 目录中。另外在编译、链接过程 中 需 要 用
到 Dfprot.lib 和 Dformd.lib 两 个 库 文 件 , 将 其 也 粘 贴 到 该 目 录
中。
( 3) 使 用 命 令 行 将 vc_user_sub.obj 转 为 动 态 链 接 库 文 件
vvc_user_sub.dll。具 体 步 骤 为 : 开 始 / 运 行 / 键 入 CMD 后 回 车
1 用户自定义函数
ADAMS不但提供了方便的用户操作界面, 而且具 有 强 大 的分析求解功能, 本身就包含了种类很丰富的库函数供用户使 用。一般情况下, ADAMS 的大部分功能可以通过调用库函数来 完 成 , 库 函 数 很 容 易 操 作 , 不 必 编 译 和 连 接 程 序 , 而 且 ADAMS /Solver 还会提供运行时函数。但库函数提供的只是有限的编程 结构, 因此有些复杂的情况, 特别是涉及到逻辑表达时, 用库函 数的现有函数很难表达出来。因此当需要采用一些 ADAMS没 有提供的特殊函数时, 可以采用用户自定义函数。
mdi_c.h 头文件) 。
2.1.2 编译链接 C 源程序, 生成动态链接文件
利 用 Visual C++ 调 试 器 编 译 vc_user_sub.c 程 序 , 生 成

adams自定义界面--二次开发

adams自定义界面--二次开发

数据库对象:Constraint、Force、Equation、Measure、Body
Range:指定允许的最大、小值。适合数值 型参数
GT=r:大于r LT=r:小于r
GE=r:大于等于r LE=r:小于等于r
Count:指定参数所需数据的个数,
C=0:一个或多个 C=n:N个 C=n,0:N个或多个 C=n,m:N到M之间的数
constraint attributes constraint_name=.* size_of_icons = $size
输入命令:icon_size size=1.5 ADAMS/View则执行如下命令:
constraint attributes constraint_name=.* size_of_icons = 1.5
ADAMS/View宏介绍
宏是生成的一个命令,它可以完成一系列 的命令。
按照View的命令格式来编写宏,View像处 理其它命令一样处理宏,可在命令窗口中 执行宏,也可以在宏中使用其它的宏或在 用户化菜单、对话窗和按钮下调用宏。 在宏中可以使用参数。

ADAMS/View提供一套工具,可帮助记录、
二次开发---自定义界面
主要内容
关于ADAMS/View的菜单和对话窗…… 使用Menu Builder 修改菜单; 使用 Dialog-Box Builder 自定义对话窗 使用ADAMS/View的宏
ADAMS/View的菜单和对话窗
在ADAMS/View中所见到的大部分的窗口、 菜单或对话窗都是ADAMS/View模型数据 库的界面对象。
对于复杂的宏而言,读入一个包含宏要执行的
命令的ADAMS/View命令文件的方式最好,因 为这样还可指定与该宏相关的帮助文件或帮助 性的字符串;

ADAMS二次开发分析方法

ADAMS二次开发分析方法

前期处理工作
ADAMS中处理 方法 仿真实例 结论
通过编译生成
page 5
二、 ADAMS中处理方法 1. 编译.obj生成.dll
前期处理工作
ADAMS中处理 方法 仿真实例 结论
输入CR-USER,按两下回车,将出现以下界面:
page 6
二、ADAMS中处理方法
前期处理工作
ADAMS中处理 方法 仿真实例 结论
总体介绍了ADAMS进行二次开发所需要的软件和环境,需要对C语言进行 二次编译,在ADAMS环境中生成动态库文件,需要值得注意的是:在整个编译 过程中利用C++软件和ADAMS软件进行编译的过程中都需要用到FORTRAN文 件:1.C++编译过程中需要FORTRAN+ADAMS库文件;2.ADAMS编译过程中 需要FORTRAN文件+C++库文件,而且需要指出的是,ADAMS二次开发仅仅 限于C语言和FORTRAN语言,需要C++软件进行编译,但C++软件不能识别 ADAMS语言,同样,ADAMS也不能识别C++语言,在编译过程中出现以上问 题都会发生错误。
前期处理工作
ADAMS中处理 方法 仿真实例 结论
page 4
一、 前期处理工作 3、 C++实现User-written Subroutine
(1)、确认自己使用的ADAMS是R3版权,如果是ADAMS 2005则使用的编译器是不一样的.首先在ADAMS的安装 目录下,如: C:\MSC.Software\MD_Adams\R3\solver\samples,将userPortName.h和utilCcallable.h拷贝. (2)、在VC环境下建立工程,并将上述两文件拷贝到工程下并加载到工程中,如图所示:

ADAMS二次开发

ADAMS二次开发

ADAMS二次开发的笔记一、定制用户界面1、首先要知道,再ADAMS/VIEW中,所有的界面对象都是以“层次结构”出现的,并且保存在特定的模型数据库中,在用户制定自己的用户界面的时候,最好将界面对象保存在一个你自己的数据库中,创建数据库的方法是:在command navigator—library—create. 如果不建立自己的数据库,则所有的界面对象都默认的保存在GUI数据库下。

2、要正确理解“窗口”“对话框”的概念,他们是不同的一个概念。

3、我们这里讲的制定用户界面,是指制作自己的菜单和对话框,通常使用菜单编辑器和对话框编辑器来完成。

4、制定自己的菜单,你要明确的是:你在制定自己的菜单的时候,菜单上出现的button的先后顺序以及menu的先后顺序是与你写菜单命令的先后顺序一致的。

即:是以大纲形式来表示二、菜单语法的解释:1、菜单对象:菜单、按钮(图表按钮、toggle button)分割线(separator)分别用关键词:menu \button\toggle\separator.定义例子:MENU1 &my_menu2003NAME=my_menu2003HELP=A Menu TestBUTTON2 &My_button1NAME=my_button_1HELP=test of my_button_1CMD=Adams Command of my_button_1Separator2BUTTON 2 &My_button2NAME=my_button_1HELP=test of my_button_1CMD=Adams Command of my_button_1Separator2MENU2 &son menu_1BUTTON3 &Son Button_1NAME=Son_Button_1CMD=Adams Command of Son Button_1BUTTON3 &Son Button_2NAME=Son_Button_2CMD=Adams Command of Son Button_2在编写这些命令的时候要注意MENU BUTTON SEPARATOR TOGGLE这些关键字要大写,另外在MENUn其中的n与MENU中间不允许有空格。

ADAMS二次开发及实例

ADAMS二次开发及实例

第11章 ADAMS二次开发及实例ADAMS具有很强的二次开发功能,包括ADAMS/View界面的用户化设计,利用cmd语言实现自动建模和仿真控制,通过编制用户子程序满足用户的某些特定需求,甚至可以拓展ADAMS的功能。

本章主要介绍如何定制用户化界面、宏命令的用法和条件循环命令的用法,以及综合以上功能的应用实例。

由于用户子程序的主要内容已在第9章进行了详细介绍,因此本章只对所涉及到的用户子程序编译联接操作过程进行简单介绍。

11.1 定制用户界面ADAMS/View的界面对象都是以层次结构存储在模型数据库中,类似于零件模型的层次结构。

所有定制的界面对象都存储在名为GUI的数据库中,该数据库可以很方便地管理所有的标准界面对象。

如图11-1所示。

图11-1 界面对象的层次结构最上层的界面对象是窗口和对话框。

如果主要建模窗口起名为main的话,其数据库全名应为.gui.main。

尽管窗口和对话框看起来很相似,但它们却是很不相同的。

窗口通常是在用户工作的时候在屏幕上停留一段时间,而对话框通常是在用户输入数据或是进行访问控制时才会出现。

窗口有工具条和菜单栏,窗口和对话框也包含其他的界面对象如按钮,标签等等。

大多数用户化操作涉及到创建对话框或者修改标准对话框。

但若不用创建一个完整的用户化界面时,则通常只用修改菜单条和工具栏。

ADAMS所包含界面对象属性如表11-1所示。

表11-1 ADAMS所包含界面对象属性Seperator(分割线)画出水平线分割线Slide(滑动条)通过滑动条设置当前范围内的整数值,而不用键入数值Option menu(可选菜单项)在多个菜单项中作一选择包含一个弹出菜单的图框只显示一行选定菜单项Radio boa(状态设置框)设置状态和模式Tab container(标签界面对象)给界面和对话框设置标签Data table(数据表)用来显示数据的表格,你可增加栏或列在大多数情况下,用户定制界面是指制作用户自己的菜单和对话框。

基于AdamsCar的二次开发和应用

基于AdamsCar的二次开发和应用

基于Adams/Car的二次开发和应用作者:胡礼易忠路龚成斌王存杰胡少洪来源:《计算机辅助工程》2014年第01期摘要:简介Adams/Car的二次开发功能,编制关于后扭力梁悬架自动建模界面,并通过实例操作验证其正确性.该实例可大大提高CAE工程师进行此类悬架分析的效率.关键词:Adams;扭力梁;悬架;二次开发中图分类号: U463.33; TB115.1文献标志码: B0引言随着汽车行业的发展,人们对汽车的要求越来越高,不仅要求有良好的操纵稳定性,还要求有良好的舒适性和可靠性.按照传统设计方法很难达到设计要求,因此CAE技术应运而生.据资料显示,丰田佳美在采用CAE技术后,研发成本降低30%,研发时间缩短10个月,样车数量减少65%,人力投入减少20%.[1]可见,CAE技术能带来很大好处.然而,在运用CAE技术时,建模过程占用大量时间,且该过程极其枯燥并容易出错.本文通过Adams/Car的二次开发,编制后扭力梁悬架自动建模界面,通过实例操作,验证其正确性,为进行此类悬架分析节约大量时间,提高工作效率.1Adams/Car二次开发简介目前,Adams是世界上应用最广的动力学仿真分析软件之一,已应用在航空、汽车、兵器、船舶和医疗器械等多个行业,并取得非常优秀的成绩.利用它的二次开发功能,用户可以对Adams进行功能定制:如利用cmd语言实现仿真控制和自动建模;进行Adams/Car界面的用户化设计,针对用户的某些特殊需求,通过编制用户自定义函数或子程序拓展Adams功能,为用户定制具有特殊功能的分析软件.1.1定制用户界面定制用户界面指用户可以使用菜单和对话框编辑器制作自己需要的菜单和对话框.在通常情况下,用户只需修改工具条和菜单栏就能满足大部分的需要.1.2定制对话框定制对话框指用户用对话框编辑器根据自身需求创建和修改对话框,可以为一个对话框增加一个标签用于显示对话框中的文本和图像,也可以添加一个数据区用于用户输入文字和数值信息等.1.2.1建立对话框(1)从Tools菜单上选择Dialog Box按钮,再选择Create按钮,弹出对话框编辑器(见图1).(2)在对话框编辑器中,通过从Dialog Box菜单上选择New,弹出新对话框(见图2),然后在Name框里输入对话框的名字(如dbox_1),并选择需要添加的一些按钮,如OK,Apply和Close等.(3)点击OK按钮,完成一个新对话框的创建.1.2.2在用户定制对话框里增加界面对象上述步骤虽然能够创建对话框,但是还不能实现用户想要的功能,需要向新建立的对话框中添加Label,Field,Button和Container等界面对象,完善定制对话框的功能.用户可以利用对话框编辑器,通过从Create菜单选择需要添加的对象,然后在想要添加对象的对话框里用鼠标左键点击并拖动,即可创建各个对象,并且可以利用对话框编辑器快速修改各个对象的属性,供用户使用.Adams/Car对话框界面对象及其作用见表1.4结束语在Adams中进行二次开发,编制后扭力梁悬架自动建模界面,可以实现快速建模,其效率是传统建模的数倍,为CAE工程师仿真分析节约大量时间,对CAE技术的发展有重要意义.参考文献:[1]陈军. Adams技术与工程分析实例[M]. 北京:中国水利水电出版社, 2008.[2]陈立平,张云清,任卫群,等. 机械系统动力学分析及Adams应用教程[M]. 北京:清华大学出版社, 2005.(编辑陈锋杰)。

ADAMS二次开发

ADAMS二次开发

ADAMS二次开发的笔记一、定制用户界面1、首先要知道,再ADAMS/VIEW中,所有的界面对象都是以“层次结构”出现的,并且保存在特定的模型数据库中,在用户制定自己的用户界面的时候,最好将界面对象保存在一个你自己的数据库中,创建数据库的方法是:在command navigator—library—create. 如果不建立自己的数据库,则所有的界面对象都默认的保存在GUI数据库下。

2、要正确理解“窗口”“对话框”的概念,他们是不同的一个概念。

3、我们这里讲的制定用户界面,是指制作自己的菜单和对话框,通常使用菜单编辑器和对话框编辑器来完成。

4、制定自己的菜单,你要明确的是:你在制定自己的菜单的时候,菜单上出现的button的先后顺序以及menu的先后顺序是与你写菜单命令的先后顺序一致的。

即:是以大纲形式来表示二、菜单语法的解释:1、菜单对象:菜单、按钮(图表按钮、toggle button)分割线(separator)分别用关键词:menu \button\toggle\separator.定义例子:MENU1 &my_menu2003NAME=my_menu2003HELP=A Menu TestBUTTON2 &My_button1NAME=my_button_1HELP=test of my_button_1CMD=Adams Command of my_button_1Separator2BUTTON 2 &My_button2NAME=my_button_1HELP=test of my_button_1CMD=Adams Command of my_button_1Separator2MENU2 &son menu_1BUTTON3 &Son Button_1NAME=Son_Button_1CMD=Adams Command of Son Button_1BUTTON3 &Son Button_2NAME=Son_Button_2CMD=Adams Command of Son Button_2在编写这些命令的时候要注意MENU BUTTON SEPARATOR TOGGLE这些关键字要大写,另外在MENUn其中的n与MENU中间不允许有空格。

ADAMS二次开发编程技巧和注意点

ADAMS二次开发编程技巧和注意点

ADAMS二次开发编程技巧和注意点ADAMS不同版本之间的转换1、把MDI.DAT修改成所需要的版本,若所需要的版本就是环境变量中默认的版本,则不需要MDI.DAT2、双击start.bat,调用ADAMS建立新版的BIN文件,文件名字要和aview.cmd中的名字一致(此处的名字可根据需要修改,只需要根据需要修改BIN文件的名字,不需要定义单位和坐标系,因为随后导入的CMD有定义,CMD的坐标系一般定义为123坐标),new model working directory>新建的文件夹3、修改前处理菜单。

tools>menu>modify 添加bearing前处理菜单及其子菜单>apply4、添加前处理几个必要的CMD. file>import>done.cmd start.cmd tips.cmd waring.cmd aview.cmd5、添加前处理菜单cmd。

根据bearing菜单中的子菜单选项,添加所需要的CMD。

有时会出现警告,处理方法为:view>message window>settings>error6、修改后处理菜单Tools>Menu>modify>menu bar>load>pptmain>mbar>ok,此时出现menu bulider界面(隐藏于任务栏中),按照前处理菜单的修改方法,进行修改即可,最后点击APPL Y,即可生成后处理菜单。

7、导入后处理菜单的CMD,方法同前处理。

后处理>file>import>commamd file>右键>browse8、模型创建完成后,可以导出一个以模型名为名的总的CMD, file>export>commamd file。

ADAMS2010不能编程的处理方法:1、打开编译器2、cd/d+文件夹地址(是编译程序所在的地址,不在不是ADAMS2005的MDI地址,此时ADAMS2010的MDI不应该在文件夹中)3、打开ADAMS2005的MDI(若ADAMS2005的MDI不在文件夹中,则可手动双击,ADAMS2005软件安装位置中COMMON>MDI.DAT。

第11章ADAMS二次开发及实例-(陈立平)机械系统动力学分析及ADAMS应用

第11章ADAMS二次开发及实例-(陈立平)机械系统动力学分析及ADAMS应用

第11章 ADAMS二次开发及实例ADAMS具有很强的二次开发功能,包括ADAMS/View界面的用户化设计,利用cmd语言实现自动建模和仿真控制,通过编制用户子程序满足用户的某些特定需求,甚至可以拓展ADAMS的功能。

本章主要介绍如何定制用户化界面、宏命令的用法和条件循环命令的用法,以及综合以上功能的应用实例。

由于用户子程序的主要内容已在第9章进行了详细介绍,因此本章只对所涉及到的用户子程序编译联接操作过程进行简单介绍。

11.1 定制用户界面ADAMS/View的界面对象都是以层次结构存储在模型数据库中,类似于零件模型的层次结构。

所有定制的界面对象都存储在名为GUI的数据库中,该数据库可以很方便地管理所有的标准界面对象。

如图11-1所示。

图11-1 界面对象的层次结构机械系统动力学分析及ADAMS应用最上层的界面对象是窗口和对话框。

如果主要建模窗口起名为main的话,其数据库全名应为.gui.main。

尽管窗口和对话框看起来很相似,但它们却是很不相同的。

窗口通常是在用户工作的时候在屏幕上停留一段时间,而对话框通常是在用户输入数据或是进行访问控制时才会出现。

窗口有工具条和菜单栏,窗口和对话框也包含其他的界面对象如按钮,标签等等。

大多数用户化操作涉及到创建对话框或者修改标准对话框。

但若不用创建一个完整的用户化界面时,则通常只用修改菜单条和工具栏。

ADAMS所包含界面对象属性如表11-1所示。

表11-1 ADAMS所包含界面对象属性第11章ADAMS二次开发及实例在大多数情况下,用户定制界面是指制作用户自己的菜单和对话框。

通常可使用菜单编辑器和对话框编辑器来定制界面,通过它们可以很快地访问并改变大多数界面对象和功能。

下面就这两方面的内容作简单介绍。

11.1.1 定制菜单1。

菜单编辑器通过以下菜单路径可以调出菜单编辑器窗口:Main menu==》Tools==》Menu==》Modify……菜单编辑器窗口如图11-2所示:图11-2 菜单编辑窗口在菜单编辑器窗口中显示的是ADAMS菜单文件,菜单文件是按照一定的语法书写的解释性程序文件,在默认情况下,菜单编辑器窗口里显示的是描述ADAMS标准菜单的菜单文件,通过按照一定的语法规则修改该菜单文件,就可以得到用户化的菜单。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第 11 章 ADAMS 二次开发及实例
NAME=name HELP=help CMD=command 参数: n=整数值,表明按钮出现的层数。N=2 时按钮出现在下拉菜单上,n≥ 3 时按钮出现在子菜单上。 LABLE=按钮名,出现在下拉菜单或子菜单上。 ACCELERATOR=键或键组用来执行菜单命令。 NAME=模型数据库中菜单对象的名字。 HELP=出现在状态条上的文字。 CMD=点击按钮时所执行的命令,当有:多行命令时,每一行前面都要 加 CMD。 创建分隔符(SEPERATOR) 在下拉菜单和子菜单中的各项目之间添加分割线。 语法: SEPERATORn 参数: n=整数值,表明分隔符出现的层数,n=2 时分隔符出现在下拉菜单中, n=3 时分隔符出现在子菜单中。 创建开关按钮 TOGGLE 用于在两种状态之间设置切换开关, 开关按钮可以在下拉菜单或是在子 菜单上。 语法: TOGGLEn TITLE NAME=name HELP=help STATE=state CMD=command 其参数含义同上其他对象。 下面是一个利用菜单编辑器定制用户化菜单的例子,该例在 ADAMS/View 标准菜单的 Tools 菜单项和 Help 菜单项之间定制了用户自己 的菜单项 MyMenu2003, 通过展开该菜单项显示了用户菜单各层次之间的关 系,如图 11-4 所示。
第 11 章 ADAMS 二次开发及实例 …… SEPARATOR2 …… BUTTON2 …….. SEPARATOR2 …… BUTTON2 …… MENU1 &Edit …… MENU1 &View …… MENU1 &Build …… MENU1 &Simulate …… MENU1 &Review …… MENU1 Settin&gs …… MENU1 &Tools …… MENU1 &Help ! Help 菜单项 !Tools 菜单项 !Settings 菜单项 !Review 菜单项 !Simulate 菜单项 !Build 菜单项 !View 菜单项 !Edit 菜单项 E&xit::Ctrl+Q !Exit 按钮 !分割线 &Select Directory. !Select Directory.按钮 !分割线
图 11-3 ADAMS/View 菜单 MENU1 &File NAME=file HELP=Read and write files, print model views, or exit ADAMS BUTTON2 …… BUTTON2 &Open Database::Ctrl+O !Open Database 按钮 NAME=open HELP=Open a Database File (ADAMS/View Binary File) …… BUTTON2 …… SEPARATOR2 …… BUTTON2 ……... BUTTON2 ……... SEPARATOR2 …… BUTTON2 &Print...::Ctrl+P !Print 按钮 !分割线 &Export !Export 按钮 &Import !Import 按钮 !分割线 Save Database &As... !Save Database 按钮 &New Database::Ctrl+N !New Database 按钮 NAME=new !File 菜单项
机械系统动力学分析及 ADAMS 应用
图 11-4 用户菜单 MyMenu2003 的层次结构
下面是本例的程序清单:
…… MENU1 &Tools …… MENU1 &MyMenu2003 NAME=mymenu2003 HELP=A Menu Test BUTTON2 My Button &1 NAME=My_Button_1 HELP=Test of My Button 1 CMD=Adams Command of My Button 1 BUTTON2 My Button &2 NAME=My_Button_2 HELP=Test of My Button 2 CMD=Adams Command of My Button 2 BUTTON2 …… NAME=Some_Buttons HELP=Test of Some Button CMD=Adams Commands of Some Buttons BUTTON2 My Button &n NAME=My_Button_n HELP=Test of My Button n CMD=Adams Command of My Button n SEPARATOR2 MENU2 &Son Menu 1 BUTTON3 Son Button 1 NAME=Son_Button_1
最上层的界面对象是窗口和对话框。如果主要建模窗口起名为 main 的 话,其数据库全名应为.gui.main。 尽管窗口和对话框看起来很相似, 但它们却是很不相同的。 窗口通常是 在用户工作的时候在屏幕上停留一段时间, 而对话框通常是在用户输入数据 或是进行访问控制时才会出现。 窗口有工具条和菜单栏, 窗口和对话框也包 含其他的界面对象如按钮,标签等等。 大多数用户化操作涉及到创建对话框或者修改标准对话框。 但若不用创 建一个完整的用户化界面时,则通常只用修改菜单条和工具栏。 ADAMS 所包含界面对象属性如表 11-1 所示: 。
第 11 章 ADAMS 二次开发及实例
ADAMS 具有很强的二次开发功能,包括 ADAMS/View 界面的用户化 设计,利用 cmd 语言实现自动建模和仿真控制,通过编制用户子程序满足 用户的某些特定需求,甚至可以拓展 ADAMS 的功能。 本章主要介绍如何定制用户化界面、 宏命令的用法和条件循环命令的用 法,以及综合以上功能的应用实例。由于用户子程序的主要内容已在第 9 章进行了详细介绍, 因此本章只对所涉及到的用户子程序编译联接操作过程 进行简单介绍。
表 11-1 ADAMS 所包含界面对象属性
界面对象: Window(窗口)
对 象 属 性: 可包含用户自定义的菜单条和工具条 可有一个以上的菜单条,但一次只能显示一个 包含所有低层次的界面对象 出现在窗口上端或下端的子区域 能包含其它的对象 出现在窗口上端 可有子菜单 仅用于控制菜单 包含三种类型:下拉式、弹出式或子菜单 可包含按钮、开关按钮、分割条和子菜单 除菜单条和工具条之外还可包含其他对象 包含在对话框,窗口和工具条内的子区域 可包含其他对象 可包含多个按钮,而只显示一个按钮 仅一个按钮被激活 可通过右键操作显示所有按钮. 用在对话框中显示文本和图象 用于用户输入信息 激活操作 在按钮上显示文本和图象对相应操作进行提 示 显示激活状态的按钮 画出水平线分割线 通过滑动条设置当前范围内的整数值 , 而不用
11.1 定制用户界面
ADAMS/View 的界面对象都是以层次结构存储在模型数据库中,类似 于零件模型的层次结构。所有定制的界面对象都存储在名为 GUI 的数据库 中,该数据库可以很方便地管理所有的标准界面对象。如图 11-1 所示。
图 11-1 界面对象的层次结构
机械系统动力学分析及 ADAMS 应用
第 11 章 ADAMS 二次开发及实例
键入数值 Option menu(可选菜单项) 在多个菜单项中作一选择 包含一个弹出菜单的图框 只显示一行选定菜单项 设置状态和模式 给界面和对话框设置标签 用来显示数据的表格,你可增加栏或列
Radio boa(状态设置框) Tab container( 标签界面对 象) Data table(数据表)
在大多数情况下,用户定制界面是指制作用户自己的菜单和对话框。 通常可使用菜单编辑器和对话框编辑器来定制界面, 通过它们可以很快地访 问并改变大多数界面对象和功能。下面就这两方面的内容作简单介绍。
11.1.1 定制菜单
1. 。菜单编辑器 通过以下菜单路径可以调出菜单编辑器窗口: Main menu==》Tools==》Menu==》Modify…… 菜单编辑器窗口如图 11-2 所示:
Toolbar(工具条) Menu Bar(菜单条)
Menu(菜单) Dialog box(对话框) Container(界面对象区) Button stack(按钮串)
Lable(标签) Field(数据区) Button(按钮)
Toggle button(开关按钮) Seperator(分割线 ADAMS 二次开发及实例 CMD=Adams Command of Son Button 1 BUTTON3 Son Button 2 NAME=Son_Button_2 CMD=Adams Command of Son Button 2 BUTTON3 …… NAME=Some_Son_Button CMD=Adams Command of Some Son Button BUTTON3 Son Button n NAME=Son_Button_n CMD=Adams Command of Son Button n SEPARATOR3 MENU3 Son's Son Menu BUTTON4 BUTTON4 MENU3 .…… MENU2 &Son Menu 2 MENU2 …… MENU2 &Son Menu n MENU1 &Help …… Son's Son Button ……
在菜单编辑器窗口中对菜单文件进行用户化修改后,点击编辑器窗口上 的 Menu bar 菜单项下的 Export Text 按钮可将用户化的菜单文件到用户二次 开发文件目录中。如果要重新调入菜单,使用菜单编辑器的 Import Text 按 钮调入相应的菜单文件, 然后点击 Apply 按钮; 或者直接通过以下菜单路径 来实现: Main menu==》Tools==》Menu==》Read……. 2 2。菜单语法 如前所述, 菜单文件实际上是用解释性语言编制的程序段, 下面介绍该 解释性语言的编程语法。 菜单对象有四种类型:菜单、按钮或图标按钮、开关按钮和分割线, 分 别用关键词 MENUn、BUTTONn、TOGGLEn 和 SEPARATORn 定义。如表 11-2 所示列出的是菜单对象类型及其参数含义。
相关文档
最新文档