




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二部分 如何使用ADAMS/View的宏(Macro)简介您可以使用宏(Macro)自动完成一些重复性的过程,您可以记录、编辑、存储或执行宏。本节将解释如何生成并管理宏,包括: ADAMS/View宏介绍 在宏中如何使用参数 如何生成宏 如何删除宏 如何存储宏 如何调试宏 如何执行宏 宏的几个练习 编辑宏的要点 ADAMS/View宏介绍宏,简单说来,是您生成的一个命令,它可以完成ADAMS/View一系列的命令。您按照ADAMS/View的命令格式来编写宏,ADAMS/View像处理其它命令一样处理宏,您可在命令窗口中执行宏,也可以在宏中使用其它的宏或在您自己的用户化菜单、对话窗和按钮下调用宏。在宏中您可以使用参数。这有助于您在每次调用宏时加上数据,宏在执行时自动进行替换。使用宏您可以:自动完成重复性的过程;开发并扩展ADAMS/View的基本功能;自动生成整个模型;迅速的建立一个机构的多种变形。为方便您使用宏,ADAMS/View提供一套工具,可以帮助您记录、执行和测试宏和命令文件。 在宏中如何使用参数宏在执行时将您提供的信息进行参数替换。您可在宏执行的命令文字中加入参数。参数用$加上参数的名字定义(具体格式将在后面详细介绍)。一个宏中您包含很多参数,也可以一个参数多次使用。当您生成宏时,ADAMS/View扫描全部命令行,标识出所有的参数。执行宏时,您需要提供所有的参数的值,否则将用缺省值替换。下面先看一个宏的例子。在这个例子中,生成了一个名为icon_size的宏,宏中包含一个参数size,其相应命令如下:constraint attributes constraint_name=.* size_of_icons = $sizeforce attributes force_name=.* size_of_icons = $size这样当您输入命令:icon_size size=1.5ADAMS/View则执行如下命令: constraint attributes constraint_name=.* size_of_icons = 1.5force attributes force_name=.* size_of_icons = 1.5参数值的扩展在某种情况下,ADAMS/View执行命令行进行参数替换时首先进行其格式的修改或扩展。特别的是,ADAMS/View执行宏时不进行单位的转换。它将您输入的值直接传给命令行,通常在命令行中进行单位的转换。ADAMS/View在执行宏时,将数据库对象的名字扩展为全名,使用“。”分割开来,使用“。”也可以使您直接访问表达式中数据对象的值。例如:下面为包含参数name的宏lpart.。 List_info part part_name=$name当您输入如下命令:lpart name=left_wheelADAMS/View用part 的全名.model_1.left_wheel而不是left_wheel替换参数$name,并执行: List_info part part_name=.model_1.left_wheel参数的一般格式参数的一般格式为:$name:q1:q2:q3,其中:name:参数的名称;q1、q2、q3:该参数的一个或几个特性;单引号和特性是可选的,因此参数的格式可能有如下几种形式:$name$name$name:q1:q2:q3$name:q1:q2:q3。参数的命名规则参数的名字必须以字母开头,其后可以是字母、数字或下划线(_),参数的名称与大小写无关,是大小写不敏感的。在参数的定义中,单引号的作用是将参数与ADAMS/View的命令行明确分开。正常情况下,您用空格、逗号、冒号或其他的字符表示参数结束,但有时您可能想加字符串在参数的后面,如您想加”_1”在参数$part的后面,那么您应写作$part_1,而不是$part_1,因为$part_1为定义另外新的参数了。参数的特性及格式在宏中参数第一次出现时定义其特性,特性是可选的并且在参数首次出现时使用。定义参数有如下四种特性可以定义:Type(类型)Range(范围)Count(数量)Defaults(缺省值)您可以任意定义参数的特性,进行任意组合,也可以按任何顺序,您不必定义所有的特性,如果您重复定义的话,ADAMS/View会按最后一次定义的为准。定义特性没有大小写区分。下表为定义特性的几个例子。表6 定义特性的示例特性(qualifiers)特性的含义$parts:t=part:c=2两个已存在可动部件的名字$NSpokes:T=INTEGER:GE=3:LE=8:D=3界于3和8之间缺省值为3的整数$infile:t=file(*.dat)(输入)文件的名字,搜索时只列出以.dat为后缀的相关文件下面分别介绍四种特性:TypeType指定参数的类型,用户在调用宏时必须按相应的类型输入其数值。定义Type的格式如下:T = typeT = type (additional data)其中:type可以是基本类型(Basic type),也可以是数据库对象(database object type)或数据库对象分类(database object class type);Additional data是可选的,对某些类型而言,则是必须的,如List。基本类型(Basic type)包括:real、integer、location、orientation、string、function、list(str1,str2,str3)、file(path wildcard)其中:list类型必须包括允许值的列表;而file类型后面可以加通配符,也可以加路径,如果您不指定的话,文件搜索则列出所有文件供选择。数据库对象(database object type)包括:指定参数为某个数据库对象类型意味着用户必须输入已存在的对象的名字,但您可以在对象类型前加上前缀“new_“,表示用户必须输入该类型一个新的名字。与file参数类型相似,在数据库对象类型后面也可以加上缺省的通配符,如marker(left_*)。数据库导航器会将此通配符做为该参数的搜索模式,若不指定则列出所有适合的对象。您可以使用ADAMS/View函数发生器观察一下ADAMS/View中所支持的数据库对象的种类。其过程如下: 1、 在Tools菜单下选择Function Builder;2、 从可选的菜单中选择Misc. Functions;3、 从可选的菜单列表中选择SELECT_TYPE;4、 选择Assist;5、 在Assist dialog box中输入all并选择OK;6、 选择Evaluate,即出现所有数据库对象的列表了。数据库对象分类(database object class type)包括:ADAMS_Output_Files BodyConstraint Data_ElementEquation Expression_primitiveFeature ForceFrame_Display Function_ContainerGeometry l Graphic_User_InterfaceHigher_Pair_Contact MeasureMeasure_Vector ModelingOld_Graphic_User_Interface Optimization_FunctionPlotting Point_to_Point_ForcePosition Reference_FrameRuntime_Measure Solid_GeometryTriad Variable_ClassWire_GeometryRange特性Range指定参数允许的最大或最小值。Range只适合于数值型参数,其格式如表7 所示。表7 参数范围特性的格式格式格式的含义GT=r大于rGE=r大于等于rLT=r小于rLE=r小于等于rCountCount特性指定参数所需数据的个数,其格式如表8 所示。表8 参数个数特性的格式格式格式的含义C=0一个或多个C=nN个C=n,0N个或多个C=n,mN到M之间的数Default参数的缺省值是可选的。如果参数没有指定缺省值,用户在执行宏时则必须输入一个值。定义参数的缺省值有三种方式:Constant:参数可选,调用宏时,用户如不提供数据,则用其缺省值;Updated:参数可选,调用宏时,用户如不提供数据,则用最近一次使用的值;如没有,则用其缺省值;Database object:对于数据库对象而言,其缺省值是自动匹配的。如其类型是已存在数据库对象,则其缺省值为当前缺省对象,如是新的数据库对象,则会自动生成那种类型的数据库对象。其格式如表9 所示。表9 缺省特性的格式格式含义D=value缺省值恒定U=value缺省值更新A新的或已存在数据库对象参数的缺省设置在命令行中参数的第一次出现即定义该参数,即使它出现在注释行中;如果第一次出现时,参数后有特性的设置,即直接确定该参数的特性;如没有,参数的特性则由其是否在合法的命令行中”=”号的后面决定,若是,则直接继承等号后面参数所需要的参数的特性,包括类型、范围、个数及缺省值,否则的话,ADAMS/View则假定其为字符串型参数。注:虽然ADAMS/View可以自动确定参数的特性,但推荐您在建立宏时,先在宏的起始部分的注释行中明确定义每个参数。下面是定义宏的一个例子,注意其中参数的特性。! Parameter $text is a string.! $numbers:t=integer:c=0:gt=0list_info part part_name=$part_1, $part_2list_info part part_name=$part_3:t=part, $part_4:t=part 如何生成宏有四种方式生成宏:1、 交互式记录方式;2、 在宏编辑器直接输入宏要执行的命令。使用宏编辑器也可以修改已存在的宏;3、 读入一个包含宏要执行的命令的ADAMS/View命令文件;4、 使用命令导航器或命令窗口直接输入要生成宏的命令。对于简单的宏而言,交互式记录方式最好;而对于复杂的宏而言,读入一个包含宏要执行的命令的ADAMS/View命令文件的方式最好,因为这样的话还可以指定与该宏相关的帮助文件或帮助性的字符串;对于已有的宏,则使用宏编辑器较好,若使用宏编辑器生成宏,则必须输入要执行宏所用的命令。您如果通过命令导航器执行宏时,ADAMS/View自动生成一个对话窗,方便您输入参数等。 交互式记录宏1、 在Tools菜单下选择Macro然后选择Record/Replay,然后选择Record Start;2、 执行您想加在该宏中的操作;3、 要停止记录宏,从Tools菜单下选择Macro,然后选择Record/Replay,在选择Record Stop;4、 要回放您刚才所记录的宏,在Tools菜单下选择Macro,然后选择Record/Replay,再选择Execute Recorded Macro;5、 要存储所记录的宏,在Tools菜单下选择Macro然后选择Record/Replay,再选择Write Recorded Macro即可。ADAMS/View将该宏存储为macro.cmd,如果该文件存在,ADAMS/View则询问是否覆盖等。 使用宏编辑器编辑或生成宏您可使用宏编辑器编辑您记录的或通过文件读进来的宏,您也可以使用宏编辑器生成一个宏。1、 在Tools菜单下,选择Macro,然后选择Edit,然后选择New或Modify;2、 如果您选择Modify,则数据库导航器出现,选择一个您要编辑修改的宏,则宏编辑器出现,如下图所示,如果您选择的是修改宏,那麽在宏的名字项会出现该宏的名字。3、 如果您要生成宏,则在宏编辑器中宏的名称项输入您要生成的宏的名字;4、 在命令项输入您要执行该宏所使用的命令,如要用该宏的名字,则选择Use Macro Name注:您输入的命令在ADAMS/View中必须是唯一的,您不能重新定义已有的命令,例如:您可以输入MARKER GENERATE,但不能输入MARKER CREATE,因为marker create已经存在,故是非法的。5、 指定该宏是否可以包含在一个Undo命令中,注意如果使用的话,意味着很方便Undo,但同时要消耗部分内存,还要减慢宏执行的速度;6、 在命令行窗口输入宏要执行的命令,然后选择OK即可。从包含宏要执行的命令的文件中生成宏您可以读入一个包含宏要执行的命令的ADAMS/View命令文件生成宏,同时加上与宏有关的帮助文件或字符串。您要读的CMD文件可以包含标准的ADAMS/View的命令行,也可以包含镶嵌在命令行中的参数和在文件的起始部分的特殊的注释行,文件中有特殊含义的注释行的涵义为这些注释行可以通过Keyword的方式为Read命令所识别,这些Keyword在宏读入对话窗中可以发现,如执行宏所用的命令等等。注意:这些注释行必须放在命令文件的起始部分,并且必须包含下面的保留参数中的一个,包括:USER_ENTERED_COMMAND,WRAP_IN_UNDO,HELP_STRING,HELP_FILE等再接上相应的合适的值。这些Keyword必须紧接着!的后面且为大写的;输入的值不用等号或引号,ADAMS/View会按缺省方式自动处理,下面是一个使用Keyword的示例。!USER_ENTERED_COMMAND lmark!HELP_STRING This command lists information on all markers in your database.list_info marker marker_name=.*如果您在宏读入的对话窗再一次指定这些特定参数,ADAMS/View以对话窗为准。要读入一个命令文件生成宏:1、 在Tools菜单下选择Macro,然后选择Read,宏读入菜单显示;2、 在Macro Name项内输入ADAMS/View存储在当前数据库中宏的名字;3、 在File Name项输入您要读入的文件的名字;4、 在User Entered Command项内,输入执行该宏的命令;5、 指定是否可以用一个Undo命令undo全部宏的命令;6、 指定帮助文件的名字或帮助字符串的内容;7、 确定是否生成相应的对话窗;8、 选择OK。如何删除宏?要删除宏,可以:1、 首先清除所有的选择,在ADAMS/View的视窗区双击;2、 在Edit菜单下,选择Delete;数据库导航器出现。3、 选择您要删除的宏;4、 选择OK。如何调试宏ADAMS/View提供一个工具,帮助您对宏进行调试,您可以用来:1、 查看宏及其输出;2、 单步执行每一个命令;3、 打印宏启动宏调试程序:在Tools菜单下,选择Macro,然后再选择Debug即可。如何执行宏您生成宏后,可以执行此宏了。您可在:1、 在命令窗口中输入;2、 通过命令导航器执行宏,直接在弹出的对话窗中输入需要的参数;3、 通过用户化的对话窗执行宏。ADAMS/View对宏像其他的命令一样。如何存储宏当您存储数据文件时,ADAMS/View将您所编写的宏都存储在该文件中。同时您也可以将宏存储成CMD文件,并与他人共享。要存储宏,您可以:1、 在Tools菜单下,选择Macro,然后选择Write;对话窗Macro Write出现。2、 输入宏的名字;3、 输入生成文件的名字4、 选择OK即可。宏的几个练习下面是使用ADAMS/View宏的几个简单的离例子例1:下面的例子为自动建立一个MARKER,其位置在已经存在的两个MARKER连线的中间位置上,其方向与绝对坐标系的方向一致。! $FIRST_MARKER: T=marker! $SECOND_MARKER: T=marker! $NEW_MARKER_NAME: T=new_marker!.marker create marker_name=$NEW_MARKER_NAME &location = ( ($FIRST_MARKER.loc_x)+($SECOND_MARKER.loc_x) )/2 ), &( ($FIRST_MARKER.loc_y)+($SECOND_MARKER.loc_y) )/2 ), &( ($FIRST_MARKER.loc_z)+($SECOND_MARKER.loc_z) )/2 ) &orientation = 0,0,0 &relative_to = ground例2:下面的例子为自动建立一个MARKER,其位置在已经存在的两个MARKER连线的中间位置上,其Z轴方向与MARKER1到MARKER2的连线方向一致。!$FIRST_MARKER: T=marker!$SECOND_MARKER: T=marker! $NEW_MARKER_NAME: T=new_marker!defaults orient_axis_and_plane axis_and_plane_setting=z_axis_zx_plane!marker create marker_name=$NEW_MARKER_NAME &location = ($FIRST_MARKER.loc_x)+($SECOND_MARKER.loc_x)/2), &($FIRST_MARKER.loc_y)+($SECOND_MARKER.loc_y)/2), &($FIRST_MARKER.loc_z)+($SECOND_MARKER.loc_z)/2) &along_axis = $FIRST_MARKER, $SECOND_MARKER &relative_to = ground例3:下面宏的例子为从您指定的已存在的曲线上生成一拉伸体,执行宏时,您须给定一个实数值作为拉伸体的长度,同时还要指定一个已存在的MARKER,其Z轴方向为将要拉伸的方向。该宏自动将该拉伸体定义为曲线所属的PART上,因此使用函数UNIQUE_NAME(“EXT”)使其名字唯一,如EXT_1、EXT_2等。! $curve_to_extrude: T=geometry! $extrusion_length: T=real! $along_Z_axis_of_marker: T=markerdefaults model part_name=($curve_to_extrude.parent)!geometry create shape extrusion &extrusion_name=(UNIQUE_NAME(EXT) &profile_curve=$curve_to_extrude &length_along_z_axis=$extrusion_length &reference_marker=$along_Z_axis_of_marker &relative_to=ground例4:与例3的区别在于:该宏在执行时所生成的拉伸体拉伸的方向与曲线的参考MARKER的Z轴方向一致。! $curve_to_extrude: T=geometry! $extrusion_length: T=real!defaults model part_name=($curve_to_extrude.parent)!geometry create shape extrusion &extrusion_name=(UNIQUE_NAME(EXT) &profile_curve=$curve_to_extrude &length_along_z_axis=$extrusion_length &reference_marker=($curve_to_extrude.ref_marker_names) &relative_to=ground编辑宏的要点宏是ADAMS软件中非常有用的一个工具,要定义宏可注意以下几点:1、 命令执行时的响应及屏幕刷新:当ADAMS/View执行宏,每次都更新模型窗口。如果您是在命令窗口中执行宏,缺省的方式为:将执行宏的信息显示在命令信息窗口内,这一点对于调试宏非常有用。但是这将导致命令执行变慢,因此当您编辑的宏正确工作后,您可以在宏的前面加上下面的命令将其关掉。defaults command_file echo=off update=off然后再其后面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年金融行业数据分析师面试模拟题及策略分析
- 2025年心理咨询师资格认证模拟题及参考答案
- 2025年电子商务师高级考试试题及解析与答案
- 2025年交通安全问答试题及答案
- 2025年轨道交通调度员(技师)职业技能鉴定考试题库及答案(浓缩50题)
- 2025注册验船师资格考试(B级船舶检验法律法规)模拟试题及答案一
- 2025年能源资源管理与可持续发展考题及答案
- 桃花源记课件深圳
- 陕西省四校联考2026届化学高一第一学期期中调研试题含解析
- 桃源消防知识培训讲座课件
- 生物化学英文版课件:Chapter 7 Carbohydrates Glycobiology
- 走进奇妙的几何世界
- 飞虎队精神将永远留在这里
- 湘教版九年级美术教学计划(三篇)
- 紧急宫颈环扎术的手术指征及术后管理-课件
- “三重一大”决策 标准化流程图 20131017
- Cpk 计算标准模板
- 信息科技课程标准新课标学习心得分享
- 环保与物业公司合作协议
- FZ/T 01057.2-2007纺织纤维鉴别试验方法 第2部分:燃烧法
- 面条制品-课件
评论
0/150
提交评论