Ephemeris: librairie de calculs astronomiques.

MalaMala Membre, Modérateur

Pour ceux qui s'intéressent à  l'astronomie, je viens de mettre à  dispo sur mon github une librairie C++ nommée Ephemeris...


https://github.com/MarScaper/ephemeris


 


En l'état, elle permet le calcul des coordonnées équatoriales (R.A/Dec) et horizontales (Alt/Az) du soleil, des planètes et de la Lune ainsi que le calcul de leur distance et de leur diamètre apparent. Les algorithmes sont basés sur l'ouvrage "Calculs astronomiques à  l'usage des amateurs" de Jean Meeus.


 


Le code est destiné avant tout à  un projet perso de refonte de l'électronique de ma monture de télescope sur la base d'un micro contrôleur Arduino Mega mais reste parfaitement multiplateforme sous macOS.


proto-em-10-dev-box-2.jpg


 


raquette-em10-usd-arduino-takeoff-2.jpg


 


En espérant que cela puisse servir à  d'autres pour leurs projets.


:p   :p   :p   :p   :p


 


PS: Comme on a pas de sous forum communs entre macOS et iOS, je mets ce sujet dans les projets  macOS mais la librairie peut tout aussi bien être utilisée sous iOS.


«13

Réponses

  • muqaddarmuqaddar Administrateur

    PS: Comme on a pas de sous forum communs entre macOS et iOS, je mets ce sujet dans les projets  macOS mais la librairie peut tout aussi bien être utilisée sous iOS.

     



     



     


    Alors il faut le mettre dans le premier forum "Objective-C & Swift" de la section "Les langages et les outils"



  • Alors il faut le mettre dans le premier forum "Objective-C & Swift" de la section "Les langages et les outils"




     


     


    Sauf que le code est en C++

  • Joli travail !


     


    Je suis moi même en train de créer une librairie similaire en Swift qui est basée sur la théorie VSOP2013 (mise à  jour de la version 82) et en prenant compte les nouveaux algorithmes de la précession et nutation (convention 2000 / 2006 de l'Union Internationale d'Astronomie). ;)


  •   Pas mal, perso j'utilise Swift AA, disponible aussi sur GitHub. Les positions ont l'air précises. Je m'en sert pour localiser le soleil dans une application en cours de développement. Mais c'est avec plaisir que je jetterai un coup d'oe“il à  ta librairie.


  • MalaMala Membre, Modérateur

    Merci les gars! :)


     




    Sauf que le code est en C++




    C'est ce que je me suis dit aussi. Après si Alex pense que c'est plus pertinent moi ça me va aussi.


     




    Je suis moi même en train de créer une librairie similaire en Swift qui est basée sur la théorie VSOP2013 (mise à  jour de la version 82) et en prenant compte les nouveaux algorithmes de la précession et nutation (convention 2000 / 2006 de l'Union Internationale d'Astronomie). ;)




    C'est pour quel usage dans ton cas Jérémy?


     




      Pas mal, perso j'utilise Swift AA, disponible aussi sur GitHub. Les positions ont l'air précises. Je m'en sert pour localiser le soleil dans une application en cours de développement. Mais c'est avec plaisir que je jetterai un coup d'oe“il à  ta librairie.




    J'avais zieuté AA+ mais impossible à  exploiter sur un Arduino car beaucoup trop lourd. Dans mon cas tout doit tourner en flottant simple précision avec un minimum de mémoire (seulement 8Ko de se RAM et 256Ko de mémoire flash). AA+ est aussi très très mal optimisée avec des redondances de calculs à  foison quand on regarde le code de plus prêt. C'est pas gênant sur des PC ou iBidules mais sur un ATMega2560 à  16 MHz c'est une autre paire de manche. Lol


     


    J'ai mis le log d'un jeu de test pour estimer la perte de précision de ma version par rapport à  des algo plus affinés...


    https://github.com/MarScaper/ephemeris/blob/master/ephemeris.logs


    En l'état cela me semble pas mal du tout pour mes besoins de pointage automatique avec le télescope.


     


    Il faut que je vois aussi pour ajouter les calculs de lever/coucher des astres mais là  dessus l'ouvrage de Jean Meeus est très très superficiel.




  • .... Je m'en sert pour localiser le soleil ....




     


    Pourquoi, tu l'as perdu ?   ;D  :o


     


    Blague à  part, merci pour le partage !

  • MalaMala Membre, Modérateur
    février 2017 modifié #8

    Je viens de publier un premier jet pour le calcul du lever et coucher des astres. De quoi piloter l'arrosage en automatique après le coucher du soleil. Lol


     


    Il me reste à  affiner le cas de la Lune en prenant en compte son mouvement apparent pendant la journée car elle bouge vite et ses coordonnées équatoriales avec.


  • Personnellement j'essaye de faire de la réalité augmenté et de situé un astre par dessus la caméra du téléphone. J'ai un angle pour l'azimut et un angle d'élévation par rapport à  la position GPS du device. J'arrive à  avoir les coordonnées x (horizontales) mais je galère pour avoir le y en fonction de l'inclinaison du device.


     


    Si vous avez des pistes...



  • C'est pour quel usage dans ton cas Jérémy?


     


    C'est pour une application iOS qui aide à  la mise en station d'un télescope (calcul de l'angle horaire de la polaire...) et qui donne la position d'objets céleste (système solaire, messiers...).

     


     




    Il me reste à  affiner le cas de la Lune en prenant en compte son mouvement apparent pendant la journée car elle bouge vite et ses coordonnées équatoriales avec.




     


    Tu utilises quelle méthodologie ? ELP2000 ?

  • MalaMala Membre, Modérateur

    C'est rigolo. Je pense aussi m'y coller pour le fun avec un abaque numérique pour mon viseur polaire. Plutôt qu'un iPhone, je pense le faire avec un second arduino + ecran TFT + liaison bluetooth appairée en automatique. J'ai déjà  un proto opérationnel que j'utilise comme console de débogage...


    bluetooth-console-arduino-systeme-solair


     




    C'est pour une application iOS qui aide à  la mise en station d'un télescope (calcul de l'angle horaire de la polaire...) et qui donne la position d'objets céleste (système solaire, messiers...).




    Oui ELP2000 avec mise à  jour Chapron-Touzé et Francou de 2002 dixit la légende des tableaux de termes périodiques dans l'ouvrage de Meeus.


  • MalaMala Membre, Modérateur
    février 2017 modifié #12


    Personnellement j'essaye de faire de la réalité augmenté et de situé un astre par dessus la caméra du téléphone. J'ai un angle pour l'azimut et un angle d'élévation par rapport à  la position GPS du device. J'arrive à  avoir les coordonnées x (horizontales) mais je galère pour avoir le y en fonction de l'inclinaison du device.


     


    Si vous avez des pistes...




    Je ne comprends pas ton problème. Les coordonnées horizontales sont sensées contenir ton x et ton y (Azimut et Altitude). L'azimut est exprimé généralement en degré avec origine 0° au Nord (c'est le cas de AA+ il me semble). Et l'altitude est un angle en degré avec origine 0° à  l'horizon.


     


    Dans mon cas sur une monture équatoriale, l'Alt/Az est surtout utile pour savoir si un objet est visible au dessus l'horizon en vérifiant simplement si l'altitude est positif ou négatif.


  • Wow ! Joli !


     



    Oui ELP2000 avec mise à  jour Chapron-Touzé et Francou de 2002 dixit la légende des tableaux de termes périodiques dans l'ouvrage de Meeus.



     


    Tu sais si avec cette méthodologie il y a un moyen de calculer les coordonnées de la lune en J2000 (au lieu d'obtenir un JNow) ?




  • Je ne comprends pas ton problème. Les coordonnées horizontales sont sensées contenir ton x et ton y (Azimut et Altitude). L'azimut est exprimé généralement en degré avec origine 0° au Nord (c'est le cas de AA+ il me semble). Et l'altitude est un angle en degré avec origine 0° à  l'horizon.


     


    Dans mon cas sur une monture équatoriale, l'Alt/Az est surtout utile pour savoir si un objet est visible au dessus l'horizon en vérifiant simplement si l'altitude est positif ou négatif.




    mon soucis c'est de faire de la réalité virtuelle avec les données calculées. Il faut que j'arrive à  afficher mon point par rapport à  l'inclinaison du téléphone sur un axe x,y,z

  • MalaMala Membre, Modérateur


    mon soucis c'est de faire de la réalité virtuelle avec les données calculées. Il faut que j'arrive à  afficher mon point par rapport à  l'inclinaison du téléphone sur un axe x,y,z




    Je suis surpris qu'il n'y ai pas de tuto sur le sujet ne serait-ce que pour caler la ligne d'horizon.

  • MalaMala Membre, Modérateur


    Tu sais si avec cette méthodologie il y a un moyen de calculer les coordonnées de la lune en J2000 (au lieu d'obtenir un JNow) ?




    Non je ne saurais répondre.


     


    De mon côté ça y est: l'abaque numérique est opérationnel sur le Arduino. Cela semble parfaitement en phase avec le logiciel Polaris Finder proposé par Optique Unterlinden...


    polaris-arduino-em10.jpg

  • CéroceCéroce Membre, Modérateur
    Beaucoup hors-sujet, mais où as-tu acheté l'écran pour l'Arduino ?
  • MalaMala Membre, Modérateur


    Beaucoup hors-sujet, mais où as-tu acheté l'écran pour l'Arduino ?




    Kuman K60 à  14€ sur amazon...


    https://www.amazon.fr/gp/product/B01J34JO0K/ref=oh_aui_detailpage_o05_s00?ie=UTF8&th=1


  • De mon côté ça y est: l'abaque numérique est opérationnel sur le Arduino. Cela semble parfaitement en phase avec le logiciel Polaris Finder proposé par Optique Unterlinden...



     


    Joli travail !


     


    Tu as quoi comme monture ? Elle travaille sur l'équinoxe courant ou J2000 ?


  • MalaMala Membre, Modérateur

    Là  c'est pour mon EM10 Takahashi...


    em-10.jpg em10-2.jpg


    Les cercles du viseur polaire intègrent la dérive liée à  la précession des équinoxes jusqu'en 2010 ou 2015 de mémoire. Cela reste assez facile d'aller au delà  vu que j'intègre la dérive de l'étoile polaire au niveau de l'abaque numérique jusqu'en 2030.


  • Tu n'as pas de requête de commande avec un GoTo ? Genre tu veux pointer M51, tu saisies M51 dans ta raquette et la monture se dirige dessus ?


  • MalaMala Membre, Modérateur

    Non. Il y a 20 ans ce n'était pas aussi courant sur les montures d'astro. C'est pour ça que je m'y colle à  refaire l'électronique car pour le reste mécaniquement c'est une très bonne monture. Ceci dit c'est plus pour le fun qu'autre chose le Goto car j'ai appris le pointage à  l'ancienne avec carte et chercheur sur un bon vieux 114/900 Ganymède.


     


    M51, tu pointes l'extrémité de la queue de la grande ourse et tu descends en quasi ligne droite en déclinaison vers les chiens de chasse. C'est bien ça?  ;)


    M51.jpg 89.8K
  • Voilà  c'est ça !


     


    Quand mon app sera sur pied, tu voudras participer à  la campagne de bêta test (via test flight) ?


  • MalaMala Membre, Modérateur


    Voilà  c'est ça !


     


    Quand mon app sera sur pied, tu voudras participer à  la campagne de bêta test (via test flight) ?




    Ca marche. Avec Plaisir. :)

  • Merci !


     


    Je t'enverrai un MP, mais ne t'inquiète pas si tu n'as pas de news de moi pendant quelques temps à  ce sujet, je ne pense pas que ce sera terminé avant cet été. ::)


  • Mala, t'arrives à  voir l'étoile de Tabby avec ton système ?

  • MalaMala Membre, Modérateur


    Mala, t'arrives à  voir l'étoile de Tabby avec ton système ?




    Magnitude de 11,7 et visible dans la constellation du cygne (donc sous notre latitude). Pas testé mais techniquement tout a fait faisable en visuel pour un télescope de 200mm de diamètre.



  • Magnitude de 11,7 et visible dans la constellation du cygne (donc sous notre latitude). Pas testé mais techniquement tout a fait faisable en visuel pour un télescope de 200mm de diamètre.




    Magnitude de 11,7 à  géométrie variable. Les variations de luminosité laissant à  penser que peut-être (ou pas) ET a construit des HLM spatiaux, sont-ils visibles sur un télescope comme le tien ?

  • MalaMala Membre, Modérateur


    Magnitude de 11,7 à  géométrie variable. Les variations de luminosité laissant à  penser que peut-être (ou pas) ET a construit des HLM spatiaux, sont-ils visibles sur un télescope comme le tien ?




    Si les professionnels ne peuvent le dire, je doute qu'un télescope amateur le puisse. ;)

  • MalaMala Membre, Modérateur


    Tu sais si avec cette méthodologie il y a un moyen de calculer les coordonnées de la lune en J2000 (au lieu d'obtenir un JNow) ?




    J'ai peut être un début de réponse en reparcourant l'ouvrage de Jean Meeus avec entre autre le chapitre 14: "Position apparente d'une étoile".


     


    Pour faire court, il faut prendre en compte:


    - effet de précession des équinoxes.


    - effet de nutation


    - effet de l'aberration.


    On en déduit le delta en AD et Dec à  ajouter pour passer des coordonnées d'un équinoxe (Ex: J2000) à  la position apparente (JNow si j'ai bien compris). Donc par réciprocité on doit pouvoir faire l'inverse. Mais cela dit cela me semble ne pas avoir grand sens pour les objets planétaires. Par définition leur position n'est valide qu'en JNow puisqu'ils bougent rapidement ou je dis une bêtise?



  • Si les professionnels ne peuvent le dire, je doute qu'un télescope amateur le puisse. ;)




    Je me doute bien qu'il est relativement difficile de prendre une photo précise d'un objet situé à  1.500 années-lumières, même si c'est un disque-monde de 300 millions de km de long, ou quelque chose d'équivalent. Les professionnels analysent les variations de luminosité des étoiles pour chercher des schémas récurrents trahissant la présence de planétes. La luminosité de étoile de Tabby varie d'une manière fort étrange, laissant à  penser que peut-être des objets manufacturés d'une taille gigantesque trainent dans le coin. C'est certainement une fausse alerte, un phénomène naturel doit provoquer cet effet, sans faire appel à  ET. De la même manière que les premiers pulsars ont fait penser à  des signaux aliens, alors que c'est parfaitement naturel. 


     


    La question que je me pose vraiment, c'est de savoir si les variations de luminosité d'une étoile peuvent être étudiés à  travers un télescope amateur. Est-ce qu'un particulier sera un jour capable de dire "je viens de détecter une planète" grâce à  un télescope modeste et un logiciel tournant sur un ordinateur personnel ? Ou faut-il du très gros matériel professionnel et une puissance informatique hors du commun ? Il est certain qu'aucun télescope terrestre ne sera jamais en mesure d'égaler les performances du télescope spatial James-Webb qui devrait être lancé en 2018, avec la capacité de détecter des planètes de masse équivalente à  la terre.

Connectez-vous ou Inscrivez-vous pour répondre.