Ардуино проект. USB+ внешний источник питания - работает отлично. Нет USB - все сходит с ума

У меня есть эта схема:

введите описание изображения здесь

Это простой проект - система фокусировки для снятого объектива и анаморфного адаптера. У меня есть три горшка. Первый я использую как манипулятор. Второй используется для получения положения сервопривода непрерывного вращения (JX DC6015 Mod) - двигатель № 1. Третий горшок используется для управления положением другого сервопривода непрерывного вращения (JX DC6015 Mod) - двигателя № 2. Есть также несколько кнопок и диодов для калибровки. Мотор № 1 вращает снятый объектив, а мотор № 2 вращает адаптер.

Что ж, давайте посмотрим на схему. У меня также есть диод 1N4007 и крышка 47 мкФ. Я использую эту схему, потому что схема даже не включалась, когда я пытался питать ее от батареи. Теперь, по крайней мере, он включается. Но давайте оставим это на мгновение.

Основная проблема в том, что все работает идеально, когда я использую внешний адаптер переменного тока (или батарею) с USB-портом Nano, подключенным к моему ноутбуку. Как только я отключаю USB-кабель, система сходит с ума. Если он подключен к адаптеру AC-DC, он просто начинает вращать сервоприводы на несколько оборотов по часовой стрелке, а затем назад. Если он питается только от батареи, сервоприводы очень быстро вращаются против часовой стрелки или по часовой стрелке и никогда не останавливаются.

Похоже, у меня проблема с петлей GND. Я попытался отделить свои банки, добавив 3 колпачка для каждого банка, соединяющего сигнальный контакт с GND, но все пошло еще хуже. Он не работал даже при подключении USB к Arduino. Сервоприводы вращались по часовой стрелке и против часовой стрелки, меняя направление очень быстро.

Я попробовал два других контроллера Arduino, но все было так же.

Я проверил все GND. Все они связаны друг с другом.

Тогда я решил попробовать изолировать VCC и GND от сервопривода, поместив NME0505SC между источником питания и Arduino. Но это не помогло.

1 ответ

Я предполагаю, что ваш источник питания не USB не обеспечивает достаточный ток, чтобы оставаться на постоянном напряжении, пока ваши сервоприводы работают. В тот момент, когда сервоприводы включаются, они понижают напряжение на линии +5В, давая вашему arduino флуктуирующее значение на аналоговых входах. Это, в свою очередь, заставляет arduino захотеть повернуть сервоприводы на новые позиции, что снова начинает весь уродливый процесс.

Если у вас есть осциллограф, проверьте напряжение на шине питания. Я думаю, вы увидите падение напряжения, как только вы отключите USB.

Другие вопросы по тегам