Obsah:
- Krok 1: Zhromažďovanie materiálu
- Krok 2: Implementácia na počítači pomocou aplikácie Benewake
- Krok 3: Implementácia na počítači pomocou Pythonu (PySerial)
- Krok 4: Implementácia založená na Raspberry Pi
- Krok 5: O kódexe
Video: Benewake LiDAR TFmini (kompletný sprievodca): 5 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Popis
Modul Benewake TFMINI Micro LIDAR má svoje jedinečné optické, štruktúrne a elektronické prevedenie. Tento výrobok má tri hlavné výhody: nízke náklady, malý objem a nízku spotrebu energie.
Vstavaný algoritmus prispôsobený vnútornému aj vonkajšiemu prostrediu môže zaručiť vynikajúci výkon pri nízkych nákladoch a v malom objeme, ktorý výrazne rozširuje aplikačné polia a scenáre systému LiDAR a vytvára pevný základ pre budúce „oči“v inteligentnom éra.
technické údaje
- Vstupné napätie: 5v
- Priemerný výkon: 0,12 W.
- Komunikačný protokol: UART (prenosová rýchlosť: 115200)
- Prevádzková teplota: -20 ℃ ~ 60 ℃
- FOV: 2,3 °
Rozmery
- Rozmery: 42 mm x 15 mm x 16 mm
- Hmotnosť: 6,1 g
Obmedzenia
Rozsah „slepého“0 cm-30 cm
Kde kúpiť
- RobotShop
- Amazon
Tento návod vyžaduje, aby ste sa zoznámili s nasledujúcim:
- Základná elektronika
- Ručné nástroje ako strihače drôtov a odizolovače
- Čítanie schém a schém zapojenia
- Programovanie v C/C ++ pre Arduino (voliteľné)
- Programovanie v Pythone pre Raspberry Pi (voliteľné)
Krok 1: Zhromažďovanie materiálu
Tento návod vás prevedie rôznymi spôsobmi nasadenia TFmini LiDAR pomocou počítača so systémom Windows a Raspberry Pi. Každá metóda má svoje požiadavky a môže sa líšiť podľa vašich potrieb.
** Benewake TFmini LiDAR budete potrebovať pre každý prípad (samozrejme) **
Pre implementáciu na báze PC:
- OS: Windows
- USB-TTL prevodník
- Prepojovacie vodiče
Pre implementáciu založenú na Raspberry Pi:
- Malinový koláč
- Prepojovacie vodiče
- LED diódy (voliteľné)
- Konvertor USB-TTL (voliteľný)
- Breadboard (voliteľné)
- Rezistor (medzi 100-1k Ohm) (voliteľný)
Krok 2: Implementácia na počítači pomocou aplikácie Benewake
-
Pripojte TFmini LiDAR k prevodníku USB-TTL pomocou prepojovacích (mužsko-ženských) vodičov podľa zobrazenej schémy
- Červený vodič 5V
- Čierny drôt GND
- Bielo/modrý drôt Tx
- Zelený drôt Rx
- Pripojte USB-TTL k počítaču
- Prejdite do Správcu zariadení (Win + X) a v časti Porty (COM a LPT) vyhľadajte položku „Prolific USB-to-Serial Comm Port“. Zaistite, aby systém Windows zariadenie rozpoznal
- Prevezmite a rozbaľte súbor WINCC_TF.rar
- Spustite WINCC_TFMini.exe z extrahovaných súborov
- Vyberte zodpovedajúci port COM z rozbaľovacej ponuky v aplikácii Benewake pod nadpisom Sériový port
- Kliknite na PRIPOJIŤ
Krok 3: Implementácia na počítači pomocou Pythonu (PySerial)
- Pripojte TFmini LiDAR k počítaču pomocou prevodníka USB-TTL
- Stiahnite a otvorte PC_Benewake_TFmini_LiDAR.py pomocou Python IDLE (uistite sa, že máte v počítači nainštalovaný PySerial a Python)
- Upravte port COM v kóde tak, aby zodpovedal portu COM prevodníka USB-TTL vo vašom počítači (pozri obrázok)
- Kliknite na kartu Spustiť
- Kliknite na položku Spustiť modul
** Vysvetlenie kódu nájdete v kroku 5
Krok 4: Implementácia založená na Raspberry Pi
- Pripojte TFmini LiDAR k RPi pomocou prevodníka USB-TTL alebo portu UART pomocou GPIO
- Stiahnite a otvorte Pi_benewake_LiDAR.py pomocou Python IDLE
- Ak používate prevodník USB-TTL s RPi, otvorte Arduino IDE. Kliknite na Nástroje -> Sériový port a podľa toho upravte kód. Ak používate port UART GPIO, napíšte /dev /ttyAMA0
- Spustite kód
** Kód je možné použiť na vytlačenie vzdialenosti, ale pretože RPi nemá veľký výpočtový výkon, odporúča sa rozsvietiť LED diódu, ak je zaznamenaná vzdialenosť pod určitým rozsahom (schéma pre LED s RPi je pripojená)
Otázka: Prečo používať prevodník USB-TTL s RPi?
RPi má iba jeden port UART a niekedy je potrebné vložiť niekoľko modulov, ktoré vyžadujú komunikáciu UART. USB-TTL poskytuje ďalší port UART k RPi, čo nám dáva možnosť pripojiť k RPi viac ako jedno zariadenie UART (napríklad dva alebo viac TFmini LiDAR).
Krok 5: O kódexe
Kód je možné rozdeliť na tri časti:
- Nadväzuje sa spojenie
- Zapisovanie údajov
- Čítanie údajov
Nadväzovanie spojenia:
Po importovaní potrebných hlavičkových súborov nadviažeme spojenie s naším TFmini LiDAR uvedením jeho portu COM, prenosovej rýchlosti a časového limitu pripojenia.
ser = serial. Serial ('COM7', 115200, timeout = 1) #PC
ser = serial. Serial ('/dev/ttyUSB1', 115200, timeout = 1) #Raspberry Pi
Zapisovacie údaje:
Kód je možné rozdeliť na dve časti, na písanie a príjem. Na príjem údajov je potrebné, aby ste určitý príkaz preposlali TFmini LiDAR (súčasť inicializačného procesu). V tomto prípade som vybral 4257020000000106. Aj keď RPi beží na tej istej verzii Pythonu, ale dochádza k miernej zmene syntaxe, pretože RPi neakceptuje iné údaje ako binárne.
ser.write (0x42)
ser.write (0x57) ser.write (0x02) ser.write (0x00) ser.write (0x00) ser.write (0x00) ser.write (0x01) ser.write (0x06)
Údaje o čítaní:
Tabuľka poskytnutá v dátovom liste nám dáva „rozpis“9-bajtovej správy UART. Prvé dva bajty sú záhlavie rámca s hodnotou hex 0x59 (znak 'Y'). Dajú sa prečítať a použiť na identifikáciu začiatku správy UART.
if (('Y' == ser.read ()) and ('Y' == ser.read ())):
Po prečítaní rámca záhlavia je možné prečítať ďalšie dva bajty, ktoré nesú údaje o vzdialenosti. Údaje o vzdialenosti sú rozdelené do dvoch 8 -bitových paketov, Dist_L (Byte3) - Lower 8bits a Dist_H (Byte4) - Higher 8bits.
Dist_L = ser.read () #Byte3Dist_H = ser.read () #Byte4
Vynásobením Dist_H číslom 256 sa binárne údaje posunú o 8 doľava (ekvivalent "<< 8"). Teraz bolo možné jednoducho pridať údaje o nižšej 8-bitovej vzdialenosti, Dist_L, čo vedie k 16-bitovým údajom Dist_Total.
Dist_Total = (ord (Dist_H) * 256) + (ord (Dist_L))
Pretože máme so sebou hodnotu „dešifrovanej“vzdialenosti, nasledujúcich päť bajtov by sme mohli ignorovať. Načítané údaje nie sú nikde uložené.
pre i v rozsahu (0, 5): ser.read ()
** Na inom mieste môžete nájsť „oneskorenie“(time.sleep v Pythone) začlenené pred koniec cyklu z dôvodu, že TFmini LiDAR má pracovnú frekvenciu 100 Hz. Toto oneskorenie „oneskorenia programu“bude mať za následok aktualizáciu údajov po určitom oneskorení. Verím, že keďže už čakáme na nahromadenie údajov až na 9 bajtov, nemalo by dôjsť k ďalšiemu zdržaniu
#time.sleep (0,0005) #Oneskorenie je komentované
while (ser.in_waiting> = 9):
Odporúča:
Kompletný sprievodca pre spájkovanie SMD pre začiatočníkov: 5 krokov (s obrázkami)
Kompletný sprievodca pre spájkovanie SMD pre začiatočníkov: V poriadku, takže spájkovanie je pre súčiastky s priechodnými dierami celkom jednoduché, ale potom sú chvíle, keď potrebujete ísť maličkým *sem vložte referenciu ant-man *a schopnosti, ktoré ste sa naučili pri spájkovaní TH, jednoducho nepoužívajte. platí už viac. Vitajte vo svete
Zabezpečovacie systémy CCTV - kompletný sprievodca nastavením: 7 krokov
Zabezpečovacie systémy CCTV - kompletný sprievodca nastavením: Hej, chlapci, dúfam, že sa všetci majú skvele. Ak to čítate, pravdepodobne plánujete zvýšiť bezpečnosť svojho domu alebo iného majetku, aby ste zaistili bezpečnosť seba a svojich blízkych, ale skončili ste zmätení so všetkými
Ako vytvoriť profesionálnu dosku s plošnými spojmi: Kompletný sprievodca: 10 krokov (s obrázkami)
Ako vytvoriť profesionálnu dosku s plošnými spojmi: Kompletný sprievodca: Ahoj všetci, dnes vám ukážem, ako vyrobiť profesionálnu DPS na zlepšenie elektronických projektov. Začnime
2 doláre Arduino. ATMEGA328 ako samostatný. Jednoduché, lacné a veľmi malé. Kompletný sprievodca .: 6 krokov (s obrázkami)
2 doláre Arduino. ATMEGA328 ako samostatný. Jednoduché, lacné a veľmi malé. Kompletný sprievodca: V tomto návode sa naučíte používať čip mikrokontroléra Arduino ATMEGA328 ako samostatný mikrokontrolér. Stoja len 2 doláre, môžu robiť to isté ako vaše Arduino a vaše projekty budú extrémne malé. Pokryjeme rozloženie pinov,
Benewake TFmini - lacný LiDAR s nástrojom Teensy 3,5: 3 kroky
Benewake TFmini - Lacný LiDAR s Teensy 3.5: Jednotka Benewake TFmini LiDAR je malý, veľmi ľahký snímač LiDAR za približne 50 dolárov v Kanade. Dokumentácia bola dobrá, ale neúplná. Poskytoval podrobnosti o príjme údajov zo snímača, ale zabudol spomenúť signál potrebný na vloženie signálu