Съдържание:
- Стъпка 1: Компоненти
- Стъпка 2: Използва се за всеки компонент
- Стъпка 3: Дизайн
- Стъпка 4: Играйте стратегия
- Стъпка 5: Програмиране
Видео: Arduino Sumo Robot: 5 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Преди да започнем
Какво представлява сумо роботът?
Това са самоуправляеми роботи със специфични размери и характеристики, също така са проектирани във враждебни форми, които го квалифицират за участие в състезания и състезания с други роботи.
Името „сумо“идва от стар японски спорт, който се състои в това, че двама противници се бият на ринга, всеки от тях се опитва да изтласка другия противник от него. И това трябва да правят и роботите в състезанията по сумо роботика, където двама роботи, поставени на ринга и един друг се опитват да изтласкат противника си.
Идеята:
Създайте робот с определени спецификации и съизмерим със законите на това състезание (Sumo), този робот трябва да е в точни размери, за да се бори и да оцелее, за да не бъде пресичан от ринга по никакъв начин.
Така че нека да разгледаме законите за конкуренцията на роботите Sumo:
Ще ви обясня някои важни роли, които трябва да имате предвид, докато изграждате свой собствен SUMO, той също може да ви помогне да си представите и иновации собствената си идея, без да навлизате в дълбоки подробности.
1. Размери: Максимална ширина 20 см, Максимална дължина 20 см, Височина не е посочена.
2. Форма: формата на робота може да се променя след стартиране на състезанието, но без неразделните части да се поддържат като един централен обект.
3. Тегло: не надвишава 3 кг.
4. Роботът трябва да се самоконтролира.
Стъпка 1: Компоненти
1 Arduino Ano3
2 DC мотор
1 L298N Dual H Bridge за Arduino
1 Ултразвуков сензор
2 IR TCRT5000
1 батерия 9v
AA батерия 4 * 1,5 v парчета + кутия за батерии
4 колела на робота
джъмперни проводници
Стъпка 2: Използва се за всеки компонент
Сега имаме необходимите компоненти, така че нека отидем в подробности, за да знаем за какво се използва..
1- Arduino Ano3
Това е основна платка, която контролира всички части и ги свързва заедно
2- DC мотор
Които помагат на робота да маневрира и да се движи в пръстена на КОНКУРС
4- L298N Двоен H мост за Arduino
Това е малък панел, който осигурява постоянно напрежение на двигателите, както и опората на плочата Arduino с добър контрол на движението и напрежението.
5- Ултразвуков сензор
Ултразвуковият сензор се използва за локализиране на робота на противника и обикновено се поставя в горната част на робота.
6- IR TCRT5000
Както вече споменахме, конкурсният пръстен е проектиран в определен размер и има два цвята, пълнежът е черен, а рамката е бяла. Състезателят не трябва да излиза. Затова използваме IR сензора, за да сме сигурни, че роботът няма да излезе от пръстена. Този сензор има способността да прави разлика между цветовете на пръстена).
7- Батерия 9v
Той поддържа основната платка (Arduino) с важното напрежение.
8- АА батерия 4 * 1.5 v парчета + Батерия
Той поддържа двата двигателя (DC мотор) с важното напрежение и трябва да бъде отделен, за да даде пълната сила на колелата.
9- Кабелни проводници
Стъпка 3: Дизайн
Направих два дизайна на сумо роботи, използвайки Google 3D скица, защото обичам да създавам хартиени модели на своите роботи, преди да изрежа части от акрил на лазерната резачка. За да се уверите, че всички части ще се съберат правилно, важно е хартиените модели да бъдат отпечатани с точния размер на чертежите.
И аз вземам предвид, че съм в специфично измерване със законите за конкуренцията, така че се опитайте да мислите в по -креативни дизайни и да направите свой собствен модел.
За да бъдете по -чувствителни към теглото на робота, изпратете или след това поставете батериите в предната част на робота с предния щит под ъгъл 45 градуса спрямо формата на робота.
Изтеглете дизайна 1 от тук
Изтеглете дизайна 2 от тук
Можете също да изтеглите шаблон за модел на хартия
Отворете PDF файла с Adobe Acrobat Reader (препоръчителен софтуер)
Стъпка 4: Играйте стратегия
Както споменахме по -рано, че роботът трябва да има собствена способност да се контролира сам, така че ни дава възможност да го програмираме по повече от един начин, в зависимост от това как искате роботът да играе на ринга, както всеки противник в наистина искам да спечеля играта.
Стратегия за игра (1):
· Ние ще правим робота около себе си непрекъснато.
· Роботът винаги измерва разстоянието непрекъснато по време на въртенето.
· Ако измереното разстояние на опонента е по -ниско от (например 10 см), това означава, че опонентът е директно пред робота ни.
· Роботът трябва да спре да се върти и след това да започне атаката (бързо напред с пълна сила).
· Роботът трябва винаги да отчита показанията от инфрачервените сензори, за да е сигурен, че не сме преминали границата на пръстена.
· Ако прочетете за наличие на бял цвят на IR, той трябва да премести робота директно в обратната посока на сензора (например: Ако предният сензор, който дава индикация за белия цвят на робота, се движи назад)!
Стратегия за игра (2):
· При стартиране роботът измерва разстоянието отпред.
· Роботът се придвижва обратно на същото измерено разстояние.
· Роботът спира да се върти и след това започва внезапна атака (движете се с пълна сила напред).
· В случай на противник, прикрепеният робот трябва да се завърти на 45 градуса, за да оцелее, ако падне от ринга.
· Роботът трябва винаги да отчита показанията от инфрачервените сензори, за да е сигурен, че не сме преминали границата на пръстена.
· Ако прочетете за наличие на бял цвят на IR, той трябва да премести робота директно в обратната посока на сензора (например: Ако предният сензор, който дава индикация за белия цвят на робота, се движи назад)!
Стъпка 5: Програмиране
моля, проверете веригата и кода
* Актуализация 2019-03-26
Първо изтеглете ултразвуковата библиотека оттук и я инсталирайте:
github.com/ErickSimoes/Ultrasonic/blob/mas…
/*
от Ахмед Азуз
www.instructables.com/id/How-to-Make-Ardu…
Първо изтеглете lib от тук
github.com/ErickSimoes/Ultrasonic/blob/ma…
*/
#включва ултразвук.ч
Ултразвуков ултразвуков (4, 3);
const int IN1 = 5;
const int IN2 = 6; const int IN3 = 9; const int IN4 = 10; #дефинирайте IR_sensor_front A0 // преден сензор #define IR_sensor_back A1 // заден сензор int разстояние;
void setup ()
{Serial.begin (9600); забавяне (5000); // според ролите на sumo compat} void loop () {int IR_front = analogRead (IR_sensor_front); int IR_back = analogRead (IR_sensor_back); разстояние = ултразвук.прочетете (); РОТАЦИЯ (200); // стартиране на ротация if (разстояние <20) {Stop (); while (разстояние 650 || IR_back> 650) {break;} забавяне (10); } if (IR_front <650) // <650 означава бяла линия {Stop (); забавяне (50); НАЗАД (255); забавяне (500); } if (IR_back <650) // {Stop (); забавяне (50); НАПРЕД (255); забавяне (500); } /* ----------- отстраняване на грешки ---------------- Serial.print (ултразвук. Ranging (CM)); Serial.println ("cm"); Serial.println ("IR фронт:"); Serial.println (IR_front); Serial.println ("IR обратно:"); Serial.println (IR_back); */
} //--------------------------------------------
void FORWARD (int Speed) {// Когато искаме да позволим на двигателя да се движи напред, // просто анулираме тази част от секцията цикъл. analogWrite (IN1, Скорост); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, Скорост); } // -------------------------------------------- невалиден НАЗАД (int Speed) {// Когато искаме да позволим на Motor да се движи напред, // просто анулираме тази част от секцията цикъл. analogWrite (IN1, 0); analogWrite (IN2, Скорост); analogWrite (IN3, Скорост); analogWrite (IN4, 0); } // -------------------------------------------- void ROTATE (int Speed) {// Когато искаме да оставим двигателя да се върти, // просто анулираме тази част в секцията цикъл. analogWrite (IN1, Скорост); analogWrite (IN2, 0); analogWrite (IN3, Скорост); analogWrite (IN4, 0); } // -------------------------------------------- void Stop () {// Когато искаме да спрем, // просто анулираме тази част от раздела за цикъл. analogWrite (IN1, 0); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, 0); }
Препоръчано:
PAPER HUNGRY ROBOT - Pringles Recycle Arduino Robot: 19 стъпки (със снимки)
PAPER HUNGRY ROBOT - Pringles Recycle Arduino Robot: Това е друга версия на Hungry Robot, която построих през 2018 г. Можете да направите този робот без 3D принтер. Всичко, което трябва да направите, е просто да закупите кутия Pringles, серво мотор, сензор за близост, arduino и някои инструменти. Можете да изтеглите всички
[DIY] Spider Robot (Quad Robot, Quadruped): 14 стъпки (със снимки)
[DIY] Spider Robot (Quad Robot, Quadruped): Ако имате нужда от допълнителна подкрепа от мен, ще бъде по-добре да ми направите подходящо дарение: http: //paypal.me/RegisHsu2019-10-10 актуализация: Новият компилатор ще предизвика проблем с изчисляването на плаващото число. Вече промених кода. 2017-03-26
Joy Robot (Robô Da Alegria) - 3D отпечатан с отворен код, Arduino Powered Robot!: 18 стъпки (със снимки)
Joy Robot (Robô Da Alegria) - 3D отпечатан с отворен код, Arduino Powered Robot !: Първа награда в конкурса за колела Instructables, Втора награда в състезанието Arduino на Instructables и Подгласничка в предизвикателството Design for Kids. Благодаря на всички, които гласуваха за нас !!! Роботите се появяват навсякъде. От промишлени приложения до вас
Робот Mini Sumo: 5 стъпки
Robot Mini Sumo: Първоначално трябва да имате всички необходими материали, за да започнете да сглобявате сумо робота. За това трябва да имате следните устройства: 1 PIC 16F877A 2 Кварцов кристал 4Mhz 4 Кондензатори 22pF 2 Цифров QTR-1RC Line Sensor 1 Bluetooth режим HC -05 1 Ultra
ARDUINO HDD SUMO ROBOT: 10 стъпки (със снимки)
ARDUINO HDD SUMO ROBOT: Това са инструкциите как да използвате стар твърд диск за изграждане на сумо ROBOT, захранван от Arduino