主要内容

na_0002:基本逻辑和数值运算的适当使用

规范来源

控制算法建模规范 - 使用 MATLAB®、Simulink® 和 Stateflow®

子 ID 建议

  • NA-MAAB - a、b

  • JMAAB - a、b

MATLAB 版本

全部

规则

子 ID a

逻辑信号不应连接到处理数值信号的模块。

自定义参数

接收数值信号的模块

示例 - 正确

比较数值以确定它们是否相等。

示例 - 不正确

逻辑输出直接连接到处理数字输入的模块的输入。

将逻辑信号与数值进行比较。

子 ID b

数字信号不应连接到处理逻辑信号的模块。

自定义参数

接收逻辑信号的模块

示例 - 正确

逻辑信号通过逻辑运算被反转

使用逻辑运算来计算逻辑信号。

示例 - 不正确

逻辑信号通过逻辑运算被反转

用于执行逻辑运算的模块被用来执行数值运算。数值输出连接到了处理逻辑输入的模块的输入。

用于执行数值运算的模块被用来执行逻辑运算。可以向模块提供除逻辑值之外的输入。但是,Enable 端口模块只能接收值为 On/Off 的逻辑信号。当 Product 模块的数值运算结果被连接到一个只接收逻辑值的 Enable 端口模块时,它会执行逻辑运算。

理由

子 ID a、b:

  • 当数值和逻辑值被等同对待时,原始意图就会变得不明确,模型中的下一个运算可能会被错误解释,从而进一步加剧错误。

验证

模型顾问检查:检查基本逻辑和数值运算 (Simulink Check)

上次更改

R2020a

另请参阅

版本历史记录

在 R2020a 中推出