projet station d'observation astronomique p2i : …astro-insa-lyon.fr/documents/c-r.pdf ·...

13
Projet station d'observation astronomique P2I : Ingénierie des Données Capteurs Compte-rendu technique final Groupe 221-A Goli Jorgan Hecht Julien Halimi Assil Martin Hugo Pellegrinato Lucas Kaddaf Doha

Upload: duonghanh

Post on 12-Sep-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Projet station d'observation astronomiqueP2I : Ingénierie des Données Capteurs

Compte-rendu technique final

Groupe 221-A

Goli JorganHecht JulienHalimi AssilMartin Hugo

Pellegrinato LucasKaddaf Doha

Introduction :

En astronomie, trois facteurs déterminent la qualité d'une observation : l'instrument, lecapteur d'images et les conditions d'observation. Si les plus grands télescopes professionnels àl'heure actuelle sont dotés de dispositifs permettant l'amélioration de ces trois facteurs. Il se trouvequ'en astronomie amateur et en astrophotographie, on a tendance à négliger les conditionsd'observation, soit parce qu'on croit que les données météo sont suffisantes ou tout simplementparce qu'aujourd'hui aucun dispositif complet permettant de faire de telles mesures n'est disponiblesur le marché.

Le projet d'une station d'observation astronomique comporte deux phases et il est lancé parle club d'astronomie de l'INSA de Lyon. La première consiste à concevoir un système asservi depilotage à distance d'un ou plusieurs télescopes installés sur des sites d'observation. La seconde, quifera sujet de ce compte rendu porte sur la récupération et la gestion de deux types de données : lesimages et les mesures relatives aux conditions d'observation.

1/ L'influence de des conditions environnantes sur l'observation :

Il se trouve que par leur climat, altitude et pollution lumineuse, certains lieux peuvent êtreplus ou moins propice à une activité d'observation. Le facteur le plus important est la pollutionlumineuse. En effet, observer des objets de faible luminosité dans le ciel (comme les objets du cielprofond) requiert une faible luminosité environnante (moins de 0,1lux). D'un autre coté, l'humiditéest un facteur essentiel car un fort taux d'humidité implique une atmosphère dense qui dévie lesrayons lumineux et agit comme une sorte de filtre. La pression atmosphérique joue aussi un rôleimportant puisqu'elle est reliée intrinsèquement au temps qu'il fait (ou qu'il va faire). Cela est d'unegrande importance en astrophotographie où les durées de prise dépassent facilement les trois heures.Le dernier facteur qu'on va pouvoir mesurer est la température qui à premier abord n'a pasd'influence directe sur la qualité de prise, sauf que la concordance entre température de l'instrumentet du milieu vaut la peine d’être évaluée car sans cette concordance la qualité des images va êtreaffectée.

2/L'influence de l'emplacement sur l'observation :

Il se trouve que les meilleurs télescopes à l'heure actuelle ne sont pas forcement ceux quipossèdent les meilleurs miroirs mais ceux qui sont les mieux placés. Pour cela il faut donc réunir lameilleure configuration des paramètres cités dans le paragraphe précédant ou simplement envoyerun télescope en orbite (cf. Hubble, Spitzer…) pour éliminer toute contrainte liée à l'atmosphère. Or,si on veut faire de l'observation sur terre, ce qui est le cas de quasiment tous les astronomesamateurs, il faut bien choisir ses lieux. Il se trouve qu'aujourd'hui, on dispose de cartes de pollutionlumineuse, et on sait que généralement, en altitude, on a déjà un bon compromis pour faire del'astrophotographie.

Problématique:

Actuellement, on dispose de bases de données participatives où on peut noter des sitesd'observation selon l'appréciation de l'astronome. Un exemple convaincant est le Grand REpertoiredes Sites Astronomiques Communautaires (GRESAC) qui compte actuellement plus de 600 sites àtravers l’Europe. Cependant, il n’existe aucune donnée quantitative relative au système de notation. Aujourd'hui, les astronomes amateurs et les astrophotographes ne disposent pas d'un systèmecomplet d'observation, on y trouve essentiellement les télescopes d'un côté, les appareilsphotographiques de l'autre, puis la motorisation. Mais on a rarement un système complet capable degérer tout cela et de le contrôler en amont.

La plupart des observations actuelles se font sur place, à part si vous avez conçu votrepropre système de pilotage à distance : on ne trouve presque pas de modèle complet dans lecommerce. Sans de tels systèmes vous allez devoir affronter des conditions extrêmes pendant desheures, à ajuster et surveiller le télescope, ce qui décourage d'ailleurs un bon nombre de gens qui selance dans l'astrophotographie.

Objectifs/ Buts :

_ Fournir un véritable outil d'évaluation des sites d'observation._ Améliorer la durée des soirées d'observation, pour les rendre plus longues et plus productives._ Mieux gérer les objectifs de l'observation en se basant sur les données : météo/pollutionlumineuse._ Permettre un suivit de la qualité des optiques des télescopes et leur vieillissement._ Offrir la possibilité de faire en amont un traitement des images en adéquation avec les donnéesmétéorologiques. _ Permettre de maîtriser à distance, le capteur numérique d'images : possibilité de changer de modeet faire des comparaisons à partir de l'ordinateur._ Contrôler plusieurs caméras simultanément. Idem pour les télescopes mais on va se réduire auxcaméras de part la nature du P2i._ Apporter du confort à l'observation en astronomie, surtout en astrophotographie._ Traitement d'images en amont à l'aide du logiciel IRIS.

Contraintes générales:

_ La mesure de la luminosité sur une échelle très réduite [0-5lux]. Sachant que la gamme effective s'étale seulement entre 0-0,5 lux. Dans le commerce, on a seulement pu trouver des photorésistances sur des gammes 1-100lux.

_ La précision des capteurs utilisés est généralement satisfaisant au vu des résultats attendus. Cependant, le capteur de température installé sur le télescope et celui de la luminosité risquent de donner des écarts importants.

_ Installation du système sur une monture motorisée.

_ Les images prises font une vingtaine de Mo, les transmettre en temps réel devient techniquement impossible pour des temps de pose inférieurs à vingt secondes. Moyennement, on fait des poses de trente secondes d'intervalle, ce n'est donc pas très contraignant.

Contraintes de réalisation :

_ On ne dispose pas d'assez de capteurs et de plaquettes Arduino pour tester la station avec plusieurstélescopes en même temps.

_ Dans le cas de la réalisation d'une interface de visualisation en temps réel, ce qui le cas pour notre prototype, l'accès à internet sur des sites en altitude ou dans des zones blanches n'est pas garanti.

_ Pour pouvoir analyser les résultats de tels dispositifs, on a besoin des données d'au moins trois ou quatre soirées d'observation. Le temps orageux qui plane sur la région lyonnaise depuis la fin de mai à rendu cette mission impossible.

A qui peut être utile ce type de station ?

Les astronomes professionnels disposent déjà de systèmes complets : capteurs, actionneurs,correcteurs. Ici, on cherche à donner un système équivalent en taille réduite (on est quand mêmebien loin des performances professionnelles) pour les astronomes amateurs avancés et lesastrophotographes ainsi que pour les clubs d'astronomie amateurs qui cherchent des moyensd'améliorer le rendu de leurs observations par l'optimisation des conditions d'observation.

Besoins techniques :

En matériel :

_ Un (ou plusieurs) télescope(s) : le système est compatible avec quasiment tous les types de télescopes. Dans notre cas, il s'agit d'un Newton 200/1000 EQ-5, motorisation double axes.

_ Un capteur d'images numérisées CMOS, en l’occurrence un reflex Canon 700D._ Un support pour la station météo. _ Un capteur de pression._ Un capteur humidité-température._ Un capteur de température : thermistance interfacée lors de la phase P2._ Un Raspberry Pi pour la transmission des données sur l'interface web.

En traitement, analyse et affichage :

_ Un ordinateur, portable de préférence._ Site web : programmé en HTML5, CSS3 et JS ; 'www.astro-insa-lyon.fr' non accessible à l'heureactuelle à cause d'un problème d'accès sur le port 21, mais qui devrait marcher dans les jours quiviennent._ Logiciel de traitement d'images dédié à l'astronomie : IRIS._ Codec de gestion à distance de l’appareil photo : Gphoto2.

Simplifications techniques:

_ Au vu des moyens à disposition, on a travaillé sur l'interfaçage d'une photorésistance [1-100lux] sur une gamme [0-5lux], cela s'est répercuté sur la précision du capteur.

_ Le temps non favorable sur la région lyonnaise ces derniers jours ne nous a pas permis de tester la station dans des conditions optimales. De ce fait, lors de la démonstration, on utilisera des images antérieures, ainsi que des données simulées pour présenter le fonctionnement (surtout que cela ne peut être fait que la nuit).

_ La station proposée peut gérer le fonctionnement de plusieurs télescopes en même temps, faute demoyens, le prototype se fera sur un seul télescope.

_ les prises de photos seront faites à intervalle supérieur à vingt secondes (c'est plus un choix qu'unesimplification).

Conditions d'observation: pourquoi c'est important ? :

Il est utile de connaître la température extérieure pour savoir si le télescope est à températureambiante ce qui est nécessaire avant de commencer les observations. En effet, la variation detempérature des éléments du télescope induit une variation de leur comportement (notamment due àleur dilatation ou contraction). C'est pourquoi il faut attendre une stabilisation de la température dutélescope. Sans capteur de température, on estime une durée d'acclimatation proche d'une heurenéanmoins cette durée peut être plus courte et donc provoquer une perte de temps. Ainsi nous avonsaussi besoin d'un capteur de température dans le télescope pour savoir quand le télescope est prêtpour l'observation et donc éviter de perdre du temps.

Connaître la luminosité permet de mesurer la pollution lumineuse nocturne très gênante pourles observations astronomiques. En effet, cette luminosité, générée le plus souvent par les activitéshumaines, provoque un bruit lors des observations. A titre d'exemple, la Lune (l'objet le pluslumineux du ciel nocturne) génère une luminosité de 0,2 lux déjà gênant pour l'observation d'objetsà proximité de la Lune la nuit ; alors que dans certaines agglomération la pollution lumineuse peutatteindre 5 lux ou plus selon la météo. Cette luminosité empêche l'observation de la plupart desobjets célestes qui ont une magnitude supérieure à 7 (la magnitude est la mesure de l'irradiance d'unobjet astronomique, un gain de 1 sur la magnitude correspond à une division de l'irradiance del'objet par 2,5). Ainsi la luminosité permet de connaître la qualité du lieu d'observation et est unindice pour savoir si un objet sera visible ou non.

