Ардуино — Мотор | Arduino Tutorial
Мы изучим:
Какие типы двигателей можно использовать с Arduino
Чем отличаются типы двигателей
Как управлять каждым типом двигателей
В Arduino широко используются три типа двигателей:
Серводвигатель
Шаговый двигатель
Двигатель постоянного тока
Серводвигатель включает два основных типа: серводвигатель с углом поворота 180° и серводвигатель с углом поворота 360°. На самом деле, большинство людей неявно понимают «серводвигатель» как «серводвигатель на 180°».
Серводвигатель с углом поворота 360° аналогичен двигателю постоянного тока, за исключением того, что для него не требуется аппаратный драйвер.
Поворот ограничен от 0° до 180°
Направление вращения: по часовой стрелке, против часовой стрелки
Положение вращения: можно управлять поворотом на определенный угол от 0° до 180°
Скорость вращения: можно регулировать, но не плавно
Дополнительный аппаратный драйвер: НЕ требуется.
Просто управляйте напрямую с контакта Arduino
.Дополнительный источник питания: требуется
Как управлять: легко, просто используйте ШИМ-сигнал
Arduino — руководство по серводвигателю
Вращение не ограничено
Направление вращения: по часовой стрелке, против часовой стрелки
Положение вращения: можно контролировать точное вращение в любом угловом положении.
Скорость вращения: точно регулируется. Более того, ускорение и торможение можно точно контролировать
Дополнительный драйвер оборудования: требуется
Дополнительный источник питания: требуется
Как управлять: сложно, новичкам следует пользоваться библиотекой
Автоматика и робототехника
Принтеры, 3D-принтер, ЧПУ, X-Y плоттер,
Автомат для коктейлей
Arduino — руководство по шаговому двигателю
Arduino — руководство по шаговому двигателю с драйвером L298N
Arduino — руководство по шаговому двигателю 28BYJ-48
Вращение не ограничено
Направление вращения: по часовой стрелке, против часовой стрелки
Положение вращения: очень трудно точно повернуть на определенный угол
Скорость вращения: легко контролировать, насколько быстро, но очень трудно точно контролировать определенное значение скорости.
Дополнительный драйвер оборудования: требуется.
Дополнительный источник питания: требуется
Как управлять: легко, просто используйте высоковольтный ШИМ-сигнал
※ ПРИМЕЧАНИЕ:
Для управления положением двигателя постоянного тока нам потребуется дополнительное оборудование, называемое энкодером, а затем использовать метод управления с обратной связью, такой как метод ПИД-регулирования. Это очень сложно для начинающих.
Для контроля скорости мы можем легко контролировать скорость, например, медленную, среднюю, быструю, очень быструю, сколько процентов от полной скорости. Однако, чтобы контролировать количество циклов в секунду, нам нужно дополнительное оборудование, называемое энкодером, а затем использовать метод управления с обратной связью, такой как метод ПИД-управления. Это очень сложно для начинающих.
Некоторые двигатели постоянного тока на рынке имеют встроенный энкодер
Используется для управления чем-то, что должно вращаться непрерывно, но скорость указывать не нужно.
Например, вентилятор, насос, радиоуправляемая машинка, дрель…
※ ПРИМЕЧАНИЕ:
Существует два основных типа двигателей постоянного тока: коллекторные двигатели постоянного тока и бесщеточные двигатели постоянного тока. Коллекторный двигатель постоянного тока широко используется в проектах «сделай сам»
Arduino — руководство по двигателю постоянного тока
Выбор двигателя для проекта в зависимости от многих факторов, таких как переносимый вес, источник питания, характеристики приложения…
Если ваш проект необходимо повернуть в угловое положение между 0° и 180°, найти подходящий серводвигатель на 180°
Если в вашем проекте необходимо точное вращение в любое положение, найдите подходящий шаговый двигатель
Если в вашем проекте требуется точное непрерывное вращение без какой-либо позиции, найдите подходящий двигатель постоянного тока или серводвигатель с поворотом на 360°
180° Servo motor SG90 Buy on Amazon | |
180° Servo motor MG996R Buy on Amazon | |
360° Servo motor FS90R Buy on Amazon | |
Stepper motor Buy on Amazon | |
DC motor Buy on Amazon | |
DC motor with encoder Buy on Amazon | |
Аппаратный драйвер шагового двигателя и двигателя постоянного тока Купить на Amazon |
Обратите внимание: это партнерские ссылки. Если вы покупаете компоненты по этим ссылкам, мы можем получить комиссию без каких-либо дополнительных затрат для вас. Мы ценим это.
Посмотрите лучший комплект Arduino для начинающих
※ НАШИ СООБЩЕНИЯ
МОЖНО АРЕНДА. Узнайте, как нанять нас для создания вашего проекта
Если этот урок полезен для вас, пожалуйста, мотивируйте нас сделать больше уроков.
Вы можете поделиться ссылкой на это руководство где угодно. Однако, пожалуйста, не копируйте контент для публикации на других сайтах. Мы потратили много времени и сил на создание содержания этого урока, пожалуйста, уважайте нашу работу!
Подписывайтесь на нас
Поделись с друзьями!
Управление скоростью двигателя с помощью Arduino
Mark Li
19.11.19 ·
В этом примере мы будем управлять скоростью линейного привода с Arduino и драйвером двигателя.
Примечание. Этот учебник предполагает предварительное знание основных электронных принципов, аппаратного и программного обеспечения Arduino. Если вы впервые используете Arduino, мы предлагаем изучить основы в одном из множества отличных учебных пособий для начинающих, доступных через поиск Google и YouTube. Имейте в виду, что у нас нет ресурсов для предоставления технической поддержки для пользовательских приложений, и мы не будем отлаживать, редактировать, предоставлять код или схемы соединений за пределами этих общедоступных учебных пособий.
Компоненты
- Линейный привод 12 В
- Блок питания 12 В
- Ардуино
- Моторный драйвер
- Потенциометр (дополнительно)
- Электрические провода для соединения и обжимной инструмент или паяльник
Проводка
Обзор аппаратного и программного обеспечения
Для двигателей постоянного тока в линейных приводах требуется большой ток (до 5 А). контакты, так как они рассчитаны только на 40 мА каждый. Поэтому мы используем драйвер двигателя, который может принимать слаботочный ШИМ-сигнал (широтно-импульсная модуляция) с платы Arduino и выводить сильноточный ШИМ-сигнал на линейный привод.
Драйвер двигателя подключен к двум цифровым контактам ШИМ (контакты 10 и 11 на Arduino Uno). Установив один из этих контактов в LOW, а другой в HIGH (см. строки 18 и 19 в коде ниже), мы можем выдвигать привод на максимальной скорости. Чтобы остановить привод, мы устанавливаем оба контакта в положение LOW (см. строки 21 и 22 в коде ниже), а чтобы изменить направление движения, мы можем изменить порядок контактов HIGH и LOW (см. строки 24 и 25 в коде ниже). Мы также можем настроить скорость, изменив переменную «Скорость» на любое значение в диапазоне [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 в приведенном ниже коде.