NI-DAQmx

Matériel d'acquisition de données de National Instruments (châssis cDAQ et leurs modules, équipements USB et PCI Express, et les équipements simulés de NI MAX) lu un échantillon par scrutation par le NI-DAQmx installé sur cet ordinateur : la carte Équipement NI-DAQmx, la voie physique et la mesure d'un tag, la lecture et l'écriture, la découverte, et un exemple complet sur un châssis cDAQ.

Afficher en Markdown

Le pilote NI-DAQmx lit et écrit le matériel d'acquisition de données de National Instruments : les châssis cDAQ et leurs modules de la série C, les équipements USB comme l'USB-6001 ou l'USB-6211, et les équipements PCI Express, par NI-DAQmx, le pilote que National Instruments distribue gratuitement pour son matériel. C'est le matériel qu'un programme LabVIEW lit avec les blocs DAQmx, configuré sur un panneau au lieu d'être câblé dans un diagramme : chaque tag est une voie physique, telle que NI MAX la nomme (ai0, port0/line3, ao0, ctr0), avec ce que la voie mesure ou pilote, et ses valeurs arrivent là où arrivent celles de tout autre tag : dans la Logique, sur les tableaux de bord, dans les exécutions d'un banc d'essai du Process.

Le pilote lit un échantillon par scrutation : à l'intervalle de scrutation de chaque tag, il prend une valeur de la voie, comme le fait tout autre pilote. Il sert les signaux lents (températures, pressions, niveaux, états, comptages), pas l'acquisition continue que le matériel fait sur sa propre horloge; voir Limites à connaître.

Un équipement de ce pilote est un équipement de NI MAX, trouvé par le nom que NI MAX lui donne, où qu'il soit branché : en USB, dans un emplacement PCI Express, dans un châssis cDAQ en USB ou en Ethernet. Les équipements simulés que NI MAX crée gratuitement, pour la plupart du matériel NI, sont lus comme les vrais, si bien qu'une configuration peut être montée et essayée avant que le matériel n'arrive. Les équipements simulés peuvent aussi être créés par l'API de configuration de NI, qu'un assistant IA ayant accès à cet ordinateur peut utiliser avec votre accord. Les équipements se rangent sous le pilote et peuvent être classés dans des dossiers, Pilote → Dossier → Équipement → Tag, comme sous tout pilote sans ligne série ni broker.

NI-DAQmx sur cet ordinateur

Le produit n'inclut pas NI-DAQmx et n'installe aucun de ses fichiers. Le pilote lit le matériel par le NI-DAQmx installé sur cet ordinateur, celui qu'utilisent NI MAX et LabVIEW. La station vérifie d'elle-même s'il est là : la première fois que la page du pilote, la page de l'un de ses équipements ou l'agent le demande, puis toutes les 30 secondes tant qu'il manque. Tant que le Connector n'a pas démarré, on ne sait pas si NI-DAQmx est là, et rien n'en est dit. Tant qu'il manque :

Où Ce qui se passe
La page du pilote Un avis de prudence, « NI-DAQmx n'est pas installé sur cet ordinateur », avec les étapes ci-dessous. Son lien ouvre la page de NI dans le navigateur de l'ordinateur.
La page de chaque équipement Le même avis.
Les équipements Peuvent être ajoutés et configurés, tags compris; ils restent hors ligne, et la dernière erreur de chacun donne les mêmes étapes, en anglais, comme sont écrites les causes propres du pilote.
Découvrir Ne liste rien, et dit que NI-DAQmx n'est pas installé et que l'avis de la page du pilote indique le téléchargement et les étapes d'installation.
L'agent driver_capabilities donne les étapes sous prerequisite, avec installed à false.

Pour l'installer :

  1. Ouvrez la page de NI NI-DAQ™mx Download. Elle demande de se connecter avec un compte NI avant le téléchargement.
  2. Dans sa liste Version, prenez la version la plus récente dont le readme (View Readme) mentionne le Windows de cet ordinateur et, sous Device Support, votre équipement. NI-DAQmx ne fonctionne que sur Windows 64 bits.
  3. Exécutez le programme d'installation en tant qu'administrateur : il installe NI-DAQmx par NI Package Manager. Redémarrez l'ordinateur si le programme d'installation le demande.

