МБОУ СОШ № 2 с. Стерлибашево |
Конструирование роботов-манипуляторов |
Робототехника |
Оглавление
Раздел 1 Сборка модели металлического манипулятора с плоско-параллельной кинематикой 3
Урок 1 Крепление рычага на Х-образный фланец 3
Урок 2 Сборка Сервопривода 6
Урок 3 Сборка Стола и ноги 9
Урок 4 Сборка привода ноги 10
Урок 5 Сборка опоры 11
Урок 6 Сборка опоры 13
Урок 6 Сборка головки 14
Урок 7 Сборка схвата 15
Урок 8 Сборка клешни 17
Урок 9 Сборка платформы. Установка энкодеров и приводов. 19
Урок 10 Сборка платформы. Установка аккумулятора и платы 20
Урок 11 Подключение манипулятора к микроконтроллеру 22
Урок 12 Управление роботом 23
Раздел 2 Сборка модели с угловой кинематикой 25
Источники: 26
Приложения 27
Проект Робот-погрузчик 27
Проект Дистанционный выключатель 28
Раздел 1 Сборка модели металлического манипулятора с
плоско-параллельной кинематикой Урок 1 Крепление рычага на Х-образный фланец
Теория:
Роботом-манипулятором называют тип промышленных роботов. Обладающих функциями движения, аналогичными функциям человеческой руки. Манипулятор состоит из отдельных частей, которые приводятся в движение двигателями, последние управляются программно микроконтроллером.
Цель: Научиться работать с инструментами для сборки конструкторов и расширение научно-технических знаний
Задача урока: Выполнить сборку фрагмента будущей конструкции.
Оборудование: отвертка крестовая (ph 2-3 мм), сверло (2 мм), аккумуляторная дрель (шуруповёрт), винт Мх2(4 шт), гайка Мх2(4 шт),
Х-образный фланец(1 шт), Рычаг(1 шт)
Фланец — плоская деталь квадратной, круглой или иной формы с отверстиями для болтов или шпилек | |
Рыча́г — простой механизм, представляющий собой твёрдое тело, вращающееся вокруг точки опоры. | |
Га́йка — крепёжное изделие с резьбовым отверстием, образующее разборное соединение с помощью винта, болта или шпильки. | |
Винт — крепёжное изделие с резьбой для соединения деталей | |
Сверло́ — режущий инструмент, предназначенный для сверления отверстий в различных материалах | |
Дрель — ручной, пневматический или электрический инструмент, предназначенный для придачи вращательного движения сверлу или другому режущему инструменту | |
Посмотреть видео: https://youtu.be/EFyCE_VNWUk - шуруповёрт
Сборка фрагмента конструкции:
Схема:
Техник безопасности
Аккуратно обращайтесь со сверлом, не делайте резких движений
Чтобы не испортить элемент конструкции при расширении отверстия, сначала потренируйтесь на других материалах
Порядок работы:
Насадите сверло на дрель
Расширьте 4 отверстия на фланце
(второе отверстие от центра)
Закрепите с помощью винтов и гаек рычаг на фланец
Отверткой окончательно закрепите винты
Совет:
Чтобы не терять мелкие детали и не засорять стружками рабочее место, выполняйте работу внутри коробки с невысокими бортами или кювета.
Если у вас плохое зрение, используйте увеличительное стекло.
Чтобы гайки не откручивались, капните на них лак для ногтей.
Урок 2 Сборка Сервопривода
Теория:
С
ервопривод — это мотор, положением вала которого мы можем управлять. От обычного мотора он отличается тем, что ему можно точно в градусах задать положение, в которое встанет вал. Сервоприводы используются для моделирования различных механических движений роботов.
Энкодер – датчик обратной связи, преобразующий угол поворота в управляющий сигнал, контролирующий вращение выходного вала (на последнем закреплен инструмент или какой-то другой орган выполнения действия).
Кабель имеет три шины
Желтый – шина сигнала энкодера
Красный – шина питания +5 (VL)
Коричневый – шина земля (GND)
Поворот сервопривода данного типа возможен только максимум на 170 -174 градуса
Грузоподъемность 20, 3 кг
Цель: Научиться работать с сервоприводом, расширение знаний о сервоприводах, научиться пользоваться шестигранным шлицем.
Задача урока: Выполнить сборку сервопривода на стол и проверить работу с помощью микроконтроллера
Оборудование: Сервопривод PDI-6221MG, блок питания, микроконтроллер, ноутбук,
винт М3х6(4 шт.), гайка М3(4 шт.), Стол, шестигранный шлиц(2,5)
Техник безопасности
При работе с электрическим током будьте осторожны. К розеткам подается опасное напряжение 220 В. Не касайтесь влажными руками блок питание. Ток идущий от блока питания не опасен для жизни.
Ход урока
Зафиксируйте фланец на вал двигателя и поверните вал по часовой стрелке до упора
Закрепите рычаг на сервопривод при помощи болта (в комплекте с сервоприводом). Углы поворота рычага должны быть так, как показано на схеме, иначе во время работы рычаг заклинит.
Закрепите Сервопривод на стол с помощью 4 винтов и гаек
Подключите с помощью учителя привод к контроллеру
П
риведите в движение сервопривод, используя программу Arduino IDE
Винт
Гайка
Стол
Код:
#include
Servo servo;
void setup()
{
servo.attach(9);
}
void loop()
{
servo.write(0); //ставим вал под 10
delay(2000); //ждем 2 секунды
servo.write(150); //ставим вал под 150
delay(2000); //ждем 2 секунды
}
Еще пример:
Файл – примеры – Servo – Sweep
Источники:
Сервопривод: что это такое, виды, принцип работы сервомотора - как работает и схема устройства серводвигателя с фото (stanokcnc.ru)
Лабораторные работы. № 12 Сервопривод. Подключение Сервопривода к плате Arduino Mega https://docs.google.com/document/d/1FMvu3D7dh62FPaExymns60Unx_TJwQ_B
Характеристики PDI-6221MG:
Цифровая сервомашинка, сервопривод JX Servo PDI-6221MG-180 купить по низкой цене в Суперайс (supereyes.ru)
Что такое сервопривод (сервомотор) и как им управлять - Суперайс (supereyes.ru)
Урок 3 Сборка Стола и ноги
Оборудование: стол, нога, шестигранный шлиц(2,5), отвертка (ph 2мм),
сверло (2 и 3 мм), аккумуляторная дрель (шуруповёрт), винт Мх2(4 шт), гайка Мх2(4 шт), винт М3х6(3 шт.), гайка М3(3 шт.), фланец Х-образный(2 шт.).
Ход урока
Закрепите фланец на стол. Расширьте 4 отверстия фланца сверлом 3мм, второе отверстие от центра. Закрепите винтом и гайкам М3
2. Сборка ноги. Расширьте 4 отверстия фланца сверлом 2 мм, второе отверстие от центра. Закрепите винтом и гайкам М2
3. Закрепите привод к ноге
Обратите внимание на углы поворота рычага, они должны быть как на рисунке. Если ориентация фланца и вала будут неправильны, то рычаг может заклинить
Урок 4 Сборка привода ноги
Урок 5 Сборка опоры
Урок 6 Сборка опоры
Урок 6 Сборка головки
Урок 7 Сборка схвата
Урок 8 Сборка клешни
Урок 9 Сборка платформы. Установка энкодеров и приводов.
Урок 10 Сборка платформы. Установка аккумулятора и платы
Урок 11 Подключение манипулятора к микроконтроллеру
Загрузите скетч в Ардуино:
#include
Servo myservo;
int pos = 0;
int t =50; //задержка
int d =30; //угол поворота
void setup() {
myservo.attach(8); // номер пина
}
void loop() {
for (pos = 0; pos
myservo.write(pos);
delay(t);
}
for (pos = d; pos = 0; pos -= 1) {
myservo.write(pos);
delay(t);
}
}
Подключите по очереди сервоприводы на пин 8 и проверьте их работу. Изменяя переменные t и d, подберите подходящий угол вращения и плавность движения для сервопривода.
Подключите сервоприводы к пинам:
Сервопривод | пин |
Центральный | 7 |
Правый | 8 |
Левый | 9 |
Головка | 10 |
Захват | 11 |
Изменяя, номера пинов в программе, проверьте работу сервоприводов
Урок 12 Управление роботом
Проверим работу всех сервоприводов по очереди в одной программе
Загрузите скетч:
#include
Servo servo1; //центральный
Servo servo2; //правый
Servo servo3; //левый
Servo servo4; //головка
Servo servo5; //захват
const uint8_t pinS1 = 7;
const uint8_t pinS2 = 8;
const uint8_t pinS3 = 9;
const uint8_t pinS4 = 10;
const uint8_t pinS5 = 11;
int pos = 0;
int t =50; //задержка
int d =170; //максимальный угол поворота центральный
int d1 =70; // максимальный угол поворота другие
void setup(){
servo1.attach(pinS1);
servo2.attach(pinS2);
servo3.attach(pinS3);
servo4.attach(pinS4);
servo5.attach(pinS5);
}
void loop(){
//центальный
for (pos = 10; pos
servo1.write(pos);
delay(t);
}
for (pos = d; pos = 10; pos -= 1) {
servo1.write(pos);
delay(t);
}
delay(2000);
//правый
for (pos = 10; pos
servo2.write(pos);
delay(t);
}
for (pos = d1; pos = 10; pos -= 1) {
servo2.write(pos);
delay(t);
}
delay(2000);
//левый
for (pos = 10; pos
servo3.write(pos);
delay(t);
}
for (pos = d1; pos = 10; pos -= 1) {
servo3.write(pos);
delay(t);
}
delay(2000);
//головка
for (pos = 10; pos
servo4.write(pos);
delay(t);
}
for (pos = d1; pos = 10; pos -= 1) {
servo4.write(pos);
delay(t);
}
delay(2000);
//захват
for (pos = 10; pos
servo5.write(pos);
delay(t);
}
for (pos = d1; pos = 10; pos -= 1) {
servo5.write(pos);
delay(t);
}
}
Раздел 2 Сборка модели с угловой кинематикой
Источники:
Инструкция по сборке манипулятора, файл pdf, https://clck.ru/YXdjT
Лабораторные работы https://docs.google.com/document/d/1FMvu3D7dh62FPaExymns60Unx_TJwQ_B/
Учебный робот SD1-4-320 Учебно-методическое пособие для учителя - https://digis.ru/upload/iblock/668/Robot_Manipulator_SD1_4_320_Metodika_dlya_uchitelya_V2.pdf
Манипулятор рука на ARDUINO. | Робототехника и программирование (portalrabot.ru)
Робот-манипулятор на Arduino||Arduino-diy.com
Подключение и управление манипулятором - Описания, примеры, подключение к Arduino (iarduino.ru)
Приложения Проект Робот-погрузчик
#include
Servo servo1; //центральный
Servo servo2; //правый
Servo servo3; //левый
Servo servo4; //головка
Servo servo5; //захват
const uint8_t pinS1 = 7;
const uint8_t pinS2 = 8;
const uint8_t pinS3 = 9;
const uint8_t pinS4 = 10;
const uint8_t pinS5 = 11;
int pos = 0;
int t =50; //задержка
int d =170; //угол поворота центальный
void setup(){
servo1.attach(pinS1);
servo2.attach(pinS2);
servo3.attach(pinS3);
servo4.attach(pinS4);
servo5.attach(pinS5);
}
void loop(){
//захват
for (pos = 10; pos
servo5.write(pos);
delay(t);
}
for (pos = 90; pos = 60; pos -= 1) {
servo5.write(pos);
delay(t);
}
//центальный
for (pos = 10; pos
servo1.write(pos);
delay(t);
}
//захват
for (pos = 60; pos
servo5.write(pos);
delay(t);
}
for (pos = 90; pos = 10; pos -= 1) {
servo5.write(pos);
delay(t);
}
//центальный
for (pos = d; pos = 10; pos -= 1) {
servo1.write(pos);
delay(t);
}
delay(1000);
}
https://youtu.be/8CzTaRNLkVs
Проект Дистанционный выключатель
#include
#include "IRremote.h"
IRrecv irrecv(2); // указываем вывод, к которому подключен ИК приемник
decode_results results;
Servo servo1; //центральный
Servo servo2; //правый
Servo servo3; //левый
Servo servo4; //головка
Servo servo5; //захват
const uint8_t pinS1 = 7;
const uint8_t pinS2 = 8;
const uint8_t pinS3 = 9;
const uint8_t pinS4 = 10;
const uint8_t pinS5 = 11;
int ldr = 0; //пин фоторезистора
int pos = 0;
int t =50; //задержка
int dv =30; //угол левый верхний
int dw =60; //угол левый нижний
int d1 =80; //угол выкл
int d0 =100; //угол вкл
void setup(){
irrecv.enableIRIn(); // запускаем прием
servo1.attach(pinS1);
servo2.attach(pinS2);
servo3.attach(pinS3);
servo4.attach(pinS4);
servo5.attach(pinS5);
//центальный
for (pos = 0; pos
servo1.write(pos);
delay(t);
}
}
void loop(){
if ( irrecv.decode( &results )) { // если данные пришли
switch ( results.value ) {
case 0x20DF40BF:
digitalWrite( 13, HIGH );
//центальный на включение
for (pos = 90; pos
servo1.write(pos);
delay(t);
}
//левый вниз верх
for (pos = dw; pos = dv; pos -= 1) {
servo3.write(pos);
delay(t);
}
for (pos = dv; pos
servo3.write(pos);
delay(t);
}
break;
case 0x20DFC03F:
//центальный на выключение
for (pos = d0; pos = d1; pos -= 1) {
servo1.write(pos);
delay(t);
}
//левый вниз верх
for (pos = dw; pos = dv; pos -= 1) {
servo3.write(pos);
delay(t);
}
for (pos = dv; pos
servo3.write(pos);
delay(t);
}
//центальный в центр
for (pos = d1; pos
servo1.write(pos);
delay(t);
}
digitalWrite( 13, LOW );
break;
}
irrecv.resume(); // принимаем следующую команду
}
}
Лабораторная работа № 14 ИК-датчик и ИК пульт [2:]
https://youtu.be/SGoiqRdGrhQ