Innholdsfortegnelse:

Internett -aktivert DSC Home Security System: 22 trinn
Internett -aktivert DSC Home Security System: 22 trinn

Video: Internett -aktivert DSC Home Security System: 22 trinn

Video: Internett -aktivert DSC Home Security System: 22 trinn
Video: Crypto Pirates Daily News – 12 февраля 2021 г. – последнее обновление новостей о криптовалютах 2024, Juli
Anonim

Endre et eksisterende DSC Home Security-system for å være internettaktivert og selvovervåket.

Denne instruksen forutsetter at du har en fungerende Raspberry Pi.

Vær oppmerksom på at denne implementeringen har følgende mangler:

  • Hvis en tyv kutter den kommende DSL-kabelen eller internettjenesten går tapt, blir overvåking fra Internett deaktivert

    Fremtid: Løsningen for dette problemet er å bruke en rimelig LTE-sikkerhetskopitjeneste

  • DSC -sensorer indikerer ikke om dørene eller vinduene er låst, bare at de er lukket

    Fremtid: Legg til en trykknapp som aktiveres av dørlåsens bolt. Dette vil ta betydelig arbeid for å kjøre ledningene uten å ødelegge dørkarmen

  • DSC støtter integrering av brannalarm. Brannalarmen til hjemmet mitt er imidlertid ikke integrert

    Fremtid: integrer brannalarm i DSC -kontrollpanelet

  • Det installerte DSC -systemet har ikke en sensor for garasjeporten

    Tidligere har jeg laget en garasjeportåpner som kan instrueres, og jeg kan lese at døren er åpen eller lukket

Målet med dette prosjektet er å:

  • Send varsler om sikkerhetssystem til mobiltelefonen min
  • Kontroller eller angi sikkerhetssystemets status fra en sikker webside
  • Kjør løsningen på en sikker bringebær pi (https og sertifikater)
  • Bruk det eksisterende DSC-systemet til å overvåke selv
  • Legg til EnvisaLink 3 for å legge til Ethernet -støtte i DSC -systemet
  • Skriv programvare for selvovervåking
  • Lag en instruerbar for denne innsatsen

Merk: I dette dokumentet bør teksten som er omsluttet [hakeparenteser] erstattes med en faktisk verdi

Familien min har aldri fått hjemmet vårt ranet, og vi bor i et område med lav kriminalitet. Det er ingen overbevisende grunn til å gjøre dette prosjektet, bortsett fra at det var interessant og morsomt.

Vær oppmerksom på at det er en utmerket snarvei til dette instruerbare. Når Envisalink 3 er i gang, kan du bruke hylleløsningen levert av Eyes-On, kalt EnvisAlerts og EnvisAlarm, som sender varsler og overvåker hjemmet ditt og/eller en veldig kul mobiltelefonapp kalt DSC Security Server av Mike P. Jeg registrerte meg for EnvisAlerts og kjøpte Mike Ps DSC Security Server. Jeg var veldig fornøyd med begge deler, men ville ha min egen versjon.

Trinn 1: Feilsøking og unike data

Det er visse data som jeg ofte refererer til, og jeg liker å inkludere disse dataene foran.

Alarm - aktiver og deaktiver

Sørg for at alle dører og vinduer er lukket. Skriv inn hovedkoden på kontrollpanelet:

[master code] = [din master code]

Deaktiver telefonlinjen

Huset mitt har telefonlinje, men jeg har ikke fasttelefontjeneste. Rundt 23.00 hver kveld piper systemet. Hvis systemet mister strøm, må dette legges inn på nytt. For å deaktivere denne pipingen, tast inn følgende på tastaturet:

  • Deaktiver telefonlinjen: *8 5555 015 7 ##
  • Slå av telefonlinjetestoverføringer *8 5555 371 9999 ##
  • Slå av telefonoppringeren: *8 5555 380 1 ##

Envisalink Alert Server

Logg inn på Envisaiink

Få Envisalerts Server: 184.106.215.218

Åpen U-vers-ruter: 192.168.1.254

Gå til Innstillinger, brannmur

Envisalink -pålogging

Åpne nettleseren

Skriv inn Envisalink IP -adresse:

[envisalink brukernavn] = bruker

[envislink password] = [skriv inn passordet ditt]

Envisalink IP -adresse

[Envisalink IP -adresse] = 192.168.1.92

Eyes-on brukernavn og passord

[eye-on username] = [ditt envisalink-brukernavn]

[eye-on password] = [passordet for envisalink]

Installatørens kode

[Installatørkode] = [Skriv inn installatørkoden]

5555 er standardkoden. Du kan be installatøren om koden, eller du kan tilbakestille fabrikken, som setter den tilbake til 5555. Jeg anbefaler ikke å tilbakestille fabrikken fordi det er en betydelig mulighet for å skade systemet.

Master Code

[MasterCode] = [skriv inn hovedkoden din]

Bringebær Pi IP

[Raspberry Pi IP] = [skriv inn din Raspberry Pi IP -adresse, noe som 192.168.1.57]

Raspberry Pi -pålogging fra Mac Book

Åpne terminalen på Mac Book

ssh pi@[Raspberry Pi IP]

[Passord]

Raspberry Pi passord

Passord = [passordet til Raspberry Pi]

Ruter

Ruter IP -adresse = [skriv inn ruterens IP -adresse]

Still inn DSC -tid og -dato

*611301hhmmMMDDYY#

hh er i militær tid, for pm legg til 12. Så, 16:00 er 16

Sone programmering

Sone alarmtype

01 - Alarm etter forsinkelse (standard 60 sekunder) i Stay or Away -modus

03 - Alarm umiddelbart hvis den brytes når du er i Stay or Away -modus

05 - Innvendig bevegelsessensor. Alarmen umiddelbart hvis den bare brytes når Borte -modus (omgår når du er i Stay)

Skriv inn på tastaturet:

*8 [Installatørkode] 001 01 03 05 05 87 # #

Forklaring av kodesekvensen ovenfor:

  • *8 [Installatørkode]
  • 001 - Dette får deg til soneprogrammering for soner
  • 01 03 05 05 87 - Dette er min sekvens av sonealarmtyper, i sonerekkefølge fra 1 til 5.
  • Alle soner må være riktig innstilt.
  • # # - Dette sparer det du har gjort og får deg tilbake fra programmeringsmodus.

Trinn 2: Finn modellnummeret på tastaturet og kontrollpanelet

Finn modellnummeret på tastaturet og kontrollpanelet
Finn modellnummeret på tastaturet og kontrollpanelet
Finn modellnummeret på tastaturet og kontrollpanelet
Finn modellnummeret på tastaturet og kontrollpanelet
Finn modellnummeret på tastaturet og kontrollpanelet
Finn modellnummeret på tastaturet og kontrollpanelet
Finn modellnummeret på tastaturet og kontrollpanelet
Finn modellnummeret på tastaturet og kontrollpanelet

Finn modellnummer på tastaturet. DSC -tastaturet er i nærheten av en dør (bilde 1 og 2). I huset mitt er det ett tastatur ved garasjeporten og ett ved inngangsdøren.

Finn modellnummeret på kontrollpanelet. Tastaturet har et klistremerke på toppen, og modellnummeret er i midten. Min er en PK5501 (bilde 3 og 4).

En annen måte å gjøre dette på er:

  • Åpne en nettleser på en datamaskin
  • Gå til

Kontrollpanelet mitt er plassert i en metallboks i et skap (bilde 3). Åpne metallboksen, og i midten av kontrollpanelet er det et klistremerke med modellnummeret. Mitt modellnummer på kontrollpanelet er PC1616 (bilde 4).

Trinn 3: Kontroller om EnvisaLink 3 er kompatibelt med ditt sikkerhetssystem

Klikk på lenken eyeson.com.

Rull ned til panelkompatibilitet og se om din er oppført. Hvis ikke, sjekk med EyesOn.

Trinn 4: Få DSC -dokumentasjon

DSC tilbyr en brukerhåndbok, men de fleste andre dokumenter krever at du er installatør

  • For kontrollpanelet, finn installasjonshåndboken, brukermanualen, referansehåndboken og programmeringsarket.
  • Du finner installasjonshåndboken for tastaturet. Håndboken jeg fant var alle PDF -filer.

