Modèles et exemples de projets LabVIEW

Aperçu

LabVIEW dispose de modèles et d’exemples de projets intégrés qui constituent des points de départ spécialement élaborés et recommandés pour garantir la qualité et l’évolutivité d’un système. Tous ces modèles et exemples de projets sont libres et incluent une documentation détaillée conçue de façon à indiquer clairement le fonctionnement du code et les bonnes pratiques pour ajouter ou modifier des fonctionnalités. En plus de présenter les architectures recommandées, ces projets illustrent les bonnes pratiques pour documenter et organiser du code.

Contenu

Créer un projet à partir d’un modèle ou d’un exemple de projet LabVIEW

Vous pouvez créer un nouveau projet à partir d’un modèle ou d’un exemple de projet existant dans LabVIEW.

  1. Lancez LabVIEW.
  2. Depuis l’écran de démarrage de LabVIEW, sélectionnez Créer un projet.
  3. Dans la fenêtre Créer un projet, sélectionnez un Modèle ou un Exemple de projet qui servira de point de départ à votre projet LabVIEW.
    1. La liste des options disponibles dans la fenêtre Créer un projet dépend des modules logiciels et des drivers que vous avez installés. Ce document recense les modèles et les exemples de projets fournis et supportés par NI.
    2. Vous pouvez filtrer les projets affichés en sélectionnant Modèles ou Exemples de projets sur le panneau de gauche, ou rechercher des projets par mot-clé.
      1. À droite du nom de chaque projet, vous verrez s’il s’agit de Modèles ou d’Exemples de projets. 

         

Modèles

Les modèles utilisent les briques élémentaires de la plupart des applications LabVIEW. Il n’est pas rare de devoir combiner plusieurs modèles pour construire des systèmes réels. Ces modèles fournissent des architectures courantes reposant sur des modèles de conception largement reconnus, que l’utilisateur peut modifier à sa guise pour construire un système.

Machine à états simple

Machine à états simple

Ce modèle simplifie la définition de la séquence d’exécution des sections de code. Cette implémentation spécifique, souvent appelée machine de Moore, détermine l’état suivant en fonction des décisions prises dans l’état actuel. La conception de ce modèle facilite l’insertion de nouvelles sections de code, la suppression de sections de code existantes ou le changement de l’ordre d’exécution des sections sans apporter de modifications majeures à la structure de l’application.

Gestionnaire de messages dans une file d’attente

Ce modèle facilite l’exécution simultanée de plusieurs sections de code et l’envoi de données entre elles. Chaque section de code représente un processus, tel que l’acquisition de données, et est conçue de la même façon qu’une machine à états. La séparation de ces éléments permet d’obtenir une interface utilisateur réactive et d’enregistrer les données en continu pendant que d’autres messages sont traités.

Framework d’acteur

Il s’agit d’un modèle permettant de créer des applications LabVIEW composées de plusieurs tâches indépendantes qui doivent communiquer entre elles. Ce framework a été conçu pour se préparer à des scénarios de développement courants susceptibles de provoquer une duplication significative de code lors de l’extension de fonctionnalités ou de l’ajout de processus. Le Framework d’acteur est un modèle avancé qui s’appuie sur les Classes LabVIEW.

Exemples de projets pour PC de bureau

Les exemples de projets dédiés aux PC de bureau démontrent l’utilisation d’un ou plusieurs modèles dans une application réelle. Ces projets répondent aux exigences les plus courantes des applications de mesure sur PC de bureau, telles que les interfaces utilisateur réactives, l’analyse asynchrone, l’enregistrement de données, les boîtes de dialogue utilisateur, la gestion d’erreurs, ainsi que de multiples tâches indépendantes.

Mesure finie

L’exemple de projet Mesure finie effectue une seule mesure et propose des solutions permettant de l’exporter dans un fichier. Cet exemple de projet est conçu comme une machine à états qui peut répondre à des requêtes de l’utilisateur pour configurer et exécuter une mesure*, effectuer des analyses, afficher des résultats et enregistrer des données sur le disque.

*NI-DAQmx 9.5.5 (ou toute version ultérieure) installe une deuxième version de cet exemple de projet qui utilise l’API NI-DAQmx pour configurer et acquérir une mesure réelle avec des E/S matérielles.

Mesure continue et enregistrement dans un fichier

