Tartalomjegyzék:
- 1. lépés: Amire szüksége lesz
- 2. lépés: Dokumentáció
- 3. lépés: Készítse elő az ultrahangos érzékelő támogatását
- 4. lépés: Szereljen fel mindent egy prototípus -táblára
- 5. lépés: A végső kapcsolatok létrehozása
- 6. lépés: A program indítása
- 7. lépés: A C kód megértése
- 8. lépés: A Java kód megértése
- 9. lépés: Következtetés
Videó: 3. projekt: SonarDuino: 9 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:42
Kedves hobbistársam!
Ebben a projektben megvizsgáljuk annak lehetőségét, hogy 360 fokos radarrendszer legyen az objektumok észlelésére. Ha ezt a modult külön állítja be, akkor a mozgásrobotja felismeri környezete határait. Sötétedéskor navigációs eszközként is szolgálhat, de csak akkor, ha elég lassan sétál;
1. lépés: Amire szüksége lesz
Ennek a konstrukciónak az elkészítéséhez a következőket kell vásárolnia:
Arduino Nano: https://www.ebay.com/itm/USB-Nano-V3-0-ATmega328-16M-5V-Micro-controller-CH340G-board-For-Arduino/201601613488?hash=item2ef0647eb0:g:DkoAAOSwvYZZpOl: rk: 2: pf: 0
Prototípus-táblák: https://www.ebay.com/itm/20pcs-set-4Size-Double-Side-Protoboard-Circuit-Universal-DIY-Prototype-PCB-Board/192076517108?epid=506557101&hash=item2cg:::/ ~ Zbl232: rk: 13: pf: 0
Szervomotorok: https://www.ebay.com/itm/5pcs-POP-9G-SG90-Micro-Servo-motor-RC-Robot-Helicopter-Airplane-Car-Bar-Boat/142931003420?hash=item21475a081c:rk: 16: pf: 0 & var
Ultrahangos érzékelők: https://www.ebay.com/itm/5PCS-Ultrasonic-Sensor-Module-HC-SR04-Distance-Measuring-Sensor-for-arduino-SR04/170897438205?epid=18020663283&hash=item27ca47f5f ~ IAAOSw-xbD5Fp: rk: 2: pf: 0
2. lépés: Dokumentáció
Mint néhányan talán már tudjátok ezt, ezt a projektet egy másik nyílt forráskódú projekt „Arduino Radar Project” ihlette, amelyet Dejan készített a „How to Mechatronics” címen, @ a következő linken: https://howtomechatronics.com/projects/arduino -radar-projekt/
Egy másik pont, amely dokumentációt igényel, a következő két könyvtár letöltése a fejlesztői környezetbe:
Adafruit-GFX-könyvtár:
Adafruit_SSD1306:
Ennek ellenére a C kód valódi megértéséhez el kell végeznie mindkét fenti könyvtár dokumentációját. Ettől eltekintve a kódomban használt függvényeknek olyan nevük van, amely árulkodik arról, hogy mit csinálnak.
3. lépés: Készítse elő az ultrahangos érzékelő támogatását
Vegyen ki egy darab kartonpapírt, és vágja le az érzékelőhöz csatlakoztatott csatlakozó kábelek méretének megfelelően, amint az az első képen látható. Ezt követően hajtsa be ezt az utolsót, és ragassza rá a szervomotoros tartóra. Ha ez megtörtént, ragassza fel a két ultrahangos érzékelőt az utolsó kép szerint. Vegye figyelembe, hogy az érzékelők fejét úgy kell forrasztani, hogy a kábelek kifelé menjenek az érzékelő előtt. Ez lehetővé teszi, hogy az érzékelő kábelei ne zavarják egymást, amikor a 360 fokos forgatás megvalósul.
4. lépés: Szereljen fel mindent egy prototípus -táblára
Ebben a lépésben először az előző lépésben előírt fejlécet kell felszerelnie a megfelelő szervomotorba. Miután a szervomotor gondosan megszokta, mindent egy prototípus -táblába szerel. Kezdje az Arduino Nano forrasztásával, majd a szervó közvetlen ragasztásával. Végül forrasztja a kis OLED kijelzőt a tábla másik szélén.
5. lépés: A végső kapcsolatok létrehozása
Ez a lépés befejezi a projekt hardver oldalát. Az összes szükséges kapcsolat létrehozásához követnie kell a mellékelt sémákat.
6. lépés: A program indítása
Két kódot kell indítania
Arduino (C):
Feldolgozás (java):
A kód futtatásakor két lehetőség közül választhat:
1. lehetőség: Az OLED kijelző használatával ehhez a C kódban a MODE változót 0 -ra kell állítani.
2. lehetőség: A monitor használata, ehhez a C kódban a MODE változót 1 -re kell állítani. Ezenkívül le kell töltenie és telepítenie kell a Processing fejlesztői környezetet, és le kell töltenie a radar betűtípust erről a linkről: https:// github.com/lastralab/ArduinoRadar/blob/ma…
És adja hozzá ezt a fájlt a feldolgozási kódfájljához, hogy a java kód felismerje a betűtípust híváskor.
7. lépés: A C kód megértése
A kód főleg két „for” hurokból áll. Az egyik korrelációban van az előrehaladással, míg a másik a hátramenettel. Mindkettőjükben sokszor hívják a draw_scanner () fő funkciót, amely a radar vonalait rajzolja a képernyőre. Több konfiguráció tesztelése után arra a következtetésre jutottam, hogy felül kell írnunk a fehér radarvonalakat a t időpontban ugyanazokkal a radarvonalakkal, feketével a t+1 időpontban, hogy töröljük őket. Ellenkező esetben villogás jelenhet meg minden alkalommal, amikor a kijelzőt „clearDisplay ()” funkcióval tisztítja, mielőtt megnyomja az új pixelrácsot. Mivel tervezés céljából 7 sorral foglalkoztam, folyamatosan mentenem kellett és át kellett adnom a 7 elemből álló egész tömböt, ahol minden elem a radar középpontja és az észlelt objektum közötti sugarát jelzi. Ezt szem előtt tartva a kód többi részének egyenesen előre kell érteni.
8. lépés: A Java kód megértése
A feldolgozás során meg kellett kerülnem a serialEvent () függvényhívást, amely csak a COM nevű soros portokkal működik. Amikor Mac -en dolgoztam, a soros portjaim más néven jelentek meg. Ennek ellenére kicsomagoltam ezt a függvényt a „draw ()” feldolgozás fő funkciójába. Minden mással kapcsolatban frissítettem az alkalmazást, hogy megfeleljen a teljes forradalmi tervezésnek. Végül frissítettem az összes rajzolt alakzatot és szöveget a képernyő szélességének megfelelően, hogy a végtermék illeszkedjen a különböző képernyőfelbontásokhoz. Én személyesen teszteltem 1000X1000 és 500X500 felbontásban is, és jól működött:).
9. lépés: Következtetés
Ez a munka frissíthető 3 ultrahangos érzékelővel, amelyek mindegyike 120 látószöget takar, vagy akár 4 érzékelővel (90 fok*4) -> gyorsabb 360 fok. letapogatás.
A radar hatótávolságát 40 cm -ről 60 cm -re vagy akár 80 cm -re is kiterjesztheti. Személyesen teszteltem a pulseIn funkciót, és beállítottam a TIMEOUT változót 40 cm -re. Ez a változó sok tényezőtől függ, beleértve az impulzus küldésének hosszát és az objektum felületét, ahol az impulzus visszaverődik.
Végül, amint azt korábban említettük, a következő lépés a radarDuino beépítése egy mozgatórobotba a környező terület átvizsgálásához.
Ajánlott:
Gimbal stabilizátor projekt: 9 lépés (képekkel)
Gimbal Stabilizer Project: Hogyan készítsünk egy kardántengelyt? Ismerje meg, hogyan készítsen kéttengelyes kardántengelyt az akciókamerájához. A mai kultúrában mindannyian szeretjük a videókat rögzíteni és megörökíteni a pillanatokat, különösen akkor, ha Ön olyan tartalomkészítő, mint én, biztosan szembesült azzal a problémával, hogy ilyen remegő videó
Automatizált EKG-BME 305 Végső projekt Extra jóváírás: 7 lépés
Automatizált EKG-BME 305 A végső projekt extra jóváírása: Egy elektrokardiogram (EKG vagy EKG) a dobogó szív által kibocsátott elektromos jelek mérésére szolgál, és nagy szerepet játszik a szív- és érrendszeri betegségek diagnosztizálásában és prognózisában. Az EKG -n szerzett információk egy része tartalmazza a ritmust
(IOT projekt) Időjárási adatok lekérése az ESP8266 és az Openweather API használatával: 5 lépés
(IOT Project) Időjárási adatok lekérése az ESP8266 és az Openweather API használatával: Ebben az utasításban egy egyszerű IOT projektet fogunk felépíteni, amelyben lekérjük városunk időjárási adatait az openweather.com/api webhelyről, és megjelenítjük azokat a Feldolgozó szoftver segítségével
CPE 133 Végső projekt decimális binárisra: 5 lépés
CPE 133 A végső projekt decimális binárisra: A bináris számok az első dolgok, amelyek eszünkbe jutnak, amikor a digitális logikára gondolunk. A bináris számok azonban nehéz fogalmak lehetnek azok számára, akik még nem ismerik ezt a projektet. Ez a projekt segít azoknak, akik újak és tapasztaltak a bináris számokkal
Dopamin doboz - a Mike Boydhoz hasonló projekt - Nem lévén Mike Boyd: 9 lépés
Dopamin doboz | a Mike Boydhoz hasonló projekt - Nem lévén Mike Boyd: Én szeretnék egyet! Szükségem van rá! Halogató vagyok! Nos, szeretnék egy dopamin dobozt … Programozás nélkül. Nincs hang, csak tiszta akarat