Flere ikke-DSC-kilder til DSC-håndbøker er tilgjengelige online. DSC -manualer kreves ikke for denne instruksen. Dette er bare referanser hvis du vil utvide det instruerbare eller hvis systemet bruker forskjellige deler.

LiveWatch.com er den beste kilden til DSC -manualer. LiveWatch var også veldig hjelpsom med å svare på spørsmål og få meg til å stanse. Jeg kunne ikke ha fullført dette instruerbare uten hjelp fra LiveWatch.

Trinn 5: Kjøp eller saml deler og verktøy

A) DSC -sikkerhetssystem med PK5501 -tastaturer, PC1616 -kontrollpanel og flere sensorer (vinduer, dører og bevegelse). Sikkerhetssystemet fulgte med hjemmet.

B) Bestill EnvisaLink 3 - $ 119 + S&H. www.eyezon.com

C) AT&T U-vers internettleverandør, DSL Gateway

D) 24-ports NetGear Managed-bryter

E) Usynlig hundegjerde eller termostatledning

F) CAT5E Ethernet -kabel

G) Fire 18-22 gauge AWG-ledninger ca 6 tommer lange (rød, svart gul, grønn)

H) Nåletang

I) Bor og 3/16”metallbor og veldig liten borekrone

J) Svart elektrikerbånd

K) Veldig liten flatskrutrekker (jeg har en til å fikse brillene mine når skruen faller ut)

L) SPST Mini Momentary Pushbutton Switch, normalt lukket

M) Liten plastkasse (tanntråd)

N) Exacto kniv

Trinn 6: EnvisaLink 3 -installasjon

EnvisaLink 3 -installasjon
EnvisaLink 3 -installasjon
EnvisaLink 3 -installasjon
EnvisaLink 3 -installasjon

Jeg burde ikke ha fulgt instruksjonene som fulgte med EnvisLink 3.

Det første trinnet i instruksjonene er å koble strømmen fra PC1616. Jeg antok at dette betydde både vekselstrøm og batteristrøm. Jeg koblet fra begge, og måtte deretter ringe til en tekniker for å få tastaturene tilbake på nettet. Serviceanropet var $ 135.

  1. Min PC1616 er innelukket i en metallkasse. Finn PC1616 -kortet til sikkerhetssystemet.
  2. Bruk EV3 til å lage en papirmal for hullene. Malen brukes til å markere hull på metallhuset. Fordi det var lettere å skru fra utsiden av esken til innsiden, måtte jeg snu malen.
  3. Tape malen på utsiden av metallboksen som inneholder PC1616. Velg et sted som har nok plass til å ta imot Envisalink 3.
  4. Veldig sakte, ved hjelp av en 3/16 "metallbor og malen, borer du 3 hull i siden av metallboksen.
  5. Skyv plastforskyvningene inn i hullene fra innsiden av metallhuset
  6. Installer EV3 -kortet i metallboksen på plastforskyvningene.
  7. Fjern 1/4 "fra begge ender av de røde, svarte, grønne og gule ledningene (eller du kan kutte en RJ11-kabel og bruke ledningene inni). Selv om begge vil fungere, er solid termostattråd bedre enn vridd ledning fordi on- bordkontakter griper den solide ledningen fastere. Hvis du bruker vridd ledning, så vrir du ender tett, noe som vil gjøre det lettere å installere.
  8. Koble den svarte vekselstrømledningen fra DSC -kontrolleren. Dette er andre ledning (er) fra venstre. Vær forsiktig så du ikke lar den eksponerte enden av de svarte ledningene røre ved noe. Jeg pakket enden inn i elektrisk tape til jeg var ferdig med de neste trinnene. Hvis den svarte ledningen (r) berører noe, vil transformatoren kortere, og du må ringe et servicefirma for å erstatte den.
  9. Bruk en veldig liten flat skrutrekker til å montere fargede ledninger i passende spor på EV3.
  10. Løsne røde, grønne, gule og svarte skruer en for en på DSC-kontrolleren, men KUN nok til å skyve inn nye ledninger. Sett inn riktig farget ledning og stram til.
  11. Sett inn vekselstrøm (fjernet i G) til DSC -kontrolleren.
  12. Koble EnvisaLink 3 til ruteren ved hjelp av en CAT5e- eller CAT6 -kabel.

Trinn 7: Installer Momentary Power Push Button Toggle

Installer Momentary Power Push Button Toggle
Installer Momentary Power Push Button Toggle

Jeg hadde mange problemer med å programmere Envisalink og DSC -kontrolleren. Jeg fant å slå strømmen av og på for å få systemet tilbake til en kjent god tilstand. Senere la jeg til en kort trykknapp. Det er mange typer veksling. Den normalt lukkede er den som trengs.

A) Få en liten plastboks. Jeg brukte en tanntrådsveske, som er av den typen en tannlege kan gi deg etter en avtale. Fjern tanntråden og metallklipsene.

B) Bor to små hull for vekselstrømledningen

C) Bor eller skjær et hull for den midlertidige vekslingen. Jeg fant ut at det var lettere å bruke en exacto -kniv og deretter bore et hull. Åpne etuiet og kutt halvparten av hullet på den ene siden av åpningen og den andre halvdelen på den tilstøtende siden. Så når den midlertidige vekselen glir i den ene siden og når saken er lukket, er den midlertidige vekselen godt festet.

D) Fjern vekselstrøm fra Envisalink. Før vekselstrømsledningen gjennom et av de små hullene og koble til ledningen på den øyeblikkelige strømbryteren. Pakk inn elektrikerens tape.

E) Stripender av en 3-4 tommers ledning. Kjør den ene enden gjennom det andre lille hullet i saken og koble til den andre ledningen på momentan bryter. Pakk inn elektrisk tape.

F) Koble den andre ledningen fra den øyeblikkelige bryteren til Envisalink vekselstrømspor

G) Bruk tape for å forsegle etuiet

H) Sjekk om vekselen fungerer. Systemet skal normalt være på. Når du trykker på bryteren, slukker lysene på Envisalink.

Trinn 8: Registrer EnvisaLink 3

Når du er registrert, kan du ikke avregistrere deg. EyesOn samler inn dataene dine og kan oppgradere brettets programvare når som helst, uten varsel. Hvis jeg skulle gjøre dette igjen, ville jeg ikke gjort dette trinnet.

A) Åpne en nettleser og gå til www.eyezon.com, rullegardinmenyen Support og velg EnvisaLink 3 Primer Guide

B) Følg instruksjonene i primeren (Registrer, Logg inn, Legg til ny enhet osv.)

C) Brukernavn = [brukernavn]

D) Passord = [blikk på passord]

Trinn 9: Kontroller EnvisaLink 3 -installasjon

Åpne en nettleser og gå til ruterens hjemmeside.

  1. Åpne en nettleser
  2. Skriv inn [Router IP Address]
  3. På fanen Hjem blar du ned til Hjemmenettverksenheter

Min U-vers Residenial Gateway (eller ruter) viser noe som Image 1.

Rull ned til enheten, og den skal se ut som bilde 2.

En aktiv status betyr at kortet er installert og fungerer.

Klikk på Detaljer for å få IP -adressen til EnvisaLink. IP-adressen kan endres fra tid til annen.

Åpne en nettleser og skriv inn

[Envisalink IP -adresse]

Skriv inn brukernavn og passord:

[envisalink brukernavn]

[envislink passord]

Skriv inn brukernavn og passord fra installasjonsveiledningen. Nettleseren skal vise noe som bilde 3.

Trinn 10: Endre standardpassord på Envisalink 3

A) Åpne nettleseren

B) Gå til [Envisalink IP -adresse] /: 80

Et eksempel er 192.168.1.34/:80. /: 80 er porten.

C) I Endre brukerpassord”endre passord. Merk: standard brukernavn og passord er bruker

D) Ta opp [envisalink -passord]

Trinn 11: (snarvei) Generer mobilkobling [valgfritt]

Du trenger ikke å gjøre dette eller det neste trinnet, men hvis du vil bli ferdig, er dette et godt alternativ.

Eyez-On tilbyr en komplett overvåkingstjeneste. Den er enkel å bruke og fungerer godt. Hvis du vil bruke denne tjenesten, følger du instruksjonene i trinn 10 og 11. Ellers hopper du videre til trinn 12. Vær oppmerksom på at jeg gjorde både 10 og 11 og måtte deretter deaktivere dem. Begge tjenestene fungerte bra, og jeg hadde ingen problemer, jeg ville bare gjøre det selv.

A) Åpne nettleseren og gå til Eyez-On

B) Logg inn (i et tidligere trinn burde du ha opprettet en konto)

C) Velg Mobile Portal Link

D) Klikk på generer mobilkobling

www.eyez-on.com/EZMOBILE/index.php?mid=13b7d2f4e95b7d62dbcfb801a835064ee4406c79

E) Lenken er lang. Send den til din mobile enhet.

F) Åpne lenken på mobilenheten

G) Åpne et nytt nettleservindu eller en fane og gå til Eyez-On, velg støtte og velg EnvisAlarms Monitoring Primer fra rullegardinmenyen

H) Følg instruksjonene for å laste ned EV3 selvovervåkingsprogramvare

I) Følg instruksjonene for å konfigurere hvordan du vil overvåke

Trinn 12: Installer DSC Server -appen på din smarttelefon [valgfritt]

Du trenger ikke å gjøre dette eller det forrige trinnet, men hvis du vil bli ferdig, er dette et godt alternativ.

A) Gå til Android- eller Apple -butikken og kjøp DSC Security Server -appen fra Mike P.

Hvis du gjorde de to foregående trinnene, er du ferdig! Du bør kunne overvåke og kontrollere sikkerhetssystemet ditt eksternt.

Trinn 13: Viktige merknader om Envisalink 3 og PC1616

Kommunikasjon fra Envisalink 3 til EnvisAlerts bruker UDP. Kommunikasjon fra Envisalink 3 til script bruker TCP/IP.

Envisalink 3 Ethernet -port kommuniserer bare ved 10 Mbps. De fleste 1Gb eller 100Mb Ethernet-rutere og -brytere vil automatisk forhandle ned til 10Mbps.

I avsnitt 022 i PC1616 kan alternativ 1 ikke aktiveres. Dette alternativet krever en brukertilgangskode for å få tilgang til brukerfunksjoner som omgå soner, etc. Alternativet er slått av som standard.

Blankering av tastatur og omgåelse av soner må være slått av for at Envisalink skal fungere.

Trinn 14: Angre arbeidet i to tidligere trinn

I utgangspunktet registrerte jeg meg for Envisalerts og for Mike P’s app.

Siden jeg ikke vil sende sikkerhetsinformasjonen min sendt til internett, og jeg ikke vil at Envisalink 3 -programvaren skal oppdateres uten at jeg har det bra, måtte jeg blokkere Envisalink 3s tilgang til internett.

A) Åpne nettleseren

B) Gå til AT&T U-vers 3801HGV gateway. Skriv inn nettleserens URL -boks: 192.168.1.254

C) Logg inn på gateway

D) Gå hjem

E) Rull ned til Envisalink

F) Klikk på detaljer

  • Lagre MAC -adresse (aka maskinvareadresse) = [Envisalink MAC -adresse]
  • [Envisalink MAC -adresse] = 00: 1c: 2a: 00: 9d: 07

G) Gå til Innstillinger >> LAN >> Trådløst

H) Rull ned for å aktivere MAC -filtrering

I) Klikk på MAC -filtrering

  • Klikk på Rediger blokkerte/tillatte enhetslister
  • Klikk på Aktiver MAC -filtrering
  • Rull ned til Angi MAC -adresse

J) Lim inn MAC -adressen til Envisalink

K) Klikk på legg til i listen

L) Klikk >> for å gå til Blokkerte enheter

M) Rull opp og kontroller at MAC -filtrering er merket av

N) Og Envisalink bør blokkeres

Trinn 15: Samle nødvendig dokumentasjon og forstå hvordan systemet ditt er konfigurert

Jeg ønsket å forstå hvordan jeg kontrollerer sikkerhetssystemet. De beste kildene er:

Slik programmerer jeg et DSC -system - en opplæring - kreves for at jeg skal forstå TPI -dokumentet

EnvisaLink TM TPI Programmerers Document, versjon 1.04 - beskriver TPI -kommandosettet

