dritte Steuerung nochmal wiederholt hinzugefügt
This commit is contained in:
@@ -1,491 +0,0 @@
|
||||
FUNCTION_BLOCK "FB_PreMain"
|
||||
{ S7_Optimized_Access := 'TRUE' }
|
||||
VERSION : 0.1
|
||||
VAR_IN_OUT
|
||||
stInOutControlUnitCabinet : "UDT_MainState";
|
||||
END_VAR
|
||||
|
||||
VAR
|
||||
fbMonMotorProtection : "FB_Monitoring";
|
||||
fbMonPhaseFailure : "FB_Monitoring";
|
||||
fbMonFuse400V : "FB_Monitoring";
|
||||
fbMonFuse24V : "FB_Monitoring";
|
||||
fbMonPressure : "FB_Monitoring";
|
||||
fbMonMainContactorsUH04 : "FB_Monitoring";
|
||||
fbMonSafetyContactorsExternOmniflo : "FB_Monitoring";
|
||||
fbMonSafetyContactorsExternReserve : "FB_Monitoring";
|
||||
fbMonFAS1 : "FB_Monitoring"; // IF from FACP "fire alarm" DI0034
|
||||
fbMonFAS2 : "FB_Monitoring"; // IF from FACP "fire alarm" DI0033
|
||||
fbMonFPG_Open : "FB_Monitoring"; // Control from FPG
|
||||
fbMonFPG_Fault : "FB_Monitoring"; // Control from FPG
|
||||
fbMonFPG_Fire : "FB_Monitoring"; // Control from FPG
|
||||
fbMonCommFortnaWCS : "FB_Monitoring";
|
||||
fbMonCommFortnaWESDeviceHub : "FB_Monitoring";
|
||||
xAllReadyToStart { S7_SetPoint := 'True'} : Bool;
|
||||
fbStateMain : "FB_StateMain";
|
||||
arESTOPAck { S7_SetPoint := 'False'} : Array[0..4] of "FB_ESTOPhandling";
|
||||
xReInit : Bool;
|
||||
fTrigReIntTime {InstructionName := 'F_TRIG'; LibVersion := '1.0'} : F_TRIG;
|
||||
tOfReIntTime {InstructionName := 'TOF_TIME'; LibVersion := '1.0'} : TOF_TIME; // nach Hochfahren vergeht diese Zeit bis erstmalig Quit
|
||||
END_VAR
|
||||
|
||||
VAR_TEMP
|
||||
tDebug : Int;
|
||||
nIdx : USInt;
|
||||
END_VAR
|
||||
|
||||
VAR CONSTANT
|
||||
c_UH04 : Int := 0; // Konstante für ESTOP
|
||||
c_UZ0409 : Int := 1; // Konstante für ESTOP
|
||||
c_UH04_Extern1 : Int := 2; // Konstante für ESTOP
|
||||
c_UH04_Extern2 : Int := 3; // Konstante für ESTOP
|
||||
END_VAR
|
||||
|
||||
|
||||
BEGIN
|
||||
|
||||
REGION Reinitialisieren
|
||||
#tOfReIntTime(IN := NOT #xReInit,
|
||||
PT := T#10s);
|
||||
|
||||
IF NOT #xReInit THEN
|
||||
#xReInit := TRUE;
|
||||
END_IF;
|
||||
|
||||
#fTrigReIntTime(CLK := #tOfReIntTime.Q);
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION CycleTime
|
||||
// "DB_MachineGlobal".nLogicCycle := stInOutControlUnitCabinet.nLogicCycle + 1;
|
||||
#tDebug := RD_SYS_T("DB_MachineGlobal".TimePLC);
|
||||
// #fbCycleTime("DB_MachineGlobal".nPrevCycle);
|
||||
END_REGION
|
||||
|
||||
REGION Monitoring
|
||||
REGION Motor protection
|
||||
#fbMonMotorProtection.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonMotorProtection.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonMotorProtection(sInFctnName := 'Motorschutz',
|
||||
sInPrefix := 'UH04',
|
||||
sInAlarmMessage := 'Motorschutz ausgeloest',
|
||||
sInSuffix := 'FC0060-FC0074',
|
||||
wInTextListId_Function := 3,
|
||||
wInTextListId_Message := 1,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "FC0060" AND "FC0061" AND "FC0062" AND "FC0063" AND "FC0064" AND "FC0065" AND "FC0066" AND
|
||||
"FC0070" AND "FC0071" AND "FC0072" AND "FC0073" AND "FC0074",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stMotorProtection.UH04);
|
||||
END_REGION
|
||||
|
||||
REGION Phase failure
|
||||
#fbMonPhaseFailure.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonPhaseFailure.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonPhaseFailure(sInFctnName := 'Phasenausfall',
|
||||
sInPrefix := 'UH04',
|
||||
sInAlarmMessage := 'Phase ausgefallen',
|
||||
sInSuffix := 'DI0005',
|
||||
wInTextListId_Function := 6,
|
||||
wInTextListId_Message := 2,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "DI0005",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stPhase.UH04_400V);
|
||||
END_REGION
|
||||
|
||||
REGION 400V
|
||||
#fbMonFuse400V.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonFuse400V.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonFuse400V(sInFctnName := 'Sicherungsfall',
|
||||
sInPrefix := 'UH04 400V',
|
||||
sInAlarmMessage := 'Sicherung ausgeloest',
|
||||
sInSuffix := 'DI0016',
|
||||
wInTextListId_Function := 4,
|
||||
wInTextListId_Message := 3,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "DI0016",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stFuse.UH04_400V);
|
||||
END_REGION
|
||||
|
||||
REGION 24V
|
||||
#fbMonFuse24V.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonFuse24V.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonFuse24V(sInFctnName := 'Sicherungsfall',
|
||||
sInPrefix := 'UH04 24V',
|
||||
sInAlarmMessage := 'Sicherung ausgeloest',
|
||||
sInSuffix := 'DI0021',
|
||||
wInTextListId_Function := 4,
|
||||
wInTextListId_Message := 3,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "DI0021",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stFuse.UH04_24V);
|
||||
END_REGION
|
||||
|
||||
|
||||
REGION Pressure
|
||||
#fbMonPressure.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonPressure.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonPressure(sInFctnName := 'Druckluftueberwachung',
|
||||
sInPrefix := 'UH04',
|
||||
sInAlarmMessage := 'Druckluft zu niedrig',
|
||||
sInSuffix := 'BP0004',
|
||||
wInTextListId_Function := 5,
|
||||
wInTextListId_Message := 4,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "BP0004",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stPressure.UH04);
|
||||
END_REGION
|
||||
|
||||
REGION Hauptschütze UH04
|
||||
#fbMonMainContactorsUH04.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonMainContactorsUH04.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonMainContactorsUH04(sInFctnName := 'Hauptschuetzueberwachung',
|
||||
sInPrefix := 'UH04',
|
||||
sInAlarmMessage := 'Hauptschuetze Fehler',
|
||||
sInSuffix := 'QA0610-QA0613',
|
||||
wInTextListId_Function := 7,
|
||||
wInTextListId_Message := 5,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "DB_InterfaceSafety".stFromSafety.stMainContactorsUH04.xOk,
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stMainContactor.UH04);
|
||||
END_REGION
|
||||
|
||||
REGION Safetyrelais Extern Omniflo
|
||||
#fbMonSafetyContactorsExternOmniflo.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonSafetyContactorsExternOmniflo.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonSafetyContactorsExternOmniflo(sInFctnName := 'Relaisueberwachung',
|
||||
sInPrefix := 'UH04->UH06',
|
||||
sInAlarmMessage := 'Relais Fehler',
|
||||
sInSuffix := 'QA0660/QA0661',
|
||||
wInTextListId_Function := 9,
|
||||
wInTextListId_Message := 9,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "DB_InterfaceSafety".stFromSafety.stSafetyContactorsExternOmniflo.xOk,
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stMainContactor.ExternOmniflo);
|
||||
END_REGION
|
||||
|
||||
REGION Safetyrelais Extern Reserve
|
||||
#fbMonSafetyContactorsExternReserve.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonSafetyContactorsExternReserve.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonSafetyContactorsExternReserve(sInFctnName := 'Relaisueberwachung',
|
||||
sInPrefix := 'UH04',
|
||||
sInAlarmMessage := 'Relais Fehler',
|
||||
sInSuffix := 'QA0662/QA0663',
|
||||
wInTextListId_Function := 9,
|
||||
wInTextListId_Message := 9,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "DB_InterfaceSafety".stFromSafety.stSafetyContactorsExternReserve.xOk,
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stMainContactor.ExternReserve);
|
||||
END_REGION
|
||||
|
||||
REGION Brandschutz
|
||||
|
||||
REGION FAS 1
|
||||
#fbMonFAS1.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonFAS1.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonFAS1(sInFctnName := 'Feueralarm',
|
||||
sInPrefix := 'UH04/FAS1',
|
||||
sInAlarmMessage := 'Feueralarm Signal 1',
|
||||
sInSuffix := 'DI0034',
|
||||
wInTextListId_Function := 8,
|
||||
wInTextListId_Message := 6,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError OR "SF0002",
|
||||
xInSignal := "DI0034",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stFireControl.NoFireAlarmFAS1);
|
||||
END_REGION
|
||||
|
||||
REGION FAS 2
|
||||
#fbMonFAS2.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonFAS2.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonFAS2(sInFctnName := 'Feueralarm',
|
||||
sInPrefix := 'UH04/FAS2',
|
||||
sInAlarmMessage := 'Feueralarm Signal 2',
|
||||
sInSuffix := 'DI0033',
|
||||
wInTextListId_Function := 8,
|
||||
wInTextListId_Message := 6,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError OR "SF0002",
|
||||
xInSignal := "DI0033" OR TRUE,
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stFireControl.NoFireAlarmFAS2);
|
||||
END_REGION
|
||||
|
||||
REGION FPG open
|
||||
#fbMonFPG_Open.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonFPG_Open.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonFPG_Open(sInFctnName := 'Feueralarm',
|
||||
sInPrefix := 'UH04/FD411',
|
||||
sInAlarmMessage := 'Tor nicht offen',
|
||||
sInSuffix := 'DI0037',
|
||||
wInTextListId_Function := 8,
|
||||
wInTextListId_Message := 7,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError OR "SF0002",
|
||||
xInSignal := "DI0037",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stFireControl.FPCOpened);
|
||||
END_REGION
|
||||
|
||||
REGION FPG fault
|
||||
#fbMonFPG_Fault.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonFPG_Fault.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonFPG_Fault(sInFctnName := 'Feueralarm',
|
||||
sInPrefix := 'UH04/FD411',
|
||||
sInAlarmMessage := 'Fehler',
|
||||
sInSuffix := 'DI0036',
|
||||
wInTextListId_Function := 8,
|
||||
wInTextListId_Message := 8,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError OR "SF0002",
|
||||
xInSignal := "DI0036",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stFireControl.NoFault);
|
||||
END_REGION
|
||||
|
||||
REGION FPG Fire
|
||||
#fbMonFPG_Fire.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonFPG_Fire.stSettings.xSelfQuit := FALSE;
|
||||
#fbMonFPG_Fire(sInFctnName := 'Feueralarm',
|
||||
sInPrefix := 'UH04/FD411',
|
||||
sInAlarmMessage := 'Feuer',
|
||||
sInSuffix := 'DI0035',
|
||||
wInTextListId_Function := 8,
|
||||
wInTextListId_Message := 6,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError OR "SF0002",
|
||||
xInSignal := "DI0035",
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stFireControl.NoFireAlarmFPG);
|
||||
END_REGION
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION MISC (nicht für AllReadyToStart)
|
||||
|
||||
REGION TCP-Kommunikation
|
||||
REGION Fortna WCS
|
||||
#fbMonCommFortnaWCS.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonCommFortnaWCS.stSettings.xSelfQuit := TRUE;
|
||||
#fbMonCommFortnaWCS(sInFctnName := 'Kommunikationsfehler',
|
||||
sInPrefix := 'UH04',
|
||||
sInSuffix := 'Fortna WCS',
|
||||
wInTextListId_Function := 20000,
|
||||
wInTextListId_Message := 20000,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "FB_CommunicationWCSBL_DB".fbTeleHandler.xOutConnectionActive,
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stExternal.TCPFortnaWCS);
|
||||
END_REGION
|
||||
|
||||
REGION Fortna WES DeviceHub
|
||||
#fbMonCommFortnaWESDeviceHub.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||||
#fbMonCommFortnaWESDeviceHub.stSettings.xSelfQuit := TRUE;
|
||||
#fbMonCommFortnaWESDeviceHub(sInFctnName := 'Kommunikationsfehler',
|
||||
sInPrefix := 'UH04',
|
||||
sInSuffix := 'Fortna WES',
|
||||
wInTextListId_Function := 20000,
|
||||
wInTextListId_Message := 20000,
|
||||
xInQuitError := #stInOutControlUnitCabinet.xQuitError,
|
||||
xInSignal := "FB_CommunicationWES_DeviceHub_DB".fbTeleHandler.xOutConnectionActive,
|
||||
InOutMachineState := #stInOutControlUnitCabinet,
|
||||
stOutHMI => "DB_Interface_HMI".stSystem.stExternal.TCPFortnaWES);
|
||||
END_REGION
|
||||
|
||||
END_REGION
|
||||
|
||||
END_REGION
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION AllReadyToStart
|
||||
|
||||
#xAllReadyToStart :=
|
||||
#fbMonPhaseFailure.xOutOk AND
|
||||
#fbMonFuse24V.xOutOk AND
|
||||
#fbMonFuse400V.xOutOk AND
|
||||
#fbMonPressure.xOutOk AND
|
||||
#fbMonMotorProtection.xOutOk AND
|
||||
#fbMonMainContactorsUH04.xOutOk AND
|
||||
#fbMonSafetyContactorsExternOmniflo.xOutOk AND
|
||||
#fbMonSafetyContactorsExternReserve.xOutOk AND
|
||||
#fbMonFAS1.xOutOk AND
|
||||
#fbMonFAS2.xOutOk AND
|
||||
#fbMonFPG_Fire.xOutOk AND
|
||||
#fbMonFPG_Fault.xOutOk AND
|
||||
#fbMonFPG_Open.xOutOk;
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION StateMain
|
||||
|
||||
#fbStateMain.stSettings.xEnableStartUpWarning := TRUE;
|
||||
#fbStateMain.stSettings.tStartUpTime := T#5s;
|
||||
#fbStateMain(xInBtnMachineOn := "SF0001",
|
||||
xInBtnMachineNotOff := "SF0000",
|
||||
xInBtnTrigMot := "SF0002",
|
||||
xInBtnQuitError := "SF0002",
|
||||
xInAllReadyToStart := #xAllReadyToStart,
|
||||
xInAllInExecute := TRUE,
|
||||
xInAllStarted := TRUE,
|
||||
xInSafetyActive := "DB_InterfaceSafety".stFromSafety.EStopMain.Q, //("Main_Safety_RTG1_DB".ESTOP1_Main.Q AND NOT "Main_Safety_RTG1_DB".FDBACK_UH04.ACK_REQ AND NOT "Main_Safety_RTG1_DB".FDBACK_UH04.ERROR),
|
||||
xInAllInSafeState := "DB_InterfaceSafety".stFromSafety.EStopMain.Q, //("Main_Safety_RTG1_DB".ESTOP1_Main.Q AND NOT "Main_Safety_RTG1_DB".FDBACK_UH04.ACK_REQ AND NOT "Main_Safety_RTG1_DB".FDBACK_UH04.ERROR),
|
||||
stInOutControlUnitCabinet := #stInOutControlUnitCabinet,
|
||||
stInOutHMI := "DB_Interface_HMI".stStateMachine);
|
||||
END_REGION
|
||||
|
||||
REGION Interface Safety
|
||||
|
||||
REGION to Safety
|
||||
"DB_InterfaceSafety".stToSafety.xAckGlob := "IBN".xAckGlob OR #fTrigReIntTime.Q;
|
||||
"DB_InterfaceSafety".stToSafety.xMachineRunning := #stInOutControlUnitCabinet.xRunning;
|
||||
"DB_InterfaceSafety".stToSafety.xMachineStarting := #stInOutControlUnitCabinet.xStarting;
|
||||
"DB_InterfaceSafety".stToSafety.xQuitButtonHss := "SF0002" OR #stInOutControlUnitCabinet.xQuitError OR #fTrigReIntTime.Q;
|
||||
"DB_InterfaceSafety".stToSafety.xQuitButtonUZ0409 := "SF0051" OR "IBN".xAckGlob OR #fTrigReIntTime.Q;
|
||||
"DB_InterfaceSafety".stToSafety.stMainContactorsUH04.xFeedback := "DI0013";
|
||||
"DB_InterfaceSafety".stToSafety.stSafetyContactorsExternOmniflo.xFeedback := "DI0014";
|
||||
"DB_InterfaceSafety".stToSafety.stSafetyContactorsExternReserve.xFeedback := "DI0015";
|
||||
END_REGION
|
||||
|
||||
|
||||
REGION from Safety
|
||||
;
|
||||
END_REGION
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION Outputs
|
||||
|
||||
//E-Stop Signalsäule
|
||||
"PF0030" := "SF0003" OR #fbMonFAS1.xOutError
|
||||
OR #fbMonFAS2.xOutError
|
||||
OR #fbMonFPG_Fire.xOutError
|
||||
OR #fbMonFPG_Fault.xOutError
|
||||
OR #fbMonFPG_Open.xOutError
|
||||
OR NOT "DB_InterfaceSafety".stFromSafety.EStopMain.Q;
|
||||
|
||||
//Anfahrwarnung Signalsäule
|
||||
"PF0033" := #stInOutControlUnitCabinet.xStartUpWarning AND "Clock_1Hz";
|
||||
|
||||
//LED Störung + Signalsäule gelb
|
||||
"PF0000" := "PF0031" :=
|
||||
"SF0003" OR
|
||||
#fbMonFuse24V.xOutLedError OR
|
||||
#fbMonFuse400V.xOutLedError OR
|
||||
#fbMonMotorProtection.xOutLedError OR
|
||||
#fbMonPhaseFailure.xOutLedError OR
|
||||
#fbMonPressure.xOutLedError OR
|
||||
#fbMonMainContactorsUH04.xOutLedError OR
|
||||
#fbMonSafetyContactorsExternOmniflo.xOutLedError OR
|
||||
#fbMonSafetyContactorsExternReserve.xOutLedError;
|
||||
|
||||
//LED Ein + Signalsäule grün
|
||||
"PF0001" := "PF0032" := "PF0050" := "PF0052" := "PF0054" := "PF0056" := "SF0003" OR (#stInOutControlUnitCabinet.xRunning AND NOT #stInOutControlUnitCabinet.xStartUpWarning) OR
|
||||
(NOT #stInOutControlUnitCabinet.xRunning AND #stInOutControlUnitCabinet.xStartUpWarning);
|
||||
|
||||
//LED Start nach Störung
|
||||
"PF0002" := "SF0003" OR #arESTOPAck[0].xOutLed (* OR NOT #xAllReadyToStart *)OR
|
||||
(#fbMonMotorProtection.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonPhaseFailure.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonFuse24V.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonFuse400V.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonPressure.xOutAckReq AND "Clock_1Hz") OR
|
||||
("DB_InterfaceSafety".stFromSafety.stMainContactorsUH04.xAckReq AND "Clock_1Hz") OR
|
||||
("DB_InterfaceSafety".stFromSafety.stSafetyContactorsExternOmniflo.xAckReq AND "Clock_1Hz") OR
|
||||
("DB_InterfaceSafety".stFromSafety.stSafetyContactorsExternReserve.xAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonFAS1.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonFAS2.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonFPG_Fire.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonFPG_Fault.xOutAckReq AND "Clock_1Hz") OR
|
||||
(#fbMonFPG_Open.xOutAckReq AND "Clock_1Hz") OR
|
||||
("fbMain_DB".fbCarousel4003.xOutGridError AND "Clock_1Hz");
|
||||
|
||||
//LED Druckluft
|
||||
"PF0003" := "SF0003" OR #fbMonPressure.xOutLedError;
|
||||
|
||||
//LED Motorschutz
|
||||
"PF0004" := "SF0003" OR #fbMonMotorProtection.xOutLedError;
|
||||
|
||||
//LED Sicherung
|
||||
"PF0005" := "SF0003" OR #fbMonFuse24V.xOutLedError OR #fbMonFuse400V.xOutLedError;
|
||||
|
||||
//LED Brandfall
|
||||
"PF0006" := "SF0003" OR #fbMonFAS1.xOutError
|
||||
OR #fbMonFAS2.xOutError
|
||||
OR #fbMonFPG_Fire.xOutError
|
||||
OR #fbMonFPG_Fault.xOutError
|
||||
OR #fbMonFPG_Open.xOutError;
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION Not-Halt Tableaues
|
||||
REGION UH04
|
||||
#arESTOPAck[#c_UH04](sInAlarmFunction := 'HSS',
|
||||
sInAlarmDevice := 'UH04',
|
||||
sInAlarmMessage := 'Not-Halt aktiv',
|
||||
sInAlarmSuffix := 'PF0002',
|
||||
xInAckReqLocal := "DB_InterfaceSafety".stFromSafety.EStopUH04.AckReq,
|
||||
xInEstopOkLocal := "DB_InterfaceSafety".stFromSafety.EStopUH04.Q,
|
||||
xInAckReqGlobal := (* #arESTOPAck[1].xOutAckReq OR *)
|
||||
#arESTOPAck[#c_UH04_Extern1].xOutAckReq OR
|
||||
#arESTOPAck[#c_UH04_Extern2].xOutAckReq,
|
||||
//#arESTOPAck[4].xOutAckReq OR
|
||||
xInSafetyNotOkGlobal := (* #arESTOPAck[1].xOutSafetyNotOk OR *)
|
||||
#arESTOPAck[#c_UH04_Extern1].xOutSafetyNotOk OR
|
||||
#arESTOPAck[#c_UH04_Extern2].xOutSafetyNotOk,
|
||||
// #arESTOPAck[4].xOutSafetyNotOk OR
|
||||
xInMainCabinet := TRUE,
|
||||
// xOutLed => "PF0002",
|
||||
stInOutControlUnitCabinet := #stInOutControlUnitCabinet,
|
||||
stInOutHmiEstopPanel := "DB_Interface_HMI".arEstops[#c_UH04]);
|
||||
END_REGION
|
||||
|
||||
REGION UH04 Extern1
|
||||
#arESTOPAck[#c_UH04_Extern1](sInAlarmDevice := 'UH04_Ext1/UH06',
|
||||
sInAlarmSuffix := 'PF0002',
|
||||
stInOutHmiEstopPanel := "DB_Interface_HMI".arEstops[#c_UH04_Extern1],
|
||||
stInOutControlUnitCabinet := #stInOutControlUnitCabinet,
|
||||
xInAckReqLocal := "DB_InterfaceSafety".stFromSafety.EStopExternOmniflo.AckReq,
|
||||
xInEstopOkLocal := "DB_InterfaceSafety".stFromSafety.EStopExternOmniflo.Q);
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION UH04 Extern2
|
||||
#arESTOPAck[#c_UH04_Extern2](sInAlarmDevice := 'UH04_Ext2/Res',
|
||||
sInAlarmSuffix := 'PF0002',
|
||||
stInOutHmiEstopPanel := "DB_Interface_HMI".arEstops[#c_UH04_Extern2],
|
||||
stInOutControlUnitCabinet := #stInOutControlUnitCabinet,
|
||||
xInAckReqLocal := "DB_InterfaceSafety".stFromSafety.EStopExternReserve.AckReq,
|
||||
xInEstopOkLocal := "DB_InterfaceSafety".stFromSafety.EStopExternReserve.Q);
|
||||
|
||||
END_REGION
|
||||
|
||||
REGION UZ0409
|
||||
#arESTOPAck[#c_UZ0409](sInAlarmFunction := 'Bedientableau',
|
||||
sInAlarmDevice := 'UZ0409',
|
||||
sInAlarmMessage := 'Not-Halt aktiv',
|
||||
sInAlarmSuffix := 'PF0051',
|
||||
wInTextListId_Function := 1,
|
||||
wInTextListId_Message := 0,
|
||||
stInOutHmiEstopPanel := "DB_Interface_HMI".arEstops[#c_UZ0409],
|
||||
stInOutControlUnitCabinet := #stInOutControlUnitCabinet,
|
||||
xInAckReqLocal := "DB_InterfaceSafety".stFromSafety.EStopUZ0409.AckReq,
|
||||
xInEstopOkLocal := "DB_InterfaceSafety".stFromSafety.EStopUZ0409.Q);
|
||||
|
||||
"PF0051" := #arESTOPAck[#c_UZ0409].xOutLed OR "SF0003";
|
||||
END_REGION
|
||||
END_REGION
|
||||
|
||||
REGION SCADA-Interface
|
||||
"FB-OPC_UA_System-Stat_DB"(nInSystemStat := #fbStateMain.nState, //State Main (Running, Idle, Stopped...)
|
||||
xInFireAlarm := (#fbMonFAS1.xOutError OR #fbMonFAS2.xOutError OR #fbMonFPG_Fire.xOutError), // Nur Feueralarm
|
||||
xInSafetyStop := NOT "DB_InterfaceSafety".stFromSafety.EStopMain.Q, // Not-Halt
|
||||
xInError := "DB_Interface_HMI".nActiveAlarms > 0, //Alle aktiven Meldungen über HMI Interface
|
||||
xInCommunicationError := #fbMonCommFortnaWCS.xOutError OR #fbMonCommFortnaWESDeviceHub.xOutError,
|
||||
nOutScadaStatus => "DB_Status".System.Status);
|
||||
END_REGION
|
||||
END_FUNCTION_BLOCK
|
||||
|
||||
@@ -1,166 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Document>
|
||||
<Engineering version="V20" />
|
||||
<SW.Blocks.InstanceDB ID="0">
|
||||
<AttributeList>
|
||||
<InstanceOfName>FB_PreMain</InstanceOfName>
|
||||
<InstanceOfType>FB</InstanceOfType>
|
||||
<Interface><Sections xmlns="http://www.siemens.com/automation/Openness/SW/Interface/v5">
|
||||
<Section Name="Input" />
|
||||
<Section Name="Output" />
|
||||
<Section Name="InOut">
|
||||
<Member Name="stInOutControlUnitCabinet" Datatype=""UDT_MainState"" />
|
||||
</Section>
|
||||
<Section Name="Static">
|
||||
<Member Name="fbMonMotorProtection" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonPhaseFailure" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonFuse400V" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonFuse24V" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonPressure" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonMainContactorsUH04" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonSafetyContactorsExternOmniflo" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonSafetyContactorsExternReserve" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonFAS1" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonFAS2" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonFPG_Open" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonFPG_Fault" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonFPG_Fire" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonCommFortnaWCS" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbMonCommFortnaWESDeviceHub" Datatype=""FB_Monitoring"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="xAllReadyToStart" Datatype="Bool">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="fbStateMain" Datatype=""FB_StateMain"">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="arESTOPAck" Datatype="Array[0..4] of "FB_ESTOPhandling"" />
|
||||
<Member Name="xReInit" Datatype="Bool" />
|
||||
<Member Name="fTrigReIntTime" Datatype="F_TRIG" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
<Member Name="tOfReIntTime" Datatype="TOF_TIME" Version="1.0">
|
||||
<AttributeList>
|
||||
<BooleanAttribute Name="SetPoint" SystemDefined="true">true</BooleanAttribute>
|
||||
</AttributeList>
|
||||
</Member>
|
||||
</Section>
|
||||
</Sections></Interface>
|
||||
<Name>fbPreMain_DB</Name>
|
||||
<Namespace />
|
||||
<Number>16</Number>
|
||||
<ProgrammingLanguage>DB</ProgrammingLanguage>
|
||||
</AttributeList>
|
||||
<ObjectList>
|
||||
<MultilingualText ID="1" CompositionName="Comment">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="2" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="3" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="4" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
<MultilingualText ID="5" CompositionName="Title">
|
||||
<ObjectList>
|
||||
<MultilingualTextItem ID="6" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>cs-CZ</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="7" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>de-DE</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
<MultilingualTextItem ID="8" CompositionName="Items">
|
||||
<AttributeList>
|
||||
<Culture>en-US</Culture>
|
||||
<Text />
|
||||
</AttributeList>
|
||||
</MultilingualTextItem>
|
||||
</ObjectList>
|
||||
</MultilingualText>
|
||||
</ObjectList>
|
||||
</SW.Blocks.InstanceDB>
|
||||
</Document>
|
||||
Reference in New Issue
Block a user