ivan24190 0 13 ноября, 2017 Опубликовано 13 ноября, 2017 · Жалоба Здравствуйте, уважаемые форумчане. Есть схема получения сигнала с вихревого датчика (для расходомера). Контроллер стм32ф373. Суть в том, что на выходе датчика имеем частоту, пропорционально расходу. Заказчик настаивает на том чтобы для определения частоты использовалось быстрое преобразование Фурье на 4096 точек. Но я считаю, что ввиду ограничения ОЗУ и достаточно длительного времени обработки целесообразнее посчитать частоту с помощью таймера в режиме захвата и компаратора, предварительно отфильтровав сигнал. Однако заказчик, считает, что так мы получим меньшую точность и гибкость. Объясните, пожалуйста в чем я заблуждаюсь и какие подводные камни могут быть при применении таймера, а не преобразования Фурье. Потому как по мне Фурье для такого МК все-таки сложно, так как это сожрет все ресурсы ядра и ОЗУ. Заранее спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 13 ноября, 2017 Опубликовано 13 ноября, 2017 (изменено) · Жалоба Суть в том, что на выходе датчика имеем частоту, пропорционально расходу. Заказчик настаивает на том чтобы для определения частоты использовалось быстрое преобразование Фурье на 4096 точек. ТЗ задачи озвучте, а то телепатия глючит слегка :cranky: Выглядит, как масло-масляное , зачем определять какую-то частоту, если датчик ее уже выдает?? Если нужно ее замерить, то никаких ПФ тут не нужно, а вот если преобразовать в соотв. с какими-то физ. величинами, то наверно да, нужно. Изменено 13 ноября, 2017 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan24190 0 13 ноября, 2017 Опубликовано 13 ноября, 2017 (изменено) · Жалоба mantech, частоту, выдаваемую датчиком нужно сначала измерить, а затем по ней рассчитать расход газа. Заказчик настаивает на БПФ. Но я считаю, что частоту сигнала с датчика можно определить и с помощью таймера причем достаточно точно, причем не сильно нагружая контроллер, т.к. ему помимо расчетов необходимо вести обмен по рс485 и выполнять отрисовку на экране. Поэтому и задал вопрос может быть я чего-то не знаю, раз заказчик настаивает именно на БПФ. P.S. Схема разработана ранее и не мной, от меня требуют ее оживить. Изменено 13 ноября, 2017 пользователем ivan24190 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 81 13 ноября, 2017 Опубликовано 13 ноября, 2017 · Жалоба Выглядит, как масло-масляное , зачем определять какую-то частоту, если датчик ее уже выдает?? Там всё просто - за препятствием образуются вихри, с повышением скорости потока по классике растет частота вихрей и меняется амплитуда. Вот по сочетанию частот и амплитуды определяют скорость. Заказчик настаивает на БПФ. Но я считаю, что частоту сигнала с датчика можно определить и с помощью таймера причем достаточно точно, причем не сильно нагружая контроллер, Всё зависит от математики заложенной заказчиком. Частота будет не одна, а целый спектр, и видимо в нём надо найти палку с максимальной амплитудой. Возможно заказчик ныкает алгоритм, что-бы не сперли ноу-хау. А возможно он сам еще не знает и ему нужен инструмент, чтобы выловить зависимости. Но это я телепатирую :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan24190 0 13 ноября, 2017 Опубликовано 13 ноября, 2017 · Жалоба HardEgor, возможно Вы правы. Но наверное и контроллер надо пожирнее бы, а то 24 кб ОЗУ маловато для 4096 точек БПФ. Ладно буду делать Фурье в конце концов воля заказчика. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 13 ноября, 2017 Опубликовано 13 ноября, 2017 · Жалоба а то 24 кб ОЗУ маловато для 4096 точек БПФ. В этом мк так-то 32Кб озу, насколько я помню, для Фурье больше скорость нужна, чем память, а 72мега на М4 кортексе более чем. Но стм делает как правило совместимые по распиновке камни с большими объемами памяти, посмотрите, может и здесь есть что-то... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexvu 5 13 ноября, 2017 Опубликовано 13 ноября, 2017 · Жалоба Как я понимаю, датчик выдает довольно много шумов, из-за чего и нужна какая-то фильтрация для определения центральной частоты, например БПФ (кстати, потом еще надо как-то по спектру определить частоту), а просто таймер только наловит шумов. Но на все это, наверное, есть уже готовая математика, и заказчик просто ее Вам пока не дает всю сразу, чтобы не усложнять этапы разработки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tarbal 4 14 ноября, 2017 Опубликовано 14 ноября, 2017 · Жалоба Здравствуйте, уважаемые форумчане. Есть схема получения сигнала с вихревого датчика (для расходомера). Контроллер стм32ф373. Суть в том, что на выходе датчика имеем частоту, пропорционально расходу. Заказчик настаивает на том чтобы для определения частоты использовалось быстрое преобразование Фурье на 4096 точек. Но я считаю, что ввиду ограничения ОЗУ и достаточно длительного времени обработки целесообразнее посчитать частоту с помощью таймера в режиме захвата и компаратора, предварительно отфильтровав сигнал. Однако заказчик, считает, что так мы получим меньшую точность и гибкость. Объясните, пожалуйста в чем я заблуждаюсь и какие подводные камни могут быть при применении таймера, а не преобразования Фурье. Потому как по мне Фурье для такого МК все-таки сложно, так как это сожрет все ресурсы ядра и ОЗУ. Заранее спасибо. В чем заказчик прав, так это в том, что интегральный метод даст достоверный результат. Как верно замечали просто счетчик будет шумы ловить, но кроме преобразования Фурье есть интегральные методы и полегче. Например считать автокорреляционную функцию за несколько периодов. Это можно делать убирая результат ушедший за окно и добавляя новый, что несоизмеримо легче чем подсчитывать каждый раз и тем более Фурье. Корреляционная функция будет колебаться вслед за сигналом, но уже без шума. Второй дешевый способ это инерционный измеритель фазы. Будет интересно -- расскажу как сделать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ivan24190 0 14 ноября, 2017 Опубликовано 14 ноября, 2017 · Жалоба Спасибо всем за советы. Выяснилось, что будет испытываться какой-то новый датчик, поэтому нужна именно спектральная характеристика, из-за чего заказчик и настаивает на БПФ. Тему можно закрывать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться