Spisu treści:
- Krok 1: Konfigurowanie naszego sprzętu Raspberry Pi
- Krok 2: Konfigurowanie naszego środowiska na Raspberry Pi
- Krok 3: Zaprojektuj fragment kodu Pythona, aby odczytać dane wejściowe z naszego czujnika
- Krok 4: Uruchom nasz serwer, aby zobaczyć go w akcji
Wideo: IoT - przenośny rejestrator nastroju: 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Rzeczy, których będziemy potrzebować:
- Raspberry Pi z Raspbian
- Czujnik dotykowy od adafruit
- Źródło zasilania (akumulator/prąd stały)
- Ethernet lub WiFi dla Raspberry Pi
- Inny komputer
Krok 1: Konfigurowanie naszego sprzętu Raspberry Pi
Najpierw podłącz nasz czujnik dotykowy do pinów GPIO na naszym Raspberry Pi. Użyj elastycznych kabli
Zidentyfikuj 3 piny na naszym czujniku:
- GND - podłącz do pinu uziemienia
- VCC - podłącz do pinu 5V
- SIG - połącz z pinem sygnałowym
W tym przykładzie użyjemy 5V, uziemienia i GPIO 18 na naszym raspberry pi.
Krok 2: Konfigurowanie naszego środowiska na Raspberry Pi
Uzyskaj adres IP naszego Raspberry Pi.
Następnie połącz się z naszym raspberry pi za pomocą ssh:
ssh nazwa_użytkownika@ipaddress
następnie wpisz nasze hasło.
Gdy już jesteśmy, zainstaluj apache2 jako nasz serwer WWW, wpisując:
sudo apt-get zainstaluj apache2
Krok 3: Zaprojektuj fragment kodu Pythona, aby odczytać dane wejściowe z naszego czujnika
Projekt
W naszym przykładowym kodzie używamy kilku różnych poleceń.
Aby zaznaczyć, że jesteśmy szczęśliwi, wykonujemy 2 długie naciśnięcia
Aby wskazać, że jesteśmy smutni, wykonujemy jedno krótkie dotknięcie i jedno długie naciśnięcie
Aby wskazać, że jesteśmy zdezorientowani, wykonujemy jedno krótkie stuknięcie, czekamy na takt, a następnie dwa krótkie stuknięcia. Aby wskazać, że jesteśmy szczęśliwi, wykonujemy jedno krótkie dotknięcie, jedno krótkie odstępy i jedno długie naciśnięcie
Aby wskazać, że się nudzimy, wykonujemy 3 krótkie stuknięcia
Tłumaczenie ich na polecenia tekstowe: (t dla krótkiego stuknięcia, T dla długiego naciśnięcia, g dla krótkiej przerwy, G dla długiej przerwy)
szczęśliwy: TgT
smutny: tgT
zdezorientowany: tGtgt
znudzony: tgtgt
Następnie nasz kod wyśle nasz aktualny nastrój do przyjaznego dla przeglądarki pliku html do serwowania.
Kod
importuj RPi. GPIO jako czas importu GPIO
GPIO.oczyszczanie()
GPIO.setmode(GPIO. BCM) GPIO.setup(18, GPIO. IN)
liczba_dotknięć = 0
touch_state = 0 touch_duration = 0 gap_duration = 0 current_cmd = ""
def cmd():
global current_cmd if current_cmd[-3:] == "TgT": current_cmd = "" mood("Smutny") if current_cmd[-3:] == "tgT": current_cmd = "" mood("Szczęśliwy") if current_cmd [-5:] == "tGtgt": current_cmd = "" mood("Zmieszany") if current_cmd[-5:] == "tgtgt": current_cmd = "" mood("Znudzony")
def nastrój(nastrój):
file = open("index.html", "w") html = """
Przenośny rejestrator nastroju
Hej, mój ostatni nastrój to
{}
"""
file.write(html.format(nastrój))
podczas (1):
time.sleep(0.001) if(GPIO.input(18)): if touch_state==0: if gap_duration > 2000: gap_duration = 0 if gap_duration > 200: current_cmd = current_cmd + "G" else: current_cmd = current_cmd + "g " gap_duration = 0 touch_state = 1 touch_count = touch_count + 1 if touch_state==1: touch_duration = touch_duration + 1 else: if gap_duration 200: current_cmd = current_cmd + "T" else: current_cmd = current_cmd + "t" touch_duration = 0 cmd()
GPIO.oczyszczanie()
Konfiguracja do pracy z naszym serwerem internetowym
wpisz lub prześlij powyższy plik Pythona do naszej lokalizacji serwera WWW, który jest domyślnie /var/www/html
cd /var/www/html
sudo nano touch.py
Następnie wpisz powyższy kod
Krok 4: Uruchom nasz serwer, aby zobaczyć go w akcji
cd /var/www/html
sudo python touch.py
Następnie wpisz adres IP naszego Raspberry Pi, wtedy powinniśmy zobaczyć, jak działa nasz reporter nastroju!
Wypróbuj różne typy poleceń dotykowych, a strona powinna się automatycznie odświeżyć, aby to odzwierciedlić!
Zalecana:
Rejestrator prędkości wiatru i promieniowania słonecznego: 3 kroki (ze zdjęciami)
Rejestrator prędkości wiatru i promieniowania słonecznego: Muszę rejestrować prędkość wiatru i moc promieniowania słonecznego (napromieniowanie), aby ocenić, ile energii można uzyskać za pomocą turbiny wiatrowej i/lub paneli słonecznych. Będę mierzyć przez rok, analizować dane, a następnie zaprojektuj system poza siecią
Bezprzewodowa klawiatura, mysz i rejestrator makr EngineersBuddy.: 4 kroki
EngineersBuddy Wireless Keyboard, Mouse and Macro Recorder.: Ta instrukcja wyjaśnia, jak korzystać z Engineers Buddy, klawiatury, myszy i rejestratora makr. Ta aplikacja na Androida działa w połączeniu z modułem sprzętowym emulatora klawiatury i myszy Enginners Buddy. Moduł będzie współpracował z każdą kompozycją HID
Profile nastroju Netflix: 3 kroki
Profile nastroju Netflix: Ta instrukcja prowadzi użytkownika Netflix przez kroki, aby dostosować algorytm Netflix, aby zapewnić rekomendacje na podstawie Twojego nastroju
Ulepszanie kostki nastroju Arduino LED (proste) (załączone wideo): 4 kroki
Ulepszanie Arduino LED Mood Cube (proste) (wideo w zestawie): Po obejrzeniu projektu LED small mood cube stworzonego przez 'earla, postanowiłem zrobić ulepszoną wersję LED Mood Cube. Moja wersja będzie bardziej złożona niż oryginalna, ponieważ będzie nieco większa od oryginalnej, będzie miała o dwa kolory więcej
Słoik nastroju LED!: 3 kroki
LED Mood Jar !: Cześć, W tej prostej instrukcji nauczę Cię, jak zrobić słoik LED nastroju, który wygląda świetnie i zajmuje tylko kilka minut