ParamManagerScripts/backend/script_groups/TwinCat/.example/PULSEPRESSURE.EXP

24 lines
742 B
Plaintext

(* @PATH := '\/Functions_Collection\/FillingHead' *)
(* @SYMFILEFLAGS := '0' *)
FUNCTION PulsePressure : REAL
VAR_INPUT
i_Flow : REAL ; (* Flow in l/min *)
i_DN_Pipe : REAL ; (* Pipe Diameter mm *)
i_Mass : REAL ; (* Kg of liquid dealing with the Pulse pressure *)
i_T_Filling : REAL ; (* Filling Time in sec *)
END_VAR
VAR
mSection : REAL ;
END_VAR
(* @END_DECLARATION := '0' *)
mSection := EXPT(i_DN_Pipe / 2000.0, 2) * gP_Greek ;
(*PulsePressure := i_Flow / 60000.0 / mSection * i_Mass / i_T_Filling * 1e-5 ;*) (* in Bar *)
IF mSection<>0 AND i_T_Filling<> 0 THEN
PulsePressure := (i_Flow / 60000.0 / mSection * i_Mass / i_T_Filling) / mSection * 0.1 ; (* in mmH2O *)
ELSE
PulsePressure := 0.0 ;
END_IF
END_FUNCTION