WIIPS - WETTER - Regenmenge

Hallo Torro,

habe hier ein Problem mit der Regenmenge im Wettermodul.

Mir wird hier nichts angezeigt wobei sich aber die Regenmenge laut Variable ändert.

Hast Du einen Tip für mich.

Hallo Werner,

den gleichen Effekt habe ich bei Torro schon angemeldet. Aber wir können es gern in diesem Thread weiterbehandeln.
Hier meine Idee, warum die Regenmenge nicht angezeigt wird.


		//.......
}
// Behandlung Regenmenge
// $value = aktueller Wippenwert
IF ( !IPS_VariableExists ( 'RRD_RegenTag' ) ) {
    IPS_CreateVariable ( 'RRD_RegenTag', 'Integer' );
    SetValueInteger( 'RRD_RegenTag', 0);
}
IF ( !IPS_VariableExists ( 'RRD_RegenVorTag' ) ) {
    IPS_CreateVariable ( 'RRD_RegenVorTag', 'Integer' );
    SetValueInteger( 'RRD_RegenVorTag', 0);
}
if ( date("H") == '00' AND date("i") == '00' ) {
    SetValueInteger('RRD_RgenVorTag', GetValueInteger('RRD_RegenTag') );
    // Du setzt am Anfang den Tages den Wert RRD-Regentag geich 0
    SetValueInteger('RRD_RegenTag',0);
}

// Korrekturberechnung Nibble-Change von Thomas wird für KS300-2 
//  benötigt.  

$a=floor((GetValueInteger("KS300_Regenmenge")%256)/16)+(GetValueInteger("KS300_Regenmenge")%16)*16+floor(GetValueInteger("KS300_Regenmenge")/256)*256;
               SetValueInteger("KS300_Regenmenge",intval($a));
					$value = $a;

$regen_new = $value;
$regen_old = GetValueInteger('RRD_RegenTag');
// Damit wird der Wert $regen_old auch gleich 0
if ( $regen_new < $regen_old ) {
    // Zaehlerueberlauf 12bit
    $regen_new = $regen_new + 4095;
}
$value = ( $regen_new - $regen_old );
// $regen_new ist der aktuelle Stand des Wippenzählers, bei mir aktuell 1022. Damit wird der Wert $value auch 1022.
// Da der Wert größer 100 ist springt das Script in den "else-Zweig und setzt $value gleich 0"
if ( $value < 100 ) {
    SetValueInteger('RRD_RegenTag', $value);
} else {
    $value = GetValueInteger('RRD_RegenTag');
}
$value = $value * $graph['rmfaktor'];
//.........
// Somit kommt der Regenberechnung erst in Gang, wenn der Wippenzähler am Anfang des Tages unter 100 liegt. 

Hast du die Korrekturformel von Thomas zum Tausch der Nibble bei KS300-2 eingesetzt. Denn wenn ich mir deine Regenmenge so ansehe,
zeigt sie auch den Effekt (Schrittweite = 16, nach ca. 16 Schritten um 255 niedriger, …).
Durch die Umrechnung von Thomas wird das behoben. http://www.ipsymcon.de/forum/showthread.php?t=1865&highlight=KS300
Die Formel ist in dem Scriptausschnitt eingearbeitet.

@Torro: Bist du schon dazu gekommen dir das Script anzuschauen ?

Grüßle
Winfried

Hallo Winfried,

was mich nur wundert ist das in WIIPS überhaupt keine Werte angezeigt werden?!?!?

das muss ich heute Abend doch gleich mal einbauen.

@Torro: Ist das vielleicht schon in der neuen Versionverwaltung eingearbeitet?

So, habe das Skript nun beim Data_Poller eingebaut. Hoffentlich funktioniert es, auch wenn ich nicht wirklich weiß was ich getan habe :slight_smile:

Hallo winni2,

sorry für das lange warten auf das Feedback.

Nach einem Tippfehler beim auskommentieren der Originalzeilen funktioniert das von von Thomas angepasste Skript zum vertauschen der Nibbles hervoragend. Danke an Alle.

@torro: Könntest Du den Workaround in WIIPS integrieren damit es nach einem Update auch wieder zur Verfügung steht?

Hallo wgreipl,

schicke mir das aktuelle mit Deinen Aenderungen rueber. Das aktuelle siehst Du hier.

Gruss Torro

Hallo Torro,

ich glaube aber das dieses Skript nur mit einem KS300-2 und 16bit-Zähler arbeitet, vielleicht kann Dir winni2 oder thomas mehr dazu sagen.

Weather_DataPoller.ips.rar (3.96 KB)

Hallo Werner, hallo Torro,

heute ist Superwetter für Test mit dem KS300-Regensensor.

Ich habe mir die das ganze Thema überdacht und bin zu foplgendem Ergebnis gekommen.

  1. Um die Abhängigkeit der KS300-2 bzw -4 nicht in dir WIIPS-Scripte zu verlagern, ist der Vorschlag von Thomas sinnvoller.
    Er hat ein extra Script für den NibbleChange, welches auf den On-Change-Trigger der KS300-Rain-Variable reagiert.
    Diese Varianten muss nur von KS300-2-Besitzern eingesetzt werden.

  2. Die Berechnung der Regenmenge habe ich nochmals korrigiert und kommentiert. Die ist für alle notwendig.
    Ich habe seit gestern eine steigende Kurve (immer wenns regent). Um Mitternach wird der aktuelle Wert als Startwert für den nächsten Tag umgespeichert.

Weather_DataPoller.ips.zip (4.02 KB)

@Torro: Ich versuchs ins trac/svn einzutragen.

Grüßle
Winfried

Jetzt mal für ganz doofe wie mich:

  1. Ich erzeuge also das NibbleChange-Script und triggere auf den gesenderten Wert vom KS300 on change
  2. Ich ersetze das original DataPoller Script
  3. Ich erzeuge den Regengraph aus der neuen Variable (siehe 1)

Stimmt das so?

Hallo H-Man,

jo, so hab ich mir das gedacht.

Grüßle
Winfried

Ok, hab ich nun so mal umgebaut. Leider regnet es bei uns in OWL nicht so dolle :wink:
Ich schau mir das jetzt erst mal an, was so die nächsten Tage passiert.

Danke erst mal für die Arbeit.

Gruß,
Björn.

Hallo Björn,

naja besseres Wetter wäre mir auch lieber.
Regen zu simmulieren wäre viel schöner.

aktueller Stand Wippenwert 136 seit heute morgen, mit steigender Tendenz…

Grüßle
Winfried

Hallo winni2
hallo H-MAN

Jetzt bin ich mir nicht mehr sicher mit den Variablen.

  1. Ich habe eine neue Variable „KS300_Rain“ erzeugt und diese dem KS300 Regenmengensensor zugewiesen.

  2. KS300_Rain triggert das Skript von Thomas das den geänderten Wert an KS300_Regenmenge übergibt

  3. KS300_Regenmenge wird in den Graphen gelegt.

Stimmt das so oder die andere Variante von H-MAN, sprich, welcher ist der Eingangswert und welcher der Ausgangswert des Skriptes von Thomas. Meiner Meinung nach ist

KS300_Rain die Eingangsvariable die vom Regenmengensensor kommt
KS300_Regenmenge die Ausgangsvariable die zur Grafik von Torro geht.

So habe ich es auch verstanden. Man kann natürlich die Variablen umbenennen, muss dann aber das NibbleChange-Skript anpassen.

Ich verarbeite bei mir halt die „neue“ Variable, ist halt nur vertauscht.

Hallo H-MAN,

ok, dann habe ich es schon richtig verstanden :slight_smile:

Hallo zusammen,

dem kann ich nur zustimmen.
@Werner: Danke für die ausführliche Darstellung, wurde von mir etwas kurz beschrieben.

Grüßle
Winfried.

Hallo,

nur zur Info: Bei mir laeuft seit einer Stunde ein manueller Regner, welcher meine Regenmenge fuellt. Die derzeitige Version der Erfassung ist definitiv nicht korrekt, das hat sich zumindest schon einmal herausgestellt. Ich denke, dass im Laufe des heutigen abend dann eine neue korrigierte Version bereitstehen wird.

Gruss Torro

Hallo torro,

sorry für das nicht vorhandene Feedback deines letzten Updates, bin leider nicht dazugekommen. :cool:

Deine Feststellung muss ich bestätigen. Siehe Grafiken.

regensensor.gif