INHOUDSOPGAWE:

Arduino Line Follower Wallrides Klaskamer witbord: 8 stappe (met foto's)
Arduino Line Follower Wallrides Klaskamer witbord: 8 stappe (met foto's)

Video: Arduino Line Follower Wallrides Klaskamer witbord: 8 stappe (met foto's)

Video: Arduino Line Follower Wallrides Klaskamer witbord: 8 stappe (met foto's)
Video: Autonomous Garbage Truck 2024, November
Anonim
Image
Image

Dit is te vervelig om die lyn op die grond te volg!

Ons het probeer om 'n ander hoek na lynvolgers te kyk en na 'n ander vliegtuig te bring - na die skool se witbord.

Kyk wat het daarvan gekom!

Stap 1: Wat het u nodig?

Hoe om te monteer? Monteer die onderstel
Hoe om te monteer? Monteer die onderstel

Vir een renrobot:

Meganika:

1 x 2WD miniQ robot onderstel; Dit is 'n multi-funksionele platform om eenvoudige tweewielige robotte te skep

2 x 6V -mikromotor met 'n 1: 150 verminderingsverhouding; Tandwielmotors wat by die miniQ -robotplatform ingesluit word, het 'n ratverhouding van 1:50 en is te vinnig. Hulle moet vervang word deur sterker motors, byvoorbeeld met die 1: 150 of hoër ratverhouding. Hoe hoër die ratverhouding, hoe stadiger ry die robot op die witbord, maar hoe minder is die kans dat die wiele gly

4 x Neodymium magneet; U benodig klein magnete van 3 mm dik met 'n deursnee van 12 mm (vir diegene met 'n ronde vorm) of met die 12 mm -kant (vir diegene met 'n vierkantige vorm). Magnete moet ook 'n gat vir die masjienskroef hê met 'n versinkte kop, gewoonlik vir die M3 -een. Soms spesifiseer vervaardigers die sterkte van die magneetkoppeling. Dit moet tussen 2 kg en 2,4 kg wees

Elektronika:

1 x Arduino UNO; Die boordrekenaar. Die gewildste prototipe -platform

1 x Octoliner -module; Oë en kopligte van u wedrenbot. Octoliner is 'n koel lynsensor wat bestaan uit 8 afsonderlike infrarooi sensors wat via 'n I2C -koppelvlak beheer word

1 x motorskerm; Byna enige module pas by u. Ek het hierdie analoog gebruik op grond van die L298p -chip

1 x 2-sel 7,4V LiPo-battery; Dit kan 'n groot stroom gee wat motors nodig het om die aantrekkingskrag van die magnete te oorkom. Die 2-sel battery het 'n spanning van 7,4V tot 8,4V. Dit is genoeg vir 6V-motors en die ingeboude spanningsreguleerder op die Arduino-bord. Enige kapasiteit kan gekies word. Hoe ruim die battery, hoe langer ry die robot, maar let op dat die battery te swaar kan wees. Die kapasiteit van 800 tot 1300 mAh is optimaal

Diverse:

4 x Man-vroulike draad;

4 x M3-afstandhouer of man-vroulike afstand met die 10 mm lengte;

3 x M3-afstandhouer of man-vrou-afstand met 'n lengte van 25 mm of meer;

4 x M3x8 versinkte platkopskroef;

1 x M3 Nylon skroef;

1 x M3 nylon hex moer;

Enige M3 skroewe en seskantmoere

Vir 'n klaskamer:

Magnetiese witbord wat aan die muur hang;

Dik swart magnetiese bordmerkers;

Spesiale LiPo -batterylaaier of veelvoudige laaiers as u baie robotte wil maak en dit afsonderlik wil laai

Stap 2: Hoe om te monteer? Monteer die onderstel

Eerstens moet u die miniQ-onderstelplatform bymekaarmaak wat motors vooraf uit die stel vervang met kragtiger motors met die 1: 150-ratverhouding. Moenie vergeet om die drade aan die motors se kontakte te soldeer nie!

Stap 3: Hoe om te monteer? Installeer magnete

Hoe om te monteer? Installeer magnete
Hoe om te monteer? Installeer magnete

Installeer die magnete op die miniQ -platform. Gebruik M3x10 afstande, M3x8 of M3x6 plat versinkte skroewe en M3 moere. Die vereiste installasiegate word op die foto getoon.

Dit is belangrik!

Die lengte van die afstande moet presies 10 mm wees. Nadat u die magnete geïnstalleer het, toets die platform op die witbord. Al vier die magnete moet langs die magnetiese bord wees, en die rubberbande op die wiele van die miniQ -platform moet vooraf gelaai word en 'n mate van wrywing op die oppervlak van die bord bied.

Beweeg robot handmatig oor die bord. Tydens die rit moet die magnete nie van die bord afkom nie. As 'n magneet afgaan, beteken dit dat die rubberbande op die wiele maksimum laai. Vergroot in hierdie geval die afstand van 10 mm van alle afstande met 1 of 2 mm deur 'n paar M3 -ringe by te voeg en probeer weer.

Stap 4: Hoe om te monteer? Voeg elektronika by

Hoe om te monteer? Voeg elektronika by
Hoe om te monteer? Voeg elektronika by

Monteer die Arduino UNO Board op die platform met behulp van M3x25 afstande, M3 skroewe en M3 moere. Moenie kort afstande gebruik nie, laat 'n bietjie ruimte onder die Arduino -bord vir drade en batterye.

Installeer die motorskerm op die Arduino UNO -bord.

Installeer die Octoliner -module. Druk dit teen die platform met 'n nylon M3 -skroef en moer.

Dit is belangrik!

Moenie metaalbevestigingsmiddels gebruik om die Octoliner te monteer nie. Sommige bevestigingsgate op die uitbreekbord word gesoldeer en as IO -penne gebruik. Om kortsluitings te voorkom, gebruik plastiekbevestigingsmiddel, byvoorbeeld nylon.

Stap 5: Hoe om te monteer? Bedrading

Hoe om te monteer? Bedrading
Hoe om te monteer? Bedrading

Koppel alle elektroniese komponente soos in die diagram getoon. Die Octoliner -module is via 4 drade (GND, 5V, SDA, SCL) verbind met die Arduino UNO. Koppel motors aan op die motorskerm. Die LiPo -battery is gekoppel aan die kontakblokke van die eksterne kragtoevoer op die motorskerm sowel as die VIN -pen op die Arduino -bord. In plaas van die VIN -pen te gebruik, kan u die 5,5 mm x 2,1 mm -kragprop op die bord gebruik.

Dit is belangrik!

By die gebruik van die motorskerm is geen drade nodig nie. Twee motorkanale word deur 4 penne beheer. 2 PWM -penne is verantwoordelik vir die rotasiesnelheid, terwyl 2 DIR -penne die draairigting is. Gewoonlik is hulle reeds gekoppel aan spesifieke Arduino Board -penne, en hul indeksgetalle kan verskil, afhangende van die vervaardiger van die skild. Byvoorbeeld, vir my Motor shield is die getalle D4 D5 (DIR en PWM vir die eerste kanaal) en D7 D6 (DIR en PWM vir die tweede kanaal). Vir die oorspronklike Arduino Motor -skild stem die penne ooreen met D12 D3 (DIR en PWM vir die eerste kanaal) en D13 D11 (DIR en PWM vir die tweede kanaal).

Dit is belangrik!

Hobby LiPo -batterye het nie 'n beskerming teen omgekeerde polariteit nie! Die toevallige korting van die positiewe en negatiewe kontakte sal permanente batteryversaking of brand tot gevolg hê.

Stap 6: Hoe om te programmeer? XOD

Dit is selfs makliker om 'n program vir so 'n wedrenrobot te maak as om dit saam te stel.

In al my projekte gebruik ek die XOD visuele programmeringsomgewing waarmee ek Arduino -programme grafies kan skep sonder om kode te skryf. Hierdie omgewing is ideaal vir 'n vinnige prototipe van toestelle of leerprogrammeringsalgoritmes. Volg die XOD -dokumentasie -webblad om meer te lees.

Om hierdie robot te programmeer, moet u net een biblioteek amperka/octoliner by u XOD -werkruimte voeg. Dit is nodig vir werk met 'n agt-kanaals lynsensor.

Stap 7: Hoe om te programmeer? Pleister

Hoe om te programmeer? Pleister
Hoe om te programmeer? Pleister

Die program is gebaseer op die beginsel van 'n PID-beheerder. As u wil weet wat die PID-beheerder is en hoe dit werk, kan u 'n ander artikel oor hierdie onderwerp lees.

Kyk na die pleister met die robotprogram. Kom ons kyk watter nodusse daarin voorkom en hoe dit alles werk.

octoliner-lyn

Dit is 'n snelstartknooppunt uit die amperka/octoliner XOD-biblioteek wat die Octoliner-module verteenwoordig wat die lyn volg. Dit gee die "lynopsporingswaarde" af wat in die reeks van -1 tot 1. lê. Die 0 -waarde toon dat die lyn in die middelste posisie is relatief tot die infrarooi sensors op die Octoliner -bord (tussen CH3 en CH4). Die -1 -waarde stem ooreen met die uiterste linkerposisie (CH0) terwyl die 1 tot die uiterste regterkant (CH1). By opstartknoop initialiseer die optokoppelaarsensors en stel hul standaard parameters vir helderheid en sensitiwiteit op. Die insette vir hierdie knoop is die I2C -adres van die toestel (ADDR vir die Octoliner -bord is 0x1A) en die opdateringsnelheid van die lynopsporingswaarde (UPD), ek stel dit deurlopend in.

Die lynopsporingswaardes word direk na die pid-kontroleerder-node gevoer.

pid-beheerder

Hierdie knoop wat die werk van die PID-beheerder in XOD implementeer. Die teikenwaarde (TARG) daarvoor is 0. Dit is die toestand wanneer die lyn presies in die middel onder die robot is. As die lynopsporingswaarde 0 is, word die PID-beheerder teruggestel via die RST-pen. As die lynopsporingswaarde verskil van 0, skakel die PID-beheerder dit om met behulp van Kp, Ki, Kd koëffisiënte in die motorsnelheidwaardes. Die koëffisiënte waardes is eksperimenteel gekies en gelyk aan 1, 0.2 en 0.5, onderskeidelik. Die opdateringsnelheid (UPD) van die PID-beheerder is ingestel op deurlopend.

Die verwerkte waarde van die PID-kontroleerder word afgetrek van die 1 en bygevoeg by die 1. Dit word gedoen om motors te sinchroniseer sodat hulle in teenoorgestelde rigtings kan draai wanneer die lyn verlore gaan. Die 1 -waarde in hierdie nodusse verteenwoordig die maksimum snelheid van die motors. U kan die snelheid verminder deur die laer waarde in te voer.

h-brug-dc-motor

'N Paar van hierdie nodusse is verantwoordelik vir die bestuur van die linker- en regtermotors. Stel hier die PWM- en DIR -penwaardes in waardeur u motorskerm werk.

Flits die pleister en probeer u wedrenbot. As u die monteerinstruksies presies volg, hoef u nie die pleister te verander of die PID-beheerder aan te pas nie. Die gespesifiseerde instellings is redelik optimaal.

Die voltooide program kan gevind word in die biblioteek se gabbapeople/whiteboard-races

Stap 8: Uitstalling en wenke

Aanbeveel: