ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
9 мая
1425559 Топик полностью
Nikolay_Po (12.04.2024 10:47, просмотров: 50) ответил General на Спасибо, посмотрел. Скорее всего то что надо.
Рекомендую поиграться в "GNU Octave" или "CRAN R". Там очень просто применять взаимокорреляцию, Фурье и прочее - всё на высоком уровне. По ссылкам - описание функции кросскорреляции. И видео, как применять. 

https://octave.sourceforge.io/signal/function/xcorr.html

youtube


К сожалению, существенное время уходит, чтобы разобраться, как импортировать ваши сигналы из оборудования в ПО. И ещё сколько-то, чтобы разобраться с выводом графиков (видео довольно долгое поэтому). Зато потом, легко выполнять проверки с различными окнами, задержками, множителями, детекторами. Когда наиграетесь, будет понятно, с какими параметрами и требованиями можно реализовывать в железе.

В вашем случае, вероятно, график кросс-корреляции, будет наподобие частокола, если сигналы богаты гармониками. Но простой выбор максимума должен сработать.

Я так делал кросс-коррелятор для определения скорости потока по пересечению лучей света пузырьками воздуха. В поток нарочно вводились пузырьки, чтобы их обнаруживали светодиоды. И кросскорелляцией между несколькими каналами, с наложением окон по времени для непрерывности, определял скорость. Алгоритм работал на dsPIC33.