The Shapes Of Things To Come - Doc Technique
Français
Français
  • Overview
  • Script Python
    • Script Python - Configuration et Execution
    • API AtmoSud
    • Tracking - Caméras et capteurs de positions
    • Communication OSC vers MadMapper
    • Storylines et Scénarios
  • MadMapper
    • MadMapper - Configuration
  • Pix-Lite / Advatek - Configuration
  • Automatic Execution
  • Modifications à faire
Propulsé par GitBook
Sur cette page
  • Données de qualité de l'air
  • Récupération - API ATMOSUD
  • Interprétation
  • Détail des requêtes possibles

Cet article vous a-t-il été utile ?

  1. Script Python

API AtmoSud

API de qualité de l'air de la région SUD

PrécédentScript Python - Configuration et ExecutionSuivantTracking - Caméras et capteurs de positions

Dernière mise à jour il y a 3 ans

Cet article vous a-t-il été utile ?

Données de qualité de l'air

Récupération - API ATMOSUD

Le script python récupère les données de qualité de l'air à travers l'API d'Atmosud () suivant les paramètres de localisation (code INSEE) de l'oeuvre et de la date à travers une requête http. Il est ainsi possible de modifier la commune depuis laquelle le script récupère les données de qualité de l'air afin de l'adapter à sa position actuelle, ainsi que les plages de dates correspondant aux données historiques voulues. Pour plus d'information à ce propos et pour comment obtenir la liste des villes disponibles, cf. page , tab Villes Disponibles.

Cela se fait au sein d'un bloc try-get afin d'éliminer les risques de problème de connection au serveur : dans le cas ou il ne serait pas accessible, le script utilisera des donnés de qualité de l'air démo déjà sauvegardés (ces données correspondent aux données du 8 Juin 2021 au 8 Juillet 2021, avec le premier ruban en blanc pour rappeler qu'il s'agit d'une démo)

Il obtient ainsi l'historique de qualité de l'air des 31 derniers jours liée à la qualité de l'air présente à la station de mesure Atmosud la plus proche de l'oeuvre, sous forme d'un dictionnaire contenant pour chaque journée un indice de qualité d'air allant de 1 (Bon) à 6 (Extrêmement mauvais) ainsi que les polluants majoritaire responsables de cette qualité d'air (O3, NO2, pm10, ...).

Interprétation

Le script créé ensuite 2 listes (une pour les indices et une pour les polluants majoritaires) de 31 éléments reflétant la qualité de l'air des 31 derniers jours, qu'il combine en une liste. Dans le cas où les données du jour ne seraient pas encore sorties, le script récupérera les prévisions de la veille pour aujourd'hui. Si ni les données d'aujourd'hui, de la veille ou du mois dernier sont disponible, il utilisera celle de démo.

Détail des requêtes possibles

# Other possible indices :  
        # color : 
            # Path : response_dictionary[0]["bulletins"][i]["valeurs"][2]["indice"]["couleur"]
            # Type : string
            # Ex : "#F0E641"
        # image link of color
            # Path : response_dictionary[0]["bulletins"][i]["valeurs"][2]["indice"]["image"]
            # Type : string
            # Ex : "https://api.atmosud.org/static/iqa/1.svg"
        # qualifier
            # Path : response_dictionary[0]["bulletins"][i]["valeurs"][2]["indice"]["qualificatif"]
            # Type : string
            # Ex : "Dégradé"
        # value
            # Path : response_dictionary[0]["bulletins"][i]["valeurs"][2]["indice"]["valeur"]
            # Type : int
            # Ex : 1
    # Index possibilities (7):
        # {couleur, qualificatif, image, valeur}
        # {#000000", "Inconnu", "https://api.atmosud.org/static/iqa/0.svg", 0}
        # {"#50F0E6", "Bon", "https://api.atmosud.org/static/iqa/1.svg", 1}
        # {"#50CCAA", "Moyen", "https://api.atmosud.org/static/iqa/2.svg", 2}
        # {"#F0E641", "Dégradé", "https://api.atmosud.org/static/iqa/3.svg", 3}
        # {"#FF5050", "Mauvais", "https://api.atmosud.org/static/iqa/4.svg", 4}
        # {#960032", "Très mauvais", "https://api.atmosud.org/static/iqa/5.svg", 5}
        # {"#872181", "Extrémement mauvais", "https://api.atmosud.org/static/iqa/6.svg", 6]
        
    # Major source of of pollution
        # Path : response_dictionary[0]["bulletins"][i]["valeurs"][2]["majoritaire"]
        # Ex: ['no2', 'o3', 'pm10']
            
    # Estimation of air quality on -1/0/+1/+2 days
        # Path : response_dictionary[0]["bulletins"][i]["valeurs"][XXX] ==> replace XXX by int between 0 (+2 days) and 3 (-1 day)

Suivant l'indice de qualité d'air de 0 à 6 (0 est en plus comme qualificatif d'une donnée 'inconnu'), le script python un état de lumière (couleur, gradient, opacité, effet, ...) différent à la surface correspondant à ce jour du mois.

est le logiciel permettant d'appliquer des surfaces, effets, couleurs, luminosité, ect... aux rubans LEDs, via la .

Pour plus d'infos sur l'envoi des données vers MadMapper, fonctions supplémentaires, et pour modifier les couleurs et gradients à appliquer cf. section .

envoi via OSC
MadMapper
MadMapper
PixLite Advatek
Communication OSC vers MadMapper
https://api.atmosud.org/
Script Python - Execution
Extrait du dictionnaire reçu - pour une journée
Example de mapping d'états de lumière : Ruban 1 = Bonne qualité (vert avec gradient cyan lent); Ruban 2 = Qualité moyenne (cyan avec gradient indigo plus rapide); Ruban 3 = Qualité dégradée (indigo avec gradient magenta encore plus rapide)