Сервопривод Tower Pro 9g SG90

 

Сервопривод

Сервопривод SG90

 

Как подключать?

Сервопривод Tower Pro 9g SG90 используется в основном для управления небольшими легкими механизмами,
угол поворота которых ограничен диапазоном от 0 до 180 градусов.

 

Технические характеристики сервопривода SG90 ( Micro Servo 9g ):

Рабочее напряжение: от 3V до 7.2V (Вольт)
Размеры устройства: 22mm x 11.5mm x 22.5mm
Вес: 9 грамм
Температура использования: от -30 до +60 градусов по Цельсию

 

 

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

Коричневый провод – Земля ( Ground, подключается к пину GND на плате Arduino )
Красный провод         – Питание +5 V ( подключается к пину 5V на плате Arduino )
Желтый провод          – Сигнал управления ( подключается к цифровому пину Arduino )

 

Сервопривод Tower Pro 9g SG90

Сервопривод Tower Pro 9g SG90

 

Программирование сервопривода Tower Pro.

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

#include <Servo.h>

Затем, объявляем наш сервопривод.

Servo myservo;

В разделе setup() назначаем пин управления сервоприводом. Здесь используем цифровой пин номер 9.

void setup()
{
  myservo.attach(9);  
 }

Далее внутри испоняемого блока программы управляем положением сервопривода.

void loop() 
{ 
myservo.write(60);
delay(100);
}

В данном примере мы устанавливаем сервопривод в положение 60 градусов.

Сервопривод SG90 принимает заданное нами положение очень быстро, чтобы замедлить его поворот необходимо использовать цикл поворота с шагом в 1 градус и задержкой между каждым шагом.
 

Сервопривод Tower Pro 9g SG90

Сервопривод Tower Pro 9g SG90

 

Для управления скоростью поворота сервопривода можно задать специальную функцию.

 

#include <Servo.h>

Servo myservo; 

void setup()
{
  myservo.attach(9); 
}

void servoslow( Servo num, int pos, int time, int start)  // robotday.ru *** Функция для управления скоростью сервопривода ***
{ 
  num.write(start);
    
  for ( int i=start; i<pos; i++) 
      {  num.write(i);
         delay(time);
      }
}

void loop() 
{ 
     
servoslow(myservo, 180, 10, 0);

} 

Здесь используем функцию servoslow.

Функция управления скоростью сервопривода использует следующие параметры:
1. Имя сервопривода
2. Конечная позиция сервопривода ( в градусах)
3. Задержка между каждым поворотом в один градус ( чем больше значение, тем медленнее будет поворачиваться сервопривод)
4. Начальная позиция сервопривода.

 

Сложности при работе с сервоприводами.

Недорогие сервоприводы не обеспечивают точных настроек начальной и конечной позиций.
Часто в положении 0 и 180 градусов слышен характерный треск или жужжание.
Это говорит о том, что механическая часть сервопривода уже находиться в предельной позиции, но датчик считает, что
заданная позиция еще не достигнута.
Проблему можно решить подбором скорректированных позиций.
Например, часто вместо позиции 0 градусов нужно использовать позицию поворота сервопривода в 10-15 градусов,
а конечную 165-170 градусов.
Это позволит избежать лишних перегрузок и шума при достижении крайних точек.

 

Следует обращать внимание на напряжение, которое используется при работе сервопривода.
Если значение напряжения превышает допустимые значения из технических характеристик сервопривода,
механические части могут выйти из строя или зубчатые колеса сервопривода провернутся в положение превышающее
максимальные значения и механизм не сможет продолжать движение в обратном направлении.
Иными словами, завышенное напряжение скорее всего не приведет к сгоранию мотора сервопривода, но повредит механические части
зубчатых механизмов.

 

С помощью сервоприводов и специального набора деталей можно создать простейший манипулятор.

 

манипулятор

манипулятор