BUG in SCALE_R

In der SCALE_R aus der oscat_basic_333.lib ist seit einem Update seitens Beckhoff ein Problem aufgetreten.
TwinCAT 2.11.2234 hat ein Problem mit der Länge des Ausdruckes, wenn ein ARM-Prozessor ausgewählt wird.

Lösung:
[i]IF I_LO = I_HI THEN
SCALE_R := O_LO;
ELSE
TEMP := LIMIT(I_LO, X, I_HI);
SCALE_R := (O_HI - O_LO) / (I_HI - I_LO) * (TEMP - I_LO) + O_LO;
END_IF;

(* revision history
hm 18. may. 2008 rev 1.0
original version

hm 13. nov. 2008 rev 1.1
corrected formula for negative gradient

hm 11. jan 2011 rev 1.2
avoid division by 0

Christian Kreuzer
03.März 2013 rev 1.3
splitted formula to avoid error “expression to complex” at Beckhoff ARM devices
*)[/i]

Vielleicht kann diese Änderung in eine der nächsten Versionen eingearbeitet werden.
Danke,
Christian_EWW