MASTA是一种主要用于传动系统分析的仿真软件。modeFRONTIER可以通过多种方法对MASTA软件进行集成。之前我们曾经通过python语言脚本的方法进行过集成,但该方法需要对python语言有一定了解,并需要安装相应的库等,因此对客户的要求相对较高。本文提供一种基于MASTA’s RUNNA 应用程序的集成方法,相对较为简单。
MASTA’s RUNNA 应用程序提供了针对一个设计在给定分析类型下的工况、载荷谱或设计状态为变化的属性分析编写脚本。
例如,在特定载荷工况下的系统变形分析,指定行星齿轮组内每个行星齿轮的角度误差可以在用户定义的范围内变化。
本文演示了如何使用RUNNA设置和运行分析以及如何将RUNNA与modeFRONTIER进行集成:
• 创建和编辑RUNNA分析脚本
• 选择要分析的MASTA设计
• 选择分析类型
• 选择工况、设计状态、载荷谱
• 选择输入变量并指定变化范围
• 选择输出变量
• 运行分析
• 查看分析结果
• 将RUNNA与ModeFrontier集成
使用RUNNA设置和运行分析包含几个步骤,下面将对其进行说明。
可以在编辑模式下打开RUNNA,方法是从“开始”菜单中选择RUNNA应用程序(可以在SMT文件夹中,也可以在MASTA安装的Extras子文件夹中),也可以从命令行使用/edit调用RUNNA。
RUNNA编辑器菜单栏中的“File”按钮提供创建、编辑和保存RUNNA分析脚本的所有控件。
从命令提示符打开RUNNA编辑器时,可以将RUNNA分析脚本的位置作为附加参数提供,以使用打开的选定分析脚本进行编辑来启动编辑器。
RUNNA 分析需要一个 MASTA 设计。
选择一个 MASTA设计
1. 点击 ‘Select’ 按钮,选择一个MASTA设计。
2. 使用打开的文件对话框,选择将由RUNNA分析的MASTA设计文件,然后单击“打开”按钮。
3. 导入用于RUNNA分析的MASTA模型。
RUNNA可以选择5种分析类型。改变分析类型,要在Analysis Type 下拉列表中选择相应的分析类型。
可以对所选的MASTA设计在当前工况、设计状态或载荷谱下进行分析。
选择载荷工况运行分析:点击 ‘Select Analysis Case’按钮,在弹出的Select Load Case选择框选择工况或载荷谱,在Load Cases选项卡选择工况,在Duty Cycles选项卡选择载荷谱。
勾选上Save Files From Run in The Same Folder As The RUNNA Files选项,以使所有生成的结果文件位于和RUNNA脚本文件同一目录下,在modeFRONTIER运行时为动态生成的工作目录。如下图
Post-Analysis Action允许用户选择是否从分析中保存MASTA设计。可以在每次分析之后保存设计,也可以仅在分析失败后进行进一步调查失败时保存设计。在Post-Analysis Action 下拉框选择所需的分析后操作即可。
Post-Analysis Action选项
• None —不做处理
• Save MASTA Design if analysis fails —如果分析失败保存模型
• Save MASTA Design after each analysis —每次分析后保存模型
定义在RUNNA分析中的变量:
1. 在模型树中选择一个要指定变量的实体,如Planet Carrier
2. 选择Input Variables选项卡
显示了所选实体的可用类别:
3. 从列表中选择类别查看可用的项目,然后选择一个项目。
或者,可以在搜索栏中输入属性名,然后使用按钮查找包含指定搜索词的属性。
Property Type下拉列表有两个选项:
• Single Entity 单个实体的属性
• All Entities of Same Type 所有实体的属性
4. 选择项目然后点击>按钮或直接双击项目,将该项目添加到 Selected Properties 属性区
Parameter Name显示了变量的完整路径。
最大值和最小值实际由modeFRONTIER设置,这里可以忽略,保持默认值0即可。
5. 如果选择了错误的属性,Selected Properties区域右侧点击×按钮可以删除。
在RUNNA分析之后选择要查看的输出变量:
1. 在模型树中选择一个要定义属性的实体,如太阳轮
2. 在变量选择区域选择Output Variables选项卡
选择实体的可用属性都展示如下:
3. 从列表中选择类别以查看可用的项目,然后选择一个项目。或者,可以在搜索栏中输入属性,然后使用按钮查找包含指定搜索词的下一个属性。
4. 选择项目然后点击>按钮或直接双击项目,将该项目添加到 Specific entity properties 属性区
所选属性列在“Specific entity properties”区域的右侧:
将鼠标光标放在属性名称上将显示一个工具提示,显示该属性的完整路径。
5. 如果选择了错误的属性,Selected Properties区域右侧点击×按钮可以删除。
注意, 如果选择的输出属性的路径前有+符号,如 Mesh Efficiency (在 Cylindrical Mesh Ratings前有+符号), 这个属性可能包含多个结果。
在上面的例子中,将记录每一个啮合副的结果。
选择此属性后,在创建/保存RUNNA文件时,系统将询问是否可以执行分析。
为了在生成的XML文件中包含输出结果,以方便modeFRONTIER集成,这里需要选择Yes。
在完成上述全部设置之后,可以通过以下步骤创建RUNNA脚本:File-> Save/Save As.
生成的.Runna文件和.xml文件其实内容是一样的,在后续集成过程中使用任意一个均可。
从RUNNA编辑器保存的RUNNA分析脚本实际上是简单的XML文件,可以在任何文本编辑器中打开。RUNNA文件本身分为三个主要部分:输入变量,输出定义和输出变量。
如果选择了具有多个结果的输出属性,对于该属性,将在XML文件的输出定义部分中看到一个条目,并在输出变量部分中看到每个结果的条目。输出定义部分仅供内部使用,无需修改。
运行RUNNA分析脚本非常简单,在命令行中使用“ /run”参数和RUNNA分析脚本的位置调用RUNNA即可 (如下所示)。
分析结果将放回RUNNA文件中。在RUNNA文件的输出变量部分中,可以在每个变量元素的Value字段中找到分析结果。
完成上述准备工作后,即可在modeFRONTIER建立相应的优化流程,集成相应RUNNA项目,下面说明具体流程。
1. 在modeFRONTIER中建立新项目,选择Scheduling Start、Input Template、Dos Batch、Output Template、Exit节点各一个,并连接形成过程流程。
如果购买模块支持Easy Driver,则Input Template、Dos Batch、Output Template三个节点可以用一个Easy Driver节点代替,简洁很多。
2. 设置输入变量,包括合适的变化范围等,然后连接到Input Template;
3. 选择Input Template节点,“Define Parameters",弹出界面
点击Add,选择前面生成的Runna分析脚本(.XML或者.Ruuna均可)。
设置完成后类似下图
点击OK退出。点击Introspection,弹出下图
点击OK后,将modeFRONTIER定义的输入变量与刚才Input Template里定义的输入变量进行绑定,如下图
完成后点击Apply。
添加一个Transfer File节点,从Input Template节点流出,流入Dos Batch节点,如下图:
设置Transfer Files,选择Runna分析脚本文件(.XML或者.Ruuna)。
选择Dos Batch节点,点击Open editor,设置Runna的执行命令,参见下图
再添加一个Transfer File节点,从Dos Batch节点流出,流入Output Template节点,如下图:
Transfer Files同样选择为Runna分析脚本文件(.XML或者.Ruuna)
设置输出变量和需要的目标约束,将输出变量连接到Output Template节点上,如下图:
选择Output Template节点,点击Define Parameters,点击Add,选择Runna分析脚本文件(.XML或者.Ruuna),注意这里必须是项目运行后保存的文件,即输出变量有值的文件。
在/Outputs部分找到需要的输出变量对应的值,鼠标左键选上,右键Create Parameter,给一个合适的名字,然后Create。
OK退出后,Introspection,然后将流程中定义的输出变量与Output Template里定义的输出变量进行绑定,如下图
在Scheduling Start中定义好合适的优化算法及其它需要的运行设置,即可进行优化。
上述modeFRONTIER中操作基于modeFRONTIER最新版进行,早期版本个别操作可能有所区别,请参照寻找对应功能位置进行。