INHOUDSOPGAWE:

Maak 'n Maze Runner -robot: 3 stappe (met foto's)
Maak 'n Maze Runner -robot: 3 stappe (met foto's)

Video: Maak 'n Maze Runner -robot: 3 stappe (met foto's)

Video: Maak 'n Maze Runner -robot: 3 stappe (met foto's)
Video: Maak het spel Maze Runner met Python en PyGame 2024, November
Anonim
Maak 'n Maze Runner -robot
Maak 'n Maze Runner -robot
Maak 'n Maze Runner -robot
Maak 'n Maze Runner -robot
Maak 'n Maze Runner -robot
Maak 'n Maze Runner -robot
Maak 'n Maze Runner -robot
Maak 'n Maze Runner -robot

Robotte wat dooloplos, kom uit die sewentigerjare. Sedertdien hou die IEEE kompetisies vir die oplossing van doolhowe, die Micro Mouse Contest. Die doel van die wedstryd is om 'n robot te ontwerp wat die middelpunt van 'n doolhof so vinnig as moontlik vind. Die algoritmes wat gebruik word om die doolhof vinnig op te los, val tipies in drie kategorieë; ewekansige soektog, doolhofkartering en regter- of linkermuur volgens metodes.

Die mees funksionele van hierdie metodes is die muurvolgende metode. In hierdie metode volg die robot die regter- of linkerkantwand in die doolhof. As die uitgangspunt aan die buitemure van die doolhof gekoppel is, vind die robot die uitgang. Hierdie appnota gebruik die regte muurvolgende metode.

Hardeware

Hierdie aansoek gebruik:

  • 2 Skerp analoog afstandsensors
  • Tracker sensor
  • Encoder
  • Motors en motorbestuurder
  • Silego GreenPAK SLG46531V
  • Spanningsreguleerder, robot onderstel.

Ons sal die analoog afstandsensor gebruik om die afstande na die regter- en voormuur te bepaal. Die skerp afstandsensors is 'n gewilde keuse vir baie projekte wat akkurate afstandmetings vereis. Hierdie IR -sensor is meer ekonomies as sonarafstandmeters, maar bied baie beter werkverrigting as ander IR -alternatiewe. Die diagram toon die verband tussen die sensoruitset en die gemete afstand, word in figuur 1 getoon.

'N Wit streep teen 'n swart kleurgrond word as teiken gestel. Ons sal die spoorsnyer gebruik om die wit lyn op te spoor. Die trackersensor het vyf analoog uitsette, en die uitgesette data word beïnvloed deur die afstand en die kleur van die bespeurde voorwerp. Die bespeurde punte met 'n hoër infrarooi refleksie (wit) sal 'n hoër uitsetwaarde veroorsaak, en die laer infrarooi reflektansie (swart) sal 'n laer uitsetwaarde veroorsaak.

Ons sal die pololu -wielkodeerder gebruik om die afstand wat die robot aflê, te bereken. Hierdie kwadratuur -enkodeerderbord is ontwerp om te werk met pololu mikro -metaal -ratmotors. Dit funksioneer deur twee infrarooi reflektansiesensors in die naaf van 'n Pololu 42 × 19mm wiel te hou en die beweging van die twaalf tande langs die wiel se rand te meet.

'N Motorbestuurderbord (L298N) word gebruik om die motors te bestuur. Die INx -penne word gebruik om die motors te rig, en die ENx -penne word gebruik om die motorsnelheid in te stel.

'N Spanningsreguleerder word ook gebruik om die spanning van die battery tot 5V te verminder.

Stap 1: Beskrywing van algoritme

Algoritme beskrywing
Algoritme beskrywing
Algoritme beskrywing
Algoritme beskrywing
Algoritme beskrywing
Algoritme beskrywing
Algoritme beskrywing
Algoritme beskrywing

Hierdie instruksie bevat die volgende metode van die regte muur. Dit is gebaseer op die organisering van rigtingprioriteit deur die mees korrekte rigting te verkies. As die robot nie die muur aan die regterkant kan opspoor nie, draai dit na regs. As die robot die regte muur opspoor en daar is geen muur voor nie, gaan dit vorentoe. As daar 'n muur regs van die robot en die voorkant is, draai dit na links.

'N Belangrike opmerking is dat daar geen muur vir verwysing is nadat die robot net na regs gedraai het nie. Daarom word 'regs draai' in drie stappe bewerkstellig. Beweeg vorentoe, draai regs, beweeg vorentoe.

Boonop moet die robot sy afstand van die muur hou wanneer hy vorentoe beweeg. Dit kan gedoen word deur die een motor vinniger of stadiger aan te pas as die ander motor. Die finale toestand van die vloeidiagram word in figuur 10 getoon.

'N Maze Runner-robot kan baie maklik geïmplementeer word met 'n enkele GreenPAK-konfigureerbare gemengde sein IC (CMIC). U kan deur alle stappe gaan om te verstaan hoe die GreenPAK -chip geprogrammeer is om Maze Runner Robot te beheer. As u egter net eenvoudig die Maze Runner Robot wil skep sonder om al die binnekringe te verstaan, laai GreenPAK -sagteware af om die reeds voltooide Maze Runner Robot GreenPAK -ontwerplêer te sien. Koppel u rekenaar aan die GreenPAK Development Kit en druk op die program om die pasgemaakte IC te skep om u Maze Runner Robot te beheer. Die volgende stap bespreek die logika in die Maze Runner Robot GreenPAK -ontwerplêer vir diegene wat belangstel om te verstaan hoe die stroombaan werk.

Stap 2: GreenPAK -ontwerp

GreenPAK -ontwerp
GreenPAK -ontwerp
GreenPAK -ontwerp
GreenPAK -ontwerp
GreenPAK -ontwerp
GreenPAK -ontwerp

Die GreenPAK -ontwerp bestaan uit twee dele. Hierdie is:

  • Interpretasie / verwerking van data vanaf afstandsensors
  • ASM -state en motoruitsette

Interpretasie / verwerking van data vanaf afstandsensors

Dit is belangrik om die data van die afstandsensors te interpreteer. Die bewegings van die robot word beraadslaag volgens die uitsette van die afstandsensors. Aangesien die afstandsensors analoog is, gebruik ons die ACMP's. Die posisie van die robot relatief tot die muur word bepaal deur die spanning van die sensors met die voorafbepaalde drempelspannings te vergelyk.

Ons sal 3 ACMP's gebruik;

  • Om die voorste muur (ACMP2) op te spoor
  • Om die regte muur op te spoor (ACMP0)
  • Om die afstand van die regte muur (ACMP1) te beskerm

Aangesien ACMP0 en ACMP1 van dieselfde afstandsensor afhanklik is, het ons dieselfde IN+ -bron vir beide vergelykers gebruik. Konstante seinverandering kan voorkom word deur ACMP1 25mv histerese te gee.

Ons kan die rigtingseine bepaal op grond van die uitsette van die ACMP's. Die stroombaan getoon in figuur 12 beeld die vloeidiagram uit wat in figuur 7 uiteengesit word.

Op dieselfde manier word die stroombaan wat die posisie van die robot ten opsigte van die regterwand aandui, in figuur 13 getoon.

ASM -state en motoruitsette

Hierdie toepassing gebruik die Asynchronous State Machine, of ASM, om die robot te beheer. Daar is 8 state in die ASM en 8 uitsette in elke toestand. Die Output RAM kan gebruik word om hierdie uitsette aan te pas. Die state word hieronder gelys:

  • Begin
  • Beheer
  • Beweeg weg van die regter muur
  • Naby die regte muur
  • Draai links
  • Beweeg vorentoe-1
  • Draai regs
  • Beweeg vorentoe-2

Hierdie state bepaal die uitset na die motorbestuurder en stuur die robot. Daar is 3 uitsette van die GreenPAK vir elke motor. Twee bepaal die rigting van die motor, en die ander uitset bepaal die snelheid van die motor. Die motoriese beweging volgens hierdie uitsette word in die volgende tabelle getoon:

Die ASM -uitvoer RAM is afgelei van hierdie tabelle. Dit word getoon in figuur 14. Benewens die motorbestuurders is daar nog twee uitsette. Hierdie uitsette gaan na die ooreenstemmende vertragingsblokke sodat die robot 'n sekere afstand kan aflê. Die uitsette van hierdie vertragingsblokke is ook gekoppel aan ASM -insette.

PWM's is gebruik om die motorspoed aan te pas. Die ASM is gebruik om te bepaal op watter PWM die motor sou werk. Die PWMA-S en PWMB-S seine is ingestel op die mux select bits.

Stap 3:

Beeld
Beeld

In hierdie projek het ons 'n robot opgestel wat die doolhof kan oplos. Ons het data van verskeie sensors geïnterpreteer, die toestand van die robot beheer met die GreenPAK se ASM en die motors met 'n motorbestuurder bestuur. Oor die algemeen word mikroverwerkers in sulke projekte gebruik, maar 'n GreenPAK het 'n paar voordele bo 'n MCU: dit is kleiner, meer bekostigbaar en kan die sensoruitset vinniger verwerk as 'n MCU.

Aanbeveel: