README.md
Administration système, déploiement et surveillance de logiciels dans un réseau de capteurs
Dans le cadre de recherches dans le domaine des réseaux de capteurs et des objets connectés, notre projet consiste à développer une solution de maintenance et de reconfiguration à distance d'un ensemble de nœuds déployés dans un environnement réel. Afin de faciliter la vie de ces chercheurs sur le test de leurs hypothèses, ils pourront facilement et rapidement déployer leurs créations sur tout les nœuds souhaités grâce à un système de sélection ou au téléchargement du nouveau code sur tous les nœuds du réseau.
L'objectif principal de notre projet est de créer une interface permettant de tester des programmes ou logiciels en les déployant sur le vaste réseau de capteurs. Nous devons rendre accessible chaque nœud indépendamment des autres, tout en permettant un lien entre tous, afin d'envoyer le contenu vers tout ou une partie des nœuds disponibles.
Pour commencer
Vous trouverez tous les fichiers et dossiers liés à ce projet sur ce dépôt git.
Démarrage
- Etape 1 : Rendez-vous sur le site : http://projet-p10.plil.fr/IMA3_P10/site/index.html ;
- Etape 2 : Connectez-vous ;
- Etape 3 : Utilisez le site pour envoyer des codes aux capteurs et pour récupérer des valeurs ou un historique.
Fonctionnalités
Equipe 1
- Uploader les codes reçu sur la bonne carte (i.e. le bon capteur) ;
- Récupérer les valeurs de retour des capteurs et les envoyer sur le serveur.
Equipe 2
Script Ansible permettant l'initialisation et la mise à jour des données présentes sur les Raspberry Pi.
Equipe 3
Site web permettant différentes choses :
- Ajouter raspberrys et capteurs;
- Envoyer un code à un ensemble de capteurs ;
- Observer les valeurs des capteurs ;
- Récupérer un historique des valeurs des capteurs ;
- Afficher l'évolution des valeurs sous forme de graphe.
Avancée du projet
Equipe 1
- Les Raspberry communiquent parfaitement avec le site par wget et requete POST
- Les codes sont modifiés et prêts (code température et code distance)
- Un Makefile générique est opérationel et en cours de finition
- Il faut écrire une script pour les raspberry qui récupère le numéro de capteur (pour l'associer à un numéro de port) et la version pour l'envoyer au Makefile
- Le Makefile choisira d'abord quel commande d'upload il va effectuer (en fonction du numéro de version) puis spécifiera le port dans la commande avrdude
- La carte Nucléo M4 est en suspend tant que le reste n'est pas fonctionnel
Equipe 2
- Ansible est opérationel pour gérer les Arduino ;
- L'installation des logiciels et bibliothèques nécessaires au fonctionnement des codes est fonctionnelle ;
- La transmission des fichiers et le lancement du script fonctionne ;
- Il faut gérer l'envoi automatique des clé ssh aux raspberry pour qu'Ansible puisse fonctionner de manière 100% autonome ;
- Il faut récupérer le code envoyé depuis le site sans le télécharger (car Ansible est aussi sur le serveur).
Equipe 3
- Site 98% terminé par rapport à ce qui a été demandé ;
- Il faut ajouter une page permettant la visualisation graphique de l'ensemble du réseau.
Fabriqué avec
- emacs - Editeur de textes
Auteurs
- Guillaume Rouillé
- Eymeric Capronnier
- Loris Ahouassou