ESP8266-01 Сброс при работе двигателя постоянного тока

DC motor: 3-6v 
Servo sg90: 3-7.2v
Esp 8266 01: 3.3v

У меня есть 2 платы Arduino Uno, каждая из которых имеет собственный адаптер питания переменного/постоянного тока. Допустим, 1-й Arduino — это Ard1, а 2-й — Ard2.

Ard1 связывается с веб-сервером (BLYNK) с Esp 01.

Используя I2C, Ard1 отправляет команду Ard2 для включения/перемещения двигателя постоянного тока/сервопривода.

Пока что у него нет проблем с работой с Servo. Но,

Всякий раз, когда Ard1 дает команду Ard2 включить двигатель постоянного тока.

Сразу, когда работает двигатель постоянного тока (используя digitalWrite(motor,HIGH)), Esp 01 сбрасывается.


  • Пытался использовать analogWrite(motor, 102), хотя он не сбрасывается мгновенно, при продлении использования он сбрасывается случайным образом в любое время.

  • Я также попытался проверить работу сервопривода и двигателя постоянного тока одновременно в Ard2, используя последовательные команды, без I2C/Esp01. Проблем не было вообще, оба работают без нареканий.

Ниже приведена схема подключения.

, 👍-1

Обсуждение

Это электронная проблема. Вы должны опубликовать принципиальную схему или перенести этот вопрос в электронику SE, @Sim Son

Вы должны проверить текущий номинал для двигателя. Может случиться так, что ваш поставщик не в состоянии обеспечить его., @brtiberio

Как питается ESP-01?, @Majenko

Я просто включил диаграмму для дальнейшего понимания. Прошу прощения, у меня нулевые познания в электронике/электрике., @Kolokoy

Несмотря на то, что у вас нет подтягивающих устройств, подключенных к линиям I2C, ваша схема выглядит нормально. Откуда вы знаете, что esp сбрасывается, что вы наблюдали?, @Sim Son

Используя приложение blynk, так же просто, как включить / выключить любой из двигателей. Как только я включу двигатель постоянного тока, и он заработает, соединение между esp и сервером будет разорвано. Это также означает, что я не могу «отключить» двигатель постоянного тока из приложения Blynk, если соединение между сервером и esp не возобновится/не перезапустится. Я предполагаю, что проблема будет заключаться в проводке I2C / GND (ard1 - ard2), так как это единственный способ, которым эти два связаны., @Kolokoy

Соединение между Arduinos, вероятно, не имеет ничего общего со сбросом esp. Из предоставленной вами информации я не уверен, что esp действительно выполняет сброс, возможно, esp просто ничего не отправляет. Вы добавили подтягивания?, @Sim Son

Попробуйте удалить второй Arduino и загрузить программу на тот, который подключен к двигателю, который включает и выключает двигатель, чтобы увидеть, есть ли у вас проблема. Попробуйте запитать двигатель от отдельного источника питания 5 В, чтобы он был подключен к Arduino только контактом 3., @haresfur


1 ответ


1

Можете ли вы прояснить одну вещь, что вы подаете питание на двигатель постоянного тока от контакта 5 В, указанного на плате Arduino, или от вашего источника питания переменного тока в постоянный. Если вы подаете питание на двигатель от 5-вольтового контакта Arduino Uno, то существует высокая вероятность того, что двигатель не получает достаточного тока, потому что питание 5 В на Arduino поступает от встроенного 5-вольтового регулятора напряжения lm1117, а дешевый клон Arduino имеет дешевый регулятор с емкость менее 1 ампера.

,

Это было действительно так. Затем я прибегнул к питанию от батареи 9 В для постоянного тока, однако проблема все еще существует, но не настолько серьезная, она все еще обрывает соединение. Наконец, мое последнее решение заключалось в подключении резистора 10 кОм между ch_d esp к 3,3 В Arduino и 1 кОм между gnd и rx esp и еще 1 кОм между rx esp и arduino. Пока все прошло хорошо., @Kolokoy

@Kolokoy, что должны делать эти резисторы ?! Обратите внимание, что батарея на 9 В также является плохим выбором, поскольку я также не могу обеспечить большой ток. Вам лучше использовать правильный блок питания или, например, литий-ионный аккумулятор., @Sim Son

Кто-то, кого я знал, сказал, что rx/tx может использовать логический уровень TTL 5 В вместо 3,3 В, который может выдержать только esp 01. Я также нашел на YouTube учебник по подключению esp01 к arduino и следовал ему. Аккумулятор был просто для проверки, будет ли проблема существовать, когда двигатель постоянного тока имеет другой источник питания, я не буду использовать его в конечном результате., @Kolokoy