Co je ToF (Total of Function) Technologie (Time-of-Flight)?
Time-of-Flight (ToF) je metoda měření vzdálenosti, která vypočítává, jak dlouho trvá signálu (obvykle světelnému nebo laserovému pulzu), než dorazí k cíli a vrátí se zpět k senzoru. ToF HAT využívá tento princip s laserovým zdrojem světla a vysoce citlivými detektory k výpočtu vzdálenosti s vysokou přesností.
-
Vyzařování světla: Senzor vysílá laserový pulz.
-
Odraz: Pulz se odráží od cílového objektu.
-
Měření času: Senzor zaznamenává čas, který světlu trvalo, než se vrátilo.
-
Výpočet vzdálenosti: Pomocí rychlosti světla a času, který trvá, než se pulz vrátí, senzor vypočítá vzdálenost k objektu.

Tato metoda měření vzdálenosti je vysoce přesná a funguje nezávisle na odrazivosti povrchu, což je významná výhoda oproti tradičním ultrazvukovým senzorům.
Jak používat ToF Hat
Potřebné materiály
-
M5StickCPlus2: Slouží jako hlavní řadič a je zodpovědný za zobrazování dat
-
M5StickC ToF HAT: Vysoce přesné laserové snímače vzdálenosti pro měření vzdálenosti
Část kódu
importovat operační systém, systém, v/v
import M5
z importu M5 *
z hardware import *
z hat import ToFHat
štítek0 = Žádný
štítek1 = Žádný
i2c0 = Žádný
pin19 = Žádný
pwm2 = Žádné
hat_tof_0 = Žádný
nastavení def():
globální label0, label1, i2c0, pin19, pwm2, hat_tof_0
M5.begin()
label0 = Widgets.Label("label0", 0, 0, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu18)
label1 = Widgets.Label("label1", 100, 0, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu18)
Widgets.setRotation(1)
i2c0 = I2C(0, scl=Pin(26), sda=Pin(0), freq=100000)
hat_tof_0 = ToFHat(i2c0)
pin19 = Pin(19, režim=Pin.OUT)
pwm2 = PWM(Pin(2), frekvence=5000, pracovní_cyklus=512)
def smyčka():
globální label0, label1, i2c0, pin19, pwm2, hat_tof_0
M5.aktualizace()
label0.setColor(0x33ff33, 0x000000)
label1.setColor(0x33ff33, 0x000000)
label0.setText(str('vzdálenost'))
label1.setText(str(hat_tof_0.get_distance()))
if (hat_tof_0.get_distance()) < 10:
pin19.hodnota(1)
pwm2.duty(512)
jiný:
pin19.hodnota(0)
pwm2.duty(0)
if __name__ == '__main__':
pokus:
nastavení()
zatímco True:
smyčka()
kromě (Exception, KeyboardInterrupt) jako e:
pokus:
z utility importuj print_error_msg
print_error_msg(e)
kromě ImportError:
print("prosím aktualizujte na nejnovější firmware")
M5Stack UIflow
Inicializujte IIC, hat, nastavte GPIO19 do režimu výstupu pro ovládání zapnutí/vypnutí světla a nastavte GPIO2 na PWM frekvenci a pracovní cyklus pro ovládání bzučáku.

Zobrazte vzdálenost změřenou na M5stickCplus2 a nastavte vzdálenost, při které chcete mít varování.

Klíčové komponenty M5StickC ToF MÁ
Laserové světlo Zdroj:
Laserový pulz je vyslán a odráží se zpět od objektu, což umožňuje měření vzdálenosti.
Pole senzorů:
Senzor obsahuje fotodetektory (často APD - lavinová fotodiode), které měří čas, za který se laser vrátí. Tyto detektory jsou navrženy tak, aby byly extrémně citlivé na přicházející odražené světlo.Rozhraní I2C:
I2C je jednoduchý, nízkoenergetický komunikační protokol, který umožňuje zařízení M5StickC komunikovat se senzorem pouze pomocí dvou vodičů: datového (SDA) a hodinového (SCL), spolu s napájením a zemí.
Napájení:
Modul obvykle pracuje na 3,3 V nebo 5 V, které jsou dodávány přes I2C připojení k M5StickC. To umožňuje senzoru efektivní provoz s nízkou spotřebou energie vhodnou pro aplikace napájené z baterie.
Technické specifikace podrobně
Zde je podrobnější seznam specifikací pro M5StickC ToF MÁ:
-
Rozsah vzdálenosti: Senzor může měřit vzdálenosti od 0,05 metru (5 cm) do 2 metrů s vysokou přesností.
-
Přesnost měření: Senzor nabízí přesnost ± 3% měřené vzdálenosti. To znamená například, že pokud je objekt detekován ve vzdálenosti 1 metru, měření vzdálenosti se může lišit přibližně o 3 cm.
-
Doba odezvy: Senzor může poskytovat měření vzdálenosti přibližně každých 50 milisekund, v závislosti na vzdálenosti. Je dostatečně rychlý pro aplikace v reálném čase, jako je detekce překážek a robotická navigace.
-
Provozní napětí: Provozní napětí je mezi 3,3V a 5V, což zajišťuje kompatibilitu s M5StickC a dalšími mikrokontroléry, které pracují v tomto napěťovém rozsahu.
-
Spotřeba energie: Spotřeba energie je poměrně nízká, obvykle kolem 15-20mA během provozu. To z něj činí ideální volbu pro systémy napájené bateriemi nebo s nízkou spotřebou energie.
-
Provozní teplota: Senzor funguje efektivně v teplotním rozsahu -10°C až 60°C, což mu umožňuje použití v široké škále prostředí.
-
Výstup Data: Senzor vysílá data o vzdálenosti prostřednictvím I2C komunikace, kterou může snadno číst jakýkoli kompatibilní mikrokontrolér, včetně M5StickC.
-
Režim detekce: ToF HAT lze použít jak v režimu kontinuálního měření , tak v režimu spouštěného měření, v závislosti na konkrétní aplikaci.
Jak M5StickC ToF MÁ Díla
Senzor funguje tak, že vysílá laserový pulz a poté čeká, až se pulz odrazí od blízkého objektu. Zde je rozpis, jak tento proces probíhá:Vysílání laserového pulzu: Senzor vysílá krátký laserový pulz, který se pohybuje rychlostí světla. Laserový paprsek se odráží od objektů, na které narazí.Detekce odraženého světla: Odražené světlo je přijato fotodetektorem senzoru. Toto světlo se pak používá k měření doby průchodu mezi vysláním a přijetím pulzu.
Výpočet vzdálenosti:
Senzor vypočítává vzdálenost pomocí vzorce:
Vzdálenost = \frac{c \times t}{2}
kde:
-
CCC je rychlost světla v daném prostředí (přibližně 3×10^8 metrů za sekundu).
-
je to doba, kterou světelný pulz potřebuje k cestě k cíli a zpět.
-
Výstupní data: Jakmile je vzdálenost vypočítána, senzor odešle hodnotu přes I2C. M5StickC pak může hodnotu přečíst a zpracovat ji pro zobrazení, akce nebo další výpočty.
Použití M5StickC ToF MÁ v Projektech
-
Snímaní blízkosti pro chytré domácí systémy: Senzor lze použít v aplikacích chytré domácnosti k detekci, když je někdo blízko dveří nebo vchodu. Například můžete nastavit systém tak, aby zapnul světla, když se někdo přiblíží, nebo spustil akci, když někdo stojí v určité vzdálenosti.
-
Měření objektů v průmyslových aplikacích: ToF HAT lze také použít v průmyslové automatizaci k měření velikosti nebo polohy objektů na výrobní lince nebo ke sledování pohybujících se dílů.
-
Virtuální realita (VR) a Rozšířená realita (AR): V nastaveních VR/AR je přesné snímání hloubky a vzdálenosti klíčové pro ponoření a interakci. ToF HAT lze použít k sledování vzdálenosti mezi uživatelem a objekty v prostředí VR/AR.
Integrace s M5StickC
- Nastavení hardwaru:
- Zasuňte ToF HAT do I2C portu M5StickC. M5StickC automaticky napájí a komunikuje se senzorem ToF přes sběrnici I2C.
- Programování:
- Alternativně můžete použít Arduino IDE nebo MicroPython k napsání vlastního kódu, což umožňuje větší kontrolu a flexibilitu ve vašich projektech.
- Můžete použít UIFlow, grafickou programovací platformu, k interakci se senzorem a čtení hodnot vzdálenosti. UIFlow usnadňuje programování M5StickC a přístup k datům ToF senzoru pomocí několika bloků.
- Příklad programu v UIFlow bloku:
- V UIFlow můžete použít bloky k inicializaci senzoru, čtení vzdálenosti a zobrazení výsledku na obrazovce nebo k provedení akce na základě změřené vzdálenosti.
- Zpracování dat:
- Jakmile získáte data o vzdálenosti, můžete je zpracovat a spustit akce. Například:
- Pokud je vzdálenost menší než práh, aktivujte bzučák nebo spusťte alarm.
- Pokud stavíte robota, změňte jeho směr, když je detekována překážka.
Závěr
