#matlab #signal-processing #delay
#matlab #обработка сигналов #задержка
Вопрос:
У меня непрерывный процесс с 3 входами и 1 выходом. 3 входа последовательны по времени: вход 1 отстает от выхода на 30 минут, вход 2 на 15 и т.д.
Мой набор данных ниже показывает запуск системы после завершения работы:
I1 I2 I3 Out
0 0 0 0
3 0 0 0
8 4 0 0
13 8 6 0
22 13 9 3.2
Видно, как запустился input1 и все остальное последовало.
Мой вопрос: что я должен искать в Matlab, чтобы определить такую задержку ввода-вывода для более сложных наборов данных?
Комментарии:
1. Капитан Очевиден на помощь: вы должны искать (на любом языке, не только MATLAB) изменения во входных значениях.
Ответ №1:
Вам следует внимательно присмотреться к xcorr
xcorr выполняет взаимную корреляцию между двумя векторами (обычно сигналами времени) и проверяет их соответствие в зависимости от временного сдвига между сигналами. Постоянная задержка ввода-вывода должна отображаться как локальное максимальное значение для коэффициента корреляции.
Комментарии:
1. Это может работать только в том случае, если входные данные действительно коррелированы — что может быть, а может и не быть.
2. Какой подход для вас более перспективен?