Hallo,
ich sitze gerade an etwas Kosmetik für die ein oder andere Darstellung. Dabei kam bei den gplots der TCs und RTs die Frage auf, ist es möglich den kompletten tempList-Verlauf des Tages darzustellen und gleichzeitig die aktuellen Daten von IST-Temperatur.
Bisher habe ich keinen Ansatz im Internet als auch in meinen Überlegungen gefunden.
Daher die Anfrage an Euch - gibt es überhaupt die Möglichkeit, welche Ideen/Ansätze habt ihr?
Danke und ciao
walter
			
			
			
				mit der Templist kann ich nicht beantworten aber eigentlich spiegelt sich ja die Templist im Wert desired-temp wieder (wenn man nicht per Hand schaltet und der RT nicht auf windows_open die desired-temp verändert)
			
			
			
				Ich verstehe die Frage vermutlich auch nicht. Solange die einzelnen Datensaetze als Event im Event-Monitor (oder inform) zu sehen sind, kann man diese auch in SVG darstellen. Man muss alle benoetigten Werte mit einem(!) FileLog speichern, und danach das Plot mit den Daten bestuecken.
			
			
			
				Da die Templist nur als Reading im Clima-Channel des RT zu sehen ist und meine ich nicht im Eventmonitor auftaucht fällt das Loggen flach (macht auch kein Sinn da sie sich eh nicht ändert außer man setzt sie neu).
das Reading sieht so aus (für einen Tag) und hat auchnur den TimeStamp vom auslesen nach setzen (bei mir von vor 6 Monaten...)   
Zitat07:00 16.0 10:00 18.0 24:00 16.0
ein Plott müsste also (es sei einfach mal Freitag) Freitags bis 7 Uhr eine Soll-Temp von 16.0 anzeigen, bis 10:00 18.0 und bis 24:00 wieder 16.0
das geht wirklich am einfachsten mit Desired Temp wenn der RT im Automode ist. 
			
				Zitatist es möglich den kompletten tempList-Verlauf des Tages darzustellen
die Idee ist von der ersten Minute des Tages den kompletten, geplanten Tagesverlauf der desired-temp, so wie er in den TempLists definiert ist, grafisch darzustellen. Die measured-temp wird kontinuierlich wie gewohnt geschrieben. D.h mit dem Blick auf das gplot sehe ich das jetzt IST und SOLL passen, um 17:00 um 4 Grad hochgeregelt wird und um 22:00 auf Nachttemperatur geht.
Grund hierfür das Projekt WAF-Tauglichkeit - ich geben meinen Mädchen die Möglichkeit die Heizung in ihren Zimmern über eine Web-Seite zu kontrollieren. Unterstützt mit dem entsprechenden gplot. Die erste Frage war: "Warum sehe ich nicht den gesamten Tagesplan, der vorgegeben ist". Ich muss dazu noch sagen, dass ich im IT-Software Bereich als PreSales Lösungen verkaufe. Und solche Fragen beim Kunden immer auftauchen und aus meiner Sicht valide sind.
Aber das ganze bitte nicht als kritisch ansehen. Ich hab mir halt Gedanken dazu gemacht und habe keine einfache Lösung gefunden, gut  auch keine komplexe  ;D.
Gut, folglich der finale Schritt - Verifizierung in der community.
Danke und ciao
walter
			
 
			
			
				
das geht mit filelog nicht da hier die werte zeitlich aufsteigend sortiert sein müssen und die aktuelle temperatur immer wieder an die richtige stelle sortiert werden muss. d.h. eigentlich das log file für jeden aktuellen wert komplett neu geschrieben werden muss. 
mit dblog gibt es diese einschränkung nicht. hier könnte man z.b. ein mal am tag das temperatur profil in x minuten abständen erzeugen und die ist temperaturen ganz normal loggen. das problem ist das hierbei aktuelle änderungen dann nicht mehr mit einfließen. 
eine mögliche lösung wäre die komplette grafik nicht mit dem SVG modul zu erzeugen sondern direkt live und dann z.b. per weblink darzustellen. oder mit einem eigenen kleinen modul. vielleicht könnte man auch dieses hypothetische neue modul dazu
bringen die daten in einem format auszuspucken das dann mit dem SVG angezeigt werden kann.
martin hat vor einer weile mal code gepostet der den tages/wochen verlauf der solltemperatur dargestellt hat. das könnte man vermutlich als grundlage verwenden. 
gruss
  andre
			
			
			
				Alternativ generiert man die benoetigten Events per notify/etc.
			
			
			
				Hallo Andre,
Zitatein mal am tag das temperatur profil in x minuten abständen erzeugen
Das mit dem dblog ist eine gute Idee (hab die meisten logs sowieso in eine MySQL umgezogen). Aber sind dann nicht die Timestamps der geplanten Temperaturänderungen zu hinterlegen?
Oder verstehe ich Dich falsch.
ciao walter
			
				ja. genau. du kannst z.b. ein mal um 0:01 die jeweiligen schaltzeiten für den ganzen tag ins log schreiben. Schau mal im netatmo oder withings modul wie man ein event für einen anderen zeitpunkt als jetzt erzeugt. 
ich habe gerade eine idee wie man über ein neues modul beliebig ihr daten zusätzlich in einen plot bekommt. unabhängig von filelog oder dblog. ich kann es aber erst nächste woche probieren. ich habe gerade weder strom noch wasser. dafür sehr viel natur :)
gruss
  andre
			
			
			
				Hallo,
für die RT's habe ich folgende Log Definition 
./log/TEMP_BAD-%W-%Y.log Thermostat_1_Clima:T:.*
Da werden dann Soll-, Isttemperatur und die Ventilstellung geloggt. Das Ganze kann man dann schön in einem Plot darstellen - auch um zusehen, wie der RT regelt. Das sollte auch für die TC's gehen. Ich habe zusätzlich noch Event-on-change .* gesetzt! um die Daten etwas zu minimieren.
Gruß Christoph
			
			
			
				ich habe inzwischen ein modul fast fertig mit dem man unter anderem beliebige zusätzliche daten in einen plot einblenden kann.
bis jetzt gibt es das beispiel nur zum einblenden des wochenprofils von für Heating_Controll/WeekdayTimer devices. wenn ich zurück komme baue ich noch das profil von max thermostaten ein. homematic thermostate würde ich auch gerne noch einbauen ich habe aber kein passendes device.
es wäre schon wenn mir jemand ein list von einem hm thermostat mit wochenprofil machen würde.
ps: das modul kann noch ein paar nette dinge mehr:
- mischen von mehreren FileLog/DbLog devices in einem plot
- einblenden von achsen
- horizontales verschieben der kurven zueinander um z.b. die min/max/average werte von average auf den richtigen tag zu schieben
- eben das einblenden beliebiger live erzeugter daten
- mal sehen was mir noch einfällt.
im screenshot sieht man z.b einen temperatur verlauf aus einem DbLog, ein temperatur profil direkt aus dem device dazu gerendert und den temperatur durchschnitt aus $data{avg2} als horizontale linie.
gruss
  andre
			
			
			
				hallo andre, 
sehr genial. 
thermostatplots interessieren mich zur zeit noch nicht so sehr, sondern vor allem die "hilfslinien". in deinen feature-listen vermisse ich noch zeitfunktionen (f(t)=a*y+b, sin, rechteck, sägezahn, trapez) und vertikale linien (besonders der aktuelle plotzeitpunkt). ist es eventuell auch möglich für min und max jeweils nur einen fetten punkt zu plotten?
die thermostatplots liebe ich jetzt doch schon. da kann man sich ja schon diverse impuls- und rechteckverläufe zusammen basteln. wahnsinn.  :)
leider finde ich keinen code zum testen.  :'(
gruss frank
			
			
			
				Hallo Andre,
hier ein list des Climate-channels
Internals: 
   CFGFN      /opt/fhem/MyFHEM/HausErdgeschoss/Buero.cfg 
   DEF        1B3E3D02 
   NAME       Buero_TC_Climate 
   NR         505 
   STATE      manual 
   TYPE       CUL_HM 
   chanNo     02 
   device     Buero_TC 
   peerList   Buero_FH, 
   CHANGETIME: 
   Helper: 
     Dblog: 
       Desired-temp: 
         Mydblog: 
           TIME       1408731796.63655 
           VALUE      18.0 
       State: 
         Mydblog: 
           TIME       1408861426.2806 
           VALUE      0 
   Readings: 
     2014-08-22 20:23:16   CommandAccepted yes 
     2014-08-22 07:43:38   R-controlMode   manual 
     2014-08-22 07:43:38   R-day-temp      21 C 
     2014-08-18 11:56:20   R-decalHr       6 h 
     2014-08-18 11:56:20   R-decalMin      0 min 
     2014-08-22 07:43:38   R-decalcDay     Sat 
     2014-08-22 07:43:38   R-displayMode   temp-only 
     2014-08-22 07:43:38   R-displayTemp   actual 
     2014-08-22 07:43:38   R-displayTempUnit celsius 
     2014-08-22 07:43:38   R-mdTempValve   auto 
     2014-08-22 07:43:38   R-night-temp    17 C 
     2014-08-22 07:43:38   R-party-temp    20 C 
     2014-08-22 07:43:42   R_0_tempListSat 05:00 18.0 07:00 21.0 09:00 21.0 17:00 21.0 23:00 21.0 24:00 18.0 
     2014-08-22 07:43:42   R_1_tempListSun 05:00 18.0 07:00 21.0 09:00 21.0 17:00 21.0 23:00 21.0 24:00 18.0 
     2014-08-22 07:43:42   R_2_tempListMon 05:00 18.0 07:00 21.0 09:00 21.0 17:00 21.0 23:00 21.0 24:00 18.0 
     2014-08-22 07:43:42   R_3_tempListTue 05:00 18.0 07:00 21.0 09:00 21.0 17:00 21.0 23:00 21.0 24:00 18.0 
     2014-08-22 07:43:42   R_4_tempListWed 05:00 18.0 07:00 21.0 09:00 21.0 17:00 21.0 23:00 21.0 24:00 18.0 
     2014-08-22 07:43:42   R_5_tempListThu 05:00 18.0 07:00 21.0 09:00 21.0 17:00 21.0 23:00 21.0 24:00 18.0 
     2014-08-22 07:43:42   R_6_tempListFri 05:00 18.0 07:00 21.0 09:00 21.0 17:00 21.0 23:00 21.0 24:00 18.0 
     2014-08-22 07:43:42   R_tempList_State verified 
     2014-08-22 07:43:42   controlMode     manual 
     2014-08-22 07:43:42   day-temp        21 C 
     2014-08-22 07:43:42   decalcDay       Sat 
     2014-08-22 20:23:16   desired-temp    18.0 
     2014-08-22 07:43:42   displayMode     temp-only 
     2014-08-22 07:43:42   displayTemp     actual 
     2014-08-22 07:43:42   displayTempUnit celsius 
     2014-08-22 07:43:42   night-temp      17 C 
     2014-08-22 07:43:42   party-temp      20 C 
     2014-08-22 20:21:10   peerList        Buero_FH, 
     2014-08-22 20:23:16   recentStateType ack 
     2014-08-24 08:23:45   state           0 
   Helper: 
     Role: 
       chn        1 
Attributes: 
   TCsClimateStruct AllTCsClimate 
   event-min-interval state:600 
   event-on-change-reading state 
   event-on-update-reading .* 
   expert     1_on 
   group      Buero_Fussboden,Buero_Heizung 
   icon       temp_control 
   model      HM-CC-TC 
   peerIDs    00000000,1D7B1001, 
   room       H-EG-R-Buero 
   stateFormat R-controlMode 
   webCmd     controlMode:desired-temp 
Wenn Du mehr benötigst lass es mich wissen.
ciao walter
			
			
			
				@frank: deine liste fällt komplett unter beliebige sonstige daten. das ist alles mit jeweils einer kleinen perl funktion möglich. du bekommst start und end zeitpunkt übergeben und gibst alle generierten alle punkte der kurve zurück. die temperatur profile sind nur ein Beispiel für so eine funktion. einen punkt bekommst du wie für alle plots über die linien form points. 
@wkarl: danke. 
das modul wird in Frontend gepostet sobald alles geht :)
gruss
  andre
			
			
			
				eine erste version gibt es hier: http://forum.fhem.de/index.php/topic,26529.0.html (http://forum.fhem.de/index.php/topic,26529.0.html).
kurze version:
- logProxy device definieren: 
define lp logProxy- .gplot file erstellen mit einer #logProxy und einer plot zeile:
#logProxy Func:logProxy_WeekProfile2Plot("<device>",$from,$to)
plot "<IN>" using 1:2 axes x1y3 title 'profile' ls l4 lw 1 with steps,\gruss
  andre