Ich habe die Steuerung meiner Fussbodenheizung umgebaut und mal ein erstes Script zur Steuerung geschrieben. Im Moment einfach nur alle 15 Minuten -> IstTemp < SollTemp = Heizkreis auf, sonst Heizkreis zu. Vielleicht schaffe ich nächste Nacht ja dann noch eine Zeitsteuerung. Mir missfällt aber im Moment noch der Gedanke, die Zeittabelle in MySQL anzulegen, und alle 15 Minuten auf die Datenbank zuzugreifen. Wo kann man den noch eine Tabelle hinterlegen? Und kennt einer eine Möglichkeit, dass der MySQL Deamon immer mit niedriger Priorität startet? Im Moment setze ich die Prio immer per Hand runter, wenn ich dran denke .
Kann mir in dem Zusammenhang mal einer den Unterschied zwischen Sleep(x) und IPS_Sleep(x) erklären und mir sagen, warum laut PHP Manual usleep(x) auf Windowssystemen nicht läuft und es in IPS doch geht?
Und warum redet hier nie einer mit mir Ich hätte hier noch ein paar offen Threads, auf die ich noch Rat suche Oder sind Neulinge hier unerwünscht, oder bin ich mal irgendwo fies aufgefallen?
Aufgrund der Zeit, und weil ich nicht wusste, wo es am besten passt, habe ich es mal ins OT gepackt.
Fussbodenheizung … alle 15 Minuten -> IstTemp < SollTemp = Heizkreis auf, sonst Heizkreis zu
Wird das funzen ? Ich denke mal nicht. Die gespeicherte heizung in dein boden ist schon 2 stden alt, und kommt jetzt langsam raus. Also: vor 2 stden zuviel energie rein, ist jetzt ist >> soll also pumpen ab. Bis der boden zuviel abgekuhlt ist. Ich bin da ein wenig sceptisch.
Wo kann man den noch eine Tabelle hinterlegen
varianten zu database:
.ini file, flatfile .txt, .XML file : in funktion des ‚parsen‘ mehr oder weniger einfach. Soll viel geschrieben werden? Oder viel gelesen und wenig geschrieben? Wird der file noch fuer andere sachen genutzt als nur zwischenspeicher? Das alles bestimmt die zu nutzene technology.
Und glaub mir : jede 15e minute zugreifen auf ein database ist nocht böse … die dinger sind dafur gebaut
Wird das funzen ? Ich denke mal nicht. Die gespeicherte heizung in dein boden ist schon 2 stden alt, und kommt jetzt langsam raus. Also: vor 2 stden zuviel energie rein, ist jetzt ist >> soll also pumpen ab. Bis der boden zuviel abgekuhlt ist. Ich bin da ein wenig sceptisch.
Das weis ich, und werde irgendwann versuchen, es zu kompensieren. Aber ich wollte erstmal nur das, was ich vorher hatte, und keine Verschlechterung. Vorher hatte ich mechanische Thermostate über ein Bimetall. Die reagieren doch auch 2 Stunden zu spät.
varianten zu database:
.ini file, flatfile .txt, .XML file : in funktion des ‚parsen‘ mehr oder weniger einfach.
Gibt es zu sowas eine Beschreibung im Netz? Wie ich text in eine Datei schreibe weis ich. Ausgelesen werde ich es wohl auch irgenwie bekommen. Aber es wäre gut, wenn es irgendwo eine Übersichtsseite für die Formate gäbe, wo man sich einlesen könnte.
Soll viel geschrieben werden? Oder viel gelesen und wenig geschrieben? Wird der file noch fuer andere sachen genutzt als nur zwischenspeicher?
Ich denke, es wird mehr gelesen. Es geht mir ja darum eine Tabelle zu hinterlegen: von … bis … Raum … SollTemp …
schau dir mal an, wie ich es gemacht habe. Ich speichere die Wochentabellen in String Variablen und kann bequem aus dem Designer verändert werden.
Der WAF ist sehr hoch, glaub mir !
Lade dir mal das runter, installiert es, und kuck dir das prinzip einfach mal an !
Den Thread habe ich gesehen, und wollte ich mir mal ansehen, wenn ich IPS auf einem Testrechner installiert habe. Ich dachte, bis ich dazu komme ist ggf. das Install Script fertig.
Für diese Sache würde ich ebenfalls keinen SQL-Server benutzen. Ich würde die Daten in ein PHP-Array schreiben und dieses dann in eine Datei speichern.
Statt der wddx-Serialisierung kann man zum schreiben file_put_contents() und zum laden dann einfach include verwenden. Gerade beim Einlesen der Daten ist das dann eine extrem schnelle und auch komfortable Methode.
Ich habe mich grade ein wenig mit Arrays und der Funktion file_put_contents() beschäftigt.
wäre für meine Zwecke ein MultiArray doch am sinnvollsten. Aber ein MultiArray kann file_put_contents nicht verarbeiten
Aber selbst bei einem einfachen Array schreibt file_put_contents() doch nur den Inhalt des Arrays einfach hintereinander, ohne Trennzeich und ohne den Array Wert.
Kann man eigentlich ein MultiArray nur über Array(…) anlegen, oder gibt es auch eine Möglichkeit über $Arr[] = … oder sowas?
Hab auch vor, (neben 3 FHT`s) eine (elektrische) Fußbodenheizung im Badezimmer zu automatisieren. Ansich würde ich das sFHT-Script dazu „mißbrauchen“, eventuell eignet sich auch der „Nachfolger“ dafür.
Mein Ansatz: Ich hänge die Heizung an einen FS20SU, dessen Timer ich auf 2 Stunden gestellt habe (nach 2 Stunden schaltet der SU den Verbraucher automatisch aus). IPS steuert je nach Tagesprogramm rechtzeitig morgens und abends den SU an und für die notwendige Zeit habe ich warme Füße im Bad. Zusätzlich hab ich im Bad noch an den roten Drähten des SU einen herkömmlichen Wandtaster angeschlossen - damit kann ich auch außerordentlich das Bad heizen. Aber nach 2 Stunden ist wieder Schluß - ich kann somit nie vergessen, die Heizung wieder abzudrehen.
Aber bitte
Ich wird dir ein stuck auf dem wege helfen :
//schnit aus das tempsettings.ini
...
# D = Default - ALWAYS USE
# (precedence rule)
# Default -> season & holiday -> season & day -> season & weekends -> season & everyday -> season & default
#Season T T H 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2
#| day 1 2 O 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
#|| sensor x x U 030303030303030303030303030303030303030303030303
#|| | x x R 000000000000000000000000000000000000000000000000
DS default x x -------------------------------------+++++++----
DW default x x -----------------------------------+++++++++----
DS vliv_temp x x ||||||||||||||||||||||||||||||||||||||+++++++---
DW vliv_temp x x ||||||||||||||||||||||||||||||||||||++RRXXXXXX+-
Was fält auf ?
in die spalten T1 und T2 stehen ‚x‘-en
Diese sind vorsehen das dadurch schalter gesetzt werden können - nur bin ich nicht soweit gekommen, aber den rahmen steht da!
Die idee ist so:
den instanz in die linke spalte, den ersten x (T1) ersetzen durch etwas anderes so das das script weis das es eine schalt-aktor betrifft.
den 2en ‚x‘ (T2) steht dafur das wenn ‚x‘ anwesend, das schalten uber zeit passieren sollte (ala: ich hol mir die periode aus dem string-wert rechts, und schalte ‚sicher‘ durch FS20_SwitchDuration(a,b,c) mit a die instanz (links), b: flanken getriggert on-off (spalte T1) und c: duration (die berechnung wie länge der flank stehen bleibt im string daneben).
Die idee war schon da… nur die zeit fehlt mir um mal 4 stunden damit beschäftigt sein zu können. (Nehme mal 2 stunden programmieren, und 2 stunden den nutzer genugend info’s zu geben bei _debug = true).
Schau ma mal. Neben der Heizung gibt es bei der Renovierung/Übersiedlung noch andere wichtige Sachen - vielleicht kommt es erst in der nächsten Heizperiode…