Indholdsfortegnelse:
- Trin 1: Fejlfinding og unikke data
- Trin 2: Find dit tastatur og kontrolpanelets modelnumre
- Trin 3: Kontroller, om EnvisaLink 3 er kompatibel med dit sikkerhedssystem
- Trin 4: Hent DSC -dokumentation
- Trin 5: Køb eller saml dele og værktøjer
- Trin 6: Installation af EnvisaLink 3
- Trin 7: Installer Momentary Power Push Button Toggle
- Trin 8: Registrer EnvisaLink 3
- Trin 9: Kontroller installationen af EnvisaLink 3
- Trin 10: Skift standardadgangskode på Envisalink 3
- Trin 11: (genvej) Generer mobillink [valgfrit]
- Trin 12: Installer DSC Server -appen på din smartphone [valgfrit]
- Trin 13: Vigtige bemærkninger om Envisalink 3 og PC1616
- Trin 14: Fortryd arbejdet i de to foregående trin
- Trin 15: Saml nødvendig dokumentation og forstå, hvordan dit system er konfigureret
- Trin 16: Tredjeparts grænseflade (TPI) programmerers dokument
- Trin 17: Command Line Control Script
- Trin 18: Kort forklaring
- Trin 19: Installer SQLite
- Trin 20: Installer SQLite på MacBook [valgfrit]
- Trin 21: At kommunikere mellem EnvisaLink 3 og Raspberry Pi Load Mod_wsgi
- Trin 22: Download software fra GitHub
Video: Internetaktiveret DSC Home Security System: 22 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Rediger et eksisterende DSC Home Security-system for at være internetaktiveret og selvovervåget.
Dette instruerbare forudsætter, at du har en fungerende Raspberry Pi.
Bemærk, at denne implementering har følgende mangler:
-
Hvis en tyv skærer i det kommende DSL-kabel, eller internettjenesten går tabt, deaktiveres overvågning fra Internettet
Fremtid: Løsningen på dette problem er at bruge en billig LTE-backup-tjeneste
-
DSC -sensorer angiver ikke, om dørene eller vinduerne er låst, kun at de er lukkede
Fremtid: Tilføj en trykknap, der aktiveres af dørlåsens bolt. Dette vil kræve betydeligt arbejde for at føre ledningerne uden at ødelægge dørkarmen
-
DSC understøtter integration af brandalarm. Dog er mit hjems brandalarm ikke integreret
Fremtid: integrer brandalarm i DSC kontrolpanel
-
Det installerede DSC -system har ikke en sensor til den overordnede garageport
Tidligere har jeg oprettet en Garage Door Opener instruerbar, og jeg kan læse, at døren er åben eller lukket
Målene med dette projekt er:
- Send advarsler om sikkerhedssystem til min mobiltelefon
- Kontroller eller indstil sikkerhedssystemets status fra en sikker webside
- Kør løsningen på en sikker hindbær pi (https og certs)
- Brug det eksisterende DSC-system til selvovervågning
- Tilføj EnvisaLink 3 for at tilføje Ethernet -understøttelse til DSC -systemet
- Skriv selvovervågningssoftware
- Opret en instruerbar til denne indsats
Bemærk: I dette dokument bør tekst, der er omsluttet [parenteser] erstattes med en faktisk værdi
Min familie har aldrig fået stjålet vores hjem, og vi bor i et område med lav kriminalitet. Der er ingen overbevisende grund til at lave dette projekt, bortset fra at det var interessant og sjovt.
Bemærk, at der er en glimrende genvej til denne instruktive. Når Envisalink 3 er i gang, kan du bruge den hyldeløsning, der leveres af Eyes-On, kaldet EnvisAlerts og EnvisAlarm, som sender advarsler og overvåger dit hjem og/eller en meget sej mobiltelefonapp kaldet DSC Security Server af Mike P. Jeg tilmeldte mig EnvisAlerts og købte Mike P's DSC Security Server. Jeg var meget tilfreds med begge dele, men ville have min egen version.
Trin 1: Fejlfinding og unikke data
Der er visse data, som jeg ofte refererer til, og jeg kan lide at inkludere disse data i fronten.
Alarm - aktiver og deaktiver
Sørg for, at alle døre og vinduer er lukkede. Indtast masterkoden på kontrolpanelet:
[master code] = [din master code]
Deaktiver telefonlinje
Mit hus har en fastnet telefon, men jeg har ikke fastnet service. Omkring 23:00 hver nat bipper systemet. Hvis systemet mister strøm, skal dette indtastes igen. For at deaktivere dette bip skal du indtaste følgende på tastaturet:
- Deaktiver telefonlinjen: *8 5555 015 7 ##
- Sluk telefonlinjetesttransmissioner *8 5555 371 9999 ##
- Sluk telefonopkaldet: *8 5555 380 1 ##
Envisalink Alert Server
Log ind på Envisaiink
Hent Envisalerts Server: 184.106.215.218
Åbn U-vers router: 192.168.1.254
Gå til Indstillinger, Firewall
Envisalink login
Åbn browser
Indtast Envisalink IP -adresse:
[envisalink brugernavn] = bruger
[envislink password] = [indtast din adgangskode]
Envisalink IP -adresse
[Envisalink IP -adresse] = 192.168.1.92
Eyes-on brugernavn og adgangskode
[eye-on brugernavn] = [dit envisalink brugernavn]
[eye-on password] = [din envisalink-adgangskode]
Installatørens kode
[Installatørkode] = [Indtast din installatørkode]
5555 er standardkoden. Du kan bede din installatør om koden, eller du kan foretage en fabriksnulstilling, hvilket sætter den tilbage til 5555. Jeg anbefaler ikke at foretage en fabriksnulstilling, fordi der er en betydelig mulighed for at beskadige systemet.
Master Code
[MasterCode] = [indtast din masterkode]
Raspberry Pi IP
[Raspberry Pi IP] = [indtast din Raspberry Pi IP -adresse, noget lignende 192.168.1.57]
Raspberry Pi -login fra Mac Book
Åbn terminal på Mac Book
ssh pi@[Raspberry Pi IP]
[Adgangskode]
Raspberry Pi adgangskode
Adgangskode = [din Raspberry Pi -adgangskode]
Router
Router IP -adresse = [indtast din routers IP -adresse]
Indstil DSC -tid og -dato
*611301hhmmMMDDYY#
hh er i militær tid, for pm tilføj 12. Så, 16:00 er 16
Zone programmering
Zone alarmtype
01 - Alarm efter levering af en forsinkelse (standard 60 sekunder) i tilstanden Stay or Away
03 - Alarm øjeblikkeligt, hvis den overtrædes i tilstanden Stay or Away
05 - Indvendig bevægelsessensor. Alarm øjeblikkeligt, hvis den kun overtrædes, når tilstanden Ude (omgår, når den er i ophold)
Indtast på tastaturet:
*8 [Installatørkode] 001 01 03 05 05 87 # #
Forklaring af ovenstående kodesekvens:
- *8 [Installatørkode]
- 001 - Dette får dig til zoneprogrammering for zoner
- 01 03 05 05 87 - Dette er min sekvens af zonealarmtyper, i zone rækkefølge fra 1 til 5.
- Alle zoner skal være korrekt indstillet.
- # # - Dette gemmer, hvad du har gjort, og får dig tilbage fra programmeringstilstand.
Trin 2: Find dit tastatur og kontrolpanelets modelnumre
Find tastaturets modelnummer. DSC -tastaturet er tæt på en dør (billede 1 & 2). I mit hus er der et tastatur ved garageporten og et ved hoveddøren.
Find kontrolpanelets modelnummer. Tastaturet har et klistermærke øverst, og modelnummeret er i midten. Min er en PK5501 (billede 3 & 4).
En anden måde at gøre dette på er:
- Åbn en browser på en computer
- Gå til
Mit kontrolpanel er placeret i en metalboks i et skab (billede 3). Åbn metalboksen, og i midten af kontrolpanelet er der et klistermærke med modelnummeret. Mit kontrolpanel modelnummer er PC1616 (billede 4).
Trin 3: Kontroller, om EnvisaLink 3 er kompatibel med dit sikkerhedssystem
Klik på linket eyeson.com.
Rul ned til panelkompatibilitet, og se om din er angivet. Hvis ikke tjek med EyesOn.
Trin 4: Hent DSC -dokumentation
DSC tilbyder en brugervejledning, men de fleste andre dokumenter kræver, at du er installatør
- For kontrolpanelet finder du installationsvejledningen, brugermanualen, referencehåndbogen og programmeringsarket.
- Find tastaturet i installationsvejledningen. Manualen jeg fandt var alle PDF -filer.
Flere ikke-DSC-kilder til DSC-manualer er tilgængelige online. DSC manualer er ikke påkrævet for denne instruktive. Disse er blot referencer, hvis du vil udvide det instruerbare, eller hvis dit system bruger forskellige dele.
LiveWatch.com er den bedste kilde til DSC -manualer. LiveWatch var også meget hjælpsom med at besvare spørgsmål og få mig til at stå fast. Jeg kunne ikke have gennemført dette instruerbare uden hjælp fra LiveWatch.
Trin 5: Køb eller saml dele og værktøjer
A) DSC -sikkerhedssystem med PK5501 -tastaturer, PC1616 -kontrolpanel og flere sensorer (vinduer, døre og bevægelse). Sikkerhedssystemet fulgte med hjemmet.
B) Bestil EnvisaLink 3 - $ 119 + S&H. www.eyezon.com
C) AT&T U-vers internetudbyder, DSL Gateway
D) 24-port NetGear Managed switch
E) Usynlig hundehegn eller termostatledning
F) CAT5E Ethernet -kabel
G) Fire 18-22 gauge AWG-ledninger på cirka 6 tommer lange (rød, sort gul, grøn)
H) Nålestang
I) Bor og 3/16”metalbor og meget lille bor
J) Sort elektrikerbånd
K) Meget lille flad skruetrækker (jeg har en til at fikse mine briller, når skruen falder ud)
L) SPST Mini Momentary Pushbutton Switch, normalt lukket
M) Lille plastikhus (tandtråd)
N) Exacto kniv
Trin 6: Installation af EnvisaLink 3
Jeg burde ikke have fulgt instruktionerne, der fulgte med EnvisLink 3.
Det første trin i instruktionerne er at afbryde strømmen fra PC1616. Jeg antog, at dette betød både vekselstrøm og batteriets backup -strøm. Jeg afbrød begge dele og måtte derefter ringe til en tekniker for at få tastaturerne tilbage online. Servicekaldet var $ 135.
- Min PC1616 er indesluttet i et metalhus. Find dit sikkerhedssystem PC1616 -kort.
- Brug EV3 til at oprette en papirskabelon til forskydningshullerne. Skabelonen bruges til at markere huller på metalhuset. Fordi det var lettere at skrue fra ydersiden af kassen til indersiden, var jeg nødt til at vende skabelonen.
- Tape skabelonen på ydersiden af metalboksen, der indeholder PC1616. Vælg et sted, der har nok plads til at rumme Envisalink 3.
- Meget langsomt, ved hjælp af en 3/16 "metalbor og skabelonen, bor 3 huller i siden af metalboksen.
- Skub plastforskydningerne ind i hullerne inde fra metalkassen
- Installer EV3 -kortet i metalboksen på plastforskydningerne.
- Fjern 1/4 "fra begge ender af de røde, sorte, grønne og gule ledninger (eller du kan klippe et RJ11-kabel og bruge ledningerne indeni). Selvom begge vil fungere, er solid termostattråd bedre end snoet ledning, fordi on- bordstik griber den faste tråd mere fast. Hvis du bruger snoet tråd, skal du sno enderne tæt, hvilket vil gøre det lettere at installere.
- Afbryd den sorte vekselstrøm fra DSC -controlleren. Dette er anden ledning fra venstre. Pas på ikke at lade den eksponerede ende af de sorte ledninger røre ved noget. Jeg pakkede enden ind i elektrisk tape, indtil jeg var færdig med de næste trin. Hvis den / de sorte ledninger rører ved noget, vil transformeren kortslutte, og du bliver nødt til at ringe til et servicevirksomhed for at udskifte.
- Brug en meget lille flad skruetrækker til at installere farvede ledninger i passende slots på EV3.
- Løsn en-for-en røde, grønne, gule og sorte skruer på DSC-controlleren, men KUN nok til at skubbe nye ledninger ind. Isæt den passende farvede tråd og stram.
- Sæt vekselstrøm i igen (fjernet i G) til DSC -controlleren.
- Brug et CAT5e- eller CAT6 -kabel til at slutte EnvisaLink 3 til routeren.
Trin 7: Installer Momentary Power Push Button Toggle
Jeg havde mange problemer med at programmere Envisalink og DSC Controller. Jeg fandt at slå strømmen fra og til igen for at få systemet tilbage til en kendt god tilstand. Senere tilføjede jeg et kortvarigt tryk på knappen. Der er mange typer skift. Den normalt lukkede er den nødvendige.
A) Få en lille plastikæske. Jeg brugte en tandtråds sag, som er den slags en tandlæge kan give dig efter en aftale. Fjern tandtråd og metalclips.
B) Bor to små huller til AC -ledningen
C) Bor eller skær et hul til den momentane skifte. Jeg fandt ud af, at det var lettere at bruge en exacto -kniv og derefter bore et hul. Åbn kassen og skær det halve hul på den ene side af åbningen og den anden halvdel på den tilstødende side. Så når den momentane skifte glider i den ene side, og når sagen er lukket, er den momentane skifte fastgjort.
D) Fjern vekselstrøm fra Envisalink. Kør vekselstrømskablet gennem et af de små huller, og tilslut ledningen til den øjeblikkelige afbryder. Pak elektrikerens tape ind.
E) Strimler ender af et 3-4 tommer stykke ledning. Kør den ene ende gennem det andet lille hul i sagen og tilslut den anden ledning på momentan switch. Wrap i elektrisk tape.
F) Tilslut 2. ledning fra den øjeblikkelige kontakt til Envisalink vekselstrømsstik
G) Brug tape til at forsegle sagen
H) Kontroller, om skift fungerer. Systemet skal normalt være tændt. Når der trykkes på kontakten, slukkes lysene på Envisalink.
Trin 8: Registrer EnvisaLink 3
Når du er registreret, kan du ikke afmelde dig. EyesOn indsamler dine data og kan opgradere din tavles software når som helst uden nogen meddelelse. Hvis jeg skulle gøre dette igen, ville jeg ikke gøre dette trin.
A) Åbn en browser, og gå til www.eyezon.com, rullemenuen Support, og vælg EnvisaLink 3 Primer Guide
B) Følg anvisningerne i primeren (Registrer, Login, Tilføj ny enhed osv.)
C) Brugernavn = [brugernavn]
D) Adgangskode = [adgangskode]
Trin 9: Kontroller installationen af EnvisaLink 3
Åbn en browser, og gå til din routers hjemmeside.
- Åbn en browser
- Indtast [Router IP -adresse]
- På fanen Start ruller du ned til Hjemmenetværksenheder
Min U-vers Residenial Gateway (eller router) viser noget som billede 1.
Rul ned til enheden, og det skal ligne billede 2.
En aktiv status betyder, at kortet er installeret og fungerer.
Klik på Detaljer for at få IP -adressen til EnvisaLink. IP-adressen kan ændre sig fra tid til anden.
Åbn en browser, og indtast
[Envisalink IP -adresse]
Indtast brugernavn og adgangskode:
[envisalink brugernavn]
[envislink adgangskode]
Indtast brugernavn og adgangskode fra installationsguiden. Browseren skal vise noget som billede 3.
Trin 10: Skift standardadgangskode på Envisalink 3
A) Åbn browser
B) Gå til [Envisalink IP -adresse] /: 80
Et eksempel er 192.168.1.34/:80. /: 80 er porten.
C) I Skift brugeradgangskode”skift adgangskode. Bemærk: standard brugernavn og adgangskode er bruger
D) Optag [envisalink -adgangskode]
Trin 11: (genvej) Generer mobillink [valgfrit]
Du behøver ikke at gøre dette eller det næste trin, men hvis du vil være færdig, så er dette en god mulighed.
Eyez-On tilbyder en komplet overvågningstjeneste. Det er let at bruge og fungerer godt. Hvis du vil bruge denne service, skal du følge instruktionerne i trin 10 og 11. Ellers springe videre til trin 12. Bemærk, jeg gjorde både 10 og 11 og måtte derefter deaktivere dem. Begge tjenester fungerede fint, og jeg havde ingen problemer, jeg ville bare gøre det selv.
A) Åbn browser og gå til Eyez-On
B) Login (i et tidligere trin skulle du have oprettet en konto)
C) Vælg Mobile Portal Link
D) Klik på generer mobillink
www.eyez-on.com/EZMOBILE/index.php?mid=13b7d2f4e95b7d62dbcfb801a835064ee4406c79
E) Linket er langt. Send den til din mobilenhed via e -mail.
F) Åbn linket på din mobilenhed
G) Åbn et andet browservindue eller en fane, og gå til Eyez-On, vælg support, og vælg EnvisAlarms Monitoring Primer fra rullemenuen
H) Følg anvisningerne for at downloade EV3-selvovervågningssoftware
I) Følg anvisningerne for at konfigurere, hvordan du vil overvåge
Trin 12: Installer DSC Server -appen på din smartphone [valgfrit]
Du behøver ikke at udføre dette trin eller det foregående, men hvis du vil være færdig, så er dette en god mulighed.
A) Gå til Android- eller Apple -butikken, og køb DSC Security Server -appen fra Mike P.
Hvis du gjorde de to foregående trin, så er du færdig! Du bør kunne overvåge og kontrollere dit sikkerhedssystem eksternt.
Trin 13: Vigtige bemærkninger om Envisalink 3 og PC1616
Kommunikation fra Envisalink 3 til EnvisAlerts bruger UDP. Kommunikation fra Envisalink 3 til script bruger TCP/IP.
Envisalink 3 Ethernet -porten kommunikerer kun ved 10 Mbps. De fleste 1Gb eller 100Mb Ethernet-routere og switches forhandler automatisk ned til 10Mbps.
I afsnit 022 i PC1616 kan option 1 ikke aktiveres. Denne indstilling kræver en brugeradgangskode for at få adgang til brugerfunktioner som omgåelse af zoner osv. Indstillingen er som standard deaktiveret.
Blankering af tastatur og zoneomgåelse skal være deaktiveret for at Envisalink kan fungere.
Trin 14: Fortryd arbejdet i de to foregående trin
I første omgang meldte jeg mig til Envisalerts og til Mike P’s app.
Da jeg ikke ønsker at sende mine sikkerhedsoplysninger sendt til internettet, og jeg ikke vil have, at Envisalink 3 -softwaren opdateres uden mit okay, havde jeg brug for at blokere Envisalink 3's adgang til internettet.
A) Åbn browser
B) Gå til AT&T U-vers 3801HGV gateway. Indtast i browserens URL -boks: 192.168.1.254
C) Log ind på gateway
D) Gå hjem
E) Rul ned til Envisalink
F) Klik på detaljer
- Gem MAC -adresse (også kaldet hardware -adresse) = [Envisalink MAC -adresse]
- [Envisalink MAC -adresse] = 00: 1c: 2a: 00: 9d: 07
G) Gå til Indstillinger >> LAN >> Trådløs
H) Rul ned for at aktivere MAC -filtrering
I) Klik på MAC -filtrering
- Klik på Rediger blokeret/tilladt enhedsliste
- Klik på Aktiver MAC -filtrering
- Rul ned til Indtast MAC -adresse
J) Indsæt Envisalinks MAC -adresse
K) Klik på tilføj til listen
L) Klik >> for at gå til blokerede enheder
M) Rul op, og kontroller, at afkrydsningsfeltet MAC -filtrering er markeret
N) Og Envisalink bør blokeres
Trin 15: Saml nødvendig dokumentation og forstå, hvordan dit system er konfigureret
Jeg ville forstå, hvordan man kontrollerer sikkerhedssystemet. De bedste kilder er:
Sådan programmeres et DSC -system - En vejledning - påkrævet for at jeg kan forstå TPI -dokumentet
EnvisaLink TM TPI Programmerers Document, version 1.04 - beskriver TPI -kommandosættet
Programmeringsark - et frygteligt, dårligt navngivet dokument, der beskriver dit sikkerhedssystems konfiguration
Den tidligere ejer forlod ikke et færdigt programmeringsark. Jeg var nødt til at udfylde dette selv. Grundlæggende brugte jeg tastaturet til at indtaste kommandoer, indtil jeg havde fundet ud af alt. Regnearket er et sted at registrere dit systems konfiguration. Okay, jeg løj. Brug regnearket som en vejledning, men registrer systemets konfiguration i et dokument i normal størrelse.
Trin 16: Tredjeparts grænseflade (TPI) programmerers dokument
Tredjepartsinterface (TPI) er et sæt kommandoer, svar og fejlkoder, der gør det muligt for tredjepartsprogrammer at kommunikere med EnvisaLink 3 over en TCP/IP-forbindelse. Jeg fandt dette dokument meget forvirrende. Jeg håber, at denne forklaring hjælper med at forklare dokumentet lidt bedre.
Generelt er alle TPI -kommandoer, svar og fejlkoder tre cifre:
- Kommandoer er større end eller lig med 500
- Svarene er mindre end eller lig med 200
- Fejlkoder er mellem 000 og 027, men svar er også i dette område
Data tilføjes til slutningen af en kommando eller et svar. For eksempel kan en login -kommando være:
005pswdCS / n / r
hvor,
pswd = er data, i dette tilfælde din adgangskode
Følgende kræves:
- CS = checksum
- n = ny linjetegn
- r = vognreturtegn
På nettet fandt jeg mange implementeringer til beregning af kontrolsummen. Tjeksummen er påkrævet, og mange implementeringer virkede ikke. Jeg er ikke sikker på, hvorfor så mange ikke fungerede for mig. Det kan være en dårlig kode, eller det kan være forskellige versioner af kortet eller firmwareversioner, der kører på kortet. Min checksum -kode fungerer til mit bord og firmware.
EnvisaLink fungerer som en server til en TCP -forbindelse til et klientprogram. Klienten bør kun køre på en sikker server, der kan kommunikere med EnvisaLink 3. Klientens server skal være på dit hjemmenetværk, men bør ikke være åbent for internettet. Et selvsigneret certifikat er påkrævet (se min anden instruktion til en garageportåbner).
EnvisaLink lytter på port 4025 og accepterer kun en klientforbindelse. Efterfølgende forbindelser nægtes. EnvisaLink lukker forbindelsen, hvis klienten lukker sin side.
Sådan starter du en forbindelse:
- Klienten starter en TCP -session ved at oprette en TCP -socket.
- Klienten sender en login -kommando [005]
- EnvisaLink svarer med en eller flere [505]
- Hvis [505] kommandodata er en 3, svarer du inden for 10 sekunder med en loginkommando [005]
- Hvis [505] data indeholder et 1, er login logget ud
Loginkommandoens data er en adgangskode på op til seks tegn, som er den samme adgangskode til at logge ind på EnvisaLinks lokale webside.
Se 505 kommandobeskrivelse i TPI -manualen for en beskrivelse af alle data.
Når adgangskoden er accepteret, oprettes sessionen og fortsætter, indtil TCP -forbindelsen afbrydes.
Trin 17: Command Line Control Script
Jeg brugte dokumenter fra det foregående trin til at udvikle et interaktivt python -script, der kunne køres fra en kommandolinje i et Mac Book Terminal -vindue. Her er nogle afklarende kommentarer:
- Jeg er måske gået lidt over bord, men jeg tror, at alle kommandoerne er i scriptet.
- Kommandolinjens python-script, ev3.py, kan downloades fra dette link: GitHub. Download ev3.py.
- Kopier scriptet til et bibliotek [bibliotek].
- Åbn et terminalvindue (Klik på MacBook -disk, Programmer, Hjælpeprogrammer, Terminal).
- Jeg bruger ofte et terminalvindue. Så jeg har terminalappen fastgjort til kajen.
- Hvis du kører fra en computer, skal du ændre self.file_log = sys.stderr, som angivet i scriptet.
- I terminalvinduet skal du skifte til biblioteket og udføre scriptet:
$ cd [bibliotek]
$ python envisalink.py
- Skriv [return] for at se gyldige kommandoer.
- Skriv [ctrl-c] for at afslutte programmet.
Trin 18: Kort forklaring
Jeg vil indstille eller overvåge sikkerhedssystemet fra en smartphone, tablet eller pc. En enkel løsning er at udvikle et websted.
Kommandolinjens python -script overvåger sikkerhedssystemet og kan ændre systemets tilstand. Det giver dog ikke god fjernvisningsevne.
Et websted giver en glimrende grænseflade til overvågning og ændring af sikkerhedssystemet. Webstedet "kører" imidlertid kun, når det bliver set. Mens kommandolinjescriptet skal køre hele tiden. Når scriptet kører, er der muligvis ingen, der kigger på webstedet. Så de data, der indsamles af scriptet, skal gemmes i en database, indtil nogen vil se det.
En bruger skal også være i stand til at ændre sikkerhedssystemets tilstand (til-, frakobling). Når der sker ændringer i staten, skal ændringerne foretages hurtigt.
Både scriptet og databasen er potentielle fejlpunkter, der er brug for et andet script, der periodisk kontrollerer, om alt fungerer, og genstarter scriptet, hvis det er nødvendigt.
Trin sprunget over
Du bliver nødt til at udføre disse trin (se Garage Door Opener instruerbar for nogle af disse trin)
A) Opsætning Raspberry Pi - faktisk kan du køre dette på enhver server
B) Installer python
C) Opret et selvsigneret certifikat, og installer det på Raspberry Pi og alle enheder, du vil have adgang til webstedet
D) Bloker folk uden dit selvsignerede certifikat fra at få adgang til dit sikkerhedssystem
Trin 19: Installer SQLite
De sædvanlige DB -valg er MySQL eller postgres. Denne app har brug for noget simpelt som en fil. Jeg vidste, at SQLite var det korrekte valg, da jeg læste,
- https://sqlite.org/ er mindre end MySQL eller postgres
- SQLite konkurrerer med fopen. og
- SQLite er ikke direkte sammenlignelig med MySQL eller postgres, fordi den forsøger at løse et andet problem.
Her er en god kilde til opsætning af SQLite: Installer SQLite på en Raspberry Pi
Log ind på hindbæret og kør kommandoen:
$ sudo apt-get installer sqlite3
$ sudo apt-get install php5-sqlite
Opret databasen:
$ sqlite3 sikkerhed.db
Opret et bord
sqlite> BEGYND;
sqlite> Opret status på tabel (tdate DATE, ttime TIME, name TEXT, value TEXT);
sqlite> KOMMIT;
Kontroller, at tabellen er oprettet korrekt:
sqlite>.skema status
Tabellen status vil indeholde:
system: bevæbnet, afvæbnet
alarm: ingen, brand, panik, alarm
zoner [1-6]: åben, lukket
script: forbundet, logget ind, kører
Indsæt nogle data i tabellen
sqlite> BEGYND;
sqlite> INSERT INTO status værdier (dato ('nu'), tid ('nu'), "system", "frakoblet");
sqlite> INDsæt i statusværdier (dato ('nu'), tid ('nu'), "alarm", "ingen");
sqlite> INSERT INTO status værdier (dato ('nu'), tid ('nu'), "zone", "lukket");
sqlite> INSERT INTO status værdier (dato ('nu'), tid ('nu'), "script", "kører");
sqlite> INSERT INTO status værdier (dato ('nu'), tid ('nu'), "kommando", "");
sqlite> KOMMIT;
Kontroller værdier, hvor de er indtastet korrekt
sqlite> SELECT * FROM status WHERE name = "zone";
2015-06-06 | 17: 39: 52 | zone1 | lukket
Afslut SQLite
sqlite>.afslut
Flyt db'en, og skift adgang:
$ mv security.db /var/www/db/security.db
$ chmod og+rw/var/www/
$ chmod og+rw /var/www/db/security.db
Trin 20: Installer SQLite på MacBook [valgfrit]
Jeg kan godt lide at udvikle mig på Mac og derefter flytte resultaterne til Raspberry Pi.
Gå til downloadsiden på sqlite.org, og download sqlite-autoconf-*. Tar.gz fra kildekodeafsnittet
Åbn downloads på din MacBook fra din konto
Klik på den downloadede tar.gx -fil
Åbn terminalvindue
$ cd downloads
$ cd sqlite-autoconf- [seneste versionsnummer]
$./configure --prefix =/usr/local
$ gøre
Mærket tager et par minutter, vær tålmodig.
$ sudo lav installation
[MacBook -adgangskode]
Bekræft, at det virker:
$ sqlite3
sqlite>
Eller prøv
$ hvilken sqlite3
Gentag trinene i forrige trin for at konfigurere database, tabel og indtaste data på MacBook (eller brug scriptet. Hvis db ikke findes, vil det oprette og udfylde).
Trin 21: At kommunikere mellem EnvisaLink 3 og Raspberry Pi Load Mod_wsgi
Har brug for mod_wsgi for at få det til at fungere på Raspberry Pi.
Log ind på Raspberry Pi:
$ ssh pi@[Raspberry Pi IP -adresse]
Indtast adgangskode
derefter få mod-wsgi
$ sudo apt-get install libapache2-mod-wsgi
For at køre ev3pi.py på Raspberry Pi kommandolinje:
$ sudo python ev3pi.py
Trin 22: Download software fra GitHub
Rediger kommandolinjescriptet til at skrive til DB.
Dette er gode forklaringer på tilslutning af et python -script til SQLite:
- SQLite fra python.org
- SQLite fra python
Jeg ændrede koden til at tale med SQLite. Du kan downloade koden her: GitHub. Download ev3pi.py.
Åbn et terminalvindue, og kopier kommandolinjens python -script til hindbær pi
$ scp ev3pi.py pi@:/home/pi
Log ind på pi
$ ssh pi@
Indtast adgangskode
Flyt script til/usr/local/bin, og skift privilegier
$ 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
Skift scriptet, så det kører på Raspberry Pi. Se kommentarer i kode. Sørg for at bruge db i /var/www/db/security.db
Opdater websted for at skrive kommandoer til DB
Ved at klikke på en sikkerhedskommando på webstedet, skrives kommandoen til databasen.
Ved den næste passage gennem hovedsløjfen skal kommandoen læses og udføres.
Download security.php -koden her: GitHub. Download security.php.
bash -script, der kontrollerer, om ev3pi.py kører eller ej
Hvis ev3pi.py af en eller anden grund holder op med at køre, skal den begynde at køre automatisk. Dette script forsøger at genstarte scriptet.
Download ev3chk.sh -koden her: GitHub. Download ev3chk.sh.
Python -script, der automatisk til- og frakobler sikkerhedssystemet ved hjælp af en tidsplan
Dette script bruger en tidsplan til at aktivere og deaktivere sikkerhedssystemet baseret på brugerens indtastede tidspunkt på dagen og ugedagen. Hvis feriefeltet er indstillet, ignoreres tilkobling og frakobling.
Download ev3auto.py -koden her: GitHub. Download ev3auto.py.
Webside for at vise status og til- og frakobling af systemet
Dette er en ret simpel webside, der er forbundet til et større hjemmeautomatiseringssystem. Omdøb dette script til at indeksere, og placer i /var /www på din Raspberry Pi.
Download security.php -koden her: GitHub. Download security.php.
crontab for at kontrollere, om scriptet kører
Rediger Crontab for at sikre, at scripts kører.
Log ind på Raspberry Pi
$ sudo crontab -e
#
# tjek hvert 5. minut, om sikkerhedssystemet kører
*/5 * * * * /usr/local/bin/ev3chk.sh>/dev/null 2> & 1
#
# tjek hvert 15. minut, om sikkerhedssystemet er i god stand
*/15 * * * * /usr/local/bin/ev3auto.chk>/dev/null 2> & 1
Du kan downloade crontab her: GitHub. Download crontab.
Anbefalede:
Pizero Motion Detect Webcam Security System: 3 trin
Pizero Motion Detect Webcam Security System: Dette system bruger en pizero, wifi dongle og et gammelt webcam i et tilpasset tændstikæskehus. Det optager bevægelsesdetekterende videoer ved 27 fps af enhver væsentlig bevægelse på min indkørsel. Det uploader derefter klipene til en dropbox -konto. Kan også se logfiler og
IOT Home Security System: 3 trin
IOT Home Security System: En af de mest nyttige IoT -applikationer er hjemmesikkerhed. Forestil dig en tyv, der skærer din sikkerhedskamera-ledning, mens du prøver at bryde ind i dit hus, det sker ikke, hvis dit sikkerhedssystem går trådløst og smart
Internetaktiveret stikkontakt: 13 trin
Internetaktiveret stikkontakt: PowerHub Webserver Project & Internet Aktiveret Outlet Setup Instruktioner Central datapersistens -hub til internetaktiveret lys og stikkontakter i dit hjem
Arduino Home Security System: 7 trin (med billeder)
Arduino Home Security System: Dette er et Home Security System, der bruger Arduino Mega 2560, som vil udløse alarm, når en dør åbnes eller bevægelse registreres i rummet, når systemet aktiveres. Det er et dejligt projekt for alle i sidste år på universitetet. du kan opgradere det ev
Oversigt: Home Entertainment og Security System: 6 trin
Oversigt: Home Entertainment and Security System: Om applikationen Dette IOT -system er et Home Entertainment and Security System. Sikkerhed Tryk på RFID -kort og input gemmes i Firebase. Hvis det er autoriseret, kan du gå ind fredeligt, og billedet tages og uploades til S3 Hvis uautoriseret, forsvarssek