
Съдържание:
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 14:36


В този урок ще научим как да направим Arduino балансиращ (балансиращ) робот, който да се балансира. Първо можете да разгледате видео урока по -горе.
Стъпка 1: Необходим хардуер

Arduino Board (Uno) -
MPU-6050 GY521 Acc+Gyro-https://bit.ly/2swR0Xo
DC 6V 210RPM кодиращ редуктор -
L298N Драйвер на двигателя -
Бутон за превключване -
Комплект винтове за гайки с шестоъгълна резба M3 -
Акрилен лист Perspex -
3.7v 18650 акумулаторна литиево-йонна+зарядно устройство-https://bit.ly/2LNZQcl
9V батерия -
Джъмперни проводници -
Пистолет за горещо лепило -
Стартов комплект и консумативи на Arduino (по избор): Arduino Board & SCM Supplies #01 -
Arduino Board & SCM Supplies #02 -
Arduino Basic Learning Starter Kit #01 -
Arduino Basic Learning Starter Kit #02 -
Arduino Basic Learning Starter Kit #03 -
Начален комплект Mega 2560 с урок -
Комплект сензорен модул за Arduino #01 -
Комплект сензорен модул за Arduino #02 -
Стъпка 2: Сглобяване на робота



- Пробийте четири ъгъла от 3 акрилни листа. (Изображения 1 и 2)
- Между всеки акрилен лист ще има около 8 кантиметра / 3,15 инча. (Изображение 3)
- Размери на робота (приблизително) 15 см x 10 см x 20 см. (Изображение 4)
- DC двигателят и колелата ще бъдат поставени в центъра (средната линия) на робота. (Изображение 5)
- L298N Motor Driver ще бъде поставен в центъра на първия етаж (средната линия) на робота. (Изображение 6)
- Дъската Arduino ще бъде поставена на втория етаж на робота.
- Модулът MPU6050 ще бъде поставен на последния етаж на робота. (Изображение 7)
Стъпка 3: Връзки


Тествайте MPU6050 и се уверете, че работи! Свържете първо MPU6050 към Arduino и тествайте връзката, като използвате кодовете в урока по -долу. Даха трябва да се показва на серийния монитор
Инструкции за инструкции - MPU6050 GY521 6 -осен акселерометър+жироскоп
Урок за YouTube - MPU6050 GY521 6 -осен акселерометър + жироскоп
Модулът L298N може да осигури +5V, необходими на Arduino, стига входното му напрежение да е +7 V или повече. Избрах обаче да има отделен източник на захранване за двигателя
Стъпка 4: Как работи балансирането?



- За да поддържат робота балансиран, двигателите трябва да противодействат на падането на робота.
- Това действие изисква обратна връзка и коригиращ елемент.
- Елементът за обратна връзка е MPU6050, който дава както ускорение, така и въртене във всичките три оси, които се използват от Arduino за познаване на текущата ориентация на робота.
- Коригиращият елемент е комбинацията от мотор и колело.
- Самобалансиращият се робот е по същество обърнато махало.
- Тя може да бъде балансирана по -добре, ако центърът на масата е по -висок спрямо осите на колелата.
- Ето защо поставих батерията отгоре.
- Височината на робота обаче е избрана въз основа на наличността на материали.
Стъпка 5: Изходен код и библиотеки


Разработеният код за балансиращия робот е твърде сложен. Но няма нужда да се притеснявате. Ще променим само някои данни.
Нуждаем се от четири външни библиотеки, за да работи самобалансиращият се робот
- PID библиотеката улеснява изчисляването на стойностите P, I и D.
- Библиотеката LMotorController се използва за задвижване на двата двигателя с модула L298N.
- Библиотеката I2Cdev и библиотеката MPU6050_6_Axis_MotionApps20 са за четене на данни от MPU6050.
Изтегляне на библиотеки
PID -
LMotorController -
I2Cdev -
MPU6050 -
Вземете изходния код -
Какво е PID?
- В теорията на управлението, за да се поддържа стабилна някаква променлива (в този случай позицията на робота) се нуждае от специален контролер, наречен PID.
- P за пропорционална, I за интегрална и D за производна. Всеки от тези параметри има „печалби“, обикновено наричани Kp, Ki и Kd.
- PID осигурява корекция между желаната стойност (или вход) и действителната стойност (или изход). Разликата между входа и изхода се нарича „грешка“.
- ПИД контролерът намалява грешката до възможно най -малката стойност чрез непрекъснато регулиране на изхода.
- В нашия самобалансиращ се робот Arduino входът (който е желаният наклон, в градуси) се задава от софтуер.
- MPU6050 отчита текущия наклон на робота и го подава към PID алгоритъма, който извършва изчисления за управление на двигателя и поддържане на робота в изправено положение.
PID изисква стойностите на усилванията Kp, Ki и Kd да бъдат „настроени“на оптимални стойности
Вместо това ще коригираме стойностите на PID ръчно
- Направете Kp, Ki и Kd равни на нула.
- Регулирайте Kp. Твърде малко Kp ще накара робота да падне (недостатъчна корекция). Твърде много Kp ще накара робота да се движи бурно напред -назад. Достатъчно добър Kp ще накара робота леко да се движи напред -назад (или да се колебае малко).
- След като Kp е настроен, регулирайте Kd. Добрата стойност на Kd ще намали трептенията, докато роботът стане почти стабилен. Също така, точното количество Kd ще поддържа робота да стои, дори и да бъде натиснат.
- И накрая, задайте Ki. Роботът ще се колебае, когато е включен, дори ако Kp и Kd са настроени, но ще се стабилизира с времето. Правилната стойност на Ki ще съкрати времето, необходимо на робота да се стабилизира.
Предложение за по -добри резултати
Препоръчвам ви да създадете подобна рамка за роботи, използвайки материалите, използвани в този проект, за да накарате изходния код за Balance Robot да работи стабилно и ефективно.
Стъпка 6: За поддръжка

- Можете да се абонирате за моя канал в YouTube за още уроци и проекти.
- Можете също да се абонирате за поддръжка. Благодаря ти.
Посетете моя канал в YouTube -
Препоръчано:
Arduino - Робот за решаване на лабиринт (MicroMouse) Робот след стена: 6 стъпки (със снимки)

Arduino | Робот за решаване на лабиринт (MicroMouse) Wall Следващ робот: Добре дошли, аз съм Исак и това е първият ми робот "Striker v1.0". Този робот е проектиран да решава прост лабиринт. В състезанието имахме два лабиринта и робота е успял да ги идентифицира. Всички други промени в лабиринта може да изискват промяна в
Най -лесният начин да направите робот за управление на жестове: 7 стъпки (със снимки)

Най -лесният начин да направите робот за управление на жестове: Управлявайте играчки като супергерой. Научете как да направите автомобил, управляван с жестове. Това е как да направите автомобил, управляван с жестове. По принцип това е просто приложение на 3-осен жироскоп MPU-6050, акселерометър. Можете да направите още много неща
Робот -сервоуправляващ робот за Arduino: 6 стъпки (със снимки)

Робот -сервоуправляващ робот за Arduino: Този автомобил е базиран на дизайна на платформата arduino, ядрото е Atmega - 328 p, което може да реализира управление на предните колела, задвижване на задните колела и други функции. Ако просто играете сами, трябва само да използвайте безжичния модул; Ако искате да внедрите
Сканирайте близки обекти, за да направите 3D модел с помощта на ARDUINO: 5 стъпки (със снимки)

Сканирайте близки обекти, за да направите 3D модел с помощта на ARDUINO: Този проект е специфичен, като използва ултразвуков сензор HC-SR04 за сканиране за близки обекти. За да направите 3D модел, трябва да преместите сензора в перпендикулярна посока. Можете да програмирате Arduino да издава аларма, когато сензорът открие обект с
Изградете много малък робот: Направете най -малкия колесен робот в света с грайфер: 9 стъпки (със снимки)

Изградете много малък робот: Направете най -малкия колесен робот в света с грайфер. Постройте робот от 1/20 кубически инча с грайфер, който може да вдига и премества малки обекти. Управлява се от микроконтролер Picaxe. В този момент считам, че това може да е най -малкият колесен робот в света с грайфер. Това без съмнение ще