Projekt Raspberry PI rev. B als Temparaturlogger für 32 oder mehr Sensoren und Webserver

Es gibt 77 Antworten in diesem Thema, welches 78.310 mal aufgerufen wurde. Der letzte Beitrag () ist von Exot.

  • Hallo,


    noch ein paar nützliche Sachen:


    Wer mit dem Raspi mehr Speicherplatz für Daten braucht, kommt um eine externe USB Festplatte nicht drumherum.
    Die USB Festplatte muss eine eigene Stromversorgung haben, oder über einen USB Hub mit eigener Stromversorgung angeschlossen werden.
    Die Spannung über den Raspi zu beziehen ist nicht ratsam und kann zu den verschiedesten Problemen führen.


    Im Normalfall hat die erste USB Festplatte die Bezeichnung sda und Partitionen sda1, sda2 usw.
    Als erstes sollte die Platte eingerichtet werden, ACHTUNG alle Daten auf dieser Festplatte werden gelöscht!!!!!
    Ich habe 2 Partitionen eingerichtet, eine Swap(2GB)- und eine Nutzpartition (rest).
    Festplatte partitionieren
    sudo cfdisk
    Danach muss die Festplatte noch formatiert werden, dies mit ext4 Filesystem Partition 2.
    mkfs.ext4 /dev/sda2
    Jetzt muss die Platte noch "eingehängt" werden.
    Dazu einen "Mountpoint" angeben, also ein Verzeichnis wo die Platte zu finden ist.
    Üblich ist das Verzeichnis /media
    Ein Verzeichnis unter /media anlegen
    sudo mkdir /media/usbplatte
    und jetzt die Platte/Partition unter /media/usbplatte verfügbar machen
    mount /dev/sda2 /media/usbplatte
    Jetzt ist die Festplatte bis zum nächsten booten verfügbar
    Mit Einstellungen in der fstab machen wir die Platte jetzt auch nach einem Neustart des PI automatisch verfügbar.
    sudo nano /etc/fstab
    /dev/sda2 /media/usbplatte ext4 rw 0 0
    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen


    Jetzt, wo wir genug Speicherplatz haben, können wir auch unsere MySQL Datenbank teilweise auf die USB Festplatte auslagern.
    Zuerst MySQL stoppen
    sudo /etc/init.d/mysql stop
    Nun das MySQL Verzeichnis mit den Datenbanken auf die externe Platee kopieren, auch die Berechtigungen müssen kopiert werden, deshalb wird cpio verwendet.
    cd /var/lib
    sudo find mysql | sudo cpio -pdmv /media/usbplatte
    Wir müssen MySQL noch mitteilen, das wir ein neues Datenbankverzeichnis haben.
    sudo nano /etc/mysql/my.cnf
    Hier die Zeile -> datadir suchen und das vorhandene Verzeichnis /var/lib/mysql ersetzen durch
    /media/usbplatte/mysql
    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    MySQL Datenbank wieder starten
    sudo /etc/init.d/mysql start
    Ab jetzt werden alle neu angelegten Datenbanken auf die USB Festplatte geschrieben.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    jetzt nach längerer Pause, werde ich mich wieder meinem Projekt widmen.


    Was mir beim Raspberry PI gefehlt hat, war die Möglichkeit analoge Sensoren anzuschliessen. Dafür habe ich jetzt die Lösung gefunden.


    Von der Firma AB Electronics in Großbritanien gibt es ein 8 Kanal Analog Modul, dass Spannungen von 0V - 5V in ein digitales Signal wandeln kann, und das mit einer brauchbaren Auflösung von bis zu 17 Bit.


    Da habe ich mir für umgerechnet 62€ inkl. Versand 2 Module bestellt. Die Module waren innerbalb einer Woche da.


    Hier mal ein paar Bilder hierzu:


    Das Modul:




    Der Raspberry PI Model B:


    https://www.holzheizer-forum.d…Raspi-PI-B-mit-ADC-Modul/


    Hier mit dem ADC Modul:



    Die Belegung des GPIO Pins der Raspberry PI Modell B:



    Raspberry PI B mit Hutschienensystem (das ADC Modul passt gut mit hinein):


    https://www.holzheizer-forum.de/gallery/index.php/Image/291-Raspi-PI-B-im-Hutschienengehäuse/



    Somit ist es Möglich mit dem Raspi PI eine Komplettlösung als Heizungssteuerung ohne zusätzliche Steuermodule zu nutzen. Ebenfalls gibt es Relaisplatinen (8 Relais Karte ca. 10€) zu Kaufen, um Ventile und Pumpen zu steuern. Für die Digitalen Sensoren gibt es auch 1-Wire Aufsteckmodule oder 1-Wire USB Module. Ebenfalls ist es möglich den Raspberry als Impulszähler für Volumenstromgeber zu nutzen (PI als Volkszähler suchen).


    Alles in allem kann man für rund 150€ eine völlig frei programmierbare Steuerung zu bauen. Aber es gibt auch einen großen Nachteil. Die Programmierung muss in einer "Hochsprache" wie C, C++, oder Python erfolgen. dafür gibt es aber auch unzählige Anleitungen dafür im Internet.


    Zur Einrichtung später mehr.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    dieser Raspberry soll uns die ganzen Heizungsdaten zur Verfügung stellen und die erfassten Messwerte in eine externe MySQL Datenbank jede Minute eintragen:
    Eine Steuerung der Pumpen erfolgt durch einen eigenen Auswerterechner. Somit entfällt hier die Ansteuerung der Relais.
    Die benötigte Hardware:


    - 1x Raspberry PI B mit 512 MB RAM, 8 GB SD Karte, Netzteil mit mind. 5V/2A
    - 1x ADC PI Modul für 8 analoge Messstellen 0V - 5V
    - 2x 1-Wire USB Module für die digitalen 1-Wire Temperatursensoren DS18B20
    - 1x Gehäuse für den PI hier ein Hutschienengehäuse


    Vorbereiten des PI:


    - PI mit dem heimischen Netzwerk verbinden.
    - Module am PI anbringen
    - Mit dem Win32DiskImager (weiter vorn beschrieben) bringen wir das Linux Betriebssystem auf die SD Karte
    - SD Karte in den PI stecken und den PI an die Stromversorgung anschließen.
    - Der PI fährt nun hoch, zu sehen, an den blinkenden LEDs. Bleibt nur die rote LED an, stimmt was mit der SD Karte nicht.


    Wir haben keinen Monitor an den PI angeschlossen! Wie finde ich nun den PI im Heimnetzwerk, und wie kann ich diesen Einstellen?


    - Dafür muss ein freier DHCP Zugang für das Netzwerk (meist im Router) vorhanden sein. Wenn nicht, geht es nur wie weiter vorn beschrieben.
    - Wir laden das Tool IPScan.exe aus den Internet herunter (Google Suche bemühen)
    - Nun scannen wir damit unser Netzwerk in dem wir den IP Bereich oben wo die Nullen stehen durch unsere IP Adressbereich ersetzen. Bsp: 192.168.178.1 bis 192.168.178.254. Bei dem meisten Routern ist der DHCP Bereich zwischen 100 und 199 (letzte Zahl der IP Adresse) zu finden. Dort den Raspberry ausfindig machen. Ist vieleicht nicht einfach für den unerfahrenen Anwender, aber eine schöne Möglichkeit ohne Maus und Tastatur den PI einzustellen.
    - Wenn wir den PI gefunden haben können wir mit Putty und der IP Adresse nun auf den Raspi zugreifen.
    - Die Zugangsdaten sind: User -> pi <- und das Passwort -> raspberry <-


    Ich gehe nun davon aus, das wir eine Verbindung mit Putty zum PI haben, und die Grundeinstellungen vornehmen:


    Achtung!!! Alle eingaben von Ziffern und Sonderzeichen nur über die normale PC Tastatur vornehmen, nicht den Zahlenblock benutzen!


    sudo raspi-config eingeben
    Die Grundkonfigurationsmaske erscheint.
    Alle Einstellungen vornehmen:
    - 1 Expand Filesystem
    - 2 Passwort des User PI ändern (wenn gewünscht, aber empfehlenswert)
    - 3 Hier wird eingestellt, ob die grafische Benutzeroberfläche beim starten des PI geladen werden soll, brauchen wir nicht, also -> No <-
    - 4 -> I1 und I2 einstellen. I1 -> de_DE.UTF-8 UTF-8 mit der Leertaste auswählen, OK, dann noch als Default auswählen (wichtig für die Datenbank!). Nun I2 -> Europa und dann Berlin auswählen
    - Punkte 5-7 werden nicht benötig
    - 8 A2, A4 und A7 -> A2 Hostname -> Hier gebe ich dem PI einen eigenen Namen, bei mir ist es -> Logger1 <-. A4 für den Zugriff auf den PI mit SSH (auch FTP) muss dies eingeschaltet sein. A7 alles -> Ja <-, um den I2C Kernel zu laden
    - Die Grundkonfiguration ist nun abgeschlossen, den PI neu starten.


    Jetzt geben wir dem PI eine feste IP Adresse und bringen diesen auf den aktuellen Softwarstand:


    Einloggen mit der oben ermittelten IP Adresse und Putty
    sudo nano /etc/network/interfaces
    iface eth0 inet dhcp -> ersetzen durch -> iface eth0 inet static
    hinzufügen:
    address 192.168.178.33 <- Deine IP Adresse für den PI (diese darf im Heimnetzwerk noch nicht vergeben sein!)
    netmask 255.255.255.0
    gateway 192.168.178.1
    <- Deine Router Adresse
    Den PI neu starten
    sudo reboot
    Den PI auf den neusten Stand bringen:
    sudo apt-get update -> Update der ganzen installierbaren Softwarepakete
    sudo apt-get upgrade -> Update der Firmware
    Den PI neu starten
    sudo reboot


    Nun richten wir die restliche benötigten treiber und die Software ein:
    FTP Zugriff einrichten:
    sudo apt-get install proftpd
    Abfrage mit Y/J beantworten
    Im jetzt geöffneten Fenster -> Servermodus <- wählen und dann OK
    Virtuellen User einrichten
    sudo nano /etc/proftpd/proftpd.conf
    Am Ende der Datei folgendes einfügen:
    DefaultRoot ~
    AuthOrder mod_auth_file.c mod_auth_unix.c
    AuthUserFile /etc/proftpd/ftpd.passwd
    AuthPAM off
    RequireValidShell off

    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    cd /etc/proftpd/
    sudo ftpasswd --passwd --name raspiftp --uid 1000 --gid 1000 --home /home/pi --shell /bin/false
    Jetzt das Passwort vergeben
    Jetzt kann man mit dem User raspiftp mit einem FTP-Client auf den Raspi zugreifen
    Braucht man Root-Rechte für FTP, muss dem User Root des PI ein Passwort zugewiesen werden (wir brauchen Root Rechte):
    sudo su
    passwd

    Jetzt kann mit dem FTP Programm mit Root-Rechten per SFTP/SSH zugegriffen werden.


    Für die digitalen 1-Wire Sensoren Installieren wir Digitemp, eine geniale Software dafür.
    sudo apt-get install digitemp
    Damit nicht immer Sudo aufgerufen werden muss, den User PI zur tty Gruppe hinzufügen
    sudo usermod -G tty pi <- nur bis zum Neustart, dann muss wieder sudo davor
    Da wir hier 2 1-Wire USB Module verwenden, und diese beim neustart des Raspi nicht immer dem selben USB Port zugewiesen werden, müssen wir in eine Trickkiste greifen, und den beiden Modulen einen Namen geben.
    Dies machen wir mit den Linux UDEV Regeln.
    ls -l /dev/ttyUSB* <- welche USB Ports sind belegt


    dann sollte als Ausgabe sowas kommen..


    Zitat

    pi@Logger1 ~ $ ls -l /dev/ttyUSB*
    crw-rw---T 1 root dialout 188, 0 Feb 15 08:14 /dev/ttyUSB0
    crw-rw---T 1 root dialout 188, 1 Feb 15 08:13 /dev/ttyUSB1
    pi@Logger1 ~ $


    dann gebt Ihr ein :


    udevadm info -n /dev/ttyUSB0 -a
    in folgender Ausgabe sucht ihr nach der:
    ATTRS{serial}=="DAE0011v" <- DAE0011v ist die Seriennummer des 1-Wire Modul an USB0


    Für jedes weitere 1-Wire USB Modul wiederholen:
    udevadm info -n /dev/ttyUSB1 -a
    ATTRS{serial}=="DAE0011t"
    Die Seriennummern notieren!


    Jetzt tragen wir die Reglen ein:
    cd /etc/udev/rules.d
    sudo nano 10-1wire.rules
    In dieser Datei schreibt Ihr jetzt folgendes:
    SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", ATTRS{serial}=="DAE0011v", SYMLINK+="usb1wire01"
    SUBSYSTEMS=="usb", KERNEL=="ttyUSB*", ATTRS{serial}=="DAE0011t", SYMLINK+="usb1wire02"

    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    PI neu starten.
    sudo reboot


    Es kann nun kontrolliert werden, ob die Regeln funktionieren:
    cd /dev
    ls

    und nun sollten die usb1wire01 und usb1wire02 angezeigt werden, die Module haben den Namen erhalten (nennt man Alias Namen)

    digitemp.conf Dateien erzeugen (je 1-Wire USB eine eigene Datei) Ablage in /home/pi
    sudo digitemp_DS9097U -i -s /dev/usb1wire01 -c /home/pi/digitemp0.conf
    sudo digitemp_DS9097U -i -s /dev/usb1wire02 -c /home/pi/digitemp1.conf

    Damit wir nicht unnötig Text bei den Abfragen der Sensoren ausgegeben wird bearbeite ich die digitemp0.conf dateien.
    Damit bei der Ausgabe nur der Temperaturwert in °C angezeigt wird, bearbeiten wir noch die digitemp0.conf und digitemp1.conf
    sudo nano /home/pi/digitemp0.conf
    und ändern die Zeile ->
    LOG_FORMAT "%b %d %H:%M:%S Sensor %s C: %.2C F: %.2F" in -> LOG_FORMAT "%.2C"
    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    sudo nano /home/pi/digitemp1.conf
    und ändern die Zeile ->
    LOG_FORMAT "%b %d %H:%M:%S Sensor %s C: %.2C F: %.2F" in -> LOG_FORMAT "%.2C"
    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    Damit haben wir schon mal die Digitalen Sensoren fertig für die Abfrage.


    Jetzt zum ADC PI Modul für die analogen Sensoren:
    Das analog Modul wurde die Kanäle 1-4 = I2C Addresse: 0x68 und Kanäle 5-8 = I2C Addresse: 0x69 (Auslieferungszustand) belassen.
    Hier brauchen wir für die jeweilige Programmiersprache eine Bibliothek, wir verwenden Python, die Standartsprache des PI.
    sudo apt-get install python-rpi.gpio <- ist eventuell schon installiert
    und für den MySQL Datenbankzugriff noch:
    sudo apt-get install python-mysqldb


    Das war es erst mal mit der Einrichtung des PI


    Als nächstes beschäftigen wir uns mit dem Testen der Mudule und Sensoren.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    und weiter gehts.


    Hier folgen noch weitere Grundeinstellungen zum Betreiben des ADC Pi Moduls am I2C Bus nötig sind:


    sudo apt-get install i2c-tools -> I2C-Toolkit fuer die Kommandozeile
    sudo apt-get install python-smbus -> Python-Bibliothek fuer I2C
    sudo nano /etc/modprobe.d/raspi-blacklist.conf
    folgendes so eintragen / ändern:
    # blacklist spi and i2c by default (many users don't need them)
    # blacklist spi-bcm2708
    # blacklist i2c-bcm2708

    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    Damit die Module beim Neuszart des PI wieder mit geladen werden:
    sudo nano /etc/modules
    Ergänzen mit -> i2c-dev
    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    Die Module werden geladen mit:.
    sudo modprobe i2c-bcm2708
    sudo modprobe i2c_dev

    Dies können wir mal testen:
    lsmod
    Die Ausgabe könnte so aussehen, wichtig sind die beiden rot markierten Module für uns:


    und
    ls -l /dev/i2c*
    Sollte folgende Ausgabe erzeugen:

    Zitat

    crw-rw---T 1 root i2c 89, 1 Apr 7 14:05 /dev/i2c-1


    Mit -> adduser pi i2c
    geben wir dem User PI nun die Rechte ohne "sudo" auf den I2C Bus zuzugreifen.


    Weiter geht es jetzt, da alle Grundeinstellungen für die Module des Raspi vorgenommen wurden mit der Programmierung in Python.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    nun zur Python Programmierung:


    Python ist eine "Zicke" in bezug auf Übersichtlichkeit!
    Blöcke müssen strickt eingerück werden, sonst hagelt es Fehlermeldungen. Also bitte peniebelst darauf achten.


    Für das ADC Pi Modul stellt uns die Fa. AB Electronic 2 Klassen in Python zu Verfügung:
    ABE_ADCPi.py und ABE_helpers.py
    Diese 3 Dateien, die HIER zu finden sind legen wir beim Pi in das Verzeichis /home/pi


    Hier der Quellcode der ABE_ADCPi.py (Groß Kleinschreibung beachten!):



    Hier seht Ihr es was ich mit den Einrückungen oben gemeint habe.


    Fortsetzung .....

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • .... Fortsetzung


    Jetzt noch die ABE_helpers.py:



    Und jetzt noch ein Testprogramm für das ADC Pi Modul adctest.py:



    Auch dieses Programm in das /home/pi Verzeichnis legen.


    Mit python adctest.py das Testprogramm aufrufen.


    Die Ausgabe (abbrechen mit STRG-C:(



    So, das war es erst mal, in Kürze, wenn meine Datenbank auf meinem Homeserver läuft mehr.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    hier noch das Programm um die Daten von den 1Wire Modulen und dem Analog Modul auszulesen und auf der Standartausgabe (hier der Putty Bildschirm) auszugeben.



    Die Ausgabe:


    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    und weiter geht es.


    Nachdem mir jetzt schon einige SD-Karten kaputt gegangen sind, habe ich mir andere von Intenso bestellt, die sind nicht ganz so anfällig. Die Karten gehen kaputt, oder es entsthen defekte Dateien, wenn der Raspberry während eines Schreibvorganges vom Strom getrennt wird. Ich scheine da immer genau den richtigen Moment erwischt zu haben ;( .
    Dadurch empfehle ich auf jeden Fall eine USV für den Raspi einzuplanen. Jedes mal musste ich den PI neu aufsetzen. Dies umgehe ich jetzt, in dem ich einen USB Stick an den PI anschliesse, und die Software soweit es geht auf den Stick auslagere. Das hat auch Vorteile:
    - wird die SD Karte zerstört, braucht es nur eine minimale Grundinstallation, die Daten sind ja auf dem Stick
    - der Stick kann ein Mehrfaches an Schreibzyklen verarbeiten, als eine SD Karte
    - gute USB Sticks sind schneller als SD Karten


    Das ganze hat mich ziemlich Zeit gekostet, dass richtige Vorgehen aus dem Internet rauszufiltern.


    Hier beschreibe ich, wie der Raspberry mit dem USB Stick betrieben wird.


    Mit dem Win32DiskImager.exe das Image auf die SD Karte und den USB Stick aufspielen.
    Jetzt erst mal die SD Karte in den PI stecken, Stromversorgung anschliessen, und wie oben beschrieben mit IPScan den Raspi ausfindig machen, und mit Putty verbinden.
    Mit raspi-config mind. die Punkte 1 und 3 ausführen. Bei 3 das 2te auswählen. Raspi noch nicht neu starten.
    Folgende Pakete installieren:
    sudo apt-get install gparted
    sudo apt-get install tightvncserver
    YES oder Ja zum fortsetzen
    vncserver :1 -> eingeben
    VNC Passwort setzen
    Bei "view-only password" No/Nein
    cd /home/pi
    cd .config
    mkdir autostart
    cd autostart
    sudo nano tightvnc.desktop

    Folgende 5 Zeilen in den Editor eingeben:
    [Desktop Entry]
    Type=Application
    Name=TightVNC
    Exec=vncserver :1
    StartupNotify=false

    mit STRG + O Änderungen speichern, nächste Abfrage Enter und mit STRG + X Nano verlassen
    Jetzt den USB Stick anstecken und den PI neu starten
    sudo reboot
    Mit VNC nun auf den PI einloggen.
    Ihr seht nun den PI Desktop
    Dort öffnet Ihr ein Terminal
    In diesem Terminal gksudo gparted eingeben und ganz rechts (Pfeil nach unten) den USB Stick auswählen -> /dev/sda
    Jetzt werden die Partitionen vom Stick angezeigt.
    Für uns wichtig ist nur die /dev/sda2. Ist ein Schlüssel zu sehen, mit der rechten Maustaste auf /dev/sda2 klicken und "Aushängen" wählen. Der Schlüssel sollte nun weg sein.
    Wenn der Schlüssel nicht zu sehen ist mit der rechen Maustaste auf /dev/sda2 klicken und "Größe ändern/Verschieben" wählen.
    In dem Fenster dann die Partition vergrössern, normal den ganzen freien Platz nehmen. Auf "Größe ändern/Verschieben" klicken und dann auf "Ausführen". Je nach Größe des Stick dauert es ein paar Minuten.
    Nun alle Fenster schliessen.
    Den Raspi vom Strom trennen.
    Nun brauchen wir einen Editor für unseren PC, nicht den Windowseigenen nehmen, damit können keine Linuxdateien verändert werden. Kostenlos ist für den PC Notepad+ zu Empfehlen.
    Nun die SD Karte in den PC stecken und öffnen mit dem Notepad+ die Datei "cmdline.txt".
    Es wird nun root=/dev/mmcblk0p2 ersetzt durch root=/dev/sda2 und speichern unsere Änderung.
    Das gleiche machen wir mit dem USB Stick.
    Den Stick und auch die SD Karte wieder in den Raspberry stecken und den PI an die Stromversorgung anschliessen.
    War alles OK, startet der Raspi nun von der SD, und nach dem Start übernimmt der Stick die Arbeit.
    Die SD Karte wir somit nur noch zum Booten verwendet.
    Jetzt können die Einstellungen und Einrichtungen am PI fortgesetzt werden.
    Die zuvor gemachten Einstellungen und installierte Pake sind nicht mehr verfügbar und müssen neu aufgespielt werden (gparted und vnc) . Bei raspi-config nicht mehr den Punkt 1 ausführen!

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    jetzt, kurz vor der Fertigstellung meines Raspberry Projektes noch mal einen Zwischenstand.


    Inzwischen habe ich mir einen NAS Home Server von QNAP angeschaft. Der Vorteil eines Home Servers, ist der große und sichere Speicherplatz und das ich dort 4 Festplatten einbauen kann (habe ich auch gemacht). Die 4 Festplatten sind in einem RAID 5 Verbund zusammen geschaltet, so kann eine Festplatte kaputt gehen, und das NAS läuft ohne Datenverlust trotzdem weiter. Die defekte Festplatte wird dann einfach durch eine neue Festplatte ersetzt, und das NAS baut diese dann wieder auf.
    Das schöne an diesem NAS ist der integrierte MySQL Datenbank Server und der Web Server. Somit brauche ich keinen zusätzlichen Windowsrechner laufen lassen. Die Aufgaben auch für die Heizungssteuerungsdaten übernimmt das NAS.


    Die Heizungssteuerung mit meinem Raspberry in nun fast fertig. Die Grundfunktionen sind erstellt, die Komfortfunktionen müssen teilweise noch erstellt werden. Die Digitalen Sensoren sind angeschlossen, die Analogen nocht nicht. Die Sensoren sind aber noch nicht am Einbauplatz sondern liegen nur im Serverschrank.


    Hier mal ein paar Bilder der Steueroberfläche.






    Im letzten Bild habe ich mal einige Fehler erzeugt.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo,


    damit es nicht bei einem Monolog bleibt, hier mal eine kurze Rückinfo...


    Super Projekt !
    Hast du ein paar Infos zu den eingesetzten Sensoren (außer DS18…) ?


    Tip: Aus Kostengründen tut es sicherlich auch ein NAS (Kauf oder Eigenbau) mit RAID 1 (Zwei Festplatten in Spiegelredundanz).
    Geht's um den Dauereinsatz und Stromsparen bei 24/7, gibt es auch hier alternative Lösungen, die einem "Kauf-NAS" überlegen
    sind….
    ABER: Datensicherheit geht anders. Wenn NAS, dann muss auch ein Backup sein..


    Nichts für Ungut !


    Gruß
    Volker

  • Hallo Volker,


    Danke für die Rückmeldung!


    Die analogen Sensoren sind:


    2x PI1000 mit Messumwandler (Solarkollektor und D20P AGT)
    1x Thermoelement (AGT Kaminofen das die AGT auch über 400°C steigt)
    2x Drucksensor (TA mit analog Ausgang)
    2x Durchflussmesser (TA mit analog Ausgang)
    1x Einfache Spannungsmessung für die Leistungseinstellung der Solarpumpe


    Ein NAS sich nur dafür anzuschaffen wäre herausgeschmissenes Geld. Das NAS ist auch gleichzeitig ein Video und Musik Speicher.


    Zitat

    Geht's um den Dauereinsatz und Stromsparen bei 24/7, gibt es auch hier alternative Lösungen, die einem "Kauf-NAS" überlegen
    sind….


    Welche sollten das sein?


    Zitat

    ABER: Datensicherheit geht anders. Wenn NAS, dann muss auch ein Backup sein..


    Das ist klar! Von den wichtigen Daten macht man zusätzliche Sicherungen.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo Walter,


    falls du zufällig Detaildaten (Bestellnummern) deiner Sensorik zur Hand hast, wäre prima !
    Werkel gerade (aber noch völlig am Anfang) am gleichen Thema.


    Beschäftige mich sehr viel mit "Lösungen" die den Spagat zwischen Stromsparen und
    Leistungsfähig bestmöglich hinbekommen.
    Mein NAS basiert auf dem ITX-Board AsRock Q1900-ITX (nur als ein Beispiel)
    Aber auch hier hat Jeder so seinen eigenen Geschmack/Sichtweise.


    Gruß
    Volker

  • Hallo Volker,


    die Sensoren bietet TA nicht mehr an, Wollen nur noch die DL-Bus Sachen für die UVR verkaufen, der Rest ist denen egal, suche auch schon nach Alternativen.


    Die Durchflusssensoren sind VFS 2-40, die Drucksensoren sind RPS0-6 jeweil mit analogen Signalausgängen. Die anderen Sensorwandler habe ich bei LKM Electronic gekauft.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Hallo Walter,


    vielen Dank !
    Bin leider erst jetzt auf deiner Homepage gelandet.
    Da werden die meisten meiner Fragen beantwortet.
    Denke, werde mich an deiner Lösung "entlang hangeln"


    Gruß
    Volker

  • Manchmal bekommt man die Sensoren auch in der Bucht, neuwertig, die noch jemand rumliegen hat.

    Viele Grüße
    Thomas


    Atmos P14/130 mit A25, Selbstbaupressluftreinigung und Laddomat, 850 l Puffer, Regelung mit UVR 63-H und ESR 21R + DK Flame Domo (Kaminofen) im Wohnzimmer.


    :lager:

  • Also, ersteinmal HALLO, an alle hier ....


    @kanninchen,


    tolle Arbeit, was du hier geleistet hast ... danke
    Ich sitze gerade über der Erfassung meiner Solarthermie - Daten und bin auch auf dem "Raspi - Trip", die Fragen werden ganz bestimmt trotz deiner ausführlichen Anleitung kommen.


    Heiko


    www.hollbrunn-wetter.de


  • Hallo zusammen,
    ich bin neu im Forum und bin gerade dran die Wetterdaten meiner Nexus über eine Raspberry einzulesen. Es klappt alles wunderbar bisher. Nun bin ich an dem Punkt die ausgelesenen Daten in die mySQL Datenbank einzulesen. Habe aber leider bisher kein Scipt gefunden wie man diese Datenbank genau anlegt.
    Kann mir jemand weiterhelfen.


    Lieben Gruß


    Winne

  • Hallo,


    und herzlich Willkommen Winne im Holzheizer Forum.


    MySQL, PHP, und PHPMyAdmin wie weiter vorn beschrieben auf den Raspberry aufspielen. Oder einen externen MySQL Server verwenden. Ohne Festplatte oder grossen USB Stick ist die Aufzeichnung nicht möglich, weil Du Dir die SD Karte schnell kaputt machen würdest. Python und die MySQL Anbindung muss auch installiert sein. Auch weiter vorn beschrieben.


    Bei Linux immer auf die Groß- Kleinschreibung achten!


    Mit PHPMyAdmin eine Datenbank in MySQL Anlegen: zB "Wetter" (in der Beispieldatei ist es heizung)


    Unter der Datenbank Wetter eine Tabelle: zB "Wetterdaten" oder "Umwelt" anlegen (in der Beispieldatei ist es umwelt)
    .
    In dieser Tabelle dann folgende Felder Anlegen:


    Code
    datumzeit, datum, zeit, rtemp, rrelf, rtp, atemp, arelf, atp, ldrucklokal, ldruckabs, prognose, windchill, windtemp, windboee, windkmh, windrichtung, regen


    Jetzt noch den Pythoncode, den Du mit Crontab 1x in der Minute aufrufst:



    db = MySQLdb.connect("localhost", "root", "nexus", "heizung")
    localhost = MySQL läuft auf dem Raspi, an sonsten die IP des MySQLServers
    root = Dein MySQL Benutzer
    nexus = Dein Passwort
    heizung = Deine Datenbank


    sqlinsert = ("INSERT IGNORE INTO `umwelt` (`datumzeit`, .....
    umwelt = Deine Tabelle in Deiner Datenbank


    Und schon sollten die Daten in der Datenbank abgelegt werden.

    LG Walter

    Kaum macht mans richtig, schon funktionierts :)

  • Vielen Dank für die Mühe Walter. Das mit den Feldern anlegen ist mir schon klar, jedoch kenne ich weder die Länge noch den Typen der einzelnen.


    LG


    Winne

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!