Mesure continue et enregistrement dans un fichier

L’exemple de projet Mesure continue et enregistrement dans un fichier acquiert des mesures en continu et les enregistre sur le disque. Il exécute cinq boucles en parallèle pour garantir que des tâches diverses et variées puissent être exécutées en même temps tout en répondant à des requêtes de l’utilisateur et en ajoutant ces dernières à une file d’attente. Ces cinq boucles permettent la gestion d’événements, la communication par messages de l’interface utilisateur, l’acquisition*, l’enregistrement et l’affichage des données.

*NI-DAQmx 9.5.5 (ou toute version ultérieure) installe une deuxième version de cet exemple de projet qui utilise l’API NI-DAQmx pour configurer et acquérir une mesure réelle avec des E/S matérielles.

Refroidisseur par évaporation à rétroaction

Refroidisseur par évaporation à rétroaction

L’exemple de projet Refroidisseur par évaporation à rétroaction est construit à partir du modèle Framework d’acteur et met en œuvre un refroidissement par évaporation avec des matériels échangeables à chaud, des contrôleurs et des interfaces utilisateur. L’exemple de projet est constitué de plusieurs VIs s’exécutant indépendamment, appelés acteurs, qui représentent l’interface utilisateur, le refroidisseur, ses ventilateurs et son niveau d’eau. Chaque acteur est capable de passer des messages ressemblant à des commandes aux acteurs apparentés et de recevoir des messages de ce type de ces derniers. L’architecture supporte l’extension pour inclure davantage d’acteurs de manière statique ou dynamique.

Système de supervision et d’acquisition de données

Remarque : Les fonctionnalités de cet exemple de projet nécessitent le module LabVIEW DSC.

Cet exemple de projet implémente la supervision et l’acquisition de données (système SCADA) sur un système CompactRIO et sur un système basé sur un automate programmable simulés. Avec un serveur et une architecture client dotée d’une interface homme-machine (IHM), il utilise le module DSC (LabVIEW Datalogging and Supervisory Control) pour le connecter à du matériel tiers et pour l’enregistrement d’alarmes et de données historiques dans une application serveur. Dans le cadre de l’application IHM client, il effectue des mises à jour de l’interface utilisateur en fonction d’événements et la charge dynamique des sous-panneaux, démontrant ainsi l’efficacité et la réactivité de cette architecture basée sur une interface utilisateur.

Consulter le guide détaillé sur la Communauté NI | Visionner la présentation multimédia

Exemples de projets LabVIEW Real-Time et LabVIEW FPGA

Les systèmes embarqués nécessitent généralement une architecture capable de garantir une certaine fiabilité et des performances déterministes. Par conséquent, bon nombre d’applications embarquées nécessitent des processus dédiés à la surveillance de l’état des systèmes, à la gestion d’erreurs et aux horloges de surveillance (chiens de garde). Les exemples de projets LabVIEW pour systèmes CompactRIO et matériels d’acquisition de données PXI temps réel illustrent les bonnes pratiques destinées à répondre à ces besoins en fournissant des architectures logicielles recommandées qui peuvent être utilisées pour toute une variété de systèmes de contrôle et de surveillance embarqués. Ces exemples de projets déterminent également les bonnes pratiques relatives à la communication de données, à la connectivité réseau, aux routines de contrôle et à l’enregistrement de données, entre autres.

Pour afficher ces modèles dans LabVIEW, LabVIEW Real-Time et/ou le(s) module(s) LabVIEW FPGA doivent être installés.

Exemples de projets CompactRIO

LabVIEW FPGA Control sur CompactRIO

LabVIEW FPGA Control sur CompactRIO

Cet exemple de projet est conçu pour les applications qui nécessitent des performances élevées en matière de contrôle et/ou de logique de sécurité implémentée de façon matérielle. Au lieu d’exécuter l’algorithme de contrôle au niveau logiciel, le contrôle est implémenté dans le circuit FPGA, ce qui permet à vos boucles de contrôle d’atteindre des fréquences supérieures à 10 kHz avec un jitter minimal. Le VI FPGA contient également de la logique de sécurité qui met immédiatement toutes les sorties dans un état de sécurité en cas d’erreur critique ou de défaillance du logiciel temps réel pour une fiabilité optimale.

Lire la documentation | Consulter le guide détaillé sur la Communauté NI

