LabVIEW, édité par NI (aujourd'hui dans le groupe Emerson), sert à construire des bancs de validation, d'endurance ou de test en production. Le développeur acquiert des voies avec NI-DAQmx, pilote alimentations et multimètres en VISA, écrit les modules de code que TestStand enchaîne, et passe parfois sur CompactRIO avec LabVIEW Real-Time et FPGA. Les annonces parlent d'ingénieur LabVIEW, d'ingénieur bancs de test ou de développeur LabVIEW TestStand, et citent souvent DQMH.
Issus de l'électronique ou de la mesure, de nombreux candidats ont appris LabVIEW sur le tas. Leurs bancs fonctionnent, mais le code tient souvent dans une seule boucle remplie de variables locales, que personne d'autre ne sait reprendre. Les certifications CLAD, CLD et CLA marquent trois niveaux ; la CLD demande d'écrire une application complète en temps limité.
Faites décrire un diagramme réel : les boucles, ce qui circule entre elles, ce qui se passe quand un instrument ne répond plus. Le PDF contient un cas de 20 minutes sur un banc d'endurance qui tourne cinq jours sans surveillance la nuit.
Pilotes, outils et cibles d'un développeur LabVIEW
LabVIEW
L'environnement de programmation graphique de NI. Le code s'écrit en reliant des blocs par des fils, et l'exécution suit le flux de données plutôt que l'ordre des lignes. La version courante est la 2026 Q3, et une édition Community gratuite existe pour un usage non commercial. Un code propre se reconnaît à des sous-VI courts et à des boucles qui ont chacune un rôle.
NI-DAQmx
Le pilote des cartes et châssis d'acquisition NI (PCIe, PXI, CompactDAQ). Il gère les tâches, les horloges d'échantillonnage, les déclenchements et les buffers. La plupart des incidents d'acquisition viennent d'un buffer mal lu ou d'une horloge mal partagée, d'où l'intérêt de commencer l'évaluation par là.
NI-VISA, SCPI et drivers d'instruments
VISA est la couche de communication avec les instruments, qu'ils soient en GPIB, série, USB ou Ethernet. Les appareils répondent le plus souvent à des commandes SCPI. Les drivers d'instruments regroupent ces commandes dans des VI prêts à l'emploi. NI MAX et NI I/O Trace servent à tester et à espionner les échanges.
TestStand
Le séquenceur de tests de NI. Il enchaîne des modules de code écrits en LabVIEW, en C# ou en Python, compare les mesures à des limites, génère les rapports et enregistre les résultats en base. Sur un banc de production, il porte la traçabilité, le code LabVIEW fait les mesures.
QMH, DQMH et Actor Framework
Trois façons de structurer une application qui fait plusieurs choses en parallèle. Le gestionnaire de messages en file (QMH) est le modèle livré avec LabVIEW. DQMH, publié par Delacor, organise l'application en modules. L'Actor Framework repose sur la programmation objet. Demandez lequel le candidat a utilisé et pourquoi.
LabVIEW Real-Time, FPGA et CompactRIO
Pour les boucles qui doivent tenir un temps de réponse garanti, le code tourne sur une cible temps réel, souvent un contrôleur CompactRIO dont le FPGA se programme aussi en LabVIEW. Le poste ne l'exige pas toujours ; quand il l'exige, l'expérience se vérifie à part.
TDMS et stockage des résultats
TDMS est le format binaire de NI pour les données de mesure, avec groupes, voies et métadonnées. Il se relit dans DIAdem, dans Excel avec un module complémentaire ou en Python. Les résultats de test partent souvent aussi vers une base SQL interrogée par la qualité.
Outils de développement et de livraison
VI Package Manager et NI Package Manager installent les bibliothèques et les pilotes. Git s'utilise avec LVCompare et LVMerge pour comparer et fusionner des VI, qui sont des fichiers binaires. Les exécutables et installeurs se construisent depuis le projet, et LabVIEWCLI permet de les produire en intégration continue.
Le développeur LabVIEW travaille avec les électroniciens, les ingénieurs d'essai et la qualité. Selon le poste, il construit un banc de validation pour des prototypes, maintient des stations de test en production ou reprend un banc ancien dont le code n'a jamais été documenté. Le même titre recouvre des profils très différents, du technicien qui a appris LabVIEW pour automatiser ses mesures à l'architecte certifié CLA qui conçoit des frameworks de test. Précisez dans l'offre si TestStand, le temps réel ou le FPGA font partie du poste.
Six compétences LabVIEW à noter pendant l'entretien
- Flux de données et architecture d'application
- Acquisition DAQmx et cadencement
- Pilotage d'instruments VISA et SCPI
- Séquencement et traçabilité TestStand
- Gestion d'erreurs et robustesse du banc
- Temps réel, FPGA et livraison du code
Acquisition, instruments, séquences : les questions d'un entretien LabVIEW
Chaque question vient avec ce qu'une bonne réponse contient et le signal qui doit vous alerter. Pas besoin d'être technique pour les poser : écoutez si le candidat raconte du vécu.
Question 1 · confirmé
Sur un banc, une acquisition DAQmx continue s'arrête au bout de deux heures avec l'erreur -200279. Que se passe-t-il et comment corrigez-vous ?
Une bonne réponseLe programme ne lit pas assez vite : le buffer circulaire de la tâche a été réécrit avant que les échantillons soient lus. La correction tient dans l'architecture. Une boucle dédiée lit un nombre fixe d'échantillons, par exemple un dixième de seconde, et envoie les blocs dans une file vers une boucle consommatrice qui affiche et enregistre. Pas d'écriture de fichier ni de mise à jour de graphe dans la boucle de lecture. Un bon profil cite aussi l'enregistrement TDMS intégré à DAQmx, qui écrit sur disque sans passer par le diagramme.
Signal d'alerteAgrandir le buffer et s'arrêter là, ajouter une attente dans la boucle de lecture ou baisser la fréquence d'échantillonnage demandée par l'essai.
Question 2 · confirmé
L'application doit acquérir, afficher, enregistrer et répondre aux boutons de l'opérateur en même temps. Comment la structurez-vous ?
Une bonne réponsePlusieurs boucles parallèles avec un rôle chacune : une boucle d'interface pilotée par une structure Événement, un gestionnaire de messages (QMH) qui porte l'état de l'application, une boucle d'acquisition productrice et une boucle d'enregistrement consommatrice. Elles communiquent par files d'attente, événements utilisateur ou notificateurs. L'arrêt suit une séquence définie : on vide les files, on ferme les fichiers et les sessions d'instruments. Sur une application plus grosse, le candidat propose DQMH ou l'Actor Framework.
Signal d'alerteUne seule grande boucle While avec une structure Événement dont le timeout lance l'acquisition, des variables locales partout pour faire passer les données, un arrêt par variable globale sans vider les files.
Question 3 · confirmé
Un multimètre piloté en VISA renvoie une fois sur vingt une valeur vide ou un timeout. Par où commencez-vous ?
Une bonne réponsePar regarder les échanges réels avec NI I/O Trace ou en interrogeant l'appareil à la main depuis NI MAX. Les causes habituelles : caractère de fin de message mal réglé, lecture lancée avant la fin de la mesure, timeout plus court que le temps d'intégration de l'appareil, file d'erreurs de l'instrument jamais lue (SYST:ERR?). Il synchronise avec *OPC? plutôt qu'avec une attente fixe, ouvre la session une fois au démarrage au lieu de l'ouvrir à chaque mesure, et vérifie qu'une seule boucle parle à l'appareil.
Signal d'alerteAjouter des attentes de 500 ms un peu partout, ou ouvrir et fermer la session VISA à chaque mesure en espérant que cela réinitialise l'appareil.
Question 4 · confirmé
Le banc doit tester trois références de cartes avec des limites différentes. Comment organisez-vous la séquence TestStand ?
Une bonne réponseUne séquence commune avec des étapes de test typées (Numeric Limit Test, Pass/Fail, Multiple Numeric Limit) qui appellent des modules de code LabVIEW courts. Les limites viennent d'un fichier ou d'une base chargés selon la référence, par exemple avec le Property Loader, et non de constantes dans les VI. Les groupes Setup et Cleanup ouvrent et ferment le matériel. Le modèle de processus gère le numéro de série, le rapport et l'enregistrement en base.
Signal d'alerteUn VI par référence avec les limites en constantes, ou TestStand réduit à un lanceur qui appelle un seul VI énorme contenant tout le test.
Question 5 · confirmé
En pleine nuit, une erreur de communication survient au milieu d'un essai d'endurance de 72 heures. Que doit faire l'application ?
Une bonne réponseLe cluster d'erreur est câblé de bout en bout et remonte vers un gestionnaire central. Celui-ci classe l'erreur : nouvelle tentative de connexion limitée en nombre, poursuite en mode dégradé, ou arrêt avec mise en sécurité de l'équipement testé (coupure de l'alimentation, retour des actionneurs en position de repos). L'erreur est journalisée avec l'horodatage et l'état du banc, les données déjà acquises sont écrites sur disque et une alerte part vers l'équipe d'essai. Aucune boîte de dialogue ne bloque le banc en attendant un opérateur absent.
Signal d'alerteLa gestion d'erreurs automatique de LabVIEW qui ouvre une fenêtre et fige tout jusqu'au matin, ou des erreurs effacées en fin de boucle sans être traitées.
Recevez la fiche d'entretien complète en PDF
La fiche pour mener l'entretien de bout en bout, prête à imprimer ou à partager avec le manager.
- 30 questions sur 6 axes, avec la bonne réponse, le signal d'alerte et la relance
- Le niveau visé pour chaque question
- Une mise en situation de 20 minutes et ce qu'on attend du candidat
- La grille d'évaluation de 1 à 4, axe par axe
Embaucher un développeur LabVIEW, les questions fréquentes
La certification CLD est-elle un bon filtre pour un développeur LabVIEW ?
C'est un bon indicateur. Pour obtenir la CLD, le candidat écrit une application complète en temps limité, avec une architecture lisible et documentée. La CLAD, plus simple, valide les bases du langage, la CLA la conception d'applications de grande taille. Une certification ne montre pas l'expérience du matériel : un candidat CLD peut n'avoir jamais synchronisé deux cartes ni débogué un instrument capricieux. Faites-lui raconter un banc réel.
Un électronicien qui programme en LabVIEW peut-il tenir un poste de développeur LabVIEW ?
Il connaît souvent très bien la mesure, le câblage et les instruments, ce qui manque à beaucoup de développeurs. Le point à vérifier est l'architecture : boucles parallèles, communication par files, gestion d'erreurs, code relisible par un collègue. Montrez-lui un diagramme et demandez comment il le découperait. Si le poste consiste à maintenir de gros bancs à plusieurs, un profil qui n'a écrit que des VI isolés aura besoin d'accompagnement.
Quel test technique proposer à un développeur LabVIEW ?
Un sujet court sur machine, une heure à une heure trente : une petite application qui simule une acquisition, l'affiche, l'enregistre et réagit à un bouton d'arrêt, avec une erreur à gérer. Vous verrez l'architecture, le câblage des erreurs et la propreté du diagramme. Une autre option consiste à faire commenter un VI existant mal construit. Faites passer le sujet sur la version de LabVIEW du poste.
LabVIEW, TestStand, Python : quelles compétences exiger dans l'offre ?
LabVIEW et DAQmx ou VISA forment le socle. TestStand devient indispensable dès qu'il s'agit de test en production, avec rapports et traçabilité ; un développeur LabVIEW qui ne l'a jamais utilisé s'y forme en quelques semaines. Python apparaît dans les offres pour le traitement des données ou comme langage de modules TestStand. Réservez le temps réel et le FPGA aux postes qui en ont réellement besoin, ils réduisent fortement le vivier.
Pour structurer vos autres entretiens, consultez aussi nos pages sur les questions d'entretien de recrutement, la méthode de l'entretien structuré et la grille d'évaluation d'entretien.




