Cahier des Charges
Ici sont listés 2 groupes de fonctionalités divisés en tête de fibre et instrument.
Toutes les fonctionalités décrites ici sont des commandes de l'Inter-Coralie notées ici comme:
<Commande> /<qualificateur[=param]
Voir manuel de reference
D'une manière générale ces commandes permettent
- l'assignation d'un électromécanisme
- lecture du status (position, état, ...)
Les consignes ou status sont donnés en logique positive (en marche == 1, detection == 1)
La mise en application de ce cahier des charges consiste à fournir un exécutable Python pour chacune des fonctionalités demandées, c'est à dire 19 pour la tête de fibres, 10 pour l'instrument.
Concernant les informations listées sous Commande:
- Le controle de vitesse donné par un bit de controle peut etre ignoré sachant que l'asservissement est fait coté Beckhof.
- Certains paramètres (ex: bit de control demarrage moteur sens direct) decrivent les possibilités de controle des moteur via les cartes du rack Coralie actuel. Puisque l'asservissement en position sera fait sur le Beckhoff, il est entendu que, par exemple, le sens de rotation ne sera pas une information fournie par le serveur, mais uniquement la commande 1|0 signifiant "demarrage vers la position demandée".
Tête de fibres
Attenuateur de calibration (ATTCALIB)
C'est un coin optique circulaire, monté sur un axe moteur-reducteur. Mesure de position analogique sur potentiometre allimenté en 0..10[v]. Ce potentiomètre n'a pas de butées, mais une zone morte où la lecture n'est pas possible.
Fonctionalités:
- 1) Aller a une position (ATTCALIB /POSITION=<consigne>, Range Consigne = 0..4095)
- 2) Lire la position (ATTCALIB /STATUS [/ECHO]))
Commande:
consigne (0..4095)
1 bit de control demarrage moteur sens direct (augmentation de la valeur de position)
1 bit de control demarrage moteur sens inverse (diminution de la valeur de position)
Status:
position, valeur analogique, convertie en 12 bits (0..4095)
bit zone morte (du potentiomètre), si ce bit==1, le potentiomètre est dans sa zone non définie
Doigt de masquage (MASK)
C'est un cache (en forme de doigt) monté sur un moteur réducteur qui parcourt un secteur angulaire, il à deux butées physiques. Le moteur-reducteur est protégé par un embrayage. Sa position est lue sur un codeur digital (code gray, 8 bits). Pas de détecteurs de fin de course.
Fonctionalités:
- 3) Aller a une position (MASK /POSITION=<consigne>, Range Consigne = 0..255)
- 4) Lire la position (MASK /STATUS [/ECHO]))
Commande:
consigne (0..255)
1 bit de control demarrage moteur sens direct (augmentation de la valeur de position)
1 bit de control demarrage moteur sens inverse (diminution de la valeur de position)
Status:
position, valeur digitale, code gray, 8 bits (0..255)
Position du Correcteur de refraction (DCOR /POS)
C'est roue une montée sur un moteur réducteur, sans butées physiques. Sa position est lue sur un codeur digital (code gray, 8 bits)
Fonctionalités:
- 5) Aller à une position (DCOR /POSITION=<consigne>, Range Consigne = 0..255)
- 6) Lire la position (DCOR /STATUS [/ECHO]))
Commande:
consigne (0..255)
1 bit de control demarrage moteur sens direct (augmentation de la valeur de position)
1 bit de control demarrage moteur sens inverse (diminution de la valeur de position)
1 bit contrôle de vitesse (1=rapide, 0=lent)
Status:
position, valeur digitale, code gray, 8 bits (0..255)
Angle du Correcteur de réfraction (DCOR /ANG)
C'est une roue dentée qui monté sur un moteur reducteur qui fait tourner l'ensemble des correcteur de diffraction (system planétaire), sans butées physiques. Sa position est lue sur un codeur digital (code gray, 8 bits)
Fonctionalités:
- 7) Aller à une position (DCOR /ANG=<consigne>, Range Consigne = 0..255)
- 8) Lire la position (DCOR /ANG /STATUS [/ECHO]))
Commande:
consigne (0..255)
1 bit de control demarrage moteur sens direct (augmentation de la valeur de position)
1 bit de control demarrage moteur sens inverse (diminution de la valeur de position)
1 bit contrôle de vitesse (1=rapide, 0=lent)
Status:
position, valeur digitale, code gray, 8 bits (0..255)
Miroir de calibration (MCALIB)
C'est un miroir monté sur une glissière qui est deplacé par un moteur reducteur, il a deux butées physiques avec detecteur de fin de course et un detecteur de position intermediaire (DP=Détecteur de Proximité). Le moteur-reducteur est protégé par un embrayage.
Fonctionalités:
- 9) Aller à la position "IN" (MCALIB /IN) (fin de course sur (DP IN))
- 10) Aller à la position "SIMULTANEE" (MCALIB /SIMULT) (DP SIMULT)
- 11) Aller à la position "OUT" (MCALIB /OUT) (fin de course sur (DP OUT))
- 12) Lire la position (MCALIB /STATUS [/ECHO]))
Commande:
1 bit de control démarrage vers DP IN
1 bit de control demarrage vers DP SIMULT
1 bit de control demarrage vers DP OUT
Status:
1 bit DP IN
1 bit DP SIMULT
1 bit DP OUT
Atténuateur de guidage (ATTGUI)
C'est un ensemble de deux coins optique se recouvrant sur le faisceau de l'image du champ de la caméra de guidage. Chaque coin optique est monté sur un moteur reducteur, chacun à deux détecteurs de position (DP mini et DP maxi) signalant l'atténuation mini et maxi. Il n'y a pas de butées.
Fonctionalités:
- 13) aller en atténuation mini (arrêt à DP1 mini, DP2 mini) (ATTGUI /MINI)
- 14) aller en position intermediaire (arrêt à DP1 maxi, DP2 mini) ou (arrêt à DP1 mini, DP2 maxi) (ATTGUI /HALF)
- 15) aller en atténuation maxi (arrêt à DP1 maxi, DP2 maxi) (ATTGUI /MAXI)
- 16) Lire le status (ATTGUI /STATUS [/ECHO]))
Commande (sera sujet à modification puisque le systeme de contrôle sera different avec le Beckhof):
1 bit de control démarrage vers atténuation maximum
1 bit de control démarrage vers atténuation minimum
Status:
1 bit DP1 mini
1 bit DP1 maxi
1 bit DP2 mini
1 bit DP2 maxi
Volet d'entré ou Iris d'entré (ENTRYSH)
C'est un obturateur type iris commandé par un electro-aimant, il a deux butées physiques avec detecteur de fin de course (DP=Détecteur de Proximité).
Fonctionalités:
- 17) Ouverture (ENTRYSH /OPEN) (fin de course sur DP open)
- 18) Fermeture (ENTRYSH /CLOSE) (fin de course sur DP closed)
- 19) Lire le status (ENTRYSH /STATUS [/ECHO]))
Commande:
1 bit de control OPEN
1 bit de control CLOSE
Status:
1 bit DP OPEN
1 bit DP CLOSED
INSTRUMENT
Lampes de calibration (LAMP)
C'est la commande des lampes par l'intermediaire de l'alimentation des lampes de calibration. l'aalumage d'un lampe provoque l'extinction de l'autre.
Fonctionalités:
- 1) Allumage de la lampe Thorium (LAMP /THORIUM)
- 2) Allumage de la lampe Tungstène (LAMP /TUNGSTENE)
- 3) Extinction (LAMP /OFF)
- 4) Lire le status (LAMP /STATUS [/ECHO]))
Commande:
1 bit contrôle lampe thorium
1 bit de contrôle lampe tungstène
Status:
1 bit status lampe thorium
1 bit status lampe tungstene
Led (LED)
C'est la commande de la led d'illumination du chip.
Fonctionalités:
- 5) Allumage (LED /ON)
- 6) Extinction (LED /OFF)
- 7) Lire le status (LED /STATUS [/ECHO]))
Commande:
1 bit contrôle
Status:
1 bit de status
Focuseur (FOCUS)
C'est un miroir de focus monté sur une glissière qui est deplacé par un moteur reducteur, il a deux butées physiques avec detecteur de fin de course (DP=Détecteur de Proximité). Le moteur-reducteur est protégé par un embrayage. Mesure de position analogique sur potentiometre allimenté en 0..10[v]
Remarque:
- Il est possible que le moteur soit déconnecté dans le but d'éviter des changements de position involontaires.
- Il est certainement intéressant de mesurer la valeur du potentiomètre une fois mis sous tension avant un quelconque mouvement, dans le but de déclarer cette valeur comme valeur de réference.
Fonctionalités:
- 8) Aller a une position (FOCUS /POSITION=<consigne>, Range Consigne = 0..4095)
- 9) Lire le status (FOCUS /STATUS [/ECHO]))
Commande:
consigne (0..4095)
1 bit de control demarrage moteur sens direct (augmentation de la valeur de position)
1 bit de control demarrage moteur sens inverse (diminution de la valeur de position)
Status:
position, valeur analogique, convertie en 12 bits (0..4095)
DP position maxi
DP position mini
Shutter (SHUTTER)
Le shutter de Coralie est commandé par un laision serie. On a toutefois un détecteur de proximité qui donne son status (TBC)
Fonctionalités:
- 10) Lire le status (SHUTTER /STATUS [/ECHO]))
Status:
1 bit status