Innholdsfortegnelse:

Sensorstasjoner -nettverk for belysning og sikkerhetskontroll: 5 trinn (med bilder)
Sensorstasjoner -nettverk for belysning og sikkerhetskontroll: 5 trinn (med bilder)

Video: Sensorstasjoner -nettverk for belysning og sikkerhetskontroll: 5 trinn (med bilder)

Video: Sensorstasjoner -nettverk for belysning og sikkerhetskontroll: 5 trinn (med bilder)
Video: ТЕПЕРЬ НЕ ПРОПАДУ 10-ть самоделок ВЫРУЧАТ ГДЕ УГОДНО! 2024, Juli
Anonim
Sensorstasjoner -nettverk for belysning og sikkerhetskontroll
Sensorstasjoner -nettverk for belysning og sikkerhetskontroll
Sensorstasjoner -nettverk for belysning og sikkerhetskontroll
Sensorstasjoner -nettverk for belysning og sikkerhetskontroll
Sensorstasjoner -nettverk for belysning og sikkerhetskontroll
Sensorstasjoner -nettverk for belysning og sikkerhetskontroll

Med dette sensorstasjonens nettverk konfigurert i en master/slave -modus, vil du kunne utføre belysning og sikkerhetskontroll i hjemmet ditt. Disse sensorstasjonene (Node01, Node02 i dette prosjektet) er koblet til en hovedstasjon (Node00) koblet til ditt lokale wifi -nettverk. Jeg har installert Node01 i oppbevaringsrommet mitt og Node02 i garasjen min for å kontrollere lys og bevegelser. Masterstasjonen er installert i rommet vårt som er koblet til wifi -ruteren. Jeg har installert klokken i garasjen og en liten summer i hovedstasjonen for å høres når en bevegelse blir oppdaget av en sensorstasjon i nettverket.

Hovedtrekkene i nettverket er:

  • Det er mulig å konfigurere et nettverk med mer enn to sensorstasjoner (slave -stasjoner) (Node01, Node02, Node03,….)
  • Fordi bruken av trådløse transceivere med antenne, er nettverket i stand til å dekke et stort område
  • Du kan kontrollere hele nettverket fra en mobiltelefon
  • Send en e -post (Gmail -konto) når en bevegelse oppdages og alarmmodusen er aktivert. Så hvis du aktiverer Gmail -push -varslene i mobilen din, vet du når en bevegelse oppdages i nettverket ditt

for domotiske formål:

  • Slå på lysene når det oppdages en bevegelse / slå alltid på lysene (for hele nettverket eller for hver slavestasjon)
  • Endre tiden i minutter lysene er på etter at en bevegelse er registrert for hver slave -stasjon

av sikkerhetshensyn:

  • Aktiver og deaktiver alarmmodus
  • Hver slavestasjon kan sende et signal til en hovedstasjon (Node00) når alarmmodusen er aktivert og en bevegelse oppdages
  • Hovedstasjonen kan aktivere en bjelle og sende en e -post når et av disse signalene mottas fra en slavestasjon og alarmmodusen er aktivert. Hovedstasjonen (Node00) er koblet til internett ved hjelp av en wifi -tilkobling for å kontrollere hele systemet ved hjelp av en mobiltelefon. Den er konfigurert som en WifiWebServer

Trinn 1: Liste over materiale

Liste over materiale
Liste over materiale
Liste over materiale
Liste over materiale

Listen over materiale jeg har brukt til å bygge Node01 og Node02 (slavestasjoner) er følgende:

  • Mega 2560 R3 brett
  • Plaststøtte for MEGA 2560 R3
  • HC-SR501 PIR-sensor
  • Plaststøtte for HC-SR501
  • 5V relé
  • Trådløs transceivermodul 2.4G 1100m NRF24L01+PA+LNA med antenne LKY67
  • 8Pin NRF24L01 adapter (for å forbedre funksjonene til NRF24L01)
  • HLK-PM01 AC DC 220V til 5V mini strømforsyning

Listen over materiale for å bygge Node00 (hovedstasjoner) er følgende:

  • Mega 2560 R3 brett
  • Plaststøtte for MEGA 2560 R3
  • WiFi -modul NodeMCU Lua Amica V2 ESP8266
  • Trådløs transceivermodul 2.4G 1100m NRF24L01+PA+LNA med antenne LKY67
  • 5v-3.3v VCC adapterkort for NRF24L01 (for å forbedre funksjonene til NRF24L01)
  • Adapter AC-DC, 9V, 1A (2, 1 mm x 5, 5 mm)

Dessuten har jeg brukt følgende materiale:

  • 2 Pin 5 mm PCB -kontakter
  • Jumper ledninger
  • Brødbrett MB-102 (800 kontakter)
  • Mini Loddefritt brødbrett 170 kontakter
  • Sett med lysdioder og motstander
  • PCB -plater
  • Tinnloddejernssett
  • Limpistol
  • Gjennomsiktig metakrylat
  • Klokke

