Inhaltsverzeichnis:

AtticTemp - Temperatur- / Klimalogger - Gunook
AtticTemp - Temperatur- / Klimalogger - Gunook

Video: AtticTemp - Temperatur- / Klimalogger - Gunook

Video: AtticTemp - Temperatur- / Klimalogger - Gunook
Video: Attic Insulation and Ventilation 2024, Juli
Anonim
AtticTemp - Temperatur- / Klimalogger
AtticTemp - Temperatur- / Klimalogger

Temperaturmesser und Klimalogger mit hoher Toleranz für Ihren Dachboden oder andere Außenkonstruktionen

Schritt 1: Flashen der RaspberriPi-Festplatte / Installieren der erforderlichen Software (unter Verwendung von Ubuntu Linux)

Download "RASPBIAN JESSIE LITE"

Erstellen Sie Ihre neue Festplatte für DashboardPI

Legen Sie die microSD über einen USB-Adapter in Ihren Computer ein und erstellen Sie das Disk-Image mit dem Befehl dd

Suchen Sie Ihre eingelegte microSD-Karte über den Befehl df -h, unmounten Sie sie und erstellen Sie das Disk-Image mit dem Befehl disk copy dd

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

$ umount /dev/sdb1

Achtung: Stellen Sie sicher, dass der Befehl absolut korrekt ist, Sie können mit diesem Befehl andere Festplatten beschädigen

if=Speicherort der RASPBIAN JESSIE LITE-Bilddatei of=Speicherort Ihrer microSD-Karte

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (Hinweis: in diesem Fall ist es /dev/sdb, /dev/sdb1 war eine vorhandene Werkspartition auf dem microSD)

Einrichten Ihres RaspberriPi

Legen Sie Ihre neue microSD-Karte in das Raspberrypi ein und schalten Sie es mit einem Monitor ein, der an den HDMI-Anschluss angeschlossen ist

Anmeldung

Benutzer: Pi-Pass: Himbeere

Ändern Sie aus Sicherheitsgründen Ihr Kontopasswort

sudo passwd pi

Aktivieren Sie die erweiterten RaspberriPi-Optionen

sudo raspi-config

Wählen Sie: 1 Dateisystem erweitern

9 Erweiterte Optionen

A2 Hostname ändern Sie ihn in "AtticTemp"

A4 SSH SSH-Server aktivieren

A7 I2C i2c-Schnittstelle aktivieren

Aktivieren Sie die englische/US-Tastatur

sudo nano /etc/default/tastatur

Ändern Sie die folgende Zeile: XKBLAYOUT="us"

Starten Sie PI neu, damit Änderungen am Tastaturlayout/Größe des Dateisystems wirksam werden

$ sudo shutdown -r now

Automatische Verbindung zu Ihrem WLAN

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Fügen Sie die folgenden Zeilen hinzu, damit sich Ihr Himbeerpi automatisch mit Ihrem Heim-WLAN verbindet (wenn Ihr drahtloses Netzwerk im folgenden Beispiel beispielsweise "linksys" heißt)

network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Starten Sie PI neu, um eine Verbindung zum WLAN-Netzwerk herzustellen

$ sudo shutdown -r now

Nachdem sich Ihr PI nun endlich im lokalen Netzwerk befindet, können Sie sich per SSH remote bei ihm anmelden. Aber zuerst müssen Sie die IP-Adresse abrufen, die es derzeit hat.

$ ifconfig Suchen Sie in der Ausgabe des folgenden Befehls nach "inet addr: 192.168. XXX. XXX" für die IP-Adresse Ihres PI

Gehen Sie zu einem anderen Computer und melden Sie sich über ssh. an Ihrem Raspberrypi an

$ ssh [email protected]. XXX. XXX

Beginnen Sie mit der Installation der erforderlichen Pakete

$ 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

Lokale Zeitzoneneinstellungen aktualisieren

$ sudo dpkg-reconfigure tzdata

Wählen Sie Ihre Zeitzone über die Benutzeroberfläche aus

Richten Sie den einfachen Befehl für das Verzeichnis l ein [optional]

$ vi ~/.bashrc

füge die folgende Zeile hinzu:

$ alias l='ls -lh'

$ source ~/.bashrc

Hervorhebung der VIM-Standardsyntax behoben [optional]

$ sudo vi /etc/vim/vimrc

Entkommentieren Sie die folgende Zeile:

Syntax an

Schritt 2: Projekt klonen / Softwaretreiber installieren

Projekt-Repository klonen

$ cd ~

$ git-Klon

DHT22-Installation

$ cd ~

$git-Klon

$ cd Adafruit_Python_DHT/

$ sudo python setup.py install

$ sudo python ez_setup.py

$ cd-Beispiele/

$ vi simpletest.py

Ändern Sie die folgende Zeile:

Sensor = Adafruit_DHT. DHT22

Kommentiere die Zeile aus

Stift = 'P8_11'

Entkommentieren Sie die Zeile und ändern Sie die PIN-Nummer auf 16

Stift = 18

Führen Sie den Test durch

python simpletest.py

In der Befehlszeile sollte ein Messwert von Temp und Luftfeuchtigkeit angezeigt werden.

SSD1306 installieren

Entpacken Sie driver/SSD1306.zip in den Projektordner

Installieren Sie den Treiber

$ cd ssd1306/ $ sudo python setup.py install

Bestätigen Sie, dass sich Ihr Gerät registriert, normalerweise ist es \0x3c auf dem i2c-Bus

$ sudo i2cdetect -y 1

0 1 2 3 4 5 6 7 8 9 abcdef 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- - -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- - - -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- 3c -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- Führen Sie die Demo aus, um zu bestätigen, dass Ihr Display in Ordnung ist

$ cd Beispiele/ $ python demo.py

Schritt 3: Benötigtes Zubehör

Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht

RaspberryPi Zero

DHT22 Temperatur-Feuchtigkeitssensor

0,96 I2C IIC SPI Serial 12864 OLED LCD LED Weiß-Anzeigemodul

2,4 400x240 16:9 Seriell:UART/I2C/SPI TFT-Touchscreen-Display

Schritt 4: Verdrahten Sie das Gerät

Verdrahten Sie das Gerät
Verdrahten Sie das Gerät
Verdrahten Sie das Gerät
Verdrahten Sie das Gerät

SSD1306-Anzeige

GND -> GND

DATEN -> SDA

CLK -> SCL

VCC -> 3V

Digile-Anzeige

GND -> GND

DATEN -> SDA

CLK -> SCL

VCC -> 3V

DHT22 Feuchtigkeitsregler

VCC -> 5V

GND -> GND

DATEN -> GPIO 18 / PIN 12

Schritt 5: Erstellen Sie das Gerät

Baue das Gerät
Baue das Gerät
Baue das Gerät
Baue das Gerät

Schneiden Sie Plexiglas so zu, dass die Vorderseite des Geräts unter den 3D-gedruckten Rahmen passt

Montieren Sie das Glas mit Schrauben durch den 3D-gedruckten Rahmen

Schritt 6: Bauen Sie das Gerät (Forts.)

Bauen Sie das Gerät (Forts.)
Bauen Sie das Gerät (Forts.)
Bauen Sie das Gerät (Forts.)
Bauen Sie das Gerät (Forts.)
Bauen Sie das Gerät (Forts.)
Bauen Sie das Gerät (Forts.)

Heißklebekomponenten gegen die Frontplatte

Drahteinheit im Inneren

Montieren Sie die Rückseite und es sollte fahrbereit sein

Schritt 7: Konfigurieren Sie die Anwendung so, dass sie in der Konfigurationsdatei Settings.py korrekt ausgeführt wird

Suchen Sie die Datei settings.py und passen Sie sie an Ihre aktuellen Einstellungen an

# Forecast.io API-Schlüssel für lokale Wetterinformationen

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

weatherAPIKey = 'IHR API-SCHLÜSSEL FÜR FORECAST. IO'

# optional für den Betrieb des externen Temperatur-/Feuchtigkeitsloggers

deviceLoggerAPI = 'mydevicelogger.com'

# Google durchsuchen, um den Breiten-/Längengrad für Ihren Heimatort zu erhalten

Breitengrad = 41.4552578

Längengrad = -72.1665444

Schritt 8: Geplante Skripte einrichten

$ crontab -e

Fügen Sie die folgenden Zeilen hinzu: */7 * * * * python /home/pi/AtticTemp/displays.py

OPTIONAL: Temp Logger zu API-Skript alle 10 Minuten

$ crontab -e

Fügen Sie die folgenden Zeilen hinzu: */10 * * * * python /home/pi/EnvironmentClock/temp-check.py

Schritt 9: OPTIONAL: Erstellen eigener Wetterbilder zum Rendern auf dem Display

Laden Sie Ihre eigene 128x128-Datei unter die folgende URL hoch:

www.digole.com/tools/PicturetoC_Hex_converter.php

Wählen Sie Ihre Bilddatei zum Hochladen aus, fügen Sie die gewünschte Größe auf dem Bildschirm hinzu (Breite/Höhe)

Wählen Sie "256 Farbe für Farb-OLED/LCD (1 Byte/Pixel)" in der Dropdown-Liste "Verwendet für" aus

Rufen Sie die Hex-Ausgabe ab

Fügen Sie die Hex-Ausgabe zu einer Display/Build/Header-Datei (.h) hinzu, verwenden Sie die anderen als Richtlinien für die Syntax.

Fügen Sie die neue Datei in die Datei digole.c ein #include myimage.h

Fügen Sie einen neuen Befehlszeilen-Hook in Ihre Bilddatei ein. Hinweis: Der folgende Befehl besagt, dass Sie Ihr Bild an der Position 10 Pixel über 10 Pixel nach unten zeichnen. Sie können es in andere X-, Y-Koordinaten ändern, Sie können auch die Werte 128, 128 auf die Größe Ihres neuen Bildes ändern.

aufrechtzuerhalten. Sonst if (strcmp(digoleCommand, "myimage") == 0) { drawBitmap256(10, 10, 128, 128, &myimageVariableHere, 0); // myimageVariableHere ist in Ihrer (.h) Datei definiert }

Erstellen Sie nun die folgenden Fehler neu (ignorieren Sie die Fehler), damit Ihr neues Bild mit dem folgenden Befehl gerendert wird.

$./digole myimage

Neuerstellung des [Enthaltenen] Digile-Anzeigetreibers für Ihre optionalen Änderungen

$ CD-Anzeige/Build

$ gcc digole.c

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

$ chmod +x../../digole