Общие сведения:
Драйвер DRV8833 позволяет управлять двумя коллекторными моторами или одним шаговым двигателем. Внутрисхемно чип драйвера содержит два независимых H-моста (канала A и B) рассчитанных на напряжение от 2,7 до 10,8 В, при рабочем токе каждого канала до 0,5 А без радиатора, или до 1,5 А с радиатором установленном на чипе. Пиковый ток до 2 А на каждый канал.
Увеличить рабочий ток можно путём параллельного объединения двух каналов драйвера в один, тогда можно управлять одним коллекторным двигателем с тем же диапазоном напряжений и рабочим током двигателя до 1 А без радиатора, или до 3 А с радиатором установленном на чипе. Объединение каналов осуществляется соединением следующих выводов: IN1=IN3, OUT1=OUT3, IN2=IN4, OUT2=OUT4.
Схема платы драйвера
На плате драйвера отсутствую резисторы R1 и R2 по этому на схеме их сопротивление указано как 0 Ом. Назначение резисторов R1 и R2 описано в разделе «Управление».
На плате драйвера имеются 2 колодки с выводами: IN1-IN4, VCC, GND, OUT1-OUT4, ULT, EEP. Назначение выводов описано в разделе «Подключение».
Характеристики:
- Количество каналов: 2 (с возможностью объединения двух каналов в один).
- Напряжение питания моторов и драйвера: 2,7 ... 10,8 В.
- Уровень логической 1 на выводах IN1-4, ULT и EEP: 3 ... 6 В.
- Частота ШИМ встроенной схемы ограничения тока: 50 кГц.
- Встроенное ограничение тока: поддерживается чипом, но не реализовано на плате.
- Максимальный ток на канал: 1,5 А (с радиатором).
- Пиковый ток на канал: до 2 А.
- Максимальный ток объединённых каналов: 3 А (с радиатором), пик до 4 А.
- Встроенная защита: защита от перегрева выше 100°, защита от перегрузки по току.
Подключение:
Напряжение питания моторов и драйвера подаётся на выводы VCC и GND модуля. О наличии питания свидетельствует включение светодиода HL1 на плате модуля.
Первый мотор подключается к выводам OUT1 и OUT2, а управление этим мотором осуществляется подачей логических уровней на входы IN1 и IN2.
Второй мотор подключается к выводам OUT3 и OUT4, а управление этим мотором осуществляется подачей логических уровней на входы IN3 и IN4.
Выход ULT сигнализирует об ошибке, а вход EEP позволяет установить спящий режим.
Назначение выводов модуля:
- VCC - Вывод подачи питания моторов и драйвера от 2,7 до 10,8 В.
- GND - Общий вывод питания.
Вывод GND драйвера должен быть соединён с выводом GND Arduino! - IN1, IN2 - Входы управления первым мотором.
- IN3, IN4 - Входы управления вторым мотором.
- OUT1, OUT2 - Выходы подключения первого мотора.
- OUT3, OUT4 - Выходы подключения второго мотора.
- EEP - Вход установки спящего режима, задаётся низким логическим уровнем.
- ULT - Выход аварийного сигнала. Низкий уровень сигнализирует о перегрузки по току, перегреву чипа, или низкому напряжению. В рабочем режиме вывод отключён (плавающий сигнал).
Важно: Вывод EEP соединён на плате модуля с выводом VCC через резистор R3 и перемычку JP1. Это отключает спящий режим.
Если Вы желаете управлять спящим режимом, то механически разорвите перемычку JP1 на тыльной стороне платы, во избежание попадания напряжения VCC на вывод подключаемый к EEP.
Управление:
Моторы подключённые к выводам OUT1, OUT2 и OUT3, OUT4 управляются подачей логических уровней на входы IN1, IN2 и IN3, IN4 соответственно. Обратите внимание на то, что выходы инвертируют сигналы своих входов.
Таблица истинности:
Входы: | Выходы: | Описание: | ||
IN1 | IN2 | OUT1 | OUT2 | |
0 | 0 | Z | Z | Отключение выводов мотора (свободное вращение ротора) |
0 | 1 | VCC | GND | Вращение в прямом направлении на максимальной скорости. |
1 | 0 | GND | VCC | Вращение в обратном направлении на максимальной скорости. |
1 | 1 | GND | GND | Торможение мотора (стопор ротора) |
Для 2 мотора, вместо выводов IN1, IN2, OUT1, OUT2, используются выводы IN3, IN4, OUT3, OUT4.
Управление мотором при помощи ШИМ:
Входы: | Выходы: | Описание: | ||
IN1 | IN2 | OUT1 | OUT2 | |
ШИМ | 1 | ~ШИМ | GND | Вращение в прямом направлении с линейной зависимостью скорости от инверсного ШИМ (чем выше ШИМ, тем ниже скорость). |
1 | ШИМ | GND | ~ШИМ | Вращение в обратном направлении с линейной зависимостью скорости от инверсного ШИМ (чем выше ШИМ, тем ниже скорость). |
ШИМ | 0 | GND/Z | VCC/Z | Не используйте данные сигналы на входах! Вращение осуществляется с нелинейной зависимостью скорости от инверсного ШИМ и падением крутящего момента. |
0 | ШИМ | VCC/Z | GND/Z |
Для 2 мотора, вместо выводов IN1, IN2, OUT1, OUT2, используются выводы IN3, IN4, OUT3, OUT4.
На заметку: Для управления большинством драйверов собранных по схеме H-моста, на один из входов драйвера подают ШИМ (для регулировки скорости мотора), а на второй вход подают логический уровень (для выбора направления вращения мотора).
Такая схема управления не подходит для драйвера DRV8833, так как он позволяет переводить свои выходы в состояние высокого импеданса (Z), что приводит к отключению выводов мотора.
Из таблицы истинности видно, что при наличии 0 на обоих входах канала драйвера, оба его выхода переходят в состояние высокого импеданса, что приводит к отключению выводов мотора и его свободному вращению.
Сигнал ШИМ является чередованием уровней 0 и 1, значит при подаче на один из входов сигнала ШИМ, а на другой уровня логического 0, мы получим чередование включения мотора и отключения его выходов. Это приведёт к нелинейной зависимости скорости от ШИМ и падению крутящего момента.
Избавиться от такого поведения можно не допустив появления 0 на одном входе канала драйвера при наличии ШИМ на другом входе. Значит для регулировки скорости так же нужно использовать ШИМ, а смена направления вращения мотора должна осуществляться переключением сигнала ШИМ с одного входа на другой, при этом на свободном от ШИМ входе должен быть установлен уровень логической 1.
Ограничение тока:
Чип драйвера позволяет ограничить ток мотора при помощи резисторов R1 (для канала A) и R2 (для канала B). Но на плате драйвера эти резисторы отсутствуют и ток не ограничивается модулем.
Максимальный ток протекающий через канал драйвера задаётся резистором RSENSE (R1 для канала A и R2 для канала B) и рассчитывается по формуле: IMOT = VREF / RSENSE, где VREF = 200 мВ.
Если ток потребляемый мотором превышает заданный ток IMOT, то чип начинает самостоятельно снижать мощность преобразуя VCC в ШИМ с частотой 50 кГц, уменьшая коэффициент заполнения ШИМ до тех пор, пока ток потребляемый мотором не сравняется с заданным.