Un petit article sur la façon de fabriquer un thermomètre aussi mignon avec un affichage et une indication de couleur. Le thermomètre fonctionne avec le Raspberry Pi Zero W.
Il bascule automatiquement la liste des villes et affiche la température sur l'écran OLED et l'échelle LED. Vous pouvez également sélectionner une ville à afficher manuellement à l'aide des boutons sur le côté. Le thermomètre a une fonction d'économie d'énergie et éteindra les LED et OLED s'il est inactif pendant plusieurs minutes, et se rallumera s'il détecte un changement significatif de lumière (contrôlé par une photorésistance).
Outils et matériaux:
-Raspberry Pi Zero;
Module OLED de -1,5 pouces;
- Alimentation 5 V 2,4 A;
- Bande LED WS2812B- 5 mètres;
-Fixations;
- carte de circuit imprimé;
-Accessoires de soudure;
-Pistolet à colle;
- Colle de menuisier;
-Contreplaqué;
-Acryl;
Découpe laser CNC;
Première étape: données météorologiques
L'assistant collecte des données météo gratuitement avec OpenWeatherMap.org. Ce site fournit des données météorologiques de nombreuses grandes villes dans de nombreux pays du monde.
Vous devez d'abord vous inscrire sur OpenWeatherMap.org.
Copiez ensuite votre clé API pour une utilisation ultérieure.
Ensuite, téléchargez, décompressez et ouvrez le fichier city.list.json.gz.
Sélectionnez les villes souhaitées et copiez leurs identifiants.
city.list.json.gz
Deuxième étape: configurer R Pi et le code
Tout d'abord, l'assistant a connecté l'écran à Raspberry et a installé les bibliothèques nécessaires pour OLED, comme décrit par le fabricant ici.
Ensuite, vous devez vous assurer que le R Pi est connecté à Internet.
1. Activez la fonction I2C et SPI dans raspi-config dans la section "Options d'interfaçage". Quittez et rechargez le programme.
Exécutez à nouveau pour mettre à jour:
mise à jour sudo apt-get
3. Exécutez les commandes suivantes pour installer les bibliothèques requises:
sudo apt-get install python-dev
sudo apt-get install python-smbus
sudo apt-get install python-serial
sudo apt-get install python-imaging
4. Exécutez la commande suivante pour ouvrir le fichier de configuration:
sudo nano / etc / modules
Assurez-vous que les deux lignes suivantes figurent dans le fichier de configuration, puis quittez et redémarrez:
i2c-bcm2708
i2c-dev
5 Exécuter:
git clone https: / /github.com/Anders644PI/1.5inch-OLED-with-RPi .git
6. Accédez au nouveau dossier et décompressez RPi_GPIO-0_6_5.zip:
décompressez RPi_GPIO-0_6_5.zip
Exécutez pour installer les bibliothèques:
cd RPi_GPIO-0_6_5 sudo python setup.py install
7. Retournez dans le dossier principal:
cd /home/pi/1.5inch-OLED-with-RPi/
Ou
cd
spidev-3_2.zip.
8. Décompressez ensuite Pi.zip:
décompresser le câblagePi le câblage cdPi
Exécutez les commandes:
chmod 777 build ./build
Vérifiez l'installation:
gpio –v
9. Revenez au dossier principal et décompressez bcm2835-1_45.zip
décompressez bcm2835-1_45.zip
cd bcm2835-1_45
10. Exécutez:
./configure
faire
sudo faire chèque
sudo make install
11. Revenez à /home/pi/1.5inch-OLED-with-RPi/ et lancez pour vérifier l'affichage:
cd / Demo_Code / Python /
sudo python main.py
L'assistant installe ensuite les bibliothèques de la bande LED WS2812B, en suivant ce guide.
Ensuite, vous devez écrire et télécharger le code. Le code peut être téléchargé ici.
Troisième étape: configurer l'API Météo
1. Accédez à LED_Thermometer_Code_and_OLED_driver:
cd LED_Thermometer_Code_and_OLED_driver
2. Ouvrez ensuite Official_Digital_LED_Thermometer_v1-0.py:
nano Official_Digital_LED_Thermometer_v1-0.py
Et puis faites défiler vers le bas et changez la clé api en votre api depuis openweathermap.org, comme indiqué dans l'image ci-dessus. Modifiez également les identificateurs de ville et les noms de ville en fonction de l'emplacement souhaité.
Quatrième étape: PCB
Ensuite, le maître a conçu et commandé une carte de circuit imprimé.
Cinquième étape: découpe laser + assemblage
Ensuite, le maître a conçu et découpé le boîtier en contreplaqué et le diffuseur en acrylique.
Après cela, l'assistant a installé électronique et bande LED dans le boîtier. Assemblé le boîtier.
Les boutons ont été imprimés par le maître sur une imprimante 3D.
Tous les fichiers peuvent être trouvés et téléchargés sur Github.
Tout est prêt.