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
En amont
Vous êtes ici
Indicateurs de résultats
Indicateurs publiés à partir de 3 avis.
