Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Balayeuse autonomne
Gabriel Gagné, Samuel Dussault, Danny Groleau13 Décembre 2016
GSD
Sommaire
Matériel
Microcontrôleur
Kinect
Intéractions Web
Rétrospective
Vision original
Vision original
Fonctionnalités prévues du robot
● Déplacement autonomne
○ Éviter les obstacles (objets et escalier)
○ Optimiser son travail
● Intéractions web
○ Envoyer à une application les informations relatives à son fonctionnement
○ Capable de recevoir des commandes
● Fonctionnalitées générales
○ Génération d’une carte 2D
○ Étiquetage des zones
Fonctionnalités obtenues du robot
● Déplacement autonomne
○ Éviter les obstacles (objets et escalier) Partiellement
○ Optimiser son travail
● Intéractions web
○ Envoyer à une application les informations relatives à son fonctionnement
○ Capable de recevoir des commandes
● Fonctionnalitées générales
○ Génération d’une carte 2D
○ Étiquetage des zones
Modularité
MicrocontrôlleurProblèmes et solutions
Microcontrôlleur
Avantages
● Simple● Rapide● Bonne documentation● Interface électronique pratique● Abstraction des composantes
matérielles
Désavantages
● Pas de système d’exploitation● Pas beaucoup de puissance de calcul● Peu de librairies disponibles
Parallélisme
Parallélisme
Circuit électronique
Sonar
Magnétomètre - Accéléromètre - Gyroscope
Kinect et cartographieProblèmes et solutions
Kinect et cartographie
● But : Utiliser la caméra de profondeur pour produire une carte de l’environnement
Kinect et cartographie
● Étapes de production d’un maillage
○ Prendre une photo de profondeur
○ Ignorer les points qui se trouvent hors de porté
○ Grouper les points qui font partie d’un même objet/obstacle
○ Produire un maillage avec les groupes de points
○ Lisser le maillage
○ Ajouter le maillage à la carte (environnement de travail)
○ Fusionner les maillages “équivalent”
○ Fusionner les extrémités des maillages (assembler le maillage)
Kinect et cartographie
Kinect et cartographie
Kinect et cartographie
DBSCAN(density-based spatial clustering of applications with noise)
● O(n²), trop lent … ~15 secondes
● Résultat intéressant
● Les points sont ordonnées...
● Solution modifier l’algorithme
● Ne recule pas dans le conteneur
● N’avance plus lorsque non nécessaire
● < 1 seconde :)
Kinect et cartographie
● Production du maillage avec plusieurs échantillons
○ Maillage imprécis
○ Bruit d’un échantillons à l’autre
○ Fusion du maillage inexistante
○ Paramètres non optimaux
Kinect et cartographie
● Production du maillage avec des paramètre plus “sensible”
○ Beaucoup trop de mailles
○ Beaucoup de bruit
○ Potentiellement long à fusionner pour la carte
○ On doit lisser le maillage
Kinect et cartographie
Intéractions webProblèmes et solutions
Intéractions web● Technologies front-end
○ MeteorJS
○ ReactJS
○ Stylus
Robot
MongoDB
MeteorJS
Client
Client
Client
Intéractions web
● Mongocxx c++ driver
○ Difficile à installer pour Raspbian
○ Séquentiel
● Commandes
○ Performances raspberry / serveur web
Demo
MatérielProblèmes et solutions
Châssis
● Support du poid
● Stabilité
● Angle des roues
Déplacement
● Poid inégale sur les roues
● Moteurs trop faibles
Rétrospective
DépensesCoût Note
Kit Arduino 100$ Plusieurs composante non utilisées
Kit Raspberry 120$ Quelque fils et LED non utilisés
Boussole/accéléromètre 30$ Module du kit Arduino pas adéquat
Moteurs et sonar 10$ Moteur
Baterie raspberry+fil 30$
Baterie kinect 25$
Mécano 35$
Kinect 0$ Fournit par le DOMUS
Total 350$
Revue des pièces et technologie
● Kinect
○ ER sensor
● Moteurs
○ Plus fort, sans brosse
● Capteur
○ 2 sonar
● Chassis imprimé
● Meilleurs roues
Merci !