Sommario:

IoT - Reporter dell'umore portatile: 4 passaggi
IoT - Reporter dell'umore portatile: 4 passaggi

Video: IoT - Reporter dell'umore portatile: 4 passaggi

Video: IoT - Reporter dell'umore portatile: 4 passaggi
Video: Ingoiare il latte del trallalero fa bene? #shorts 2024, Dicembre
Anonim
IoT - Reporter portatile dell'umore
IoT - Reporter portatile dell'umore

Cose di cui avremo bisogno:

  • Raspberry Pi con Raspbian
  • Sensore tattile di adafruit
  • Fonte di alimentazione (batteria/CC)
  • Ethernet o WiFi per Raspberry Pi
  • Un altro computer

Passaggio 1: configurazione del nostro hardware Raspberry Pi

Configurazione del nostro hardware Raspberry Pi
Configurazione del nostro hardware Raspberry Pi
Configurazione del nostro hardware Raspberry Pi
Configurazione del nostro hardware Raspberry Pi

Innanzitutto, collega il nostro sensore tattile ai pin GPIO sul nostro Raspberry Pi. Usa dei cavi flessibili

Identifica 3 pin sul nostro sensore:

  • GND - collegare al pin di terra
  • VCC - collegare al pin 5V
  • SIG - connettersi a un pin di segnale

In questo esempio utilizzeremo 5V, ground e GPIO 18 sul nostro Raspberry Pi.

Passaggio 2: configurazione del nostro ambiente sul Raspberry Pi

Configurare il nostro ambiente sul Raspberry Pi
Configurare il nostro ambiente sul Raspberry Pi

Ottieni l'indirizzo IP del nostro Raspberry Pi.

Quindi connettiti al nostro Raspberry Pi usando ssh:

ssh nomeutente@indirizzoip

quindi digita la nostra password.

Una volta entrati, installa apache2 come nostro server web digitando:

sudo apt-get install apache2

Passaggio 3: progettare un pezzo di codice Python per leggere l'input dal nostro sensore

Progetta un pezzo di codice Python per leggere l'input dal nostro sensore
Progetta un pezzo di codice Python per leggere l'input dal nostro sensore

Design

Nel nostro codice di esempio, usiamo un paio di comandi diversi.

Per indicare che siamo felici, facciamo 2 pressioni lunghe

Per indicare che siamo tristi, facciamo un tocco breve e una pressione lunga

Per indicare che siamo confusi, eseguiamo un breve tocco, aspettiamo un battito, quindi 2 brevi tocchi. Per indicare che siamo felici, facciamo un tocco breve, uno spazio breve e una pressione lunga

Per indicare che siamo annoiati, facciamo 3 brevi tocchi

Traducendoli in comandi stringa: (t per tocco breve, T per pressione lunga, g per spazio breve, G per spazio lungo)

felice: TgT

triste: tgT

confuso: tGtgt

annoiato: tgtgt

Quindi faremo in modo che il nostro codice emetta il nostro stato d'animo attuale in un file html intuitivo per il browser per la pubblicazione.

Codice

importa RPi. GPIO come tempo di importazione GPIO

GPIO.cleanup()

GPIO.setmode(GPIO. BCM) GPIO.setup(18, GPIO. IN)

touch_count = 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("Sad") if current_cmd[-3:] == "tgT": current_cmd = "" mood("Happy") if current_cmd [-5:] == "tGtgt": current_cmd = "" mood("Confused") if current_cmd[-5:] == "tgtgt": current_cmd = "" mood("Bored")

def umore(umore):

file = open("index.html", "w") html = """

Reporter portatile dell'umore

Ehi, il mio umore più recente è

{}

"""

file.write(html.format(umore))

mentre (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.cleanup()

Configurazione per lavorare con il nostro server web

digita o carica il file python sopra nella nostra posizione del server web, il cui valore predefinito è /var/www/html

cd /var/www/html

sudo nano touch.py

Quindi digita il codice sopra

Passaggio 4: avvia il nostro server per vederlo in azione

Avvia il nostro server per vederlo in azione!
Avvia il nostro server per vederlo in azione!

cd /var/www/html

sudo python touch.py

Quindi digita l'indirizzo IP per il nostro Raspberry Pi, quindi dovremmo vedere il nostro reporter dell'umore funzionare!

Prova diversi tipi di comandi touch e la pagina dovrebbe aggiornarsi automaticamente per riflettere questo!

Consigliato: