Innehållsförteckning:

Wifi till RF - Dörrlås: 3 steg (med bilder)
Wifi till RF - Dörrlås: 3 steg (med bilder)

Video: Wifi till RF - Dörrlås: 3 steg (med bilder)

Video: Wifi till RF - Dörrlås: 3 steg (med bilder)
Video: En kamera som var MYCKET ÖVERRASKANDE. Uppdaterad two-eye. 2024, Juli
Anonim
Wifi till RF - Dörrlås
Wifi till RF - Dörrlås
Wifi till RF - Dörrlås
Wifi till RF - Dörrlås
Wifi till RF - Dörrlås
Wifi till RF - Dörrlås

Översikt

Denna instruerbara ger dig möjligheten att låsa / låsa upp din ytterdörr via din hemautomatiseringsprogramvara (t.ex. OpenHAB - fri hemautomatiseringsprogramvara som jag personligen använder) Bilden ovan visar ett exempel på en skärmdump av OpenHAB iPhone -appen. Alternativt kan du använda MQTT -meddelanden som beskrivs nedan i nästan vilket system du vill.

Antaganden

Denna instruerbara förutsätter att du redan har (eller kommer att konfigurera):

  • OpenHAB (gratis öppen källkod hemautomatiseringsprogram) som körs, men som nämnts bör det fungera med alla hemautomatiseringsprogram som kan innehålla en MQTT -bindning. Alternativt kan du ändra koden själv för att passa dina egna behov.
  • Mosquitto MQTT -bindning installerad och konfigurerad med OpenHAB (MQTT är ett protokoll för prenumeration/publicering av meddelanden som är lätt och bra för kommunikation mellan enheter)
  • Att du redan har monterat ett RF -baserat knapplås på ytterdörren som levereras med minst en fjärrkontroll (de flesta gör det) Dessa kan köpas relativt billigt på Amazon (ca ~ US $ 60, även om batterierna på den här modellen bara räcker ~ 4 månader så se om du kan tillhandahålla DC som driver låset eller spendera lite mer på en anständig modell:-))

Om du inte kör OpenHAB och en MQTT -mäklare, se denna utmärkta artikel på MakeUseOf -webbplatsen

Introduktion

Detta projekt visar dig specifikt hur du använder ett RF -baserat dörrlås KEY FOB för att vara betydligt mer användbart genom att konvertera det till att fungera trådlöst, vilket ger dig möjlighet att låsa eller låsa upp din dörr via ditt hemautomatiseringssystem, en webbläsare, din telefon (via OpenHAB-appen) eller till och med schemalägga den så att den låses automatiskt på natten med hjälp av regler i hemautomatiseringsprogrammet. För detta projekt köpte jag ett "Mi RF -baserat knappsatsdörrlås" från Amazon för cirka 60 US $ *

(* EDIT: batterierna på det här märket dörrlås håller inte så länge! Jag fick bara 3-4 månaders användning av det innan jag var tvungen att byta batterier vilket blev ganska frustrerande. Jag har sedan bytt ut den enheten för ett elektroniskt dörrlås av Windsor varav batterierna räcker i upp till 2 år. Alternativt, om än mycket mer arbete, kan du överväga att köra likström genom kärnan i din dörr till låset)

För det ger de ett RF (radiofrekvens) manuellt dörrlås med inbyggt knappsats och en nyckelring för fjärrlås / upplåsning. Med RF måste nyckelringen dock ligga inom dörrlåsets räckvidd. Detta projekt kommer att använda nyckelfoben genom att integrera den med ett Wemos (IOT -kort med ESP8266 -chip) för att låsa / låsa upp trådlöst, och kan därför kontrolleras var du än har en internetanslutning.

Vad behöver jag?

Köp och installera först det RF -baserade knappsatslåset. Du måste se till att det kommer med en nyckelring! Testa fob och se till att dörren låses eller låses upp genom att trycka på knapparna innan du startar. Majoriteten av dessa dörrlås bör baseras på standarddörrstorlekar och låsförskjutningar, så om du redan har en dödskruv (som jag gjorde) är det extremt enkelt att byta ut det.

För att skapa den trådlösa handkontrollen måste du ange följande delar:

  • Wemos D1 mini V2 (har ett ESP8266 trådlöst CHIP inbyggt) eller bara ett ESP8266 CHIP bör göra (jag rekommenderar inte ESP-01-versionen för detta projekt, eftersom GPIO 0-stiftet måste hållas högt vid uppstart för att för att det ska starta från blixt, men om du gör detta kommer dörrlåset att aktiveras när ESP8266 startar och eventuellt låsa upp din ytterdörr! Medan det finns lösningar kan vi göra för detta, till exempel att använda timers eller transistorer etc, till den låga kostnaden av en Wemos och färre komponenter, kommer vi att sikta på det enklare tillvägagångssättet)
  • En 5V DC -strömkälla för att driva Wemos och fjärrkontrollen (batterier kommer inte längre att behövas). behöver också en 5V spänningsregulator (t.ex. en LM7805) plus 2 x kondensatorer, 10V 0.33uF och en 10V 0.1uF eller liknande i storlek (enligt LM7805 datablad)
  • Två 2N7000 eller liknande MOSFET (dessa kommer att användas för att växla fjärrkontrollen, en för låsning, den andra för upplåsning. 2N7000 är en mycket vanlig och mycket billig förbättringstyp N-kanal MOSFET så borde vara mycket lätt att hämta)

  • Två 10K ohm-motstånd (dessa kommer att användas som neddragningsmotstånd för var och en av MOSFET-enheterna så att dörrlåset / upplåsning inte utlöses vid uppstart!)
  • Beroende på din fjärrkontroll kan du också behöva koppla in en annan kondensator (t.ex. en 10V 220uF eller liknande i storlek) för att öka strömmen till fjärrkontrollen. Se skäl till varför senare i den här artikeln.
  • Verktyg som behövs: sidoskär, enkelkärntråd, lödkolv, flussmedel och eventuellt en multimeter

Nyckelfoben i sig använder vanligtvis 2 x 3V batterier i serie (6V Vcc) Därför är det dock tillräckligt med spänning för att både driva Wemos och utlösa låsning / upplåsning med hjälp av en 5V matning med en kondensator.

Om du har en fjärrkontroll som fungerar med ett enda 3V -batteri, bör du kunna lägga till en 3.3V spänningsregulator i din krets för att tappa spänningen nära 3V som krävs. Ett 3V -batteri matar faktiskt ut runt 3.1V, och de flesta kretsar har någon slags högre spänningstolerans, så i detta fall är 3.1V till 3.3V +6%. Kombinera det med det faktum att Wemos drar ström, så spänningen kommer sannolikt att bli ännu mindre. Om du är osäker mät med en multimeter och om möjligt, kontrollera med låsleverantören den maximala spänningen (eller maximal tolerans) som fjärrkontrollen accepterar, eftersom jag inte tar något ansvar om din fjärrkontroll slutar fungera! Slutligen, som en alternativ lösning, konfigurera en spänningsdelare i stället.

Steg 1: Montering

hopsättning
hopsättning
hopsättning
hopsättning
hopsättning
hopsättning

Lödning

Att montera komponenterna är mycket enkelt. Öppna först nyckelringen - ta bort batterierna och höljet eftersom du bara behöver kretskortet inuti. Löd sedan en tråd på varje sida av nyckelfobknappens ben. Gör detta för både "lås" -knappen och "upplåsning" -knappen. Vänd sedan fob och löd en tråd på + och - kuddarna på baksidan av fob, som visas på bilderna. Den större dynan är +, den mindre är -

Obs: 5V -strömförsörjningen kommer att driva både Wemos och Key fob, så fob -batterierna behövs inte längre.

hopsättning

Ge 5V Vcc och GND till Wemos och lägg till MOSFET: erna och motstånden i brödbrädet enligt bilden. 10K ohm -motstånden ska gå från GND till porten (mittstift) på MOSFET: erna. Detta kommer att dra spänningen till marken och stoppa MOSFET: erna vid start.

Kör sedan en tråd från D1 på Wemos till porten till den första MOSFET och D2 på Wemos till porten till den andra MOSFET. D1 och D2 är GPIO (general purpose input/output) stift som betecknas som OUTPUT -stift i koden.

Slutligen kopplar du fjärrkontrollens trådar till brödbrädan, Vcc till 5V -skena, GND till GND, sedan kabeln på den negativa sidan av knappen till källsidan av varje MOSFET och den positiva sidan av knappen till avloppssidan på varje MOSFET som visas på bilden (använd en multimeter om du är osäker på polaritet)

(EDIT: Det nya Windsor -dörrlåset jag nämnde tidigare har en fjärrkontroll som förbrukade något mer spänning än den gamla fjärrkontrollen. Detta gjorde att Wemos effektivt slutade svara på grund av spänningsfallet till det, när dörren var låst/olåst. Om du upplever samma problem för att sedan åtgärda ledningen i en 220uF (eller liknande) kondensator strax före +/- ledningarna som går ut till fjärrkontrollen. Kondensatorn laddas upp och vid utlösning töm kondensatorn istället för direkt likström)

Anslut nu USB -kabeln till Wemos och den andra änden av kabeln till din dator.

(Koden kommer att mata ut stift D1 "HÖG", vilket gör att MOSFET slås på så att spänning kan röra sig från avlopp till källa och därför "slå på" knappen i 1 sekund innan utmatningsstiftet "LÅG" åter sätts och stängs av. I själva verket simulerar det helt enkelt ett knapptryck på knappen via kod)

Arduino IDE

Starta Arduino IDE. Ladda ner och öppna koden (alternativ länk HÄR) Se till att de extra korten ingår i IDE, se här hur du installerar. Du måste då se till att rätt kort är installerat och laddat för ditt projekt (Verktyg, styrelser, Board Manager - sök "esp8266" och installera) samt rätt COM -port vald (Verktyg, Port, COM …). Du behöver också lämpliga bibliotek PubSubClient och ESP8266Wifi installerade (Sketch, Manage Libraries, Include Library …)

Ändra sedan följande kodrader och ersätt med ditt eget SSID och lösenord för din trådlösa anslutning. Ändra också IP -adressen för att peka på din egen MQTT -mäklare. Om du inte har en MQTT -mäklare installerad rekommenderar jag att du använder Mosquitto. Ladda ner för Windows eller Linux här.

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

När den har ändrats, verifiera din kod och ladda upp den till Wemos / ESP8266 -kortet via en USB -kabel.

Steg 2: Testning och OpenHAB -konfiguration

Testning och OpenHAB -konfiguration
Testning och OpenHAB -konfiguration
Testning och OpenHAB -konfiguration
Testning och OpenHAB -konfiguration
Testning och OpenHAB -konfiguration
Testning och OpenHAB -konfiguration

MQTT -testning

MQTT är ett "prenumerera / publicera" meddelandesystem. En eller flera enheter kan prata med en "MQTT -mäklare" och "prenumerera" på ett visst ämne. Alla inkommande meddelanden från någon annan enhet som "publiceras" till samma ämne, kommer att föras ut av mäklaren till någon annan enhet som har prenumererat på det ämnet. Det är ett extremt lätt och enkelt att använda protokoll och perfekt som ett enkelt utlösande system som det här. Se flödesschemat för en grov uppfattning om hur det fungerar.

För testning kan du visa inkommande MQTT -meddelanden från Wemos till din MQTT -mäklare genom att köra följande kommando på din Mosquitto -server (Mosquitto är en av många tillgängliga MQTT Broker -programvaror). Detta kommando prenumererar på inkommande keepalive -meddelanden:

mosquitto_sub -v -t openhab/frontdoor/status

Du bör se inkommande meddelanden som kommer in från Wemos var 30: e sekund eller så med siffran "1" (vilket betyder "jag lever") Om du ser konstanta "0: or" (eller inget svar) så finns det ingen kommunikation. När du väl sett siffran 1 kommer in betyder det att Wemos kommunicerar med MQTT -mäklaren (sök "MQTT Last Will and Testament" för mer information om hur det fungerar, eller se det här riktigt bra blogginlägget)

När du väl har bevisat att kommunikationen fungerar, kan du nu spåra det faktiska "trigger" -meddelandet (låsa/låsa upp). Prenumerera först på följande ämne.

mosquitto_sub -v -t openhab/frontdoor/trigger

Öppna nu ett andra kommandoradsfönster och kör följande publiceringskommando, skicka ämnet ett meddelande om antingen "LÅS" eller "LÅS UPP". Du bör se motsvarande meddelande visas i det första fönstret och du bör också se den röda LED -lampan blinka på fjärrkontrollen och dörrmekanismen låses eller låses upp vid behov.

mosquitto_pub -t openhab/frontdoor/trigger -m LOCK

(-t betyder 'ämne', -m betyder 'meddelande', -v betyder 'utförlig' utmatning)

Obs: Om dörren låses upp när du skickar lås eller låser när du skickar upplåsningskommandot, byt helt enkelt D1- och D2 -ledningarna

OpenHAB -konfiguration

Följande ändringar krävs för OpenHAB:

"objekt" -fil:

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

'sitemap' -fil:

Byt objekt = frontdoorTrigger mappings = [ON = "Lock", OFF = "Unlock"] Textobjekt = frontdoorStatus

'status.map' -fil (i transform -mapp):

0 = Down1 = Alive- = okänt

Du kan behöva ändra ovanstående OpenHAB -konfiguration något för att passa din egen inställning, till exempel "mqttbroker:" -delen som hänvisar till ditt konfigurerade MQTT -mäklarnamn.

Den sista bilden visar komponenterna på ett kretskort. I det här fallet, eftersom jag använder en likspänning som är> 5V (i mitt fall 9V) innehåller kortet också en LM7805 spänningsregulator samt en 0,33uF kondensator för ström i sidan och 0,1uF kondensator på strömmen ut för att hjälpa till att jämna ut och stabilisera spänningen. Annars är resten av anslutningarna desamma som beskrivits tidigare.

Felsökning

- Om du har problem där Wemos kontinuerligt låser eller låser upp dörren (t.ex.: skickar en RF -signal och LED -lampan på nyckelringen stannar), kontrollera sedan dina VCC- och GND -ledningar till Wemos. Chansen är att en eller båda av dessa inte är korrekt anslutna.

Steg 3: Löd upp komponenterna till ett kretskort

Löd upp komponenterna till ett kretskort
Löd upp komponenterna till ett kretskort
Löd upp komponenterna till ett kretskort
Löd upp komponenterna till ett kretskort

Det slutade med att jag lödde alla komponenter till ett kretskort, bara med trådar och/eller lödspår för att ansluta alla komponenter. Jag fick sedan en gammal DC -väggvårta och klippte bort tråden från den något kortare, sedan sprang jag den till ett kontaktblock som jag hade lödt till kretskortet. Strömmen går sedan av till 5V spänningsregulator / kondensatorer och nödvändiga komponenter. Jag blåste helt enkelt baksidan av kretskortet mot väggvårtan och anslöt det till en kraftpunkt inuti ett av mina skåp. Det har körts nu i ca 9 månader utan problem!

Rekommenderad: