Inhoudsopgave:

WalabotEye - Objecttracker met haptische feedback - Ajarnpa
WalabotEye - Objecttracker met haptische feedback - Ajarnpa

Video: WalabotEye - Objecttracker met haptische feedback - Ajarnpa

Video: WalabotEye - Objecttracker met haptische feedback - Ajarnpa
Video: How To Use Your Smartphone to See Through Walls! Superman's X-ray Vision Challenge 2024, Juli-
Anonim
Image
Image
de hardware
de hardware

Gebruik dit voor slechtzienden om de wereld om je heen beter te begrijpen.

Benodigdheden

Dingen die in dit project worden gebruikt

Hardwarecomponenten Walabot Creator ×1

ADAFRUIT DRV2605L HAPTIC MOTOR CONTROLLER ×1

Raspberry Pi 3 Model B ×1

Adafruit TRILLENDE MINI MOTORSCHIJF ×1

5.1V batterijpakket ×1

rugzak ×1

Doorverbindingsdraden (generiek) ×5

Stap 1: Samenvatting

Hoe zou het zijn als je objecten om je heen zou kunnen voelen? Wat betekent dat u door de ruimte kunt navigeren, zelfs als uw zicht in gevaar is? Niet alleen voor slechtzienden, maar ook door hulpdiensten (namelijk de brandweer) in met rook gevulde omgevingen. Audio is niet altijd de beste en meest discrete manier om instructie te geven, haptische feedback daarentegen zal perfect zijn.

Stap 2: Het basisidee

Ik wilde een sensor maken die obstakels zou kunnen oppikken en de drager vervolgens met behulp van haptische feedback zou kunnen adviseren hoe ver het object zich bevindt, en of het van links, rechts of recht vooruit komt. Hiervoor heb ik nodig: Een sensor die 3D-ruimte kan zien Haptic Feedback-driver Haptic Feedback Actuator Een externe batterij Een rugzak om aan vast te maken.

Stap 3: Walabot

Image
Image

Wil je door muren heen kijken? Zintuiglijke objecten in 3D-ruimte? Voel je of je aan de andere kant van de kamer ademt? Nou, je hebt geluk.

De Walabot is een geheel nieuwe manier om de ruimte om je heen te voelen met behulp van radar met laag vermogen. Dit zou de sleutel tot dit project worden. Ik zou de cartesiaanse (X-Y-Z) coördinaten van objecten in de 3D-ruimte kunnen nemen, deze zullen worden toegewezen aan een reeks haptische feedbacks om de drager een beter begrip te geven van de ruimte om hen heen.

Stap 4: Aan de slag

Allereerst heb je een computer nodig om de Walabot aan te sturen, voor dit project gebruik ik een Raspberry Pi 3 (hierna RPi genoemd) vanwege de ingebouwde WiFi en algemene extra uitstraling.

Ik kocht een SD-kaart van 16 GB waarop NOOBS vooraf was geïnstalleerd om het leuk en eenvoudig te houden, en koos ervoor om Raspian te installeren als mijn Linux-besturingssysteem naar keuze (als je niet bekend bent met het installeren van Raspian, neem dan even de tijd om dit een beetje te lezen) OK, als je Raspian eenmaal op je RPi hebt staan, moet je een paar configuratiestappen nemen om dingen voor te bereiden voor ons project. Zorg er eerst voor dat u de nieuwste kernelversie gebruikt en controleer op updates door een opdrachtshell te openen en te typen:

sudo apt-get update

sudo apt-get dist-upgrade

(Sudo is toegevoegd om ervoor te zorgen dat je beheerdersrechten hebt, dingen zullen bijvoorbeeld werken.) Dit kan even duren, dus ga lekker een kopje thee drinken. 2.

U moet de Walabot SDK voor RPi installeren. Ga vanuit uw RPi-webbrowser naar https://www.walabot.com/gettingstarted en download het Raspberry Pi-installatiepakket.

Vanuit een opdrachtshell:

cd-downloads

sudo dpkg -I walabotSDK_RasbPi.deb

We moeten beginnen met het configureren van de RPi om de i2c-bus te gebruiken. Vanuit een opdrachtshell:

sudo apt-get install python-smbus

sudo apt-get install i2c-tools

Zodra dit is gebeurd, moet u het volgende toevoegen aan het modulebestand.

Vanuit een opdrachtshell:

sudo nano /etc/modules

voeg deze 2 strings op aparte regels toe

i2c-dev

i2c-bcm2708

De Walabot trekt behoorlijk wat stroom, en we zullen ook GPIO's gebruiken om dingen te regelen, dus we moeten deze instellen.

