Promremont34.ru

Авто мастеру
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

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

1 небольшой двигатель постоянного тока с напряжением питания около 6 В;

1 чип L293D, который используется в качестве драйвера для двигателя;

1 переменный резистор (потенциометр) сопротивлением 10 кОм;

1 тактовая кнопка;

1 монтажная плата;

1 плата Arduino Uno;

Подключив мост IC L298 к Arduino, вы можете управлять двигателем постоянного тока.

Двигатель с постоянным током или постоянным током является наиболее распространенным типом двигателя. Обычно двигатели постоянного тока имеют всего два провода, один положительный и один отрицательный. Если вы подключите эти два провода непосредственно к батарее, двигатель будет вращаться. Если вы переключаете провода, двигатель вращается в противоположном направлении.

T o управляйте направлением вращения двигателя постоянного тока, не изменяя способ подключения проводов, вы можете использовать схему под названием H-Bridge. Мост H — это электронная схема, которая может управлять двигателем в обоих направлениях. H-мосты используются во многих различных приложениях, одним из наиболее распространенных способов управления двигателями в роботах. Он называется H-мостом, поскольку он использует четыре транзистора, соединенных таким образом, что схематическая диаграмма выглядит как «H.»,

Вы можете использовать дискретные транзисторы для создания этой схемы, но для этого урока мы будем использовать IC L298 H-Bridge. L298 может управлять скоростью и направлением двигателей постоянного тока и шаговых двигателей и одновременно управлять двумя двигателями. Его текущий рейтинг составляет 2А для каждого двигателя. Однако при этих токах вам необходимо использовать радиаторы.

Выводы для L298 показаны ниже. Вы можете найти таблицу L298 на странице //www.tech.dmu.ac.uk/

Вырез L298 (вид сверху)

Требуется оборудование

  • 1 x L298 мост IC
  • 1 двигатель постоянного тока
  • 1 x Arduino Mega2560
  • 1 макет
  • 10 x перемычек

На приведенной выше схеме показано, как подключить L298 IC для управления двумя двигателями. Для каждого двигателя есть три входных штыря, включая Input1 (IN1), Input2 (IN2) и Enable1 (EN1) для Motor1 и Input3, Input4 и Enable2 для Motor2.

Поскольку в этом руководстве мы будем контролировать только один двигатель, мы подключим Arduino к IN1 (контакт 5), IN2 (контакт 7) и Enable1 (контакт 6) L298 IC. Штырьки 5 и 7 являются цифровыми, то есть входы ВКЛ или ВЫКЛ, в то время как контакт 6 требует сигнала с широтно-импульсной модуляцией (ШИМ) для управления скоростью двигателя.

В следующей таблице показано, в каком направлении будет вращаться двигатель, в зависимости от цифровых значений IN1 и IN2.

Читать еще:  Abm storm какой двигатель
В 1IN2MOTOR
ТОРМОЗНАЯ
1ВПЕРЕД
1BACKWARD
11ТОРМОЗНАЯ

IN1 штыря L298 IC подключается к контакту 8 Arduino, а IN2 подключается к контакту 9. Эти два цифровых контакта Arduino управляют направлением двигателя. Штырь EN A IC подключается к штырю 2 ШИМ из Arduino. Это будет контролировать скорость двигателя.

Чтобы установить значения контактов Arduino 8 и 9, мы будем использовать функцию digitalWrite (), и для установки значения вывода 2 мы будем использовать функцию analogWrite ().

Ниже приведена фотография созданного.

Настроить

  1. Подключите 5V и заземлите IC до 5V и заземлите Arduino.
  2. Подключите двигатель к контактам 2 и 3 IC.
  3. Подключите IN1 IC к контакту 8 Arduino.
  4. Подключите IN2 IC к контакту 9 Arduino.
  5. Подключите EN1 IC к контакту 2 Arduino.
  6. Подключите SENS Штырь IC к земле.
  7. Подключите Arduino с помощью USB-кабеля Arduino и загрузите программу в Arduino, используя программное обеспечение Arduino IDE.
  8. Обеспечьте питание платы Arduino, используя блок питания, аккумулятор или кабель USB.

Теперь двигатель должен работать сначала по часовой стрелке (CW) в течение 3 секунд, а затем против часовой стрелки (CCW) в течение 3 секунд.

видео

Попробуйте этот проект сами! Получить спецификацию.

AHiismak

Расчет «3,5 В / 2 мА = 7 кОм» неверен!

3,5 был рассчитан как 5 В (выход Arduino в логическом состоянии «1») — 1,5 В (напряжение BE транзистора Дарлингтона при проведении).

3,5 В / 0,002 А = 1750 Ом

Лучше округлить значение вниз, поэтому ближайшее значение E24 будет 1600 Ом.

И: действительно ли вы можете гарантировать, что arduino будет выдавать ровно 5 В в логическом состоянии «1»?

если Arduino выдаст только 4,4 В вместо 5 В, расчет изменится на:

4,4 В — 1,5 В = 2,9 В

2,9 В / 0,002 A = 1450 Ом, округленное (E24) 1450 Ом составляет 1300 Ом.

Чтобы быть уверенным, вы должны проверить из технической спецификации Arduino:

минимальное выходное напряжение выводов ввода / вывода в логическом состоянии «1».

Затем рассчитаем напряжение резистора:

U (R) = V (I / O @ логическая «1») — 1,5 В

И наконец, предполагая, что транзистор точно равен hFe = 1000, если ток двигателя равен 2 A, то hFe = 1000 означает, что необходимый базовый ток для транзистора такой же, как ток резистора I (R) = 2 A / 1000 = 2 мА = 0,002 А.

Хотя это правда, что если у вас немного слишком низкое сопротивление, у вас слишком высокий базовый ток, но наоборот еще хуже:

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

Читать еще:  Двигатель 104 мерседес технические характеристики

1) транзистор генерирует больше тепла

2) потеря напряжения на транзисторе излишне велика, оставляя меньше напряжения (и меньше мощности) для двигателя.

Контроль скорости двигателя

Ниже приведена принципиальная схема двигателя постоянного тока, подключенного к плате Arduino.

Arduino Code

Код для заметки

Транзистор действует как переключатель, управляющий мощностью двигателя. Контакт 3 Arduino используется для включения и выключения транзистора, и на эскизе ему присваивается название «motorPin».

Когда программа запускается, она предлагает вам ввести значения для управления скоростью двигателя. Вам необходимо ввести значение от 0 до 255 в Serial Monitor.

В функции «loop» команда «Serial.parseInt» используется для считывания числа, введенного в виде текста в Serial Monitor, и преобразования его в «int». Вы можете ввести любой номер здесь. Оператор ‘if’ в следующей строке просто выполняет аналоговую запись с этим номером, если число находится в диапазоне от 0 до 255.

Результат

Двигатель постоянного тока будет вращаться с различными скоростями в соответствии со значением (от 0 до 250), полученным через последовательный порт.

Распиновка микросхемы L298 (вид сверху)

  • 1 x микросхема моста L298
  • 1 x двигатель постоянного тока
  • 1 x Arduino Mega 2560
  • 1 x макетная плата
  • 10 x перемычка

Комплектующие для эксперимента управления двигателем постоянного тока с помощью Arduino Схема включения микросхемы L298 для управления двумя электродвигателями

Схема выше показывает, как подключить микросхему L298 для управления двумя электродвигателями. Для управления каждым двигателем у микросхемы есть по три вывода: вход 1 (IN1), вход 2 (IN2) и включение A (EN A) для двигателя 1, и вход 3 (IN3), вход 4 (IN4) и включение B (EN B) для двигателя 2.

Поскольку в данном руководстве мы будем управлять только одним электродвигателем, то мы подключим Arduino к выводам IN1 (вывод 5), IN2 (вывод 7) и EN A (вывод 6) микросхемы L298. Выводы 5 и 7 цифровые, то есть для вращения двигателя в заданную сторону на эти выводы необходимо подавать неизменяющиеся в времени сигналы логического нуля или единицы. В то время, как на вывод 6 необходимо подавать широтно-импульсно-модулированный (ШИМ) сигнал, который управляет скоростью вращения двигателя.

Следующая таблица показывает, в каком направлении будет вращаться электродвигатель в зависимости от логических уровней на входах IN1 и IN2.

Выбор направления вращения двигателя при работе с микросхемой L298

IN1IN2Двигатель
остановлен
1вращение вперед
1вращение назад
11остановлен

В таблице ниже приведено описание подключения микросхемы L298 к нашей плате Arduino Mega 2560.

Подключение микросхемы L298 к плате Arduino

Выводы L298Выводы ArduinoНазначение
IN1вывод 8выбор направления вращения двигателя
IN2вывод 9
EN AШИМ вывод 2управление скоростью вращения двигателя

Для установки значений на выводах 8 и 9 платы Arduino мы будем использовать функцию digitalWrite() , а для установки занчений на выводе 2 – функцию analogWrite() .

Ниже показана фотография стенда, собранного для проведения эксперимента.

Стенд для проведения эксперимента по управлению двигателем постоянного тока с помощью Arduino и микросхемы Н-моста L298

Скетч для Arduino доступен для скачивания в конце статьи. Код «TESTED CODE RX» предназначен для Atmega328, а код «TESTED CODE TX» предназначен для передатчика.

Подключите двигатель постоянного тока от 12 В до 24 В к MG1 (разъем двигателя), подключите источник питания от 12 В до 24 В к CN3. Установите перемычку J2 и перемычку J1. Включите питание, включите передатчик NRF24L01 с джойстиком, двигатель должен работать с джойстиком.

Скачать файлы проекта (75,8 KiB, скачано: 4)

Общий принцип использования ШИМ

Управляя скоростью модуляции ШИМ (Pulse Width Modulation, PWM) можно регулировать, к примеру, силу свечения светодиода – данный принцип пояснен на следующем рисунке. Аналогичный механизм используется и для управления скоростью вращения двигателя.

Если на представленном рисунке выключатель будет замкнут на протяжении некоторого времени, то на протяжении этого же времени лампочка будет гореть. Если переключатель будет замкнут в течение 8ms и будет разомкнут 2ms в течение интервала 10ms, тогда лампочка будет гореть только в течение интервала 8ms. В рассмотренном примере можно сказать, что среднее выходное напряжение (на лампочке) будет составлять 80% от напряжения батареи.

В другом случае выключатель замыкается на 5ms и размыкается на эти же самые 5ms в течение интервала 10ms, таким образом среднее напряжение на лампочке будет составлять 50% от напряжения батареи. Принято говорить, что если напряжение батареи 5В и цикл занятости составляет 50%, то среднее напряжение на оконечном устройстве (лампочке) будет составлять 2.5В.

В третьем рассмотренном на рисунке случае цикл занятости составляет 20% и поэтому среднее напряжение на оконечном устройстве (лампочке) будет составлять 20% от напряжения батареи.

Применяя все сказанное к рассматриваемому нами примеру управления скоростью вращения двигателем можно сказать, что чем больше будет коэффициент заполнения ШИМ (отношение длительности ON состояния к периоду), тем выше будет скорость вращения двигателя.

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector