Двигатель — достаточно мощная нагрузка для Ардуино. Подключить её к микроконтроллеру не получится — двигатель либо просто не запуститься, либо повредит элементы платы. Поэтому, для этого используют различные элементы управления, например транзистор, реле, или специальные драйверы. В этой статье рассмотрим, как подключить двигатель и управлять им.
Подключение двигателя через транзистор
Для подключения двигателя будем использовать:
- n-канальный мосфет (полевой транзистор)
- резистор с сопротивлением в диапазоне 1 – 10 кОм
- резистор с сопротивлением в диапазоне 10 – 500 Ом
- двигатель постоянного тока 5V
- обратный диод
Подключаем по следующей схеме:
- Резистор R1 10 – 500 Ом для защиты пина на плате.
- Резистор R2 1 – 10 кОм для подтяжки затвора (защита от случайного замыкания цепи транзистором, ибо затвор очень чувствителен к любым воздействиям).
- Диод для защиты транзистора от индукционных выбросов от двигателя. Диод может быть предустановлен в транзистор (смотрите по даташиту своей модели). Без него, двигатель «убьет» транзистор.
При подключении через пин, поддерживающий ШИМ (широтно-импульсная модуляция), возможна регулировка скорости через команду:
|
Подключение двигателя через реле
Двигатель можно подключить через реле модуль. Правда, мы теряем возможность использовать ШИМ для регулировки скорости.
Подключаем по такой схеме:
- Информационный вход реле подключаем к контакту на плате.
- Питание выводим для каждого элемента отдельно.
- Плюс подключаем к контакту VCC на реле, землю на GND
- Плюсовой контакт источника питания подключаем к нормально разомкнутому контакту (NO) реле.
- Один из контактов двигателя проводим на землю, другой к общему контакту (COM) реле.
Так как использовать ШИМ невозможно, для проверки работы этого метода подойдет стандартный Blink-код для мигания светодиодом.
Подключение двигателя через драйвер
Самым удобным способом управления двигателем считается подключение через драйвер. Это специальный модуль, на котором распаяна силовая схема, имеются логические контакты и выводы для питания.
Данный способ разберем на примере популярного драйвера L298:
Возможно подключение до двух двигателей, но для примера приведем схему для одного.
Схема следующая:
- Питание выводим отдельно для платы, отдельно для драйвера.
- Подключаем пины, поддерживающие ШИМ, к пинам IN1, IN2, ENA на драйвере.
- Контакты двигателя соединяем с клеммами OUT1, OUT2.
- Так как используется двигатель 5V, перемычку питания необходимо отключить. В случае с моторами выше 5V, ставится перемычка, на клемму питания мотора 6V – 35V, на клемму 5V подключается питание “мозгов”.
Простой скетч для управления через ШИМ:
|
По такой схеме подключается и управляется двигатель постоянного тока.
Разберем подключение шагового двигателя. Нам понадобится драйвер ULN2003APG. Схема выглядит так:
Скетч для управления им из стандартной библиотеки Arduino IDE:
|
Итак, мы подключили и можем управлять нашим шаговым двигателем.
Заключение
Мы разобрали, как подключить двигатель тремя способами: с помощью мосфета, модуля реле или драйвера.
Самым практичным из них является подключение через драйвер — в его схеме уже распаяна логическая и силовая часть, что избавляет от лишней работы во время сборки схемы. К тому же, это наиболее безопасный метод — драйверы уже имеют защитные микросхемы на своей плате.