Sisukord:

Arduino - Labürindilahendusrobot (MicroMouse) Seinale järgnev robot: 6 sammu (koos piltidega)
Arduino - Labürindilahendusrobot (MicroMouse) Seinale järgnev robot: 6 sammu (koos piltidega)

Video: Arduino - Labürindilahendusrobot (MicroMouse) Seinale järgnev robot: 6 sammu (koos piltidega)

Video: Arduino - Labürindilahendusrobot (MicroMouse) Seinale järgnev robot: 6 sammu (koos piltidega)
Video: Maze Solving Robot - Advanced Algorithm || Detects obstacles on Left & Right #arduinoproject 2024, Juuli
Anonim
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot
Arduino | Labürindilahendusrobot (MicroMouse) Seinale järgnev robot

Tere tulemast, ma olen Isaac ja see on minu esimene robot "Striker v1.0". See robot oli mõeldud lihtsa labürindi lahendamiseks. Võistlusel oli meil kaks labürinti ja robot suutis need tuvastada. Kõik muud muudatused labürindis võib vajada koodi ja kujunduse muutmist, kuid seda on lihtne teha.

Samm: osad

Osad
Osad
Osad
Osad
Osad
Osad

Kõigepealt peate teadma, millega te tegelete.

Robotid = elekter + riistvara + tarkvara1- elekter: akudel on palju spetsifikatsioone, peaksite teadma ainult seda, kui palju voolu ja pinget vajate.

2- Riistvara: "Kere, mootor, mootorijuht, andurid, juhtmed ja kontroller" peaksite hankima ainult selle ülesande jaoks olulised osad, lihtsa ülesande jaoks pole vaja hankida uhket kallist kontrollerit.

3- Tarkvara: kood hõlmab loogikat. Kui olete kontrolleri toimimisest aru saanud, on teil lihtne funktsioone valida ja koodi lihtsamaks muuta. Koodikeele määrab kontrolleri tüüp.

Osade loend:

  1. Arduino UNO
  2. 12v alalisvoolumootorid (x2)
  3. Rattad (x2)
  4. Mootori juht (L298N)
  5. Kaugusandur (ultraheli)
  6. Juhtmed
  7. 12v aku (1000 mAh)

Tööriistade loend:

  1. Akulaadija
  2. Akrüülist leht
  3. Jootekolb
  4. Traadi lõikur
  5. Nailonist tõmblukk

Täiendava lõbutsemise huvides saate selle valgustamiseks kasutada LED -e, kuid see pole eriti oluline.

2. samm: keha kujundus

Kere disain
Kere disain
Kere disain
Kere disain
Kere disain
Kere disain

Põhiidee oli virnastada osad keha kohale ja kasutada Nylon Zip Wrap -i, et stabiliseerida Arduino ja juhtmed stabiliseerivad ülejäänud tänu oma kergele kaalule.

Kasutasin korpuse kujundamiseks CorelDRAW -d Ja tegin tulevaste muudatuste korral täiendavad augud.

Läksin kohalikku töökotta laserlõikurit kasutama, siis hakkasin seda kõike kokku ehitama. Hiljem tegin mõned muudatused, sest mootorid olid oodatust pikemad. Tahan öelda, et teie robotit ei pea ehitama samamoodi nagu minu oma.

PDF -fail ja CorelDRAW -fail on lisatud.

Kui te ei saa disaini laseriga lõigata, ärge muretsege. Kuni teil on Arduino, samad andurid ja mootorid, peaksite saama minu koodi väikeste muudatustega teie roboti kallal tööle panna.

3. etapp: rakendamine (ehitamine)

Rakendamine (ehitamine)
Rakendamine (ehitamine)
Rakendamine (ehitamine)
Rakendamine (ehitamine)
Rakendamine (ehitamine)
Rakendamine (ehitamine)

Disain hõlbustas andurite kinnitamist kehale.

4. samm: juhtmestik

Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik

Siin on roboti skemaatiline diagramm. need ühendused on koodiga seotud. Saate ühendusi muuta, kuid muutke kindlasti ka koodi. Osad. Andurid

Tahaksin selgitada "Ultraheli andurit"

Ultraheliandur on seade, mis suudab helilainete abil mõõta objekti kaugust. See mõõdab kaugust, saates teatud sagedusel helilaine ja kuulab, et see helilaine tagasi põrkaks. Salvestades genereeritud helilaine ja tagasilöögi vahel kulunud aja. See tundub sarnane Sonari ja Radari tööga.

Ultraheli anduri ühendamine Arduinoga:

  1. GND tihvt on ühendatud maandusega.
  2. VCC tihvt on ühendatud positiivse (5v) külge.
  3. Echo pin on ühendatud Arduinoga. (valige suvaline tihvt ja sobitage see koodiga)
  4. TRIG pin on ühendatud Arduinoga. (valige suvaline tihvt ja sobitage see koodiga)

Teete ühise maanduse ja ühendate sellega kõik GND -d (andurid, Arduino, draiver), kõik maandused peaksid olema ühendatud.

Vcc -tihvtide jaoks ühendage ka 3 andurit 5 -voldise tihvtiga

(saate need ühendada Arduino või draiveriga, mida soovitan draiver)

Märkus: Ärge ühendage andureid pingega üle 5 V, vastasel juhul on see kahjustatud.

Mootori juht

L298N H-sild: see on IC, mis võimaldab teil juhtida kahe alalisvoolumootori kiirust ja suunda või hõlpsalt ühe bipolaarse samm-mootori juhtimist. L298N H-silla draiverit saab kasutada mootoritega, mille pinge on vahemikus 5 ja 35 V alalisvool.

Olemas on ka 5V regulaator, nii et kui teie toitepinge on kuni 12 V, saate ka 5 V toiteplaadilt.

Kaaluge pilti - sobitage numbrid pildi all oleva loendiga:

  1. Alalisvoolumootor 1 “+”
  2. Alalisvoolumootor 1 “-”
  3. 12v hüppaja - eemaldage see, kui kasutate toitepinget üle 12v DC. See võimaldab pardal olevat 5v regulaatorit
  4. Ühendage siin oma mootori toitepinge, maksimaalselt 35v DC.
  5. GND
  6. 5v väljund, kui 12v hüppaja paigas
  7. Alalisvoolumootor 1 lubab hüppaja. Eemaldage hüppaja ja ühendage alalisvoolumootori kiiruse reguleerimiseks PWM -väljundiga.
  8. IN1 suuna juhtimine
  9. IN2 suuna juhtimine
  10. IN3 suuna juhtimine
  11. IN4 suuna juhtimine
  12. Alalisvoolumootor 2 lubab hüppaja. Eemaldage hüppaja ja ühendage alalisvoolumootori kiiruse reguleerimiseks PWM -väljundiga
  13. Alalisvoolumootor 2 “+”
  14. Alalisvoolumootor 2 “-”

Märkus. See draiver lubab 1A kanali kohta, rohkem voolu tühjendamine kahjustab IC -d.

Aku

Kasutasin 12v akut 1000 mAh.

Ülaltoodud tabel näitab, kuidas pinge langeb aku tühjenemisel. peaksite seda meeles pidama ja akut pidevalt laadima.

Tühjendusaeg on põhimõtteliselt Ah või mAh jagatud vooluga.

Nii et 1000 mAh aku puhul, mille koormus on 300 mA, on teil:

1000/300 = 3,3 tundi

Kui tühjendate rohkem voolu, väheneb aeg jne. Märkus. Veenduge, et te ei ületaks aku tühjenemisvoolu, vastasel juhul on see kahjustatud.

Samuti tehke uuesti ühine maandus ja ühendage sellega kõik GND -d (andurid, Arduino, draiver), kõik maandused tuleks ühendada.

Samm: kodeerimine

Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine

Ma tegin neist funktsioonid ja mul oli lõbus seda robotit kodeerida.

Põhiidee on vältida seintele löömist ja labürindist väljumist. Meil oli 2 lihtsat labürinti ja pidin seda meeles pidama, sest need olid erinevad.

Sinine labürint kasutab parema seina järgimise algoritmi.

Punane labürint kasutab vasaku seina järgimise algoritmi.

Ülaltoodud foto näitab väljapääsu mõlemas labürindis.

Koodivoog:

  1. tihvtide määratlemine
  2. väljundi ja sisendi tihvtide määratlemine
  3. kontrollige andurite näitu
  4. kasutage seinte määratlemiseks andurite näitu
  5. kontrollige esimest marsruuti (kui see jäi vasakule, siis järgige vasakut seina, kui see on parem, järgige paremat seina)
  6. Kasutage PID -d, et vältida seintele löömist ja mootorite kiirust

Saate seda koodi kasutada, kuid parimate tulemuste saamiseks muutke tihvte ja konstantseid numbreid.

Koodi saamiseks järgige seda linki.

create.arduino.cc/editor/is7aq_shs/391be92…

Raamatukogu ja Arduino koodifaili jaoks järgige seda linki.

github.com/Is7aQ/Maze-Solving-Robot

6. samm: nautige

Veenduge, et teil oleks lõbus: DSee on lõbu pärast. Ärge paanitsege, kui see ei tööta või on midagi valesti. jälgige viga ja ärge loobuge. Täname lugemise eest ja loodan, et see aitas. Kontakt:

E-post: [email protected]

Soovitan: