Sommario:

Da Wifi a RF - Serratura: 3 Passaggi (Illustrato)
Da Wifi a RF - Serratura: 3 Passaggi (Illustrato)

Video: Da Wifi a RF - Serratura: 3 Passaggi (Illustrato)

Video: Da Wifi a RF - Serratura: 3 Passaggi (Illustrato)
Video: Nuovi Smart Switch WiFi e RF 433 MHz by eMylo 2024, Dicembre
Anonim
Da Wifi a RF - Serratura della porta
Da Wifi a RF - Serratura della porta
Da Wifi a RF - Serratura della porta
Da Wifi a RF - Serratura della porta
Da Wifi a RF - Serratura della porta
Da Wifi a RF - Serratura della porta

Panoramica

Questa istruzione ti darà la possibilità di bloccare/sbloccare la porta di casa tramite il tuo software di automazione domestica (come OpenHAB - software di automazione domestica gratuito che utilizzo personalmente) L'immagine sopra mostra uno screenshot di esempio dell'app OpenHAB per iPhone. In alternativa, puoi utilizzare la messaggistica MQTT come descritto di seguito in quasi tutti i sistemi che desideri.

Ipotesi

Questa istruzione presuppone che tu abbia già (o installerai):

  • OpenHAB (software di automazione domestica open source gratuito) in esecuzione, sebbene come accennato, dovrebbe funzionare con qualsiasi software di automazione domestica che può includere un'associazione MQTT. In alternativa, puoi modificare tu stesso il codice in base alle tue esigenze.
  • Associazione Mosquitto MQTT installata e configurata con OpenHAB (MQTT è un protocollo di tipo sottoscrizione/pubblicazione di messaggistica che è leggero e ottimo per la comunicazione tra dispositivi)
  • Che hai già montato un lucchetto per tastiera della porta anteriore basato su RF che viene fornito con almeno un telecomando con telecomando (la maggior parte lo fa) Questi possono essere acquistati relativamente a buon mercato su Amazon (circa ~ US $ 60, anche se le batterie su questo modello durano solo ~ 4 mesi, quindi vedi se riesci a fornire DC che alimenta la serratura o spendi un po 'di più su un modello decente:-))

Se non esegui OpenHAB e un broker MQTT, consulta questo eccellente articolo sul sito Web MakeUseOf

introduzione

Questo progetto mostra in particolare come utilizzare un KEY FOB per serratura basato su RF per essere considerevolmente più utile convertendolo per funzionare in modalità wireless, dandoti quindi la possibilità di bloccare o sbloccare la tua porta tramite il tuo sistema di automazione domestica, un browser web, il tuo telefono (tramite l'app OpenHAB) o addirittura programmare il blocco automatico durante la notte utilizzando le regole del software di automazione domestica. Per questo progetto, ho acquistato una "serratura della porta anteriore con tastiera basata su Mi RF" su Amazon per circa 60 USD *

(* EDIT: le batterie di questa particolare marca di serratura non durano così a lungo! L'ho usato solo 3-4 mesi prima di dover cambiare le batterie, il che è diventato piuttosto frustrante. Da allora ho sostituito quell'unità per una serratura elettronica con marchio Windsor le cui batterie durano fino a 2 anni. In alternativa, anche se molto più lavoro, considera di far passare l'alimentazione CC attraverso il nucleo della tua porta fino alla serratura)

Per questo forniscono una serratura della porta azionata da RF (radiofrequenza) con tastiera incorporata e un portachiavi per il blocco/sblocco a distanza. Con RF, tuttavia, il telecomando deve trovarsi nel raggio della serratura della porta. Questo progetto farà uso del portachiavi integrandolo con una Wemos (scheda IOT con chip ESP8266) per effettuare il blocco/sblocco in modalità wireless, quindi controllabile da qualsiasi luogo si disponga di una connessione Internet.

Di cosa ho bisogno?

Innanzitutto, acquista e installa il blocco tastiera basato su RF. Devi assicurarti che venga fornito con un portachiavi! Prova il telecomando e assicurati che premendo i pulsanti, bloccherà o sbloccherà la porta prima di iniziare. La maggior parte di queste serrature dovrebbe essere basata su porte di dimensioni standard e offset di blocco, quindi se hai già un catenaccio (come ho fatto io) sostituirlo è eccezionalmente facile.

Per creare il controller wireless, dovrai procurarti le seguenti parti:

  • Wemos D1 mini V2 (ha un CHIP wireless ESP8266 integrato) o solo un CHIP ESP8266 dovrebbe fare (non consiglio la versione ESP-01 per questo progetto, poiché il pin GPIO 0 deve essere tenuto alto all'accensione in ordine per l'avvio da flash, tuttavia ciò causerà l'attivazione della serratura della porta quando l'ESP8266 si accende potenzialmente sbloccando la porta d'ingresso!Mentre ci sono soluzioni alternative che possiamo fare per questo, come l'utilizzo di timer o transistor, ecc., Per il basso costo di un Wemos e meno componenti, punteremo all'approccio più semplice)
  • Una fonte di alimentazione a 5 V CC per alimentare il Wemos e il telecomando (non saranno più necessarie le batterie) Se stai alimentando il Wemos utilizzando il pin VCC da 5 V (anziché la porta USB) e la fonte di alimentazione CC è superiore a 5 V, è inoltre necessario un regolatore di tensione da 5 V (come un LM7805) più 2 condensatori, 10 V 0,33 uF e 10 V 0,1 uF o dimensioni simili (come da scheda tecnica LM7805)
  • Due MOSFET 2N7000 o simili (questi verranno utilizzati per commutare il telecomando, uno per il blocco, l'altro per lo sblocco. Il 2N7000 è un MOSFET a canale N di tipo potenziamento molto comune e molto economico, quindi dovrebbe essere molto facile da reperire)

  • Due resistori da 10K ohm (questi verranno utilizzati come resistori pull-down per ciascuno dei MOSFET in modo che il blocco/sblocco della porta non venga attivato all'accensione!)
  • A seconda del telecomando, potrebbe essere necessario collegare anche un altro condensatore (come un 10V 220uF o di dimensioni simili) per aumentare la potenza del telecomando. Vedi i motivi per cui più avanti in questo articolo.
  • Strumenti necessari: tronchesi, filo unipolare, un saldatore, flusso e opzionalmente un multimetro

Il telecomando stesso utilizza in genere 2 batterie da 3 V in serie (6 V Vcc). Pertanto, l'utilizzo di un'alimentazione da 5 V con un condensatore è tuttavia una tensione sufficiente sia per alimentare il Wemos che per attivare il blocco/sblocco.

Se disponi di un telecomando che funziona con una singola batteria da 3 V, dovresti essere in grado di aggiungere un regolatore di tensione da 3,3 V nel circuito per abbassare la tensione vicino ai 3 V richiesti. Una batteria da 3 V emette effettivamente circa 3,1 V e la maggior parte dei circuiti ha una sorta di tolleranza di tensione più elevata, quindi in questo caso da 3,1 V a 3,3 V è +6%. Combina questo con il fatto che il Wemos assorbe corrente, quindi è probabile che la tensione sia ancora inferiore. In caso di dubbio, misurare con un multimetro e, se possibile, verificare con il venditore della serratura la tensione massima (o la tolleranza massima) che il telecomando accetterà, poiché non mi assumo alcuna responsabilità se il telecomando smette di funzionare! Infine, come soluzione alternativa, imposta invece un circuito divisore di tensione.

Passaggio 1: assemblaggio

Assemblea
Assemblea
Assemblea
Assemblea
Assemblea
Assemblea

saldatura

L'assemblaggio dei componenti è molto semplice. Per prima cosa, apri il portachiavi - rimuovi le batterie e la custodia poiché è necessario solo il circuito all'interno. Quindi saldare un filo su ciascun lato delle gambe del pulsante del telecomando. Fallo sia per il pulsante "blocca" che per il pulsante "sblocca". Quindi, capovolgi il telecomando e salda un filo sui pad + e - sul retro del telecomando, come mostrato nelle immagini. Il pad più grande è +, più piccolo è -

Nota: l'alimentatore da 5 V alimenterà sia il Wemos che il portachiavi, quindi le batterie del telecomando non sono più necessarie.

Assemblea

Fornisci 5V Vcc e GND al Wemos e aggiungi i MOSFET e i resistori alla breadboard come da immagine. I resistori da 10K ohm dovrebbero andare da GND al gate (pin centrale) dei MOSFET. Ciò porterà la tensione a terra fermando l'attivazione dei MOSFET all'accensione.

Quindi eseguire un filo da D1 sul Wemos al gate del primo MOSFET e D2 sul Wemos al gate del secondo MOSFET. D1 e D2 sono pin GPIO (input/output per scopi generici) designati come pin OUTPUT nel codice.

Infine, collega i fili del telecomando alla breadboard, da Vcc a 5V, da GND a GND, quindi il filo dal lato negativo del pulsante al lato sorgente di ciascun MOSFET e il lato positivo del pulsante al lato di drenaggio di ciascun MOSFET come mostrato nell'immagine (usare un multimetro se non si è sicuri della polarità)

(MODIFICA: la serratura della porta Windsor sostitutiva di cui ho parlato prima, ha un telecomando che consumava leggermente più tensione rispetto al vecchio telecomando. Ciò ha fatto sì che il Wemos smettesse effettivamente di rispondere a causa della caduta di tensione ad esso, quando la porta era bloccata/sbloccata. Se si verifica lo stesso problema, quindi per rimediare al filo in un condensatore da 220 uF (o simile) appena prima del cablaggio +/- che esce dal telecomando. Il condensatore si carica e quando si attiva, scarica il condensatore anziché l'alimentazione CC diretta)

Ora collega il cavo USB al Wemos e l'altra estremità del cavo al computer.

(Il codice emetterà il pin D1 "HIGH", attivando l'accensione del MOSFET consentendo alla tensione di viaggiare da drain a source e quindi "accendendo" il pulsante per 1 secondo prima di riportare il pin di uscita "LOW" e spegnerlo. In effetti, si tratta semplicemente di simulare la pressione di un tasto del pulsante tramite codice)

Arduino IDE

Avvia l'IDE Arduino. Scarica e apri il codice (link alternativo QUI) Assicurati che le schede aggiuntive siano incluse nell'IDE, vedi qui come configurare. Dovrai quindi assicurarti che sia installata e caricata la scheda corretta per il tuo progetto (Strumenti, Schede, Board Manager - cerca "esp8266" e installa) e la porta COM corretta selezionata (Strumenti, Porta, COM …). Avrai anche bisogno delle librerie appropriate PubSubClient e ESP8266Wifi installate (Sketch, Gestisci librerie, Includi libreria…)

Quindi, modifica le seguenti righe di codice e sostituisci con il tuo SSID e la password per la tua connessione wireless. Inoltre, modifica l'indirizzo IP in modo che punti al tuo broker MQTT. Se non hai un broker MQTT installato, ti consiglio di usare Mosquitto. Scarica per Windows o Linux qui.

// Wificonst char* ssid = "your_wifi_ssid_here";const char* password = "your_wifi_password_here";// MQTT Broker IPAddress MQTT_SERVER(192, 168, 222, 254);

Una volta modificato, verifica il tuo codice, quindi caricalo sulla scheda Wemos / ESP8266 tramite un cavo USB.

Passaggio 2: test e configurazione di OpenHAB

Test e configurazione OpenHAB
Test e configurazione OpenHAB
Test e configurazione OpenHAB
Test e configurazione OpenHAB
Test e configurazione OpenHAB
Test e configurazione OpenHAB

Test MQTT

MQTT è un sistema di messaggistica "sottoscrivi/pubblica". Uno o più dispositivi possono parlare con un "broker MQTT" e "iscriversi" a un determinato argomento. Tutti i messaggi in arrivo da qualsiasi altro dispositivo che sono "pubblicati" su quello stesso argomento, verranno inviati dal broker a qualsiasi altro dispositivo che ha sottoscritto quell'argomento. È un protocollo estremamente leggero e semplice da usare e perfetto come un semplice sistema di trigger come quello qui. Vedere il diagramma di flusso per un'idea approssimativa di come funziona.

Per i test, puoi visualizzare i messaggi MQTT in arrivo da Wemos al tuo broker MQTT eseguendo il seguente comando sul tuo server Mosquitto (Mosquitto è uno dei tanti software MQTT Broker disponibili). Questo comando si iscrive ai messaggi keepalive in arrivo:

mosquitto_sub -v -t openhab/frontdoor/status

Dovresti vedere i messaggi in entrata provenienti da Wemos ogni 30 secondi circa con il numero "1" (che significa "Sono vivo") Se vedi "0" costanti (o nessuna risposta) allora non c'è comunicazione. Una volta che vedi il numero 1 in arrivo, significa che Wemos sta comunicando con il broker MQTT (cerca "MQTT Last Will and Testament" per ulteriori informazioni su come funziona, o guarda questo post di blog davvero interessante)

Una volta verificata la funzionalità della comunicazione, è ora possibile tenere traccia del messaggio di "attivazione" (blocco/sblocco) effettivo. Per prima cosa iscriviti al seguente argomento.

mosquitto_sub -v -t openhab/frontdoor/trigger

Ora apri una seconda finestra della riga di comando ed esegui il seguente comando di pubblicazione, inviando all'argomento un messaggio di "BLOCCO" o "SBLOCCO". Dovresti vedere il messaggio corrispondente apparire nella prima finestra e dovresti anche vedere la luce LED rossa lampeggiare sul telecomando e il meccanismo della porta che si blocca o sblocca come richiesto.

mosquitto_pub -t openhab/frontdoor/trigger -m LOCK

(-t significa 'argomento', -m significa 'messaggio', -v significa output 'verbose')

Nota: se la porta si sblocca quando si invia il blocco o si blocca quando si invia il comando di sblocco, è sufficiente cambiare i fili D1 e D2

Configurazione OpenHAB

Le seguenti modifiche sono necessarie per OpenHAB:

file "oggetti":

Switch frontdoorTrigger "Front Door" (gDoors) { mqtt=">[mqttbroker:openhab/frontdoor/trigger:command:ON:LOCK], >[mqttbroker:openhab/frontdoor/trigger:command:OFF:UNLOCK]" }Numero frontdoorStatus "Front Door [MAP(status.map):%d]" (gDoors) { mqtt="<[mqttbroker:openhab/frontdoor/status:state:default]" }

file "mappa del sito":

Switch item=frontdoorTrigger mappings=[ON="Blocca", OFF="Unlock"]Text item=frontdoorStatus

File 'status.map' (nella cartella di trasformazione):

0=Giù1=Vivo-=sconosciuto

Potrebbe essere necessario modificare leggermente la configurazione OpenHAB sopra per adattarla alla propria configurazione, come la parte "mqttbroker:" che fa riferimento al nome del broker MQTT configurato.

L'immagine finale mostra i componenti su un PCB. In questo caso, poiché sto utilizzando un alimentatore CC > 5 V (nel mio caso 9 V), la scheda include anche un regolatore di tensione LM7805 e un condensatore da 0,33 uF per l'alimentazione in ingresso e un condensatore da 0,1 uF per l'uscita. per aiutare a regolare e stabilizzare la tensione. Altrimenti il resto dei collegamenti è lo stesso descritto in precedenza.

Risoluzione dei problemi

- Se hai problemi in cui il Wemos blocca o sblocca continuamente la porta (ad esempio: invia un segnale RF e la luce LED del portachiavi rimane accesa), controlla i fili VCC e GND al Wemos. È probabile che uno o entrambi non siano collegati correttamente.

Passaggio 3: saldare i componenti a un PCB

Saldare i componenti a un PCB
Saldare i componenti a un PCB
Saldare i componenti a un PCB
Saldare i componenti a un PCB

Ho finito per saldare tutti i componenti fino a un PCB, usando solo fili e/o tracce di saldatura per unire tutti i componenti. Poi ho preso una vecchia verruca da muro CC e ho tagliato il filo da esso leggermente più corto, quindi l'ho fatto passare a un blocco connettore che avevo saldato al PCB. L'alimentazione viene quindi interrotta al regolatore di tensione / condensatori da 5 V e ai componenti necessari. Ho semplicemente fissato in blu il retro del PCB alla verruca del muro e l'ho collegato a una presa di corrente all'interno di uno dei miei armadietti. Funziona ormai da circa 9 mesi senza problemi!

Consigliato: