Table des matières:

Système de sécurité domestique DSC activé par Internet : 22 étapes
Système de sécurité domestique DSC activé par Internet : 22 étapes

Vidéo: Système de sécurité domestique DSC activé par Internet : 22 étapes

Vidéo: Système de sécurité domestique DSC activé par Internet : 22 étapes
Vidéo: #1ere partie-formation en système d’alarme ELKRON MP106,installation et programation (1de 2) 2024, Décembre
Anonim

Modifiez un système DSC Home Security existant pour qu'il soit compatible Internet et auto-surveillé.

Cette instructable suppose que vous avez un Raspberry Pi fonctionnel.

Veuillez noter que cette implémentation présente les inconvénients suivants:

  • Si un voleur coupe le câble DSL entrant ou si le service Internet est perdu, la surveillance à partir d'Internet est désactivée

    Avenir: la solution à ce problème consiste à utiliser un service de sauvegarde LTE à faible coût uniquement

  • Les capteurs DSC n'indiquent pas si les portes ou les fenêtres sont verrouillées, mais seulement qu'elles sont fermées

    Futur: ajoutez une bascule à bouton-poussoir activée par le verrou de la serrure de la porte. Cela demandera un travail important pour faire passer le câblage sans détruire le montant de la porte

  • DSC prend en charge l'intégration de l'alarme incendie. Cependant, l'alarme incendie de ma maison n'est pas intégrée

    Avenir: intégrer l'alarme incendie dans le panneau de commande DSC

  • Le système DSC installé n'a pas de capteur pour la porte de garage basculante

    Plus tôt, j'ai créé un ouvre-porte de garage instructable et je peux lire que la porte est ouverte ou fermée

Les objectifs de ce projet sont de:

  • Envoyer des alertes du système de sécurité sur mon téléphone portable
  • Vérifiez ou définissez l'état du système de sécurité à partir d'une page Web sécurisée
  • Exécutez la solution sur un raspberry pi sécurisé (https et certs)
  • Utiliser le système DSC existant pour l'auto-surveillance
  • Ajoutez EnvisaLink 3 pour ajouter la prise en charge Ethernet au système DSC
  • Écrire un logiciel d'autosurveillance
  • Créer un instructable pour cet effort

Remarque: Dans ce document, le texte entre [crochets] doit être remplacé par une valeur réelle

Ma famille n'a jamais vu notre maison cambriolée et nous vivons dans une zone à faible criminalité. Il n'y a aucune raison impérieuse de faire ce projet, sauf qu'il était intéressant et amusant.

Veuillez noter qu'il existe un excellent raccourci pour cette instructable. Une fois Envisalink 3 opérationnel, vous pouvez utiliser la solution standard fournie par Eyes-On appelée EnvisAlerts et EnvisAlarm, qui envoie des alertes et surveille votre maison et/ou une application mobile de téléphone portable très cool appelée DSC Security Server par Mike P. Je me suis inscrit à EnvisAlerts et j'ai acheté le serveur de sécurité DSC de Mike P. J'étais très satisfait des deux, mais je voulais ma propre version.

Étape 1: Dépannage et données uniques

Il y a certaines données auxquelles je me réfère souvent et j'aime inclure ces données au début.

Alarme - activer et désactiver

Assurez-vous que toutes les portes et fenêtres sont fermées. Sur le panneau de commande, saisissez le code maître:

[code maître] = [votre code maître]

Désactiver la ligne téléphonique

Ma maison a une ligne téléphonique fixe, mais je n'ai pas de service de ligne fixe. Vers 23 heures tous les soirs, le système émet un bip. Si le système perd de l'alimentation, cela doit être ré-entré. Pour désactiver ce bip, sur le clavier, entrez ce qui suit:

  • Désactiver la ligne téléphonique: *8 5555 015 7 ##
  • Désactiver les transmissions de test de ligne téléphonique *8 5555 371 9999 ##
  • Désactivez le numéroteur téléphonique: *8 5555 380 1 ##

Serveur d'alerte Envisalink

Connectez-vous à Envisaiink

Obtenez le serveur Envisalerts: 184.106.215.218

Routeur ouvert U-verse: 192.168.1.254

Allez dans Paramètres, Pare-feu

Connexion Envisalink

Navigateur ouvert

Saisissez l'adresse IP Envisalink:

