Simulin金宝appk上的Guy

金宝appSimulink &基于模型的设计

系统对象编辑器增强

今天,我很高兴地欢迎客座博主Jacob Halbrooks来描述MATLAB编辑器的增强功能,以帮助编辑系统对象

雅各布·哈尔布鲁克斯,客座博主

在R2016a中,MATLAB编辑器包含了帮助您编写系统对象的新工具。当您创建一个新的System对象或打开一个现有的System对象时,会出现这些工具。在这里,我们将使用这些工具来帮助我们编写一个简单的移动平均滤波器,用于MATLAB或Simulink。金宝app

增强的MATLAB编辑器

我们首先在MATLAB中创建一个新的System对象。从MATLAB Home选项卡,选择然后选择系统对象>基本.使用基本System对象的模板代码创建一个新文档。此外,观察新事物系统对象工具条部分:

将来发布

此部分包括用于插入代码、显示代码大纲(分析)和预览系统块对话框的工具。

让我们将System对象的名称更改为“MovingAverageFilter”,更新类注释,并保存它。这给了我们一个很好的开始:

默认系统对象模板

预览对话框

MATLAB系统块的一个主要特征是它为您创建一个免费对话框.在MATLAB编辑器中,您现在可以在创建系统块或打开Simulink之前预览块对话框。金宝app的顶部系统阻止按钮,你会看到对话框打开:

对话框中预览

您可以保持此对话框打开,当您将更改保存到System对象时,它将自动更新。

插入属性和状态

我们的移动平均过滤器应该有一个用于窗口长度的公共属性和一个用于保存预先计算的常量的私有属性,这是一个只计算一次的值。此外,过滤器需要一个离散状态属性。从工具条中,下拉插入属性菜单。该菜单列出了System对象中使用的最常见的属性类型,以及一个自定义选项,以允许您使用所选的属性定义属性。选择数字对于窗口长度属性:

插入属性

为这种类型的属性插入了一段新的代码,并选择了属性的名称,以便您可以轻松地输入重命名它:

重命名属性

重命名属性,并给它一个默认值和注释:

重命名属性

保存文件并注意对话框是如何更新的:

更新的对话预览

类中添加私有属性插入属性菜单并命名为“pCoefficients”。属性可以添加状态插入的状态工具条上的按钮:

插入的状态

删除多余的空间和未使用的属性代码块,System对象现在看起来像这样:

整体

插入方法

现在让我们通过实现System对象的方法来定义它的行为:

定义方法

虽然已经实现了它的算法,但我们希望System对象有一个额外的特性,即验证输入数据。为了发现实现该特性的方法,我们可以选择插入方法按钮。这将打开一个库,其中列出了完整的System对象API:

插入方法

图库显示了已经实现的方法,并允许您浏览其他方法并选择一个方法进行插入。“输入和输出”组中的“验证输入”方法听起来像我们想要的,所以选择它。插入如下代码:

验证输入

现在我们实现了方法,System对象也完成了。最终版本为:

最后过滤

System对象现在可以在MATLAB或Simulink中使用金宝appMATLAB系统块

现在轮到你了

我们希望对MATLAB编辑器的这种增强将使您更容易地创建系统对象。试一试,让我们知道你的想法,留下一个这里的评论

|

评论

如欲留言,请点击在这里登录您的MathWorks帐户或创建一个新帐户。