• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

ESP32 фазовый компаратор

Vypra

Member
Интересует как можно организовать сравнение сдвига фаз 2-х сигналов на ESP32.
Хочу попробовать сделать небольшой металлодетектор на ESP32. Сильно не пинайте, это просто идея для изучения компараторов и операционных усилителей. Не думаю, что можно сделать чувствительный металлодетектор. Но все же.
Идея такая:
1. ESP32 задает опорный сигнал (ШИМ) и передает его через драйвер и полевик на передающую катушку.
2. Приемная катушка (точнее LC контур) принимает (формируя синус в контуре), далее через операционный усилитель сигнал усиливается и далее на компараторе нужно сравнить опорный сигнал ШИМа ESP32 и принятый сигнал.
3. Планируется использовать DD катушку. При попадании металла в рабочую зону DD катушки, по идее должен произойти сдвиг фазы - цвет мет в одну сторону, черный металл в другую.
В принципе вопрос как определить этот сдвиг и чем? Нужно внешний компаратор или силами ESP32 можно? Может кто делал, хотелось бы подсмотреть схему.
Заранее благодарю.
 

pvvx

Активный участник сообщества
Не описали параметры сигналов (желаемая дискретность шага сравнения в ns).
Типа определить фазовый сдвиг сигнала заход и восхода солнца. Там даже millis() в loop() избыточно...
 

Vypra

Member
Не описали параметры сигналов (желаемая дискретность шага сравнения в ns).
Типа определить фазовый сдвиг сигнала заход и восхода солнца. Там даже millis() в loop() избыточно...
простите, упустил. частота передающей катушки от 8 до 20 кГц. В этом диапазоне работают в принципе все металлодетекторы средней ценовой группы. сравниваем 2 меандра: меандр передающего генератора и прогнанный через компаратор синус приемной катушки, тоже меандр на выходе. коэффициент заполнения 0,5 для простоты расчетов.
 

Vypra

Member
нашел интересное видео о работе металлодетектора
парень рассказывает о смещении на разные металлы.
 

yurik72

Member
Металло детектор не пробовал. Но думаю esp32 осилит. Есть "встроенный" контроль для безщеточных моторов. Т.е. esp на позволяет получить разницу (сдвиг) сигнала (отосланного и полученного). Думаю для металло детектора подойдет. Пример вычисления разницы есть здесь
 

pvvx

Активный участник сообщества
простите, упустил. частота передающей катушки от 8 до 20 кГц. В этом диапазоне работают в принципе все металлодетекторы средней ценовой группы. сравниваем 2 меандра: меандр передающего генератора и прогнанный через компаратор синус приемной катушки, тоже меандр на выходе. коэффициент заполнения 0,5 для простоты расчетов.
На 20 кГц на фазу в 180 градусов при CLK на таймере 80 МГц получите разрешение 80МГц/20кГц/2 = 2000 точек. Т.е. +- 1000 точек
 

Vypra

Member
А вот и готовый проект нашелся. Интересный такой.
По схеме ничего сложного как бы и нет, где прием, передача понятно, но до конца пока не разобрался как работает. Зачем переключатель на 4066D?
 

nikolz

Well-known member
На 20 кГц на фазу в 180 градусов при CLK на таймере 80 МГц получите разрешение 80МГц/20кГц/2 = 2000 точек. Т.е. +- 1000 точек
Как известно, существует способ повышения точности измерения фазы путем переноса спектра.
-----------------------
Так как сигнал узкополосный, а иначе фазу вы не измерите воще, то 20 кГц можно перенести хоть на 20 Гц.
И получить не 2 тысячи точек, а 2 миллиона точек.
Хватит 2 мульена точек?
-------------------
"Он кричал - ошибка тут..."
 

pvvx

