Sisällysluettelo:

Wifi - RF - Ovilukko: 3 vaihetta (kuvilla)
Wifi - RF - Ovilukko: 3 vaihetta (kuvilla)

Video: Wifi - RF - Ovilukko: 3 vaihetta (kuvilla)

Video: Wifi - RF - Ovilukko: 3 vaihetta (kuvilla)
Video: 4-канальный пульт дистанционного управления РФ беспроводной переключатель PoscoPeak 2024, Heinäkuu
Anonim
Wifi -RF - oven lukko
Wifi -RF - oven lukko
Wifi -RF - oven lukko
Wifi -RF - oven lukko
Wifi -RF - oven lukko
Wifi -RF - oven lukko

Yleiskatsaus

Tämä ohje antaa sinulle mahdollisuuden lukita / avata etuovesi kodin automaatio -ohjelmiston (kuten OpenHAB -ilmaisen kotiautomaatio -ohjelmiston, jota itse käytän) avulla. Yllä olevassa kuvassa on esimerkki kuvakaappauksesta OpenHAB iPhone -sovelluksesta. Vaihtoehtoisesti voit käyttää MQTT -viestejä alla kuvatulla tavalla melkein missä tahansa haluamassasi järjestelmässä.

Oletukset

Tässä ohjeessa oletetaan, että sinulla on jo (tai aiot asentaa):

  • OpenHAB (ilmainen avoimen lähdekoodin kotiautomaatio -ohjelmisto) on käynnissä, mutta kuten mainittiin, sen pitäisi toimia minkä tahansa kodin automaatio -ohjelmiston kanssa, joka voi sisältää MQTT -sidonnan. Vaihtoehtoisesti voit muuttaa koodia itse tarpeidesi mukaan.
  • Mosquitto MQTT -sidonta asennettu ja määritetty OpenHAB: lla (MQTT on viestien tilaus-/julkaisutyyppiprotokolla, joka on kevyt ja sopii erinomaisesti laitteiden väliseen viestintään)
  • Että olet jo asentanut RF -pohjaisen etuoven näppäimistön lukon, joka tulee vähintään yhden avaimenperän kaukosäätimen kanssa (suurin osa tekee). Näitä voi ostaa suhteellisen halvalla Amazonista (noin ~ 60 dollaria, vaikka tämän mallin paristot kestävät vain ~ 4 kuukautta, joten katso, voitko tarjota DC: n, joka käyttää lukkoa, tai käyttää vähän enemmän kunnolliseen malliin:-))

Jos et käytä OpenHABia ja MQTT -välittäjää, katso tämä erinomainen artikkeli MakeUseOf -verkkosivustolla

Johdanto

Tämä projekti näyttää erityisesti, kuinka RF -pohjaista ovilukkoa KEY FOB käytetään huomattavasti hyödyllisemmäksi muuntamalla se toimimaan langattomasti, jolloin voit lukita tai avata oven kodin automaatiojärjestelmän, verkkoselaimen tai puhelimen kautta (OpenHAB-sovelluksen kautta) tai jopa ajoittaa sen lukittua automaattisesti yöllä käyttämällä kotiautomaatio-ohjelmiston sääntöjä. Tätä hanketta varten ostin "Mi RF -pohjaisen näppäimistön etuoven lukon" Amazonista noin 60 dollarilla *

(* EDIT: tämän tietyn merkkisen oven lukon paristot eivät kestä niin kauan! Käytin sitä vain 3-4 kuukautta, ennen kuin jouduin vaihtamaan paristot, joista tuli melko turhauttavaa. Olen sittemmin vaihtanut laitteen Windsor -merkkiselle elektroniselle ovilukolle, jonka paristot kestävät jopa 2 vuotta. Vaihtoehtoisesti, vaikka paljon enemmän työtä, harkitse tasavirran käyttämistä oven ytimen läpi lukkoon)

Tätä varten ne tarjoavat RF (radiotaajuus) -käyttöisen oven lukon, jossa on sisäänrakennettu näppäimistö ja avaimenperä etälukitukseen / -avaukseen. RF -toiminnolla avaimenperän on kuitenkin oltava oven lukon alueella. Tässä projektissa hyödynnetään avaimenperää integroimalla se Wemos -järjestelmään (IOT -levy ESP8266 -sirulla) lukituksen / lukituksen avaamiseksi langattomasti, joten sitä voidaan ohjata mistä tahansa Internet -yhteyden kautta.

Mitä minä tarvitsen?

Osta ja asenna ensin RF -pohjainen näppäinlukko. Sinun on varmistettava, että sen mukana tulee avaimenperä! Testaa fob ja varmista, että painikkeita painamalla se lukitsee tai avaa oven ennen käynnistystä. Suurimman osan näistä lukkoista pitäisi perustua vakiokokoihin ja lukkosiirtymiin, joten jos sinulla on jo lukituspultti (kuten minulla), sen vaihtaminen on poikkeuksellisen helppoa.

Langattoman ohjaimen luomiseksi sinun on hankittava seuraavat osat:

  • Wemos D1 mini V2 (jossa on sisäänrakennettu langaton ESP8266 CHIP) tai vain ESP8266 CHIP pitäisi tehdä (en suosittele ESP-01-versiota tähän projektiin, koska GPIO 0 -nasta on pidettävä korkealla käynnistyksen aikana jotta se käynnistyy salamasta, mutta tämä saa oven lukon laukaisemaan, kun ESP8266 käynnistyy mahdollisesti avaamalla etuovesi! Vaikka on olemassa ratkaisuja, voimme tehdä tämän, kuten ajastimien tai transistorien jne. Wemosta ja vähemmän komponentteja, pyrimme yksinkertaisempaan lähestymistapaan)
  • 5 V: n tasavirtalähde Wemosin ja kauko -ohjaimen virtalähteeksi (paristoja ei enää tarvita) Jos käytät Wemosia virtalähteenä 5 V VCC -nastalla (USB -portin sijaan) ja tasavirtalähde on yli 5 V, Tarvitset myös 5 V: n jännitesäätimen (kuten LM7805) sekä 2 x kondensaattoria, 10 V: n 0,33 uF: n ja 10 V: n 0,1 uF: n tai saman kokoisen (LM7805 -tietolomakkeen mukaan)
  • Kaksi 2N7000- tai vastaavaa MOSFET-laitetta (näitä käytetään avaimen kauko-ohjaimen kytkemiseen, toinen lukitsemiseen, toinen lukituksen avaamiseen. 2N7000 on erittäin yleinen ja erittäin halpa parannustyyppinen N-kanavainen MOSFET, joten sen pitäisi olla erittäin helppo hankkia)

  • Kaksi 10K ohmin vastusta (näitä käytetään vetovastusvastuksina jokaisessa MOSFET-laitteessa, joten oven lukitus / lukituksen avaus ei laukea käynnistyksen yhteydessä!)
  • Kaukosäätimestäsi riippuen sinun on ehkä kytkettävä toinen kondensaattori (kuten 10 V 220uF tai vastaava), jotta voit lisätä kaukosäätimen virtaa. Katso syyt myöhemmin tässä artikkelissa.
  • Tarvittavat työkalut: sivuleikkurit, yksijohtiminen lanka, juotosrauta, virtaus ja valinnaisesti monimetri

Avaimenperä itse käyttää tyypillisesti 2 x 3 V paristoja sarjassa (6 V Vcc). Siksi 5 V: n jännitteen käyttö kondensaattorin kanssa on kuitenkin riittävä jännite sekä Wemosin virran saamiseksi että lukituksen / lukituksen avaamiseksi.

Jos sinulla on kauko -ohjain, joka toimii yhdellä 3 V: n paristolla, sinun pitäisi pystyä lisäämään piiriin 3,3 V: n jännitesäädin pudottamaan jännite lähellä vaadittua 3 V: ta. 3 V: n akun teho on noin 3,1 V, ja useimmissa piireissä on jonkinlainen korkeampi jännitetoleranssi, joten tässä tapauksessa 3,1 V - 3,3 V on +6%. Yhdistä se siihen, että Wemos vetää virtaa, joten jännite on todennäköisesti vielä pienempi. Jos epäilet, mittaa yleismittarilla ja jos mahdollista, tarkista lukon myyjältä suurin jännite (tai suurin toleranssi), jonka kauko -ohjain hyväksyy, koska en ole vastuussa, jos kauko -ohjaimesi lakkaa toimimasta! Lopuksi vaihtoehtoisena ratkaisuna aseta sen sijaan jännitteenjakajapiiri.

Vaihe 1: Kokoonpano

Kokoonpano
Kokoonpano
Kokoonpano
Kokoonpano
Kokoonpano
Kokoonpano

Juotos

Osien kokoaminen on hyvin yksinkertaista. Avaa ensin avaimenperä - poista paristot ja kotelo, koska tarvitset vain piirilevyn sisällä. Seuraavaksi juota lanka avaimenperän painikkeen molemmin puolin. Tee tämä sekä "lukitus" -painikkeelle että "lukituksen avaus" -painikkeelle. Käännä sitten fob ympäri ja juota lanka sen takana oleviin + ja - tyynyihin kuvan mukaisesti. Mitä suurempi tyyny on +, sitä pienempi on -

Huomautus: 5 V: n virtalähde syöttää virtaa sekä Wemos- että avaimenperään, joten fob -paristoja ei enää tarvita.

Kokoonpano

Anna 5 V Vcc ja GND Wemosille ja lisää MOSFETit ja vastukset leipälevylle kuvan mukaisesti. 10K ohmin vastuksen tulisi kulkea GND: stä MOSFET -laitteiden porttiin (keskustappiin). Tämä vetää jännitteen maahan pysäyttäen MOSFET -laukaisimet käynnistyksen yhteydessä.

Seuraavaksi vedä lanka Demosta Wemosissa ensimmäisen MOSFETin porttiin ja D2 Wemosta porttiin toisen MOSFETin porttiin. D1 ja D2 ovat GPIO (yleiskäyttöinen tulo/lähtö) -nasta, joka on koodissa merkitty OUTPUT -nastoiksi.

Kytke lopuksi kauko -ohjaimen johdot leipälevylle, Vcc - 5V -kisko, GND - GND, sitten napin negatiivisen puolen johto kunkin MOSFET -laitteen lähdepuolelle ja napin positiivinen puoli jokaisen MOSFET -laitteen tyhjennyspuolelle kuten kuvassa (käytä yleismittaria, jos olet epävarma napaisuudesta)

(EDIT: Aiemmin mainitsemassani Windsorin ovilukossa on avainkaukalo, joka kuluttaa hieman enemmän jännitettä kuin vanha avainkaukalo. Tämä aiheutti Wemosin lakkaavan tehokkaasti vastaamasta siihen jännitehäviön takia, kun ovi lukittiin/avattiin. Jos Jos sinulla on sama ongelma, korjaa 220 uF: n (tai vastaavan) kondensaattorin johto juuri ennen +/- johdotusta, joka menee ulos kaukosäätimestä. Kondensaattori latautuu ja tyhjentää kondensaattorin suoran tasavirran sijaan)

Liitä nyt USB -kaapeli Wemosiin ja kaapelin toinen pää tietokoneeseen.

(Koodi lähettää nastan D1 "HIGH", jolloin MOSFET käynnistyy, jolloin jännite kulkee viemäristä lähteeseen ja siksi "kytkee" painikkeen päälle 1 sekunnin ennen kuin tuodaan ulos lähtötappi "LOW" uudelleen ja sammutetaan se Käytännössä se yksinkertaisesti simuloi painikkeen painallusta koodin avulla)

Arduino IDE

Käynnistä Arduino IDE. Lataa ja avaa koodi (vaihtoehtoinen linkki TÄSTÄ) Varmista, että lisäkortit sisältyvät IDE: hen, katso ohjeet asetusten määrittämiseen täältä. Sinun on sitten varmistettava, että oikea kortti on asennettu ja ladattu projektillesi (Työkalut, Taulut, Hallintapäällikkö - etsi "esp8266" ja asenna) sekä oikea COM -portti (Työkalut, Portti, COM…). Tarvitset myös asianmukaiset kirjastot PubSubClient ja ESP8266Wifi asennettuna (Sketch, Manage Libraries, Include Library …)

Muuta seuraavaksi seuraavat koodirivit ja korvaa langaton yhteys omalla SSID -tunnuksellasi ja salasanallasi. Vaihda myös IP -osoite osoittamaan omaa MQTT -välittäjääsi. Jos sinulla ei ole MQTT -välittäjää asennettuna, suosittelen Mosquiton käyttöä. Lataa Windowsille tai Linuxille täältä.

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

Kun koodi on muutettu, tarkista se ja lähetä se sitten Wemos / ESP8266 -kortille USB -kaapelin kautta.

Vaihe 2: Testaus ja OpenHAB -määritykset

Testaus ja OpenHAB -määritykset
Testaus ja OpenHAB -määritykset
Testaus ja OpenHAB -määritykset
Testaus ja OpenHAB -määritykset
Testaus ja OpenHAB -määritykset
Testaus ja OpenHAB -määritykset

MQTT -testaus

MQTT on "tilaa / julkaise" -viestijärjestelmä. Yksi tai useampi laite voi puhua "MQTT -välittäjän" kanssa ja "tilata" tietyn aiheen. Välittäjä lähettää kaikki muiden laitteiden saapuvat viestit, jotka on "julkaistu" samaan aiheeseen, mille tahansa muulle laitteelle, joka on tilannut kyseisen aiheen. Se on erittäin kevyt ja helppokäyttöinen protokolla ja täydellinen yksinkertaisena laukaisujärjestelmänä, kuten tässä. Katso vuokaaviosta karkea käsitys siitä, miten se toimii.

Testausta varten voit tarkastella Wemosin MQTT -välittäjälle saapuvia MQTT -viestejä suorittamalla seuraavan komennon Mosquitto -palvelimellasi (Mosquitto on yksi monista MQTT Broker -ohjelmistoista). Tämä komento tilaa saapuvat pysyvät viestit:

mosquitto_sub -v -t openhab/etuovi/tila

Sinun pitäisi nähdä saapuvia viestejä, jotka tulevat Wemosilta noin 30 sekunnin välein numerolla "1" (eli "olen elossa"). Jos näet vakio "0" (tai ei vastausta), viestintää ei ole. Kun näet numeron 1 tulossa, se tarkoittaa, että Wemos kommunikoi MQTT -välittäjän kanssa (hae "MQTT Last Will and Testament" saadaksesi lisätietoja siitä, miten tämä toimii, tai katso tämä todella hyvä blogikirjoitus)

Kun olet osoittanut viestinnän toimivan, voit nyt seurata todellista "laukaisu" (lukitus/lukituksen avaus) -viestiä. Tilaa ensin seuraava aihe.

mosquitto_sub -v -t openhab/etuovi/liipaisin

Avaa nyt toinen komentorivi -ikkuna ja suorita seuraava julkaisukomento lähettämällä aiheelle joko "LOCK" tai "UNLOCK" -viesti. Sinun pitäisi nähdä vastaava viesti ensimmäisessä ikkunassa, ja sinun pitäisi myös nähdä punainen LED -valo vilkkumaan kauko -ohjaimessa ja ovimekanismi lukkiutuu tai avautuu tarpeen mukaan.

mosquitto_pub -t openhab/etuovi/liipaisin -m LOCK

(-t tarkoittaa `` aihetta '', -m tarkoittaa `` viestiä '', -v tarkoittaa `` monitahoista '')

Huomautus: Jos oven lukitus avautuu, kun lähetät lukon tai lukittuu, kun lähetät lukituksen avauskomennon, vaihda vain D1- ja D2 -johdot

OpenHAB -kokoonpano

Seuraavat muutokset ovat tarpeen OpenHAB: lle:

"items" -tiedosto:

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

'sitemap' -tiedosto:

Vaihda kohde = frontdoorTrigger mappings = [ON = "Lock", OFF = "Unlock"] Tekstikohde = frontdoorStatus

'status.map' -tiedosto (muunnoskansiossa):

0 = alas1 = elossa- = tuntematon

Sinun on ehkä muutettava yllä olevaa OpenHAB -kokoonpanoa hieman omaan asetukseesi sopivaksi, kuten "mqttbroker:" -osa, joka viittaa määritettyyn MQTT -välittäjän nimeen.

Lopullinen kuva näyttää piirilevyn komponentit. Tässä tapauksessa, koska käytän tasavirtalähdettä, joka on> 5 V (minun tapauksessani 9 V), piirilevy sisältää myös LM7805 -jännitesäätimen sekä 0,33uF: n kondensaattorin virtalähteeksi ja 0,1uF: n kondensaattorin virtalähteen puolelle auttaa tasaamaan ja vakauttamaan jännitettä. Muuten muut liitännät ovat samat kuin aiemmin kuvattu.

Ongelmien karttoittaminen

- Jos sinulla on ongelmia, joissa Wemos lukitsee tai avaa oven jatkuvasti (esim. Lähettää RF -signaalin ja avaimenperän LED -valo palaa), tarkista VCC- ja GND -johdot Wemosille. On mahdollista, että jompikumpi tai molemmat ei ole kytketty oikein.

Vaihe 3: Juottaa komponentit piirilevyyn

Juottaa komponentit piirilevyyn
Juottaa komponentit piirilevyyn
Juottaa komponentit piirilevyyn
Juottaa komponentit piirilevyyn

Lopulta juotin kaikki komponentit piirilevyyn käyttämällä vain johtoja ja/tai juotosraitoja kaikkien komponenttien liittämiseksi. Sain sitten vanhan DC -seinäsyynyn ja leikkasin johdon siitä hieman lyhyemmäksi, ja sitten ajoin sen liittimen lohkoon, jonka olin juottanut piirilevyyn. Virta katkeaa sitten 5 V: n jännitesäätimelle / kondensaattoreille ja tarvittaville komponenteille. Nappasin yksinkertaisesti sinisellä pinnalla piirilevyn takaosan seinän syylään ja liitin sen yhden kaappini sisällä olevaan virtapisteeseen. Se on toiminut nyt noin 9 kuukautta ilman ongelmia!

Suositeltava: