Как обнаружить 2-й переход к точке Simulink - PullRequest
0 голосов
/ 23 февраля 2019

Как обнаружить 2-й падающий переход, когда он достигает 2-й точки.После второго пересечения сигнал снова возрастет, а затем повторяется.Каждый раз, когда сигнал падает до 20 (во второй раз), я хочу захватить его через реляционный блок, как выходной сигнал на изображении

Входной сигнал: Input Signal

Модель: Model Выход Output

Ответы [ 2 ]

0 голосов
/ 25 февраля 2019

Используя приведенный выше ответ Фила, я смог создать свою версию без использования триггерной подсистемы

Пример ответа

0 голосов
/ 25 февраля 2019

Есть несколько способов сделать это.Один из подходов заключается в создании сработавшего счетчика с использованием Триггерной подсистемы , при этом счетчик сбрасывается сам, если счетчик пытается подняться выше 2.

Пример этого показан ниже.Триггер генерируется путем сравнения вашего ввода с константой (в данном случае 20) и увеличения счетчика на основе нарастающего фронта этого триггера.Инициализируйте счетчик на 1, затем либо

  1. увеличьте счетчик, если значение счетчика в настоящее время меньше 1.
  2. , сбросьте счетчик на 1, если счетчикуже на 2.

В этом примере счетчик сбрасывает каждое второе пересечение порога.

enter image description here

Если важна типизация данных, это также можно сделать с использованием логических / логических значений (т. Е. True и False), а не 1 и 2, использованных в примере.

...