FUNCTION RealToString : STRING(16)
VAR_INPUT
varReal:REAL;
NSAP:INT;
END_VAR
VAR
varNull:STRING:='0.';
varString:STRING;
varM:REAL;
i:INT;
END_VAR
i:=0;
IF ABS(varReal)>=1 THEN
varString:=REAL_TO_STRING(varReal);
RealToString:=LEFT(varString,FIND(varString,'.')+N SAP);
ELSE varM:=1;
FOR i:=1 TO NSAP DO varM:=varM/10; END_FOR
IF ABS(varReal)<varM THEN RealToString:='0.0';
ELSE
IF varReal<0 THEN varNull:='-0.';
ELSE varNull:='0.';
END_IF
varM:=ABS(varReal);
WHILE varM<0.1 DO
varNull:=CONCAT(varNull,'0');
varM:=varM*10;NSAP:=NSAP-1;
END_WHILE
FOR i:=1 TO NSAP DO varM:=varM*10; END_FOR
varString:=LEFT(REAL_TO_STRING(varM),NSAP);
RealToString:=CONCAT(varNull,varString);
END_IF
END_IF