




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章基于系统建模仿真的工业APP2024.04MWORKSAPI与工业应用开发基于系统建模仿真的工业APP01目录CONTENTS02系统建模仿真类工业APP的开发模式及关键点质量弹簧阻尼APP开发实践03质量弹簧阻尼APP开发实践03质量弹簧阻尼APP开发实践使用SDK快速开发完成一个弹簧阻尼模型案例,从模型搭建-工程配置-SDK功能开发流程开发一个质量弹簧阻尼仿真APP。底层加载Modelica3.2.1标准模型库;打开已搭建好的质量弹簧阻尼模型;可对质量、阻尼系数、质量块初始位置、弹簧刚度、施加压力等参数和输入进行设置;可对仿真设置中的仿真停止时间进行设置;可对打开的质量弹簧阻尼模型进行仿真;对仿真后的压力、位移变化、速率变化等数据进行获取;将获取的数据显示到SDK提供的曲线组件上。质量弹簧阻尼APP开发实践使用SDK快速开发完成一个弹簧阻尼模型案例,从模型搭建-工程配置-SDK功能开发流程开发一个质量弹簧阻尼仿真APP。系统仿真应用的架构在进行质量弹簧阻尼APP开发之前我们需要进行软件架构设计,根据一般工业应用我们可将架构分为三成:Sysplorer.SDK层、功能层、界面层。质量弹簧阻尼APP软件架构图系统仿真应用的架构界面层:通过Qt快速搭建对应的软件界面,界面中应该包括本APP所需的模型原理图显示、用户输入框、仿真操控按钮、结果曲线显示等内容。质量弹簧阻尼APP软件架构图系统仿真应用的架构功能层:通过调用底层SDK接口,实现本APP相关的模型加载功能、参数设置功能、停止时间设置功能、模型编译仿真功能、结果获取功能,实现输入质量弹簧阻尼系统的质量块质量、阻尼系数、弹簧刚度等参数后,通过模型仿真能够查看质量弹簧阻尼系统的质量块位移、质量块速率的变化,观察不同参数下施加不同的力,质量弹簧阻尼系统的运动情况。系统仿真应用的架构Sysplorer.SDK层:系统建模仿真环境Sysplorer提供给开发者和外部系统调用的标准接口。为工业应用提供模型文件、参数操作、属性获取、元素及属性判定、属性查找、编译仿真、结果数据查询等底层能力。在本APP中提供了质量弹簧阻尼模型的加载、参数设置、仿真设置、编译仿真、结果获取等功能。构建系统模型库本次开发APP需依赖模型,打开MWORKS.Sysplorer搭建一个质量弹簧阻尼系统,质量-弹簧-阻尼器系统可用简单的数学模型表示,即数轴建模法,建立与系统平行方向的数轴,把弹簧或阻尼器的实际位移值当作有理数标在数轴上对应位置,然后按照有理数比较大小的结果确定相应质量块所受弹簧力或阻尼力的大小和方向,进而求得系统的微分方程。分别以单自由度系统、两自由度振动系统及多自由度系统为例,阐述了数轴法在建立机械振动系统的数学模型中的应用。构建系统模型库构建系统模型库(1)点击“文件-新建-package”按钮,然后在弹出的对话框中填入模型package信息。构建系统模型库(2)右键上一步构建的package,点击“在MassSpringDamper中新建模型”按钮,然后再填入对应的模型信息,同样的步骤新建Demo模型。构建系统模型库(3)然后从标准库中拖拽对应的组件到模型中,构建系统。构建系统模型库根据上述步骤拖拽相关的组件到模型中,调整组件位置、旋转组件方向,并按模型原理图连接各组件。下表为所用的相关组件及其在标准库中的路径:序号组件模型路径1fixedModelica.Mechanics.Translational.Components.Fixed2damperModelica.Mechanics.Translational.Components.Damper3springModelica.Mechanics.Translational.Components.Spring4massModelica.Mechanics.Translational.Components.Mass5speedSensor、positionSensorModelica.Mechanics.Translational.Sensors.SpeedSensor6forceModelica.Mechanics.Translational.Sources.Force7V、SModelica.Blocks.Interfaces.RealOutput8fModelica.Blocks.Interfaces.RealInput构建系统模型库构建系统模型库(4)将模型视图切换到文本视图,新建质量块质量、弹簧刚度等参数,参数新建完成后将其设置到对应的组件中。构建系统模型库(5)至此质量弹簧阻尼系统模型已经搭建完成,下面我们可以新建一个测试模型,对其进行测试一下,如图将弹簧阻尼系统模型拖拽至Demo模型中,然后再拖拽const组件作为输入源,然后仿真运行,查看对应的结果。QMainWindow界面设计1.APP开发工程构建基于VS2017版本进行开发,请确保已安装VS2017Qt插件,并安装Qt5.14.2等相关开发环境1.1新建工程新建一个QtApplication工程,命名为MassSpringDamperApp,如图所示QMainWindow界面设计1.APP开发工程构建1.2输出目录配置输出目录配置如图所示,将输出目录配置到安装的SDK路径的bin目录:$(MWBin)$(Configuration)将MWBin换为实际SDK对应路径:SDK安装路径\bin\win_msvc2017x64QMainWindow界面设计1.APP开发工程构建1.3附加包含目录配置附加包含目录配置如图所示,包含目录添加SDK的include与interface目录:.\GeneratedFiles.$(QTDIR)\include.\GeneratedFiles\$(ConfigurationName)$(QTDIR)\include\QtCore$(QTDIR)\include\QtGui$(QTDIR)\include\QtWidgets$(MWInclude)$(MWInclude)\boost161$(MWInterface)$(MWInterface)\modelica_services$(MWInterface)\common_kitsMWInclude——SDK安装路径/includeMWInterface——SDK安装路径/interfaceQMainWindow界面设计1.APP开发工程构建1.3附加包含目录配置QMainWindow界面设计1.APP开发工程构建1.3附加包含目录配置QMainWindow界面设计1.APP开发工程构建1.4链接库依赖项配置链接库依赖项配置如图所示,依赖库目录添加SDK的bin\lib与文件输出目录为:$(OutDir)$(QTDIR)\lib$(MWBin)\libQMainWindow界面设计1.APP开发工程构建1.4链接库依赖项配置链接库依赖项配置如图所示,依赖库目录添加SDK的bin\lib与文件输出目录为:$(OutDir)$(QTDIR)\lib$(MWBin)\libQMainWindow界面设计1.APP开发工程构建1.4附加依赖项配置Debug下的附加依赖项设置为:qtmaind.libQt5Cored.libQt5Guid.libQt5Widgetsd.libmw_develop_d.libmodelica_compiler_d.libmw_graphics_view_d.libmw_class_manager_d.libmw_global_d.libmw_help_d.libmw_sim_inst_d.libmw_sim_plot_d.libmodel_var_tree_d.libmw_develop_d.lib如下图所示,Release下的附件依赖项设置为:qtmain.libQt5Core.libQt5Gui.libQt5Widgets.libmw_develop.libmodelica_compiler.libmw_graphics_view.libmw_class_manager.libmw_global.libmw_help.libmw_sim_inst.libmw_sim_plot.libmodel_var_tree.libmw_develop.libQMainWindow界面设计1.APP开发工程构建1.4附加依赖项配置QMainWindow界面设计1.APP开发工程构建1.4附加依赖项配置QMainWindow界面设计2.QtDesigner设计界面2.1利用Qt控件搭建MainWindow界面如图所示QMainWindow界面设计2.QtDesigner设计界面2.2界面加载模型图片,将模型图增加到界面中的label,如图所示QMainWindow界面设计2.QtDesigner设计界面2.2界面加载模型图片,将模型图增加到界面中的label,代码如下QMainWindow界面设计2.QtDesigner设计界面2.3界面中加载曲线窗口组件,使用SDK中的MwSimPlotWindow类创建曲线视图嵌入QMainWindow中,如图所示QMainWindow界面设计2.QtDesigner设计界面2.3界面中加载曲线窗口组件,使用SDK中的MwSimPlotWindow类创建曲线视图嵌入QMainWindow中,代码如下主要功能实现1.main函数main函数中主要做以下功能点:初始化QApplication初始化MwClassManager类加载翻译文件显示QMainWindow主窗口主要功能实现1.主要功能详解主要开发流程如图所示,提前加载底层模型及数据、开始仿真、仿真完成后等操作:1.1提前加载底层模型及数据1.2点击仿真按钮主要功能实现1.主要功能详解1.1提前加载底层模型及数据MainWindow中的构造函数中主要加载如下几点功能:底层加载标准模型库、打开搭建好的质量-弹簧-阻尼模型文件、提前获取参数值显示在面板中。1.1.1加载标准模型库获取Modelica标准模型库3.2.1版本保证,需bin目录下的Library路径下存在该模型库,代码如下:1.1.2加载模型文件将搭建的模型在底层打开,代码如下主要功能实现1.主要功能详解1.1提前加载底层模型及数据MainWindow中的构造函数中主要加载如下几点功能:底层加载标准模型库、打开搭建好的质量-弹簧-阻尼模型文件、提前获取参数值显示在面板中。1.1.3获取参数数据为保证打开软件前,界面能够显示如下数据,需对模型中的相关参数进行获取,如图所示主要功能实现1.主要功能详解1.1提前加载底层模型及数据MainWindow中的构造函数中主要加载如下几点功能:底层加载标准模型库、打开搭建好的质量-弹簧-阻尼模型文件、提前获取参数值显示在面板中。1.1.3获取参数数据获取参数数据代码如下:主要功能实现1.主要功能详解1.2点击仿真按钮模型库及模型文件加载完成后,可在界面中输入参数数据和仿真设置,完成后,可点击如下仿真按钮,如图所示。点击仿真后,会将参数设置到模型中、设置仿真停止时间、编译和仿真等过程。主要功能实现1.主要功能详解1.2点击仿真按钮1.2.1设置参数到模型:获取输入框中对应的值,将其设置到模型中,代码如下主要功能实现1.主要功能详解1.2点击仿真按钮1.2.2设置仿真停止时间:获取输入框中的仿真停止时间,将其设置到仿真数据中,仿真数据需提前初始化好,代码如下主要功能实现1.主要功能详解1.2点击仿真按钮1.2.3编译和仿真:在仿真前需要提前翻译模型,在构造函数中提前new出用于仿真MwSimControl类,并将该类与用于仿真
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版小学二年级上册数学 2.4 和复习 课时练
- 人力资源培训委托合同模板
- 2025租房合同范本:公寓租赁合同样本
- 2025咖啡店经营用房租赁合同的注意事项
- 建筑土地租赁合同范本
- 专利申请权益转让合同
- 购房达成意向合同书
- 机电产品销售合同范例
- 《致敬辛勤付出》课件
- 2025围墙建设承包合同标准版模板
- 呵护地球家园点亮绿色希望-2025年4月22日第56个世界地球日主题教育班会 高中主题班会优 质课件
- 网络安全问题及其防范措施(基础篇)-国家计算机网络应急中心
- 桥隧工技能鉴定理论资源高级技师模拟考试题含答案
- 2025-2030中国5G基站建设情况及前景趋势与投资研究报告
- 话题10 AI人工智能-2025年中考《英语》高频热点话题写作通关攻略
- 2024年上海市工业技术学校招聘笔试真题
- 2025年中国智能可穿戴设备市场深度调研分析及投资前景研究预测报告
- 体育产业智慧场馆建设与运营模式创新
- 浙江国企招聘2024宁波慈溪市诚安燃气服务有限公司招聘10人(二)笔试参考题库附带答案详解
- 仓库人员安全教育培训
- 第15课《青春之光》课件-2024-2025学年统编版语文七年级下册
评论
0/150
提交评论