Obsidean_VM/04-SIDEL/00 - MASTER/Source/source/BlenderPIDCtrl_ReadAnIn.md

157 lines
6.2 KiB
Markdown

```pascal
// Block Type: FB
// Block Number: 1790
// Original Network Languages: LAD
// Block Comment:
// TASK1 PID
FUNCTION_BLOCK "BlenderPIDCtrl_ReadAnIn"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_STAT
mDiffSensFaultEnON : Bool;
mProdTnkPressFlted : "LowPassFilter";
mWaterTempFlted : "LowPassFilter";
mProdTempFlted : "LowPassFilter";
mSyrupTnkLvlFlted : "LowPassFilter";
mCIPHeatTempFlted : "LowPassFilter";
mP3_Freq_Flted : "LowPassFilter";
mFlrFreqPrdctPump : "LowPassFilter";
mDiffTrasducerFlted : "LowPassFilter";
mInletSirupPress : "LowPassFilter";
mDeairTnkLvlFlted : "LowPassFilter";
mBaialageFlowFlted : "LowPassFilter";
mDiffSensFaultEn : "TON_TIME:v1.0";
END_VAR
VAR_TEMP
RealTemp : Real;
mH_Fault : Bool;
mL_Fault : Bool;
mDummy : Bool;
mDifferentialTrasducer : Word;
END_VAR
#_0 : Bool; // Auto-generated temporary
#_27648 : Bool; // Auto-generated temporary
#_2S : Bool; // Auto-generated temporary
#TON_INSTANCE_30 : Bool; // Auto-generated temporary
BEGIN
// Network 1: Product Tank Pressure (Original Language: LAD)
// Product Tank Pressure
// DB972.DBW36 = 27648
ReadAnalogIn(ANALOG := "HMI_Instrument"."PTM304", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_PTM304");
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mProdTnkPressFlted"(i_Enable := "AUX TRUE", i_Num := 3, i_Value := "HMI_Instrument"."PTM304"."PV");
END_IF;
"mDummy" := TRUE;
// Network 2: Syrup Tank Level (Original Language: LAD)
ReadAnalogIn(ANALOG := "HMI_Instrument"."LTP303", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_LTP303");
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mSyrupTnkLvlFlted"(i_Enable := "AUX TRUE", i_Num := 3, i_Value := "HMI_Instrument"."LTP303"."PV");
END_IF;
"mDummy" := TRUE;
// Network 3: Chiller Temperature (Original Language: LAD)
IF "AUX FALSE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."TTM306_H2O", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_TTM306");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mWaterTempFlted"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."TTM306_H2O"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "AUX FALSE";
// Network 4: Chiller Temperature (Original Language: LAD)
ReadAnalogIn(ANALOG := "HMI_Instrument"."TTM306_PRD", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_TTM306");
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mProdTempFlted"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."TTM306_PRD"."PV");
END_IF;
"mDummy" := TRUE;
// Network 5: Cip Heating Temperature (Original Language: LAD)
IF "AUX FALSE" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."TT_S5", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_CIPHeaterTemperature");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mCIPHeatTempFlted"(i_Enable := "AUX TRUE", i_Num := 10, i_Value := "HMI_Instrument"."TT_S5"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR ("AUX FALSE" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter_Profibus");
// Network 6: Differential Trasducer (Original Language: LAD)
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_BlendFillSystem" THEN
"mDifferentialTrasducer" := "P_AI_PTF203";
END_IF;
IF "mDifferentialTrasducer" <= 0 THEN
"mDifferentialTrasducer" := INT#0;
END_IF;
IF "mDifferentialTrasducer" > 27648 THEN
"mDifferentialTrasducer" := INT#27648;
END_IF;
// Network 7: Differential Pressure (Original Language: LAD)
IF "HMI_Instrument"."PTF203"."Config" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."PTF203", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "mDifferentialTrasducer");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mDiffTrasducerFlted"(i_Enable := "AUX TRUE", i_Num := 4, i_Value := "HMI_Instrument"."PTF203"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "HMI_Instrument"."PTF203"."Config";
// Network 8: Differential Pressure Fault (Original Language: LAD)
#TON_INSTANCE_30(IN := "gIN_ResetBtn" AND "Procedure_Variables"."BlendFill_StartUp"."Done", PT := T#2S); // TODO: Declarar #TON_INSTANCE_30 : TON;
"gDiffSensor_Analog_Fault" := #TON_INSTANCE_30.Q AND "mDiffSensFaultEnON" AND "HMI_Instrument"."PTF203"."Alarm" AND "gWorkshopTest";
// Network 9: Syrup Inlet Pressure (Original Language: LAD)
IF "HMI_Instrument"."PTP338"."Config" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."PTP338", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_PTP338");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mInletSirupPress"(i_Enable := "AUX TRUE", i_Num := 5, i_Value := "HMI_Instrument"."PTP338"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "HMI_Instrument"."PTP338"."Config";
// Network 10: TTS305 - Local Cip Heating Temperature (Original Language: LAD)
IF "AUX TRUE" THEN
ReadAnalogIn(ANALOG := "HMI_Instrument"."FTM305", MAX_Analog_Value := "Blender_Constants"."gAnalogMaxValue", MIN_Analog_Value := 0, PEW := "P_AI_FTM305");
END_IF;
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" THEN
"mBaialageFlowFlted"(i_Enable := "AUX TRUE", i_Num := 5, i_Value := "HMI_Instrument"."FTM305"."PV");
END_IF;
"mDummy" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Simulation" OR "AUX TRUE";
END_FUNCTION_BLOCK
```