Qu’est
ce que LabVIEW ?
LabVIEW est un environnement de développement intégré spécifiquement conçu pour les ingénieurs et les scientifiques
Le langage de programmation graphique, le G, est
natif à LabVIEW.
Il utilise un modèle de flux de données au lieu de lignes
séquentielles de code textuel, ce qui vous permet d'écrire du code
fonctionnel en suivant des informations visuelles.
LabVIEW inclut des drivers pour tous les
matériels NI (National Instrument),
mais c'est aussi un standard du marché et la plupart des instruments
connectés
par port série, USB, parallèle, GPIB, carte E/S…,
disposent de drivers LabVIEW.
Dans le laboratoire d'électricité :
- le GBF Agilent (USB),
- le multimètre FI2960 MT (USB),
- les oscilloscopes Tektronix (USB et
RS232),
- les alimentations Agilent (port
série - RS232),
- la carte NI6008 (USB),
- les Arduinos (USB),
pourront être pilotés par LABVIEW.
Un programme LABVIEW est appelé « instrument
virtuel » (VI).
LABVIEW permet de réaliser des interfaces graphiques personnalisées
et conviviales,
et ainsi de créer un instrument virtuel spécifique à vos besoins.
Comment fonctionne LabVIEW ?
Un programme LabVIEW comporte 2 éléments principaux :
-
Une face-avant : l'Interface Homme Machine
-
Un diagramme : le programme en langage G.
Observer le fonctionnement en flux de données...
(disponible en mode pas à pas)
La face-avant
d’un programme est l’interface utilisateur du VI
contenants des entrées (les commandes) et de sorties (les
indicateurs) du programme.
Les commandes et indicateurs peuvent être des afficheurs
numériques, des commutateurs booléens, des jauges, des vu-mètres,
des boutons poussoirs, des graphes…
Menu
contextuel : ces commandes et indicateurs sont accessibles par la palette de
commandes (clic droit dans une fenêtre de face avant.)
insère
une commande numérique. Orange
= nombre réel ( float )
insère
un bouton STOP (autres options possibles).
Vert = booléen
Vrai True ou
Faux False
insère
une chaîne de caractère. Rose
= chaîne ( String )
insère
un indicateur numérique, exemple une jauge.
Bleu = nombre
entier ( int )
Le diagramme
contient le code graphique du programme LabVIEW (VI).
La programmation est graphique selon une logique de flux de données.
Menu
contextuel :
Les commandes et indicateurs de la face avant figurent sous forme de
terminaux dans la fenêtre diagramme.


Raccourcis utiles :













La programmation graphique.
Bien
que ce langage soit totalement graphique, on retrouve sous LabVIEW
toutes les structures classiques des langages de programmation
textuel (C, Basic….)
Boucles
While, For
Séquençage
(qui permet l’exécution séquentielle de sous-VI)
Aiguillage
IF, CASE…
Les
types de données


Les réels ( float). DBL (double, codé
sur 2*32 = 64 bits)
Les
entiers ( int ). I32 : entier sur 32
bits
Les
entiers non signés (unsigned int ). U8
: entier non signé sur 8 bits (de 0 à 255)
Menu
contextuel : il est facile de changer de type de donnée
Les booléens.
Vert = booléen
TF : Vrai True ou
Faux False
Les chaines de caractères (String )
LabVIEW et le langage Arduino
Les boites de calcul de LabVIEW peuvent être programmées en langage C.
Le langage Arduino dérive du langage C et C++.
Nous pouvons incorporer dans LabVIEW des scripts en langage C avec
la même syntaxe que l'Arduino.
Exemple
du dernier TP Arduino, en simulation pour l'instant, sur
la régulation de température TOR à 2 seuils Ch et Cb,
en langage LabVIEW avec une interface graphique :
Pour télécharger ce programme et le tester
cliquer sur l'image !
Par la suite on remplacera la simulation de température par la
lecture d'une carte d'acquisition
puis
on pilotera le micro-four grâce à la carte NI6009
Prise en main de LabVIEW :
1) Recopier le programme ci-dessous
Cahier des charges : l'utilisateur indique la
valeur d'une résistance en ohm et la puissance maximale qu'elle peut
dissiper (typiquement dans le labo : 0,25 W, 0,5 W 1W, 2 W)
Le programme calcule l'intensité maximale et la tension maximale
supportée par cette résistance.
La boîte de calcul permet d'exécuter des scripts en langage C (même syntaxe que l'Arduino)
Exercices
Exercice
1
Réaliser un VI qui permet d’effectuer une conversion de
°C en K et en °F à partir de fonctions de base de LabVIEW.
Conversion de °C en K : K = °C + 273,15
Conversion de °C en °F : °F =
9/5 x °C + 32
Face avant possible :
Exercice 2 :
Cahier
des charges :
Un bouton rotatif joue le rôle de thermostat T.
-
Lorsque T < 20 une led bleue s'allume.
-
Lorsque 20 ≤ T < 25 une led verte s'allume.
-
Lorsque T ≥ 25 une led rouge s'allume.
Face avant possible :
Diagramme possible :
Exercice 3 :
Cahier des charges : Trouver les racines du polynôme du 2° degré
ax²bx+c = 0.
1) Construire une face avant permettant la saisie de a,b et c
2) A l’aide d’une boîte de calcul calculer le déterminant
3) Calculer les racines réelles si elles existent.
4) Proposer des améliorations au programme (équation du premier degré, racines doubles, solution dans le domaine des complexes…)
Aide pour l'équation du second degrés :
- Tu vérifies si a est différent de 0 sinon c'est du premier degrés et tu as la solution directe : x=-c/b. (si b différent de 0)
- Ensuite tu calcules le discriminant : delta=b*b-4*a*c.
- S'il est positif strictement tu as deux solutions : x=(-b+racine (delta))/2*a et x=(-b-racine (delta))/2*a
- S'il est nul, tu as une solution double : x=-b/2a
- S'il est négatif, tu as deux solutions imaginaires
conjuguées :
x=(-b+i*racine (-delta))/2*a x=(-b-i*racine (-delta))/2*a
Aide :
Si vous êtes à l'aise avec la programmation de l'Arduino la boîte de calcul sera votre amie...
La boîte de calcul permet dans certains cas de faire des programmes plus compact...
Il est aussi possible de ne faire que des calculs dans une boîte de calcul. Solution 2 :