Mise en œuvre d’un système de déclenchement haute précision pour l’analyse de particules atmosphériques avec NI CompactRIO et LabVIEW FPGA
Author(s):
David Thomson - david.s.thomson@noaa.gov
Industry:
Research, Life Science
Products:
Data Acquisition, Modular Instruments, LabVIEW, Reconfigurable I/O, Distributed I/O
The Challenge:
Développer un système pour l’analyse temps réel des propriétés optiques des particules atmosphériques.
The Solution:
Utiliser CompactRIO et le module LabVIEW FPGA afin de concevoir un système évolué qui aide les chercheurs à personnaliser les déclenchements pour des mesures plus précises.
"CompactRIO et LabVIEW FPGA nous ont fourni une solution performante qui répond à notre besoin en termes de déclenchement de pics personnalisé."
L’Administration Nationale des Océans et de l’Atmosphère (NOAA) développe actuellement un nouveau système d’instrumentation dans le but d’étudier les propriétés optiques des particules atmosphériques en mesurant leur diffusion et leur absorption lorsqu’elles traversent un faisceau laser. Pour obtenir une précision optimale des mesures, le système doit être déclenché lorsque la particule se trouve au centre du faisceau.
Le faisceau laser a une répartition gaussienne de la puissance. Ainsi, lorsqu’une particule à vitesse constante le traverse, on obtient un signal lumineux diffusé de forme gaussienne. Les particules diffusent différentes quantités de lumière en fonction de leur taille et de leur composition. Par conséquent, l’amplitude et, dans une certaine mesure, la largeur des pics gaussiens varient d’une particule à une autre. Si un simple seuil est utilisé pour déclencher le système, de petites particules provoquent un déclenchement à proximité du pic du signal, tandis qu’avec des particules plus importantes, le déclenchement se produit plus tôt sur le front montant du pic. Du fait de ces disparités, la NOAA avait besoin d’un système de déclenchement plus perfectionné.
Importance d’un déclenchement précis
En utilisant le matériel CompactRIO programmé avec le logiciel LabVIEW FPGA, nous avons développé un système capable d’effectuer un traitement numérique du signal temps réel et fiable, à des fréquences très élevées, afin de provoquer un déclenchement au plus près du pic du signal d’entrée, quelle que soit la taille de la particule. L’instrument ASTER (Aerosol Scatter to Extinction Ratio) est conçu pour mesurer la diffusion et l’absorption de la lumière provenant de particules atmosphériques isolées. L’instrument aspire l’air ambiant qui traverse le faisceau laser à l’intérieur d’une cavité optique CRDS (cavity-ring-down system). Lorsque les particules traversent le faisceau laser, l’instrument ASTER mesure la lumière diffusée qui en résulte à l’aide d’un détecteur à tube photomultiplicateur. Lorsque l’instrument détecte une diffusion lumineuse, un déclenchement est nécessaire pour obtenir un signal ring-down. Le signal lumineux diffusé et le signal ring-down sont ensuite analysés afin de déterminer la diffusion, l’absorption et l’extinction (diffusion + absorption) de lumière totale pour cette particule.
Pour optimiser cette mesure, le déclenchement ring-down doit se produire lorsque la particule se trouve au centre du faisceau laser. Étant donné que des particules différentes (de par leur composition et leur diamètre) diffusent des quantités différentes de lumière, les pics de diffusion peuvent avoir des amplitudes et des largeurs différentes. La méthode de déclenchement classique utilise une tension de seuil sur un comparateur afin de déclencher le système lorsque le signal de diffusion dépasse une valeur prédéterminée. Le problème avec ce type de système est que les petites particules le déclenchent lorsqu’elles sont à proximité du centre du laser tandis que les grandes particules le déclenchent dès qu’elles atteignent la périphérie du rayon laser.
Un moyen de pallier ce problème consiste à surveiller le signal de diffusion en temps réel, détecter le sommet du pic et générer une impulsion de déclenchement. Comme la largeur de nos pics de diffusion est de l’ordre de 100 microsecondes, un système adapté au déclenchement de ce type de pic doit être à même d’acquérir et d’analyser des données avec une résolution de l’ordre de la microseconde. Peu de systèmes prêts-à-l’emploi sont capables d’implémenter un algorithme personnalisé en temps réel respectant ces vitesses. Il y a quelques années, nous avons repéré une solution du commerce que nous avons utilisée pour mettre en œuvre le prototype d’un système de déclenchement de pics. Toutefois, ce produit coûtait 5 000 dollars en matériels et nécessitait des outils logiciels supplémentaires.
Amélioration de la précision avec CompactRIO
Heureusement, National Instruments a introduit la technologie CompactRIO. En particulier lorsque le module de conversion A/N cRIO-9201avec une fréquence d’échantillonnage de 800 kéch./s a été commercialisé, nous avons réalisé que CompactRIO était susceptible de nous apporter une solution de déclenchement de pics performante. Le module d’E/S numériques haute vitesse NI 9401répond à la deuxième moitié de nos exigences car il peut produire des signaux numériques avec des retards de seulement 100 ns. Nous avons installé ces deux modules dans un châssis embarqué reconfigurable cRIO-9101, doté d’un FPGA d’un million de portes, avec un contrôleur temps réel embarqué cRIO-9002, créant ainsi une solution compacte pour un coût inférieur à 3 000 dollars.
Nous avons développé deux versions : l’une simple et l’autre plus complexe. La première inclut des états permettant de détecter la présence d’un pic (supérieur à un seuil défini), de trouver le sommet du pic, d’émettre l’impulsion de déclenchement d’une largeur spécifiée, de rechercher la fin du pic et d’attendre un laps de temps spécifié avant de recommencer à chercher le pic suivant. La boucle complète s’exécute à une vitesse de 1,25 microsecondes par itération en tenant compte de la conversion A/N de 800 kéch./s. La conversion A/N est traitée en pipeline : nous utilisons un registre à décalage de façon à ce que la boucle principale puisse agir sur la mesure précédente pendant qu’une nouvelle mesure est relevée. Cela permet à la logique de l’algorithme d’intervenir parallèlement à la conversion A/N, maintenant la vitesse globale de la boucle à 800 kHz maximum.
L’algorithme permettant de détecter le pic fait intervenir le stockage des valeurs numériques des mesures dans un buffer circulaire et la comparaison de la valeur en cours avec une valeur précédente acquise N points plus tôt. Lorsque la valeur en cours est inférieure à la précédente, cela signifie que le sommet du pic a été atteint et que le signal commence à diminuer. Le retard N est maintenu à un minimum afin d’obtenir un déclenchement aussi près que possible du sommet du pic. Cependant, N doit être assez important pour assurer une immunité au bruit suffisante, en fonction du rapport signal sur bruit du signal analysé. D’un point de vue conceptuel, cet algorithme est semblable à la recherche du point zéro d’une dérivée première numérique, avec un filtrage rudimentaire provenant du retard du point N.
Caractéristiques de déclenchement supplémentaires
Dès lors que nous avions construit notre système avec CompactRIO et LabVIEW FPGA, il est devenu très facile de modifier l’algorithme et d’ajouter de nouvelles fonctionnalités. La version plus complexe du système permet, en plus, de générer des déclenchements temporisés (indépendants du signal d’entrée), des impulsions de déclenchement uniques et des sorties basses ou hautes constantes de la ligne de déclenchement. En outre, nous avons accru l’immunité au bruit du système en mettant en œuvre un moyennage sur trois points au niveau des points de données en cours et précédents. Nous avons également écrit un programme d’interface sur l’ordinateur hôte afin de modifier les divers paramètres du système embarqué à partir de LabVIEW sous Windows. Ce programme d’interface que nous avons créé en moins d’une demi-heure illustre un autre avantage de la solution LabVIEW. Avec le système précédent, nous aurions eu énormément de difficultés à concevoir une interface permettant de modifier en temps réel les paramètres de l’algorithme à partir de l’ordinateur hôte.
CompactRIO et LabVIEW FPGA nous ont fourni une solution performante qui répond à notre besoin en termes de déclenchement de pics personnalisé. Le développement de cette solution s’est révélé meilleur marché et plus rapide qu’avec les matériels et logiciels précédents. Et elle nous permet maintenant d’ajouter plus facilement de nouvelles caractéristiques et fonctionnalités. Enfin, la robustesse de CompactRIO s’avèrera un atout précieux lorsque cette expérience sera finalement déployée sur un aéronef volant à haute altitude.
Avril 2006
Related Case Studies
LabVIEW FPGA synchronise un système radar d’étude des nuagesLabVIEW Real-Time au cœur d’un système d’acquisition de données et de contrôle temps réel, distribué et en réseau
EDELWEISS traque les particules de la Matière Cachée avec LabVIEW et le PXI
Contrôle temps réel d’un moteur à réluctance variable avec NI LabVIEW FPGA et CompactRIO
Contrôle de pinces optiques par rétroaction temps réel basé FPGA
|
|

