MATLAB系统块
为什么使用MATLAB系统块?
系统对象让您使用MATLAB实现算法®语。这MATLAB系统块使您可以在simulink中使用系统对象万博1manbetx®。
这MATLAB系统块让你:
在MATLAB和SIMULINK中共享同一System Object™万博1manbetx
将系统对象与Simulink的集成在一起万博1manbetx
单位在MATLAB中测试您的算法,然后在Simulink中使用它万博1manbetx
自定义对话框自定义
通过更好的初始化有效模拟
处理状态
使用端口标签自定义块图标
访问两个仿真模式
选择合适的块类型
有几种在Simulink中包括MATLAB算法的机制,例如:万博1manbetx
MATLAB系统堵塞
MATLAB功能堵塞
解释的MATLAB功能堵塞
2级MATLAB S功能堵塞
有关选择合适块的帮助,请参阅自定义块功能的比较。
系统对象
在使用之前MATLAB系统块,您必须有一个系统对象才能与块相关联。系统对象是一种专门的MATLAB类。系统对象专门设计用于实现和模拟动态系统,其输入随时间变化。
有关创建系统对象的更多信息,请参阅自定义simulink的系统对象万博1manbetx。
笔记
要在Simulink环境中使用系统对象,它必须具有一个无参数的构造万博1manbetx函数。默认情况下,系统对象构造函数具有此功能,您无需定义自己的构造函数。但是,如果创建自己的系统对象构造函数,则必须能够在没有参数的情况下调用它。
系统对象存在于其他MATLAB产品中。s manbetx 845MATLAB系统块仅支持用M万博1manbetxATLAB语言编写的系统对象。另外,如果系统对象具有相应的simulink块,则无法实现万博1manbetxMATLAB系统阻止它。
解释执行或代码生成
您可以使用MATLAB系统通过解释的执行或代码万博1manbetx生成模拟模拟模型中的块。
通过解释的执行,该模型使用MATLAB执行引擎模拟块。
使用代码生成,模型使用代码生成来模拟块(需要使用支持代码生成的MATLAB代码子集)。万博1manbetx有关支持功能的列表,请参见万博1manbetx支持C/C ++代码生成的功能和对象万博1manbetx。
默认输入信号属性
如果一个MATLAB系统块具有一个或多个输入,这些输入与另一个块的输出端口无关或连接到具有指定属性的端口,未指定属性的默认输入信号属性为:
数据属性 | 默认 |
---|---|
数据类型 | 双倍的 |
尺寸 | [1 1]标量 |
复杂 | 真实的 |
MATLAB系统块限制
这些功能目前不支持。万博1manbetx
类别 | 限制描述 | 解决方法 |
---|---|---|
系统对象 |
系统对象的可调逻辑和字符向量属性是无untunable参数MATLAB系统堵塞。 |
- |
数据类型 |
|
- |
采样时间 |
不能用MATLAB系统块以建模连续时间或多条系统。 |
- |
线性化 |
不能使用基于雅各比亚的线性化。 |
- |
全局变量 |
模型配置参数中定义的全局变量模拟目标>自定义代码窗格和系统对象引用的窗格未与状态流共享®和MATLAB功能堵塞。 |
打开导入自定义代码选项在里面模拟目标配置参数对话框的窗格。 |
调试 |
MATLAB调试基于代码生成的模拟。 |
设置MATLAB系统堵塞模拟使用参数为 |
定点工具 |
定点工具不返回设计最小/最大,最小/最大记录和自动化信息MATLAB系统块。 |
- |
模型覆盖分析(万博1manbetxSimulink Coverage™软件) |
万博1manbetxSimulink覆盖范围无法执行模型分析MATLAB系统与模拟使用参数设置为 |
- |
检查模型兼容性(万博1manbetxSimulink Design Verifier™软件) |
万博1manbetxSimulink设计验证者无法执行包含一个模型或子系统的兼容性检查MATLAB系统堵塞。 |
- |
MATLAB系统和系统对象示例
例如MATLAB系统和系统对象,请参阅:
例子 | 描述 |
---|---|
此示例显示了如何使用MATLAB系统块以说明大量定律。由于使用MATLAB函数不支持代码生成,因此该示例使用传播方法和解释执行。万博1manbetx |
|
此示例显示了如何使用MATLAB系统在输入或输出处具有非虚拟总线的块。由于使用Simulink总线,万博1manbetx该示例使用了传播方法。该示例使用模型回调定义MATLAB基本工作区中的总线类型。 |