Tartalomjegyzék:
- Lépés: Készítendő dolgok
- 2. lépés: A fogalmak megértése
- 3. lépés: Szükséges eszközök
- 4. lépés: Az AVR kódolásának szabályai
- 5. lépés: Hardvercsatlakozások:
- 6. lépés: Kód
- 7. lépés: Videó
Videó: Utrazonikus elkerülő robot Arduino használatával: 7 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:42
Ebben az oktatóanyagban megmutatom, hogyan készíthet saját akadályt a robot elkerülése érdekében! Az Arduino UNO kártyát és az ultrahangos érzékelőt fogjuk használni. Ha a robot egy tárgyat észlel előtte, egy kis szervomotor segítségével, a bal és jobb oldali területet pásztázza, hogy megtalálja a legjobb fordulási módot. Rendelkezik továbbá értesítő LED -del, hangjelzéssel, amikor tárgyat észlel, és egy gombbal a robot funkciójának megváltoztatásához (leállt/előrehaladás).
Nagyon könnyű elkészíteni!
Lépés: Készítendő dolgok
Ehhez a projekthez szüksége lesz:
- Arduino UNO (vásárolja meg a gearbest.com webhelyen)
- Mini kenyeretábla (vásárolja meg a gearbest.com webhelyen)
- L298 motorvezérlő modul (vásárolja meg a gearbest.com webhelyen)
- 2x egyenáramú motor kerekekkel HC-SR04 ultrahangos érzékelő (vásárolja meg a gearbest.com oldalon)
- Mikro szervomotor (vásárolja meg a gearbest.com oldalon)
- Gomb Piros LED220 Ohm ellenállás 9V elemtartó (hálózati csatlakozóval vagy anélkül)
- 8 távtartó (férfi-nő),
- 8 anya és 8 csavar, egy nagy (fém)
gemkapcsot és gyöngyöt a hátsó támasztókerék elkészítéséhez.
A robotbázishoz az Aliexpress Acryllic Chasis -ját használtam. Használhat egy darab fát vagy fémet (vagy két elektromos lemezt).
A teljes projekt költsége körülbelül 20 dollár
Eszközök: Fúrógép szuper ragasztó személyzet vezető forró pisztoly ragasztó (opcionális)
A robotot 9 V -os akkumulátorral fogjuk bekapcsolni, mert kicsi és olcsó, de nem túl erős, és körülbelül egy óra múlva lemerül. Fontolja meg, ha újratölthető akkumulátort (min. 6V, max 7V) szeretne használni, amely erősebb lesz, de drágább és nagyobb, mint a 9V -os akkumulátor. Feliratkozás YouTube -csatornánk Kattintson ide
2. lépés: A fogalmak megértése
A cél az, hogy a robot tudatosítsa az előtte lévő akadályokat, így irányt tud változtatni, és elkerülheti azokat. Az előző cikkben megmozgattuk a robotot - most némi autonómiát adunk neki.
Ultrahangos érzékelő
A HC-SR04 egy áramkör, amely képes ultrahangos hullámok segítségével mérni a távolságot a tárgyaktól akár 4 méterig. Pinget küld (mint egy tengeralattjáró), és méri az időt (mikroszekundumokban) a küldés és a fogadás között. Ezt az időt ezután 2 -vel osztják, miközben a hullám előre -hátra halad. Ezután ossza el 29 -gyel, hogy centiméter távolságot kapjon (vagy 74 hüvelyk esetén), mert a hang 29,4 µs -t halad centiméterenként (340 m/s). Az érzékelő nagyon pontos, ~ 3 mm tűréssel és könnyen integrálható az Arduino -val.
Interaktív ultrahangos érzékelő AVR mikrokontrollerrel
Minden autonóm robotnak akadályokat kell elkerülnie, és távolságmérő érzékelőt kell csatlakoztatnia. Az infravörös adó-vevő pár vagy a szürkeárnyalatos érzékelő könnyen működhet az 1–10 cm tartományban lévő akadályok észlelésére. Az infravörös távolságmérők (például élesek) akár 100 cm -es hatótávolsággal is mérhetik a legközelebbi akadály távolságát. Az infravörös érzékelőket azonban befolyásolja a napfény és más fényforrások. Az infravörös távolságmérők kisebb hatótávolságúak és drágák is. Az ultrahangos érzékelők (más néven ultrahangos közelségérzékelők vagy szkennerek a geekek számára) mindkettő feladatot ésszerű költséggel és kivételes pontossággal végzik. A tartomány 3 cm és 350 cm között van, ~ 3 mm pontossággal. Ha az egyik ilyen ultrahangos érzékelőt a robotunkba köti, akadálykerülő és távolságmérő érzékelőként is szolgálhat.
Az „ultrahangos” hang a hallható hang frekvenciáit meghaladó mindenre vonatkozik, és névlegesen magában foglal 20 000 Hz vagy 20 kHz feletti értéket! A robotikához használt olcsó ultrahangos érzékelők általában 40 kHz és 250 kHz közötti tartományban működnek, míg az orvosi berendezéseknél 10 MHz -ig.
3. lépés: Szükséges eszközök
- Multiméter
- Kenyeretábla
- Tű orrfogó
- Drótcsíkoló
- Drótvágó
- Ragasztópisztoly
A multiméter valójában egy egyszerű eszköz, amelyet elsősorban a feszültség és az ellenállás mérésére és az áramkör zártságának meghatározására használnak. A számítógépes kód hibakereséséhez hasonlóan a multiméter segít az elektronikus áramkörök „hibakeresésében”.
Építőanyagok
A mechanikus váz elkészítéséhez nagyon hasznos a vékony fa és/vagy plexiüveg könnyen beszerezhető készlete. Az olyan fémek, mint az alumínium és az acél, gyakran csak a gépműhelybe belépőkre korlátozódnak, bár a vékony alumínium ollóval vágható és kézzel hajlítható. A mechanikus keretek akár háztartási cikkekből, például műanyag tartályokból is építhetők.
Bár más anyagok, például műanyagok (a plexiüvegen kívül) vagy egzotikusabb anyagok, például üvegszál és szénszál, lehetségesek, ezeket az útmutatót nem vesszük figyelembe. Több gyártó megjegyezte, hogy a legtöbb hobbi számára nem könnyű saját mechanikus alkatrészeket gyártani, és moduláris mechanikus alkatrészeket hoztak létre. Ebben vezető szerepet tölt be a Lynxmotion, amely a robotok széles választékát kínálja, valamint az egyedi robotok elkészítéséhez szükséges alkatrészeket.
Kézi szerszámok
Különféle típusú és méretű csavarhúzók és fogók szükségesek (beleértve az ékszerész szerszámkészletét: a dollárüzletekben általában kapható kis csavarhúzókat). A fúró (lehetőleg fúróprés az egyenes lyukakhoz) szintén fontos. Az építőanyagok (vagy marógép) vágására szolgáló kézi fűrész szintén fontos eszköz. Ha a költségvetés megengedi, egy kis asztali szalagfűrész (200 dollár tartomány) határozottan megfontolandó eszköz.
Forrasztás nélküli kenyértábla
A forrasztás nélküli kenyértábla lehetővé teszi az elrendezés optimalizálását és az alkatrészek egyszerű csatlakoztatását. A forrasztás nélküli kenyérsütő deszkával együtt vásároljon előre kialakított áthidaló huzal készletet, amely előre vágott és hajlított huzalokból áll, és forrasztás nélküli kenyértáblával használható. Ez nagyon megkönnyíti a csatlakozásokat.
Kis csavarhúzó készlet
Ezekre a kis csavarhúzókra szükség van, ha elektronikával dolgozik. Ne erőltesse őket túlságosan - méretük miatt törékenyebbek lesznek.
Rendes csavarhúzó készlet
Minden műhelyhez több szerszámra vagy szerszámkészletre van szükség, amely lapos / Phillips és egyéb csavarhúzófejeket tartalmaz.
Tű orrfogó
A tűfogó készlet hihetetlenül hasznos, ha apró alkatrészekkel és alkatrészekkel dolgozik, és nagyon olcsó kiegészítője az eszköztárnak. Ezek különböznek a szokásos fogóktól, mert olyan pontra jutnak, amely kis területekre kerülhet.
Huzalcsupaszító/-vágó
Bármilyen vezeték elvágását tervezi, a huzaltisztító jelentős időt és erőfeszítést takarít meg. A huzalcsupaszító, ha megfelelően használják, csak a kábel szigetelését távolítja el, és nem okoz töréseket vagy károsítja a vezetékeket. A drótcsupaszító másik alternatívája egy olló, bár a végeredmény rendetlen lehet. Olló, vonalzó, toll, jelölőceruza, Exacto kés (vagy más kézi vágóeszköz) Ezek minden irodában nélkülözhetetlenek.
4. lépés: Az AVR kódolásának szabályai
A hangsebesség kiszámítása az ultrahangos érzékelőkhöz képest
Kis matek, de ne ijedj meg. Egyszerűbb, mint gondolnád.
A hangsebesség száraz levegőn szobahőmérsékleten (~ 20 ° C) = 343 méter/másodperc
Ahhoz, hogy a hanghullám elérje a környező objektumot, oda -vissza = 343/2 = 171,5 m/mivel az olcsó ultrahangos érzékelő maximális hatótávolsága nem haladja meg az 5 métert (oda -vissza), ésszerűbb lenne módosítsa az egységeket centiméterre és mikroszekundumra.
1 méter = 100 centiméter 1 másodperc = 10^6 mikroszekundum = (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 (a számítások megkönnyítése érdekében két számjegyre kerekítve)Ezért az az idő, amely alatt az impulzus eljut egy tárgyhoz, és 1 centiméterrel visszapattan, 58,31 mikroszekundum.
az AVR órajel ciklusainak kis háttere
Teljesen más fejezetet vesz igénybe az AVR órajel ciklusainak megértése, de röviden megértjük, hogyan működik a számításaink megkönnyítése érdekében
Példánkban az AVR Draco kártyát fogjuk használni, amely 8 bites AVR-Atmega328P mikrovezérlővel rendelkezik. Az egyszerűség kedvéért nem módosítjuk a mikrokontroller beállításait. A biztosítékok nem érintettek; Nincs külső kristály rögzítve; Nincs fejfájás. Gyári beállítások esetén egy 8MHz -es belső oszcillátoron működik, a /8 előskálázóval; Ha mindezt nem érti, az egyszerűen azt jelenti, hogy a mikrokontroller 1 MHz -es belső RC oszcillátoron működik, és minden órajel ciklus 1 mikroszekundumot vesz igénybe.
1 2 1MHz = 1000000 ciklus másodpercenként Ezért 1s/1000000 = 1/1000000 = 1us
AVR órák és távolságátalakítás
Már majdnem ott vagyunk! Ha már tudjuk, hogyan kell az AVR órajeleket hanghullámok által megtett távolságra konvertálni, a logika megvalósítása egy programban egyszerű.
Tudjuk, hogy az ultrahangos hang sebessége ideális környezetben: 58,31 us/cm
Tudjuk, hogy az AVR mikrokontroller felbontása 1 óra/óra ciklus (CLK)
Ezért a hang által megtett távolság óránkénti ciklusonként (CLK):
1 2 3 = (58,31 us/ cm) x (1us/ clk) = 58,31 óra ciklus/ cm vagy = 1/ 58,31 cm/ clk
Ha ismert az óra ciklusok száma, amelyre szükség van ahhoz, hogy a hang továbbhaladjon és visszapattanjon, könnyen kiszámíthatjuk a távolságot. Például, ha az érzékelőnek 1000 óra ciklusra van szüksége az utazáshoz és a visszapattanáshoz, akkor az érzékelő és a legközelebbi tárgy közötti távolság = 1000/58,31 = 17,15 cm (kb.)
Most mindennek van értelme? Nem? Olvasd el újra
Ha tisztában van a fent említett logikával, akkor azt valós helyzetben valósítjuk meg, ha egy olcsó HC-SR04 ultrahangos érzékelőt csatlakoztatunk az AVR Arduino lapunkhoz.
5. lépés: Hardvercsatlakozások:
Az Arduino Board megkönnyíti a külső érzékelők csatlakoztatását és az eredmények LCD -n történő megtekintését. Az ultrahangos tartományérzékeléshez olcsó HC-SR04 modult használunk. A modul 4 tűvel rendelkezik, amelyek csatlakoztathatók a mikrokontroller kártyához: VCC, TRIG, ECHO és GND.
Csatlakoztassa a VCC csapot az 5V -hoz és a GND -tűt a földhöz az Arduino táblán.
A TRIG csap és az ECHO csap a tábla bármely rendelkezésre álló csapjához csatlakoztatható. Ha legalább 10us „magas” jelet küld a pin -be, nyolc 40 kHz -es hanghullámot küld, és magasra húzza a visszhangcsapot. Ha a hang visszaverődik egy közeli tárgyról, és visszatér, azt a vevőegység rögzíti, és a visszhangcsapot „alacsonyra” húzza.
Az ultrahangos érzékelő modulok más változatai is elérhetők, mindössze 3 tűvel. A működési elv továbbra is ugyanaz, de a kioldó- és visszhangcsapok működése egyetlen csapba van összevonva.
A csatlakoztatás után a Trigger és az Echo Pins szoftver segítségével konfigurálható. A példa egyszerűsítése érdekében ebben a példában nem használunk megszakító csapokat (vagy Input Capture Pin). Ha nem használ kijelölt megszakítótűket, akkor szabadságot biztosít számunkra, hogy a modult csatlakoztathatjuk a táblán rendelkezésre álló tűkhöz.
6. lépés: Kód
Az alábbi kód csak egy „ultrahangos” kiterjesztést tartalmaz az egyenáramú motor vezérléséhez az előző cikk H-Bridge használatával. Amikor a robot akadályt észlel előtte, megfordul (véletlenszerűen), és tovább halad. Ez a funkció könnyen kiterjeszthető, hogy folyamatosan forduljon és egyszerre észlelje az akadályokat - így a robot nem véletlenszerűen fordulna, hanem csak akkor kezdene előre haladni, ha nem észlel tárgyat.
A kódmagyarázatért tekintse meg a csatornán felsorolt Youtube videókat.
7. lépés: Videó
Nézze meg a videót az egész folyamathoz.
Ajánlott:
Hogyan készítsünk Arduino alapú élkerülő robotot: 4 lépés
Arduino alapú élkerülő robot készítése: Készítsünk teljesen autonóm robotot Arduino és IR érzékelők használatával. Leesés nélkül fedezi fel az asztal felületét. Nézze meg a videót további információkért
A gyorsulás felügyelete a Raspberry Pi és az AIS328DQTR használatával Python használatával: 6 lépés
A gyorsulás nyomon követése a Raspberry Pi és az AIS328DQTR használatával Python használatával: A gyorsulás véges, azt hiszem, a fizika egyes törvényei szerint.- Terry Riley A gepárd elképesztő gyorsulást és gyors sebességváltozásokat használ üldözés közben. A leggyorsabb lény a parton időnként kihasználja csúcssebességét a zsákmány elkapására. Az
Neopixel Ws2812 Rainbow LED izzás M5stick-C - Szivárvány futtatása a Neopixel Ws2812 készüléken az M5stack M5stick C használatával Arduino IDE használatával: 5 lépés
Neopixel Ws2812 Rainbow LED izzás M5stick-C | Szivárvány futása a Neopixel Ws2812-en az M5stack M5stick C használatával Arduino IDE használatával: Sziasztok, srácok, ebben az oktatási útmutatóban megtanuljuk, hogyan kell használni a neopixel ws2812 LED-eket, vagy led szalagot vagy led mátrixot vagy led gyűrűt m5stack m5stick-C fejlesztőtáblával Arduino IDE-vel, és elkészítjük szivárványos mintát vele
Vezeték nélküli távirányító 2,4 GHz -es NRF24L01 modul használatával Arduino - Nrf24l01 4 csatorna / 6 csatornás adó vevő négykópás - Rc Helikopter - Rc sík az Arduino használatával: 5 lépés (képekkel)
Vezeték nélküli távirányító 2,4 GHz -es NRF24L01 modul használatával Arduino | Nrf24l01 4 csatorna / 6 csatornás adó vevő négykópás | Rc Helikopter | Rc sík Arduino használatával: Rc autó működtetése | Quadcopter | Drone | RC sík | RC csónak, mindig szükségünk van vevőre és adóra, tegyük fel, hogy az RC QUADCOPTER esetében szükségünk van egy 6 csatornás adóra és vevőre, és az ilyen típusú TX és RX túl költséges, ezért készítünk egyet
PIC alapú LF és elkerülő robot: 16 lépés (képekkel)
PIC alapú LF és elkerülő robot: Bevezetés Ebben az utasításban megtanulja, hogy könnyű követni és elkerülni a robotot. Az inspirációmat a közönséges emberi viselkedést utánzó robotok adják, például ok nélkül nem fog csak falba sétálni. Az agyad kommunikál