Ich verwende meinen ersten RaspberryPi zur Aufzeichnung von Temperatur und Luftfeuchtigkeit in meiner Wohnung. Die Ergebnisse stelle ich dann mit einer JavaScript (HighCharts) library grafisch dar:
Falls ihr selber schauen wollt, findet ihr das Projekt unter: http://pi.tafkas.net
Temperaturaufzeichnung mit RRDTool und Highcharts
-
Tafkas -
17. Juni 2013 um 10:58 -
Erledigt
Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
-
-
Temperaturaufzeichnung mit RRDTool und Highcharts? Schau mal ob du hier fündig wirst!
-
Und das geht nur mit dem USB-Gerät?
-
Grundsätzlich kannst du das auch mit anderen Sensoren machen. Du brauchst irgendeinen Sensor, die Daten schreibst du in eine RRD-Datenbank und von da aus erzeugst dann die Charts. Ich habe mich für die USB-Lösung entschieden, da die Sensoren selber über Funk arbeiten und ich so keine Kabel ziehen musste.
-
Sehr cool,
ich mache das mit einem DHT22.
Dadurch bin ich bisher leider daran gebunden, das mein PI immer dort ist wo ioch messe.
Daher würde mich interresieren, welche Sensoren du verwendest. Etwas den für rund 30€?
Denn die idee mit dem ELV funk modul ist echt super!DAnke schon mal
-
Wirklich schöne Website die du da hast.
Leider ist mein Englisch nicht so gut. Würde mich deswegen darüber freuen wenn Sie das about und denn Text eindeutschen könnten. Sozusagen "About Englisch" und "About Deutsch".
Sollte da alles soweit stehen, das man es einfach nachmachen kann. Würde ich mir auch gerne so ein System bauen.
Vielen Dank fürs lesen
-
So was liebe ich ja
Leute heiß machen und dann aber nicht mehr antworten.
Echt schade das man nicht mal einfach eine kurze antwort geben kann.
Das ist auch schade für meinen Nachredner. -
Ich verwende zum einen den USB-WDE1 als Empfänger und als Sensoren sechs "S 300 TH". Vorteil ist, dass alles über Funk läuft und ich so keine Drähte ziehen musste.
-
Hallo Tafkas
Gibts fuer die Verknuepfung von rrd und highcharts eine Anleitung?Gruesse drops
-
drops: Klick auf der angegebenen Seite oben rechts auf About und dann auf den dort angegebenen Link, da findest du dann eine Anleitung
-
@ meigrafd
vielen Dank für den Tipp
-
Bin grad auch dabei diese Variante auszuprobieren. Bis zum erstellen der XML Dateien bin ich gekommen. Aber wie macht man das dann mit dem highchart script?
Einfach die XML Dateien auf den Webserver schieben und das Script in ne php/HTML Seite einbinden? Wenn ja wie?Mfg Christoph
-
Ich habe alles noch mal in meinem Blog unter http://blog.tafkas.net/2012/10/03/gat…and-highcharts/ zusammengeschrieben.
-
Leider hänge ich an genau der gleich Stelle wie "ghoethe" fest.
Hab zwar Ahnung von HTML und CSS aber wie ich das Script lauffähig in Seite einbinden soll weiß ich auch nicht.
Kannst du da nochmal einen Tip geben? -
Die werden einfach mit jQuery eingelesen. Sind die XML Dateien erreichbar? Das kannst du mit den Chrome Developer Tools oder der Firebug-Extension für den Firefox herausfinden. Bei mir sieht das ganze so aus:
-
Hallo zusammen,
Ich habe mich jetzt auch an diesem Projekt versucht, habe aber das gleiche Problem wie JizzY und goethe. Das Auslesen der Temperaturen klappt wunderbar, ich kann sie auch per rrdtool graphisch darstellen. Auch das Exportieren der Daten in xml-Dateien funktioniert.
Aber wie genau stellt man die Daten jetzt per Highcharts dar?
Auf der Seite von Highcharts wird beschrieben, wie man Daten aus einer xml-Datei auslesen kann, allerdings hab ich das bei mir mit den ausgelesenen Temperaturdaten nicht so richtig hinbekommen.
Die "createhighchartfromxml.js", die im Blog erwähnt wird, hilft mir leider auch nicht wirklich weiter.
Hat das vielleicht sonst jemand hinbekommen und kann da weiterhelfen?
Gruß
Webby -
Suche auch noch nach einer Lösung.
-
- Offizieller Beitrag
Was hast du denn bis jetzt versucht? An was scheitert es genau?
-
An dem Import in die Highcharts mit der funktionierenden Anzeige. Der Export in die Xml funktioniert. Müsste mich nochmal kurz reinfummeln. Hatte das vor Ewigkeiten mal probiert.
-
Ich habs jetzt endlich hingekriegt!
Nach ewiger Fummelei werden die Temperaturen nun korrekt angezeigt.
Hier für c0by und alle anderen die dran scheitern mal meine HTML-Datei.
Ihr müsst höchstens noch den Pfad und Namen der xml-Datei (in meinem Fall "data/temperature3h.xml") anpassen, dann sollte das eigentlich schon funktionieren.HTML
Alles anzeigen<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Temperaturerfassung</title> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <script src="http://code.highcharts.com/highcharts.js"></script> </head> <body> <script type="text/javascript"> $(document).ready(function() { Highcharts.setOptions({ global: { useUTC: false } }); var options = { chart: { renderTo: 'container', type: 'spline' }, title: { text: 'Temperaturen' }, colors: ['#4572A7', '#AA4643'], xAxis: { type: 'datetime', dateTimeLabelFormats: { hour: '%H. %M', } }, yAxis: { title: { text: 'T (°C)' } }, tooltip: { formatter: function () { return '<b>' + this.series.name + '</b><br/>' + Highcharts.dateFormat('%H:%M', this.x) + ': ' + this.y.toFixed(1) + '°C'; } }, series: [] }; // Load the data from the XML file $.ajax({ type: "GET", url: "data/temperature3h.xml", dataType: "xml", success: function (xml) { var series = [] //define series $(xml).find("entry").each(function () { var seriesOptions = { name: $(this).text(), data: [] }; options.series.push(seriesOptions); }); //populate with data $(xml).find("row").each(function () { var t = parseInt($(this).find("t").text()) * 1000 $(this).find("v").each(function (index) { var v = parseFloat($(this).text()) v = v || null if (v != null) { options.series[index].data.push([t, v]) }; }); }); options.title.text = "Temperaturen der letzten 3 Stunden" $.each(series, function (index) { options.series.push(series[index]); }); var chart = new Highcharts.Chart(options); } }); }); </script> <div id="container" style="width:100%; height:400px;"></div> </body> </html>
So siehts aus:
-
Hi,
funktioniert denn bei euch das Skript zum Auslesen in die rr DB? Da gibt es bei mir Fehler
-
Jetzt mitmachen!
Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!