CONCEPTION D’UNE CONCEPTION D’UNE NOUVELLE ARCHITECTURENOUVELLE ARCHITECTURE
POUR ROBOT MOBILEPOUR ROBOT MOBILE
TER 2004 – 130
Romain CUVILLIER HEI 5 IIRomain ROSTAGNO HEI 5 GE
SOMMAIRE DE LA SOMMAIRE DE LA PRESENTATIONPRESENTATION
Introduction à la coupe de robotiqueIntroduction à la coupe de robotique État des recherches en 2003État des recherches en 2003 Besoins et cahier des chargesBesoins et cahier des charges Conception de l’architectureConception de l’architecture Asservissement en logique floueAsservissement en logique floue BilanBilan
Coupe de France de robotiqueCoupe de France de robotique
Compétition amicale qui rassemble Compétition amicale qui rassemble chaque année près de 200 équipeschaque année près de 200 équipes
Son but :Son but : faire concourir 2 robots faire concourir 2 robots autonomes sur une aire de jeu, autour autonomes sur une aire de jeu, autour d’un thème précisd’un thème précis
La commission SYSTEO y participe pour La commission SYSTEO y participe pour la 9ème annéela 9ème année
LE ROBOTLE ROBOT
Le robot est un système mécanique et Le robot est un système mécanique et électronique, géré informatiquementélectronique, géré informatiquement
Il comporte des capteurs qui le Il comporte des capteurs qui le renseignent sur son environnementrenseignent sur son environnement
Il pilote des actionneurs afin de se Il pilote des actionneurs afin de se déplacer et d’exécuter des actions de jeu.déplacer et d’exécuter des actions de jeu.
STRUCTURE ACTUELLE DU STRUCTURE ACTUELLE DU ROBOTROBOT
M
M
Carte µC 8051+
GAL (décodage des roues codeuses)
CARTE MEREPC 104
Asservissement+
Stratégie+
Communication+
Caméra
Carte µC 8051
E/S capteurs et
actionneurs
actionneurs
capteurs
Opto-coupleurs+
variateursCarte
d’acquisition
caméra
ETAT ACTUEL DU SYSTEMEETAT ACTUEL DU SYSTEME
AVANTAGESAVANTAGES
Architecture Architecture complètement complètement fonctionnellefonctionnelle
Principe de Principe de l’asservissement maîtrisél’asservissement maîtrisé
Souplesse d’utilisationSouplesse d’utilisation Technologie bien Technologie bien
dimensionnée pour les dimensionnée pour les besoins de besoins de l’asservissementl’asservissement
INCONVENIENTSINCONVENIENTS
Encombrement important Encombrement important au sein du robotau sein du robot
Consommation Consommation énergétique élevéeénergétique élevée
Sensibilité aux Sensibilité aux interférencesinterférences
NOUVEAUX BESOINSNOUVEAUX BESOINS
Simplifier la chaîne électronique pour gagner en Simplifier la chaîne électronique pour gagner en fiabilitéfiabilité
Prendre des mesures en matière de protection Prendre des mesures en matière de protection aux rayonnements électromagnétiquesaux rayonnements électromagnétiques
Mieux organiser l’aspect logicielMieux organiser l’aspect logiciel Réduire l’encombrement de l’architectureRéduire l’encombrement de l’architecture Diminuer les consommations électriquesDiminuer les consommations électriques
CAHIER DES CHARGESCAHIER DES CHARGES
Création d’une architecture simplifiée plus souple, moins Création d’une architecture simplifiée plus souple, moins encombrante et plus robuste :encombrante et plus robuste :
- automate programmableautomate programmable- MicrocontrôleurMicrocontrôleur- PC104PC104
Réutilisation de l’asservissement en logique floue.Réutilisation de l’asservissement en logique floue. Gérer les codeurs incrémentaux simplement.Gérer les codeurs incrémentaux simplement. Ecrire une application bien structurée.Ecrire une application bien structurée. Réaliser une plate-forme de tests à l’aide du robot 2003.Réaliser une plate-forme de tests à l’aide du robot 2003. Créer des outils informatiques qui aideront à finaliser Créer des outils informatiques qui aideront à finaliser
l’architecture.l’architecture.
LES AUTOMATES PROGRAMMABLESLES AUTOMATES PROGRAMMABLES
AVANTAGES INCONVENIENTS
Langage formel et simple Langage formel et simple (grafcet, ladder) transparent (grafcet, ladder) transparent pour l’utilisateurpour l’utilisateur
Grande rapidité de calculGrande rapidité de calcul
ModulablesModulables
Entrées-sorties directesEntrées-sorties directes
Robuste de tous points de vueRobuste de tous points de vue
Intégration directe dans le robotIntégration directe dans le robot
Langage parfois inadapté pour Langage parfois inadapté pour des problèmes complexesdes problèmes complexes
Gourmand en énergieGourmand en énergie
EncombrantsEncombrants
Pas de sorties évoluées Pas de sorties évoluées d’origine (obligation d’ajouter d’origine (obligation d’ajouter des modules)des modules)
Prix en baisse mais élevésPrix en baisse mais élevés
LES CARTES PC104LES CARTES PC104
AVANTAGES INCONVENIENTS
Architecture commune aux Architecture commune aux micro-ordinateursmicro-ordinateurs
Pratiques et autonomes Pratiques et autonomes (périphériques standards, (périphériques standards, écran, souris, claviers)écran, souris, claviers)
Grande rapidité de calculGrande rapidité de calcul
Programmation dans tous les Programmation dans tous les langageslangages
Très peu d’E/S (2 ports série, 1 Très peu d’E/S (2 ports série, 1 parallèle)parallèle)
Longues périodes Longues périodes d’initialisation du système d’initialisation du système d’exploitation (30 secondes)d’exploitation (30 secondes)
Forte consommation électriqueForte consommation électrique
Encombrantes et fragilesEncombrantes et fragiles
Prix très élevés (1500 €)Prix très élevés (1500 €)
LES MICROCONTRÔLEURSLES MICROCONTRÔLEURSAVANTAGES INCONVENIENTS
Multiples langages de Multiples langages de programmationprogrammation
Grandes compacitésGrandes compacités
Faible consommationFaible consommation
Multitudes d’E/S, souvent Multitudes d’E/S, souvent évoluées (I²C, PWM, …)évoluées (I²C, PWM, …)
Rapidité de calcul en nette Rapidité de calcul en nette croissancecroissance
Marché concurrentiel et gamme Marché concurrentiel et gamme de produits importantede produits importante
Prix attractifsPrix attractifs
Nécessité d’acheter le Nécessité d’acheter le programmateur spécifiqueprogrammateur spécifique
Fragiles et relativement Fragiles et relativement sensibles aux parasitessensibles aux parasites
Besoin fréquent de composants Besoin fréquent de composants annexesannexes
Taille des programmes limitéeTaille des programmes limitée
LE CHOIX DEFINITIFLE CHOIX DEFINITIF
Il s’est porté sur un microcontrôleurIl s’est porté sur un microcontrôleur C’est le meilleur compromis entre les C’est le meilleur compromis entre les
performances d’une PC104 et la fiabilité performances d’une PC104 et la fiabilité des automates programmablesdes automates programmables
Trois familles classiques ont retenu notre Trois familles classiques ont retenu notre attention :attention :
- Les 68HC11 de MotorolaLes 68HC11 de Motorola- Les 8051 et leurs dérivésLes 8051 et leurs dérivés- Les modules BASIC (PicBasic,TigerBasic)Les modules BASIC (PicBasic,TigerBasic)
COMPARAISON ENTRE COMPARAISON ENTRE MICROCONTRÔLEURSMICROCONTRÔLEURS
MODULES BASIC P89Cxxxxx
Mémoire programme 64 à 512 Ko (flash) 64 à 512 Ko (flash) Jusqu’à 64 Ko (flash)Jusqu’à 64 Ko (flash)
RAM 32 à 512 Ko32 à 512 Ko Jusqu‘à 32 KoJusqu‘à 32 Ko
Nb d’E/S 3434 32 (4*8 bits)32 (4*8 bits)
Horloge/Timers OuiOui 3 timers / compteurs (16 3 timers / compteurs (16 bits) / 5 PWMbits) / 5 PWM
CAN De 4 à 8 (10 bits)De 4 à 8 (10 bits) //
Nb d’instr. /sec 40 à 100 000 instr. BASIC40 à 100 000 instr. BASIC 3 000 0003 000 000
Interruptions // 4 niveaux / 6 sources4 niveaux / 6 sources
Communication RS232 + I²C logicielRS232 + I²C logiciel UARTUART
LE TINY TIGERLE TINY TIGER
Modèle de gamme Modèle de gamme supérieuresupérieure
64 Ko SRAM64 Ko SRAM 512 Ko Flash512 Ko Flash 36 E/S36 E/S PWM, timers,…PWM, timers,… 100 000 instr./s100 000 instr./s 2 ports série + I²C2 ports série + I²C
Nécessité d’en utiliser deux
LES E/S DU ROBOTLES E/S DU ROBOT
Tiny TIGER
R/4
Tiny TIGER
R/4
Tiny TIGER
R/4
Tiny TIGER
R/4
Variateur
M
M
Variateur
Capteurs internes divers
CMU CAM
Actionneurs
Télémètres
Balises
Roues Codeuses
SCHEMA SYNOPTIQUE DE L’ARCHITECTURE
LES LES VARIATEURSVARIATEURS
Ce sont les éléments qui permettent la Ce sont les éléments qui permettent la commande en puissance au moteurcommande en puissance au moteur
Variateurs analogiques classiquesVariateurs analogiques classiques Variateurs numériques plus évoluésVariateurs numériques plus évolués
CHANGEMENT DES VARIATEURSCHANGEMENT DES VARIATEURS
Variateur analogiqueVariateur analogique
-60,0
-50,0
-40,0
-30,0
-20,0
-10,0
0,0
10,0
20,0
30,0
40,0
50,0
60,0
562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594
Pas de linéaritéPas de linéarité Trop faible précision dans le contrôleTrop faible précision dans le contrôle
CHANGEMENT DES VARIATEURSCHANGEMENT DES VARIATEURS
Variateur numériqueVariateur numérique
Très bonne linéaritéTrès bonne linéarité Grande précision dans le contrôleGrande précision dans le contrôle
V = 0,2595 PWM
0,0
10,0
20,0
30,0
40,0
50,0
60,0
70,0
0 50 100 150 200 250 300
ASSERVISSEMENTASSERVISSEMENT
Partie la plus conséquente du projetPartie la plus conséquente du projet
Régulation à l’aide de la Régulation à l’aide de la logique flouelogique floue Basé sur les données issues des codeurs Basé sur les données issues des codeurs
incrémentauxincrémentaux Nécessité d’étudier le robot avec la Nécessité d’étudier le robot avec la
trigonométrie trigonométrie importante optimisation importante optimisation des calculs de déplacementdes calculs de déplacement
LA LOGIQUE FLOUELA LOGIQUE FLOUE
Travaux de Lotfi Zadeh introduits en 1965Travaux de Lotfi Zadeh introduits en 1965 Ne demande pas une modélisation Ne demande pas une modélisation
mathématique du système à régulermathématique du système à réguler Transformation des variables physiques Transformation des variables physiques
d’entrée en variables linguistiquesd’entrée en variables linguistiques Inférence par une base de règles logiquesInférence par une base de règles logiques Opération inverse, on retrouve des Opération inverse, on retrouve des
variables physiquesvariables physiques
LA LOGIQUE FLOUELA LOGIQUE FLOUE
FUZZIFICATIONFUZZIFICATION
Variables physiques
INFERENCEINFERENCE
DEFUZZIFICATIONDEFUZZIFICATION
Variables physiques
FUZZIFICATIONFUZZIFICATION
Pour chaque variable, on définit des sous-Pour chaque variable, on définit des sous-ensembles flous qui traduisent une ensembles flous qui traduisent une variable linguistiquevariable linguistique
Faible distance
Moyenne distance
Grande distance
0,8
0,41 2 3
0
1
A une valeur donnée, on associe un degré A une valeur donnée, on associe un degré d’appartenance à chaque sous-ensembled’appartenance à chaque sous-ensemble
REGLES D’INFERENCEREGLES D’INFERENCE
SI distance EST faible ALORS vitesse minimale
SI distance EST moyenne ALORS vitesse moyenne
SI distance EST élevée ALORS vitesse maximale
Une note est donnée à MINIMALE, MOYENNE et MAXIMALEUne note est donnée à MINIMALE, MOYENNE et MAXIMALE OU OU SOMME PONDEREE SOMME PONDEREE ET et ALORS ET et ALORS PRODUIT PRODUIT
OUOU
OUOU
DEFUZZIFICATIONDEFUZZIFICATION
On détermine la variable de sortie en se basant On détermine la variable de sortie en se basant sur les notes attribuées lors des inférencessur les notes attribuées lors des inférences
La valeur finale se déduit à l’aide du calcul du La valeur finale se déduit à l’aide du calcul du barycentre en généralbarycentre en général
Nous avons utilisé la méthode Somme/Produit :Nous avons utilisé la méthode Somme/Produit :
Vitesse minimale Vitesse moyenne Vitesse maximale
0.75
0.4
CdG
STRUCTURE DU PROGRAMMESTRUCTURE DU PROGRAMME
Tâche MAIN (stratégie, contrôle du temps et de l’asservissement)
Couche asservissement
REGLES () DEFUZZIFICATION ()
Couche intégrationet calculs
CALCUL_PARAMETRES (DST, DIR)
GET_POSITION () Couche interfaçage
FUZZIFICATION ()
SORTIE_MOTEURS ()
ARCTANGENTE()
INITIALISATION ()
AJUSTEMENT_ANGLE_ENTIER()
AJUSTEMENT_ANGLE_REEL()
CARTE D’ESSAISCARTE D’ESSAIS
BILANBILAN
Architecture bien définie, fonctionnelleArchitecture bien définie, fonctionnelle
Asservissement efficace, à réglerAsservissement efficace, à régler
Gain en fiabilité et en simplicitéGain en fiabilité et en simplicité
Programmation structurée en couchesProgrammation structurée en couches
Divers outils annexes développésDivers outils annexes développés
MERCI DE VOTRE ATTENTIONMERCI DE VOTRE ATTENTION
QUESTIONSQUESTIONS