INHOUDSOPGAWE:

Internet -geaktiveerde DSC Home Security System: 22 stappe
Internet -geaktiveerde DSC Home Security System: 22 stappe

Video: Internet -geaktiveerde DSC Home Security System: 22 stappe

Video: Internet -geaktiveerde DSC Home Security System: 22 stappe
Video: Contract seating and how to choose the right office chair | Posturite Webinars 2024, November
Anonim

Verander 'n bestaande DSC Home Security-stelsel sodat dit op die internet aangeskakel en self gemonitor kan word.

Hierdie instruksies veronderstel dat u 'n werkende Raspberry Pi het.

Let daarop dat hierdie implementering die volgende tekortkominge het:

  • As 'n dief die inkomende DSL-kabel sny of die internetdiens verlore gaan, word die monitering vanaf die internet uitgeskakel

    Toekoms: die oplossing vir hierdie probleem is om 'n lae-koste LTE-rugsteundiens te gebruik

  • DSC -sensors dui nie aan of die deure of vensters gesluit is nie, net dat hulle gesluit is

    Toekoms: voeg 'n drukknop in wat deur die deurslot se bout geaktiveer word. Dit sal aansienlike werk verg om die bedrading uit te voer sonder om die deurstamp te vernietig

  • DSC ondersteun integrasie van brandalarm. Die brandalarm van my huis is egter nie geïntegreer nie

    Toekoms: integreer brandalarm in die DSC -bedieningspaneel

  • Die geïnstalleerde DSC -stelsel het nie 'n sensor vir die motorhuisdeur nie

    Ek het vroeër 'n instruksies vir 'n garagedeuropener geskep en ek kan lees dat die deur oop of toe is

Die doelwitte van hierdie projek is om:

  • Stuur sekuriteitstelselwaarskuwings na my selfoon
  • Gaan die sekuriteitstelselstatus na of stel dit op 'n veilige webbladsy in
  • Begin die oplossing op 'n veilige framboospi (https en sertifikate)
  • Gebruik die bestaande DSC-stelsel om self te monitor
  • Voeg EnvisaLink 3 by om Ethernet -ondersteuning by die DSC -stelsel te voeg
  • Skryf selfmoniteringsagteware
  • Skep 'n instruksies vir hierdie poging

Let wel: In hierdie dokument moet die teks wat in [vierkantige hakies] is, vervang word met 'n werklike waarde

My gesin is nog nooit beroof nie, en ons woon in 'n gebied met 'n lae misdaadvlak. Daar is geen dwingende rede om hierdie projek te doen nie, behalwe dat dit interessant en lekker was.

Let daarop dat hierdie instruksie 'n uitstekende kortpad is. Sodra die Envisalink 3 aan die gang is, kan u die oplossing wat deur Eyes-On aangebied word, genaamd EnvisAlerts en EnvisAlarm, gebruik wat waarskuwings stuur en u huis en/of 'n baie gawe selfoon-app genaamd DSC Security Server stuur. deur Mike P. Ek het by EnvisAlerts aangemeld en Mike P se DSC Security Server gekoop. Ek was baie tevrede met albei, maar wou my eie weergawe hê.

Stap 1: Probleemoplossing en unieke data

Daar is sekere data waarna ek gereeld verwys, en ek hou daarvan om hierdie data aan die voorkant op te neem.

Alarm - aktiveer en deaktiveer

Maak seker dat alle deure en vensters toe is. Voer die hoofkode op die bedieningspaneel in:

[master code] = [jou master code]

Skakel telefoonlyn uit

My huis het 'n telefoonlyn, maar ek het nie 'n vaste diens nie. Omstreeks 23:00 elke aand piep die stelsel. As die stelsel krag verloor, moet dit weer ingevoer word. Om hierdie piep uit te skakel, voer die volgende in op die klavier:

  • Skakel die telefoonlyn uit: *8 5555 015 7 ##
  • Skakel telefoonlyn -toetsuitsendings uit *8 5555 371 9999 ##
  • Skakel die telefoonbeller uit: *8 5555 380 1 ##

Envisalink Alert Server

Teken in by Envisaiink

Kry Envisalerts Server: 184.106.215.218

Maak U-vers-router oop: 192.168.1.254

Gaan na Instellings, Firewall

