Wettersensor HMIP-SWO-PR: Fakten und Fragen

HMIP lokale Installation

Moderator: Co-Administratoren

Virusburn
Beiträge: 5
Registriert: 22.01.2021, 14:31
System: CCU

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Virusburn » 29.04.2021, 17:14

Hallo Germa,

hast du meine PN bekommen?

Germa
Beiträge: 169
Registriert: 15.12.2019, 12:26
System: CCU
Hat sich bedankt: 30 Mal
Danksagung erhalten: 19 Mal

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Germa » 29.04.2021, 21:02

hi, ja, aber irgendwas stimmt im Benachrichtigungssystem nicht, die Meldung ist nur per email da, nicht in meinen PN.

Sorry Schulung mache ich nicht, dafür habe ich echt keine Zeit die nächsten Monate (und eigentlich auch noch nicht genug Ahnung).
Ich hab vor 3 Jahren auch so gestartet, CCU3 gekauft und gehofft, dass ich irgendwelche Lösungen im Netz finde. Fakt ist, man merkt schnell, dass man an die Grenzen des Systems kommt, wenn man sich nicht intensiv mit den Grundlagen beschäftigt. DAS musst Du tun, sonst wirst Du nie glücklich mit Homematic, da Du immer angewiesen bist auf ein paar Profis, die Dir Lösungen basteln (und ich bin keiner von denen) oder Du werkelst irgendwie herum und produzierst Dir ein unstabiles System.
Wie gesagt, im Post1 ist für den Wettersensor alles genau beschrieben. Wenn Du damit Schwierigkeiten hast, musst Du lesen lesen lesen, die eq3 Basisdokumente studieren und Dich ein bisschen mit der Grundlagen-Script-Programmierung beschäftigen.
Grüße
wenn wir uns alle gegenseitig helfen, ist allen geholfen :wink:
_______________________________________________
CCU3 seit 2018, 103 Geräte, 202 Programme, 222 sysvar
Projekte: Wettersensor viewtopic.php?t=65631

Virusburn
Beiträge: 5
Registriert: 22.01.2021, 14:31
System: CCU

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Virusburn » 02.05.2021, 09:41

Hallo Germa dann frag ich jetzt mal andersrum....

Wie du gesagt hast steht alles im Post 1 drin...
Bei deinem folgenden Punkt hast du ja folgendes erklärt & geändert:
Bild

Wenn ich auf meiner CCU3 schaue habe ich erstmal die angelegten versteckten Programme, wobei 3 davon fürs Wetter sind.

Danach bin ich dann auf: prgRainCounter_1651_00185BE9A574B2:1 --> bearbeiten gegangen, dann sieht es ja wie folgt aus:
Bild

Du hast jetzt bei dir einen Code stehten und ich habe eine Visualisierung. Was muss ich tun um in diese Codeebene zu kommen?
Entschuldige mein Unwissen, aber daran hänge ich bereits...

Muss ich jetzt die vorhandenen 3 bearbeiten oder jeweils neue erstellen?

Germa
Beiträge: 169
Registriert: 15.12.2019, 12:26
System: CCU
Hat sich bedankt: 30 Mal
Danksagung erhalten: 19 Mal

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Germa » 02.05.2021, 10:39

Du klickst im im Programm (Dein Bild 2) neben "Skript" auf die unterstrichene Zeile "object chn ..." und kommst dann in den Code Editor.
Das würde ich Dir bei Deinem aktuellen Kenntnisstand auf keinen Fall empfehlen. Bevor man im systemeigenen Code rumspielt, sollte man unbedingt die Grundlagen lernen
wenn wir uns alle gegenseitig helfen, ist allen geholfen :wink:
_______________________________________________
CCU3 seit 2018, 103 Geräte, 202 Programme, 222 sysvar
Projekte: Wettersensor viewtopic.php?t=65631

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Xel66 » 02.05.2021, 12:07

Germa hat geschrieben:
02.05.2021, 10:39
Das würde ich Dir bei Deinem aktuellen Kenntnisstand auf keinen Fall empfehlen.
Wer schon mit der WebUI überfordert ist und in einem geöffneten Programm nicht mal ein Script findet, sollte dringendst gehalten sein, sich sich mit dem Einsteigerthread und dem als Download beim Hersteller verfügbaren Handbuch zur WebUI zu beschäftigen. Damit gelingt zumindest das Bewegen innerhalb der WebUI und das Erstellen eigener Programme. Das Scripting steht auf einem ganz anderen Blatt. Ich kann auch nicht nachvollziehen, warum gerade Einsteiger ohne das Mindestmaß an Kenntnissen, sich ausgerechnet immer mit den kompliziertesten Lösungsansätzen beschäftigen. Sicher ist niemand als ausgewachsener Programmierer geboren und hat die Möglichkeiten der CCU mit Löffeln gefressen, aber das Beschäftigen mit den Basics ist essenziell.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Virusburn
Beiträge: 5
Registriert: 22.01.2021, 14:31
System: CCU

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Virusburn » 02.05.2021, 20:41

Naja,

warum will ich gerade diese Einstellungen?!
Ganz einfach das meiste werte ich mit HomeAssistant aus.
Homematic ist für mich zum programmieren nicht so relevant.

Ich wollte nur das mit dem Wettersensor abbilden nicht mehr und nicht weniger.

Da bezahle ich lieber paar Euros und das ist erledigt und funktioniert, wie das ich da 10 Stunden rumdoktore, wenns überhaupt langt...

Germa
Beiträge: 169
Registriert: 15.12.2019, 12:26
System: CCU
Hat sich bedankt: 30 Mal
Danksagung erhalten: 19 Mal

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Germa » 02.05.2021, 23:41

ja, das habe ich schon verstanden, aber ohne Kenntnis in einem Skript Anpassungen vornehmen, führt garantiert (und da reicht nur ein einziges falsches Zeichen) zur "Zerstörung" der Daten des Wettersensors und wem ist dann geholfen, wenn der teure Wetterstation keine Daten mehr liefert .....
wenn wir uns alle gegenseitig helfen, ist allen geholfen :wink:
_______________________________________________
CCU3 seit 2018, 103 Geräte, 202 Programme, 222 sysvar
Projekte: Wettersensor viewtopic.php?t=65631

Jan_Stfbg
Beiträge: 54
Registriert: 05.05.2019, 08:41
System: CCU
Wohnort: 35460
Hat sich bedankt: 17 Mal

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Jan_Stfbg » 07.08.2021, 23:04

Germa hat geschrieben:
16.02.2021, 21:10
Hallo zusammen,

Der große Wettersensor von Homematic IP fristet in den Foren irgendwie ein geringfügiges Dasein. Seit Tagen beschäftige ich mich mit dem Gerät auf der CCU3 und dem Auslesen der Werte. Einige Hilfe dazu hat mir dieses Forum bereits geliefert, an anderen Stellen komme ich einfach nicht weiter. Ich tue mich schwer mit der Script-Programmierung, habe mir aber mit Hilfe von Alchy, Black und einigen anderen ambitionierten Profis ein bisschen Verständnis angeeignet. Also fasse ich mal zusammen, was ich bisher weiß:

Ausgangslage:
Ich möchte bei Aktualisierung des Sensors (schickt ja alle drei Minuten die Werte)* (siehe unten) selbst definierte Systemvariablen füllen, sie heißen bei mir
Sonnenschein_heute
Sonnenschein_gestern
Regenmenge_heute
Regenmenge_gestern
Regenbeginn
TempAussen
Dazu kommen etliche Min- und Max- Angaben und Aktualisierungszeiten, dazu mehr weiter unten und im nächsten post.

Nach dem Anlernen liefert der Sensor folgende Datenpunkte:
56755 HmIP-RF.xxxxxxxxxxxx:1
56756 HmIP-RF.xxxxxxxxxxxx:1.ACTUAL_TEMPERATURE
56758 HmIP-RF.xxxxxxxxxxxx:1.HUMIDITY
56760 HmIP-RF.xxxxxxxxxxxx:1.ILLUMINATION
56762 HmIP-RF.xxxxxxxxxxxx:1.RAINING --> Regenbeginn
56763 HmIP-RF.xxxxxxxxxxxx:1.RAIN_COUNTER --> Gesamtregenmenge
56766 HmIP-RF.xxxxxxxxxxxx:1.SUNSHINEDURATION --> Gesamtsonnenscheindauer
56769 HmIP-RF.xxxxxxxxxxxx:1.WIND_DIR
56770 HmIP-RF.xxxxxxxxxxxx:1.WIND_DIR_RANGE
56773 HmIP-RF.xxxxxxxxxxxx:1.WIND_SPEED
Die Ise-IDs sind dann natürlich bei jedem anders.

Versteckt dazu werden folgende interne Systemvariablen erzeugt, die man mit einem Script hier im Forum von Alchy auslesen kann:
svHmIPRainCounter_56755_xxxxxxxxxxxx:1
svHmIPRainCounterOldVal_56755
svHmIPRainCounterToday_56755
svHmIPRainCounterYesterday_56755
svHmIPSunshineCounter_56755_xxxxxxxxxxxx:1
svHmIPSunshineCounterOldVal_56755
svHmIPSunshineCounterToday_56755
svHmIPSunshineCounterYesterday_56755

