主要内容

中使用系统对象的注意事项金宝app

系统中如何使用System对象有不同之处MATLAB系统在仿真软件金宝app®而不是在MATLAB中使用同一个对象®.当使用可变大小的信号和可调参数以及使用System对象作为属性时,可以看到这些差异。

适应信号

要在System对象™中使用可变大小的信号,必须实现传播方法。特别是,使用isOutputFixedSizeImpl方法指定输出是可变大小还是固定大小。解释执行和代码生成模拟方法需要此方法。

可调参数

金宝appSimulink将System对象的公共可调属性注册为相应的可调参数MATLAB系统块。如果System对象属性是可调的,那么它也可以在MATLAB系统块。在运行时,可以使用以下方法之一更改参数。更改应用于模拟循环的顶部。

  • 在MATLAB命令行中,使用set_param修改参数值。

  • 在Simuli金宝appnk编辑器中,编辑MATLAB系统块对话框更改参数值,然后更新块图。

不能从System对象的内部方法更改公共可调属性,例如stepImpl

在模拟期间,在可调参数上设置无效值将导致错误消息并停止模拟。

作为属性的系统对象

MATLAB系统块允许系统对象拥有其他系统对象作为公共或私有属性。然而:

  • 作为公共属性存储的系统对象和其他MATLAB对象是只读的。因此,不能设置参数的值,只能获取参数的值。

  • 属性值存储的系统对象在MATLAB系统块对话框。

默认的属性值

MATLAB不要求对象给属性分配默认值。但是,在Simulink金宝app中,如果System对象的属性没有指定默认值,则相关的对话框参数要求值数据类型是内置的Simulink数据类型。

每个子系统中的系统对象

使用MATLAB系统块内的一个为每个子系统块,实现金宝appsupportsMultipleInstanceImpl方法。这个方法应该返回真正的.的MATLAB系统块为每个对象克隆System对象为每个子系统迭代。

输入验证

在Si金宝appmulink中,使用validateInputsImpl方法只验证输入的属性(大小、数据类型和复杂性)。不要使用此方法验证输入的值。

另请参阅

相关的例子

更多关于