Sommario:
- Passaggio 1: istruzioni per l'installazione del progetto PowerHub Webserver e della presa abilitata a Internet
- Passaggio 2: abilita le opzioni avanzate di RaspberriPi
- Passaggio 3: avviare l'installazione dei pacchetti richiesti
- Passaggio 4: COSTRUISCI L'API WEB
- Passaggio 5: forniture necessarie
- Passaggio 6: costruire l'outlet
- Passaggio 7: installazione dei pulsanti
- Passaggio 8: relè a filo
- Passaggio 9: cablaggio aggiuntivo e immagini di assemblaggio
- Passaggio 10: schema elettrico
- Passaggio 11: test di funzionamento a secco
- Passaggio 12: impostare gli script di avvio
Video: Presa di corrente abilitata a Internet: 13 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Progetto PowerHub Webserver e istruzioni per la configurazione della presa abilitata a Internet
Hub centrale di persistenza dei dati per luci e prese abilitate a Internet nella tua casa!
Passaggio 1: istruzioni per l'installazione del progetto PowerHub Webserver e della presa abilitata a Internet
Hub centrale di persistenza dei dati per luci e prese abilitate a Internet nella tua casa
Disco rigido RaspberriPi lampeggiante / Installazione del software richiesto (utilizzando Ubuntu Linux) Scarica "RASPBIAN JESSIE LITE"
Crea il tuo nuovo disco rigido per DashboardPI
Inserisci la microSD sul tuo computer tramite l'adattatore USB e crea l'immagine del disco usando il comando dd
Individua la scheda microSD inserita tramite il comando df -h, smontala e crea l'immagine del disco con il comando disk copy dd
$ df -h /dev/sdb1 7.4G 32K 7.4G 1% /media/XXX/1234-5678
$ umount /dev/sdb1
Attenzione: assicurati che il comando sia completamente preciso, puoi danneggiare altri dischi con questo comando
if=posizione del file immagine RASPBIAN JESSIE LITE of=posizione della tua scheda microSD
$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (nota: in questo caso, è /dev/sdb, /dev/sdb1 era una partizione di fabbrica esistente sul microSD)
Configura il tuo RaspberriPi
Inserisci la tua nuova scheda microSD nel raspberrypi e accendilo con un monitor collegato alla porta HDMI
Login
utente: pi pass: lampone
Cambia la password del tuo account per sicurezza
sudo passwd più
Passaggio 2: abilita le opzioni avanzate di RaspberriPi
sudo raspi-config
Scegli: 1 Espandi file system
9 Opzioni avanzate
A2 Hostname cambialo in "WIFI-OUTLET"
A4 SSH Abilita server SSH
A7 I2C Abilita interfaccia i2c
Abilita la tastiera inglese/americana
sudo nano /etc/default/keyboard
Modifica la seguente riga: XKBLAYOUT="us"
Riavvia PI per modifiche al layout della tastiera / ridimensionamento del file system per avere effetto
$ sudo shutdown -r now
Connessione automatica al tuo WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Aggiungi le seguenti righe per far connettere automaticamente il tuo raspberrypi al WiFi di casa (se la tua rete wireless si chiama "linksys", ad esempio, nell'esempio seguente)
network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Riavvia PI per connetterti alla rete WiFi
$ sudo shutdown -r now
Ora che il tuo PI è finalmente sulla rete locale, puoi accedere in remoto tramite SSH. Ma prima devi ottenere l'indirizzo IP che ha attualmente.
$ ifconfig Cerca "inet addr: 192.168. XXX. XXX" nell'output del comando seguente per l'indirizzo IP del tuo PI
Vai su un'altra macchina e accedi al tuo raspberrypi tramite ssh
$ ssh [email protected]. XXX. XXX
Passaggio 3: avviare l'installazione dei pacchetti richiesti
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install vim git python-requests python-gpiozero python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev pythonpide
Aggiorna le impostazioni del fuso orario locale
$ sudo dpkg-reconfigure tzdata
seleziona il tuo fuso orario utilizzando l'interfaccia
Imposta il comando semplice directory l [opzionale]
vi ~/.bashrc
aggiungi la seguente riga:
alias l='ls -lh'
sorgente ~/.bashrc
Correggi l'evidenziazione della sintassi predefinita di VIM [opzionale]
sudo vi /etc/vim/vimrc
decommenta la seguente riga:
sintassi attiva
Installa i driver Python i2c
Passaggio 4: COSTRUISCI L'API WEB
Le seguenti istruzioni ti permetteranno di costruire l'hub centrale che spiega alle varie prese abilitate Wi-Fi e interruttori a muro che potresti costruire, quali dispositivi sono accesi e spenti. Questo è un piccolo script PHP da posizionare su un host web di tua scelta. Ha la seguente API per ottenere e impostare informazioni su di essa. Nota: non dimenticare di includere il file.htaccess affinché avvenga il corretto instradamento dell'URL.
Installa la cartella "index.php", "values/" e settings.php (configurato con i tuoi valori) su un server web abilitato per PHP di tua scelta. Il valore della chiave segreta nel file "settings.php" deve corrispondere al valore della chiave segreta che imposteresti nel file "settings.py". Questo impedirà a qualsiasi altro traffico web di impostare / scrivere valori, accendendo i tuoi dispositivi, ora hai bisogno di questa chiave API con hash nell'intestazione della richiesta HTTP per farlo.
L'API supporta le seguenti funzionalità, per questo progetto utilizzeremo solo i valori "flag" che sono valori booleani che indicano all'interruttore di accendersi e spegnersi. Forse se volessi sfruttare i valori di "lettura" potresti averlo così se una temperatura della stanza diventa troppo calda salvando una temperatura lì, potrebbe accendere un ventilatore da finestra, ecc.
Ottieni il codice
Clonare il seguente progetto da GitHub per ottenere il codice per eseguire il server web e l'uscita RaspberryPI.
github.com/khinds10/PowerHub
Endpoint API durante l'esecuzione su server web
myhost/message (ottieni il set di messaggi corrente)
myhost/message/set (HTTP POST un valore di stringa non elaborato a questo URL per impostare un nuovo messaggio)
myhost/flag/{id} (ottieni lo stato booleano corrente del flag per numero intero: {id})
myhost/flag/all (ottieni tutto lo stato booleano corrente di tutti i flag come un array)
myhost/flag/{id}/set (imposta lo stato booleano corrente su 'true' per il flag per numero intero: {id})
myhost/flag/{id}/unset (imposta lo stato booleano corrente su 'false' per il flag per numero intero: {id})
myhost/reading/{id} (ottieni il valore medio corrente per la lettura per intero: {id})
myhost/reading/all (ottieni il valore medio corrente per tutte le letture come un array)
myhost/reading/{id}/set (HTTP POST un valore numerico grezzo a questo URL per aggiungere un nuovo valore alla media calcolata corrente) -- vedi sotto per quanti valori in totale sono compilati al valore medio Configurazione I valori di 'letture' sono calcolati come medie di un certo numero di valori numerici di lettura persistenti recenti. Imposta la seguente costante su quante delle letture più recenti devono essere incluse per produrre la media.
$readingsAverageLimit = 5;
Datastore Server manterrà i valori in file semplici individuati dalle convenzioni di denominazione di seguito. Nota: {id} verrà sostituito dal numero intero reale presentato dall'URL della richiesta in arrivo.
$valueFileFolder = 'values' (nome della cartella che contiene i file di misura) $messageFileName = 'message.msg' (nome del file di testo del messaggio) $readingsFilesNames = 'reading{id}.avg' (nome del CSV mediato readings file) $flagFilesNames = 'flag{id}.flg' (nome del file flag valore flag booleano)
Assicurati che tutti i file dei valori siano scrivibili da systemchmod 777 values/*
Passaggio 5: forniture necessarie
Sega a tazza da 1 pollice (per trapano)
Modulo relè 5V 2 canali
Piastra da parete per presa duplex
Presa duplex
Pi Zero W
Scatola da incasso a montaggio superficiale Dual Gang
Pulsanti illuminati bianchi
Passaggio 6: costruire l'outlet
Rompi le schede di uscita
Rompi la linguetta sul lato della presa per accendere/spegnere ogni presa in modo indipendente
Passaggio 7: installazione dei pulsanti
Sul frontalino dell'uscita utilizzando la sega a tazza da 1 praticare 2 fori per i pulsanti da posizionare accanto alle uscite
Test dimensionamento dei componenti
Assicurarsi che tutti i componenti si adattino alla scatola di montaggio superficiale della presa
Passaggio 8: relè a filo
Cablare il Relè alla presa, dalla prolunga che va alla parete, collegare la terra (verde) e il neutro (bianco) direttamente alla presa Per il caldo (nero) collegarli al relè quindi dal relè a ciascuna presa calda connettori individualmente
Passaggio 9: cablaggio aggiuntivo e immagini di assemblaggio
Passaggio 10: schema elettrico
Usa il diagramma per collegare correttamente i componenti per lavorare con il codice Python RaspberryPI.
Passaggio 11: test di funzionamento a secco
Dopo l'assemblaggio finale prima di avvitare l'unità del foro, eseguire un funzionamento a secco del dispositivo per assicurarsi che non ci siano cortocircuiti o cablaggio difettoso
Passaggio 12: impostare gli script di avvio
crontab -e
aggiungi le seguenti righe
@reboot python /home/pi/PowerHub/device/outlet/buttons.py @reboot python /home/pi/PowerHub/device/outlet/relay.py
Consigliato:
Lampada Matrix abilitata WiFi: 6 passaggi (con immagini)
Lampada Matrix abilitata WiFi: chi non desidera avere una lampada straordinaria in grado di visualizzare animazioni e sincronizzarsi con altre lampade in casa? Giusto, nessuno. Ecco perché ho realizzato una lampada RGB personalizzata. La lampada è composta da 256 LED indirizzabili individualmente e tutti i LED possono essere cont
La differenza tra (corrente alternativa e corrente continua): 13 passaggi
La differenza tra (corrente alternativa e corrente continua): tutti sanno che l'elettricità è principalmente CC, ma che ne dici di un altro tipo di elettricità? Conosci Ac? Cosa significa AC? È utilizzabile quindi DC? In questo studio conosceremo la differenza tra i tipi di elettricità, fonti, applicazioni
Supporto per monitor fai da te con presa di corrente: 4 passaggi (con immagini)
Supporto per monitor fai da te con presa di corrente: prima di tutto, devo dire che mi piace sempre costruire la mia cosa per risolvere le mie necessità specifiche, e in questo caso non è diverso. Problema: trova un supporto per monitor più economico che si adatti alle dimensioni esatte del mio quaderno. Per me, la migliore configurazione per t
Presa di corrente controllata da Google Home: 9 passaggi (con immagini)
Presa di corrente controllata da Google Home: la mia ragazza ha sempre voluto costruire una casa intelligente. Quindi costruiamo l'infrastruttura e il primo elemento della casa intelligente, un interruttore di presa telecomandato che puoi controllare tramite un pannello di controllo o tramite comandi vocali (se hai google home o goog
Aggiungi una presa di corrente USB alla tua auto: 9 passaggi (con immagini)
Aggiungi una presa di corrente USB nella tua auto: data la natura ingombrante degli adattatori da 12 volt per veicoli, ho deciso di integrare una presa di corrente USB nella mia Prius III del 2010. Sebbene questa mod sia specifica per la mia auto, può essere applicata a molte auto, camion, camper, barche, ecc