Активный участник сообщества
Как известно, существует способ повышения точности измерения фазы путем переноса спектра.
-----------------------
Так как сигнал узкополосный, а иначе фазу вы не измерите воще, то 20 кГц можно перенести хоть на 20 Гц.
И получить не 2 тысячи точек, а 2 миллиона точек.
Хватит 2 мульена точек?
-------------------
"Он кричал - ошибка тут..."
Вы не задумывались, что там на катухе стоит компаратор и на катуху наводится вездесущие 50Гц и прочие пром.помехи, да и катухой водят руками, что не даст вам ничего измерить точнее этих 10 бит не прикладывая мульоны, костыли, лаборатории и etc...
И нафига это сдалось, если любой другой чип имеет таймеры с внешними пинами управления и часто и встроенный компаратор...
 

Vypra

Member
я посмотрел схему из проекта выше и схему популярного металлоискателя garrett ace. все построено примерно едентично. в гаррете есть еще одна часть пинпоинтера. у парня выше все обрабатывает esp32 и передает на телефон, а не на дисплей. так что вся фишка в алгоритме обработки контроллером.
 

pvvx

Активный участник сообщества
вся фишка в алгоритме обработки контроллером.
В garrett ace стоят аналоговые фильтры http://kladoiskatel.net/image/data/001/ace_big_.gif
что дает более точную картинку фаз, без особого джиттера и не требуется большой набор по времени для усреднения -> возможна выше скорость движения катушки.
На MCU это проще всего сделать на встроенном кодеке. У кодеков регулируется усиление. Примерно как тут https://esp8266.ru/forum/threads/realtek-rtl872x-wifi-ble5-0.4765/post-76542
Вместо наушников передающая катуха, а на вход приемная... Это вся схема.
 

nikolz

Well-known member
я посмотрел схему из проекта выше и схему популярного металлоискателя garrett ace. все построено примерно едентично. в гаррете есть еще одна часть пинпоинтера. у парня выше все обрабатывает esp32 и передает на телефон, а не на дисплей. так что вся фишка в алгоритме обработки контроллером.
вопрос :Зачем городить на ESP32 фазовый детектор?
Это как из автомата стрелять по мухам на стекле авто.
 

Vypra

Member
скажу чесно, я сейчас разбираю проект folny, тот что выше. его схема повторяет схему gerrett ace, но есть возможность програмно изменять настройки на ESP32. меня это заинтересовало. пока не могу ничего прокомментировать, но склоняюсь к повторению данного проекта с правками "под себя".
 

nikolz

Well-known member
скажу чесно, я сейчас разбираю проект folny, тот что выше. его схема повторяет схему gerrett ace, но есть возможность програмно изменять настройки на ESP32. меня это заинтересовало. пока не могу ничего прокомментировать, но склоняюсь к повторению данного проекта с правками "под себя".
Вы бы просто учебник по физике почитали, а не смотрели картинки для буратин
На которых сравнивается сигнал плоскогубцы с молотком (у них масса одинаковая) а потом с кольцом (масса существенно отличается от молотка)
но почему-то считает что изменения связаны с ценностью металла а не с массой
палата N 6
---------------------
Если вы усилите сигнал от приемной антенны и потом его подадите на любой пин ESP
то фазовый детектор - это измерение интервала от фронта сигнала приемника до фронта сигнала передатчика
т е это элементарно Ватсон
Но это не металлоискатель тем более профессиональный.
-----------------
Пилите Шура, пилите...
 

Vypra

Member
Вы бы просто учебник по физике почитали, а не смотрели картинки для буратин
На которых сравнивается сигнал плоскогубцы с молотком (у них масса одинаковая) а потом с кольцом (масса существенно отличается от молотка)
но почему-то считает что изменения связаны с ценностью металла а не с массой
палата N 6
---------------------
Если вы усилите сигнал от приемной антенны и потом его подадите на любой пин ESP
то фазовый детектор - это измерение интервала от фронта сигнала приемника до фронта сигнала передатчика
т е это элементарно Ватсон
Но это не металлоискатель тем более профессиональный.
-----------------
Пилите Шура, пилите...
При чем здесь молотки? я про проект, который в следующем посте после чувака с осцилом и молотком. Вы наверное пропустили его.
 

