Posts by reisefoto

    Ich habe bereits erfolgreich mit partclone gearbeitet.

    Meine Kommandos sahen wie folgt aus:

    Code
    umount /dev/sdd1
    sudo partclone.vfat -c -s /dev/sdd1 -o ./entwicklung-sdd1-partclone.pcl

    und:

    Code
    umount /dev/sdd2
    sudo partclone.ext4 -c -s /dev/sdd2 -o ./entwicklung-sdd2-partclone.pcl

    Wichtig: umount und sudo.

    Sehr hilfreich war dabei die Seite hier

    Es könnte dennoch an der Spannungsversorgung liegen.

    Bei einem eigenen WLAN-Projekt hatte ich auch diverse Instabilitäten mit der WLAN-Verbindung. Hier im Forum habe ich dann den Hinweis gefunden, die Stromlast des Rapis mittels eines USB-Hubs mit eigener Spannungsversorgung, zu entlasten. Das Thema ist hier schon tief greifend behandelt worden, einfach mal die Suche anschmeißen.


    ...Leider wird bei mir keine .dat Datei erstellt ( bzw. falls doch wo sollte diese sein?). Ich hab den Quellcode natürlich an meine Sensoren angepasst, ...


    Hallo helgetnt,

    die .dat-Datei erzeugt das C-Programm, nicht das Bash-Skript. Das Bash-Skript greift auf diese Daten zu und übergibt sie zur Grafikerzeugung an Gnuplot.

    Wenn Du das C-Programm kompiliert hast z. B. mittels

    Code
    gcc -Wall -O3 -o Heiztemp tempsens_12.c


    landen die täglichen .dat-Dateien im selben Verzeichnis wie das lauffähige Programm selber. Bei der o. g. Befehlszeile heißt die Quelldatei tempsens_12.c und das fertige Programm hat dann den Namen Heiztemp. Kompilieren musst Du das Programm natürlich auf dem Rapi.
    Mein Programm rufe ich dann mit

    Code
    ./Heiztemp & disown


    auf. Es läuft dann unabhängig vom Terminal auch nach einer Abmeldung im Hintergrund unermüdlich weiter.

    Vielleicht kannst Du ja noch prüfen, ob es irgendwie Probleme mit den Schreibrechten gibt.

    Ich Hoffe, ich konnte ein wenig zur Klärung beitragen. Bei mir habe ich mittlerweile den ersten Monat (siehe Anhang) komplett durchgehend dokumentiert. Bis auf einen Ausfall des WLAN-Sticks habe ich keinerlei Probleme zu beklagen.

    mfG

    Bei mir läuft mittels & disown ein Shellskript im Dauerbetrieb. Das Skript ist allerdings auch ausführbar und in der Shebang-Zeile steht

    Bash
    #!/bin/bash



    Aufrufen kann ich das Skript dann mit:

    Code
    ./skript & disown

    Es sollte möglich sein, den Python-Interpreter auch in der Shebang anzugeben. Eventuell läuft Dein Pythoncode dann durch.


    Statt der Überprüfung ob die Temperatur zwischen 1 und 100°C liegt, kannst Du eventuell auch den CRC Wert aus der ersten Zeile prüfen. :)
    Wobei Werte außerhalb bei einer Heizung wohl (hoffentlich) nicht vorkommen sollten.. :D

    Stimmt!

    Ich hätte das auch nicht so pragmatisch lösen können. Aber der Mensch ist von Natur aus bequem und ich glaube auch dass dieser Vergleich schneller abgearbeitet wird.

    Eine elegantere Lösung hätte natürlich den Vorteil, dass auch die Fehler zwischen 1 und 100 Grad eliminiert würden.

    Trotzdem vielen Dank für den Hinweis, vielleicht wird's ja nochmal was.


    @ punk:

    Es spricht nichts dagegen, die Kurvenbezeichnungen auszuschreiben. Mir reicht das halt so und die Legende wird dann nicht so breit. Nach links wandert sie mit dem Gnuplot Befehl:

    Code
    # ========= Legende positionieren
    
    
    set key left

    Zur Unterstützung für den Heizungsfachmann werde ich die Kurven auch nur "in Begleitung" anwenden. Was das viel gelobte deutsche Handwerk angeht, habe ich hier im Bezug auf die Heizungsbauergilde leider schon so meine Erfahrungen machen müssen. Bei meiner Solaranlage wurden z. B. VL un RL vertauscht und auf den Ausfall meines Umschaltventils Heizung<->Brauchwasser musste ich den Heizungsbauer erst mittels meiner arduinobasierten Datenkurven hinweisen. Selber merken die so was offensichtlich nicht. Ein völlig wirkungsloses Ausdehnungsgefäß wurde erst gewechselt, nachdem ich den Heizungsbauer gewechselt hatte.

    Aber lassen wir das, das gehört hier wohl nicht hin.

    Vielen Dank auf jeden Fall für die Anregungen.

    Heizungstemperaturen plotten

    Ziel dieses Projekts sollte es sein, mittels eines Raspberry Pi Computers die wichtigsten Temperaturen an meiner Heizung vollautomatisch, autark und permanent zu erfassen, zu strukturieren und grafisch für jeden Tag aufzuarbeiten. Nach diversen Heizungsproblemen in der Vergangenheit, hatte sich gezeigt, dass Datenplotts bei der Funktionsbeurteilung und Fehlersuche ein große Hilfe sein können. Auch können die Handwerker hiermit gut auf eventuelle Probleme aufmerksam gemacht werden, wodurch eine wesentlich zielgerichtetere Vorgehensweise möglich wird.

    Was wird benötigt?

    • Raspberry Pi B mit SD-Karte und BS
    • USB WLAN-Stick
    Netzteil mit USB-Kabel
    • Temperatursensoren
    • Ein C-Programm zur Verarbeitung und Protokollierung der Sensordaten
    • Ein Bash-Skript zur Ansteuerung von Gnuplot

    Der Raspberry Pi

    Für dieses Projekt habe ich einen Raspberry Pi Typ B eingesetzt. Als Betriebssystem kommt Raspbian zum Einsatz.

    USB WLAN-Stick

    Hier hat mich diese Webseite inspiriert. Der Rapi hängt also mit einem EDIMAX EW-7811UN im lokalen WLAN.

    Die Temperatursensoren

    Nach meinem Arduinoprojekt habe ich mich wieder für die Maxim DS18B20 Temperatursensoren entschieden. Der Rapi und sein BS sind hierfür schon bestens aufgestellt. Es müssen nur noch die Module w1-gpio und w1-therm nachgeladen werden.

    Damit das nicht nach jedem Reboot fällig wird, habe ich sie in die modules Datei (/etc/modules) eintragen. Nun werden die Module bei jedem Reboot automatisch mit geladen.

    Eine große Hilfe war mir bei diesem Projekt das Tutorial hier in diesem Forum.

    Wie noch zu sehen sein wird, gibt es in diesem Projekt fünf Sensoren. Das ist einzig darauf zurück zu führen, dass ich bei ebay ein Angebot mit fünf Sensoren erstanden habe. Diese Sensoren hatten jeweils ein 3 Meter langes Anschlusskabel und einen fertig konfektionierten Stecker.

    Das C-Programm

    Das C-Programm sammelt kontinuierlich die Daten ein und schreibt diese in eine ASCII-Plotdatei.

    Fehlertoleranz

    Bei Auswertung der ersten Plotdaten musste ich leider feststellen, dass die Sensoren immer wieder Messfehler mit dem Wert -0,06 abliefern. Auch war mal ein Ausreißer nach oben ( > 200 Grad) dabei. Zunächst habe ich diese Fehler händisch mit einem Texteditor korrigiert. Das war natürlich keine Lösung. Ich habe daher das C-Programm um eine Fehlerabfangfunktion erweitert. Wenn ein Messwert kleiner 1 oder größer 100 ist, wird er verworfen und statt dessen der vorhergehende Wert erneut werwendet. Das funktioniert seit dem wunderbar und fällt bei einem Messraster von einer Minute auch überhaupt nicht auf.

    Das Bash-Skript

    Das folgende Bash-Skript übergibt die zu bearbeitenden Daten an Gnuplot und passt ein paar Einstellungen jeweils an. Bearbeitete Protokolldatendateien werden umbenannt um eine erneute Bearbeitung am Folgetag zu unterbinden. Über Cron wird dieses Skript einmal pro Tag aufgerufen.

    Ein Beispielplot

    Tageskurve 05-09-2013.pdf

    Auf dieser Seite habe ich folgenden Lösungsansatz gefunden:

    Well, there is a very simple solution:

    • Go to /etc/ifplugd/action.d/ and rename the ifupdown file to ifupdown.original
    • Then do: cp /etc/wpa_supplicant/ifupdown.sh ./ifupdown
    • Finally: sudo reboot

    That's all. Test this by turning off/on your AP; you should see that your Raspberry Pi properly reconnects.

    Ich hab das jetzt mal so durchgeführt. Der Rapi ist wieder hoch-gelaufen und via WLAN online. Bin mal gespannt, ob sich der Rapi morgen ordnungsgemäß reconnected.

    Nachtrag:

    Habe soeben den AP wieder in Betrieb genommen und konnte den Rapi sofort wieder erreichen. Toll!


    ....

    Da muss es doch noch was anderes geben.

    Auf dieser Seite habe ich folgenden Lösungsansatz gefunden:

    Well, there is a very simple solution:

    • Go to /etc/ifplugd/action.d/ and rename the ifupdown file to ifupdown.original
    • Then do: cp /etc/wpa_supplicant/ifupdown.sh ./ifupdown
    • Finally: sudo reboot

    That's all. Test this by turning off/on your AP; you should see that your Raspberry Pi properly reconnects.

    Ich hab das jetzt mal so durchgeführt. Der Rapi ist wieder hoch-gelaufen und via WLAN online. Bin mal gespannt, ob sich der Rapi morgen ordnungsgemäß reconnected.