Мини-сервопривод MG90S

Узнайте всё о мини-сервоприводе MG90S: технические характеристики, распиновка, схемы подключения, документация и примеры кода для ESP32, Arduino, Raspberry Pi

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

Обзор

MG90S — это надежный микросервопривод, разработанный для робототехники и DIY-проектов. Работая при напряжении от 4.8В до 6В, он обеспечивает крутящий момент до 2.2 кг·см, с диапазоном поворота от 0° до 180°, управляемым с помощью ШИМ-сигналов (PWM). Благодаря весу 13.4 г, прочным металлическим шестерням и компактным размерам (22.8 мм x 12.2 мм x 31 мм), он идеально подходит для приложений, требующих повышенного крутящего момента и надежности.

MG90S — это микросервопривод с металлическим редуктором, широко используемый в робототехнике, радиоуправляемых моделях и DIY-электронике. Он превосходит аналоги с пластиковыми шестернями (такие как SG90) по прочности и крутящему моменту.

Мини-сервопривод MG90S
Быстрая навигация
Основные разделы статьи
Примеры кода
Популярные платформы

О мини-сервоприводе MG90S

MG90S — это микросервопривод с металлическим редуктором, широко востребованный в робототехнике, радиоуправляемых авиамоделях и DIY-проектах. Благодаря высокому крутящему моменту и долговечности, он значительно превосходит бюджетные сервоприводы с нейлоновыми шестернями, такие как SG90.

Ключевые особенности

  • Рабочее напряжение: 4.8В - 6В.
  • Крутящий момент: до 2.2 кг·см при 4.8В.
  • Угловой диапазон: от 0° до 180° (управление по ШИМ).
  • Ширина импульса: 1мс (0°), 1.5мс (90°), 2мс (180°).
  • Вес: ~13.4 г.
  • Размеры: 22.8 мм x 12.2 мм x 31 мм.
  • Металлические шестерни: обеспечивают высокую прочность и длительный срок службы.
Где купить

Приобретите MG90S

Технические характеристики

Характеристики MG90S

Полные технические характеристики мини-сервопривода MG90S.

Интерфейс
ШИМ (PWM)
Крутящий момент
2.2 кг·см (при 4.8В)
Рабочий диапазон
0° — 180°
Напряжение
4.8В — 6.0В
Скачать полный даташит
Конфигурация пинов

Распиновка MG90S

MG90S — это 3-проводной сервопривод с выводами GND (коричневый), +5V (красный) и DATA (оранжевый).

Визуальная диаграмма распиновки
Основное
Распиновка MG90S
Всего выводов
3
Тип
Питание + ШИМ
Быстрые советы
  • Коричневый — Земля (GND).
  • Красный — Питание (+5V).
  • Оранжевый — Сигнал (DATA).
  • Редуктор — Металлический для надежности.
Описание выводов
Цвет Название Тип Описание Примечания
Коричневый GND Земля Подключение к земле ESP32 или минусу внешнего питания. Замыкает электрическую цепь.
Красный +5V Питание Вход питания (4.8В-6В). Для малых нагрузок можно от вывода 5V ESP32. Используйте внешний блок питания при высоких нагрузках.
Оранжевый DATA ШИМ Управляющий сигнал. Ширина: 1мс (0°), 1.5мс (90°), 2мс (180°). Подключайте к GPIO с поддержкой ШИМ (например, GPIO 18).
Руководство по подключению

Подключение MG90S к ESP32

Чтобы управлять сервоприводом MG90S с помощью ESP32, подключите коричневый провод к GND, красный — к 5V, а оранжевый — к GPIO выводу с поддержкой ШИМ.

Схема подключения
Рекомендуемая
Схема подключения MG90S к ESP32
Соединений
3
Статус
Обязательны
Протокол
ШИМ (PWM)
Таблица соединений
Вывод MG90S Подключение Вывод ESP32 Описание
GND (коричневый) обязательно GND Общая земля (GND) для питания и сигнала.
+5V (красный) обязательно 5V или внешнее питание Питание (4.8-6В). Для нескольких серво используйте внешний БП.
обязательно GPIO 18 Сигнал управления ШИМ (50 Гц, импульс 1-2мс).
🔌 Внешнее питание 5В (рекомендуется) ⚡ Общая земля (GND) с ESP32 ⚙️ Конденсатор 100мкФ для фильтрации помех
Помощь и поддержка

Устранение неполадок MG90S

Типичные проблемы и способы их решения для корректной работы сервопривода.

Серво вращается непрерывно
Вместо того чтобы занять заданную позицию

Проблема: MG90S вращается на 360 градусов без остановки.

Причины: использование версии с непрерывным вращением (360°) или неверные параметры ШИМ-сигнала.

Решение: убедитесь, что ваш экземпляр — стандартный позиционный сервопривод (180°). Проверьте код: ширина импульсов должна быть строго в пределах спецификаций (обычно 1-2 мс).

Ограниченный диапазон поворота
Серво не доходит до 180°

Проблема: сервопривод поворачивается меньше чем на 180 градусов.

Решение: откалибруйте параметры ШИМ. Для MG90S полный диапазон часто достигается при импульсах от 0.8 мс до 2.1 мс. Также проверьте механические препятствия.

Дрожание (дерганье) сервопривода
Дребезжание при работе или в покое

Причины: помехи в сигнале, нестабильное питание, отсутствие общей земли.

Решение: используйте внешний источник питания (не только от USB). Добавьте электролитический конденсатор (например, 100-470 мкФ) между шинами питания VCC и GND сервопривода.

Советы по отладке

Serial монитор
Проверка выполнения кода
Используйте Serial монитор для логирования значений углов, отправляемых на сервопривод. Это поможет понять, на каком этапе возникают программные сбои.
Проверка мультиметром
Напряжение и пульсации
Проверьте вольтаж на выводах сервопривода под нагрузкой. Если напряжение проседает ниже 4.8В при движении, серво будет работать нестабильно.

Дополнительные ресурсы

Примеры кода

Примеры программирования MG90S

Готовые к использованию примеры кода для различных платформ.

Arduino IDE

C++ Framework: универсальный пример для ESP32 и Arduino

C++
/*
 * Пример управления сервоприводом MG90S для ESP32/Arduino
 */
#include <ESP32Servo.h> // Библиотека для работы с серво на ESP32

Servo myServo;  // Создаем объект сервопривода
int servoPin = 18; // Пин управления (ШИМ)

void setup() {
  Serial.begin(115200);
  
  // Разрешаем использование всех таймеров
  ESP32PWM::allocateTimer(0);
  ESP32PWM::allocateTimer(1);
  ESP32PWM::allocateTimer(2);
  ESP32PWM::allocateTimer(3);
  
  myServo.setPeriodHertz(50);    // Стандартная частота 50 Гц
  myServo.attach(servoPin, 500, 2400); // Подключаем пин, мин и макс импульс (в мкс)
}

void loop() {
  // Плавный поворот от 0 до 180 градусов
  for (int pos = 0; pos <= 180; pos += 1) {
    myServo.write(pos);    // Устанавливаем позицию
    delay(15);             // Ждем завершения движения
  }
  
  // Плавный возврат от 180 до 0 градусов
  for (int pos = 180; pos >= 0; pos -= 1) {
    myServo.write(pos);
    delay(15);
  }
}

Этот код использует библиотеку ESP32Servo для точного управления ШИМ-сигналом. Вызов myServo.attach(pin, 500, 2400) позволяет откалибровать крайние положения сервопривода MG90S для достижения полного диапазона 180 градусов.

ESP-IDF

Native Framework для профессиональной разработки

C++
Подробный пример кода ESP-IDF для управления сервоприводами через драйвер LEDC вы найдете на странице Общие сервоприводы.

ESPHome

YAML Конфигурация для Home Assistant

YAML
Для интеграции MG90S в ESPHome воспользуйтесь примером на странице Общие сервоприводы, заменив пин на нужный.

MicroPython

Python Framework для микроконтроллеров

Python
Код для MicroPython доступен на странице Общие сервоприводы.

Итоги MG90S

Мини-сервопривод **MG90S** — это мощное и надежное устройство, обеспечивающее отличную производительность в компактном корпусе. Благодаря металлическим шестерням и поддержке множества платформ разработки (Arduino, ESP-IDF, ESPHome, MicroPython), это универсальный выбор для задач, где требуется точность и долговечность.

Рекомендации

Для оптимальной работы обеспечьте качественное питание. При подключении нескольких сервоприводов используйте внешний источник 5В-6В и не забудьте соединить земли (GND) внешнего блока и ESP32.

Безопасность

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

Готовы приступить к сборке?

Теперь у вас есть вся информация для того, чтобы внедрить **MG90S** в ваш следующий проект на ESP32!