Сервопривод SG90
1
2
3
Коричневый
Красный
Жёлтый
- Общий вывод (GND)
- Питание (+5V)
- Управление
  • Для подключения сервопривода необходимо всего три линии. Две - для питания и одна - для управления углом поворота.
  • Существуют сервоприводы разной мощности. Для некоторых необходимо организовывать дополнительное питание, поскольку плата Arduino ограничена в максимальной силе тока на своих выводах. В нашем случае мы имеем дело с маломощным сервоприводом SG90, силы тока для поворота которого вполне достаточно.
  • Можно управлять сервоприводом "Вручную", но для простоты в основном используют стандартную библиотеку <Servo.h>. Библиотека универсальна и подходит для любых сервоприводов.
Типовая схема подключения
Методы библиотеки Servo
Стандартная библиотека управления сервоприводами <Servo.h>.
.attach(pin); - подключает объект класса к конкретному пину на плате. Указываем пин, к которому подключен сервопривод
.write(angle); - установка сервопривода в заданной положение. angle - угол поворота от 0 до 180.
.writeMicroseconds(uS); - установка сервопривода в заданной положение. uS - длина импульса в микросекундах
.read(); - читает текущее значение угла сервопривода. Возвращает целое число от 0 до 180.
.attached(); - проверка, был ли объект класса подключен к какому-либо пину. Возвращает истину или ложь.
.detach(); - отключает объект класса от пина.
Больше информации здесь и в примерах Arduino IDE.
Пример кода
#include <Servo.h>

// создаём объект класса "Servo" для управления сервоприводом
Servo myservo;
 
void setup() 
{
  // подключаем сервопривод к пину 3 Arduino
  myservo.attach(3);
} 
 
void loop() 
{
  // устанавливаем сервопривод в серединное положение
  myservo.write(90);
  delay(1000);
  // устанавливаем сервопривод в крайнее левое положение  
  myservo.write(0);
  delay(500);
  // устанавливаем сервопривод в крайнее правое положение
  myservo.write(180);
  delay(500);
}