Сервоприводы ардуино. Сервоприводы Arduino: полное руководство по работе и применению

Что такое сервопривод Arduino. Как работают сервоприводы с Arduino. Какие бывают виды сервоприводов для Arduino. Как подключить и запрограммировать сервопривод на Arduino. Примеры проектов с сервоприводами на Arduino.

Содержание

Что такое сервопривод и как он работает с Arduino

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

Основные компоненты сервопривода:

  • Электродвигатель постоянного тока
  • Редуктор для увеличения крутящего момента
  • Датчик положения (обычно потенциометр)
  • Схема управления

Принцип работы сервопривода с Arduino следующий:

  1. Arduino отправляет управляющий ШИМ-сигнал на сервопривод
  2. Длительность импульса определяет требуемый угол поворота вала
  3. Схема управления сравнивает текущее положение вала с заданным
  4. Двигатель вращается в нужную сторону до достижения требуемого положения
  5. Система постоянно поддерживает заданное положение вала

Таким образом, сервоприводы очень удобны для точного позиционирования различных механизмов в проектах на базе Arduino.


Виды сервоприводов для Arduino

Существует несколько основных типов сервоприводов, которые можно использовать с Arduino:

1. По типу управления:

  • Аналоговые сервоприводы — управляются импульсами 50 Гц, более простые и дешевые
  • Цифровые сервоприводы — используют высокочастотные сигналы управления, более точные и быстрые

2. По размеру:

  • Микро-сервоприводы — самые маленькие, для легких нагрузок
  • Стандартные сервоприводы — средний размер, универсальны
  • Крупногабаритные сервоприводы — мощные, для больших нагрузок

3. По углу поворота:

  • Сервоприводы с ограниченным углом поворота — обычно 0-180°
  • Сервоприводы непрерывного вращения — могут вращаться на 360°

Выбор конкретного типа сервопривода зависит от требований вашего проекта на Arduino.

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

Подключить сервопривод к Arduino довольно просто. Типичный сервопривод имеет три провода:

  • Красный — питание (+5В)
  • Черный/Коричневый — земля (GND)
  • Желтый/Оранжевый/Белый — сигнальный провод

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


  1. Подключите красный провод сервопривода к выводу 5V на Arduino
  2. Подключите черный/коричневый провод к GND на Arduino
  3. Подключите сигнальный провод к любому цифровому выводу Arduino (например, 9)

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

Программирование сервопривода на Arduino

Для управления сервоприводом на Arduino удобно использовать стандартную библиотеку Servo. Вот базовый пример кода:

«`cpp #include Servo myservo; // создаем объект сервопривода int pos = 0; // переменная для хранения позиции сервопривода void setup() { myservo.attach(9); // прикрепляем сервопривод к пину 9 } void loop() { // поворачиваем от 0 до 180 градусов for (pos = 0; pos <= 180; pos += 1) { myservo.write(pos); // устанавливаем позицию сервопривода delay(15); // ждем 15 мс, чтобы сервопривод достиг позиции } // поворачиваем от 180 до 0 градусов for (pos = 180; pos >= 0; pos -= 1) { myservo.write(pos); // устанавливаем позицию сервопривода delay(15); // ждем 15 мс, чтобы сервопривод достиг позиции } } «`

Этот код заставит сервопривод плавно поворачиваться от 0 до 180 градусов и обратно. Вы можете изменять значения в функции write() для установки нужного угла поворота.


Примеры проектов с сервоприводами на Arduino

Сервоприводы широко используются в различных проектах на базе Arduino. Вот несколько интересных примеров:

1. Робот-манипулятор

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

2. Система слежения за солнцем для солнечных панелей

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

3. Автоматическая кормушка для животных

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

4. Интерактивная инсталляция

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

5. Система управления камерой

Разработайте платформу с сервоприводами для панорамирования и наклона камеры, которой можно управлять удаленно.

Эти проекты демонстрируют разнообразие применений сервоприводов в сочетании с Arduino, от простых механизмов до сложных роботизированных систем.


Советы по эффективному использованию сервоприводов с Arduino

Чтобы получить максимальную отдачу от сервоприводов в ваших Arduino-проектах, следуйте этим рекомендациям:

  • Правильно выбирайте питание: Убедитесь, что ваш источник питания может обеспечить достаточный ток для всех сервоприводов в вашем проекте.
  • Используйте плавное управление: Избегайте резких изменений положения, чтобы снизить нагрузку на сервопривод и увеличить его срок службы.
  • Учитывайте ограничения:
    Не пытайтесь повернуть сервопривод за пределы его рабочего диапазона, это может привести к повреждению.
  • Калибруйте сервоприводы: Каждый сервопривод может иметь небольшие отличия, поэтому калибровка поможет добиться точного позиционирования.
  • Используйте библиотеки: Стандартная библиотека Servo или более продвинутые библиотеки могут значительно упростить работу с сервоприводами.

Следуя этим советам, вы сможете создавать более надежные и эффективные проекты с использованием сервоприводов и Arduino.

Заключение

Сервоприводы — это мощный и универсальный инструмент для создания подвижных механизмов в проектах на базе Arduino. Они просты в подключении, имеют широкий выбор моделей для различных задач и легко программируются. Понимание принципов работы сервоприводов и умение эффективно их использовать открывают широкие возможности для реализации разнообразных идей — от простых движущихся элементов до сложных роботизированных систем.


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


Сервоприводы: руководство по использованию для Arduino



Что такое сервопривод?

Сервопривод — это электродвигатель с редуктором и блоком управления в одном корпусе.

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

Элементы сервопривода

Рассмотрим основные элементы сервопривода.

Электромотор

За преобразование электрической энергии в механическую отвечает электромотор. В зависимости от модели, сервопривод может быть наделён одним из трёх видов моторов:

  • Коллекторный мотор с сердечником (Brush motor)
  • Коллекторный мотор без сердечника (Coreless motor)
  • Бесколлекторный мотор (Brushless motor)

Редуктор

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

Шестерни редуктора могут быть пластиковые или металлические.

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

Выходной вал

Выходной вал сервопривода — это последняя шестерёнка редуктора, которая выведена за пределы корпуса. К выходному валу крепится требуемая нагрузка: например качалка, втулка, тянущие или толкающие механизмы. Диаметр выходного вала и количество на нём зубьев отличается между разными моделями сервоприводов.

Схема управления

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

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

Схема управления может быть аналоговой или цифровой.

В аналоговом сервоприводе входные данные c внешнего контроллера анализируются логической микросхемой. Аналоговый чип принимает внешние импульсы с частотой 50 Гц, а значит время реакции мотора составляет около 20 мс.

В цифровом сервоприводе входные данные анализируются собственным микроконтроллером. Контроллер принимает внешние импульсы с частотой 50 Гц, но позволяет увеличить внутреннюю частоту сигнала с 50 Гц до 500 Гц. В итоге время реакции мотора может сократится до 2 мс.

Характеристики сервопривода

Рассмотрим основные характеристики сервопривода.

Крутящий момент

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

Крутящий момент высчитывается путём произведения максимального веса груза на длину рычага, который способен удержать сервопривод. При увеличении длины рычага, пропорционально уменьшается максимальный вес груза и наоборот. Например, если крутящий момент равен 10 кг·см:

  • Сервопривод удержит груз 10 кг на рычаге длиной 1 см.
  • Сервопривод удержит груз 5 кг на рычаге длиной 2 см.
  • Сервопривод удержит груз 1 кг на рычаге длиной 10 см.

Скорость поворота

Скорость поворота — это время, за которое выходной вал сервопривода успевает повернуться на 60°. Из неё можно вычислить скорость в оборотах в минуту для сервопривода постоянного вращения.

Размеры

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

Питание сервопривода

Напряжение к серве можно подключать двумя способами: без внешнего источника питания и с внешним источником питания.

Без внешнего источника питания

Если сервопривод питается напряжением 5 вольт и потребляет ток менее 500 мА, можно запитать сервомотор непосредственно от контроллера.

Цвет проводаКонтактФункцияПодключение
Оранжевый / Жёлтый / БелыйSПин управления сервоприводомПодключите к пину ввода-вывода микроконтроллера.
КрасныйVПитаниеПодключите к питанию микроконтроллера.
Коричневый / ЧёрныйGЗемляПодключите к земле микроконтроллера.

С внешним источником питания

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

Цвет проводаКонтактФункцияПодключение
Оранжевый / Жёлтый / БелыйSПин управления сервоприводомПодключите к пину ввода-вывода микроконтроллера.
КрасныйVПитаниеПодключите к внешнему источнику питания с подходящим напряжением.
Коричневый / ЧёрныйGЗемляПодключите к земле внешнего источника питания и земле микроконтроллера.

Сервоприводы с удержанием угла

Сервоприводы с удержанием угла — это моторы, которые преобразуют управляющие сигналы в установку и удержание заданного угла.

Интерфейс управления

Для управления мотором с удержанием угла необходимо подавать сигнал PDM (Pulse Duration Modulation) — импульсы постоянной частоты и переменной ширины. При поступлении с внешнего контроллера управляющего импульса, начинка сервопривода генерирует свой сигнал, длительность которого определяется датчиком обратной связи. Далее схема сравнивает длительность двух импульсов:

  • Если длительность разная → электромотор включается. Направление вала зависит от знака разности импульсов.
  • Если длины импульсов равны → электромотор останавливается.

В сигнале PDM частота импульсов постоянна и равна 50 Гц, т.е. период подачи импульсов равен 20 мс. А вот ширина импульса изменяется, и именно от неё зависит выходной угол удержания мотора. Принято считать, что диапазону выходного угла 0–180° соответствует ширина импульса 500–2500 мкс.

Период импульсовШирина импульсаПоложение сервопривода
20 мс544 мскВыходной вал установлен в максимальное положение по часовой стрелке CW — 0°.
20 мс1540 мксВыходной вал установлен в условную середину относительно крайних максимальных точек CW и CWW — 90°.
20 мс2400 мксВыходной вал установлен в максимальное положение против часовой стрелке CCW — 180°.

Примеры работы

Сервоприводы постоянного вращения

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

Интерфейс управления

Для управления мотором постоянного вращения необходимо подавать особый сигнал PDM (Pulse Duration Modulation) — импульсы постоянной частоты и переменной ширины. При поступлении с внешнего контроллера управляющего импульса начинка сервопривода генерирует свой сигнал мотору.

В сигнале PDM частота импульсов постоянна и равна 50 Гц, т. е. период подачи импульсов равен 20 мс. А вот ширина импульса изменяется, и именно от неё зависит направление и скорость вращения мотора. Принято считать, что рабочая ширина импульса лежит в пределах 544–2400 мкс.

Период импульсовШирина импульсаПоложение сервопривода
20 мс544 мскВыходной вал вращается по часовой стрелке (CW) с максимальной скоростью.
20 мс1540 мксВыходной вал не вращается вовсе, т.е. стоит на месте.
20 мс2400 мксВыходной вал вращается против часовой стрелке (CCW) с максимальной скоростью.

Примеры работы

Список моделей в магазине

  • Микросервопривод TianKongRC TS90A
  • Микросервопривод TianKongRC TS90D
  • Микросервопривод TianKongRC MG90S
  • Микросервопривод TianKongRC MG90D
  • Микропривод постоянного вращения Tower Pro SG90
  • Микросервопривод Tower Pro SG92R
  • Сервопривод Tower Pro MG995
  • Сервопривод Tower Pro MG996R
  • Привод постоянного вращения DS04-NFC
  • Сервопривод TianKongRC TD-8120MG

Ресурсы

  • Руководство по использованию для Arduino.
  • Руководство по использованию для Raspberry Pi.

Библиотеки

  • Библиотека для Arduino
  • Библиотека для Raspberry Pi

Сервоприводы для Ардуино — «Robot-Kit.

ru»

Серво Analog Super Micro Servo

Артикул: SM-S1131S

Сервомашинка класса суб-микро

Тип серво:аналоговаяКласс серво:суб-микроРабочее напряжение:4.8 — 6 ВольтУсилие на валу:0,43 кг/см (4,8 В), 0,6 кг/см (6 В)Скорость:0,10 сек/60° (4,8 В), 0,10 сек/60° (6 В)

В наличии

Серво SG90 9 Gram TowerPro Analog Micro Servo

Артикул: TowerPro-SG90

Сервомашинка класса суб-микро

Тип серво:аналоговаяКласс серво:микроРабочее напряжение:4.8 — 6 ВольтУсилие на валу:1,8 кг/см (4,8 В)Скорость:0,12 сек/60° (4,8 В)

В наличии

Серво MG90S TowerPro Digital Metal Gear Servo

Артикул: TowerPro-MG90S

Сервомашинка класса микро

Тип серво:цифроваяКласс серво:микроРабочее напряжение:4.8 — 6.6 ВольтУсилие на валу:1,8 кг/см (4,8 В), 2,2 кг/см (6 В)Скорость:0,10 сек/60° (4,8 В), 0,08 сек/60° (6 В)

