|

Сервопривод Ардуино: что такое, как работает и как подключить.

Сервопривод Ардуино SG-90
Сервопривод SG-90

Всем привет! В этой статье я расскажу что такое сервопривод ардуино, как он работает и как устроен.

Сервопривод — это небольшой мотор, который медленно вращается, имея хорошую мощность для поворота каких-либо деталей.

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

Сейчас рассмотрим модель сервопривода SG-90. Этот сервопривод может поворачивать ось на 180 градусов, хотя на AliExpress есть модификации и на 360 градусов. При покупке градусную меру поворота можно определить только по описанию товара в магазине, внешне это не видно.

ПОДКЛЮЧЕНИЕ СЕРВОПРИВОДА SG-90

Имеет сервопривод всего 3 провода для подключения:

  1. Красный — 5 вольт, 5V;
  2. Коричневый — земля, GND;
  3. Оранжевый — сигнальный, по нему идёт управление сервоприводом с помощью специального ШИМ сигнала.

УСТРОЙСТВО СЕРВОПРИВОДА SG-90

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

КАК РАБОТАЕТ СЕРВОПРИВОД SG-90

Работает серво вот так: по проводам приходит питание и сигнал на плату управления (фактически драйвер для мотора), берутся показания с потенциометра (он вращается вместе с осью сервопривода), рассчитывается нынешний угол и крутится мотор до тех пор, пока не настанет нужный угол.

КОМПЛЕКТАЦИЯ СЕРВОПРИВОДА SG-90

Обычная комплектация китайского сервопривода:

  1. Сам сервопривод, конечно же;
  2. Три рычага: короткий, длинный и длинный с боковыми отверстиями;
  3. Маленький винтик для крепления насадок на оси серво;
  4. Два больших винтика для крепления серво где-нибудь 😊

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

Красные стрелки показывают на сервоприводы.

УПРАВЛЕНИЕ СЕРВОПРИВОДОМ SG-90 с ARDUINO

Для управления сервоприводами с помощью всеми любимой Arduino (или ESP, не важно) используется специальная библиотека «Servo.h». Она всегда встроена в Arduino IDE, поэтому дополнительно устанавливать её не нужно.

Для управления сервоприводом нужно написать специальный код, я написал здесь пример кода. Сервопривод будет поворачиваться с 0 на 90 градусов, через 2 секунды обратно.

#include <Servo.h> // Подключаем библиотеку для управления сервой

Servo myservo;  // Регистрируем наш сервопривод в скетче

void setup(){ // Одноразовое действие, при запуске
  myservo.attach(9);  // Указываем пин Arduino, к которому подключен сигнальный (оранжевый) провод серво
}

void loop(){ // Цикличное действие
  myservo.write(0);                  // Поворачиваем серво на 0 градусов (исходное положение)
  delay(2000);                       // Ждём 2 секунды = 2 000 миллисекунд
  myservo.write(90);                 // Поворачиваем серво на 90 градусов
  delay(2000);                       // Ждём 2 секунды = 2 000 миллисекунд
}

Функцией «Servo myservo;» мы обращаемся к библиотеке и докладываем, что мы подключили новую серву, назвали её «myservo». Назвать её можно по любому, главное, без пробелов, русских букв, знаков и без цифр в начале названия.

Функцией «myservo.attach(9);» мы докладываем, что серва подключена на 9 пин Arduino. Обращаем внимание, что серво можно подключить ТОЛЬКО на пины с ШИМ!! Они обозначены знаком волны на плате Arduino. Иначе у вас серво не будет работать 🙂

Функцией «myservo.write(0);» мы говорим серво повернуть вал на 0 градусов, то есть в исходное положение.

Функцией «myservo.write(90);» мы говорим серво повернуть вал на 90 градусов.

Функция «delay(2000);» делает задержку в 2000 миллисекунд (2 секунды).

Примеры моих проектов с сервоприводом:

Вот и всё, что нужно знать про сервопривод 😊 Спасибо за внимание!

5/5 - (15 голосов)


Поделись!