Inhaltsverzeichnis:

TFMini Lidar Display - wie Radar nur mit Licht!:-) Gunook
TFMini Lidar Display - wie Radar nur mit Licht!:-) Gunook

Video: TFMini Lidar Display - wie Radar nur mit Licht!:-) Gunook

Video: TFMini Lidar Display - wie Radar nur mit Licht!:-) Gunook
Video: How LiDAR Works || Interfacing TFMini-S Micro LiDAR Distance Sensor with Arduino 2024, November
Anonim
TFMini Lidar Display - Wie Radar nur mit Licht!:-)
TFMini Lidar Display - Wie Radar nur mit Licht!:-)
TFMini Lidar Display - Wie Radar nur mit Licht!:-)
TFMini Lidar Display - Wie Radar nur mit Licht!:-)

Es gibt eine Reihe von Dingen, die zusammengekommen sind, um diese Arbeit zu machen, aber das größte (und was mich dazu inspiriert hat) ist das "Arduino Radar Project", das Dejan Nedelkovski auf howtomechatronics.com gefunden hat (Datum unbekannt).

Ich habe dieses Projekt vor ein paar Monaten (18.10.18) mit dem Gedanken gemacht, meine Ergebnisse zu veröffentlichen, und bin einfach nicht weitergekommen - heute schien ein guter Tag zu sein, um einige Projekte nachzuholen, die ich dokumentieren wollte.

Auf der Arduino-Seite wurden eine Reihe von Änderungen vorgenommen, damit dies funktioniert.

Der Ultraschall wurde durch ein TF Mini Lidar-Gerät ersetzt https://www.sparkfun.com/products/14588 (Dieses Gerät ist ein serielles Gerät, das die Verwendung einfach macht)

ein PCA9685 PWM/Servo Board wurde verwendet, da die Servobibliothek Probleme bei der Verwendung der Softwareserialbibliothek verursachte.

Die andere kleine Änderung war die Halterung, die ich verwendet habe, was wirklich eine Kleinigkeit ist - ich habe eine billige PAN / Tilt-Halterung und ein paar Servos verwendet - Der ursprüngliche Gedanke war, dies noch mehr zu erweitern und eine Höhenoption zu haben (was mehr ergibt). eines 3D-Looks) Ich bin mit der Idee auf einige Hindernisse gestoßen und bin nie wieder darauf zurückgekommen. Die Realität ist also, dass Sie wirklich nur ein Servo benötigen (ich habe zwei).

Abschnitte des Arduino-Codes basierten auf Juan Jose Luna Espinosa TFMini und dem ESP32-Code

Die einzige benötigte Bibliothek ist die Adafruit PWM Servo Driver Library

Schritt 1: Was brauchen wir, um das zu bauen…

Was brauchen wir, um das zu bauen…
Was brauchen wir, um das zu bauen…
Was brauchen wir, um das zu bauen…
Was brauchen wir, um das zu bauen…
Was brauchen wir, um das zu bauen…
Was brauchen wir, um das zu bauen…

Das meiste habe ich schon angedeutet…..

Wir benötigen den TFMini Lidar, 2 Servos, eine Schwenk-/Neigehalterung, eine PCA9685-Platine und sind Arduino UNO/ oder Klon.

Wir benötigen auch eine zusätzliche 5-V-Stromquelle für die Servoplatine. (Gutes Tutorial für das PCA9685 Board finden Sie hier

Die Verkabelung ist dafür ziemlich einfach. Vom Arduino möchten Sie 5V sowohl an den VCC auf der PCA9685-Platine als auch an die TFMINI-Lidar-Einheit sowie die Masse an beide anschließen. Der PCA9685 ist ein I2C-Gerät, daher wird SCL an A5 und SDA an Pin A4 angeschlossen.

Vom TFMini verbinden Sie den TX-Pin mit PIN 8 auf dem Arduino.

Auf dem PCA9685 schließen Sie ein Servo an Header 0 und ein Servo an Header 1 an (Achten Sie darauf, sie richtig anzuschließen, das Erdungskabel (braun) sollte sich an der unteren oder äußeren Kante befinden) Header 0 wird verwendet für das PAN-Servo (oder das, das wir verwenden werden) - das Tilt-Servo ist mit Header 1 verbunden (Der Code bewegt dies leicht, um es in eine gerade Position zu bringen).

Das ist es für die Hardware, auf der Softwareseite müssen wir die Arduino IDE installieren (zum Zeitpunkt dieses Schreibens verwende ich 1.8.5, aber die neueste sollte auch funktionieren) und ich habe nicht den Online-Editor getestet oder verwendet (also keine Ahnung, ob es damit funktioniert).

Folgen Sie den Installationsanweisungen für Ihr Betriebssystem, die Sie hier finden:

Sie sollten auch die Boards und Bibliotheken nach Bedarf aktualisieren (verwenden Sie die stabilen Bibliotheken, verwenden Sie keine der Betas, sie sind fehlerhaft).

Wir müssen auch Processing installieren – für diejenigen, die nicht wissen, was Processing ist – es ist ein flexibles Software-Skizzenbuch und eine Sprache zum Erlernen des Programmierens im Kontext der bildenden Kunst.

Mit anderen Worten, es macht es wirklich einfach, Anzeigen zu erstellen und Informationen anzuzeigen.

processing.org/download/

Schließlich möchten Sie den Code aus meinem Github-Repository holen.

github.com/kd8bxp/Lidar-Display

Schritt 2: Die Software…

Die Software…
Die Software…
Die Software…
Die Software…
Die Software…
Die Software…
Die Software…
Die Software…

Aus dem Repository finden Sie einen Testcode für das Arduino, laden Sie diesen auf die UNO und öffnen Sie die serielle Konsole. Wenn alles richtig funktioniert, sollten Sie einige Entfernungen von Ihrem TF MINI sehen - Dieser Code basiert auf die Arbeit von Juan Jose Luna Espinosa (2018) Der TFMini und der ESP32

github.com/yomboprime/TFMiniArduinoTest

Sobald Sie sich vergewissert haben, dass das LIDAR funktioniert, können Sie den Code lidar_radar_with_processing2 in die UNO laden.

Jetzt müssen wir den Verarbeitungscode laden. Wir müssen den seriellen Port ändern - das ist in Zeile 42.

Die Skizze hat den seriellen Port, den meine UNO verwendet, dies unter Linux und wenn Sie Linux verwenden, sollte es etwas Ähnliches sein (es könnte auch so etwas wie /dev/ttyUSB0) für einen Windows-Rechner sein, ist es ein COM #

In jedem Fall sollte dies derselbe serielle Port sein, den Ihre Arduino IDE verwendet. - Sie möchten die Arduino Serial Console schließen und die Verarbeitungsskizze ausführen.

WENN alles geht, sollten Sie das "Radar"-Display sehen.

Sie werden vielleicht feststellen, dass mein Display nicht ganz so aussieht wie das Projekt, das es inspiriert hat -

Ich habe ein paar Änderungen an der Verarbeitungsskizze vorgenommen - weil der TFMini Lidar zwischen 12 Zoll und 36 Fuß anzeigen kann - ich habe die Reichweite geändert - ich mochte auch nicht, wie die ursprüngliche Skizze eine ROTE Linie machte, also änderte ich das in nur a Punkt von ROT (Übrigens, diese Änderung befindet sich in der Verarbeitungsskizze in Zeile 115 und Zeile 116, wenn Sie sie wieder ändern möchten). Der Bereich wird in der Arduino-Skizze tatsächlich auf einen Wert von 1 bis 39 abgebildet.

* Hinweis: In Zeile 39 können Sie die Auflösung ändern. Möglicherweise müssen Sie dies anpassen oder auch nicht - wenn Sie etwas nicht sehen, das wie das obige Bild aussieht, müssen Sie wahrscheinlich Zeile 39 anpassen.

** Hinweis 2: - Möglicherweise erhalten Sie einen Fehler über den seriellen Port, ich habe die Reihenfolge der Geräte vergessen - Ich denke, Sie starten zuerst das Arduino und dann die Verarbeitungsskizze - Aber ich habe das möglicherweise rückwärts - also können Sie beginnen die Verarbeitungsskizze, dann den Arduino anschließen…. Der eine Weg führt zu einem Fehler im Prozess, der andere funktioniert.

Schritt 3: Mehr Bilder und Danke fürs Lesen…

Mehr Bilder und Danke fürs Lesen…
Mehr Bilder und Danke fürs Lesen…
Mehr Bilder und Danke fürs Lesen…
Mehr Bilder und Danke fürs Lesen…
Mehr Bilder und Danke fürs Lesen…
Mehr Bilder und Danke fürs Lesen…

Ich hoffe, dass ich dem ursprünglichen Projekt gerecht wurde, und ich hoffe, es hat Ihnen gefallen, was ich damit gemacht habe.

* Ich habe das Gefühl, dass ich das nicht wirklich gut erklärt habe….. Vielleicht sollte ich meine Projekte viel früher als 3 Monate später dokumentieren *