- Konzept:
- Erforderliche Materialien:
- Schaltplan und Hardware:
- Programm für Arduino:
- Programm zur Bearbeitung:
- Arbeiten:
Dies ist ein sehr interessantes Projekt, in dem wir lernen werden, wie man virtuelle Realität mit Arduino und Processing implementiert. Für die meisten von uns war der Film Iron Man von Jon Favreau immer eine Inspiration, um neue Dinge zu bauen, die unser Leben einfacher und lustiger machen. Ich habe die im Film gezeigten Techniker persönlich bewundert und wollte schon immer etwas Ähnliches bauen. In diesem Projekt habe ich versucht, die im Film vorkommenden Dinge der virtuellen Realität nachzuahmen, als könnten wir einfach mit der Hand vor dem Computer winken und den Zeiger auf den gewünschten Ort bewegen und einige Aufgaben ausführen.
Hier zeige ich Ihnen, wie Sie einfach mit der Hand vor der Webcam winken und etwas auf Ihren Computer zeichnen können. Ich werde Ihnen auch zeigen, wie Sie Lichter umschalten können, indem Sie Ihre Hand virtuell bewegen und mit Ihren Fingern in der Luft klicken.
Konzept:
Um dies zu erreichen, müssen wir die Kraft von Arduino und Processing zusammen nutzen. Die meisten wären mit Arduino vertraut, aber die Verarbeitung könnte für Sie neu sein. Die Verarbeitung ist eine Anwendung wie Arduino und sie ist auch Open Source und kann kostenlos heruntergeladen werden. Mit Processing können Sie einfache Systemanwendungen, Android-Anwendungen und vieles mehr erstellen. Es hat auch die Fähigkeit, Bildverarbeitung und Spracherkennung durchzuführen. Es ist genau wie Arduino und sehr einfach zu erlernen, aber machen Sie sich keine Sorgen, wenn Sie völlig neu in der Verarbeitung sind, da ich dieses Tutorial ziemlich einfach geschrieben habe, damit jeder mit Interesse dies in kürzester Zeit zum Laufen bringen kann.
In diesem Tutorial verwenden wir die Verarbeitung, um eine einfache Systemanwendung zu erstellen, die uns eine Benutzeroberfläche bietet und die Position unserer Hand mithilfe der Bildverarbeitung verfolgt. Jetzt müssen wir mit den Fingern nach links und rechts klicken. Um dies zu erreichen, habe ich zwei Hallsensoren verwendet (einen an meinem Zeigefinger und einen am Mittelfinger), die vom Arduino Nano gelesen werden. Der Arduino überträgt den Klickstatus auch drahtlos über Bluetooth an den Computer.
Es mag kompliziert klingen, aber vertrau mir; es ist nicht so schwer wie es klingt. Werfen wir also einen Blick auf die Materialien, die für die Inbetriebnahme dieses Projekts benötigt werden.
Erforderliche Materialien:
- Arduino Nano
- Hallsensor (A3144) - 2Nr
- Ein kleines Stück Magnet
- Bluetooth-Modul (HC-05 / HC-06)
- 9V Batterie
- Verbindungskabel Punktplatte.
- Ein Paar Handschuhe
- Arduino IDE (Software)
- IDE (Software) verarbeiten
- Ein Computer mit Webcam und Bluetooth (Sie können auch externes Bluetooth oder Webcam für Ihren Computer verwenden)
Schaltplan und Hardware:
Der Hardware-Teil dieses Projekts ist sehr einfach und leicht zu erstellen. Das vollständige Schema ist unten gezeigt.
Das Arduino, die Widerstände und die Berg-Stick-Pins werden wie unten gezeigt auf eine Punktplatte gelötet.
Der Hallsensor und das Bluetooth-Modul sind wie unten gezeigt mit einem Anschlusskabel verlötet.
Sobald diese beiden Abschnitte fertig sind, können sie auf Handschuhe montiert werden, so dass sie einfach zu bedienen sind. Ich habe Einweg-Plastikhandschuhe verwendet, die in jedem medizinischen Geschäft in Ihrer Nähe erhältlich sind. Sie sollten sicherstellen, dass der Magnet an Ihrem Daumenfinger anliegt und der Hallsensor 1 und der Hallsensor 2 vor Ihrem Zeige- bzw. Mittelfinger vorhanden sind. Ich habe Entenbänder verwendet, um die Komponenten an Ort und Stelle zu sichern. Sobald die Komponenten zusammengebaut sind, sollte es ungefähr so aussehen.
Öffnen wir nun die Arduino IDE und beginnen mit der Programmierung.
Programm für Arduino:
Der Zweck dieses Arduino-Codes besteht darin, den Status des Hallsensors zu lesen und ihn über das Bluetooth-Modul zu senden. Es sollte auch Daten von Bluetooth empfangen und die integrierte LED basierend auf dem eingehenden Wert umschalten. Das vollständige Programm finden Sie am Ende dieses Tutorials. Ich habe auch einige Zeilen unten erklärt.
if (Phs1! = HallState_1 - Phs2! = HallState_2) // Überprüfen Sie, ob neue Tasten gedrückt werden {if (HallState_1 == LOW && HallState_2 == LOW) Aisha.write (1); if (HallState_1 == HIGH && HallState_2 == LOW) Aisha.write (2); if (HallState_1 == LOW && HallState_2 == HIGH) Aisha.write (3); if (HallState_1 == HIGH && HallState_2 == HIGH) Aisha.write (4); }}
Wie in den obigen Zeilen gezeigt, schreibt Bluetooth basierend auf dem Status des Hallsensors einen bestimmten Wert. Wenn beispielsweise der Hallsensor 1 hoch und der Hallsensor 2 niedrig ist, senden wir das Tal „2“ über das Bluetooth-Modul. Stellen Sie sicher, dass Sie die Werte in das BT-Modul schreiben und nicht drucken. Weil es nur auf der Verarbeitungsseite leicht zu lesen ist, wenn sie geschrieben sind. Außerdem wird der Wert nur gesendet, wenn er nicht mit dem vorherigen Wert übereinstimmt.
if (BluetoothData == 'y') digitalWrite (ledpin, HIGH); if (BluetoothData == 'n') digitalWrite (ledpin, LOW);
Diese Leitungen werden verwendet, um die integrierte LED, die an Pin 13 angeschlossen ist, basierend auf dem vom BT-Modul empfangenen Wert umzuschalten. Wenn das Modul beispielsweise ein 'y' empfängt, leuchtet die LED und wenn es ein 'n' empfängt, wird es ausgeschaltet.
Programm zur Bearbeitung:
Der Zweck des Verarbeitungsprogramms besteht darin, eine Systemanwendung zu erstellen, die als Benutzeroberfläche (User Interface) fungieren und auch eine Bildverarbeitung durchführen kann, um ein bestimmtes Objekt zu verfolgen. In diesem Fall verfolgen wir das blaue Objekt, das wir oben an unseren Handschuhen befestigt haben. Das Programm hat grundsätzlich vier Bildschirme.
- Kalibrierungsbildschirm
- Hauptbildschirm
- Paint Screen
- LED-Umschaltbildschirm
Wir können von einem Bildschirm zum anderen navigieren, indem wir einfach mit den Händen winken und Bildschirme in die Luft ziehen. Wir können auch auf gewünschte Stellen klicken, um die LED umzuschalten oder sogar etwas auf den Bildschirm zu zeichnen.
Sie können das gesamte Verarbeitungsprogramm (am Ende angegeben) kopieren, einfügen und je nach Kreativität ändern oder einfach die EXE-Dateien von hier herunterladen und die folgenden Schritte ausführen, um die Anwendung zu starten.
- Installieren Sie JAVA auf Ihrem Computer, falls Sie es noch nicht installiert haben
- Installieren Sie You Cam perfekt auf Ihrem Computer
- Schalten Sie Ihr Arduino ein und koppeln Sie Ihren Computer mit dem Bluetooth-Modul
- Starten Sie die Anwendungsdatei
Wenn alles gut geht, sollten Sie feststellen können, dass die LED an Ihrem Bluetooth-Modul stabil wird und Ihre Webcam leuchtet. Wenn Sie Probleme haben, erreichen Sie mich über den Kommentarbereich und ich werde Ihnen helfen.
Sehen Sie sich das Video am Ende an, um zu erfahren, wie Sie Ihre Anwendung kalibrieren und verwenden können.
Wenn Sie den Code ändern und weitere Funktionen einbauen möchten, können Sie die folgenden Erkenntnisse des Programms verwenden
Die Verarbeitungs-IDE kann hier heruntergeladen werden. Wenn Sie mehr über die Verarbeitung erfahren und interessantere Projekte erstellen möchten, können Sie die Tutorials hier besuchen.
Die Verarbeitung kann serielle Daten lesen. In diesem Programm stammen die seriellen Daten vom Bluetooth-COM-Anschluss. Über diese Zeile müssen Sie auswählen, mit welchem COM-Anschluss Ihr Bluetooth verbunden ist
port = new Serial (this, Serial.list (), 9600);
Hier habe ich meine 1 ausgewählt haben st COM - Port, die COM5 in meinem Fall ist (siehe Bild unten) und ich habe erwähnt, dass durch das Bluetooth - Modul läuft auf 9600 Baudraten.
Wie bereits erwähnt, kann die Verarbeitung auch Bilder verarbeiten. In diesem Lernprogramm werden die Bilder mithilfe einer Webcam innerhalb der Skizze gesendet. In jedem Bild verfolgen wir ein bestimmtes Objekt. Um mehr darüber zu erfahren, können Sie dieses Tutorial besuchen.
Ich habe mein Bestes versucht, das Programm (am Ende angegeben) durch die Kommentarzeilen zu erklären. Sie können die Dateien hier herunterladen.
Wenn Sie mehr über die Skizze erfahren möchten, können Sie mich über den Kommentarbereich erreichen und ich werde Ihnen helfen.
Arbeiten:
Sobald die Hardware und Software fertig ist, tragen Sie die Handschuhe und machen Sie sich bereit für eine Aktion. Schalten Sie jetzt einfach das Arduino ein und starten Sie die Anwendung. Die LED am Bluetooth-Modul sollte stabil bleiben. Jetzt bedeutet dies, dass Ihre Systemanwendung eine Bluetooth-Verbindung mit Ihrem Arduino hergestellt hat.
Sie erhalten den folgenden Bildschirm, in dem Sie das zu verfolgende Objekt auswählen müssen. Diese Verfolgung kann einfach durch Klicken auf das Objekt erfolgen. In diesem Fall ist das Objekt die blaue Scheibe. Jetzt können Sie Ihr Objekt verschieben und feststellen, dass der Zeiger Ihrem Objekt folgt. Verwenden Sie ein einzigartiges Farbobjekt und einen hellen Raum, um optimale Ergebnisse zu erzielen.
Berühren Sie nun Ihren Daumenfinger mit dem Zeigefinger und Sie sollten die Meldung „Taste 1 gedrückt“ sehen. Wenn Sie Ihren Daumen mit dem Mittelfinger drücken, sollte „Taste 2 gedrückt“ angezeigt werden. Dies zeigt an, dass alles einwandfrei funktioniert und die Kalibrierung beendet ist. Klicken Sie nun auf die Schaltfläche Fertig.
Sobald Sie die Fertig-Taste gedrückt haben, werden Sie zum Hauptbildschirm weitergeleitet, wo Sie auf Luft malen oder die LED auf dem Arduino-Board umschalten können, wie im folgenden Video gezeigt.