艾琳·伯恩,MathWorks
开始使用Simulink金宝app®通过一个例子。这个视频向你展示了使用Simulink的基本知识。金宝app
您将学习如何为太阳能电池板建模、模拟和测试控制器,因为它在一天中跟踪太阳的运动。您将看到如何为一个物理系统建模,为该系统设计一个基本的PI控制器,然后运行模拟以确保模型正常工作。
在看完这个示例之后,您将了解到Simulink如何只是基于模型的设计的一部分,用于建模、模拟、测试和金宝app实现现实世界的系统。
金宝appSimulink是一个用于建模动态系统的图形化环境——即随着时间变化的系统。金宝appSimulink负责模拟,这样你就可以专注于工程。你可以用它来模拟一些简单的东西——比如一个家庭恒温器;或者复杂的系统,比如全自动驾驶汽车或手术机器人。
本视频将向你展示Simulink的基础知识,并让你了解在Simulink中工作金宝app是什么样子的。请继续关注最后的内容,了解如何使用Simulink的更多信息。金宝app让我们开始吧!
在马萨诸塞州纳蒂克的MathWorks总部,有许多太阳能电池板可以发电。
这些面板朝南并被固定在适当的位置。这意味着,当太阳在中午直射时,它们会产生更多的电力,而当太阳位于东方或西方,在白天早晚时,它们会产生较少的电力。
如果你有太阳能板可以旋转来跟踪太阳,这样你就可以尽可能多地发电了?
在这个视频中,我们将使用Simulink设计一个跟金宝app踪系统,使太阳能电池板与太阳对齐。如果您想跟随我们构建模型,可以使用下面的链接下载它。
物理系统由一个面板和一个电机组成。我们先建立模型,然后添加一个控制器来跟踪太阳的位置。
一旦我们对设计满意,我们将测试它,看看它在跟踪实际太阳数据方面做得如何。
物理系统有两个主要组成部分。有了一些基本的物理知识,我们就可以写出每一种运动的方程。让我们先为面板建模。
您可以通过单击MAT金宝appLAB工具条中的Simulink按钮开始Simulink。这将打开开始页面,您可以在这里创建新的模型、查找示例,甚至查找基本训练。
我们将从头开始我们的模型,所以我们将选择空白模型。
金宝appSimulink模型是由模块和信号组成的。打开库浏览器查看所有可用的块。为了为面板建模方程,我们将从积分器块开始。
让我们从库中单击并拖动一个积分器到我们的模型中。
那么为什么是积分器块呢?积分器块接受一个输入然后随时间积分。如果对加速度积分,就得到了速度。如果对速度积分,就得到了位置。这是在Simulink中建模微分方程的基础。金宝app
我们的方程有加速度和速度项,所以我们至少需要一个积分器。我们再加一个来得到这个位置。
我们通过在块之间点击和拖动信号将块连接在一起。不要担心这些红线,我们马上会把它们连接起来。
对信号进行标记以保持事物的组织性是一个好主意,因此我们将双击信号并输入名称。我们把它命名为,表示加速度,表示速度,表示面板的位置。
接下来,我们对这个方程的右边建立模型。首先,扭矩项。
我们用一个常数块。我们稍后会把这个换成马达。
您可以双击一个块来更改其参数——让我们将值更改为10。
我们需要执行一个减法,所以我们也抓取一个减法块。
阻尼项取决于面板的速度——theta_dot信号。我们可以通过右键单击并拖动这个信号来将其连接到Subtract块。
别忘了还要乘以Kd。让我们使用一个增益块。
与其硬编码增益值,我们还可以使用一个变量,甚至MATLAB代码。我们假设增益是Kd。红框表示Kd还没有定义。因此,单击这三个点并选择Create。我们将给它赋值5,并将其存储在MATLAB的基本工作区中。让我们检查一下MATLAB,是的,变量Kd已经创建好了。
为了完成这个方程,我们需要除以惯性j,我们用另一个增益块来做。
但现在我们知道了块的名称,我们可以双击模型并开始输入块名称。然后,使用下拉菜单找到正确的块并按enter键。
我们将增益设置为1/J,同样,让我们在基本工作空间中定义变量J,值为8.6。
让我们添加一个注释来显示正在建模的方程——这样当我们稍后返回时,就很容易知道这个方程是什么了。
这应该是建模面板所需的全部内容。但是为了检查一切是否正常工作,我们想要可视化一些信号。金宝appSimulink有很多可视化工具。为了快速检查信号,最简单的选择是使用示波器块…然后把它和我们想要看到的信号连接起来。
让我们添加第二个示波器来查看速度信号。
现在我们准备好模拟模型了。我们可以在模拟选项卡----中设置模拟停止时间,但是现在我们将它保留为10。
要运行模拟,只需单击run按钮。模拟结束了,但是你没有看到的是Simulink通过时间数值求解微分方程。金宝app
双击作用域以查看发生了什么。
在位置范围内,我们看到面板的角度位置增加。
在速度范围内,速度从零开始并趋于稳定。
因此,在一个恒定的扭矩下,面板开始转动,然后以固定的速率稳定旋转。这很有道理。
让我们做一个快速的检查,看看如果我们改变扭矩的符号会发生什么。我们可以直接在块上编辑常量值!
重新播放,看起来不错,我们看到面板现在朝相反的方向旋转。
现在我们已经使面板模型工作起来了,让我们将这些块组合在一起以保持事物的组织性。只需选择您想要包含的块——我们现在将保留常量块和范围——然后在Modeling选项卡中单击Create Subsystem。
现在,所有这些块都包含在这个子系统中。我们把它命名为Panel。
您可以双击查看子系统内容。这些椭圆形的块是输入和输出——那是子系统的数据输入和输出。让我们调整端口名称。
好的,我们还需要一个马达。还记得那个运动方程吗?我们可以按照完全相同的过程来建模。
和. .我们找到发动机了!
我们会给马达提供一个电压来产生转矩来移动面板。我们来看看会发生什么。我们可以看到,当电压被应用到电机时,面板旋转——所以到目前为止一切看起来都很好!
我们已经建立了面板和马达的模型。现在我们需要一个控制器来设置正确的电压,以便面板能跟踪太阳。
从我们的模型中,我们知道面板指向哪里。假设太阳在这里。
我们想让面板指向太阳,所以这两个角度的差就是误差。我们将添加一个控制器,将电压应用到电机,使误差尽可能小。
如果太阳移动了,控制器就会做出相应的反应,使面板一直指向太阳。
好的,回到我们的Simulink金宝app模型!
这里是面板的位置。为了得到误差,我们需要太阳的位置。当我们设计控制器时,我们将使用单位阶跃输入——这在控制设计中很常见。稍后我们会用一些实际的太阳位置数据来测试它。
现在来计算误差。我们将使用一个求和块——它已经有了这个在控制原理图中常见的圆形。我们只需要把第二个端口从加号改为减号。
接下来我们需要一个控制器。有很多选项,但一种常见的方法是某种形式的PID控制——它代表比例/积分/导数,因为控制输出是误差、积分误差和误差的导数的函数。但我们不需要自己构建所有这些,我们只需要添加一个PID控制器块。
我们将输入端连接到误差信号,输出端将驱动电机。
你可以看到有很多方法来定制控制器。我们将切换到PI控制器——D项有助于对快速变化做出反应,这是我们不需要的,因为太阳在天空中稳定移动。
有两个增益需要调整:一个是比例项,一个是积分项。这些会影响控制器的响应。我们将比例增益设为240积分增益设为180。
为了查看控制器的性能,让我们使用相同的范围来显示太阳的位置和面板的位置。请注意,将自动添加一个新端口。
让我们运行模型…并添加图例到范围,这样我们就可以区分信号。我们也把位置线虚线。
我们可以看到,控制器有一点超调,然后稳定到参考值1。这对于我们的应用程序来说已经足够了。
我们设计了控制器。但是,它真的能追踪太阳的运动吗?好吧,让我们看看当我们提供一些真实的数据时它是如何运行的。
让我们将一些太阳位置数据加载到MATLAB工作空间中。这个文件有两个变量:跨越15个小时的时间矢量,以及太阳在每个时间点的位置矢量。
情节吧。
你可以看到太阳在东北升起在正北60度的地方在西北落下在300度的地方。
我们可以用导入替换步骤块,将太阳位置数据带入模型。
我们需要选择使用哪些数据。单击“建模”选项卡中的“模型设置”。然后导航到数据导入/导出窗格。
这里有很多设置——如果你不确定任何事情,只需右键单击并选择“What 's this”。这个输入选项正是我们所需要的。
当指定输入数据时,第一列应该总是时间。之后,您可以为模型中的每个导入添加一个列向量。
由于我们现在有15个小时的数据,我们将更改模拟停止时间。
让我们运行这个模型,我们可以很好地看到它跟踪太阳的位置。
所以,我们为太阳能电池板系统建模,开发了一个控制器,并测试了系统,以确保它能跟踪太阳的运动。而且,看起来我们的设计很有效!
但这仅仅是个开始。如果我们想让这些面板成为现实,我们可以在我们的模型中加入适当的设计规格。
我们可以引入其他工具,如Simscape来建模机械和电气系统,而不需要推导任何方程!有了Stateflow,我们可以添加逻辑使面板智能化,这样它们在一天结束时就会转回东方,并且知道如果情况发生变化该怎么做。
然后,当我们准备好了,我们就可以自动地从模型中生成代码,并将其直接部署到硬件上。
在每一步,我们都可以持续测试设计,以确保它是无错误的,并符合规格。
将模型作为设计过程的中心,我们可以解决各种设计问题。你也可以。
现在您已经对在Simulink中工作有了一些感觉,是时候学习它了。金宝app学习Simulink最好的方法就是使用它。金宝app所以,启动Simulink金宝app Onramp,它会交互式地教你Simulink的基础知识。这是免费的,只需要几个小时。
欢迎来到仿真软件。金宝app
您也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳的网站性能。其他MathWorks国家网站没有针对您所在位置的访问进行优化。
本网站使用cookie来改善用户体验,个性化内容和广告,并分析网站流量。如果您继续使用本网站,即表示您同意我们使用cookies。请参阅我们的隐私政策了解更多关于cookie和如何更改您的设置。