Управление мотором ардуино уно

Видео:Управление моторами с ArduinoСкачать

Управление моторами с Arduino

Управление двигателем постоянного тока с помощью Arduino Uno

В этой статье мы будем подключать двигатель постоянного тока к Arduino Uno и управлять скоростью его вращения. Делать мы это будем с помощью ШИМ (широтно-импульсной модуляции, в англ. языке PWM — Pulse Width Modulation) – эта функция реализована в Arduino чтобы на основе постоянного напряжения иметь возможность получения изменяющегося напряжения.

Управление мотором ардуино уно

Видео:ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]Скачать

ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]

Общие принципы ШИМ

Метод осуществления ШИМ показан на следующем рисунке.

Если на представленном рисунке кнопка нажата, то двигатель начнет вращение и он будет вращаться до тех пор пока кнопка не будет отжата. Эта ситуация происходит если кнопка будет нажата постоянно – верхний график на представленном рисунке. Если же мы будем нажимать кнопку только в течение 8 мс из всего цикла в 10 мс, то в этом случае двигатель уже не будет в полной мере получать все напряжение батареи 9 В – в этом случае среднеквадратичная величина напряжения, получаемого двигателем, будет около 7 В. Соответственно, двигатель по сравнению с первым случаем (когда кнопка нажата постоянно) будет вращаться с меньшей скоростью. Поэтому цикл занятости (который еще называют коэффициентом заполнения ШИМ) в этом случае составит время включенного состояния/(время включенного состояния + время выключенного состояния) = 8/(8+2)=80%.

В следующих рассмотренных на рисунке случаях кнопка будет находиться в нажатом состоянии еще меньше чем в рассмотренном случае (80%). Соответственно, среднеквадратичная величина напряжения, получаемого двигателем, будет составлять еще меньшую величину, поэтому и скорость вращения двигателя также уменьшится. Это уменьшение скорости вращения двигателя вследствие уменьшения среднеквадратичной величины напряжения будет происходить до тех пор, пока получаемое двигателем напряжение не станет не достаточным для его вращения. То есть, изменяя величину цикла занятости (коэффициент заполнения ШИМ), можно управлять скоростью вращения двигателя постоянного тока.

Видео:Уроки Arduino. Управление моторами с библиотекой GyverMotorСкачать

Уроки Arduino. Управление моторами с библиотекой GyverMotor

Принцип работы H-моста

Перед тем, как переходить непосредственно к управлению двигателем, обсудим что такое H-BRIDGE (H-мост). Собранная нами далее схема будет осуществлять две функции: управлять двигателем постоянного тока с помощью управляющих сигналов малой мощности и изменять направление вращения двигателя.

Нам известно, что для изменения направления вращения двигателя постоянного тока необходимо изменить полярность приложенного к нему питающего напряжения. И как раз для смены полярности напряжения хорошо подходит устройство, называемое H-мостом. На представленном выше рисунке мы имеем 4 выключателя. Как показано на рисунке 2 если выключатели A1 и A2 замкнуты, то ток через двигатель течет справа налево как показано на второй части рисунка 2 – то есть в этом случае двигатель будет вращаться по часовой стрелке. А если выключатели A1 и A2 разомкнуты, а B1 и B2 – замкнуты, то ток через двигатель в этом случае будет протекать слева направо как показано на второй части рисунка, то есть двигатель будет вращаться против часовой стрелки. В этом и заключается принцип работы H-моста.

Мы в качестве H-моста будем использовать специализированную микросхему L293D, которую еще называют драйвером двигателей. Эта микросхема предназначена для управления двигателями постоянного тока малой мощности (см. рисунок) и содержит в своем составе два H-моста, то есть с ее помощью можно управлять двумя двигателями. Эта микросхема часто используется для управления двигателями в различных роботах.

В следующей таблице указаны необходимые значения напряжений на выводах INPUT1 и INPUT2 микросхемы L293D для смены направления вращения двигателя.

Enable PinInput Pin 1Input Pin 2Motor Direction
HighLowHighвправо
HighHighLowвлево
HighLowLowстоп
HighHighHighстоп

То есть, чтобы двигатель вращался по часовой стрелке необходимо чтобы на 2A было напряжение высокого уровня (high), а на контакте 1A – напряжение низкого уровня (low). Аналогично для вращения двигателя против часовой стрелки необходимо обеспечить на 1A напряжение высокого уровня, а на 2A – низкого.

Как показано на следующем рисунке Arduino UNO имеет 6 ШИМ каналов (обозначенных на плате специальным знаком – тильдой), любой из которых мы можем использовать для получения изменяющего напряжения (на основе ШИМ). В данном проекте мы будем использовать в качестве ШИМ выхода контакт PIN3 Arduino UNO.


🎬 Видео

Привод для жалюзи на базе Arduino uno своими руками. Управление шаговыми моторами с помощью кнопок.Скачать

Привод для жалюзи на базе Arduino uno своими руками. Управление шаговыми моторами с помощью кнопок.

Управление двумя униполярными шаговыми двигателями с помощью джойстика на базе Arduino uno.Скачать

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

NEMA17 Управление шаговым двигателем - Stepper motor with ArduinoСкачать

NEMA17 Управление шаговым двигателем  - Stepper motor with Arduino

Управление двигателем постоянного тока. Схема управления мотором Ардуино проекты.Скачать

Управление двигателем постоянного тока. Схема управления мотором Ардуино проекты.

Как подключить шаговый двигатель к ArduinoСкачать

Как подключить шаговый двигатель к Arduino

Управление шаговым двигателем через Arduino (Arduino+TB6560+Nema 23)Скачать

Управление шаговым двигателем через Arduino (Arduino+TB6560+Nema 23)

Уроки Arduino - управление бесколлекторным моторомСкачать

Уроки Arduino - управление бесколлекторным мотором

Уроки Ардуино #11 - плавное управление нагрузкой, ШИМ сигналСкачать

Уроки Ардуино #11 - плавное управление нагрузкой, ШИМ сигнал

Как настроить ШАГОВЫЙ ДВИГАТЕЛЬ 28BYJ-48 Arduino?! ОбзорСкачать

Как настроить ШАГОВЫЙ ДВИГАТЕЛЬ 28BYJ-48 Arduino?! Обзор

Шаговый двигатель 28BYJ-48 с драйвером ULN2003 - Подключение к ArduinoСкачать

Шаговый двигатель 28BYJ-48 с драйвером ULN2003 - Подключение к Arduino

Драйвер двигателей L298N - Обзор, Тест, Подключение к ArduinoСкачать

Драйвер двигателей L298N - Обзор, Тест, Подключение к Arduino

КАК ПОДКЛЮЧИТЬ СЕРВОПРИВОД К ARDUINO [Уроки Ардуино #15]Скачать

КАК ПОДКЛЮЧИТЬ СЕРВОПРИВОД К ARDUINO [Уроки Ардуино #15]

Управление шаговым двигателем на Arduino UnoСкачать

Управление шаговым двигателем на Arduino Uno

Уроки Arduino #8 - управление релеСкачать

Уроки Arduino #8 - управление реле

Arduino Проекты #2 "Управление сервоприводом"Скачать

Arduino Проекты #2 "Управление сервоприводом"

Управление мотором ардуиноСкачать

Управление мотором ардуино

Управление джостиком от ардуино мотор редукторомСкачать

Управление джостиком от ардуино мотор редуктором
Поделиться или сохранить к себе:
Технарь знаток