[nom d'utilisateur envisalink] = utilisateur

[mot de passe envislink] = [entrez votre mot de passe]

Adresse IP Envisalink

[Adresse IP Envisalink] = 192.168.1.92

Nom d'utilisateur et mot de passe Eyes-on

[nom d'utilisateur eyes-on] = [votre nom d'utilisateur envisalink]

[mot de passe eyes-on] = [votre mot de passe envisalink]

Code de l'installateur

[Code de l'installateur] = [Entrez votre code de l'installateur]

5555 est le code par défaut. Vous pouvez demander le code à votre installateur ou effectuer une réinitialisation d'usine, ce qui le ramène à 5555. Je ne recommande pas de réinitialiser les paramètres d'usine car il existe un risque important d'endommager le système.

Code maître

[MasterCode] = [entrez votre code maître]

IP du Raspberry Pi

[Raspberry Pi IP] = [entrez votre adresse IP Raspberry Pi, quelque chose comme 192.168.1.57]

Connexion Raspberry Pi depuis Mac Book

Sur Mac Book, ouvrez le terminal

ssh pi@[IP Raspberry Pi]

[Mot de passe]

Mot de passe Raspberry Pi

Mot de passe = [votre mot de passe Raspberry Pi]

Routeur

Adresse IP du routeur =[entrez l'adresse IP de votre routeur]

Régler l'heure et la date de l'ASN

*611301hhmmMMMJJA#

hh sont en heure militaire, pour pm ajouter 12. Donc, 16h est 16

Programmation des zones

Type d'alarme de zone

01 - Alarme après avoir fourni un délai (par défaut 60 secondes) en mode Stay ou Away

03 - Alarme instantanément en cas de violation en mode Stay ou Away

05 – Détecteur de mouvement intérieur. Alarme instantanément en cas de violation uniquement lorsque le mode Absent (contourne en mode Stay)

Sur le clavier, entrez:

*8 [Code installateur] 001 01 03 05 05 87 # #

Explication de la séquence de code ci-dessus:

  • *8 [Code de l'installateur]
  • 001 – Cela vous permet d'accéder à la programmation de zones pour les zones
  • 01 03 05 05 87 - Ceci est ma séquence de types d'alarme de zone, dans l'ordre des zones de 1 à 5.
  • Toutes les zones doivent être correctement définies.
  • # # - Cela enregistre ce que vous avez fait et vous fait sortir du mode de programmation.

Étape 2: Trouvez les numéros de modèle de votre clavier et de votre panneau de commande

Trouvez les numéros de modèle de votre clavier et de votre panneau de commande
Trouvez les numéros de modèle de votre clavier et de votre panneau de commande
Trouvez les numéros de modèle de votre clavier et de votre panneau de commande
Trouvez les numéros de modèle de votre clavier et de votre panneau de commande
Trouvez les numéros de modèle de votre clavier et de votre panneau de commande
Trouvez les numéros de modèle de votre clavier et de votre panneau de commande
Trouvez les numéros de modèle de votre clavier et de votre panneau de commande
Trouvez les numéros de modèle de votre clavier et de votre panneau de commande

Trouvez le numéro de modèle du clavier. Le clavier DSC se trouve près d'une porte (image 1 & 2). Dans ma maison, il y a un clavier près de la porte du garage et un près de la porte d'entrée.

Trouvez le numéro de modèle du panneau de commande. Le clavier a un autocollant sur le dessus et le numéro de modèle est au milieu. Le mien est un PK5501 (image 3 & 4).

Une autre façon de procéder est:

  • Sur un ordinateur, ouvrez un navigateur
  • Allez sur

Mon panneau de contrôle est situé dans une boîte en métal dans un placard (image 3). Ouvrez la boîte en métal et au centre du panneau de commande se trouve un autocollant avec le numéro de modèle. Mon numéro de modèle de panneau de commande est PC1616 (image 4).

Étape 3: Vérifiez si EnvisaLink 3 est compatible avec votre système de sécurité

Cliquez sur le lien eyeson.com.

Faites défiler jusqu'à la compatibilité des panneaux et voyez si le vôtre est répertorié. Sinon, vérifiez avec EyesOn.

Étape 4: Obtenir la documentation DSC

DSC propose un manuel d'utilisation, mais la plupart des autres documents exigent que vous soyez un installateur

  • Pour le panneau de commande, trouvez le manuel de l'installateur, le manuel de l'utilisateur, le manuel de référence et la feuille de programmation.
  • Pour le clavier, trouvez le manuel d'installation. Les manuels que j'ai trouvés étaient tous des fichiers PDF.

Plusieurs sources non DSC de manuels DSC sont disponibles en ligne. Les manuels DSC ne sont pas requis pour cette instructable. Ce ne sont que des références si vous souhaitez étendre l'instructable ou si votre système utilise différentes parties.

LiveWatch.com est la meilleure source de manuels DSC. LiveWatch a également été très utile pour répondre aux questions et me débloquer. Je n'aurais pas pu terminer cette instructable sans l'aide de LiveWatch.

Étape 5: acheter ou rassembler des pièces et des outils

A) Système de sécurité DSC avec claviers PK5501, panneau de commande PC1616 et plusieurs capteurs (fenêtres, portes et mouvement). Le système de sécurité est venu avec la maison.

B) Commandez EnvisaLink 3 - 119 $ + livraison et livraison. www.eyezon.com

C) Fournisseur Internet AT&T U-verse, passerelle DSL

D) Commutateur NetGear Managed 24 ports

E) Clôture invisible pour chien ou fil de thermostat

F) Câble Ethernet CAT5E

G) Quatre fils AWG de calibre 18-22 d'environ 6 pouces de long (rouge, noir jaune, vert)

H) Pince à bec effilé

I) Perceuse et foret à métal de 3/16 et très petit foret

J) Ruban électricien noir

K) Très petit tournevis plat (j'en ai un pour fixer mes lunettes quand la vis tombe)

L) Mini interrupteur à bouton-poussoir momentané SPST, normalement fermé

M) Petit boîtier en plastique (fil dentaire)

N) Couteau exact

Étape 6: Installation d'EnvisaLink 3

Installation d'EnvisaLink 3
Installation d'EnvisaLink 3
Installation d'EnvisaLink 3
Installation d'EnvisaLink 3

Je n'aurais pas dû suivre les instructions fournies avec l'EnvisLink 3.

La première étape des instructions consiste à déconnecter l'alimentation du PC1616. J'ai supposé que cela signifiait à la fois l'alimentation secteur et l'alimentation de secours de la batterie. J'ai déconnecté les deux, puis j'ai dû appeler un technicien pour remettre les claviers en ligne. L'appel de service était de 135 $.

  1. Mon PC1616 est enfermé dans un boîtier métallique. Localisez la carte PC1616 de votre système de sécurité.
  2. Utilisez l'EV3 pour créer un gabarit en papier pour les trous décalés. Le gabarit est utilisé pour marquer les trous sur le boîtier métallique. Parce qu'il était plus facile de visser de l'extérieur de la boîte vers l'intérieur, j'ai dû inverser le gabarit.
  3. Scotch tape le gabarit à l'extérieur de la boîte métallique contenant le PC1616. Choisissez un endroit qui a suffisamment de place pour accueillir l'Envisalink 3.
  4. Très lentement, à l'aide d'un foret à métal de 3/16" et du gabarit, percez 3 trous sur le côté de la boîte en métal.
  5. De l'intérieur du boîtier métallique, enfoncez les décalages en plastique dans les trous
  6. Installez la carte EV3 dans la boîte métallique sur les décalages en plastique.
  7. Dénudez 1/4" des deux extrémités des fils rouge, noir, vert et jaune (ou vous pouvez couper un câble RJ11 et utiliser les fils à l'intérieur). les connecteurs de la carte saisissent le fil solide plus fermement. Si vous utilisez un fil torsadé, torsadez fermement les extrémités, ce qui facilitera l'installation.
  8. Débranchez le fil noir d'alimentation CA du contrôleur DSC. C'est le(s) deuxième(s) fil(s) à partir de la gauche. Veillez à ne pas laisser l'extrémité exposée du ou des fils noirs toucher quoi que ce soit. J'ai enveloppé la fin dans du ruban électrique jusqu'à ce que j'aie terminé les prochaines étapes. Si le ou les fils noirs touchent quoi que ce soit, le transformateur court-circuitera et vous devrez appeler une société de service pour le remplacer.
  9. À l'aide d'un très petit tournevis à tête plate, installez les fils de couleur dans les fentes appropriées sur EV3.
  10. Une par une, desserrez les vis rouges, vertes, jaunes et noires sur le contrôleur DSC, mais SEULEMENT assez pour y glisser de nouveaux fils. Insérez le fil de couleur appropriée et serrez.
  11. Réinsérez l'alimentation CA (retirée en G) dans le contrôleur DSC.
  12. À l'aide d'un câble CAT5e ou CAT6, connectez EnvisaLink 3 au routeur.

Étape 7: Installez le bouton-poussoir d'alimentation momentané

Installer la bascule du bouton-poussoir d'alimentation momentanée
Installer la bascule du bouton-poussoir d'alimentation momentanée

J'ai eu beaucoup de problèmes pour programmer l'Envisalink et le contrôleur DSC. J'ai trouvé que le fait de mettre le système hors tension et sous tension a ramené le système à un bon état connu. Plus tard, j'ai ajouté un bouton-poussoir à bascule momentané. Il existe de nombreux types de bascule. Le normalement fermé est celui qu'il faut.

A) Procurez-vous une petite boîte en plastique. J'ai utilisé un étui à fil dentaire, le genre qu'un dentiste peut vous donner après un rendez-vous. Retirez le fil et les clips métalliques.

B) Percez deux petits trous pour le fil AC

C) Percez ou découpez un trou pour la bascule momentanée. J'ai trouvé qu'il était plus facile d'utiliser un couteau exacto puis de percer un trou. Ouvrez le boîtier et découpez la moitié du trou d'un côté de l'ouverture et l'autre moitié du côté adjacent. Ainsi, lorsque la bascule momentanée glisse d'un côté et lorsque le boîtier est fermé, la bascule momentanée est fermement attachée.

D) Débranchez l'alimentation CA d'Envisalink. Faites passer le fil d'alimentation CA à travers l'un des petits trous et connectez-le au fil de l'interrupteur d'alimentation momentané. Enveloppez-le dans du ruban d'électricien.

E) Dénudez les extrémités d'un morceau de fil de 3 à 4 pouces. Faites passer une extrémité dans l'autre petit trou du boîtier et connectez-vous à l'autre fil de l'interrupteur momentané. Enveloppez dans du ruban électrique.

F) Connectez le 2ème fil de l'interrupteur momentané à la fente d'alimentation CA Envisalink

G) Utilisez du scotch pour sceller le boîtier

H) Vérifiez si la bascule fonctionne. Le système devrait normalement être allumé. Lorsque la bascule est enfoncée, les lumières de l'Envisalink s'éteignent.

Étape 8: Enregistrez EnvisaLink 3

Une fois inscrit, vous ne pouvez pas vous désinscrire. EyesOn collecte vos données et peut mettre à jour le logiciel de votre tableau à tout moment, sans aucune notification. Si c'était à refaire, je ne referais pas cette étape.

A) Ouvrez un navigateur et accédez à www.eyezon.com, menu déroulant Support et sélectionnez EnvisaLink 3 Primer Guide

B) Suivez les instructions de l'introduction (inscription, connexion, ajout d'un nouvel appareil, etc.)

C) Nom d'utilisateur = [nom d'utilisateur oculaire]

D) Mot de passe = [mot de passe visuel]

Étape 9: Vérifiez l'installation d'EnvisaLink 3

Ouvrez un navigateur et accédez à la page d'accueil de votre routeur.

  1. Ouvrir un navigateur
  2. Saisissez [Adresse IP du routeur]
  3. Dans l'onglet Accueil, faites défiler jusqu'à Périphériques du réseau domestique

Ma passerelle résidentielle U-verse (ou routeur) affiche quelque chose comme l'image 1.

Faites défiler jusqu'à l'appareil, et il devrait ressembler à l'image 2.

Un état actif signifie que la carte est installée et fonctionne.

Cliquez sur Détails pour obtenir l'adresse IP d'EnvisaLink. L'adresse IP peut changer de temps en temps.

Ouvrez un navigateur et entrez

[Adresse IP Envisalink]

Saisissez le nom d'utilisateur et le mot de passe:

[nom d'utilisateur envisalink]

[mot de passe envislink]

Entrez le nom d'utilisateur et le mot de passe du guide d'installation. Le navigateur devrait afficher quelque chose comme l'image 3.

Étape 10: Changer le mot de passe par défaut sur Envisalink 3

A) Ouvrir le navigateur

B) Accédez à [Adresse IP Envisalink] /:80

