Драйвер двигателя HG7881: различия между версиями

Материал из MIK32 микроконтроллер
Нет описания правки
Строка 24: Строка 24:
Модуль собран на двух полу мостовых драйверах (H-bridge) HG7881.У данного драйвера отсутствует возможность изменять скорость вращения мотора, драйвер способен изменять только направление вращения. По этой причине, данный модуль больше подходит для управления небольшими шаговыми двигателями, нежели коллекторными.
Модуль собран на двух полу мостовых драйверах (H-bridge) HG7881.У данного драйвера отсутствует возможность изменять скорость вращения мотора, драйвер способен изменять только направление вращения. По этой причине, данный модуль больше подходит для управления небольшими шаговыми двигателями, нежели коллекторными.
[[Файл:Schem.jpg|слева|мини|600x600пкс|Блок схема модуля HG7881]]
[[Файл:Schem.jpg|слева|мини|600x600пкс|Блок схема модуля HG7881]]
== Таблица подключения входных контактов драйвера HG7881 к плате arduino ==
{| class="wikitable"
|Контакт
|Описание
|-
|B-IA
|Двигатель B Вход A (IA)
|-
|B-IB
|Двигатель B Вход B (IB)
|-
|GND
|Земля (-)
|-
|VCC
|Рабочее напряжение 2.5-12V (+)
|-
|A-IA
|Двигатель A Вход A (IA)
|-
|A-IB
|Двигатель A Вход B (IB)
|}
=== Таблица состояний подключенного двигателя HG7881 ===
{| class="wikitable"
|Вход IA
|Вход IB
|Состояние двигателя
|-
|L
|L
|Остановлен
|-
|H
|L
|Движение вперед
|-
|L
|H
|Движение назад
|-
|H
|H
|Отключен
|}
В таблице указаны состояния для одного двигателя и состояние сигнала на входах драйвера IA и IB.
[[Файл:L9110S-1.jpg|слева|мини|457x457пкс|Подключение модуля к arduino]]
Модуль подключается на два свободных выхода arduino, питание для моторов, если они маломощные и работают от напряжение 5 вольт, можно взять от arduino. Чтобы заставить мотор крутится, нужно на один выход подать логическую единицу и на второй логический ноль. Для изменения направления вращения, нужно инвертировать состояние обеих выходов arduino.
== Пример кода для Arduino ==
[[Файл:Код драйвер.jpg|слева|мини|746x746пкс|Код для arduino]]

Версия от 20:01, 24 июня 2021

Драйвер двигателя HG7881 (L9110S)

Драйвер двигателя HG7881

HG7881- двухканальный драйвер коллекторных двигателей. Модуль собран на базе двух микросхем, к нему можно подключить два двигателя постоянного тока или один 4-х проводной шаговый двухфазный двигатель.

L9110S - аналог HG7881

Драйвер двигателя HG7881 может работать в двух режимах:
  1. А – управление направлением вращения каждого двигателя по отдельности,
  2. В – Управление скорость вращения двигателей с помощью ШИМ

На плате драйвера двигателя задействованы 2 микросхемы контроллера, которые работают по принципу H-моста и используются для смены полярности питания мотора.

Характеристики драйвера HG7881:

  • Диапазон напряжения питания: 2.5V  …  12V.
  • Максимальный ток: 800mA, на каждый канал.
  • Управление логическим уровнем.
  • Встроенные защитные диоды.
  • Рабочая температура: 0℃  …  80℃.
  • Размеры: 30 х 24 х 15 мм.
  • Вес: 6 г.

Особенности модуля:

Модуль собран на двух полу мостовых драйверах (H-bridge) HG7881.У данного драйвера отсутствует возможность изменять скорость вращения мотора, драйвер способен изменять только направление вращения. По этой причине, данный модуль больше подходит для управления небольшими шаговыми двигателями, нежели коллекторными.

Блок схема модуля HG7881





Таблица подключения входных контактов драйвера HG7881 к плате arduino

Контакт Описание
B-IA Двигатель B Вход A (IA)
B-IB Двигатель B Вход B (IB)
GND Земля (-)
VCC Рабочее напряжение 2.5-12V (+)
A-IA Двигатель A Вход A (IA)
A-IB Двигатель A Вход B (IB)

Таблица состояний подключенного двигателя HG7881

Вход IA Вход IB Состояние двигателя
L L Остановлен
H L Движение вперед
L H Движение назад
H H Отключен

В таблице указаны состояния для одного двигателя и состояние сигнала на входах драйвера IA и IB.

Подключение модуля к arduino






Модуль подключается на два свободных выхода arduino, питание для моторов, если они маломощные и работают от напряжение 5 вольт, можно взять от arduino. Чтобы заставить мотор крутится, нужно на один выход подать логическую единицу и на второй логический ноль. Для изменения направления вращения, нужно инвертировать состояние обеих выходов arduino.

Пример кода для Arduino

Код для arduino