Aller au contenu principal

LabVIEW - Développer des applications avancées

Les applications de test complexes demandent des architectures solides et évolutives. Cette formation vous apprend à maîtriser le modèle Queued Message Handler (QMH), la programmation parallèle et l'optimisation de la mémoire sous LabVIEW.

Objectif de la formation

Immersion · Savoir faire en situation réelle

À l’issue de cette formation, les participants seront capables de :

  • Concevoir des applications complexes fondées sur le modèle des machines d'états
  • Utiliser les outils de synchronisation (files d'attente, notificateurs) pour gérer des processus asynchrones
  • Mettre en place des structures évolutives de type producteur/consommateur
  • Optimiser les performances du processeur en évitant les verrous de mémoire et les variables globales
  • Charger dynamiquement les VIs et les interfaces utilisateur
  • Créer des exécutables autonomes (.exe) et des programmes d'installation professionnels

Choisissez votre format

Jusqu’où voulez-vous aller ?

Chaque format reprend le précédent et y ajoute des journées.

Programme détaillé

ACTION · 14 heures (2 jours)

Jour 1
MatinConcevoir des architectures évolutives (machines d'états)

Objectif : Savoir concevoir une architecture logicielle robuste basée sur le modèle Machine d'États pour orchestrer des applications complexes de manière logique et fluide.

  • Limites de la programmation séquentielle classique.
  • Concept et structure d'une Machine d'États standard (Boucle While, Structure Conditionnelle, Registre à décalage et Enumérations).
  • Initialisation, transition d'états et gestion des actions utilisateurs.
  • Création d'une Machine d'États gérée par événements (Event-Driven State Machine).
  • Documentation et gestion de la lisibilité des transitions d'états.

Atelier pratique : Développement de l'architecture de contrôle d'une enceinte climatique industrielle simulant des cycles de température variables.

Cas métier : Supervision et contrôle-commande d'équipements de test.

Compétence acquise : Être capable de structurer une application LabVIEW évolutive à l'aide d'une machine d'états.

Livrable : Modèle (Template) de Machine d'États industrielle documentée et modulaire.

Après-midiProgrammation parallèle et communication entre boucles

Objectif : Maîtriser l'exécution de processus parallèles asynchrones et sécuriser les échanges de données entre boucles indépendantes.

  • Problématique de l'exécution parallèle sous LabVIEW (le multithreading automatique).
  • Communication par variables locales/globales : limites et risques majeurs de conflits d'accès (Race Conditions).
  • Utilisation des Files d'Attente (Queues) pour l'envoi de données de flux en FIFO (First In, First Out).
  • Utilisation des Notificateurs (Occurrences / Notifiers) pour la diffusion d'événements à sens unique.
  • Synchronisation temporelle des boucles.

Atelier pratique : Conception d'un système de monitoring où une boucle d'acquisition rapide envoie ses données à une boucle d'IHM lente via une Queue de synchronisation.

Cas métier : Acquisition haute fréquence et affichage découplés.

Compétence acquise : Savoir faire communiquer plusieurs processus parallèles de manière fiable et synchrone sans perturber le processeur de l'ordinateur.

Livrable : Sous-système de communication inter-boucles validé et optimisé.

Jour 2
MatinLe modèle producteur/consommateur

Objectif : Implémenter le design pattern le plus robuste de l'industrie pour dissocier l'acquisition de données physiques de leur traitement ou sauvegarde.

  • Architecture Producteur/Consommateur (Données et Événements).
  • Structure détaillée : Boucle Producteur gérant les actions de l'opérateur ou les trames de mesure, et Boucle Consommateur effectuant les calculs et l'écriture sur disque.
  • Gestion dynamique des files d'attente de commandes.
  • Implémentation d'une gestion d'erreurs centralisée et synchronisée entre les boucles.

Atelier pratique : Développement complet d'un enregistreur de données de vol simulé, associant la saisie de l'opérateur à l'enregistrement asynchrone des paramètres physiques sur fichier.

Cas métier : Banc d'essai automatisé avec traitement intensif de données en arrière-plan.

Compétence acquise : Maîtriser l'architecture reine de la programmation LabVIEW industrielle pour des applications multitâches complexes.

Livrable : Squelette de projet fonctionnel en architecture Producteur/Consommateur événementiel.

Après-midiOptimisation, profilage et déploiement des applications

Objectif : Analyser les performances d'une application pour éliminer les fuites mémoires, optimiser la charge CPU et compiler le projet final sous forme d'exécutable autonome.

  • Utilisation des outils d'audit et de performance de LabVIEW (Performance and Memory Profiler).
  • Gestion de la mémoire : réallocation, duplication de données, et optimisation des structures de diagramme.
  • Gestion du projet LabVIEW (Project Explorer) et des dépendances.
  • Compilation d'applications : configuration des propriétés d'un exécutable autonome (.exe).
  • Création d'installeurs professionnels prêts au déploiement pour vos clients ou techniciens de production.

Atelier pratique : Profilage complet d'un code défaillant pour éliminer les fuites de mémoire, puis configuration de la compilation pour générer son exécutable d'installation Windows.

Cas métier : Fiabilisation de code R&D et déploiement industriel.

Compétence acquise : Savoir optimiser les performances d'un programme graphique et packager sa solution logicielle de manière autonome.

Livrable : Exécutable autonome compilé (.exe) accompagné de son package d'installation automatisé.

Les ateliers et cas métier de ce programme pourront être adaptés par le consultant-formateur selon les besoins, le niveau et les prérequis des participants, pour favoriser l’atteinte des objectifs pédagogiques.

Cette formation dans le parcours

Vous êtes ici

LabVIEW - Développer des applications avancées

Indicateurs de résultats

Indicateurs publiés à partir de 3 avis.

Mode de calcul