COORDINATES


COORDINATES est le service qui calcule les transformations de coordonnées. Puisque sur les cartes du ciel nous avons les coordonnées équatoriales; en déclinaison et ascension droite. La longitude du lieu, une origine et l'heure UTC donnent le temps sidéral qui permet de retrouver les coordonnées pour une monture équatoriale.

Pour une monture azimutale, la lattitude du lieu rentre aussi en jeu. Et le résultat attendu est la hauteur au dessus de l'horizon et l'azimut dont le 0 est fixé dans la direction du nord et qui croit dans le sens trigonométrique (vue de dessus).

On peut aussi avoir besoin des calculs inverses: le télescope a été emmené par un opérateur dans une direction, donc les coordonnées azimutales sont connues et on veut connaître sa position équatoriale.

Le dernier cas d'usage est celui du besoin de planification des requetes.  Le programme de planification a besoin de vérifier si la requête est possible à l'heure demandée, c'est à dire pas trop bas sur l'horizon. A noter aussi que pour les tests de non regression, c'est plus pratique d'avoir une heure que l'on peut fixer arbitrairement, plutôt que d'avoir à subir le changement permanent de l'heure. La comparaison des resultats permet d'apporter la preuve.

 

Les calculs sont expliqués sur la page wikipedia des coordonnées célestes  sur cette page.

Ces calculs sont basés sur l'hypothèse que la Terre est une sphère et la shère céleste aussi. Le doute peut nous envahir sachant que la Terre est en fait un ellipsoide applati aux poles. La réponse qui m'a été donné est que le GPS donne les coordonnées du lieu comme si nous étions sur une sphère, c'est comme s'il y avait projection entre la sphère et l'ellipsoide. Il reste une erreur possible sur la direction de la verticale à cause d'inhomogénéïté de gravité. 

 

Les caractéristiques principales (features) de ce service sont:

  1. Enregistrer les coordonnées géophysique du lieu sur un fichier texte et le relire au prochain démarrage du service.
  2. Obtenir l'heure d'un GPS via un serveur NTP.
  3. Le service communique par TCP/IP pour recevoir les coordonnées initiales et rendre le résultat.

Description du langage de communication (Fonctionnalités de la "feature" 3).

Les informaticiens verront au premier coup d'oeil que l'idée de SET et GET provient des "accesseurs" des langages orientés objet.

Exemples de commandes et de cas d'erreurs:

Requête du client Réponse du serveur
SET; CMD KNOWN;
GET; CMD KNOWN;
PBA; UNKNOWN COMMAND;
SET;DATE=2017:12:25A19H32m15; CMD KNOWN;PRM DATE OK;
RESET; CMD KNOWN;
GET;CGL; CMD KNOWN;GEO.LOCAL;_Latt4902.496900,N;_Long109.567300,E;
SET;CGL=_Latt4902.4969,N_Long00109.5673,E; CMD KNOWN;PRM CGL OK;
SET;CEQ=5h31m50.0s -20°51'20"; CMD KNOWN;PRM CEQ OK;
GET;CAZ; CMD KNOWN;AZIMUTAL(°);H=-57.436885;Z=146.381219;
SET;TRACE=1; CMD KNOWN;
GET;VER; CMD KNOWN;NO PARAM;Service:Coordinates-V1.00-gerald.mauboussin@gmail.com;

A propos de l'usage des majuscules... Deux Ecoles : 

  • Ceux qui disent que les lettres sont plus grosses, donc on les voit mieux, 
  • et ceux qui disent qu'avec les minuscules, il y a plus d'espace entre les lignes. Donc on voit mieux les lettres. 

( Je ne suis ni pour, ni contre !  Bien au contraire !  ... c'est politique ! :-)

La commande SET;DATE impose la date pour les calculs mais ne change pas la date et l'heure du sous-système. Cette date est remise à l'heure UTC courante avec une commande RESET;

 

Performances

Le serveur TCP accepte au maximum 10 connexions par secondes.

 

Solution technique

Ce service peut tourner sur PC mais il a été développé en C sous Linux sur Raspberry PI B. 

 

Interface utilisateur

Du fait que les messages de commandes passent sur protocole TCP, beaucoup de possibilités s'ouvrent : 

  • TerraTerm, 
  • Logiciel spécifique sur PC
  • Tablettes tactiles sous Android ou sous Windows 8. 

Et puisque ces IHM sont communes à tous les services du télescope, cela fera l'objet d'une page à part.

 

Curiosités

Réaliser les calculs m' a amené à traiter deux cas particuliers assez drôles :

1)Dans le cas où le client donne les coordonnées équatoriales à atteindre, et le service calcule les coordonnées azimutale, on peut tomber sur le cas ou H la hauteur vaut 90°. Alors l'angle de rotation est quelconque. Tous les angles peuvent convenir. Imaginez votre télescope azimutal pointant au Zenith, vous pourriez le faire tourner sur l'axe vertical, vous seriez toujours sur la même étoile. Mathématiquement nous nous trouvons dans le cas d'une division par 0, indétermination totale. Le choix que j'ai dû faire dans le logiciel est donc : l'angle de rotation reprend la dernière valeur connue.

2)Dans le cas où le client donne les coordonnées d'une étoile dans l'axe polaire. Les coordonnées azimutales sont connus par les codeurs du télescope. Le service calcule les coordonnées équatoriales. Là encore nous tombons sur une division par 0. Indétermination. Imaginez votre télescope sur une monture équatoriale, vous pointez l'axe de rotation de la Terre, si vous feriez tourner l'axe horaire de la monture, votre télescope pointerait toujours la même étoile. Le choix que j'ai dû faire dans le logiciel est du même type : l'angle horaire reprend la dernière valeur connue.

Heureusement ces cas sont d'autant moins rencontrés que la résolution des coordonnées du télescope est élevée.

 

Attention à l'utilisation

  1. Ces calculs considèrent que les axes des instruments sont parfaitement perpendiculaires. Hors, en pratique, c'est très difficile à réaliser. Nous sommes toujours sous le joug d'une incertitude. Donc s'il y a des erreurs de positionnement, ne pas aller chercher l'erreur que dans les calculs. 
  2. Le temps de pointage du téléscope, peut prendre environ 30s, pendant ce temps la Terre tourne... et le télescope arrive en retard. Dans les cas le plus long, il faut donc demander une deuxième fois les transformations de coordonnées et ajuster le pointage. 

 

Evolutions - prochaine version

  1. Prendre en compte les erreurs d'angle entre axes.
  2. Fournir l'angle de rotation d'un dérotateur de champs. 

 

Dans la version 2 du logiciel, il faudra prendre en compte les erreurs suivantes:

  • Erreur sur le temps (temps de communication, temps de calcul, temps de pointage)
  • Erreurs sur la verticale pour un téléscope azimutal ou erreur sur l'alignement de l'axe de rotation de la Terre pour un téléscope équatorial.
  • Dans le cas du cube equatorial, on doit tenir compte de l'inclinaison de la plateforme, car dans sa position de départ, il est incliné de quelques degrés .
  • Erreur de perpendicularité entre l'axe Horizontal et vertical 
  • Erreur d'alignement de l'optique sur la mécanique. 

.../...

 

 

 

Contactez moi pour vos remarques ou les erreurs qui se seraient glissées dans cette page.

mailto:gerald.mauboussin@gmail.com

 

Retour au SOMMAIRE


Copyright 2015- 2016. Cet article ne peut être reproduit totalement ou partiellement sans le consentement de son auteur.

Page crée le 03.01.2016 - - - - -Dernière mise à jour 01.06.2016