第6章ADAMS模型语言及仿真控制语言
- 格式:doc
- 大小:1.07 MB
- 文档页数:29
第6章 ADAMS模型语言及仿真控制语言
本章对ADAMS的模型语言及仿真控制语言进行了简介。通过本章的学习可以掌握ADAMS/Solver模型语言adm文件、ADAMS/Solver仿真控制语言acf文件的语法、结构,对一些关键语句进行深入的说明,通过学习可以深刻理解ADAMS中几何、约束、力元等的实质,可以脱离ADAMS/View环境直接利用ADAMS/Solver进行一些高级应用,并为进一步的ADAMS二次开发打下基础。
6.1ADAMS的主要文件介绍
ADAMS中关于模型及分析主要有以下几种类型文件:ADAMS/View二进制数据库bin文件、ADAMS/View命令cmd文件、ADAMS/Solver模型语言adm文件、ADAMS/Solver仿真控制语言acf文件,以及ADAMS/Solver仿真分析结果文件:req文件、res文件、gra文件 、out文件、msg文件。
ADAMS/View二进制数据库bin文件以“ .bin”为文件名后缀,文件中记录了从ADAMS启动后到存储为bin文件时的全部信息-包含模型的完整拓扑结构信息、模型仿真信息以及后处理信息。可以包含多个模型、多个分析工况和结果。可以保存ADAMS/View的各种设置信息。文件为二进制不能阅读、编辑,只能通过ADAMS/View调阅,由于信息全面一般文件都比较大。
ADAMS/View命令cmd文件以“ .cmd”为文件名后缀,是由ADAMS/View命令编写的模型文件,可以包含模型的完整拓扑结构信息(包括所有几何信息)、模型仿真信息,为文本文件,可读性强,可以进行编程,是ADAMS的二次开发语言,不包含ADAMS/View的环境设置信息,不包含仿真结果信息,只能包含单个模型。
ADAMS/Solver模型语言(ADAMS Data Language)adm文件,以“ .adm”为文件名后缀,文件中包含模型中拓扑结构信息,但有些几何形体如 link等不能保留。ADAMS/View的环境设置不能保留。ADAMS/Solver可以读取adm文件,与ADAMS/Solver仿真控制语言acf文件配合可以直接利用ADAMS/Solver进行求解。
ADAMS/Solver仿真控制语言acf文件,以“ .acf”为文件名后缀,文件中可以包含ADAMS/Solver命令对模型进行修改和控制的命令,从而控制仿真的进行。
ADAMS/Solver将仿真分析结果中用户定义的输出变量输出到req文件,以“ .req”为文件名后缀;ADAMS/Solver将仿真分析结果中将模型的缺省输出变量输出到res文件,以“ .res”为文件名后缀;ADAMS/Solver将仿真分析结果中图形部分结果输出到gra文件,以“ .gra”为文件名后缀。ADAMS/Solver将仿真分析结果中用户定义的输出变量以列表的形式输出到out文件,以“ .out”为文件名后缀。ADAMS/Solver将仿真过程中的警告信息、错误信息输出到msg文件,以“.msg”为文件后缀。
下图为各种文件之间的关系
机械系统动力学分析及ADAMS应用
图6-1ADAMS各文件间的关系
6.2ADAMS/Solver模型语言(ADAMS DATA Language)adm
6.2.1 ADAMS/Solver模型语言分类及其语法介绍
ADAMS/Solver模型语言可以定义系统的拓扑结构,确定系统的输出,定义仿真分析参数等。
以下列表6-1是按功能分类的ADAMS/Solver模型语言分类。
表6-1 ADAMS/Solver模型语言
模型语言类型 模型语言关键字
Dataset Delimiter TITLE,END
Inertia and material data PART,FLEX_BODY,POINT_MASS
Geometry GRAPHICS,MARKER
Constraints COUPLER,CVCV,GEAR,JOINT,JPRIM,MOTION,PTCV,
UCON
Forces ACCGRAV,BEAM,BUSHING,CONTACT,FIELD,FRICTION,
GFORCE,MFORCE,NFORCE ,SFORCE,SPRINGDAMPER,
VFORCE ,VTORQUE
Generic systems modeling DIFF,GSE ,LSE ,TFSISO,VARIABLE
Aggregate element TIRE
Reference data ARRAY ,CURVE,MATRIX,PINPUT,POUTPUT,SPLINE,STRING
Analysis parameters DEBUG,EQUILIBRIUM,IC,INTEGRATOR
KINEMATICS, SENSOR ,UINT
Output FEMDATA ,LIST/NOLIST,MREQUEST,OUTPUT,REQUEST,
RESULTS
(1)模型语言格式
ADAMS/Solver adm acf
req res gra out msg 第6章 ADAMS模型语言及仿真控制语言
1,...,1,...,/[,]1(1,...),...(1,...)vvnvvnNAMEidARGcvvnARGncvvnee
ADAMS/Solver模型语言的格式如上,一般必包括“/”、id号以及一个或多个变量表达式。现以MARKER语句说明。
,,,,,,,,,/,,,_,,,,QPxyzREULERabcQPxyzPARTidMARKERidZPxyzPOINTMASSidXPxyzUSEXPFLOATING
其中{}表示三项中必须选择一种参数,[ ]表示可以任选两种中一种参数,[[ ]]表示一种参数组合。因此在ADAMS/Solver模型语言定义中可以定义如下:
MARKER/201,PART=4,QP=100,100,100,REULER=90D,0D,0D
MARKER/202,PART=4,QP=100,100,100,ZP=100,100,105,XP=100,105,100
MARKER/203,PART=4,FLOATING
(2)变量表达式
其中变量表达式分为以下几类:可以根据类别不同选择不同的变量名、变量可以由一系列数值赋值、变量由一系列字符串赋值、变量由表达式赋值。
1.根据类别不同选择不同的关键词
如上面MARKER第三种定义,其中FLOATING为关键词,不需赋值。又如
SFORCE/10, I=8, J=9,TRANSLATION,FUNCTION=100 * DM(8, 9) * * (-1.3) - 200
其中TRANSLATION是可以在TRANSLATION和RORTATION两个关键词选择一个,不需赋值。
2.变量可以由一系列数值赋值
如上面MARKER中QP=100,100,100
3.变量由一系列字符串赋值
如积分算法说明定义:
INTEGRATOR/GSTIFF, PATTERN = T:F:F:F:T:F:F:F:T:T, HMIN = 1.0E-005, KMAX = 3,
INTERPOLATE = ON, CORRECTOR = MODIFIED
其中PATTERN = T:F:F:F:T:F:F:F:T:T 由一系列字符串赋值
4.变量由表达式赋值
如MOTION/1, JOINT=1, FUNCTION=POLY(TIME,0,0,360D)
MOTION/2, JOINT=2, FUNCTION=USER(0, 0, 6.28) 机械系统动力学分析及ADAMS应用
其中FUNCTION=POLY(TIME,0,0,360D) 为函数表达式,FUNCTION=USER(0, 0, 6.28)为用户子程序表达式。
(3)模型语言中的特殊约定
1.关于角度:模型语言中角度缺省单位为弧度,如需度则需在数字后加D。
如:RELUER=90D,0D,90D,在out文件中角度缺省单位为弧度,可以通过OUTPUT语句中设置DSCALE变为度。
2.关于变量:可以任意颠倒变量的先后次序;变量名可以利用缩写;变量可以大写,也可以小写;如果没有提供变量并赋值,ADAMS/Solver认为变量被赋缺省值。不要将实型赋给整型变量。
3.空格与制表符:一个变量中连续出现5个空格或更多的空格,ADAMS/Solver认为空格后无效,但TITLE和函数表达式除外。
4.说明语句:感叹号后为说明,说明语句可以在任何位置。
5.续行:第一例为“,”表示该行为续行,或行尾为“&”表示下行为续行。如下所示:
PART/2, MASS = 2.3,CM = 5, IP = 183.005,&17310.260, 17418.946
6.隔符:同一语句中变量间的分隔符使用“/”,“=”,“,”,“\”,“;”,其中“;”表示可以在一行写两个语句。
7.id号:用于同一系统存在多个相同拓扑结构类型定义,如:
MARKER/201,PART=4,QP=100,100,100,REULER=90D,0D,0D
MARKER/202,PART=4,QP=100,100,100,ZP=100,100,105,XP=100,105,100
其中201、202为id号,以区分同一语句MARKER。
8.语句:一个语句必须在前5例开始,否则ADAMS/Solver认为该行为注释行;语句必须在1-80例之间,可以续行。
6.2.2模型文件的开头与结尾
(1)TITLE
位于adm模型文件的第一行,为一串字符,如:
This is The Truck Simulation Model 2003/10
(2)END
位于adm模型文件的最后一行。
TITLE 与END之间的语句构成ADAMS/Slover的主题,语句顺序可以变化。
6.2.3惯性单元
惯性单元包含三种惯性单元PART,FLEX_BODY,POINT_MASS,这里仅对PART简要介绍,FLEX_BODY,POINT_MASS可以有关ADAMS参考手册。
PART:PART语句确定刚体的质量、惯量信息、质心位置、初始位置、方位、初始速度。
PART语句有两种:
PART/id,GROUND。表明该PART被定义为地面。