Le NI-DAQmx le plus récent ne prend plus en charge certains équipements anciens : si son readme ne mentionne pas le vôtre, choisissez dans la liste Version une version antérieure dont le readme le mentionne.

Au plus tard 30 secondes après l'installation, l'avis disparaît et les équipements de ce pilote se connectent avec la configuration qu'ils ont, sans redémarrer Ganter Lab. NI MAX (NI Measurement & Automation Explorer) affiche chaque équipement avec le nom à saisir dans la carte Équipement NI-DAQmx.

La page du pilote

La page porte le tableau Équipements de tout pilote (voir Le tableau des équipements), qui grandit avec Ajouter un équipement, à droite de son titre; vide, il affiche « Aucun équipement pour l'instant. » La barre du pilote porte Découvrir, et la page n'a pas de carte Portée du balayage, parce que le balayage interroge NI-DAQmx et rien d'autre.

Équipement

La carte Équipement NI-DAQmx

Un équipement de ce pilote n'a pas de carte Connexion : il n'y a ni hôte, ni port, ni route à saisir, puisque NI-DAQmx trouve l'équipement par son nom. À sa place, la carte Équipement NI-DAQmx dit quel équipement de NI MAX il lit.

Champ Signification Par défaut
Nom de l'équipement « Le nom que NI MAX donne à l'équipement, par exemple Dev1, ou cDAQ1Mod1 pour un module d'un châssis cDAQ. Un équipement renommé dans NI MAX est de nouveau lu dès que son nouveau nom est saisi ici. » vide
Produit Lecture seule : « Ce que NI-DAQmx indique que l'équipement est, par exemple NI 9211, lu chaque fois que la station s'y connecte. » Il affiche « Pas encore lu » jusqu'à ce que l'équipement se connecte, et de nouveau dès qu'il n'est plus connecté. Rien n'en est enregistré.

Un châssis cDAQ est à lui seul un équipement de NI MAX (cDAQ1), et chacun de ses modules aussi (cDAQ1Mod1, cDAQ1Mod2). Les voies d'un module se lisent sur l'équipement du module; les compteurs du châssis (_ctr0 à _ctr3), sur l'équipement du châssis. L'Intervalle de scrutation (ms) de la carte Équipement fonctionne comme pour tout pilote, et chaque tag peut le remplacer.

Un nouvel équipement n'a pas encore de nom, et la station n'essaie pas de le joindre tant qu'il n'en a pas : sa ligne affiche « Équipement NI-DAQmx pas encore saisi », ses tags se lisent comme des vides, et sa page porte l'avis « La station n'essaie pas de joindre cet équipement tant qu'il n'a pas le nom d'un équipement NI-DAQmx : rien n'est donc encore lu depuis lui et il n'y a aucune erreur à afficher. Saisissez le nom que NI MAX donne à l'équipement dans la carte Équipement NI-DAQmx ci-dessous et la station s'y connecte. » Sur un ordinateur sans NI-DAQmx, c'est l'avis indiquant que NI-DAQmx n'est pas installé qui se trouve à cet endroit.

Un nom que NI-DAQmx ne pourrait jamais lire est refusé sous la case : « Un nom d'équipement ne contient ni « / », ni « , », ni « : ». Saisissez le nom exactement comme NI MAX l'affiche, par exemple Dev1 ou cDAQ1Mod1. » Une barre oblique est ce qui sépare un équipement de sa voie, si bien que Dev1/ai0 est la voie d'un tag et non un équipement. Savoir si NI MAX connaît le nom est la réponse de NI-DAQmx lui-même, donnée quand la station se connecte : un équipement que NI MAX ne connaît pas reste hors ligne avec les mots de NI-DAQmx comme dernière erreur.

L'URI de base que l'en-tête affiche est le nom de l'équipement derrière le schéma du pilote : nidaqmx://cDAQ1Mod1. Deux équipements de ce pilote peuvent lire le même équipement de NI MAX, par exemple le même module à deux intervalles de scrutation différents; le nom n'a pas à être unique.

Adressage du tag

La voie physique

Un tag de ce pilote lit ou pilote une voie de son équipement. La carte Source de la valeur du tag porte la case Voie physique, avec en dessous une indication qui suit la mesure : « Voie d'entrée analogique, p. ex. ai0 ou cDAQ1Mod1/ai0 », « Ligne numérique, p. ex. port0/line3 ou Dev1/port0/line3 », « Voie de sortie analogique, p. ex. ao0 ou Dev1/ao0 » ou « Compteur, p. ex. ctr0, ou _ctr0 sur un châssis cDAQ ».

La voie est enregistrée par rapport à son équipement (ai0), si bien qu'un équipement renommé dans NI MAX change un seul champ, celui de l'équipement. Une voie écrite en entier comme NI MAX l'écrit (cDAQ1Mod1/ai0) est enregistrée sous sa forme relative quand elle nomme l'équipement du tag lui-même, et refusée quand elle en nomme un autre : « Cette voie appartient à l'équipement Dev1, pas à cDAQ1Mod1. Saisissez une voie de cet équipement, ou la voie seule, par exemple ai0. »

Mesures

Sous la voie, Mesure dit ce que la voie mesure ou pilote. La mesure décide des types de donnée sous lesquels le tag est lu, de l'accès qu'il admet, de son unité et des champs dessinés en dessous.

Mesure Voie Type de donnée Accès Unité
Entrée de tension une entrée analogique, ai0 Double ou Float Lecture seule volts
Entrée de courant une entrée analogique, ai0 Double ou Float Lecture seule milliampères
Entrée thermocouple une entrée analogique, ai0 Double ou Float Lecture seule degrés Celsius
Ligne d'entrée numérique une ligne numérique, port0/line3 Boolean Lecture seule
Ligne de sortie numérique une ligne numérique, port0/line3 Boolean Lecture et écriture (par défaut), Écriture seule ou Lecture seule
Sortie de tension une sortie analogique, ao0 Double ou Float Écriture seule volts
Comptage de fronts un compteur, ctr0 (_ctr0 sur un châssis cDAQ) Int64 ou Double Lecture seule impulsions

Un nouveau tag est une entrée de tension, lue en Double. Une voie saisie que la mesure en vigueur ne lit pas apporte la mesure qu'elle lit le plus naturellement : une entrée analogique, une entrée de tension; une ligne numérique, une ligne d'entrée numérique; une sortie analogique, une sortie de tension; et un compteur, un comptage de fronts. Choisir une autre mesure apporte la plage de cette mesure, et un type de donnée ou un accès qu'elle n'admet pas devient celui qu'elle prend, si bien que les listes Type de donnée et Accès ne proposent que ce que la mesure admet. Le courant se lit en milliampères (NI-DAQmx lit des ampères et le pilote multiplie par 1000), si bien qu'une boucle 4-20 mA s'écrit comme on la nomme.

Chaque mesure dit sous son sélecteur ce qu'elle fait :

Mesure La ligne en dessous
Entrée de tension « Lit un échantillon en volts à chaque scrutation. »
Entrée de courant « Lit un échantillon en milliampères à chaque scrutation. »
Entrée thermocouple « Lit un échantillon en degrés Celsius à chaque scrutation, soudure froide compensée. »
Ligne d'entrée numérique « Lit la ligne comme vrai (haut) ou faux (bas). »
Ligne de sortie numérique « Pilote la ligne avec la valeur écrite et relit l'état qu'elle tient. »
Sortie de tension « Pilote la sortie avec la tension écrite. NI-DAQmx ne relit pas une sortie analogique : le tag est donc en écriture seule. »
Comptage de fronts « Compte les fronts dès que la station se connecte à l'équipement et lit le comptage à chaque scrutation. Une reconnexion repart du comptage initial. »

Les champs de la mesure

Un champ que la mesure ne lit pas n'est ni dessiné ni enregistré avec le tag.

Champ Mesures Signification Par défaut
Plage (V), Plage (mA) ou Plage (°C) Entrée de tension, Entrée de courant, Entrée thermocouple, Sortie de tension Deux cases, Valeur minimale et Valeur maximale, dans l'unité de la mesure. Sur une entrée : « NI-DAQmx choisit la plage d'entrée de l'équipement qui contient celle-ci : une plage étroite lit donc un petit signal plus finement. » Sur la sortie de tension : « La sortie n'accepte que des valeurs dans cette plage; une écriture hors plage est refusée avant d'atteindre l'équipement. » -10 à 10 V; 0 à 20 mA; 0 à 100 °C
Configuration des bornes Entrée de tension, Entrée de courant Valeur par défaut de la voie, Différentielle, Asymétrique référencée (RSE), Asymétrique non référencée (NRSE) ou Pseudo-différentielle : « Comment l'entrée est câblée : une entrée différentielle mesure entre deux bornes de la voie, une entrée asymétrique par rapport à une référence commune. La valeur par défaut de la voie est celle que NI-DAQmx choisit pour cette voie. » Valeur par défaut de la voie
Résistance de shunt Entrée de courant Valeur par défaut de la voie, Interne ou Externe : « La résistance que le courant traverse pour être mesuré : celle intégrée à l'équipement, ou une résistance externe câblée sur l'entrée, dont la valeur est saisie ici. » Valeur par défaut de la voie
Valeur du shunt (Ω) Entrée de courant, avec un shunt Externe La valeur de la résistance externe, en ohms. 249
Type de thermocouple Entrée thermocouple Thermocouple de type J, Thermocouple de type K, Thermocouple de type N, Thermocouple de type R, Thermocouple de type S, Thermocouple de type T, Thermocouple de type B ou Thermocouple de type E. Thermocouple de type K
Compensation de soudure froide (CJC) Entrée thermocouple Capteur intégré ou Température fixe : « La température de la soudure froide du thermocouple : mesurée par le capteur intégré à l'équipement ou à son bornier, ou une température fixe saisie ici quand la soudure est maintenue à une température connue. » Capteur intégré
Température CJC (°C) Entrée thermocouple, avec une Température fixe La température de la soudure froide, en degrés Celsius. 25
Front compté Comptage de fronts Front montant ou Front descendant. Front montant
Sens du comptage Comptage de fronts Comptage croissant ou Comptage décroissant. Comptage croissant
Comptage initial Comptage de fronts Le comptage dont part le compteur chaque fois que l'équipement se connecte, de 0 à 4294967295. 0
Borne d'entrée Comptage de fronts « La borne dont les impulsions sont comptées, par exemple /Dev1/PFI8. Laissée vide, le compteur compte sur sa propre borne d'entrée par défaut. » Vide, la case affiche « Valeur par défaut du compteur ». Une borne écrite sans son équipement (PFI8) se lit sur l'équipement du tag lui-même. Sur un compteur d'un châssis cDAQ (_ctr0), qui n'a pas de borne d'entrée propre, la case n'affiche aucune valeur par défaut et la note dit « La borne dont les impulsions sont comptées, par exemple /cDAQ1Mod2/PFI0. Un compteur d'un châssis cDAQ n'a pas de borne d'entrée propre, elle est donc obligatoire. » vide

Un tag dont les champs ne peuvent pas fonctionner n'est pas enregistré, et la page du tag dit ce qui lui manque :

Vous saisissez La page du tag dit
Aucune voie « Saisissez la voie physique, par exemple ai0 ou Dev1/ai0. »
Une voie d'un autre genre que celle que la mesure lit, comme ao0 sous un thermocouple « Cette mesure lit une voie d'entrée analogique, par exemple ai0. », « Une sortie de tension pilote une voie de sortie analogique, par exemple ao0. », « Une ligne numérique s'écrit par son port et sa ligne, par exemple port0/line3. » ou « Un comptage de fronts lit un compteur, par exemple ctr0. »
Une valeur minimale qui n'est pas inférieure à la maximale « La valeur minimale doit être inférieure à la valeur maximale. »
Un shunt externe sans résistance supérieure à zéro « Un shunt externe a besoin de sa résistance en ohms, supérieure à zéro. »
Une température fixe de soudure froide égale ou inférieure au zéro absolu « La température CJC doit être une température en degrés Celsius au-dessus du zéro absolu. »
Un comptage initial hors de ce qu'un compteur 32 bits contient « Le comptage initial est un nombre entier de 0 à 4294967295. »
Une borne d'entrée avec une espace ou une virgule « Saisissez la borne d'entrée telle que NI-DAQmx la nomme, par exemple /Dev1/PFI8, sans espace ni virgule. »
Un comptage de fronts sur un compteur d'un châssis cDAQ (_ctr0) sans borne d'entrée « Un compteur d'un châssis cDAQ n'a pas de borne d'entrée propre : saisissez la borne où arrivent ses impulsions, par exemple /cDAQ1Mod2/PFI0. »
Un type de donnée ou un accès que la mesure n'admet pas « Cette mesure se lit en Double, Float. », et pour un accès, la phrase qui nomme les accès que la mesure admet

L'enregistrement tient les mêmes règles que les panneaux, et le journal des actions le dit quand il en refuse un : « L'équipement « Module voltages » nomme un équipement NI-DAQmx que le pilote ne peut pas lire. Ouvrez-le et corrigez le nom d'équipement que son panneau signale. » ou « Le tag « Pressure » a un réglage que le pilote NI-DAQmx ne peut pas utiliser. Ouvrez-le et corrigez le champ que le panneau du tag signale. »

La ligne en lecture seule Adresse source (bus) montre ce que le pilote reçoit : la voie telle que NI-DAQmx la nomme et chaque réglage de la mesure, par exemple cDAQ1Mod1/ai0?measurement=voltageInput&terminal=diff&min=0&max=10, cDAQ1Mod2/ai0?measurement=thermocouple&type=K&cjc=builtIn&min=0&max=400, Dev1/port0/line3?measurement=digitalOutput ou cDAQ1/_ctr0?measurement=edgeCount&edge=rising&direction=up&initial=0&input=%2FcDAQ1Mod3%2FPFI0.

Lecture

Le pilote crée les tâches NI-DAQmx d'un équipement quand la station s'y connecte, et les garde jusqu'à ce qu'il se déconnecte. Ce que fait une lecture, et ce que NI-DAQmx répond, décident de ce que le tag affiche (voir La chaîne de conversion) :

Tags Comment ils sont lus
Entrées analogiques (tension, courant, thermocouple) Toutes les entrées analogiques d'un équipement partagent une tâche, que chaque lecture démarre, dont elle prend un échantillon par voie et qu'elle arrête ensuite. Un équipement a un moteur de cadencement analogique, et un châssis cDAQ trois pour tous ses modules, si bien qu'une tâche gardée démarrée empêcherait un autre module de lire. Une lecture qui trouve le moteur occupé par une autre tâche (NI MAX, LabVIEW) redemande deux fois, à 25 ms d'intervalle. Un échantillon sert à tous les tags analogiques de l'équipement pendant la moitié du plus court intervalle de scrutation parmi eux, si bien qu'un module thermocouple lent convertit une fois par passe.
Une voie que NI-DAQmx refuse Chaque voie analogique est d'abord essayée seule : une voie que NI-DAQmx refuse (une plage que le module n'a pas, un thermocouple sur une voie qui n'en lit aucun) fait échouer son propre tag, pas tous les tags analogiques de l'équipement.
Lignes numériques, la sortie de tension, compteurs Une tâche par tag, démarrée quand l'équipement se connecte. Un compteur compte à partir de là, et repart de son comptage initial quand l'équipement se reconnecte.
NI-DAQmx répond Ce que fait la lecture
Une valeur, ou un avertissement La valeur, dans l'unité de la mesure, avant que les étapes du tag lui-même ne la convertissent.
L'équipement retiré, injoignable ou réinitialisé Une connexion perdue : l'équipement se reconnecte et ses tâches sont recréées.
Aucune réponse en 10 secondes Un silence : l'équipement se reconnecte, et la politique du tag pour un équipement qui n'a pas répondu décide de ce qu'il affiche.
Toute autre erreur La lecture en échec de ce tag, avec le texte de NI-DAQmx lui-même et son code; l'équipement continue de lire ses autres tags.

La mise à l'échelle est la chaîne du tag lui-même : le pilote livre des volts, des milliampères ou des degrés, et les étapes Mise à l'échelle et Étalonnage les transforment en valeur d'ingénierie (0 à 10 V en 0 à 16 bar). Aucune échelle personnalisée de NI MAX n'est créée ni lue.

Écriture

Une Ligne de sortie numérique et une Sortie de tension s'écrivent; toute autre mesure est en lecture seule. Une écriture passe par le même entonnoir que celle de tout autre pilote : la case d'écriture prend la valeur d'ingénierie, et les étapes de conversion sont inversées avant l'envoi de la valeur brute (voir Connector).

Mesure Ce que fait une écriture
Ligne de sortie numérique Met la ligne à l'état haut pour vrai et à l'état bas pour faux. Le tag relit l'état que la ligne tient, sauf s'il est en Écriture seule.
Sortie de tension Pilote la sortie avec la tension écrite. Une valeur hors de la plage du tag est refusée avant que rien n'atteigne l'équipement. NI-DAQmx ne relit pas une sortie analogique, si bien que le tag est en Écriture seule et n'affiche aucune valeur à lui.

Une valeur que NI-DAQmx refuse revient sous la forme « Écriture refusée par l'équipement : <raison>. », avec pour raison le numéro d'erreur de NI-DAQmx (NI-DAQmx -200561), qui se lit de la même façon dans toutes les langues, tandis que les mots de NI-DAQmx lui-même vont au journal technique; aucune réponse en 10 secondes affiche « Écriture non confirmée : l'équipement n'a pas répondu à temps. » Une écriture attend la lecture en cours sur le même équipement.

Découverte

Découvrir, sur la barre du pilote, demande à NI-DAQmx chaque équipement que NI MAX connaît, les simulés compris, et rien n'est envoyé au matériel. Il ne prend aucune adresse. Pendant qu'il tourne, la ligne de progression nomme l'équipement en cours de lecture : « Lecture de cDAQ1Mod1 depuis NI-DAQmx… ». Sans NI-DAQmx, il ne liste rien et dit « NI-DAQmx n'est pas installé sur cet ordinateur : aucun équipement ne peut être listé. L'avis du volet de ce pilote indique le téléchargement et les étapes d'installation. »

Chaque équipement est un candidat nommé par son nom et son produit (cDAQ1Mod1 (NI 9205)), avec ses voies comme tags candidats, chacun avec les valeurs par défaut de sa mesure :

Voies Proposées comme
Entrées analogiques Entrée thermocouple sur un module thermocouple, un équipement qui ne lit que des millivolts et dit lire un thermocouple (un NI 9211) : type K, Capteur intégré et 0 à 100 °C. Sinon Entrée de tension là où la voie lit une tension, sur -10 à 10 V ou sur la plage propre de l'équipement là où elle est plus étroite, et Entrée de courant ou Entrée thermocouple là où NI-DAQmx dit que la voie ne lit pas de tension. Un module universel, qui lit une vraie tension en plus d'un thermocouple, propose des entrées de tension : choisissez la mesure sur le tag une fois qu'il est ajouté.
Lignes numériques Ligne d'entrée numérique, ou Ligne de sortie numérique là où la ligne ne fait que piloter.
Sorties analogiques Sortie de tension, en Écriture seule.
Compteurs Comptage de fronts. NI-DAQmx ne liste pas les compteurs d'un châssis cDAQ, si bien que le châssis arrive sans tags : ajoutez à la main un tag sur _ctr0, avec la Borne d'entrée où arrivent les impulsions, car un compteur du châssis n'en a pas de propre.

Un candidat dont un équipement du pilote lit déjà le nom est marqué comme déjà configuré et propose Ouvrir au lieu d'Ajouter. Le reste du comportement du balayage est dans Découverte.

