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

Моторы подключают только к силовым выходам драйвера. Контроллер соединяют с логическими входами. Энергия приходит на силовой вход драйвера от подходящего источника, а общий GND задаёт единую точку отсчёта управляющих уровней.
Зачем это нужно
Два колеса мобильного робота должны независимо вращаться вперёд и назад, плавно менять команду и останавливаться. Для этого через обмотки приходится менять направление тока и пропускать ток, значительно больший, чем способен безопасно отдать логический вывод микроконтроллера. Особенно тяжёлые режимы возникают в момент старта, при резком реверсе, на подъёме и при заблокированном колесе.
Драйвер решает сразу несколько задач:
- отделяет вычислительную часть от силовой нагрузки;
- меняет направление тока через мотор с помощью H-моста;
- принимает PWM-команду для регулирования средней передаваемой мощности;
- в зависимости от модели может ограничивать ток и сообщать о перегреве или другой неисправности;
- позволяет остановить мотор выбегом либо электрическим торможением, если такой режим предусмотрен таблицей состояний.
Защитные функции не делают любую сборку безопасной автоматически. Пределы напряжения, тока, температуры, длительность допустимого пика и поведение после срабатывания защиты относятся к конкретной микросхеме и конкретной плате.
Реальные варианты драйверов
| Драйвер | Где уместен | Плюсы | Ограничения |
|---|---|---|---|
| L298P shield для Arduino UNO | первый двухмоторный робот на UNO | ставится сверху на плату, есть разъёмы, удобно для обучения | устаревшая силовая часть, заметные потери |
| L298N модуль | простые стендовые опыты | дешёвый и распространённый | крупный, греется, требует аккуратного питания |
| TB6612FNG | компактный лёгкий робот | меньше потери, хорош для небольших моторов | нужны отдельные провода и правильная распиновка |
| DRV8833 | маленькие моторы и 2S-питание | компактный, современнее L298 | ограничен по току и напряжению |
| BTS7960 | один мощный DC-мотор | высокий ток для крупной нагрузки | на двухмоторный робот нужны два канала/модуля |
Для обучения удобно выделить L298P в форм-факторе Arduino UNO. Он совместим с UNO-механикой, уменьшает число проводов между контроллером и драйвером, часто имеет клеммы для моторов, вход питания, разъёмы для датчиков и дополнительные элементы на плате. Это помогает сосредоточиться на алгоритме движения. При этом для энергоэффективного или компактного робота позже стоит сравнить его с TB6612FNG или DRV8833.
Главная идея
В роботе существуют три разных пути, которые нельзя смешивать:
решение программы -> логические входы драйвера
источник энергии -> силовой вход драйвера
силовые выходы драйвера -> два вывода мотора
Для двух коллекторных моторов нужен драйвер с двумя подходящими каналами. Каждый мотор получает собственную пару выходов. Эти выходы не являются постоянными «плюсом» и «минусом»: H-мост меняет их состояния, поэтому направление тока зависит от команды.
| Часть системы | Что к ней подключают | Что к ней не подключают |
|---|---|---|
| логические входы | выводы направления, PWM, разрешения контроллера | обмотку мотора и батарею |
силовой вход VM или VS | источник в допустимом диапазоне драйвера | сигнальный вывод контроллера |
логическое питание VCC, если оно есть | напряжение, указанное в datasheet | моторный выход |
| выходная пара канала | два вывода одного мотора | питание контроллера и GND |
GND | общий провод контроллера, драйвера и источника по схеме | второй вывод мотора вместо выходной пары |
Читаем контакты до подключения
На разных модулях встречаются IN1, IN2, PWM, EN, STBY, SLEEP, VM, VCC, OUT1 и OUT2. Одинаковый цвет платы или похожее расположение клемм не гарантируют одинаковую распиновку. Сначала находят точное название микросхемы и схему именно своего модуля, затем составляют карту соединений.
VM обычно относится к силовому питанию мостов. Отдельный VCC может питать внутреннюю логику. У некоторых современных драйверов отдельного логического питания нет, но это не разрешает подавать напряжение произвольно: диапазоны силового входа и логических уровней всё равно берут из datasheet. Вывод ожидания может по умолчанию держать выходы выключенными.
Общий провод нужен не потому, что мотор «возвращает ток через Arduino». Силовой ток должен замыкаться через драйвер и источник. GND контроллера и драйвера объединяют, чтобы напряжение логического сигнала измерялось относительно одной точки. Силовые участки делают короткими и достаточно широкими, а моторные провода не пропускают через макетную плату, если её контакты не рассчитаны на такой ток.
Направление, PWM, выбег и торможение
Два входа H-моста позволяют выбрать направление тока. Однако комбинации входов нельзя запоминать как универсальный стандарт. Например, в DRV8833 состояние обоих входов низким соответствует высокоимпедансному выходу и выбегу, а оба высоких — торможению с низкими уровнями на выходах. У TB6612FNG есть отдельный вход ожидания, а таблица режимов содержит CW, CCW, короткое торможение и остановку. На другом устройстве логика может отличаться.
| Команда робота | Что проверяют в документации драйвера |
|---|---|
| вперёд | сочетание входов для выбранной полярности на выходной паре |
| назад | обратное сочетание входов |
| регулирование | на какой вход допустимо подавать PWM и какой режим затухания получается |
| свободная остановка | состояние высокоимпедансных выходов или fast decay |
| активное торможение | состояние замыкания обмотки или slow decay |
PWM быстро переключает силовой путь. Коэффициент заполнения влияет на среднее действие напряжения на мотор, но число PWM не равно оборотам в минуту. Фактическая скорость меняется из-за напряжения батареи, нагрузки, трения, редуктора и различий двух моторов. Для устойчивой скорости используют энкодеры и обратную связь.
После выключения ключа ток индуктивной обмотки не исчезает мгновенно. Драйвер задаёт путь его рециркуляции. Названия fast decay, slow decay, coast и brake связаны со схемой конкретного моста; переносить поведение одного драйвера на другой нельзя.
Ток: непрерывный, пиковый и ток блокировки
На странице модуля часто крупно указано одно число тока, но без условий оно мало что говорит. При выборе различают:
- непрерывный ток — ток, который канал может нести в оговорённых условиях, не выходя за тепловые пределы;
- пиковый ток — кратковременная способность или порог защиты, а не разрешение работать так постоянно;
- ток блокировки мотора — ток при поданном напряжении и неподвижном роторе;
- ток под реальной нагрузкой — рабочее значение конкретного шасси на выбранной поверхности.
Непрерывная способность зависит не только от кристалла, но и от корпуса, разводки платы, площади меди, температуры воздуха и охлаждения. Потери на силовых ключах растут примерно как I²R: увеличение тока сильнее нагревает драйвер. Поэтому рекламное пиковое число не заменяет тепловой расчёт и стендовую проверку.
Ток блокировки берут из datasheet мотора. Если его нет, не следует надолго зажимать вал при полном рабочем напряжении: это тяжёлый режим для обмотки, редуктора, драйвера и источника. Возможность кратко пережить стартовый импульс проверяют по документации всей цепи, а не только по надписи на модуле.

