Innholdsfortegnelse:

1KG Sumobot -bygg: 6 trinn
1KG Sumobot -bygg: 6 trinn

Video: 1KG Sumobot -bygg: 6 trinn

Video: 1KG Sumobot -bygg: 6 trinn
Video: Sumo Robot 1kg Petrosains RBTX Final 2022 | Ultimate Battle of Robot Titans 2024, November
Anonim
1KG Sumobot -bygg
1KG Sumobot -bygg

Denne instruksen vil guide deg gjennom prosessen med å designe og bygge en sumobot på 1 kilo.

Men først, litt bakgrunn om hvorfor jeg bestemte meg for å skrive dette. Jeg var i ferd med å reparere min gamle sumobot for en konkurranse da jeg innså at jeg aldri hadde laget en instruks om hvordan jeg lager en sumobot. Jeg har vært stille i Instructables det siste året, så jeg bestemte meg for å komme tilbake med denne instruksjonsboken om hvordan jeg bygger en 1KG sumobot.

For det første ville mange av dere lure på: hva er en sumobot?

I utgangspunktet er en sumobot en slags robot som brukes i sumobot- eller robot-sumokonkurranser. Som navnet antyder, er målet å skyve hverandre ut av en ring, på samme måte som sumobryting. Selve sumoboten er designet med det ene formålet å skyve en annen sumobot ut av ringen. Sumoboten i denne instruksjonsboken er 1 kilo. Det er imidlertid andre vektklasser som 500 gram og 3 kilo.

Behov for ferdigheter:

  • Kjennskap til CAD (Computer Aided Design)
  • Lodding
  • Programmering i Arduino

Det trengs ikke mye kompetanse for dette prosjektet. Bare det å være komfortabel med CAD, lodding og programmering kommer langt. Ikke bli skremt av hvor komplisert datamaskinstøttet design høres ut som. Autodesk tilbyr gratis omfattende opplæringsprogrammer om egen programvare (jeg bruker Fusion 360 selv), og det er ekstremt nyttig for en nybegynner å lære tauene. For meg er det som er viktigere vilje og vilje til å lære, og selvfølgelig å ha det gøy underveis.

Med dette, la oss komme i gang.

P. S. Jeg deltar også i denne Instructable i Make it Move -konkurransen. Hvis du synes dette er fantastisk, kan du stemme på meg også. (Jeg vil ha t-skjorten; den ser veldig kul ut:))

Trinn 1: Deleliste

Deleliste:

0,090”6061 aluminiumsark - 12” x 12”(eller ethvert 0,090”/2,2 mm aluminiumsark som kan CNCd. Jeg valgte 6061 siden dette ville bli brukt til hoveddelen, og 6061 har en god mengde styrke)

0,5 mm aluminiumsark - 12”x 12” (Enhver legering ville fungere; dette er bare for toppdekselet og bladet. Jeg brukte ekstra aluminiumsrester)

5 mm aluminiumsplate (Igjen ville enhver legering fungere. Mine var 7075 aluminiumskrap.)

2 x 12V DC høyt dreiemoment (enhver motor med høyt dreiemoment vil fungere, for eksempel denne fra Amazon.)

2 x felg (Igjen ville alle felger fungere, avhengig av motoren din. Hvis du har en 5 mm motoraksel, vil disse hjulene fungere fint. Mine er faktisk noen gamle silikonhjul jeg hadde)

4 IR -avstandssensorer (jeg bruker Sharp IR -avstandssensorer, som kan kjøpes fra flere butikker, for eksempel denne fra Pololu og denne fra Sparkfun.)

2 IR -sensorer (jeg fikk noen her fra Sparkfun igjen.)

1 Microcontroller board (jeg bruker en ATX2 bare fordi det er nødvendig. En vanlig Arduino Uno ville faktisk vært bedre for brukervennligheten).

1 3S litiumpolymerbatteri (LiPo. 3S LiPos er 12 volt. En kapasitet alt fra 800 til 1400 mah ville fungere.)

1 Motordriver (Igjen, dette avhenger av hvor mye strøm motoren din kan trekke. Denne går direkte på toppen av en Arduino Uno og kan gi opptil 5A strøm.)

Ledninger, kabler og kontakter (For å koble sensorene til kortet og til grensesnitt med en bærbar datamaskin.)

M3 skruer og muttere

Epoksy

Kartong

Bærbar datamaskin (for å programmere brettet)

Verktøy som saks, strippere og loddejern.

Trinn 2: Montering av chassiset

Montering av chassiset
Montering av chassiset
Montering av chassiset
Montering av chassiset
Montering av chassiset
Montering av chassiset
Montering av chassiset
Montering av chassiset

Jeg brukte Fusion 360, en alt -i -ett sky -drevet 3D CAD/CAM -programvare, til å designe kabinettet. Autodesk tilbyr vakre opplæringsprogrammer her. Jeg lærte av det meste å se på videoene og deretter prøve å gjøre dem selv. Jeg vil ikke prøve å lære deg hvordan du bruker Fusion 360; Jeg lar fagfolk gjøre sitt.

Selve designet består av en hovedbase, ett blad, ett toppdeksel, to motorbraketter og to (eller fire) 3D -trykte seler. Hovedbasen er 2,2 mm aluminium, motorbrakettene er 5 mm aluminium, bladet er 0,5 mm aluminium, mens toppdekselet enten kan være 0,5 mm aluminium eller vanlig papp. Jeg brukte papp fordi aluminiumet veier et par gram mer, og jeg var over 1 kilo grensen med 10 gram. 3D -trykte seler på den annen side er trykt med ABS, på 50% utfylling.

Designene som krevde aluminium ble eksportert til.dxf -filer og sendt til et lokalt laserskjæringsfirma her på Filippinene. De 3D -trykte delene ble i mellomtiden eksportert til STL og igjen sendt til et lokalt 3D -utskriftsfirma.

Ansvarsfraskrivelse: Jeg brukte en gammel sumobot av meg som ikke fungerer lenger, men bruker dette designet, så noen av delene er allerede montert på bildene. Jeg vil imidlertid lede deg gjennom prosessen med å sette sammen alle brikkene.

Når delene er kuttet, kan du enten starte med toppdekselet, avstiveren og bladet, eller motorbraketten.

Toppdekselet i designet er laget av aluminium, men på grunn av vektbegrensninger brukte jeg papp. Jeg kutter papp i samme spesifikasjoner som i designet.

Den 3D -trykte skinnen er festet foran med skruer, og brukes til å bokstavelig talt avstive bladet. Bladet sitter fast på basen ved hjelp av epoksy. Skruehull i bladet og hovedbasen brukes til å styre posisjoneringen og sørge for at det er nøyaktig forbundet. Det er sirkulære hull på hovedbasen som du kan fylle med epoxy for å feste bladet til hovedbasen. Det store overflatearealet til hullene gjør at epoksyen kan gripe bladet bedre og forhindre at det rives vekk fra basen. IR -sensoren kan også festes til bunnen av bladet ved hjelp av epoxy, akkurat som på bildene. Sørg for at bunnen av sensoren er vinkelrett på gulvet.

For å montere motoren på basen, skru først motoren inn i motorbraketten. Imidlertid må du først lodde ledninger til motoren, siden ledningene er på baksiden av motoren, og det ville være vanskelig å nå dem når de er festet til basen. Motoren står i linje med motorbraketten og holdes opp av skruer. Det vil si at hvis du fikk motoren jeg inkluderte i delelisten. Hvis ikke, kan du endre designet for å passe til motoren din. På dette tidspunktet kan du også feste hjulkransen til motoren. Motorbraketten skrues deretter på de bakre hullene på hovedbasen.

Hvis du bruker en motordriver som ikke kan gå oppå Arduino, eller av en eller annen grunn at motorføreren må ha sitt eget område, er det plass mellom motorene og bladet for den. Denne plassen er tildelt lipo -batteriet og en motorfører, i tilfelle du trenger ekstra plass. Siden vi også allerede jobber med den nedre delen av roboten, og det ville være vanskelig å få tilgang til den senere når toppdekselet er festet, kan du plassere motorføreren mellom bladet og motorene, akkurat som på bildene. Dobbeltsidig tape kan hjelpe til med å feste den til basen.

Trinn 3: Elektronikk

Elektronikk
Elektronikk
Elektronikk
Elektronikk
Elektronikk
Elektronikk

Neste opp er elektronikken, for eksempel sensorene, motorføreren og brettet.

Hvis du igjen bruker en motordriver som ikke går på toppen av en Arduino, må du begynne å feste ledningene som er nødvendige for å koble den til mikrokontrolleren. For min sjåfør er alt jeg trenger en signal (blå) og jordet (svart) ledning. Det avhenger av sjåføren selv. Det alle drivere trenger er ledninger for å koble til batteriet eller strømkilden. Ledningene festet til min XT-60 (samme plugg på de fleste lipo-batterier) var for tykke, så jeg måtte trimme den ned for å passe til de smale kontaktblokkene.

Min mikrokontroller deler også den samme strømkilden som motordriverne, så jeg måtte lodde ledninger direkte til ledningene til XT-60-kontakten på motordriverne.

IR -avstandssensorene selv må kanskje ha overskriftsstifter loddet på dem, avhengig av hvilken sensor du får. De inneholder vanligvis noen i pakken hvis du kjøper dem, så bare lodd dem etter behov.

Du må kanskje også lodde ledninger sammen for å koble mikrokontrolleren til sensorene, akkurat som meg. Sensoren har sin egen kontakt; noen bruker JST, mens noen bruker servooverskrifter. Med en vanlig Arduino kan du feste hoppekabler til Arduino og deretter lodde den andre enden av kabelen til kabelen som kommer ut av sensoren. Prosessen fungerer på samme måte med andre mikrokontrollere. Ledninger som kommer fra mikrokontrolleren er loddet til ledninger som kommer fra sensoren.

Trinn 4: Sett sammen alle delene

