HMIP-SWO-PL interne Scripte
Moderator: Co-Administratoren
-
- Beiträge: 50
- Registriert: 07.04.2018, 16:59
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
Re: HMIP-SWO-PL interne Scripte
Für einen Nichtexperten die Beste Erklärung!
Ohne Inhalt und Sinn.
eines der Programme ???? enthält ein sehr kurzes Script und wird über das Zeitmodul getriggert. Dort im Zeitmodul steht die Zeit.
Die beiden anderen Programme???? laufen bei Aktualisierung.
Wo soll der Leie oder Nichtexperte das finden ?
mfg
herby
Ohne Inhalt und Sinn.
eines der Programme ???? enthält ein sehr kurzes Script und wird über das Zeitmodul getriggert. Dort im Zeitmodul steht die Zeit.
Die beiden anderen Programme???? laufen bei Aktualisierung.
Wo soll der Leie oder Nichtexperte das finden ?
mfg
herby
Wo kämen wir denn hin, wenn alle sagten "Wo kämen wir denn hin" und niemand ginge um zu sehen, wohin wir kämen, wenn wir gingen!?!
Ich hab so Hunger, dass ich vor lauter Durst gar nicht weiß was ich rauchen soll, so müde bin ich!!!
Spezialisten wissen immer mehr über immer weniger, bis Sie alles über nichts wissen.
Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher.
Ich hab so Hunger, dass ich vor lauter Durst gar nicht weiß was ich rauchen soll, so müde bin ich!!!
Spezialisten wissen immer mehr über immer weniger, bis Sie alles über nichts wissen.
Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher.
Re: HMIP-SWO-PL interne Scripte
Um die Antworten und Hinweise in diesem Thread zu vestehen muss keiner Experte sein! Es reicht lediglich aus sich mit den eingesetzten Geräten, dem System usw. auseinanderzusetzen. Aber gut... so ist es halt... pampig werden hilft auf jeden Fall nicht weiter!
Nicht vergessen dies ist ein User-Forum und nicht der Support von eQ3.
Beim anlernen legen einige Geräte (z.B. Schalt-Mess-Aktoren, Wetterstationen usw.) Programme und Skripte auf der CCU an. Diese Programme dienen dazu das die betreffenden Aktoren/Sensoren ihre Daten auswerten und darstellen können.
Solche Programme werden "unsichtbar" als "systemintern" von den Aktoren/Sensoren angelegt. Wenn man in der WebUI den Ordner Programme öffnet gibt es untern einen Button "systeminterne einblenden". Ein Klick darauf zeigt dann auch die "versteckten" Programme an.
Nicht vergessen dies ist ein User-Forum und nicht der Support von eQ3.
Beim anlernen legen einige Geräte (z.B. Schalt-Mess-Aktoren, Wetterstationen usw.) Programme und Skripte auf der CCU an. Diese Programme dienen dazu das die betreffenden Aktoren/Sensoren ihre Daten auswerten und darstellen können.
Solche Programme werden "unsichtbar" als "systemintern" von den Aktoren/Sensoren angelegt. Wenn man in der WebUI den Ordner Programme öffnet gibt es untern einen Button "systeminterne einblenden". Ein Klick darauf zeigt dann auch die "versteckten" Programme an.
Viele Grüße!
Jörg
Jörg
-
- Beiträge: 3747
- Registriert: 23.09.2017, 12:04
- Hat sich bedankt: 67 Mal
- Danksagung erhalten: 122 Mal
Re: HMIP-SWO-PL interne Scripte
Du schreibst selbst, dass Du die 3 Programme zum Sensor gefunden hast.herbylfs hat geschrieben:Für einen Nichtexperten die Beste Erklärung!
Ohne Inhalt und Sinn.
Sowohl der automatisch erzeugte Programmname , als auch die Triggerbedingung sind absolut selbst erklärend. Mehr Hilfestellung kann man nicht geben.Ich suche den Teil zum umstellen der Uhrzeit von 07:00 aus 03:30, finde ihn aber nicht!
In den drei systeminternen Programmen seheich keine Zeit 07:00.
-
- Beiträge: 50
- Registriert: 07.04.2018, 16:59
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
Re: HMIP-SWO-PL interne Scripte
Hi,
erstmal Entschuldigung für die Äusserungen vom Mai !!
War irgendwie angefressen.
Einiges hat sich in der Zeit durch Lesen der Forenbeiträge erledigt.
Jetzt suche ich eine möglichkeit, folgende Infos in Variablen zu setzen:
Aus /addons/xmlapi/statelist.cgi
Wetter HM
<datapoint name="BidCos-RF.OEQ1864826:1.RAIN_COUNTER" type="RAIN_COUNTER" ise_id="1369" value="14.750000" valuetype="4" valueunit="mm" timestamp="1532884372" operations="5"/>
Wetter IP 18F8
<datapoint name="HmIP-RF.001858A98C18F8:1.RAIN_COUNTER" type="RAIN_COUNTER" ise_id="5095" value="8.600000" valuetype="4" valueunit="mm" timestamp="1532884476" operations="5"/>
Wetter IP 19DD
<datapoint name="HmIP-RF.001858A98C19DD:1.RAIN_COUNTER" type="RAIN_COUNTER" ise_id="5193" value="12.700000" valuetype="4" valueunit="mm" timestamp="1532884394" operations="5"/>
zB
Regenmenge HM
Regenmenge IP18F8
Regenmenge IP19DD
Ist schon erstaunlich, das bei einen Regenguss, sehr verschiedene Werte herauskommen!
Für Hilfe sehr dankbar.
mfg
herby
erstmal Entschuldigung für die Äusserungen vom Mai !!
War irgendwie angefressen.
Einiges hat sich in der Zeit durch Lesen der Forenbeiträge erledigt.
Jetzt suche ich eine möglichkeit, folgende Infos in Variablen zu setzen:
Aus /addons/xmlapi/statelist.cgi
Wetter HM
<datapoint name="BidCos-RF.OEQ1864826:1.RAIN_COUNTER" type="RAIN_COUNTER" ise_id="1369" value="14.750000" valuetype="4" valueunit="mm" timestamp="1532884372" operations="5"/>
Wetter IP 18F8
<datapoint name="HmIP-RF.001858A98C18F8:1.RAIN_COUNTER" type="RAIN_COUNTER" ise_id="5095" value="8.600000" valuetype="4" valueunit="mm" timestamp="1532884476" operations="5"/>
Wetter IP 19DD
<datapoint name="HmIP-RF.001858A98C19DD:1.RAIN_COUNTER" type="RAIN_COUNTER" ise_id="5193" value="12.700000" valuetype="4" valueunit="mm" timestamp="1532884394" operations="5"/>
zB
Regenmenge HM
Regenmenge IP18F8
Regenmenge IP19DD
Ist schon erstaunlich, das bei einen Regenguss, sehr verschiedene Werte herauskommen!
Für Hilfe sehr dankbar.
mfg
herby
Wo kämen wir denn hin, wenn alle sagten "Wo kämen wir denn hin" und niemand ginge um zu sehen, wohin wir kämen, wenn wir gingen!?!
Ich hab so Hunger, dass ich vor lauter Durst gar nicht weiß was ich rauchen soll, so müde bin ich!!!
Spezialisten wissen immer mehr über immer weniger, bis Sie alles über nichts wissen.
Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher.
Ich hab so Hunger, dass ich vor lauter Durst gar nicht weiß was ich rauchen soll, so müde bin ich!!!
Spezialisten wissen immer mehr über immer weniger, bis Sie alles über nichts wissen.
Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher.
-
- Beiträge: 3747
- Registriert: 23.09.2017, 12:04
- Hat sich bedankt: 67 Mal
- Danksagung erhalten: 122 Mal
Re: HMIP-SWO-PL interne Scripte
Ich weiss nicht genau, was Du meinst. Evtl. das im zweiten Beitrag ?
Re: HMIP-SWO-PL interne Scripte
Ja genau. Das 2. Script komplett
Habe das so verstanden.
Die 3 innternen programme bleiben bis auf das erste mit dem zeittigger. Den von 7 auf 0.03 oder so.
4 variablen anlegen auf zahl
Ein programm von mir mit wenn regen dann aktualisiere... Usw. Dann script ist klar.
Im script ändere ich meine zahl von der 30... und meine systemvariablen einfügen bei:
= dom.GetObject ('meine systemvariable')
Aber damit weiß ich nicht was gemeint ist.
! Kopieren der internen Sysvar mit der Regenmenge des Vortages in die selbst angelegte SysVar
oSysVarRegenGestern.State(oSysVarRainCounterYesterday.Value());
Daher kannst du nur kurz den kompletten script einstellen.
Wäre nett, Danke
Habe das so verstanden.
Die 3 innternen programme bleiben bis auf das erste mit dem zeittigger. Den von 7 auf 0.03 oder so.
4 variablen anlegen auf zahl
Ein programm von mir mit wenn regen dann aktualisiere... Usw. Dann script ist klar.
Im script ändere ich meine zahl von der 30... und meine systemvariablen einfügen bei:
= dom.GetObject ('meine systemvariable')
Aber damit weiß ich nicht was gemeint ist.
! Kopieren der internen Sysvar mit der Regenmenge des Vortages in die selbst angelegte SysVar
oSysVarRegenGestern.State(oSysVarRainCounterYesterday.Value());
Daher kannst du nur kurz den kompletten script einstellen.
Wäre nett, Danke
-
- Beiträge: 21
- Registriert: 02.12.2018, 12:33
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: HMIP-SWO-PL interne Scripte
Bei meiner Wetterstation Plus funktioniert der Reset von Sonnenscheindauer und Regenzähler nicht.
Es sieht so aus, als existieren bei mir die Skripte doppelt (15865 & 16607). Sieht das bei Euch auch so aus?
Es sieht so aus, als existieren bei mir die Skripte doppelt (15865 & 16607). Sieht das bei Euch auch so aus?
-
- Beiträge: 21
- Registriert: 02.12.2018, 12:33
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: HMIP-SWO-PL interne Scripte
Kann bitte jemand von Euch, der auch die Wetterstation HMIP-SWO-PL in Betrieb hat, die internen Skripte mal nachauen?
Ich würde ungern die Wetterstation aus der CCU3 löschen und neu anlernen, da dann die ganzen Skripte im Eimer sind.
Wenn ich den Inhalt der beiden Skripte von einem anderen System als Vergleich hätte, könnte ich das bei mir manuell anpassen.
Danke schon jetzt für die Unterstützung und Hilfe
-
- Beiträge: 3747
- Registriert: 23.09.2017, 12:04
- Hat sich bedankt: 67 Mal
- Danksagung erhalten: 122 Mal
Re: HMIP-SWO-PL interne Scripte
Hallo
etwas späte Antwort. Ich schaue hier nicht mehr so oft rein
Es könnte sein, dass in den Scripten eigene Anpassungen drin sind, um die Werte für den Vortag jeweils in eigene SV zu speichern.
etwas späte Antwort. Ich schaue hier nicht mehr so oft rein
Es könnte sein, dass in den Scripten eigene Anpassungen drin sind, um die Werte für den Vortag jeweils in eigene SV zu speichern.
Code: Alles auswählen
object chn = dom.GetObject('36774');
object oSysVarSunshineCounterToday = dom.GetObject('svHmIPSunshineCounterToday_36774');
object oSysVarSunshineCounterYesterday = dom.GetObject('svHmIPSunshineCounterYesterday_36774');
object oSysVarRainCounterToday = dom.GetObject('svHmIPRainCounterToday_36774');
object oSysVarRainCounterYesterday = dom.GetObject('svHmIPRainCounterYesterday_36774');
object oSysVarRegenGestern = dom.GetObject('RegenmengeGestern');
if (oSysVarSunshineCounterYesterday && oSysVarSunshineCounterToday) {oSysVarSunshineCounterYesterday.State(oSysVarSunshineCounterToday.Value());}if (oSysVarSunshineCounterToday) {oSysVarSunshineCounterToday.State(0);}if (oSysVarRainCounterYesterday && oSysVarRainCounterToday) {oSysVarRainCounterYesterday.State(oSysVarRainCounterToday.Value());}if (oSysVarRainCounterToday) {oSysVarRainCounterToday.State(0);}
oSysVarRegenGestern.State(oSysVarRainCounterYesterday.Value());
Code: Alles auswählen
object chn = dom.GetObject('36774');
object oOverflow = chn.DPByControl('WEATHER_TRANSMIT.RAIN_COUNTER_OVERFLOW');
object oRainCounter = chn.DPByControl('WEATHER_TRANSMIT.RAIN_COUNTER');
object oSysVarRain = dom.GetObject('svHmIPRainCounter_36774_00181709ADB1B5:1');
object oSysVarRainOldVal = dom.GetObject('svHmIPRainCounterOldVal_36774');
object oSysVarCounterToday = dom.GetObject('svHmIPRainCounterToday_36774');
object oSysVarCounterYesterday = dom.GetObject('svHmIPRainCounterYesterday_36774');
! SysVar fu%u0308r eigene Regenmenge heute¬
object oSysVarRainToday = dom.GetObject('RegenmengeHeute');
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;
}
}
oSysVarRainOldVal.State(devVal);
oSysVarRain.State(sysVarVal + diffVal);
todayTotal = sysVarTodayVal + diffVal;
if (todayTotal >= 1440.0) {todayTotal = 0.0;}
oSysVarCounterToday.State(todayTotal);
! Kopieren in eigene SysVar¬
oSysVarRainToday.State(oSysVarCounterToday.Value());
Code: Alles auswählen
object chn = dom.GetObject('36774');
object oOverflow = chn.DPByControl('WEATHER_TRANSMIT.SUNSHINEDURATION_OVERFLOW');
object oSunshineCounter = chn.DPByControl('WEATHER_TRANSMIT.SUNSHINEDURATION');
object oSysVarSunshine = dom.GetObject('svHmIPSunshineCounter_36774_00181709ADB1B5:1');
object oSysVarSunshineOldVal = dom.GetObject('svHmIPSunshineCounterOldVal_36774');
object oSysVarCounterToday = dom.GetObject('svHmIPSunshineCounterToday_36774');
object oSysVarCounterYesterday = dom.GetObject('svHmIPSunshineCounterYesterday_36774');
boolean overFlowFlag = oOverflow.Value();
real devVal = oSunshineCounter.Value();
real devValMax = oSunshineCounter.ValueMax();
real oldDevVal = oSysVarSunshineOldVal.Value();
real diffVal = 0.0;
real sysVarVal = oSysVarSunshine.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;
}
}
oSysVarSunshineOldVal.State(devVal);
oSysVarSunshine.State(sysVarVal + diffVal);
todayTotal = sysVarTodayVal + diffVal;
if (todayTotal >= 1440.0) {todayTotal = 0.0;}
oSysVarCounterToday.State(todayTotal);