На схеме оранжевая и графитовая линии — силовое питание драйвера. Синяя и мятная линии — два переключаемых выхода H-моста, а не фиксированные полюса. Колесо у упора напоминает, что заблокированная нагрузка увеличивает ток, а оранжевая область под драйвером — что этот ток превращается в тепловые потери.
Конденсаторы, проводники и тепло
Мотор создаёт быстрые изменения тока. Рядом с силовыми выводами драйвера размещают bypass-конденсатор малой ёмкости, рекомендованный производителем: короткий путь уменьшает высокочастотный контур. Более крупный bulk-конденсатор поддерживает шину при сравнительно медленных переходах и снижает выбросы, связанные с проводами и источником. Номиналы и типы выбирают по datasheet и условиям питания; произвольное «чем больше, тем лучше» неверно.
Предохранитель возле источника защищает проводку и систему от опасного сверхтока, но его номинал подбирают с учётом рабочего и пускового тока, времятоковой характеристики и способности разорвать ток именно в этой низковольтной DC-цепи. Он не заменяет защиту отдельного канала драйвера.
Признаки плохого теплового режима — периодическое отключение, падение момента после прогрева или быстрый рост температуры платы. Не проверяйте температуру пальцем на включённой силовой схеме. Сначала снимите питание, найдите причину перегрузки и сверите условия установки с документацией.
Первый запуск двух каналов
Сборку проверяют по слоям:
- На обесточенном роботе сверяют каждую клемму с картой контактов и прозванивают отсутствие короткого замыкания между силовой шиной и
GND. - Моторы временно отключают и подтверждают правильные напряжения на силовой и, если требуется, логической шинах.
- Подключают один мотор, поднимают колёса над поверхностью и задают небольшую команду.
- Проверяют вперёд, нулевую команду, выбег или торможение и обратное направление без мгновенного полного реверса.
- Повторяют со вторым каналом, затем проверяют оба одновременно и наблюдают питание и нагрев.
Если левое колесо вращается не в ожидаемую сторону, питание отключают. После этого либо переставляют два провода именно этого мотора, либо меняют соответствие команды в программе. Одновременно менять проводку, код и питание не стоит: причина станет неясной.
Что запомнить о драйвере
- Контроллер передаёт команды, драйвер переключает моторный ток.
- Каждый мотор подключается только к своей выходной паре канала.
- Силовое и логическое питание различают даже тогда, когда модуль частично соединяет их внутри.
- Общий
GNDнужен логическим сигналам, но моторный ток не направляют через плату контроллера. - Непрерывный, пиковый и блокировочный ток — разные величины.
- Выбег, торможение, PWM и decay сверяют по datasheet конкретного драйвера.
- Bulk- и bypass-конденсаторы выполняют разные задачи и размещаются по рекомендациям производителя.
Практика
Задание 1. Карта модуля
Выберите имеющийся драйвер и составьте обесточенную карту его контактов: логические входы, разрешение или ожидание, силовой вход, логическое питание, GND и две выходные пары. Для каждого контакта укажите страницу официальной схемы или datasheet, на которой нашли назначение.
Задание 2. Бюджет тока
Найдите в документации мотора ток холостого хода, рабочий ток, если он указан, и ток блокировки. Сопоставьте их с непрерывными и кратковременными условиями драйвера и источника. Запишите, каких данных не хватает для окончательного решения.
Задание 3. Таблица режимов
По function table своего драйвера заполните таблицу команд для движения вперёд, назад, выбега и торможения. Отдельно отметьте состояние входов ENABLE, STBY или SLEEP, если они есть. Ответы не переносите с другого модуля.
Задание 4. План стендовой проверки
Составьте последовательность первого запуска двух каналов с поднятыми колёсами. Включите ограничения команды, порядок проверки направлений, наблюдаемые напряжения, признаки перегрева и условие немедленного отключения.
Проверьте себя
- Почему мотор нельзя питать от сигнального вывода контроллера?
- Чем силовой вход драйвера отличается от его логических входов?
- Почему два выхода H-моста нельзя считать постоянными «плюсом» и «минусом»?
- Для чего контроллеру и драйверу общий
GND? - Чем непрерывный ток отличается от пикового тока?
- Почему ток блокировки важен при подборе драйвера?
- Зачем рядом с драйвером нужны bypass- и bulk-конденсаторы?
- Почему режимы выбега и торможения проверяют по datasheet конкретной микросхемы?
Сначала ответьте без подсказки. Ответ можно считать полным, если вы:
- формулируете основную мысль своими словами;
- называете важные условия, ограничения или меры безопасности;
- для схемы, кода или расчёта показываете ход решения и ожидаемый результат.
Если один из пунктов объяснить не получается, найдите соответствующую главу статьи, перечитайте её и повторите ответ.
Словарь статьи
- Драйвер моторов — силовой электронный узел, управляющий током двигателей по логическим командам.
- H-мост — четыре силовых ключа, позволяющие менять направление тока через нагрузку.
VM— распространённое обозначение силового питания моторного моста.- Логический вход — контакт, принимающий управляющий уровень или PWM от контроллера.
- Непрерывный ток — допустимый длительный ток при заданных тепловых условиях.
- Пиковый ток — кратковременный предел, заданный производителем при определённых условиях.
- Ток блокировки — ток мотора при поданном напряжении и неподвижном роторе.
- Выбег — свободное замедление мотора при отключённом силовом пути.
- Торможение — режим, в котором драйвер создаёт электрический путь, ускоряющий остановку.
- Bulk-конденсатор — накопительный конденсатор силовой шины для сравнительно медленных переходов тока.
- Bypass-конденсатор — локальный конденсатор с коротким высокочастотным путём у выводов питания.
Связанные темы
- Мотор — как напряжение, скорость и ток двигателя связаны с нагрузкой.
- Элемент питания — как источник должен выдерживать напряжение и ток привода.
- Контроллер — откуда приходят логические команды направления и PWM.
- Колёса — почему диаметр, сцепление и препятствия меняют нагрузку на мотор.
- Монтаж и отладка — как безопасно проверить силовую часть по этапам.