Sommario:
- Forniture
- Passaggio 1: configurazione dell'RPI
- Passaggio 2: banca dati
- Passaggio 3: cablaggio
- Passaggio 4: alloggio
- Passaggio 5: codifica
Video: Parcheggio intelligente con Raspberry Pi: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
In questo tutorial creeremo un sistema di parcheggio completamente automatico collegato a un'interfaccia web. Potrai vedere quale spot viene preso, decidere chi entra e chi esce ed è dotato di un sistema di illuminazione automatico.
Forniture
Hardware
- 2x sensori a ultrasuoni
- 1x servomotore
- 4x LED bianchi
- 1x resistenza dipendente dalla luce
- Display LCD 1x 2*16
informatica
- 1x Raspberry Pi 3 B+
- 1x scheda SD (8-16 GB la scelta è tua)
- 1x Adafruit I2S 3W Classe D Amplificatore Breakout - MAX98357A
- 1x MCP3008
- 1x resistenza 2.2K Ohm
- 9x resistori 1K Ohm
Varie
- Ponticelli
- tagliere
- Cavo UTP
- Adattatore per il tuo lampone pi
- Un foglio di multiplex (puoi usare qualsiasi tipo di materiale tu voglia per l'involucro)
- Una pistola per colla
Software
- PuTTY
- Software per modificare il codice (puoi usare quello che vuoi purché supporti: Python, HTML, CSS e script java
- Imager disco Win32
- Immagine del sistema operativo Raspbian
- Visualizzatore VNC (opzionale)
Passaggio 1: configurazione dell'RPI
Prima di iniziare con il cablaggio dell'hardware, scrivendo il
software e realizzare l'involucro di cui avremo bisogno per impostare il tuo PI con il software necessario che ti servirà per eseguire il progetto.
Avrai bisogno di un'immagine di Raspbian da inserire sulla tua scheda SD e per scriverla sulla scheda SD Win32 Disk Imager. Puoi trovare i link ad entrambi in basso.
- Win32 Disk Imager:
- Immagine Raspbian:
L'installazione
-
Apri Win32 Disk Imager
- Seleziona l'immagine appena scaricata tramite l'icona della cartella
- Seleziona la tua scheda SD tramite il menu a discesa
- Clicca su scrivi
- Al termine del processo, il tuo computer probabilmente ti chiederà se desideri formattare la scheda SD non farlo
Quando hai finito con questi passaggi, dovrai fare alcune cose extra in modo da poter accedere al software del tuo PI.
- Apri la scheda SD nel tuo explorer
- Apri il file "cmdline.txt"
- Vedrai una lunga riga di testo alla fine aggiungi: ip=169.254.10.1
- Salva il file
- Crea un file chiamato ssh senza estensione (se non sai come farlo fai clic su nuovo file, seleziona nuovo file di testo elimina l'estensione e chiamalo ssh)
- L'ultimo passaggio di questa parte è espellere in sicurezza la scheda SD e inserirla nel Raspberry PI
Collegamento
Quando hai finito di eseguire i passaggi precedenti, è il momento di connetterti al tuo pi per la prima volta. Per prima cosa dovrai collegare il cavo UTP, un'estremità nel computer e l'altra nel pi (è importante collegare il cavo LAN prima di collegarlo).
- Installa Putty:
- Una volta installato, aprilo e inserisci 169.254.10.1 nella casella IP
- Seleziona SSH e compila la porta 22
- Fare clic su Apri
- Inserisci il nome utente: pi e la password raspberry questo è il login standard su un'immagine nuova di zecca
Raspi-config
Prima di andare avanti dovrai modificare alcune impostazioni nel menu raspi-config aprilo usando:
sudo raspi-config
1. Abilita I2C e SPI nelle opzioni nella categoria delle interfacce
2. Scegli il tuo paese WIFI tramite la categoria di localizzazione
3. Impostare l'impostazione Desktop/CLI nella categoria delle opzioni di avvio su Desktop Autologin.
4. In Opzioni avanzate scegli A1 Espandi filesystem (questo assicura di utilizzare lo spazio dell'intera scheda SD
5. Ora esci e sudo riavvia
Wifi
Ora è il momento di configurare la tua connessione wifi, ovviamente avrai bisogno delle credenziali del tuo wifi.
Per prima cosa vai in modalità root eseguendo questo comando
sudo-i
Ora hai i diritti necessari per eseguire questi comandi:
Assicurati di cambiare SSID con il tuo nome wifi e PASSWORD con la tua password wifi
Wpa_passphrase “SSID” “PASSWORD” >> /etc/wpa_supplicant/wpa_supplicant.conf
Accedi al client WPA eseguendo questo comando:
wpa_cli
Seleziona l'interfaccia
Interfaccia wlan0
Ricarica la configurazione
Riconfigurare
Ultimo ma non meno importante, controlla se ha funzionato. Puoi farlo inserendo:
IP a
Qui puoi controllare se hai un IP sotto le interfacce WLAN0 se non sudo reboot (non fallisce mai (:).
Se non ti senti a tuo agio tramite la riga di comando, puoi sempre farlo tramite la GUI di Raspbian che è un po' più user friendly.
- Installa il visualizzatore VNC qui:
- Fai clic su file, nuova connessione e inserisci nella barra dell'indirizzo IP: 169.254.10.1 e scegli il nome che desideri
- Inserisci il nome utente: pi e la password lampone
- Fai clic sull'icona Wi-Fi e connettiti in questo modo
Pacchetti
Ora che siamo connessi a Internet possiamo installare i pacchetti di cui abbiamo bisogno per eseguire tutto il codice.
Per prima cosa dovremo aggiornare l'elenco dei pacchetti a quello più recente eseguendo:
sudo apt update
sudo apt upgrade
Server Web Apache
Avremo bisogno di un server web per eseguire la nostra applicazione web. Possiamo ottenere ciò installando il server web apache eseguendo questo comando:
sudo apt install apach2 -y
Pacchetti Python
Per far funzionare tutto avremo bisogno di alcuni pacchetti. Questi sono quelli di cui avremo bisogno.
- Borraccia
- Flask-Cors
- Flask-Extension
- Flask-MySQL
- Flask-SocketIO
- Python-socketio
Puoi installarli eseguendo questo comando:
pip install Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio
Passaggio 2: banca dati
Maria DB
Esegui il seguente comando per installare MariaDB, questo è il sistema di database necessario per tenere traccia di tutti i dati letti dai sensori.
sudo apt install mariadb-server
Ora dovremo rendere sicura la nostra installazione
Mysql_secure_installation
Una volta eseguito il comando, ci chiederà una password di root, non ne abbiamo ancora una, quindi premi invio.
Ora ti chiederà se ne vuoi uno per motivi di sicurezza, ne vogliamo uno, quindi premi Y sulla tastiera e scegli la password che desideri.
Ora continuerà a farti qualche altra domanda, rispondi Y a tutte
Bene, ora che siamo arrivati a questo punto, dobbiamo entrare nella shell SQL.
Per fare ciò dobbiamo prima diventare di nuovo root per concederci i privilegi per farlo inserendo nuovamente questo comando:
sudo -i
Ora entra nella shell mysql
mysql
Ora creeremo un utente mettendo il nome che vuoi tra le virgolette prima della @ e la password che vuoi dopo identificata da
Ora dobbiamo svuotare la tabella dei permessi eseguendo questo comando:
PRIVILEGI DI SCARICO;
Dopo aver completato questi passaggi, puoi ricreare lo schema db dall'immagine sopra. Sfortunatamente non posso darti un dump del database perché sto riscontrando alcuni errori software.
Passaggio 3: cablaggio
Ora è il momento di eseguire il cablaggio del progetto. Per rendere il processo un po' più semplice, creare prima uno schema in un programma chiamato fritzing. Fritzing rende più facile ricreare il cablaggio nella vita reale e ottenere un'immagine chiara di ciò che stai realizzando.
Passaggio 4: alloggio
Il primo passo è tagliare il legno nelle forme come si vede nel disegno. L'ho fatto tramite taglio laser, ma una normale sega funzionerà altrettanto bene. Dopodiché vorrai dipingere il legno di nero per ottenere il colore dell'asfalto. Una volta che la vernice è asciutta, puoi dipingere le strisce bianche per ottenere quella sensazione di parcheggio. Per la recinzione ho spruzzato cannucce dipinte per sembrare dei pali. Per la recinzione stessa ho attaccato dei goas ai pali. La barriera è in cartapesta che ho verniciato a spruzzo in seguito.
Passaggio 5: codifica
Backend: il backend del progetto è scritto in Python e TSQL. Legge tutti i dati dei sensori e li scrive nel database che abbiamo creato poco prima. Esegue anche un server web in modo che possiamo connettere il nostro frontend ad esso. Ho scritto il codice necessario per il backend in pycharm ma ovviamente puoi usare quello che vuoi.
Puoi trovare il codice per il backend qui:
Frontend: il frontend è scritto in HTML, CSS e Javascript. Ho usato una combinazione di codice Visual Studio e phpstorm per scrivere il codice. Il codice scrive fondamentalmente l'intero sito web e nei file javascript puoi trovare il codice necessario per ottenere i dati dal backend.
Puoi trovare il codice per il frontend qui:
Consigliato:
Luce LED da scrivania intelligente - Illuminazione intelligente con Arduino - Area di lavoro Neopixel: 10 passaggi (con immagini)
Luce LED da scrivania intelligente | Illuminazione intelligente con Arduino | Neopixels Workspace: Al giorno d'oggi trascorriamo molto tempo a casa, studiando e lavorando virtualmente, quindi perché non rendere il nostro spazio di lavoro più grande con un sistema di illuminazione personalizzato e intelligente basato su Arduino e LED Ws2812b. Qui ti mostro come costruire il tuo Smart Luce LED da scrivania che
Sistema di parcheggio intelligente basato su IoT che utilizza NodeMCU ESP8266: 5 passaggi
Sistema di parcheggio intelligente basato su IoT che utilizza NodeMCU ESP8266: Al giorno d'oggi trovare parcheggio in aree trafficate è molto difficile e non esiste un sistema per ottenere i dettagli della disponibilità del parcheggio online. Immagina di poter ottenere le informazioni sulla disponibilità del parcheggio sul tuo telefono e non hai il roaming in giro per controllare
Parcheggio intelligente basato su IOT: 7 passaggi
Smart Parking basato su IOT: di Tanmay Pathak e Utkarsh Mishra. Studenti @ International Institute of Information Technology, Hyderabad (IIITH)ABSTRACTAbbiamo implementato con successo un sistema di parcheggio intelligente basato su IOT. Con l'aiuto di singoli nodi (sensori di prossimità) a sempre
Sicurezza cyber-fisica del parcheggio intelligente e del controllo del traffico: 6 passaggi
Sicurezza informatica e fisica del parcheggio intelligente e del controllo del traffico: Internet sta crescendo con miliardi di dispositivi tra cui automobili, sensori, computer, server, frigoriferi, dispositivi mobili e molto altro a un ritmo senza precedenti. Ciò introduce molteplici rischi e vulnerabilità nell'infrastruttura, nel funzionamento e
Sveglia intelligente: una sveglia intelligente realizzata con Raspberry Pi: 10 passaggi (con immagini)
Sveglia intelligente: una sveglia intelligente realizzata con Raspberry Pi: hai mai desiderato un orologio intelligente? Se è così, questa è la soluzione per te! Ho realizzato Smart Alarm Clock, questo è un orologio con cui puoi modificare l'ora della sveglia in base al sito web. Quando la sveglia suona, ci sarà un suono (cicalino) e 2 luci si accenderanno