Trinn 2: Slik kobler du til og programmerer Node01 og Node02 (slave -stasjoner)

Slik kobler du til og programmerer Node01 og Node02 (Slave Stations)
Slik kobler du til og programmerer Node01 og Node02 (Slave Stations)
Slik kobler du til og programmerer Node01 og Node02 (Slave Stations)
Slik kobler du til og programmerer Node01 og Node02 (Slave Stations)

For å programmere skissen "SlaveSation.ino" trengte jeg RF24 -biblioteket og RF24 -nettverksbiblioteket.

I flytskjemaet ovenfor kan du se logikken til sensorstasjonen og meldingene som utveksles mellom en slavesensorstasjon og hovedstasjonen.

Før du laster inn skissen, må du konfigurere adressen til slavenoden i oktalt format

const uint16_t this_node = 01; // Adressen til noden vår i oktalt format (slave): 01, 02, 03 …

Betydningen av lysdiodene i hver slavestasjon er følgende:

  • Blå led. Den vil være på mens PIR -sensorpinnen er høy.
  • Grønn ledet. Den vil være på når alarmen er tilkoblet.

Trinn 3: Slik kobler du til og programmerer Node00 (Master Station)

Slik kobler du til og programmerer Node00 (Master Station)
Slik kobler du til og programmerer Node00 (Master Station)
Slik kobler du til og programmerer Node00 (Master Station)
Slik kobler du til og programmerer Node00 (Master Station)
Slik kobler du til og programmerer Node00 (Master Station)
Slik kobler du til og programmerer Node00 (Master Station)

I Node00 -stasjonen kan vi finne to forskjellige tavler:

  • MEGA 2560 R3 brett. Denne enheten brukes til å motta meldinger fra slavestasjon når en bevegelse oppdages ved hjelp av trådløs kommunikasjon. Den aktiverer en klokke når en bevegelse oppdages og alarmen er tilkoblet. For å stoppe klokken må du bare koble fra alarmmodusen. Dessuten sender den til slavestasjonen meldinger fra NodeMCU for å aktivere eller deaktivere bevegelsesdeteksjon, å alltid slå på lysene, å alltid slå av lysene, …
  • NodeMCU Lua Amica V2 ESP8266 -bord. Det fungerer som en Wifi webserver for å overføre og motta kommandoer fra et eksternt sted ved hjelp av en webside i en mobiltelefon. Videre sender e-postmeldinger når en bevegelse oppdages og alarmmodusen er aktivert.

Begge enhetene er programmert til å kommunisere med hverandre i en Master (NodeMCU)/Slave (MEGA) konfigurasjon via I2C synkron seriell protokoll ved hjelp av Wire Library. I2C -protokollen innebærer bruk av to linjer for å sende og motta data: en seriell klokkepinne (SCL) og en seriell datapinne (SDA) som data sendes mellom de to enhetene.

Som du kan se på tegningen, er de to pinnene for I2C -kommunikasjonen i MEGA 2560 R3 -kortet:

  1. SDA -> pin 20 SDA
  2. SCL -> pin 21 SCL

og de andre i NodemMCU er:

  1. SDA -> digital pin 1
  2. SCL -> digital pin 2

Før du laster skissen for ESP8266 må du installere ESP8266 -kortet. For å gjøre det må du skrive inn "https://arduino.esp8266.com/stable/package_esp8266com_index.json" i "Ytterligere styringsleder -URLer" i innstillingsvinduet i Arduino IDE. Etter det må du åpne boards manager og installere "esp8266"

Jeg bruker en ekstern strømforsyningsadapter (9V, 1A) for MEGA 2560 R3 -kortet (likestrømkontakt, 2, 1 mm x 5, 5 mm), og jeg kobler NodeMCU -kortet til 3V3 -pinnen i MEGA -kortet.

Trinn 4: WifiWebServer (NodeMCU i Master Station)

WifiWebServer (NodeMCU i Master Station)
WifiWebServer (NodeMCU i Master Station)
WifiWebServer (NodeMCU i Master Station)
WifiWebServer (NodeMCU i Master Station)

Skissen lastet inn i NodeMCU (Node00 eller hovedstasjon) er konfigurert som en WebServer koblet til ditt hjemmenettverk. Det er mulig å få ekstern tilgang hvis du konfigurerer portvideresending i ruteren.

Før du laster WifiWebServerV3.ino -skissen til NodeMCU, må du gjøre følgende:

  1. Oppdater porten du skal konfigurere i ruteren (portvideresending) for å få ekstern tilgang til NodeMCU
  2. Oppdater brukeren og passordet for å få tilgang til ditt hjemmenettverk
  3. Oppdater påloggingen og passordet til Gmail-kontoen din for å sende e-post når en bevegelse oppdages og alarmen er tilkoblet
  4. Oppdater e-postadressen der du vil motta e-postene

For å oppdatere brukeren, passordet og porten serveren vil bruke til å lytte til, må du søke etter følgende kode i WifiWebServerV3.ino -skissen og oppdatere den:

const char*ssid = "*** din ssid ***";

const char*password = "*** passordet ditt ***"; WiFiServer -server (80);

For å oppdatere e-postadressen der du vil motta e-postene, må du søke etter følgende kode og oppdatere den:

const char*to_email = "*** e-postadresse hvor du vil motta meldingen ***";

For å oppdatere brukeren og passordet til Gmail-kontoen din for å motta e-post, må du søke etter følgende kode i filen "Gsender.h" og oppdatere den:

const char*EMAILBASE64_LOGIN = "*** din e-postadressekode i BASE64 ***";

const char*EMAILBASE64_PASSWORD = "*** passordkoden din i BASE64 ***"; const char*FROM = "*** din e-postadresse ***";

For å kode eller dekode data i BASE64 har jeg brukt www.base64encode.org

Hvis du trenger mer informasjon om å sende og motta e-post med ESP8266, er det en "instruerbar" om det her

Når du kan gjøre det, kan du teste tilkoblingen i ruteren. Hvis enheten er tilkoblet, må du reservere den tildelte IP -adressen til denne enheten. Videre er det en god idé å snakke med Internett -leverandøren for å angi en statisk IP -adresse på ruteren din.

For å få tilgang til websiden i nærheten av wifi -ruteren, bare skriv den lokale IP -adressen som er tilordnet av ruteren din etter porten du bruker i en webnavigator. For eksempel: 192.168.40.15:800. Hvis du prøver å få ekstern tilgang, må du skrive inn IP -adressen til ruteren din etter porten du bruker som ovenfor.

Nettsiden jeg viser deg på bildene er programmert til å kontrollere et nettverk med to slavestasjoner.

Systemet er i utgangspunktet konfigurert til å kontrollere maksimum 5 slave -stasjoner, men du kan endre det. Bare søk etter følgende kode i WifiWebServerV3.ino og SlaveStation.ino

#define number_max_slaves 5

Websiden er opprinnelig delt inn i 4 seksjoner:

  1. Del "Oppgi" hvor den viser deg om alarmen er tilkoblet eller ikke
  2. Seksjon "Alarmteller" der den viser antall bevegelsesdeteksjoner i hver slave -stasjon
  3. Del "Alarm" hvor du kan koble til eller fra (KOBLE ALARM/KOBLE ALARM) alarmen og tilbakestille alarmtelleren (RESET COUNTERS)
  4. Seksjon "Belysning" hvor du kan kontrollere lysene til hver slavestasjon. Du kan kontrollere følgende:

    • Slå på lysene i alle slavestasjoner / slå på lysene bare når det oppdages en bevegelse i alle slavestasjoner (NETTVERK ALLTID PÅ / NETTVERK NÅR BEVEGELSE)
    • Endre tiden i minutter lysene er på for hver slavestasjon (NODExx ON 1 MINUTE/NODEXX ON 2 MINUTE)
    • Slå på lysene for hver slavestasjon (NODExx ALLTID PÅ)
    • Slå på lysene for hver slavestasjon bare når det oppdages en bevegelse (NODExx_MOV)

Du trenger ikke å endre noe fordi det vil fungere uansett navnet på slavestasjoner du konfigurerer. Videre vil det automatisk oppdage antall slave -stasjoner som er koblet til nettverket.

Selvfølgelig kan du laste ned skissen og enkelt endre koden som er nødvendig for å vise din egen webkontrollside.

Trinn 5: Fra begynnelsen …

Her er trinnene du må følge for å bygge nettverket ditt:

  1. Kjøp alt materialet etter listen jeg gir deg i "Trinn 1"
  2. Koble til komponentene etter tegningen du kan laste ned i "Trinn 2" og "Trinn 3"
  3. Bygg bokser for hver slavestasjon og hovedstasjonen. Jeg har bygget metakrylatbokser.
  4. Konfigurer hver slavestasjon:

    Last ned og last skissen "SlaveStation.ino" i ett MEGA 2560 R3 -brett. Du trenger bare å redigere skissen og oppdatere adressen til slavestasjonen som du kan se i "Trinn 2"

  5. Konfigurer hovedstasjonen:

    • Last ned og last skissen "SlaveStation.ino" i en MEGA 2560 R3. Du trenger ikke å endre noe uansett antall slave -noder i nettverket ditt. I utgangspunktet er skissen konfigurert for maksimalt 5 slavestasjoner.
    • Last ned og last skissen "WifiServerV3.ino" i NodeMCU. Du må oppdatere skissen etter instruksjonene i "Trinn 4"
  6. Konfigurer ruteren din for å få ekstern tilgang til NodeMCU (portvideresending, statisk IP …)

Anbefalt: