Ouvre une connexion VISA avec un instrument ou un périphérique
#include <Visa.au3>
_viOpen ( $sVisa_Address [, $sVisa_Secondary_Address = 0] )
$sVisa_Address |
Une chaîne descripteur de ressource VISA (voir remarques dans _viExecCommand() pour plus d'infos) En tant que raccourci, vous pouvez également passer directement une adresse GPIB comme un entier |
$sVisa_Secondary_Address | [optionnel] L'"adresse secondaire GPIB". Utilisé uniquement si l'adresse primaire est passé comme un entier. Seuls quelques instruments GPIB ont des adresses secondaires. Dans ces cas, ce paramètre optionnel peut être utilisé pour la spécifier. Ce paramètre est ZERO par défaut, ce qui signifie SANS ADRESSE SECONDAIRE. |
Succès: | Retourne le handle (POSITIF) de l'instrument VISA. |
Échec: | Retourne -1 et définit @error <> 0. |
Comme pour toutes les fonctions VISA les librairies VISA doivent être installées (vous pouvez tester si VISA32.DLLL est dans {WINDOWS}\system32) et une carte GPIB (comme une carte NI PCI- GPIB ou une une carte GPIB Agilent 82350B PCI High-Performance) doit être installé.
* Pour une description détaillée de descripteurs des cartes VISA les plus courantes regardez les Remarques de l'aide sur la fonction _viExecCommand().
_viClose, _viExecCommand, _viFindGpib, _viGpibBusReset, _viGTL, _viSetAttribute, _viSetTimeout
; - Cet exemple suppose que vous avez installé l'instrument à l'adresse GPIB 1 ; Il montre comment utiliser la fonction _viExecCommand en mode autonome et combiné avec _viOpen et _viClose. ; Il montre également la fonction _viGTL #include <MsgBoxConstants.au3> #include <Visa.au3> Global $h_Session = 0 ; Interroge l'ID de l'instrument à adresse GPIB 3 MsgBox($MB_SYSTEMMODAL, "Étape 1", "Ouvre la connexion de l'instrument avec _viOpen") Global $h_Instr = _viOpen("GPIB::3::0") MsgBox($MB_SYSTEMMODAL, "Handle de l'Instrument obtenu", "$h_Instr = " & $h_Instr) ; Affiche le handle de la session ; Interroge l'instrument MsgBox($MB_SYSTEMMODAL, "Étape 2", "Interroge l'instrument en utilisant le handle de l'instrument Visa") Global $s_Answer = _viExecCommand($h_Instr, "*IDN?") ; $h_Instr nest pas une chaîne! MsgBox($MB_SYSTEMMODAL, "Résultat de GPIB QUERY", $s_Answer) ; Affiche la réponse ; Interroge de nouveau. Inutile d'ouvrir le lien de nouveau MsgBox($MB_SYSTEMMODAL, "Étape 3", "Interroge de nouveau. Inutile d'ouvrir le lien de nouveau") $s_Answer = _viExecCommand($h_Instr, "*IDN?") MsgBox($MB_SYSTEMMODAL, "Résultat GPIB QUERY", $s_Answer) ; Affiche la réponse MsgBox($MB_SYSTEMMODAL, "Étape 4", "Ferme la connexion avec l'instrument connection en utilisant _viClose") _viClose($h_Instr) ; Ferme la connexion MsgBox($MB_SYSTEMMODAL, "Étape 5", "Ouvre la connexion avec l'instrument en utilisant seulement le nombre adresse") $h_Instr = _viOpen(3) MsgBox($MB_SYSTEMMODAL, "Handle de l'instrument obtenu", "$h_Instr = " & $h_Instr) ; Affiche le handle de la session ; Interroge l'instrument MsgBox($MB_SYSTEMMODAL, "Étape 6", "Interroge l'instrument en utilisant le handle de l'instrument VISA") $s_Answer = _viExecCommand($h_Instr, "*IDN?") ; $h_Instr nest pas une chaîne! MsgBox($MB_SYSTEMMODAL, "Résulat GPIB QUERY", $s_Answer) ; Affiche la réponse ; ; Interroge de nouveau. Inutile d'ouvrir le lien de nouveau MsgBox($MB_SYSTEMMODAL, "Étape 7", "; Interroge de nouveau. Inutile d'ouvrir le lien de nouveau") $s_Answer = _viExecCommand($h_Instr, "*IDN?") MsgBox($MB_SYSTEMMODAL, "Résultat GPIB QUERY", $s_Answer) ; Affiche la réponse MsgBox($MB_SYSTEMMODAL, "Étape 8", "Ferme la connexion à l'instrument à l'aide de _viClose") _viClose($h_Instr) ; Ferme la connexion à l'instrument