LadderToSCL/BlenderRun_ProdTime.scl

108 lines
11 KiB
Plaintext

DEBUG: Namespaces: {}
DEBUG: Namespace dictionary: {}
DEBUG: Found block of type FC
DEBUG: Block name: BlenderRun_ProdTime, Number: 2040, Language: LAD
DEBUG: Found title in it-IT: Seconds
DEBUG: Found 12 networks
DEBUG: Processing network 1
DEBUG: Network title (it-IT): Network 1: Seconds
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 2
DEBUG: Network title (it-IT): Network 2: Reset Hours
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 3
DEBUG: Network title (it-IT): Network 3: Seconds Counter
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 4
DEBUG: Network title (it-IT): Network 4: Minute
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 5
DEBUG: Network title (it-IT): Network 5: Minute Counter
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 6
DEBUG: Network title (it-IT): Network 6: Hour
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 7
DEBUG: Network title (it-IT): Network 7: Hour Counter
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 8
DEBUG: Network title (it-IT): Network 8: Counter reset
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 9
DEBUG: Network title (it-IT): Network 9: Running Seconds
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 10
DEBUG: Network title (it-IT): Network 10: Running Minutes
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 11
DEBUG: Network title (it-IT): Network 11: Running Hours for Maintenance
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
DEBUG: Processing network 12
DEBUG: Network title (it-IT): Network 12: Running Hours for Maintenance
DEBUG: FlgNet has its own namespace: {None: 'http://www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v4'}
DEBUG: Successfully found Parts and Wires elements
// SCL equivalent of LAD block: BlenderRun_ProdTime (FC 2040)
// Title: Seconds
FUNCTION "BlenderRun_ProdTime" : VOID
BEGIN
// Network 1: Seconds
// Conditional: Blender_Variables_Pers.gSLIM_Sec := Blender_Variables_Pers.gSLIM_Sec + 1;
// Network 2: Reset Hours
// Conditional: Blender_Variables_Pers.gSLIM_Sec := 0;
// Network 3: Seconds Counter
// Conditional: Blender_Variables_Pers.gProdSec := Blender_Variables_Pers.gProdSec + 1;
// Network 4: Minute
IF Blender_Variables_Pers.gProdSec = 60 THEN
m1MinONS := TRUE;
ELSE
m1MinONS := FALSE;
END_IF;
// Network 5: Minute Counter
// Conditional: Blender_Variables_Pers.gProdSec := 0;
// Conditional: Blender_Variables_Pers.gProdMin := Blender_Variables_Pers.gProdMin + 1;
// Network 6: Hour
IF Blender_Variables_Pers.gProdMin = 60 THEN
m1HourONS := TRUE;
ELSE
m1HourONS := FALSE;
END_IF;
// Network 7: Hour Counter
// Conditional: Blender_Variables_Pers.gProdMin := 0;
// Conditional: Blender_Variables_Pers.gProdHour := Blender_Variables_Pers.gProdHour + 1;
// Conditional: Blender_Variables_Pers.gBlendingMaintHour := Blender_Variables_Pers.gBlendingMaintHour + 1;
// Network 8: Counter reset
// Conditional: Blender_Variables_Pers.gProdSec := 0;
// Conditional: Blender_Variables_Pers.gProdMin := 0;
// Conditional: Blender_Variables_Pers.gProdHour := 0;
// Network 9: Running Seconds
// Conditional: Blender_Variables_Pers.gRunningSeconds := Blender_Variables_Pers.gRunningSeconds + 1;
// Network 10: Running Minutes
// Conditional: Blender_Variables_Pers.gRunningMinutes := Blender_Variables_Pers.gRunningMinutes + 1;
// Comparison: MOD60 = DINT#0
IF CLK_1.0S THEN
mRunMin := TRUE;
ELSE
mRunMin := FALSE;
END_IF;
// Conditional: MOD60 := I_DIRunning_sec MOD DINT#60;
I_DIRunning_sec := #Blender_Variables_Pers.gRunningSeconds; // Convert from
// Network 11: Running Hours for Maintenance
// Conditional: Blender_Variables_Pers.gRunningMaintHour := Blender_Variables_Pers.gRunningMaintHour + 1;
// Comparison: MOD60 = DINT#0
// Conditional: MOD60 := I_DIRunning_min MOD DINT#60;
// Conditional: I_DIRunning_min := #Blender_Variables_Pers.gRunningMinutes; // Convert from
// Network 12: Running Hours for Maintenance
HMI_Variables_Status.System.BlendingMaintHour := Blender_Variables_Pers.gRunningMaintHour;
END_FUNCTION;