Драйверы двигателя L298N, L293D и Arduino Motor Shield
Драйвер двигателя выполняет крайне важную роль в проектах ардуино, использующих двигатели постоянного тока или шаговые двигатели. C помощью микросхемы драйвера или готового шилда motor shield можно создавать мобильных роботов, автономные автомобили на ардуино и другие устройства с механическими модулями. В этой статье мы рассмотрим подключение к ардуино популярных драйверов двигателей на базе микросхем L298N и L293D.
Драйвер двигателя в проектах ардуино
Для чего нужен драйвер двигателя?
Как известно, плата ардуино имеет существенные ограничения по силе тока присоединенной к ней нагрузки. Для платы это 800 mA, а для каждого отдельного вывода – и того меньше, 40mA. Мы не можем подключить напрямую к Arduino Uno, Mega или Nano даже самый маленький двигатель постоянного тока. Любой из этих двигателей в момент запуска или остановки создаст пиковые броски тока, превышающие этот предел.
Как же тогда подключить двигатель к ардуино? Есть несколько вариантов действий:
Использовать реле. Мы включаем двигатель в отдельную электрическую сеть, никак не связанную с платой Arduino. Реле по команде ардуино замыкает или размыкает контакты, тем самым включает или выключает ток. Соответственно, двигатель включается или выключается. Главным преимуществом этой схемы является ее простота и возможность использовать Главным недостатком данной схемы является то, что мы не можем управлять скоростью и направлением вращения.
Использовать силовой транзистор. В данном случае мы можем управлять током, проходящим через двигатель, а значит, можем управлять скоростью вращения шпинделя. Но для смены направления вращения этот способ не подойдет.
Использовать специальную схему подключения, называемую H-мостом, с помощью которой мы можем изменять направление движения шпинделя двигателя. Сегодня можно без проблем найти как микросхемы, содержащие два или больше H-моста, так и отдельные модули и платы расширения, построенные на этих микросхемах.
В этой статье мы рассмотрим последний, третий вариант, как наиболее гибкий и удобный для создания первых роботов на ардуино.
Микросхема или плата расширения Motor Shield
Motor Shield – плата расширения для Ардуино, которая обеспечивает работу двигателей постоянного тока и шаговых двигателей. Самыми популярными платами Motor Shield являются схемы на базе чипов L298N и L293D, которые могут управлять несколькими двигателями. На плате установлен комплект сквозных колодок Ардуино Rev3, позволяющие устанавливать другие платы расширения. Также на плате имеется возможность выбора источника напряжения – Motor Shield может питаться как от Ардуино, так и от внешнего источника. На плате имеется светодиод, который показывает, работает ли устройство. Все это делает использование драйвера очень простым и надежным – не нужно самим изобретать велосипеды и решать уже кем-то решенные проблемы. В этой статье мы будем говорить именно о шилдах.
Принцип действия H-моста
Принцип работы драйвера двигателя основан на принципе работы H-моста. H-мост является электронной схемой, которая состоит из четырех ключей с нагрузкой. Название моста появилось из напоминающей букву H конфигурации схемы.
Схема моста изображена на рисунке. Q1…Q4 0 полевые, биполярные или IGBT транзисторы. Последние используются в высоковольтных сетях. Биполярные транзисторы практически не используются, они могут присутствовать в маломощных схемах. Для больших токов берут полевые транзисторы с изолированным затвором. Ключи не должны быть замкнуты вместе одновременно, чтобы не произошло короткого замыкания источника. Диоды D1…D4 ограничительные, обычно используются диоды Шоттки.
С помощью изменения состояния ключей на H-мосте можно регулировать направление движения и тормозить моторы. В таблице приведены основные состояния и соответствующие им комбинации на пинах.
Q1 | Q2 | Q3 | Q4 | Состояние |
1 | 0 | 0 | 1 | Поворот мотора вправо |
0 | 1 | 1 | 0 | Поворот мотора влево |
0 | 0 | 0 | 0 | Свободное вращение |
0 | 1 | 0 | 1 | Торможение |
1 | 0 | 1 | 0 | Торможение |
1 | 1 | 0 | 0 | Короткое замыкание |
0 | 0 | 1 | 1 | Короткое замыкание |
Драйвер двигателя L298N
Модуль используется для управления шаговыми двигателями с напряжением от 5 до 35 В.
Плата выглядит следующим образом:
Распиновка микросхемы L298N:
- Vcc – используется для подключения внешнего питания;
- 5В;
- Земля GND;
- IN1, IN2, IN3, IN4 – используется для плавного управления скоростью вращения мотора;
- OUT1, OUT2 – используется для выхода с первого двигателя;
- OUT3, OUT4 – используется для выхода со второго двигателя;
- S1 – переключает питание схемы: от внешнего источника или от внутреннего преобразователя;
- ENABLE A, B – требуются для раздельного управления каналами. Используются в двух режимах – активный, при котором каналами управляет микроконтроллер и имеется возможность изменения скорости вращения, и пассивный, в котором невозможно управлять скоростью двигателей (установлено максимальное значение).
При подключении двух двигателей, нужно проверить, чтобы у них была одинаковая полярность. Если полярность разная, то при задании направления движения они будут вращаться в противоположные стороны.
Драйвер двигателя L293D
L293D – является самой простой микросхемой для работы с двигателями. L293D обладает двумя H-моста, которые позволяют управлять двумя двигателями. Рабочее напряжение микросхемы – 36 В, рабочий ток достигает 600 мА. На двигатель L293D может подавать максимальный ток в 1,2 А.
В схеме имеется 16 выходов. Распиновка:
- +V – питание на 5 В;
- +Vmotor – напряжение питания для мотором до 36 В;
- 0V – земля;
- En1, En2 –включают и выключают H-мосты;
In1, In2 – управляют первым H-мостом;- Out1, Out2 – подключение первого H-моста;
- In3, In4 – управляют вторым H-мостом;
- Out3, Out4 – подключение второго H-моста.
Для подключения к микроконтроллеру Arduino Uno нужно соединить выходы In1 на L293D и 7 пин на Ардуино, In2 – 8, In3 – 2, In4 – 3, En1 – 6, En2 – 5, V – 5V, Vmotor – 5 V, 0V – GND. Пример подключения одного двигателя к Ардуино показан на рисунке.
Драйвер двигателя на микросхеме HG7881
HG7881 – двухканальный драйвер, к которому можно подключить 2 двигателя или четырехпроводной двухфазный шаговый двигатель. Устройство часто используется из-за своей невысокой стоимости. Драйвер используется только для изменения направления вращения, менять скорость он не может.
Плата содержит 2 схемы L9110S, работающие как H-мост.
Характеристики драйвера HG7881:
- 4-контактное подключение;
- Питание для двигателей от 2,5 В до 12 В;
- Потребляемый ток менее 800 мА;
- Малые габариты, небольшой вес.
Распиновка:
- GND – земля;
- Vcc – напряжение питания 2,5В – 12В;
- A-IA – вход A(IA) для двигателя A;
- A-IB – вход B (IB) для двигателя A;
- B-IA – вход A(IA) для двигателя B;
- B-IB – вход B (IB) для двигателя B.
В зависимости от поданного сигнала на выходах IA и IB будет разное состояние для двигателей. Возможные варианты для одного из моторов приведены в таблице.
IA | IB | Состояние мотора |
0 | 0 | Остановка |
1 | 0 | Двигается вперед |
0 | 1 | Двигается назад |
1 | 1 | Отключение |
Подключение одного двигателя к Ардуино изображено на рисунке.
Сравнение модулей
Модуль L293D подает максимальный ток в 1,2А, в то время как на L298N можно добиться максимального тока в 4 А. Также L293D обладает меньшим КПД и быстро греется во время работы. При этом L293D является самой распространенной платой и стоит недорого. Плата HG7881 отличается от L293D и L298N тем, что с ее помощью можно управлять только направлением вращения, скорость менять она не может. HG7881 – самый дешевый и самый малогабаритный модуль.
Подключение L298N к Arduino
Как уже упоминалось, в первую очередь нужно проверить полярность подключенных двигателей. Двигатели, вращающиеся в различных направлениях, неудобно программировать.
Нужно присоединить источник питания. + подключается к пину 4 на плате L298N, минус (GND) – к 5 пину. Затем нужно соединить выходы с L298N и пины на Ардуино, причем некоторые из них должны поддерживать ШИМ-модуляцию. На плате Ардуино они обозначены ~. Выходы с L298N IN1, IN2, IN3 и IN4 подключить к D7, D6, D5 и D4 на Ардуино соответственно. Подключение всех остальных контактов представлено на схеме.
Направление вращения задается с помощью сигналов HIGH и LOW на каждый канал. Двигатели начнут вращаться, только когда на 7 пине для первого мотора и на 12 пине для второго на L298N будет сигнал HIGH. Подача LOW останавливает вращение. Чтобы управлять скоростью, используются ШИМ-сигналы.
Для управления шаговым двигателем в Arduino IDE существует стандартная библиотека Stepper library. Чтобы проверить работоспособность собранной схемы, можно загрузить тестовый пример stepper_oneRevolution. При правильной сборке вал двигателя начнет вращаться.
При работе с моторами Ардуино может периодически перезагружаться. Это возникает из-за того, что двигателям требуются большие токи при старте и в момент торможения. Для решения этой проблемы в плату встроены конденсаторы, диоды и другие схемы. Также для этих целей на шидле имеется раздельное питание.
Arduino драйвер двигателя l298n
Автор: Сергей · Опубликовано 20.12.2018 · Обновлено 14.10.2019
Одним из самых простых и недорогх способов управления двигателями постоянного тока является модуль L298N Motor Driver с Arduino. Он может контролировать скорость и направление вращения двух двигателей постоянного тока, а так же управлять биполярным шаговым двигателем (типа NEMA 17).
Технические параметры► Напряжение питания логики модуля: 5 В
► Потребляемый ток встроенной логики: 36 мА
► Напряжение питания драйвера: 5 В – 35 В
► Рабочий ток драйвера: 2 А (пиковый ток 3 А)
► Габариты: 43.5 мм х 43. 2мм х 29.4мм
Основной чип модуля это микросхема L298N, состоящая из двух H-мост (H-Bridge), один для выхода A, второй для выхода B. H-мост широко используется в электронике и служит для изменения вращения двигателем, схема H-моста содержит четыре транзистора (ключа) с двигателем в центре, образуя H-подобную компоновку. Принцип работы прост, при одновременном закрытие двух отдельных транзистора изменяется полярность напряжения, приложенного к двигателю. Это позволяет изменять направление вращения двигателя. На рисунке ниже, показана работа H-мостовой схемы.
Для управления скоростью двигателя постоянного тока используется метод PWM (Широко-импульсной модуляции).
Модуль L298N содержит разъем для подключения питания, ряд перемычек для настройки модуля, два выхода A и B и разъем управления, которые регулируют скорость и направление вращения, назначение каждого можно ознакомится ниже:
► Вывод Vss — питание двигателей, от 5 до 35 В;
► Вывод GND — общий вывод заземления;
► Вывод Vs — питание для логической схемы;
► Перемычка ENA — используются для управления скоростью двигателя A;
► Вывода IN1 и IN2 — используются для управления направлением вращения двигателя A;
► Вывода IN3 и IN4 — используются для управления направлением вращения двигателя B;
► Перемычка ENB — используются для управления скоростью двигателя B;
► Выходы OUT1 и OUT2 — разъем для двигателя A;
► Выходы OUT3 и OUT4 — разъем для двигателя B;
Принципиальная схема модуля L298N
Питание модуля.
Питание модуля L298N осуществляется через трех контактный разъем, шагом 3,5 мм:
► Vs — источник питания двигателей, 3B — 35B
► GND — земля
► Vss — источник питания модуля, 4,5В — 5,5В
Фактически у модуля L298N, есть два контакта питания, а именно. «Vss» и «Vs». От «Vs» питаются двигатели с допустимым напряжением от 5 В до 35 В, а от «Vss» питается логическая схема модуля 4,5В до 5,5В. На плате установлен встроенный стабилизатор напряжения на 5 Вольт (78M05), его можно включить или отключить с помощью перемычки. Когда перемычка установлена, стабилизатор включен и питает логику модуля (Vss) от источника питания двигателя (Vs). При включенном стабилизаторе, вход «Vss» работает как выход и обеспечивает 5В с током 0,5 А. Когда перемычка убрана, стабилизатор отключен и необходимо отдельно подключить питание 5 Вольт на вход Vss.
Внимание! Нельзя установить перемычку, если напряжение двигателя ниже 12 Вольт.
Падение напряжения L298N
Падение напряжения драйвера L298N составляет около 2 В, это связано с внутренним падением напряжения в транзисторах в цепи H-мосте. Таким образом, если мы подключим 12 В к источнику питания двигателя, то двигатели получат напряжение около 10 В. Это означает, что двигатель на 12 В не будет работать с максимальной скоростью, для получения максимальной скорости, напряжение поданное на двигателя должен быть выше напряжения (2 В), чем потребность в фактическом напряжении двигателя. Учитывая падение напряжения на 2 В, если вы используете двигатели 5 В, вам необходимо обеспечить питание 7 В. Если у вас 12-ваттные двигатели, то напряжение питания вашего двигателя должно составлять 14 В.
Управления скоростью
Разъемы управления скоростью ENA и ENB используются для включения и выключения управления скоростью двигателей. Когда перемычка установлена, двигатель вращается с максимальной скоростью. Если необходимо управлять скоростью двигателей, необходимо убрать перемычку и подключить выводы к контактам с поддержкой PWM на Arduino.
Необходимые детали:
► Arduino UNO R3 x 1 шт.
► Драйвер мотора на L298N (5-35V, 2A) x 1 шт.
► Коллекторный двигатель x 2 шт.
► Комплект проводов DuPont 2.54 мм, 20 см x 1 шт.
Подключение:
Первым делом необходимо подключить источник питания 12B к двигателям, в примере используется распространенные двигатель постоянного тока, рассчитанные на 3B . . . 12B (применяемые в робототехнике). Учитывая внутреннее падение напряжения на микросхеме L298N, двигатели получат 10 В и будут вращаться не в полную силу.
Далее, нужно подключить 5 вольт на логическую схему L298N, для этого воспользуемся встроенным стабилизатором напряжения, который работает от источника питания двигателя, поэтому, перемычка EN должна быть установлена.
Теперь осталось подключить управляющие провода ENA, IN1, IN2, IN3, IN4 и ENB к шести цифровым выводам Arduino 9, 8, 7, 5, 4 и 3. Обратите внимание, что выводы Arduino 9 и 3 поддерживают ШИМ. Теперь, подключаем двигатели, один к клемме A (OUT1 & OUT2), а другой к клемме B (OUT3 & OUT4). Принципиальная схема подключения приведена ниже.
Осталось подключить Arduino к источнику питания и загрузить скетч.
Драйвер моторов на базе микросхемы L298N (RKP-MDL298-01A-V2 подробнее =>>) позволяет управлять двумя моторами постоянного тока либо шаговым двигателем с потребляемым током до 2 Ампер.
В данной же статье мы рассмотрим драйвер двигателей базе микросхемы L298N собранный на платке в виде модуля.
В отличии от микросхемы L293D, в микросхеме L298N не встроены защитные диоды, их необходимо устанавливать в обвязку микросхемы дополнительно (8 штук по бокам).
По функционалу микросхема L298N полностью идентична микросхеме L293D. Мы видим те же управляющие выводы. Чередование разноименных сигналов (высокий логический уровень или низкий) на парах выводов IN1, IN2 и IN3, IN4 задают направление вращения моторов.
Выводы ENABLE A, B (ENA привязан к IN1, IN2. ENB к IN3, IN4) отвечают за раздельное управление каналами. Могут использоваться в двух режимах:
Условно «активном» режиме, когда ими будет управлять контроллер (рис. 1) – высокий логический уровень разрешает вращение моторов, низкий запрещает вне зависимости от состояния выводов «IN». Для регулировки скорости моторов, на «EN» выводы подается ШИМ (PWM) сигнал.
Условно «пассивном» режиме, просто притянув выводы «EN» к высокому уровню (+5V). Для этого на плате, рядом с выводами ENA и ENB находятся штырьки, соединенные с +5V. Замыкаем выводы с помощью джамперов (рис. 2). В данном режиме мы не сможем регулировать скорость двигателей, они будут всегда вращаться в полную скорость (за то для управления экономится 2 вывода контроллера). Направление вращения будет задаваться по-прежнему, а вот для остановки в данном варианте, состояние выводов будет уже играть роль. Для остановки нужно будет подавать одноименные сигналы на выводы «IN».
В программных кодах в продолжении статьи все будет прокомментировано.
Клеммник подачи питания и работа стабилизатора.
Разъем “+12V” предназначен для подачи питания на моторы и одновременно, при одетом джампере, подает питание на стабилизатор, который выдает +5V для питания логики драйвера.
Выходит, при таком варианте, не нужно тянуть лишний провод на разъем +5V.
Маркировка именно “+12V” связана с тем, что напряжение питания моторов может лежать в диапазоне от 5V до 35V, в то время как максимальное входное напряжение стабилизатора 12V. То есть, при одетом джампере, подача свыше 12V может спалить стабилизатор.
Как мы уже поняли, маркировка “+12V” носит предупредительно-информативный характер.
При напряжении питания свыше 12V, без опаски подвеем нужное напряжение на данный вывод, но не забываем снять джампер.
Теперь напряжение не поступает на стабилизатор и не сможет повредить его, но теперь необходимо подать внешнее +5V. Подключение моторов к модулю L298N
Начнем с подключения одного мотора, с притянутым к +5V выводом ENB.
Заставим моторчик вращаться «вправо» 4 секунды, остановиться на 0.5 секунды, вращаться «влево» 4 секунды, остановка 5 секунд и снова цикл повторяется.
Пример программного кода
В данном примере мы подсоединили ENB к выводу ШИМ (D3), и задействуем возможность драйвера управлять скоростью, меняя скважность посылаемого ШИМ сигнала. Значения скважности задаются функцией analogWrite (pin, число) , где число изменяется от 0 до 255, прямо пропорционально скважности сигнала. Для наглядности, подобраны четыре значения, при которых двигатель стартует с низких оборотов, набирает средние, выходит на максимальные и не вращается.
Пример программного кода Ну и напоследок подключим два двигателя с регулировкой скорости.
В приведенном ниже скетче два мотора будут вращаться в обе стороны с плавным нарастанием скорости.
Драйвер моторов на базе микросхемы L298N (RKP-MDL298-01A-V2 подробнее =>>) позволяет управлять двумя моторами постоянного тока либо шаговым двигателем с потребляемым током до 2 Ампер.
В данной же статье мы рассмотрим драйвер двигателей базе микросхемы L298N собранный на платке в виде модуля.
В отличии от микросхемы L293D, в микросхеме L298N не встроены защитные диоды, их необходимо устанавливать в обвязку микросхемы дополнительно (8 штук по бокам).
По функционалу микросхема L298N полностью идентична микросхеме L293D. Мы видим те же управляющие выводы. Чередование разноименных сигналов (высокий логический уровень или низкий) на парах выводов IN1, IN2 и IN3, IN4 задают направление вращения моторов.
Выводы ENABLE A, B (ENA привязан к IN1, IN2. ENB к IN3, IN4) отвечают за раздельное управление каналами. Могут использоваться в двух режимах:
Условно «активном» режиме, когда ими будет управлять контроллер (рис. 1) – высокий логический уровень разрешает вращение моторов, низкий запрещает вне зависимости от состояния выводов «IN». Для регулировки скорости моторов, на «EN» выводы подается ШИМ (PWM) сигнал.
Условно «пассивном» режиме, просто притянув выводы «EN» к высокому уровню (+5V). Для этого на плате, рядом с выводами ENA и ENB находятся штырьки, соединенные с +5V. Замыкаем выводы с помощью джамперов (рис. 2). В данном режиме мы не сможем регулировать скорость двигателей, они будут всегда вращаться в полную скорость (за то для управления экономится 2 вывода контроллера). Направление вращения будет задаваться по-прежнему, а вот для остановки в данном варианте, состояние выводов будет уже играть роль. Для остановки нужно будет подавать одноименные сигналы на выводы «IN».
В программных кодах в продолжении статьи все будет прокомментировано.
Клеммник подачи питания и работа стабилизатора.
Разъем “+12V” предназначен для подачи питания на моторы и одновременно, при одетом джампере, подает питание на стабилизатор, который выдает +5V для питания логики драйвера.
Выходит, при таком варианте, не нужно тянуть лишний провод на разъем +5V.
Маркировка именно “+12V” связана с тем, что напряжение питания моторов может лежать в диапазоне от 5V до 35V, в то время как максимальное входное напряжение стабилизатора 12V. То есть, при одетом джампере, подача свыше 12V может спалить стабилизатор.
Как мы уже поняли, маркировка “+12V” носит предупредительно-информативный характер.
При напряжении питания свыше 12V, без опаски подвеем нужное напряжение на данный вывод, но не забываем снять джампер.
Теперь напряжение не поступает на стабилизатор и не сможет повредить его, но теперь необходимо подать внешнее +5V. Подключение моторов к модулю L298N
Начнем с подключения одного мотора, с притянутым к +5V выводом ENB.
Заставим моторчик вращаться «вправо» 4 секунды, остановиться на 0.5 секунды, вращаться «влево» 4 секунды, остановка 5 секунд и снова цикл повторяется.
Пример программного кода
В данном примере мы подсоединили ENB к выводу ШИМ (D3), и задействуем возможность драйвера управлять скоростью, меняя скважность посылаемого ШИМ сигнала. Значения скважности задаются функцией analogWrite (pin, число) , где число изменяется от 0 до 255, прямо пропорционально скважности сигнала. Для наглядности, подобраны четыре значения, при которых двигатель стартует с низких оборотов, набирает средние, выходит на максимальные и не вращается.
Пример программного кода Ну и напоследок подключим два двигателя с регулировкой скорости.
В приведенном ниже скетче два мотора будут вращаться в обе стороны с плавным нарастанием скорости.
Драйвер двигателя 2-кан H-мост MX1508, L298N Mini для Arduino
Драйвер двигателя 2-кан H-мост MX1508, L298N Mini для Arduino используется для управления двумя маломощными коллекторными двигателями постоянного тока или маломощным 4-х проводным двухфазным шаговым двигателем. Практическое применение: управление двигателями небольших колесных роботов или двигателями передвижных игрушек.
Схема подключения драйвера MX1508:
Для закрепления модуля на плоской поверхности в плате предусмотрено одно монтажное отверстие.
Управление драйвером MX1508 осуществляется или от Arduino контроллера, или от другого микропроцессорного управляющего устройства. Микросхема модуля MX1508 работает по принципу H-моста и используются для смены полярности питания мотора, что дает возможность реверса.
Драйвер двигателя 2-кан H-мост MX1508, L298N Mini для Arduino имеет три группы клемм под пайку для подключения питания, управляющего сигнала и двигателей:
- Клеммы, обозначенные «+» и «–», используются для подключения напряжения питания;
- Клеммы, обозначенные IN1, IN2, IN3, IN4, используются для подключения управляющего сигнала;
- Клеммы, обозначенные MOTOR-A, MOTOR-B, используются для подключения обмоток двигателей.
Питание драйвера осуществляется или от Arduino контроллера, или другого микропроцессорного управляющего устройства, или внешнего источника питания (блока питания, батареи). Напряжение питания составляет 2 – 9 В постоянного тока.
Управляющий сигнал составляет 1,8 – 7 В постоянного тока.
Максимальный потребляемый ток подключаемых двигателей составляет до 1,5 А.
Характеристики:
микросхема: MX1508;
особенность: H-мост, возможность реверса;
напряжение питания: 2 – 9 В постоянного тока;
управляющий сигнал: 1,8 – 7 В постоянного тока;
максимальный потребляемый ток двигателей: до 1,5 А;
размеры: 25 x 21 x 6 мм;
вес: 3 г.
Драйвер коллекторных двигателей L9110S (HG7881)
Модуль собран на двух микросхемах HG7881 или аналоге L9110S, к модулю можно подключить два маломощных коллекторных или один шаговый двигатель.
Характеристики драйвера L9110S (HG7881):
- Диапазон напряжения питания: 2.5V … 12V.
Максимальный ток: 800mA, на каждый канал.
Управление логическим уровнем.
Встроенные защитные диоды.
Рабочая температура: 0℃ … 80℃.
Особенности модуля:
Модуль собран на двух полумостовых драйверах (H-bridge) HG7881, к сожалению подробного даташита на микросхему нет. Хотя и пишут что он предназначен для управления моторами, это не совсем так, у драйвера отсутствует возможность изменять скорость вращения мотора, драйвер способен изменять только направление вращения. По этой причине, данный модуль больше подходит для управления небольшими шаговыми двигателями, нежели коллекторными.
На схеме из даташита видно, что в наличии только входы для управления полумостами и питание.
Принципиальная схема модуля:
Подключение модуля к Arduino:
В случаи подключения коллекторного мотора.
Модуль подключается на два свободных выхода arduino, питание для моторов, если они маломощные и работают от напряжение 5 вольт, можно взять от arduino. Чтобы заставить мотор крутится, нужно на один выход подать логическую единицу и на второй логический ноль. Для изменения направления вращения, нужно инвертировать состояние обеих выходов arduino. подробнее в видео ниже.
код из видео
#define A1_A 8 // выходы на драйвер #define A1_B 9 void setup(){ pinMode (A1_A, OUTPUT); pinMode (A1_B, OUTPUT); } void loop(){ // включаем мотор на 1 секунды вперед digitalWrite (A1_A, HIGH); digitalWrite (A1_B, LOW); delay(1000); // выключаем мотор digitalWrite (A1_A, LOW); digitalWrite (A1_B, LOW); delay(1000); // включаем мотор на 1 секунды назад digitalWrite (A1_A, LOW); digitalWrite (A1_B, HIGH); delay(1000); // выключаем мотор digitalWrite (A1_A, LOW); digitalWrite (A1_B, LOW); delay(1000); // плавно увеличиваем скорость digitalWrite (A1_A, LOW); for (int i = 0; i < 255; i++){ analogWrite (A1_B, i); delay(25); } delay(2000); // плавно уменьшаем скорость digitalWrite (A1_A, LOW); for (int i = 255; i > 0; i--){ analogWrite (A1_B, i); delay(25); } delay(1000); }
В случаи подключения биполярного шагового двигателя.
Подключаем обмотки за место коллекторных двигателей. Для работы можно использовать встроенную в среду библиотеку Stepper.h.
Запись опубликована автором admin в рубрике Обзоры с метками H-bridge, L9110S, коллекторный двигатель, шаговый двигатель.
ДРАЙВЕР НИЗКОВОЛЬТНЫХ ЭЛЕКТРО ДВИГАТЕЛЕЙ
Основное применение аппаратной платформы Arduino – это конструирование роботов, во всяком случае, начинается знакомство с данной аппаратной платформой, как правило, именно с этого. Ходовая часть большинства колесных роботов [1] оснащается электромоторами, которые представляют собой мощную нагрузку, прямое подключение которой к портам Arduino может вызвать только выход из строя последней. Для подключения нагрузки потребляющей большой ток можно использовать самодельные релейные схемы или транзисторные ключи [2], а можно приобрести готовый драйвер для подключения электродвигателей на Ru.aliexpress.com
Устройство поставляется в обычном антистатическом пакете.
Модуль представляет собой печатную плату размером 43 х 43 мм, на которой установлена микросхема радиаторе, высота которого составляет 24 мм, масса 25 г.
Данное устройство позволяет одновременно управлять парой маломощных низковольтных электродвигателей постоянного тока. По заявлениям продавца максимально допустимый общий ток, которым можно нагрузить драйвер составляет 2 А на канал, а максимальная мощность двигателей ограничена 20 Вт. На плате хорошо видна пара двухклемных колодок для подключения электромоторов и трехклемная колодка для подачи напряжения питания.
Устройству требуется два напряжения питания 5-35 В для электродвигателей и 5 В для электронной части. При подаче питания на плате загорается индикатор подачи напряжения питания. При питания от напряжении ниже 12 В (автор проверял при 6 В), отдельный источник питания для электронной части можно не подключать.
На плате рядом с клеммой питания имеется перемычка, которую необходимо снять в случае раздельного питания силовой и электронной части [3-6]. Все колодки промаркированы с тыльной стороны платы.
Для управления нагрузкой плата драйвера имеет 6 информационных входов.
Входы IN1, IN2 задают направление вращения одного двигателя, а другая пара IN3, IN4, соответственно другого. Если на одном из входов пары присутствует низкий логический уровень, а на другом высокий, то ротор двигателя вращается в одну сторону, а если, сигналы поменяются на противоположные, то направление вращения также сменится. Если на оба входа подать низкий логический уровень, то двигатель будет остановлен. Как понимает автор, подача высокого логического уровня на оба выхода пары одновременно не допустима [7].
Если управление парой двигателей осуществляется только по четырем проводам, то двигатель развивает максимально допустимую мощность (программа L298N_1, взята из [5]). Скачать файл
Видео 1
Для управления мощностью двигателей предусмотрены входы ENA и ENB. ENA привязан к IN1, IN2, а ENB регулирует мощность двигателя, управляемого через IN3, IN4. В простейшем случае, когда нет необходимости в регулировании оборотов двигателя, эти входы замкнуты перемычками на шину питания. Для управления скоростью вращения электромоторов используется ШИМ [8-10], соответственно необходимо подключать к данным входам драйвера те порты Arduino, которые поддерживают данный режим. При этом для управления одним двигателем в данном режиме понадобится три порта Arduino (программа L298N_2, взята из [5]).
Видео 2
Как говорилось выше драйвер двигателей L298N позволяет аналогично управлять двумя двигателями, при этом, разумеется, в совокупности понадобится задействовать 6 портов Arduino.
Для демонстрации работы модуля код программ взят из [5], но следует отметить, что в примере, который демонстрирует работу пары электромоторов, допущена ошибка при назначении портов управления ENA и ENB (исправленный вариант L298N_3).
Видео 3
Для подключения драйвера к Arduino UNO были использованы проводники с гнездами на обоих концах. Длина проводов 10 см, эти соединительные провода были приобретены тоже на Али.
Также данное устройство можно использовать для управления шаговым двигателем [11].
Подведём итог
В целом это отличный и недорогой способ управления ходовой частью робота. Своих денег устройство однозначно стоит. Обзор подготовил специально для «Радиосхем» — Denev.
Источники
- 1) http://radioskot.ru/publ/raznoe/shassi_dlja_kolesnogo_robota/18-1-0-1122
- 2) Лекомцев Д.Г. Arduino. Подключение типовых внешних устройств. – Радио, 2016, №11, с. 51-54
- 3) http://cxem.net/arduino/arduino70.php
- 4) http://www.2150692.ru/faq/72-l298n-arduino
- 5) http://zelectro.cc/Motor_shield_L298N_Arduino
- 6) http://robot-kit.ru/article_info.php/articles_id/22/article/-font-color—993300—Draiver-motorov-na-L298N-podklyuchenie-k-Arduino—font-
- 7) Холостов К. Робот-пылесос. Журнал Левша №3 2015 г. с.12-14
- 8) Холостов К. Умный дом. Журнал Левша №2 2013 г. с.12-14
- 9) Лекомцев Д.Г. Arduino. Подключение типовых внешних устройств. – Радио, 2016, №11, с. 51-54
- 10) http://robocraft.ru/blog/arduino/58.html
- 11) http://arduino-diy.com/arduino-drayver-shagovogo-dvigatelya-i-dvigatelya-postoyannogo-toka-L298N
Форум
Форум по обсуждению материала ДРАЙВЕР НИЗКОВОЛЬТНЫХ ЭЛЕКТРО ДВИГАТЕЛЕЙ
Драйвер шагового двигателя и двигателя постоянного тока L298N и Arduino
- В наличии 12 ед.
- Оптом и в розницу
- Код: 08822
62,50 грн.
Показать оптовые ценыМинимальная сумма заказа на сайте — 100 грн.
Драйвер шагового двигателя и двигателя постоянного тока L298N и ArduinoВ наличии 12 ед.62,50 грн.
Купить Партнерские цены+38093-045-66-80
Інтернет-магазин
+38093-045-66-80
Інтернет-магазин
- График работы
менеджер
УкраинаДнепропетровская областьДнепрГлавный офис компании | Телефоны магазинов можно найти в разделе «Контакты магазинов для самовывоза» нашего сайтавозврат товара в течение 14 дней за счет покупателя Подробнее
У компании подключены электронные платежи. Теперь вы можете купить любой товар не покидая сайта.Motor Driver Speed Control with an Arduino
В этом примере мы будем управлять скоростью линейного привода с помощью Arduino и драйвера двигателя.
Примечание. Это руководство предполагает наличие предварительных знаний об основных электронных принципах, аппаратном и программном обеспечении Arduino. Если вы впервые используете Arduino, мы предлагаем изучить основы одного из многих замечательных руководств для начинающих, доступных через поиск в Google и на YouTube. Имейте в виду, что у нас нет ресурсов для оказания технической поддержки для пользовательских приложений, и мы не будем отлаживать, редактировать, предоставлять код или схемы соединений за пределами этих общедоступных руководств.
Компоненты
Проводка
Обзор оборудования и программного обеспечения
Двигатели постоянного тока в линейных приводах требуют высокого тока (до 5 А), если бы мы подключили линейный привод непосредственно к Arduino, такое высокое потребление тока разрушило бы цифровые выводы Arduino, поскольку они рассчитаны только на 40 мА каждый. Поэтому мы используем драйвер двигателя, который может принимать слаботочный ШИМ-сигнал (широтно-импульсная модуляция) с платы Arduino и выводить сильноточный ШИМ-сигнал на линейный привод.
Драйвер двигателя подключен к двум цифровым выводам ШИМ (выводы 10 и 11 на Arduino Uno). Установив один из этих выводов в НИЗКИЙ, а другой в ВЫСОКИЙ (см. Строки 18 и 19 в коде ниже), мы можем выдвинуть привод на максимальной скорости. Чтобы остановить привод, мы устанавливаем оба контакта в положение LOW (см. Строки 21 и 22 в коде ниже), а чтобы изменить направление движения, мы можем изменить порядок контактов HIGH и LOW (см. Строки 24 и 25 в коде ниже). Мы также можем регулировать скорость, изменяя переменную «Speed» на любое значение в диапазоне [0, 255]; см. строку 17 в коде ниже.
Код
https://gist.github.com/Will-Firgelli/c0ef0871dc1946d75257e0c29dccae2a
Регулировка скорости с помощью потенциометра
В приведенном выше примере мы вручную установили скорость в строке 17 кода. Однако могут возникнуть ситуации, когда мы хотим изменять скорость привода во времени. Самый простой способ добиться этого — использовать потенциометр. А потенциометртрехконтактный переменный резистор, который может действовать как делитель напряжения. Вращая ручку потенциометра, выходное напряжение будет изменяться, и мы можем подключить его к аналоговому выводу на Arduino, чтобы установить переменную скорость.
Проводка
Обзор оборудования и программного обеспечения
Как упоминалось выше, потенциометр — это поворотное устройство, которое изменяет сопротивление при повороте ручки. При подключении двух внешних выводов потенциометра к 5V и GND, а средний вывод к аналоговому выводу Arduino, A0, создается делитель напряжения. При вращении ручки Arduino будет считывать аналоговые показания в диапазоне от [0, 1023].
Для значений в диапазоне [512, 1023] мы хотим, чтобы привод выдвигался, а для значений [0, 511] мы хотим, чтобы привод втягивался, этого можно достичь с помощью простого оператора if () / else в строках 22 и 28 в код ниже. Затем, используя функцию map () (строки 23 и 29 в приведенном ниже коде), мы можем преобразовать это в сигнал ШИМ, который будет управлять скоростью и направлением привода.
Код
https://gist.github.com/Will-Firgelli/d2cdf69edc829974885984b3fb8e4856
Arduino Motor Shield Rev3 | Официальный магазин Arduino
OSH: Схема
Arduino Motor Shield — это оборудование с открытым исходным кодом! Вы можете построить свою собственную доску, используя следующие файлы:
ФАЙЛОВ EAGLE В СХЕМЕ .ZIP В .PDF
Мощность
Arduino Motor Shield должен получать питание только от внешнего источника питания. Поскольку микросхема L298, установленная на экране, имеет два отдельных подключения питания, одно для логики, а другое для драйвера питания двигателя.Требуемый ток двигателя часто превышает максимальный номинальный ток USB.
Внешнее (не USB) питание может поступать либо от адаптера переменного тока в постоянный (бородавка), либо от батареи. Адаптер можно подключить, вставив центрально-положительный штекер 2,1 мм в разъем питания платы Arduino, на котором установлен экран двигателя, или подключив провода, ведущие источник питания к винтовым клеммам Vin и GND, соблюдая полярности.
Чтобы избежать возможного повреждения платы Arduino, на которой установлен экран, мы рекомендуем использовать внешний источник питания, обеспечивающий напряжение от 7 до 12 В.Если вашему двигателю требуется более 9 В, мы рекомендуем вам разделить силовые линии экрана и платы Arduino, на которой он установлен. Это возможно путем разрезания перемычки «Vin Connect» , расположенной на задней стороне экрана. Абсолютный предел для Vin на винтовых клеммах составляет 18 В.
Выводы питания следующие:
- Vin на клеммной колодке с винтовыми зажимами — это входное напряжение двигателя, подключенного к экрану. Внешний источник питания, подключенный к этому выводу, также обеспечивает питание платы Arduino, на которой установлена.Разрезав перемычку «Vin Connect» , вы сделаете ее специальной линией питания для двигателя.
- GND Заземление на клеммной колодке с винтовыми зажимами.
Экран может подавать 2 ампера на канал, всего 4 ампера максимум.
Вход и выход
Этот щит имеет два отдельных канала, называемых A и B, каждый из которых использует 4 контакта Arduino для управления или определения двигателя. Всего на этом щите используется 8 контактов. Вы можете использовать каждый канал отдельно для управления двумя двигателями постоянного тока или объединить их для управления одним биполярным шаговым двигателем.Контакты щита, разделенные по каналам, показаны в таблице ниже:
Функция | контактов на гл. A | контактов на гл. B |
Направление | D12 | D13 |
ШИМ | D3 | D11 |
Тормоз | D9 | D8 |
Измерение тока | A0 | A1 |
Если вам не нужны тормоз и датчик тока, и вам также нужно больше контактов для вашего приложения, вы можете отключить эти функции, перерезав соответствующие перемычки на задней стороне экрана.
Описание дополнительных розеток на щите:
- Винтовой зажим для подключения двигателей и их источника питания.
- 2 разъема TinkerKit для двух аналоговых входов (белого цвета), подключенных к A2 и A3.
- 2 разъема TinkerKit для двух выходов Aanlog (оранжевого цвета посередине), подключенных к выходам PWM на контактах D5 и D6.
- 2 разъема TinkerKit для интерфейса TWI (белого цвета с 4 контактами), один для входа, а другой для выхода.
Подключение двигателей
Щеточный двигатель постоянного тока. Вы можете управлять двумя щеточными двигателями постоянного тока, подключив два провода каждого из них к (+) и (-) винтовым клеммам для каждого канала A и B. Таким образом, вы можете контролировать его направление, установив HIGH или LOW для DIR A и DIR B, вы можете управлять скоростью, изменяя значения рабочего цикла PWM A и PWM B. Если для контактов тормоза A и тормоза B установлено ВЫСОКОЕ значение, они будут эффективно тормозить двигатели постоянного тока, а не снижать их скорость за счет отключения питания.Вы можете измерить ток, проходящий через двигатель постоянного тока, считывая выводы SNS0 и SNS1. На каждом канале будет напряжение, пропорциональное измеренному току, которое может быть считано как обычный аналоговый вход с помощью функции analogRead () на аналоговых входах A0 и A1. Для вашего удобства он откалиброван на 3,3 В, когда канал выдает максимально возможный ток, то есть 2 А.
Физические характеристики
Максимальная длина и ширина печатной платы Motor Shield — 2.7 и 2,1 дюйма соответственно. Четыре отверстия под винты позволяют прикрепить плату к поверхности или корпусу. Обратите внимание, что расстояние между цифровыми контактами 7 и 8 составляет 160 мил (0,16 дюйма), что не является даже кратным расстоянию между другими контактами в 100 мил.
10 лучших драйверов для Arduino
Arduino — одна из самых популярных плат микроконтроллеров, доступных сегодня на рынке. Простота использования и дизайн с открытым исходным кодом означают, что у него есть огромное сообщество, которое может помочь вам отладить ваши проблемы в любое время.Что касается задач, привод двигателей является одним из самых фундаментальных, поэтому существует множество готовых решений, которые помогут вам в этом. Так что ознакомьтесь с этим списком из 10 лучших драйверов для Arduino и дайте нам знать о своем любимом драйвере для Arduino в разделе комментариев.
Adafruit Motor / Stepper / Servo Shield для Arduino v2.3 Kit (19.94 $)
Щиток может обслуживать 124 двигателя постоянного тока или 64 шаговых двигателя, поскольку он имеет до пяти контактов выбора. В щите используется драйвер MOSFET TB6612, который имеет сравнительно низкое энергопотребление по сравнению с драйвером Дарлингтона L293D и может выдерживать ток 3 А.
доступно здесь
SainSmart L293D Motor Drive Shield (9.99 $)
Монолитный интегрированный сильноточный четырехканальный контроллер двигателя. Он может управлять 4 двигателями постоянного тока или 2 серводвигателями и может управлять двигателями до 25 В.
доступно здесь
5V 2-канальный релейный модуль Shield для Arduino (5,35 $)
Это не совсем драйвер двигателя, но его можно сделать так. Его можно использовать с другими приборами, потребляющими большой ток, что делает его очень универсальным.
доступно здесь
nice shop (TM) L293D Плата расширения Motor Drive Shield (4.59 $)
Этот двигатель является одним из самых простых в использовании и популярных приводов двигателей с использованием L293D. Драйвер может использоваться с 4-мя двигателями постоянного тока.
доступно здесь
Плата контроллера привода двигателя DROK® L298N (6.99 $)
Двухканальный режим управления по Н-мосту обеспечивает эффективность, в то время как конденсатор действует как фильтр от высокочастотного шума. Конструкция включает в себя диоды продувки, что делает вашу схему более безопасной.
доступно здесь
Экран шагового двигателя Arduino (24,66 $)
Дилер добавил улучшения к оригинальной конструкции Adafruit, такие как улучшенные разъемы и дополнительные конденсаторы для фильтрации шума. В целом достойная покупка для любого новичка.
доступно здесь
Seeedstudio Motor Shield V2.0 для Arduino (15.45 $)
Seedstudio продает множество электронных компонентов для любителей, и это один из их каталога. Он имеет выключение при перегрузке по току и светодиодный индикатор вращения, при этом он может выдерживать напряжение от 5 до 15 В.
доступно здесь
SainSmart L298N Dual H Bridge Motor Drivers для Arduino (9.99 $)
Он может управлять как шаговыми двигателями, так и двигателями постоянного тока и выдерживать пиковый ток 5А. Устройство имеет максимальную потребляемую мощность 20 Вт при 75 градусах Цельсия.
доступно здесь
Arduino Motor Shield R3 (49.95 $)
Официальный драйвер двигателя Arduino. В системе используется микросхема L298P и ограничение по току 2 А на канал, что составляет общую емкость 4 А. Рабочее напряжение экрана составляет от 5 до 12 В.
доступно здесь
Драйвер саблезубого мотора 12A (89 $)
Драйвер двигателя высокой мощности, выдерживающий до 12 А. Этот драйвер может использоваться в промышленных приложениях, а некоторые модели могут выдерживать ток до 30 А. Это синхронный рекуперативный привод с возможностью ультразвукового переключения.
доступно здесь
Похожие сообщения:
10 лучших модулей Bluetooth для Arduino
L293D Arduino Motor Driver Shield — Быстрая прогулка
В дни изоляции от COVID-19 я наткнулся на несколько модулей драйверов двигателей в своем ящике для отходов на чердаке — на удивление, большинство из них — неиспользуемые китайские модули.В частности, L293 Arduino Motor Driver Shield чрезвычайно элегантен, и я хотел посмотреть, как с ним играть. Что ж, я подумал, что пора поделиться своим опытом с L293 Arduino Motor Driver Shield. Это не претендует на то, чтобы быть подробным учебником, так как уже есть много информации. Я только что вкратце представил, как этого достаточно, чтобы меня вдохновить!
L293 Щиток водителя двигателя
Довольно часто вам понадобится полнофункциональный моторный щит для ваших проектов мехатроники на базе Arduino, поскольку такой компактный щит может управлять множеством повседневных двигателей постоянного тока, серводвигателей и шаговых двигателей.Кроме того, такие специальные щиты для двигателей постоянного тока помогут вам управлять некоторыми соленоидами и электромеханическими приводами. Идеально подходит для большинства проектов в области мехатроники!
Щиток драйвера двигателя поставляется с двумя двухканальными ИС двигателя L293D с Н-мостом, поэтому он может индивидуально управлять до четырех двигателей постоянного тока. Экран предлагает в общей сложности четыре H-моста, и каждый H-мост может передавать ток возбуждения до 600 мА на двигатель постоянного тока. Следующим ключевым компонентом моторного щита является ИС сдвигового регистра 74HC595, которая расширяет 4 цифровых контакта Arduino на 8 контактов управления направлением ИС L293D.Это официальный (Adafruit) схематический чертеж моторного щита.
Оригинальный создатель: Adafruit Industries
Обратите внимание, что выходные каналы обеих микросхем L293D разделены на край экрана двигателя двумя 5-контактными винтовыми клеммами (M1-M2-M3-M4) для подключения четырех двигателей постоянного тока с напряжением от 4,5 В до 25 В постоянного тока. . Вы также можете подключить два биполярных шаговых двигателя к выходным клеммам — один к M1-M2, а другой к M3-M4. В случае униполярных шаговых двигателей вы можете подключить центральные отводы обоих шаговых двигателей к клемме Gnd.Кроме того, моторный щит выводит 16-битные выходные линии ШИМ на пару 3-контактных разъемов, к которым вы можете подключить два стандартных серводвигателя.
Кстати, серьезным недостатком при работе с двигателями является большое количество генерируемых ими электрических шумов. Шум двигателя может мешать работе остальной электроники и даже может испортить хрупкие / чувствительные компоненты. Конденсаторы обычно являются самым простым, но эффективным способом подавления шума двигателя, и поэтому я настоятельно рекомендую вам использовать по крайней мере один керамический конденсатор 100 нФ на клеммах двигателя.Для максимального подавления шума вы можете использовать три конденсатора для одного двигателя — один на клеммах источника питания и по одному на каждой клемме на корпусе двигателя.
В этой теме нет ничего нового, и в сети уже есть немало хороших сообщений по ней. Но я подумал, что постараюсь сделать короткое замечание о том, как отфильтровать электрические шумы от двигателей в электронных схемах.
Во-первых, имейте в виду, что электрический шум, создаваемый двигателем постоянного тока, делится на две категории — электромагнитные помехи и электрический шум, создаваемый шинами питания.Чтобы снизить уровень электромагнитных помех, двигатели следует размещать как можно дальше от чувствительных цепей. Кроме того, металлический корпус (корпус) двигателя должен быть правильно заземлен. Электромагнитные помехи (RFI) также могут быть включены в схему, но этот тип помех (синфазные помехи) можно эффективно минимизировать с помощью простого фильтра нижних частот.
Когда дело доходит до электрических шумов на шинах питания, необходима фильтрация на источнике питания.Это можно сделать, подключив к силовым клеммам «мускулистый» конденсатор. Следуя области видимости, захват обозначает шум на клемме аккумулятора, когда двигатель постоянного тока небольшой игрушечной машинки питается напрямую от аккумуляторной батареи 4,8 В (спасибо Керри Д. Вонгу). Видите ли, уровень шума довольно серьезный, а уровень шума Vpp иногда снижается до 3 В, что достаточно высоко, чтобы вызвать неисправность, особенно в цифровых / логических схемах.
Пример схемы, показанный ниже, предназначен для фильтрации электрических помех двигателя постоянного тока в двунаправленных драйверах двигателя.Значения катушек индуктивности (сотни мГн) и конденсаторов (сотни нФ), используемых в схеме, могут быть изменены эмпирически для достижения оптимальных результатов. Излишне говорить, что есть несколько мер предосторожности, которые помогут свести к минимуму влияние электрического шума двигателя на вашу систему. Практика ведет к совершенству!
Подводя итог, можно сказать, что при соответствующем экранировании, заземлении и правильной фильтрации электрический шум, создаваемый двигателем постоянного тока, может быть снижен до уровня, «невидимого» даже для самых чувствительных электронных схем.
Не рискуйте своими идеями
Возвращаясь к основной теме, клеммная колодка с перемычкой включена в моторный щит для питания двигателей. Обратите внимание, что Arduino может выдавать только несколько сотен мА на 5-вольтовый разъем Arduino. Поэтому я настоятельно рекомендую использовать соответствующий источник постоянного тока для используемых двигателей постоянного тока / шаговых двигателей (сервопорты имеют внутреннее питание и не используют внешний источник питания). То есть просто подключите источник питания 9 В постоянного тока для платы Arduino к входному разъему постоянного тока и подключите источник постоянного / шагового двигателя к внешнему блоку питания ( EXT_PWR ) щитка двигателя.Всегда проверяйте, что перемычка выбора источника питания ( PWR ) снята с моторного щита. Помните, что подключение шагового двигателя и двигателя постоянного тока не будет работать, если зеленый светодиодный индикатор на плате не горит ярко!
Перед использованием платы драйвера двигателя L293D с Arduino IDE необходимо установить библиотеку AFMotor. Эта библиотека Adafruit содержит необходимые команды для управления двигателями постоянного тока, шаговыми и серводвигателями. Однако управлять сервоприводами с помощью щитка драйвера двигателя довольно просто, поскольку щит драйвера двигателя фактически выламывает 16-битные выходные контакты PWM Arduino 9 и 10 до края экрана с двумя 3-контактными разъемами для сервопривода.Поскольку вы используете встроенные контакты PWM, эскиз работает со встроенной библиотекой Arduino Servo. Вышеупомянутую библиотеку AFMotor можно скачать здесь
https://github.com/adafruit/Adafruit-Motor-Shield-library
О первой пробе
Моя первая попытка была с образцом скетча «MotorTest», включенным в библиотеку AFMotor (см. Ниже). Очевидно, здесь вам нужно указать номер порта двигателя, к которому он подключен. Для порта M1 напишите 1, для M2 напишите 2 и так далее.Также, если вы хотите подключить несколько двигателей к экрану драйвера двигателя, вам необходимо создать отдельный объект для каждого двигателя.
Для быстрого теста я использовал небольшой двигатель постоянного тока (5 В / 100 мА) настольного USB-вентилятора, подключенный к винтовому разъему M4 на щитке драйвера двигателя. Одна аккумуляторная батарея 6F22 9V используется для питания всей установки — Arduino Uno + L293 Motor Driver Shield — в то время, и она работала правильно (посмотрите видео быстрого тестирования).
И посмотрите случайные лабораторные снимки:
Что дальше?
Предлагаемый хобби-проект мехатроники основан на L293 Arduino Motor Driver Shield (v1.0) в основном готов, и теперь я жду, когда прибудут несколько дополнительных деталей в ближайшие несколько недель. Я задокументирую свою сборку и опубликую окончательные результаты в ближайшем будущем. Удачи в разработке собственных идей и создании собственных систем. До скорой встречи!
Длинный список авторов и ссылок включает:
Схема контактов драйвера двигателяL298N, работа, техническое описание и подключение Arduino
В этой статье вы подробно узнаете о модуле драйвера двигателя L298N.Но сначала мы должны ответить на некоторые основные вопросы, например, что такое драйвер двигателя, почему он используется в цепи, что такое конфигурация H-моста и т. Д.
Что такое модуль драйвера двигателя? Драйверы двигателя
Источник изображения: sproboticworks
Модуль драйвера двигателя — это простая схема, используемая для управления двигателем постоянного тока. Он обычно используется в автономных роботах и радиоуправляемых автомобилях (L2938N и L293D — наиболее часто используемые микросхемы драйверов двигателей). Модуль драйвера двигателя принимает низковольтный вход от контроллера, такого как Arduino.Эта входная логика управляет направлением двигателей постоянного тока, подключенных к драйверу. Проще говоря, вы можете управлять направлением двигателей постоянного тока, передавая соответствующую логику модулю драйвера двигателя.
Модуль драйвера двигателя состоит из микросхемы драйвера двигателя, которая является сердцем модуля. Только IC может управлять двигателем постоянного тока, но использование модуля упрощает взаимодействие с Arduino.
Зачем нам нужен модуль драйвера двигателя?Все микроконтроллеры работают с сигналами напряжения / тока низкого уровня, в отличие от двигателей.Например, микроконтроллер Arduino или PIC может выдавать максимальное напряжение 5 В или 3,3 В. Но приличному двигателю постоянного тока требуется не менее 5 В или 12 В. Кроме того, предел выходного тока Arduino относительно очень низкий.
Следовательно, выходного сигнала Arduino недостаточно для включения двигателей. Чтобы решить эту проблему, необходимо использовать драйвер двигателя. Мы устраняем разрыв между Arduino и мотором, вводя между ними драйвер мотора. А для подачи напряжения / тока, необходимых для работы двигателя, к модулю драйвера двигателя подключен внешний источник питания.
Подробная информация о модуле драйвера двигателя L298N: Модуль драйвера двигателя L298N
Драйвер двигателя L298N основан на конфигурации H-моста (H-мост — это простая схема, которая позволяет нам управлять двигателем постоянного тока, чтобы двигаться вперед или назад. ), что полезно для управления направлением вращения двигателя постоянного тока.
Это сильноточный двойной драйвер с полным H-мостом , который предназначен для приема стандартных логических уровней TTL. Его также можно использовать для управления индуктивными нагрузками e.грамм. реле , соленоиды, двигатели (постоянного и шагового двигателя) и т. Д. Схема Н-моста выглядит следующим образом: Схема Н-моста Схема
Источник изображения: Википедия
Направление вращения двигателя зависит от положения переключателя .Измените направление вращения двигателя с помощью h-моста
Источник изображения: Wikipedia
Когда S1 и S4 включены, а S2 и S3 выключены, левая сторона клеммы двигателя больше положительной, чем другая клемма. Это вызывает вращение двигателя по часовой стрелке.
Когда S2 и S3 включены, а S1 и S4 выключены, правая сторона клеммы двигателя больше + ve, чем левая клемма. Это вызывает вращение двигателя против часовой стрелки.
Конфигурация H-моста обычно используется для переключения направления двигателя. Однако его также можно использовать для «торможения» двигателя. Это приводит к мгновенной остановке двигателя из-за короткого замыкания клемм двигателя или к остановке двигателя в режиме «свободного выбега» (выбег), поскольку двигатель надежно отделен от цепи.
Таблица ниже суммирует активность, где S1-S4 соответствует диаграмме выше:
S1 | S2 | S3 | S4 | Результат |
1 | 0 | 0 | 1 | Моторный поворот вправо |
0 | 1 | 1 | 0 | Моторный поворот налево |
0 | 0 | 0 | 0 | Моторный берег |
1 | 0 | 0 | 0 | |
0 | 1 | 0 | 0 | |
0 | 0 | 1 | 0 | |
0 | 0 | 0 | 1 | |
0 | 1 | 0 | 1 | Тормоз двигателя |
1 | 0 | 1 | 0 | 900 43|
X | X | 1 | 1 | Короткое замыкание |
1 | 1 | X | X |
ПРИМЕЧАНИЕ: L298N имеет две такие h-мостовые схемы, что означает, что вы с его помощью можно управлять двумя двигателями постоянного тока.
Характеристики модуля драйвера двигателя L298N:
- Рабочее напряжение питания до 46 В
- Общий постоянный ток до 4 А. 2 А на канал
- Низкое напряжение насыщения
- Защита от перегрева
- Повышение логического входного напряжения до 1,5 В
- Высокая помехоустойчивость
Распиновка и компоненты модуля драйвера двигателя L298N:
Модуль драйвера двигателя L298N состоит из двойного H-моста L298 IC, регулятора напряжения 5 В 78M05, резисторов, конденсатора, светодиода питания, Перемычка 5V.Распиновка модуля драйвера двигателя L298N
2 выходных контакта двигателя постоянного тока, 12-вольтный внешний источник питания двигателя, контакты управления направлением двигателя (IN1, IN2, IN3, IN4), контакты разрешения выхода двигателя (ENA, ENB) и радиатор .
Вывод VCC подает питание на двигатель. Может применяться напряжение от 5 до 35 В. Помните, что если перемычка 5V-EN установлена, вам необходимо подать на 2 вольта больше, чем фактическое требование к напряжению двигателя, чтобы двигатель работал на максимальной скорости. GND — общий вывод заземления. Вывод 5V обеспечивает питание логической схемы переключения внутри микросхемы L298N. Если перемычка 5V-EN установлена, этот вывод действует как выход и может использоваться для включения Arduino. Если перемычка 5V-EN удалена, вам необходимо подключить ее к выводу 5V на Arduino. Выводы ENA используются для управления скоростью двигателя A. Подача на этот вывод логики HIGH заставляет двигатель A вращаться, а логика LOW приводит к остановке двигателя.Удаление перемычки и подключение этого контакта к входу PWM позволяет нам контролировать скорость двигателя A. IN1 и IN2 контактов используются для управления направлением двигателя A. Если IN1 — HIGH, а IN2 — LOW, двигатель A вращается в определенном направлении. Чтобы изменить направление, установите IN1 LOW и IN2 HIGH. Если оба входа имеют высокий или низкий уровень, двигатель A останавливается. IN3 и IN4 Выводы используются для управления направлением двигателя B. Если IN3 — HIGH, а IN4 — LOW, двигатель B вращается в определенном направлении.Чтобы изменить направление, установите IN3 LOW и IN4 HIGH. Если оба входа имеют высокий или низкий уровень, двигатель B останавливается. Вывод ENB может использоваться для управления скоростью двигателя B. Подача на этот вывод сигнала HIGH заставляет двигатель B вращаться, а подача сигнала LOW вызывает остановку двигателя. Устранение перемычки и подключение этого вывода к информации ШИМ позволяет нам контролировать скорость двигателя B. OUT1 и OUT2 контактов подключены к двигателю A. OUT3 и OUT4 Контакты подключены к двигателю B. |
КОНТАКТЫ ИС драйвера двигателя L298N: Распиновка контактов микросхемы L298N
L298N IC контактов | Имя | Функция |
1,15 | Sense B | Между этим выводом и землей подключен резистор считывания для управления током нагрузки. |
2,3 | Out 1, Out 2 | Выходы моста A; ток, протекающий через нагрузку, подключенную между этими двумя выводами, контролируется на выводе 1. |
4 | VS | Напряжение питания для выходных каскадов. Неиндуктивный конденсатор 100 нФ должен быть подключен между этим контактом и землей. |
5,7 | Вход 1, Вход 2 | TTL-совместимые входы моста A. |
6,11 | Включить A, Включить B | TTL-совместимый вход включения: состояние L отключает мост A (включить A) и / или мост B (включить B). |
8 | GND | Земля |
9 | VSS | Напряжение питания для логических блоков.(Конденсатор A100nF должен быть подключен между этим контактом и землей.) |
10,12 | Вход 3, вход 4 | TTL-совместимые входы моста B. |
13,14 | Out 3, Out 4 | Выходы моста B. Ток, протекающий через нагрузку, подключенную между этими двумя контактами, отслеживается на контакте. |
Драйвер двигателя L298N IC Лист данных:
Щелкните эту ссылку, чтобы просмотреть ТЕХНИЧЕСКИЙ ПАСПОРТ.
Подробную информацию об ИС L298N можно найти в таблице данных, приведенной выше. Технические характеристики и информацию, такие как абсолютные максимальные значения, блок-схема и предлагаемые схемы, можно найти в таблице данных.
Схема подключения L29N с Arduino UNO:
Цепь подключения Arduino с L298NИсточник изображения: hackster.io
Pololu DRV8835 Dual Motor Driver Shield для Arduino
Обзор
Этот щит драйвера двигателя и соответствующая ему библиотека Arduino позволяют легко управлять парой двунаправленных щеточных двигателей постоянного тока с помощью Arduino или совместимой платы, такой как A-Star 32U4 Prime. Плата оснащена двухмостовым драйвером двигателя DRV8835 от Texas Instruments, который позволяет ей работать от 1,5 В до 11 В и особенно хорошо подходит для управления небольшими низковольтными двигателями. Экран может непрерывно выдавать 1,2 А на канал и выдерживать пиковые токи до 1.5 А на канал в течение нескольких секунд, и каналы могут быть дополнительно сконфигурированы для работы параллельно, чтобы подавать в два раза больший ток на один двигатель. Щиток полностью укомплектован SMD-компонентами, включая драйвер DRV8835 и полевой транзистор для обратной защиты батареи; штыри разъема для взаимодействия с Arduino и клеммные колодки для подключения двигателей и питания включены в комплект, но не припаяны (см. сборку с включенным оборудованием, раздел ниже).
Щиток использует цифровые контакты 7, 8, 9 и 10 для своих линий управления, хотя сопоставление контактов управления может быть изменено, если значения по умолчанию неудобны.Он должен быть совместим с любой платой, имеющей стандартное расположение выводов Arduino и способной генерировать сигналы ШИМ на выводах 9 и 10. Совместимые платы управления включают:
Этот щит предназначен для обеспечения недорогого базового варианта драйвера двигателя для Arduinos, поэтому он намного меньше типичных экранов Arduino и не включает сквозные, штабелируемые заголовки. Для более мощных драйверов с большим количеством вариантов конфигурации см. Наши увеличенные экраны драйверов двигателей MC33926 и VNH5019.
В качестве альтернативы этому экрану с более высоким напряжением рассмотрите двойной экран драйвера двигателя MAX14870 или двойной экран драйвера двигателя A4990. У нас также есть аналогичный комплект драйверов двигателя DRV8835 для Raspberry Pi, а также меньший носитель DRV8835 (и еще меньший одноканальный носитель DRV8838) для тех, кто использует другой контроллер или с более жесткими ограничениями по пространству.
Хотя сам DRV8835 работает с минимальным напряжением питания двигателя 0 В, схема обратной защиты этого экрана ограничивает минимальное значение 1.5 В. Если требуется более низкое напряжение питания двигателя, рассмотрите возможность использования нашего держателя DRV8835 с питанием двигателя, подаваемым через вывод VMM.
Pololu DRV8835 Dual Motor Driver Shield для Arduino, верхняя и нижняя стороны. |
---|
Характеристики
- Драйвер двигателя с двойным Н-мостом: может управлять двумя двигателями постоянного тока или одним биполярным шаговым двигателем
- Напряжение питания двигателя: от 1,5 В до 11 В
- Напряжение питания логики от 2 В до 7 В
- Выходной ток: 1.2 А непрерывно (1,5 А пик) на двигатель
- Выходы двигателей могут быть подключены параллельно для подачи постоянного тока 2,4 А (пиковое значение 3 А) на один двигатель
- ШИМ-режим до 250 кГц (ультразвуковые частоты обеспечивают более тихую работу двигателя)
- Два возможных режима интерфейса: PHASE / ENABLE (по умолчанию — один вывод для направления, другой для скорости) или IN / IN (выходы в основном зеркальные входы)
- Shield может опционально питать базу Arduino напрямую, когда напряжение питания двигателя подходит. Библиотека
- Arduino позволяет легко начать использовать эту плату в качестве защиты драйвера двигателя.
- Сопоставление контактов Arduino можно настроить, если сопоставления по умолчанию не подходят
- Защита от обратного напряжения питания двигателя
- Блокировка при пониженном напряжении и защита от перегрузки по току и перегрева
Сборка с включенным крепежом
Перед тем, как экран можно будет подключить к Arduino, контакты заголовка должны быть установлены на нижней части платы (сторона без каких-либо компонентов или текста), впаяв их в соответствующие отверстия.Щиток поставляется с 15-штырьковой прямой перемычкой 0,1 ″, которую можно разбить на более мелкие части и использовать для этой цели. Четыре отверстия вдоль левой стороны платы (VCC, GND, GND и AVIN) и все пять отверстий вдоль правой стороны платы (цифровые выводы 6-10) должны быть соединены с штырями штыревого разъема, чтобы экран соответствующие подключения к Arduino. После сборки один из простых способов убедиться, что вы правильно подключили экран к Arduino, — это совместить зазор между контактами 7 и 8 на экране с зазором между контактами 7 и 8 на гнездовых разъемах Arduino.
Если вам нужна возможность питания Arduino от экрана, вы можете припаять два штыревых контакта разъема к нижнему левому углу платы (в поле шелкографии рядом с этикеткой VOUT). Эти контакты должны указывать вверх, в сторону от Arduino. Если затем вы поместите прилагаемый синий блок перемычки между этими контактами (как показано на собранном выше рисунке), питание щита с обратной защитой будет запитывать Arduino через его контакт VIN.См. Раздел « Использование экрана » ниже для получения дополнительной информации об этом, включая некоторые важные предупреждения.
В комплект входят три 2-контактных клеммных колодки 5 мм для упрощения подключения двигателя и питания к экрану после того, как они были сдвинуты вместе и припаяны к шести большим сквозным отверстиям. В качестве альтернативы вы можете припаять 0,1-дюймовые штыревые разъемы к меньшим сквозным отверстиям над отверстиями клеммной колодки или просто припаять провода непосредственно к экрану.
Дополнительные закорачивающие блоки и выводы заголовка помимо того, что включено, могут быть использованы для выполнения некоторых из более сложных дополнительных модификаций экрана, таких как переназначение контрольных выводов или параллельное соединение выходов.
Arduino — это , не включенный .
Использование щита
Экран подключается к цифровым контактам 6, 7, 8, 9 и 10 Arduino с одной стороны и к VIN, GND, GND и 5V / VCC Arduino с другой. Верхний левый угол экрана частично блокирует вывод 3,3 В Arduino, но эту область платы (отмеченную белой рамкой шелкографии) при необходимости можно удалить, чтобы обеспечить доступ. Экран также блокирует цифровой вывод 6 Arduino, но обеспечивает альтернативные точки доступа к этому выводу через соседние сквозные отверстия.Плата ни для чего не использует контакт 6.
В состоянии по умолчанию щит драйвера двигателя и Arduino запитываются отдельно, хотя они имеют общую землю, а шина 5 В Arduino служит логическим источником питания щита. При таком использовании Arduino должен получать питание через USB, разъем питания или вывод VIN, а на экран должно подаваться напряжение от 1,5 В до 11 В через большие контактные площадки VIN и GND. Пытаться запитать экран от Arduino не рекомендуется, так как это может привести к протеканию больших токов через небольшие следы.Однако, если источник питания двигателя подходит, можно запитать Arduino от щита. Это можно сделать, установив перемычку между выводами экрана в нижнем левом углу, обозначенными VOUT и AVIN, которая подключает напряжение питания двигателя с обратной защитой к выводу VIN Arduino для питания Arduino. В этой конфигурации разъем питания Arduino должен всегда оставаться отключенным.
Предупреждение: При питании Arduino от моторного щита вы должны никогда не подключать другой источник питания к контакту VIN Arduino или подключать источник питания к разъему питания Arduino, так как это создаст короткое замыкание между щитом. источник питания и источник питания Arduino, которые могут необратимо повредить как Arduino, так и моторный щит.В этом случае также важно, чтобы ваш блок питания экрана имел приемлемое напряжение для вашей Arduino, поэтому полный диапазон рабочего напряжения экрана от 1,5 В до 11 В, вероятно, будет недоступен. Например, рекомендуемое рабочее напряжение Arduino Uno составляет 7-12 В.
По умолчанию плата работает в режиме PHASE / ENABLE, в котором сигнал PWM, подаваемый на вывод ENABLE, определяет скорость двигателя, а цифровое состояние вывода PHASE определяет направление вращения двигателя. Контакты 9 и 7 Arduino используются для управления скоростью и направлением двигателя 1 соответственно, а контакты 10 и 8 управляют скоростью и направлением двигателя 2.В таблице ниже показано, как входы влияют на выходы в этом режиме:
Работа привода / тормоза в стандартном режиме ФАЗА / РАЗРЕШЕНИЕ | ||||
---|---|---|---|---|
xPHASE | xENABLE | MxA | MxB | рабочий режим |
0 | ШИМ | ШИМ | л | вперед / тормоз на скорости ШИМ% |
1 | ШИМ | л | ШИМ | задний ход / торможение на скорости ШИМ% |
х | 0 | л | л | тормозной низкий уровень (выходы замкнуты на массу) |
Режим PHASE / ENABLE подходит для большинства приложений.
Настройка платы для работы в режиме IN / IN
Рабочий режим драйвера управляется контактом MODE, который экран подключается к VCC по умолчанию для выбора режима PHASE / ENABLE. Чтобы изменить режим, найдите пару 0,1-дюймовых сквозных отверстий в верхней левой части платы с надписью «MODE» и с помощью ножа прорежьте дорожку, соединяющую два отверстия на нижней стороне печатной платы. Поскольку на выводе MODE есть внутренний понижающий резистор, отключение его подключения к VCC — это все, что требуется для переключения интерфейса управления на IN / IN, что позволяет использовать несколько более продвинутые параметры управления, как описано в таблице ниже:
Привод / выбег или привод / тормоз с РЕЖИМОМ = 0 (IN / IN) | ||||
---|---|---|---|---|
xIN1 | xIN2 | MxA | MxB | рабочий режим |
0 | 0 | ОТКРЫТЬ | ОТКРЫТЬ | выбег (выходы отключены) |
ШИМ | 0 | ШИМ | л | вперед / назад на скорости ШИМ% |
0 | ШИМ | л | ШИМ | назад / по инерции на скорости ШИМ% |
1 | ШИМ | ШИМ | л | вперед / тормоз на скорости 100% — ШИМ% |
ШИМ | 1 | л | ШИМ | задний ход / тормоз на скорости 100% — ШИМ% |
1 | 1 | л | л | тормозной низкий уровень (выходы замкнуты на массу) |
После того, как дорожка между двумя выводами была обрезана, вы можете использовать пару выводов заголовка и блок закорачивания для управления режимом: при включенном блоке закорачивания устанавливается режим PHASE / ENABLE; при выключенном — режим IN / IN.
РежимIN / IN обычно полезен только в том случае, если вы заботитесь только о включении / выключении двигателей или если вы можете подавать сигналы PWM на все четыре входа, что не возможно при использовании контактов по умолчанию на Arduino Uno. Если вы хотите иметь возможность контролировать скорость двигателей при использовании этого режима, вам следует либо переназначить контакты управления, либо выбрать Arduino, который может генерировать сигналы ШИМ с цифровыми контактами 7, 8, 9 и 10 (например, Arduino Mega 2560).
Настройка платы для одноканального режима (параллельные выходы)
Чтобы использовать два канала двигателя параллельно для управления одним двигателем, важно убедиться, что оба канала всегда будут получать одни и те же управляющие сигналы, поэтому процесс реконфигурации начинается с изменения управляющих входов.Сначала найдите группу 2 × 5 сквозных отверстий 0,1 ″ вдоль правой стороны платы. Эти отверстия проходят параллельно контактам 6-10, и следы между ними на нижней стороне печатной платы эффективно связывают контакты Arduino с контактами управления DRV8835. Если вы хотите переназначить один из этих управляющих выводов, вы можете вырезать желаемый след ножом, а затем провести провод от внутреннего отверстия к новому выводу Arduino. Для переназначения для одноканального режима необходимо отрезать одну ШИМ (9 или 10) и одну трассу DIR (7 или 8); отрезок 10 и 8 для управления обоими выходами с входных контактов двигателя 1 или отрезок 9 и 7 для управления обоими входными контактами двигателя 2.Если вы затем припаяете ряд выводов заголовка вдоль внутреннего ряда отверстий, вы можете безопасно соединить обе линии PWM вместе и обе линии DIR вместе с помощью закорачивающих блоков. В этой конфигурации две неразрезанные линии управления Arduino определяют поведение обоих каналов двигателя.
Последний шаг — соединить выходные каналы вместе. Самый простой способ сделать это — припаять штыри разъема к двум парам отверстий, помеченных «A» и «B», рядом с выходами двигателя. Размещение закорачивающих блоков между этими парами контактов соединяет M1A с M2A и M1B с M2B, что, в свою очередь, означает, что вы можете получить до 3 A от точек подключения для любого канала (например.грамм. Вы можете подключить свой двигатель только к клеммным колодкам M1A и M1B, вместо того, чтобы пытаться найти способ подключить его ко всем четырем выходам двигателя).
Рекомендации по рассеиванию мощности в реальных условиях
Спецификация DRV8835 рекомендует максимальный непрерывный ток 1,5 А на канал двигателя. Однако при меньших токах микросхема сама по себе будет перегреваться. Например, в наших тестах при комнатной температуре без принудительного воздушного потока микросхема была способна выдавать 1,5 А на канал в течение примерно 15 секунд, прежде чем сработала тепловая защита микросхемы и отключила выходы двигателя, при непрерывном токе 1.2 А на канал были устойчивы в течение многих минут, не вызывая теплового отключения. Фактический ток, который вы можете подавать, будет зависеть от того, насколько хорошо вы можете охладить драйвер двигателя. Печатная плата держателя предназначена для отвода тепла от микросхемы драйвера двигателя, но производительность можно улучшить, добавив радиатор. Наши испытания проводились при 100% рабочем цикле; ШИМ-управление двигателем приведет к дополнительному нагреву, пропорциональному частоте.
Этот продукт может нагреть до , чтобы обжечься задолго до того, как чип перегреется.Будьте осторожны при обращении с этим продуктом и другими подключенными к нему компонентами.
Принципиальная схема
Pololu DRV8835 Dual Motor Driver Shield для схемы Arduino. |
---|
Эту схему также можно загрузить в формате pdf (214k pdf).
Люди часто покупают этот товар вместе с:
Pololu Dual G2 High-Power Motor Driver 24v14 Shield for Arduino
Обзор
Семейство двойных высокомощных экранов драйверов двигателей G2 включает пары дискретных H-образных мостов MOSFET, предназначенные для управления двумя большими щеточными двигателями постоянного тока.Они имеют форм-фактор экрана Arduino, поэтому их можно подключать напрямую к Arduino или совместимой плате, такой как A-Star 32U4 Prime, но они также выламывают все контакты драйвера двигателя вдоль левой стороны платы, чтобы позволяет использовать его в качестве универсального драйвера двигателя без Arduino. Доступны четыре версии, поэтому вы можете выбрать ту, которая соответствует диапазону рабочего напряжения и выходному току для вашего проекта:
Минимальное рабочее напряжение для всех четырех версий — 6.5 В. Максимальные рабочие напряжения указаны в таблице выше; они намного превосходят то, что может выдержать типичный Arduino, поэтому экраны включают в себя встроенный понижающий стабилизатор на 7,5 В, 1 А, который можно дополнительно использовать для питания любой Arduino или Arduino-совместимой платы, к которой он подключен, что позволяет работать с одного источник питания. Этот регулятор также можно настроить для вывода 5 В для приложений, где это было бы более полезно, чем 7,5 В по умолчанию, и все сопоставления контактов Arduino можно настроить, если значения по умолчанию неудобны.
Эти двойные драйверы двигателя также доступны в виде плат расширения Raspberry Pi. Для одноканальных версий в более компактном форм-факторе рассмотрите наши драйверы двигателей высокой мощности. Для более дешевой альтернативы Arduino Shield с меньшим энергопотреблением, пожалуйста, рассмотрите Dual MC33926 Motor Driver Shield.
Подробная информация о товаре № 2516
|
|
|
- Рабочее напряжение: от 6,5 В до 40 В (абсолютный максимум; не предназначен для использования с батареями 36 В)
- Выходной ток: 14 А непрерывный
- Токовый выход, пропорциональный току двигателя (примерно 20 мВ / А; активен только во время работы Н-моста)
- Активное ограничение тока (прерывание) с приблизительным порогом по умолчанию 40 А (можно уменьшить)
Эту версию, щиток драйвера двигателя 24v14 , можно отличить от других версий по синей печатной плате и номеру 100 на высоких серебряных электролитических конденсаторах.
Характеристики, общие для всех версий
Pololu Dual G2 High Power Driver Shield, управляемый A-Star 32U4 Prime. |
---|
- Входы, совместимые с логикой 1,8, 3,3 и 5 В
- ШИМ работа до 100 кГц
- Светодиодные индикаторы двигателя показывают, что делают выходы, даже если двигатель не подключен
- Защита от обратного напряжения
- Отключение при понижении напряжения
- Защита от короткого замыкания
- Интерфейс управления допускает знакопеременную или синхронно-противофазную работу
- Встроенный 7.Импульсный понижающий регулятор напряжения 5 В, 1 А (можно настроить на выход 5 В) Библиотека
- Arduino позволяет легко начать использовать эту плату в качестве защиты драйвера двигателя.
- Подробное руководство пользователя
- Сопоставление контактов Arduino можно настроить, если сопоставления по умолчанию не подходят
- При использовании в качестве экрана источник питания двигателя или выход регулятора 7,5 В можно дополнительно использовать для питания базы Arduino в режиме однополярного питания
- Может использоваться с Arduino или совместимой платой (через заголовки экрана) или другими платами микроконтроллера (через 0.Жатка 1 ″ вдоль левой стороны)
|
|
Фурнитура в комплекте
Pololu Dual G2 High-Power Motor Driver 18v18 Shield для Arduino с включенным оборудованием. |
---|
Для сильноточных установок провода двигателя и источника питания должны быть припаяны непосредственно к драйверу (входящие в комплект клеммные колодки рассчитаны только на ток до 16 А). |
---|
Эта плата привода двигателя поставляется со всеми установленными деталями для поверхностного монтажа. Однако для сборки входящих в комплект деталей со сквозным отверстием требуется пайка. В комплект входят следующие детали для сквозных отверстий:
- один расширенный / штабелируемый женский заголовок 1 × 10 (для щитов Arduino)
- два расширенных / штабелируемых женских разъема 1 × 8 (для щитов Arduino)
- два расширенных / штабелируемых гнездовых разъема 1 × 6 (для щитов Arduino)
- три 2-контактных клеммных колодки 5 мм (для питания платы и выходов двигателя)
- 40-контактный 0.1-дюймовый прямой разъединительный штекер с вилкой (может поставляться несколькими частями, например, двумя 20-контактными полосами)
Также в комплект входит закорачивающий блок 0,1 ″ (для опциональной подачи питания экрана на Arduino).
Вы можете припаять клеммные колодки к шести большим сквозным отверстиям, чтобы подключить двигатель и силовые соединения двигателя, или вы можете отломить секцию 1 × 12 0,1-дюймовой соединительной полосы и припаять ее в меньшие сквозные отверстия, которые граничат эти большие отверстия. Однако обратите внимание, что клеммные колодки рассчитаны только на 16 А, а каждая пара контактов разъема рассчитана только на комбинированные 6 А, поэтому для приложений с более высокой мощностью толстые провода должны быть припаяны непосредственно к плате и соответственно высокой мощности. должны использоваться текущие разъемы (подобные этим).
Если эта плата не используется в качестве экрана Arduino, вы можете припаять 0,1-дюймовые разъемы к логическим разъемам на левой стороне платы, чтобы использовать их с нестандартными кабелями или макетными платами без пайки, или вы можете припаять провода непосредственно к плате для большего компактные установки. Обратите внимание, что подключение двигателя и питания двигателя не должно осуществляться через макетную плату.
Драйвер двигателя включает шесть электролитических силовых конденсаторов емкостью 100 мкФ или 150 мкФ, и есть место для добавления дополнительных конденсаторов (например.грамм. для компенсации длинных проводов питания или повышения стабильности источника питания). Дополнительные силовые конденсаторы обычно не требуются, и в этот драйвер двигателя не входят дополнительные конденсаторы.
Два монтажных отверстия предназначены для использования с винтами №4 (не входят в комплект).
Измерение и ограничение тока
На выводах датчика тока драйвера, M1CS и M2CS, выходное напряжение пропорционально токам двигателя во время работы H-моста. Выходное напряжение составляет около 10 мВ / А для версии 18v22 и 20 мВ / А для других версий, плюс небольшое смещение, которое обычно составляет около 50 мВ.
Драйвер имеет возможность ограничивать ток двигателя посредством прерывания тока: как только ток привода двигателя достигает установленного порога, драйвер переходит в режим торможения (медленное затухание) примерно на 25 мкс перед подачей питания для повторного привода двигателя. Это делает более практичным использование драйвера с двигателем, который может потреблять только несколько ампер во время работы, но может потреблять во много раз больше (десятки ампер) при запуске. Вы можете снизить порог ограничения тока по умолчанию, подключив дополнительный резистор между выводом VREF и соседним выводом GND.
См. Руководство пользователя для получения дополнительной информации о токовой обратной связи и ограничении тока.
Учет рассеиваемой мощности в реальных условиях
МОП-транзисторы могут обрабатывать большие всплески тока в течение коротких промежутков времени (например, 100 А в течение нескольких миллисекунд), а прерывание тока драйвером будет поддерживать средний ток ниже установленного предела. Пиковые значения предназначены для быстрых переходных процессов (например, при первом включении двигателя), а длительные характеристики зависят от различных условий, таких как температура окружающей среды.ШИМ-управление двигателем приведет к дополнительному нагреву, пропорциональному частоте. Фактический ток, который вы можете подавать, будет зависеть от того, насколько хорошо вы можете охладить драйвер двигателя. Печатная плата драйвера предназначена для отвода тепла от полевых МОП-транзисторов, но производительность можно улучшить, добавив радиатор или воздушный поток. Для сильноточных установок провода двигателя и источника питания также следует припаять напрямую, а не проходить через прилагаемые клеммные колодки, рассчитанные на ток до 16 А.
Предупреждение: Этот привод двигателя не имеет отключения по перегреву. Состояние перегрева или перегрузки по току может вызвать необратимое повреждение привода двигателя. Вы можете рассмотреть возможность использования либо встроенного выхода датчика тока драйвера, либо внешнего датчика тока для отслеживания текущего потребления.
Этот продукт может нагреться на , достаточно , чтобы сгореть при нормальных условиях эксплуатации. Будьте осторожны при обращении с этим продуктом и другими подключенными к нему компонентами.
G2 версии драйвера двигателя большой мощности
Существует четыре версии одноканальных драйверов двигателя высокой мощности G2, которые имеют совместимые распиновки, и восемь версий двухканальных драйверов двигателя высокой мощности G2. Четыре двухканальных драйвера имеют форм-фактор экрана Arduino, но они также могут использоваться с другими контроллерами в качестве универсальных драйверов двигателей. Остальные четыре двухканальных драйвера имеют форм-фактор Raspberry Pi HAT и совместимых плат Raspberry Pi (модель B + или новее).В следующей таблице представлено сравнение драйверов G2:
Драйвер мощного двигателя Pololu G2 24v21 и 24v13. |
---|
|
|
|
|
Примечание: В качестве альтернативы этим драйверам двигателей наши простые контроллеры двигателей имеют схожие характеристики мощности и предлагают интерфейсы высокого уровня (например,грамм. USB, RC-импульсные сервоимпульсы, аналоговые напряжения и последовательные команды TTL), которые упрощают их использование для некоторых приложений.
Драйвер двигателяL293D — Arduino — Робо Индия || Учебники || Изучите Arduino |
В этом руководстве Robo India объясняется, как управлять двигателем постоянного тока с помощью драйвера двигателя L293D IC с Arduino. (Робо Индия) 1. ВведениеMotor Driver — это модуль для двигателей, который позволяет вам управлять рабочей скоростью и направлением двух двигателей одновременно.Этот драйвер двигателя разработан и разработан на основе L293D IC.
L293D — это 16-контактная микросхема драйвера двигателя. Он предназначен для обеспечения двунаправленных управляющих токов при напряжении от 5 В до 36 В.
1.2 Требуемое оборудование 1,3 L293D Вывод ICL293D — это 16-контактная ИС с восемью контактами на каждой стороне для одновременного управления двумя двигателями постоянного тока. Для каждого двигателя имеется 4 контакта INPUT, 4 контакта OUTPUT и 2 контакта ENABLE.
Контакт 1: когда Enable1 / 2 находится в HIGH, левая часть IC будет работать, то есть двигатель, подключенный к контактам 3 и 6, будет вращаться.
Контакт 2: Вход 1, когда этот контакт ВЫСОКИЙ, ток будет течь через выход 1.
Контакт 3: Выход 1, этот контакт подключен к одной клемме двигателя.
Контакт 4/5: контакты GND
Контакт 6: Выход 2, этот контакт подключен к одной клемме двигателя.
Контакт 7: Вход 2, когда этот контакт ВЫСОКИЙ, ток будет проходить через выход 2.
Контакт 8: VSS, этот контакт используется для подачи питания на подключенные двигатели с максимальным напряжением от 5 В до 36 В в зависимости от подключенного двигателя.
Контакт 9: когда Enable 3/4 находится в HIGH, правая часть IC будет работать, то есть двигатель, подключенный к контакту 11 и контакту 14, будет вращаться.
Контакт 10: вход 4, когда этот контакт ВЫСОКИЙ, ток будет проходить через выход 4.
Контакт 11: Выход 4, этот контакт подключен к одной клемме двигателя.
Контакт 12/13: Контакты GND
Контакт 14: Выход 3, этот контакт подключен к одной клемме двигателя.
Контакт 15: Вход 3, когда этот контакт ВЫСОКИЙ, ток будет течь через выход 3.
Контакт 16: VCC, для питания IC, например, 5 В.
2. Соединения с Arduino1. Модуль 5V (VCC) — Arduino 5V.
2. Модуль GND — Arduino GND.
3. Модуль 1 — Arduino D8.
4. Модуль 2 — Arduino D9.
5. Модуль 3 — Arduino D10.
6. Модуль 4 — Arduino D11.
7.Модуль Моторные клеммы — двигатели постоянного тока.
8. Модуль VSS power terminal — Внешний источник питания 9В.
Выполните подключение, как показано выше.
Убедитесь, что на контактах Enable 1-2 и Enable 3-4 модуля предварительно установлены перемычки, чтобы двигатель включился и работал на максимальной скорости.
2.1. Рабочий механизмВращение двигателя зависит от контактов включения. Когда Enable 1/2 имеет значение HIGH, двигатель, подключенный к левой части IC, будет вращаться следующим образом:
Вход 1 | Вход 2 | Результат |
0 | 0 | Стоп |
0 | 1 | Против часовой стрелки |
1 | 0 | По часовой стрелке |
1 | 1 | Стоп |
Вот код для запуска этой схемы.
Вы можете скачать этот код (Arduino Sketch) отсюда.
// Учебное пособие по управлению двигателем от RoboIndia // Требования к оборудованию: драйвер двигателя (от RoboIndia) и Arduino // Мотор A const int inputPin1 = 10; // Вывод 15 микросхемы L293D const int inputPin2 = 11; // Вывод 10 микросхемы L293D // Мотор B const int inputPin3 = 9; // Вывод 7 микросхемы L293D const int inputPin4 = 8; // Вывод 2 микросхемы L293D установка void () { pinMode (inputPin1, ВЫХОД); pinMode (inputPin2, ВЫХОД); pinMode (inputPin3, ВЫХОД); pinMode (inputPin4, ВЫХОД); } пустой цикл () { digitalWrite (inputPin1, HIGH); digitalWrite (inputPin2, LOW); digitalWrite (inputPin3, HIGH); digitalWrite (inputPin4, LOW); }4.Выход
После подключения вы скопируете и вставите этот код в Arduino IDE, а затем загрузите код. Оба мотора начнут вращаться.
Если у вас есть какие-либо вопросы, напишите нам по адресу support@roboindia.