Wolfram SystemModeler(建模与仿真工具)
v5.1.0- 软件大小:197.85 MB
- 更新日期:2020-06-17 17:49
- 软件语言:简体中文
- 软件类别:辅助设计
- 软件授权:免费版
- 软件官网:待审核
- 适用平台:WinXP, Win7, Win8, Win10, WinAll
- 软件厂商:
软件介绍 人气软件 下载地址
Wolfram SystemModeler 5是一款非常强大的生命科学建模和仿真平台,新版本增加了同步库功能,用于精确定义和同步具有不同采样率的采样数据系统,它使用易于使用的图形用户界面封装了Modelica 3.3同步语言元素;该库具有定义周期性时钟和事件时钟的元素,这些元素触发元素同步采样,子采样,超采样或移位采样分区;可选地,可以模拟量化效果,计算延迟或噪声;支持连续时间方程式的自动离散化,使定义采样数据系统更加简单和安全,同步具有不同采样率的采样数据系统,支持周期性和非周期性采样数据系统,允许组合来自同步库的组件和来自Modelica标准库的组件;需要的用户可以下载体验
新版功能
使用最新的Modelica库支持流体和气体等连续介质
几乎200个其他Modelica组件,包括媒体,PowerConverters和噪声库
完全可视化的重新设计了近6000个图标,以提高一致性和可读性
支持针对不同开发和演示级别进行优化的新GUI工作区
几乎500个内置示例模型,便于探索和学习
模块化可重新配置,可轻松切换和修改模型的不同部分
符号参数模拟:创建代表模型参数变化的完全可计算对象的能力
导入和导出FMI 2模型以进行广泛的模型交换和系统集成
基于非专有,针对对象,基于方程的Modelica语言。
用于建模建模的图形用户
界面用于基于方程的Modelica建模,仿真,文档化和分析的文本用户
界面基于组件和模块的建模
多域建模,包括:一维和三维机械动力
电气、液压、热力学、控制工程、系统生物学
与Mathematica集成,实现模型和仿真的分析和文档化处理
软件特色
拖拽、放置和连接
利用 SystemModeler 的拖放式方法快速直观地构建模型。
选取晶体管或弹簧等组件并将其放置在工作空间内。
全面控制仿真
通过由 Wolfran 语言驱动的交互式笔记本环境对仿真进行完整控制。
程序式指定初始状态、参数值和输入信号函数。
无限制分析
利用完整的模型方程和模型的仿真结果进行自定义符号和数值计算。
将Wolfram语言的强大功能应用到模型分析中。
大量模型部署
所有桌面版本的 Wolfram 产品都内置有系统模型分析功能。
直接与众多 Wolfram 语言使用者分享任意由 SystemModeler 创建的模型。
使用操作、滑块、图形和其他 Wolfram 语言组件,让他们与您的模型进行探究、配置和分析等多面互动
仿真与软硬件的连接
通过直接连接您自己的硬件设备和软件资源将模型放入回路中,或将模型导出为广泛支持工具的组件。
将 Arduino 主板、OPC 服务器、游戏手柄、数据库以及其他与最新的 Modelica 程序库和Wolfram设备框架相连接
通过授权将模型导出为广泛的 Model Exchange 工具,或与使用协同仿真的独立仿真引擎结合来保护您的知识产权
SystemModeler 是最完整的物理建模与仿真工具,需要附加软件,且完全支持Modelica模型语言。
此外SystemModeler为与Wolfram语言完美连接而设计,从而实现建模、仿真和分析流程的终极整合。
安装步骤
1、用户可以点击本网站提供的下载路径下载得到对应的程序安装包
2、只需要使用解压功能将压缩包打开,双击主程序即可进行安装,弹出程序安装界面
3、同意上述协议条款,然后继续安装应用程序,点击同意按钮即可
4、可以根据自己的需要点击浏览按钮将应用程序的安装路径进行更改
5、弹出以下界面,用户可以直接使用鼠标点击下一步按钮
6、现在准备安装主程序,点击安装按钮开始安装
7、弹出应用程序安装进度条加载界面,只需要等待加载完成即可
8、根据提示点击安装,弹出程序安装完成界面,点击完成按钮即可
方法
1、安装应用程序并运行
2、在激活窗口中,单击其他激活方法
3、选择“手动激活”
4、运行“ RunKeygen.bat”以运行Keygen_avxhm.se.exe到命令提示符
5、复制MathID,然后输入:MathID
6、复制生成的激活密钥和密码并将其粘贴到激活对话框
7、完成以上操作步骤后,就可以双击应用程序将其打开,此时您就可以得到对应程序
使用说明
建议您按照给定的顺序浏览示例。请注意,IntroductoryExamples库中也提供了所有示例。您可以使用类浏览器浏览IntroductoryExamples库的包结构。
使用类浏览器浏览IntroductoryExamples库的包结构。
双击包的名称将以新树的形式打开包,并在类浏览器中显示其内容。双击模型名称将在类窗口中打开模型。
有关IntroductoryExamples库中模型的其他信息,已集成到包和模型中,并且可以通过在类浏览器中右键单击任何包或模型并从弹出菜单中选择“ 查看文档”来查看。
查看软件包的文档。
类的文档将显示在文档中心中。
直流马达
受控DC电动机的简单动态模型由可变电压源,电阻器,电感器和电动势元素组成,这些元素代表了直流电动机中磁场提供的电能和机械能之间的耦合。电机轴由旋转质量或惯性表示。
所有这些组件都可以在SystemModeler随附的Modelica标准库中找到。在拖放的帮助下,它们可以用来组成模型,如下图所示。
模型中心中的直流电动机的图解视图。
要构建此模型,我们需要创建一个新模型,找到合适的组件,将这些组件拖放到图区域中,最后使用连接线工具连接这些组件。
我们首先创建一个名为DCMotor的新模型。我们将使用的组件都可以在Modelica标准库中找到。要找到组件,我们可以搜索它们,或者如果我们知道它们的确切位置,请在类浏览器中打开包含它们的包。我们将展示如何做到这两个。
要找到步骤源组件,我们将使用类浏览器进行搜索。类型步在类浏览器的文本框中,然后等待结果出现。
使用“ 模型中心”中的“ 类浏览器”搜索步骤源组件。
您应该在类浏览器中看到“ step”的前10个匹配项。我们要使用的组件是Modelica.Blocks.Sources.Step组件,在上图中突出显示。
要将这个组件添加到我们的DCMotor模型中,请将其从类浏览器中拖放到类窗口的图视图中。
信号电压分量位于Modelica.Electrical.Analog.Sources包中。知道组件的确切位置之后,我们将使用类浏览器的树视图,并将树的分支一直扩展到代表组件所在的包Sources的分支。
首先扩展Modelica软件包。单击包装图标和名称左侧的符号即可完成此操作。
在类浏览器中展开Modelica包。
如您所见,Modelica软件包包含多个软件包。我们将继续扩展Electrical包,接着是Analog包,最后是Sources包,在其中我们将找到信号电压分量。
扩展Modelica.Electrical.Analog.Sources包。
添加SignalVoltage组件到DCMOTOR通过拖动到图表视图类窗口。
现在,我们添加了七个组件中的两个。其余四个电气组件(电阻器,电感器,地线和EMF)都在Modelica.Electrical.Analog.Basic软件包中找到。由于已经有了Modelica.Electrical.Analog包的扩展,我们可以轻松地找到Basic包并对其进行扩展,以查找其余组件。
扩展Modelica.Electrical.Analog.Basic程序包。
将电气部件添加到DCMotor模型后,仅需添加一个部件,即惯性。它位于Modelica.Mechanics.Rotational.Components包中。您可以通过扩展Modelica,Mechanics,Rotational和Components包来选择是要搜索还是直接浏览。
添加惯性组件后,只需完成连接直流电机模型的工作即可。使用连接线工具连接组件。
“ 模型中心”工具栏中的“ 连接线工具 ”。
例如,要将接地连接到信号电压组件的负极引脚,请将鼠标光标放在接地引脚上方,按鼠标左键,然后按住不放,同时将鼠标光标移动到信号电压组件的负极引脚。要建立连接,请释放鼠标按钮。
继续连接所有部件,直到图表视图中的DCMOTOR类似于本章中的第一个数字。
在放置和连接组件时,Model Center会生成与操作对应的Modelica代码。切换到Modelica文本视图以查看模型的文本表示形式。在模型的文本表示中,声明了每个组件,并且两个组件之间的每个连接由“方程式”部分中的连接方程式表示。
声明和方程式的顺序取决于放置组件并进行连接的顺序。因此,模型中的声明和方程式的顺序可能会略有不同。另外,出于可读性考虑,所有图形注释均已从上述DCMotor的定义中删除。
该DCMOTOR模型现在已经完成,可以模拟。但是,首先,我们要指定某些模拟设置。单击工具栏中“ 模拟类”按钮旁边的向下箭头,然后选择“ 实验设置”。在弹出的“ 类属性”对话框中,通过编辑“ 停止时间”将模拟时间设置为25秒。单击确定或按Enter将设置应用于模型,并在文本视图中自动更新实验注释。现在,单击工具栏中的“ 模拟类”按钮以打开“ 模拟中心”并模拟模型。
将DCMotor模型的仿真时间设置为25秒。
选择要在实验浏览器中绘制的变量,如下图所示。
绘制inertia1.w和signalVoltage1.v为DCMOTOR使用默认参数值模型。
最后,我们得到的结果,与情节inertia1.w和signalVoltage1.v随时间的变化。
更改参数值以修改系统行为也很容易。我们将改变电阻器的电阻,电感器的电感和惯性矩,以产生阻尼阶跃响应而不是振荡阶跃响应。
在实验浏览器中切换到“ 参数”视图。要在“ 参数”视图中编辑参数值,请单击当前值。将电阻1的电阻设置为10 ohm,将电感1的电感设置为0.1 H,并将惯性矩1 设置为0.3 kgm 2。
再次模拟模型并研究惯性角速度的更新图。
绘制inertia1.w和signalVoltage1.v为DCMOTOR定制参数值模型。
刚性轴和弱轴
在本节中,我们将首先开发一个刚性轴模型,如下所示通过添加一个阶跃扭矩来研究其阶跃响应,并展示如何通过在刚性轴模型中包括一个附加的缺点来更精确地建模该轴。
我们首先开发刚性轴模型。组分(步骤,转矩,惯性和IdealGear)模型的都可以通过扩大找到Modelica.Blocks.Sources,Modelica.Mechanics.Rotational.Sources和Modelica.Mechanics.Rotational.Components在包装类浏览器,或简单地搜索它们。您可以为模型指定任何名称。该模型的不同阶段也可以从IntroductoryExamples.MultiDomain包中获得。
该图表视图中的IntroductoryExamples.MultiDomain.StiffAxis模型。
通过选择IdealGear1组件,我们能够在编辑器底部的“ 参数”视图中编辑该组件的参数。
在Model Center中编辑理想齿轮部件的传动比。
将比率参数的值设置为3。这意味着角度和角速度会放大三倍,并且扭矩会从齿轮的一侧到另一侧衰减三倍。另外,通过将参数startTime的值更改为1秒来更改步进源的开始时间。
在对系统进行6秒钟的仿真后,我们观察到恒定的转矩会导致恒定的角加速度,即角速度的斜率和轴角的平方曲线,如下所示。
绘制的转矩的角速度inertia2,和角度inertia2为IntroductoryExamples.MultiDomain.StiffAxis模型。
通过包含其他弱点,可以对轴进行更精确的建模。如下图所示,可以通过将上述轴模型替换为由两个通过扭转弹簧连接的旋转质量组成的模型来实现。所述扭转弹簧在发现Modelica.Mechanics.Rotational.Components包。
该图表视图中的IntroductoryExamples.MultiDomain.WeakAxis模型。
组件惯性 1的力矩为1 kgm 2,而惯性2和惯性3的力矩为0.5 kgm 2。spring1的弹簧常数设置为5 Nm / rad。我们将模拟该子系统6秒钟,然后研究结果(请参见下文)。请注意,惯性3(而不是之前的惯性2)是轴的最后一个元素,因此是选定的绘图变量。
绘制的转矩的角inertia3,和的角速度inertia3为IntroductoryExamples.MultiDomain.WeakAxis模型。
弱轴模型和硬轴模型之间的比较表明,它们的行为类似,但前者会增加挠度。
行使
制作一个带有扭簧的简单直流电动机,该扭簧连接到输出轴和另一个惯性元件。模拟并研究结果。调整一些参数并比较结果。您可能还需要添加输入扭矩并将其连接到惯性2,然后研究系统。
控制系统
通过使用本章前面开发的DC电动机模型和轴模型,开发刚性和弱伺服机构来结束本章。
控制系统的结构如下图所示。该系统由输入信号,传感器,反馈回路和调节器组成。物理系统由直流电动机和轴系统之一组成。由于物理系统的静态增益为负,因此PI增益也必须为负。
控制系统的简化表示。
如上图所示,我们连接了所有三个子系统。调节器参数的默认选择是k = 1和T = 1,其中PI调节器传递函数为
我们首先开发用于直流电动机和较早开发的刚性轴的控制系统。如下图所示,引入了三个新组件:反馈组件,PI控制器和速度传感器。
该图表视图中的IntroductoryExamples.MultiDomain.StiffServoMechanism模型。
这些组件可以在以下程序包中找到:
该PI控制器在发现Modelica.Blocks.Continuous包。
所述反馈部件在发现Modelica.Blocks.Math包。
所述速度传感器中发现Modelica.Mechanics.Rotational.Sensors。
在模拟该模型时,我们将注意下图所示的电机轴和齿轮轴的角速度响应。模拟了25秒。
为IntroductoryExamples.MultiDomain.StiffServoMechanism模型绘制惯性1和惯性2的角速度。
到目前为止,我们已经使用了控制器的默认参数。通过改变控制器增益k,我们可以控制响应。在这种情况下,我们将增益从1更改为2,间隔为0.25。通过为每个模拟创建一个新实验,然后将结果绘制在同一窗口中,我们可以比较所有模拟的结果。通过从Simulation Center 的“ 文件”菜单中选择“ 新建”来创建新实验。为每个实验设置适当的参数值,模拟并绘制结果图。
为IntroductoryExamples.MultiDomain.StiffServoMechanism模型绘制具有不同控制器增益的惯性1和惯性2的角速度。
通过使用不同的调节器增益研究电机和齿轮轴的角速度响应,我们得出结论,通过选择k = 1.5,我们可以得到足够快的响应,并且几乎没有振荡。
最后,我们为直流电动机和弱轴系统开发了一个控制系统。
该图表视图中的IntroductoryExamples.MultiDomain.WeakServoMechanism模型。
在模拟之前,我们将控制器增益设置为k = 1.5,并将结果与刚性轴系统的结果进行比较。
所述的惯性之间的比较StiffServoMechanism模型和WeakServoMechanism用的调节增益模型K = 1.5。
如上所示,使用刚性轴模型进行的控制器设计对于更精确的弱轴也表现良好。
敏感性分析
在本节中,我们将研究控制设计对不同系统参数变化的敏感程度。这可以使用支持正向灵敏度分析的CVODES求解器完成。灵敏度小号我(吨)用于状态ÿ 我(吨)相对于所述参数p由下式给出
换句话说,在每个时间实例的灵敏度表示多少为国家溶液ÿ 我(吨)将用于参数的小变化而变化p。
让我们研究关于WeakServoMechanism的三个惯性的控制设计敏感性。要做到这一点,我们选择解算器在该CVODES 设置查看和检查SA复选框在参数查看inertia1.J,inertia2.J和inertia3.J。
选择CVODES求解器。
模拟完成后,我们可以通过单击每个状态下方的可扩展树中的复选框来绘制灵敏度分析的结果。
单击复选框以绘制惯性3.w相对于惯性1.J,惯性2.J和惯性3.J的灵敏度。
下面的屏幕快照显示了惯性3.w相对于惯性1.J,惯性2.J和惯性3.J的敏感度。在仿真开始时,我们可以看到惯性1.J对惯性3.w的解有较小的影响。在模拟结束时,这种影响会减小。此外,在整个模拟过程中,惯性2.J对解决方案的影响可忽略不计。另一方面,惯性3.J对解决方案的影响要大得多。由此可以得出结论,我们的控制设计对惯性变化最敏感。
的灵敏度inertia3.w相对于inertia1.J,inertia2.J,和inertia3.J。
为了验证我们的结果,我们执行以下模拟:
WeakServoMechanism 1:原始设置。
WeakServoMechanism 2:惯性1.J增加了50%。
弱伺服机制3:惯性2.J增加了50%。
弱伺服机制4:惯性3.J增加了50%。
结果显示在下图中,在此我们确认我们的分析:
弱伺服机制2:更改惯性1.J在模拟开始时会产生一些影响,但在结束时会减小。
弱伺服机制3:更改惯性2.J几乎没有任何影响。
弱伺服机制4:改变惯性3.J影响最大;它导致振荡的相移以及幅度增加。
更改惯性1.J,惯性2.J或惯性3.J的结果。
人气软件
-
南方cass 65.9 MB
/简体中文 -
迈迪工具集 211.0 MB
/简体中文 -
origin(函数绘图工具) 88.0 MB
/简体中文 -
OriginLab OriginPro2018中文 493.0 MB
/简体中文 -
探索者TssD2017 417.0 MB
/简体中文 -
mapgis10.3中文(数据收集与管理工具) 168.66 MB
/简体中文 -
刻绘大师绿色版 8.32 MB
/简体中文 -
SigmaPlot 119 MB
/简体中文 -
keyshot6 1024 MB
/简体中文 -
Matlab 2016b 8376 MB
/简体中文