Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-23 12:52
Beschreibung
Das Benewake TFMINI Micro-LIDAR-Modul hat sein einzigartiges optisches, strukturelles und elektronisches Design. Das Produkt besitzt drei wesentliche Vorteile: geringe Kosten, geringes Volumen und geringer Stromverbrauch.
Der eingebaute Algorithmus, der an Innen- und Außenumgebungen angepasst ist, kann eine hervorragende Entfernungsleistung zu geringen Kosten und in einem winzigen Volumen garantieren, was die Anwendungsfelder und Szenarien von LiDAR stark erweitert und eine solide Grundlage für zukünftige „Augen“im smart legt Epoche.
Spezifikationen
- Eingangsspannung: 5V
- Durchschnittliche Leistung: 0,12 W
- Kommunikationsprotokoll: UART (Baudrate: 115200)
- Betriebstemperatur: -20℃~60℃
- Sichtfeld: 2,3°
Maße
- Größe: 42mmx15mmx16mm
- Gewicht: 6.1g
Einschränkungen
0cm-30cm "blinde" Reichweite
Wo zu kaufen
- RobotShop
- Amazonas
Dieses instructable erfordert, dass Sie mit den folgenden vertraut sind:
- Grundelektronik
- Handwerkzeuge wie Drahtschneider und Abisolierer
- Lesen von Schaltplänen und Anschlussplänen
- C/C++-Programmierung für Arduino (optional)
- Python-Programmierung für Raspberry Pi (optional)
Schritt 1: Material sammeln
Diese Anleitung führt Sie durch verschiedene Möglichkeiten zur Bereitstellung von TFmini LiDAR mit Ihrem Windows-PC und Raspberry Pi. Jede Methode hat ihre Anforderungen und kann je nach Bedarf variieren.
**Sie benötigen für jeden Fall Benewake TFmini LiDAR (natürlich)**
Für PC-basierte Implementierung:
- Betriebssystem: Windows
- USB-TTL-Konverter
- Überbrückungsdrähte
Für Raspberry Pi-basierte Implementierung:
- Himbeer-Pi
- Überbrückungsdrähte
- LEDs (optional)
- USB-TTL-Konverter (optional)
- Steckbrett (optional)
- Widerstand (zwischen 100-1k Ohm) (optional)
Schritt 2: PC-basierte Implementierung mit der Benewake App
- Verbinden Sie den TFmini LiDAR mit dem USB-TTL-Konverter mithilfe von Jumper (männlich-weiblich) Drähten gemäß dem gezeigten Schema
- Rotes Kabel 5V
- Schwarzer Draht GND
- Weiß/Blauer Draht Tx
- Grüner Draht Rx
- Schließen Sie USB-TTL an Ihren Computer an
- Gehen Sie zum Geräte-Manager (Win + X) und suchen Sie "Prolific USB-to-Serial Comm Port" unter Ports (COM & LPT). Stellen Sie sicher, dass Windows das Gerät erkennt
- Herunterladen und Extrahieren von WINCC_TF.rar
- Führen Sie WINCC_TFMini.exe aus den extrahierten Dateien aus
- Wählen Sie den entsprechenden COM-Port aus dem Dropdown-Menü in der Benewake App unter der Überschrift Serial Port
- Klicken Sie auf VERBINDEN
Schritt 3: PC-basierte Implementierung mit Python (PySerial)
- Verbinden Sie TFmini LiDAR mit dem PC über einen USB-TTL-Konverter
- Laden Sie PC_Benewake_TFmini_LiDAR.py mit Python IDLE herunter und öffnen Sie es (stellen Sie sicher, dass PySerial und Python auf Ihrem PC installiert sind)
- Bearbeiten Sie den COM-Port im Code so, dass er mit dem COM-Port des USB-TTL-Konverters auf Ihrem PC übereinstimmt (siehe Bild)
- Klicken Sie auf die Registerkarte Ausführen
- Klicken Sie auf Modul ausführen
**Erläuterung des Codes finden Sie in Schritt 5
Schritt 4: Raspberry Pi-basierte Implementierung
- Verbinden Sie TFmini LiDAR mit RPi über einen USB-TTL-Konverter oder einen UART-Port mit GPIO
- Laden Sie Pi_benewake_LiDAR.py herunter und öffnen Sie es mit Python IDLE
- Wenn Sie einen USB-TTL-Konverter mit RPi verwenden, öffnen Sie Arduino IDE. Klicken Sie auf Tools -> Serial Port und bearbeiten Sie den Code entsprechend. Wenn Sie den UART GPIO-Port verwenden, schreiben Sie /dev/ttyAMA0
- Führen Sie den Code aus
**Der Code könnte verwendet werden, um die Entfernung zu drucken, aber da RPi nicht viel Rechenleistung hat, wird empfohlen, eine LED zu leuchten, wenn die aufgezeichnete Entfernung unter einem bestimmten Bereich liegt (Schema für LED mit RPi ist beigefügt)
F. Warum einen USB-TTL-Konverter mit RPi verwenden?
RPi hat nur einen UART-Port, und manchmal müssen Sie einige Module installieren, die eine UART-Kommunikation erfordern. USB-TTL bietet einen zusätzlichen UART-Port für RPi, der uns die Möglichkeit gibt, mehr als ein UART-Gerät (wie zwei oder mehr TFmini LiDAR) an RPi anzuschließen.
Schritt 5: Über den Code
Der Code lässt sich in drei Teile unterteilen:
- Stelle Verbindung her
- Daten schreiben
- Daten lesen
Stelle Verbindung her:
Nach dem Import der notwendigen Header-Dateien stellen wir die Verbindung zu unserem TFmini LiDAR her, indem wir dessen COM-Port, Baudrate und Verbindungszeitüberschreitung angeben
ser = serial. Serial('COM7', 115200, timeout = 1) #PC
ser = serial. Serial('/dev/ttyUSB1', 115200, timeout = 1) #Raspberry Pi
Daten schreiben:
Der Code kann in zwei Teile unterteilt werden, Schreiben und Empfangen. Um Daten zu empfangen, müssen Sie den bestimmten Befehl an TFmini LiDAR weiterleiten (Teil des Initialisierungsprozesses). In diesem Fall habe ich 4257020000000106 gewählt. Obwohl RPi die gleiche Version von Python ausführt, gibt es eine geringfügige Änderung in der Syntax, da RPi keine anderen Daten als Binärdaten akzeptiert.
ser.write(0x42)
ser.write(0x57) ser.write(0x02) ser.write(0x00) ser.write(0x00) ser.write(0x00) ser.write(0x01) ser.write(0x06)
Auslesen von Daten:
Die im Datenblatt bereitgestellte Tabelle gibt uns die 'Aufschlüsselung' der 9-Byte-UART-Nachricht. Die ersten beiden Bytes sind Frame-Header mit einem Wert von Hex 0x59 (Zeichen 'Y'). Sie können gelesen und verwendet werden, um den Anfang der UART-Nachricht zu identifizieren.
if(('Y' == ser.read()) und ('Y' == ser.read())):
Sobald der Header-Frame gelesen ist, könnten die nächsten zwei Bytes, die Distanzdaten tragen, gelesen werden. Distanzdaten werden in zwei 8-Bit-Pakete unterteilt, Dist_L (Byte3) – Lower 8bits und Dist_H (Byte4) – Higher 8bits.
Dist_L = ser.read() #Byte3Dist_H = ser.read() #Byte4
Durch Multiplizieren von Dist_H mit 256 werden die Binärdaten um 8 nach links verschoben (entspricht "<< 8"). Jetzt könnten die unteren 8-Bit-Distanzdaten Dist_L einfach hinzugefügt werden, was zu 16-Bit-Daten von Dist_Total führt.
Dist_Total = (ord(Dist_H) * 256) + (ord(Dist_L))
Da wir den 'entschlüsselten' Distanzwert bei uns haben, könnten die nächsten fünf Byte ignoriert werden. Beachten Sie, dass die gelesenen Daten nirgendwo gespeichert werden.
für i im Bereich (0, 5):ser.read()
**An anderer Stelle könnte 'delay' (time.sleep in Python) vor dem Ende der Schleife eingebaut sein, da der TFmini LiDAR eine Betriebsfrequenz von 100 Hz hat. Diese Verzögerung 'Programmverzögerung' und führt dazu, dass die Daten nach einer gewissen Verzögerung AKTUALISIERT werden. Ich glaube, da wir bereits darauf warten, dass sich die Daten auf 9-Byte anhäufen, sollte es keine weitere Verzögerung geben
#time.sleep(0.0005) #Die Verzögerung ist auskommentiert
while(ser.in_waiting >= 9):
Empfohlen:
Drei Lautsprecherkreise -- Schritt-für-Schritt-Anleitung: 3 Schritte
Drei Lautsprecherkreise || Schritt-für-Schritt-Anleitung: Lautsprecherschaltung verstärkt die von der Umgebung empfangenen Audiosignale auf das MIC und sendet sie an den Lautsprecher, von dem aus verstärktes Audio erzeugt wird. Hier zeige ich Ihnen drei verschiedene Möglichkeiten, diese Lautsprecherschaltung zu erstellen:
Vollständige Anleitung zur Verwendung des Bodenfeuchtesensors mit praktischem Beispiel: 7 Schritte
Vollständige Anleitung zur Verwendung des Bodenfeuchtigkeitssensors mit praktischem Beispiel: Sie können dieses und andere erstaunliche Tutorials auf der offiziellen Website von ElectroPeak lesen.ÜbersichtIn diesem Tutorial erfahren Sie, wie Sie einen Bodenfeuchtigkeitssensor verwenden. Es werden auch praktische Beispiele bereitgestellt, die Ihnen helfen, den Code zu beherrschen. Was Sie lernen werden: Wie Boden
So erstellen Sie eine professionelle Leiterplatte: die vollständige Anleitung – wikiHow
So erstellen Sie eine professionelle Leiterplatte: die vollständige Anleitung: Hallo zusammen, heute zeige ich Ihnen, wie Sie eine professionelle Leiterplatte herstellen, um Ihre elektronischen Projekte zu verbessern. Lasst uns beginnen
$ 2 Arduinos. der ATMEGA328 als Stand-alone. Einfach, günstig und sehr klein. eine vollständige Anleitung.: 6 Schritte (mit Bildern)
$ 2 Arduinos. der ATMEGA328 als Stand-alone. Einfach, günstig und sehr klein. Eine vollständige Anleitung.: In dieser Anleitung erfahren Sie, wie Sie den Arduino ATMEGA328-Mikrocontroller-Chip als eigenständigen Mikrocontroller verwenden. Sie kosten nur 2 Dollar, können dasselbe wie Ihr Arduino und machen Ihre Projekte extrem klein. Wir werden das Pin-Layout abdecken
Bitcoins: die vollständige Anleitung: 12 Schritte
Bitcoins: der vollständige Leitfaden: In diesem Tutorial behandeln wir alles, was Sie über Bitcoins wissen müssen. Das Tutorial beginnt mit den Grundlagen der Installation der Computersoftware, damit Bitcoins funktionieren, geht aber sehr schnell in die fortgeschritteneren Teile über. Nach dem Lesen&