Практическое занятие 2. Подключение одного серво захвата и движение по циклу

Курс «Основы робототехники». Занятие 14. Сервомоторы, захват

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

Серво SG90

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

· Рекомендуемое напряжение питания от 4,8 до 6 В. По испытаниям, нормально работает от двух аккумуляторов Li-Ion 18650, дающих при полной зарядке 2·4=8 В, но большую нагрузку при этом давать не следует и при перегреве серво немедленно выключать его. На роботе будет использоваться стабилизатор напряжения до +5 В

· Угол поворота вала от 0 до 180°. На крайних значениях работает плохо, рекомендуется использовать в диапазоне от 10 до 170° и уже.

Подключение серво:

· коричневый или черный провод к Gnd

· красный провод к + напряжения питания

· белый, желтый или оранжевый провод к цифровому пину Arduino

Примечание: рекомендуется питать серво от своего источника питания, соединив минус источника с Gnd Arduino. По результатам испытаний, SG90 можно питать от +5 В Arduino, но не более четырех сразу и с небольшой нагрузкой. При этом Arduino должна питаться от USB, а не от внутреннего стабилизатора (то есть не от аккумуляторов)

Библиотека Servo

Базовая библиотека, используемая для управления сервомоторами SG90 и другими. Команды:

#include <Servo.h> – подключить библиотеку Servo, добавляется в начале программы

Servo myservo; – создать объект для контроля определенного серво. myservo – название серво, оно может быть любым. Добавляется в начале программы

myservo.attach(9); – подключить серво с названием myservo к номеру пина в скобках (сигнальный провод серво должен быть физически подключен к этому пину). Добавляется в блоке setup

myservo.write(30); – повернуть серво с названием myservo на угол, заданный в скобках

Практическое занятие 1. Сборка стабилизатора напряжения на +5 В

Напряжения питания от аккумуляторов +8 В для серво SG90 слишком много. Хотя они и работают от такого напряжения, но греются и могут выйти из строя.

Преобразователь из 8 В в 5 В, имеющийся на Arduino, слабый и может питать только сам контроллер и малопотребляющие модули (датчики, модуль Bluetooth). Но для питания моторов его мощности не хватит. Поэтому серво от 5V Arduino можно питать только при питании не от аккумуляторов, а от USB

Для обеспечения возможности питания серво от аккумуляторов робота требуется сделать внешний преобразователь напряжения 8 В ® 5 В. Для этого используем микросхему L7805. Нумерация контактов и схема включения микросхемы:

Таким образом, по схеме видно, что + аккумулятора нужно подключить к первому контакту микросхемы, землю – ко второму контакту, а напряжение +5 В брать с третьего контакта. Также между вторым и первым, а также вторым и третьим контактами микросхемы должны быть конденсаторы, подключенные минусом ко второму контакту. Для простоты схемы используем конденсаторы на входе и выходе одной емкости – 100 мкФ

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

2. Переключите мультиметр на режим измерения напряжения (20V), включите питание и померяйте напряжение между проводами справа (ни в коем случае не замыкайте провода друг с другом)

3. Показываемое напряжение должно быть близко к +5 В (например, 4,96 В). Если это не так, немедленно отключите питание и проверьте схему

Практическое занятие 2. Подключение одного серво захвата и движение по циклу

1. Подключите питание серво к проводам, которыми мерили напряжение. Таблица и схема включения серво:

Назначение Серво Схема
Gnd Коричневый провод Черный или синий провод к земле
+5 В Красный провод Красный провод к выходу (третьей ножке) стабилизатора напряжения L2805
Сигнал Желтый, оранжевый или белый провод К любому цифровому пину Arduino

2. Откройте пример работы с серво: Файл / Примеры / Servo / Sweep. Так как используемый захват не должен двигаться в пределах 0…180° (такое движение может привести к его поломке), изменим диапазоны углов движения серво:

for(pos = 0; pos < 180; pos += 1) for(pos = 50; pos < 80; pos += 1)
for(pos = 180; pos>=1; pos-=1) for(pos = 80; pos>=51; pos-=1)

3. Загрузите программу в контроллер, включите тумблер питания и убедитесь, что серво захвата двигается. Если серво при повороте начинает упираться в элементы конструкции захвата – немедленно отключите питание, так как это может привести к поломке серво

4. Отключите серво первого захвата, подключите вместо него серво второго захвата и проверьте его


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: