Audela |
![]() |
Ces commandes permettent de contrôler l'acquisition d'images avec des caméras reconnues par Audela : Audine, Hi-SIS 11, Hi-SIS 22 (12 et 14 bits), ST7, CookBook 245, MX5, WebCam (port USB Windows uniquement). Les commandes qui permettent de contrôler une caméra s'écrivent
"cam"
suivi d'un numéro. Ces commandes n'existent pas au démarrage de Audela, mais sont créées par la commande
"::cam::create ...".
Ainsi il est possible de piloter plusieurs caméras, mais il est laissé à l'utilisateur le soin de ne pas exécuter des commandes simultanément. Lors d'une acquisition, l'image est stockée dans un buffer (à renseigner avec la fonction cam1 buf). En plus, si on précise à quel télescope (automatique) est reliée la caméra (à renseigner avec cam1 tel), elle récupère automatiquement ses coordonnées, et les inscrit dans le header FITS.
Il est important de savoir que les auteurs ne disposent pas personnellement de ces caméras, et donc qu'il peut y avoir des problèmes avec certaines caméras.
Les commandes sont divisées en deux catégories :
Cette commande déclenche l'acquisition d'une image avec les paramètres de vue courants (voir plus loin). Cette commande rend la main tout de suite, alors que la numérisation de l'image sera effectuée à la fin de la pose. Pour détecter le moment où la pose est terminée, cette commande modifie la variable globale status_cam1 (pour la caméra 1, status_cam5 pour la caméra 5) aux différentes phases de la prise d'image. Ainsi, au début de la pose cette variable est affectée de la valeur "exp", en fin de pose elle prend la valeur "stand". Ainsi il est possible grâce à un vwait d'attendre la fin de la pose pour continuer un script, mais il est également possible de faire autre chose pendant la prise de vue :
cam1 exptime 10cam1 acq# traitement qui dure moins de 10 s...vwait status_cam1# la pose est terminée
La fonction "stop" permet d'interrompre une pose en cours. Si aucune pose n'est en cours, le message d'erreur "No current exposure" est renvoyé. Sinon, la lecture du CCD est déclenchée tout de suite, et l'image est disponible dans le buffer d'acquisition dès que cette commande rend la main.
Renvoie le type de caméra que pilote la commande cam1 (de même pour les autres commandes cam...).
Renvoie le nom du capteur CCD qui est installé dans la caméra que pilote la commande cam1.
Renvoie le nom de la caméra.
Renvoie une liste de deux éléments. Le premier élément est le nombre de pixels sur l'axe x et le second élément est le nombre de pixels sur l'axe y. Attention, le nombre de pixels dépend du binning et de la fenêtre.
Renvoie une liste de deux éléments. Le premier élément est le nombre de photosites sur l'axe x et le second élément est le nombre de photosites sur l'axe y. Attention, le nombre de photosites ne dépend pas du binning, ni de la fenêtre. Cela correspond au nombre de pixels en binning 1x1, fenêtre entière.
Renvoie une liste de deux éléments. Le premier élément est la dimension d'un photosite sur l'axe x et le second élément est la dimension d'un photosite sur l'axe y. L'unité de la dimension est le mètre.
Renvoie une liste de deux éléments. Le premier élément est la dimension d'un pixel sur l'axe x et le second élément est la dimension d'un pixel sur l'axe y. L'unité de la dimension est le mètre. Les pixels sont définis comme des rassemblement de photosites en fonction de la valeur du binning.
Renvoie la valeur du nombre de pas codeurs maximal délivré par le convertisseur analogique numérique de la caméra. Il s'agit de la valeur du niveau de saturation.
Renvoie la valeur du facteur de remplissage des pixels. C'est une valeur comprise entre zéro et un.
Renvoie le type de codage du masque RGB pour une matrice CCD couleur. "none" pour une matrice noir & blanc. "cfa" pour une matrice couleur codée CFA (Kaf-0400 couleur par exemple).
Renvoie le nombre de secondes écoulées depuis le début de pose. Si la pose n'est pas en cours, revoie la valeur -1. L'option -countdown permet de renvoyer le nombre de secondes qui reste avant la fin de la pose.
Renvoie le gain théorique de la caméra en électrons par pas codeur (e/adu).
Renvoie le bruit de lecture théorique de la caméra, en électrons.
Renvoie la température du capteur CCD, en degrés Celsius.
Sans argument, cette commande renvoie le temps de pose qui sera utilisé pour réaliser les images. L'argument durée permet de régler cette valeur. Par exemple :
cam1 exptime 5.2# Okcam1 exptime# 5.20
Cette commande permet de connaître ou de modifier le binning courant utilisé pour réaliser les images, suivant que l'on spécifie ou non l'argument. Celui-ci prend la forme d'une liste à deux éléments : les facteurs de binning suivant les deux axes du CCD.
cam1 bin [list 2 3]# Okcam1 bin# 2 3Attention, certaines caméras ne permettent pas n'importe quelles valeurs de binning. Se renseigner.
Réglage des coordonnées de la fenêtre de numérisation du CCD. Lorsque le paramètre optionnel est précisé, il doit s'agir d'une liste de 4 entiers qui correspondent à l'abscisse et l'ordonnée du coin inférieur gauche, et à l'abscisse et l'ordonnée du coin supérieur droit. Le système de coordonnées a pour origine le premier pixel dans le coin inférieur gauche, et a pour coordonnées (1,1). Les coordonnées de la fenêtre s'expriment hors de tout facteur de binning : par exemple, une image pleine trame en binning 2x2 a quand même un fenêtrage à (1,1)-(768,512) pour un CCD comme celui de Audine.
Cette commande permet de régler l'adresse du port de communication auquel est reliée la caméra. Le paramètre port doit être lpt1 ou lpt2. Par contre si la commande est utilisée dans le paramètre optionnel, elle renvoie l'adresse du port :
Cette commande permet de savoir, ou de modifier, le buffer dans lequel sera stockée l'image d'acquisition. L'argument optionnel, tout comme la valeur renvoyée est un nombre qui est le numéro du buffer. Ainsi, si "cam1 buf" renvoie 2, la commande qui permet d'avoir accès à l'image acquise est "buf2 ...".
Réalise le même genre de lien que pour la fonction "buf", mais avec le télescope. S'il est informatisé, alors à chaque prise de vue le télescope est interrogé sur ses coordonnées, et elles sont inscrites dans le header FITS.
Lorsque l'obturateur est supporté par la caméra, on peut en préciser le comportement. La commande "cam1 shutter" permet cela. Elle a un argument optionnel, qui si il est précisé permet de régler ce mode de fonctionnement. S'il est absent, cette commande renvoie le mode actuel.
Les trois modes supportés sont opened, closed, synchro. Les deux premières valeurs infligent un comportement statique à l'obturateur. Le dernier mode, synchro, ouvre l'obturateur en début de pose et le ferme à la fin. C'est le mode par défaut, qui est utilisé pour l'acquisition traditionnelle. Pour faire des noirs et offsets, on se servira du mode closed.
Lorsque le système de refroidissement est géré par le logiciel, cette fonction a pour paramètre, l'une des valeurs suivante :
- off : permet d'arrêter le refroidissement.
- on : permet de mettre en fonctionnement le refroidissement.
- check value : envoie une consigne de température à atteindre (en degrés).
Fixe la valeur de la longueur focale du système optique placé devant le capteur CCD. Entrer la valeur mètres.
Permet de commuter la prise en compte ou non des cellules cachées à la lumière sur la matrice CCD. Par défaut, on ne lit pas ces cellules pour obtenir une image esthétique (paramètre sur off). Une étude scientifique de l'image exige parfois de connaître la valeur de ces pixels cachés. Dans ce cas, on fixera le paramètre de l'overscan sur on.
Permet de commuter l'arrêt des interruptions de type cli/sty lors du dialogue avec le port parallèle.
Attention, ce mode n'a pas encore été porté dans le driver externe !!!Le mode correspond à la manière dont est lu le CCD. Trois modes sont possibles : "full", "half", "grid". Le premier (et par défaut) correspond au mode pleine trame, c'est à dire le mode classique d'acquisition. Le mode "half" correspond au mode demi-trame. Enfin le mode "grid" est un mode particulier qui permet de ne lire qu'un pixel sur 'n' dans les deux directions. C'est un mode pratique pour faire le pointage d'une planète lorsque le fond de ciel est intense : en mode grid 4x4, seul un pixel sur 16 est lu, l'image couvre la surface du CCD, mais le contenu des photosites n'est pas accumulé comme dans l'opération de binning. Ainsi ni le fond de ciel, ni la planète n'est saturé.
Ces quatre commandes sont celles qui permettent de tester la caméra Audine, comme décrit dans sa documentation de montage.
Déclenche le mode drift-scan pour Audine. L'image créée aura une dimension de width*height, en binning bin. Le paramètre dt correspond à l'intervalle de temps entre deux décalages de lignes, exprimé en millisecondes.
L'option -firstpix permet de décaler la colonne de démarrage de l'image (à indiquer avec la valeur de index). Pour faire une image de 100 pixels de large commençant à la colonne 207, il faut entrer la commande : cam1 scan 100 ... -firstpix 207. La largeur effective de l'image sur le CCD vaut largeur * bin.
L'option -fast, permet d'activer le mode rapide du scan. Dans ce cas, l'ensemble du scan bloquera les interruptions de l'ordinateur. Dans ce cas, l'horloge de Windows ne peut plus servir de base de temps. On se sert alors de boucles de calculs pour calibrer la milliseconde. La valeur du paramètre speed correspond aux nombres de boucles à effectuer pour réaliser une attente d'une milliseconde. Cette valeur dépend de l'ordinateur. Il faut bien entendu calibrer cette valeur. Cela peut être réalisé par la fonction cam1 scanloop.
L'option -perfo permet d'obtenir un fichier texte, à la fin du scan, qui montre les durées d'attente effectivement réalisées pour obtenir un décalage régulier des lignes. Cette option ne fonctionne que dans le cas où l'option -fast n'est pas activée.
L'option -tmpfile permet de sauver un fichier binaire des pixels lus, au cours de l'acquisition. Utile si l'on craint un plantage du système pendant la réalisation d'un scan important (occultation par exemple).
La hauteur de l'image n'est limitée que par la quantité de mémoire disponible de la machine, et de ses performances. Il faut tout de même savoir que sur l'image finale il y aura un gradient sur les 512/bin premières lignes car elles n'auront pas eu la même durée de présence dans le CCD (la première ligne y reste dt, la quinzième 15*dt/bin et la 700ème 512*dt/bin.
Cette commande n'effectue aucun test concernant les paramètres d'entrée, aussi il vaut mieux éviter une commande du genre avec un Kaf-0400 :
cam1 scan 128 300 3 200 -firstpix 512car le début de l'image est à la colonne 512, et sa largeur vaut 128*3=384. Le pixel final est donc en colonne 512+384-1=895 :
Le -1 est lié au problème des piquets et des intervalles (n piquets = n-1 intervalles).
Le Kaf-0400 ne possède que (!) 768 colonnes.
Le paramètre de période de décalage est estimé avec la formule suivante pour du drift-scan standard (compensation de la rotation céleste) :La fonction de drift-scan met à jour la variable scan_result1 pour la caméra cam1, etc. à la fin de la pose, de telle sorte qu'un vwait permette de la détecter.
Calibre la valeur du paramètre speed pour la fonction cam1 scan.
Arrête un drift-scan en cours. L'image en cours d'élaboration est conservée.
Permet de sélectionner le type d'obturateur. Le paramètre value peut avoir l'une des valeurs suivantes :
- audine : pour un obturateur classique de la caméra Audine (décrit dans la documentation).
- thierry : pour un obturateur de type Pierre Thierry, basé sur un pilotage par servo-moteurs.
Permet de changer les valeurs des paramètres de l'obturateur de type Pierre Thierry.
Commute le mode de l'amplificateur du CCD des Audines . Trois modes sont possibles :
- synchro : mode par défaut. L'amplificateur est arrêté juste après la phase de nettoyage du CCD en début d'intégration. Il est automatiquement remis en fonctionnement juste avant la lecture des pixels. Noter que l'option ?nbcleaning? permet de régler le nombre de nettoyages du registre horizontal avant lecture. Par défaut cette valeur est fixée à 60. Il est possible qu'il faille augmenter cette valeur dans le cas du Kaf-1600.
- on : l'amplificateur est toujours en fonctionnement, même pendant les intégrations. L'option ?nbcleaning? n'a aucune influence. Dans ce mode, le signal d'électroluminescence apparaît dans un coin de l'image.
- off :l'amplificateur n'est jamais en fonctionnement, même pendant les lectures. L'option ?nbcleaning? n'a aucune influence. Dans ce mode, l'image obtenue n'est pas influencée par la lumière reçue sur le CCD et n'a pas d'intérêt autre qu'une mise au point de l'électronique
Calcule la durée d'une instruction out envoyée sur le port parallèle. Le paramètre billion_out représente le nombre milliards de fois que va être exécuté cette instruction pour que le résultat soit correct. Comme la durée totale du calcul ne peut être connue qu'a une seconde près, une durée totale de plusieurs secondes est nécessaire pour avoir une valeur correcte. Cela correspond généralement à environ 15 pour le paramètre billion_out.
Retourne la valeur décimal de l'adresse du port parallèle. Value permet de changer l'adresse du port (inutile normalement).
Rinçage de tous les pixels du CCD et extinction éventuelle de l'amplificateur. Cette fonction peut être utilisée pour commencer une pose sans connaître d'avance sa durée.
Lecture immédiate, sans rinçage, des pixels du CCD avec le binning fixé par cam1 bin. On peut ainsi lire une pose commencée par la fonction cam1 wipe. Le temps de pose sera calculé à partir de la dernière fonction cam1 wipe employée.
Equivalent à la fonction cam1 acq, à cela près que c'est la fonction cmdCamAcqNormal du fichier tp.c qui est appelée. Cette fonction peut être utilisée en enseignement de travaux pratiques sur la caméra CCD Audine pour comprendre le chronogramme d'acquisition par les étudiants.
En temps normal, cette fonction ne fait rien. Elle appelle la fonction cmdCamAcqSpecial du fichier tp.c. Cette fonction est destinée à être programmée par des étudiants dans le cadre d'enseignement de travaux pratiques sur la caméra CCD Audine afin de modifier le chronogramme d'acquisition.
Choix du type de convertisseur analogique digital. Par défaut les caméras Audine sont équipées d'un AD976A qui nécessite une durée d'environ 10 microsecondes de signal de début de conversion. Le LTC1605 équipe quelques Audines custom et nécessite seulement un durée d'environ 2 microsecondes pour le signal de début de conversion.
Cette commande spécifique aux Hi-SIS 24/33/44 permet d'activer ou non la sonnerie. L'argument peut alors valoir "on", ou "off". Sans argument, la commande "cam1 bell" renvoie le mode de fonctionnement de la sonnerie.
Délais de synchronisation avec le microcontrôleur des Hi-SIS 22. na, nb et nc sont des nombres d'instructions de type "out" qu'il faut attendre aux cours du dialogue avec le microcontrôleur. Par défaut, les délais sont {5 1 7}. Sans paramètre, la fonction renvoie les valeurs actuelles.
Réglages de puissance des modules Peltier (Hi-SIS 24/33/44). L'argument est une liste de deux paramètres. Le premier est on ou off. Le second est un nombre compris entre 0 et 127. Sans paramètre, la fonction renvoie les valeurs actuelles.
Positionnement d'un filtre (Hi-SIS 24/33/44). nf est un numéro de filtre (compris entre 1 et 6 inclus). Sans paramètre, la fonction renvoie la valeur actuelle. Sans paramètre, la fonction renvoie la valeur actuelle si la roue à filtre est activée. Sinon elle renvoie le message "disable".
Délais d'attente entre l'ordre de fermeture de l'obturateur et le début de lecture (Hi-SIS 24/33/44). Si un nombre est passé en paramètre, il s'agit du nombre de millisecondes qu'il doit s'écouler entre l'émission de la fermeture de l'obturateur, et le début de la numérisation de l'image CCD. Si aucun paramètre n'est fourni, la commande renvoie la valeur actuelle.
Initialisation du microcontrôleur (Hi-SIS 24/33/44).
Lecture et écriture d'ordres dans le registre du microcontrôleur (Hi-SIS 24/33/44).
Retourne l'état actuel du microcontrôleur (Hi-SIS 24/33/44). Les valeurs retournées sont l'une da liste suivante : idle, pause, clean ccd, exposure, digitize, cmd1, cmd2, cmd3, Bad status value.
Réglage du gain de l'amplificateur de la chaîne analogique (Hi-SIS 24/33/44). g est la valeur du gain. Sans paramètre, la fonction renvoie la valeur actuelle.
Cette commande permet de piloter le système de refroidissement. Si le paramètre optionnel vaut off alors la régulation est arrêtée. Si c'est une valeur numérique, alors c'est la consigne en température. S'il n'y a pas de paramètre optionnel, elle retourne une liste composée des éléments suivants :
Il est recommandé par SBIG de couper la régulation et d'attendre quelques minutes avant d'éteindre l'alimentation de la caméra.
Cette commande active les relais de la ST7. Le paramètre est une liste de 4 entiers qui représentent la durée de l'impulsion appliquée dans chaque direction : x+, x-, y+, y-. La durée est exprimée en centièmes de seconde (cs).
Exemple : cam1 relay [list 100 0 0 0]
active le relais x+ pendant 1 seconde.
Le paramètre déviation est une liste à deux entiers (entre 0 et 4095) qui indique la déviation du tiptilt. La valeur 2048 correspond au centrage du miroir.
Acquisition d'une image noir & blanc.
Acquisition d'une image couleur dans un seul buffer. Les colonnes sont successivement BGR.
Modification des paramètres d'acquisition.
Modification du format d'image.