1.3 KiB
1.3 KiB
FUNCTION "MaxCarboCO2 Vol" : Real
{ S7_Optimized_Access := 'FALSE' }
AUTHOR : 'Author'
FAMILY : 'Function'
NAME : 'Name'
VERSION : 1.0
VAR_INPUT
i_Press : Real;
END_VAR
VAR_IN_OUT
i_Temp : Real;
END_VAR
VAR_TEMP
mAbsTemp : Real;
mAux : Real;
END_VAR
BEGIN
IF #i_Temp <= 0 THEN
(* classic code: #i_Temp := 12.0 ;*)
#i_Temp := REAL#12.0 ;
END_IF;
#mAbsTemp := #i_Temp + "Blender_Constants".gZeroAbsolute ;
(* classic code: IF (0.03275 * #mAbsTemp - 7.9567) <> 0 AND #i_Press <> 0 AND (0.000261 + #mAux * (1 + 1.0332 / #i_Press)) <> 0 THEN*)
IF (REAL#0.03275 * #mAbsTemp - REAL#7.9567) <> 0 AND #i_Press <> 0 AND (REAL#0.000261 + #mAux * (1 + REAL#1.0332 / #i_Press)) <> 0 THEN
(* classic code: #mAux := (0.01898 - 0.0000476 * #mAbsTemp) / (0.03275 * #mAbsTemp - 7.9567) ;*)
#mAux := (REAL#0.01898 - REAL#0.0000476 * #mAbsTemp) / (REAL#0.03275 * #mAbsTemp - REAL#7.9567) ;
(* classic code: #"MaxCarboCO2 Vol" := #i_Press * #mAbsTemp / 1.0332 * (0.000261 + #mAux * (1 + 1.0332 / #i_Press)) ;*)
#"MaxCarboCO2 Vol" := #i_Press * #mAbsTemp / REAL#1.0332 * (REAL#0.000261 + #mAux * (1 + REAL#1.0332 / #i_Press)) ;
ELSE
#"MaxCarboCO2 Vol" := -1 ;
END_IF;
END_FUNCTION