Variablen ohne Gerätezuordnung

Programmierung der HomeMatic CCU mittels contronics homeputer CL

Moderator: Co-Administratoren

Antworten
chris4934
Beiträge: 366
Registriert: 07.03.2009, 10:25
Wohnort: Wien Umgebung

Variablen ohne Gerätezuordnung

Beitrag von chris4934 » 31.10.2009, 08:45

Guten Morgen,

bin gerade dabei, die ersten Schritte mit Homeputer CL Studio zu erlernen, und stosse dabei immer wieder auf die Frage, ob es möglich ist, eine Variable ohne Gerätezuordnung zu erstellen. Von denen habe ich einige in der WebUI erstellt. Möchte jetzt Stück für Stück alle Programme auf Homeputer umstellen.

Wie kann ich sonst bei der Visualisierung z.B. Anwesenheit darstellen?
Habe ich einen grundsätzlichen Denkfehler in dieser Hinsicht ?

Ich bitte euch um einen kurzen Denkanstoss. :)

MfG
chris
Mit freundlichen Grüßen
Chris

CCU3, 110 Geräte, Homeputer CL

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Variablen ohne Gerätezuordnung

Beitrag von buempi » 31.10.2009, 10:15

Hallo Chris

Variablen kann man nur in einem OBJEKT erstellen. Das braucht aber kein Hardware-Modul zu sein. Es kann zum Beispiel ein Marko-Objekt sein, welches du unter der Registerlasche "Objekte" über den Knopf "neues Objekt" erstellst.

Auf diese Variable kannst du dich dann in anderen Makros über den vorangestellten Makronamen beziehen:

Code: Alles auswählen

wenn MakroName.VariablenName = "xyz" dann
und sie auch verändern. Anzeigen kannst du die Variable aber nicht direkt, sondern nur, indem du sie z.B. in ein Objekt vom Typ Zeichen schreibst:

Code: Alles auswählen

ZeichenObjekt := MakroName.VariablenName
Um deine Anwesenheit darzustellen, erstellst du ein neues Objekt z.B. vom Typ Schalter. Dieses kannst du dann visualisieren (anzeigen). Ein solches Objekt ist eigentlich nichts anderes als eine "globale Variable". Auf die kannst du dich dann in allen Makros mit dem einfachen Namen beziehen:

Code: Alles auswählen

wenn AnwesenheitsSchalter = "an" dann
Viele Grüsse
Bümpi

chris4934
Beiträge: 366
Registriert: 07.03.2009, 10:25
Wohnort: Wien Umgebung

Re: Variablen ohne Gerätezuordnung

Beitrag von chris4934 » 31.10.2009, 19:09

Danke Bümpi,

hab erfolgreich meine ersten Variablen programmiert.
Passt hier jetzt zwar nicht unbedingt herein, aber du verwendest doch auch den OC3 Funk-Kombisensor.
In der WebUI hatte ich durch das Wetterscript von teddy die tollen Werte für Wind (Durchschnitt), Temp (Max und Min), diese Werte habe ich jetzt in der Visualisierung natürlich nicht mehr. Wie hast du das gelöst ?
neu-1.jpg
MfG
chris
Mit freundlichen Grüßen
Chris

CCU3, 110 Geräte, Homeputer CL

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Variablen ohne Gerätezuordnung

Beitrag von buempi » 31.10.2009, 19:33

Hallo Chris

Nein - ich habe nicht mal eine CCU! Ich kenne Homeputer nur von der FHZ-Seite; und das ist zu etwa 90% identisch.

Ich mache mir morgen mal Gedanken wie man das unter Homeputer lösen kann. Ist nicht besonders schwierig. Die meisten Werte werden ja eh schon angezeigt. Was dir fehlt sind also:

Wind Maximum
Wind Durchschnitt (letzte Stunde? / letzte xx Minuten? / oder letzte xx Stunden?)
Temperatur Minimum
Temperatur Maximum

Nullstellung Wind Maximum und Temperaturen um Mitternacht?

Vielleicht beantwortest du mir noch die fehlenden Angaben, damit es von Anfang an richtig rauskommt?

Viele Grüsse
Bümpi

chris4934
Beiträge: 366
Registriert: 07.03.2009, 10:25
Wohnort: Wien Umgebung

Re: Variablen ohne Gerätezuordnung

Beitrag von chris4934 » 31.10.2009, 19:50

Hallo Bümpi,

vorerst Vielen Dank für deine schnelle Hilfe !
Ich hätte gerne dargestellt:

Temperatur minimum und maximum, Reset um Mitternacht

Wind maximum, Reset um Mitternacht
Wind Durchschnitt, letzte 30 Minuten

Regenmenge gestern, Reset um Mitternacht
Regenmenge heute, Reset um Mitternacht

Wäre super, wenn du das lösen könntest.

MfG
chris
Mit freundlichen Grüßen
Chris

CCU3, 110 Geräte, Homeputer CL

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Variablen ohne Gerätezuordnung

Beitrag von buempi » 01.11.2009, 08:20

Hallo Chris

RegenATag (heute) und RegenLTag (gestern) werden doch von Homeputer bereits angelegt und berechnet, sodass du sie nur noch in deine Ansicht aufnehmen musst?

Hier mein Vorschlag für die übrigen Werte: Du erstellst 4 Objekte vom Typ Zahl, welche du in deine Ansicht aufnimmst:

Code: Alles auswählen

TempMaximum        Startwert -100,0
TempMinimum        Startwert  100,0
WindMaximum        Startwert    0,0
WindDurchschnitt   Startwert    0,0
Im Objekt WettersensorTemp aktivierst du "Ausführen bei Empfang" und stellst zusätzlich den Ausführungsintervall auf "bei Tageswechsel" ein. Dann trägst du folgendes Makro ein:

Code: Alles auswählen

wenn Uhrzeit = "00:00:00" dann
   TempMaximum := WettersensorTemp
   TempMinimum := WettersensorTemp
endewenn

wenn WettersensorTemp > TempMaximum dann
   TempMaximum := WettersensorTemp
endewenn

wenn WettersensorTemp < TempMinimum dann
   TempMinimum := WettersensorTemp
endewenn
Im Objekt WettersensorWiGe (Windgeschwindigkeit) aktivierst du ebenfalls "Ausführen bei Empfang" und stellst den Ausführungsintervall auf "bei Tageswechsel" ein.

Zur Durchschnittsberechnung der letzten 30 Minuten benötigen wir nun aber noch Variablen. Die Wetterstation soll so ca. alle 3 Minuten senden; also sind es 10 Variablen vom Typ Zahl mit Startwert 0,0 und den Namen WiGe1 bis WiGe10, welche du unten im Makrofeld definieren musst.

Dann trägst du folgendes Makro ein:

Code: Alles auswählen

wenn Uhrzeit = "00:00:00" dann
   WindMaximum := WettersensorWiGe
endewenn

wenn WettersensorWiGe > WindMaximum dann
   WindMaximum := WettersensorWiGe
endewenn

wenn Uhrzeit <> "00:00:00" dann
   WiGe1 := WiGe2
   WiGe2 := WiGe3
   WiGe3 := WiGe4
   WiGe4 := WiGe5
   WiGe5 := WiGe6
   WiGe6 := WiGe7
   WiGe7 := WiGe8
   WiGe8 := WiGe9
   WiGe9 := WiGe10
   WiGe10 := WettersensorWiGe
   // ACHTUNG: Alles auf 1 Zeile - auch wenn's im Browser vielleicht 2 sind:
   WindDurchschnitt := (WiGe1 + WiGe2 + WiGe3 + WiGe4 + WiGe5 + WiGe6 + WiGe7 + WiGe8 + WiGe9 + WiGe10) / 10
endewenn
Unschön dabei ist, dass in den ersten 30 Minuten nach dem Start deines Projektes ein falscher Durchschnittswert angezeigt wird. Das liesse sich mit einer umfangreichen Konstruktion verhindern; ich denke aber, dass man damit leben kann.

Natürlich stimmen nach dem Programmstart auch die Tages-Minima und -Maxima nicht; sie beziehen sich dann nur auf die Werte seit dem Start.

Die Bezeichnungen "WettersensorXXXX" musst du natürlich abändern, sodass sie mit den Objekt-Bezeichnungen in deinem Projekt übereinstimmen.

Viele Grüsse
Bümpi

chris4934
Beiträge: 366
Registriert: 07.03.2009, 10:25
Wohnort: Wien Umgebung

Re: Variablen ohne Gerätezuordnung

Beitrag von chris4934 » 01.11.2009, 09:31

Guten Morgen Bümpi,

super, Danke, werd ich gleich probieren ! :D

MfG
chris

PS.: Komisch, kann die Werte Regen(A) und Regen(L) bei mir nirgends finden.
Mit freundlichen Grüßen
Chris

CCU3, 110 Geräte, Homeputer CL

WAdler 68
Beiträge: 1450
Registriert: 09.11.2008, 16:29
Hat sich bedankt: 3 Mal

Re: Variablen ohne Gerätezuordnung

Beitrag von WAdler 68 » 02.11.2009, 17:04

hi, ich habe das selbe problem auch gehabt. nun aufgegeben. man kann keine werte von der cl software ins webui übergeben. doch du kannst die virtuellen gerät nutzen um schaltzustände dir von der cl software im webui anzeigen zu lassen bzw z.b. zeiten umzuschalten.
einfach die zeit tabellen auf ein virtuelles gerät legen und auswerten, ob es kurz oder lang angesteuert wird. wichtig - dabei sollte der schalter bei Änderung - angewählt werden im virtuellem gerät. (ich kann so den kalender vom web ui und die vorteile der zeiteingabe von der cl software kombinieren.)

Antworten

Zurück zu „homeputer CL“