Vous êtes sur la page 1sur 14

Compte rendu de la logique flou : LabVIEW 2010

Ralis par :

- 1-

Sommaire
CHAPITRE I : INTRODUCTION A LABVIEW ................................................................................................................. 3 INTRODUCTION ................................................................................................................................................................ 3 ILE CONCEPT DINSTRUMENT VIRTUEL........................................................................................................................... 3 II- PREMIER PAS .......................................................................................................................................................... 4 IIICREER UN NOUVEAU VI ........................................................................................................................................ 4 1. Les palettes .................................................................................................................................................... 5 CHAPITRE II : LABVIEW POUR LA LOGIQUE FLOU ................................................................................................... 10 IIIINTRODUCTION ...................................................................................................................................................... 10 EXERCICES ............................................................................................................................................................ 10

CONCLUSION .......................................................................................................................................................... 14

- 2-

Chapitre I : introduction a LABVIEW Introduction


LabVIEW (Laboratory Virtual Instrument Engineering Workbench) est un environnement de dveloppement graphique en langage G qui permet de crer des applications modulaires (notion de sous VI) et extensibles pour la conception dapplications, le contrle et le test. Lide de base est dutiliser une carte dacquisition ou un priphrique dacquisition, dont le rle est dacqurir un signal lectrique provenant de lextrieur, gnralement un capteur (thermocouple, dbitmtre, voltmtre, etc.) ou un ensemble de capteurs, effectuer un traitement, un enregistrement dans un fichier ou une base de donnes, une restitution lcran via une interface graphique, et ventuellement effectuer un ensemble dactions sur le monde extrieur laide dactionneurs (lectrovanne, moteur, etc.). Les variations possibles sont infinies en fonction des besoins et de leurs volutions.

I-

Le concept dinstrument virtuel

Lide de base est dutiliser une carte dacquisition ou un priphrique dacquisition, dont le rle est dacqurir un signal lectrique provenant de lextrieur, gnralement un capteur (thermocouple, dbitmtre, voltmtre, etc.) ou un ensemble de capteurs, effectuer un traitement, un enregistrement dans un fichier ou une base de donnes, une restitution lcran via une interface graphique, et ventuellement effectuer un ensemble dactions sur le monde extrieur laide dactionneurs (lectrovanne, moteur, etc.). Les variations possibles sont infinies en fonction des besoins et de leurs volutions.

Figure 1 : de la grandeur physique linstrument rel

- 3-

II-

Premier pas

Lorsquon lance LabVIEW, lcran de dmarrage permet de dmarrer toutes les oprations proposes par cet environnement de dveloppement

Figur 2 : cran daccueil de LabVIEW

III-

Crer un nouveau vi

Que lon souhaite crer un programme ou un sous-programme, on cre un vi. Pour LabVIEW tout vi est considr comme un instrument virtuel. Par consquent il a un comportement donn sur le diagramme (fentre blanche) et une interface utilisateur nomme face-avant (fentre grise). De plus, un vi sera symbolis par son icne. Il est important de retenir quun vi est stock dans un unique fichier .vi : 2 fentres, mais 1 seul fichier.

Figure 3 : un vi LabVIEW est compos dun diagramme (fentre blanche) et dune face avant (fentre grise) et reprsent par une icne.
- 4-

Sur la face-avant, nous serons donc amens placer des lments graphiques (entres du programme, linstar des boutons dun instrument, sorties linstar des lments affichs sur un instrument, lments de dcoration,), alors que sur le diagramme nous placerons la logique du programme, en gnral logique qui relie les entres aux sorties : comment calculer les sorties partir des entres.

1. Les palettes

En LabVIEW, toute la programmation se passe de faon graphique, il ny a pas de syntaxe connatre (pas de begin, end, for, etc.). Quand on dbute, on commence souvent par crer la face-avant, puis on passe au diagramme pour reprsenter la logique du programme. Nous verrons par la suite quil est souvent plus rapide de faire linverse (sauf pour le vi correspondant ce qui sera montr finalement lutilisateur).
Palette doutils

Une palette d'outils (Tools) utilisables aussi bien pour le diagramme que pour le panneauavant apparat par dfaut lorsquon ouvre un VI et reste nanmoins toujours accessible par le choix Tools Palette du menu View si on l'a supprime. Elle permet de dfinir divers modes de fonctionnement du curseur :

Figure 4 : la palette doutils permet de choisir la fonctionnalit de la souris Palette de commandes

Commenons donc comme tout dbutant par crer linterface graphique : supposons que le programme prenne 2 numriques en entre, et calcule un rsultat sous forme dun numrique. Il nous faudra donc crer 2 entres numriques, et 1 sortie numrique (affichage). Dans le jargon LabVIEW, les entres sappellent des commandes et les sorties des indicateurs (toujours par analogie avec un instrument). Les commandes, indicateurs et dcoration sont disponibles partir de la palette de commandes (voir Figure 5) de LabVIEW. Il y a plusieurs faons dafficher la palette de commandes : Faire un click droit sur la face-avant (attention, un click droit sur le diagramme

- 5-

affiche la palette de fonctions dont nous discuterons aprs). Remarquer la punaise en haut gauche de la palette qui apparat sous la forme dun menu : en cliquant sur celle-ci, la palette reste affiche sous forme dune fentre. Dans le menu droulant de la face-avant, cliquer sur Affichage , puis slectionner Palettes des commandes . Cela a pour effet dafficher la palette sous forme dune fentre (quivalent utiliser la punaise). Remarquer que mme si elle est affiche, la palette de commandes devient invisible lorsque la fentre de la face-avant nest pas active.

Figure 5 : palette de commandes : gauche sous forme de menu (click droit sur la face-avant), droite sous forme de fentre (via menu droulant de la face avant, ou bien laide de la punaise)

Plusieurs palettes existent ( Moderne , Systme , Classique , Express , Commandes utilisateur , .NET et ActiveX , les autres palettes dpendant des modules supplmentaires installs). La plupart du temps nous utiliserons la palette Moderne . Cette palette organise les lments par catgorie : Numrique : offre des commandes et indicateurs permettant de saisir ou afficher un numrique. Noter que par dfaut, ce numrique est en gnral un nombre rel (par opposition un nombre entier). Nous parlerons plus tard de la notion de type. Boolen : commandes et indicateurs boolens (lalgbre de Boole, dite algbre boolenne est lalgbre de la logique, dans laquelle les variables peuvent prendre la valeur vrai ou la valeur faux). Les boolens correspondent aux boutons 2 tats et aux indicateurs 2 tats (LED, etc.).
- 6-

Chane et chemin : commandes et indicateurs permettant de saisir ou dafficher des chanes de caractres (par chane de caractres, on entend des mots ou phrases, i.e. suite de caractres). De mme, on trouve ici ce qui permet de saisir ou afficher un nom de fichier ou de rpertoire (chemin). Graphe : propose diffrents indicateurs de graphes. Ces quatre sous-palettes sont les plus frquemment utilises. Vous tes invit bien entendu ouvrir les menus afin de dcouvrir les lments que proposent les diffrentes palettes et sous palettes (par exemple la palette systme offre des lments au look du systme dexploitation sous-jacent comme Windows, Mac OS,). Il est important de comprendre que lapparence dune commande, par exemple pour un numrique, na pas de relle importance : une commande numrique et un bouton rotatif ont la mme fonction pour le programme : permettre dentrer un numrique. Le choix dune apparence na donc strictement aucune importance pour un vi qui sera utilis comme un sous-programme (sa face-avant ne sera pas vue par lutilisateur). Ce choix aura bien entendu son importance sur le ou les vi qui seront vus par lutilisateur du programme final. La Figure ci-dessous montre le vi aprs cration de deux commandes numriques (Numrique et Bouton rotatif ) et dun indicateur numrique ( vumtre ) sur la face-avant.

Figure 6 : 2 commandes et un indicateur numriques

Palette de fonctions Lorsque la face avant est prte, on peut passer la dfinition du programme en luimme. Notre attention va donc maintenant se focaliser sur le diagramme. Supposons que nous souhaitions raliser un convertisseur dunit de temprature de C vers F en utilisant la formule F=1,8xC+32. Nous commenons par crer la face avant (une commande numrique, un indicateur numrique, sous forme dun thermomtre).
- 7-

Quelques modifications (police, ajout de texte libre, dcorations, couleurs) permettent dobtenir une face avant telle que celle prsente sur la Figure

Figure 7 : face avant et diagramme vide dun convertisseur dunits A linstar de la palette de commandes utilise pour la face-avant, le diagramme offre lui aussi une palette : la palette de fonctions (voir Figure 8 ). Cette palette peut-tre obtenue de manire analogue la palette de commandes (menu droulant Affichage de la fentre du diagramme, ou bien click droit dans le diagramme). Chaque fonction (sous-vi) en LabVIEW est reprsente par une icne. Les fonctions sont regroupes par catgories : Structures , Tableau , Cluster et variant , Numrique, Entres/Sorties sur fichier , Boolen , Chane de caractre , Comparaison , etc. Nous aurons loccasion de les explorer ensemble. Lune des fonctionnalits importantes de cette palette est le bouton Rechercher . En effet, la bibliothque de fonctions est importante, dautant plus si diffrents modules optionnels sont installs. La recherche permet une recherche rapide de vi laide dun mot cl. Ainsi, avant de se lancer dans le convertisseur, aurait-il t utile de rechercher conver pour sapercevoir que LabVIEW peut grer lui-mme les conversions dunits

- 8-

Figure 8 : la palette de fonctions

- 9-

Chapitre II : labview pour la logique flou


IIntroduction

La logique floue (fuzzy logic, en anglais) est une technique utilise en intelligence artificielle. Elle a t formalise par Lotfi Zadeh en 1965 et utilise dans des domaines aussi varis que lautomatisme (freins ABS), la robotique (reconnaissance de formes), la gestion de la circulation routire (feux rouges), le contrle arien, l'environnement ( mtorologie, climatologie,....), la mdecine (aide au diagnostic), l'assurance (slection et prvention des risque) et bien d'autres. Elle s'appuie sur la thorie mathmatique des ensemble flous. Cette thorie, introduite par Zadeh, est une extension de la thorie des ensembles classiques pour la prise en compte d'ensembles dfinis de faon imprcise. C'est une thorie formelle et mathmatique dans le sens o Zadeh, en partant du concept de fonction d'appartenance pour modliser la dfinition d'un sous-ensemble d'un univers donn, a labor un modle complet de proprits et de dfinitions formelles. Il a aussi montr que cette thorie des sous-ensembles flous se rduit effectivement la thorie des sous-ensembles classiques dans le cas o les fonctions d'appartenance considres prennent des valeurs binaires ({0,1}). Elle prsente aussi l'intrt d'tre plus facile et meilleur march implmenter qu'une logique probabiliste, bien que cette dernire seule soit stricto sensu cohrente

II-

Exercices

Exercice 3.2 Cration de la fonction dappartenance tringulaire


La conception dun controleur bas sur la logique floue commence par le choix de variable linguistique (entres-sorties de controleur). Le pas suivant consiste a crer lunivers du discours pour chaque variable linguistique, cest dire un ensemble de valeurs linguistiques que la variable linguistique peut prendre. Ces valeurs sont reprsentes avec des ensembles flous qui peuvent tre discrets ou continus. Dans cette exercice on va crer un ensemble flou reprsent par sa fonction dappartenance triangulaire. Cette fonction a trois arguments x, a et b ou a dsigne le centre de la fonction et b sa largeur :

U(x) = 0 sinon

- 10 -

Figure 9 : Fonction dappartenance triangulaire

Pour realiser cette fonction sur labview en utilisant les fonctions disponible,

Figure 10 : diagramme pour la fonction triangulaire

Exercice 3.3 Cration de la fonction dappartenance gaussienne


Une fonction gaussienne est donnes par la formule suivante : U(x)= exp (-((x-a)/b)) Elle a deux paramtres a et b, comme montr sur la figure :

- 11 -

Figure 11 : courbe de fonctions dappartenance gaussienne

Figure 12 : diagramme de la fonction gaussienne

Donc avec cette application il est facille de calculer la fonction dappartenance gaussienne il suffit dentrer les variable pour trouver les resultats.

Exercice 3.4 fonction dappartenance trapzoidale


Dans certains applications, il est utile de dfinir des fonctions non symtrique en form de trapze. La dfinition dune fonction trapzoidale est donnes par la formule :

- 12 -

Figure 13 :Fonction trapzodale Les entres dans ce programme sont x, a, b, c, et d, et lasortie est la valeur dappartenance. Le panel et le schma-bloc sont montres sur la figure suivant :

Figure 14 : diagramme de la fonction trapzoidale

- 13 -

Conclusion
Labview est un outils de simulation qui facilite et rduit le travail et lapplication des fonctions dappartenance de logique flou pour trouver des meilleurs resultats. Et a cause dabsence de quelque fonctions (version dessai) on arrive pas a ameliorer notre travaille on appliquant dautre fonction de logique flous.

- 14 -