IMA4 2016/2017 P48 : Différence entre versions
m (→Semaine 1) |
m (→Semaine 1) |
||
Ligne 107 : | Ligne 107 : | ||
Robotino vu de dessus : <br> | Robotino vu de dessus : <br> | ||
[[Fichier:capt3_rob.png|400px]] | [[Fichier:capt3_rob.png|400px]] | ||
+ | <br> | ||
− | L'élément central du schéma de commande (omnidrive) permet de contrôler les moteurs de chacune des trois roues en fonction d'une consigne soumise en entrée de la manière suivante : <br> | + | L'élément central du schéma de commande (omnidrive) permet de contrôler les moteurs de chacune des trois roues en fonction d'une consigne soumise en entrée de la manière suivante :<br> |
[[Fichier:capt2_rob.png|700px]] | [[Fichier:capt2_rob.png|700px]] | ||
+ | |||
+ | Par rapport à l'omnidrive, les vitesses en amont des trois moteurs sont les consignes alors que les vitesses en aval (ici récupérée par des capteurs pour être traitées) sont les vitesses réelles. <br> | ||
+ | |||
+ | |||
+ | La partie 'horloge' en haut à gauche permet d'appliquer une commande pendant une durée limitée puis de la forcer à 0 pour arrêter les moteurs. <br> | ||
== Fichiers Rendus == | == Fichiers Rendus == |
Version du 6 février 2017 à 17:42
Sommaire
Surveillance d'un robot mobile
Cahier des charges
Présentation générale du projet
Contexte
Un robot mobile est un système autonome capable de se déplacer et/ou d’assurer le transport de ressources. Dans le cadre de ce projet, nous utiliserons le Robotino dans un but pédagogique.
La robotique mobile autonome étant de plus en plus utilisée dans de nombreux milieux, elle remplit des missions d’importance variable. Dans le cadre d’applications qui ont une grande importance (tel que le transport de personnes par exemple), le robot peut nécessiter une surveillance approfondie.
La surveillance, au sens où nous l’entendons ici, consiste à détecter les erreurs de fonctionnement lors de l’utilisation du robot afin si possible de les corriger ou de fonctionner dans ce qu’on appellera un mode dégradé.
Objectif du projet
Le mouvement du robot peut être décrit par son modèle mathématique. A l'occasion d'un dysfonctionnement, le comportement du robot peut être différent de celui de son modèle. C'est un moyen de se rendre compte de l'existence d'une anomalie. Cependant, certaines commandes envoyées au robot ne permettent pas d'observer une différence entre le comportement du modèle et les mesures recueillies sur le robot, on parle alors d’une zone d'indiscernabilité du défaut. La conséquence directe est la non détection de certains défauts.
L'objectif est de montrer l'existence de ces commandes sur une application réelle.
Choix techniques : matériel et logiciel
Une première entrevue avec l'encadrant nous a permis de mettre en place les choses suivantes :
Le robot qui servira à réaliser les tests est le Robotino :
- diamètre du châssis: 350 mm
- hauteur: 200 mm (sans caméra)
- masse : 11 Kg
- 3 moteurs avec un encoder par moteur
- 3 Roues omnidirectionnelles ( diamètre: 80 mm )
Les trois roues omnidirectionnelles permettent un déplacement dans toutes les directions, ce qui implique une grande diversité pour ce qui est des trajectoires que le robot pourra suivre.
Le logiciel qui permettra de générer des commandes, de réaliser les tests et de créer une interface d'utilisation est Matlab.
Calendrier prévisionnel
Liste des tâches à effectuer
- Prise en main des méthodes de discernabilité.
- Bibliographie.
- Prise en main de l’application Matlab pour la génération des commandes non discernables.
- Application des techniques de discernabilité pour la génération des commandes qui rendent les défauts indiscernables en utilisant le modèle linéaire du robot.
- Réalisation des tests en simulation avec Matlab.
- Réalisation des tests sur le robot.
- Utilisation du modèle non linéaire du robot.
- Création d’interface avec l’outil GUI de Matlab.
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Définition cahier des charges |
3h | |||||||||||
Prise en main des méthodes de discernabilité | 2h | |||||||||||
Bibliographie | 4h | 2h | ||||||||||
Prise en main de l’application Matlab pour la génération des commandes non discernables | 4h | 4h | ||||||||||
Application des techniques de discernabilité pour la génération des commandes qui rendent les défauts indiscernables en utilisant le modèle linéaire du robot | ||||||||||||
Réalisation des tests en simulation avec Matlab | ||||||||||||
Réalisation des tests sur le robot | ||||||||||||
Utilisation du modèle non linéaire du robot | ||||||||||||
Création d’interface avec l’outil GUI de Matlab |
Avancement du Projet
Prélude
Rencontres avec l'encadrant :
- Première entrevue le 15/12 (30 min): Présentation générale du sujet et du matériel à utiliser, mise en place du cahier des charges et de la liste des tâches à réaliser.
- Seconde entrevue le 10/01 (45 min): Présentation détaillée du sujet, découverte de la documentation technique à s'approprier.
Semaine 1
Réunion de présentation (avec l'encadrant):
- présentation du modèle linéaire du Robotino
- fourniture de la documentation concernant :
- la caractérisation de la discernabilité des systèmes dynamiques
- le modèle linéaire du Robotino (démonstration)
- la mise en place d'un modèle non-linéaire du Robotino
Séance pratique :
Dans le but de réaliser des campagnes d'acquisition, il a fallu prendre en main le contrôle du robot. Grâce au logiciel RobotinoView, nous commandons ses moteurs dans le but de lui faire faire des déplacements de base :
L'élément central du schéma de commande (omnidrive) permet de contrôler les moteurs de chacune des trois roues en fonction d'une consigne soumise en entrée de la manière suivante :
Par rapport à l'omnidrive, les vitesses en amont des trois moteurs sont les consignes alors que les vitesses en aval (ici récupérée par des capteurs pour être traitées) sont les vitesses réelles.
La partie 'horloge' en haut à gauche permet d'appliquer une commande pendant une durée limitée puis de la forcer à 0 pour arrêter les moteurs.