Aanmelding by envisalink

Maak blaaier oop

Voer Envisalink IP -adres in:

[envisalink gebruikersnaam] = gebruiker

[envislink password] = [voer u wagwoord in]

Envisalink IP -adres

[Envisalink IP -adres] = 192.168.1.92

Oog-op gebruikersnaam en wagwoord

[oog-op gebruikersnaam] = [u gebruikersnaam vir envisalink]

[oog-op wagwoord] = [u wagwoord vir voorskakel]

Installeerder se kode

[Installer's Code] = [Voer u installateurskode in]

5555 is die verstekkode. U kan die kode van u installeerder vra, of u kan die fabriek herstel, wat dit terugbring na 5555. Ek raai u nie af om 'n fabrieksinstelling te doen nie, want daar is 'n aansienlike moontlikheid om die stelsel te beskadig.

Meester Kode

[MasterCode] = [voer u hoofkode in]

Framboos Pi IP

[Raspberry Pi IP] = [voer u Raspberry Pi IP -adres in, iets soos 192.168.1.57]

Raspberry Pi -aanmelding vanaf Mac Book

Open die terminale op Mac Book

ssh pi@[Raspberry Pi IP]

[Wagwoord]

Raspberry Pi wagwoord

Wagwoord = [jou Raspberry Pi wagwoord]

Router

Router IP -adres = [voer die router se IP -adres in]

Stel DSC -tyd en -datum in

*611301hhmmMMDDYY#

hh is in militêre tyd, vir pm voeg 12. Dus, 16:00 is 16

Zone programmering

Sone alarm tipe

01 - Wekker nadat 'n vertraging (standaard 60 sekondes) in die weg- of wegmodus verskaf is

03 - Alarm onmiddellik as dit oortree word in die modus Stay or Away

05 - Bewegingsensor binne. Wekker onmiddellik as dit slegs oortree word as die Weg -modus (omseil tydens verblyf)

Voer op die klavier in:

*8 [Installeerderkode] 001 01 03 05 05 87 # #

Verduideliking van bogenoemde kodevolgorde:

  • *8 [Installeerder se kode]
  • 001 - Dit bring u by die programmering van sones vir sones
  • 01 03 05 05 87 - Dit is my reeks sone alarmtipes, in sone volgorde van 1 tot 5.
  • Alle sones moet behoorlik ingestel word.
  • # # - Dit bespaar wat u gedoen het en bring u weer uit die programmeermodus.

Stap 2: Soek die modelnommers van u sleutelbord en bedieningspaneel

Soek u modelnommers vir die sleutelbord en die bedieningspaneel
Soek u modelnommers vir die sleutelbord en die bedieningspaneel
Soek u modelnommers vir die sleutelbord en die bedieningspaneel
Soek u modelnommers vir die sleutelbord en die bedieningspaneel
Soek u modelnommers vir die sleutelbord en die bedieningspaneel
Soek u modelnommers vir die sleutelbord en die bedieningspaneel
Soek u modelnommers vir die sleutelbord en die bedieningspaneel
Soek u modelnommers vir die sleutelbord en die bedieningspaneel

Soek die toetsnommer se modelnommer. Die DSC -klavier is naby 'n deur (prent 1 en 2). In my huis is daar een klavier by die motorhuisdeur en een by die voordeur.

Soek die modelnommer van die bedieningspaneel. Die sleutelbord het 'n plakker aan die bokant, en die modelnommer is in die middel. Myne is 'n PK5501 (prent 3 en 4).

'N Ander manier om dit te doen is:

  • Maak 'n blaaier op 'n rekenaar oop
  • Gaan na

My bedieningspaneel is in 'n metaalkas in 'n kas (prent 3). Maak die metaalkas oop en in die middel van die bedieningspaneel is 'n plakker met die modelnommer. My modelnommer op die bedieningspaneel is PC1616 (prent 4).

Stap 3: Kyk of EnvisaLink 3 versoenbaar is met u sekuriteitstelsel

Klik op die skakel op eyeson.com.

Rol af na paneelversoenbaarheid en kyk of u s'n gelys is. Indien nie, kontak EyesOn.

Stap 4: Kry DSC -dokumentasie

DSC bied 'n gebruikershandleiding aan, maar die meeste ander dokumente vereis dat u 'n installeerder moet wees

  • Vir die bedieningspaneel, vind u die installeringshandleiding, gebruikershandleiding, naslaanhandleiding en programmeerblad.
  • Vir die bedieningspaneel, vind die installasiehandleiding. Die handleiding wat ek gevind het, was almal PDF -lêers.

Verskeie nie-DSC-bronne van DSC-handleidings is aanlyn beskikbaar. DSC -handleidings is nie nodig vir hierdie instruksies nie. Dit is slegs verwysings as u die instruksies wil uitbrei of as u stelsel verskillende dele gebruik.

LiveWatch.com is die beste bron van DSC -handleidings. LiveWatch was ook baie behulpsaam met die beantwoording van vrae en om my los te maak. Ek kon hierdie instruksies nie voltooi het sonder die hulp van LiveWatch.

Stap 5: Koop of versamel onderdele en gereedskap

A) DSC -sekuriteitstelsel met PK5501 -klavier, PC1616 -bedieningspaneel en verskeie sensors (vensters, deure en beweging). Die sekuriteitstelsel het saam met die huis gekom.

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

C) AT&T U-vers internetverskaffer, DSL Gateway

D) 24-poort NetGear Managed-skakelaar

E) Onsigbare hondeheining of termostaatdraad

F) CAT5E Ethernet -kabel

G) Vier 18-22 meter AWG-drade ongeveer 6 duim lank (rooi, swart geel, groen)

H) Naald tang

I) Boor en 3/16”metaalboor en baie klein boorpunt

J) Swart elektrisiën se band

K) Baie klein platskroewedraaier (ek het een om my bril reg te maak as die skroef val)

L) SPST Mini kortstondige drukknopskakelaar, normaal gesluit

M) Klein plastiekkas (tandvlos)

N) Exacto -mes

Stap 6: Installasie van EnvisaLink 3

Installasie van EnvisaLink 3
Installasie van EnvisaLink 3
Installasie van EnvisaLink 3
Installasie van EnvisaLink 3

Ek moes nie die instruksies by die EnvisLink 3 gevolg het nie.

Die eerste stap in die instruksies is om die krag van die PC1616 af te skakel. Ek het aangeneem dat dit beide die wisselstroom en die rugsteun van die battery beteken. Ek het albei ontkoppel en moes toe 'n oproep na 'n tegnikus maak om die bedieningspanele weer aanlyn te kry. Die diensoproep was $ 135.

  1. My PC1616 is omhul in 'n metaalkas. Vind u sekuriteitstelsel PC1616 -bord.
  2. Gebruik die EV3 om 'n papiersjabloon vir die offsetgate te maak. Die sjabloon word gebruik om gate op die metaalkas te merk. Omdat dit makliker was om van die buitekant van die boks na binne te skroef, moes ek die sjabloon omdraai.
  3. Plak die sjabloon aan die buitekant van die metaalkas met die PC1616 vas. Kies 'n plek met genoeg ruimte vir die Envisalink 3.
  4. Boor baie stadig, met 'n 3/16 "metaalboorpunt en die sjabloon, 3 gate aan die kant van die metaalkas.
  5. Druk van die binnekant van die metaalhouer die plastiekverskuiwings in die gate in
  6. Installeer die EV3 -bord in die metaalkas op die plastiekverskuiwings.
  7. Trek 1/4 "van beide kante van die rooi, swart, groen en geel drade af (of jy kan 'n RJ11-kabel sny en die drade binne gebruik). bordverbindings gryp die soliede draad stewiger vas. As u gedraaide draad gebruik, draai die punte styf, wat dit makliker sal maak om te installeer.
  8. Ontkoppel die swart wisselstroomkabel van die DSC -beheerder. Dit is die tweede draad (s) van links. Wees versigtig dat die blootgestelde kant van die swart draad (e) nie aan iets raak nie. Ek het die punt in elektriese band toegedraai totdat ek die volgende stappe voltooi het. As die swart draad (e) aan iets raak, sal die transformator kortkom en u moet 'n diensonderneming skakel om dit te vervang.
  9. Installeer gekleurde drade met 'n baie klein platkopskroewedraaier in die toepaslike gleuwe op EV3.
  10. Draai rooi, groen, geel en swart skroewe een-vir-een op die DSC-kontroleerder los, maar SLEGS genoeg om nuwe drade in te skuif. Plaas die gepaste gekleurde draad en trek dit vas.
  11. Plaas wisselstroom (verwyder in G) weer in die DSC -beheerder.
  12. Koppel EnvisaLink 3 aan 'n router met 'n CAT5e- of CAT6 -kabel.

Stap 7: Installeer die kortstondige kragknoppie -skakelaar

Installeer Momentary Power Push Button Toggle
Installeer Momentary Power Push Button Toggle

Ek het baie probleme ondervind met die programmering van die Envisalink en DSC Controller. Ek het gevind dat die krag weer aan en af is, sodat die stelsel weer in 'n goeie toestand is. Later het ek 'n kort drukknoppie -skakelaar bygevoeg. Daar is baie soorte wissel. Die normaal gesluit is die een wat nodig is.

A) Kry 'n klein plastiekboks. Ek het 'n tandvloskas gebruik, die soort wat 'n tandarts jou na 'n afspraak kan gee. Verwyder die floss en die metaalknipsels.

B) Boor twee klein gaatjies vir die wisselstroomdraad

C) Boor of sny 'n gat vir die kortstondige wissel. Ek het gevind dat dit makliker was om 'n exacto -mes te gebruik en dan 'n gat te boor. Maak die kas oop en sny die helfte van die gat aan die een kant van die opening en die ander helfte aan die aangrensende kant. Dus, as die kortstondige skakelaar aan die een kant gly en die omhulsel gesluit word, word die kortstondige skakelaar stewig vasgemaak.

D) Verwyder wisselstroom van Envisalink. Dra netkragdraad deur een van die klein gaatjies en maak 'n aansluiting op 'n kortstondige skakelaar. Draai die band van die elektrisiën toe.

E) Trek punte van 'n stuk van 3-4 duim af. Draai die een kant deur die ander klein gaatjie in die omhulsel en maak 'n oombliklike skakelaar aan die ander kabel. Draai elektriese band toe.

F) Koppel die tweede draad van die oombliklike skakelaar aan die Envisalink wisselstroomgleuf

G) Gebruik kleefband om die kas te verseël

H) Kyk of die skakelaar werk. Die stelsel moet normaalweg aan wees. As die skakelaar ingedruk word, gaan die ligte op die Envisalink af.

Stap 8: Registreer EnvisaLink 3

Sodra u geregistreer is, kan u nie afmeld nie. EyesOn versamel u data en kan die sagteware van u bord te eniger tyd opgradeer sonder enige kennisgewing. As ek dit weer sou doen, sou ek nie hierdie stap gedoen het nie.

A) Maak 'n blaaier oop en gaan na www.eyezon.com, Ondersteuningslys en kies EnvisaLink 3 Primer Guide

B) Volg die aanwysings in die onderlaag (registreer, aanmeld, voeg nuwe toestel by, ens.)

C) Gebruikersnaam = [gebruikersnaam]

D) wagwoord = [wagwoord]

Stap 9: Gaan die installering van EnvisaLink 3 na

Maak 'n blaaier oop en gaan na die tuisblad van u router.

  1. Maak 'n blaaier oop
  2. Voer [Router IP -adres] in
  3. Blaai op die tuisblad af na tuisnetwerktoestelle

My U-vers Residenial Gateway (of router) toon iets soos Image 1.

Rol af na die toestel, en dit moet soos prent 2 lyk.

'N Aktiewe status beteken dat die bord geïnstalleer en werk.

Klik op Details om die IP -adres van die EnvisaLink te kry. Die IP-adres kan van tyd tot tyd verander.

Maak 'n blaaier oop en voer in

[Envisalink IP -adres]

Voer gebruikersnaam en wagwoord in:

[envisalink gebruikersnaam]

[wagwoord skakel]

Voer gebruikersnaam en wagwoord in die installeringsgids in. Die blaaier moet iets soos beeld 3 wys.

Stap 10: Verander standaardwagwoord op Envisalink 3

A) Maak blaaier oop

B) Gaan na [Envisalink IP -adres] /: 80

'N Voorbeeld is 192.168.1.34/:80. Die /: 80 is die poort.

C) Verander wagwoord in verander gebruikerswagwoord. Let wel: die standaard gebruikersnaam en wagwoord is die gebruiker