Programmeringsark - et fryktelig, dårlig navngitt dokument, som beskriver sikkerhetssystemets konfigurasjon

Den forrige eieren forlot ikke et fullført programmeringsark. Jeg måtte fylle ut dette selv. I utgangspunktet brukte jeg tastaturet til å skrive inn kommandoer til jeg hadde funnet ut alt. Regnearket er et sted for å registrere systemets konfigurasjon. Ok, jeg løy. Bruk regnearket som en guide, men registrer systemets konfigurasjon i et dokument i normal størrelse.

Trinn 16: Tredjeparts grensesnitt (TPI) programmerers dokument

Tredjepartsgrensesnittet (TPI) er et sett med kommandoer, svar og feilkoder som lar tredjepartsapplikasjoner koble til EnvisaLink 3 via en TCP/IP-tilkobling. Jeg fant dette dokumentet veldig forvirrende. Jeg håper denne forklaringen hjelper til med å forklare dokumentet litt bedre.

Generelt er alle TPI -kommandoer, svar og feilkoder tre sifre:

  • Kommandoer er større enn eller lik 500
  • Svarene er mindre enn eller lik 200
  • Feilkoder er mellom 000 og 027, men svar er også i dette området

Data legges til slutten av en kommando eller et svar. For eksempel kan en påloggingskommando være:

005pswdCS / n / r

hvor,

pswd = er data, i dette tilfellet passordet ditt

Følgende er påkrevd:

  • CS = kontrollsum
  • n = ny linje tegn
  • r = vognretur

På nettet fant jeg mange implementeringer for å beregne kontrollsummen. Kontrollsummen er påkrevd, og mange implementeringer fungerte ikke. Jeg er ikke sikker på hvorfor så mange ikke jobbet for meg. Det kan være dårlig kode, eller det kan være forskjellige versjoner av brettet eller fastvareversjoner som kjører på brettet. Min kontrollsumkode fungerer for brettet og fastvaren.

EnvisaLink fungerer som en server for en TCP -tilkobling til et klientprogram. Klienten skal bare kjøre på en sikker server som kan kommunisere med EnvisaLink 3. Klientens server skal være på hjemmenettverket ditt, men bør ikke være åpent for internett. En selvsignert sertifikat kreves (se min andre instruksjon for en garasjeportåpner).

EnvisaLink lytter på port 4025 og godtar bare én klientforbindelse. Påfølgende forbindelser vil bli nektet. EnvisaLink stenger forbindelsen hvis klienten lukker siden.

Slik starter du en tilkobling:

  • Klienten starter en TCP -økt ved å etablere en TCP -sokkel.
  • Klienten sender en påloggingskommando [005]
  • EnvisaLink svarer med en eller flere [505]
  • Hvis [505] kommandodata er en 3, svarer du innen 10 sekunder med en påloggingskommando [005]
  • Hvis [505] data inneholder en 1, er pålogging vellykket

Innloggingskommandoens data er et passord på opptil seks tegn, som er det samme passordet for å logge inn på EnvisaLinks lokale webside.

Se 505 kommandobeskrivelse i TPI -håndboken for en beskrivelse av alle data.

Når passordet er godtatt, opprettes økten og vil fortsette til TCP -tilkoblingen brytes.

Trinn 17: Kommandolinje kontrollskript

Jeg brukte dokumenter fra forrige trinn for å utvikle et interaktivt python -skript som kan kjøres fra en kommandolinje i et Mac Book Terminal -vindu. Her er noen avklarende kommentarer:

  • Jeg kan ha gått litt over bord, men jeg tror alle kommandoene er i skriptet.
  • Kommandolinjens python-skript, ev3.py, kan lastes ned fra denne lenken: GitHub. Last ned ev3.py.
  • Kopier skriptet til en katalog [katalog].
  • Åpne et terminalvindu (Klikk på MacBook -disk, programmer, verktøy, terminal).
  • Jeg bruker et terminalvindu ofte. Så jeg har terminalappen festet til kaien.
  • Hvis du kjører fra en datamaskin, endrer du self.file_log = sys.stderr, som angitt i skriptet.
  • I terminalvinduet, bytt til katalogen og kjør skriptet:

$ cd [katalog]

$ python envisalink.py

  • Skriv [retur] for å se gyldige kommandoer.
  • Skriv [ctrl-c] for å avslutte programmet.

Trinn 18: Kort forklaring

Jeg vil sette eller overvåke sikkerhetssystemet fra en smarttelefon, nettbrett eller PC. En enkel løsning er å utvikle et nettsted.

Kommandolinjens python -skript overvåker sikkerhetssystemet og kan endre systemets tilstand. Det gir imidlertid ikke god ekstern visningsevne.

Et nettsted gir et utmerket grensesnitt for overvåking og endring av sikkerhetssystemet. Imidlertid kjører nettstedet bare når det blir sett. Mens kommandolinjeskriptet skal kjøre hele tiden. Når skriptet kjører, er det kanskje ingen som ser på nettstedet. Så dataene som samles inn av skriptet, bør lagres i en database til noen vil se det.

En bruker bør også kunne endre sikkerhetssystemets tilstand (tilkopling, frakobling). Når det skjer statlige endringer, bør endringene gjøres raskt.

Både skriptet og databasen er potensielle feilpunkter, et annet skript er nødvendig som regelmessig sjekker om alt fungerer og starter skriptet om nødvendig.

Trinn hoppet over

Du må gjøre disse trinnene (se instruksjonene for garasjeportåpneren for noen av disse trinnene)

A) Sett opp Raspberry Pi - faktisk kan du kjøre dette på hvilken som helst server

B) Installer python

C) Lag et selvsignert sertifikat og installer det på Raspberry Pi og alle enheter du vil ha tilgang til nettstedet

D) Blokker folk uten ditt selvsignerte sertifikat fra å få tilgang til sikkerhetssystemet ditt

Trinn 19: Installer SQLite

De vanlige DB -valgene er MySQL eller postgres. Denne appen trenger noe enkelt som en fil. Jeg visste at SQLite var det riktige valget da jeg leste,

  • https://sqlite.org/ er mindre enn MySQL eller postgres
  • SQLite konkurrerer med fopen. og
  • SQLite er ikke direkte sammenlignbart med MySQL, eller postgres fordi det prøver å løse et annet problem.

Her er en flott kilde for å sette opp SQLite: Installer SQLite på en Raspberry Pi

Logg inn på bringebæret og kjør kommandoen:

$ sudo apt-get install sqlite3

$ sudo apt-get install php5-sqlite

Lag databasen:

$ sqlite3 sikkerhet.db

Lag et bord

sqlite> BEGIN;

sqlite> CREATE TABLE status (tdate DATE, ttime TIME, name TEXT, value TEXT);

sqlite> KOMMITERE;

Sjekk at tabellen ble opprettet riktig:

sqlite>.skjemastatus

Tabellstatusen vil inneholde:

system: bevæpnet, avvæpnet

alarm: ingen, brann, panikk, varsel

soner [1-6]: åpen, lukket

script: tilkoblet, pålogget, kjører

Sett inn noen data i tabellen

sqlite> BEGIN;

sqlite> INSERT INTO status values (date ('now'), time ('now'), "system", "disarmed");

sqlite> INSERT INTO status values (date ('now'), time ('now'), "alarm", "none");

sqlite> INSERT INTO status values (date ('now'), time ('now'), "zone", "closed");

sqlite> INSERT INTO status values (date ('now'), time ('now'), "script", "running");

sqlite> INSERT INTO status values (date ('now'), time ('now'), "command", "");

sqlite> KOMMITERE;

Kontroller verdiene der de er angitt riktig

sqlite> SELECT * FROM status WHERE name = "zone";

2015-06-06 | 17: 39: 52 | sone1 | lukket

Avslutt SQLite

sqlite>.slutt

Flytt db og endre tilgang:

$ mv security.db /var/www/db/security.db

$ chmod og+rw/var/www/

$ chmod og+rw /var/www/db/security.db

Trinn 20: Installer SQLite på MacBook [valgfritt]

Jeg liker å utvikle meg på Mac og deretter flytte resultatene til Raspberry Pi.

Gå til nedlastingssiden på sqlite.org og last ned sqlite-autoconf-*. Tar.gz fra kildekodeseksjonen

