Поразите пересечение

Обнаружьте точку пересечения

  • Библиотека:
  • Simulink / Разрывы

Описание

Блок Hit Crossing обнаруживает, когда входной параметр достигает Хита, пересекающего значение параметров смещения в направлении, заданном Хитом, пересекающим свойство направления.

Можно сконфигурировать блок, чтобы вывести 1 или 0 signal или SimEvents® сообщение. Смотрите Вывод для получения дополнительной информации.

Порты

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

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

Входной сигнал, который обнаруживает блок, когда это достигает смещения в заданном направлении.

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

Вывод

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

Выведите указание, если входной сигнал пересек смещение хита. Этот порт только видим, когда вы устанавливаете флажок параметра выходного порта Show.

Вывод сигнала

Если вы устанавливаете флажок выходного порта Show и устанавливаете параметр Output type на Signal, блок вывод указывает, когда пересечение происходит.

  • Если входной сигнал является точно значением значения смещения после того, как пересечение хита обнаруживается в заданном направлении, блок продолжает выводить значение 1.

  • Если входные сигналы в двух смежных точках заключают в скобки значение смещения, блок выводит значение 1 на шаге второго раза.

  • Если флажок выходного порта Показа не устанавливается, блок гарантирует, что моделирование находит точку пересечения, но не генерирует вывод.

  • Если начальный сигнал равен значению смещения, блок выходные параметры 1 только если направление пересечения Хита свойство установлено в either.

  • Если сигналы Булевой логики включены, то выводом является Boolean.

Сообщение SimEvents Вывод

Блок Hit Crossing может также вывести сообщение SimEvents, когда Output Type установлен в Message.

  • Если входной сигнал пересекает значение смещения в заданном направлении, блок выводит сообщение.

  • Если входной сигнал достигает значения смещения в заданном направлении и остается там, блок выводит одно сообщение во время хита и одно сообщение, когда сигнал оставляет значение смещения.

  • Если начальный входной сигнал равен значению смещения, блок выводит сообщение со значением Crossing Type None, только если направление пересечения Хита установлено в either.

SimEvents обмениваются сообщениями, выходным сигналом является struct с четырьмя полями.

Это поле показывает направление, в котором сигнал пересекает Хит, пересекающий значение смещения. Отрицательный, Нуль, и Положительный задан относительно значения смещения. Типом данных является slHitCrossingType, который является перечислимым типом данных. Смотрите Использование Перечислимые Данные в Моделях Simulink для получения дополнительной информации. Например, если бы HitCrossingOffset установлен в 2, возрастающий сигнал, пересекающий это значение смещения, был бы зарегистрирован как пересечение хита NegativeToPositive.

Примечание

Пересечение хита зарегистрировано на основе Хита, пересекающего установку направления. Другими словами, если вы устанавливаете направление пересечения Хита обнаруживать пересечение хита falling, хит NegativeToPositive не зарегистрирован.

Примечание

В блоке SimEvents, если Crossing Type сущности является NegativeToPositive hitcrossing затем, entity.CrossingType == slHitCrossingType.NegativeToPositive возвращает логическую единицу (true).

Если сигнал достигает значения HitCrossingOffset и содержит его, единственный NegativeToZero или PositiveToZero, в зависимости от направления, хит указан во время пересечения хита.

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

Для сигналов n, передаваемых блоку Hit Crossing, это поле обозначает, какой сигнал имел событие пересечения хита. Для матричного входного параметра это поле следует за MATLAB® линейная индексация. Смотрите Индексацию массива (MATLAB).

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

Время T события пересечения хита.

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

Поразите значение смещения пересечения, как задано Хитом, пересекающим параметр смещения.

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

Типы данных: удвойтесь | булевская переменная | struct

Примечание

Если SimEvents передают перекрестные контуры модели - ссылки выходного сигнала, или используется в качестве входного параметра к графику Stateflow®, необходимо создать объект шины для сообщения. Смотрите Советы.

Параметры

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

Задайте значение, которое обнаруживает блок, когда входной параметр пересекается в направлении, заданном направлением пересечения Хита.

Программируемое использование

Блочный параметр: HitCrossingOffset
Ввод: символьный вектор
Значения: действительные значения
Значение по умолчанию: '0'

Направление, от которого входной сигнал приближается к смещению пересечения хита для пересечения, которое будет обнаружено.

Когда установлено в either, блок служит почти равным блоком, полезным в работе вокруг ограничений в конечной математике и компьютерной точности. Используемый по этим причинам, этот блок может быть более удобным, чем добавление логики к вашей модели, чтобы обнаружить это условие.

Когда направление пересечения Хита свойство установлено в either и модель используют решатель фиксированного шага, блок имеет следующее поведение. Если выходной сигнал равняется 1, блок устанавливает выходной сигнал на 0 на следующем временном шаге, если входной сигнал не равняется значению смещения.

Программируемое использование

Блочный параметр: HitCrossingDirection
Ввод: символьный вектор
Значения: 'любой' | 'повышающийся' | 'падение'
Значение по умолчанию: 'either'

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

Программируемое использование

Блочный параметр: ShowOutputPort
Ввод: символьный вектор
Значения: 'off' | 'on'
Значение по умолчанию: 'on'

Когда Выходной тип установлен в Signal, выходной сигнал установлен в тот каждый раз, когда входной сигнал пересекает Хит, пересекающий значение смещения в направлении пересечения Хита, и является нулем в других случаях.

Когда Выходной тип установлен в Message, выходной сигнал становится сообщением SimEvents.

Программируемое использование

Блочный параметр: HitCrossingOutputType
Ввод: символьный вектор
Значения: 'Сигнал' | 'сообщение'
Значение по умолчанию: 'Signal'

Выберите, чтобы включить обнаружение пересечения нулем. Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.

Программируемое использование

Блочный параметр: ZeroCross
Ввод: вектор символа, строка
Значения: 'off' | 'on'
Значение по умолчанию: 'on'

Задайте частоту дискретизации как значение кроме-1. Для получения дополнительной информации см. Настройку времени выборки.

Зависимости

Этот параметр не видим, если он явным образом не установлен в значение кроме -1. Чтобы узнать больше, смотрите Блоки, для Которых Не Рекомендуется Частота дискретизации.

Программируемое использование

Блочный параметр: 'SampleTime'
Ввод: символьный вектор
Значения: скаляр
Значение по умолчанию: '-1'

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

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

Типы данных

'double'

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

No

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

No

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

No

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

Yes

Советы

Если блок Hit Crossing сконфигурирован, чтобы вывести сообщение SimEvents и выходной сигнал:

  • Кресты в или из модели, на которую ссылаются,

  • Питается к входному параметру диаграммы Stateflow

затем необходимо создать объект шины для сигнала сообщения. В Окне Команды MATLAB запустите Simulink.createHitCrossMessage, чтобы проверить на и, в случае необходимости, создать хит, пересекающий объект шины сообщения в базовом рабочем пространстве.

Установите тип данных соответствующего порта к Bus: HitCrossMessage.

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

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

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