Turinys:
- 1 žingsnis: ką reikia padaryti
- 2 žingsnis: supraskite sąvokas
- 3 žingsnis: reikalingi įrankiai
- 4 žingsnis: AVR kodavimo taisyklės
- 5 veiksmas: aparatinės įrangos jungtys:
- 6 žingsnis: kodas
- 7 žingsnis: vaizdo įrašas
Video: Utragarsinis vengimo robotas naudojant „Arduino“: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:48
Šioje pamokoje aš jums parodysiu, kaip patiems susidaryti kliūtis, išvengiant roboto! Mes naudosime „Arduino UNO“plokštę ir ultragarsinį jutiklį. Jei robotas aptinka priešais esantį objektą, naudodamas nedidelį servo variklį, jis nuskaito sritį į kairę ir į dešinę, kad surastų geriausią būdą pasukti. Jame taip pat yra pranešimo šviesos diodas, signalinis signalas, leidžiantis skambėti, kai aptinkamas objektas, ir mygtukas, skirtas pakeisti roboto funkciją (sustabdytas/judantis pirmyn).
Tai labai lengva padaryti!
1 žingsnis: ką reikia padaryti
Šiam projektui jums reikės:
- „Arduino UNO“(nusipirkite jį iš gearbest.com)
- Mini duonos lenta (nusipirkite ją iš gearbest.com)
- L298 variklio tvarkyklės modulis (nusipirkite jį iš gearbest.com)
- 2x nuolatinės srovės varikliai su ratukais HC-SR04 ultragarso jutiklis (pirkite jį iš gearbest.com)
- Mikro servo variklis (nusipirkite jį iš gearbest.com)
- Mygtukas Raudonas LED 220 omų rezistorius 9 V baterijos laikiklis (su maitinimo lizdu arba be jo)
- 8 tarpikliai (patinas ir patinas),
- 8 veržlės ir 8 varžtai, jums taip pat reikės vieno didelio (metalo)
sąvaržėlę ir karoliuką nugaros atraminiam ratui pagaminti.
Robotų bazei aš naudoju „Aliexpress“akrilo suspaudimą. Taip pat galite naudoti medžio ar metalo gabalą (arba dvi elektrines plokštes).
Viso projekto kaina yra apie 20 USD
Įrankiai: gręžimo mašinos superklijų įgulos vairuotojo karšto pistoleto klijai (neprivaloma)
Robotui įjungti naudosime 9 V akumuliatorių, nes jis yra mažas ir pigus, tačiau nėra labai galingas ir po maždaug valandos bus tuščias. Apsvarstykite, ar norite naudoti įkraunamą bateriją (min. 6V, maks. 7V), kuri bus galingesnė, bet taip pat brangesnė ir didesnė nei 9V baterija. Prenumeruokite Mūsų „YouTube“kanalas spustelėkite čia
2 žingsnis: supraskite sąvokas
Tikslas yra supažindinti robotą su priešais esančiomis kliūtimis, kad jis galėtų pakeisti kryptį ir jų išvengti. Ankstesniame straipsnyje mes privertėme robotą judėti - dabar mes suteiksime jam tam tikrą autonomiją.
Ultragarsinis jutiklis
HC-SR04 yra grandinė, galinti išmatuoti atstumą iki 4 metrų objektų naudojant ultragarso bangas. Jis siunčia ping (kaip povandeninis laivas) ir matuoja laiką (mikrosekundėmis) nuo siuntimo iki gavimo. Tada šis laikas padalijamas iš 2, kai banga keliauja pirmyn ir atgal. Tada padalinkite iš 29, kad gautumėte atstumą centimetrais (arba 74 coliais), nes garsas sklinda 29,4 µs per centimetrą (340 m/s). Jutiklis yra labai tikslus, su ~ 3 mm tolerancija ir lengvai integruojamas su „Arduino“.
Sąsajos ultragarso jutiklis su AVR mikrovaldikliu
Bet kuris autonominis robotas turėtų turėti kliūčių vengti ir pritvirtinti atstumo matavimo jutiklį. Infraraudonųjų spindulių siųstuvo-imtuvo pora arba pilkos spalvos jutiklis gali lengvai aptikti 1–10 cm diapazono kliūtis. Infraraudonųjų spindulių nuotolio ieškikliai (pavyzdžiui, aštrūs) gali išmatuoti atstumą iki artimiausios kliūties, atstumas iki 100 cm. Tačiau IR jutiklius veikia saulės šviesa ir kiti šviesos šaltiniai. IR diapazono ieškikliai turi mažesnį diapazoną ir yra brangūs už tai, ką jie daro. Ultragarsiniai jutikliai (taip pat žinomi kaip ultragarsiniai artumo jutikliai arba geonai) atlieka abi šias užduotis už priimtiną kainą ir išskirtinį tikslumą. Diapazonas yra nuo 3 cm iki 350 cm su ~ 3 mm tikslumu. Pririšę vieną iš šių ultragarso jutiklių į mūsų robotą, jis gali veikti ir kaip kliūčių vengėjas, ir kaip atstumo matavimo jutiklis.
„Ultragarsinis“garsas reiškia viską, kas viršija girdimo garso dažnius, ir paprastai apima viską, kas viršija 20 000 Hz arba 20 kHz! Robotai naudojami nebrangūs ultragarso jutikliai paprastai veikia nuo 40 kHz iki 250 kHz, o medicinos įrangoje naudojami iki 10 MHz.
3 žingsnis: reikalingi įrankiai
- Multimetras
- Bandomoji Lenta
- Adatos nosies replės
- Vielos nuėmiklis
- Vielos pjaustytuvas
- Klijų pistoletas
Multimetras iš tikrųjų yra paprastas prietaisas, pirmiausia naudojamas įtampai ir varžai matuoti ir nustatyti, ar grandinė uždaryta. Panašiai kaip ir kompiuterio kodo derinimas, multimetras padeda „derinti“jūsų elektronines grandines.
Statybinės medžiagos
Lengvai prieinamas plonos medienos ir (arba) organinio stiklo tiekimas mechaniniam rėmui pagaminti yra labai naudingas. Metalai, tokie kaip aliuminis ir plienas, dažnai naudojami tik tiems, kurie turi prieigą prie mašinų dirbtuvių, nors ploną aliuminį galima pjaustyti žirklėmis ir sulenkti rankomis. Mechaninius rėmus galima pastatyti net iš buitinių daiktų, tokių kaip plastikiniai indai.
Nors galimos ir kitos medžiagos, tokios kaip plastikas (išskyrus organinio stiklo pluoštą) arba egzotiškesnės medžiagos, tokios kaip stiklo pluoštas ir anglies pluoštas, šiame vadove jos nebus svarstomos. Keletas gamintojų pažymėjo, kad daugumai mėgėjų nėra lengva gaminti savo mechanines dalis ir sukūrė modulines mechanines dalis. Šios srities lyderis yra „Lynxmotion“, siūlantis platų robotų dizaino asortimentą ir dalis, kurių reikia norint sukurti savo pasirinktinius robotus.
Rankiniai įrankiai
Reikalingi įvairaus tipo ir dydžio atsuktuvai ir replės (įskaitant juvelyro įrankių rinkinį: mažus atsuktuvus, kuriuos paprastai galima įsigyti dolerio parduotuvėse). Taip pat svarbus gręžtuvas (pageidautina gręžimo presas tiesioms skylėms). Rankinis pjūklas statybinėms medžiagoms (arba frezai) pjauti taip pat yra svarbus turtas. Jei leidžia biudžetas, mažas stalinis juostinis pjūklas (200 USD diapazonas) tikrai yra priemonė, kurią reikia apsvarstyti.
Duonos lenta be litavimo
Lydmetalinė duonos lenta leidžia optimizuoti išdėstymą ir lengvai prijungti komponentus. Kartu su be litavimo duonos lenta turėtumėte įsigyti iš anksto suformuotą jungiamųjų laidų komplektą, kurį sudaro iš anksto supjaustyti ir sulenkti laidai, skirti naudoti su be litavimo duonos lenta. Tai labai palengvina ryšius.
Mažas atsuktuvų komplektas
Šie maži atsuktuvai yra būtini dirbant su elektronika. Tačiau neverskite jų per daug - dėl jų dydžio jie tampa trapesni.
Įprastas atsuktuvų komplektas
Visoms dirbtuvėms reikia kelių įrankių arba įrankių rinkinio, į kurį įeina plokščios / „Phillips“ir kitos atsuktuvų galvutės.
Adatos nosies replės
adatinių žnyplių rinkinys yra nepaprastai naudingas dirbant su mažais komponentais ir dalimis ir yra labai nebrangus jūsų įrankių rinkinio priedas. Jie skiriasi nuo įprastų replių, nes jie pasiekia tašką, kuris gali patekti į mažus plotus.
Vielos nuėmikliai/pjaustytuvai
Planuojate nutraukti bet kokius laidus, vielos nuėmiklis sutaupys daug laiko ir pastangų. Tinkamai naudojamas vielos nuėmiklis pašalins tik kabelio izoliaciją ir nesudarys sulenkimų ar nepažeis laidininkų. Kita vielos nuėmiklio alternatyva yra žirklės, nors galutinis rezultatas gali būti nepatogus. Žirklės, liniuotė, rašiklis, pieštukas, peilis „Exacto“(ar kitas rankinis pjovimo įrankis) Tai yra būtini dalykai bet kuriame biure.
4 žingsnis: AVR kodavimo taisyklės
Garso greičio apskaičiavimas, palyginti su ultragarso jutikliais
Mažai matematikos, bet nebijok. Tai paprasčiau, nei manote.
Garso greitis sausame ore kambario temperatūroje (~ 20 ° C) = 343 metrai per sekundę
Kad garso banga pasiektų ir sugrįžtų į netoliese esantį objektą, yra = 343/2 = 171,5 m/kadangi didžiausias pigaus ultragarso jutiklio nuotolis yra ne didesnis kaip 5 metrai (kelionė pirmyn ir atgal), būtų prasmingiau pakeisti vienetus į centimetrus ir mikrosekundes.
1 skaitiklis = 100 centimetrų 1) = 58.30903790087464 us/cm = 58.31 us/cm (suapvalinama iki dviejų skaitmenų, kad būtų lengviau apskaičiuoti)Todėl laikas, per kurį impulsas nukeliauja į objektą ir atsitraukia 1 centimetru, yra 58,31 mikrosekundė.
mažas AVR laikrodžių ciklų fonas
Norint suprasti AVR laikrodžio ciklus, reikia visiškai kito skyriaus, tačiau trumpai suprasime, kaip tai veikia, kad būtų lengviau apskaičiuoti
Pavyzdžiui, naudosime AVR Draco plokštę, kurioje yra 8 bitų AVR-Atmega328P mikrovaldiklis. Kad viskas būtų paprasta, mes nekeisime mikrovaldiklio nustatymų. Saugiklių antgaliai neliečiami; Nėra išorinio kristalo; Jokio galvos skausmo. Gamykliniuose nustatymuose jis veikia su vidiniu 8MHz osciliatoriumi su a /8 prescaler; Jei viso to nesuprantate, tai tiesiog reiškia, kad mikrovaldiklis veikia 1MHz vidiniu RC osciliatoriumi ir kiekvienas laikrodžio ciklas trunka 1 mikrosekundę.
1 2 1MHz = 1000000 ciklų per sekundę Todėl 1s/1000000 = 1/1000000 = 1us
AVR laikrodžiai ir atstumo konvertavimas
Mes beveik ten! Kai žinome, kaip AVR laikrodžio ciklus paversti garso bangų nuvažiuotu atstumu, logiką programoje įgyvendinti paprasta.
Mes žinome, kad ultragarso garso greitis idealioje aplinkoje yra: 58,31 us/cm
Mes žinome, kad AVR mikrovaldiklio skiriamoji geba yra 1US/laikrodžio ciklas (CLK)
Todėl garso nuvažiuotas atstumas per laikrodžio ciklą (CLK) yra:
1 2 3 = (58,31 us/ cm) x (1us/ clk) = 58,31 laikrodžio ciklas/ cm arba = 1/58,31 cm/ clk
Jei žinomas laikrodžio ciklų skaičius, kurio reikia, kad garsas skleistųsi ir sugrįžtų, mes galime lengvai apskaičiuoti atstumą. Pvz., Jei jutiklis važiuoja ir atšoka 1000 laikrodžio ciklų, atstumas nuo jutiklio iki artimiausio objekto yra = 1000/58,31 = 17,15 cm (apytiksliai)
Ar dabar viskas prasminga? Ne? Perskaitykite dar kartą
Jei suprantate visą aukščiau paminėtą logiką, mes ją įgyvendinsime realaus pasaulio scenarijuje, prijungę nebrangų ultragarsinį jutiklį HC-SR04 prie mūsų AVR „Arduino“plokštės.
5 veiksmas: aparatinės įrangos jungtys:
„Arduino Board“leidžia lengvai prijungti bet kokius išorinius jutiklius ir peržiūrėti rezultatus LCD ekrane. Ultragarso diapazono jutimui naudojame nebrangų HC-SR04 modulį. Modulis turi 4 kaiščius, kuriuos galima prijungti prie mikrovaldiklio plokštės: VCC, TRIG, ECHO ir GND.
Prijunkite VCC kaištį prie 5 V ir GND kaiščio prie žemės „Arduino“plokštėje.
TRIG kaištį ir ECHO kaištį galima prijungti prie bet kokių plokštėje esančių kaiščių. Jei siunčiate mažiausiai 10 „aukšto“signalo, kad suaktyvintumėte kaištį, siunčiamos aštuonios 40 kHz garso bangos ir aukštas echo kaištis. Jei garsas atsimuša į netoliese esantį objektą ir grįžta, jis užfiksuojamas priimant keitiklį ir aido kaištis ištraukiamas „žemai“.
Kiti ultragarso jutiklių modulių variantai taip pat galimi tik su 3 kaiščiais. Veikimo principas išlieka tas pats, tačiau trigerio ir aido kaiščių funkcionalumas yra sujungtas į vieną kaištį.
Prijungus „Trigger“ir „Echo Pins“galima konfigūruoti naudojant programinę įrangą. Kad šis pavyzdys būtų paprastas, šiame pavyzdyje nenaudosime jokių pertraukimo kaiščių (arba įvesties fiksavimo kaiščio). Nenaudojant nurodytų pertraukimo kaiščių, taip pat suteikiama laisvė prijungti modulį prie visų prieinamų kaiščių lentoje.
6 žingsnis: kodas
Toliau pateiktame kode yra tik „ultragarsinis“plėtinys nuolatinės srovės variklio valdymui, naudojant ankstesnio straipsnio „H-Bridge“. Kai robotas aptinka priešais esančią kliūtį, jis apsisuka (atsitiktiniu laipsniu) ir toliau juda į priekį. Šią funkciją būtų galima lengvai išplėsti, kad tuo pačiu metu būtų galima apsisukti ir aptikti kliūtis - taigi robotas nesisuktų atsitiktinai, o pradėtų judėti pirmyn tik tada, kai nebus aptiktas objektas.
Norėdami paaiškinti kodą, žiūrėkite „Youtube“vaizdo įrašą, pateiktą kanale.
7 žingsnis: vaizdo įrašas
Žiūrėkite vaizdo įrašą visam procesui.
Rekomenduojamas:
Kliūčių vengimo robotas naudojant ultragarsinį jutiklį (Proteus): 12 žingsnių
Kliūčių vengimo robotas naudojant ultragarsinį jutiklį (Proteus): paprastai visur susiduriame su kliūčių vengimo robotu. Šio roboto aparatinės įrangos modeliavimas yra konkurencijos dalis daugelyje kolegijų ir daugelyje renginių. Tačiau kliūčių roboto programinė įranga yra reta. Nors jei ir rasime kur nors
Kliūčių vengimo robotas („Arduino“): 8 žingsniai (su nuotraukomis)
Kliūčių vengimo robotas („Arduino“): Čia aš jums nurodysiu, kaip sukurti kliūčių vengimo robotą, pagrįstą „Arduino“. Tikiuosi, kad žingsnis po žingsnio padarysiu šį robotą labai paprastą. Kliūčių vengiantis robotas yra visiškai autonominis robotas, galintis išvengti bet kokių pastabų
OAREE - 3D spausdintas - kliūčių vengimo robotas inžineriniam mokymui (OAREE) su „Arduino“: 5 žingsniai (su paveikslėliais)
OAREE - 3D spausdintas - kliūčių vengimo robotas inžineriniam mokymui (OAREE) Su „Arduino“: OAREE (inžinerinio švietimo kliūčių vengimo robotas) Dizainas: Šios instrukcijos tikslas buvo suprojektuoti paprastą/kompaktišką OAR (kliūčių vengimo robotas) robotą, 3D spausdinamas, lengvai surenkamas, filmui naudojamos nuolat besisukančios servos
„GRECO“- „Arduino“objekto vengimo robotas pradedantiesiems: 6 žingsniai (su nuotraukomis)
„GRECO“- „Arduino“objektų vengimo robotas pradedantiesiems: Na, jei esate pradedantysis, čia rasite lengviausią būdą sukurti savo objektą, išvengiant roboto! Mes naudosime mini apvalią roboto važiuoklę su dviem nuolatinės srovės varikliais, kad ją būtų lengviau sukurti . Dar kartą pasirenkame naudoti garsiąją „Arduino UNO“plokštę. Mūsų
Balansavimo robotas / 3 ratų robotas / STEM robotas: 8 žingsniai
Balansavimo robotas / 3 ratų robotas / STEM robotas: Mes sukūrėme kombinuotą balansavimo ir 3 ratų robotą, skirtą naudoti mokyklose ir po pamokų. Robotas sukurtas naudojant „Arduino Uno“, pasirinktinį skydą (pateikiama visa konstrukcijos informacija), „Li Ion“akumuliatorių paketą (visa tai atitinka