Sisukord:
- Samm: asjad, mis on vaja teha
- 2. samm: mõistete mõistmine
- Samm: vajalikud tööriistad
- 4. samm: AVR -i kodeerimise juhised
- Samm: riistvaraühendused:
- 6. samm: kood
- Samm: video
Video: Urdraalse vältimise robot Arduino abil: 7 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Selles õpetuses näitan teile, kuidas teha oma takistusi robotit vältides! Kasutame Arduino UNO plaati ja ultraheli andurit. Kui robot tuvastab enda ees objekti, skaneerib ta väikese servomootori abil ala vasakule ja paremale, et leida parim viis pöördumiseks. Sellel on ka teavitus -LED, helisignaal, mis esitab objekti tuvastamisel tooni, ja nupp roboti funktsiooni muutmiseks (peatatud/edasi liikumine).
Selle valmistamine on väga lihtne!
Samm: asjad, mis on vaja teha
Selle projekti jaoks vajate:
- Arduino UNO (ostke see saidilt gearbest.com)
- Mini leivalaud (ostke see saidilt gearbest.com)
- L298 mootori draiverimoodul (ostke see saidilt gearbest.com)
- 2x alalisvoolumootorid ratastega ultraheli anduriga HC-SR04 (ostke see saidilt gearbest.com)
- Mikroservomootor (ostke see saidilt gearbest.com)
- Nupp Punane LED 220 oomi takisti 9V akuhoidik (toitepistikuga või ilma)
- 8 vahetükki (mees-naine),
- 8 mutrit ja 8 kruvi vajate ka ühte suurt (metallist)
kirjaklamber ja helmes tagumise tugiratta valmistamiseks.
Robotibaasi jaoks kasutasin Aliexpressi Acryllic Chasist. Võite kasutada ka puidust või metallist tükki (või kahte elektrilist plaati).
Kogu projekti maksumus on umbes 20 dollarit
Tööriistad: puurmasina superliimi meeskonna juhi kuum püstoliim (valikuline) Toide:
Me kasutame oma roboti sisselülitamiseks 9 V akut, kuna see on väike ja odav, kuid see pole eriti võimas ja tühjeneb umbes ühe tunni pärast. Mõelge, kas soovite kasutada laetavat akut (min 6V, max 7V), mis on võimsam, kuid on ka kallim ja suurem kui 9V aku. Telli meie YouTube'i kanal Vajuta siia
2. samm: mõistete mõistmine
Eesmärk on teadvustada robotile tema ees olevaid takistusi, et ta saaks suunda muuta ja neid vältida. Eelmises artiklis panime roboti liikuma - nüüd anname talle mõningase autonoomia.
Ultraheli andur
HC-SR04 on ahel, mis suudab ultrahelilainete abil mõõta kaugust objektideni kuni 4 meetrit. See saadab ping (nagu allveelaev) ja mõõdab aega (mikrosekundites) mis tahes tagasisaatmise ja vastuvõtmise vahel. Seejärel jagatakse see aeg 2 -ga, kui laine liigub edasi -tagasi. Seejärel jagage 29 -ga, et saada kaugus sentimeetrites (või 74 tolli korral), sest heli liigub 29,4 µs sentimeetri kohta (340 m/s). Andur on väga täpne ~ 3 mm tolerantsiga ja lihtne Arduinoga integreerida.
Liidesega ultraheliandur koos AVR -mikrokontrolleriga
Igal autonoomsel robotil peaks olema takistuste vältimine ja kauguse mõõtmise andur. Infrapuna-vastuvõtja paar või halltoonide andur võivad hõlpsasti töötada takistuste tuvastamisel vahemikus 1–10 cm. Infrapunakaugusmõõturid (näiteks teravad) võivad mõõta kaugust lähimast takistusest vahemikus kuni 100 cm. Kuid IR -andureid mõjutavad päikesevalgus ja muud valgusallikad. IR -kaugusmõõturid on väiksema ulatusega ja ka kulukad. Ultraheliandurid (tuntud ka kui ultraheli lähedusandurid või geekide sonarid) täidavad mõlemaid ülesandeid mõistliku hinna ja erakordse täpsusega. Vahemik on vahemikus 3 cm kuni 350 cm, täpsusega ~ 3 mm. Sidudes ühe neist ultraheli anduritest meie robotisse, võib see toimida nii takistuste vältija kui ka kaugusemõõtja andurina.
„Ultraheli” viitab kõigele, mis ületab kuuldava heli sagedusi, ja sisaldab nominaalselt kõike üle 20 000 Hz või 20 kHz! Robootikas kasutatavad odavad ultraheli andurid töötavad tavaliselt vahemikus 40 kHz kuni 250 kHz, samas kui meditsiiniseadmetes kasutatavad andurid on kuni 10 MHz.
Samm: vajalikud tööriistad
- Multimeeter
- Leivalaud
- Nõela nina tangid
- Traadi eemaldaja
- Traadi lõikur
- Liimipüstol
Multimeeter on tegelikult lihtne seade, mida kasutatakse peamiselt pinge ja takistuse mõõtmiseks ning vooluahela sulgemise kindlakstegemiseks. Sarnaselt arvutikoodi silumisele aitab multimeeter teil elektroonilisi ahelaid siluda.
Ehitusmaterjalid
Mehaanilise raami valmistamiseks on kergesti kättesaadav õhukese puidu ja/või pleksiklaasi pakkumine. Metallid, nagu alumiinium ja teras, on sageli piiratud masinatega juurdepääsetavate metallidega, kuigi õhukest alumiiniumi saab kääridega lõigata ja käsitsi painutada. Mehaanilisi raame saab ehitada isegi majapidamistarvetest, näiteks plastmahutitest.
Kuigi on võimalik kasutada ka muid materjale, nagu plastid (peale pleksiklaaside) või eksootilisemaid materjale nagu klaaskiud ja süsinikkiud, ei käsitleta neid käesolevas juhendis. Mitmed tootjad on märkinud, et enamikul harrastajatel pole lihtne oma mehaanilisi osi toota ja nad on loonud moodulmehaanilisi osi. Liider selles valdkonnas on Lynxmotion, mis pakub laias valikus robotite disainilahendusi ja osi, mis on vajalikud teie kohandatud robotite valmistamiseks.
Käsitööriistad
Vajalikud on erinevat tüüpi ja suurusega kruvikeerajad ja tangid (sealhulgas juveliiri tööriistakomplekt: väikesed kruvikeerajad, mis on tavaliselt saadaval dollaripoodides). Samuti on oluline puur (eelistatavalt puuripress sirgete aukude jaoks). Käsisaag ehitusmaterjalide (või ruuteri) lõikamiseks on samuti oluline vara. Kui eelarve seda võimaldab, on väike lauaga lintsaag (vahemikus 200 dollarit) kindlasti kaalutlusvahend.
Jooteta leivalaud
Jooteta leivaplaat võimaldab teil optimeerida oma paigutust ja hõlpsasti komponente ühendada. Koos jootmiseta leivaplaadiga peaksite ostma eelnevalt vormitud hüppajajuhtmete komplekti, mis koosneb eelnevalt lõigatud ja painutatud juhtmetest, mis on ette nähtud kasutamiseks jooteta leivaplaadiga. See muudab ühendamise väga lihtsaks.
Väike kruvikeeraja komplekt
Need väikesed kruvikeerajad on vajalikud elektroonikaga töötamisel. Kuid ärge sundige neid liiga palju - nende suurus muudab need habrasemaks.
Tavaline kruvikeerajate komplekt
Kõik töökojad vajavad mitut tööriista või tööriistakomplekti, mis sisaldab lamedaid / ristlõikeid ja muid kruvikeerajate päid.
Nõela nina tangid
nõelatangide komplekt on väga kasulik väikeste komponentide ja osadega töötamisel ning see on väga odav lisand teie tööriistakastile. Need erinevad tavalistest tangidest, kuna jõuavad punkti, mis võib sattuda väikestesse piirkondadesse.
Traadi eemaldajad/lõikurid
Te plaanite juhtmeid katkestada, traadist eemaldaja säästab märkimisväärselt aega ja vaeva. Traadi eemaldaja, kui seda õigesti kasutada, eemaldab ainult kaabli isolatsiooni ja ei tekita mingeid vigu ega kahjusta juhtmeid. Teine alternatiiv traadist eemaldajale on käärid, kuigi lõpptulemus võib olla segane. Käärid, joonlaud, pliiats, pliiats, Exacto nuga (või muu käeshoitav lõikeriist) Need on hädavajalikud asjad igas kontoris.
4. samm: AVR -i kodeerimise juhised
Heli kiiruse arvutamine ultraheli andurite suhtes
Väike matemaatika, kuid ärge kartke. See on lihtsam kui arvate.
Heli kiirus kuivas õhus toatemperatuuril (~ 20 ° C) = 343 meetrit sekundis
Et helilaine lööks ja teeks edasi -tagasi reisi lähedalasuvale objektile, on = 343/2 = 171,5 m/kuna odava ultrahelisensori maksimaalne tööulatus ei ületa 5 meetrit (edasi -tagasi), oleks mõistlikum muutke ühikuid sentimeetriteks ja mikrosekunditeks.
1 meeter = 100 sentimeetrit 1 sekund = 10^6 mikrosekundit = (s/171,5) x (m/100 cm) x ((1x10^6)/s) = (1/171,5) x (1/100) x (1000000/ 1) = 58.30903790087464 us/cm = 58,31 us/cm (ümardamine kahekohaliseks, et lihtsustada arvutamist)Seetõttu on impulsi objektini liikumiseks ja 1 sentimeetri võrra tagasipöördumiseks kuluv aeg 58,31 mikrosekundit.
väike taust AVR -i tsüklite kohta
AVR -i kellatsüklite mõistmiseks kulub täiesti erinev peatükk, kuid mõistame lühidalt, kuidas see meie arvutuste hõlbustamiseks toimib
Näiteks kasutame AVR Draco plaati, millel on 8-bitine AVR-Atmega328P mikrokontroller. Et asi oleks lihtne, ei muuda me mikrokontrolleri seadeid. Kaitsmeotsikuid ei puudutatud; Välist kristalli pole kinnitatud; Peavalu pole. Tehaseseadete korral töötab see sisemisel 8MHz ostsillaatoril, millel on a /8 eelskaler; Kui te sellest kõigest aru ei saa, tähendab see lihtsalt seda, et mikrokontroller töötab 1MHz sisemise RC -ostsillaatoriga ja iga taktsükkel võtab 1 mikrosekundi.
1 2 1MHz = 1000000 tsüklit sekundis Seetõttu 1s/1000000 = 1/1000000 = 1us
AVR kellad ja kauguse teisendamine
Oleme peaaegu kohal! Kui me teame, kuidas AVR -i kellatsükleid teisendada helilainete läbitud vahemaaks, on loogika rakendamine programmis lihtne.
Me teame, et ultraheli kiirus ideaalses keskkonnas on: 58,31 us/cm
Me teame, et AVR -i mikrokontrolleri eraldusvõime on 1us/taktsükkel (CLK)
Seetõttu on heli läbitud vahemaa ühe tsükli kohta (CLK) järgmine:
1 2 3 = (58,31 USA/ cm) x (1us/ clk) = 58,31 kella tsüklit/ cm või = 1/ 58,31 cm/ clk
Kui heli liikumiseks ja tagasipöördumiseks kuluvate kellatsüklite arv on teada, saame kauguse hõlpsalt välja arvutada. Näiteks kui anduril kulub liikumiseks ja tagasipöördumiseks 1000 kellatsüklit, on kaugus andurist lähima objektini = 1000/58,31 = 17,15 cm (ligikaudu)
Kas nüüd on kõigel mõtet? Ei? Lugege uuesti
Kui teil on kõik ülaltoodud loogika selge, rakendame selle reaalses stsenaariumis, ühendades odava HC-SR04 ultrahelianduri meie AVR Arduino plaadiga.
Samm: riistvaraühendused:
Arduino Board võimaldab hõlpsalt ühendada väliseid andureid ja vaadata tulemusi ka LCD -ekraanilt. Ultraheli ulatuse tuvastamiseks kasutame odavat HC-SR04 moodulit. Moodulil on 4 tihvti, mida saab ühendada mikrokontrolleri plaadiga: VCC, TRIG, ECHO ja GND.
Ühendage VCC tihvt 5 V ja GND tihvt Arduino tahvli maandusega.
TRIG -tihvti ja ECHO -tihvti saab ühendada tahvli mis tahes saadaolevate tihvtidega. Vähemalt 10us kõrge signaali saatmine tihvti käivitamiseks saadab kaheksa 40 kHz helilainet ja tõmbab kajapinge kõrgele. Kui heli põrkab lähedalasuvast objektist tagasi ja naaseb, haaratakse see vastuvõtjaanduri abil ja kajapinge tõmmatakse madalale.
Muud ultraheliandurite moodulite variandid on saadaval ka ainult 3 tihvtiga. Tööpõhimõte on endiselt sama, kuid päästiku ja kaja tihvtide funktsionaalsus on ühendatud üheks tihvtiks.
Pärast ühendamist saab käivitus- ja kajapinge konfigureerida tarkvara kaudu. Selle näite lihtsuse tagamiseks ei kasuta me selles näites katkestusnööpe (või sisendhõive tihvti). Määratud katkestusnõelte mittekasutamine annab meile ka vabaduse ühendada moodul kõigi tahvlil olevate tihvtidega.
6. samm: kood
Allolev kood sisaldab ainult „ultraheli” laiendit alalisvoolumootori juhtimiseks, kasutades eelmise artikli H-silda. Kui robot tuvastab ees oleva takistuse, pöörab ta ringi (juhuslikult) ja jätkab edasiliikumist. Seda funktsionaalsust saab hõlpsasti laiendada, et hoida samaaegselt pööret ja avastada takistusi - nii ei pööraks robot juhuslikult, vaid hakkab edasi liikuma alles siis, kui objekti ei tuvastata.
Koodi selgituse saamiseks vaadake Youtube'i videot, mis on kanalil loetletud.
Samm: video
Vaadake videot kogu protsessi jaoks.
Soovitan:
Takistuste vältimise robot ultrahelianduri abil (Proteus): 12 sammu
Takistuste vältimise robot, kasutades ultraheliandurit (Proteus): üldiselt kohtame takistuste vältimise robotit igal pool. Selle roboti riistvaraline simulatsioon on osa konkurentsist paljudes kolledžites ja paljudel üritustel. Kuid takistusroboti tarkvara simulatsioon on haruldane. Isegi kui me selle kuskilt leiame
Takistuste vältimise robot (Arduino): 8 sammu (piltidega)
Takistuste vältimise robot (Arduino): Siin juhendan teid Arduino põhjal takistuste vältimise roboti tegemisel. Loodan teha samm -sammult juhiseid selle roboti valmistamiseks väga lihtsal viisil. Takistuste vältimise robot on täielikult autonoomne robot, mis suudab vältida igasuguseid takistusi
Väikseim ja armsam Arduino takistuste vältimise robot kunagi: 5 sammu
Väikseim ja armsam Arduino takistuste vältimise robot kunagi: olete väsinud suurtest kohmakatest robotitest, mis võtavad teie toas pool riiulit? Kas olete valmis oma roboti kaasa võtma, kuid see lihtsalt ei mahu teie taskusse? Palun! Esitan teile Miniboti, kõige armsama ja väikseima takistuste vältimise roboti, mida võite kunagi ette võtta
Hääljuhtimisega Arduino robot + WiFi -kaamera + haarats + APP ja käsitsi kasutamise ja takistuste vältimise režiim (KureBas Ver 2.0): 4 sammu
Hääljuhtimisega Arduino robot + WiFi -kaamera + haarats + APP ja käsitsi kasutamise ja takistuste vältimise režiim (KureBas Ver 2.0): KUREBAS V2.0 on tagasi Ta on uute funktsioonidega väga muljetavaldav. Tal on haarats, Wifi kaamera ja uus rakendus, mis talle toodeti
Arduino takistuste vältimise robot (täiendusversioon): 7 sammu (koos piltidega)
Arduino takistuste vältimise robot (täiendusversioon): see postitus avaldatakse esmakordselt sellel veebisaidil https://truescience22.blogspot.com/2018/01/arduino-obstacle-avoiding-robotupgrade.html Tere sõbrad, täna tegin Arduino täiendatud versiooni Robotite vältimine. See on lihtne, kuid mõned funktsioonid ja