理论教育 汽车后备箱盖开启机构的建模与仿真实例

汽车后备箱盖开启机构的建模与仿真实例

时间:2023-10-29 理论教育 版权反馈
【摘要】:本示例将练习以下4个方面内容:●创建汽车后备箱盖开启机构。图3-19 汽车后备箱盖模型图3-20 汽车后备箱盖四杆机构简图表3-4 模型中构件定位点坐标在练习开始前,复制chap03目录下的motion_curve.csv、Point_Import.tcl、point_data.csv、trunk.hm和trunklid.hm文件到工作文件夹中。图3-21 已创建坐标点的分布STEP 02 创建几何体汽车后备箱盖开启机构由4个刚性杆连接而成:ground、input、coupler和follower。它们只在建模过程中帮助用户确认操作正确与否,在运行仿真过程动画时不显示。

汽车后备箱盖开启机构的建模与仿真实例

本示例将练习以下4个方面内容:

●创建汽车后备箱盖开启机构。

●为模型附加H3D格式图形文件。

●使用MotionSolve进行机构运动学分析。

●使用HyperView查看求解结果。

练习中使用的模型如图3-19所示。图3-20显示了将要创建的四杆机构。表3-4列出了模型中构件定位点坐标。

978-7-111-42217-4-Chapter03-36.jpg

图3-19 汽车后备箱盖模型

978-7-111-42217-4-Chapter03-37.jpg

图3-20 汽车后备箱盖四杆机构简图

表3-4 模型中构件定位点坐标

978-7-111-42217-4-Chapter03-38.jpg

在练习开始前,复制chap03目录下的motion_curve.csv、Point_Import.tcl、point_data.csv、trunk.hm和trunklid.hm文件到工作文件夹中。

STEP 01 创建几何点

(1)启动MotionView。

(2)右击Model-Reference工具栏中的Point按钮978-7-111-42217-4-Chapter03-39.jpg

(3)在弹出的Add Point or PointPair对话框中的Label文本框中输入Point A,在Variable文本框中输入p_A,指定点类型为Single。

Label用来帮助用户辨别不同的对象,Variable将提供给MoitionSolve以识别不同的对象。当然,在AddPoint or PointPair对话框中可以使用默认的名称。PointPair用来创建以总体坐标系中X-Z平面为对称面的两个对称点。

(4)单击OK按钮,弹出Point面板。

(5)输入Point A的坐标值X、Y和Z。

(6)重复步骤(3)~(5),创建点B~I。注意,在Add Point or PointPair对话框中设置每个点的Label和Variable。单击Apply按钮可以一次创建多个几何点。Data Summary对话框将显示所有已创建的几何点,同时在该对话框中可以修改几何点的坐标值。

(7)上述点也可通过Point_Import.tcl脚本创建。创建步骤如下:

1)启动MotionView。

2)在View菜单下选择Command Window命令。

3)在命令窗口区域右击选择File→Load File命令。

4)选择并打开工作路径下的Point_Import.tcl。

5)在弹出的Source file对话框中选择point_data.csv。

从视窗控制面板将视图转换为Lft视图,如图3-21所示。

978-7-111-42217-4-Chapter03-40.jpg

图3-21 已创建坐标点的分布

STEP 02 创建几何体

汽车后备箱盖开启机构由4个刚性杆连接而成:ground、input、coupler和follower。在默认情况下,MotionView将自动创建ground,本步将介绍如何创建input、coupler和follower。

(1)右击Model-Reference工具栏中的Body按钮978-7-111-42217-4-Chapter03-41.jpg,弹出Add Body or BodyPair对话框。

(2)在Label文本框中输入Input link,使用默认的Variable名称。

(3)单击OK按钮,进入Body面板。

(4)单击Properties标签,输入几何体属性,如图3-22所示。

978-7-111-42217-4-Chapter03-42.jpg

图3-22 Body面板(步骤4)

(5)激活CM Coordinates标签,选中Use center of mass coordinate system选项。在Origin按钮下单击Point按钮,此时Point按钮将被浅蓝色方框包围,表明Point处于激活状态。

(6)再次单击Point按钮,在弹出的Select a Point对话框中选择Point G。或者在图形区拖动鼠标左键直至出现G,释放鼠标,即可选择Point G。使用默认方向orient two axes。

上面提及的两种方法可以应用到其他实体选择操作中,如几何体、铰等。在选择大地(Ground Body)或全局坐标原点(Global Origin)时,可以单击图形区的全局坐标系符号。

(7)重复步骤(1)~(6),创建刚性杆Follower和Coupler。分别指定质量及转动惯量

978-7-111-42217-4-Chapter03-43.jpg

(8)分别指定B和D为刚性杆Follower和Coupler的质心

