Turinys:
- 1 žingsnis: įrankiai ir dalys
- 2 veiksmas: įsilaužimas į „Breadout Board“
- 3 žingsnis: 0805 šviesos diodo litavimas
- 4 žingsnis: N-kanalo MOSFET litavimas
- 5 žingsnis: Jutiklio bloko prijungimas
- 6 žingsnis: Jutiklių masyvo užbaigimas
- 7 žingsnis: Duomenų gavimas
- 8 žingsnis: lazerinis žymeklis (demonstracija)
- 9 žingsnis: žiūrėjimas į Poopeyes (demonstracija)
Video: Stacionarus radaras (LIDAR) su „Arduino“: 10 žingsnių (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Kai kuriu dvikojį robotą, visada galvojau turėti kokią nors šaunią programėlę, kuri galėtų atsekti mano priešininką ir su juo atlikti puolimo judesius. Čia jau yra radarų/„lidar“projektų grupių. Tačiau mano tikslui yra keletas apribojimų:
- Ultragarso bangų jutiklių moduliai yra gana dideli. Kiekvienas robotas atrodytų kaip WALL-E.
- Visus dabartinius radarų projektus sudaro jutiklis (ultragarso bangos, IR, lazeris,…) ir servo variklis viduryje. Norint nuskaityti aplinką, servo sistema turi judėti iš vienos pusės į kitą. Perkeliant daiktus pirmyn ir atgal, atsiranda impulsų pokyčių, o tai kenkia abipusiam balansavimui ir vaikščiojimui.
- Nuskaitymo dažnį riboja servo greitis. Tikriausiai galima pasiekti tik keletą hercų. Net jei nuskaitymo dažnį gali padidinti koks nors super servo, tai sukeltų didelę vibraciją.
- [Centrinio servo variklio - jutiklio] išdėstymas taip pat riboja montavimo vietą ir dizainą. Sunku montuoti tokį daiktą, išskyrus galvą. Dėl to mano dvigalvis kiekvieną kartą atrodo kaip drebanti galva WALL-E. Ne šaunu!
- [Servo jutiklio] išdėstymas taip pat gali būti sukurtas kaip [variklio jutiklio] stilius. Jutiklis (arba jutikliai) nuolat sukasi išilgai variklio ašies. Tai gali pašalinti impulsų trūkčiojimus ir žemo nuskaitymo dažnio problemas, bet ne liemens konstrukcijos apribojimą. Taip pat žymiai padidėtų laidų sujungimo sunkumai.
Po paieškos šis mažas jutiklis VL53L0X iš ST pateko į akis. Tvirtinant „Pasaulio mažiausiu“skrydžio laiko jutiklio matmenį, jis yra tik 4,4 x 2,4 x 1,0 mm. Dalyvauja
- Ant lusto IR lazerio spinduolio ir detektoriaus
- Iki 2 m diapazonas (1,2 m greitu režimu)
- Programuojamas I2C adresas
- GPIO pertraukimo išvesties kaištis
- Saugus akims
Visos šios specialios funkcijos leido man įveikti aukščiau išvardytas problemas, jei galėtų veikti daugybė VL53L0X jutiklių. Iš pradžių maniau, kad šis radaras bus vadinamas kietojo kūno radaru, tačiau sužinojau, kad šis terminas buvo naudojamas kitam. Todėl žodis „stacionarus“pavadinime reiškia, kad šioje radaro programėlėje nėra judančių dalių. Be to, nors LIDAR (šviesos aptikimas ir diapazonas) yra techniškai teisingas šio lusto terminas, RADAR čia vadinamas bendresniu terminu.
Priežastis, kodėl programuojamas I2C adresas ir GPIO išvesties kaištis yra labai svarbūs šiam projektui, bus paaiškinta vėliau.
1 žingsnis: įrankiai ir dalys
Įrankiai
Šiame projekte reikalingi šie įrankiai:
- Lituoklis
- Litavimo pagalbos rankos
- Dupont gofravimo įrankis
- 1,5 mm šešiakampė tvarkyklė
- Vielos dangos pašalinimo įrankis
- Vielos pjaustytuvas
- Karštas klijų pistoletas
- Pincetai
- Didintuvas (fizinis arba jūsų telefone esančios programos)
- Plokščios replės
Dalys
Šiame projekte naudojamos šios dalys:
- 10x VL53L0X GY-530 plokščių
- „Arduino“(„Uno“, „Nano“, „Mega“, „Zero“, „Mini“ir kt.)
- Duonos lenta ir keletas laidų
- AWG #26 laidai su skirtingomis spalvomis
- AWG #30 vieno gyslos viela
- 5x Dupont vyriškos jungtys
- 5x vieno kaiščio Dupont korpusai
- 10 kartų 3D atspausdintos pertraukimo plokštės laikikliai
- 1x 3D spausdintas apskritas rėmelis
- 10x M2x10 varžtai su plokščia galvute
- 10x 0804 LED (rekomenduojama mėlyna)
- 10x SOT-23 AO3400 N kanalų MOSFET
- Mažas kondensatorius (10 ~ 100uF)
Išlaužimo lenta
Mano naudojama VL53L0X pertraukimo plokštė yra GY-530. Taip pat yra „Adafruit“ir „Pololu“versijų. Jei įmanoma, rekomenduoju naudoti „Adafruit“arba „Pololu“produktą, nes iš jų gaminami puikūs produktai, puikios pamokos ir puikios programinės įrangos bibliotekos. Aš išbandžiau „Adafruit“VL53L0X biblioteką ir naudojau modifikuotą „Pololu“VL53L0X bibliotekos versiją.
Dupont jungtys
Duonkepėms naudojamos dvigubos jungtys. Galite naudoti bet kokius kitus jūsų turimus ryšius.
Varžtai ir 3D spausdintos dalys
M2 varžtai, laikikliai ir apskritas rėmas naudojami jutikliams išdėstyti apskrito pavidalo. Galite naudoti bet kokius kitus metodus, pvz., Naudoti kartonines lentas, modelines medieną, molį ar net karštai klijuoti juos ant skardinės.
2 veiksmas: įsilaužimas į „Breadout Board“
Aptikimo kūgis
Aptikimo kūgio piešimui naudojau vieną modulį. Naudojant daugiausia 3D spausdintą robotą kaip taikinį. Atstumas rodomas LED ekrane ir apytiksliai išmatuotas. Išmatuoti duomenys įrašomi į „Microsoft Excel“failą ir naudojami kreivės pritaikymo funkcija. Geriausiai tinka natūrali logaritmo kreivė, kurios efektyvus atstumas yra nuo 3 cm iki maždaug 100 cm.
Esant 60 cm, vieno jutiklio aptikimo kreivė yra apie 22 cm. Esant 20 cm pločio taikiniui, 10–15 laipsnių apskritimo atstumas radaro masyvui turėtų suteikti priimtiną nuskaitymo skiriamąją gebą.
I2C adresas
Nors VL53L0X I2C įrenginio adresas yra programuojamas, mikrovaldikliu reikia visiškai valdyti XSHUT kaištį. To seka yra tokia:
- Maitinimas tiekiamas AVDD.
- Visi „VL53L0X“lustai perjungiami į „Hw“budėjimo būseną (iš naujo nustatomi), nuleidžiant VISUS XSHUT kaiščius į ŽEMĄ.
- Kiekvienas lustas po vieną išimamas iš atstatymo būsenos. Numatytasis I2C adresas po įkrovos yra 0x52.
- Lusto adresas pakeičiamas nauju adresu naudojant I2C komandą. Pavyzdžiui, 0x52 pakeistas į 0x53.
- Pakartokite 3 ir 4 veiksmus visiems lustams.
Teoriškai 7 bitų adresų diapazone toje pačioje magistralėje galima nuvažiuoti ne daugiau kaip 126 įrenginius. Tačiau praktiškai mikrovaldiklio magistralės talpa ir nuskendusios srovės apribojimas gali/turėtų apriboti maksimalų įrenginių skaičių.
Naujasis I2C adresas nėra saugomas VL53L0X mikroschemoje nuo maitinimo išjungimo ar atstatymo. Taigi šį procesą reikia atlikti vieną kartą po kiekvieno įjungimo. Tai reiškia, kad kiekvienam radaro matricos įrenginiui reikia vieno brangaus kaiščio. Tai yra pernelyg nedraugiška laidams ir kaiščių vartojimui, jei radaro diržas turi 10+ arba 20+ vienetų.
Kaip minėta STEP1, pasisekė, kad VL53L0X mikroschemoje yra GPIO1 kaištis, kuris iš pradžių buvo naudojamas pertraukai.
GPIO-XSHUTN daisy grandinė
Paleidžiant GPIO išėjimas yra didelės varžos būsenos, o aktyvus - iki žemo lygio. „GPIO“ir „XSHUT“kaiščiai „GY-530“pertraukimo plokštėje yra ištraukti iki AVDD, kaip rekomenduojama duomenų lape. Norėdami patikimai perkelti visus VL53L0X lustus į „Hw“budėjimo būseną (žemas XSHUT režimas), mums reikia loginių NE vartų (keitiklių) kiekvienam XSHUT kaiščiui. Tada mes prijungiame vieno lusto GPIO išėjimą (N-ąjį lustą) prie tolesnio lusto (N+1 lusto) XSHUTN (XSHUT-NOT).
Įjungus, visi GPIO kaiščiai (neaktyvūs) ištraukiami aukštyn, visi vėlesni XSHUT kaiščiai žemai išstumiami NOT vartų (išskyrus pačią kumštinę mikroschemą, kurios XSHUTN kaištis yra prijungtas prie mikrovaldiklio). I2C adreso keitimas ir tolesnio lusto XSHUT išleidimas atliekamas programinėje įrangoje po vieną.
Jei naudojate skirtingas pertraukimo plokštes, turite įsitikinti, ar ištraukiamieji rezistoriai yra vietoje, ir tinkamai sureguliuoti.
Pridedamas šviesos diodas
Kitame žingsnyje prie pertraukimo plokštės bus pridėtas mažas 0805 SMD šviesos diodas, prijungtas iš XSHUT bloknoto prie gretimo kondensatoriaus GND gnybto. Nors pats šviesos diodas neturi įtakos modulio veikimui, jis suteikia mums gerą vaizdinį vaizdą XSHUT logikos lygiu.
Sujungus šviesos diodą nuosekliai su ištraukiamuoju rezistoriumi (mano atveju 10k) ant XSHUT kaiščio, sumažės įtampa. Vietoj aukšto 3,3 V loginio lygio raudono 0805 šviesos diodo priekinės įtampos kritimas matuojamas 1,6 V. Nors ši įtampa yra didesnė nei aukšto loginio lygio (1.12v) duomenų lape, mėlynas šviesos diodas geriau tinka šiam įsilaužimui. Mėlynojo šviesos diodo priekinės įtampos kritimas matuojamas apie 2,4 V, kuris yra saugiai virš mikroschemos loginio lygio.
N-MOS keitiklio pridėjimas („Logic NOT Gate“)
Mažas SOT-23 N kanalo MOSFET yra sukrautas ant mūsų pridėto šviesos diodo. Dvi gnybtai (D, S) turi būti lituojami ant pertraukimo plokštės, o likęs gnybtas (G) yra prijungtas prie GPIO kaiščio prieš srovę naudojant #26 laidą.
Pastabos dėl SMD komponentų pridėjimo
SMD komponentų litavimas ant pertraukos plokštės, kuri nėra skirta, nėra lengva užduotis. Jei dar negirdėjote apie 0805, SMD, SOT-23, yra tikimybė, kad anksčiau nebuvote litavę tų mažų mažų komponentų. Tvarkant tuos mažus komponentus rankomis, labai dažnai:
- Ši smulkmena tiesiog iškrito ir dingo amžiams,
- Mažos pagalvėlės ant smulkmenos tiesiog nulupo.
- Mažos kojelės ant smulkmenos tiesiog lūžo.
- Litavimo skarda tiesiog susikaupė ant dėmės ir negalėjo būti atskirta.
- Ir dar…
Jei vis tiek norite sukurti šį radarą, galite:
- Pakeiskite komponentus į didesnį paketą, pvz., DIP stilių.
- Praktikai ir vartojimui gaukite daugiau komponentų nei reikalaujama.
3 žingsnis: 0805 šviesos diodo litavimas
Lituoti 0805 SMD šviesos diodą
Lituoti 0805 šviesos diodą rankomis ant pertraukimo plokštės, neskirtos SMD, visai nėra lengva užduotis. Šie veiksmai yra mano rekomendacija lituoti šviesos diodą.
- Naudokite pagalbinę ranką, kad laikytumėte lūžio lentą.
- Ant SMD kondensatoriaus krašto ir „XSHUT“padėklo uždėkite šiek tiek litavimo pastos.
- Naudokite lituoklį, kad ant kondensatoriaus krašto uždėtumėte papildomą lydmetalį.
- Ant abiejų 0805 šviesos diodų galų uždėkite litavimo pastos.
- Naudokite lituokliu skardą ant abiejų 0805 šviesos diodų galų.
- Naudokite pincetus, kad įdėtumėte šviesos diodą, kaip parodyta nuotraukoje. Katodo gale paprastai yra pažymėta linija. Mano pavyzdyje katodo gale yra žalia linija. Padėkite katodo galą prie kondensatoriaus galo.
- Naudokite pincetą, kad šviesos diodas būtų šiek tiek prispaustas prie kondensatoriaus, ir lituokite šviesos diodą prie kondensatoriaus galo, tuo pačiu pridėdami šilumos prie kondensatoriaus galo. Nespauskite stipriai šviesos diodo. Jo dangtelis gali sulūžti esant karščiui ir per dideliam slėgiui. Po litavimo švelniai paspauskite šviesos diodą į šoną, kad patikrintumėte, ar šviesos diodas yra lituotas.
- Dabar lituokite šviesos diodą prie XSHUT panardinimo pagalvėlės. Šis žingsnis turėtų būti lengvesnis.
Pastaba: Paveikslėlyje parodytas kondensatoriaus galas yra šios pertraukos plokštės įžeminimo gnybtas. O panardinimo pagalvėlę XSHUT ištraukia rezistorius.
Šviesos diodo bandymas
Šviesos diodas turėtų užsidegti, kai įjungiate maitinimą (pvz., 5 V) ir įžeminate prie pertraukimo plokštės.
4 žingsnis: N-kanalo MOSFET litavimas
Lituoti AO3400 N kanalų MOSFET
Šis MOSFET yra SOT-23 pakuotėje. Turime „sukrauti“jį ant šviesos diodo ir pridėti laidą:
- Įdėkite šiek tiek litavimo pastos ir skardinkite visus tris gnybtus.
- Pincetu uždėkite MOSFET ant 0805 šviesos diodo. S gnybtas turi liesti kondensatoriaus viršų
- Lituokite S gnybtą su kondensatoriaus galu, kaip parodyta nuotraukoje.
- Nupjaukite nedidelę AWG #30 viengyslę vielą ir nuimkite dangą apie 1 cm.
- Lituokliu lydmetalį ištirpinkite XSHUT skylėje iš apačios ir įkiškite #30 laidą iš viršaus, kaip parodyta nuotraukoje.
- Lituokite viršutinį laido galą prie MOSFET D gnybto.
- Nupjaukite papildomą laidą.
Pastaba: MOSFET S gnybtas yra prijungtas prie kondensatoriaus galo, kaip parodyta paveikslėlyje. Šis galas yra įžeminimo gnybtas. MOSFET D terminalas yra prijungtas prie originalaus XSHUT kaiščio.
G terminalas šiuo metu nėra prijungtas. Jo padėtis yra šiek tiek virš kai kurių traukiamųjų rezistorių. Įsitikinkite, kad tarp jų yra tarpas (N-MOS ir rezistorius) ir kad jie nesiliestų vienas su kitu.
5 žingsnis: Jutiklio bloko prijungimas
Bendra magistralės instaliacija
Į bendrą autobusą įeina:
- Vcc galia. Raudona nuotraukoje. Aš naudoju arduino nano su 5v logika. Pertraukimo plokštėje yra LDO ir lygio perjungiklis. Taigi saugu naudoti 5v kaip Vin.
- Gruntas. Nuotraukoje juoda.
- SDA. Žalia nuotraukoje.
- SCL. Geltona nuotraukoje.
Šios keturios eilutės yra bendros. Iškirpkite atitinkamo ilgio laidus ir lydykite juos lygiagrečiai prie visų jutiklių modulių. Aš naudoju 20 cm nuo arduino iki pirmojo jutiklio ir po 5 cm.
XSHUTN ir GPIO laidai
20 cm balta viela yra nuo arduino valdymo kaiščio iki pirmojo jutiklio XSHUTN kaiščio. Tai valdymo linija, reikalinga norint iš naujo nustatyti pirmąjį VL53L0X lustą ir pakeisti I2C adresą.
5 cm balta viela tarp kiekvieno modulio yra daisy grandinės valdymo linija. Aukščiau esantis lustas (pavyzdžiui, lustas #3) GPIO padas yra prijungtas prie pasroviui (pavyzdžiui, lustas #4) XSHUTN kojos (N kanalo MOSFET G terminalas).
Būkite atsargūs, kad G gnybtas nesiliestų su žemiau esančiu rezistoriumi. Į tarpą galite pridėti izoliacinę juostą. Čia gali būti naudojamas apsauginis įdėklas, paprastai tiekiamas kartu su lustu VL53L0X.
Naudokite šilumos pistoletą, kad priklijuotumėte valdymo laidą.
Karštas klijai
Kaip matote nuotraukoje, ant balto valdymo laido, šalia N-MOS G gnybto, yra karštų klijų dėmė. Šis žingsnis yra labai svarbus ir būtinas. Plaukiojantis litavimas tiesiai prie SMD komponento kojos yra labai silpnas. Net mažas spaudimas vielai gali sulaužyti koją. Atlikite šį žingsnį švelniai.
Šviesos diodo bandymas
Kai įjungiate maitinimą (pvz., 3.3v-5v) ir įžeminate jutiklių masyvą, pirmojo modulio šviesos diodas turėtų reaguoti su XSHUTN laido loginiu lygiu. Jei prijungsite XSHUTN prie logikos aukšto (pvz., 3.3v-5v), šviesos diodas turėtų nedegti. Jei prijungsite XSHUTN laidą prie žemo (įžeminimo), pirmojo modulio šviesos diodas turėtų degti.
Visuose tolesniuose moduliuose šviesos diodas turėtų būti išjungtas.
Šis bandymas atliekamas prieš prisijungiant prie arduino.
6 žingsnis: Jutiklių masyvo užbaigimas
Daisy grandinės testavimas
Dabar norime išbandyti, ar I2C adreso keitimas veikia visiems masyvo jutikliams. Kaip minėta, pirmąjį lustą valdo arduino. Antrąjį lustą valdo pirmasis lustas ir pan.
- Nustatykite duonos lentą. 5V ir antžeminis bėgiai yra tiesiogiai sujungti iš 5V Adriano ir žemės. Dabartinis kiekvieno jutiklio sunaudojimas duomenų lape yra 19ma.
- Prijunkite kondensatorių prie maitinimo bėgio, kad padėtumėte stabilizuoti „Vin“.
- Prijunkite „Vin“ir „Ground“iš jutiklių bloko prie maitinimo šaltinio.
- Prijunkite SDA prie „arduino Nano PIN A4“(gali skirtis kiti mikrovaldikliai).
- Prijunkite SCL prie arduino Nano kaiščio A5 (gali skirtis kiti mikrovaldikliai).
- Prijunkite XSHUTN laidą prie arduino Nano kaiščio D2. (Tai galima pakeisti eskize).
- Eikite į „github“https://github.com/FuzzyNoodle/Fuzzy-Radar ir atsisiųskite biblioteką.
- Atidarykite „Daisy_Chain_Testing“pavyzdį ir įkelkite eskizą.
Jei viskas veikia, turėtumėte matyti, kad būsenos šviesos diodai užsidega po vieną, panašiai kaip aukščiau esančiame vaizdo įraše.
Taip pat galite atidaryti serijos langą ir pamatyti inicijavimo eigą. Išvestis atrodytų taip:
Atidaromas prievadas Portas atidarytas Pradinis eskizas. Nustatykite lustą 0 į atstatymo režimą. Visi būsenos šviesos diodai turi būti išjungti. Dabar konfigūruokite jutiklius. LED turėtų užsidegti po vieną. Lusto 0 konfigūravimas - iš naujo nustatykite I2C adresą į 83 - Inicijuokite jutiklį. 1 mikroschemos konfigūravimas - iš naujo nustatykite I2C adresą į 84 - Inicijuokite jutiklį. 2 lusto konfigūravimas - iš naujo nustatyti I2C adresą į 85 - Inicijuokite jutiklį. Radaro masyvo konfigūracija baigta.
Surinkite laikiklį ir rėmą
- Atsargiai uždėkite kiekvieną GY-530 modulį ant laikiklio M2x10 varžtu. Nespauskite MOSFET ir netraukite XSHUTN laidų.
- Įdėkite kiekvieną laikiklį į apskritą rėmą. Naudokite karštus klijus, kad sujungtumėte dalis.
Vėlgi, M2 varžtai, laikikliai ir apskritas rėmas yra naudojami jutikliams išdėstyti apskritime. Galite naudoti bet kokius kitus metodus, pvz., Naudoti kartonines lentas, modelio medieną, molį ar net karštai klijuoti juos ant skardinės.
Mano naudojami 3D spausdinti failai pateikti žemiau. Apvalus rėmas turi 9 modulius, atskirtus 10 laipsnių kampu. Jei turite aštrią akį, ankstesnėse nuotraukose buvo 10 modulių. Priežastis? Žemiau paaiškinta…
Nuimkite apsauginį sluoksnį
Jei atlikote veiksmus nuo pat pradžių, dabar tinkamas laikas pašalinti apsauginį sluoksnį ant VL53L0X lusto. Mano ankstesnėse nuotraukose jos jau pašalintos, nes prieš paskelbdamas šias instrukcijas turiu išbandyti modulius ir įsitikinti, kad koncepcija veikia.
Apie apsauginį pamušalą duomenų lape nurodyta: „Klientas turi jį pašalinti prieš pat pritvirtindamas dangtelį“. Dvi mažos skylės (skleidėjas ir imtuvas) VL53L0X mikroschemoje yra pažeidžiamos taršos, pvz., Dulkių, riebalų, karštų klijų ir kt.
Užteršus, diapazonas gali būti sumažintas, o rodmenys gali būti akivaizdžiai išjungti. Vienas iš mano bandymo modulių yra netyčia užterštas klijų moliu, diapazonas sumažintas iki 40 cm, o atstumo rodmuo klaidingai padidintas 50%. Būk atsargus!
7 žingsnis: Duomenų gavimas
Naudojant „Raw_Data_Serial_Output“pavyzdį
Dabar mums labai patinka matyti duomenis iš mūsų jutiklių masyvo. „GitHub“arduino bibliotekoje:
https://github.com/FuzzyNoodle/Fuzzy-Radar
Yra pavyzdys, vadinamas Raw_Data_Serial_Output. Šis pavyzdys parodo neapdorotų duomenų išvestį iš jutiklių masyvo. Išėjimo vertės yra milimetrais.
Kai jutikliai bus inicijuoti, serijiniame lange turėtumėte matyti kažką panašaus, kai mosuojate ranka per jutiklius:
Tiesioginę demonstraciją žiūrėkite vaizdo įraše.
Naudojant Fuzzy_Radar_Serial_Output pavyzdį
Kitas žingsnis - gauti naudingų duomenų iš šių atstumo rodmenų. Tai, ko norėjome iš RADAR, yra tikslinio objekto atstumas ir kampas.
- Atstumas yra milimetrais, susijęs su jutiklio paviršiumi. Grįžus 0 reiškia, kad taikinys yra už diapazono ribų.
- Kampas yra laipsniais, horizontalioje plokštumoje. Šiuo metu tikimasi, kad jutikliai bus išdėstyti tolygiai. Grįžimas 0 laipsnių reiškia, kad taikinys yra masyvo centre.
Bibliotekoje taikomas tam tikras filtravimo algoritmas:
-
Triukšmo pašalinimas:
- Trumpi (imčių skaičiaus požiūriu) rodmenys laikomi triukšmu ir pašalinami.
- Rodmenys, kurie yra toli nuo vidutinės vertės, pašalinami.
-
Svorio kampo apskaičiavimas (žr. Paveikslėlį aukščiau)
- Manoma, kad tikslinis objektas yra lygus paviršius
- Jei objektą vienu metu aptiko keli jutikliai, kiekvieno jutiklio svoris apskaičiuojamas.
- Kiekvieno jutiklio svoris yra atvirkščiai susijęs su jo atstumu.
- Rezultato angelas apskaičiuojamas pagal kiekvieno jutiklio svertinį kampą.
-
Pagrindinis tikslo pasirinkimas:
- Jei yra daugiau nei viena rodmenų grupė, lieka plačiausia (su daugiau jutiklių rodmenų skaičiaus) grupė.
- Pvz., Jei prieš jutiklių masyvą padėsite dvi rankas, daugiau jutiklių aptikta ranka išlieka.
-
Artimiausias taikinių pasirinkimas:
- Jei aptinkama daugiau nei viena to paties pločio grupė, lieka artimiausio atstumo grupė.
- Pavyzdžiui, jei priešais jutiklių masyvą padėjote dvi rankas ir dvi aptiktos grupės turi tą patį jutiklių skaičių, lieka arčiau jutiklio esanti grupė.
Išėjimo atstumas ir kampas išlyginami per žemo pralaidumo filtrą
„Raw_Data_Serial_Output“neapdoroti atstumo rodmenys paverčiami atstumo ir kampo reikšmėmis. Įkėlę eskizą, galite atidaryti serijos langą, kad pamatytumėte panašų rezultatą:
Neaptikta jokių objektų. Nerasta jokių objektų. Nerasta objekto. Atstumas = 0056 kampas = 017 atstumas = 0066 kampas = 014 atstumas = 0077 kampas = 011 atstumas = 0083 kampas = 010 atstumas = 0081 kampas = 004 atstumas = 0082 kampas = 000 atstumas = 0092 kampas = 002 atstumas = 0097 kampas = 001 atstumas = 0096 kampas = 001 atstumas = 0099 kampas = 000 atstumas = 0101 kampas = -002 atstumas = 0092 kampas = -004 atstumas = 0095 kampas = -007 atstumas = 0101 kampas = -008 atstumas = 0112 kampas = -014 atstumas = 0118 kampas = -017 atstumas = 0122 kampas = -019 atstumas = 0125 kampas = -019 atstumas = 0126 kampas = -020 atstumas = 0125 kampas = -022 atstumas = 0124 kampas = -024 atstumas = 0133 kampas = -027 atstumas = 0138 kampas = - 031 Atstumas = 0140 Kampas = -033 Atstumas = 0136 Kampas = -033 Atstumas = 0125 Kampas = -037 Atstumas = 0120 Kampas = -038 Atstumas = 0141 Kampas = -039 Nerasta objekto. Nerasta objekto. Nerasta objekto.
Taigi dabar turite RADARĄ (LIDAR):
- Mažesni nei ultragarso jutiklių moduliai
- Nėra judančių dalių
- Skenuoja 40 Hz dažniu.
- Suformuotas kaip diržas, gali būti montuojamas ant apskrito rėmo
- Naudokite tik tris valdymo laidus, taip pat maitinimą ir įžeminimą.
- Turi diapazoną nuo 30 milimetrų iki maždaug 1000 milimetrų.
Tolesniuose žingsniuose parodysime keletą šaunių demonstracijų!
8 žingsnis: lazerinis žymeklis (demonstracija)
Tai vienas iš stacionaraus radaro naudojimo pavyzdžių, kurį sukūrėme atlikdami ankstesnius veiksmus. Šis žingsnis nėra išsamiai parašytas, nes tai yra Radaras. Apskritai, norint sukurti šį demonstracinį projektą, jums reikia šių papildomų elementų:
- Du servo
- Lazerinį rašiklį skleidžianti galvutė
- MOSFET arba NPN tranzistorius lazerio galvutės išėjimui valdyti
- Servo maitinimo šaltinis. Jis turi būti atskirtas nuo mikrovaldiklio.
Kodą galima atsisiųsti čia.
Žiūrėkite pateiktą vaizdo įrašą.
9 žingsnis: žiūrėjimas į Poopeyes (demonstracija)
Radaro naudojimo toli objekto vietai ir atstumui sekti demonstravimas.
Rekomenduojamas:
Infraraudonųjų spindulių radaras su „Arduino“: 6 žingsniai
Infraraudonųjų spindulių radaras su „Arduino“: Šiame mažame projekte norėčiau parodyti, kaip galite sukurti paprastą radarą namuose su „Arduino“. Internete yra daug panašių projektų, tačiau visi jie naudoja ultragarso jutiklį atstumui matuoti. Šiame projekte naudojuosi
„Arduino“priešo aptikimo radaras: 3 žingsniai
„Arduino“priešo aptikimo radaras: Šiame projekte aš jums parodysiu, kaip padaryti priešą aptinkantį radarą, kad būtų atremta jūsų namų bazė. Procesas yra labai paprastas, tiesiog sekite mano žingsnį ir jūsų kaimynas daugiau niekada nepavogs jūsų vaisių, kai įdiegsite šį įrenginį
Ultragarso radaras naudojant „Arduino Nano“ir serijinį braižytuvą: 10 žingsnių
Ultragarso radaras naudojant „Arduino Nano“ir serijinį braižytuvą: Šioje instrukcijoje sužinosime apie servo bibliotekos pagrindus, taip pat nustatysime ultragarso jutiklį ir naudosime jį kaip radarą. šio projekto išvestis bus matoma serijinio braižytuvo monitoriuje
„TFMini Lidar“ekranas - kaip tik radaras su šviesa! :-): 3 žingsniai
„TFMini Lidar“ekranas - kaip tik radaras su šviesa! :-): Yra daug dalykų, kurie susidėjo šiam darbui sukurti, tačiau didžiausias (ir tai, kas mane įkvėpė tai padaryti) yra „Arduino radaro projektas“. Dejan Nedelkovski rado datą howtomechatronics.com (data nežinoma). https: // howtomechatronics
Periferinis radaras silpnaregiams: 14 žingsnių
Periferinis radaras silpnaregiams: dėl siaubingos avarijos mano draugas neseniai prarado regėjimą dešine akimi. Jis ilgą laiką buvo be darbo ir grįžęs man pasakė, kad vienas iš labiausiai nervinančių dalykų, su kuriais tenka susidurti, yra nežinojimas, kas yra