Come automatizzare la porta del garage con IFTTT e Raspberry Pi
I gadget di casa intelligenti sono fantastici ma possono essere costosi. Con un Raspberry Pi e un componente o due, è facile ed economico connettere dispositivi esistenti a Internet.
Rendere la tua porta del garage consapevole di internet è una grande introduzione per imparare a controllare il mondo reale con un Pi. E siamo onesti, chi non vuole sentirsi un po 'come Batman e avere il proprio garage aperto da solo quando entra nel loro vialetto?
Cosa ti serve
Per automatizzare la porta del garage, è necessario:
- Un motore per la porta del garage che può attivare un grilletto esterno.
- Un Raspberry Pi (qualsiasi modello) connesso a Internet. Questo tutorial presume che il tuo Pi stia utilizzando il sistema operativo Raspbian (se non lo è, consulta il nostro articolo su come installare Raspbian sul tuo Raspberry Pi ).
- Una scheda di espansione relè , che può trovare trovare su Amazon.
- Un alimentatore da 2 A per il Raspberry Pi. Un modello di livello inferiore potrebbe avere problemi nel pilotare la scheda relè e il Pi.
- Quattro cavi jumper (più uno per ogni porta aggiuntiva che si desidera controllare).
- Basta un cavo a due fili per raggiungere tra il Pi e il motore della porta del garage. Il cavo per diffusori economico è l'ideale, ma anche il cavo telefonico o Ethernet può funzionare.
Una volta raccolti questi componenti, è ora di iniziare.
Come funziona questa porta del garage automatizzata
La maggior parte dei motori per porte da garage può essere attivata per l'apertura o la chiusura di un ingresso esterno. I produttori includono questi ingressi in modo che gli installatori possano collegare un semplice pulsante da qualche parte in casa per aprire o chiudere la porta senza utilizzare il normale telecomando. Quando un pulsante di attivazione viene premuto e rilasciato, chiude momentaneamente un circuito che indica al motore di avviarsi o fermarsi.
Stai andando usare un relè al posto di un pulsante esterno. Chiudendo brevemente il relè si chiuderà il circuito, esattamente come se fosse stato premuto un pulsante di attivazione. Uno script Python in esecuzione sul Raspberry Pi ti consente di controllare il relè, e quindi la porta, dalla tua rete domestica.
Passaggio 1: collegare il Raspberry Pi al relè
Farai almeno quattro connessioni tra il tuo Raspberry Pi e la scheda relay. Se si utilizza un Pi Zero, sarà necessario saldare le connessioni direttamente o saldare un'intestazione GPIO al Pi e utilizzare cavi di collegamento per le connessioni. Quest'ultima opzione è raccomandata perché se si desidera disconnettere la scheda relay e utilizzare il Raspberry Pi per qualcos'altro, non sarà necessario svuotare le connessioni. Il modello più grande Pis ha già i perni di testa per il collegamento dei cavi a ponticello.
Se sei nuovo nell'usare il GPIO, assicurati di leggere il nostro articolo Tutto ciò che devi sapere sui pin GPIO di Raspberry Pi .
Prima di agganciare tutto, controllare se la scheda relè ha un ponticello che collega i pin VCC e JD-VCC insieme. Se lo ha, rimuovilo, perché dovrai alimentare VCC e JD-VCC separatamente.
Con tutto spento, collega la scheda relay al tuo Pi come segue:
- Inizia collegando Pi Pin 2 (rail 5V) al JD-VCC sulla scheda relè.
- Collegare Pi Pin 1 o Pin 17 (3.3V rail) a VCC sulla scheda relè.
- Collegare Pi Pin 6 (GND) a GND sulla scheda relè.
- Infine, collega Pi Pin 7 (GPIO 4) a IN1 sulla scheda relè. Questa è la connessione che commuta il relè.
Se si dispone di più di una porta del garage o se si desidera aggiungere il controllo per i cancelli elettrici, è necessario aggiungere ulteriori collegamenti tra IN2, IN3, ecc. Sulla scheda relè e altri pin di input / output GPIO liberi sul Pi.
Passaggio 2: installare le dipendenze sul Raspberry Pi
Raspbian viene fornito con Python preinstallato, ma è necessario aggiungere la libreria GPIO. Digita quanto segue nella finestra del terminale sul tuo Pi:
sudo apt-get update sudo apt-get -y install python-rpi.gpio
Ora crea una nuova cartella nella tua home directory, da qualche parte per mettere lo script Python che controllerà i relay:
mkdir ~/garagedoor cd ~/garagedoor
Infine, scarica la bottiglia , una struttura leggera che creerà un semplice server web sul tuo Pi:
wget https://bottlepy.org/bottle.py
Passaggio 3: creare lo script di controllo
Ecco uno script Python molto semplice per controllare la scheda relay tramite HTTP:
# Python Script To Control Garage Door # Load libraries import RPi.GPIO as GPIO import time from bottle import route, run, template # Set up the GPIO pins GPIO.setmode(GPIO.BOARD) GPIO.setup(7, GPIO.OUT) GPIO.setup(11, GPIO.OUT) GPIO.output(7, True) GPIO.output(11, True) # Handle http requests to the root address @route('/') def index(): return 'Go away.' # Handle http requests to /garagedoor @route('/garagedoor/:doornum') def garagedoor(doornum=0): if doornum == '0': return 'No door number specified' elif doornum == '1': GPIO.output(7, False) time.sleep(.8) GPIO.output(7, True) return 'Door number 1 cycled.' elif doornum == '2': GPIO.output(11, False) time.sleep(.8) GPIO.output(11, True) return 'Door number 2 cycled' run(host='0.0.0.0', port=1234)
Sul tuo Raspberry Pi, crea un nuovo file Python usando nano:
nano door.py
Copia e incolla lo script sopra nel documento vuoto. Esci e salva con CTRL + X , poi Y , e Invio per confermare.
Ora prova lo script eseguendolo:
python door.py
Se tutto funziona, vedrai un messaggio come questo:
Se ricevi messaggi di errore, controlla che tutto sia incollato correttamente nel file e che non abbia un altro server web come Apache in esecuzione sulla stessa porta (interferirà con il server che lo script crea).
Supponendo che non ci siano errori, vai su un altro browser sulla stessa rete, e nella barra degli indirizzi digita l'indirizzo IP del tuo Pi seguito da due punti e 1234. Ad esempio, se l'indirizzo IP del tuo Raspberry Pi era 11.22.33.44, devi digitare 11.22.33.44:1234 nel tuo browser.
Se tutto funziona, vedrai un messaggio che ti dice di andare via!
Ora aggiungi / garagedoor / 1 dopo l'indirizzo IP e il numero di porta, come questo: 11.22.33.44:1234/garagedoor/1
Premi Invio , e dovresti sentire il primo relè sulla scheda fare clic due volte mentre si chi
ude e si apre di nuovo. Se cambi il 1 in un 2 e ricarichi la pagina, sentirai il secondo ciclo del relay.
Passaggio 4: collegare il relè al motore della porta
Fare riferimento al manuale del motore della porta del garage per trovare dove è possibile collegare un controller esterno. Attaccare il cavo bipolare ad esso, e collegare l'altra estremità del cavo ai terminali a vite della scheda relè.
Ci sono tre terminali per relè: usa la coppia normalmente aperta come mostrato nell'immagine.
Testare nuovamente tutto dal browser Web (è possibile aggiornare la pagina). Se tutto va bene, il relè farà clic un paio di volte e la porta del garage dovrebbe iniziare ad aprirsi.
Passaggio 5: impostare lo script su caricamento automatico
Se il tuo Raspberry Pi si riavvia per qualsiasi motivo, ad esempio un'interruzione dell'alimentazione, il tuo script Python smetterà di funzionare. Per caricarlo all'avvio, aggiungi la seguente riga al tuo file /etc/sc.local (se hai effettuato l'accesso al tuo Pi come utente diverso, modifica Pi al tuo nome utente):
nohup python /home/pi/garagedoor/door.py &
Fallo usando il solito editor di testo, salvando il file quando hai finito.
Considerazioni sulla sicurezza da tenere a mente
Non c'è alcun tipo di sicurezza su questo esempio di script Python: chiunque possa accedere al tuo Raspberry Pi tramite il suo indirizzo IP sarà in grado di aprire e chiudere la porta del tuo garage. È allettante pensare che solo perché nessuno sa che la tua sceneggiatura è lì, nessuno la troverà, ma la sicurezza attraverso l'oscurità è stata ripetutamente rivelata una cattiva idea.
Un sistema di autenticazione completo va oltre lo scopo di questo tutorial, ma una semplice soluzione per la sicurezza è quella di non rendere accessibile Pi all'esterno della rete domestica.
Ecco alcuni suggerimenti per proteggere il tuo Raspberry Pi .
Controllo della porta del garage con IFTTT o Siri
Se scegli di rendere accessibile il tuo Pi da Internet, puoi controllare la porta del tuo garage da servizi come If This Then That (IFTTT). Ad esempio, è possibile combinare i servizi IFTTT di Alexa e Webhooks per aprire la porta del garage quando si pronuncia una frase trigger su Amazon Echo.
Se guidi un'automobile con un servizio collegato IFTTT, puoi creare un'applet per aprire la porta mentre la tua auto si avvicina alla tua proprietà, in stile Batman.
Voglio sapere di più? Consulta la nostra guida scaricabile per utilizzare IFTTT come un professionista .
Un altro modo per far scattare la porta del garage appena aperta a internet è con una scorciatoia Siri. Mettere una scorciatoia davvero semplice nei tuoi widget significa che puoi dimenticare di portare chiavi fastidiose e invece aprire il garage con un colpo e toccare il tuo iPhone.
Oltre il garage: più progetti Smart Home fai da te
Le schede relè possono commutare la tensione di rete e quindi possono controllare la maggior parte degli elettrodomestici. Questo progetto può servire come base per l'aggiunta di intelligenza a quasi qualsiasi cosa con un alimentatore. Macchine da caffè, illuminazione, condizionatori d'aria, tutti sono pronti per l'automazione con un Raspberry Pi e alcuni relè.
Assicurati di dare un'occhiata a questi progetti di automazione domestica intelligenti per ulteriori idee.
Leggi l'articolo completo: Come automatizzare la tua porta del garage con IFTTT e Raspberry Pi
Fonte: Utilizzare