D) Teken [envisalink wagwoord] op

Stap 11: (kortpad) Genereer mobiele skakel [opsioneel]

U hoef nie hierdie of die volgende stap te doen nie, maar as u klaar wil wees, is dit 'n goeie opsie.

Eyez-On bied 'n volledige moniteringsdiens aan. Dit is maklik om te gebruik en werk goed. As u hierdie diens wil gebruik, volg dan die instruksies in stap 10 en 11. Gaan andersins deur na stap 12. Let op, ek het 10 en 11 gedoen en moes dit dan deaktiveer. Beide dienste het goed gewerk en ek het geen probleme gehad nie; ek wou dit self doen.

A) Maak die blaaier oop en gaan na Eyez-On

B) Teken in (in 'n vorige stap moes u 'n rekening geskep het)

C) Kies Mobile Portal Link

D) Klik op genereer mobiele skakel

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

E) Die skakel is lank. Stuur dit per e -pos na u mobiele toestel.

F) Maak die skakel op u mobiele toestel oop

G) Maak 'n ander blaaiervenster of -oortjie oop en gaan na Eyez-On, kies ondersteuning en kies EnvisAlarms Monitoring Primer in die keuselys

H) Volg die aanwysings om die EV3-selfmoniteringsagteware af te laai

I) Volg die aanwysings om op te stel hoe u wil monitor

Stap 12: Installeer die DSC Server -app op u slimfoon [opsioneel]

U hoef nie hierdie of die vorige stap te doen nie, maar as u klaar wil wees, is dit 'n goeie opsie.

A) Gaan na die Android- of Apple -winkel en koop die DSC Security Server -app van Mike P.

As u die twee vorige stappe gedoen het, is u klaar! U moet u sekuriteitstelsel op afstand kan monitor en beheer.

Stap 13: Belangrike aantekeninge oor Envisalink 3 en PC1616

Kommunikasie van Envisalink 3 na EnvisAlerts gebruik UDP. Kommunikasie van Envisalink 3 na script gebruik TCP/IP.

Die Envisalink 3 Ethernet -poort kommunikeer slegs teen 10 Mbps. Die meeste 1 Gb- of 100 Mb Ethernet-routers en skakelaars onderhandel outomaties tot 10 Mbps.

In afdeling 022 van die PC1616 kan opsie 1 nie geaktiveer word nie. Hierdie opsie vereis 'n gebruikers toegangskode om toegang te verkry tot gebruikersfunksies soos omseilingsones, ens. Die opsie is standaard afgeskakel.

Sleutelbordblanking en omseil van sones moet af wees sodat die Envisalink kan werk.

Stap 14: Ontdoen die werk in vorige twee stappe

Aanvanklik het ek aangemeld by Envisalerts en vir Mike P se app.

Aangesien ek nie my veiligheidsinligting na die internet wil stuur nie, en ek wil nie hê dat die Envisalink 3 -sagteware opgedateer word sonder dat ek goed is nie, moes ek die Envisalink 3 se toegang tot die internet blokkeer.

A) Maak blaaier oop

B) Gaan na AT&T U-vers 3801HGV gateway. Tik in die URL -boks van die blaaier: 192.168.1.254

C) Meld aan by gateway

D) Gaan huis toe

E) Blaai af na Envisalink

F) Klik op besonderhede

  • Stoor MAC -adres (ook bekend as hardware address) = [Envisalink MAC -adres]
  • [Envisalink MAC -adres] = 00: 1c: 2a: 00: 9d: 07

G) Gaan na Instellings >> LAN >> Draadloos

H) Rol af om MAC -filter moontlik te maak

I) Klik op MAC -filter

  • Klik op Wysig geblokkeerde/toegelate toestellys
  • Klik op Aktiveer MAC -filter
  • Blaai af na Tik MAC -adres

J) Plak MAC -adres van Envisalink

K) Klik op add to list

L) Klik >> om na Geblokkeerde toestelle te gaan

M) Rol op en maak seker dat die keusevak vir MAC -filter gemerk is

N) En Envisalink moet geblokkeer word

Stap 15: Versamel nodige dokumentasie en verstaan hoe u stelsel gekonfigureer is

Ek wou verstaan hoe om die veiligheidstelsel te beheer. Die beste bronne is:

Hoe om 'n DSC -stelsel te programmeer - 'n handleiding - wat ek nodig het om die TPI -dokument te verstaan

EnvisaLink TM TPI -programmeerdersdokument, weergawe 1.04 - beskryf die TPI -opdragstel

Programwerkblad - 'n aaklige, swak genoemde dokument wat die opset van u sekuriteitstelsel beskryf

Die vorige eienaar het nie 'n voltooide programmeringswerkblad agtergelaat nie. Ek moes dit self invul. Eintlik het ek die toetsbord gebruik om opdragte in te voer totdat ek alles agtergekom het. Die werkblad is 'n plek om die konfigurasie van u stelsel op te neem. Goed, ek het gelieg. Gebruik die werkblad as 'n gids, maar teken die konfigurasie van u stelsel op in 'n normale grootte dokument.

Stap 16: Programmeerdokument van derde party -koppelvlak (TPI)

Die derdeparty-koppelvlak (TPI) is 'n stel opdragte, antwoorde en foutkodes waarmee derdeparty-toepassings met die EnvisaLink 3 via 'n TCP/IP-verbinding kan koppel. Ek vind hierdie dokument baie verwarrend. Ek hoop dat hierdie verduideliking die dokument 'n bietjie beter kan verduidelik.

Oor die algemeen is alle TPI -opdragte, antwoorde en foutkodes drie syfers:

  • Opdragte is groter as of gelyk aan 500
  • Antwoorde is minder as of gelyk aan 200
  • Foutkodes is tussen 000 en 027, maar antwoorde is ook in hierdie reeks

Data word bygevoeg aan die einde van 'n bevel of antwoord. Byvoorbeeld, 'n aanmeldopdrag kan wees:

005pswdCS / n / r

waar,

pswd = is data, in hierdie geval, u wagwoord

Die volgende is nodig:

  • CS = kontrolesom
  • n = nuwe lyn karakter
  • r = vervoer terugkarakter

Op die internet het ek baie implementerings gevind om die kontrolesom te bereken. Die kontrolesom is nodig, en baie implementerings het nie gewerk nie. Ek is nie seker hoekom so baie nie vir my gewerk het nie. Dit kan 'n slegte kode wees, of dit kan verskillende weergawes van die bord of firmware -weergawes op die bord wees. My kontrolesomkode werk vir my bord en firmware.

Die EnvisaLink dien as 'n bediener vir 'n TCP -verbinding met 'n kliëntetoepassing. Die kliënt moet slegs op 'n veilige bediener werk wat met die EnvisaLink 3. kan kommunikeer. Die bediener van die kliënt moet op u tuisnetwerk wees, maar moet nie oop wees vir die internet nie.'N Selfondertekende sertifikaat word vereis (sien my ander instruksie vir 'n garagedeuropener).

Die EnvisaLink luister na poort 4025 en aanvaar slegs een kliëntverbinding. Daaropvolgende verbindings sal geweier word. Die EnvisaLink sluit die verbinding as die kliënt sy kant sluit.

Om 'n verbinding te begin:

  • Kliënt begin 'n TCP -sessie deur 'n TCP -aansluiting te vestig.
  • Kliënt stuur 'n aanmeldopdrag [005]
  • EnvisaLink reageer met een of meer [505]
  • As die data van [505] opdrag 'n 3 is, reageer dan binne 10 sekondes met 'n aanmeldopdrag [005]
  • As [505] data 'n 1 bevat, is die aanmelding suksesvol

Die data van die aanmeldopdrag is 'n wagwoord van tot ses karakters lank, wat dieselfde wagwoord is om by die plaaslike webwerf van EnvisaLink aan te meld.

Sien 505 opdragbeskrywing in die TPI -handleiding vir 'n beskrywing van alle data.

Sodra die wagwoord aanvaar is, word die sessie geskep en sal voortgaan totdat die TCP -verbinding verbreek is.

Stap 17: Command Line Control Script

Ek het dokumente van die vorige stap gebruik om 'n interaktiewe python -script te ontwikkel wat vanaf 'n opdragreël in 'n Mac Book Terminal -venster uitgevoer kan word. Hier is 'n paar verduidelikende opmerkings:

  • Ek het moontlik 'n bietjie oorboord gegaan, maar ek dink al die opdragte is in die script.
  • Die command-line python script, ev3.py, kan afgelaai word vanaf hierdie skakel: GitHub. Laai ev3.py.
  • Kopieer die skrif na 'n gids [gids].
  • Maak 'n terminale venster oop (klik op MacBook -skyf, toepassings, hulpprogramme, terminale).
  • Ek gebruik gereeld 'n terminale venster. Ek het dus die terminale app aan die beskuldigdebank vasgemaak.
  • As u vanaf 'n rekenaar werk, verander self.file_log = sys.stderr, soos aangedui in die script.
  • Verander in die terminale venster na die gids en voer die script uit:

$ cd [gids]

$ python envisalink.py

  • Tik [terugkeer] om geldige opdragte te sien.
  • Tik [ctrl-c] om die program te verlaat.

Stap 18: Kort verduideliking

Ek wil die sekuriteitstelsel instel of monitor vanaf 'n slimfoon, tablet of rekenaar. 'N Eenvoudige oplossing is om 'n webwerf te ontwikkel.

Die python -opdrag van die opdragreël monitor die veiligheidstelsel en kan die toestand van die stelsel verander. Dit bied egter nie 'n goeie afstandsbekykingsvermoë nie.

'N Webwerf bied 'n uitstekende koppelvlak vir die monitering en verandering van die veiligheidstelsel. Die webwerf werk egter slegs as dit bekyk word. Terwyl die opdragreëls altyd moet werk. As die skrip uitgevoer word, kyk niemand dalk na die webwerf nie. Die data wat deur die skrif versamel word, moet dus in 'n databasis gestoor word totdat iemand dit wil sien.

'N Gebruiker moet ook die toestand van die sekuriteitstelsel kan verander (in, uit). As staatsveranderinge plaasvind, moet die veranderinge vinnig aangebring word.

Beide die script en die databasis is moontlike mislukkingspunte; 'n ander script is nodig wat gereeld kontroleer of alles werk en die script weer begin as dit nodig is.

Stappe oorgeslaan

U sal hierdie stappe moet doen (sien die deur van die garagedeur vir sommige van hierdie stappe)

A) Stel Raspberry Pi op - u kan dit eintlik op enige bediener uitvoer

B) Installeer luislang

C) Skep 'n selfondertekende sertifikaat en installeer dit op die Raspberry Pi en alle toestelle waarop u toegang tot die webwerf wil hê

D) Blokkeer mense sonder u selfondertekende sertifikaat om toegang tot u sekuriteitstelsel te verkry

Stap 19: Installeer SQLite

Die gewone DB -keuses is MySQL of postgres. Hierdie app benodig iets eenvoudig soos 'n lêer. Ek het geweet dat SQLite die regte keuse was toe ek lees,

  • https://sqlite.org/ is kleiner as MySQL of postgres
  • SQLite ding mee met fopen. en
  • SQLite is nie direk vergelykbaar met MySQL of postgres nie, omdat dit probeer om 'n ander probleem op te los.

Hier is 'n uitstekende bron vir die opstel van SQLite: Installeer SQLite op 'n Raspberry Pi

Teken in op die framboos en voer die opdrag uit:

$ sudo apt-get install sqlite3

$ sudo apt-get install php5-sqlite

Skep die databasis:

$ sqlite3 sekuriteit.db

Skep 'n tabel

sqlite> BEGIN;

sqlite> SKAP TABEL status (datum DATUM, tyd tyd, naam TEKS, waarde TEKS);

sqlite> COMMIT;

Kyk of die tabel korrek geskep is:

sqlite>.schema status

Die tabelstatus sal die volgende bevat:

stelsel: gewapen, ontwapen

alarm: geen, vuur, paniek, waarskuwing

sones [1-6]: oop, toe

script: gekoppel, aangemeld, hardloop

Voeg 'n paar data in die tabel in

sqlite> BEGIN;

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

sqlite> INVOER IN statuswaardes (datum ('nou'), tyd ('nou'), 'alarm', 'geen');

sqlite> INVOER IN statuswaardes (datum ('nou'), tyd ('nou'), 'sone', 'geslote');

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

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

sqlite> COMMIT;

Kontroleer waardes waar dit korrek ingevoer is

sqlite> SELECT * VANAF status WAAR naam = "zone";

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

Verlaat SQLite

sqlite>.quit

Beweeg die db en verander toegang:

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

$ chmod og+rw/var/www/

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

Stap 20: Installeer SQLite op MacBook [opsioneel]

Ek ontwikkel graag op die Mac en skuif die resultate dan na die Raspberry Pi.

Gaan na die aflaai-bladsy op sqlite.org en laai sqlite-autoconf-*. Tar.gz af uit die bronkode-afdeling

Laai aflaaie van u rekening af op MacBook oop

Klik op die afgelaai tar.gx -lêer

Maak terminale venster oop

$ cd aflaai

$ cd sqlite-autoconf- [nuutste weergawe nommer]

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

$ maak

Die vervaardiging neem 'n paar minute, wees geduldig.

$ sudo installeer

[MacBook wagwoord]

Bevestig dat dit werk:

$ sqlite3

sqlite>

Of probeer

$ wat sqlite3

Herhaal die stappe in die vorige stap om die databasis, die tabel op te stel en data op MacBook in te voer (of gebruik die script. As db nie bestaan nie, sal dit skep en vul).

Stap 21: Om te kommunikeer tussen die EnvisaLink 3 en Raspberry Pi Load Mod_wsgi

Moet mod_wsgi hê om dit op Raspberry Pi te laat werk.

Teken in op Raspberry Pi:

$ ssh pi@[Raspberry Pi IP -adres]

sleutel wagwoord in

kry dan mod-wsgi

$ sudo apt-get installeer libapache2-mod-wsgi

Om ev3pi.py op die Raspberry Pi -opdragreël uit te voer:

$ sudo python ev3pi.py

Stap 22: Laai sagteware af van GitHub

Verander die opdragreëls om na die DB te skryf.

Dit is goeie verduidelikings vir die koppeling van 'n python -script aan SQLite:

  • SQLite van python.org
  • SQLite van python

Ek het die kode verander om met SQLite te praat. U kan die kode hier aflaai: GitHub. Laai ev3pi.py af.

Maak 'n terminale venster oop en kopieer die opdragreël -python -script na framboos pi

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

Meld aan by pi

$ ssh pi@

sleutel wagwoord in

Skuif script na/usr/local/bin en verander voorregte

$ ssh pi@

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

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

of

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

Verander die script sodat dit op Raspberry Pi werk. Sien kommentaar in kode. Gebruik die db in /var/www/db/security.db

Werk die webwerf op om opdragte na DB te skryf

Deur op die beveiligingsopdrag op die webwerf te klik, word die opdrag na die databasis geskryf.

By die volgende deur die hooflus moet die opdrag gelees en uitgevoer word.

Laai die security.php -kode hier af: GitHub. Laai security.php af.

bash script wat kyk of ev3pi.py loop of nie

As ev3pi.py om een of ander rede ophou werk, moet dit outomaties begin werk. Hierdie script probeer om die script weer te begin.

Laai die ev3chk.sh -kode hier af: GitHub. Laai ev3chk.sh af.

Python -skrip wat die sekuriteitstelsel outomaties in- en uitskakel met behulp van 'n skedule

Hierdie skrif gebruik 'n skedule om die sekuriteitstelsel in te skakel en uit te skakel, gebaseer op die gebruiker se tyd en dag van die week. As die vakansieveld ingestel is, word inskakeling en ontwapening geïgnoreer.

Laai die ev3auto.py -kode hier af: GitHub. Laai ev3auto.py af.

Webbladsy om status te vertoon en die stelsel in te skakel en uit te skakel

Dit is 'n redelik eenvoudige webblad wat gekoppel is aan 'n groter Tuisautomatiseringstelsel. Hernoem hierdie skrif na indeks en plaas dit in /var /www op u Raspberry Pi.

Laai die security.php -kode hier af: GitHub. Laai security.php af.

crontab om te kyk of die skrip loop

Wysig die Crontab om te verseker dat die skrifte werk.

Teken in op Raspberry Pi

$ sudo crontab -e

#

# kyk elke 5 minute of die sekuriteitstelsel werk

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

#

# kyk elke 15 minute of die veiligheidstelsel in 'n goeie toestand is

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

U kan die crontab hier aflaai: GitHub. Laai crontab af.

Aanbeveel: