Langage G

Langage G

LabVIEW

LabVIEW
Importez le logo de ce logiciel
Développeur National Instruments
Dernière version 9.0 (le 3 août 2009) [+/−]
Environnement Windows, Mac OS, Linux
Langue Français, Anglais, Allemand, Japonais
Type Atelier de génie logiciel, Chaine d'acquisition, Traitement du signal, Système embarqué
Licence Propriétaire
Site Web Le site officiel

LabVIEW est un logiciel de développement d'applications de la société américaine National Instruments basé sur un langage de programmation graphique appelé langage G.

Sommaire

Histoire

C'est en 1986 que la première version de LabVIEW voit le jour sur Macintosh. Il s'en suit un travail incessant pour ajouter des fonctionnalités :

  • 1986 : LabVIEW 1.0, sous Mac OS
  • 1990 : LabVIEW 2.0, optimisation des performances
  • 1992 : LabVIEW 2.5, sous Windows 3.1 et Solaris
  • 1993 : LabVIEW 3.0
  • 1994 : LabVIEW 3.0.1, sous Windows NT
  • 1994 : LabVIEW 3.1
  • 1995 : LabVIEW 3.1.1, intégration de l'Application Builder
  • 1996 : LabVIEW 4.0
  • 1997 : LabVIEW 4.1
  • 1998 : LabVIEW 5.0, multitâche, conteneurs ActiveX, assistant pour les cartes d'acquisition (DAQ) et assistant pour le contrôle d'instrument
  • 1999 : LabVIEW 5.1, portage sous Linux; première version de LabVIEW RT
  • 2000 : LabVIEW 6.0, contrôles au look 3D, référence d'un contrôle
  • 2001 : LabVIEW 6.1, optimisation et corrections
  • 2003 : LabVIEW 7.0, VI Express, première version des toolkits pour FPGA, pour Palm OS et pour Windows Mobile
  • 2004 : LabVIEW 7.1, traduit en français, allemand et japonais
  • 2005 : LabVIEW 8.0, Project Explorer, XControls, shared variables
  • 2006 : LabVIEW 8.20, programmation orientée objets
  • 2007 : LabVIEW 8.5, première version du toolkit Statechart
  • 2008 : LabVIEW 8.6, nettoyage automatique des diagrammes, quick drop
  • 2009 : LabVIEW 2009 (9.0), extraits de VIs, récursivité native, nouvel éditeur d'icônes, boucles For parallélisables

Un logiciel dédié à la programmation instrumentale

Les domaines d'application traditionnels de LabVIEW sont la commande et la mesure à partir d'un PC (acquisition de données, contrôle-commande d'instruments de mesure, de dispositifs expérimentaux, de bancs de test). Cette vocation est consacrée par des bibliothèques de fonctions spécialisées (GPIB, VXI, PXI, cartes d'acquisition DAQ, traitement de données...), mais aussi par les particularités du langage G (parallélisme inhérent à l'exécution par flux de données) et de l'environnement de développement (pilotes de périphériques standards, assistants pour l'installation du matériel).

Le concept d'instrument virtuel qui a donné son nom à LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench), se manifeste par la permanence d'une interface graphique pour chaque module (fonction) d'un programme. Les contrôles et les indicateurs de ce panneau avant constituent l'interface par laquelle le programme interagit avec l'utilisateur (lecture de commandes et de paramètres, affichage des résultats). Les fonctions de contrôle-commande de cartes ou d'instruments constituent l'interface par laquelle le programme interagit avec le montage.

Un programme LabVIEW permet donc d'automatiser un montage associant plusieurs appareils programmables, et réunit l'accès aux fonctionnalités de ce montage dans une interface utilisateur unique, véritable face avant d'un instrument virtuel.

Le langage G

Copie d'écran d'un programme (VI) LabVIEW. Chaque élément représente une routine, un appel à un sous programme LabView ou un contrôle en face avant.

Pour le développeur, un programme en langage G se présente comme un schéma, le diagramme, réunissant différentes icônes reliées par des fils de couleur. Chaque fil symbolise le passage d'une donnée depuis une source dont elle sort (comme résultat), vers une cible où elle entre (comme paramètre).

Les diagrammes du langage G ont donc une signification bien différente de celle des schémas électroniques qu'ils évoquent parfois. Dans un diagramme LabVIEW, la donnée ne transite dans le fil qu'au moment où elle est générée par son icône source. L'icône cible ne commencera son exécution que lorsque toutes ses données d'entrée seront disponibles. Ce modèle d'ordonnancement par flots de données détermine l'ordre d'exécution des traitements du programme. Une conséquence importante de cette règle est que les traitements qui n'échangent pas de données sont libres de s'exécuter en parallèle. Cette propriété du langage G facilite le développement d'applications multiprocessus, particulièrement intéressantes dans le cadre du contrôle de systèmes réactifs (embarqués ou non).

La conception des programmes en langage G conserve une approche essentiellement procédurale. Mariée à l'exécution par flots de données, cette approche procure de bons résultats dans le domaine de l'instrumentation. Elle est aussi la plus intuitive pour des ingénieurs ou des chercheurs souvent plus familiers des protocoles expérimentaux que des concepts informatiques.

Le support d'une conception orientée objet sous LabVIEW s'est développé de façon plutôt confidentielle avec tout d'abord le kit "GOOP" proposé par une société suédoise dès 1999, puis avec un support des notions de classe et d'héritage au sein même de l'environnement de développement 8.20, en 2006.

Évolution de LabVIEW

Créé par Jeff Kodosky et présenté pour la première fois sur Macintosh en 1986, LabVIEW a étendu son usage au PC et à divers systèmes d'exploitation (Microsoft Windows, UNIX, Linux, Mac OS X...), ainsi qu'aux PDA sous Palm OS et Pocket PC sous Windows Mobile. Il s'est également développé en direction des systèmes embarqués et temps réel, en s'ouvrant par exemple à la programmation de circuits intégrés (FPGA).

Toolkits

Il est possible d'étendre les fonctionnalités de LabVIEW en ajoutant des toolkits qui sont distribués séparément. La liste ci-dessous donne un inventaire de ses compléments :

  • FPGA : pour la programmation de carte FPGA
  • PDA : Module NI LabVIEW Mobile pour les matériels portables type PDA sousWindows Mobile et Palm OS
  • Real Time : module pour la programmation temps-réel
  • Applications embarquées : pour les DSP, ARM, ADI Blackfin
  • Datalogging and Supervisory Control : pour le développement de superviseur pour les automates programmables industriels (Siemens, Télémécanique, Mitsubishi...)
  • Touch Panel : gestion avancée des écrans tactiles
  • Vision : traitement des images, reconnaissance de formes, OCR
  • Statechart : génération de code à partir de diagrammes d'états
  • Lego Mindstorms NXT : programmation des robots Mindstorms NXT de Lego sous LabVIEW

Alternatives à LabVIEW

En ce qui concerne le contrôle, le test et la mesure, on peut développer avec des logiciels tels que :

  • LabWindows/CVI, de National Instruments, qui est un environnement de développement pour le langage C et qui offre les mêmes bibliothèques logicielles de fonctions.
  • Measurement Studio, de National Instruments, qui est un ensemble de bibliothèques de fonctions et de contrôles graphiques pour Visual Studio, permettant ainsi de la programmation en C++, Visual Basic ou C sharp tout en profitant de fonctionnalités dédiées au contrôle, test et mesure.
  • Il est bien sûr possible de programmer les logiciels de test et mesure dans tous langages de programmation sans bénéficier des fonctions dédiées à ce domaine. Le développement s'en trouvera plus long mais il pourra avoir le mérite d'être indépendant d'un produit commercial et fermé.

Voir aussi

Wikibooks-logo-fr.png

Wikibooks propose un ouvrage abordant ce sujet : Initiation LabView.

Articles connexes

Liens externes

Ce document provient de « LabVIEW#Le langage G ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Langage G de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • langage — [ lɑ̃gaʒ ] n. m. • v. 1160; lengatge v. 980; de langue I ♦ 1 ♦ Fonction d expression de la pensée et de communication entre les hommes, mise en œuvre au moyen d un système de signes vocaux (parole) et éventuellement de signes graphiques… …   Encyclopédie Universelle

  • langage — Langage, Sermo, Oratio. Un bon langage, Pura oratio. Un langage commun et vulgaire, Proletarius, vel Plebeius sermo. Langage coulant, qui n a pas grand ornement, Teres oratio. Un langage coulant qui n est point lié par vers, Prosa. Un langage… …   Thresor de la langue françoyse

  • langage — Langage. s. m. Idiome. Langue que parle une Nation. Le langage des Turcs. le langage Persan. personne n entend ce langage. un langage Barbare. un langage inconnu. il entend la pureté du langage. On dit, que La Poësie est le langage des Dieux. Il… …   Dictionnaire de l'Académie française

  • Langage — (frz.) bezeichnet bei Ferdinand de Saussure einerseits die menschliche Rede als allgemeinen, vortheoretischen Oberbegriff zu langue (dem Regelsystem der Sprache) und parole (der Ausübung des Sprechens); andererseits und zur Unterscheidung… …   Deutsch Wikipedia

  • langage — langage, ed obs. forms of language, ed …   Useful english dictionary

  • Langage C — C (langage) Pour les articles homonymes, voir C. C …   Wikipédia en Français

  • Langage c — C (langage) Pour les articles homonymes, voir C. C …   Wikipédia en Français

  • langage — (lan ga j ) s. m. 1°   Proprement, emploi de la langue pour l expression des pensées et des sentiments. Recherches sur l origine du langage. •   Le langage est tellement ce qui perfectionne toutes les facultés de l âme que la perfection de ces… …   Dictionnaire de la Langue Française d'Émile Littré

  • LANGAGE — s. m. Emploi que l homme fait des sons et des articulations de la voix, pour exprimer ses pensées et ses sentiments. On a publié de nombreux écrits sur l origine du langage.   Il se dit, par extension, Des cris, du chant, etc., dont les animaux… …   Dictionnaire de l'Academie Francaise, 7eme edition (1835)

  • Langage —  Pour l’article homonyme, voir Langage humain.  Le langage est un ensemble de signes (vocaux, gestuel, graphiques, tactiles, olfactifs, etc.) doté d une sémantique, et le plus souvent d une syntaxe (mais ce n est pas systématique[1]).… …   Wikipédia en Français

  • Langage C++ — C++ Apparu en 1985 (dernière révision en 2003) Auteur Bjarne Stroustrup …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”