Table des matières:

Dark Sky API PyPortal et tableau de bord météo : 6 étapes
Dark Sky API PyPortal et tableau de bord météo : 6 étapes

Vidéo: Dark Sky API PyPortal et tableau de bord météo : 6 étapes

Vidéo: Dark Sky API PyPortal et tableau de bord météo : 6 étapes
Vidéo: Создайте панель погоды с помощью API Dark Sky | GIT TECH'D 2024, Juillet
Anonim
Image
Image

Ce projet est une reprise de celui que nous avons déjà réalisé, le Dark Sky API Weather Dashboard. Cette fois, au lieu d'un Raspberry Pi, nous utiliserons un Adafruit PyPortal pour afficher les données météorologiques et envoyer ces données à l'état initial. Deux tableaux de bord pour le travail d'un seul !

Fournitures

  • Adafruit PyPortal
  • Compte Adafruit IO (gratuit)
  • Compte API Dark Sky (gratuit)
  • Compte Etat initial

Étape 1: État initial

Etat initial
Etat initial

Initial State est une plateforme de visualisation de données. Nous enverrons les données de l'API Dark Sky et du PyPortal à l'état initial. Cela nous permettra d'avoir un journal des données météorologiques et de visualiser les tendances météorologiques.

Vous devrez vous inscrire et créer un nouveau compte. Vous bénéficiez d'un essai gratuit de 14 jours et toute personne disposant d'une adresse e-mail edu peut s'inscrire à un plan étudiant gratuit.

Vous aurez besoin de votre clé d'accès à l'état initial pour pouvoir envoyer des données de l'API Dark Sky et du PyPortal à l'état initial. Faites défiler votre nom d'utilisateur en haut à droite et cliquez sur mes paramètres. Vous y verrez une liste de clés d'accès au streaming. Sélectionnez-en un à utiliser ou créez-en un nouveau. Nous en aurons besoin plus tard pour le code.

Étape 2: API du ciel étoilé

API de ciel étoilé
API de ciel étoilé

Dark Sky est spécialisé dans les prévisions et la visualisation météo. L'aspect le plus cool de Dark Sky est son API météo que nous pouvons utiliser pour récupérer les données météo de presque n'importe où dans le monde. Ce n'est pas seulement le temps est pluvieux ou ensoleillé, mais la température, le point de rosée, les rafales de vent, l'humidité, les précipitations, la pression, l'indice UV, etc., tous facilement disponibles où vous voulez, quand vous voulez.

Pour utiliser l'API Dark Sky, vous avez d'abord besoin de votre propre clé API. Ne vous inquiétez pas, l'obtention d'une clé API est rapide et gratuite. Tout ce que vous avez à faire est d'aller sur le site Web et de cliquer sur « Essayer gratuitement » pour créer un compte.

Vous recevez 1 000 appels API gratuits chaque jour. Chaque demande d'API dépassant la limite quotidienne gratuite coûte 0,0001 $. Cette limite est automatiquement réinitialisée chaque jour à minuit UTC. La demande de prévision renvoie les prévisions météorologiques actuelles pour la semaine suivante. La demande Time Machine renvoie les conditions météorologiques observées ou prévues pour une date dans le passé ou futur.

Votre clé secrète d'API Dark Sky ressemblera à ceci:

0123456789abcdef9876543210fedcba.

Nous l'utiliserons plus tard dans le code.

Étape 3: Adafruit IO & PyPortal

Adafruit IO est le service qu'Adafruit propose pour compléter son matériel. Nous utiliserons ce service pour la partie horloge de notre code. Inscrivez-vous pour un compte gratuit. Cliquez sur Afficher la clé AIO sur la gauche pour voir votre nom d'utilisateur et votre clé. Nous utiliserons les deux plus tard dans notre code plus tard.

L'Adafruit PyPortal est le dernier appareil IoT alimenté par Circuit Python. Ce qui est bien avec PyPortal, c'est que vous pouvez interagir avec les API et les JSON pour afficher presque tout. Nous l'utiliserons pour obtenir des données de l'API Dark Sky, afficher ces données sur PyPortal et envoyer ces données à Initial State.

S'il s'agit de votre premier projet sur votre PyPortal, vous voudrez suivre ce tutoriel pour télécharger le firmware, connecter votre PyPortal au WiFi et le préparer. Une fois que vous aurez terminé, nous serons prêts pour le code de l'API Dark Sky.

Étape 4: Coder

Ce code peut être téléchargé sur votre ordinateur ici. Transférez tous les fichiers à l'exception du fichier README.md sur votre PyPortal. Vous allez simplement les faire glisser et les déposer sur le PyPortal, qui devrait apparaître comme CIRCUITPYTHON sur votre liste USB. Le seul document que vous devez modifier est le fichier secrets.py. Il intégrera toutes vos informations privées dans le code afin que nous ne les ayons pas à la vue de tous.

Je recommanderais d'utiliser l'éditeur Mu pour modifier et afficher votre code. Il dispose d'un moniteur série pour un débogage facile pendant que vous apportez des modifications. N'importe quel éditeur de code fonctionnera cependant.

Je veux parler de ce que chaque morceau de code, bibliothèques et dossiers fait afin qu'il soit plus facile d'apporter des modifications et

code.py

C'est notre fichier principal qui s'initie sur le PyPortal puisqu'il s'appelle code.py. Ici, vous verrez la connexion WiFi, l'appel de l'API Dark Sky et la configuration de l'affichage PyPortal. Il n'y a aucune modification à apporter à ce fichier.

darksky.py

Ce script est appelé à partir du code principal. C'est là que nous analysons l'appel de l'API Dark Sky, configurons l'emplacement du texte sur l'affichage PyPortal, déterminons l'icône à afficher et envoyons les données de l'API à l'état initial. Il n'y a aucune modification que vous devez faire ici.

secrets.py

Celui-ci contient tous vos mots de passe et clés d'accès. Vous devrez mettre à jour presque tous les éléments de ce document. Vous devrez entrer votre nom WiFi, mot de passe WiFi, fuseau horaire, clé API Dark Sky, clé d'accès à l'état initial, longitude et latitude, nom et état de la ville, nom d'utilisateur Adafruit IO et clé Adafruit IO. Une fois que vous avez tous ceux entrés et enregistrés, votre code devrait s'exécuter sans erreur.

bibliothèques

Ce sont les bibliothèques requises pour exécuter le PyPortal et les modules.

polices

C'est la police utilisée pour afficher les informations météo sur PyPortal.

Icônes

Ce sont les différentes icônes qui s'affichent sous forme d'image sur le PyPortal en fonction des conditions météorologiques actuelles.

Étape 5: PyPortal

PyPortal
PyPortal

Maintenant que votre code est en cours d'exécution, votre PyPortal affichera votre ville et votre état, l'heure, le résumé des conditions météorologiques actuelles et l'icône correspondante, ainsi que la température en degrés Fahrenheit.

Vous pouvez ajuster la taille et l'emplacement du texte affiché dans le script Dark Sky. Si vous souhaitez utiliser différentes icônes, il vous suffit de les enregistrer sous les noms corrects et de les placer dans le dossier des icônes. Tous les éléments d'affichage sont réglables. Vous pouvez même modifier ce que vous affichez. Tout ce que vous avez à faire est d'analyser une autre partie de l'appel de l'API Dark Sky et celle-ci s'affichera à la place du résumé de la température ou de la météo.

Étape 6: Tableau de bord de l'état initial

Tableau de bord de l'état initial
Tableau de bord de l'état initial

Accédez à votre compte Initial State et examinez vos données. J'ai mappé l'icône de température et de météo sur les émojis, fait de la valeur de température un graphique de jauge de thermomètre, fait de l'humidité un graphique de jauge de niveau de liquide, fait de l'indice UV un graphique à barres avec des seuils de couleur et créé des graphiques linéaires d'humidité, de température et d'indice UV.'

Vous pouvez ajouter une image d'arrière-plan à votre tableau de bord météo pour lui donner plus de personnalité.

Si vous souhaitez utiliser la mise en page du tableau de bord d'un partage public comme tableau de bord, vous pouvez importer une mise en page dans votre compartiment de données en suivant les instructions ici.

L'URL de partage public de notre tableau de bord est

Maintenant, vous avez non seulement un, mais deux tableaux de bord météo et un journal des données météorologiques.

Conseillé: