Логотип sheen.bot

Идеи и опыт

Почему робот перезагружается при включении моторов (и как это исправить)

22 авг. 2026 г.·Sheen Robotics
Почему робот перезагружается при включении моторов (и как это исправить)

Микроконтроллер перезапускается потому, что пусковой бросок тока двигателей постоянного тока роняет напряжение батареи ниже рабочего порога. Разбираем, как побороть brownout-сброс в классе.

Если робот выполняет код инициализации, зажигает светодиоды, а затем сбрасывается ровно в тот момент, когда начинает работать код движения, ваш микроконтроллер уходит в brownout-сброс (сброс по просадке питания). Моторы не сжигают чип — они лишают его напряжения.

Когда двигатель постоянного тока (DC) трогается с места, он на доли миллисекунды требует огромного броска тока. Если источник питания не способен отдать этот ток мгновенно, напряжение в схеме проваливается. Как только оно опускается ниже безопасного рабочего порога микроконтроллера — около 2,7 В для 3,3-вольтового чипа вроде ESP32 или 4,3 В для стандартной 5-вольтовой Arduino Uno — процессор сбрасывается, чтобы не повредить содержимое памяти. Мотор во время сброса останавливается, напряжение восстанавливается, код загружается снова, и цикл повторяется бесконечно.

Механика просадки питания

Чтобы надёжно всё починить, полезно понять, почему напряжение вообще падает. За перезагрузки из-за моторов в школьных робототехнических наборах отвечают две физические причины:

  • Пусковой ток. У неподвижного двигателя постоянного тока практически нет противо-ЭДС. С точки зрения электрики включение мотора почти неотличимо от короткого замыкания источника питания на долю секунды. Жёлтый хоббийный мотор-редуктор, потребляющий 150 мА на ходу, в момент старта легко требует от 1,2 А до 1,5 А.
  • Внутреннее сопротивление батареи. Внутреннее сопротивление есть у любой батареи. Когда от четырёх щелочных элементов AA или пары банок 18650 требуют мгновенно отдать 2 А—3 А на два ходовых мотора, напряжение на клеммах падает прямо пропорционально этому сопротивлению. Тонкие перемычки и подпружиненные батарейные контакты делают просадку заметно хуже.

Если микроконтроллер и драйвер моторов на H-мосте (например, L298N, DRV8833 или TB6612FNG) питаются от одной и той же батареи без буфера, эта просадка приходит прямо на шину питания процессора. Микроконтроллер воспринимает провал как пропадание питания и перезагружается.

Решение 1: поставьте буферные конденсаторы

Самая простая аппаратная мера, не требующая второго комплекта батарей, — добавить ёмкость рядом с драйвером моторов.

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

  • Поставьте электролитический конденсатор на 470 мкФ—1000 мкФ прямо на сильноточные клеммы питания драйвера моторов (Motor VCC и GND).
  • Делайте выводы конденсатора как можно короче. Если он стоит через три ряда на макетной плате, сопротивление её контактных дорожек сведёт эффект на нет.
  • Следите за полярностью: полоса минуса на конденсаторе должна идти на землю (GND), а плюсовая ножка — на питание.

Против высокочастотных помех от щёток мотора дополнительно припаяйте керамический конденсатор 0,1 мкФ (100 нФ) прямо на две металлические клеммы каждого двигателя.

Решение 2: полностью разделите шины питания

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

СхемаПлюсыМинусыКому подходит
Один комплект батарей с буферным конденсаторомМалый вес, меньше батарей в обороте на урокеСбросы всё ещё возможны на почти севших батареяхЛёгкие двухмоторные роботы — следопыты по линии
Два комплекта батарейНулевое влияние моторов на микроконтроллерЛишний вес, заряжать нужно два комплектаСоревнования по робототехнике, тяжёлое шасси
Буфер на понижающем преобразователеОдин комплект батарей, чистое стабилизированное напряжениеВыходное напряжение нужно настраивать мультиметромПродвинутые проекты старшей школы