Vanuit een opdrachtshell:

sudo nano /boot/config.txt

voeg de volgende regels toe aan het einde van het bestand:

safe_mode_gpio=4

max_usb_current=1

De RPi is een uitstekend hulpmiddel voor makers, maar het is beperkt in de stroom die het naar de Walabot kan sturen. Daarom voegen we een max. stroom van 1 ampère toe in plaats van de meer standaard 500 mA.

Stap 5: Python

Waarom Python? Nou, omdat het super eenvoudig te coderen is, snel aan de slag te gaan en er zijn heel veel goede python-voorbeelden beschikbaar! Ik had het nog nooit eerder gebruikt en was al snel in een mum van tijd aan de slag. Nu de RPi is geconfigureerd voor wat we willen, is de volgende stap om Python te configureren om toegang te krijgen tot de Walabot API, LCD Servo-interfaces.

Voor de Walabot

Vanuit een opdrachtshell:

Sudo pip-installatie "/usr/share/walabot/python/WalabotAPI-1.0.21.zip"

Voor de haptische bestuurder

Vanuit een opdrachtshell:

sudo apt-get install git build-essentiële python-dev

cd ~

git kloon

Het Adafruit DRV2605 haptische driverboard is geweldig omdat je I2C-signalen kunt sturen om tonnen opgeslagen haptische profielen te activeren. Enige nadeel was dat hiervoor geen Python-bibliotheek beschikbaar was. Maar vrees niet! Ik heb er een geschreven als onderdeel van dit project.

Stap 6: het script automatisch uitvoeren

Nu dit allemaal is ingesteld en geconfigureerd, en we de Python-code gereed hebben, kunnen we dingen zo instellen dat ze automatisch worden uitgevoerd, zodat we het toetsenbord en de monitors kunnen dumpen.

Er zijn een paar dingen te doen:

Maak een nieuw scriptbestand om het Python-programma uit te voeren

sudo nano walaboteye.sh

Voeg deze regels toe

#!/bin/sh

python /home/pi/WalabotEyeCLI.py

Zorg ervoor dat u het opslaat. Vervolgens moeten we het script toestemming geven om te draaien door te typen:

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

En tot slot moeten we dit script toevoegen aan het bestand /etc/rc.local

Sudo nano /etc/rc.local Home/pi/walaboteye.sh toevoegen &

Zorg ervoor dat u de "&" toevoegt. Hierdoor kan het Python-script op de achtergrond worden uitgevoerd. Juist! Dat is alle configuratie en software gesorteerd, vervolgens is het tijd om de hardware aan te sluiten.

Stap 7: de hardware

de hardware
de hardware
de hardware
de hardware

Dit is niet mijn beste uur, maar het voelt wel heerlijk hacky! Zoals je op de afbeeldingen zult zien.

Stap 8:

Afbeelding
Afbeelding
Afbeelding
Afbeelding

De bedrading is supereenvoudig. Sluit de RPi-, SDA SCL VCC- en GND-pinnen aan op de bijbehorende DRV2605-pinnen. Sluit je haptische motor aan op het stuurbord… dat is het voor dat beetje!

Stap 9:

Afbeelding
Afbeelding
Afbeelding
Afbeelding

Daarna hoef je alleen maar de walabot USB op de RPi aan te sluiten en je beste plakband te pakken en alles op zijn plaats te bevestigen zoals weergegeven:

Stap 10: Hoe het werkt

Het idee is heel eenvoudig. Afhankelijk van hoe ver weg het obstakel is, hangt af van hoe sterk het gezoem op je schouder zal voelen. 2 meter afstand is een zachte buzz, onder de 70 cm is een zeer sterke buzz en alles daartussenin.

  • De sensor kan je ook vertellen of het obstakel recht voor je ligt, van links of van rechts komt.
  • De manier waarop dit gebeurt, is door een tweede haptische buzz toe te voegen, afhankelijk van waar het object zich bevindt. Als het obstakel recht voor je ligt, is het een eenvoudig herhalend gezoem, waarbij de sterkte afhankelijk is van hoe ver het is.
  • Als het obstakel zich aan de rechterkant bevindt, wordt een aanloopzoemer toegevoegd na de hoofdzoemer. Nogmaals, de sterkte hangt af van hoe ver weg het is
  • Als het obstakel zich aan de linkerkant bevindt, wordt een uitloopzoemer toegevoegd na de hoofdzoemer

Eenvoudig!

Stap 11: Coderen

Walabot Eye Github

DRV2605 GitHub

Aanbevolen: