Драйвер двигателя постоянного тока MX1508 и как его подключить к Arduino


Сегодня мы узнаем об одном из доступных модулей драйвера двигателя постоянного тока, который используется для управления небольшими маломощными двигателями, такими как двигатели постоянного тока N20 и N10. Одним из популярных вариантов для управления двигателем постоянного тока является микросхема драйвера двигателя L293D, но сегодня мы рассмотрим более лучший вариант - драйвер MX1508. Мы рассмотрим основные принципы его работы, технические характеристики, распиновку и его подключение к плате Arduino.

Подключение драйвера двигателя постоянного тока MX1508 к Arduino

Ранее на нашем сайте мы рассматривали подключение и других драйверов двигателей постоянного тока к плате Arduino:

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. Редукторный двигатель N20.
  3. Модуль драйвера двигателя MX1508.
  4. Макетная плата
  5. Соединительные провода.

Реклама: ООО "АЛИБАБА.КОМ (РУ)" ИНН: 7703380158

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

MX1508 — это двухканальный драйвер двигателя постоянного тока со встроенным полным мостовым приводом на силовых МОП-транзисторах. Идеально подходит для использования в интеллектуальных автомобилях с батарейным питанием, игрушечных машинках и роботах.

Поддельные драйверы двигателей MX1508: в идеале основной микросхемой (ИС) в этом модуле должна быть  MX1508. Но, как оказалось, у этой ИС есть некоторые эквиваленты, поэтому иногда вам могут поставляться модули с другими названиями ИС. Одним из эквивалентов, над которыми мы работаем сегодня, является TC1508 . Единственное, что нужно иметь в виду, это то, что вам нужно сверить соответствующий технический паспорт с требованиями и спецификациями вашего проекта. Большинство эквивалентных ИС будут работать точно так же, так что вам не придется сильно беспокоиться об этом.

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

Основные особенности модуля драйвера двигателя MX1508:

  • Оснащен двухканальным встроенным мостовым драйвером МОП.
  • Он может двигаться вперед и назад, а также имеет функции остановки и торможения.
  • Сверхнизкий ток в режиме ожидания и рабочая температура.
  • Низкое сопротивление открытого канала (1,6 Ом) в МОП-транзисторах.
  • Максимальный непрерывный ток до 1,8 А на канал, с пиковым значением до 2,5 А.
  • Широкий диапазон рабочего напряжения (2,4 - 7,2 В).

Технические характеристики модуля драйвера двигателя MX1508

Как мы уже обсуждали, есть несколько клонов и эквивалентов этого модуля, которые имеют другие ИС. Модуль, который у нас есть, состоит из интегральной схемы TC1508. Таким образом, спецификации, которые мы рассмотрим, будут полностью зависеть от ИС TC1508. Подумайте об этом, прежде чем рассматривать следующие данные. Проверьте ИС в вашем модуле, найдите его техническое описание и изучите его перед использованием.

Параметр Символ Пределы Пределы Пределы Единица измерения
Мин. Типичный Макс.
Напряжение питания Vcc 2.4 5 7.2 В
Рабочий ток двигателя - пиковый / канал Iop−peak - - 2.5 А
Рабочий ток двигателя - непрерывный / канал Iop-cont - 1.8 - А
Рабочий ток цепи управления Ictrl - 0.3 1 мА
Ток отключения цепи Isd - 0 10 мкА
Входное напряжение высокого уровня Vih 2 - - В
Низкоуровневое входное напряжение Vil - - 0,8 В
Входной ток высокого уровня Iih - 5 20 мкА
Низкий входной ток Iil -1 0 - мкА
Выходное сопротивление ВКЛ Ron - 1 1.6 Ω
Рабочая температура Top -25 - 85 °С
Температура хранения Tstg -55 - 150 °С

В данной таблице приведены подробные характеристики модуля драйвера, в котором есть микросхема TC1508. В случае, если у вас есть модуль с микросхемой MX1508, то он будет отличаться следующими характеристиками:

  • Диапазон рабочего напряжения: от 2 В до 9,6 В.
  • Пиковый ток двигателя: 2А (заднее колесо), 1,5А (рулевое колесо).
  • Постоянный ток двигателя: 0,8 А (рулевое колесо).

Распиновка MX1508

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

Распиновка MX1508

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

В следующей таблице приведено назначение контактов модуля драйвера двигателя постоянного тока MX1508.

<

Номер контакта Обозначение контакта Тип контакта Назначение контакта
1 +VE Питание Положительный источник питания (2,4 - 7,6 В)
2 -VE Питание Заземление
3 INT1 Цифровой вход [ШИМ] Управляющие контакты для двигателя A
4 INT2 Цифровой вход [ШИМ] Управляющие контакты для двигателя A
5 INT3 Цифровой вход [ШИМ] Управляющие контакты для двигателя B
6 INT4 Цифровой вход [ШИМ] Управляющие контакты для двигателя B
7 MB2 Цифровой выход [ШИМ] Выход двигателя B
8 MB1 Цифровой выход [ШИМ] Выход двигателя B
9 MA2 Цифровой выход [ШИМ] Выход двигателя А
10 MA1 Цифровой выход [ШИМ] Выход двигателя А

Здесь +Ve и -Ve используются для подачи питания на модуль. Контакты INT1 и INT2 используются для управления двигателем A, подключенным к MA1 и MA2. Аналогично, контакты INT3 и INT4 используются для управления двигателем B, подключенным к контактам MB1 и MB2. Как и другие драйверы, он имеет внутри H-мост, который может использоваться для управления двигателем как вперед, так и назад, даже на переменных скоростях с использованием ШИМ (широтно-импульсной модуляции).

Компоненты модуля драйвера двигателя MX1508

На следующем рисунке показаны основные компонентах модуля MX1508. Основной компонент, который занимает место на модуле, — это конденсатор, используемый для фильтрации шин напряжения и их сглаживания. Остальные три компонента достаточно малы.

Компоненты модуля драйвера двигателя MX1508

Я упомянул TC1508 или MX1508 рядом с ИС (микросхемой), потому что есть вероятность получить любой из них или модуль с какой-то другой ИС. На изображении выше вы можете видеть, что я получил модуль с микросхемой TC1508. Помните об этом, когда работаете с вашим модулем.

Так как компонентов не так много, то и его схема проста для понимания. Ниже представлена ​​схема модуля MX1508.

Схема модуля MX1508

Схему можно разделить на две основные секции: силовую секцию и секцию подключения MX1508. В силовой секции есть два больших электролитических конденсатора, используемых для фильтрации шума от входного напряжения. Контакт питания двигателя ИС напрямую подключен к входному напряжению, с резистором 220 Ом, размещенным между схемой логики управления и входным напряжением для ограничения тока в схеме логики управления. Также включен диод для защиты от обратного напряжения.

В секции подключения MX1508 все необходимые контакты легко доступны для подключения.

Одно важное рекомендуемое дополнение - это добавление конденсатора 100 нФ параллельно обоим выходным контактам двигателя, что не сделано по умолчанию в этом модуле. Это дополнение помогает в подавлении шума, фильтрации высокочастотного шума, стабилизации питания и улучшении общей производительности.

Как использовать модуль драйвера двигателя MX1508

Этот модуль может быть использован двумя способами: автономно и с микроконтроллерами. В любом случае, логика работы одинакова и проста.

Каждый двигатель имеет два отдельных входных контакта для управления вращением. В следующей таблице представлена логика управления двигателями с помощью модуля MX1508.

ВХОД ВХОД ВХОД ВХОД ВЫХОД Функция
IN1 IN2 IN3 IN4
НИЗКИЙ НИЗКИЙ - - Мотор А Режим ожидания
ВЫСОКИЙ* НИЗКИЙ - Мотор А Вперед
НИЗКИЙ ВЫСОКИЙ* - - Мотор А Назад
ВЫСОКИЙ ВЫСОКИЙ - - Мотор А Остановка
- - НИЗКИЙ НИЗКИЙ Мотор Б Режим ожидания
- - ВЫСОКИЙ* НИЗКИЙ Мотор Б Вперед
- - НИЗКИЙ ВЫСОКИЙ* Мотор Б Назад
- - ВЫСОКИЙ ВЫСОКИЙ Мотор Б Остановка

*Вместо HIGH подача сигнала ШИМ обеспечит управление скоростью двигателя.

IN1 и IN2 управляют двигателем A, а IN3 и IN4 управляют двигателем B. MX1508 включает в себя встроенные подтягивающие резисторы на всех входах, поэтому, если они не подключены, контакты по умолчанию находятся в состоянии LOW.

Когда оба входа LOW, модуль находится в режиме ожидания, фактически выключен. Когда оба входа HIGH, модуль переходит в режим торможения, удерживая двигатели на месте, как тормозная система. Когда один вход HIGH, а другой LOW, двигатель вращается в определенном направлении. В частности, если вход HIGH является сигналом ШИМ, он соответствующим образом регулирует скорость двигателя.

Схема проекта

Для демонстрационных целей я использую один редукторный двигатель типа N20. Его рабочее напряжение составляет всего 2,5 В, что делает его идеально подходящим для этого модуля драйвера. Схема подключения драйвера двигателя постоянного тока MX1508 к плате Arduino представлена на следующем рисунке.

Схема подключения драйвера двигателя постоянного тока MX1508 к плате Arduino

В схеме сделаны следующие соединения:

  • Модуль MX1508 питается от напряжения 3,3 В.
  • Поскольку нам нужно регулировать скорость двигателя, мы должны использовать цифровые выводы, которые поддерживают ШИМ. Поэтому я выбираю выводы 5 и 6 Arduino UNO и подключаю их к IN1 и IN2 модуля драйвера двигателя.
  • Поскольку мы сосредоточены на управлении двигателем A, двигатель N20 подключен к контактам MA1 и MA2 модуля драйвера двигателя.

Внешний вид собранной конструкции проекта представлен на следующем рисунке.

Внешний вид собранной конструкции проекта

Объяснение кода программы

Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.

Целью данного проекта является вращение вала двигателя вперед и назад с фиксированной скоростью с использованием модуля драйвера двигателя MX1508 и платы Arduino.

Сначала мы объявляем необходимые переменные и определяем соединения контактов:

  • ForwardPin подключен к контакту 6 для движения вперед.
  • BackwardPin подключен к контакту 5 для движения назад.
  • ActionTime — это задержка между изменениями направления (200 миллисекунд).
  • MaxSpeed ​​устанавливает скорость двигателя (диапазон 0-255).
  • DirectionFlag помогает изменять направление вращения двигателя.

В функции setup() мы инициализируем выводы управления двигателем как выходы:

ForwardPin и BackwardPin настроены как цифровые выходные контакты. Эта конфигурация необходима для управления направлением и скоростью вращения двигателя.

Функция loop() содержит основную логику управления направлением и скоростью вращения двигателя:

  • Движение вперед: Когда DirectionFlag имеет значение true, двигатель вращается вперед с MaxSpeed ​​в течение ActionTime миллисекунд, затем останавливается. Флаг переключается на false, и перед изменением направления есть небольшая задержка.
  • Обратное движение: Когда DirectionFlag имеет значение false, мотор вращается назад с MaxSpeed ​​в течение ActionTime миллисекунд, затем останавливается. Флаг переключается на значение true, и перед изменением направления есть небольшая задержка.

Этот код непрерывно меняет направление вращения двигателя с прямого на обратное с указанной продолжительностью и скоростью.

Тестирование работы проекта

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

Выше вы можете увидеть GIF-видео рабочей демонстрации. Как мы и ожидали, двигатель вращается вперед и назад. Вы можете изменить код, чтобы получить более разнообразные результаты. Теперь, я надеюсь, у вас есть представление о том, как соединить модуль драйвера двигателя постоянного тока MX1508 с платой Arduino UNO.

Часто задаваемые вопросы

1) Распиновка микросхемы MX1508?

Схему расположения выводов микросхемы MX1508 можно увидеть ниже.

Схема расположения выводов микросхемы MX1508

2) Технические характеристики MX1508?

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

3) Максимальное напряжение MX1508?

Максимальное напряжение MX1508, согласно официальному техническому описанию, составляет 9,6 В. Если на вашем модуле установлен TC1508, то его максимальное напряжение составит 7,2 В.

4) Можно ли использовать MX1508 для управления шаговым двигателем?

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

5) Можно ли контролировать скорость с помощью MX1508?

Вы можете управлять скоростью двигателя постоянного тока, подавая ШИМ-сигнал на входные контакты направления модуля.

6) MX1508 против L298N?

В общем случа, L298N предназначен для приложений с более высокой мощностью, поскольку имеет диапазон напряжения до 46 В и ток 2 А. Благодаря версии с радиатором температура микросхемы легко поддерживается в нужном диапазоне. С другой стороны, MX1508 предназначен для приложений с низкой мощностью, таких как управление небольшими двигателями, игрушечными автомобилями и т. д. В зависимости от модели ИС напряжение варьируется от 2 до 9,6 В, а ток варьируется от 0,8 до 2 А.

Кроме того, управление немного отличается по сравнению друг с другом. В драйвере L298N есть выделенный входной контакт ШИМ для управления скоростью, но в MX1508 сигнал ШИМ может быть подан на контакты управления направлением вращения.

Исходный код программы

Схему проекта и код программы вы также можете скачать по следующей ссылке на github.

Источник статьи

(Проголосуй первым!)
Загрузка...
65 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *