Sto usando questi elementi:
- Ricevitori ON-OFF per controllare le mie luci (in genere si inserisce un dispositivo nel walloutlet o invece del walloutlet). Funzionano nella banda 433 MHz (ISM).
Immediatamente hai un telecomando che invia un segnale al dispositivo ricevente e lo accende o spegne.
Nel mio caso, ho creato questa situazione:
- Creato un sito HTML sul mio Raspberry Pi (
/switch.html
)
- Chiamo quella pagina sul mio smartphone
- Nella pagina ci sono quattro pulsanti (controllo quattro dispositivi / luci)
- Quando faccio clic su un pulsante, viene generato in modo asincrono una chiamata
/switch.php
(il .php si trova sul Raspberry Pi)
- Il
switch.php
chiama un switch.py
programma di che controlla il mittente 433 MHz (vedi sotto)
- Il mittente 433 MHz fa la stessa cosa del telecomando out of the box.
Questo è il mittente, ovvero la sostituzione del telecomando standard:
Superregeneration modulo trasmettitore wireless 433 MHz per Arduino
Ho anche creato uno scenario per l'uso fuori casa.
Non volevo connettere il mio Raspberry Pi tramite il mio homerouter direttamente a Internet, quindi mi sono costruito un'altra pagina web (nel mio dominio) che non controlla direttamente il Raspberry Pi, ma invia un'email a un (noto solo a me) indirizzo email ( Gmail ).
Il Raspberry Pi controlla quell'account e-mail ogni 10 minuti per vedere se ci sono e-mail. In quell'e-mail, ad esempio, dico A on o B off.
Quindi quando arriviamo a casa tardi e le luci sono già spente, accediamo al sito sul mio cellulare (si prevede di renderlo un'app Android), fare clic sul pulsante, la pagina viene pubblicata e sul server viene inviata un'e-mail e nei prossimi 0-10 minuti il Raspberry Pi controlla l'e-mail, vede quattro nuove e-mail (A on, B on, C on e D on) e accende le luci.
Come iniziare
Quindi, per iniziare, queste sono le cose che ho fatto per far funzionare tutto. Nel mio caso, ho programmato il controllo del mittente 433 MHz in Python (che è una lingua semplice se sai già come programmare).
Per prima cosa installi la rpi.gpio
libreria.
Questa libreria viene utilizzata per controllare i piccoli pin del tuo Raspberry Pi dallo script Python. Vedi Installa la libreria Python di RPi.GPIO .
Quindi puoi facoltativamente leggere l'articolo Tutorial: come utilizzare il tuo Raspberry Pi come un Arduino , tratta di cosa puoi fare con la rpi.gpio
libreria, ad esempio i LED lampeggianti .
Tuttavia, non è obbligatorio per la commutazione della luce Elro.
Quindi ottieni il fantastico codice per il comando Elro di HeikoHeiko, su http://pastebin.com/aRipYrZ6 . Si incolla quel codice in un file chiamato ' switchelro.py
'.
Quindi si modifica la stringa sulla linea 94 con le proprie impostazioni dei ponticelli (come è stato impostato nel telecomando e nel dispositivo walloutlet. Controllare se la combinazione dispositivo remote-walloutlet funziona prima di provarla con il Raspberry Pi. Se non funziona con i componenti standard, probabilmente fallirà anche con il Raspberry Pi).
Quindi si modifica il numero del pin a cui è collegato il mittente sulla linea 97.
Il numero di pin può essere ottenuto dalle periferiche di basso livello RPi e in File: RPi P1 header.png .
Devi usare il conteggio 1..26 (l'immagine nera), non GPIO34, GPIO24, ecc. (Immagine verde).
Quindi digitare questo sul prompt dei comandi:
sudo python switchelro.py 2 1
che significa "attiva B" (seguendo questo schema: A = 1, B = 2, C = 4, D = 8, E = 16
per il primo numero e 1 = attivo, 0 = spento per il secondo).
Ho cambiato la repeat = 10
su line 30
per repeat = 20
in principio (non mi ricordo perché) e che funziona. Non l'ho mai provato con l'impostazione '10'.