Un équipement que vous avez déjà relit ses voies depuis sa propre page : Découvrir les tags, dans l'en-tête de sa carte Tags, interroge NI-DAQmx sur ce seul équipement et ne propose que les voies pour lesquelles il n'a pas encore de tag, avec les valeurs par défaut de leur mesure (voir Découvrir les tags d'un équipement).

Exemple : un châssis cDAQ

Un châssis cDAQ-9178, que NI MAX nomme cDAQ1, porte un module de tension NI 9205 dans l'emplacement 1, avec un transmetteur de pression 0-10 V câblé en différentiel sur sa première voie, et un module thermocouple NI 9211 dans l'emplacement 2, avec un thermocouple de type K dans un four. Lisez les deux :

  1. Sur la page du pilote, Ajouter un équipement; nommez-le Module voltages et saisissez cDAQ1Mod1 dans Nom de l'équipement. Une fois connecté, Produit affiche NI 9205.
  2. Ajouter un tag; nommez-le Pressure, Voie physique ai0, gardez Entrée de tension, réglez la plage sur 0 et 10 et la Configuration des bornes sur Différentielle. Sur la carte Conversion, activez l'étape Mise à l'échelle avec un facteur de 1,6 et donnez au tag l'unité bar : 0 à 10 V se lit 0 à 16 bar.
  3. De nouveau Ajouter un équipement; nommez-le Oven thermocouples, Nom de l'équipement cDAQ1Mod2.
  4. Ajouter un tag Zone1, Voie physique ai0, Mesure Entrée thermocouple, gardez Thermocouple de type K et Capteur intégré, et réglez la plage sur 0 et 400.
  5. Pour compter des impulsions sur le châssis, un équipement dont le Nom de l'équipement est cDAQ1 porte les compteurs : un tag sur _ctr0 est un Comptage de fronts, avec la Borne d'entrée où arrivent les impulsions, par exemple /cDAQ1Mod3/PFI0.

L'adresse de bus du tag Pressure se lit cDAQ1Mod1/ai0?measurement=voltageInput&terminal=diff&min=0&max=10. Un agent fait de même avec les outils; le thermocouple nomme sa mesure, parce que ai0 seul se lit comme une entrée de tension :

device_upsert name="Module voltages" driver="NiDaqmx" daqmxDevice="cDAQ1Mod1"
tag_upsert device="Module voltages" name="Pressure" address="ai0" daqmxMinimum=0 daqmxMaximum=10 daqmxTerminal="Differential"
device_upsert name="Oven thermocouples" driver="NiDaqmx" daqmxDevice="cDAQ1Mod2"
tag_upsert device="Oven thermocouples" name="Zone1" address="ai0" daqmxMeasurement="Thermocouple" daqmxThermocouple="K" daqmxMaximum=400
device_upsert name="Chassis counters" driver="NiDaqmx" daqmxDevice="cDAQ1"
tag_upsert device="Chassis counters" name="Pulses" address="_ctr0" daqmxCounterTerminal="/cDAQ1Mod3/PFI0"

Outils de l'agent

driver_capabilities décrit ce pilote sous niDaqmx : le nom de l'équipement et, pour chaque mesure, une voie d'exemple, l'unité, ses champs, les types de donnée et les accès qu'elle admet, avec les listes de choix de chaque champ, le comportement des lectures et des écritures et ce que la découverte propose. device_upsert driver=NiDaqmx prend daqmxDevice, le nom que NI MAX donne à l'équipement ('' l'efface, et l'équipement en attend un). tag_upsert prend la voie en address et les champs de sa mesure : daqmxMeasurement (VoltageInput, CurrentInput, Thermocouple, DigitalInput, DigitalOutput, VoltageOutput ou EdgeCount; omis, la voie apporte la sienne), daqmxMinimum et daqmxMaximum, daqmxTerminal (Default, Differential, ReferencedSingleEnded, NonReferencedSingleEnded ou PseudoDifferential), daqmxShunt (Default, Internal ou External) et daqmxShuntOhms, daqmxThermocouple (J, K, N, R, S, T, B ou E), daqmxCjcSource (BuiltIn ou ConstantValue) et daqmxCjcTemperature, daqmxEdge (Rising ou Falling), daqmxCountDirection (Up ou Down), daqmxInitialCount et daqmxCounterTerminal. Un champ que la mesure ne lit pas est refusé, si bien que l'appel ne nomme que ce qui s'applique. Un équipement et un tag que les outils renvoient portent niDaqmx : le nom de l'équipement, son produit une fois connecté et si NI-DAQmx est installé. device_discover driver=NiDaqmx liste chaque équipement que NI MAX connaît avec ses voies comme tags candidats. Les autres outils sont dans Outils de l'agent.

Limites à connaître

  • L'acquisition continue n'est pas faite. Le matériel peut échantillonner sur sa propre horloge, des milliers de points par seconde dans un tampon; ce pilote lit un échantillon par scrutation, il sert donc les signaux lents, et une forme d'onde ou une vibration n'est pas lue.
  • Le produit n'inclut pas NI-DAQmx : sans lui sur cet ordinateur, les équipements restent hors ligne, et la page du pilote dit comment l'installer (NI-DAQmx sur cet ordinateur). La station le prend en compte sans redémarrage.
  • La soudure froide d'un thermocouple vient du capteur intégré du module ou d'une température fixe; une soudure froide lue sur une autre voie n'est pas proposée.
  • Une sortie analogique n'est pas relue : un tag de sortie de tension est en Écriture seule.
  • Une tâche, une voie globale ou une échelle personnalisée enregistrées dans NI MAX ne sont pas utilisées : chaque tag nomme une voie physique, le pilote construit ses propres tâches, et la mise à l'échelle est la chaîne du tag.