Inhaltsverzeichnis:

WalabotEye - Object Tracker mit haptischem Feedback - Gunook
WalabotEye - Object Tracker mit haptischem Feedback - Gunook
Anonim
Image
Image
Die Hardware
Die Hardware

Nutzen Sie dies für Sehbehinderte, um die Welt um Sie herum besser zu verstehen.

Lieferungen

In diesem Projekt verwendete Dinge

Hardwarekomponenten Walabot Creator ×1

ADAFRUIT DRV2605L HAPTISCHER MOTORSTEUERUNG ×1

Raspberry Pi 3 Modell B ×1

Adafruit VIBRIERENDE MINI-MOTORSCHEIBE ×1

5,1 V Batteriepack × 1

Rucksack ×1

Überbrückungsdrähte (allgemein) ×5

Schritt 1: Zusammenfassung

Wie wäre es, wenn Sie Objekte um sich herum wahrnehmen könnten? Das heißt, Sie könnten im Raum navigieren, selbst wenn Ihre Sicht beeinträchtigt war? Nicht nur für sehbehinderte Menschen könnte diese Idee auch von Rettungsdiensten (nämlich der Feuerwehr) in verrauchter Umgebung genutzt werden. Audio ist nicht immer die beste und diskreteste Art, Anweisungen zu geben, haptisches Feedback hingegen ist perfekt.

Schritt 2: Die Grundidee

Ich wollte einen Sensor entwickeln, der Hindernisse erkennt und dem Träger dann durch haptisches Feedback mitteilt, wie weit das Objekt entfernt ist und ob es von links, rechts oder ganz voraus kommt. Dafür benötige ich: Einen Sensor, der 3D-Raum sehen kannHaptic Feedback DriverHaptic Feedback ActuatorEine externe BatterieEin Rucksack zum Anschnallen.

Schritt 3: Walabot

Image
Image

Möchten Sie durch Wände sehen? Objekte im 3D-Raum wahrnehmen? Spüren Sie, ob Sie von der anderen Seite des Raumes atmen? Nun, Sie haben Glück.

Der Walabot ist eine völlig neue Möglichkeit, den Raum um Sie herum mit einem Low-Power-Radar zu erfassen. Dies sollte der Schlüssel zu diesem Projekt sein. Ich könnte die kartesischen (X-Y-Z) Koordinaten von Objekten im 3D-Raum nehmen, diese werden auf eine Reihe von haptischen Rückmeldungen abgebildet, um dem Träger ein besseres Verständnis des Raums um sie herum zu ermöglichen.

Schritt 4: Erste Schritte

Das Wichtigste zuerst, Sie benötigen einen Computer, um den Walabot anzusteuern. Für dieses Projekt verwende ich einen Raspberry Pi 3 (hier als RPi bezeichnet) aufgrund des eingebauten WLANs und der allgemeinen zusätzlichen Leistung.

Ich habe eine 16-GB-SD-Karte mit vorinstalliertem NOOBS gekauft, um die Dinge schön und einfach zu halten, und habe mich dafür entschieden, Raspian als mein Linux-Betriebssystem meiner Wahl zu installieren (wenn Sie mit der Installation von Raspian nicht vertraut sind, nehmen Sie sich bitte einen Moment Zeit, um dies zu lesen). OK, sobald Sie Raspian auf Ihrem RPi zum Laufen gebracht haben, müssen Sie einige Konfigurationsschritte ausführen, um die Dinge für unser Projekt vorzubereiten. Stellen Sie zunächst sicher, dass Sie die neueste Kernel-Version ausführen und suchen Sie nach Updates, indem Sie eine Befehlsshell öffnen und Folgendes eingeben:

sudo apt-get update

sudo apt-get dist-upgrade

(Sudo wird hinzugefügt, um sicherzustellen, dass Sie über Administratorrechte verfügen, z. B. Dinge funktionieren.) Dies kann eine Weile dauern, also gehen Sie und trinken Sie eine schöne Tasse Tee. 2.

Sie müssen das Walabot SDK für RPi installieren. Rufen Sie in Ihrem RPi-Webbrowser https://www.walabot.com/gettingstarted auf und laden Sie das Raspberry Pi-Installationspaket herunter.

Von einer Befehlsshell:

CD-Downloads

sudo dpkg -I walabotSDK_RasbPi.deb

Wir müssen mit der Konfiguration des RPi beginnen, um den i2c-Bus zu verwenden. Aus einer Befehlsshell:

sudo apt-get install python-smbus

sudo apt-get install i2c-tools

Sobald dies erledigt ist, müssen Sie der Moduldatei Folgendes hinzufügen.

Von einer Befehlsshell:

sudo nano /etc/modules

füge diese 2 Strings in separaten Zeilen hinzu

i2c-dev

i2c-bcm2708

Der Walabot zieht ziemlich viel Strom, und wir werden auch GPIOs verwenden, um Dinge zu steuern, also müssen wir diese einrichten.