Un exemple est 192.168.1.34/:80. Le /:80 est le port.

C) Dans Changer le mot de passe de l'utilisateur », modifiez le mot de passe. Remarque: le nom d'utilisateur et le mot de passe par défaut sont user

D) Enregistrer [mot de passe envisalink]

Étape 11: (raccourci) Générer un lien mobile [facultatif]

Vous n'avez pas besoin de faire cette étape ou la suivante, mais si vous voulez le faire, c'est une bonne option.

Eyez-On offre un service de surveillance complet. Il est facile à utiliser et fonctionne bien. Si vous souhaitez utiliser ce service, suivez les instructions des étapes 10 et 11. Sinon, passez à l'étape 12. Veuillez noter que j'ai fait les deux 10 et 11, puis j'ai dû les désactiver. Les deux services ont bien fonctionné et je n'ai eu aucun problème, je voulais juste le faire moi-même.

A) Ouvrez le navigateur et accédez à Eyez-On

B) Connectez-vous (dans une étape précédente, vous devriez avoir créé un compte)

C) Sélectionnez le lien du portail mobile

D) Cliquez sur générer un lien mobile

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

E) Le lien est long. Envoyez-le par e-mail sur votre appareil mobile.

F) Ouvrez le lien sur votre appareil mobile

G) Ouvrez une autre fenêtre ou un autre onglet du navigateur et accédez à Eyez-On, sélectionnez l'assistance et sélectionnez EnvisAlarms Monitoring Primer dans le menu déroulant.

H) Suivez les instructions pour télécharger le logiciel d'autosurveillance EV3

I) Suivez les instructions pour configurer la façon dont vous souhaitez surveiller

Étape 12: Installez l'application DSC Server sur votre téléphone intelligent [facultatif]

Vous n'avez pas besoin de faire cette étape ou la précédente, mais si vous voulez le faire, c'est une bonne option.

A) Accédez à la boutique Android ou Apple et achetez l'application DSC Security Server auprès de Mike P.

Si vous avez fait les deux étapes précédentes, alors vous avez terminé ! Vous devriez pouvoir surveiller et contrôler votre système de sécurité à distance.

Étape 13: Remarques importantes sur Envisalink 3 et PC1616

La communication d'Envisalink 3 vers EnvisAlerts utilise UDP. La communication d'Envisalink 3 au script utilise TCP/IP.

Le port Ethernet Envisalink 3 ne communique qu'à 10 Mbps. La plupart des routeurs et commutateurs Ethernet 1 Gb ou 100 Mb négocient automatiquement jusqu'à 10 Mbps.

Dans la section 022 du PC1616, l'option 1 ne peut pas être activée. Cette option nécessite un code d'accès utilisateur pour accéder aux fonctions utilisateur telles que le contournement de zones, etc. L'option est désactivée par défaut.

L'effacement du clavier et le contournement de zone doivent être désactivés pour qu'Envisalink fonctionne.

Étape 14: Annuler le travail des deux étapes précédentes

Au départ, je me suis inscrit à Envisalerts et à l'application de Mike P.

Étant donné que je ne veux pas envoyer mes informations de sécurité sur Internet et que je ne veux pas que le logiciel Envisalink 3 soit mis à jour sans mon accord, j'ai dû bloquer l'accès d'Envisalink 3 à Internet.

A) Ouvrir le navigateur

B) Accédez à la passerelle AT&T U-verse 3801HGV. Entrez dans la zone URL du navigateur: 192.168.1.254

C) Connectez-vous à la passerelle

D) Aller à la maison

E) Faites défiler jusqu'à Envisalink

F) Cliquez sur les détails

  • Enregistrer l'adresse MAC (alias adresse matérielle) = [adresse MAC Envisalink]
  • [Adresse MAC Envisalink] = 00:1c:2a:00:9d:07

G) Allez dans Paramètres >> LAN >> Sans fil

H) Faites défiler vers le bas pour activer le filtrage MAC

I) Cliquez sur Filtrage MAC

  • Cliquez sur Modifier la liste des appareils bloqués/autorisés
  • Cliquez sur Activer le filtrage MAC
  • Faites défiler jusqu'à Entrer l'adresse MAC

J) Coller l'adresse MAC d'Envisalink

K) Cliquez sur ajouter à la liste

L) Cliquez sur >> pour passer aux appareils bloqués

