H-мост ⚙️ L9110S (12В 0.8А) драйвер коллекторного двигателя (подключение, тесты)
Основные параметры
Напряжение питания: 12 (МАКС)
Выходной ток: 0.8 А (2А ПИК)
Количество каналов: 1
Рабочий ток микросхемы: до 500 мкА
Ток покоя: 2 мкА
Возможности:
- Вращение по часовой стрелки/против часовой
- Встроенные защитные диоды
Корпус: SOP-8
Цена: 1$
Купить на Aliexpress
?️ 5PCS Module L9110S H-bridge DC (4.52?):
https://ali.ski/mbpFUT
?️ 9110S H-bridge TTL/CMOS/CPU (1.18?): https://ali.ski/d5CLC0
?️ 10pcs L9110S SOP-8 L9110 SOP LG9110 SOP8 LG9110S (1.45?): https://ali.ski/tDxLD2
?️ STM32F401 Module USB-C (3.15?):
https://ali.ski/IbtO-
?️ STM32F401CEU6 Module (2.00?):
https://ali.ski/3rb8l
? Мой мультиметр T21D RM113D (13.81?): https://ali.ski/vEq1v
Краткое описание
Эти модули очень распространены и используются для управление мелкими щеточными двигателями. На плате располагается сразу две микросхемы, что позволяет подключать сразу два движка. Питание и логические уровни могут быть 5В, что хорошо подходит для ардуин.
Подключение
Здесь ничего сложного, просто питание ( GND VCC) будет отдельно для микросхем от аккумулятора, а минус общий вместе с платой с микроконтроллером.
Проект в Cube
Для проверки модулем можно управлять конечно же вручную подавая сигналы на входы, но мы сразу будет делать это с помощью классного МК STM32F401 USB-C.
Настроены два вывода на выход для управления одним движком.
Проверка
Вращение по часовой стрелки:
HAL_GPIO_WritePin(AIN1_GPIO_Port, AIN1_Pin, GPIO_PIN_SET);
HAL_GPIO_WritePin(AIN2_GPIO_Port, AIN2_Pin, GPIO_PIN_RESET);
Вращение против часовой стрелки:
HAL_GPIO_WritePin(AIN1_GPIO_Port, AIN1_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(AIN2_GPIO_Port, AIN2_Pin, GPIO_PIN_SET);
Завернуть в более короткие функции
Чтобы удобнее работать напишем функцию, позволяющая делать управление более читаемо в коде.
Создается перечисление как новый тип с тремя состояниями:
typedef enum
{
CW,
CCW,
STOP,
}MotSet;
Теперь оформляем функцию:
void MotControl(MotSet motset)
{
switch(motset)
{
case CW:
HAL_GPIO_WritePin(AIN1_GPIO_Port, AIN1_Pin, GPIO_PIN_SET);
HAL_GPIO_WritePin(AIN2_GPIO_Port, AIN2_Pin, GPIO_PIN_RESET);
break;
case CCW:
HAL_GPIO_WritePin(AIN1_GPIO_Port, AIN1_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(AIN2_GPIO_Port, AIN2_Pin, GPIO_PIN_SET);
break;
case STOP:
HAL_GPIO_WritePin(AIN1_GPIO_Port, AIN1_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(AIN2_GPIO_Port, AIN2_Pin, GPIO_PIN_RESET);
TIM1->CCR1 = 0;
break;
}
}
И теперь код будет намного читабельнее:
MotControl(CW)/* Clockwise */
MotControl(CCW); /* Counter Clockwise */
MotControl(STOP); /* Stop */
Короткое замыкание
При питании от 10В и коротком замыкании выхода почти полностью вышло из строя (в одну сторону еще могло немного вращаться). Далее "рабочий"
Чрезмерный нагрев в простое
Многие ардуинщики сталкиеваются с тем, что эти чудо-платы неадекватно греются, так вот – это совершено нормально для этих корявых микросхем.
Ток в режиме ожидания
При напряжении питания 5В две микросхемы жрут почти 50 мА (с учетом светодиода), то есть на каждую около 20 мА.
Сравнение мостов L9110S и TB6612
Здесь можно посмотреть обзор на микросхему H-моста TB6612.
H-МОСТЫ | L9110 | TB6612 |
Напряжение, В: | 12 | 13.5 |
Ток, А: | 0.8 | 1.2 |
Пиковый ток, А: | 2 | 3.2 (10 мс) |
Рабочий ток, мкА: | 500 (неправда) | 1800 (при 3.3В) |
Ток покоя, мкА: | 2 (неправда) | 25 |
Доп. возможности: | − |
остановка замыканием (
short brake) установка спящего режима ( standby) |
Защита от КЗ: | нет (сгорает) | нет (сгорает) |
Количество каналов: | 1 | 2 |
Корпус: | SOP-8/DIP-8 | SSOP-14 |
Цена за модуль: | 0.1$ | 1.2$ |
Цена за микросхему: | 0.5$ | 1.5$ |
Видос
Итого
В общем-то не советую использовать эти китайские микросхемки, ибо уж очень они многопотребляющие на холостом ходу, вместо них есть микросхема TB6612 от Toshiba на два канала в корпусе, рассчитанная на напряжение 13.5В и ток до 1.2А.