Обнаружьте точку пересечения
Simulink / Разрывы
Simulink / сообщения & События
HDL Coder / Разрывы
SimEvents
Блок Hit Crossing обнаруживает, когда вход достигает значения параметров Hit crossing offset в направлении, заданном свойством Hit crossing direction.
Можно сконфигурировать блок, чтобы вывести 1
или 0
сигнал, SimEvents® обменивайтесь сообщениями, или событие вызова функции. Смотрите Выход для получения дополнительной информации.
Port_1
— Входной сигналВходной сигнал, который обнаруживает блок, когда это достигает смещения в заданном направлении.
Типы данных: double
Port_1
— Выходной сигналВыведите указание, если входной сигнал пересек смещение хита. Этот порт отображается только, когда вы устанавливаете флажок параметра Show output port.
Выход сигнала
Если вы устанавливаете флажок Show output port и устанавливаете параметр Output type на Signal
, блок выход указывает, когда пересечение происходит.
Если входной сигнал является точно значением значения смещения после того, как пересечение хита обнаруживается в заданном направлении, блок продолжает выводить значение 1.
Если входные сигналы в двух смежных точках заключают в скобки значение смещения, блок выводит значение 1 на шаге второго раза.
Если флажок Show output port не устанавливается, блок гарантирует, что симуляция находит точку пересечения, но не генерирует выход.
Если начальный сигнал равен значению смещения, блок выходные параметры 1, только если свойство Hit crossing direction установлено в either
.
Если сигналы Булевой логики включены, то выходом является Boolean
.
Сообщение SimEvents Выход
Блок Hit Crossing может также вывести сообщение SimEvents, когда параметр Output type устанавливается на Message
.
Если входной сигнал пересекает значение смещения в заданном направлении, блок выводит сообщение.
Если входной сигнал достигает значения смещения в заданном направлении и остается там, блок выводит одно сообщение во время хита и одно сообщение, когда сигнал оставляет значение смещения.
Если начальный входной сигнал равен значению смещения, блок выводит сообщение с Crossing Type
значение None
только если Hit crossing direction установлен в either
.
Выходным сигналом сообщения SimEvents является struct
с четырьмя полями.
Вызов функции Выход
Блок Hit Crossing может также вывести событие вызова функции, когда параметр Output type устанавливается на Function-Call
.
Каждый раз, когда входной сигнал пересекает значение смещения в заданном направлении, блок выводит одно событие вызова функции.
Событие вызова функции может быть отправлено во входной порт вызова функции модели вызова функции или подсистемы вызова функций.
Выход эквивалентен выходу блока Function-Call Generator на каждом временном шаге параметром Number of iterations того набора блока к 1
.
CrossingType
— Направление пересечения нулемNone
| NegativeToPositive
| NegativeToZero
| ZeroToPositive
| PositiveToNegative
| PositiveToZero
| ZeroToNegative
Это поле показывает направление, в котором сигнал пересекает значение Hit crossing offset. Отрицательный, Нуль, и Положительный задан относительно значения смещения. Типом данных является slHitCrossingType
который является enumerated data type. Смотрите Использование Перечислимые Данные в Моделях Simulink для получения дополнительной информации. Например, если HitCrossingOffset
установлен в 2, возрастающий сигнал, пересекающий это значение смещения, был бы зарегистрирован как NegativeToPositive
поразите пересечение.
Примечание
Пересечение хита зарегистрировано на основе установки Hit crossing direction. Другими словами, если вы устанавливаете Hit crossing direction обнаруживать falling
поразите пересечение, NegativeToPositive
хит не зарегистрирован.
Примечание
В блоке SimEvents, если Crossing Type
из сущности NegativeToPositive
hitcrossing затем entity.CrossingType == slHitCrossingType.NegativeToPositive
возвращает логическую единицу (true)
.
Если сигнал достигает HitCrossingOffset
значение и содержит его, один NegativeToZero
или PositiveToZero
, В зависимости от направления хит указан во время пересечения хита.
Типы данных: slHitCrossingType
Index
— Индекс входного сигнала, в котором событие пересечения хита имеет местоДля сигналов n, передаваемых блоку Hit Crossing, это поле обозначает, какой сигнал имел событие пересечения хита. Для матричного входа это поле следует за MATLAB® линейная индексация. Смотрите Индексацию массива.
Типы данных: uint32
Time
— Время события пересечения хитаВремя T события пересечения хита.
Типы данных: double
Offset
— Поразите пересекающееся значение для обнаружения
(значение по умолчанию) | вещественные значенияПоразите значение смещения пересечения, как задано Хитом, пересекающим параметр смещения.
Типы данных: double
Типы данных: double |
Boolean
| struct
Примечание
Если выходной сигнал сообщения SimEvents пересекает контуры модели - ссылки или используется в качестве входа к Stateflow® стройте диаграмму, необходимо создать объект шины для сообщения. Смотрите Советы.
Hit crossing offset
— Поразите пересекающееся значение для обнаружения
(значение по умолчанию) | вещественные значенияЗадайте значение, которое обнаруживает блок, когда вход пересекается в направлении, заданном Hit crossing direction.
Параметры блоков: HitCrossingOffset |
Ввод: символьный вектор |
Значения: вещественные значения |
Значение по умолчанию: '0' |
Hit crossing direction
— Направление входного сигнала, чтобы поразить пересечениеeither
(значение по умолчанию) | falling
| rising
Направление, от которого входной сигнал приближается к смещению пересечения хита для пересечения, которое будет обнаружено.
Когда установлено в either
, блок служит почти равным блоком, полезным в работе вокруг ограничений в конечной математике и компьютерной точности. Используемый по этим причинам, этот блок может быть более удобным, чем добавление логики к вашей модели, чтобы обнаружить это условие.
Когда свойство Hit crossing direction установлено в either
и модель использует решатель фиксированного шага, блок имеет следующее поведение. Если выходной сигнал равняется 1, блок устанавливает выходной сигнал на 0 на следующем временном шаге, если входной сигнал не равняется значению смещения.
Параметры блоков: HitCrossingDirection |
Ввод: символьный вектор |
Значения: 'either' | 'rising' |'falling' |
Значение по умолчанию: 'either' |
Show output port
— Отобразите выходной портoff
(значение по умолчанию) | on
Если выбрано, создайте выходной порт на значке блока.
Параметры блоков: ShowOutputPort |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'on' |
Output type
— Выберите сигнал, сообщение или вызов функции выходSignal
(значение по умолчанию для Simulink®) | Message
(значение по умолчанию для SimEvents) | Function-Call
Когда Output type установлен в Signal
, выходной сигнал установлен в тот каждый раз, когда входной сигнал пересекает значение Hit crossing offset в Hit crossing direction и является нулем в других случаях.
Когда Output type установлен в Message
, выходной сигнал становится сообщением SimEvents.
Когда Output type установлен в Function-Call
, выходной сигнал становится событием вызова функции.
Параметры блоков: HitCrossingOutputType |
Ввод: символьный вектор |
Значения: 'Signal' | 'Message' | 'Function-Call' |
Значение по умолчанию: 'Signal' |
Enable zero-crossing detection
— Включите обнаружение пересечения нулемon
(значение по умолчанию) | off
Выберите, чтобы включить обнаружение пересечения нулем. Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.
Параметр:
ZeroCross |
Ввод: вектор символов, строка |
Значения:
'on' | 'off' |
Значение по умолчанию:
'on' |
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Если блок Hit Crossing сконфигурирован, чтобы вывести сообщение SimEvents и выходной сигнал:
Кресты в или из модели, на которую ссылаются,
Питается вход диаграммы Stateflow
затем необходимо создать объект шины для сигнала сообщения. В командном окне MATLAB запустите Simulink.createHitCrossMessage
чтобы проверять на и, в случае необходимости, создают хит, пересекающий объект шины сообщения в базовом рабочем пространстве.
Установите тип данных соответствующего порта к Bus: HitCrossMessage
.
Не рекомендуемый для производственного кода.
Не поддерживает не плавающий тип данных для целей ert.
HDL Coder™ обеспечивает дополнительные параметры конфигурации, которые влияют на реализацию HDL и синтезируемую логику.
Этот блок имеет одну, архитектуру HDL по умолчанию.
ConstrainedOutputPipeline | Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. |
InputPipeline | Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
OutputPipeline | Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
Направлением пересечения Хита должен быть rising
или falling
.
Генерация HDL-кода не поддерживается когда Output Type
установлен в Message
.
Обнаружение пересечения нулем | Реализуйте логические сигналы как булевы данные (по сравнению с двойным)
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.