M) Faites défiler vers le haut et assurez-vous que la case Filtrage MAC est cochée

N) Et Envisalink devrait être bloqué

Étape 15: Rassemblez la documentation nécessaire et comprenez comment votre système est configuré

Je voulais comprendre comment contrôler le système de sécurité. Les meilleures sources sont:

Comment programmer un système DSC - Un didacticiel - requis pour que je comprenne le document TPI

Document du programmeur EnvisaLink TM TPI, version 1.04 - décrit l'ensemble de commandes TPI

Fiche de programmation – un document horrible et mal nommé, qui décrit la configuration de votre système de sécurité

L'ancien propriétaire n'a pas laissé de feuille de travail de programmation remplie. J'ai dû le remplir moi-même. Fondamentalement, j'ai utilisé le clavier pour entrer des commandes jusqu'à ce que j'aie tout compris. La feuille de travail est un endroit pour enregistrer la configuration de votre système. Bon, j'ai menti. Utilisez la feuille de calcul comme guide, mais enregistrez la configuration de votre système dans un document de taille normale.

Étape 16: Document du programmeur de l'interface tierce (TPI)

L'interface tierce (TPI) est un ensemble de commandes, de réponses et de codes d'erreur permettant aux applications tierces de s'interfacer avec EnvisaLink 3 via une connexion TCP/IP. J'ai trouvé ce document très confus. J'espère que cette explication aidera à expliquer un peu mieux le document.

En général, toutes les commandes, réponses et codes d'erreur TPI sont à trois chiffres:

  • Les commandes sont supérieures ou égales à 500
  • Les réponses sont inférieures ou égales à 200
  • Les codes d'erreur sont compris entre 000 et 027, mais les réponses sont également dans cette plage

Les données sont ajoutées à la fin d'une commande ou d'une réponse. Par exemple, une commande de connexion peut être:

005pswdCS\n\r

où,

pswd = est des données, dans ce cas, votre mot de passe

Les éléments suivants sont requis:

  • CS = somme de contrôle
  • n = caractère de nouvelle ligne
  • r = caractère de retour chariot

Sur le Web, j'ai trouvé de nombreuses implémentations pour calculer la somme de contrôle. La somme de contrôle est requise et de nombreuses implémentations n'ont pas fonctionné. Je ne sais pas pourquoi tant de gens n'ont pas fonctionné pour moi. Il peut s'agir d'un mauvais code, ou il peut s'agir de différentes versions de la carte ou de versions de firmware exécutées sur la carte. Mon code de somme de contrôle fonctionne pour ma carte et mon firmware.

EnvisaLink agit comme un serveur pour une connexion TCP à une application cliente. Le client ne doit fonctionner que sur un serveur sécurisé pouvant communiquer avec EnvisaLink 3. Le serveur du client doit se trouver sur votre réseau domestique, mais ne doit pas être ouvert sur Internet. Un certificat auto-signé est requis (voir mon autre instructable pour un ouvre-porte de garage).

EnvisaLink écoute sur le port 4025 et n'acceptera qu'une seule connexion client. Les connexions suivantes seront refusées. EnvisaLink fermera la connexion si le client ferme son côté.

Pour initier une connexion:

  • Le client démarre une session TCP en établissant un socket TCP.
  • Le client envoie une commande de connexion [005]
  • EnvisaLink répond avec un ou plusieurs [505]
  • Si les données de la commande [505] sont un 3, alors dans les 10 secondes, répondez avec une commande de connexion [005]
  • Si les données [505] contiennent un 1, alors la connexion est réussie

Les données de la commande de connexion sont un mot de passe d'une longueur maximale de six caractères, qui est le même mot de passe pour se connecter à la page Web locale d'EnvisaLink.

Voir la description de la commande 505 dans le manuel TPI pour une description de toutes les données.

Une fois le mot de passe accepté, la session est créée et se poursuivra jusqu'à ce que la connexion TCP soit interrompue.

Étape 17: Script de contrôle de ligne de commande

J'ai utilisé des documents de l'étape précédente pour développer un script python interactif pouvant être exécuté à partir d'une ligne de commande sur une fenêtre Mac Book Terminal. Voici quelques commentaires éclaircissants:

  • Je suis peut-être allé un peu trop loin, mais je pense que toutes les commandes sont dans le script.
  • Le script python en ligne de commande, ev3.py, peut être téléchargé à partir de ce lien: GitHub. Téléchargez ev3.py.
  • Copiez le script dans un répertoire [répertoire].
  • Ouvrez une fenêtre de terminal (Cliquez sur Disque MacBook, Applications, Utilitaires, Terminal).
  • J'utilise souvent une fenêtre de terminal. J'ai donc épinglé l'application du terminal sur le dock.
  • Si vous l'exécutez à partir d'un ordinateur, modifiez self.file_log = sys.stderr, comme indiqué dans le script.
  • Dans la fenêtre du terminal, accédez au répertoire et exécutez le script:

$ cd [répertoire]

$ python envisalink.py

  • Tapez [retour] pour voir les commandes valides.
  • Tapez [ctrl-c] pour quitter le programme.

Étape 18: Brève explication

Je souhaite configurer ou surveiller le système de sécurité à partir d'un smartphone, d'une tablette ou d'un PC. Une solution simple consiste à développer un site Web.

Le script python en ligne de commande surveille le système de sécurité et peut modifier l'état du système. Cependant, il ne fournit pas une bonne capacité de visualisation à distance.

Un site Web fournit une excellente interface pour surveiller et modifier le système de sécurité. Cependant, le site Web ne « fonctionne » que lorsqu'il est consulté. Alors que le script de ligne de commande devrait s'exécuter tout le temps. Lorsque le script est en cours d'exécution, personne ne peut consulter le site Web. Ainsi, les données collectées par le script doivent être stockées dans une base de données jusqu'à ce que quelqu'un veuille les voir.

De plus, un utilisateur doit pouvoir changer l'état du système de sécurité (armer, désarmer). Lorsque des changements d'état se produisent, les changements doivent être effectués rapidement.

Le script et la base de données sont tous deux des points de défaillance potentiels, un autre script est nécessaire pour vérifier périodiquement si tout fonctionne et redémarrer le script si nécessaire.

Étapes ignorées

Vous devrez suivre ces étapes (voir l'ouvre-porte de garage instructable pour certaines de ces étapes)

A) Configurer Raspberry Pi - en fait, vous pouvez l'exécuter sur n'importe quel serveur

B) Installer Python

C) Créez un certificat auto-signé et installez-le sur le Raspberry Pi et tous les appareils auxquels vous souhaitez accéder au site Web

D) Empêcher les personnes sans votre certificat auto-signé d'accéder à votre système de sécurité

Étape 19: Installez SQLite

Les choix de base de données habituels sont MySQL ou postgres. Cette application a besoin de quelque chose de simple comme un fichier. Je savais que SQLite était le bon choix quand j'ai lu,

  • https://sqlite.org/ est plus petit que MySQL ou postgres
  • SQLite est en concurrence avec fopen. et
  • SQLite n'est pas directement comparable à MySQL ou à postgres car il essaie de résoudre un problème différent.

Voici une excellente source pour configurer SQLite: Installer SQLite sur un Raspberry Pi

Connectez-vous au raspberry et exécutez la commande:

$ sudo apt-get install sqlite3

$ sudo apt-get install php5-sqlite

Créez la base de données:

$ sqlite3 security.db

Créer un tableau

sqlite > COMMENCER;

sqlite > statut CREATE TABLE (tdate DATE, ttime TIME, nom TEXT, valeur TEXT);

sqlite > COMMIT;

Vérifiez que la table a été créée correctement:

sqlite > état.schema

L'état du tableau contiendra:

système: armé, désarmé

alarme: aucune, incendie, panique, alerte

zones[1-6]: ouvert, fermé

script: connecté, connecté, en cours d'exécution

Insérer des données dans le tableau

sqlite > COMMENCER;

sqlite > INSERT INTO status values(date('maintenant'), heure('maintenant'), "système", "désarmé");

sqlite > INSERT INTO status values(date('maintenant'), heure('maintenant'), "alarme", "aucun");

sqlite > INSERT INTO status values(date('maintenant'), heure('maintenant'), "zone", "fermé");

sqlite > INSERT INTO status values(date('maintenant'), heure('maintenant'), "script", "running");

sqlite > INSERT INTO status values(date('maintenant'), heure('maintenant'), "commande", "");

sqlite > COMMIT;

Vérifier les valeurs lorsqu'elles sont entrées correctement

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

2015-06-06|17:39:52|zone1|fermé

Quitter SQLite

sqlite >.quit

Déplacez la base de données et modifiez l'accès:

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

$ chmod og+rw /var/www/

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

Étape 20: Installez SQLite sur MacBook [facultatif]

J'aime développer sur Mac puis déplacer les résultats vers le Raspberry Pi.

Accédez à la page de téléchargement sur sqlite.org et téléchargez sqlite-autoconf-*.tar.gz à partir de la section du code source

Sur MacBook, ouvrez les téléchargements depuis votre compte

Cliquez sur le fichier tar.gx téléchargé

Ouvrir la fenêtre du terminal

$ cd Téléchargements

$ cd sqlite-autoconf-[dernier numéro de version]

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

$ faire

La fabrication prend quelques minutes, soyez patient.

$ sudo faire l'installation

[Mot de passe MacBook]

Confirmez que cela fonctionne:

$ sqlite3

sqlite>

Ou essayez

$ quel sqlite3

Répétez les étapes de l'étape précédente pour configurer la base de données, la table et entrer les données sur MacBook (ou utilisez le script. Si la base de données n'existe pas, elle sera créée et remplie).

Étape 21: Pour communiquer entre EnvisaLink 3 et Raspberry Pi Chargez Mod_wsgi

Besoin de mod_wsgi pour le faire fonctionner sur Raspberry Pi.

Connectez-vous au Raspberry Pi:

$ ssh pi@[Adresse IP Raspberry Pi]

Entrer le mot de passe

puis obtenir mod-wsgi

$ sudo apt-get install libapache2-mod-wsgi

Pour exécuter ev3pi.py sur la ligne de commande Raspberry Pi:

$ sudo python ev3pi.py

Étape 22: Télécharger le logiciel depuis GitHub

Modifiez le script de ligne de commande pour écrire dans la base de données.

Ce sont de bonnes explications pour connecter un script python à SQLite:

  • SQLite de python.org
  • SQLite de python

J'ai modifié le code pour parler avec SQLite. Vous pouvez télécharger le code ici: GitHub. Téléchargez ev3pi.py.

Ouvrez une fenêtre de terminal et copiez le script python de ligne de commande sur raspberry pi

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

Connectez-vous à pi

$ ssh pi@

Entrer le mot de passe

Déplacez le script vers /usr/local/bin et modifiez les privilèges

$ ssh pi@

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

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

ou

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

Modifiez le script pour qu'il s'exécute sur Raspberry Pi. Voir les commentaires dans le code. Assurez-vous d'utiliser la base de données dans /var/www/db/security.db

Mettre à jour le site Web pour écrire des commandes dans la base de données

En cliquant sur une commande de sécurité sur le site Web, la commande est écrite dans la base de données.

Au prochain passage dans la boucle principale, la commande doit être lue et exécutée.

Téléchargez le code security.php ici: GitHub. Téléchargez security.php.

script bash qui vérifie si ev3pi.py est en cours d'exécution ou non

Si ev3pi.py s'arrête pour une raison quelconque, il devrait commencer à s'exécuter automatiquement. Ce script tente de redémarrer le script.

Téléchargez le code ev3chk.sh ici: GitHub. Téléchargez ev3chk.sh.

Script Python qui arme et désarme automatiquement le système de sécurité à l'aide d'un calendrier

Ce script utilise un calendrier pour armer et désarmer le système de sécurité en fonction de l'heure et du jour de la semaine entrés par l'utilisateur. Si le champ vacances est défini, l'armement et le désarmement seront ignorés.

Téléchargez le code ev3auto.py ici: GitHub. Téléchargez ev3auto.py.

Page Web pour afficher l'état et armer et désarmer le système

Il s'agit d'une page Web assez simple, connectée à un système domotique plus grand. Renommez ce script en index et placez-le dans /var/www sur votre Raspberry Pi.

Téléchargez le code security.php ici: GitHub. Téléchargez security.php.

crontab pour vérifier si le script est en cours d'exécution

Modifiez le Crontab pour vous assurer que les scripts sont en cours d'exécution.

Connectez-vous à Raspberry Pi

$ sudo crontab -e

#

# vérifie toutes les 5 minutes si le système de sécurité fonctionne

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

#

# vérifier toutes les 15 minutes si le système de sécurité est en bon état

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

Vous pouvez télécharger la crontab ici: GitHub. Télécharger crontab.

Conseillé: