Inhaltsverzeichnis:

Micro:bit MU Vision Sensor - Objektverfolgung - Gunook
Micro:bit MU Vision Sensor - Objektverfolgung - Gunook

Video: Micro:bit MU Vision Sensor - Objektverfolgung - Gunook

Video: Micro:bit MU Vision Sensor - Objektverfolgung - Gunook
Video: ESP32-CAM - Guide to making YOUR first DIY Security Camera 2024, November
Anonim
Micro:bit MU Vision Sensor - Objektverfolgung
Micro:bit MU Vision Sensor - Objektverfolgung

In diesem anweisbaren werden wir also mit der Programmierung des Smart Car beginnen, das wir in diesem anweisbaren bauen und das wir in diesem anweisbaren einen MU-Vision-Sensor installiert haben.

Wir werden das micro:bit mit einer einfachen Objektverfolgung programmieren, damit der MU-Sensor Verkehrskarten verfolgen kann.

Lieferungen

Materialien

1 x Mikro: Bit

1 x Motor: Bit

1 x MU-Vision-Sensor

1 x 2-Achsen-Kamerahalterung

4 x M3 x 30 Schrauben

6 x M3 x 6 Schrauben

6 x M3-Distanzstück

10 x M3-Muttern

1 x Laufrad

2 x Smart Automotoren

2 x TT130-Motor

2 x Räder für den TT130-Motor

1 x 9 Volt Batterie + Batteriehalter

Ein bisschen Draht. Wenn möglich in zwei verschiedenen Farben

4 mm Sperrholz (170 x 125 mm sollten reichen)

Ein kleines Stück doppelseitiges Klebeband

Klettband (Haken und Schlaufe)

Heißkleber

Werkzeuge:

Schraubendreher

Löten

Eisen

Kabelschneider

Laserschneider

Heißklebepistole

Bohren

2,5 und 3 mm Bohrer

Schritt 1: Einrichten des MU-Sensors

Einrichten des MU-Sensors
Einrichten des MU-Sensors

Bevor wir mit dem Anschließen beginnen, möchten wir den Sensor richtig einrichten.

Der Mu Vision Sensor hat 4 Schalter. Die beiden linken bestimmen ihren Ausgabemodus und die beiden rechten ihre Adresse.

Da die Adresse 00 sein soll, sollten beide Schalter rechts ausgeschaltet sein.

Die verschiedenen Ausgabemodi sind:

00 UART

01 I2C

10 WLAN-Datenübertragung

11 Wifi-Bildübertragung

Wir möchten im I2C-Modus arbeiten, also sollten die beiden Schalter auf 01 stehen, also sollte der ganz linke ausgeschaltet und der andere eingeschaltet sein.

Schritt 2: Verdrahten des MU-Sensors

Die Verkabelung ist ziemlich einfach, verwenden Sie einfach vier Überbrückungsdrähte, um den Mu-Sensor mit Ihrem Breakout-Board zu verbinden.

Mu-Sensor -> Breakout-Board

SDA -> Pin 20

SCL -> Stift 19

G -> Masse

V -> 3,3-5V

Schritt 3: Verdrahten der Kamerahalterung

Verkabelung der Kamerahalterung
Verkabelung der Kamerahalterung

Der Servomotor, der die horizontale Bewegung steuert, sollte an Pin 13 und der Servomotor, der die vertikale Bewegung steuert, an Pin 14 angeschlossen werden.

Schritt 4: Abrufen der Erweiterung

Die Erweiterung erhalten
Die Erweiterung erhalten
Die Erweiterung erhalten
Die Erweiterung erhalten
Die Erweiterung erhalten
Die Erweiterung erhalten

Zuerst gehen wir in den Makecode-Editor und starten ein neues Projekt. Wir gehen dann auf "Erweitert" und wählen "Erweiterungen". Beachten Sie, dass diese Schaltflächen auf den Bildern leicht unterschiedliche Namen haben, da ich Däne bin. In Erweiterungen suchen wir nach "Muvision" und wählen das einzige Ergebnis aus, das wir erhalten.

Schritt 5: Initialisieren der Verbindung und Aktivieren des Algorithmus

Initialisieren der Verbindung und Aktivieren des Algorithmus
Initialisieren der Verbindung und Aktivieren des Algorithmus

Wenn Sie diese Erweiterung verwenden, erhalten Sie einige Fehler "Eigenschaften von undefinierten können nicht gelesen werden". Das liegt nur daran, dass die micro:bit-Animation fehlt. Es hat keinen Einfluss auf die Kompilierung und Ausführung des Programms.

Der erste orange Teil des Codes initialisiert die I2C-Verbindung.

Der zweite orangefarbene Teil des Codes aktiviert die Algorithmen zur Verkehrskartenerkennung.

Das Anzeigen von Zahlen dient der Fehlersuche. Wenn das micro:bit beim Ausführen des Programms nicht bis drei zählt, überprüfen Sie, ob die Drähte des MU-Vision-Sensors richtig mit den richtigen Pins verbunden sind.

Die beiden roten Blöcke legen die Startposition für die Kamerahalterung fest.

Schritt 6: Das Programm

Das Programm
Das Programm

Die beiden ersten roten Blöcke steuern die Servomotoren, die die Kamerahalterungen steuern. Der erste steuert die vertikale Bewegung und der zweite steuert die horizontale Bewegung.

Die ersten äußeren „IF“-Blöcke prüfen, ob der MU-Sensor irgendwelche Verkehrskarten erkennen kann. Wenn dies möglich ist, gehen wir zu den beiden "IF"-Anweisungen im Inneren über.

Die erste "IF"-Anweisung überprüft die vertikale Platzierung der erkannten Karte im Sichtfeld. Wenn eine Karte in die Mitte des Sichtfeldes gelegt wird, erhalten wir den Wert 50 aus dem vertikalen Wertalgorithmus. Nun ist es ziemlich selten, dass die Karte genau in der Mitte liegt. Wir müssen sehr präzise treffen. Wenn wir also 50 als einzigen Wert wählen, bei dem die Kamera still stehen sollte, bewegt sie sich mehr oder weniger ständig. Stattdessen zählen wir alles zwischen 45 und 55 als in der Mitte. Wenn die vertikale Platzierung der Karten also unter 45 liegt, bewegen wir die Kamera etwas nach unten, indem wir die vertikale Variable um +1 ändern. Auf die gleiche Weise bewegen wir die Kamera etwas nach oben, wenn die vertikale Platzierung über 55 liegt, indem wir die vertikale Variable um -1 ändern. Es mag seltsam erscheinen, dass die Kamera nach oben geht, wenn wir die Variable anheben, und nach unten, wenn die Variable nach oben geht, aber so ist der Motor platziert.

Die zweite "IF"-Anweisung macht genau dasselbe, jedoch für die horizontale Position. Wenn sich die Verkehrskarte also zu weit rechts vom Sichtfeld befindet, bewegt sich die Kamera nach rechts und wenn sie zu weit links vom Sichtfeld ist, bewegt sich die Kamera nach links.

Das Programm finden Sie hier.

Schritt 7: Fertig

Laden Sie nun Ihr Programm auf das Smart Car hoch und testen Sie es.

Sie können die Reaktionsgeschwindigkeit der Kamera auf Bewegungen erhöhen, indem Sie die Änderung der Variablen auf 2 oder 3 anstelle von 1 erhöhen. Sie können auch versuchen, die Größe des Felds, das als Mitte betrachtet wird, zu verringern. Versuchen Sie es stattdessen von 47 auf 53 zu machen.

Empfohlen: