Table des matières:

AtticTemp - Enregistreur de température/climat : 10 étapes (avec photos)
AtticTemp - Enregistreur de température/climat : 10 étapes (avec photos)

Vidéo: AtticTemp - Enregistreur de température/climat : 10 étapes (avec photos)

Vidéo: AtticTemp - Enregistreur de température/climat : 10 étapes (avec photos)
Vidéo: Les Distributeurs Ne Veulent Pas Que Vous Sachiez Ça 2024, Juillet
Anonim
AtticTemp - Enregistreur de température/climat
AtticTemp - Enregistreur de température/climat

Jauge de température haute tolérance et enregistreur climatique pour votre grenier ou autres structures extérieures

Étape 1: Clignotement du disque dur RaspberriPi / Installation du logiciel requis (à l'aide d'Ubuntu Linux)

Télécharger "RASPBIAN JESSIE LITE"

Créez votre nouveau disque dur pour DashboardPI

Insérez la microSD dans votre ordinateur via un adaptateur USB et créez l'image disque à l'aide de la commande dd

Localisez votre carte microSD insérée via la commande df -h, démontez-la et créez l'image disque avec la commande disk copy dd

$ df -h /dev/sdb1 7.4G 32K 7.4G 1% /media/XXX/1234-5678

$ umount /dev/sdb1

Attention: assurez-vous que la commande est parfaitement exacte, vous pouvez endommager d'autres disques avec cette commande

if=emplacement du fichier image RASPBIAN JESSIE LITE of=emplacement de votre carte microSD

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (remarque: dans ce cas, il s'agit de /dev/sdb, /dev/sdb1 était une partition d'usine existante sur le microSD)

Configurer votre RaspberriPi

Insérez votre nouvelle carte microSD dans le raspberrypi et allumez-le avec un moniteur connecté au port HDMI

Connexion

utilisateur: pi pass: framboise

Changez le mot de passe de votre compte pour plus de sécurité

sudo passwd pi

Activer les options avancées de RaspberriPi

sudo raspi-config

Choisissez: 1 Développez le système de fichiers

9 options avancées

Nom d'hôte A2 changez-le en "AtticTemp"

A4 SSH Activer le serveur SSH

A7 I2C Activer l'interface i2c

Activer le clavier anglais/américain

sudo nano /etc/default/keyboard

Modifiez la ligne suivante: XKBLAYOUT="us"

Redémarrez PI pour que les modifications de la disposition du clavier/le redimensionnement du système de fichiers prennent effet

$ sudo shutdown -r maintenant

Connexion automatique à votre WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Ajoutez les lignes suivantes pour que votre raspberrypi se connecte automatiquement à votre WiFi domestique (si votre réseau sans fil se nomme "linksys" par exemple, dans l'exemple suivant)

network={ ssid="linksys" psk="MOT DE PASSE SANS FIL ICI" } Redémarrez PI pour vous connecter au réseau WiFi

$ sudo shutdown -r maintenant

Maintenant que votre PI est enfin sur le réseau local, vous pouvez vous y connecter à distance via SSH. Mais vous devez d'abord obtenir l'adresse IP dont il dispose actuellement.

$ ifconfig Recherchez "inet addr: 192.168. XXX. XXX" dans la sortie de la commande suivante pour l'adresse IP de votre PI

Allez sur une autre machine et connectez-vous à votre raspberrypi via ssh

$ ssh [email protected]. XXX. XXX

Commencer l'installation des packages requis

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install vim git python-requests python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev

Mettre à jour les paramètres de fuseau horaire local

$ sudo dpkg-reconfigurer tzdata

sélectionnez votre fuseau horaire à l'aide de l'interface

Configurez la commande simple directory l [facultatif]

$vi ~/.bashrc

ajoutez la ligne suivante:

$ alias l='ls -lh'

$ source ~/.bashrc

Correction de la mise en évidence de la syntaxe par défaut de VIM [facultatif]

$ sudo vi /etc/vim/vimrc

décommentez la ligne suivante:

syntaxe sur

Étape 2: Cloner le projet / Installer les pilotes logiciels

Cloner le référentiel du projet

$ cd ~

$ git clone

DHT22 Installer

$ cd ~

$ git clone

$ cd Adafruit_Python_DHT/

$ sudo python setup.py installer

$ sudo python ez_setup.py

$ exemples de cd/

$ vi simpletest.py

Modifiez la ligne suivante:

capteur = Adafruit_DHT. DHT22

Commentez la ligne

broche = 'P8_11'

Décommentez la ligne et remplacez le numéro de broche par 16

broche = 18

Exécutez le test

python simpletest.py

Vous devriez voir une lecture métrique de la température et de l'humidité affichée sur la ligne de commande.

SSD1306 Installer

Extrayez les pilotes/SSD1306.zip dans le dossier du projet

Installer le pilote

$ cd ssd1306/ $ sudo python setup.py install

Confirmez que votre appareil s'enregistre, généralement c'est \0x3c sur le bus i2c

$ sudo i2cdetect -y 1

0 1 2 3 4 5 6 7 8 9 abcdef 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- - - -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- - - -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- 3c -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- Exécutez la démo pour confirmer que votre écran est en ordre de marche

$ exemples de cd/ $ python demo.py

Étape 3: Fournitures nécessaires

Fournitures nécessaires
Fournitures nécessaires
Fournitures nécessaires
Fournitures nécessaires
Fournitures nécessaires
Fournitures nécessaires
Fournitures nécessaires
Fournitures nécessaires

RaspberriPi Zero

Capteur de température-humidité DHT22

0.96 I2C IIC SPI série 12864 OLED LCD LED Module d'affichage blanc

Série 2.4 400x240 16:9: écran tactile TFT UART/I2C/SPI

Étape 4: câbler l'appareil

Câbler l'appareil
Câbler l'appareil
Câbler l'appareil
Câbler l'appareil

Affichage SSD1306

GND -> GND

DONNÉES -> SDA

CLK -> SCL

VCC -> 3V

Affichage Digole

GND -> GND

DONNÉES -> SDA

CLK -> SCL

VCC -> 3V

Hygrostat DHT22

VCC -> 5V

GND -> GND

DONNÉES -> GPIO 18 / PIN 12

Étape 5: Construire l'appareil

Construire l'appareil
Construire l'appareil
Construire l'appareil
Construire l'appareil

Découpez du plexiglas pour adapter l'avant de l'appareil sous le cadre imprimé en 3D

Montez le verre avec des vis à travers le cadre imprimé en 3D

Étape 6: Construire l'appareil (suite…)

Construire l'appareil (suite…)
Construire l'appareil (suite…)
Construire l'appareil (suite…)
Construire l'appareil (suite…)
Construire l'appareil (suite…)
Construire l'appareil (suite…)

Composants collés à chaud contre le panneau avant

Unité de fil à l'intérieur

Montez le dos et il devrait être prêt à partir

Étape 7: Configurez l'application pour qu'elle s'exécute correctement dans le fichier de configuration Settings.py

Trouvez le fichier settings.py et ajustez-vous à vos paramètres actuels

# Clé API Forecast.io pour les informations météorologiques locales

weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'VOTRE CLÉ API POUR FORECAST. IO'

# facultatif pour exécuter l'enregistreur de température/humidité à distance

deviceLoggerAPI = 'mydevicelogger.com'

# recherchez sur Google pour obtenir la latitude/longitude de votre domicile

latitude = 41.4552578

longitude = -72.1665444

Étape 8: Configurer les scripts programmés

$ crontab -e

Ajoutez les lignes suivantes: */7 * * * * python /home/pi/AtticTemp/displays.py

FACULTATIF: Enregistreur temporaire vers le script API toutes les 10 minutes

$ crontab -e

Ajoutez les lignes suivantes: */10 * * * * python /home/pi/EnvironmentClock/temp-check.py

Étape 9: FACULTATIF: créer vos propres images météorologiques à afficher sur l'écran

Téléchargez votre propre fichier 128x128 à l'URL suivante:

www.digole.com/tools/PicturetoC_Hex_converter.php

Choisissez votre fichier image à télécharger, ajoutez la taille que vous voulez qu'il soit à l'écran (Largeur/Hauteur)

Sélectionnez "256 couleurs pour la couleur OLED/LCD (1 octet/pixel)" dans la liste déroulante "Utilisé pour"

Obtenez la sortie hexadécimale

Ajoutez la sortie hexadécimale à un fichier display/build/header (.h), utilisez les autres comme guides pour la syntaxe.

Incluez le nouveau fichier dans le fichier digole.c #include monimage.h

Incluez un nouveau hook de ligne de commande dans votre fichier image dans le fichier. Remarque: la commande ci-dessous indique de dessiner votre image à une position de 10 pixels sur 10 pixels vers le bas. Vous pouvez le changer en différentes coordonnées X, Y, vous pouvez également changer les valeurs 128, 128 quelle que soit la taille de votre nouvelle image.

} else if (strcmp(digoleCommand, "myimage") == 0) { drawBitmap256(10, 10, 128, 128, &myimageVariableHere, 0); // myimageVariableHere est défini dans votre fichier (.h) }

Reconstruisez maintenant (ignorez les erreurs) ci-dessous pour que votre nouvelle image soit rendue avec la commande suivante.

$./digole monimage

Reconstruction du pilote d'affichage Digole [Inclus] pour vos modifications facultatives

$ cd afficher/construire

$ gcc digole.c

$ mv a.out../../digole

$ chmod +x../../digole

Conseillé: