L’IVI (Interchangeable Virtual Instrumentation) est une spécification de driver d’instrument éditée par l’IVI Foundation constituée par les grands noms de l’instrumentation comme Agilent, National Instruments, Rohde & Schwarz, Aeroflex, Tektronix, Teradyne, Pickering et d’autres.
Cette spécification définie des classes d’instuments (multimètre, oscilloscope, alimentation, …). Tous les drivers d’une même classe ont les mêmes fonctions exportées. Ceci permet une compatibilité et interchangeablité des instruments. Ainsi le logiciel de mesure est lié au driver de la classe qui aiguille vers le driver spécifique de l’instrument utilisé.
Exemple : j’ai un logiciel de test qui fait des mesures de tension grâce à un multimètre. Mon logiciel va appelé le driver de la classe multimètre. IVI ce charge d’aiguiller vers le driver spécifique du modèle X de chez Agilent. Ainsi, on peut changer ce multimètre par le modèle Y de chez Agilent ou le modèle Z de chez Tektronic par simple configuration, sans à modifier le logiciel (pour vu qu’on ait installé les driver IVI de ces trois instruments).
Liste des classes d’instrument définis par IVI :
- Multimètre (DMM)
- Oscilloscope
- Générateur de fonction
- Source d’alimentation DC
- Source d’alimentation AC
- Switch
- Wattmètre
- Analyser de spectre
- Générateur de signaux RF
- Upconverter
- Downconverter
- Digitizer
- Counter/timer
Certains instruments particuliers n’entrent pas dans cette classification. Dans ce cas il est possible de créer une nouvelle classe.
LabWindows/CVI offre des assistants pour le développement des drivers et l’ajout d’une nouvelle classe.
Les drivers IVI peuvent être appelé par tout type de langage de programmation. Cependant LabWindow/CVI, LabVIEW, et Measurement Studio offrent toutes les fonctions clef en main pour leur utilisation.
Pour les bancs de test, l’utilisation des drivers IVI est avantageuse car elle permet une maintenance plus facile (interchangeabilité des instruments). A noter que le séquence de test TestStand permet de piloter directement les instruments utilisant des drivers IVI à partir des séquences (sans programmation).