Inhaltsverzeichnis:
- Schritt 1: CircuitPython-Code
- Schritt 2: Anschließen des TinyLiDAR an eine Gemma M0
- Schritt 3: Serieller Ausgang
Video: CircuitPython und TinyLiDAR: Einfaches Beispiel - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Das MicroElectronicDesign tinyLiDAR ist ein auf ST VL53L0X basierendes Time-of-Flight (ToF) Ranging-Modul mit einer i2c-Busverbindung. Die Adafruit-Mikrocontroller-Boards werden einfach an diesen Sensor angeschlossen, da sie das i2c-Protokoll über ihre Datenpins sprechen können.
Die M0/M4-Serie hat den Vorteil gegenüber anderen Boards, dass sie eine Teilmenge von Python unterstützt, wodurch die Programmierung einem breiteren Publikum zugänglicher wird als C auf einem Arduino. Dies ist ein einfaches Beispiel, bei dem CircuitPython auf einem Gemma M0-Board verwendet wird, um die Entfernungswerte von einem tinyLiDAR zu lesen und die Entfernung durch Variieren der Helligkeit der integrierten RGB-LED anzuzeigen. Das Board muss die M0-Version für Python-Unterstützung sein.
Hinweis: Adafruit stellt auch verschiedene Distanzsensorplatinen her, darunter eine basierend auf dem VL53L0X.
Schritt 1: CircuitPython-Code
- Laden Sie lib/adafruit_dotstar.mpy und lib/adafruit_bus_device/i2c_device.mpy herunter, falls Sie diese noch nicht haben. Diese sind Teil des optionalen Bibliothekspakets. Hinweise zur Installation finden Sie im ersten Abschnitt von CircuitPython I2C. Diese Dateien müssen in den Verzeichnissen lib und lib/adafruit_bus_device auf der Gemma M0 gespeichert werden.
- Laden Sie gemma-m0-tinylidar-simple.py herunter, benennen Sie es in main.py um und kopieren Sie es in das Stammverzeichnis des Gemma M0.
Das Programm schreibt die Ausgabe auf die serielle Konsole und variiert die Helligkeit der Gemma MO RGB-LED proportional zur gelesenen Entfernung. Die Gemma M0-LED wechselt beim Lesen zwischen ein und aus, blinkt also mit ungefähr 5 Hz und das Standardverhalten des tinyLiDAR-Boards besteht darin, seine blaue LED pro Befehl mit 10 Hz zu blinken.
Der Bus wird mit 100 kHz betrieben, was für diesen Fall gut funktioniert. Wie bei jedem Bus wird die Kommunikationsgeschwindigkeit durch die Eigenschaften der Übertragungsleitung(en) begrenzt, daher sollte auf Länge, Kapazität und andere Faktoren geachtet werden.
Schritt 2: Anschließen des TinyLiDAR an eine Gemma M0
Das Bild zeigt ein effektives, aber unelegantes temporäres Setup, um den tinyLiDAR mit einem Gemma M0-Board zu verbinden. Der "Grove" 4-Pin-Universalstecker des tinyLiDAR wird über ein Seeed Grove-Konvertierungskabel, einen Ersatz-Header und Krokodilklemmen zum Anschluss an die Gemma M0 verwendet. Ein gewisser Abstand zwischen den Pins am Header beseitigt das Risiko eines versehentlichen Kurzschlusses. Die Anschlüsse sind:
- Schwarz: Masse zu Masse
- Rot: +V bis 3Vo
- Weiß: SDA auf D0 (Daten)
- Gelb: SCL bis D2 (Uhr)
Die Adafruit-Boards haben einige Pins, die das i2c-Protokoll effizient in Hardware unterstützen. Bei der Gemma M0 müssen diese verwendet werden, D0 für Daten und D2 für Clock.
Ein i2c-Bus erfordert einen Pull-Up-Widerstand auf den Daten- und Taktleitungen. In diesem Fall bietet der tinyLiDAR einige 4,7K On-Board-Widerstände. Wenn diese durch Durchtrennen der Leitungen aus dem Stromkreis entfernt wurden, müssen Äquivalente in den Stromkreis eingefügt werden.
Schritt 3: Serieller Ausgang
Das Programm schreibt eine Ausgabe an die serielle Konsole, die die gemessene Entfernung anzeigt. Hier ist ein Beispiel-Screenshot eines Terminals, das ein Objekt zeigt, das sich vom Sensor entfernt.
Empfohlen:
So erstellen Sie Ihr eigenes Betriebssystem! (Batch und Beispiel innen): 5 Schritte
So erstellen Sie Ihr eigenes Betriebssystem! (Batch und Beispiel Inside): Machen Sie es jetzt
APP INVENTOR 2 - Saubere Frontspitzen (+4 Beispiel): 6 Schritte
APP INVENTOR 2 - Clean Front Tips (+4 Beispiel): Wir werden sehen, wie wir Ihre App auf AI2 ästhetisch aussehen lassen können :) Diesmal kein Code, nur Tipps für eine reibungslose App wie das 4 Beispiel oben
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
Beispiel-Laboraktivität: 8 Schritte
Beispiel-Laboraktivität: Dies ist ein Beispiel-Labor-Tutorial, um meine Erwartungen an die Verwendung von Instructables in Labs und Projekten zu demonstrieren. In diesem Lab wird mit Hilfe einer Taste und drei LEDs ein einfacher Binärzähler erstellt. Wie Sie sehen können, wurde dieses einfache Projekt b
HRV-Temperatur zu OpenHAB über ESP8266 (Seriencode-Beispiel!): 3 Schritte
HRV-Temperatur zu OpenHAB über ESP8266 (Seriencode-Beispiel!): HRV - Drahtlos zu OpenHABDieses anweisbare ist speziell für diejenigen gedacht, die ein HRV-System (Heizungs-Umluft-Belüftung) haben - obwohl Teile der Platine, Openhab-Konfiguration oder Arduino-Code (wie Lesen) serielle TTL-Daten) könnte h