В данной статье рассматривается наиболее простой способ подключения мотора постоянного тока к Arduino.
- Введение
- Необходимые компоненты
- Схема подключения
- Программинг
- Результаты
- Использование ШИМ для регулировки скорости мотора
- Схема подключения
- Результат
- Подключение транзистора к Ардуино
- Устройство и принцип работы транзистора
- Как подключить транзистор к Ардуино
- Скетч. Управление мотором через транзистор
- Скетч. Управление мотором от датчика
- Управление двигателем постоянного тока
- Управление двигателем при помощи биполярного транзистора
- Несколько слов об индуктивных нагрузках
- Управление двигателем при помощи MOSFET транзистора
- Управление двигателем при помощи реле
- Управление двигателем при помощи H-моста
- Управление шаговым двигателем
- 📹 Видео
Видео:Драйвер прямого и обратного хода коллекторного двигателя на транзисторах - СВОИМИ РУКАМИСкачать
Введение
Моторы постоянного тока нельзя подключать напрямую к Arduino. Это обусловлено тем, что пины не способны выдавать ток более 40 мА. Мотору же, в зависимости от нагрузки, необходимо несколько сотен миллиампер. Потому возникает потребность увеличения мощности. Делается это, как-правило, с помощью транзисторов.
В статье «Транзисторы: схема, принцип работы, чем отличаются биполярные и полевые» можно ознакомиться с основными типами транзисторов и их принципами работы.
Так же рекомендуется посмотреть: Видеоуроки по Arduino, 5-я серия — Моторы и транзисторы. В данном уроке Джереми Блюм рассказывает о подключении мотора постоянного тока к Arduino через биполярный транзистор.
Видео:Управление моторами с ArduinoСкачать
Необходимые компоненты
Мы рассмотрим вариант взаимодействия с полевым транзистором. Принципы подключения мотора будут разобраны на конкретном железе: DC-мотор, плата Arduino, N-канальный полевой транзистор, резистор на 10 кОм (R1), резистор на 220 Ом (R2).
Вы же в своих экспериментах вольны использовать то, что есть в наличии. Важны лишь 3 условия:
Видео:Уроки Ардуино #9 - управление нагрузкой MOSFET транзисторСкачать
Схема подключения
По-сути, обмотка мотора представляет собой катушку индуктивности. В момент подачи напряжения возникнет обратная электродвижущая сила, которая может вывести из строя транзистор. Flyback диод устанавливается в обратном направлении и предотвращает утечку тока с мотора на транзистор. Поэтому, если в транзисторе нет flyback диода, его необходимо установить дополнительно: анод на исток, катод на сток.
Транзистор IRF530N является мощным и поставляется в корпусе TO-220. Ниже приведена его распиновка.
В данной схеме транзистор будет работать в ключевом режиме: по одной команде (установка уровня HIGH на затворе) от Arduino транзистор будет подключать мотор к источнику питания (отпираться), по другой команде (установка уровня LOW на затворе) — отключать мотор от источника питания.
Резистор R1 подтягивает к земле затвор транзистора. Номинал не принципиален — можно использовать любые резисторы в диапазоне от 1 до 10 кОм. Резистор R2 служит для защиты пина микроконтроллера. Диапазон, примерно, от 10 до 500 Ом.
Чтобы запитать данную схему, можно подключить к Arduino внешний источник питания на 6-9 В, либо подать питание непосредственно на макетную плату ( синяя шина — минус, красная шина — плюс).
Видео:Как Проверить Полевой MOSFET ТранзисторСкачать
Программинг
Для наибольшей простоты воспользуемся, пожалуй, самым известным скетчем из готовых примеров — Blink.
Цифровой пин 13 раз в секунду меняет своё состояние. Когда на выходе устанавливается значение HIGH — загорается светодиод и начинает вращаться мотор. Когда устанавливается LOW — светодиод гаснет, а мотор останавливается.
Результаты
Была получена возможность подключать к выводам Arduino мощные устройства, в частности, моторы постоянного тока.
Видео:Mosfet Модуль IRF520 и ESP 8266. ШИМ управление двигателем или светомСкачать
Использование ШИМ для регулировки скорости мотора
Если мотором управлять ничуть не сложнее, чем светодиодом, то, наверное можно изменять яркость скорость вращения мотора точно так же, как при работе со светодиодами? Именно так! С точки зрения Arduino абсолютно не важно с чем мы имеем дело.
Как вы уже, наверно, могли догадаться, для изменения скорости вращения мотора нам понадобится скетч Fade.
Видео:Схема Управления МОЩНОЙ Нагрузкой ( Используем 1 Транзистор - MOSFET )Скачать
Схема подключения
Чтобы использовать возможности функции analogWrite(..) , нам придётся перейти на один из пинов (3/5/6/9/10/11), поддерживающих аппаратный ШИМ. Поскольку, по умолчанию, в скетче Fade задействован 9-й пин, остановим свой выбор на нём.
Результат
Была получена возможность изменять скорость вращения мотора, используя аппаратный ШИМ Arduino.
На чём данная статья подходит к завершению. Теперь вы смело можете использовать моторы постоянного тока в своих проектах!
Видео:H-МОСТ на транзисторах.Как это работает и зачем он нужен двигателямСкачать
Подключение транзистора к Ардуино
Подключение полевого транзистора ► рассмотрим самый простой способ подключения мотора к Arduino — использование транзистора для управления двигателем.
Подключение полевого / биполярного транзистора к Arduino — рассмотрим на этом занятии устройство и применение транзисторов в электронной автоматике. Запрограммируем работу мотора постоянного тока в зависимости от показаний датчика влаги или фоторезистора. Вспомним использование операторов if, else и рассмотрим тип данных — unsigned int, который часто используется в языке C++.
Читайте также: Технические характеристики дизельных моторов мерседес
Видео:Транзистор в качестве реле. Ключ на полевом транзисторе.Скачать
Устройство и принцип работы транзистора
Транзистором называется полупроводниковый прибор, предназначенный для усиления и генерирования электрических колебаний. Транзисторы являются ключами (кнопками) в сетях с постоянным током. Биполярные транзисторы могут управлять электрической цепью до 50 В, полевые транзисторы могут управлять приборами до 100 В (при напряжении на затворе 5 В). В сетях с переменным током использую реле.
Фото. Устройство полевого и биполярного транзистора
При отсутствии напряжения на базе или затворе транзистора, эмиттерный и коллекторный переход находятся в равновесия, токи через них не проходят и равны нулю. Таким образом, подавая на базу биполярного транзистора напряжение в 5 В, мы можем включать электрические цепи до 50 Вольт. Сегодня этот полупроводниковый элемент встречается почти в любом устройстве (в телефоне, компьютере и т.д.).
Транзисторы являются основой для построения микросхем логики, памяти и микропроцессоров компьютеров. Транзистор — это электронный элемент из полупроводникового материала, обычно с тремя выводами, позволяющий с помощью входного сигнала управлять током высокого напряжения. Использование транзистора — это наиболее простой способ подключения к Ардуино мотора постоянного тока.
Видео:Виды транзисторов NPN PNP MOSFET JFETСкачать
Как подключить транзистор к Ардуино
Для этого занятия нам потребуется:
- плата Arduino Uno / Arduino Nano / Arduino Mega;
- макетная плата;
- 1 биполярный транзистор;
- 1 мотор постоянного тока;
- 2 резистора от 1 до 10 кОм;
- провода «папа-папа» и «папа-мама».
Подключить мотор постоянного тока напрямую к цифровым или аналоговым портам Arduino не получится. Это обусловлено тем, что пины на плате Ардуино не способны выдавать ток более 40 мА. При этом мотору постоянного тока, в зависимости от нагрузки, необходимо сотни миллиампер. Потому и возникает потребность управления электрической цепью высокого напряжения транзистором или Motor Shield L293D.
Схема подключения мотора постоянного тока к Ардуино
Соберите электрическую цепь, как на рисунке выше. Если присмотреться к сборке на макетной плате, то вы заметите, что транзистор играет роль кнопки. Если кнопка замыкает электрическую цепь при нажатии на толкатель, то транзистор начинает пропускать ток при подаче напряжения на базу. Таким образом, мы можем сделать автоматическое или полуавтоматическое управление мотором на Ардуино.
Скетч. Управление мотором через транзистор
Если вы заметили, то это скетч из занятия — Включение светодиода на Ардуино. С точки зрения микропроцессора абсолютно не важно, что подключено к Pin13 — светодиод, транзистор или драйвер светодиодов для Светового меча на Ардуино. Обратите внимание на то, что резистор R1 подтягивает базу транзистора к земле, а резистор R2 служит для защиты порта микроконтроллера от перегрузки.
Скетч. Управление мотором от датчика
Скетч управления двигателем постоянного тока на Ардуино можно написать по-другому. Добавим в схему фоторезистор и сделаем автоматическое включение мотора при снижении уровня освещенности в комнате. Можно также использовать датчик уровня жидкости или любой другой датчик. В скетче мы используем операторы if и else для управлением (включением/выключением) мотора постоянного тока.
Управление двигателем постоянного тока на Arduino UNO
Видео:Самое Колхозное Управление мотором с помощью одного транзистораСкачать
Управление двигателем постоянного тока
Чтобы двигатель постоянного тока начал вращаться, ему необходимо обеспечить нужное количество энергии. Как правило, для маломощных двигателей достаточно несколько ватт. Блок управления (микроконтроллер), который принимает решения о запуске двигателя, не может непосредственно управлять двигателем, то есть обеспечить необходимую мощность со своего вывода. Это связано с тем, что порты микроконтроллера имеют очень ограниченную нагрузочную способность (максимальный ток на выходе микроконтроллера обычно не более 20 мА).
Поэтому нужен усилитель мощности — устройство, которое может на своем выходе генерировать сигнал мощностью большей, чем мощность на его входе. Такими устройствами являются транзистор и реле, которые прекрасно подходят для управления двигателем постоянного тока.
Читайте также: Экономный мотор для лодки
Видео:Полевой транзистор вместо реле или кнопкиСкачать
Управление двигателем при помощи биполярного транзистора
Самый простой способ приведения в действие двигателя показан ниже:
Биполярный транзистор используется в качестве переключателя. Резистор R необходимо подобрать таким, чтобы в худшем случае (потенциал базы равен потенциалу эмиттера) через него протекал ток, не превышающий максимальный ток порта микроконтроллера.
Для того чтобы подобрать подходящий транзистор, нам нужно знать максимальный ток во время пуска или остановки двигателя, и ток во время нормальной его работы. Исходя из этого, мы подберем транзистор с соответствующим током коллектора и его максимальное значение.
Следует также обратить внимание на мощность, выделяющуюся на транзисторе (P = Uкэ * Iк). Несмотря на то, что транзистор в данном случае работает в состоянии насыщения и напряжение Uкэ часто не превышает 1В, коллекторный ток все же велик (около 0,5 А для двигателя среднего размера) и, следовательно, мощность, излучаемая на транзисторе может потребовать от нас установки радиатора.
Другой проблемой при применении биполярных транзисторов, может быть, слишком большой ток базы. Соотношение токов выходного сигнала к входному такого транзистора — это чаще всего 100 (это отношение называется коэффициентом усиления по току и обозначается или hfe ). Но, к сожалению, когда транзистор работает в состоянии насыщения, этот коэффициент сильно снижается.
Это приводит к тому, что если мы хотим, чтобы ток коллектора имел большое значение, это может потребовать большего тока, чем 20 мА, то есть больше, чем составляет нагрузочная способность порта микроконтроллера. В таких случаях решением может быть использование комбинации транзисторов – транзистор Дарлингтона:
Такая система ведет себя как один транзистор с большим значением усиления тока и малой скоростью работы.
Несколько слов об индуктивных нагрузках
Поскольку двигатель является индуктивной нагрузкой, мы должны быть осторожны. Если через обмотку течет ток, и мы внезапно остановим этот поток, то на выводах обмотки временно появляется большое напряжение. Это напряжение может привести к повреждению транзистора (в представленной схеме выше) вызывая пробой перехода база-коллектор. Кроме того, это может создавать значительные помехи. Для предотвращения этого необходимо параллельно с индуктивной нагрузкой подключить диод:
Во время нормальной работы двигателя диод смещен в обратном направлении. Отключение питания электродвигателя вызывает нарастание напряжения на катушке, при этом диод будет смещен в прямом направлении, благодаря чему произойдет разряд излишней энергии накопленной в катушке.
Диод следует подобрать такой, чтобы он выдерживал обратное напряжение во время нормальной работы двигателя. Такую защиту можно применять как при использовании биполярных транзисторов, так и MOSFET. Так же рекомендуется использовать диод и в работе с электромагнитным реле, для предотвращения раннего износа контактов.
Видео:БЕСКОЛЛЕКТОРНЫЙ ДВИГАТЕЛЬ. Как работает? Чем отличаться от щёточного? #бесколлекторный #МОТОРСкачать
Управление двигателем при помощи MOSFET транзистора
Так же можно управлять постоянным двигателем с помощью полевого транзистора MOSFET:
Он должен быть с каналом обогащенного типа. Основным преимуществом такого транзистора является практически отсутствие входного тока. Он имеет небольшое активное сопротивление канала (доли ома), благодаря чему потери мощности в транзисторе не большие. Недостатком является чувствительность к электростатическим разрядам, которые могут вывести транзистор из строя.
Так как ток стока может достигать (для среднего транзистора) десятков ампер и, имея практически нулевой входной ток, MOSFET транзисторы отлично подходят в качестве усилителя мощности и часто являются лучшей альтернативой, чем биполярные. Они так же должны быть защищены диодами от индуктивных всплесков, так как это может привести к пробою между затвором и каналом (напряжение пробоя составляет несколько десятков вольт).
Видео:Использование транзистора для управления моторомСкачать
Управление двигателем при помощи реле
Если вам необходимо управление двигателем постоянного тока, и вы знаете, что частота переключения не будет слишком большая (ниже 20 Гц), то вы можете для коммутации использовать реле (реле не подходят для управления ШИМ). Преимуществом такого решения является, прежде всего, малое выделение тепла.
Читайте также: Завод мотор колесо ddk
Существуют малогабаритные реле способные управлять токами до 10 А ! Для таких больших токов, потери мощности в реле являются приемлемыми, но для небольших токов хуже. Катушка управления контактами реле можно работать даже от нескольких сотен мА. Так что нет никакого смысла в использовании такого реле для управления током подобной величины. К счастью, есть отдельные экземпляры, которые потребляют ток около 40 мА и это уже гораздо лучше.
Если речь идет о напряжении управления реле, то оно бывает от 3 до 24 В. Как мы уже писали ранее, максимальный выходной ток микроконтроллера 20 мА, а это слишком мало, чтобы управлять реле напрямую. Поэтому для управления необходимо использовать транзистор. Схема такого подключения, как правило, выглядит следующим образом:
Так и так, нам нужен транзистор. Следует, отметить, что в данном случае выделяется гораздо меньше тепла, чем на схеме, основанной только на транзисторе, так как через транзисторный ключ в этой системе течет небольшой ток, а само реле почти не рассеивает энергию в выходной цепи.
Защитный диод на реле не является обязательным. Его наличие зависит от силы тока, индуктивности катушки и максимального напряжения Uкэ транзистора. А вот наличие диода в выходной цепи больше зависит от того, хотим ли мы продлить срок службы контактов реле.
В конце рассуждений о реле приведем ситуацию, когда данный вид управления двигателем является оптимальным. Предположим, что мы хотим управлять двигателем, у которого номинальное рабочее напряжение 2,5 В и ток 3А и работает он от источника напряжением 2,5 В (переключение с небольшой частотой). Если вы будете использовать усилитель, построенный на транзисторе, то на выходе мы будем иметь падение напряжения около 1 В, что в данном случае является слишком большим значением. При использовании же реле у нас никакого падения напряжения не будет.
Видео:Как подключить полевой транзистор к микроконтроллеру - схемы и нюансы включения полевых транзисторовСкачать
Управление двигателем при помощи H-моста
Решения, которые мы привели до этого, имеют основной недостаток — с их помощью не возможно управлять двигателем в двух направлениях! Такая необходимость, скорее всего, нам пригодиться, например, при строительстве роботов. H-моста — это конструкция, которая может быть построена как из обоих типов транзисторов, как и с реле.
Буква «H» исходит из того, что четыре реле и двигатель в середине образуют на схеме букву «H».
Подробно о том, как работает H-мост можно почитать здесь
Видео:РЕВЕРС МОТОРА без Н моста и транзисторов !!! НА одних ДИОДАХ !Скачать
Управление шаговым двигателем
Шаговые двигатели, так же как и коллекторные, состоят в основном из катушек. То есть для вращения нужно пропустить ток через катушки. Таким образом, все из представленных схем управления двигателями могут быть использованы и для управления шаговым двигателем. (все, кроме H-моста)
Разница в схеме усилителя мощности для шаговых двигателей заключается в том, что здесь немного другие напряжения и токи, и также в основном требуется 4 переключателя на один двигатель (когда двигатель имеет пять контактов).
Номинальное рабочее напряжение, в основном, находится в диапазоне 9 — 24 В. При таких не малых напряжениях мы имеем дело также с большим током: 0,3 — 1A на одну фазу! Ниже приведен пример подключения шагового двигателя с 5 выводами:
В роли ключей мы можем также использовать MOSFET — транзисторы. Это даже более простое решение.
Так как нам нужно до 4-х транзисторов, которые занимают довольно много места на плате, хорошим решением будет использовать микросхему ULN2003A.
- Свежие записи
- Чем отличается двухтактный мотор от четырехтактного
- Сколько масла заливать в редуктор мотоблока
- Какие моторы бывают у стиральных машин
- Какие валы отсутствуют в двухвальной кпп
- Как снять стопорную шайбу с вала
📹 Видео
Простой регулятор напряжения на одном MOSFET транзисторе! Только две детали!Скачать
КАК РАБОТАЕТ ТРАНЗИСТОР | ОБЪЯСНЯЮ НА ПАЛЬЦАХСкачать
Уроки Ардуино. Управление нагрузкой в сети переменного токаСкачать
МОП MOSFET ТРАНЗИСТОР. ПРИНЦИП РАБОТЫ В АНИМАЦИИ. БЕЗ ЛИШНЕЙ ВОДЫ И ФОРМУЛ. # транзистор #mosfetСкачать
Транзисторный ключ и arduino - это просто!Скачать