Kredsløb

Sådan bygger du en robot - Lektion 2: Byg en grundlæggende Arduino Robot: 19 trin

OTECKOVIA - Nehanebná Stella. S Alexom ich takmer pristihli

OTECKOVIA - Nehanebná Stella. S Alexom ich takmer pristihli

Indholdsfortegnelse:

Anonim

Efter den første lektion (Sådan bygger du en robot-introduktion) har du nu en grundlæggende viden om, hvad en Arduino robot er, hvad du har brug for for at bygge en robot, samt hvordan du bruger værktøjerne. Nu er det tid til at begynde at lave!

I denne anden øvelse lærer du at opbygge en grundlæggende Arduino robot. For at gøre denne vejledning nem at følge, bruges et Arduino robot kit (Pirate: 4WD Arduino Mobile Robot Kit med Bluetooth 4.0) her som et eksempel.

Lektioner Menu:

Lektion 1: Introduktion

Lektion 2: Byg en grundlæggende Arduino Robo

Lektion 3: Byg en linjesporing Arduino Robot

Lektion 4: Byg en Arduino Robot, der kunne undgå forhindringer

Lektion 5: Byg en Arduino robot med lys og lydeffekter

Lektion 6: Byg en Arduino Robot, der kunne overvåge miljøet

Lektion 7: Byg en Bluetooth-styret Arduino Robot

Montagevejledning

TRIN 1: Saml din egen motor

Se i din taske til otte lange skruer. Disse bruges til at fastgøre og sikre motorerne på plads. Placer motorerne i den rigtige justering, og skru dem derefter på plads som vist på billedet nedenfor.

Vær opmærksom på, at skiver og pakninger også er inkluderet i dele tasken. Skiver kan bruges til at øge friktionen, hvilket hjælper med at fastgøre motorerne på plads. Pakningerne hjælper med at forhindre skruenødder i at løsne og falde ned på grund af roboternes bevægelser og kollisioner.

forsyninger:

Trin 1:

TRIN 2: Lodning af kablerne

Tag de sorte og røde ledninger ud af deleposen. Vedhæft et sort og et rødt kabel (15 cm lang) til hver motor (4 motorer i alt). Brug derefter din trådstripper til at fjerne isoleringen i begge ender af ledningerne (sørg for ikke at strippe for meget - se billederne nedenfor). Derefter loddes ledningerne på stifterne fastgjort til motorerne. Gentag lodningsprocessen for alle fire motorer.

BEMÆRK: Vær opmærksom på de korrekte placeringer af de røde og sorte ledninger ved lodning. Se venligst de følgende fotos for detaljer.

Trin 2:

TRIN 3: Monter Romeo BLE-controlleren

Se i din taske til tre kobberstøtter. Disse 1 cm lange understøtninger bruges til at fastgøre Romeo controller bordet. Som vist på billedet nedenfor er der tre huller i kontrolkortet. Placer de tre kobberstøtter i hullerne, og fastgør dem på plads med de rigtige skruer.

Trin 3:

TRIN 4: Monter batterikassen

Tag to forsænkede skruer ud (hovedet er fladt). Følg derefter trinene vist på billedet nedenfor, og sæt batteriet på bilens base.

Trin 4:

TRIN 5: Udførelse af afbryderen

Batterier er det væsentlige livsnerven for robotter. For at styre strømforbruget skal vi bruge en afbryder: Afbryderen slukker strømmen, når den ikke er i brug, og dermed bevarer el og batterilevetid. Se nedenstående billede før montering og installation af afbryderen.

Vær opmærksom på rækkefølgen af ​​pakninger og skruemøtrikker, når du monterer kontakten.

Trin 5:

Efter montering af kontakten vil vi begynde at lodde sine ledninger. Tag nogle af de resterende ledninger tilbage fra før. Stram ledningerne ud af begge ender af kablerne, så ledningens inderside udsættes (samme proces som med motoren før). Vi vil lodde den udsatte ende af ledningerne til stifterne på kontakten. Ved lodning er det meget vigtigt, at vi noterer placeringen af ​​kontaktens stifter.

Trin 6:

Lad os gøre dette trin for trin.

