Tartalomjegyzék:

Milyen magas vagy?: 7 lépés
Milyen magas vagy?: 7 lépés

Videó: Milyen magas vagy?: 7 lépés

Videó: Milyen magas vagy?: 7 lépés
Videó: "Bassza meg az Isten" 2024, November
Anonim
Milyen magas vagy?
Milyen magas vagy?

Kövesse gyermeke növekedését digitális stadiométerrel

Gyermekkoromban anyám rendszeresen vette a magasságomat, és felírta egy blokkjegyzetre, hogy kövesse a növekedésemet. Természetesen, mivel nem volt otthon sztadiométer, a falnak vagy az ajtófélfának álltam, miközben ő szalaggal mérte a mérést. Most van egy újszülött unokám, és amikor elkezd járni, a szülei minden bizonnyal érdeklődni fognak a magasságának növekedése mellett. Így született meg a digitális stadiométer ötlete.

Az Arduino Nano és a "Time of Flight" érzékelő körül készül, amely azt méri, hogy mennyi ideig tart az apró lézerfény visszapattanása az érzékelőhöz.

1. lépés: Alkatrészek és alkatrészek

Alkatrészek és alkatrészek
Alkatrészek és alkatrészek
  • Arduino Nano Rev 3
  • CJMCU 530 (VL53L0x) lézeres érzékelő
  • KY-040 forgó kódoló
  • SSD1306 OLED 128x64 kijelző
  • Passzív hangjelző
  • 2x10KΩ ellenállások

2. lépés: Az érzékelő

Az érzékelő
Az érzékelő

Az ST Microelectronics VL53L0X egy új generációs Time-of-Flight (ToF) lézeres távolságmérő modul egy apró csomagolásban, amely pontos távolságmérést biztosít, függetlenül a hagyományos technológiáktól eltérően.

2 m -ig képes abszolút távolságokat mérni. A belső lézer teljesen láthatatlan az emberi szem számára (hullámhossz 940 nm), és megfelel a legújabb biztonsági szabványoknak. Egy sor SPAD -t (Single Photon Avalanche Diodes) tartalmaz

A kommunikáció az érzékelővel I2C -n keresztül történik. Mivel a projekt egy másik telepített I2C -t (az OLED) is tartalmaz, 2 x 10KΩ felhúzó ellenállás szükséges az SCL és SDA vonalakon.

A CJMCU-530-at használtam, amely egy kitörési modul az ST Microelectronics VL53L0X-jével.

3. lépés: Műveletek és az érzékelő elhelyezése

Felépítése és tesztelése után a készüléket az ajtókeret tetejének közepére kell felszerelni; ez azért van, mert ha túl közel rögzíti a falhoz vagy egy akadályhoz, az infravörös lézersugár beavatkozik, és áthallási jelenséget okoz a mérésen. Egy másik lehetőség az lenne, ha a készüléket egy hosszabbító rúdon keresztül telepítenék, hogy eltávolítsák a faltól, de ez kényelmetlenebb.

Óvatosan mérje meg a megfelelő hosszúságot a padló és az érzékelő között (beállítandó eltolás), és kalibrálja a készüléket (lásd a következő lépést). A kalibrálás után a készülék újra kalibrálás nélkül használható, kivéve, ha másik helyzetbe helyezi.

Kapcsolja be a készüléket, és helyezze magát alatta, egyenes és szilárd helyzetbe. A mérést akkor kell elvégezni, ha a készülék 2,5 másodpercnél hosszabb ideig egyenletes hosszúságot észlel. Ekkor "sikeres" zenei hangot ad ki, és a mért értéket a kijelzőn tartja.

4. lépés: Eltolás kalibrálása

Eltolás kalibrálása
Eltolás kalibrálása
Eltolás kalibrálása
Eltolás kalibrálása
Eltolás kalibrálása
Eltolás kalibrálása
Eltolás kalibrálása
Eltolás kalibrálása

Amint azt korábban említettük, be kell állítania a helyes értéket (centiméterben) az eltoláshoz, a mérőeszköz és a padló közötti távolsághoz. Ezt a forgó jeladó gomb megnyomásával érheti el (amely nyomógombos kapcsolóval rendelkezik). A kalibrálási mód aktiválása után állítsa be a megfelelő távolságot a gomb elforgatásával (az óramutató járásával megegyezően centiméterek, az óramutató járásával ellentétes kivonások). Az eltolás 0 és 2,55 m között van.

Ha kész, csak nyomja meg újra a gombot. A belső hangjelző két különböző hangot generál, hogy akusztikus visszajelzést adjon. A kalibrálási mód 1 perces időtúllépéssel rendelkezik: ha nem állítja be az eltolást ezen az időkorláton belül, akkor a készülék kilép a kalibrálási módból, és a tárolt eltolás megváltoztatása nélkül visszaáll a mérési módba. Az eltolást az Arduino EEPROM memóriája tárolja, hogy megőrizze azt a későbbi leállítások során.

5. lépés: Kód

Az ST Microelectronics kiadott egy teljes API könyvtárat a VL53L0X számára, beleértve a gesztusok észlelését is. Eszközöm szempontjából könnyebben találtam a Pololu VL53L0X könyvtárát az Arduino számára. Ez a könyvtár célja, hogy gyorsabb és egyszerűbb módot kínáljon a VL53L0X használatára Arduino-kompatibilis vezérlővel, szemben az ST API-jának testreszabásával és összeállításával az Arduino számára.

Az érzékelőt nagy pontosságú és hosszú tartományba állítottam, hogy nagyobb szabadságot biztosítsak a telepítési magasság és az eltolás beállításához. Ez lassabb észlelési sebességet eredményez, ami egyébként elegendő ennek az eszköznek a céljaira.

Az eltolást az Arduino EEPROM memóriája tárolja, amelynek értékei a tábla kikapcsolásakor megmaradnak.

A ciklus szakaszban az új mértékegységet összehasonlítják az előzővel, és ha 2,5 másodperc telt el ugyanazon a mértéken (és ha NEM Offrange vagy Timeout érték), akkor a mértékegységet levonják az eltolásból, és folyamatosan megjelennek a kijelzőn. A piezo zümmögő "sikeres" rövid zenét játszik le, hogy hangosan értesítse a felhasználót.

6. lépés: Sémák

Vázlatok
Vázlatok

7. lépés: Szekrény/tok és összeszerelés

Ház/tok és összeszerelés
Ház/tok és összeszerelés

Mivel nagyon is ismert, hogy képtelen vagyok négyszögletes ablakokat vágni a kereskedelmi dobozokon, ezért úgy döntöttem, hogy megtervezem egy tokot CAD -el, és elküldöm 3D nyomtatásra. Ez nem a legolcsóbb választás, de mégis kényelmes megoldás, mivel lehetőséget ad arra, hogy nagyon precíz és rugalmas legyen az összes alkatrész pozicionálásában.

A kis lézerchipet fedőüveg nélkül szerelik fel, hogy elkerüljék az áthallást és a szabálytalan intézkedéseket. Ha a lézert egy fedél mögé kívánja telepíteni, akkor komplex kalibrálási eljárást kell elvégeznie, amint azt az ST Microelectronics dokumentációja írja.

Ajánlott: