- Electronique Innovante - https://innovelectronique.fr -

Prise en main du compactRIO-9074 de National Instrument

Le NI cRIO-9074 [1] (Système avec contrôleur temps réel 400 MHz intégré et FPGA 2 millions de portes) équipe désormais tous les lycées ayant des sections STI2D SIN. De plus il est livré avec trois modules d’acquisition :

Nous allons donc réaliser la mise en œuvre de cet appareil dans les pages suivantes.

Le châssis NI cRIO-9074

Commencez par lire les spécifications techniques de la page d’accueil [1] de ce châssis et la page généraliste sur les compactRIO [6].

Pour la partie logiciel, il faut installer :

Ces trois étapes sont très importantes sinon le logiciel MAX, le gestionnaire de systèmes distribués puis ensuite LabVIEW ne fonctionneront pas avec le compactRIO !

Pour la partie matériel, il vous faut :

Sur le coté gauche du compactRIO vous trouvez un ensemble de mini-interrupteurs. Par défaut tous ces interrupteurs sont en position ‘OFF’ :

L’ensemble de DELs sur le coté gauche du compactRIO vous renseigne sur le fonctionnement de celui-ci :

Le châssis est équipé de deux ports ethernet : le premier sert à la connexion à votre réseau, le second à chainer plusieurs compactRIO. Dans les huit emplacements disponibles vous pouvez connecter les modules d’entrées/sorties de la série C.

Premier démarrage du compactRIO, configuration IP de l’appareil et installation de logiciels

Câblez l’alimentation au module, suivant le cas connectez le châssis à l’aide d’un câble ethernet au réseau de l’établissement (câble droit) ou à votre PC (câble croisée). La configuration IP de votre établissement ou de votre portable est censé vous être connu. Si votre établissement est équipé d’un serveur DHCP ou si vous utilisé le châssis à la maison pour des tests (boxADSL), le châssis récupérera tout seul une adresse IP.

Nous allons maintenant configurer le châssis en fixant son adresse IP (adresse IP fixe : adapté au fonctionnement en établissement). Si vous avez un adaptateur série-usb et un câble série croisé sous la main, n’hésitez pas à regarder les messages de démarrage du compactRIO dans Hyperterminal (pensez à mettre l’interrupteur CONSOLE sur ON).

Avant toute chose : désactivez le parefeu de Microsoft Windows et éventuellement l’antivirus surtout s’il est lui aussi équipé d’un parefeu !

Lancez le logiciel MAX puis cliquez sur le ‘+’ de « Systèmes déportés » pour qu’une recherche sur le réseau s’effectue pour trouver les appareils compactRIO. Dans la capture ci-dessous, un appareil a été trouvé à l’adresse 192.168.1.67. Si l’appareil n’a pas pu récupérer une adresse ip sur un serveur DHCP, son adresse sera 0.0.0.0 = non configuré.

captur-logiciel-max-onglet-parametres [12]

Dans le même temps, vous pouvez observer la voie série du compactRIO :

On remarque que l’adresse est « statique » donc qu’elle a été fixée par l’utilisateur. Les serveurs VISA et RIO sont fonctionnels.

Pour changer ou fixer l’adresse ip de l’appareil, cliquez sur l’onglet « Paramètres réseau » en bas de la fenêtre de MAX. Vous obtenez alors la page suivante :

capture-logiciel-max-onglet-reseau [13] Ici on remarque que l’adresse est en mode « statique ». Si vous souhaitez passer votre compactRIO en mode DHCP ou si vous reliez le compactRIO à votre ordinateur à l’aide d’un cable croisé, cliquez sur le bouton à coté de « Configurer l’adresse IPv4 » et choisissez l’option « DHCP ou Link-local ».

Ici on restera en « statique » : il faudra adapter les paramètres IP à votre établissement.

Laissez la deuxième carte ethernet « eth1 » désactivée.

Sauvegardez vos changements par l’icone « Enregistrer » et faites redémarrer l’appareil par l’icone « Redémarrer ». Suivez le « boot » par voie série pour vérifier que les changements IP ont été pris en compte.

Laissez du temps à MAX pour retrouver l’appareil.

Remarque : si le compactRIO n’est pas visible dans les « systèmes déportés » il peut y avoir deux raisons essentielles à cela :

Nous allons maintenant rajouter quelques fonctionnalités à notre compactRIO. Pour cela toujours dans MAX cliquez sur l’item « Logiciels » de votre RIO. Puis en haut de la fenêtre cliquez sur « Ajouter/supprimer des logiciels ». Une nouvelle fenêtre s’ouvre comme dans la capture ci-dessous:

ajout-logiciels-dans-compactrio [14]

Vous pouvez par exemple rajouter les fonctionnalités « webserver ». Ce qui permettra d’accéder au compactRIO et à ces réglages par l’intermédiaire d’un navigateur. Une fois cette fonctionnalité installée, pointez votre navigateur vers l’adresse ip du compactRIO pour observer le résultat. Rajoutez aussi la fonctionnalité « NI Scan engine » que nous allons utiliser par la suite.

Vérification du fonctionnement des modules de la série C du compactRIO

Le compactRIO est livré avec les trois modules décrit en début d’article. Pour pouvoir les tester à distance, il faut installer l’extension ou le logiciel « NI Scan engine » dans votre compactRIO (voir ci-dessus). Ensuite lancez l’application « Gestionnaire de systèmes distribués » dans le menu « Démarrer », « National Instrument ».

Le Gestionnaire de systèmes distribués centralise la gestion et la surveillance des systèmes NI sur votre réseau. C’est un outil très utile pour la mise au point et la visualisation rapide des valeurs de vos E/S ainsi que de l’utilisation des ressources systèmes.

