Innholdsfortegnelse:

Arduino Line Follower Wallrides Classroom Whiteboard: 8 trinn (med bilder)
Arduino Line Follower Wallrides Classroom Whiteboard: 8 trinn (med bilder)

Video: Arduino Line Follower Wallrides Classroom Whiteboard: 8 trinn (med bilder)

Video: Arduino Line Follower Wallrides Classroom Whiteboard: 8 trinn (med bilder)
Video: Tony Hawk Skates First Downward Spiral Loop - BTS 2024, November
Anonim
Image
Image

Å følge linjen på bakken er for kjedelig!

Vi har prøvd å se på en annen vinkel på linjefølge og bringe dem til et annet fly - til skolens tavle.

Se hva som kom ut av det!

Trinn 1: Hva trenger du?

Hvordan montere? Monter chassis
Hvordan montere? Monter chassis

For en racerobot:

Mekanikk:

1 x 2WD miniQ Robot -chassis; Det er en multifunksjonell plattform for å lage enkle tohjulede roboter

2 x 6V mikro girmotor med 1: 150 reduksjonsforhold; Girmotorer som følger med miniQ -robotplattformen har et girforhold på 1:50 og er for raske. De bør erstattes av sterkere motorer, for eksempel med 1: 150 eller høyere girforhold. Jo høyere girutveksling, jo tregere kjører roboten på tavlen, men desto mindre er sjansen for at hjulene glir

4 x Neodymium magnet; Du trenger små 3 mm tykkelsesmagneter med 12 mm diameter (for de med en rund form) eller med 12 mm siden (for de med en firkantet form). Magneter bør også ha et hull for maskinskruen med et forsenket hode, vanligvis for M3. Noen ganger angir produsenter styrken til magnetkoblingen. Det bør være i området 2 kg til 2,4 kg

Elektronikk:

1 x Arduino UNO; Den innebygde datamaskinen. Den mest populære prototypeplattformen

1 x Octoliner -modul; Øyne og frontlykter på racerboten. Octoliner er en kul linjesensor som består av 8 separate infrarøde sensorer som styres via et I2C -grensesnitt

1 x motorskjerm; Nesten hvilken som helst modul passer deg. Jeg brukte denne analoge basert på L298p -brikken

1 x 2-cellers 7,4V LiPo-batteri; Det kan gi en stor strøm som motorer trenger for å overvinne tiltrekningen av magnetene. Det 2-cellers batteriet har en spenning i området 7,4V til 8,4V. Det er nok for 6V-motorer og den innebygde spenningsregulatoren på Arduino-kortet. Enhver kapasitet kan velges. Jo rommelig batteriet er, jo lengre kjører roboten, men merk at for stort batteri kan være tungt. Kapasiteten i området 800mAh til 1300mAh er optimal

Diverse:

4 x Mann-Kvinne ledning;

4 x M3-avstandsstykke eller Mann-Kvinne-avstand med 10 mm lengde;

3 x M3-avstandsstykke eller Mann-Kvinne-avstand med 25 mm lengde eller mer;

4 x M3x8 forsenket flatskrue;

1 x M3 Nylon skrue;

1 x M3 nylon sekskantmutter;

Eventuelle M3 -skruer og sekskantmuttere

For et klasserom:

Magnetisk tavle som henger på veggen;

Tykke svarte magnetiske brettmarkører;

Spesiell LiPo batterilader eller flere ladere hvis du vil lage mange roboter og lade dem separat

Trinn 2: Hvordan montere? Monter chassis

Først må du montere miniQ-chassisplattformen som forhåndsskifter motorer fra settet med kraftigere med girforholdet 1: 150. Ikke glem å lodde ledningene til motorens kontakter!

Trinn 3: Hvordan montere? Installer magneter

Hvordan montere? Installer magneter
Hvordan montere? Installer magneter

Installer magneter på miniQ -plattformen. Bruk M3x10 distanser, M3x8 eller M3x6 flatskruer og M3 muttere. Nødvendige installasjonshull er vist på bildet.

Det er viktig!

Lengden på avstandene skal være nøyaktig 10 mm. Etter å ha installert magneter, test plattformen på tavlen. Alle de fire magnetene skal ligge ved siden av magnetbrettet, og gummidekkene på hjulene på miniQ -plattformen bør være forhåndslastet og gi en viss friksjon med brettoverflaten.

Flytt roboten manuelt over brettet. Under turen skal ikke magnetene komme av brettet. Hvis det kommer en magnet, betyr det at gummidekkene på hjulene lastes maksimalt. I dette tilfellet øker du 10 mm avstanden til alle avstandene med 1 eller 2 mm ved å legge til et par M3 -skiver og prøve igjen.

Trinn 4: Hvordan montere? Legg til elektronikk

Hvordan montere? Legg til elektronikk
Hvordan montere? Legg til elektronikk

Monter Arduino UNO -kortet på plattformen ved hjelp av M3x25 -avstandsstykker, M3 -skruer og M3 -muttere. Ikke bruk korte avstander, la det være litt plass under ledningen og batteriet under Arduino -kortet.

Installer motorskjermen på Arduino UNO -kortet.

Installer Octoliner -modulen. Trykk den mot plattformen ved hjelp av en nylon M3 skrue og mutter.

Det er viktig!

Ikke bruk metallfester for å montere Octoliner. Noen monteringshull på utbruddskortet er loddet og brukes som IO -pinner. For å forhindre kortslutning, bruk plastlås, for eksempel nylon.

Trinn 5: Hvordan montere? Kabling

Hvordan montere? Kabling
Hvordan montere? Kabling

Koble til alle elektroniske komponenter som vist i diagrammet. Octoliner -modulen er koblet via 4 ledninger (GND, 5V, SDA, SCL) til Arduino UNO. Koble motorer til motorskjermen. LiPo -batteriet er koblet til kontaktputene til den eksterne strømforsyningen på motorskjermen, så vel som til VIN -pinnen på Arduino -kortet. I stedet for å bruke VIN -pinnen, kan du bruke 5,5 mm x 2,1 mm strømplugg på brettet.

Det er viktig!

Når du bruker motorskjermen, trenger du ikke ledninger. To motorkanaler styres av 4 pinner. 2 PWM -pinner er ansvarlige for rotasjonshastigheten mens 2 DIR -pinner for rotasjonsretningen. Vanligvis er de allerede knyttet til spesifikke Arduino Board -pinner, og indeksnummerene kan variere avhengig av produsenten av skjoldet. For eksempel, for mitt motorskjerm, er tallene D4 D5 (DIR og PWM for den første kanalen) og D7 D6 (DIR og PWM for den andre kanalen). For det originale Arduino -motorskjermet tilsvarer pinnetallene D12 D3 (DIR og PWM for den første kanalen) og D13 D11 (DIR og PWM for den andre kanalen).

Det er viktig!

Hobby LiPo -batterier har ikke et omvendt polaritetsbeskyttelseskort! Utilsiktet kortslutning av de positive og negative kontaktene vil føre til permanent batterisvikt eller brann.

Trinn 6: Hvordan programmere? XOD

Å lage et program for en slik racerobot er enda enklere enn å montere det.

I alle prosjektene mine bruker jeg XOD visuelt programmeringsmiljø som lar meg lage Arduino -programmer grafisk uten å skrive kode. Dette miljøet er ideelt for rask prototyping av enheter eller læring av programmeringsalgoritmer. Følg XOD -dokumentasjonsnettstedet for å lese mer.

For å programmere denne roboten må du bare legge til ett bibliotek amperka/octoliner i XOD -arbeidsområdet. Det er nødvendig for arbeid med en åtte-kanals linjesensor.

Trinn 7: Hvordan programmere? Lapp

Hvordan programmere? Lapp
Hvordan programmere? Lapp

Programmet er basert på prinsippet om en PID-kontrolleroperasjon. Hvis du vil vite hva PID-kontrolleren er og hvordan den fungerer, kan du lese en annen artikkel om dette emnet.

Ta en titt på oppdateringen med robotprogrammet. La oss se hvilke noder som er tilstede på den og hvordan det hele fungerer.

octoliner-line

Det er en hurtigstartnode fra amperka/octoliner XOD-biblioteket som representerer Octoliner-modulen som sporer linjen. Den sender ut "linjesporingsverdi" som ligger i området -1 til 1. Verdien 0 viser at linjen er i senterposisjon i forhold til de infrarøde sensorene på Octoliner -kortet (mellom CH3 og CH4). -1 -verdien tilsvarer posisjonen ekstrem venstre (CH0) mens 1 til ekstrem høyre (CH1). Ved oppstartsnode initialiserer optokoblingssensorene og setter opp standard lysstyrke- og følsomhetsparametere. Inngangene for denne noden er I2C -adressen til enheten (ADDR for Octoliner -kortet er 0x1A) og oppdateringshastigheten for linjesporingsverdi (UPD), jeg satte den kontinuerlig.

Verdiene for linjesporing mates direkte til pid-kontroller-noden.

pid-kontrolleren

Denne noden implementerer arbeidet til PID-kontrolleren i XOD. Målverdien (TARG) for den er 0. Det er tilstanden når linjen er nøyaktig i sentrum under roboten. Hvis linjesporingsverdien er 0, tilbakestilles PID-kontrolleren via RST-pin. Hvis linjesporingsverdien er forskjellig fra 0, konverterer PID-kontrolleren den ved hjelp av Kp, Ki, Kd koeffisienter til motorhastighetsverdiene. Koeffisientverdiene ble valgt eksperimentelt og lik 1, 0,2 og 0,5. Oppdateringshastigheten (UPD) for PID-kontrolleren er satt til kontinuerlig.

Den behandlede verdien av PID-kontrolleren trekkes fra 1 og legges til 1. Det gjøres for å desynkronisere motorer for å få dem til å rotere i motsatte retninger når linjen er tapt. Verdien 1 i disse nodene representerer motorens maksimale hastighet. Du kan redusere hastigheten ved å skrive inn den lavere verdien.

h-bridge-dc-motor

Et par av disse nodene er ansvarlige for å kontrollere venstre og høyre robotmotorer. Her angir du PWM- og DIR -pinverdiene som motorskjoldet fungerer gjennom.

Flash -oppdateringen og prøv racingboten din. Hvis du nøyaktig følger monteringsinstruksjonene, trenger du ikke å endre oppdateringen eller justere PID-kontrolleren. De angitte innstillingene er ganske optimale.

Det ferdige programmet finnes i bibliotekets gabbapeople/whiteboard-løp

Trinn 8: Showcase og tips

Anbefalt: