OSCAT Forum

oscat.lib => oscat.lib fuer PC WorX/MULTIPROG => Thema gestartet von: Fussel0804 am 27. September 2011, 14:23:15

Titel: Problem mit HEAT_METER
Beitrag von: Fussel0804 am 27. September 2011, 14:23:15
Hi Leute,

wer von eich hat Den HEAT_METER unter PCWorx am laufen?

Mir ist im Vergleich zur S7 Plattform und zum Urquelltext aufgefallen, dass eine berechnung im Baustein falsch läuft.

Im Urquelltext steht:

(* calculate the current consumption *)
IF (tx - last >= TIME_TO_DWORD(AVG_TIME)) AND (avg_time > T#0s) THEN
   last := tx;
   C := (Y - Y_last) * 3.6E6 / DWORD_TO_REAL(TIME_TO_DWORD(AVG_TIME));
   Y_last := Y;
END_IF;

Unter S7 steht das gleiche, jedoch im der PCWORX.LIB ist nach meiner meinung ein Potenzfehler aufgetreten:
Und zwar:
(* calculate the current consumption *)
IF (tx - last >= TIME_TO_DWORD(AVG_TIME)) AND (avg_time > T#0s) THEN
   last := tx;
   C := (Y - Y_last) * 3.6E12 / DWORD_TO_REAL(TIME_TO_DWORD(AVG_TIME));
   Y_last := Y;
END_IF;

Dabei kommt bei der Berechnung finde ich völlig wirres Zeug raus.

Bitte Prüfen

Gruß Stefan
Titel: Re:Problem mit HEAT_METER
Beitrag von: peewit am 27. September 2011, 15:46:58
hallo

bis zur version 3.10 war offiziell überall 3.6E12 drinnen
mit version 3.11 wurde es auf 3.6E6 geändert

diese änderung ist jedoch in der pcworx version übersehen worden

baustein heat_meter ist inzwischen ja in der building.lib drinnen dort gehört es dann auch geändert !

danke für den tip !