Vous devez obtenir l’écran suivant (l’adresse IP peut être différente ainsi que le nombre de compactRIO détecté) :

gestionnaire-de-systemes-distribues [15]Vous remarquez que l’on retrouve les trois modules installés sur le châssis. Ici les noms sont « Mod1 », « Mod2 » et « Mod3 ». Cliquez sur les différents items afin d’observer ce qu’ils contiennent.

Vérifiez que l’item « Affichage automatique » est coché dans le menu « Affichage » pour avoir des graphes déroulants et des renseignements complémentaires sur l’état des modules.

Vous pouvez connecter un capteur de température analogique LM35 ou un potentiomètre sur une des entrées analogiques pour vérifier qu’elle fonctionne correctement. Ou encore relier AO0 (Analogue Out 0) à AI0 (Analog In 0) à l’aide d’un simple fil…

Premier VI implanté sur le compactRIO

Lancez LabVIEW. Au démarrage si l’installation des logiciels c’est passé correctement, vous devez avoir le « SplashScreen » ci-dessous (notez l’horloge) et un choix supplémentaire en bas de la page d’accueil : Cibles => Projet Temps Réel.

splashscreen_labview [16]Lors de la création d’un projet, vous pouvez sélectionner le mode de programmation de votre application :

Dans notre cas, nous allons utiliser le mode « Scan Interface » (ou alors rajoutez 1H de téléchargement et une heure d’installation pour la solution FPGA).

Créez un « projet vide », puis dans la fenêtre de projet qui s’est ouverte faites un clic droit sur l’item « Projet ». Choisissez « Nouveau », « Cibles et périphériques ». Choisissez alors dans la fenêtre qui s’ouvre votre compactRIO (Item Real-Time CompactRIO). La fenêtre de l’explorateur de projet peut se présenter de la manière suivante (à l’adresse ip prés) :

explorateur-de-projet [17]On retrouve votre compactRIO (ici nommé RIO) avec l’adresse IP qui lui est affecté.

Vous retrouvez aussi les trois modules de la série C installés sur le châssis. Dans l’exercice qui suit on se propose de relier AO0 à AI0 à l’aide d’un fil, positionner DIO3 en sortie et DIO7 en entrée puis les relier par un fil et de vérifier que l’ensemble fonctionne correctement.

Ici le module1 (NI9201 : Entrées Analogiques) est déroulé et vous avez accès aux différentes voies (notées AI0 à AI7).

Pour accéder à ces entrées, il suffit de les glisser/déposer sur un diagramme.

Pour créer un VI qui sera implanté dans le compactRIO, il faut faire un clic droit  sur le nom de votre châssis (ici RIO) puis « Nouveau » puis « VI ». Vous retrouvez alors les fenêtres classiques de LabVIEW (face avant et diagramme). Renommez-le si vous le souhaitez puis glissez/déposez AI0 et AO0 sur le diagramme.

Il faut alors mettre en place une boucle de scrutation des entrées/sorties. En environnement temps réel, c’est la boucle « boucle cadencée » qui est utilisée.

Pour utiliser les E/S TOR TTL, il faut tout d’abord les configurer. Le module NI9401 permet de déterminer le sens des E/S par groupe de 4 (D7:D4 et D3:D0). Vous ne pouvez pas gérer individuellement chaque broche. Ce réglage est accessible en faisant un clic droit sur l’item « Mod3 » (NI9401) puis en choisissant « Propriétés ». Dans la fenêtre qui apparaît, choisissez le sens des E/S :choix_es_numerique [18]Vous pouvez alors glisser/déposer les E/S numériques dans le diagramme.

Vous réalisez donc la face avant suivante et le diagramme associé :

face-avant-test-es [19]diagramme-test-es [20]Un mot sur la boucle cadencé : il faudra régler ces paramètres en double-cliquant sur son bloc de gauche. Les deux paramètres à régler sont :

Vous pouvez observez l’effet du « dt » en le modifiant dans la boucle cadencée et en regardant à quel allure évolue l’indicateur « Nb d’itérations ».

Fonctionnalités étendues du module NI9401

Ce module permet de configurer ces 8 E/S suivant différentes configurations visibles ci dessous (clic droit sur le module NI9401 dans l’arbre de projet puis « Propriétés ». Dans la fenêtre qui vient de ‘s’ouvrir sélectionnez « Specialty Digital Configuration »):

choix_mode_es_numerique [21]Vous avez donc le choix entre :

Mais vous ne pouvez pas « mixer » ces configurations. De plus toutes les E/S sont concernées : c’est à dire que vous avez 8 compteurs ou 8 MLI ou 2 gestion d’encodeur.

Réalisez le VI ci-dessous. Il permet juste de générer un signal MLI (à l’origine je voulais piloter un petit servo moteur et faire l’alimentation avec une des sorties MLI en la mettant à 100% !) :

face-avant-test-pwm [22]diagramme-test-pwm [23]

Vous prendrez pour la PWM1 une période de 50Hz. Le réglage de la MLI se fait avec une valeur comprise entre 0 et 100. Vérifiez à l’oscilloscope l’allure de la courbe et appréciez la justesse des temps ! (même en augmentant la fréquence de la MLI !

Lectures pour approfondir vos connaissances…

Je n’ai fait qu’effleurer les possibilités du compactRIO. Il faut explorer plus avant et en particulier avec le FPGA. Je vous conseille de lire les PDFs joints à la formation : « Getting started with CompactRIO and LabVIEW [24] » et le guide du développeur du compactRIO [25] (en anglais également)