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