Åpne nedlastinger fra din MacBook fra kontoen din

Klikk på den nedlastede tar.gx -filen

Åpne terminalvinduet

$ cd nedlastinger

$ cd sqlite-autoconf- [siste versjonsnummer]

$./configure --prefix =/usr/local

$ lage

Merke tar noen minutter, vær tålmodig.

$ sudo gjør installering

[MacBook -passord]

Bekreft at det fungerer:

$ sqlite3

sqlite>

Eller prøv

$ som sqlite3

Gjør trinnene i forrige trinn for å sette opp database, tabell og angi data på MacBook (eller bruk skriptet. Hvis db ikke eksisterer, vil det opprette og fylle ut).

Trinn 21: Å kommunisere mellom EnvisaLink 3 og Raspberry Pi Load Mod_wsgi

Trenger mod_wsgi for å få det til å fungere på Raspberry Pi.

Logg inn på Raspberry Pi:

$ ssh pi@[Raspberry Pi IP -adresse]

oppgi passord

deretter få mod-wsgi

$ sudo apt-get install libapache2-mod-wsgi

Slik kjører du ev3pi.py på Raspberry Pi -kommandolinjen:

$ sudo python ev3pi.py

Trinn 22: Last ned programvare fra GitHub

Endre kommandolinjeskriptet for å skrive til DB.

Dette er gode forklaringer på hvordan du kobler et python -script til SQLite:

  • SQLite fra python.org
  • SQLite fra python

Jeg endret koden for å snakke med SQLite. Du kan laste ned koden her: GitHub. Last ned ev3pi.py.

Åpne et terminalvindu og kopier kommandolinjens python -script til bringebær pi

$ scp ev3pi.py pi@:/home/pi

Logg inn på pi

$ ssh pi@

oppgi passord

Flytt skript til/usr/local/bin og endre rettigheter

$ ssh pi@

$ sudo mv ev3pi.py/usr/local/bin

$ sudo chmod ug+x /usr/local/bin/ev3pi.py

eller

$ sudo chmod 0755/usr/local/bin/ev3pi.py

Endre skriptet slik at det kjører på Raspberry Pi. Se kommentarene i koden. Sørg for å bruke db i /var/www/db/security.db

Oppdater nettstedet for å skrive kommandoer til DB

Ved å klikke på en sikkerhetskommando på nettstedet, skrives kommandoen til databasen.

Ved neste passering gjennom hovedsløyfen bør kommandoen leses og utføres.

Last ned security.php -koden her: GitHub. Last ned security.php.

bash script som sjekker om ev3pi.py kjører eller ikke

Hvis ev3pi.py slutter å kjøre av en eller annen grunn, bør den begynne å kjøre automatisk. Dette skriptet prøver å starte skriptet på nytt.

Last ned ev3chk.sh -koden her: GitHub. Last ned ev3chk.sh.

Python -skript som automatisk aktiverer og deaktiverer sikkerhetssystemet ved hjelp av en tidsplan

Dette skriptet bruker en tidsplan for å aktivere og deaktivere sikkerhetssystemet basert på brukerens angitte tidspunkt på dagen og ukedagen. Hvis feriefeltet er satt, blir tilkobling og frakobling ignorert.

Last ned ev3auto.py -koden her: GitHub. Last ned ev3auto.py.

Nettside for å vise status og Koble og deaktivere systemet

Dette er en ganske enkel webside, koblet til et større hjemmeautomatiseringssystem. Gi nytt navn til dette skriptet til indeksering, og plasser det i /var /www på din Raspberry Pi.

Last ned security.php -koden her: GitHub. Last ned security.php.

crontab for å sjekke om skriptet kjører

Rediger Crontab for å sikre at skriptene kjører.

Logg inn på Raspberry Pi

$ sudo crontab -e

#

# sjekk hvert 5. minutt om sikkerhetssystemet kjører

*/5 * * * * /usr/local/bin/ev3chk.sh>/dev/null 2> & 1

#

# sjekk hvert 15. minutt om sikkerhetssystemet er i god stand

*/15 * * * * /usr/local/bin/ev3auto.chk>/dev/null 2> & 1

Du kan laste ned crontab her: GitHub. Last ned crontab.

Anbefalt: