Sadržaj:
- Supplies
- Korak 1: Ultrazvučni VS infracrveni senzor
- Korak 2: Shema
- Korak 3: Karakteristike senzora
- Korak 4: Serijska komunikacija
- Korak 5: Qt aplikacija
- Korak 6: Arduino izvorni kod
Video: Infracrveni radar sa Arduinom: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
U ovom malom projektu želio bih vam pokazati kako možete stvoriti jednostavan radar kod kuće s Arduinom. Na internetu postoji mnogo sličnih projekata, ali svi koriste ultrazvučni senzor za mjerenje udaljenosti. U ovom projektu koristim infracrveni senzor za mjerenje udaljenosti.
Moj cilj je stvoriti vrlo jednostavan i jeftin LIDAR sistem s njim i implementirati uređaj za mapiranje.
Supplies
- Arduino (koristio sam Maple Mini)
- Oštri senzor udaljenosti (koristio sam Sharp GP2Y0A02YK0F)
- Mikro servo (9 g)
- Oglasna ploča, žice
- Opciono: otpornik od 4,7 k, kondenzator od 100 nF
Korak 1: Ultrazvučni VS infracrveni senzor
Glavna razlika između ultrazvučnih i infracrvenih senzora udaljenosti je ta što ultrazvučni senzor mjeri udaljenost u širem rasponu. Zbog toga nije u stanju precizno locirati položaj prepreke. To znači da mjeri udaljenost najbližeg objekta koji se nalazi unutar raspona kutova ~ +-30 °.
Naravno, to ne znači da je Sharp senzor bolji. Ponekad ovo svojstvo može biti vrlo korisno (npr. Koriste ga dronovi za mjerenje visine od tla). Pravi izbor u potpunosti ovisi o zahtjevima vašeg projekta.
Korak 2: Shema
Povezivanje dijelova vrlo je jednostavno. Odaberite PWM izlaz i analogni ulaz na Arduino ploči i spojite Servo i Sharp senzore udaljenosti na te pinove. U tu sam svrhu upotrijebio sljedeće igle:
- PA0: Analogni ulaz za oštri senzor udaljenosti
- PA9: PWM izlaz za servo
Ponekad Sharp IR senzor može imati bučan izlaz, pa na njega morate staviti jednostavan niskopropusni filter. Koristio sam otpornik od 4,7 k i kondenzator od 100 nF za smanjenje šuma na analognom pinu. Osim toga, filtrirao sam izmjerenu vrijednost u kodu tako što sam je pročitao više puta i izračunao prosjek.
Korak 3: Karakteristike senzora
Nažalost, infracrveni senzor udaljenosti ima nelinearne karakteristike. To znači da za dobivanje udaljenosti nije dovoljno izmjeriti izmjerenu vrijednost ADC -a s konstantnom vrijednošću i dodati joj još jednu konstantnu vrijednost.
Iako podatkovni list senzora daje karakteristike, radije bih da ga mjerim sam u određenom projektu (to može ovisiti o upotrijebljenom naponu). Za to sam napravio parove od izmjerene vrijednosti ADC -a i udaljenosti na svakih 10 cm. (Moj senzor je mogao izmjeriti ispravnu udaljenost od 12 cm).
Koristio sam ove parove u kodu da dobijem ispravnu udaljenost s linearnom interpolacijom.
Na kraju dokumenta pronaći ćete jednostavan Arduino kôd za mjerenje ADC vrijednosti tokom karakterističnog mjerenja.
Korak 4: Serijska komunikacija
Koristio sam serijsku komunikaciju za slanje izmerenih vrednosti ugaone udaljenosti na računar. Budući da moram poslati više bajtova i različite vrste poruka, dizajnirao sam jednostavan komunikacijski protokol.
Ovaj protokol omogućava definiranje različitih vrsta poruka na opći način. U ovom projektu koristio sam 2 vrste poruka:
- Parametri: Koristi se za slanje parametara u PC aplikaciju, definirane na Arduinu, poput maksimalne udaljenosti i broja prepreka u krugu.
- Prepreka: Koristi se za slanje otkrivene prepreke. Identificira se prema kutu servo i izmjerenoj udaljenosti. Položaj x-y izračunat će aplikacija za računalo.
Korak 5: Qt aplikacija
Za komunikaciju s Arduinom i crtanje izmjerenih točaka poput radara, napravio sam PC aplikaciju u Qt (C ++). Prima neke parametre (definirane na Arduinu) i izmjerene točke udaljenosti.
Također možete preuzeti aplikaciju i njen izvorni kod.
Korak 6: Arduino izvorni kod
Možete prilagoditi neke parametre na vrhu koda pomoću makronaredbi.
Imajte na umu da ako promijenite karakteristiku Sharp senzora udaljenosti, morate izmijeniti vrijednosti niza distAdcMap !
- InfraRadar.c: Radarski kod. Kopirajte i zalijepite u svoj Arduino projekt.
- InfraRadarMeasurement.c: Kod za karakteristično mjerenje. Kopirajte i zalijepite u svoj Arduino projekt. Koristite serijsku konzolu za provjeru ADC vrijednosti.
Preporučuje se:
Infracrveni matrični sistem unosa lozinke sa Arduinom: 13 koraka
Infracrveni matrični sistem za unos lozinke sa Arduinom: ICStation tim vam predstavlja infracrveni matrični sistem za unos lozinke zasnovan na ploči Arduino kompatibilnoj sa ICStation. Radi pod DC 5v napajanjem i koristi 4 *4 Matrix tastaturu ili infracrveni daljinski upravljač za unos lozinke, a mi
Kako napraviti radar s Arduinom - Arduino projekt: 4 koraka
Kako napraviti radar s Arduinom | Arduino projekt: U ovom članku ću vas naučiti kako možete napraviti jednostavan radar s arduinom. Pogledajte cijeli video vodič ovdje: Kliknite me
Infracrveni daljinski i IC prijemnik (TSOP1738) sa Arduinom: 10 koraka
Infracrveni daljinski i IC prijemnik (TSOP1738) s Arduinom: Ovo uputstvo je za Arduino početnike. Ovo je jedan od mojih ranijih projekata s Arduinom. Mnogo sam uživao kad sam to napravio i nadam se da će se i vama svideti. Najatraktivnija karakteristika ovog projekta je “ Bežična kontrola ”. A to je
Kako napraviti ultrazvučni radar s Arduinom ⚡: 5 koraka
Kako napraviti ultrazvučni radar s Arduinom ⚡: ↪ Zdravo, to je SuperTech i danas ću vam pokazati kako napraviti ultrazvučni radar s Arduinom
I2C Infracrveni daljinski upravljač s Arduinom: 8 koraka (sa slikama)
I2C InfraRed daljinski upravljač s Arduinom: PreambleOva uputstva detaljno opisuju kako stvoriti univerzalni daljinski upravljač koristeći I2C za sučelje. Koliko čudno kažete da koristite I2C slave uređaj? Da, I2C slave uređaj. To je zato što je precizno vrijeme IC paketa prilično zahtjevno i