Если подсистема действия

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

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

Описание

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

Объедините сигналы от того, Если Подсистема Действия блокируется

Этот пример показывает, как объединить сигналы, которыми управляют Если блок. Если блок выбирает выполнение Если блок Action Subsystem от набора подсистем. Независимо от которой подсистемы, Если блок выбирает, можно создать единственный сигнал с блоком Merge. Открытая модель

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

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

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

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

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

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

Параметр

Установка

Решатель

Время начала

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.

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

Повторяющаяся Ступенька Последовательности блокирует выходные типы данных фиксированной точки.

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

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

Блок

Параметр

Установка

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

Оператор

>

 

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

0

 

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

Boolean

 

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

'off'

Сравните с Constant1

Оператор

>

 

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

0.5

 

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

Boolean

 

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

'off'

Если

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

2

 

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

u1|u2

Порты

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

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

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

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

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка | перечисленный | шина

Размещение Блокировки порта Действия в блоке подсистемы добавляет внешний входной порт к блоку и изменяет блок на Если Подсистема Действия.

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

Типы данных: действие

Вывод

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

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

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

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка | перечисленный | шина

Образцовые примеры

Блокируйте характеристики

Типы данных

double[a] | single[a] | Boolean[a] | base integer[a] | fixed point[a] | enumerated[a] | bus[a] | string[a]

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

No

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

Yes[a]

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

Yes[a]

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

No

A 

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

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

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

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

Была ли эта тема полезной?