a) Tilslut kontakten til batteriopladeren. Vær opmærksom på den præcise placering af begge dele.

Trin 7:

b) Lod de røde kabler, der forbinder kontakten med batteriopladeren, som vist på billedet nedenfor.

Trin 8:

Her er et andet billede for at gøre tingene mere klare.

c) Endelig tag et rødt kabel og et sort kabel. Vedhæft den ene ende af et kabel til batteriopladerens negative pol og den ene ende af det andet kabel til ladestikets positive pol. Tilslut derefter de to ender af begge kabler til Romeo BLE-controlleren.

Trin 9:

c) Endelig tag et rødt kabel og et sort kabel. Vedhæft den ene ende af et kabel til batteriopladerens negative pol og den ene ende af det andet kabel til ladestikets positive pol. Tilslut derefter de to ender af begge kabler til Romeo BLE-controlleren.

Trin 10:

Kig på dette forstørrede billede skal give dig en bedre ide om, hvordan ledningerne skal forbindes. Efter lodning skal du sørge for at kontrollere, om dine ledninger mellem batteriet og Romeo-controlleren er konsistente fra start til slut og svarer til ovenstående billeder.

TRIN 6: Saml bilens base

Ved hjælp af otte M3x6mm skruer skal sidepladerne fastgøres til for- og bagkofangerplader som vist i diagrammet herunder.

BEMÆRK: Når skruerne skrues fast under dette trin, skal du sørge for ikke at skrue skruerne fuldt ud fuldt ud - på denne måde kan vi let løsne toppladen i senere trin, hvis vi skal foretage justeringer.

Trin 11:

Sæt derefter bundpladen igen på bilens krop som vist på billedet nedenfor.

Trin 12:

** Dette er hvad bilens base skal have, efter at den er blevet monteret - husk at installere batteriet!

TRIN 7: Tilslut motorerne med mikrokontrolkortet

Nu har vi brug for motorerne med mikrokontrolkortet. Følg forsigtigt følgende diagram: Den venstre motorens røde og sorte ledninger skal loddes i M2; Den rigtige motors røde og sorte ledninger skal loddes til M1. Vær særlig opmærksom på batteriet: Den sorte ledning skal loddes i ledningsporten, der læser GND, mens den røde ledning skal loddes i ledningsporten mærket VND. Brug din skruetrækker til at løsne og stram ledningsportene - sørg for at disse porte er fastgjort godt, når ledningerne er blevet indsat.

BEMÆRK: Sørg for, at ledningerne fra en motor (dvs. den venstre motor) er loddet i motorporten. (dvs. M2-porten på nedenstående diagram - Lod ikke en motors ledninger i to separate porte.)

Trin 13:

Efter lodning af motorledningerne til microcontrollerbrættet, er vi klar til at fastgøre toppladen til bunden af ​​bilen.

Inden vi fastgør toppladen, har du mulighed for at fastgøre en sensorplade (se diagram nedenfor) - hvis du ikke planlægger at bruge sensorer endnu, kan du springe over dette ekstra trin.

Trin 14:

Efter monteringen af ​​toppen af ​​platformen skal din robotplatform ligne billedet nedenfor.

Trin 15:

TRIN 8: Vedhæft et ekstra niveau til din robot

Find de fire huller på bundens topplade. Skru i de fire M3x60mm kobberafstande, og sæt derefter den ekstra topplade på som vist i skemaet nedenfor - Brug M3x6mm skruer til at sætte pladen på kobberafstivningerne.

Trin 16:

Kast nogle hjul på din robotplatform, og du er klar til at lade den piske!

Trin 17:

KODNING

Efter samling er det tid til at uploade koden på mikrocontrolleren og gøre din Arduino robot bevæge sig. Robotten har alle komponenter til at flytte én gang samlet. Se gennem prøvekoderne for Arduino filnavnet "MotorTest.ino".

Prøvekode Motor Test:

#omfatte

DFMobile Robot (4,5,7,6); // Start motorstiften

void setup () {

RobotDirection (LOW, HIGH); // indlede den positive retning

}

void loop () {

Robot.Speed ​​(255.255); //Frem

forsinkelse (1000);

Robot.Speed ​​(-255, -255); //Tilbage

forsinkelse (2000);

}

Download koden, og upload den derefter til din microcontroller. Motorer og hjul skal komme i live i travlt. Hvis ikke, skal du kontrollere, om batterierne og strømafbryderen er korrekt installeret. Når motorerne arbejder, tillykke! Du har gennemført et stort skridt - det er næsten tid til at sætte vores gummi på vejen.

Derefter skal du observere din robotbil og kontrollere, om den kan gå videre inden for 1 sekund og gå tilbage inden for 1 sekund. Hvis det er tilfældet, GOD LUK. Du behøver ikke at justere komponenterne. For dem, der har brug for at foretage nogle justeringer af bilens base eller motorer, skal du finde følgende oplysninger om, hvordan robotten bevæger sig.

Kontroller, om din robotplatform følger koden vist ovenfor: Den skal gå frem i 1 sekund og derefter tilbage i 1 sekund. Hvis det er tilfældet, skal du bare skimme indholdet under og så er du klar til at gå!

De fleste mennesker skal imidlertid foretage justeringer af deres motorer. Før vi gør det, lad os kort gennemgå, hvordan vores robots motorfunktion og kode fungerer.

Sådan får du robotten fremad? For at forstå dette spørgsmål, lad os først undersøge vores robotts fremadrettede bevægelse.

Diagrammet nedenfor illustrerer denne fremadgående bevægelse.

Trin 18:

Den røde pil ovenfor repræsenterer hjulets retning. Som det fremgår af kortet ovenfor, kan bilen kun bevæge sig fremad, hvis både venstre og højre hjul / motorer bevæger sig fremad. Som vist ovenfor bevæger Arduino robotten kun fremad, når både venstre og højre motor og hjul bevæger sig fremad.

Kode Synopsis

Den første linje af kode er:

#include // opkaldsbibliotek

Vi behøver ikke at tænke for meget om denne linje. Alt vi laver, kalder på / anvender et sæt funktioner - DFMobile-biblioteket - der eksisterer uden for Arduino's grundlæggende ramme. For mere information om Arduino biblioteker, se venligst Arduino hjemmeside.

Den næste linje af kode er:

DFMobile Robot (4,5,7,6); // Start motorstiften

Denne funktion er taget fra DFMobile-biblioteket (det er ikke en universel Arduino-funktion).Vi bruger det her til at initialisere motorstifterne (4, 5, 7, 6) på mikrocontrolleren - uden dette vil motoren ikke starte.

Vi bruger også denne funktion senere.

Tag et kig på funktionen nedenfor:

DFMobile Robot

(EnLeftPin, LeftSpeedPin, EnRightPin, RightSpeedPin);

Denne funktion bruges til at initialisere de fire motorstifter (4, 5, 7, 6) og er opdelt i fire separate parametre:

EnLeftPin: Pin, der styrer venstre motorretning

LeftSpeedPin: Pin, der styrer venstre motorhastighed

EnRightPin: Pin, der styrer højre motorretning

RightSpeedPin: Pin, der styrer højre motorhastighed

Bemærk: Robotens motorer kører ikke uden at medtage denne funktion. Også denne funktion skal placeres i feltet tomrumsopsætning () i din Arduino skitse.

Ved at teste din robot fremadgående bevægelse før, har vi måske opdaget et bestemt problem: bilen vil begynde at drive, ændre retninger og ikke helt følge den kode, vi har givet den. Dette skyldes, at motorledningerne ikke er loddet til batterierne på den rigtige måde.

Bare rolig - vi kan korrigere dette via kode. Ved at bruge LOW / HIGH værdier kan vi justere retningen af ​​bilens sving.

Sådan justeres den lige retning for robotbilen?

For at justere motoren og hjulets retning har vi brug for følgende kodekode:

RobotDirection (LOW, HIGH);

Funktionen er som følger:

RobotDirection (LeftDirection, RightDirection);

Denne funktion bruges til at gøre motoren bevæger sig fremad. Funktionen er opdelt i to parametre: LeftDirection & RightDirection, som er skrevet i Arduino-koden som enten LOW eller HIGH.

Tidligere gik vi kort over, hvordan man får Arduino robot'en ​​til at bevæge sig fremad. Her bruger vi LOW / HIGH til at korrigere robotens vejrgående bevægelse. For eksempel er LeftDirection indstillet som LOW i prøvekoden. Men robotbils venstre hjul kan rotere baglæns i stedet for at rotere fremad. Nu er alt du skal gøre, at ændre LeftDirection fra LOW to HIGH. De samme metoder ville gælde for de rigtige hjul.

For eksempel: I denne prøvekode er LeftDirection konfigureret som LOW. Antag, at dine venstre hjul, i stedet for at bevæge sig fremad, som de skulle, skal i stedet bevæge sig baglæns. I dette tilfælde skal du ændre konfigurationen af ​​LeftDirection fra LOW til HIGH. Når du har ændret det til HIGH, skal du uploade din kode igen - du skal bemærke, at dit venstre hjul bevæger sig fremad nu i stedet for bagud. Hvis denne justering virker, skal du gøre det samme for RightDirection (LOW to HIGH eller omvendt).

Når du har justeret din Arduino robot retning, er du klar! Tillykke - du kan nu bruge alle robotens grundlæggende funktioner. Men inden det er færdigt, er det værd at kort diskutere Robot.Speed ​​() -funktionen.

Tag en gander ved følgende funktion:

Robot.Speed ​​(LeftSpeed, RightSpeed);

Denne funktion med to elementer (LeftSpeed ​​og RightSpeed) bruges til at indstille motorens hastighed. Du kan skrive et tal mellem -255 og 255. 255 er maksimumsbilledet, og minustegnet repræsenterer retningen.

Denne funktion bruges til at konfigurere motorens hastighed. Funktionen er opdelt i to parametre: LeftSpeed ​​& RightSpeed. Disse parametre er skrevet i Arduino kode som en værdi fra -255 til 255. 255 er den hurtigste hastighed fremad; -255 er den hurtigste hastighed, der bevæger sig baglæns (det vil sige omvendt).

Vi har allerede konfigureret robotens hastighed i void setup () delen af ​​vores kode. Nu kan vi bruge hastigheden () til at styre bilens hastighed og endda fremad / baglæns retning.

Se om du kan forstå følgende to linjer:

Robot.Speed ​​(255.255);

Robot.Speed ​​(-255, -255);

Den første linje viser, at bilen bevæger sig fremad med fuld hastighed - fuld fart fremad, hvis du vil (ja, kaptajn). Den anden linje viser, at bilen bevæger sig baglæns (reversering) ved fuld hastighed.

I denne forstand er hastighed () en uundværlig funktion. Herefter gennemgår vi vores sidste afsnit: principperne bag, hvordan robotten bevæger sig og vender sig.

Hvordan robotten bevæger sig og vender sig

Nedenstående kort viser nogle regelmæssige bevægelsesmuligheder for robotbilen. For eksempel, hvis hastigheden af ​​venstre retning er nul, vil robotten dreje til venstre, hvis du tilbyder de rigtige hjul, nogle styrker for at bevæge sig fremad.

Følgende diagram viser et antal måder, hvor Arduino robotten kan bevæge sig og dreje. For eksempel, hvis hastigheden på venstre hjul er sat til 0, vil det medføre, at de rigtige hjul bevæger sig fremad - så vil Arduino robotten dreje mod venstre.

Trin 19:

Noget at overveje: Hvordan kan vi få din robot til at rotere i cirkler, mens den er stationær?

Endelig: Hvis du vil, kan du køre mere kode for at teste og kalibrere din egen robot bevægelse. Åbn filen "MotorTest2.ino". Denne kode skal hjælpe dig med bedre at forstå og måle mulighederne for fremadrettet og baglæns bevægelse, udover venstre og højre omdrejningstal. Med dette i tankerne skal du sætte disse dæk på vejen (eller gulvtæppet) og let rip!

Tillykke med, nu har du bygget din første robot! Det har bacis funktioner, der kunne bevæge sig fremad, bagud, drej til venstre og drej til højre.

Følelse spændt? I de næste par tutorials, vil vi lære dig at bygge en mere avanceret robot, der kunne undgå forhindringer og spore linje for eksempel.