Posts by Ruco

    Naja. Als ein Problem würde ich das mit der Chart-Darstellung nicht nennen.
    Es wurde ja nur nichts angezeigt weil ja auch keine Zeitangabe mit übergeben wurde. (index.php?period=12h)
    Das hattest du ja dann gemacht nachdem du auf einen entsprechenden Link geklickt hast ;)
    Könnte man aber noch ergänzen.


    Und um auf die Frage zu Antworten. Ja, ist "gelöst".
    Die Datenbank wird direkt mit einer Zeit aufgerufen. Kannste auch ändern wie du magst.
    [code=php]<option value="index.php?period=12h">Schrank</option>[/php]




    Wie das Auswahlmenü aussieht? So:

    Danke dir!


    Das ist dann doch etwas zu heftig mit den Sessions.
    Ich hab es jetzt recht einfach gelöst und es klappt so wie ichs mir vorgestellt hatte :D
    Fehlt jetzt nur noch der letzte Zeitpunkt der Datenbank und nicht der realen Zeit als Ausgangspunkt. :daumendreh2:
    Falls es wen interessiert:



    • Die data.php habe ich nach "include" verschoben und alle Pfade entsprechend angepasst.
    • Den "include"-Ordner hab ich 3x kopiert und umbenannt. (include-testlauf, include-schrank, usw....)
    • Die Datenbanknamen in der config.php in jedem "include-xy"-Ordner eingetragen
    • In der index.php die 3. Zeile angepasst. Zum Beispiel: require_once('include-schrank/global.php');
    • Den Pfad der "data.php im Abschnitt der Charts angepasst $.getJSON("include-schrank/data.php?type=temp&period=........
    • Das erstellte Auswahlmenü an einem passenden Platz eingefügt. Code siehe unten.
    • Die index.php mehrmals kopiert, umbenannt (In meinem Fall fürs erste 2x) und wieder alle 3 Pfade angepasst.



    auswahl.php
    [code=php]<form name="jump">
    <select name="menu">
    <option value="#">Datenbank wählen</option>
    <option value="temperaturen.php?period=12h">Temperaturen</option>
    <option value="testlauf.php?period=12h">Testlauf</option>
    <option value="index.php?period=12h">Schrank</option>
    </select>
    <input type="button" onClick="location=document.jump.menu.options[document.jump.menu.selectedIndex].value;" value="OK">
    </form>
    <?php
    echo "<p class='text'> Die ausgewählte Datenbank ist: <b> $database </b></p>\n";
    ?>[/php]


    Das Auswahlmenü habe ich zwischen die div der tempchart und der humchart gelegt.
    [code=php]echo "<div id='content'>\n";
    echo " <div id='tempchart'> </div>\n";
    include "auswahl.php";
    echo " <div id='humchart'> </div>\n";
    [/php]


    Die auswahl.php liegt bei den anderen Seiten. Also nicht in einem Ordner.

    Ok, das Umschalten klappt. Nur das einbinden der richtigen Datenbank nicht .
    Mal sehen ob ich das noch hinbekomme.


    Quote

    [font="monospace"]<form action='' method='POST'>[/font]


    Oder ich guck doch noch mal nach deinem Vorschlag und teste ihn durch. Dann auch mal mit Get statt mit Post.
    Falls das denn geht.


    Aber das Auswahlmenü ist jetzt erst mal zweitrangig.

    Der Zeitpunkt der Anzeige wird doch ich der data.php geregelt, oder?
    Möchte hier nochmal auf dies eingehen und hab einen Satz ergänzt:

    Quote

    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Was mir jetzt aber erst einmal richtig aufgefallen und ein Problem ist, ist folgendes.[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Wenn die Datenbank schon etwas älter ist (als Beispiel: der letzte Eintrag 3 Wochen her ist) und man die letzten 24 Stunden oder 7 Tage ansehen möchte, dann wird nix angezeigt.[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Es wird also von der aktuellen Zeit ausgegangen. Es werden leider nicht die letzten 24 Stunden oder 7 Tage der gewählten Datenbank angezeigt.[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Lässt sich das ändern??[/font]


    Müsste da viel ergänzt oder geändert werden?
    Ist doch ab Zeile 45 In der data.php, oder?



    Zur Datenbankauswahl ist mir noch etwas eingefallen.
    Werde das heute Nacht mal testen. Das sollte dann klappen :)

    Ja super! Soweit klappt das aufs erste mal. :thumbs1:
    Hatte endlich Zeit das zu testen. Hat leider etwas gedauert, tschuldige.


    Allerdings springt die ausgewählte Datenbank immer zurück auf die erste, wenn man den Anzeigezeitraum ändert. Zum Beispiel von 12 auf 24 Stunden geht.
    Ein einfaches "Neu laden" der Seite geht auch nicht mehr.


    Was mir jetzt aber erst einmal richtig aufgefallen und ein Problem ist, ist folgendes.
    Wenn die Datenbank schon etwas älter ist (als Beispiel mal 3 Wochen) und man die letzten 24 Stunden oder 7 Tage ansehen möchte, dann wird nix angezeigt.
    Es wird also von der aktuellen Zeit ausgegangen. Es werden leider nicht die letzten 24 Stunden oder 7 Tage der gewählten Datenbank angezeigt.
    Lässt sich das ändern??

    Ich überlege wie man eine Auswahl von mehreren Datenbanken mit in die Index bekommt.
    Hab jetzt 3 Datenbanken und 3 einzelne Ordner mit der Index drin. Eine Seite wäre mir aber lieber.


    Die config.php wird ja zusammen mit der funktions.php eingelesen.
    Versuche grad verschiedene Datenbanken aus einer config zu wählen.
    Vielleicht wäre es einfacher je Datenbank eine eigene config.php zu wählen. So als Auswahlmenü bzw Auswahlliste.


    Haste einen Tip für mich das zu realisieren?
    Hab da eben einen hänger beim Denken.


    Mein Ansatz:
    Die funktions.php und die config.php doch einzeln in die die index.php einbinden.
    Also ohne der global.php


    [code=php]<?php
    //------------------------------------------------------
    require_once('include/global.php');
    //------------------------------------------------------
    ?>[/php]


    Und dann nur die config.php Auswählen. In etwa so >>> https://jsfiddle.net/k7r3xcn1/2/
    Würde das gehen?
    Da hängt es grad etwas bei mir.

    Es läuft und läuft und läuft.... sehr schön.
    Das war die Kurzfassung. Mehr brauchts eigentlich nicht :thumbs1: :danke_ATDE:
    Großes, ganz großes Lob an dich, Meigrafd!



    Etwas länger.
    Was mir bis jetzt "aufgefallen" ist und deine tolle Arbeit abrunden würde:
    (Ist keine Kritik oder Genörgel! :cool: )


    # Schaut man sich den Datensatz ab 4 Wochen und mehr an (Auflösung war hier 10 Minuten), dann haut das im Browser ganz schön rein. Ok, bei der Datenmenge :D
    Kein Wunder das man bei solch einer Ansicht "normal" einen Mittelwert nimmt. Das war aber hier ja bewusst nicht gewollt. Es sollen ja die Originaldaten eingesehen werden können. Und das geht dann mit der Zoomfunktion recht gut. Ein Schieberegler (slider) wäre hier doch wirklich sinnvoll. Dann können gezoomte Werte einfach verschoben werden.



    # Einträge in der Datenbank korrigieren ist, wegen der "timestamp", etwas umständlich. Hin und wieder gibts doch mal Ausreißer oder eine Fehlmessung. Muß dazusagen das es nur die DHTs betrifft. Die Messung der DS18B20 waren bis jetzt immer OK.
    Also erst das angezeigte Datum in timestamp umrechnen und es dann in der Datenbank suchen.
    Hier wäre eine weitere Spalte mit dem/der umgerechneten timestamp hilfreich. Sollte jetzt nicht so häufig vorkommen, die Feuchtesensoren halten sich aber noch nicht ganz dran. Es spart halt das umrechnen.


    # Die Ausgabe der dht.py. Ob die 14 Nachkommastellen jetzt eine Auswirkung auf die Einträge hat weiß ich nicht. Wenn nicht, dann ist es eh unwichtig. Wird ja per Cron ausgeführt und nicht händisch im Terminal. Von daher,pffffffffff

    Quote

    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]pi@raspberrypi[/font][font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"] [/font][font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]~ $[/font][font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"] sudo /usr/local/sbin/dht.py[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Innen -> 21.399999618530273C , 49.79999923706055%[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Aussen -> 21.200000762939453C , 99.30000305175781%[/font]


    # Wo fängt der Tag an und wo ist das Ende?
    Da muss ich öfters nachsehen. Das springt nicht so ins Auge. Liegt aber an den Charts selbst. Hier wäre ein alternierender Hintergrund besser. Tag/Nacht. (06bis18 & 18bis06Uhr)
    Noch besser: Sunset/Sunrise :D ala Tafkas.



    Der letzte Punkt ist immernoch ein Wunschpunkt. Wäre echt super wenn das klappen würde.
    Ich selbst bekomme das einfach nicht hin. Wie du selbst sagtest, echt kniffelig.
    Evtl hier ein extra Thema dafür?


    Im Anhang 2 Beispiele.
    - Eine Fehlmessung von den DHT22er
    - Einmal Feuchteverlauf in der Schlafphase. Hier sieht man schön wie die Feuchtigkeit ansteigt und wie es nach dem Lüften ist.
    (Uhrzeit ist korrekt. War Nachtschicht)


    - was meint Ihr?


    Mach mal das was ich vorgeschlagen habe.
    Zusätzlich DB löschen. Daten ohne Umlaute neu sammeln.


    Liegt doch eigentlich nahe, oder? (DB leer-> Chart "sichtbar". DB gefüllt -> Chart weg )

    Hi,
    Das er nur temp auslesen kann weiß er doch.
    Ich glaub du verstehst ihn falsch.


    Wo keine Werte da auch keine Charts!


    Ist nicht ganz richtig. (wenn man spießig sein will)
    Die Chart sieht man, nur ohne Inhalt (also den Linien).
    Man kann also nur den Text das keine Daten vorhanden sind lesen.


    Und genau das sieht er. Allerdings nur bei der Hum-Chart.
    Die Temp-Chart ist komplett verschwunden (er hatte sie aber schon gesehen).
    Er sieht also kein weisses Feld oder sonst was.
    Als würde es nur eine einzige Chart geben, keine 2.
    Die Temp-Chart ist weg und die Hum-Chart ist nach oben gerutscht.
    Und das kam erst nachdem er Daten gesammelt hatte.
    So hab ich es verstanden.


    Er sollte mal ein Bildschirmfoto bringen.



    Quote

    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]°C ist "temp"[/font]


    Richtig, aber woher kommt die -> [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]°C <- in seiner Terminalausgabe?[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Bei mir kommt das nicht. Nur der Wert selber.[/font]
    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Beispiel zum Vergleich:[/font]


    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]

    Quote

    [/font]

    Quote


    pi@raspberrypi ~ $ /home/pi/temp.py
    Raumluft -> 19.0

    Ok, hab die Ausgabe gesehen.


    Muß ich doch mal die Skripte vergleichen. Ich habe nämlich nicht das " °C " dabei stehen.
    So spontan seh ich das auch nicht auf github im 1wire.py.
    Wo kommt das her?


    meigrafd
    Können Umlaute eigentlich Probleme machen?



    Momentan schaut´s mit demTemperturwerten so aus:



    Da du dich ja schon ein wenig in der index.php versucht hast, ersetz die mal lieber durch eine neue. Ohne Änderungen.
    Dann ist diese Fehlerquelle schonmal ausgeschlossen.
    Die temp & hum Chart sind in DIV-Container. Wenn dieser leer ist (weil z.B. die Chart nicht generiert wird) , dann wird das div auch nicht "eingeblendet" und das andere DIV rutscht nach oben.
    Will da aber jetzt aber nicht weiter auf dieses verhalten eingehen. Ist eine andere Geschichte.
    Zumindest sieht es bis jetzt so aus als würde deine Chart nicht erstellt werden.
    Da du sie aber schon mal gesehen hast, als deine Datenbank noch leer war, tippe ich auf einen Fehler in der selbigen.




    Hast du phpmyadmin?
    Wenn nein, dann mal installieren. Ist halt einfacher.
    Dann kannst du zum testen auch bequem ein paar Werte von Hand eintragen.
    Für die Werte in "timestamp" ist sowas hilfreich: _Link_



    Was kommt eigentlich raus wenn du das 1wire.py im Terminal per Hand anstößt?

    Hi.
    Bevor du da an der index rumwerkels, hast du da vorher überhaupt was dran verändert und bearbeitet?
    Wenn nicht, dann brauchst da eigentlich auch granicht weiter suchen ;)

    Ok, du meinst Zeile 102-107, richtig?
    Da geht leider nix.


    Das Ergebnis:



    __________Edit____________


    Ich hab eben mal in die Datenbank gesehen.
    Dort sehen die Einträge anders aus. Also nicht wie die Ausgabe vom Terminal.
    Eine Stelle nach dem Komma. ;)




    Bis jetzt läuft es ganz gut und ich hab noch keine Fehler gehabt/entdeckt.
    Im Anhang sind die Bilder von der Datenbank und der Chart.

    An das Problem des "verschwindens" kann ich mich noch erinnern.
    Hatte das auch ein/zweimal. Komme nur eben nicht ganz drauf.


    Einmal wars beim Bearbeiten der Index-Datei. Fehler im Code.
    Das andere mal, hmmm. Könnte wirklich was an der Datenbank gewesen sein.
    Da hilft mal ein Blick in die DB.
    Wenns mir einfällt, reichs ich nach ;)

    Endlich konnte ich testen!


    - Skript ist am richtigen Ort und Rechte sind gegeben
    - Configpfad angepasst
    - Sensorname vergeben
    - Typ und Pin angegeben
    - Python3 dev war schon installiert
    - Adafruit installation erfolgreich laut Ausgabe.


    Leider kommt noch diese Fehlermeldung:



    Die 2 DHT22 Sensoren kann ich "manuell" erfolgreich auslesen:

    Quote

    pi@raspberrypi / $ sudo /home/pi/lol_dht22/loldht 3
    Raspberry Pi wiringPi DHT22 reader
    http://www.lolware.net
    Humidity = 56.00 % Temperature = 20.20 *C


    Hab ich einen Fehler gemacht und was vergessen?
    Gibt es noch etwas zum Einstellen bei dem Adafuit-Skript?



    EDIT:
    OK, ich hatte die anderen (wiringPI) Pin-Bezeichnungen noch im Kopf. WiringPI und GPIO sind ja unterschiedlich :blush:
    Hab ich eben bemerkt und korrigiert.


    Hier noch die Config: