Questions / Réponses » Utilisation et exemples
|
Question
|
|
Comment utilise-t'on les ActiveX de G2k pour piloter les analyseurs ou accéder aux spectres et à leurs paramètres ?
|
|
Réponse
|
|
Voici un exemple d'utilisation des ActiveX avec " Microsoft Visual Basic " version 6.0 (nommé VB6 par la suite).
Lancer le logiciel de programmation VB6.
Créer un nouveau projet 'EXE standard' (cela va créer par défaut, un fichier projet nommé 'Project1' et une feuille nommée 'Form1').
Dans la barre de menu, sélectionner 'Projet', puis 'Composants'.
Sous l'onglet 'Contrôle', s'affiche alors une liste de composants correspondants notamment à des fichiers *.dll.
Parmi cette liste, doivent apparaître (parmi d'autres) des composants Canberra (attention, pour cela, une version 2.0 ou supérieure de G2k doit être installée sur le PC).
Sélectionner un ou plusieurs composants Canberra dans la liste (en fonction de ce que l'on veut faire, par exemple 'Canberra Nuclear Device Control Library' pour accéder aux spectres et leur paramètres, ou 'Canberra Nuclear Data Display Library' pour piloter l'acquisition) et cliquer sur le bouton OK. Les composants sélectionnés sont ajoutés sous forme d'icônes dans la boîte à outils (si celle-ci n'est pas affichée dans la fenêtre VB6, l'ouvrir en sélectionnant 'Boîte à outils' dans le menu 'Affichage'). Les composants Canberra sélectionnés sont à présent disponibles et utilisables.
|
|
Toutes les commandes et tous les paramètres utilisables de cette manière, par l'intermédiaire des ActiveX, sont donnés dans le manuel 'Genie2000 Customization Tools Manual', fourni avec le logiciel G2k. On peut ainsi créer une application personnalisée, les seuls outils nécessaires étant G2k version 2.0 ou supérieure, et un logiciel de programmation tel que VB6.
|
|
Exemples d'utilisation et de commandes de composants Canberra :
|
|
1) Canberra Nuclear Device Control Library
Dans la liste de composants de contrôle, sélectionner 'Canberra Nuclear Device Control Library' pour ajouter l'outil 'DeviceAccess' permettant d'accéder aux spectres. Sélectionner ensuite 'DeviceAccess' en cliquant sur son icône, dans la boîte à outils, et ajouter l'objet sur la feuille 'Form1' (par défaut, il sera nommé 'DeviceAccess1').
Créer ensuite un bouton classique en sélectionnant l'outil 'CommandButton' et en le plaçant sur la feuille. Double-cliquez dessus ; vous arrivez alors dans le code source, où vous devrez taper les commandes correspondantes aux fonctionnalités souhaitées pour le bouton. Un tel bouton peut être associé à un paramètre ou une action, ou à plusieurs :
- Ppour connecter le détecteur nommé 'DET01' (nom par défaut) : " DeviceAccess1.Connect "DET01", ReadWrite, SpectroscopyDetector, "", aUseSystemSettings ".
Ppour connaître le type de l'analyseur utilisé : " analyser = DeviceAccess1.AnalyzerType " ('analyser' est une variable VB6 qui prendra la valeur renvoyée par 'DeviceAccess1.AnalyzerType', et permettra par exemple d'afficher dans une boîte de dialogue, le type d'analyseur utilisé).
...
|
|
2) Canberra Nuclear Data Display Library
Dans la liste de composants de contrôle, sélectionner 'Canberra Nuclear Data Display Library' pour ajouter l'outil 'Mvc' permettant de piloter l'acquisition. Sélectionner ensuite 'Mvc' dans la boîte à outils, et l'ajouter sur la feuille 'Form1' (il sera nommé 'Mvc1' par défaut).
Créer ensuite un bouton classique et double-cliquer dessus. Ajouter alors au code source les actions souhaitées :
Pour ouvrir un détecteur de la liste de détecteur de G2k (par exemple 'DET01' s'il existe) : " Mvc1.Open "DET01", ReadWrite, SpectroscopyDetector, "", aUseSystemSettings "
Pour lancer une acquisition sur le détecteur DET01 : " Mvc1.AcquireStart ".
...
|
Exemple de code source VB6 :
|
|
Lance une acquisition de 100 sec sur le détecteur DET01
|
|
Private Sub LanceAcquisition_Click()
' ouvre et connecte le détecteur DET01
Mvc1.Open "DET01", ReadWrite, SpectroscopyDetector, "",
aUseSystemSettings
DeviceAccess1.Connect "DET01", ReadWrite, SpectroscopyDetector, "",
aUseSystemSettings
' RAZ le spectre
Mvc1.Clear (NormalClear)
' règle le temps d'acquisition (live time) à 100 secondes
Mvc1.Param(CAM_X_PLIVE) = 100
' lance l'acquisition sur DET01
Mvc1.AcquireStart (NormalStart)
|
|
Retour aux thèmes abordés.
|
|
|
 |