STEP 03 添加显示图形

MotionView中的图形分为3类:隐式图形(Implicit)、基本图形(Primitive)和外部图形(external)。

●Implicit指创建Point、Body、Joint等对象时在MotionView中生成的图标。它们只在建模过程中帮助用户确认操作正确与否,在运行仿真过程动画时不显示。

●Primitive指圆柱、立方体、球体等基本图形,在运行仿真过程动画时显示。

●External指外部导入图形。MotionView的Import CAD or FE菜单能够将CAD文件及有限元文件转换成MotionView可以识别的.h3d格式文件。同时,用户可将.g文件、ADAMS的.shl文件以及wavefront的.obj文件直接输入到MotionView中。

(1)打开所有的隐式图形(Implicit)。

1)在Model菜单中选择ImplicitGraphics命令,弹出Implicit Graphics Settings对话框,如图3-23所示。

2)激活所有Visible复选框

978-7-111-42217-4-Chapter03-44.jpg

图3-23 Implicit Graphics Settings对话框

3)单击Close按钮,关闭Implicit Graphics Settings对话框。

隐式图形的状态(图形显示或隐藏)不会保存在当前的模型文件中。MotionView在以下几种情况中使用默认设置:

●在其他窗口中创建一个新的模型。

●启动一个新的会话。

●载入一个已有的.mdl或.mvw模型到新的会话中。

(2)为了更好地观察四杆机构,需要在模型中添加基本图形。

(3)右击Model-Reference工具栏中的Graphic按钮978-7-111-42217-4-Chapter03-45.jpg,弹出Add Graphic orGraphicPair对话框。

(4)指定图形名称(Label)和变量名(Variable),可以使用默认名称。

(5)在Type下拉菜单中选择Cylinder并单击OK按钮,进入Graphic面板。

(6)在Connectivity标签中双击Body按钮,在SelectaBody列表中选择Follower,并单击OK按钮。此时,新建的图形与Follower相关联。

(7)单击Origin下的Point按钮,指定圆柱的原点。

(8)选择Point A。

(9)单击Direction下的Point按钮。

(10)选择Point C。

(11)在Propertie标签中的Radius 1文本框中输入2。

(12)重复步骤(2)~(11),根据表3-5,为余下的Bodies创建图形。

表3-5 图形参数

978-7-111-42217-4-Chapter03-46.jpg

STEP 04 添加外部图形

MotionView可通过HyperMesh将CATIA、IGES、STL、VDAFS、Pro/E及UG等格式的模型转换成MotionView识别的文件以生成更加逼真的图形。本步使用这种转换功能将一个HyperMesh格式的汽车后备箱盖文件转换成H3D格式文件,同时使用locator points功能将转换成功的H3D模型定位到MotionView模型中。

locator points:指H3D图形文件坐标系上的3个几何点。H3D图形文件与MotionView模型文件匹配时,这3个几何点与MotionView模型的3个点对应,实现自动定位、自动定向和自动放缩。对于HyperMesh文件,可以使用节点编号代替几何点坐标。

(1)在Tools菜单中选择Import CAD or FE,弹出Import CAD or FE对话框。

(2)激活Import CAD or Finite Element Model Only选项。

(3)在Input File栏中选择HyperMesh。

(4)单击Input File右侧的“文件浏览”按钮978-7-111-42217-4-Chapter03-47.jpg,选择trunklid.hm作为输入文件。

(5)单击OutputFile右侧的“文件浏览”按钮978-7-111-42217-4-Chapter03-48.jpg,指定输出的H3D格式文件名为trunklid.h3d。

(6)单击Locator Points前的“+”,展开定位点选项。

(7)选中Node Ids单选按钮,分别输入1、2和3,代表HyperMesh文件中的Node1、Node2和Node3,如图3-24所示。

(8)单击OK按钮,开始模型转换。

(9)Import CAD or FE程序将在后台运行Hyper Mesh,并将HyperMesh格式文件转换成H3D文件。

(10)单击OK按钮,转换结束后,将提示转换成功信息“Import was a Success!”。

978-7-111-42217-4-Chapter03-49.jpg

图3-24 定位点设置

(11)按照步骤(1)~(10)将trunk.hm转换为trunk.h3d。

STEP 05 输入H3D文件

(1)右击Model-Reference工具栏中的Point按钮978-7-111-42217-4-Chapter03-50.jpg ,根据表3-6创建3个几何点。

表3-6 几何点参数

978-7-111-42217-4-Chapter03-51.jpg

(2)在模型浏览树中单击Graphics文件夹下的g_trunklid。

(3)在Connectivity标签中双击Body按钮,在Select a Body下拉列表中选择Follower并单击OK按钮。