Как правильно развести два источника питания:

  1. Питайте микроконтроллер (Arduino, micro:bit или ESP32) от отдельного источника — например, от повербанка на 5 В или небольшого LiPo на 3,7 В с повышающим преобразователем.
  2. Питайте моторную клемму драйвера (её часто подписывают VM или VMS) от основной моторной батареи (например, отсека на 4×AA или сборки 2S из Li-ion).
  3. Соедините все провода земли (GND) вместе. У микроконтроллера и драйвера моторов должна быть общая земля, иначе логические сигналы направления и скорости «повиснут» и поведение станет непредсказуемым.

Решение 3: сделайте плавный пуск в коде

Часто перезагрузки из-за моторов удаётся убрать вообще без паяльника — просто изменив то, как код подаёт мощность. В классе ученики обычно пишут код, который мгновенно прыгает от покоя к полной скорости:

analogWrite(motorPin, 255);

Такой мгновенный переход вызывает максимальный пусковой ток. Вместо этого наращивайте скважность ШИМ (PWM) в течение 50—100 миллисекунд простым циклом. Разгон от 0 до 255 за пять небольших шагов заметно снижает пиковый бросок и удерживает напряжение батареи выше порога brownout, при этом робот не начинает двигаться ощутимо вяло.

Ошибки монтажа в классе, которые маскируются под просадку питания

Прежде чем перебирать всё шасси, проверьте три механических слабых места, типичных для школьных условий:

  • Беспаечные макетные платы. Шины питания макетной платы не способны надёжно проводить пиковые 1,5 А—2 А, которые тянут два раскручивающихся двигателя. Ведите сильноточное питание моторов через винтовые клеммы или пайку, а не через пружинные контакты макетки.
  • Тонкие перемычки. У дешёвых перемычек dupont сечением 28 AWG высокое сопротивление. Когда через них идёт моторный ток, сам провод роняет заметную часть напряжения ещё до драйвера.
  • Севшие щелочные батареи. По мере разряда щелочных элементов их внутреннее сопротивление резко растёт. Батарейный отсек, показывающий на мультиметре 6,0 В без нагрузки, под током 500 мА может провалиться до 3,2 В. Всегда измеряйте напряжение батареи в момент, когда моторы реально пытаются крутиться.

Если вы оснащаете компьютерный класс или команду для соревнований надёжной силовой электроникой, модули драйверов со встроенной фильтрацией есть в магазине Sheen Robotics, а также входят в наши структурированные робототехнические наборы Infinity.

#робототехника#электроника#поиск неисправностей#STEM-образование

Больше в категории «Идеи и опыт»

Почему вода в нашей школьной гидропонике позеленела от водорослей?
Идеи и опыт· 30 авг. 2026 г.

Почему вода в нашей школьной гидропонике позеленела от водорослей?

Вспышки водорослей случаются, когда свет попадает в богатую питательными веществами воду. Разбираем, почему подводят белый ПВХ и полупрозрачные ёмкости, и как справиться со вспышкой без токсичной химии.

Читать далее →
Почему добавление второго датчика подвешивает ваш micro:bit или Arduino
Идеи и опыт· 29 авг. 2026 г.

Почему добавление второго датчика подвешивает ваш micro:bit или Arduino

Когда лишний датчик останавливает весь проект на micro:bit или Arduino, виновата почти наверняка блокировка шины I2C: совпадение адресов, проблемы с подтягивающими резисторами или конфликт напряжений.

Читать далее →
Почему дешёвые датчики влажности почвы корродируют и что школам стоит использовать вместо них
Идеи и опыт· 28 авг. 2026 г.

Почему дешёвые датчики влажности почвы корродируют и что школам стоит использовать вместо них

Дешёвые резистивные почвенные датчики быстро корродируют, потому что постоянный ток превращает открытую медь в жертвенный анод. Разбираем, как электролиз их разрушает, как эту проблему решают ёмкостные датчики и как собрать надёжный ученический монитор для сада.

Читать далее →