Автопортал || Авто - статьи

Сельскохозяйственная техника
Чтение RSS

Статьи

Главная Новости

Как подключить сервопривод к Ардуино. Пример использования сервопривода SG90

Опубликовано: 22.08.2018

видео Как подключить сервопривод к Ардуино. Пример использования сервопривода SG90

Подключение сервопривода к Arduino

В этой короткой статье мы расскажем вам, как подключить сервопривод к Ардуино. Этот проект идеально подойдет для новичков, потому что он прост и обеспечивает основу для создания множества интересных конструкций, например роботов, в которых обычно используются сервоприводы.



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

В отличие от обычных двигателей постоянного тока, сервоприводы обычно помимо выводов питания (Vcc и GND) имеют еще один дополнительный вывод (сигнальный). Сигнальный вывод используется для подачи управляющего сигнала от микроконтроллера, поворачивая тем самым его вал на необходимый угол.


Сервопривод – Подключение к Ардуино без написания кода!

В данной статье мы будем использовать популярный сервопривод SG90, и нашей задачей будет – вращать вал мотора от одного крайнего положения до другого.


Как подключить сервопривод к ардуино и где его купить.

Вес сервопривода: 9 гр Габариты: 21,5мм х 11,8мм х 22,7мм Напряжение питания: от 4,8В до 6В Крутящий момент: 1,2 кг*см при напряжении питания 4,7В Время поворота на угол 60 гр: 0,12 сек. при напряжении питания 4,7В Рабочая температура: -30°C…+60°C

Сервоприводы имеют высокие требования к току, поэтому при использовании более одного сервопривода с Ардуино важно подключать их силовые провода (Vcc и GND) к внешнему источнику питания, поскольку источник питания Ардуино не сможет обеспечить ток, необходимый для этих сервоприводов.

Поскольку в этом учебном пособии мы будем использовать только один сервопривод, то он будет прекрасно работать от источника питания самого Ардуино.

Необходимые компоненты

Для создания этого проекта потребуются следующие компоненты:

Схема подключения сервопривода SG90 к Ардуино

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

Как мы уже сказали ранее - сервомоторы обычно имеют три провода:

VCC - плюс источника питания (красный провод). GND - минус источника питания (черный или коричневый). Signal - сигнальный провод (желтый или оранжевый).

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

Подключите сервопривод к Ардуино, как показано на схеме ниже.

Сигнальный провод подключен к цифровому выводу D8 (ШИМ) Ардуино, поскольку управляющие сигналы от микроконтроллера Ардуино к сервоприводу отправляются в качестве импульсов ШИМ.

Скетч управления сервоприводом SG90

Скетч для этого проекта довольно прост благодаря функциональной и компактной библиотеке servo.h, разработанной командой Ардуино для облегчения использования серводвигателей в проектах Ардуино.

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

Начинаем код проекта с подключения библиотек, которые мы будем использовать, в нашем случае это библиотека servo.h.

#include <Servo.h>

Затем мы создаем объект библиотеки, который будет использоваться в качестве ссылки для управления нашим сервомотором по всему коду.

Servo servo;

После этого переходим к функции void setup (). Мы запускаем функцию, прикрепляя объект сервопривода к выводу D8 микроконтроллера, после чего мы центрируем сервопривод, поворачивая его на ноль градусов.

void setup() { servo.attach(8); servo.write(angle); }

Выполнив это, мы можем поворачивать вал сервопривода в любом направлении и делать это мы будем внутри функции void loop().

Благодаря библиотеке servo.h, все что нам нужно сделать, чтобы повернуть сервопривод на нужный угол - это передать желаемый угол в качестве аргумента в функцию servo.write ().

Чтобы продемонстрировать это, используем цикл с несколькими углами поворота в одном направлении, и другой цикл в обратном направлении (для возврата)

void loop() { // поворот от 0 до 180 градусов for(angle = 10; angle < 180; angle++) { servo.write(angle); delay(15); } // возврат от 180 to 0 градусов for(angle = 180; angle > 10; angle--) { servo.write(angle); delay(15); } }

Полный скетч проекта будет выглядеть следующим образом:

#include <Servo.h> Servo servo; int angle = 10; void setup() { servo.attach(8); servo.write(angle); } void loop() { // поворот от 0 до 180 градусов for(angle = 10; angle < 180; angle++) { servo.write(angle); delay(15); } // возврат от 180 to 0 градусов for(angle = 180; angle > 10; angle--) { servo.write(angle); delay(15); } }

Скопируйте приведенный выше код и загрузите его в Ардуино и через несколько секунд вы увидите вращение сервомотора то в одну, то в другую сторону.

Новости

Автопортал || Авто - статьи
При использовании материалов ссылка на источник обязательна.
Copyright www.hram-vysokoe.mca84102a © 2016
rss