Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Streszczenie
- Krok 2: Podstawowa idea
- Krok 3: Walabot
- Krok 4: Pierwsze kroki
- Krok 5: Python
- Krok 6: Automatyczne uruchamianie skryptu
- Krok 7: Sprzęt
- Krok 8:
- Krok 9:
- Krok 10: Jak to działa
- Krok 11: Kod
Wideo: WalabotEye - śledzenie obiektów z dotykowym sprzężeniem zwrotnym: 11 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Dla osób niedowidzących użyj tego, aby lepiej zrozumieć otaczający Cię świat.
Kieszonkowe dzieci
Rzeczy użyte w tym projekcie
Komponenty sprzętowe Walabot Creator ×1
ADAFRUIT DRV2605L HAPTIC STEROWNIK SILNIKA ×1
Raspberry Pi 3 Model B × 1
Adafruit WIBRACYJNY MINI DYSK Z SILNIKIEM ×1
Akumulator 5.1 V × 1
plecak ×1
Przewody połączeniowe (ogólne) ×5
Krok 1: Streszczenie
Jak by to było, gdybyś mógł wyczuwać otaczające cię przedmioty? Oznacza to, że możesz poruszać się po przestrzeni, nawet jeśli twoja wizja była zagrożona? Nie tylko dla osób niedowidzących, pomysł ten może być również wykorzystany przez służby ratunkowe (mianowicie straż pożarną) w środowiskach wypełnionych dymem. Dźwięk nie zawsze jest najlepszym i najbardziej dyskretnym sposobem udzielania instrukcji, z drugiej strony dotykowa informacja zwrotna będzie idealna.
Krok 2: Podstawowa idea
Chciałem stworzyć czujnik, który byłby w stanie wychwytywać przeszkody, a następnie za pomocą dotykowej informacji zwrotnej doradzić użytkownikowi, jak daleko znajduje się obiekt i czy leci z lewej, prawej lub z przodu. W tym celu będę potrzebować: Czujnika, który jest w stanie zobaczyć przestrzeń 3D Sterownik ze sprzężeniem zwrotnym Haptic Feedback Actuator Zewnętrznej baterii Plecaka, do którego można go przymocować.
Krok 3: Walabot
Chcesz widzieć przez ściany? Wyczuwać obiekty w przestrzeni 3D? Poczuj, czy oddychasz z drugiego końca pokoju? Cóż, masz szczęście.
Walabot to zupełnie nowy sposób wykrywania przestrzeni wokół ciebie za pomocą radaru o małej mocy. To miało być kluczem do tego projektu. Mógłbym wziąć współrzędne kartezjańskie (X-Y-Z) obiektów w przestrzeni 3D, zostaną one zmapowane na serię dotykowych informacji zwrotnych, aby dać użytkownikowi lepsze zrozumienie przestrzeni wokół nich.
Krok 4: Pierwsze kroki
Po pierwsze, będziesz potrzebować komputera do sterowania Walabotem, w tym projekcie używam Raspberry Pi 3 (tutaj określanego jako RPi) ze względu na wbudowane WiFi i ogólne dodatkowe oomph.
Kupiłem kartę SD o pojemności 16 GB z preinstalowanym systemem NOOBS, aby wszystko było przyjemne i proste, i zdecydowałem się zainstalować Raspian jako mój wybrany system operacyjny Linux (jeśli nie wiesz, jak zainstalować Raspian, poświęć chwilę, aby trochę o tym przeczytać) OK, gdy już uruchomisz Raspian na swoim RPi, musisz wykonać kilka czynności konfiguracyjnych, aby przygotować wszystko do naszego projektu. Po pierwsze, upewnij się, że korzystasz z najnowszej wersji jądra i sprawdź dostępność aktualizacji, otwierając powłokę poleceń i wpisując:
aktualizacja sudo apt-get
sudo apt-get dist-upgrade
(Sudo jest dodawane, aby zapewnić, że masz uprawnienia administracyjne, np. rzeczy będą działać). Może to trochę potrwać, więc idź i napij się dobrej herbaty. 2.
Musisz zainstalować pakiet Walabot SDK dla RPi. W przeglądarce internetowej RPi przejdź do https://www.walabot.com/gettingstarted i pobierz pakiet instalacyjny Raspberry Pi.
Z powłoki poleceń:
pobieranie płyt CD
sudo dpkg -I walabotSDK_RasbPi.deb
Musimy zacząć konfigurować RPi do korzystania z magistrali i2c. Z powłoki poleceń:
sudo apt-get zainstaluj python-smbus
sudo apt-get zainstaluj i2c-tools
Gdy to zrobisz, musisz dodać następujące elementy do pliku modułów.
Z powłoki poleceń:
sudo nano /etc/moduły
dodaj te 2 ciągi w osobnych liniach
i2c-dev
i2c-bcm2708
Walabot pobiera sporo prądu, a my również użyjemy GPIO do kontrolowania rzeczy, więc musimy je skonfigurować.
Z powłoki poleceń:
sudo nano /boot/config.txt
dodaj następujące wiersze na końcu pliku:
safe_mode_gpio=4
max_usb_current=1
RPi to doskonałe narzędzie dla producentów, ale jest ograniczone w prądzie, który może wysłać do Walabota. Dlatego dodajemy maksymalny prąd 1A zamiast bardziej standardowego 500mA.
Krok 5: Python
Dlaczego Python? Cóż, ponieważ jest bardzo łatwy do kodowania, szybki do uruchomienia i dostępnych jest mnóstwo dobrych przykładów Pythona! Nigdy wcześniej go nie używałem i wkrótce zacząłem działać. Teraz RPi jest skonfigurowane do tego, czego chcemy, następnym krokiem jest skonfigurowanie Pythona, aby miał dostęp do API Walabot, interfejsów LCD Servo.
Dla Walabota
Z powłoki poleceń:
Instalacja sudo pip „/usr/share/walabot/python/WalabotAPI-1.0.21.zip”
Dla kierowcy dotykowego
Z powłoki poleceń:
sudo apt-get install git build-essential python-dev
cd ~
git klon
Płytka sterownika haptycznego Adafruit DRV2605 jest świetna, ponieważ można wysyłać sygnały I2C do wyzwalania ton zapisanych profili haptycznych. Jedynym minusem było to, że nie było dostępnej biblioteki Pythona. Ale nie bój się! Napisałem jeden w ramach tego projektu.
Krok 6: Automatyczne uruchamianie skryptu
Teraz, gdy wszystko jest już skonfigurowane i skonfigurowane, i mamy gotowy kod Pythona, możemy ustawić automatyczne uruchamianie, aby móc porzucić klawiaturę i monitory.
Jest kilka rzeczy do zrobienia:
Utwórz nowy plik skryptu, aby uruchomić program Python
sudo nano walaboteye.sh
Dodaj te linie
#!/kosz/sz
python /home/pi/WalabotEyeCLI.py
Pamiętaj, aby to zapisać. Następnie musimy nadać skryptowi uprawnienia do uruchomienia, wpisując:
Sudo chmod +x /home/pi/walaboteye.sh
I na koniec musimy dodać ten skrypt do pliku /etc/rc.local
Sudo nano /etc/rc.local Dodaj home/pi/walaboteye.sh &
Pamiętaj, aby dołączyć „&”. Dzięki temu skrypt Pythona może działać w tle. To już posortowana konfiguracja i oprogramowanie, potem czas na okablowanie sprzętu.
Krok 7: Sprzęt
To nie jest moja najlepsza godzina, ale czuję się cudownie hacky! Jak widać na zdjęciach.
Krok 8:
Okablowanie jest bardzo proste. Podłącz piny RPi, SDA SCL VCC i GND do odpowiednich pinów DRV2605. Podłącz swój silnik dotykowy do płyty sterowniczej… to wszystko!
Krok 9:
Następnie wszystko, co musisz zrobić, to podłączyć walabot USB do RPi i uzyskać najlepszą taśmę klejącą i zabezpieczyć wszystko na miejscu, jak pokazano:
Krok 10: Jak to działa
Pomysł jest bardzo prosty. W zależności od tego, jak daleko znajduje się przeszkoda, zależy od tego, jak silne będzie brzęczenie na twoim ramieniu. 2 metry dalej jest cichym brzęczeniem, poniżej 70 cm jest bardzo silnym brzęczeniem i wszystko pomiędzy.
- Czujnik jest również w stanie powiedzieć, czy przeszkoda znajduje się tuż przed nami, czy nadchodzi z lewej czy z prawej.
- Sposób, w jaki to robi, polega na dodaniu drugiego brzęczenia dotykowego, w zależności od tego, gdzie znajduje się obiekt. Jeśli przeszkoda jest tuż przed nami, jest to proste, powtarzające się brzęczenie, którego siła zależy od odległości.
- Jeśli przeszkoda znajduje się po prawej stronie, po głównym buzzie zostanie dodany buzz up. Ponownie, siła zależy od odległości
- Jeśli przeszkoda znajduje się po lewej stronie, po głównym buzzie zostanie dodany brzęczyk zwalniania
Prosty!
Krok 11: Kod
Walabot Eye Github
DRV2605 GitHub
Zalecana:
Ręczny wentylator Arduino z pojemnościowym przełącznikiem dotykowym.: 6 kroków
Ręczny wentylator Arduino z pojemnościowym przełącznikiem dotykowym.: W tym samouczku dowiemy się, jak włączać i wyłączać wentylator akumulatora Hendheld za pomocą pojemnościowego czujnika dotykowego, modułu reley i Visuino. Obejrzyj film demonstracyjny
Automatyka domowa z czujnikiem dotykowym NodeMCU Przekaźnik kontroli temperatury LDR: 16 kroków
Automatyka domowa z przekaźnikiem kontroli temperatury NodeMCU Touch Sensor LDR: W moich poprzednich projektach NodeMCU sterowałem dwoma urządzeniami gospodarstwa domowego z aplikacji Blynk. Otrzymałem wiele komentarzy i wiadomości, aby uaktualnić projekt za pomocą sterowania ręcznego i dodać więcej funkcji.Zaprojektowałem więc tę skrzynkę rozszerzającą Smart Home.W tym IoT
Moonwalk: proteza z haptycznym sprzężeniem zwrotnym: 5 kroków
Moonwalk: proteza ze sprzężeniem dotykowym: Opis: Moonwalk to czułe na nacisk urządzenie protetyczne dla osób z zaburzeniami czucia dotykowego (objawy podobne do neuropatii). Moonwalk został zaprojektowany, aby pomóc osobom otrzymywać pomocne dotykowe informacje zwrotne, gdy ich stopy wchodzą w kontakt z
Prosty wyświetlacz ergometru oparty na Arduino z różnicowym sprzężeniem zwrotnym: 7 kroków (ze zdjęciami)
Prosty wyświetlacz ergometru oparty na Arduino z różnicowym sprzężeniem zwrotnym: trening kardio jest nudny, szczególnie podczas ćwiczeń w pomieszczeniach. Kilka istniejących projektów próbuje to złagodzić, robiąc fajne rzeczy, takie jak podłączenie ergometru do konsoli do gier, a nawet symulowanie prawdziwej jazdy rowerem w VR. Ekscytujące, ponieważ
Arduino Uno: animacja bitmapowa na ekranie dotykowym ILI9341 TFT z ekranem dotykowym Visuino: 12 kroków (ze zdjęciami)
Arduino Uno: animacja bitmapowa na ekranie dotykowym TFT ILI9341 Z Visuino: Nakładki na ekran dotykowy TFT oparte na ILI9341 są bardzo popularnymi, niedrogimi osłonami wyświetlaczy dla Arduino. Visuino ma dla nich wsparcie od dłuższego czasu, ale nigdy nie miałem okazji napisać samouczka, jak z nich korzystać. Ostatnio jednak niewiele osób pytało