
Բովանդակություն:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48

Սկսելուց առաջ
Ի՞նչ է սումո ռոբոտը:
Դա ինքնակառավարվող ռոբոտներ են ՝ հատուկ չափսերով և առանձնահատկություններով, այն նաև նախագծված է թշնամական ձևերով, ինչը նրան իրավունք է տալիս մասնակցելու այլ ռոբոտների հետ մրցումներին և մրցումներին:
«Սումո» անունը ծագել է հին ճապոնական մարզաձևից, որը երկու հակառակորդ է, որոնք պայքարում են ռինգում, որոնցից յուրաքանչյուրը փորձում է դուրս մղել մյուս հակառակորդին: Եվ սա այն է, ինչ ռոբոտները պետք է անեն նաև սումո ռոբոտաշինության մրցումներում, որտեղ ռոբոտներ, որոնք տեղադրված են ռինգում և միմյանց փորձում են դուրս մղել մրցակցին:
Գաղափարը
Կառուցեք որոշակի բնութագրերով և այդ մրցույթի օրենքներին համապատասխան ռոբոտ (Sumo), այս ռոբոտը պետք է ունենա ճշգրիտ չափսեր ՝ պայքարելու և գոյատևելու համար, որպեսզի ոչ մի կերպ չանցնի ռինգից:
Այսպիսով, եկեք նայենք Sumo ռոբոտների մրցակցության օրենքներին.
Ես կբացատրեմ մի քանի կարևոր դերեր, որոնք պետք է հաշվի առնել ձեր սեփական SUMO- ն կառուցելիս, դա նաև կարող է օգնել ձեզ պատկերացնել և նորարարել ձեր սեփական գաղափարը ՝ առանց խորը մանրամասների մեջ մտնելու:
1. Չափերը ՝ առավելագույն լայնություն 20 սմ, առավելագույն երկարություն 20 սմ, բարձրություն նշված չէ:
2. Ձև. Ռոբոտի ձևը կարող է փոփոխական լինել մրցարշավը սկսելուց հետո, բայց առանց մեկ կենտրոնական օբյեկտի պահպանման անբաժանելի մասերի:
3. Քաշը `չի գերազանցում 3 կգ -ը:
4. Ռոբոտը պետք է ինքնակառավարվող լինի:
Քայլ 1: Բաղադրիչներ



1 Արդուինո Անո 3
2 DC շարժիչ
1 L298N Dual H Bridge Arduino- ի համար
1 Ուլտրաձայնային տվիչ
2 IR TCRT5000
1 մարտկոց 9 վ
AA մարտկոց 4 * 1.5 v կտոր + Մարտկոց
4 ռոբոտային անիվներ
jumper լարերը
Քայլ 2: Օգտագործում է յուրաքանչյուր բաղադրիչի համար


Այժմ մենք ունենք անհրաժեշտ բաղադրիչները, ուստի եկեք մանրամասնորեն իմանանք, թե ինչի համար է այն օգտագործվում:
1- Արդուինո Անո 3
Այն հիմնական տախտակ է, որը վերահսկում է բոլոր մասերը և կապում դրանք միասին
2- DC շարժիչ
Որոնք օգնում են ռոբոտին մանևրել և շարժվել ՄՐMPՈՅԹԻ ռինգում
4- L298N Dual H Bridge Arduino- ի համար
Այն փոքր վահանակ է, որն ապահովում է շարժիչներին մշտական լարում, ինչպես նաև Arduino ափսեի աջակցություն ՝ շարժման և լարման լավ վերահսկմամբ:
5- Ուլտրաձայնային տվիչ
Ուլտրաձայնային սենսորն օգտագործվում է հակառակորդի ռոբոտը գտնելու համար և սովորաբար տեղադրվում է ռոբոտի վերևում:
6- IR TCRT5000
Ինչպես արդեն նշեցինք, մրցույթի մատանին նախագծված էր որոշակի չափսերով և ուներ երկու գույն, լրացումը ՝ սև, իսկ շրջանակը ՝ սպիտակ: Մրցույթի մասնակիցը չպետք է դուրս գա: Հետեւաբար, մենք օգտագործում ենք IR սենսորը `համոզվելու համար, որ ռոբոտը ռինգից դուրս չի լինի: Այս սենսորը օղակի գույները տարբերելու ունակություն ունի):
7- Մարտկոց 9 վ
Այն աջակցում է հիմնական տախտակին (Arduino) `կարևոր լարման միջոցով:
8- AA մարտկոց 4 * 1.5 v կտոր + Մարտկոց
Այն աջակցում է երկու շարժիչներին (DC շարժիչ) կարևոր լարման հետ և այն պետք է տարանջատվի ՝ անիվների ամբողջ ուժը հաղորդելու համար:
9- Jumper լարերը
Քայլ 3: Դիզայն


Ես պատրաստել եմ սումո ռոբոտների երկու դիզայն ՝ օգտագործելով Google 3D էսքիզը, քանի որ սիրում եմ ստեղծել իմ ռոբոտների թղթե մոդելներ ՝ նախքան լազերային դանակի ակրիլից մասեր կտրելը: Հաստատելու համար, որ բոլոր մասերը միմյանց ճիշտ կտեղավորվեն, կարևոր է, որ թղթե մոդելները տպվեն գծագրերի ճշգրիտ չափերով:
Եվ ես հաշվի եմ առնում մրցակցության օրենքներին համապատասխան չափումներ կատարելը, այնպես որ փորձեք մտածել ավելի ստեղծագործական ձևերի մեջ և կատարել ձեր սեփական մոդելը:
Ռոբոտի քաշի նկատմամբ ավելի զգայուն լինելու համար, կամ այնուհետև մարտկոցները դրեք ռոբոտի առջևի մասում ՝ առջևի վահանով ՝ 45 աստիճանի անկյան տակ ռոբոտի տեսքով:
Ներբեռնեք դիզայնը 1 այստեղից
Ներբեռնեք դիզայնը 2 այստեղից
Կարող եք նաև ներբեռնել Թղթի մոդելի ձևանմուշ
Բացեք PDF ֆայլը Adobe Acrobat Reader- ով (խորհուրդ է տրվում ծրագրակազմ)
Քայլ 4: Խաղալ ռազմավարություն



Ինչպես արդեն նշեցինք, որ ռոբոտը պետք է ունենա ինքնուրույն վերահսկելու իր ունակությունը, ուստի այն մեզ հնարավորություն է տալիս ծրագրավորել այն մեկից ավելի եղանակներով ՝ կախված այն բանից, թե ինչպես եք ցանկանում, որ ռոբոտը ռինգում խաղա այնպես, ինչպես ցանկացած հակառակորդ իսկական ցանկանում է հաղթել խաղը:
Խաղային ռազմավարություն (1)
· Մենք անընդհատ ռոբոտ ենք դարձնելու իր շուրջը:
· Ռոբոտը պտույտի ընթացքում անընդհատ չափում է տարածությունը:
· Եթե հակառակորդի չափված հեռավորությունը ցածր է (օրինակ ՝ 10 սմ), դա նշանակում է, որ հակառակորդը գտնվում է մեր ռոբոտի դիմաց անմիջապես:
· Ռոբոտը պետք է դադարեցնի պտտվելը, այնուհետև սկսի հարձակումը (արագ առաջ շարժվի ամբողջ ուժով):
· Ռոբոտը միշտ պետք է վերցնի IR սենսորների ընթերցումները `համոզվելու համար, որ մենք չենք անցել օղակի սահմանը:
· Եթե կարդալ սպիտակ գույնի IR առկայության մասին, այն պետք է շարժի ռոբոտին անմիջապես սենսորի հակառակ ուղղությամբ (օրինակ. Եթե առջևի սենսորը, որը ցույց էր տալիս ռոբոտի սպիտակ գույնի նշումը, շարժվում է հետ):
Խաղային ռազմավարություն (2)
· Սկզբում ռոբոտը չափում է առջևի հեռավորությունը:
· Ռոբոտը հետ է շարժվում նույն չափված հեռավորությամբ:
· Ռոբոտը դադարում է պտտվելուց, այնուհետև հանկարծ սկսում հարձակումը (առաջ շարժվել ամբողջ ուժով):
· Հակառակորդի դեպքում ռոբոտը պետք է պտտվի 45 աստիճանով, մինչդեռ ռինգից ընկնելու դեպքում գոյատևի ինքն իրեն:
· Ռոբոտը միշտ պետք է վերցնի IR սենսորների ընթերցումները `համոզվելու համար, որ մենք չենք անցել օղակի սահմանը:
· Եթե կարդալ սպիտակ գույնի IR առկայության մասին, այն պետք է շարժի ռոբոտին անմիջապես սենսորի հակառակ ուղղությամբ (օրինակ. Եթե առջևի սենսորը, որը ցույց էր տալիս ռոբոտի սպիտակ գույնի նշումը, շարժվում է հետ):
Քայլ 5: mingրագրավորում

խնդրում ենք ստուգել սխեման և ծածկագիրը
* Թարմացնել 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 // առջևի տվիչ #սահմանել IR_sensor_back A1 // հետևի զգայարան int հեռավորություն;
դատարկ կարգավորում ()
{Serial.begin (9600); ուշացում (5000); // ըստ sumo համատեղ դերերի} void loop () {int IR_front = analogRead (IR_sensor_front); int IR_back = analogRead (IR_sensor_back); հեռավորություն = ultrasonic.read (); Պտտել (200); // սկսել rotete if (հեռավորությունը <20) {Stop (); իսկ (հեռավորությունը 650 || IR_back> 650) {ընդմիջում;} ուշացում (10); } if (IR_front <650) // <650 նշանակում է սպիտակ գիծ {Stop (); ուշացում (50); ԵACԵԿ (255); ուշացում (500); } if (IR_back <650) // {Stop (); ուշացում (50); ԱՌԱ (255); ուշացում (500); } /* ----------- վրիպազերծում ---------------- Serial.print (ուլտրաձայնային. Տարբերակ (CM)); Serial.println («սմ»); Serial.println ("IR առջև` "); Serial.println (IR_front); Serial.println ("IR ետ ՝"); Serial.println (IR_back); */
} //--------------------------------------------
void FORWARD (int Speed) {// Երբ մենք ուզում ենք թույլ տալ Motor To առաջ շարժվել, // պարզապես չեղյալ համարել այս հատվածը loop բաժնում: analogWrite (IN1, Արագություն); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, Արագություն); } // ------------------------------------------------ անվավեր BACKWARD (int Speed) {// Երբ ուզում ենք թույլ տալ, որ Motor To շարժվի առաջ, // պարզապես չեղյալ համարեք այս հատվածը հանգույցի հատվածում: analogWrite (IN1, 0); analogWrite (IN2, Արագություն); analogWrite (IN3, Արագություն); analogWrite (IN4, 0); } // ------------------------------------------------ անվավեր Պտտել (int Արագություն) {// Երբ մենք ցանկանում ենք թույլ տալ, որ Շարժիչը պտտվի, // պարզապես չեղյալ համարեք այս հատվածը հանգույցի հատվածում: analogWrite (IN1, Արագություն); analogWrite (IN2, 0); analogWrite (IN3, Արագություն); analogWrite (IN4, 0); } // ------------------------------------------------ անվավեր Stop () {// Երբ մենք ցանկանում ենք շարժվել դեպի կանգառ, // պարզապես չեղյալ համարել այս հատվածը հանգույցի հատվածում: analogWrite (IN1, 0); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, 0); }
Խորհուրդ ենք տալիս:
Miniaturizing Arduino ինքնավար ռոբոտ (Land Rover / Car) Stage1 Մոդել 3: 6 քայլ

Miniaturizing Arduino ինքնավար ռոբոտ (Land Rover / Ավտոմեքենա) Stage1Model3. Ես որոշեցի մանրանկարել Land Rover / Car / Bot- ը `նախագծի չափսերն ու էներգիայի սպառումը նվազեցնելու համար:
Արդուինո - Լաբիրինթոս լուծող ռոբոտ (MicroMouse) Wall հետևող ռոբոտ. 6 քայլ (նկարներով)

Արդուինո | Maze Solving Robot (MicroMouse) Wall After Robot: Բարի գալուստ, ես Իսահակն եմ, և սա իմ առաջին ռոբոտն է " Striker v1.0 ". Այս ռոբոտը նախատեսված էր պարզ լաբիրինթոս լուծելու համար: Մրցույթում մենք ունեինք երկու լաբիրինթոս և ռոբոտը կարողացավ դրանք բացահայտել: Լաբիրինթոսում ցանկացած այլ փոփոխություն կարող է պահանջել փոփոխություն
RC վերահսկվող ռոբոտ XLR8- ում: Կրթական ռոբոտ ՝ 5 քայլ

RC վերահսկվող ռոբոտ XLR8- ում: Կրթական ռոբոտ. Բարև, այս հոդվածում ձեզ ցույց կտա, թե ինչպես կառուցել հիմնական ռոբոտ: «Ռոբոտ» բառը բառացիորեն նշանակում է «ստրուկ»: կամ «աշխատող»: Արհեստական բանականության ոլորտում առաջընթացների շնորհիվ ռոբոտներն այլևս պարզապես Իսակ Ասիմովի գիտաֆանտաստիկայի մի մասը չեն
Հավասարակշռող ռոբոտ / 3 անիվի ռոբոտ / STEM ռոբոտ ՝ 8 քայլ

Հավասարակշռող ռոբոտ / 3 անիվի ռոբոտ / STEM ռոբոտ. Մենք կառուցել ենք համակցված հավասարակշռող և եռանիվ ռոբոտ `կրթական օգտագործման համար դպրոցներում և դպրոցից հետո կրթական ծրագրերում: Ռոբոտը հիմնված է Arduino Uno- ի, սովորական վահանի վրա (շինարարության բոլոր մանրամասները տրամադրված են), Li Ion մարտկոցի տուփով (բոլորը կառուցված են
[Arduino Robot] Ինչպես պատրաստել շարժիչով գրավող ռոբոտ - Մեծ մատներ ռոբոտ - Սերվո շարժիչ - Աղբյուրի կոդ ՝ 26 քայլ (նկարներով)
![[Arduino Robot] Ինչպես պատրաստել շարժիչով գրավող ռոբոտ - Մեծ մատներ ռոբոտ - Սերվո շարժիչ - Աղբյուրի կոդ ՝ 26 քայլ (նկարներով) [Arduino Robot] Ինչպես պատրաստել շարժիչով գրավող ռոբոտ - Մեծ մատներ ռոբոտ - Սերվո շարժիչ - Աղբյուրի կոդ ՝ 26 քայլ (նկարներով)](https://i.howwhatproduce.com/images/001/image-1599-93-j.webp)
[Arduino Robot] Ինչպես պատրաստել շարժիչով գրավող ռոբոտ | Մեծ մատներ ռոբոտ | Սերվո շարժիչ | Աղբյուրի կոդ ՝ Thumbs Robot: Օգտագործվել է MG90S servo շարժիչի պոտենցիոմետր: Դա շատ զվարճալի և հեշտ է: Կոդը շատ պարզ է: Այն ընդամենը մոտ 30 տող է: Կարծես շարժման գրավում լինի: Խնդրում ենք թողնել որևէ հարց կամ կարծիք: [Հրահանգ] Աղբյուրի կոդը ՝ https: //github.c