(4)进入Location标签,在该标签中设定H3D图形文件的位置、方向与比例。

接下来,将H3D模型的定位点匹配到MotionView模型相应的几何点上,进行trunklid.h3d模型位置调整。

(5)将调整方法切换成Auto Position and Orient。

(6)根据图3-25匹配定位点。

978-7-111-42217-4-Chapter03-52.jpg

图3-25 定位点匹配

(7)单击fit按钮978-7-111-42217-4-Chapter03-53.jpg ,查看后备箱盖是否正确地装配到Motion View中。

(8)类似地,在模型浏览树中选择g_trunk,设置Body为Ground Body,本步不需调整定位点。

注:在HyperView动画处理窗口中,使用Add Object工具也可以添加H3D图形。

STEP 06 创建旋转副

汽车后备箱盖开启机构由4个旋转副连接而成,旋转副分别位于点A、C、E和F上,方向平行于全局坐标系Y轴。

(1)右击Model-Constraint工具栏中的Joint按钮978-7-111-42217-4-Chapter03-54.jpg,弹出Add Joint or JointPair对话框。(www.daowen.com)

(2)在Label文本框中输入Ground-Follower,使用默认的变量名。

(3)在Type中旋转Revolute Joint。

(4)单击OK按钮,进入Joint面板。

(5)在Connectivity标签中单击Body1按钮,此时Body1按钮被浅蓝色方框包围。

(6)在图形区按住鼠标左键滑过总体坐标系图标直至显示Ground Body,释放鼠标左键。此时Bodies面板中的Ground Body已被选作Body1,而浅蓝色方框移动到Body2按钮,Body2处于激活状态。

(7)单击Body2按钮,弹出Select a Body对话框。

(8)在模型树左侧区域选择Bodies文件夹。

(9)在右侧区域选择Follower。

(10)单击OK按钮,返回Connectivity标签。

(11)在Origin下单击Point按钮两次,弹出Select a Point对话框。

(12)选择Point A作为旋转副的原点,单击OK按钮。

(13)在Alignment Axis下指定旋转副的方向。单击Point左侧的下三角符号并选择Vector。

(14)选择Global Y作为旋转副方向。

(15)重复步骤(1)~(14),根据表3-7创建余下的旋转副。

表3-7 四杆机构中相关约束副参数

978-7-111-42217-4-Chapter03-55.jpg

STEP 07 指定机构运动

机构的驱动约束可由Linear、Expression或Curve三种方式定义。本例中将使用一条曲线作为机构驱动输入。

(1)右击Model-Reference工具栏中的Curves按钮978-7-111-42217-4-Chapter03-56.jpg,弹出Add Curves对话框。

(2)为新创建的曲线指定名称(Label)和变量名(Variable),或直接使用默认值。

(3)单击OK按钮,进入Curves面板。

(4)选择2D Cartesian和x,然后单击“文件浏览”按钮978-7-111-42217-4-Chapter03-57.jpg,弹出Select a file对话框。

(5)选择工作文件夹下的motion_curve.csv。

(6)保留默认值,即Type:Unknown,Request:Block 1,Component:Column 1。

(7)选中y单选按钮,注意到此时motion_curve.csv文件已被选择。

(8)指定y轴数据为Type:Unknown,Request:Block 1,Component:Column 2。

(9)单击Show Curve按钮可以预览曲线,如图3-26所示。

978-7-111-42217-4-Chapter03-58.jpg

图3-26 曲线预览

(10)右击Model-Constraint工具栏中的Motions按钮978-7-111-42217-4-Chapter03-59.jpg,弹出Add Motion or MotionPair对话框。

(11)为新的驱动指定名称(Label)和变量名(Variable)。

(12)单击OK按钮,进入Motion面板。

注:这种使用曲线来指定机构运动关系的方法也可用来指定其他约束(如Force、Spring、Damper、Bushing等)的属性。

(13)在Connectivity标签中单击Joint按钮两次,弹出Select a Joint对话框。

(14)从模型树中选择名为Input-Ground的旋转副。

(15)在Properties标签中单击Linear右侧的下三角符号,选择Curve。

(16)单击Curve按钮两次,弹出Select a Curve对话框。

(17)从模型树中选择已创建的曲线并单击OK按钮。

STEP 08 创建输出请求

创建结果输出有以下3种方式:

●使用Body、Point和Marker默认的结果输出。

●直接查询Force、Bushing和Springle-damper对象结果输出。

●创建基于上述对象输出项目的数学表达式进行结果输出。

在本步骤中将创建两物体间的相对位移输出,使用数学表达式创建Input Link质心G相对全局坐标系的位移输出。

(1)右击Model-General工具栏中的Outputs按钮978-7-111-42217-4-Chapter03-60.jpg,弹出Add Output对话框。

