Sommario:
- Passaggio 1: ottenere i materiali giusti
- Passaggio 2: cablaggio delle cose
- Passaggio 3: involucro
- Passaggio 4: codificare il tuo RPi
- Passaggio 5: visualizza i tuoi dati
- Passaggio 6: concludere
Video: Come Costruire un Contapersone con Raspberry Pi e Ubidots: 6 Passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
In questo semplice progetto utilizzeremo un sensore di movimento per rilevare se un oggetto sta passando davanti al nostro Raspberry Pi. Quindi conteremo quante volte ciò accade e invieremo questo valore a Ubidots.
I contapersone sono in genere dispositivi costosi utilizzati nel settore della vendita al dettaglio per capire come si comportano gli acquirenti. Grazie a Raspberry Pi e Ubidots, siamo in grado di costruire un contapersone funzionale in poche ore e con pochi dollari!
Una volta inviati i dati di conteggio delle persone a Ubidots, possiamo creare bei grafici per l'analisi, nonché avvisi SMS/e-mail.
Passaggio 1: ottenere i materiali giusti
Per completare questo progetto avrai bisogno di:
- Un Raspberry Pi Modello B
- Un sensore PIR di Parallax
- Un Dongle WiFi USB compatibile con Raspberry Pi
- Un pacco batteria USB per alimentare il Raspberry Pi (questo è facoltativo nel caso in cui si desideri lasciare il Pi completamente wireless)
- Tre ponticelli femmina-femmina
- Account Ubidots - o - Licenza STEM
Passaggio 2: cablaggio delle cose
Il sensore di movimento PIR è abbastanza semplice da usare perché ha solo tre pin:
- V+
- GND
- Un pin di segnale che emette "1" quando c'è movimento e "0" quando non c'è.
Non è necessario saldare nulla, né scrivere complesse funzioni I2C o seriali per rilevare questo segnale; basta collegare i cavi direttamente ai pin GPIO del tuo Raspberry Pi e funzionerà!
Passaggio 3: involucro
Poiché il sensore PIR è molto sensibile al movimento, ho usato il ponticello dietro di esso per impostare la sensibilità più bassa possibile. Inoltre, ho preso una vecchia custodia da un paio di occhiali da sole e ho praticato un foro, quindi ho inserito l'RPi e il sensore PIR al suo interno. In questo modo, il sensore di movimento è altamente focalizzato in un punto, invece di essere così omnidirezionale.
Passaggio 4: codificare il tuo RPi
A questo punto, supponiamo che tu abbia eseguito una configurazione di base del tuo Raspberry Pi e che tu stia guardando la sua riga di comando Linux. In caso contrario, ti consigliamo di consultare prima questa guida. Puoi anche controllare questo post sull'utilizzo di Wicd per configurare il WiFi del tuo Raspberry Pi.
Iniziamo assicurandoci di avere tutte le librerie richieste:
$ sudo apt-get update$ sudo apt-get upgrade $ sudo apt-get install python-setuptools $ sudo easy_install pip $ pip install ubidots
Crea un nuovo file chiamato "peoplecounter.py":
$ sudo nano peoplecounter.py
E scrivici dentro il codice qui sotto. Assicurati di sostituire i valori della chiave API e dell'ID variabile con quelli del tuo account Ubidots personale. (Nota: il codice non è troppo elegante, ma ehi, non sono uno sviluppatore Python, solo un ragazzo hardware:)
Lo script consiste in un ciclo che controlla lo stato del pin #7 (il sensore di movimento). Se legge un "1", che significa che c'è stato movimento, allora incrementa la variabile "contapersone" e attende 1,5 secondi in modo che il sensore di movimento torni alla normalità. Questo viene fatto 10 volte, assicurandosi che ci sia almeno 1 secondo tra ogni ciclo, quindi invia la somma totale dei "movimenti" a Ubidots. Se hai bisogno di calibrare il Contapersone, dovresti quindi giocare con le linee "time.sleep" con altri valori.
da ubidots import ApiClient
importa RPi. GPIO come GPIO
tempo di importazione
GPIO.setmode(GPIO. BCM)
GPIO.setup(7, GPIO. IN)
Tentativo:
api =ApiClient("a21ebaf64e14d195c0044fcc3b9f6dab9d653af3")
persone = api.get_variable("5238cec3f91b282c7357a140")
tranne: print "Impossibile connettersi all'API, controlla la tua connessione Internet"
contatore = 0
personev = 0
mentre (1):
presenza = GPIO.input(7)
se (presenza):
contapersone += 1
presenza = 0
tempo.sonno(1.5)
tempo.sonno(1)
contatore += 1
if(contatore==10):
stampa contapersone
people.save_value({'value':peoplecount})
contatore = 0
personev = 0
Passaggio 5: visualizza i tuoi dati
Infine, vai alla tua dashboard Ubidots e aggiungi un widget del tipo "Statement". Questo mostrerà il numero totale di persone rilevate entro un intervallo di tempo specificato
Passaggio 6: concludere
Questo progetto fornisce un indizio sulla quantità di persone che passano attraverso un punto particolare. Non fornisce il numero esatto di persone, dati i limiti del sensore di movimento, ma in alcune applicazioni potrebbe essere appena sufficiente.
I dati raccolti possono essere facilmente inviati a Ubidots Cloud, dove possono essere interpretati creando avvisi, dashboard live o persino condividendo questi dati nei social media, come codice embed o semplicemente in un collegamento pubblico. Puoi anche leggere questi dati da un'altra applicazione utilizzando l'API Ubidots.
Consigliato:
Come costruire un cubo LED 8x8x8 e controllarlo con un Arduino: 7 passaggi (con immagini)
Come costruire un cubo LED 8x8x8 e controllarlo con un Arduino: modifica gennaio 2020: lo lascio nel caso in cui qualcuno voglia usarlo per generare idee, ma non ha più senso costruire un cubo basato su queste istruzioni. I circuiti integrati del driver LED non sono più realizzati ed entrambi gli schizzi sono stati scritti nella vecchia versione
Come costruire uno specchio intelligente con Raspberry Pi 4: 10 passaggi
Come Costruire uno Smart Mirror con Raspberry Pi 4: In questa guida vedremo come costruire uno smartmirror utilizzando pezzi di riciclo come una cornice, un vecchio monitor e un vetrino. Per i componenti elettronici ho acquistato da qui www.lcsc .com
Come costruire un CubeSat con un Arduino con un Arducam: 9 passaggi
Come costruire un CubeSat con un Arduino Con un Arducam: Nella prima immagine, abbiamo un Arduino e si chiama "Arduino Uno."Nella seconda immagine, abbiamo un Arducam, e si chiama "Arducam OV2640 Mini 2MP."Insieme alla seconda immagine, ci sono i materiali di cui avrai bisogno per
Come costruire una stazione meteorologica usando XinaBox e Ubidots su HTTP: 7 passaggi
Come costruire una stazione meteorologica utilizzando XinaBox e Ubidots su HTTP: Scopri come creare la tua stazione meteorologica su Ubidots, utilizzando XinaBox xChips (IP01, CW01 e SW01) Il modulo ESP8266 Core e Wi-Fi (xChip CW01) consente agli utenti di inviare dati dagli xChips modulari di XinaBox al cloud. Questi dati possono essere monitorati da remoto
Come costruire un robot cingolato con braccio di presa controllato tramite Arduino Nrf24l01: 3 passaggi (con immagini)
Come costruire un robot cingolato con braccio di presa controllato tramite Arduino Nrf24l01: l'istruzione "Come costruire un robot cingolato con braccio di presa controllato tramite Arduino Nrf24l01" spiegherà come costruire un braccio di presa a tre gradi di libertà installato su un veicolo cingolato azionato da un modulo L298N a doppia motorizzazione utilizzando MEG