Table des matières:

Station météo Internet Raspberry Pi : 5 étapes (avec photos)
Station météo Internet Raspberry Pi : 5 étapes (avec photos)

Vidéo: Station météo Internet Raspberry Pi : 5 étapes (avec photos)

Vidéo: Station météo Internet Raspberry Pi : 5 étapes (avec photos)
Vidéo: Station de surveillance RASPBERRY PI - Caméra, température et relay 2024, Novembre
Anonim
Station météo Internet Raspberry Pi
Station météo Internet Raspberry Pi
Station météo Internet Raspberry Pi
Station météo Internet Raspberry Pi

*** Mettre à jour ***

Ce Instructable est devenu obsolète. Les services météorologiques pour les données météorologiques, utilisés dans ce Instructable, ne fonctionnent plus. CEPENDANT, il existe un projet alternatif qui fait fondamentalement la même chose (seulement mieux - ce Instructable était toujours juste un hack). Voici donc le lien que vous voudrez suivre:

https://piweatherrock.technicalissues.us/

Merci beaucoup à Gene Liverman de PiWeatherRock pour avoir pris le relais de ce projet.

Ce Instructable va vous montrer comment construire une station météo basée sur Internet Raspberry Pi vraiment cool. En fait, appeler cette construction une "station météo" est un peu une sous-déclaration. Cette construction pourrait facilement être étendue pour fournir bien plus que simplement la météo. Cependant, c'est un bon début et ça a l'air vraiment cool sur mon bureau.

Notre famille (OK, surtout moi) a apprécié d'avoir l'iPad familial sur le comptoir de la cuisine, lorsqu'il n'est pas utilisé, montrant tranquillement les conditions météorologiques extérieures actuelles. Cependant, il est difficile de charger et de décharger l'iPad dans et hors de l'étui de berceau d'arcade. De plus, juste au moment où je vais regarder la météo, je découvre que quelqu'un a pris l'iPad / affichage météo. Ce qu'il faut, c'est un présentoir de comptoir permanent que les enfants ne vont pas glisser comme l'iPad.

Étape 1: Gen 1 - la station météo Lunchbox Pi

Gen 1 - la station météo Lunchbox Pi
Gen 1 - la station météo Lunchbox Pi
Gen 1 - la station météo Lunchbox Pi
Gen 1 - la station météo Lunchbox Pi

Ma première pensée a été d'utiliser un petit écran vidéo composite. J'ai récupéré celui de la photo sur Ebay pour 22 dollars - recherchez simplement "Moniteur de voiture pour moniteur de vue arrière de voiture LCD TFT de 4,3 pouces". L'écran a une résolution rapportée de 656 par 416 pixels, ce qui fait de l'affichage de nombreuses informations utiles un défi ! L'affichage nécessite 12Vdc comme tension d'alimentation. Le Raspberry Pi, bien sûr, a besoin de 5Vdc comme tension d'alimentation. Pour résoudre ce problème, j'ai acheté un chargeur de voiture USB bon marché sur Amazon. Pour environ 6 dollars, j'ai trouvé un changeur de voiture 5Vdc par 2A. Par conséquent, la boîte à lunch dispose d'une alimentation murale externe 12Vdc. Le 12Vdc alimente directement l'écran. Le 12Vdc va également au chargeur de voiture USB qui abaisse la tension à 5Vdc régulé. Comme dernier hack, j'ai soudé une paire de fils directement entre le chargeur de voiture et le Raspberry Pi - ce n'est pas ma meilleure idée.

Bien que tout ait fonctionné, je n'étais pas vraiment satisfait de la qualité de la vidéo sur l'écran composite. La petite police sur l'écran était plus floue que je ne le souhaiterais. De plus, alors que la boîte à lunch semblait mignonne au début, elle semblait un peu ringard.

Étape 2: Gen 2 - Moniteur HDMI + Boîtier d'arcade en plexiglas découpé au laser

Gen 2 - Moniteur HDMI + Boîtier d'arcade en plexiglas découpé au laser
Gen 2 - Moniteur HDMI + Boîtier d'arcade en plexiglas découpé au laser
Gen 2 - Moniteur HDMI + Boîtier d'arcade en plexiglas découpé au laser
Gen 2 - Moniteur HDMI + Boîtier d'arcade en plexiglas découpé au laser
Gen 2 - Moniteur HDMI + Boîtier d'arcade en plexiglas découpé au laser
Gen 2 - Moniteur HDMI + Boîtier d'arcade en plexiglas découpé au laser

De retour sur eBay, j'ai trouvé un joli moniteur HDMI à cadre ouvert à 54 dollars avec une résolution de 800x600. Par définition, un cadre ouvert, tout a besoin d'un cadre pour y être monté. Étant donné que la gentillesse de la boîte à lunch était révolue depuis longtemps, il était temps d'utiliser de l'acrylique découpé au laser. Mon espace hacker local i3Detroit a un très bon cutter de 150 watts qui peut faire de la viande hachée en acrylique de 4,5 mm.

J'ai vaguement basé mon boîtier d'arcade sur la boîte d'arcade iPad. Si jamais je fais un design Gen 3, il inclurait un plateau amovible / coulissant pour le Pi. Il s'avère que c'est une douleur majeure dans le cou d'essayer de brancher et de sortir des objets du Pi car il n'y a pas beaucoup de place entre le Pi et les parois latérales.

Le moniteur HDMI nécessite également une alimentation 12Vdc. J'ai donc utilisé la même astuce en utilisant à nouveau un chargeur de voiture USB. Cette fois, cependant, j'ai coupé un vieux câble USB afin que les fils soudés sur le Pi ne soient pas nécessaires.

Si quelqu'un est intéressé par le boîtier d'arcade, postez un commentaire ci-dessous et je téléchargerai les fichiers DXF. Ou, les fichiers sont sur mon site Web à ph-elec.com.

Étape 3: configuration de Pi

Configuration Pi
Configuration Pi

Configurer un nouveau Raspberry Pi avec le logiciel nécessaire n'est pas si difficile. Tout le logiciel est écrit en Python avec un seul module Python ajouté. Le module Python supplémentaire est appelé "pywapi". Voici un lien où vous pouvez télécharger le module. Ce module permet d'obtenir facilement la météo en temps réel de Yahoo, Weather.com ou NOAA.

Tout d'abord, voici une liste de contrôle pour configurer un Raspberry Pi brut:

  1. Téléchargez la dernière version de Raspbian (Debian Wheezy). Décompressez pour obtenir un fichier.img.
  2. Écrivez le sur une carte SD avec "dd bs=4M if=2014-09-09-wheezy-raspbian.img of=/dev/sdb"
  3. La commande dd prend environ cinq minutes. Une fois terminé, exécutez "sync" pour rincer les tuyaux.
  4. Installez la carte SD dans le Pi et redémarrez. Assurez-vous qu'il existe une connexion Ethernet au Pi.
  5. À l'aide de la page « Périphériques connectés » sur le routeur, recherchez l'adresse IP du nouveau Pi.
  6. Connectez-vous au Pi en utilisant "ssh [email protected].???" où ??? est le numéro IP ci-dessus. Le mot de passe sera "framboise".
  7. Sur le Pi, utilisez la commande "raspi-config" pour configurer les valeurs par défaut.

    1. Activez le démarrage automatique dans l'interface graphique.
    2. Définissez le nom d'hôte sur quelque chose comme "MyPi".
  8. Installez VNC sur le Pi avec "sudo apt-get install tightvncserver".

    Exécutez "tightvncserver" qui définit le mot de passe

  9. De retour sur la grande boîte Linux, utilisez "Remote Desktop" pour afficher le bureau Pi GUI.

    1. Réglez le protocole sur "VNC" et le numéro IP sur "192.168.1.???:1". Notez le ":1" à la fin du numéro IP.
    2. Appuyez sur le bouton de connexion et fournissez le mot de passe VNC.
    3. Bingo, bureau à distance GUI Pi !

      Cela évite de faire glisser un moniteur, un clavier et une souris pour se connecter au nouveau Pi

    4. Sur le bureau, exécutez l'icône de configuration WiFi. Configurez le nouveau Pi / USB WiFi pour vous connecter au réseau.
    5. Fermez la connexion VNC - nous en avons maintenant terminé avec les bureaux distants.
  10. De retour dans la fenêtre ssh, redémarrez le Pi avec "sudo reboot". Déconnectez le câble Ethernet puisque le WiFi est maintenant configuré.
  11. De retour sur le routeur domestique, recherchez le nouveau numéro IP que le Pi utilise avec le WiFi.
  12. En utilisant ssh, reconnectez-vous en utilisant le nouveau numéro IP. Cette fois, la connexion se fera via WiFi.
  13. À l'aide du gestionnaire de fichiers sous Linux, connectez-vous au Pi à l'aide de la commande "connect to server".

    L'adresse du serveur est "sftp://192.168.1.???/home/pi"

  14. Configuration de base terminée.

Ensuite, le pywapi doit être téléchargé et installé. Encore une fois, ce n'est pas trop difficile avec les étapes suivantes:

  1. Téléchargez la dernière version d'ici. Extrayez l'archive dans un nouveau répertoire.
  2. À l'aide de File Manager, copiez le répertoire dans le répertoire de base Pi.
  3. À l'aide de ssh, procédez comme suit sur le Pi:

    1. cd pywapi-0.3.8
    2. sudo python setup.py build
    3. sudo python setup.py installer
  4. Terminé.

Mise à jour, j'ai oublié deux mentions deux autres choses:

  1. Sur le Pi, exécutez la commande suivante:

    1. sudo apt-get install avahi-daemon

      Cela permet de se connecter au Pi par son nom. Ainsi, sur votre ordinateur principal, vous pouvez vous connecter en tant que "ssh [email protected]" au lieu d'utiliser des numéros IP. Avec plusieurs Pi sur le réseau, il est facile de les confondre à moins qu'ils ne soient appelés par leur nom

    2. sudo raspi-config

      1. Recherchez et exécutez la 4ème option appelée "Options d'internationalisation" et définissez votre fuseau horaire.
      2. Avec le fuseau horaire défini et l'exécution de ntpd (démon de protocole horaire du réseau), le Pi affichera toujours l'heure correcte à quelques millisecondes près ! Je dois l'aimer.
  2. OK, maintenant nous avons terminé.

Étape 4: Code source

Code source
Code source

Tout le code source de ce petit affichage météo est basé sur Python, PyGame et Pywapi. Tous les logiciels open source/libres.

PyGame est utilisé pour faire tous les trucs de l'interface graphique. Des trucs vraiment incroyables. En utilisant PyGame, tout l'affichage est reconstruit une fois par seconde. Près du haut de mon code source, vous trouverez une section qui permet de peaufiner différentes tailles d'affichage. Il y a une section pour le petit écran vidéo composite et une deuxième section pour le plus grand écran HDMI. Je commente simplement l'une des deux sections en fonction de la taille d'affichage dont j'ai besoin.

Pour exécuter mon code source, décompressez simplement la pièce jointe et copiez l'intégralité du répertoire sur le Pi à l'aide de File Manage. Une fois copié, lancez le code à l'aide des commandes ssh suivantes:

  1. Météo
  2. sudo python météo.py

La commande sudo est nécessaire pour que Python puisse contrôler/lire les broches GPIO. Il y a probablement un moyen de contourner cette restriction, mais cela m'échappe.

Une fois que tout fonctionne avec ssh, il est temps que la météo démarre automatiquement lors d'un redémarrage. C'est aussi très facile à faire.

  1. En utilisant ssh, exécutez "sudo vi /etc/rc.local"
  2. Juste avant la dernière ligne, qui dit "exit 0", ajoutez ce qui suit aux lignes.

    1. cd /accueil/pi/Météo
    2. sudo python météo.py &> err.log

Cela démarrera automatiquement l'application météo sur le Pi après un redémarrage. Si plus tard vous souhaitez désactiver cela, utilisez simplement ssh pour éditer le fichier et ajoutez le caractère de commentaire "#" devant les deux lignes et redémarrez.

Attention, mon code source est un gros hack et je n'en suis pas très fier. Cependant, si j'attendais qu'il soit présentable, il ne serait jamais présenté. Alors, à prendre ou à laisser, ne pleurez pas car j'ai une peau très fine.

Quelques autres choses à noter à propos de mon code. Enfoui là-dedans, vous remarquerez du code pour parler à un appareil X10. C'était ma tentative de contrôler mes feux de poteaux extérieurs qui sont à l'adresse A3. Je voulais simplement que les lampes s'allument au crépuscule et s'éteignent à l'aube. Cela semble assez facile et je pensais que cela fonctionnait. En utilisant un dongle USB vers RS232 sur le Pi, j'avais connecté un module CM11A X10. Le CM11A est un ancien module macro X10. Le CM11A dispose également d'un port RS232 qui permet de contrôler le bus X10. On dirait qu'il y a encore quelques bugs car les lumières des lampadaires ne reçoivent pas le message !

A noter également, sur le plus grand écran, il y a un bel espace ouvert le long du côté droit de l'écran. Mon plan est d'ajouter des voyants d'état dans cette zone. Je joue avec des radios IEEE802.15.4 et leurs sorties apparaîtront un jour dans cet endroit ouvert.

Pour les mises à jour les plus récentes et les plus importantes, veuillez visiter mon site Web à l'adresse ph-elec.com.

Eh bien, laissez-moi savoir dans la section commentaires ci-dessous toutes les questions que vous pourriez avoir.

Merci, Jim.

Oh, et n'oubliez pas de voter pour moi ! Merci encore.

BTW: Il y a toujours plus d'infos sur mon site web: www.ph-elec.com

Étape 5: mise à jour des métriques

Ci-joint une nouvelle version qui permet l'affichage du système métrique ou impérial.

J'espère que cela t'aides, Jim

Conseillé: