IF "Stoer_Quittierung" THEN
#Fehler := FALSE;
END_IF;
IF #Analog.Adresse > 0 AND (#Analog.Faktor <> 0.0) THEN
#Puffer := WORD_TO_INT((PEEK_WORD(area:=16#01,dbNumber:=0,byteOffset:=#Analog.Adresse)));
IF (( #Puffer > 30000 ) OR ( #Puffer < -1728 )) THEN // -1728 = 3 mA
IF "SteuerspannungEIN" THEN #Fehler := TRUE; END_IF;
#AnalogWert_einlesen := 999.0;
ELSE
#Analog.Mittelwert := #Analog.Mittelwert *(1 - #Analog.Wertung) +(1 / #Analog.Faktor * DINT_TO_REAL(#Puffer) + #Analog.Offset) * #Analog.Wertung;
#AnalogWert_einlesen := #Analog.Mittelwert;
END_IF;
ELSE
#AnalogWert_einlesen := 0.0;
END_IF;