🍺相关文章汇总如下🍺:
- 🎈LMS Virtual.Lab二次开发:声学仿真理论基础准备(Python)🎈
- 🎈LMS Virtual.Lab二次开发:场点网格编辑(VBScript)🎈
- 🎈LMS Virtual.Lab二次开发:声学仿真结果导出方法(VBScript、Python)🎈
1、简介
Siemens LMS Virtual.Lab 软件 (SIMCENTER 3D) 具有集成的计算机辅助工程 (CAE) 套件,可准确模拟和优化机械系统性能,包括结构完整性、噪音和振动、系统动力学和耐用性。
该软件允许您同时定义涵盖多个属性的过程,包括参数分析。 这可以在物理原型构建之前快速评估多种设计备选方案和优化。 LMS Virtual.Lab 嵌入在计算机辅助设计 (CAD) 平台中,并与各种 CAE 求解器和测试软件很好地连接,在开发过程的每个步骤中都处于中心位置。
Simcenter 3D 是基于 NX 平台构建的下一代 CAE 解决方案,并结合了 NX CAE、LMS Virtual.Lab 和 LMS Samtech 的一流功能。
其中LMS Virtual.Lab Acoustics声学仿真模块,它独特的高性能的有限元模型自适应顺序(FEMAO)声学求解器嵌入到了LMS Virtual.Lab,使其可以自适应元素,以使整个频率范围内的声学分析有一个精确和高效的有限元网格。LMS Virtual.Lab Acoustics 还使你能够执行适合您的产品开发过程可扩展的噪声分析。
2、理论概念
相关具体内容请见"爱看书的小沐"的另一篇文章:
https://blog.csdn.net/hhy321/article/details/123152458
3、二次开发
3.1 Virtual.Lab和CATIA V5的关系
LMS Virtual.Lab与达索公司的CATIA V5以及开放的SIMULIA平台无缝集成,扩展并完善了CATIA V5的CAE功能,为系统级建模和有限元前处理/后处理提供完整的独立的集成环境。这些功能可以让设计和工程团队在同一环境中对部件和总成的结构特性和性能进行分析,同时还能与初始的CAD模型保持紧密的联系。
3.2 CATIA V5的VBA指南
LMS Virtual.Lab的VBA接口实际是基于catia实现的,可以参考catia开发的相关文档。
- https://catiadesign.org/_doc/V5Automation/
- https://catiadesign.org/_doc/V5Automation/online/CAAScdAniUseCases/CAAAniPostProSelection.htm
- https://catiadesign.org/_doc/V5Automation/online/CAAScdAniUseCases/CAAAniPreproOnPublishSource.htm
- https://catiadesign.org/_doc/V5Automation/generated/interfaces/CATAnalysisInterfaces/interface_AnalysisImage_33596.htm
3.3 Virtual.Lab帮助的VBA指南
利用LMS Virtual.Lab Motion中基于VBA的日志和脚本功能,可对任意操作过程进行记录和复现。基于VBA的二次开发功能是LMS Virtual.Lab Motion的另一个突出优点。通过该功能,工程师在LMS Virtual.Lab Motion框架内部或上层建立专用的功能菜单或操作界面和模板。从而实现对某一特定功能的操作流程进行定制,并集成到特有的操作界面和模板上。通过基于VBA的二次开发功能,不仅可以避免大量重复性工作,缩短产品开发时间;同时使得建模仿真过程的重心由当前设计的性能分析转移到总体设计的性能优化上来。
-
(1)第一步:点击主菜单“帮助”。
-
(2)在弹出的帮助网页的底部,找到“Automation”等字眼,鼠标点击“LMS Virtual.Lab Automation”网页链接。
-
(3)弹出的帮助网页中关于自动化二次开发的相关网页资源。
-
(4)这里的自动化功能(Automation)是一种允许软件包将其独特功能暴露给脚本工具和宏语言的技术。自动化客户端可以在运行时使用Visual Basic(VBA 和 VBS)。借助于自动化技术,您可以:
- Create and manipulate objects exposed in one application through an embedded macro (or script). 通过嵌入式宏(或脚本)创建和操作在一个应用程序中公开的对象。
- Create and manipulate objects exposed in one application from another application.从另一个应用程序创建和操作在一个应用程序中公开的对象。
-
(5)Visual Basic Applications Edition (VBA) 包含在 Microsoft Office 和许多其他应用程序中,例如 LMS Virtual.Lab。 VBA的一些特点是:
- VBA 是一个软件开发工具包 [SDK],它允许您开发图形用户界面(VB 脚本无法做到这一点)。
- VBA 是一种与 VB 非常相似的语言。
- VBA 编辑器易于学习和使用。
- VBA 很快。
- VBA 由 LMS Virtual.Lab 托管,因此 VBA 应用程序在与 LMS Virtual.Lab 相同的进程空间中运行。
- VBA 作为基于 Windows 的自定义工具被广泛接受。但是,使用 VBA 编写的应用程序只能在 Windows 上运行。
-
(6)Visual Basic Scripting Edition (VBScript) 是一种用于 Internet 脚本的语言,是 Visual Basic 语言的子集。 VBScript 的一些特点是:
- VBScript 不支持任何文件操作。
- VBScript 没有任何图形功能。
- VBScript 只有一种数据类型,即 Variant:Variant 数据类型可用于保存几乎任何类型的数据,包括数字、字符串、对象引用等。
- VBScript 可以在 Windows 和 Unix 上运行。
3.4 Virtual.Lab编辑VBA脚本
-
LMS Virtual.Lab 自动化前言:
LMS Virtual.Lab 具有自动化和定制功能,包括脚本和日志功能,以及集成的可视化基本编程工具。这些功能允许 LMS Virtual.Lab 用户通过自动执行重复的模拟任务来节省时间,将复杂的流程和最佳实践捕获到易于使用的应用程序模板中,并将 LMS Virtual.Lab 与内部代码和专业应用程序集成。 -
您可以使用 LMS Virtual.Lab 自动化来:
将手动序列记录到宏中以捕获频繁重复的任务。
创建宏库并在 LMS Virtual.Lab 工具栏中插入宏按钮,使非专家或临时用户可以轻松访问和执行大量序列。以批处理模式执行宏以获得最佳生产力。
从外部应用程序驱动宏以将 LMS Virtual.Lab 流程集成到外部批处理流程中。
使用 Microsoft Visual Basic 和 LMS Virtual.Lab 宏创建自定义应用程序、工作流路径和对话框。
通过主菜单“工具” - “宏” - “Visual Basic Eidtor…”,打开自带的脚本编辑器进行代码编辑。
3.5 Virtual.Lab执行VBA脚本
通过主菜单“工具” - “宏” - “Macros…”,在界面上执行对应的功能模块中的函数。
通过VBA脚本打开一个工程文件(.CATAnalysis)如下:
Language="VBSCRIPT"
Sub CATMain()
' Opening the "Opening.CATAnalysis" from the user specified path "C:\temp\VirtualLabScripts"
Set documents1 = CATIA.Documents
Set analysisDocument1 = documents1.Open("C:\temp\VirtualLabScripts\Opening.CATAnalysis")
' Saving this document as "SaveAs.CATAnalysis" at the user specified path "C:\temp\VirtualLabScripts"
Set analysisDocument1 = CATIA.ActiveDocument
analysisDocument1.SaveAs "C:\temp\VirtualLabScripts\SaveAs.CATAnalysis"
Set specsAndGeomWindow1 = CATIA.ActiveWindow
specsAndGeomWindow1.Close
' Closing this saved document
analysisDocument1.Close
' Adding a new document and closing it
Set analysisDocument2 = documents1.Add("Analysis")
analysisDocument2.Close
' Closing the active document which is already opened
' CATIA.ActiveDocument.Close
End Sub
当然也可以将编写好的VBA脚本保存为文件,再通过命令行批处理(无界面状态下)调用进行相关计算等操作。
打开命令提示符并输入以下信息:
("VlStart.bat" file path) –macro (Path of the macro to be run) –batch
假设要运行的宏的路径 : “C:\temp\VirtualLabScripts\Macro1.catvbs”。
整个代码将是:
D:\LMS\Virtual.Lab.R7A>VlStart.bat –macro C:\temp\VirtualLabScripts