nikolz

Well-known member
При чем здесь молотки? я про проект, который в следующем посте после чувака с осцилом и молотком. Вы наверное пропустили его.
посмотрел я этот проект. там 500 строк тупого кода ни о чем. Я выше вам написал алгоритм фазового детектора который примитивно реализован в этом проекте.
Вы почитайте более умные статьи о реальной работе таких примитивных металлоискателей и что реально дают эти детекторы.
Но я так понимаю, что вы горды своим невежеством и изучать вопрос глубоко желания нет.
Поэтому как говорят в рядах вооруженных сил - не доходит через голову, дойдет через ноги (руки)
"Пилите Шура, пилите..."
 

Vypra

Member
посмотрел я этот проект. там 500 строк тупого кода ни о чем. Я выше вам написал алгоритм фазового детектора который примитивно реализован в этом проекте.
Вы почитайте более умные статьи о реальной работе таких примитивных металлоискателей и что реально дают эти детекторы.
Но я так понимаю, что вы горды своим невежеством и изучать вопрос глубоко желания нет.
Поэтому как говорят в рядах вооруженных сил - не доходит через голову, дойдет через ноги (руки)
"Пилите Шура, пилите..."
ну наверное пока не нашлось более умных статтей. а на счет гордости Вы не правы. здесь история скорее о том, что у меня нет такого большого багажа знаний, как у Вас. Да, мне сложно, скорее сам я это не сделаю, но я постараюсь найти варианты. поэтому, конечно, я благодарен за помощь и подсказки, даже в таком стиле изложения, как ваш.
 

pvvx

Активный участник сообщества
Но это не металлоискатель тем более профессиональный.
А что должно быть в "профессиональном" металлоискателе?
Три тора с голову в бочках с керосином для триангуляции по огибающим (прецессии) проезжающих рядом железных авто? Дык оно работать не будет, т.к. в ближней зоне куча металла...
Может СКВИД там должОн быть?
Вот и опишите нам тут что должно быть в "профессиональном" металлоискателе, а не брызжите слюной :p
А пока вы советуете то, что вас беспокоит и вами не пройдено.
 

nikolz

Well-known member
ну наверное пока не нашлось более умных статтей. а на счет гордости Вы не правы. здесь история скорее о том, что у меня нет такого большого багажа знаний, как у Вас. Да, мне сложно, скорее сам я это не сделаю, но я постараюсь найти варианты. поэтому, конечно, я благодарен за помощь и подсказки, даже в таком стиле изложения, как ваш.
Вы очевидно шутите. У Вас знаний - море -интернет.
Сказали бы просто -что вам лень, и хочется халявы .
--------------------
 

nikolz

Well-known member
В качестве ликбеза.
Простейшие металлоискатели с фазодетектором на компараторе обеспечивают обнаружение металла-диска(монеты) на расстоянии примерно в 6 раз больше диаметра диска.
Детекторы на биениях (аля перенос спектра) на расстоянии в 10 раз больше,
более сложные,с подавлением помех, типа детекторы на фапч - до 20 раз.
В реальных условиях нет чистой переизлученной синусоиды,
так как в грунте всегда есть мелкие вкрапления металла, что создает помехи.
--------------------
Поэтому необходимо решать задачу подавления помех.
--------------------
Аля-кулибины как правило либо не знают про это ,либо не знают как это делать.
В итоге лепят фазовый детектор как измеритель времени между импульсами. тупо подавая на него усиленный и клиппированный сигнал с приемной антенны.
А импульсы бывают и ложные а не только от синусоиды.
Более того такой способ измерения сдвига фаз применим только для чистых гармонических сигналов
 
Сверху Снизу