Innholdsfortegnelse:
Video: Lag en Maze Runner -robot: 3 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Labyrintløsende roboter stammer fra 1970-tallet. Siden den gang har IEEE holdt konkurranser om løsning av labyrinter kalt Micro Mouse Contest. Målet med konkurransen er å designe en robot som finner midtpunktet til en labyrint så raskt som mulig. Algoritmene som brukes til å raskt løse labyrinten, faller vanligvis i tre kategorier; tilfeldig søk, labyrintkartlegging og høyre eller venstre vegg etter metoder.
Den mest funksjonelle av disse metodene er veggen som følger. I denne metoden følger roboten høyre eller venstre sidevegg i labyrinten. Hvis utgangspunktet er koblet til labyrintens yttervegger, vil roboten finne utgangen. Dette appnotatet bruker den riktige veggen etter metoden.
Maskinvare
Denne applikasjonen bruker:
- 2 skarpe analoge avstandssensorer
- Sporingssensor
- Koder
- Motorer og motorfører
- Silego GreenPAK SLG46531V
- Spenningsregulator, robotchassis.
Vi vil bruke den analoge avstandssensoren til å bestemme avstandene til høyre og frontvegg. Sharp -avstandssensorene er et populært valg for mange prosjekter som krever nøyaktige avstandsmålinger. Denne IR -sensoren er mer økonomisk enn sonaravstandsmålere, men den gir mye bedre ytelse enn andre IR -alternativer. Det er et ikke -lineært, omvendt forhold mellom sensorens utgangsspenning og den målte avstanden. Plottet som viser forholdet mellom sensorutgangen og den målte avstanden er vist i figur 1.
En hvit linje mot en svart fargebunn er satt som målet. Vi vil bruke sporingssensoren til å oppdage den hvite linjen. Sporingssensoren har fem analoge utganger, og de utsendte dataene påvirkes av avstanden og fargen på det detekterte objektet. De oppdagede punktene med høyere infrarød refleksjon (hvit) vil føre til en høyere utgangsverdi, og den lavere infrarøde refleksjonen (svart) vil føre til en lavere utgangsverdi.
Vi vil bruke pololu -hjulkoderen til å beregne avstanden roboten reiser. Dette kvadraturkoderkortet er designet for å fungere med pololu mikro -metallgirmotorer. Den fungerer ved å holde to infrarøde reflektanssensorer inne i navet på et Pololu 42 × 19 mm hjul og måle bevegelsen av de tolv tennene langs hjulets felg.
Et motordriver -kretskort (L298N) brukes til å kontrollere motorene. INx -pinnene brukes til å styre motorene, og ENx -pinnene brukes til å angi motorens hastighet.
Dessuten brukes en spenningsregulator for å redusere spenningen fra batteriet til 5V.
Trinn 1: Beskrivelse av algoritme
Denne instruksen inneholder den høyre veggen som følger. Dette er basert på å organisere retningsprioritet ved å foretrekke den riktigste retningen. Hvis roboten ikke kan oppdage veggen til høyre, svinger den til høyre. Hvis roboten oppdager den høyre veggen og det ikke er noen vegg foran, går den fremover. Hvis det er en vegg til høyre for roboten og fronten, svinger den til venstre.
En viktig merknad er at det ikke er noen vegg for referanse etter at roboten nettopp har dreid til høyre. Derfor oppnås "å svinge til høyre" i tre trinn. Gå fremover, sving til høyre, gå videre.
I tillegg må roboten holde avstand til veggen når den beveger seg fremover. Dette kan gjøres ved å justere den ene motoren til å være raskere eller langsommere enn den andre. Den endelige tilstanden til flytskjemaet er vist i figur 10.
En Maze Runner Robot kan enkelt implementeres med en enkelt GreenPAK-konfigurerbar IC med blandet signal (CMIC). Du kan gå gjennom alle trinnene for å forstå hvordan GreenPAK -brikken er programmert til å kontrollere Maze Runner Robot. Imidlertid, hvis du bare vil lage Maze Runner Robot uten å forstå alle de indre kretsene, kan du laste ned GreenPAK -programvare for å se den allerede fullførte Maze Runner Robot GreenPAK -designfilen. Koble datamaskinen til GreenPAK Development Kit og trykk på programmet for å lage den tilpassede ICen for å kontrollere Maze Runner Robot. Det neste trinnet vil diskutere logikken i maze Runner Robot GreenPAK -designfilen for de som er interessert i å forstå hvordan kretsen fungerer.
Trinn 2: GreenPAK Design
GreenPAK -designet består av to deler. Disse er:
- Tolkning / behandling av data fra avstandssensorer
- ASM -tilstander og motorutganger
Tolkning / behandling av data fra avstandssensorer
Det er viktig å tolke dataene fra avstandssensorene. Robotens bevegelser er overveid i henhold til avstandssensorene. Siden avstandssensorene er analoge, vil vi bruke ACMP -er. Robottens posisjon i forhold til veggen bestemmes ved å sammenligne spenningene til sensorene med de forhåndsbestemte terskelspenningene.
Vi vil bruke 3 ACMPs;
- For å oppdage frontveggen (ACMP2)
- For å oppdage høyre vegg (ACMP0)
- For å beskytte avstanden til høyre vegg (ACMP1)
Siden ACMP0 og ACMP1 er avhengig av den samme avstandssensoren, brukte vi den samme IN+ -kilden for begge komparatorene. Konstant signalendring kan forhindres ved å gi ACMP1 25mv hysterese.
Vi kan bestemme retningssignalene basert på ACMP -utgangene. Kretsen vist i figur 12 viser flytdiagrammet som er skissert i figur 7.
På samme måte er kretsen som angir posisjonen til roboten i forhold til høyre vegg vist i figur 13.
ASM -tilstander og motorutganger
Denne applikasjonen bruker Asynchronous State Machine, eller ASM, for å kontrollere roboten. Det er 8 tilstander i ASM, og 8 utganger i hver tilstand. Output RAM kan brukes til å justere disse utgangene. Statene er listet opp nedenfor:
- Start
- Kontroll
- Gå bort fra høyre vegg
- Nær høyre vegg
- Ta til venstre
- Gå fremover-1
- Ta til høyre
- Gå fremover-2
Disse tilstandene bestemmer utgangen til motorføreren og leder roboten. Det er 3 utganger fra GreenPAK for hver motor. To bestemmer motorens retning, og den andre utgangen bestemmer motorens hastighet. Motorbevegelsen i henhold til disse utgangene er vist i følgende tabeller:
ASM Output RAM er avledet fra disse tabellene. Det er vist i figur 14. I tillegg til motorførerne er det ytterligere to utganger. Disse utgangene går til de tilsvarende forsinkelsesblokkene for å la roboten reise en viss avstand. Utgangene til disse forsinkelsesblokkene er også koblet til ASM -innganger.
PWM -er ble brukt til å justere motorens hastighet. ASM ble brukt til å bestemme hvilken PWM motoren skulle kjøre på. PWMA-S- og PWMB-S-signalene er satt til mux select bits.
Trinn 3:
I dette prosjektet opprettet vi en labyrintløsende robot. Vi tolket data fra flere sensorer, kontrollerte robottilstanden med GreenPAKs ASM og kjørte motorene med en motordriver. Generelt brukes mikroprosessorer i slike prosjekter, men en GreenPAK har noen fordeler i forhold til en MCU: den er mindre, rimeligere og kan behandle sensorutgangen raskere enn en MCU.
Anbefalt:
Lag din egen tilkoblede oppvarmingstermostat og spar med oppvarming: 53 trinn (med bilder)
Lag din egen tilkoblede oppvarmingstermostat og spar med varme: Hva er formålet? Øk komforten ved å varme opp huset ditt akkurat som du vil Spar penger og reduser klimagassutslippene ved å varme opp huset ditt bare når du trenger Hold kontroll på oppvarmingen uansett hvor du er Vær stolt over at du gjorde det
Lag din egen Retro Nixie -klokke med en RTC !: 7 trinn (med bilder)
Lag din egen Retro Nixie -klokke med en RTC !: I dette prosjektet vil jeg vise deg hvordan du lager en retro nixie -klokke. Det betyr at jeg vil vise deg hvordan du kan kontrollere nixie -rør med en høyspent likestrøm, og så vil jeg kombinere 4 nixie -rør med en Arduino, en sanntidsklokke (RTC) og en kopp
Tilpassbar Laser Maze Med Arduino og Android App: 13 trinn (med bilder)
Tilpassbar Laser Maze Med Arduino og Android App: Se mye labyrint fra barnebøker til automatisk labyrintløsningsrobot. Her prøver jeg noe annerledes der jeg løser en labyrint ved hjelp av laserrefleksjon. Når jeg synes det er veldig enkelt i begynnelsen, men det gjør det billig, koster det mer tid for nøyaktighet. Hvis noen vil
Arduino Pocket Game Console + A -Maze - Maze Game: 6 trinn (med bilder)
Arduino Pocket Game Console + A -Maze - Maze Game: Velkommen til min første instruerbare! Prosjektet jeg vil dele med deg i dag er Arduino labyrintspill, som ble en lommekonsoll like dyktig som Arduboy og lignende Arduino -baserte konsoller. Det kan bli blinket med mine (eller dine) fremtidige spill takket være utstillingen
Lag stereografiske bilder i Excel: 8 trinn (med bilder)
Lag stereografiske bilder i Excel: Stereo grafiske bilder kan legge til dybde i 3D -tomter