600 likes | 786 Views
CONTENU DU COURS. Partie B − Concepts logiciels. B.1 Langage assembleur et programmation structurée : modes d’adressage et jeu d’instructions boucles, pile et sous-routines programmation structurée B.2 Microcontrôleurs à logique floue : systèmes de contrôle à logique floue
E N D
CONTENU DU COURS GPA770: Microélectronique appliquée Éric Granger
Partie B − Concepts logiciels B.1 Langage assembleur et programmation structurée: • modes d’adressage et jeu d’instructions • boucles, pile et sous-routines • programmation structurée B.2 Microcontrôleurs à logique floue: • systèmes de contrôle à logique floue • instructions spécialisées du 68HC12 GPA770: Microélectronique appliquée Éric Granger
Sommaire de la Section B.2 B.2Microcontrôleurs à logique floue: • Système de contrôle classique • Système de contrôle flou: • fuzzification des entrées • inférence • dé-fuzzification • Opérations en logique floue du 68HCS12 GPA770: Microélectronique appliquée Éric Granger
B.2(1) Système de contrôle classique • Définition générale: tout système dont les sorties sont contrôlées par des entrées au système • Figure – système de contrôle classique: • exploite un contrôleur classique GPA770: Microélectronique appliquée Éric Granger
B.2(1) Système de contrôle classique • Structure interne d’un contrôleur classique: GPA770: Microélectronique appliquée Éric Granger
B.2(1) Système de contrôle classique • Caractéristiques d’un système avec contrôleur classique (PID ou autre): • dérive les lois de contrôle du système • comprend un modèle mathématique explicite du comportement de ce système… • doit être le plus précis possible pour modéliser signal de contrôle ≡ fct(modèle, entrée désirée, rétroaction) GPA770: Microélectronique appliquée Éric Granger
B.2(1) Système de contrôle classique • Désavantage de l’approche: • doit avoir une excellente connaissance du phénomène, pour ensuite élaborer un modèle mathématique précis • le modèle peut être gros et imprécis pour un phénomène complexe • exemples en robotique: modélisation dynamique avec des système complexe d’équations différentielles GPA770: Microélectronique appliquée Éric Granger
Sommaire de la Section B.2 B.2Microcontrôleurs à logique floue: • Système de contrôle classique • Système de contrôle flou: • fuzzification des entrées • inférence • dé-fuzzification • Opérations en logique floue du 68HC12 GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Pourquoi utiliser un contrôleur flou? • implique une modélisation implicite: • ne dépend pas d’un modèle mathématique explicite et précis • les algorithmes pour générer un signal de contrôle se basent sur des règles linguistiques: ‘SI → ALORS’ • pour les systèmes mal compris ou complexes, un contrôleur flou s’avère très intéressant... • Utilisé dans un grand nombre d’applications industrielles GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Caractéristiques d’un système avec contrôleur flou: • technique en intelligence artificielle: • approche qui s’inspire du système de contrôle biologique • dans la même vaine que les réseaux de neurones • dépendent des règles linguistiques, plutôt que des équations mathématiques • forme simple d’un système expert: contient les règles pour transformer les commandes d’entrée à des réponses de sortie • système d’accumulation de preuves: assigner une sortie du système selon un facteur de confiance GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Structure interne d’un contrôleur à logique floue: • structure semblable à un système de contrôle classique GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Architecture interne d’un régulateur à logique floue (RLF): GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Architecture interne d’un régulateur à logique floue: (suite) • RLF: régulateur à logique floue • yM : signaux d’entrées • w : signal de rétroaction • ucm : signal de régulation fournit par le RLF • x : variable d’entrée floue • xR : variable de sortie floue GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Processus d’un contrôleur à logique floue: • Fuzzification des entrées: transforme les valeurs d’entrées en quantités floues • Inférence (avec la base de règles): applique les règles aux entrées fuzzifiées afin de prendre les décisions floues • Dé-fuzzification: transforme les décisions floues en valeurs de sorties numériques déterminées GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Architecture interne d’un contrôleur à logique floue: GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (a) Fuzzification des entrées • Objectif: • assigner aux valeurs numériques xi en entrée un degré d’appartenance μ(xi) aux FAF d’entrée • Phase de conception: définir des FAF pour toutes les variables linguistiques d’entrée • Phase de traitement: grandeurs physiques → variables linguistiques GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (a) Fuzzification des entrées • Phase de conception: • Fonction d’appartenance floue (FAF):une instance d’une variable linguistique qui décrit l’entrée au contrôleur flou • remarques: • chaque FAF est définit par l’expert du domaine • on doit avoir suffisamment de données réelles pour décrire l’état actuel du système GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Fuzzification des entrées • En général, les FAF d’entrée sont des fonctions de forme: • trapézoïdales • triangulaires GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (a) Fuzzification des entrées • Exemple 1: Soit le variable linguistique d’entrée x ≡ position. Assignez aux valeurs d’entrée un degré d’appartenance μ(x) aux 2 FAF d’entrée (associées à x) entrée=3.0 GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (a) Fuzzification des entrées • Exemple 2: Soit une variable linguistique d’entrée x ≡ position, définie par 5 FAF d’entrée • pour chaque valeur numérique d’entrée, on fait correspondre les instances (NG, NM, …) de x selon un degré d’appartenance GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Architecture interne d’un contrôleur à logique floue: GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles) • Objectif: • assigner une FAF résultante à chaque xR selon la relation entre variables d’entrées (xi) et de sorties (xR) • Étapes de traitement: • appliquer des règles d’expert aux degrés d’appartenance flous μ(xi) des variables xi • déduire une FAF résultante pour chaque variable xR • on distingue plusieurs méthodes d’inférence GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles) • Base de règles − indique la relation entre les variables linguistiques d’entrées et de sorties: • doit être constituer de toutes les combinaisons possibles des variables d’entrées • mais, doit représenter des relations appropriées entre les entrées et les sorties • Les règles connectent les différentes combinaisons des FAF d’entrées → FAF de sorties GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles) • Exemple 2 (suite): Soit deux entrées x1 et x2, et une sortie xR, toutes définies par les 5 FAFs de l’exemple 2. • la base de 52 règles élaborées par un expert du domaine selon ses connaissances à priori et des données: Si (x1 = NG ET x2 = EZ), Alors xR = PG ou Si (x1 = NG ET x2 = PM), Alors xR = PM ou Si (x1 = NM ET x2 = EZ), Alors xR = PM ou Si (x1 = NM ET x2 = PM), Alors xR = EZ ou Si (x1 = NM ET x2 = PG), Alors xR = NM ou … Si (x1 = PG ET x2 = EZ), Alors xR = NG. GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles) • Règles sous forme de tableau (pas nécessairement plein): • Cellule = FAF de sortie GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles): • Méthode MIN-MAX: • au niveau de la condition(Si): pour combiner des μ(xi) selon les règles • ET → MIN des antécédents • OU → MAX des antécédents • Alors → MIN des (MINs et MAXs) des antécédents • au niveau de la conclusion: pour combiner des régions en sorties μ(xR) • OU → MAX des conséquents GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles): • niveau de la condition − pour traduire les règles de décision: • règle: avec la condition ET (OU), le degré MIN (MAX) de μ(xi)est assigné à une FAF de sortie • interprétation:assigne un facteur de confiance max μ(xR) aux FAF de sortie, ce qui indique la croyance dans l’information en entrée GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles): • niveau de la conclusion− pour décider de la FAF résultante de sortie: • le contrôleur prend les facteurs de confiance max μ(xR) comme degré d’appartenance de la FAF résultante de sortie • interprétation: dépend de la règle la plus dominante pour assigner la FAF résultante de sortie GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (b) Inférence (avec la base de règles): Exemple 2 (suite): méthode d’inférence MIN-MAX pour deux variables entrées, x1 et x2, une variable de sortie, xR • valeurs d’entrée:x1 = 0.44 et x2 = – 0.67 • deux règles l’inférence:Si (x1 = PG ET x2 = EZ), Alors xR = EZ OU Si (x1 = EZ OU x2 = NG), Alors xR = NG GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Selon la première règle: le facteur de confiance max de xR = EZ est 0.33 car: • μPG(x1) : x1 = 0,44 est PG avec un degré de 0,67 • μEZ(x2) : x2 = -0,67 est EZ avec un degré de 0,33 • (x1 = PG ETx2 = EZ) équivaut à min( μPG(x1) ;μEZ(x2)) = min(0,67 ; 0,33) = 0,33 • Alors = min, ce qui équivaut à tronquer la fonction d'appartenance de xR = EZ par 0,33 μEZ(xR) = 0.33 GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Selon la deuxième règle: le facteur de confiance max de xR = NG est 0.67 car: • μEZ(x1) : x1 = 0,44 est EZ avec un degré de 0,33 • μNG(x2) : x2 = -0,67 est NG avec un degré de 0,67 • (x1 = EZ OUx2 = NG) équivaut à max(μEZ(x1);μNG(x2)) = max(0,33 ; 0,67) = 0,67 • Alors = min, ce qui équivaut à tronquer la fonction d'appartenance de xR = NG par 0,67 μNG(xR) = 0.67 GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Architecture interne d’un contrôleur à logique floue: GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (c) Dé-fuzzification • Objectif: • transformer l’information floue en grandeur physique (i.e., le signal de régulation) • Étapes de traitement: • convertir les FAF résultantes pour les variables xRen valeurs numériques déterminées • on distingue plusieurs méthodes de dé-fuzzification • représenter ces valeurs en format qui est exploitable par le système de contrôle GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou (c) Dé-fuzzification • Méthode du centroïde: • trouve le centre de masse de la FAF résultante de sortie: • combine les régions des fonctions floues en sortie par union (OU) • calcule le centroïde de la surface de la FAF résultante • génère une valeur numériquedéterminée → abscisse du centroïde • calculs très lourds, mais donne un poids égal à chaque FAF de sortie GPA770: Microélectronique appliquée Éric Granger
B.2(2) Système de contrôle flou • Conclusions: GPA770: Microélectronique appliquée Éric Granger
Sommaire de la Section B.2 B.2Microcontrôleurs à logique floue: • Système de contrôle classique • Système de contrôle flou: • fuzzification des entrées • inférence • dé-fuzzification • Opérations en logique floue du 68HC12 GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Mise en œuvre de contrôleurs à logique floue • Les instructions du 68HC12 permettent: • la fuzzification • l’inférence (l’évaluation des règles) • dé-fuzzification • L’expert du domaine a la responsabilité: • d’identifier les variables et concevoir les FAF d’entrée et de sortie • de dériver les règles d’inférence GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 • Architecture d’un contrôleur à logique flou: GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 • Principales instructions du 68HC12 qui sont spécialisées pour contrôleurs à logique floue: • MEM: fuzzification (calcule le degré d’appartenance flou) • REV: méthode d’inférence MIN-MAX pour l’évaluation des règles • REVW: méthode d’inférence MIN-MAX avec pondérations des règles • WAV: dé-fuzzification (calcule une somme pondéré) • Instructions supplémentaires: • (E)TBL, EDIV(S), EMACS, EMAX(M), EMIND, EMINM, EMUL(S) GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 • Exemple du livre − contrôleur à logique floue pour naviguer un robot mobile: GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Étapes de conception 68HC12 • Identifier les variables linguistiques en décrivant toutes les entrées au contrôleur • Exemple du robot p.147 (J. Pack): • RSENSOR: valeur à l’entrée du senseur de gauche: very weak, weak, medium, strong, very strong • LSENSOR: valeur à l’entrée du senseur de droit: very weak, weak, medium, strong, very strong GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Étapes de conception 68HC12 • Concevoir les FAF pour décrire chaque variable linguistique d’entrée: • avec le 68HCS12, chaque FAF doit avoir une forme trapézoïdale • pour chaque senseur, les degrés d’appartenance sont représentés avec 256 valeurs discrètes: • valeur $00 ≡ aucune appartenance 0% • valeur $FF ≡ pleine appartenance 100% • pour chaque FAF, on spécifie 4 valeurs: • 2 points: (1) le point le plus à gauche et (2) le plus à droit • 2 pentes: (3) la pente de gauche et (4) la pente de droite GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Étapes de conception 68HC12 • Exemple du robot: very weak $00, $50, $00, $10 weak $40, $70, $10, $10 medium $60, $A0, $10, $10 strong $90, $C0, $10, $10 very strong $B0, $FF, $10, $00 • rem: chaque valeur est définie entre $00 et $FF (avec une résolution de 8 bits) GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Étapes de conception 68HC12 • Exemple du robot: 25 règles d’inférence pour naviguer le robot GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Étapes de conception 68HC12 • Déterminer la base de règles d’inférence: • on doit constituer toutes les différents scénarios possibles pour les valeurs d’entrée de senseurs • format d’une règle avec le 68HC12: (ET seulement) règle: Si (antécédent 1) ET (antécédent 2), Alors (conséquent) .... GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Étapes de conception 68HC12 • Réalisation les règles d’inférence: • encoder les règles pour toutes les combinaisons d’entrées en utilisant le format: règle 1: antécédent 1, antécédent 2, $FE , conséquent, $FE .... règle n: antécédent 1, antécédent 2, $FE , conséquent, $FF remarques: • $FE: indique la fin d’une règle • $FF: indique la fin de la liste de règles • en cas d’une interruption, le séparateur $FE indique aussi un point d’arrêt commode pour le traitement fuzzy GPA770: Microélectronique appliquée Éric Granger
B.2(3) Opérations flous du 68HC12 Étapes de conception 68HC12 • Concevoir les FAF pour décrire variable linguistique de sortie: • on définit avec des fonctions singleton • fonctions singleton: • chaque FAF de sortie est définit par une seule valeur • ils représentent chaque variable linguistique de sortie avec une valeur numérique GPA770: Microélectronique appliquée Éric Granger