Å sette alle delene sammen
Å sette alle delene sammen
Å sette alle delene sammen
Å sette alle delene sammen
Å sette alle delene sammen
Å sette alle delene sammen
Å sette alle delene sammen
Å sette alle delene sammen

Sensorene og mikrokontrolleren går på topplaten. Jeg monterte IR -avstandssensorene på en haug med papp for å heve den over mikrokontrolleren, siden ledningene bak sensoren kolliderer med mikrokontrolleren. Legg merke til hvordan det bare er tre sensorer på bildet. Det var bare i siste øyeblikk jeg bestemte meg for å legge til en fjerde distansesensor på baksiden av roboten. Dessverre var det ikke mer plass, så jeg måtte montere den på selve hovedbasen, rett bak motorene.

Mikrokontrolleren festes deretter til topplaten. Ingenting for vanskelig; Jeg stakk bare noen hull i pappa og skrudde hele brettet på topplaten. Hvis du bruker aluminium, vil en håndbor være et must.

Etter at alt er festet på topplaten, bruker du dobbeltsidig tape for å feste den til den øvre delen av motorene.

På dette tidspunktet kan du begynne å koble all elektronikken sammen, for eksempel å koble sensorene og motordriveren til mikrokontrolleren. Hvis du bruker motordriveren som bare fester seg på toppen av Arduino, er det ikke noe problem for deg. Hvis ikke, må du koble den i henhold til driverens spesifikasjoner til brettet, akkurat som jeg gjorde.

Når alt er koblet til, plasserer du lipoen i bunnrommet mellom motorene og bladet, og deretter slår du på mikrokontrolleren og driverne for å se at den lyser for første gang.

Trinn 5: Programmering

Når alt er satt sammen, er det en siste ting å gjøre: programmer roboten din.

Programmeringen av roboten avhenger av hvilken strategi du ønsker. Jeg antar her at du er kompetent til å programmere, fordi motorføreren min bruker seriell (UART) kommunikasjon, og derfor vil ikke programmet mitt fungere for andre motorførere. Tross alt er det ingen størrelse som passer alle i programmering.

For å hjelpe deg, her er et grunnleggende flytdiagram for programmet mitt.

hvis det er noen veldig nær foran, gå full effekt hvis venstre eller høyre fargesensor oppdager en hvit linje, gå tilbake og snu om hvis venstre eller høyre avstandssensor oppdager noe, sving i den retningen hvis baksensoren oppdager noe, sving til den retningen hvis noen er langt foran, gå fremover, fortsett å bevege deg fremover

Her er hele programmet hvis du er nysgjerrig:

#inkludere

// A5 - venstre fargesensor // A4 - høyre fargesensor // A6 - bakre avstandssensor // A2 - venstre avstandssensor // A3 - høyre avstandssensor // A1 - distansesensor foran // motor 1 - høyre // motor 2 - oppsett av venstre tomrom () {uart1_set_baud (9600); Serial1.write (64); Serial1.write (192); OK (); pip (2); setTextColor (GLCD_BLUE); glcd (1, 0, "initialisert"); forsinkelse (4900); }

void loop () {

int frontDistanceValue = analogRead (A1); int leftDistanceValue = analogRead (A2); int rightDistanceValue = analogRead (A3); int rearDistanceValue = analogRead (A6); int leftColorValue = digitalRead (A5); int rightColorValue = digitalRead (A4); hvis (frontDistanceValue> 250) {// noen rett foran, maks effekt Serial1.write (127); Serial1.write (128); } annet hvis (leftColorValue == 0) {// berørt kant // revers Serial1.write (1); Serial1.write (255); forsinkelse (400); Serial1.write (1); Serial1.write (128); forsinkelse (300); } annet hvis (rightColorValue == 0) {// berørt kant // revers Serial1.write (1); Serial1.write (255); forsinkelse (400); Serial1.write (127); Serial1.write (255); forsinkelse (300); } annet hvis (frontDistanceValue> 230) {// litt langt foran Serial1.write (127); Serial1.write (128); } annet hvis (leftDistanceValue> 250) {// ta til venstre Serial1.write (127); Serial1.write (255); forsinkelse (450); } annet hvis (rightDistanceValue> 250) {// ta til høyre Serial1.write (1); Serial1.write (128); forsinkelse (450); } annet hvis (rearDistanceValue> 150) {// nær bak Serial1.write (1); Serial1.write (128); forsinkelse (1050); } annet hvis (frontDistanceValue> 180) {// langt foran Serial1.write (127); Serial1.write (128); } annet {Serial1.write (100); Serial1.write (155); }}

Trinn 6: Bilder

Bilder
Bilder
Bilder
Bilder
Bilder
Bilder
Bilder
Bilder

Noen bilder av den ferdige sumoboten vises.

Forhåpentligvis har du lært noe av dette instruerbare. Hvis du liker denne guiden, kan du stemme på meg i Make it Move -konkurransen. Hvis ikke, vil jeg gjerne korrigere alt som kan gjøre denne guiden bedre.

God læring!

Anbefalt: