Melda Ulusoy, MathWorks
Live Editor任务是应用程序,您可以添加到实时脚本以完成一组不同的操作,而无需编写任何代码。此视频将使用Live Editor任务从测量的工厂数据中穿过控制器的设计。您将了解如何从测量数据交互方式估计状态空间模型,使识别的模型离散,最后,设计一个PID控制器,全部位于一个地方:您的直播脚本。
在19B中,我们介绍了实时编辑任务,您可以添加到实时脚本以执行特定的操作集。假设这是您需要遵循的工作流程,以便从测量的工厂数据设计控制器。Live Editor任务让您在一个地方完成所有工作流程步骤,节省您的时间并消除编写代码的需要。让我们看看如何使用这些实时编辑器任务来估计来自测量的工厂数据的状态空间模型,使识别的模型离散,然后为离散工厂设计控制器。
这里的代码加载并绘制测量的工厂数据。您可以以内联的方式或在脚本的右侧显示此代码的输出。为了完成这个工作流的第一步,我们将使用评估状态空间模型任务。要找到此任务,我们将转到Live Editor选项卡并单击任务。在这里,您将发现来自不同工具箱的实时编辑器任务。这是我们需要的。让我们将它插入到我们的实时脚本中。正如您在这里看到的,Live Editor任务允许您交互地指定参数。当您选择data时,它会自动从MATLAB工作区中找到合适的预定义变量,您可以在这些下拉菜单中选择这些变量。通过单击此圆形图标,可以使任务自动运行,并在每次调整任务内的值时更新和显示结果。 If you don’t have the knowledge of the plant order, you can simply try out different values. Since the task is running automatically, when you change the plant order, you’ll see updated results on the right. The increased order of 5 didn’t improve the estimation fit much. So let’s set the order back to 4. If you want, you can rename the identified model in this field here. Using the task, we easily estimated a model from measured data without writing any code. If you want to see the MATLAB commands that are used by this task, you can display them by clicking the arrow on the bottom of the task. You can also enable this feature from the options menu by selecting “controls and code.” This task also lets you adjust parameters of the estimation algorithm, such as the search method and maximum iterations. As we change some of the parameters here, you see how the appropriate arguments are automatically called by these functions. This saves you time and eliminates the need to search for the specific MATLAB functions and the different options they can be set up with.
现在,我们将继续工作流程的第二步,将识别的模型离散化。为此,我们将使用转换模型速率任务。如果您已经知道想要使用的任务的名称,您可以简单地在活动脚本中输入它的名称,然后通过从建议列表中选择它来添加任务。在选择模型并指定控制器的采样时间之后,您可以尝试不同的转换方法,以找到在原始模型和转换后的模型之间更匹配的方法。
最后一步是为离散化的对象设计一个PID控制器。为此,我们将在控制系统工具箱中添加这个可用的任务。选择离散的工厂后,您可以试验不同的控制器设置,如自由度和控制器类型。然后你可以通过使用这些滑块来微调你的控制器,这可以帮助你改变参考跟踪和干扰抑制之间的平衡。勾选此复选框,您还可以显示系统响应特性,如上升时间和超调,并确保控制器满足您的设计要求。
如果您想与他人分享您的工作,您可以简单地与它们分享此实时脚本,并且他们可以使用不同的参数来提出新的控制器设计。或者,您可以通过在每个任务上选择此选项,然后共享生成的代码来隐藏交互式用户界面。
有关实时编辑任务的更多信息,请查看文档。