(2)为新创建的输出指定名称(Label)和变量名(Variable),也可使用默认值。

(3)单击OK按钮,进入Output面板。

(4)创建两物体上两点之间的位移输出,选择Displacement。

1)Body 1和Body 2分别选择Input Link和Ground Body。

2)Pt on Body1和Pt on Body2分别选择Point I和Global Origin。

3)记录两点间的位移(一点相对另一点的位移)。

(5)创建另一个输出:Input Link质心G在全局坐标系X方向的位移输出。

1)右击工具栏中的Outputs按钮978-7-111-42217-4-Chapter03-61.jpg

2)使用默认的名称和变量名。

3)单击OK按钮。

4)在Properties标签中选择Expressions,如图3-27所示。

978-7-111-42217-4-Chapter03-62.jpg

图3-27 Output面板

5)单击F2文本框,此时激活fx按钮,单击fx按钮,弹出Expression Building()对话框,如图3-28所示。

6)在Motion标签中单击DX按钮。

7)将光标置于DX后的括号内。

8)在Properties标签中,打开模型树Bodies/Ground Body/cm。

9)选择idstring,如图3-29所示。

978-7-111-42217-4-Chapter03-63.jpg

图3-28 Expression Building对话框

978-7-111-42217-4-Chapter03-64.jpg

图3-29 模型树

10)单击Add按钮。

11)添加一个逗号(,)以分割下一个表达式。

12)在Properties标签中,打开模型树Bodies/Input link/Marker CM。

13)选择idstring。

14)单击Add按钮。

(6)编辑窗口中的表达式与下列表达式相一致。

'DX({B_Ground.cm.idstring},{b_0.cm.idstring})'

(7)单击OK按钮。

注:上述表达式中变量名b_0代表input link。如果在创建input link时指定了不同的变量名,那么要使用这个指定的变量名来代替上式中的b_0。所有表达式均要求写在符号``之间,该符号前后都不能有任何字母、空格以及数字等字符,否则MotionView会显示图3-30所示的错误信息。该符号与键盘中的~键为同一按键,而不是引号键。

978-7-111-42217-4-Chapter03-65.jpg

图3-30 报错信息

(8)如需检查模型错误,则可进入Tools菜单选择Check Model命令。

模型中所有的错误将在Message Log中列出。如果检查模型自由度,则可选择Tools→Options命令,进入Check Model选项,选中Degrees of Freedom复选框。

STEP 09 使用MotionSolve求解模型

MotionSolve可以进行多体系统的静力学、准静力学、运动学动力学分析。它集成于MotionView中,MotionSolve的输入文件是由MotionView创建的XML格式文件。本步将使用MotionSolve进行汽车后备箱盖开启机构的运动学分析。

(1)单击工具栏中的Run按钮978-7-111-42217-4-Chapter03-66.jpg

(2)在Run面板中,单击Check按钮检查模型是否存在错误。

(3)在Main标签中,设置Sim Type为Transient。

(4)在Save as文本框中指定求解器输出文件为trunk_fourbar.xml。

(5)选中Export MDL snapshot复选框。

(6)选中Simulation Parameters标签,指定仿真终止时间End Time为5,Print interval为0.01。在默认情况下MotionView使用second作为时间单位。用户可以通过Forms面板978-7-111-42217-4-Chapter03-67.jpg修改单位制。

注:只有运动学仿真结果取决于输出间隔(print interval),动力学仿真结果不依赖于输出间隔,因为积分器不会改变仿真步长去匹配输出步,相反积分器会提供插值结果进行输出。

(7)在Main标签中单击Run按钮求解模型。

STEP 10 在同一页面中查看仿真动画和结果曲线

(1)求解结束后,Animate和Plot按钮被激活,如图3-31所示。

978-7-111-42217-4-Chapter03-68.jpg

图3-31 Run面板

(2)单击Animate按钮,将载入第二个窗口(HyperView),并自动加载动画结果。

(3)单击工具栏中的Start/Pause Animation按钮978-7-111-42217-4-Chapter03-69.jpg,播放动画。

(4)再次单击Start/Pause Animation按钮978-7-111-42217-4-Chapter03-70.jpg ,停止播放。

(5)单击Plot按钮,将在同一页面中载入第三个窗口(HyperGraph),并自动加载数据结果。

(6)设置X轴数据类型为Time。

(7)根据表3-8设置Y轴数据。

(8)单击Apply按钮,Point I的位移曲线显示在窗口3中,如图3-32所示。

表3-8 输出数据相关参数

978-7-111-42217-4-Chapter03-71.jpg

978-7-111-42217-4-Chapter03-72.jpg

图3-32 仿真结果

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