Table des matières:
- Étape 1: Installer les blocs réactifs
- Étape 2: Téléchargez l'application à partir des bibliothèques
- Étape 3: L'application au plus haut niveau
- Étape 4: Activer les SMS
- Étape 5: créez et exécutez l'application sur votre ordinateur portable
- Étape 6: Exécutez l'application sur votre ordinateur
- Étape 7: Exporter en tant que fichier JAR exécutable
- Étape 8: Préparez votre Raspberry Pi
- Étape 9: Déployez l'application sur votre Raspberry Pi
- Étape 10: Exécutez l'application sur votre Raspberry Pi
- Étape 11: Modifiez votre application
Vidéo: Système d'alarme à détection de mouvement : 11 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Noter! Les blocs réactifs ne sont plus disponibles au téléchargement. Une caméra USB de base peut être utilisée pour détecter un mouvement dans une pièce. Dans les étapes suivantes, nous allons vous montrer comment utiliser les blocs réactifs pour programmer une application Java prête à l'emploi qui envoie des SMS ou des e-mails lorsqu'un mouvement est détecté. Avec Reative Blocks, vous créez des applications Java SE afin que l'application d'alarme puisse être déployée sur n'importe quelle machine avec Java SE et une caméra connectée ou intégrée. L'application est facilement déployée sur le Pi puisque la version Raspbian a Oracle Java pré-installé..
Voici ce dont vous avez besoin:
- Raspberry Pi modèle B+ avec OS Raspbian
- Caméra USB standard
- câble Ethernet
- Écran et clavier pour le Pi
- Ordinateur Windows ou MAC avec JDK
- Noter! Les blocs réactifs ne sont plus disponibles au téléchargement. Vous aurez besoin de Reactive Blocks, un plugin Eclipse, pour programmer l'application.
Cette application d'alarme est l'un des nombreux exemples de systèmes modifiables accessibles après l'installation des blocs réactifs. L'application est prête à l'emploi et vous n'aurez besoin d'aucune compétence en programmation Java pour terminer le didacticiel. Pour créer vos propres applications et blocs de construction Reactive Blocks, vous devez être un programmeur Java compétent. Lors de la création d'applications plus complexes avec plusieurs capteurs et actionneurs, les blocs réactifs facilitent l'obtention de la logique et du flux de données. Reactive Blocks est gratuit pour les projets open source.
Étape 1: Installer les blocs réactifs
Les blocs réactifs ont été abandonnés
Étape 2: Téléchargez l'application à partir des bibliothèques
Assurez-vous que vous avez ouvert la perspective Blocs réactifs et que vous êtes dans la vue Blocs. Dans la vue Blocs, sélectionnez le bouton Importer et choisissez Applications de référence. Sélectionnez le projet Détection de mouvement. À ce stade, il vous sera demandé de vous inscrire avec un identifiant Google. Cela vous donnera un accès immédiat aux bibliothèques de blocs de construction et aux systèmes et didacticiels modifiables.
Le projet de détection de mouvement que vous avez téléchargé comprend trois applications, le SMS du système d'alarme, le courrier électronique du système d'alarme et une application de test, le test de détection de mouvement. Dans ce tutoriel, nous vous guidons à travers le SMS du système d'alarme. Si vous préférez envoyer un e-mail, vous pouvez faire les mêmes étapes avec l'e-mail du système d'alarme
Étape 3: L'application au plus haut niveau
Cette étape donne une explication de l'application. La première image montre le diagramme de ce à quoi ressemble l'application complète au niveau supérieur. Il est composé de 7 blocs de construction; 5 blocs de construction standard des bibliothèques et 2 blocs personnalisés qui ont été créés pour cette application.
Les blocs standard de la bibliothèque IoT sont:
- Grabber, récupère les images de la caméra USB
- Détection de mouvement, effectue la détection d'image réelle
- Minuterie périodique, démarre à des horodatages précis et envoie un signal sur la coche à chaque période.
- Buffer Eager, repousse automatiquement le premier élément de la file d'attente. Le tampon garantit qu'un seul message est envoyé au bloc SMS Send puisqu'il ne peut traiter qu'un message à la fois.
- SMS Send Buffered, envoie des SMS via le service Twilio. Les éléments à envoyer sont mis en mémoire tampon pour garantir qu'un seul message est envoyé à la fois.
- Limiteur, pour éviter trop de SMS lorsqu'un intrus est détecté.
- Lire le fichier de propriétés Java, lit les données de configuration à partir du fichier d'entrée
- Afficher, affiche une image à l'écran.
Le bloc Periodic Timer fonctionne comme un moteur système. Il émettra périodiquement une coche qui enverra un signal au bloc Grabber via la goupille de saisie. Le bloc Grabber utilise l'analyse multimédia intelligente ouverte pour Java, OpenIMAJ. Lorsque le bloc est initialisé, un thread séparé est lancé pour lire les données de la caméra. Le thread écoute une file d'attente de commandes. Lorsque le bloc reçoit une commande via la goupille de saisie, il prend une photo et la livre sur la goupille d'image.
L'image est ensuite transmise au bloc de détection de mouvement qui effectue la détection d'image réelle. Le bloc de détection de mouvement utilise également OpenIMAJ. Une méthode dans ce bloc compare deux images et signale les changements d'image lorsqu'un mouvement est détecté. La méthode est très gourmande en CPU et doit être exécutée dans un thread séparé. Lorsqu'une image est détectée, elle est signalée sur la broche motionDetected qui déclenchera la génération d'un message SMS.
Les cases bleu clair sont toutes des méthodes Java spécialement conçues pour cette application. Cliquer sur un bloc de méthode ouvre l'éditeur Java.
Lorsque vous cliquez sur un bloc de construction, vous pouvez voir les détails de la logique à l'intérieur du bloc. Si vous regardez par exemple à l'intérieur du bloc ReadConfig, vous verrez qu'il est créé en combinant un bloc de construction existant et 4 méthodes Java.
Le limiteur met une limite sur la quantité de messages générés. Remarquez le P dans le coin droit du bloc de construction. Il indique que vous pouvez définir le mini-intervalle de temps pendant lequel l'application doit attendre avant d'envoyer un nouveau SMS. Le réglage par défaut est 300000ms, soit 5 minutes. Pour changer la valeur. Faites un clic droit sur le bloc et choisissez paramètres et génériques.
Étape 4: Activer les SMS
Cette application d'alarme utilise Twilio comme service SMS. Pour activer SMS, vous devez éditer le fichier config/alarm-system.properties. Vous pouvez le trouver dans la vue de l'explorateur de packages sous br.ref.motiondetection, voir l'image.
Ce fichier est le même que celui utilisé dans le courrier électronique du système d'alarme. Si vous préférez recevoir des notifications par e-mail, vous utiliserez cette application et modifierez le fichier avec vos identifiants de messagerie.
Si vous n'avez pas le service Twilio, vous pouvez modifier l'application pour utiliser votre propre service SMS. Nous avons également un bloc de construction prêt à l'emploi pour le service Clickatell. Ou vous pouvez connecter un modem pour envoyer des SMS.
Vous pouvez trouver des blocs de construction pour la messagerie SMTP, AirVantage Cloud, IBM Bluemix et Xively pour n'en nommer que quelques-uns.
Notez que pour apporter des modifications, vous devez d'abord créer votre propre projet. Copiez/dupliquez ensuite l'application dans votre projet nouvellement créé. Vous pouvez voir comment cela se fait ici:
N'hésitez pas à me contacter si vous avez besoin d'aide
Étape 5: créez et exécutez l'application sur votre ordinateur portable
Vous devez créer l'application avant de l'exécuter et la déployer sur le Raspberry Pi. Cela se fait à l'aide du générateur de code Reactive Blocks qui crée un projet Java complet à partir de la structure des blocs de construction. Le code qui représente les diagrammes est le code de synchronisation qui gère les événements dans le bon ordre et au bon moment, et représente généralement plus de 60 % des lignes du code de votre programme. Étant donné que les blocs de construction sont des structures mathématiques précises, le générateur peut transformer cette logique en un code très efficace. C'est une très bonne fonctionnalité de blocs réactifs car écrire un tel code manuellement est fastidieux et difficile. Pour générer le code, voici tout ce que vous devez faire:
Cliquez avec le bouton droit sur le projet Alarm System SMS sous l'onglet Projects et sélectionnez Java standard edition. Assurez-vous que les informations de connexion sont INFO. Le projet généré s'ouvrira alors automatiquement sous l'onglet Explorateur de packages. Voir la figure pour plus de détails.
Étape 6: Exécutez l'application sur votre ordinateur
Vous pouvez maintenant exécuter le projet généré. Dans la vue Explorateur de packages sous le projet _exe généré, cliquez avec le bouton droit sur AlarmSystemSMS.launch et sélectionnez RunAs, puis choisissez AlarmSystemSMS.
Regardez la fenêtre à l'écran et la vue de la console. Devrait ressembler à la deuxième photo.
Terminez l'application en fermant la fenêtre de la caméra.
Pour l'application d'envoi d'e-mails: si vous obtenez une erreur d'authentification, assurez-vous que l'envoi SMTP est autorisé pour votre e-mail. Voir le dépannage au bas du didacticiel par e-mail:
Étape 7: Exporter en tant que fichier JAR exécutable
Si vous souhaitez exécuter l'application sur un Raspberry Pi, l'étape suivante consiste à exporter le projet généré dans un fichier JAR exécutable. Pour ce faire, faites un clic droit sur le projet exécutable dans la vue de l'explorateur de packages et choisissez exporter. Sélectionnez ensuite l'option Fichier JAR exécutable et cliquez sur Suivant. Dans la fenêtre suivante, sélectionnez la configuration de lancement appropriée et la destination d'exportation. Dans la destination d'exportation, utilisez le bouton Parcourir pour pouvoir placer le fichier.jar à un endroit où vous pouvez le trouver.
Étape 8: Préparez votre Raspberry Pi
- Préparez la carte SD avec Raspbian (nous avons testé avec NOOBS)
- Insérez la carte SD dans le Raspberry pi
- Connectez la caméra
- Connecter le réseau
- Connectez un écran et un clavier au Pi
- Démarrez le Raspberry pi en connectant le micro USB pour l'alimentation.
- Découvrez l'adresse IP de votre Raspberry Pi. Au démarrage, votre Raspberry Pi rapportera quelque chose comme "Mon adresse IP est 10.10. 15.107"
- Nous avons testé avec Raspbian (identifiant par défaut: pi, mot de passe: raspberry), qui inclut Java par défaut.
Étape 9: Déployez l'application sur votre Raspberry Pi
Pour copier le fichier jar exécutable de votre ordinateur vers le Rapsberry Pi, procédez comme suit:
- Ouvrez un terminal sur votre machine
- Allez dans le répertoire où se trouve le fichier JAR généré
- Tapez scp alarmsystem.jar [email protected]:~/
- La combinaison du mot de passe vous sera demandée. "pi" est le nom d'utilisateur par défaut et "raspberry" le mot de passe par défaut
- Accédez au répertoire où se trouve le fichier de configuration alarm_system.properties. Le plus simple pour moi est de copier manuellement le fichier de l'éditeur Eclipse dans le même répertoire que le fichier jar.
- Tapez scp motiondetection.ini [email protected]:~/
10.10.15.107 est l'adresse IP, remplacez-la par l'adresse IP de votre Raspberry Pi.
- Vous pouvez bien sûr également utiliser une clé USB pour la copier sur le Pi
Étape 10: Exécutez l'application sur votre Raspberry Pi
Vous êtes maintenant prêt à exécuter l'application.
- Connectez-vous au Raspberry Pi directement ou à distance via ssh.
- Créez un nouveau répertoire de configuration: mkdir config
- Vérifiez si le fichier JAR exécutable et le.ini ont été copiés sur le Raspberry Pi
- Déplacez le fichier.ini dans le répertoire config: mv alarm_system.properties config/
- Tapez sudo java -jar alarmsystem.jar
- Regardez la sortie sur la console
- Terminer avec ^C
Étape 11: Modifiez votre application
Vous pouvez maintenant modifier et étendre votre application à votre guise. Si vous souhaitez étendre un système importé comme ce système d'alarme, vous devez d'abord créer votre propre projet et dupliquer le système d'alarme dans votre propre projet.
Notez que pour apporter des modifications, vous devez d'abord créer votre propre projet. Copiez/dupliquez ensuite l'application dans votre projet nouvellement créé. Vous pouvez voir comment cela se fait ici:
Suivez le parcours didactique IoT pour obtenir des descriptions étape par étape sur la façon de créer ou de modifier des applications de blocs réactifs spécifiques.
Conseillé:
Système d'alarme SMS de détection de mouvement DIY : 5 étapes (avec photos)
Système d'alarme SMS de détection de mouvement DIY : Dans ce projet, je combinerai un capteur de mouvement PIR bon marché avec un module GSM TC35 pour construire un système d'alarme qui vous envoie une " ALERTE INTRUSION ". SMS chaque fois que quelqu'un essaie de voler vos affaires. Commençons
Comment construire un système de détection de mouvement avec Arduino : 7 étapes
Comment construire un système de détection de mouvement avec Arduino: Construisez un compteur de production de mouvement et de présence à l'aide d'un Feather HUZZAH programmé avec Arduino et alimenté par Ubidots. Une détection de mouvement physique et de présence efficace dans les maisons intelligentes et la fabrication intelligente peut être très utile dans des applications allant de f
Améliorez le pot d'arrosage automatique bricolage avec WiFi en une alarme de détection de mouvement bricolage Jardinière : 17 étapes
Améliorez le pot d'arrosage automatique bricolage avec WiFi en une alarme de détection de mouvement bricolage vous n'avez pas lu l'article sur la façon de construire un pot d'arrosage automatique DIY Avec WiFi, vous pouvez trouver
Alarme de sécurité de mouvement avec PIR : 4 étapes (avec photos)
Alarme de sécurité de mouvement avec PIR : Avez-vous déjà voulu construire un projet capable de détecter la présence d'une personne dans une pièce ? Si tel est le cas, vous pouvez le faire très facilement à l'aide du capteur de mouvement PIR (Passive Infra Red). Ce capteur de mouvement peut détecter la présence d'une personne dans un ro
Sortie à contrôle de mouvement - À partir d'une lumière à détection de mouvement : 6 étapes
Sortie à contrôle de mouvement - À partir d'une lampe à détection de mouvement : Imaginez que vous êtes un trick-or-treater allant à la maison la plus effrayante du bloc. Après avoir dépassé toutes les goules, fantômes et cimetières, vous arrivez enfin au dernier chemin. Vous pouvez voir les bonbons dans un bol devant vous ! Mais soudain, un gho