Laufzeiten zweier Klimaanlagen grafisch darstellen

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
KK66
Beiträge: 37
Registriert: 22.08.2013 10:53:41

Laufzeiten zweier Klimaanlagen grafisch darstellen

Beitrag von KK66 » 30.08.2013 08:02:31

Schönen guten Tag,

ich habe vor, über die GPIO Pin's des Raspberry Pi, die Laufzeiten zweier Klimaanlage darzustellen. Dafür möchte ich ein Skript mit Python schreiben. Mit dem RRD-Tool sollen dann anschließend die eingelesen Daten grafisch dargestellt werden.
Kenntnisse in Python hab ich ein wenig aber halt noch nicht so viel. Und mit dem RRD-Tool kenn ich mich gar nicht aus...

Deshalb wollte ich mal fragen, ob jemand vielleicht schon ein ähnliches Projekt hatte? Momentan weiß ich nämlich ich noch nicht wie ich das anstellen soll! Was ich alles darstellen soll, wie ich es darstellen soll etc.

Vielleicht gibt es ja jemanden der paar Ideen hat und mir vielleicht dabei ein wenig helfen könnte?

Ich bedanke mich schon mal für eure Hilfe!

MfG
KK

Colttt
Beiträge: 3012
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Laufzeiten zweier Klimaanlagen grafisch darstellen

Beitrag von Colttt » 30.08.2013 15:10:32

Debian-Nutzer :D

ZABBIX Certified Specialist

Benutzeravatar
schorsch_76
Beiträge: 2631
Registriert: 06.11.2007 16:00:42
Lizenz eigener Beiträge: MIT Lizenz

Re: Laufzeiten zweier Klimaanlagen grafisch darstellen

Beitrag von schorsch_76 » 30.08.2013 21:49:26

Du kannst auch die Daten einfach in ein txt file packen und mit Debiangnuplot darstellen.

KK66
Beiträge: 37
Registriert: 22.08.2013 10:53:41

Re: Laufzeiten zweier Klimaanlagen grafisch darstellen

Beitrag von KK66 » 05.09.2013 11:25:51

Schönen guten Tag,

ich habe im Internet ein Probeskript gefunden, welches ich einmal ausprobieren wollte, um zu gucken wie es funktioniert...
Dieses hier:

Code: Alles auswählen

#!/usr/bin/python

import rrdtool
import RPi.GPIO as GPIO

GPIO.cleanup

GPIO.setmode(GPIO.BOARD)

GPIO.setwarnings(False)

GPIO.setup(7,GPIO.IN)
GPIO.setup(11,GPIO.IN)

ret = rrdtool.create("/home/pi/Desktop/example.rrd", "--step", "1800", "--start", '0',
                     "DS:metric1:GAUGE:2000:U:U",
                     "DS:metric2:GAUGE:2000:U:U",
                     "RRA:AVERAGE:0.5:1:600",
                     "RRA:AVERAGE:0.5:6:700",
                     "RRA:AVERAGE:0.5:24:775",
                     "RRA:AVERAGE:0.5:288:797",
                     "RRA:MAX:0.5:1:600",
                     "RRA:MAX:0.5:6:700",
                     "RRA:MAX:0.5:24:775",
                     "RRA:MAX:0.5:288:797")

metric1 = GPIO.input(7)
metric2 = GPIO.input(11)

ret = rrdtool.update('example.rrd', 'N:%s:%s' %(metric1,metric2));

for sched in ['daily', 'weekly', 'monthly']:

    if sched == 'weekly':
        period = 'w'
    elif sched == 'daily':
        period = 'd'
    elif sched == 'monthly':
        period = 'm'
    ret = rrdtool.graph( "/home/pi/Desktop/metrics-%s.png" %(sched), "--start", "-1%s" %(period), "--vertical-label=Num",
                         '--watermark=playground.in.supportex.net',
                         "-w 800",
                         "DEF:m1_num=example.rrd:metric1:AVERAGE",
                         "DEF:m2_num=example.rrd:metric2:AVERAGE",
                         "LINE1:m1_num#0000FF:metric1\\r",
                         "LINE2:m2_num#00FF00:metric2\\r",
                         "GPRINT:m1_num:AVERAGE:Avg m1\: %6.0lf ",
                         "GPRINT:m1_num:MAX:Max m1\: %6.0lf\\r",
                         "GPRINT:m2_num:AVERAGE:Avg m2\: %6.0lf ",
                         "GPRINT:m2_num:MAX:Max m2\: %6.0lf \\r")
Nur mein Problem ist, es wird nicht in die Datenbank geschrieben und dem zufolge auch kein Graph gebildet. :?

Was muss ich machen, dass in die Datenbank geschrieben wird??
Wäre echt nett wenn mir einer helfen könnte. :-)

PS: Das mit den GPIO's hab ich hinzugefügt und bin mir auch nicht ganz sicher, ob es funktioniert...

Antworten