LabVIEW Real-Time Control on CompactRIO (interface de balayage sur RIO)

LabVIEW Real-Time Control on CompactRIO (interface de balayage sur RIO)

Cet exemple de projet est spécifiquement conçu pour des applications de contrôle qui nécessitent des performances déterministes avec des fréquences d’E/S point par point de 100 Hz ou moins. Il n’utilise pas le matériel FPGA mais exploite le processeur temps réel déterministe pour le contrôle, ainsi que l’interface de balayage sur RIO (Scan Interface) pour accéder aux données d’E/S en tant que variables au sein de l’application temps réel.

LabVIEW FPGA Waveform Acquisition and Logging sur CompactRIO

LabVIEW FPGA Waveform Acquisition and Logging sur CompactRIO

Cet exemple de projet inclut une acquisition de données analogiques haute vitesse à partir du FPGA programmable, et enregistre les données acquises sur le disque au niveau du système temps réel lorsqu’une condition de déclenchement est remplie. Il est conçu pour fonctionner de manière autonome, sans interface, ou peut être connecté à l’interface utilisateur optionnelle proposée.

LabVIEW Real-Time Sequencer sur CompactRIO

LabVIEW Real-Time Sequencer sur CompactRIO

Cet exemple de projet met en œuvre un séquenceur qui exécute des séquences définies par l’utilisateur dans LabVIEW Real-Time pour les applications de contrôle/commande. Il inclut une interface utilisateur Windows qui génère des séquences définies par l’utilisateur, les déploie sur CompactRIO et surveille l’état du séquenceur. L’interface utilisateur charge de façon dynamique les sous-panneaux afin de démontrer l’efficacité et la réactivité de cette architecture basée sur une interface utilisateur.

Visionner la présentation vidéo

 

Exemples de projets temps réel (avec NI-DAQmx)

Les exemples de projets LabVIEW Real-Time (NI-DAQmx) sont conçus pour des applications impliquant le contrôle temps réel et/ou l’acquisition et l’enregistrement de signaux.

Contrôle LabVIEW Real-Time (NI-DAQmx)

Contrôle LabVIEW Real-Time (NI-DAQmx)

Cet exemple de projet met en œuvre le contrôle déterministe logiciel d’une installation à l’aide de NI-DAQmx. Il est conçu pour des applications de contrôle qui nécessitent des performances déterministes sur les E/S du système DAQ et utilisent les contrôleurs PXI temps réel et les interfaces DAQ de NI.

Lire la documentation

Acquisition de waveform LabVIEW Real-Time et enregistrement dans un fichier journal (NI-DAQmx)

Acquisition de waveform LabVIEW Real-Time et enregistrement dans un fichier journal (NI-DAQmx)

Cet exemple de projet acquiert des signaux en continu et les enregistre sur le disque à l’aide de NI-DAQmx. Il inclut l’acquisition de données analogiques et enregistre les données acquises sur le disque au niveau du système temps réel lorsqu’une condition de déclenchement est remplie. Il est conçu pour fonctionner de manière autonome, sans interface, ou peut être connecté à l’interface utilisateur optionnelle proposée. Il est conçu pour des applications qui utilisent les contrôleurs PXI temps réel avec les interfaces DAQ de NI, ou les systèmes NI CompactDAQ autonomes.

Lire la documentation

Ajout de modèles et d’exemples de projets personnalisés

Les utilisateurs chevronnés peuvent enrichir la liste des modèles et des exemples de projets avec leurs propres créations. La boîte de dialogue « Créer un projet » constitue ainsi un excellent moyen de partager et de distribuer des modèles recommandés au sein d’une équipe de développeurs.

Dans le cadre de la création d’un modèle ou d’un exemple de projet personnalisé, la boîte de dialogue « Créer un projet » peut être mise à jour de façon à inclure des éléments supplémentaires, tels que des modèles client, permettant de créer du code personnalisé.

Bien commencer avec un modèle ou un exemple de projet

Les modèles et les exemples de projets font appel à un large éventail de compétences et de concepts de programmation LabVIEW. La documentation fournie dans chaque projet énumère les concepts avec lesquels les utilisateurs doivent se familiariser. De plus, les indications qui apparaissent en bleu sur le diagramme expliquent clairement comment ajouter ou modifier du code.

Was this information helpful?

Yes

No