Indholdsfortegnelse:
- Trin 1: Komponenter
- Trin 2: Anvendelser for hver komponent
- Trin 3: Design
- Trin 4: Spil strategi
- Trin 5: Programmering
Video: Arduino Sumo Robot: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Inden vi starter
Hvad er sumobotten?
Det er en selvkontrolleret robot med specifikke dimensioner og funktioner, den er også designet i fjendtlige former, der kvalificerer den til at deltage i konkurrencer og konkurrencer med andre robotter.
Navnet "sumo" stammer fra en gammel japansk sport, som er to modstandere, der kæmper i en ring, hver af dem forsøger at skubbe den anden modstander ud af det, og det er det, robotter også skal gøre i sumobotokonkurrencerne, hvor to robotter placeret i ringen og hinanden forsøger at skubbe sin modstander ud.
Ideen:
Byg en robot med visse specifikationer og står i overensstemmelse med lovene i denne konkurrence (Sumo), denne robot skal være i nøjagtige dimensioner for at kæmpe og overleve for ikke at blive krydset af ringen på nogen måde.
Så lad os se på Sumo -robotkonkurrencelovgivningen:
Jeg vil forklare nogle vigtige roller, du bør overveje, mens du bygger din egen SUMO, det kan også hjælpe dig med at forestille dig og innovation din egen idé uden at gå i dybe detaljer.
1. Dimensioner: Max Bredde 20 cm, Max Længde 20 cm, Højde ikke angivet.
2. Form: robotformen kan ændres efter start af løbet, men uden at de uadskillelige dele opretholdes som et centralt objekt.
3. Vægt: overstiger ikke 3 kg.
4. Robotten skal være selvkontrollerende.
Trin 1: Komponenter
1 Arduino Ano3
2 DC motor
1 L298N Dual H -bro til Arduino
1 ultralydssensor
2 IR TCRT5000
1 batteri 9v
AA batteri 4 * 1,5 v stykker + Batterihus
4 robothjul
jumper ledninger
Trin 2: Anvendelser for hver komponent
Nu har vi de nødvendige komponenter, så lad os gå i detaljer for at vide, hvad der bruges til..
1- Arduino Ano3
Det er et hovedkort, der styrer alle delene og kæder det sammen
2- DC motor
Som hjælper robotten med at manøvrere og bevæge sig inden for ringen af KONKURRENCE
4- L298N Dual H-bro til Arduino
Det er et lille panel, der leverer konstant spænding til motorerne, samt understøttelse af Arduino -pladen med god styring af bevægelse og spænding.
5- Ultralydssensor
Ultralydssensoren bruges til at lokalisere modstanderens robot og er normalt placeret øverst på robotten.
6- IR TCRT5000
Som vi allerede har nævnt, er konkurrenceringen designet i en bestemt størrelse, og den har to farver, fyldet er sort og rammen er hvid. Deltageren bør ikke gå ud. Derfor bruger vi IR -sensoren til at sikre, at robotten ikke er ude af ringen. Denne sensor har evnen til at skelne mellem ringens farver).
7- Batteri 9v
Det understøtter hovedkortet (Arduino) med den vigtige spænding.
8- AA batteri 4 * 1,5 v stykker + Batterihus
Den understøtter de to motorer (DC Motor) med den vigtige spænding, og den skal adskilles for at give fuld kraft til hjulene.
9- Jumper ledninger
Trin 3: Design
Jeg har lavet to sumobrobotdesign ved hjælp af Google 3D sketch-up, fordi jeg kan lide at oprette papirmodeller af mine robotter, før jeg skærer dele ud af akryl på laserskæreren. For at kontrollere, at alle delene passer korrekt sammen, er det vigtigt, at papirmodellerne udskrives i den nøjagtige størrelse på tegninger.
Og jeg tager i betragtning at være i specifik måling med konkurrencelovgivningen, så prøv at tænke i et mere kreativt design og lav din egen model.
For at være mere følsom over for robotens vægt i indsendt eller derefter sætte batterierne i fronten af robotten med frontskærmen i en 45 graders vinkel i forhold til robotens form.
Download design 1 herfra
Download design 2 herfra
Du kan også downloade skabelon til papirmodel
Åbn PDF -filen med Adobe Acrobat Reader (anbefalet software)
Trin 4: Spil strategi
Som vi nævnte før, at robotten skal have sin egen evne til at kontrollere sig selv, så den giver os mulighed for at programmere den på mere end én måde, det afhænger af, hvordan du vil have robotten til at spille på ringen ligesom enhver modstander i virkelig lyst til at vinde spillet.
Afspilningsstrategi (1):
· Vi vil løbende lave robotten omkring sig selv.
· Robotten måler altid afstanden kontinuerligt under rotation.
· Hvis den målte modstanders afstand er lavere end (f.eks. 10 cm), betyder det, at modstanderen er direkte foran robotten.
· Robotten skal stoppe med at rotere og derefter starte angrebet (gå hurtigt fremad med fuld kraft).
· Robotten skal altid tage målingerne fra IR -sensorerne for at være sikker på, at vi ikke krydsede ringgrænsen.
· Hvis læst om IR -tilstedeværelse af hvid farve, skal den flytte robotten direkte i sensorens modsatte retning (f.eks.: Hvis den forreste sensor, som gav en indikation af robotens hvide farve, bevæger sig baglæns)!
Afspilningsstrategi (2):
· Ved starten måler robotten afstanden foran.
· Robotten flytter den samme målte afstand tilbage.
· Robotten holder op med at rotere og starter derefter med at angribe pludseligt (gå fremad med fuld kraft).
· I tilfælde af modstander skal robotten rotere 45 grader for at overleve sig selv, hvis den falder ud af ringen.
· Robotten skal altid tage målingerne fra IR -sensorerne for at være sikker på, at vi ikke krydsede ringgrænsen.
· Hvis læst om IR -tilstedeværelse af hvid farve, skal den flytte robotten direkte i sensorens modsatte retning (f.eks.: Hvis den forreste sensor, som gav en indikation af robotens hvide farve, bevæger sig baglæns)!
Trin 5: Programmering
tjek kredsløbet og koden
* Opdatering 2019-03-26
Download ultralydsbiblioteket herfra først og installer det:
github.com/ErickSimoes/Ultrasonic/blob/mas…
/*
af ahmed Azouz
www.instructables.com/id/How-to-Make-Ardu…
Download lib herfra først
github.com/ErickSimoes/Ultrasonic/blob/ma…
*/
#include Ultrasonic.h
Ultralyds ultralyd (4, 3);
const int IN1 = 5;
const int IN2 = 6; const int IN3 = 9; const int IN4 = 10; #define IR_sensor_front A0 // front sensor #define IR_sensor_back A1 // rear senson int distance;
ugyldig opsætning ()
{Serial.begin (9600); forsinkelse (5000); // i henhold til sumo -kompatible roller} void loop () {int IR_front = analogRead (IR_sensor_front); int IR_back = analogRead (IR_sensor_back); distance = ultrasonic.read (); ROTERE (200); // start rotete if (distance <20) {Stop (); mens (afstand 650 || IR_back> 650) {pause;} forsinkelse (10); } hvis (IR_front <650) // <650 betyder hvid linje {Stop (); forsinkelse (50); TILBAGE (255); forsinkelse (500); } hvis (IR_back <650) // {Stop (); forsinkelse (50); FREM (255); forsinkelse (500); } /* ----------- debugging ---------------- Serial.print (ultrasonic. Ranging (CM)); Serial.println ("cm"); Serial.println ("IR front:"); Serial.println (IR_front); Serial.println ("IR tilbage:"); Serial.println (IR_back); */
} //--------------------------------------------
void FORWARD (int Speed) {// Når vi vil lade Motor To bevæge sig fremad, // skal du bare annullere denne del på loop -sektionen. analogWrite (IN1, hastighed); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, hastighed); } // -------------------------------------------- ugyldig BACKWARD (int Speed) {// Når vi vil lade motoren bevæge sig fremad, // skal du bare annullere denne del på loop -sektionen. analogWrite (IN1, 0); analogWrite (IN2, hastighed); analogWrite (IN3, hastighed); analogWrite (IN4, 0); } // -------------------------------------------- ugyldig ROTERING (int Speed) {// Når vi vil lade motoren rotere, // skal du bare annullere denne del på loop -sektionen. analogWrite (IN1, hastighed); analogWrite (IN2, 0); analogWrite (IN3, hastighed); analogWrite (IN4, 0); } // -------------------------------------------- ugyldig stop () {// Når vi vil stoppe motoren, // skal du bare annullere denne del i loop -sektionen. analogWrite (IN1, 0); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, 0); }
Anbefalede:
5 i 1 Arduino Robot - Følg mig - Linjefølge - Sumo - Tegning - Hindring Undgåelse: 6 trin
5 i 1 Arduino Robot | Følg mig | Linjefølge | Sumo | Tegning | Hindring Undgåelse: Dette robotstyringskort indeholder en ATmega328P -mikrokontroller og en L293D -motordriver. Det er naturligvis ikke anderledes end et Arduino Uno -kort, men det er mere nyttigt, fordi det ikke har brug for et andet skjold for at drive motoren! Det er fri for spring
Robot Mini Sumo: 5 trin
Robot Mini Sumo: I første omgang skal du have alle de nødvendige materialer til at begynde at samle sumoboten. Til dette skal du have følgende enheder: 1 PIC 16F877A 2 Kvarts krystal 4Mhz 4 kondensatorer 22pF 2 Digital QTR-1RC linjesensor 1 Bluetooth-tilstand HC -05 1 Ultra
Arduino 3D -trykt Sumo Bot: 6 trin
Arduino 3D -trykt Sumo Bot: Så jeg havde en masse dele liggende rundt om mit hus. Jeg ville deltage i en sumokonkurrence om et par måneder, men jeg havde ikke en bot. I stedet for at købe en bot eller bruge et eksisterende design, der ville kræve, at jeg købte ting til pr
ARDUINO HDD SUMO ROBOT: 10 trin (med billeder)
ARDUINO HDD SUMO ROBOT: Disse er instruktionerne til, hvordan du bruger en gammel harddisk til at bygge en Arduino -drevet sumo ROBOT
GRATIS SUMO ROBOT STRUKTUR Fra 5L rengøringsbeholder: 10 trin (med billeder)
GRATIS SUMO ROBOT STRUKTUR Fra 5L rengøringsbeholder: I denne instruktør vil jeg vise dig, hvordan du bruger en tom 5L plastbeholder og omdannes til en flot ROBOT STRUCTURE