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

160 lines
9.0 KiB
Markdown

```pascal
// Block Type: FC
// Block Number: 1933
// Original Network Languages: LAD
// Block Comment:
// The following PROGRAM handle the CIP software modules. The module interface is
// the Standard one: Qualifier,Request, Latch, Wait, Reset (Inizialize) AND Done.
// Qualifier: (Level Signal) Qualify the module TO be executed; all the conditions
// that enable the module TO run must be included in the Qualifier.
// Request: (Pulse ONS) Request TO execute the module.
// Latch: (Level Signal) IF the Qualifier is enabled AND the module is NOT already
// executed AND is NOT Reset, than the Latch latches UNTIL th Done OR the Reset
// comes.
// Done: (Level Signal) Is Setted as soon as the module complete its functions,
// AND
// staies On UNTIL next Reset.
FUNCTION "CIPLocal" : Void
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_TEMP
mNewProgram : Bool;
mRET_VAL : Bool;
END_VAR
#_3M : Bool; // Auto-generated temporary
BEGIN
// Network 1: (Original Language: LAD)
"CIP_Program_Variables"."CIP_Run"."Qualifier" := "gBlenderCIPMode" AND "gBlenderSuppliesOk" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_LocalCIP";
// Network 2: CIP Inizialized Signal (Original Language: LAD)
// PBox SymPy processed, logic in consumer
"mRequestTP" := "gIN_StartBtn"; // P_TRIG("gIN_StartBtn") - Mem: "mRequestTP"
IF "gIN_StartBtn" AND "CIP_Program_Variables"."CIP_Run"."Qualifier" AND NOT "mRequestTP" THEN
"CIP_Program_Variables"."Status"."Inizialized" := FALSE;
END_IF;
"CIP_Program_Variables"."CIP_Run"."Request" := "gIN_StartBtn" AND "CIP_Program_Variables"."CIP_Run"."Qualifier" AND NOT "mRequestTP";
// Network 3: MIX - Air and CO2 pressure ok and auxiliary ok (Original Language: LAD)
// Network 3 did not produce printable SCL code.
// Network 4: MIX - CIP Local (Original Language: LAD)
// Network 4 did not produce printable SCL code.
// Network 5: (Original Language: LAD)
"HMI_Local_CIP_Variables"."Cip_Commands"."_RunPause" := "CIP_Program_Variables"."CIP_Run"."Latch" AND "HMI_Local_CIP_Variables"."Cip_Commands"."_ProgPause";
// Network 6: (Original Language: LAD)
"CIP_Program_Variables"."CIP_Run"."Wait" := ("gBlenderCIPMode" AND "Procedure_Variables"."Blender_Run"."Wait") OR ("gBlenderCIPMode" AND "HMI_Local_CIP_Variables"."Cip_Commands"."_RunPause");
// Network 7: (Original Language: LAD)
"CIP_Program_Variables"."CIP_Run"."Latch" := ("CIP_Program_Variables"."CIP_Run"."Request" AND "CIP_Program_Variables"."CIP_Run"."Reset" AND "gBlenderAlarm" AND "CIP_Program_Variables"."CIP_Run"."Done") OR ("CIP_Program_Variables"."CIP_Run"."Reset" AND "gBlenderAlarm" AND "CIP_Program_Variables"."CIP_Run"."Done" AND "CIP_Program_Variables"."CIP_Run"."Latch");
IF ("CIP_Program_Variables"."CIP_Run"."Request" AND "CIP_Program_Variables"."CIP_Run"."Reset" AND "gBlenderAlarm" AND "CIP_Program_Variables"."CIP_Run"."Done" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Report") OR ("CIP_Program_Variables"."CIP_Run"."Reset" AND "gBlenderAlarm" AND "CIP_Program_Variables"."CIP_Run"."Done" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Report" AND "CIP_Program_Variables"."CIP_Run"."Latch") THEN
"CIPReportDB"."General"."AuxReportCipStart" := TRUE;
END_IF;
// Network 8: CIP Running Signal (Original Language: LAD)
"CIP_Program_Variables"."CIP_Run"."Running" := "CIP_Program_Variables"."CIP_Run"."Wait" AND "CIP_Program_Variables"."CIP_Run"."Latch";
"HMI_Local_CIP_Variables"."Cip_Commands"."_Running" := "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 9: (Original Language: LAD)
// PBox SymPy processed, logic in consumer
"mONS" := "gIN_StopBtn"; // P_TRIG("gIN_StopBtn") - Mem: "mONS"
// PBox SymPy processed, logic in consumer
"mONS2" := "CIP_Program_Variables"."CIP_Run"."Latch"; // P_TRIG("CIP_Program_Variables"."CIP_Run"."Latch") - Mem: "mONS2"
"CIP_Program_Variables"."CIP_Run"."Done" := "CIP_Program_Variables"."Status"."Completed" OR ("gIN_StopBtn" AND NOT "mONS");
// Network 10: (Original Language: LAD)
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Report" AND "CIP_Program_Variables"."Status"."Completed" THEN
"CIPReportDB"."General"."AuxReportCipEnd" := TRUE;
END_IF;
// Network 11: MIX - CIP Local (Original Language: LAD)
"mNoRecircFlowDly"(IN := "HMI_Device"."PPM303"."Out" AND (("HMI_Digital"."FSS301"."Filtered" AND "HMI_Device"."AVS336"."Out" AND "CIP_Program_Variables"."CIP_Run"."Latch") OR ("HMI_Digital"."FSS301"."Filtered" AND "HMI_Device"."AVS337"."Out" AND "CIP_Program_Variables"."CIP_Run"."Latch")), PT := S5T#3M); // TODO: Declarar "mNoRecircFlowDly" : TON;
"gCIPRecirFlowMiss_Fault" := "mNoRecircFlowDly".Q;
// Network 12: (Original Language: LAD)
"CIP_Program_Variables"."Status"."WaitFillerReadyToCIP" := "gBlenderCIPMode" AND "Procedure_Variables"."Blender_Run"."Latch" AND "gIN_FillerCIPRequest" AND "CIP_Program_Variables"."Status"."WaitEventRequest"."ReadyForCIP";
"HMI_Alarms"."gH_Message" := "gBlenderCIPMode" AND "Procedure_Variables"."Blender_Run"."Latch" AND "gIN_FillerCIPRequest" AND "CIP_Program_Variables"."Status"."WaitEventRequest"."ReadyForCIP";
// Network 13: Local CIP Wait Temperature (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "CIP_Program_Variables"."Status"."WaitEventRequest"."Temperature_Ok" AND "CIP_Program_Variables"."Status"."WaitEventStatus"."Temperature_Ok" AND "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 14: (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "CIP_Program_Variables"."Status"."WaitEventRequest"."HighConductivity" AND "CIP_Program_Variables"."Status"."WaitEventStatus"."HighConductivity" AND "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter" AND "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 15: (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Conductimeter" AND "CIP_Program_Variables"."Status"."WaitEventRequest"."LowConductivity" AND "CIP_Program_Variables"."Status"."WaitEventStatus"."LowConductivity" AND "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 16: (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "CIP_Program_Variables"."Status"."WaitEventRequest"."DrainCompleted" AND "CIP_Program_Variables"."Status"."WaitEventStatus"."DrainCompleted" AND "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 17: (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "CIP_Program_Variables"."Status"."WaitEventRequest"."CIPChangeReady" AND "CIP_Program_Variables"."Status"."WaitEventStatus"."CIPChangeReady" AND "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 18: (Original Language: LAD)
"HMI_Alarms"."gH_Message" := "CIP_Program_Variables"."Status"."WaitEventRequest"."CIPCycleEnded" AND "CIP_Program_Variables"."Status"."WaitEventStatus"."CIPCycleEnded" AND "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 19: Local CIP Hold (Original Language: LAD)
"HMI_Alarms"."gH_Status" := "CIP_Program_Variables"."CIP_Run"."Wait" AND "CIP_Program_Variables"."CIP_Run"."Latch";
// Network 20: Local CIP Completed (Original Language: LAD)
"HMI_Alarms"."gH_Status" := "CIP_Program_Variables"."Status"."Completed" AND "gBlenderProdMode" AND "gBlenderRinseMode";
// Network 21: (Original Language: LAD)
"CIPRecipeManagement_Data"(Active_Recipe_Req := "HMI_Variables_Cmd"."RecipeCIP"."Active_Request", Active_Recipe_Running := "HMI_Variables_Cmd"."RecipeCIP"."Active_Recipe_Running", Active_Recipe_Start := "HMI_Variables_Cmd"."RecipeCIP"."Active_Recipe_Start", Copy := "HMI_Variables_Cmd"."RecipeCIP"."Copy", Copy_to := "HMI_Variables_Cmd"."RecipeCIP"."Copy_Request", Delete := "HMI_Variables_Cmd"."RecipeCIP"."Delete", Download := "HMI_Variables_Cmd"."RecipeCIP"."Download", Edit := "HMI_Variables_Cmd"."RecipeCIP"."Edit", HMI_Recipe_Main_Page := "HMI_Variables_Cmd"."RecipeCIP"."Main_Page", HMI_Recipe_Page_Running := "HMI_Variables_Cmd"."RecipeCIP"."Page_Running", Max_Recipe_Number := 30, Read := "HMI_Variables_Cmd"."RecipeCIP"."Read", Upload := "HMI_Variables_Cmd"."RecipeCIP"."Upload", UploadPC := "HMI_Variables_Cmd"."RecipeCIP"."UploadPC", Work_Recipe := "HMI_Variables_Cmd"."RecipeCIP"."Edit_Request", Write := "HMI_Variables_Cmd"."RecipeCIP"."Write");
// Network 22: (Original Language: LAD)
"HMI_Local_CIP_Variables"."Cip_Commands"."_ProgNoSaveAllwd" := "HMI_Variables_Cmd"."RecipeCIP"."Work_Rec_is_Active_Recip" AND "HMI_Local_CIP_Variables"."Cip_Commands"."_Running";
// Network 23: (Original Language: LAD)
CIPLocal_WaitEvent_Ctrl();
// Network 24: (Original Language: LAD)
CIPLocal_ExecSimpleCIP(Clock := "Clock_1Hz", Hold := "CIP_Program_Variables"."CIP_Run"."Wait", Inizialize := "CIP_Program_Variables"."CIP_Run"."Reset", Start := "CIP_Program_Variables"."CIP_Run"."Latch", StepDown := "HMI_Local_CIP_Variables"."Cip_Commands"."_ProgStepDown", StepUp := "HMI_Local_CIP_Variables"."Cip_Commands"."_ProgStepUp");
// Network 25: (Original Language: LAD)
IF "HMI_Blender_Parameters"."Processor_Options"."Blender_OPT"."_Report" THEN
CIPReportManager();
END_IF;
END_FUNCTION
```