Dazu werden drei versteckte Programme angelegt, die in der CCU unter > Programme - systeminterne Programme einblenden < zum Vorschein kommen.
Sie heißen
- prgDailySunshineRainCounter_56755 (wird von eq-3 vorgegeben 7 Uhr morgens täglich ausgeführt, habe ich auf 00:01 Uhr geändert)
- prgRainCounter_56755_56755_xxxxxxxxxxxx:1 (Ausführung jedes Mal, wenn Werte geschickt werden)
- prgSunshineCounter_56755_xxxxxxxxxxxx:1 (Ausführung jedes Mal, wenn Werte geschickt werden)

In prgRainCounter.... kann man mit ein paar ergänzten Zeilen von Alchy die aktuelle Regenmenge in die eigene Variable schreiben viewtopic.php?t=43666. Das sieht dann bei mir so aus und funktioniert auch:

Code: Alles auswählen

object chn = dom.GetObject('56755');
object oOverflow = chn.DPByControl('WEATHER_TRANSMIT.RAIN_COUNTER_OVERFLOW');
object oRainCounter = chn.DPByControl('WEATHER_TRANSMIT.RAIN_COUNTER');
object oSysVarRain = dom.GetObject('svHmIPRainCounter_56755_xxxxxxxxxxxx:1');
object oSysVarRainOldVal = dom.GetObject('svHmIPRainCounterOldVal_56755');
object oSysVarCounterToday =  dom.GetObject('svHmIPRainCounterToday_56755');
object oSysVarCounterYesterday =  dom.GetObject('svHmIPRainCounterYesterday_56755');
!
!eigene sysVar deklarieren und dem Objekt zuweisen
object oSysVarMyCounterToday = dom.GetObject('Regenmenge_heute');
!
boolean overFlowFlag = oOverflow.Value();
real devVal = oRainCounter.Value();
real devValMax = oRainCounter.ValueMax();
real oldDevVal = oSysVarRainOldVal.Value();
real diffVal = 0.0;
real sysVarVal = oSysVarRain.Value();
real sysVarTodayVal = oSysVarCounterToday.Value();
real todayTotal = 0.0;
integer tmp_devVal = (devVal.ToString().ToFloat() * 1000).ToInteger();
integer tmp_oldDevVal = (oldDevVal.ToString().ToFloat() * 1000).ToInteger();
if (overFlowFlag == false) {
! Normal conditions
if (tmp_oldDevVal <= tmp_devVal) {
diffVal = devVal - oldDevVal;
}
! Device has rebooted
if (tmp_oldDevVal > tmp_devVal) {
diffVal = devVal;
}
} else {
!overFlow is true
if (tmp_oldDevVal > tmp_devVal) {
! An device overflow has occured
diffVal = (devVal + devValMax) - oldDevVal;
} else {
! Once the overflow flag has been set it will only be false when the device reboots
! Therefore this is the normal condition after an device overflow
diffVal = devVal - oldDevVal;
}
}
if (tmp_devVal != 0) {
oSysVarRainOldVal.State(devVal);
oSysVarRain.State(sysVarVal + diffVal);
}
todayTotal = sysVarTodayVal + diffVal;
if (todayTotal >= 1440.0) {todayTotal = 0.0;}
oSysVarCounterToday.State(todayTotal);
!
!Werte in die eigenen sysvar schreiben
oSysVarMyCounterToday.State(todayTotal);
Analog dazu funktioniert das auch genauso mit dem Sonnenscheinscript prgSunshineCounter....

In das dritte Script "prgDailySunshineRainCounter_56755" habe ich das Auslesen der Regenmenge_gestern und Sonnenschein_gestern eingebaut, denn das muss ja nur einmal täglich in die Variable geschrieben werden. Sieht dann so aus:

Code: Alles auswählen

object chn = dom.GetObject('56755');
object oSysVarSunshineCounterToday = dom.GetObject('svHmIPSunshineCounterToday_56755');
object oSysVarSunshineCounterYesterday = dom.GetObject('svHmIPSunshineCounterYesterday_56755');
object oSysVarRainCounterToday = dom.GetObject('svHmIPRainCounterToday_56755');
object oSysVarRainCounterYesterday = dom.GetObject('svHmIPRainCounterYesterday_56755');
if (oSysVarSunshineCounterYesterday && oSysVarSunshineCounterToday) {oSysVarSunshineCounterYesterday.State(oSysVarSunshineCounterToday.Value());}if (oSysVarSunshineCounterToday) {oSysVarSunshineCounterToday.State(0);}if (oSysVarRainCounterYesterday && oSysVarRainCounterToday) {oSysVarRainCounterYesterday.State(oSysVarRainCounterToday.Value());}if (oSysVarRainCounterToday) {oSysVarRainCounterToday.State(0);}

!eigene Systemvariable für Regenmenge_gestern beschreiben
object oSysVarMyRainCounterYesterday = dom.GetObject('Regenmenge_gestern');
oSysVarMyRainCounterYesterday.State(oSysVarRainCounterYesterday.Value());

!eigene Systemvariable für Sonnenschein_gestern beschreiben
object oSysVarMySunshineCounterYesterday = dom.GetObject('Sonnenschein_gestern');
oSysVarMySunshineCounterYesterday.State(oSysVarSunshineCounterYesterday.Value());
Auch schaffe ich es, den Datenpunkt für Regenbeginn bei einsetzendem Regen auszulesen:

Code: Alles auswählen

!Regenbeginn aus Wettersensor abfragen und in Variable "Regenbeginn" schreiben
var  RegBeg = dom.GetObject("HmIP-RF.*******:1.RAINING").Value();
dom.GetObject("Regenbeginn").State(RegBeg);
Ob das mit der Detektion des beginnenden Regens klappt, habe ich noch nicht herausgefunden ... ich werde berichten.
Das Auslesen der Werte für die Temperatur erfolgt auf gleiche Weise.

Für folgende Variablen möchte ich die Werte ermitteln:
Regenbeginn.Zeit
TempAussenMin
TempAussenMax
TempAussenMin.Zeit
TempAussenMax.Zeit
WindMax
Da habe ich schon einige Anregungen hier im Forum gefunden und werde nochmal weiter probieren ... ich werde scheitern :D und Euch dann im nächsten post mit meinen Problemen dazu befeuern.

Helligkeit
Wie aus mehreren Foren erfahren geht es auch mir so, dass bei strahlendem Sonnenschein der Helligkeitssensor morgens einfach auf Vollausschlag Wert 100000 springt und dort auch für mehrere Stunden bleibt. Links dazu:
https://de.elv.com/forum/merkwuerdige-w ... nsor-16535
oder auch
viewtopic.php?t=52103
Bekleben will ich meinen Sensor aber nicht. Ich bin auf Firmware 1.0.18 und hoffe, dass eq-3 in Kürze nachbessert. Unverständlich eigentlich, denn ich habe auch den Helligkeitssensor HmIP-SLO und bei dem funktioniert das seit langer Zeit tadellos und vor allem mit gemittelten Werten klasse.

* wie ich festgestellt habe, liefert der Sensor seine Werte im Abstand zwischen 2-3 Minuten und zwar nach einem mehr oder weniger festen Zickzackmuster-Zeitabstand (siehe Dateianhang)
Guten Abend @germa,
siehst Du ein großes Problem darin auch die Regenmenge der letzten Stunde auszwerten?
Wie würdest Du dran gehen?
Dankeschön für einen Tipp.

Gruß Jan

Germa
Beiträge: 169
Registriert: 15.12.2019, 12:26
System: CCU
Hat sich bedankt: 30 Mal
Danksagung erhalten: 19 Mal

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Germa » 23.08.2021, 23:51

Hi Jan, die Frage müsstest Du mal in die große Runde stellen, ich bin da nicht so firm bei Programmiersachen mit Zeitauswertung. Bei mir liefert diese Werte mein Netatmo-Außenmodul, deswegen brauchte ich das bisher nicht
wenn wir uns alle gegenseitig helfen, ist allen geholfen :wink:
_______________________________________________
CCU3 seit 2018, 103 Geräte, 202 Programme, 222 sysvar
Projekte: Wettersensor viewtopic.php?t=65631

Jan_Stfbg
Beiträge: 54
Registriert: 05.05.2019, 08:41
System: CCU
Wohnort: 35460
Hat sich bedankt: 17 Mal

Re: Wettersensor HMIP-SWO-PR: Fakten und Fragen

Beitrag von Jan_Stfbg » 30.08.2021, 21:26

Germa hat geschrieben:
23.08.2021, 23:51
Hi Jan, die Frage müsstest Du mal in die große Runde stellen, ich bin da nicht so firm bei Programmiersachen mit Zeitauswertung. Bei mir liefert diese Werte mein Netatmo-Außenmodul, deswegen brauchte ich das bisher nicht
@ALL, kann mir dabei jemand helfen?

Antworten

Zurück zu „HomeMatic IP mit CCU“