La pression atmosphérique permet de prévoir la météo et d'avoir une idée de la météo encours. En effet, une pression atmosphérique faible induit un risque d'averse ou d'orage alors qu'unepression atmosphérique plus élevée assure du beau temps. Ainsi, on peut savoir en temps réel si lanuit va se couvrir, gênant les observations ou si le ciel restera dégagé. De plus, on peut savoir si lorsd'une nuit d'observation il y a eu une couverture nuageuse sans avoir à le noter dans uncommentaire (dans la base de données) ni sans aller chercher le bulletin météorologique de la nuit.

L'humidité est un facteur de gêne des observations. En effet, les gouttelettes d'eau ensuspension dans l'air dévie la lumière. Cela a pour effet d'uniformiser la lumière reçue et donc deréduire la précision des observations, sans compter que les objets les moins lumineux deviennenttellement diffus qu'ils sont totalement inobservables quelque soit l'appareil utilisé. De plus,l'humidité est un indicateur de la couverture nuageuse dans les couches basses de l’atmosphère.Ainsi, en connaissant l'humidité ambiante, on peut déterminer la qualité des observations en cours :plus elle est faible, meilleure sera l'observation. Nous pouvons aussi éventuellement « corriger » desimages avec un logiciel de retouche d'image si celui-ci prend en compte le taux d'humidité.

Architecture globale

Comme expliqué précédemment, une thermistance sera disposée sur le télescope, tandis queles autres capteurs seront sur une station météorologique à côté : un autre capteur de température,un capteur de luminosité, un capteur d'humidité et un capteur de pression. Il y aura ainsi un Arduinosur le télescope pour récupérer sa température et un deuxième dans la station météorologique afinde récupérer toutes les autres données. Ces deux Arduino transmettront leurs données à untroisième, qui sera directement connecté à un Raspberry Pi (ou à un autre type d’ordinateur). Unecaméra directement branchée sur le Raspberry Pi permettra de récupérer les images. Ensuite, leRaspberry Pi qui sera connecté en réseau à l'internet pourra directement implémenter les données,enregistrera les images sur une carte SD et pourra directement implémenter les autres mesuresmoins volumineuses dans la base de données associée à notre projet.

Voici un schéma simplifié des communications entre les différentes machines :

Figure n°1: Schéma de l'architecture globale du montage.

Rôle des différents éléments

Commençons par décrire les différents éléments implantés sur la station météorologique, quiest distante de un mètre du télescope :

Un capteur de :Température : Il relève la température extérieure.Luminosité : Il nous permet de connaître la pollution lumineuse environnante, afin d'évaluer si lelieu d'observation est mauvais ou non.Pression : Il capte la pression atmosphérique, ce qui nous permet de connaître le temps, ainsi

prévoir s'il va pleuvoir, ou connaître les modifications que cela a pu apporter au images, avec desnuages par exemple.Humidité : Il indique l'humidité ambiante, afin d'évaluer la qualité des images, puisque l'humiditéfiltre et dévie la lumière, ce qui implique des chevauchements de rayons lumineux.

Un Arduino nommé : Senken ; il est branché à ces différents capteurs, et réunit cesdifférentes données afin d'ensuite les télétransmettre à un autre Arduino : Marco.Voici une photographie de cette station météorologique portable fabriquée par nos ingénieurs :

Figure n°2 : Mini-station météorologique.

Étudions désormais le montage à partir du télescope, sur lequel il y a :

Un capteur de température, créé à partir d'une thermistance interfacée. Ce capteur est dans letélescope afin de relever la température du télescope. Puisque l'on veut que la températureextérieure et la température du télescope soit identiques.

Ce capteur est directement relié à un autre Arduino nommé : Thermi, qui récupère cette valeur detempérature et la télétransmet à Marco.

Figure n°3 : Thermi et son ami le tubedu télescope

Ce télescope comprendra aussi une caméra CCD qui transmettra par connexion filaire lesimages prises depuis le télescope à un Raspberry Pi nommé Pika (c'est d'ailleurs Pika qui donnera àla camera la commande de prendre les photos lorsqu'il relève les données).

L'Arduino Marco est lui aussi relié via un fil à Pika, auquel il transmet les informations quelui ont communiquées Senken et Thermi.

Ensuite, Pika est branché en Ethernet, ainsi il peut directement communiquer les donnéesqu'il recueille au serveur sur lequel est hébergé la base de données afin de la remplir.

Pour finir cette architecture voici une photo des deux manquants, Pika et Marco :

Figure n°4 : Pika et Marco

Le fonctionnement

Le point qu'il nous reste le plus à définir dans cette architecture est l'organisation de la basede données et la description de l'interfaçage web utilisé.

Comme nous l'avons déjà expliqué précédemment, le but final de ce projet est de pouvoirregrouper toutes les données récoltées lors d'une nuit d'observation dans un lieu, et de le reproduireplusieurs fois avec plusieurs télescope afin d'avoir finalement une base de données nous permettantde recenser les images des bonne nuit d'observation, mais surtout les bons lieux d'observation.Les images ne sont pas implémentées dans la base de données.

Nous devons alors y implémenter bien évidemment les différentes mesures pour lesquelleson pouvait créer une table mère selon le type de mesures effectuées (pour les deux températures parexemple). Nous devons aussi recenser les capteurs utilisés que l'on a choisi de lier au télescope aveclequel ils sont utilisés. On a ainsi considéré qu'une station météorologique n'est utilisée que pour untélescope. Du fait de notre projet, les différents lieux d'observations devaient être recensés, et on adécidé qu'un utilisateur pourrait commenter les lieux au cas où des imprévus n'étant pas repérés parles capteurs apparaissent.

De toute ces décisions, nous avons élaboré le schéma UML correspondant :

Figure n°5 : Schéma UML de notre base de données

A partir des relations, nous avons alors réalisé le schéma relationnel de cette base de données :

-Telescope (idTelescope int, typetelescope varchar(20), diameter int, focale int, idlieu int)

-TypeMesure (grandeur varchar(20), unité varchar(20))

-Capteur (idCapteur int, fabricant varchar(15), idtelescope int, modèle varchar(45))

-Lieu (idLieu int, coordlat int, coordlong int, altitude int, nomlieu varchar(45))

-Mesure (idMesure int, valeur decimal(10,2), grandeur varchar(20) , idTelescope int, date datetime, idlieu int)

-Utilisateur (idUtilisateur int, nom varchar(15), prenom varchar(15))

-Commentaire (idUtilisateur int, idLieu int, avis varchar(140), note int)

Comme nous l'avons vu dans l'architecture globale du projet, c'est le Raspberry Pi quitransmet les données récoltées à la base de données, il nous fallait alors prévoir les commandespermettant à celui-ci d'y ajouter les tuples des mesures effectuées.

La seule table dans laquelle le Raspberry Pi doit rajouter des tuples régulièrement est"Mesure". Puisqu'il est relié à un seul télescope, on a idTelescope qui est une valeur fixée associéeau télescope, par exemple dans notre cas on prendra un télescope référencé "2". Ensuite, l'idMesureest sujet à une auto incrémentation à chaque insertion de tuple. De plus, tout comme le Raspberry Pin'est lié qu'à un seul télescope, ce télescope n'est utilisé qu'en un seul endroit durant la nuit, ainsil'identifiant du lieu devrait être en conséquence les coordonnées géographiques, dans notre cas,nous avons décidé de le fixer à "0" pour cette exemple. Finalement, dans le cas où l'Arduino Marcon'arrive pas à correctement recevoir la valeur d'une mesure, la valeur définie par défaut est -100,ainsi la condition avant l'insertion des données devraient nous permettre de se débarrasser deserreurs de télétransmission.

Voici finalement les requêtes permettant d'implémenter ces données :

if (mesures.temp_tel != -100.0) mysql.query("INSERT INTO Mesure (grandeur, idTelescope, idLieu,valeur, date) VALUES (1, 2, 0," + mesures.temp_tel + ", now());");

if (mesures.temp_env != -100.0) mysql.query("INSERT INTO Mesure (grandeur, idTelescope, idLieu, valeur, date) VALUES (2, 2, 0," + mesures.temp_env + ", now());");

if (mesures.humidite != -100.0) mysql.query("INSERT INTO Mesure (grandeur, idTelescope, idLieu, valeur, date) VALUES (3, 2, 0," + mesures.humidite + ", now());");

if (mesures.lumiere != -100.0) mysql.query("INSERT INTO Mesure (grandeur, idTelescope, idLieu, valeur, date) VALUES (4, 2, 0," + mesures.lumiere + ", now());");

if (mesures.pression != -100.0) mysql.query("INSERT INTO Mesure (grandeur, idTelescope, idLieu, valeur, date) VALUES (5, 2, 0," + mesures.pression + ", now());");

Nous avons ainsi vu précédemment comment ces données sont acquises, communiquées etstockées. Développons alors ce que nous allons faire de ces données au niveau de l'analyse desdonnées et de leur visualisation.

Au niveau de la visualisation, nous somme partis sur une interface web, avec bien entendudu html/css pour l'organisation et la présentation de la page, toutefois pour l'utilisation de la base dedonnées en relationnel, nous avons décidé d'utiliser du javascript. Ce choix de langage s'expliquepar l'utilisation du node.js : nous pouvons à la fois utiliser ce langage côté serveur comme côtéclient, ce qui ne laisse alors qu'un seul langage à apprendre à la place de l'utilisation de deux pourun dynamisme complet.

Puisque le but est de trouver sur une durée déterminée (par exemple sur une seule nuit), lesmeilleurs moments d'observations, il faut pouvoir trouver les dates correspondantes aux luminositéset humidités les plus faibles possible et les pressions les plus fortes possibles, pour cela, nousafficherons des graphiques à l'utilisateur des valeurs l’intéressant.

Ainsi, sur un même graphique, il y aura la température extérieure et celle du télescope, celapourra être utilisé en pré-observation, pour qu'il sache à quelle moment les températures secoordonnent pour qu'il puisse indiquer au Raspberry Pi d'ordonner à la caméra de prendre desphotos (qui en prend ensuite automatiquement régulièrement). Une fois la nuit passée, les personnesallant sur le site pourront connaître les moments où l'observation et les photos étaient les meilleurs,en trouvant l'humidité/luminosité minimale et la pression maximale.

Cela permet aussi et surtout d'avoir des indications chiffrées sur un lieu où on pourraitvouloir aller observer. Ainsi, on peut connaître à l'avance la pollution lumineuse habituelle dans unlieu donné, et puisque les lieux pourront alors être notés en fonction des différents paramètres(humidité et pression moyenne, ainsi que pollution lumineuse), cela pourrait permettre de faire unclassement des meilleurs lieux d'observations.

Voici une capture d'écran de cette page :

Le but final de tout ce projet étant d'évaluer les différentes nuits et les différents lieux, il estdifficile à partir des données de créer un algorithme permettant de noter un lieu, d'où la possibilitépour un utilisateur de noter sa nuit. Ce qui peut être évaluée sur le long terme est la pollutionlumineuse qui ne devrait pas varier à un lieu donné, excepté si des habitations voisines allumentleurs lumières, les éclairages publics changent leurs horaires d'utilisation ou des travaux aientlieux... Mais cela fait partie des différentes limites de notre projet que nous allons désormaisaborder.

Limites du montage

La principale limite entre notre maquette et l'exploitation réelle des données est justement lemanque de données. Le but de ce projet étant de pouvoir évaluer les différents lieux, et d'établir unebase de données de nombreuses nuit d'observations, il faudrait en faire un projet d'envergure afin depouvoir réellement juger les lieux. Pour cela, il faudrait plusieurs télescopes équipés de leur réseaude capteurs qui remplirait chacun la base de données séparément à partir de lieux différents.

Ainsi, pour un déploiement en situation réelle, il faudrait fournir des ensembles de réseauxde capteurs à des astronomes amateurs ayant déjà leurs télescopes ainsi qu'un accès à la base dedonnées afin qu'ils puissent contribuer à ce projet.

D'autres limites sont celles spécifiques aux mesures prises. Par exemple, la mesure depression dépend de la hauteur et la température à laquelle on effectue l'observation. En effet, plus onest en hauteur, plus la pression baisse, sans pour autant influer la possibilité de pluies, ainsi l'analysedes données de pression pour connaître les lieux à pluies fréquentes pendant la nuit devrait êtreutilisée en corrélation avec l'altitude de prise de mesure (et donc de la pression atmosphériqueusuelle correspondante). De même, la température influe sur le nivellement barométrique (la

variation de pression en fonction de l'altitude). Ainsi, dans le cas d'une étude plus poussée, ilfaudrait prendre en compte une relation entre la pression, l'altitude et la température pour savoir,pendant une période de l'année, si un lieu est intéressant pour l'observation.

Ensuite, une autre limite de notre projet encore liée aux perturbations météorologiques est lefait qu'un lieu peut sembler bon toute l'année selon notre base de données parce que l'on ne vajamais y faire d'observation les jours de pluies. Par exemple, pour un lieu à 1h de route de toutehabitation (ou un lieu bien isolé), toutes les personnes y allant pour des observations devrontpréparer cela sur le long terme et ne prendront alors pas le risque d'y aller un jour où la météoannonce une possibilité de pluie. Ainsi, dans une telle zone, nous auront pour un mois donné,uniquement les valeurs de pression des jours où le ciel était dégagé, ce qui nous donneral'impression d'avoir un lieu quasi-parfait alors qu'en réalité on manque juste de données.

Pour continuer sur le nombre de données, plus que celles manquantes, et même si l'on avaisbeaucoup de données par nuit, il faudrait du temps afin de pouvoir évaluer les lieux. La pollutionlumineuse a peu de chance de changer radicalement dans un lieu d'observation, et on peut releverdes valeurs des conditions climatiques, sauf que l'humidité et la pression variant, il faudrait pourpouvoir juger un lieu relativement à l'époque de l'année, soit avoir des valeurs datant de quelquesjours auparavant, soit d'il y a une année solaire afin de retrouver des conditions relativementsimilaire.