IMA4 2018/2019 P31 : Différence entre versions
(→Analyse du projet) |
(→Choix techniques : matériel et logiciel) |
||
Ligne 126 : | Ligne 126 : | ||
− | - 1 Arduino UNO ( | + | - 1 Arduino UNO (https://www.gotronic.fr/art-carte-arduino-uno-12420.htm) |
Version du 14 janvier 2019 à 14:11
Sommaire
Présentation générale
Description
L'objectif de notre projet est de pouvoir cartographier l'intensité du signal WiFi dans un bâtiment (Polytech Lille par exemple). Pour cela nous réaliserons un robot pouvant se déplacer dans le bâtiment tout en mesurant la puissance du signal WiFi là où il passe.
Premièrement, le robot doit se déplacer en autonomie et donc transporter avec lui une batterie pour l'alimentation.
Le robot devant se déplacer dans tout le bâtiment, donc éventuellement monter des escaliers, il semble adapté de concevoir un robot de type hexapode. Le déplacement du robot sera effectué avec un certain nombre de servomoteurs assurant le mouvement de ses six "pattes". Pour encadrer le déplacement, des capteurs de distance seront implantés à des points stratégiques du robot. La gestion des servomoteurs et des capteurs sera faite à partir d'un microcontrôleur de type Arduino.
Lors du déplacement du robot, il faudra mesurer la puissance du signal WiFi et la faire correspondre à la position actuelle. Dans un premier temps il faudra donc mettre en place un système de mesure du signal WiFi grâce au RSSI. Ensuite il sera placé dans le bâtiment des indicateurs que repérera le robot afin qu'il puisse se situer dans le bâtiment. En connaissant sa position nous pourrons alors la coupler avec la puissance du signal WiFi correspondante.
Toutes les informations seront stockées en interne sur l'Arduino puis traitées après la fin des mesures afin de produire la cartographie de la puissance du signal WiFi dans le bâtiment. La carte sera du type "Heat Map" afin d'avoir un visuel facile à lire et pouvoir aisément déterminer la répartition du signal WiFi.
Objectifs
Nous sommes conscients que la description du projet faites ci dessus (correspondant également au scénario d'usage plus bas) est assez ambitieuse. Nous avons donc décomposé le projets en divers objectifs distincts. Nous commencerons par réaliser les objectifs de façon indépendantes puis, avec le temps qu'il nous restera, nous essayerons de les assembler afin de correspondre le plus possible à la description faite du projet.
Conception du robot
Pour commencer le projet nous devons réfléchir à la conception mécanique du robot. Pour cela nous nous baserons sur des modèles de robot hexapodes déjà existants. Il semble judicieux d'avoir la structure du robot découpée dans une plaque de plexiglas par exemple puis les "pattes" réalisées en impression 3D. Il s'agira donc dans un premier temps avant de commencer le projet d'apprendre tous les deux l'utilisation de l'imprimante 3D et de la découpeuse laser au Fabricarium.
Déplacement et détection d'obstacles
Une fois la structure du robot conçue, il faudra y implanter l'Arduino, les capteur, actionneurs ainsi que la batterie. Il conviendra alors de concevoir un circuit imprimé pour faciliter la mise en place et l'utilisation de tous ces éléments. Ensuite viendra la programmation du déplacement du robot avec notamment la commande des servomoteurs. Finalement, et pas des moindres, viendra la détection d'obstacles (et escaliers) ainsi que le franchissement ou l'esquive de ces derniers.
Mesure RSSI et Positionnement
La prochaine étape sera la mise en place de deux modules Arduino. Le premier (module WiFi) pour récupérer les RSSI des signaux WiFi puis le second pour déterminer la position du robot (la technologie reste à déterminer). Enfin il faudra coupler ces deux mesures.
En ayant la position du robot grâce au RFID, nous pourrons alors choisir son déplacement grâce à la carte du bâtiment et l'emplacement des marqueurs.
Cartographie
Finalement, la dernière étape sera de traiter l'ensemble des données collectées pour déterminer la cartographie de la puissance du signal WiFi.
Analyse du projet
Positionnement par rapport à l'existant
Internet est devenu un élément essentiel de notre vie. A la fois un outil de travail, de recherche et de loisir, il est essentiel pour beaucoup d'entreprises, d'écoles, comme de particuliers de disposer d'un bon signal wifi dans l'ensemble de leurs locaux. C'est alors qu'intervient notre projet.
La force d'un signal wifi (RSSI) est facilement obtenable à l'aide d'applications sur smartphone ou ordinateur. Certaines proposent même de fournir une carte du RSSI une fois l'espace entièrement balayé. Mais ces applications nécessitent tout de même à leur utilisateur d'explorer lui même l’entièreté de l'espace que le wifi est sensé couvrir, ce qui devient très vite fastidieux pour des surfaces comme celles de Polytech Lille.
Le principe d'un robot qui se déplacerait, en autonomie, à la place de l'utilisateur, pour cartographier le bâtiment n'est aujourd'hui qu'à l'état de projet universitaire. Un tel robot proposerait une solution moins contraignante que les applications déjà existantes.
Notre projet se base donc sur la mise en commun de deux notions existant déjà séparément : D'un côté les applications de cartographie de RSSI et d'autre part les robots hexapodes se déplaçant en autonomie. Nous allons donc présenter un concurrent de chacune des deux branches.
Analyse du premier concurrent
HeatMapper est un logiciel (disponible uniquement sous Windows) de l'entreprise Ekahau spécialisée dans la conception de réseau sans fil. Leur logiciel permet d'importer un plan de l'espace que l'on veut analyser, ensuite il suffit de se déplacer avec un ordinateur dans l'espace en question et le logiciel fournis la couverture wifi superposée sur le plan importé sous la forme d'une Heat Map.
Le logiciel est disponible gratuitement mais une version plus complète peut être achetée. Il propose d'autres fonctionnalités comme vous pouvez le voir sur la figure ci contre. Le point le plus intéressant est le fait que le logiciel ne nécessite pas forcément un balayage complet de la surface à traiter mais il est capable de calculer la répartition du signal dans toute la surface à partir de mesures limitées. Le logiciel peut alors tracer le chemin pris l'utilisateur pour la cartographie. Une autre fonctionnalité du logiciel est la possibilité d'ajouter sur la carte, par exemple, l'emplacement des machines à café, lieux où la bonne réception du signal WiFi est capitale.
Comme expliqué précédemment, la concurrence proposant une cartographie comme HeatMapper ne le propose pas de façon automatisée. C'est à l'utilisateur de se déplacer dans la zone à analyser. C'est ici que notre projet intervient.
Analyse du second concurrent
Le MX-Phoenix est un robot hexapode inventer par Kåre Halvorsen. L'exosquelette du robot est fait par impression 3d. Le robot est composé de six pattes, chaque patte est composée de deux pièces articulées par trois servomoteurs.
Il s'agit d'un robot très perfectionné sur le déplacement, par exemple sur des terrains rocailleux. Il est également capable de monter et descendre des escaliers.
Nous nous inspireront de ce type de robot pour créer le notre, principalement pour le mode de déplacement, la façon de bouger les pattes, pour avancer et monter des escaliers. Pour la structure même du robot, nous n'auront pas le temps ni les moyens de concevoir un robot aussi esthétique et sophistiqué, nous nous inspirerons donc d'autres formes de robot hexapodes plus simples pour la "carcasse" du robot.
Scénario d'usage du produit ou du concept envisagé
Une entreprise (ou autre administration) voudrait optimiser son réseau wifi dans ses locaux car certains employés se plaignent de ne pas avoir de signal ou que le signal est très élevé dans des espaces inutiles car peut fréquentés ou sans nécessité d'une connexion internet.
L'entreprise fait alors appel à nos services.
A l'aide d'un plan numérique que nous a fourni l'entreprise nous plaçons des marqueurs dans le bâtiment afin que le robot puisse se repérer. Lors d'une journée où les employés ne sont pas présents (afin d'éviter qu'ils ne marchent sur le robot par inattention), nous laissons le robot parcourir le bâtiment en autonomie. Une fois le parcours du robot terminé, nous récoltons les données qu'il a prélevé afin de fournir une carte, étages par étages, de la couverture wifi à notre client.
Réponse à la question difficile
Suite à la présentation des prémices de notre projet, l'encadrant ayant assisté à la présentation (M. Dequidt) nous a posé plusieurs question et nous avons retenu une remarque en particulier :
Les capteurs de détection pour obstacles ne sont pas bien définis. La distinction obstacle/escalier n'est pas clarifiée.
Il est en effet évident que la gestion des obstacles est un des enjeux majeurs de notre projet, le robot devant se déplacer en autonomie dans un bâtiment.
Une première solution serait de poser des marqueurs sur les obstacles et/ou escaliers de la même façon qu'on en place dans le bâtiment pour que le robot se localise. Ainsi si il se trouve face à un escalier, par exemple, il trouvera un marqueur qui lui indiquera qu'il est bien face à un escalier et non un obstacle.
Une autre solution qui sera celle mise en pratique dans un premier temps est que face à tout obstacle, le robot entrera en phase de reconnaissance. Il essayera de contourner l'obstacle, de prendre des mesures avec ses capteurs sous différents angles afin de déterminer si il s'agit d'un obstacle contournable, d'une voie sans issue ou d'un escalier et il agira en conséquence. Pour cela on utilisera quatre capteurs de distance. Un visera en face du robot de manière horizontale. Le second visera en face du robot mais avec un angle. Les deux derniers mesurerons de chaque côté du robot.
Enfin la dernière solution, et la plus optimale mais aussi la plus longue à mettre en place, est que le robot sache où il se situe dans le bâtiment. Pour cela, pendant la phase de cartographie le robot se repère à l'aide de marqueurs que nous avons placé stratégiquement dans le bâtiment puis par la suite il s'aide de la carte RSSI créée pour se repérer. Le robot est donc sensé savoir où il est (plus au moins précisément) et donc savoir si il est face à un escalier (élément prévu) ou face à un obstacle.
Préparation du projet
Cahier des charges
Déplacement :
- Le robot doit savoir se déplacement en autonomie : marche droite, virage, monter et descendre les escaliers
- Le robot doit savoir s'adapter à son environnement : détection et contournement d'obstacles, détection d'escalier
- Le robot soit savoir se repérer : lecture de donnée permettant au robot de se situer par rapport à une "carte" pré-enregistrée
Lecture :
- Le robot doit pouvoir lire le signal RSSI du wifi de l'école
- Le robot doit pouvoir se repérer dans le bâtiment grâce au RFID
- Le robot doit pouvoir associer et stocker ces deux données
Choix techniques : matériel et logiciel
- 1 Arduino UNO (https://www.gotronic.fr/art-carte-arduino-uno-12420.htm)
- 18 servomoteurs SG90 (https://www.gotronic.fr/art-servomoteur-sg90-19377.htm)
3 servomoteurs pour chacune des 6 pattes
- 4 capteur de distance ultrason (https://www.gotronic.fr/art-module-a-detection-us-hc-sr04a-27740.htm)
deux frontaux avec des angles différents et deux latéraux
- 1 shield PWM (https://www.gotronic.fr/art-shield-i2c-pour-16-servos-ada1411-20672.htm#complte_desc)
1 shield permet de contrôler 16 servomoteurs
- 1 Module WiFi Arduino : par exemple le ESP8266 (https://www.gotronic.fr/art-module-wifi-serie-esp8266-113990084-23666.htm)
- Piles ou batterie
pour l'alimentation du robot
Liste des tâches à effectuer
Calendrier prévisionnel
Réalisation du Projet
Feuille d'heures
Tâche | Prélude | Heures S1 | Heures S2 | Heures S3 | Heures S4 | Heures S5 | Heures S6 | Heures S7 | Heures S8 | Heures S9 | Heures S10 | Total |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Analyse du projet | 0 |