Цитата(ivan24190 @ Nov 13 2017, 20:06)

Здравствуйте, уважаемые форумчане.
Есть схема получения сигнала с вихревого датчика (для расходомера).
Контроллер стм32ф373. Суть в том, что на выходе датчика имеем частоту,
пропорционально расходу.
Заказчик настаивает на том чтобы для определения частоты использовалось
быстрое преобразование Фурье на 4096 точек.
Но я считаю, что ввиду ограничения ОЗУ и достаточно длительного времени
обработки целесообразнее посчитать частоту с помощью таймера в режиме
захвата и компаратора, предварительно отфильтровав сигнал.
Однако заказчик, считает, что так мы получим меньшую точность и гибкость.
Объясните, пожалуйста в чем я заблуждаюсь и какие подводные камни могут
быть при применении таймера, а не преобразования Фурье. Потому как по мне
Фурье для такого МК все-таки сложно, так как это сожрет все ресурсы ядра и ОЗУ.
Заранее спасибо.
В чем заказчик прав, так это в том, что интегральный метод даст достоверный результат. Как верно замечали просто счетчик будет шумы ловить, но кроме преобразования Фурье есть интегральные методы и полегче. Например считать автокорреляционную функцию за несколько периодов. Это можно делать убирая результат ушедший за окно и добавляя новый, что несоизмеримо легче чем подсчитывать каждый раз и тем более Фурье. Корреляционная функция будет колебаться вслед за сигналом, но уже без шума. Второй дешевый способ это инерционный измеритель фазы. Будет интересно -- расскажу как сделать.