na_0003: Simple logical expressions in If Condition block

ID: Заголовок

na_0003: Простые логические выражения, в Если блок Condition

Приоритет

Обязательный

Осциллограф

MAAB

Версии MATLAB

Все

Предпосылки

'none'

Описание

Логическое выражение может быть реализовано в, Если блок Condition вместо того, чтобы создать его с блоками логической операции, если выражение содержит два или меньше первичных выражений. Первичное выражение задано как одно из следующего:

  • Вход

  • Константа

  • Постоянный параметр

  • Заключенное в скобки выражение, содержащее операторы кроме нуля или одного экземпляра следующих операторов: <<=>,> =, ~ =, ==, ~. (См. следующие примеры.)

Исключение

Логическое выражение может содержать больше чем два первичных выражения, если оба из следующего верны:

  • Первичные выражения являются всеми входными параметрами

  • Только один тип логического оператора присутствует

Примеры приемлемых исключений

  • u1 || u2 || u3 || u4 || u5

  • u1 && u2 && u3 && u4

Примеры первичных выражений

  • u1

  • 5

  • K

  • (u1 > 0)

  • (u1 <= G)

  • (u1 > U2)

  • (~u1)

  • (EngineState.ENGINE_RUNNING)

Примеры приемлемых логических выражений

  • u1 || u2

  • (u1 > 0) && (u1 < 20)

  • (u1 > 0) && (u2 <u3)

  • (u1 > 0) && (~u2)

  • (EngineState.ENGINE_RUNNING > 0) && (PRNDLState.PRNDL_PARK)

    Примечание

    В этом примере, EngineState.ENGINE_RUNNING и PRNDLState.PRNDL_PARK литералы перечисления.

Примеры недопустимых логических выражений

u1 && u2 || u3

(слишком много первичных выражений)

u1 && (u2 || u3)

(недопустимый оператор в первичном выражении)

(u1 > 0) && (u1 <20) && (u2 > 5)

(слишком много первичных выражений, которые не являются входными параметрами),

(u1 > 0) && ((2*u2) > 6)

(недопустимый оператор в первичном выражении)

Объяснение

  • Удобочитаемость

  • Рабочий процесс

  • Генерация кода

В последний раз измененный

V2.2

Проверка Model Advisor

By Task> Modeling Standards for MAAB> Simulink> Check logical expressions in If blocks

Для получения дополнительной информации проверки смотрите, Регистрируют логические выражения Если блоки (Simulink Check).

Введен в R2010a