Ультразвуковой датчик возвращает случайные значения от внешнего источника питания

Моя проблема в том, что я получаю случайные значения от моего ультразвукового датчика, если ардуино подключен к любому внешнему блоку питания (vin-порт 30) на arduino nano.

Если я включаю питание от USB-порта ноутбука, получаю согласованные значения.

Я протестировал 3 различных источника питания напряжением от 7-17 В до 2000 мА. Я протестировал это на 2 разных платах nano. Также протестировано с дополнительным конденсатором 2000 мкФ между vin и gnd

пожалуйста, помогите, если у вас есть идея :)

, 👍2

Обсуждение

Какое напряжение вы считываете на выводе + 5? (Например, "вывод 27" в вашей 30-контактной схеме нумерации или вывод 6 в заголовке ICSP.) Кроме того, какая модель ультразвукового датчика у вас есть и какой скетч выполняется? И, кажется, некоторые другие скетчи нормально работают с внешним питанием?, @James Waldby - jwpat7

Я получил ультразвуковой датчик HC-SR04 и базовый демонстрационный код. Я нашел решение, см. Ниже. В любом случае, спасибо за ваш комментарий :), @Cracker0dks

Я тоже столкнулся с этой проблемой. Разные показания с разным блоком питания. На самом деле, я получаю неправильные показания с хорошим блоком питания 5 В 2 А, но получаю хорошие показания с дешевым блоком питания 5 В 1 А. Не уверен, почему это происходит. Аналогичные результаты и с упомянутой выше ультразвуковой библиотекой., @user70295

как я писал выше, это похоже на плавучую землю. При хорошем питании заземление сети проходит через заземление Arduino (-), поэтому оно не плавает. Я ожидал получить неверные показания в плавающем состоянии, но, похоже, все наоборот. На ПК USB у вас также есть правильное заземление, и вы также получаете неверные результаты с помощью newPing., @Cracker0dks

Я тоже столкнулся с этой проблемой. Для меня я был подключен через USB к моему компьютеру, и у меня был макет, питающий звуковой датчик через лабораторный источник 30 В, настроенный на 5,02 В (5 В на другом конце измерителя). Я решил свой ложный диапазон, «отдав» 5 В обратно моему Arduino, подключив источник питания лабораторного стола и контакт 5 В на Arduino к одной и той же шине., @Josh62088


3 ответа


Лучший ответ:

3

Поэтому я попытался использовать стабильный вход 5 В на входном выводе 5 В и получил те же более или менее случайные значения (прыгающие повсюду ... особенно на цели, находящиеся на расстоянии более 1 м).

Поэтому я изменил форму NewPing lib (http://forum.arduino.cc/index.php?topic=37712.0) к Ультразвуковой библиотеке (http://forum.arduino.cc/index.php?topic=37712.0).

Теперь значения верны для каждого источника питания и даже более точны на большом расстоянии, чем при использовании нового подключения к USB-источнику питания.

Не знаю, что сломано с библиотекой NewPing v1.7 -.- но это работает!

,

Рад, что библиотека помогла. Я думаю, возможно, проблема была связана с опорными напряжениями. Если вы используете два источника питания, вам необходимо убедиться, что они очень хорошо заземлены. Одна библиотека выдерживала разные напряжения, а другая — нет. Но ключ к использованию двух блоков питания для чего угодно — убедиться, что они заземлены вместе., @SDsolar

Возможно ли, что одна библиотека сообщает мгновенные значения, а другая использует усреднение? Или даже если оба используют усреднение, это происходит синхронно с сетью 60 Гц?, @Boggyman

сторона arduino (dc) не имеет доступа к частоте сети (ac), поэтому я не думаю, что это разница. Единственное очевидное различие, по-видимому, заключается в уровне земли, как написал @SDsolar ниже. У меня больше нет доступа к моей настройке, но вы можете проверить это, временно подключив основное заземление к arduino gnd и посмотреть, изменятся ли значения., @Cracker0dks


1

Рад, что библиотека помогла.

Я думаю, возможно, проблема была связана с опорными напряжениями.

Если вы используете два расходных материала, вам нужно убедиться, что они очень хорошо заземлены вместе.

Одна библиотека могла выдерживать разные напряжения, а другая - нет.

Но ключ к использованию двух источников питания для чего бы то ни было - убедиться, что они заземлены вместе.

,

0

Я тоже сталкивался с этими проблемами. Разные показания при разных источниках питания. На самом деле, я получаю неправильные показания при хорошем источнике питания 5 В 2 А, но получаю хорошие показания при дешевом источнике питания 5 В 1 А. Не знаю, почему это происходит. Аналогичные результаты получены и с ультразвуковой библиотекой, упомянутой выше.

,

как я уже писал выше, это, похоже, плавучая наземная штука. При исправном питании сетевое заземление подключается к заземлению arduino (-), поэтому оно не плавает. Я бы ожидал получить показания invaild в плавающем состоянии, но, похоже, все наоборот. На pc USB у вас также есть правильное заземление, и вы также получаете неверные результаты с помощью NewPing., @Cracker0dks