Von einer Befehlsshell:

sudo nano /boot/config.txt

Fügen Sie am Ende der Datei die folgenden Zeilen hinzu:

safe_mode_gpio=4

max_usb_current=1

Das RPi ist ein ausgezeichnetes Werkzeug für Hersteller, aber es kann nur begrenzt an den Walabot gesendet werden. Aus diesem Grund fügen wir einen maximalen Strom von 1 Ampere anstelle der üblicheren 500 mA hinzu.

Schritt 5: Python

Warum Python? Nun, da es super einfach zu programmieren ist, schnell zum Laufen kommt und es viele gute Python-Beispiele gibt! Ich hatte es noch nie benutzt und war in kürzester Zeit einsatzbereit. Jetzt ist das RPi für das konfiguriert, was wir wollen. Der nächste Schritt besteht darin, Python so zu konfigurieren, dass es Zugriff auf die Walabot-API und die LCD-Servo-Schnittstellen hat.

Für die Walabot

Aus einer Befehlsshell:

Sudo pip install „/usr/share/walabot/python/WalabotAPI-1.0.21.zip“

Für den haptischen Fahrer

Von einer Befehlsshell:

sudo apt-get install git build-essential python-dev

cd ~

Git-Klon

Die haptische Treiberplatine Adafruit DRV2605 ist großartig, da Sie I2C-Signale senden können, um Tonnen von gespeicherten haptischen Profilen auszulösen. Der einzige Nachteil war, dass dafür keine Python-Bibliothek verfügbar war. Aber keine Angst! Ich habe eine im Rahmen dieses Projekts geschrieben.

Schritt 6: Automatisches Ausführen des Skripts

Nun, da dies alles eingerichtet und konfiguriert ist und wir den Python-Code bereit haben, können wir die Dinge auf automatische Ausführung einstellen, damit wir die Tastatur und die Monitore ablegen können.

Es gibt ein paar Dinge zu tun:

Erstellen Sie eine neue Skriptdatei, um das Python-Programm auszuführen

sudo nano walaboteye.sh

Füge diese Zeilen hinzu

#!/bin/sh

python /home/pi/WalabotEyeCLI.py

Stellen Sie sicher, dass Sie es speichern. Als nächstes müssen wir dem Skript die Berechtigung zum Ausführen erteilen, indem wir Folgendes eingeben:

Sudo chmod +x /home/pi/walaboteye.sh

Und schließlich müssen wir dieses Skript der Datei /etc/rc.local hinzufügen

Sudo nano /etc/rc.local Add home/pi/walaboteye.sh &

Achten Sie darauf, das "&" anzugeben. Dadurch kann das Python-Skript im Hintergrund ausgeführt werden Richtig! Das ist die ganze Konfiguration und Software sortiert, als nächstes ist es Zeit, die Hardware zu verdrahten.

Schritt 7: Die Hardware

Die Hardware
Die Hardware
Die Hardware
Die Hardware

Dies ist nicht meine schönste Stunde, aber es fühlt sich herrlich hacky an! Wie Sie auf den Bildern sehen werden.

Schritt 8:

Bild
Bild
Bild
Bild

Die Verkabelung ist super einfach. Verbinden Sie die Pins RPi, SDA SCL VCC und GND mit den entsprechenden Pins des DRV2605. Verbinden Sie Ihren haptischen Motor mit der Treiberplatine … das war's!

Schritt 9:

Bild
Bild
Bild
Bild

Danach müssen Sie nur noch den Walabot USB an das RPi anschließen und Ihr feinstes Klebeband besorgen und alles wie abgebildet befestigen:

Schritt 10: Wie es funktioniert

Die Idee ist ganz einfach. Je nachdem, wie weit das Hindernis entfernt ist, hängt davon ab, wie stark sich das Summen auf Ihrer Schulter anfühlt. 2 Meter entfernt ist ein leises Summen, unter 70 cm ist ein sehr starkes Summen und alles dazwischen.

  • Der Sensor kann Ihnen auch sagen, ob das Hindernis direkt vor Ihnen ist, von links oder von rechts kommt.
  • Auf diese Weise wird ein zweites haptisches Summen hinzugefügt, je nachdem, wo sich das Objekt befindet. Wenn das Hindernis direkt vor Ihnen liegt, ist es ein einfaches, sich wiederholendes Summen, dessen Stärke davon abhängt, wie weit es ist.
  • Wenn sich das Hindernis rechts befindet, wird nach dem Hauptsummen ein Hochlauf-Buzz hinzugefügt. Auch hier hängt die Stärke davon ab, wie weit es entfernt ist
  • Befindet sich das Hindernis links, wird nach dem Hauptsummen ein Ramp-Down-Buzz hinzugefügt

Einfach!

Schritt 11: Code

Walabot Eye Github

DRV2605 GitHub

Empfohlen: