OSCAT Forum

oscat.lib => oscat.lib fuer TwinCAT/CoDeSys => Thema gestartet von: hafwil am 08. März 2009, 23:27:09

Titel: METER
Beitrag von: hafwil am 08. März 2009, 23:27:09
Hallo!

Meiner Meinung nach fehlt im FB METER das ständige neusetzen der Variable last, ich glaube dass der Zähler dann korrekt funktioniert?

Also z.B. die vorletzte Zeile in der Berechnung:

(* reset *)
IF rst THEN
   mr.R1 := 0;
   mr.RX := 0;
ELSE
   (* current consumption measurement *)
   IF I1 THEN MX1 := M1; ELSE MX1 := 0; END_IF;
   IF I2 THEN MX2 := M2; ELSE MX2 := 0; END_IF;
   (* add up the current values in a double real *)
   MR := R2_ADD(MR,(mx1+mx2)/D*TC);
   (* set the current output value *)
   MX := mr.RX;
   (* renew last *)
   last := tx;
END_IF;


lg Willi
Titel: Re: METER
Beitrag von: hugo am 09. März 2009, 00:56:04
ja da hast du allerdings recht