Tartalomjegyzék:
- Kellékek
- Lépés: Ultrahangos VS infravörös érzékelő
- 2. lépés: Vázlatos
- 3. lépés: Az érzékelő jellemzője
- 4. lépés: Soros kommunikáció
- 5. lépés: Qt alkalmazás
- 6. lépés: Arduino forráskód
Videó: Infravörös radar Arduino -val: 6 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Ebben a kis projektben szeretném megmutatni, hogyan lehet létrehozni egy egyszerű radart otthon az Arduino segítségével. Sok hasonló projekt található az interneten, de mindegyikük ultrahangos érzékelőt használ a távolság mérésére. Ebben a projektben infravörös érzékelőt használok a távolság mérésére.
Célom egy nagyon egyszerű és olcsó LIDAR rendszer létrehozása vele, és egy leképező eszköz megvalósítása.
Kellékek
- Arduino (én Maple Minit használtam)
- Éles távolságérzékelő (én Sharp GP2Y0A02YK0F -et használtam)
- Micro Servo (9g)
- Kenyértábla, vezetékek
- Opcionális: 4.7k ellenállás, 100nF kondenzátor
Lépés: Ultrahangos VS infravörös érzékelő
A fő különbség az ultrahangos és az infravörös távolságérzékelők között az, hogy az ultrahangos érzékelő szélesebb tartományban méri a távolságot. Ezért nem tudja pontosan meghatározni az akadály helyzetét. Ez azt jelenti, hogy méri a legközelebbi objektum távolságát, amely ~ +-30 ° -os szögtartományon belül található.
Ez persze nem jelenti azt, hogy a Sharp érzékelő jobb. Néha ez a tulajdonság nagyon hasznos lehet (pl. Drónok használják a talaj magasságának mérésére). A helyes választás teljes mértékben a projekt követelményeitől függ.
2. lépés: Vázlatos
Nagyon egyszerű az alkatrészek közötti kapcsolat létrehozása. Válasszon PWM kimenetet és analóg bemenetet az Arduino kártyán, és csatlakoztassa a Servo és a Sharp távolságérzékelőket ezekhez a tűkhöz. Erre a célra a következő csapokat használtam:
- PA0: Analóg bemenet a Sharp távolságérzékelőhöz
- PA9: PWM kimenet szervóhoz
Néha a Sharp IR érzékelő zajos kimenetű lehet, ezért egyszerű aluláteresztő szűrőt kell tennie rá. 4,7 k ellenállást és 100 nF kondenzátort használtam az analóg csap zajának csökkentésére. Ezenkívül a mért értéket is megszűrtem a kódban, többször elolvasva és kiszámítva az átlagot.
3. lépés: Az érzékelő jellemzője
Sajnos a használt infravörös távolságérzékelő nem lineáris. Ez azt jelenti, hogy a távolság megszerzéséhez nem elegendő, ha a mért ADC értéket megszorozzuk egy állandó értékkel, és hozzáadunk egy másik állandó értéket.
Bár az érzékelő adatlapja megadja a karakterisztikát, inkább saját maga mérjem le az adott projektben (ez függhet a használt feszültségtől). Ehhez a mért ADC értékből és távolságból 10 cm -enként párokat készítettem. (Az érzékelőm képes volt a megfelelő távolságot mérni 12 cm -től).
Ezeket a párokat használtam a kódban a helyes távolság eléréséhez lineáris interpolációval.
A dokumentum végén talál egy egyszerű Arduino kódot az ADC érték mérésére a jellemző mérés során.
4. lépés: Soros kommunikáció
Soros kommunikációt használtam a mért szög-távolság értékek PC-re küldéséhez. Mivel több bájtot és különböző típusú üzeneteket kell elküldenem, egy egyszerű kommunikációs protokollt terveztem.
Ez a procotol lehetővé teszi a különböző üzenettípusok általános meghatározását. Ebben a projektben 2 üzenettípust használtam:
- Paraméterek: Paraméterek elküldésére szolgál a PC -alkalmazáshoz, az Arduino -n definiálva, mint a maximális távolság és az akadályok száma egy körben.
- Akadály: Érzékelt akadály küldésére szolgál. Ezt a szervo szög és a mért távolság határozza meg. Az x-y pozíciót PC alkalmazás számítja ki.
5. lépés: Qt alkalmazás
Az Arduino -val való kommunikációhoz és a mért pontok radarhoz hasonló rajzolásához készítettem egy PC -alkalmazást Qt -ban (C ++). Megkap néhány paramétert (az Arduino -n definiálva) és a mért távolságpontokat.
Letöltheti az alkalmazást és annak forráskódját is.
6. lépés: Arduino forráskód
A kód tetején néhány paremetert személyre szabhat makrókkal.
Ne feledje, hogy ha megváltoztatja a Sharp távolságérzékelő jellemzőit, módosítania kell a distAdcMap tömb értékeit!
- InfraRadar.c: A radar kódja. Másolja és illessze be az Arduino projektbe.
- InfraRadarMeasurement.c: Jellemző mérési kód. Másolja és illessze be az Arduino projektbe. A soros konzol segítségével ellenőrizze az ADC értékeket.
Ajánlott:
Arduino lézeres infravörös hőmérő: 7 lépés (képekkel)
Arduino lézeres infravörös hőmérő: Ebben a projektben megmutatom, hogyan lehet digitális lézeres infravörös hőmérőt készíteni egyedi 3D nyomtatott burkolattal
Arduino infravörös hőmérő pisztoly MDF tok: 4 lépés (képekkel)
Arduino infravörös hőmérő pisztoly MDF tok: Ez a projekt az Arduino infravörös hőmérő készítésére szolgál, az áramkört az MDF tokba helyezik, mint egy orvosi infravörös hőmérőt a piacon. A GY-906 érzékelő infravörös hőmérőt érintés nélkül mérik, ez mérhet
Arduino infravörös érzékelő és távirányító LCD -vel: 4 lépés
Arduino infravörös érzékelő és távirányító LCD -vel: UQD10801 (Robocon1) diákok csoportja vagyunk az Universiti Tun Hussein Onn Malaysia (UTHM) Egyetemről ) Arduino Uno R3 segítségével. Ez az oktatóanyag
Arduino alapú érintésmentes infravörös hőmérő - IR alapú hőmérő Arduino használatával: 4 lépés
Arduino alapú érintésmentes infravörös hőmérő | IR alapú hőmérő Arduino használatával: Sziasztok, ebben az útmutatóban, érintésmentes hőmérőt készítünk arduino segítségével. Mivel néha a folyadék/szilárd anyag hőmérséklete túl magas vagy alacsony, majd nehéz kapcsolatba lépni vele és elolvasni ilyenkor a hőmérséklet
8 relévezérlés NodeMCU és infravörös vevővel WiFi és infravörös távirányító és Android alkalmazás használatával: 5 lépés (képekkel)
8 relévezérlés NodeMCU -val és IR -vevővel WiFi és IR távirányító és Android -alkalmazás használatával: 8 relés kapcsoló vezérlése nodemcu és ir vevő segítségével wifi -n és távoli és androidos alkalmazáson keresztül. Az ir távirányító a wifi -kapcsolattól függetlenül működik. ITT