Les encodeurs absolus

La petite histoire…

En 2003, Ce que voit la webcamavant même que le projet de construction de l’observatoire soit précisé, nous avions pour idée d’équiper le futur télescope d’un système de positionnement précis et peu coûteux. Michel, en discutant avec Sébastien, évoquait la lecture de graduation déportée grâce à un système de webcam… afin de ménager le dos des utilisateurs. En reprenant cette idée, Sébastien a extrapolé ce principe en lisant à la webcam des graduations binaires interprété par l’ordinateur.  Sur cette page est présentée le grande ligne de cette réalisation.

Réalisation d’un encodeur absolu à l’aide d’une webcam

  • Etat des lieux

Les systèmes Go-To sont aujourd’hui d’utilisation courante. Notre télescope étant piloté par un système PIC-Astro, le pilotage et le via un logiciel de cartographie utilisant le protocole LX200 possède un tel système.

Toutefois, comme bon nombre de système Go-To, le PIC-Astro utilise un positionnement relatif. Ainsi, il faut pointer un point de référence, typiquement une étoile, afin que le télescope se déplace par la suite sur l’objet rechercher. En conséquence, la manipulation manuelle n’est pas possible le risque étant de perdre la référence.

enco_reIl est usuel dans le monde amateur d’utiliser des encodeurs incrémentaux et donc relatif, soit du commerce, soit en détournant l’utilisation première d’un système (système à base de souris, de capteur optique) soit encore en comptant le nombre de pas d’un moteur (cas du PIC-Astro).

Les raisons principales de ce choix sont une question de coût et de simplicité de mise en œuvre.

enco_abAinsi, les encodeurs absolus restent peu utiliser notamment en raison qu’une précision raisonnable est associée à un certain coût. La réalisation d’un système permettant de coder l’information sous forme d’un code Gray et de le lire est plus complexe.

  • Notre solution

webcamNous présentons ici la réalisation d’un encodeur absolu à l’aide d’une webcam mise en œuvre sur notre télescope.

En terme d’achat, cela correspond à l’acquisition de deux webcams, une part axe, et à l’impression d’un code Gray à l’aide d’une imprimante.printer

L’impression d’un code Gray à l’aide d’une imprimante et le montage de celui-ci sur un support comporte évidemment de large impression qu’il faut corriger par un étalonnage des graduations. Dans le cas contraire, la précision du système est largement en dessous de ce que l’on attend d’un tel système de positionnement.

proto
Le prototype utilisé lors des tests

Une résolution de 640×480 est une valeur courante pour les webcams. La plage de réglage de la netteté de l’image de la webcam permet d’observer clairement un objet de l’ordre de 9 mm de largeur. La résolution spatiale de la webcam dans ce cas est de 14 μm.

Compte tenu des dimensions de notre télescope, l’utilisation de 4 bandes de feuille A4 (297mm de longueur) est retenue pour la réalisation du disque supportant le code Gray.

Nous utiliserons la valeur de 360mm afin de tenir compte des marges d’impression. Ainsi le périmètre du disque sera de 1131 mm.

La résolution angulaire théorique de l’encodeur absolu sera donc de 16 bits

bandeNous avons réalisé un programme générant un code Gray 14 bits imprimable.

Le choix d’un code 14 bits est en raison de la limitation en résolution de l’impression.
Toutefois, la lecture pouvant se faire à une précision au-delà des 14 bits, le bit de poids faible correspondant à environ 5 pixels sur l’image de la webcam, la résolution effective de lecture n’est pas limitée par ce choix du code Gray.

  • Difficultés et solutions

Le programme de lecture des webcams doit traiter les images en temps réel. La méthode d’interprétation de l’image doit être :

  • Adaptée à l’orientation de l’image
  • Peu sensible à la poussière
  • Peu sensible au défaut d’éclairage de la bande
  • Non perturbée au niveau de la jonction des bandes
  • Corrigée la distorsion de l’image par l’optique de la webcam et  la courbure de la bande sur son support
  •  Telle que la bande soit étalonnée afin de compenser les irrégularités d’impression et de montage de la bande

vu_webcamAinsi, le programme que nous avons réalisé détermine en temps réel l’orientation de la bande et est robuste grâce à l’utilisation de méthodes numériques telles que les transformés de Fourrier et l’ajustement de modèle théorique par méthode des moindres carrés

On s’affranchit des erreurs de lecture, lors du passage d’une jonction de bande devant la webcam, où lors  de la présence de poussière sur la bande, par la lecture de plusieurs graduations, en l’occurrence 4 zones de lectures, sur une même image.

La distorsion de l’image par l’optique de la webcam et la courbure de la bande sur son support sont modélisées par l’observation d’une grille de calibration.

GrillesAfin de réaliser l’étalonnage nous devons utiliser une  longueur référence. Le principe de lecture du code par la webcam nous donne une telle référence.

Nous réalisons deux lectures sur le même champ de vue. La distance entre les  deux lignes de lecture est fixée à 288 pixels. Ainsi, quelle que soit la position du disque de lecture cette distance est de 288 pixels.

La référence fixe choisie est le nombre de pixels nécessaires afin de réaliser un tour complet du disque d’encodage.

Images individuelles de 480 pixels de largeur
Images individuelles de 480 pixels de largeur

Principe d’« assemblage »  afin de comptabiliser le nombre de pixel pour couvrir un tour complet.

3vues_fusionA chaque valeur du code Gray est associée une graduation angulaire basé sur la graduation de la bande en pixel, qui est une graduation suffisamment régulière.

  • L’ennemi numéro 1 : La dilatation

On ne peut s’affranchir totalement des effets de dilatation… mais on peut essayer de minimiser leurs influences.

dilaPour minimiser les effets de dilatation, les bandes imprimées sur du calque polyester sont montées tendues sur des disques en aluminium.

  • La réalisation

Le support en aluminium, comme le reste du télescope, a été réalisé au sein de l’association. Le support de la webcam a été modifié afin de l’intégrer plus facilement sur la monture. Deux leds ont été rajoutées afin d’éclairer le code Gray pendant l’observation (qui a priori se passe la nuit…).

ensemble

  • Dans la pratique
Ce que voit la webcam
Ce que voit l'utilisateur
Ce que voit l’utilisateur
Ce que voit carte du ciel
Ce que voit carte du ciel

Dans la pratique on pointe à la main pour être proche de l’objet. On termine par un Go-To à l’aide du logiciel de cartographie. Cette méthode permet de gagner du temps de pointage sans avoir besoin d’un Go-to rapide, c’est à dire des moteurs puissants.

  • Coté matériel

comLe programme d’encodage tourne sur un PC linux. Le programme gère 2 webcams, une pour chaque axe, et supervise les communications suivant le protocole LX200 entre le circuit de commande des moteurs pas-à-pas (PIC-astro) et le logiciel de cartographie (carte du ciel).

    • Le Port COM1 est le port du  Logiciel de cartographie
    • Port COM2 & COM3: Logiciel encodeur lisant les deux webcams et communiquant avec le logiciel de cartographie et le PIC-astro (en LX200)
    • Port COM3: PIC-Astro

Le principe est de laisser faire le plus possible la communication entre PIC-astro et la cartographie. Le programme d’encodage corrige les coordonnées uniquement si l’écart entre les coordonnées de PIC-astro et celles données par les webcams est trop important (typiquement si l’écart est supérieur à 1 minute d’arc). Cet écart provient des défauts géométrique de la monture, de la mise en station des effets de réfraction atmosphérique, défauts mesurés et compensés par les modèles intégrés au programme d’encodage.

  • Bilan

De cette façon on peut profiter de la précision de l’encodage relatif de PIC-asto et manipuler à la main le télescope sans perdre le positionnement grâce à l’encodage absolu.

Le code d’environ 15000 lignes est réalisé en C++ et comporte 4 fonctionnalités principales:

    • Étalonnage des bandes de lecture avec correction des distorsions optiques et de l’effet de courbure du disque sur la lecture des bandes.
    • Interprétation des images des webcams / gestions des communications LX200 entre Pic-astro et le logiciel de cartographie.
    • Mesure et corrections des défauts géométriques de la monture
    • Visualisation de la lecture du code Gray pour le débuggage et pour l’intérêt pédagogique.
  • Documents de conception

Conception encodeur (partie 1 (pdf) / partie 2 (pdf))dossier_enco

dossier_encoModélisation des défauts d’une monture équatoriale (pdf)

dossier_encoCorrection sur des coordonnées apparentes (pdf )

 

  • Conclusion

Enco_monture

Obs_Severac_De_nuit

Ça marche,  c’est sympa…

A nous les petites étoiles !


Réalisation et mise en place

IMG_4811_web

IMG_4507_web

IMG_4763_web