Module Northstar sur Robotino : Différence entre versions
(→Présentation du Robotino) |
(→Journal de bord) |
||
Ligne 117 : | Ligne 117 : | ||
- Définir correspondat à un booléen, si vrai (true) la pose (x,y,phi) est prise pour origine | - Définir correspondat à un booléen, si vrai (true) la pose (x,y,phi) est prise pour origine | ||
+ | |||
+ | == 24 Septembre 2013 == | ||
Ecriture d'un programme nommé '''Northstar''' sous RobotinoView2 qui commande le Robotino avec un bloc appelé panneau de commande et qui calcule en même temps la différence entre les valeurs avec le capteur Northsatr et celles par odométrie | Ecriture d'un programme nommé '''Northstar''' sous RobotinoView2 qui commande le Robotino avec un bloc appelé panneau de commande et qui calcule en même temps la différence entre les valeurs avec le capteur Northsatr et celles par odométrie | ||
− | == | + | == 25 Septembre 2013 == |
Ecriture d'un programme nommé '''Odométrie_auto''' qui prend utilise l'odométrie pour commander le déplacement du Robotino sur plusieurs position en définissant une possition comme un vecteur de à 3 composantes x, y et phi. | Ecriture d'un programme nommé '''Odométrie_auto''' qui prend utilise l'odométrie pour commander le déplacement du Robotino sur plusieurs position en définissant une possition comme un vecteur de à 3 composantes x, y et phi. | ||
− | == | + | == 30 Septembre 2013 == |
Ecriture d'un programme nommé '''Drive''' qui prend utilise les valeurs de Northstar plus un delta égale à la différence entre les valeurs par odométrie et celles avec le capteur Northsatr, pour commander le déplacement du Robotino sur plusieurs position. | Ecriture d'un programme nommé '''Drive''' qui prend utilise les valeurs de Northstar plus un delta égale à la différence entre les valeurs par odométrie et celles avec le capteur Northsatr, pour commander le déplacement du Robotino sur plusieurs position. | ||
− | == | + | == 1 Octobre 2013 == |
Ecriture d'un programme nommé '''Moyenneur''' sous RobotinoView2 qui fait la moyenne entre les valeurs de x, y et phi obtenues par odométrie et par le capteur Northstar. | Ecriture d'un programme nommé '''Moyenneur''' sous RobotinoView2 qui fait la moyenne entre les valeurs de x, y et phi obtenues par odométrie et par le capteur Northstar. | ||
− | == | + | == 2 Octobre 2013 == |
Les résultats obtentions par ces programmes paraissaient aberrants par des mesures avec un mètre à ruban et des marquages avec du scotch blanc au sol. | Les résultats obtentions par ces programmes paraissaient aberrants par des mesures avec un mètre à ruban et des marquages avec du scotch blanc au sol. | ||
Ligne 138 : | Ligne 140 : | ||
Recherches d'informations pour le paramétrages | Recherches d'informations pour le paramétrages | ||
− | == | + | == 7 Octobre 2013 == |
Modification du programme '''Odométrie_auto''' pour qu'il continue à commander la Robotino avec les valeurs d'odométrie. | Modification du programme '''Odométrie_auto''' pour qu'il continue à commander la Robotino avec les valeurs d'odométrie. | ||
Ligne 159 : | Ligne 161 : | ||
Grâce à ces fichiers texte et à l'affichage des valeurs de connexions, j'ai pu avec une méthode empirique la valeur de calibrage du plafond. | Grâce à ces fichiers texte et à l'affichage des valeurs de connexions, j'ai pu avec une méthode empirique la valeur de calibrage du plafond. | ||
− | |||
− | |||
== 14 Octobre 2013 == | == 14 Octobre 2013 == |
Version du 1 décembre 2013 à 23:44
Sommaire
- 1 Présentation du Robotino
- 2 Présentation du projet
- 3 Journal de bord
- 3.1 10 Septembre 2013
- 3.2 11 Septembre 2013
- 3.3 17 Septembre 2013
- 3.4 18 Septembre 2013
- 3.5 24 Septembre 2013
- 3.6 25 Septembre 2013
- 3.7 30 Septembre 2013
- 3.8 1 Octobre 2013
- 3.9 2 Octobre 2013
- 3.10 7 Octobre 2013
- 3.11 14 Octobre 2013
- 3.12 15 Octobre 2013
- 3.13 16 Octobre 2013
- 3.14 21 Octobre 2013
- 3.15 22 Octobre 2013
- 3.16 23 Octobre 2013
- 3.17 13 Novembre 2013
- 3.18 20 Novembre 2013
- 3.19 26 Novembre 2013
- 3.20 27 Novembre 2013
- 3.21 28 Novembre 2013
- 3.22 2 Décembre 2013
- 3.23 3 Décembre 2013
- 3.24 4 Décembre 2013
- 3.25 5 Décembre 2013
- 3.26 9 Décembre 2013
- 3.27 12 Décembre 2013
- 3.28 16 Décembre 2013
- 3.29 19 Décembre 2013
Présentation du Robotino
Le Robotino est un robot mobile, avec un châssis rond en inox et trois unités de motorisation omnidirectionnelles
Ses dimensions sont :
- Diamètre : 370 mm
- Hauteur (habillage compris) : 210 mm
- Poids total : environ 11 kg
Les informations de commandes sont envoyées par Wifi via un routeur dédié présent dans la salle Robotino.
Pour la programmation, il existe le logiciel RobotinoView2 qui est un logiciel de programmation du Robotino conçu par Festo. Le Robotino peut être programmé avec d'autres logiciels, Matlab principalement car à l'installation, il y a une toolbox Matlab associé aux blocs fonction du logiciel avec RobotinoView2 ou en utilisant d'autres langages de programmation comme le C++ et Java.
Les capteurs présents initialement sur le Robotino sont :
- 1 Structure de protection en caoutchouc intégrant un détecteur anticollision
- 9 capteurs de distance analogiques à infrarouge
- 1 capteur inductif analogique
- 2 capteurs optiques numériques
Auxquels, on ajoute généralement 1 caméra Web couleur à interface USB.
Avec cette bases de capteurs beaucoup de TPs sont réalisés à Polytech.
Mais pour des projets ou des applications particulières, Festo vend des modules supplémentaires pour le Robotino, tel que le module Northstar de mon projet.
Présentation du projet
Contexte
Pour mon projet de l’année dernière, j’ai utilisé les fonctions de traitement d’image de RobotinoView2, le logiciel de Festo pour programmer le Robotino. La même année, j’ai utilisé lors des Travaux Pratiques de Robotique, la fonction d’odométrie du Robotino. L’odométrie est une technique permettant d'estimer la position d'un véhicule en mouvement. Le terme vient du grec hodos (voyage) et metron (mesure). Cette mesure est présente sur quasiment tous les robots mobiles, grâce à des capteurs embarqués permettant de mesurer le déplacement du robot (de ses roues). Le principe de l’odométrie repose sur la mesure individuelle des déplacements des roues, en comptant les incrémentations du moteur, pour reconstituer le mouvement global du robot. En partant d'une position initiale connue et en intégrant les déplacements mesurés, on peut ainsi calculer à chaque instant la position courante d’un robot mobile.
C’est pourquoi cette année, j’ai eu l’opportunité d’utiliser le module Northstar qui est un système de localisation, comparable à un système de géo-localisation dans un plan. Ce système de navigation associe un projecteur et un capteur infrarouge.
Remarque : il existe 2 types de projecteur, type NS1 et NS2, sur ce schéma c'est un type NS1. Et lors de mon projet, c'est un projecteur de type NS2 que j'ai utilisé. La différence principale est sur la plage de fréquences dans laquelle émet le projecteur sinon le fonctionnement est le même.
Objectifs
Comprendre le fonctionnement du module Northstar.
Savoir paramétrer et initialiser le projecteur et le capteur.
Prendre en mains le bloc associé à Norstar sur RobotinoView2.
Etudier la précision du module Northstar.
Après ces étapes, mon objectif était de rendre l’utilisation le positionnement dans l’espace le plus précis possible en associant les valeurs de x, y et phi calculées par l’odométrie et par le module Northstar le plus précis possible.
Enfin, appliquer cela à des cas concrets, d’abord des trajectoires assez simples, sur des problèmes tels que le patinage ou le glissement des roues qui créent des erreurs avec l’odométrie. Puis en associant mes résultats au projet d’un doctorant qui travail sur l’évitement d’obstacle avec le Robotiono par la logique floue.
Journal de bord
10 Septembre 2013
Présentation des projets IMA 5
11 Septembre 2013
Rencontre avec les professeurs pour avoir plus de détails sur les projets, suivi du choix et de l'attribution des projets
17 Septembre 2013
Discutions avec Mr Rochdi MERZOUKI sur le projet en lui même et ses objectifs.
Prise de contact avec Mr Olivier SCRIVE pour récupérer la boîte contenant le module Northstar
Ecriture d'un diagramme de Gantt pour la gestion du projet, avec les premières étapes du projet ainsi qu'une estimation de leur durée
18 Septembre 2013
Découverte du kit Northstar qui comprend :
- 1 capteur Northstar
- 1 câble USB pour le relier le capteur au Robotino
- 1 projecteur avec un trépied
- 1 bloc d’alimentation électrique adaptable aux prises internationales
- 1 câble pour relier le projecteur au bloc d’alimentation
- 1 manuel d’utilisation (allemand et anglais)
Assemblage du projecteur avec le trépied et le bloc alimentation ainsi que du capteur Northstar avec le Robotino.
Photo de la mise en place Capteur Northstar sur Robotino :
Prise en main du bloc Northstar présent sur le logiciel RobotinoView2
Les entrées sont :
- Numéro de local correspondant au numéro du local dans lequel Robotino se trouve, lié au numéro fixé sur le projecteur
- Calibrage du plafond (en mm) correspondant à la distance entre le détecteur et le plafond
- X (en mm) correspondant à la position x de l'origine définie par l'entrée "Définir"
- Y (en mm) correspondant à la position y de l'origine définie par l'entrée "Définir"
- Phi (en mm) correspondant à la position phi de l'origine définie par l'entrée "Définir"
- Définir correspondat à un booléen, si vrai (true) la pose (x,y,phi) est prise pour origine
24 Septembre 2013
Ecriture d'un programme nommé Northstar sous RobotinoView2 qui commande le Robotino avec un bloc appelé panneau de commande et qui calcule en même temps la différence entre les valeurs avec le capteur Northsatr et celles par odométrie
25 Septembre 2013
Ecriture d'un programme nommé Odométrie_auto qui prend utilise l'odométrie pour commander le déplacement du Robotino sur plusieurs position en définissant une possition comme un vecteur de à 3 composantes x, y et phi.
30 Septembre 2013
Ecriture d'un programme nommé Drive qui prend utilise les valeurs de Northstar plus un delta égale à la différence entre les valeurs par odométrie et celles avec le capteur Northsatr, pour commander le déplacement du Robotino sur plusieurs position.
1 Octobre 2013
Ecriture d'un programme nommé Moyenneur sous RobotinoView2 qui fait la moyenne entre les valeurs de x, y et phi obtenues par odométrie et par le capteur Northstar.
2 Octobre 2013
Les résultats obtentions par ces programmes paraissaient aberrants par des mesures avec un mètre à ruban et des marquages avec du scotch blanc au sol.
Recherches d'informations pour le paramétrages
7 Octobre 2013
Modification du programme Odométrie_auto pour qu'il continue à commander la Robotino avec les valeurs d'odométrie.
Et qu'il enregistre aussi les valeurs grâce au bloc nommé Enregistreur de valeurs qui inscrit les valeurs d'entrée, séparées par un tabulateur, sur une nouvelle ligne du fichier texte.
Ces fichiers texte sont contenus dans un dossier nommé Résultats, il y en a 6 :
- x_Northsyar
- y_Northstar
- phi_Northstar
- x_Odometrie
- y_Odometrie
- phi_Odometrie
Grâce à ces fichiers texte et à l'affichage des valeurs de connexions, j'ai pu avec une méthode empirique la valeur de calibrage du plafond.
14 Octobre 2013
15 Octobre 2013
16 Octobre 2013
21 Octobre 2013
22 Octobre 2013
23 Octobre 2013
13 Novembre 2013
20 Novembre 2013
26 Novembre 2013
27 Novembre 2013
28 Novembre 2013
2 Décembre 2013
3 Décembre 2013
4 Décembre 2013
5 Décembre 2013
9 Décembre 2013
12 Décembre 2013
16 Décembre 2013
19 Décembre 2013
Soutenances intermédiaires de projets