В наличии

Серво LD-2015 7.4V Digital Robot Servo

Артикул: Servo-LD-2015

Сервомашинка для роботов

Тип серво:цифроваяКласс серво:для роботовРабочее напряжение:6. 0 — 7.4 ВУсилие на валу:15 кг/см (6 В), 17 кг/см (7.4 В)Скорость:0.16 сек/60° (7.4 В)

В наличии

2 410 ₽

Серво MG995 TowerPro Digital Servo

Артикул: TowerPro-MG995

Стандартная сервомашинка

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:4.8 — 6.6 ВУсилие на валу:9.4 кг/см (4.8 В), 11 кг/см (6 В)Скорость:0.20 сек/60° (4.8 В), 0.16 сек/60° (6 В)

В наличии

1 000 ₽

Серво MG995 TowerPro Robot Servo 360°

Артикул: TowerPro-MG995-360

Сервомашинка для роботов

Тип серво:цифроваяКласс серво:для роботовРабочее напряжение:4.8 — 6.6 ВУсилие на валу:9.4 кг/см (4.8 В), 11 кг/см (6 В)Скорость:0.20 сек/60° (4.8 В), 0.16 сек/60° (6 В)

В наличии

1 000 ₽

Серво SG5010 TowerPro Digital Servo

Артикул: TowerPro-SG5010

Стандартная сервомашинка

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:4.8 — 6.0 ВольтУсилие на валу:5.5 кг/см (4.8 В), 6.5 кг/см (6 В)Скорость:0.19 сек/60° (4.8 В), 0. 15 сек/60° (6 В)

В наличии

Серво EMAX ES08MAII Analog Servo

Артикул: EMAX-ES08MAII

Сервомашинка класса микро

Тип серво:аналоговаяКласс серво:микроРабочее напряжение:4.8 — 6 ВольтУсилие на валу:1,6 кг/см (4,8 В), 2 кг/см (6 В)Скорость:0,12 сек / 60º (4,8 В), 0,1 сек / 60º (6 В)

В наличии

1 400 ₽

Серво Feetech FT6335M Robot Servo 360°

Артикул: FT6335M

Сервомашинка для роботов

Тип серво:цифроваяКласс серво:для роботовРабочее напряжение:4.0 — 8.4 ВУсилие на валу:9.5 кг/см (6 В), 11.8 кг/см (7.4 В)Скорость:0.238 сек/60° (6 В), 0.192 сек/60° (7.4 В)

В наличии

2 800 ₽

Серво Analog Sub-Micro Servo

Артикул: NS-05

Сервомашинка класса суб-микро

Тип серво:аналоговаяКласс серво:суб-микроРабочее напряжение:4.8 — 6 ВольтУсилие на валу:1,1 кг/см (4,8 В)Скорость:0,12 сек/60° (4,8 В)

Под заказ

Серво Analog Super Micro Servo

Артикул: SM-S1121S

Серво класса суб-микро

Тип серво:аналоговаяКласс серво:суб-микроРабочее напряжение:4. 8 — 6 ВольтУсилие на валу:0,4 кг/см (4,8 В), 0,5 кг/см (6 В)Скорость:0,12 сек/60° (4,8 В), 0,10 сек/60° (6 В)

Под заказ

Серво SG92R TowerPro Analog Micro Servo

Артикул: TowerPro-SG92R

Сервомашинка класса суб-микро

Тип серво:аналоговаяКласс серво:микроРабочее напряжение:4.8 — 6 ВольтУсилие на валу:2,5 кг/см (4,8 В)Скорость:0,1 сек/60° (4,8 В)

Под заказ

Серво EMAX ES9258 Digital Servo

Артикул: EMAX-ES9258

Сервомашинка класса мини

Тип серво:цифроваяКласс серво:миниРабочее напряжение:4.8 — 6 ВольтУсилие на валу:2.5 кг/см (4.8 В)Скорость:0.08 сек/60° (4.8 В)

Под заказ

2 000 ₽

Серво RDS3235

Артикул: RDS3235

Мощная цифровая сервомашинка с усилием 35 кг

Тип серво:цифроваяКласс серво:для роботовРабочее напряжение:5.0 — 7.4 ВУсилие на валу:29 кг/см (5.0 В), 32 кг/см (6.0 В), 35 кг/см (7.4 В)Скорость:0.13 сек/60° (5.0 В), 0.12 сек/60° (6.0 В), 0.11 сек/60° (7.4 В)

Под заказ

4 200 ₽

Серво DS3218MG Digital Servo

Артикул: DS3218MG

Мощная влагозащищенная стандартная сервомашинка

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:4. 8 ~ 6.8 ВУсилие на валу:16.5 кг/см @ 5В, 21.5 кг/см @ 6.8ВСкорость:0.16 сек/60° @ 5В, 0.14 сек/60° @ 6.8В

Под заказ

2 000 ₽

Серво 40 кг/см S8218 Digital Servo

Артикул: S8218

Сервомашинка для автомоделей 1/10, 1/8, 1/5

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:6.0 — 7.4 ВУсилие на валу:36 кг/см @ 6.0В, 38 кг/см @ 7.4ВСкорость:0.20 сек/60° @ 6.0В, 0.18 сек/60° @ 7.4В

Под заказ

3 600 ₽

Серво 25 кг/см Waterproof Brushless Servo

Артикул: M25BHW

Мощная влагозащищенная сервомашинка с бесколлекторным мотором

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:6.0 — 8.4 ВУсилие на валу:18 кг/см @ 6.0В, 25 кг/см @ 8.4ВСкорость:0.06 сек/60° @ 6.0В, 0.04 сек/60° @ 8.4В

Под заказ

6 000 ₽

Серво 35 кг/см Waterproof Brushless Servo

Артикул: M35BHW

Мощная влагозащищенная сервомашинка с бесколлекторным мотором

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:6.0 — 8. 4 ВУсилие на валу:30 кг/см @ 6.0В, 35 кг/см @ 8.4ВСкорость:0.09 сек/60° @ 6.0В, 0.07 сек/60° @ 8.4В

Под заказ

6 000 ₽

Серво 45 кг/см Waterproof Brushless Servo

Артикул: M45BHW

Мощная влагозащищенная сервомашинка с бесколлекторным мотором

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:6.0 — 8.4 ВУсилие на валу:35 кг/см @ 6.0В, 45 кг/см @ 8.4ВСкорость:0.12 сек/60° @ 6.0В, 0.11 сек/60° @ 8.4В

Под заказ

6 000 ₽

Серво 50 кг/см Waterproof Brushless Servo

Артикул: M50BHW

Мощная влагозащищенная сервомашинка с бесколлекторным мотором

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:10.0 — 14.0 ВУсилие на валу:37 кг/см @ 10.0В, 50 кг/см @ 14.0ВСкорость:0.12 сек/60° @ 10.0В, 0.09 сек/60° @ 14.0В

Под заказ

7 500 ₽

Серво DS3218 PRO Digital Servo

Артикул: DS3218PRO

Мощная влагозащищенная стандартная сервомашинка

Тип серво:цифроваяКласс серво:стандартнаяРабочее напряжение:4. 8 ~ 6.8 ВУсилие на валу:21 кг/см @ 5В, 23.5 кг/см @ 6.8ВСкорость:0.12 сек/60° @ 5В, 0.09 сек/60° @ 6.8В

Под заказ

2 200 ₽

Arduino Servo Motor — Electronics Hub

Как упоминалось в нашем проекте управления двигателем постоянного тока на основе Arduino, двигатель постоянного тока является одним из наиболее часто используемых электродвигателей в электронике, робототехнике, игрушках и т. д. Обычно он состоит всего из двух проводов для электрического соединения. . Когда эти провода правильно подключены и к ним подается питание (например, от батареи), двигатель начинает вращаться. Метод, называемый широтно-импульсной модуляцией (ШИМ), позволяет нам контролировать скорость вращения двигателя.

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

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

Выберите следующий набор проектов Arduino, которые вы хотите изучить, в Electronicshub : Проекты Arduino »

В этом проекте мы собираемся контролировать положение серводвигателя с помощью платы Arduino UNO.

Схема

Принципиальная схема

Компоненты

  • Плата Arduino UNO
  • Серводвигатель Tower Pro SG90
  • Потенциометр 10 кОм
  • Источник питания 5 В
  • Макет
  • Соединительные провода

Описание компонентов

Arduino UNO

Основным процессорным модулем проекта является плата Arduino UNO. В этом проекте используются его функции, такие как аналого-цифровой преобразователь (АЦП) и широтно-импульсная модуляция (ШИМ).

Серводвигатель

Как упоминалось во введении, серводвигатель — это тип двигателя постоянного тока, который используется для точного управления. Серводвигатели доступны как серводвигатели переменного тока, так и серводвигатели постоянного тока, причем каждый тип имеет свои области применения.

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

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

Здесь управляющий сигнал будет определять положение вала серводвигателя. Сигнал управления обычно представляет собой сигнал ШИМ, но этот сигнал ШИМ не используется для управления скоростью двигателя, как в случае двигателя постоянного тока. Но скорее он используется для определения положения сервометра.

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

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

В этом проекте используется серводвигатель Tower Pro SG9.0. Это небольшой, но мощный серводвигатель, выдающий крутящий момент 1,8 кгс.см.

Схема

Основными компонентами этого проекта являются плата Arduino UNO и серводвигатель. Схема схемы довольно проста. Как упоминалось ранее, серводвигатель имеет три провода: два для электрического подключения и один для управляющего сигнала.

Итак, подключите красный провод к источнику питания +5 В, а коричневый провод к земле. Поскольку управляющий сигнал представляет собой ШИМ (в случае серводвигателей это технически импульсная позиционная модуляция или PPM), провод управления или оранжевый провод должен быть подключен к любому из выходных контактов ШИМ на плате Arduino UNO. В этом проекте мы подключаем провод управления сервометра к контакту 11 Arduino.

Чтобы вручную управлять положением серводвигателя, нам нужно использовать потенциометр. Клемма стеклоочистителя POT 10 кОм подключена к аналоговому входному контакту A0 Arduino UNO. Другие клеммы потенциометра подключены к источнику питания +5В и земле соответственно.

Работа

Целью этого проекта является демонстрация работы сервопривода с помощью платы Arduino UNO. Работа проекта объясняется здесь.

Здесь мы реализовали два разных режима работы серводвигателя. В первом режиме плата Arduino (или микроконтроллер) будет непрерывно поворачивать серводвигатель на +180 градусов и -180 градусов, т.е. на 180 градусов по часовой стрелке и на 180 градусов против часовой стрелки.

Во втором режиме положение серводвигателя регулируется вручную с помощью потенциометра. Даже в этом режиме серводвигатель может вращаться на +180 и -180, но положение можно точно контролировать с помощью потенциометра.

В первом случае нам нужно использовать следующую схему.

Программа загружается в Arduino, и когда система включается, сигнал управления ШИМ подается на провод управления серводвигателя. В результате серводвигатель поворачивается на 180 градусов по часовой стрелке, по одному градусу за раз. Как только серводвигатель достигает 180 градусов, он начинает вращаться против часовой стрелки, чтобы вернуться в исходное положение. Этот процесс продолжается до тех пор, пока система не будет выключена.

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

Потенциометр подключается к аналоговому входу Arduino. Положение потенциометра будет определять рабочий цикл сигнала ШИМ, и это значение, которое будет находиться в диапазоне от 0 до 1023 (поскольку Arduino UNO имеет 10-битный АЦП), отображается на угловое положение от 0 до 180. градусов. В результате каждый градус вращения серводвигателя можно точно контролировать, регулируя положение потенциометра.

Применение

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

Код #1

Код #2

rosserial_arduino/tutorials/servo%20controller — ROS Wiki

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

Пакет ROS или стек

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

Если вы создаете дополнительную документацию для пакета или стека, не стесняйтесь структурировать ее по своему усмотрению, но, пожалуйста, держите ее в пределах пространства имен вашего пакета (например, «ros. org/wiki/my_package/more_details») Создайте новую пустую страницу

Учебные пособия

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

  • TutorialIndexTemplate

После сохранения этой страницы на ней будет кнопка «Создать руководство», которую вы можете использовать для создания новых страниц руководств. который будет автоматически проиндексирован и его будет легче найти пользователям. Также на странице WriteTutorials описано, как написать учебник.

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

Если вы запускаете страницу устранения неполадок для стека или пакета, у которого в данный момент его нет:

  • Шаблон устранения неполадок

Если ни один из них не подходит для вашей ситуации, вы можете создать пустую страницу Создать новая пустая страница

Или выберите шаблон страницы для создания уже отформатированной страницы:

Перед созданием страницы проверьте, не существует ли уже подобная страница.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *