Sommario:
- Passaggio 1: raccolta di materiale
- Passaggio 2: implementazione basata su PC utilizzando l'app Benewake
- Passaggio 3: implementazione basata su PC utilizzando Python (PySerial)
- Passaggio 4: implementazione basata su Raspberry Pi
- Passaggio 5: Informazioni sul codice
Video: Benewake LiDAR TFmini (Guida completa): 5 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Descrizione
Il modulo Micro LIDAR TFMINI Benewake ha i suoi esclusivi design ottici, strutturali ed elettronici. Il prodotto possiede tre vantaggi principali: basso costo, volume ridotto e basso consumo energetico.
L'algoritmo integrato adattato agli ambienti interni ed esterni può garantire un'eccellente prestazione di portata a basso costo e in un volume ridotto, che amplia notevolmente i campi di applicazione e gli scenari di LiDAR e pone solide basi per gli "occhi" futuri nel settore intelligente era.
Specifiche
- Tensione di ingresso: 5v
- Potenza media: 0,12 W
- Protocollo di comunicazione: UART (Baud rate: 115200)
- Temperatura di esercizio: -20 ℃ ~ 60
- FOV: 2,3°
Dimensioni
- Dimensioni: 42mmx15mmx16mm
- Peso: 6,1 g
Limitazioni
Gamma "cieca" 0cm-30cm
Dove comprare
- RobotShop
- Amazon
Questo istruibile richiede che tu abbia familiarità con quanto segue:
- Elettronica di base
- Strumenti manuali come tronchesi e spellafili
- Lettura di schemi e schemi di collegamento
- Programmazione C/C++ per Arduino (opzionale)
- Programmazione Python per Raspberry Pi (opzionale)
Passaggio 1: raccolta di materiale
Questa istruzione ti guiderà attraverso diversi modi di distribuire TFmini LiDAR utilizzando il tuo PC Windows e Raspberry Pi. Ogni metodo ha i suoi requisiti e può variare in base alle tue esigenze.
**Avrai bisogno di Benewake TFmini LiDAR per ogni caso (ovviamente)**
Per l'implementazione basata su PC:
- Sistema operativo: Windows
- Convertitore USB-TTL
- Cavi per ponticelli
Per l'implementazione basata su Raspberry Pi:
- Lampone Pi
- Cavi per ponticelli
- LED (opzionale)
- Convertitore USB-TTL (opzionale)
- Tagliere (opzionale)
- Resistenza (tra 100-1k Ohm) (opzionale)
Passaggio 2: implementazione basata su PC utilizzando l'app Benewake
-
Collegare TFmini LiDAR al convertitore USB-TTL utilizzando i cavi dei ponticelli (maschio-femmina) secondo lo schema mostrato
- Filo Rosso 5V
- Filo nero GND
- Cavo bianco/blu Tx
- Cavo verde Rx
- Collega USB-TTL al tuo computer
- Vai a Gestione dispositivi (Win + X) e individua "Porta di comunicazione da USB a seriale prolifica" in Porte (COM e LPT). Assicurati che Windows riconosca il dispositivo
- Scarica ed estrai WINCC_TF.rar
- Esegui WINCC_TFMini.exe dai file estratti
- Selezionare la porta COM corrispondente dal menu a discesa nell'app Benewake sotto la voce Porta seriale
- Fare clic su CONNETTI
Passaggio 3: implementazione basata su PC utilizzando Python (PySerial)
- Collega TFmini LiDAR al PC utilizzando il convertitore USB-TTL
- Scarica e apri PC_Benewake_TFmini_LiDAR.py usando Python IDLE (assicurati di avere PySerial e Python installati sul tuo PC)
- Modifica la porta COM nel codice in modo che corrisponda alla porta COM del convertitore USB-TTL sul tuo PC (vedi immagine)
- Fare clic sulla scheda Esegui
- Fare clic su Esegui modulo
**Fare riferimento al passaggio 5 per la spiegazione del codice
Passaggio 4: implementazione basata su Raspberry Pi
- Collega TFmini LiDAR a RPi utilizzando il convertitore USB-TTL o la porta UART utilizzando GPIO
- Scarica e apri Pi_benewake_LiDAR.py usando Python IDLE
- Se stai utilizzando un convertitore USB-TTL con RPi, apri Arduino IDE. Fare clic su Strumenti -> Porta seriale e modificare il codice di conseguenza. Se stai usando la porta UART GPIO, scrivi /dev/ttyAMA0
- Esegui il codice
**Il codice potrebbe essere utilizzato per stampare la distanza, ma poiché RPi non ha molta potenza di elaborazione, si consiglia di accendere un LED se la distanza registrata è inferiore a un determinato intervallo (è allegato lo schema per LED con RPi)
D. Perché usare il convertitore USB-TTL con RPi?
RPi ha solo una porta UART e talvolta è necessario inserire alcuni moduli che richiedono la comunicazione UART. USB-TTL fornisce una porta UART aggiuntiva a RPi dandoci l'opportunità di collegare più di un dispositivo UART (come due o più TFmini LiDAR) a RPi.
Passaggio 5: Informazioni sul codice
Il codice può essere suddiviso in tre parti:
- Stabilendo una connessione
- Scrittura dei dati
- Lettura dei dati
Stabilendo una connessione:
Dopo aver importato i file header necessari, stabiliamo la connessione al nostro TFmini LiDAR indicando la sua porta COM, Baud-rate e timeout di connessione
ser = serial. Serial('COM7', 115200, timeout = 1) #PC
ser = serial. Serial('/dev/ttyUSB1', 115200, timeout = 1) #Raspberry Pi
Dati di scrittura:
Il codice può essere diviso in due parti, scrittura e ricezione. Per ricevere i dati, è necessario inoltrare il determinato comando a TFmini LiDAR (parte del processo di inizializzazione). In questo caso, ho scelto 4257020000000106. Anche se RPi esegue la stessa versione di Python, ma c'è un leggero cambiamento nella sintassi poiché RPi non accetta dati diversi da quelli binari.
ser.write(0x42)
ser.write(0x57) ser.write(0x02) ser.write(0x00) ser.write(0x00) ser.write(0x00) ser.write(0x01) ser.write(0x06)
Dati di lettura:
Il grafico fornito nella scheda tecnica ci fornisce la "scomposizione" del messaggio UART a 9 byte. I primi due byte sono l'intestazione del frame con un valore esadecimale 0x59 (carattere 'Y'). Possono essere letti e utilizzati per identificare l'inizio del messaggio UART.
if(('Y' == ser.read()) e ('Y' == ser.read())):
Una volta letto il frame di intestazione, è possibile leggere i due byte successivi, contenenti i dati sulla distanza. I dati sulla distanza sono divisi in due pacchetti da 8 bit, Dist_L (Byte3) - 8 bit inferiori e Dist_H (Byte4) - 8 bit superiori.
Dist_L = ser.read() #Byte3Dist_H = ser.read() #Byte4
Moltiplicando Dist_H per 256, i dati binari vengono spostati di 8 a sinistra (equivalente a "<< 8"). Ora i dati a distanza inferiore a 8 bit, Dist_L, potrebbero essere semplicemente aggiunti ottenendo dati a 16 bit di Dist_Total.
Dist_Total = (ord(Dist_H) * 256) + (ord(Dist_L))
Poiché abbiamo con noi il valore della distanza "decifrato", i successivi cinque byte potrebbero essere ignorati. Si noti che i dati letti non vengono archiviati da nessuna parte.
for i nell'intervallo (0, 5):ser.read()
**In qualche altro posto, potresti trovare 'delay' (time.sleep in Python) incorporato prima della fine del ciclo per il motivo che il TFmini LiDAR ha una frequenza operativa di 100Hz. Questo ritardo 'ritardo del programma' e comporterà l'AGGIORNAMENTO dei dati dopo un certo ritardo. Credo che poiché stiamo già aspettando che i dati si accumulino fino a 9 byte, non dovrebbero esserci altri ritardi
#time.sleep(0.0005) #Il ritardo è commentato
while(ser.in_waiting >= 9):
Consigliato:
Una guida completa per principianti alla saldatura SMD: 5 passaggi (con immagini)
Una guida completa per principianti alla saldatura SMD: va bene, quindi la saldatura è piuttosto semplice per i componenti a foro passante, ma poi ci sono momenti in cui devi andare minuscolo * inserire un riferimento ant-man qui * e le abilità che hai imparato per la saldatura TH non lo fanno applica più.Benvenuto nel mondo di
Come realizzare un circuito stampato professionale: la guida completa: 10 passaggi (con immagini)
Come realizzare un circuito stampato professionale: la guida completa: Ciao a tutti, oggi vi mostrerò come realizzare un circuito stampato professionale, per migliorare i vostri progetti elettronici. Iniziamo
$ 2 Arduino. l'ATMEGA328 come stand-alone. Facile, economico e molto piccolo. una guida completa.: 6 passaggi (con immagini)
$ 2 Arduino. l'ATMEGA328 come stand-alone. Facile, economico e molto piccolo. una guida completa.: In questo tutorial imparerai come utilizzare il chip del microcontrollore Arduino ATMEGA328 come microcontrollore autonomo. Costano solo 2 dollari, possono fare lo stesso del tuo Arduino e rendere i tuoi progetti estremamente piccoli. Copriremo il layout dei pin
Pike - Guida in modo più sicuro, guida in modo più intelligente, guida una picca!: 5 passaggi
Pike - Guida in modo più sicuro, guida in modo più intelligente, guida un luccio!: Benvenuto nel mio progetto chiamato Pike! Questo è un progetto che fa parte della mia formazione. Sono uno studente NMCT a Howest in Belgio. L'obiettivo era creare qualcosa di intelligente utilizzando un Raspberry Pi. Avevamo una completa libertà in cui volevamo rendere intelligenti. Per me è stato
Benewake TFmini - LiDAR economico con Teensy 3.5: 3 passaggi
Benewake TFmini - LiDAR economico con Teensy 3.5: L'unità Benewake TFmini LiDAR è un sensore LiDAR piccolo e molto leggero per circa $ 50 canadesi. La documentazione era buona, ma incompleta. Ha fornito dettagli sulla ricezione dei dati dal sensore, ma ha dimenticato di menzionare il segnale necessario per mettere il sensore