2. Introduction aux commandes SCPI
En 1975, l'IEEE a normalisé un bus développé par Heweltt-Packard initialement appelé HPIB (Hewlett-Packard Interface Bus), puis modifié pour GPIB (General Purpose Interface Bus). La norme a été appelée IEEE 488 (IEEE 488.1) et elle définit les aspects mécaniques du bus. La dernière IEEE 488.2 définit ses propriétés de protocole. Ce qui manquait, c'était un ensemble de règles entre les fabricants concernant les commandes permettant de contrôler les instruments. Parfois, celles-ci variaient même entre les différents modèles d'un même fabricant.
En 1990, un consortium SCPI a lancé la première norme SCPI (Standard Commands for Programmable Instruments) sous forme d'un nouveau modèle pour la norme IEEE-488.2.
Les commandes SCPI sont des séquences ASCII, qui sont envoyées à l'instrument sur une couche de communication physique. Elles peuvent effectuer :
- Des opérations de réglage, par exemple la commande *RST (réinitialisation de l'instrument).
- Des opérations d'interrogation, par exemple la question *IDN? (interroge la séquence d'identification de l'instrument).
Certaines commandes SCPI existent à la fois comme commandes de réglage et commandes d'interrogation. Par exemple, une commande concernant le temps d'acquisition d'un oscilloscope "TIMebase:ACQTime". Vous pouvez le régler avec la commande SCPI "TIM:ACQT 10ms", mais également interroger sa valeur actuelle avec le "TIM:ACQT?".
Le format mentionné dans les manuels d'utilisation Rohde & Schwarz, par exemple : "TRIGger<m>:LEVel<n>[:VALue] <Level>" est appelé forme canonique. Vous trouvez ici les règles les plus importantes à vous souvenir :
- Les parties entre crochets ne sont pas obligatoires et peuvent être laissées de côté.
- Les parties en majuscules sont obligatoires ; les petites lettres peuvent être omises. Cela s'appelle la forme courte. Un exemple de la commande précédente en forme courte serait "TRIG1:LEV2 3.5". Vous pouvez utiliser la forme courte, ou la forme longue "TRIGGER1:LEVEL2 3.5", mais pas d'entre deux, par exemple "TRIGGE1:LEVE2 3.5".
- Les commandes SCPI ne respectent pas la casse. Vous pouvez également utiliser la forme courte "trig1:lev2 3.5" ou la forme longue "trigger1:level2 3.5"
- Combinez plusieurs commandes en une seule séquence en utilisant le point virgule ';'. Par exemple, une séquence combinée de "TRIG1:SOUR CH1" et "TRIG1:LEV2 3.5" serait "TRIG1:SOUR CH1;LEV 2". On remarque que la seconde commande ne possède pas la partie "TRIG1:". La raison est que l'arborescence de la commande ne change pas au sein d'une séquence. Si vous voulez réinitialiser l'arborescence de commande à sa racine, utilisez le caractère des deux points au début de la seconde commande : "TRIG1:SOUR CH1;:CHAN2:STATe ON".
- Créez des formats d'interrogation en ajoutant un point d'interrogation, la plupart du temps à la fin : "TRIG1:LEV2?" Parfois, il y a un paramètre supplémentaire placé après le point d'interrogation. Il doit y avoir un espace entre le point d'interrogation et le paramètre supplémentaire. Par exemple : "TRACE:DATA? TOUS "
- les paramètres numériques sans unités spécifiées sont considérés dans les unités de base. Dans notre cas, le paramètre numérique 3.5 correspond à 3,5 Volts.
La norme SCPI complète est disponible ici : SCPI-99
Découvrez notre description dédiée de la SCPI : Commande à distance via SCPI