Simulink: взаимная корреляция в реальном времени

Я работаю над проектом, это сложно объяснить полностью, но это выглядит следующим образом:

У нас есть 2 сигнала A и B, где B — эхо-сигнал A с задержкой во времени. Я хочу использовать взаимную корреляцию в реальном времени, чтобы показать, что временная задержка останется постоянной, пока среда, через которую проходят сигналы, не изменится.

Проблемы возникают из-за отсутствия у меня опыта работы как с Simulink, так и со статистикой связи и т. Д.

Итак, как мне это сделать? У меня есть два непрерывных сигнала A и B, и я считаю, что мне нужно преобразовать их в дискретные сигналы, а затем использовать обработку на основе кадров и XCORR... но я просто не знаю, как это сделать.

Кто-нибудь может помочь? Или даже привести пример того, как перекрестно коррелировать два непрерывных сигнала / пример того, как использовать XCORR и обработку на основе кадров?


person James Jonesy    schedule 30.03.2016    source источник
comment
Обновление! Кто-то объяснил мне, как работает буферизация, так что теперь у меня есть кадры, и я хочу найти временную задержку между двумя каналами.   -  person James Jonesy    schedule 31.03.2016


Ответы (1)


Поскольку с момента вашего вопроса прошел месяц, я предполагаю, что вы, вероятно, уже нашли ответ.

Я могу объяснить, как это должно работать в сценарии. xcorr — это функция, которая в основном используется, причем первые 2 входа — это сигналы A и B. При желании вы можете добавить третий параметр для определения интервала корреляции. Если вы буферизуете свои сигналы, это бессмысленно, так как вместо этого вы можете просто выбрать подходящий размер буфера, который будет использоваться. Если вы просто случайно нанесете результат дискретной корреляции, задержка будет указана в виде выборок, вы можете получить истинное значение задержки из разницы между пиковым значением и нулевой задержкой (при условии, что существует не очень большое количество шума, который может исказить результат).

person Blaze    schedule 26.04.2016