If Action Subsystem

Подсистема, выполнение которой включено Если блок

  • Библиотека:
  • Simulink / Ports & Subsystems

  • If Action Subsystem block

Описание

Блок If Action Subsystem является блоком Subsystem, предварительно сконфигурированным как начальная точка для создания подсистемы, выполнением которой управляет блок If. Блок If выполняет логическое выражение и затем, в зависимости от результата оценки, выводит сигнал действия. Выполнением подсистемы управляет блок Action Port, помещенный в подсистеме.

Simulink® игнорирует приоритетный набор на блоке If Action Subsystem. Вместо этого установите приоритет на блоке If, который инициирует выполнение подсистемы.

Объедините сигналы от блоков If Action Subsystem

В этом примере показано, как объединить сигналы, которыми управляет блок If. Блок If выбирает выполнение блока If Action Subsystem из набора подсистем. Независимо от которой подсистемы, Если блок выбирает, можно создать один сигнал с блоком Merge. Чтобы открыть модель, смотрите ex_if_block.

Все блоки в блоке If Action Subsystem должны выполниться на том же уровне как ведущий блок If. Можно удовлетворить этому требованию путем установки параметра шага расчета для каждого блока к любому наследованному (-1) или то же значение как шаг расчета блока If.

Поддержка типа данных с фиксированной точкой

Блок If непосредственно не поддерживает типы данных с фиксированной точкой. Однако можно использовать блок Compare To Constant, чтобы работать вокруг этого ограничения.

Рассмотрите следующую модель с плавающей точкой без типов данных с фиксированной точкой. Чтобы открыть модель, смотрите ex_if_block_floating_point.

В этой модели блоки If Action Subsystem используют свои настройки по умолчанию. Параметры симуляции устанавливаются на свои значения по умолчанию за исключением параметров, перечисленных в следующей таблице.

Панель параметра конфигурации

Параметр

Установка

Решатель

Время начала

0.0

 

Время остановки

1.0

 

Ввод

Fixed-step

 

Решатель

discrete (no continuous states)

 

Размер фиксированного шага

0.1

Параметры блоков установлены в свои значения по умолчанию за исключением параметров, перечисленных в следующей таблице.

Блок

Параметр

Установка

Повторение ступеньки последовательности

Вектор из выходных значений

[-2 -1 1 2].'

Повторение последовательности Stair1

Вектор из выходных значений

[0 0 0 0 1 1 1 1].'

Если

Количество входных параметров

2

 

Если выражение

(u1 > 0) | (u2 > 0.5)

 

Еще покажите условие

Выбранный

Постоянный

Постоянное значение

-4

Constant1

Постоянное значение

4

Осциллограф

Количество осей

3

 

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

1

Для этой модели, когда вход u1 больше 0 или вход u2 больше 0.5, выходом является 4. В противном случае выходом является -4. Блок Scope отображает вывод от блока Merge с входными параметрами u1, и u2.

Можно реализовать эту блок-схему как модель с типами данных с фиксированной точкой. Чтобы открыть модель, смотрите ex_if_block_fixed_point.

Repeating Sequence Stair блокирует выходные типы данных с фиксированной точкой.

Блоки Compare To Constant реализуют две части, Если выражение, которое используется в блоке If в версии с плавающей точкой модели, (u1 > 0) и (u2 > 0.5). OR операция, (u1|u2), может все еще быть реализован в блоке If. Для модели фиксированной точки выражение должно быть частично реализовано за пределами блока If, как это находится в этой модели.

Блок и параметры симуляции для модели фиксированной точки эквивалентны для модели с плавающей точкой за следующими исключениями и сложениями:

Блок

Параметр

Установка

Сравните с постоянным

Оператор

>

 

Постоянное значение

0

 

Выходные данные вводят режим

Boolean

 

Включите обнаружение пересечения нулем

off

Сравните с Constant1

Оператор

>

 

Постоянное значение

0.5

 

Выходные данные вводят режим

Boolean

 

Включите обнаружение пересечения нулем

off

Если

Количество входных параметров

2

 

Если выражение

u1|u2

Порты

Входной параметр

развернуть все

Размещение блока Inport в блоке подсистемы добавляет внешний входной порт в блок. Метка порта совпадает с именем блока Inport.

Используйте блоки Inport, чтобы получить сигналы от окружения.

Типы данных: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Размещение блока Action Port в блоке подсистемы добавляет внешний входной порт в блок и изменяет блок в If Action Subsystem.

Точечные штриховые пунктиры от блока Switch Case до блока Switch Case Action Subsystem представляют сигналы действия. Сигнал действия является управляющим сигналом, соединенным с портом действия блока Subsystem Действия Случая Переключателя. Сообщение на сигнале действия инициирует выполнение подсистемы.

Типы данных: action

Вывод

развернуть все

Размещение блока Outport в блоке подсистемы добавляет выходной порт из блока. Метка порта на блоке подсистемы является именем блока Outport.

Используйте блоки Outport , чтобы отправить сигналы в окружение.

Типы данных: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Примеры модели

Характеристики блока

Типы данных

Boolean[a] | шина[a] | дважды[a] | перечислимый[a] | фиксированная точка[a] | половина[a] | целое число[a] | один[a] | строка[a]

Прямое сквозное соединение

no

Многомерные сигналы

ограниченный[a]

Сигналы переменного размера

ограниченный[a]

Обнаружение пересечения нулем

no

[a] Фактическая поддержка типа данных или возможности зависит от реализации блока.

Расширенные возможности

Преобразование фиксированной точки
Спроектируйте и симулируйте системы фиксированной точки с помощью Fixed-Point Designer™.

Смотрите также

Блоки

Представлено до R2006a