8922 lines
510 KiB
Plaintext
8922 lines
510 KiB
Plaintext
FUNCTION_BLOCK "FB_Main"
|
||
{ S7_Optimized_Access := 'TRUE' }
|
||
VERSION : 0.1
|
||
VAR_IN_OUT
|
||
stInOutControlUnitCabinetOF1 : "UDT_MainState";
|
||
stInOutControlUnitCabinetOF2 : "UDT_MainState";
|
||
stInOutControlUnitCabinetOF3 : "UDT_MainState";
|
||
stInOutControlUnitCabinetOF4 : "UDT_MainState";
|
||
END_VAR
|
||
|
||
VAR
|
||
fbSortConv1101 : "FB_Conveyor_Sort"; // Pin-Kreisel
|
||
fbSortConv1102 : "FB_Conveyor_Sort"; // Pin-Kreisel
|
||
fbSortConv1201 : "FB_Conveyor_Sort"; // Pin-Kreisel
|
||
fbSortConv1202 : "FB_Conveyor_Sort"; // Pin-Kreisel
|
||
fbSortConv1303 : "FB_Conveyor_Sort"; // Pin-Kreisel
|
||
fbSortConv1304 : "FB_Conveyor_Sort"; // Pin-Kreisel
|
||
fbCarousel1110 : "FB_Conveyor"; // Kreisel
|
||
fbExitConv1103 : "FB_Conveyor"; // Kreisel
|
||
fbExitConv1104 : "FB_Conveyor"; // Kreisel
|
||
fbExitConv1203 : "FB_Conveyor"; // Kreisel
|
||
fbExitConv1204 : "FB_Conveyor"; // Kreisel
|
||
fbExitConv1301 : "FB_Conveyor"; // Kreisel
|
||
fbExitConv1302 : "FB_Conveyor"; // Kreisel
|
||
fbPinControl1101_1 : "FB_SupervisionRasterSensor"; // Pin-Überwachung mit "Zappler"-Sensor
|
||
fbPinControl1101_2 : "FB_SupervisionRasterSensor";
|
||
fbPinControl1102_1 : "FB_SupervisionRasterSensor"; // Pin-Überwachung mit "Zappler"-Sensor
|
||
fbPinControl1102_2 : "FB_SupervisionRasterSensor";
|
||
fbPinControl1201_1 : "FB_SupervisionRasterSensor"; // Pin-Überwachung mit "Zappler"-Sensor
|
||
fbPinControl1201_2 : "FB_SupervisionRasterSensor";
|
||
fbPinControl1202_1 : "FB_SupervisionRasterSensor"; // Pin-Überwachung mit "Zappler"-Sensor
|
||
fbPinControl1202_2 : "FB_SupervisionRasterSensor";
|
||
fbPinControl1303_1 : "FB_SupervisionRasterSensor"; // Pin-Überwachung mit "Zappler"-Sensor
|
||
fbPinControl1303_2 : "FB_SupervisionRasterSensor";
|
||
fbPinControl1304_1 : "FB_SupervisionRasterSensor"; // Pin-Überwachung mit "Zappler"-Sensor
|
||
fbPinControl1304_2 : "FB_SupervisionRasterSensor";
|
||
fbMonPinControl1101_1 : "FB_Monitoring";
|
||
fbMonPinControl1101_2 : "FB_Monitoring";
|
||
fbMonPinControl1102_1 : "FB_Monitoring";
|
||
fbMonPinControl1102_2 : "FB_Monitoring";
|
||
fbMonPinControl1201_1 : "FB_Monitoring";
|
||
fbMonPinControl1201_2 : "FB_Monitoring";
|
||
fbMonPinControl1202_1 : "FB_Monitoring";
|
||
fbMonPinControl1202_2 : "FB_Monitoring";
|
||
fbMonPinControl1303_1 : "FB_Monitoring";
|
||
fbMonPinControl1303_2 : "FB_Monitoring";
|
||
fbMonPinControl1304_1 : "FB_Monitoring";
|
||
fbMonPinControl1304_2 : "FB_Monitoring";
|
||
fbEncoderMonitor1101 : "FB_EncoderMonitor"; // Pin-Überwachung mit Encoder Werten
|
||
fbEncoderMonitor1102 : "FB_EncoderMonitor"; // Pin-Überwachung mit Encoder Werten
|
||
fbEncoderMonitor1201 : "FB_EncoderMonitor"; // Pin-Überwachung mit Encoder Werten
|
||
fbEncoderMonitor1202 : "FB_EncoderMonitor"; // Pin-Überwachung mit Encoder Werten
|
||
fbEncoderMonitor1303 : "FB_EncoderMonitor"; // Pin-Überwachung mit Encoder Werten
|
||
fbEncoderMonitor1304 : "FB_EncoderMonitor"; // Pin-Überwachung mit Encoder Werten
|
||
fbEncoderGF2200 : "FB_EncoderTR"; // Encoder
|
||
fbEncoderGF2201 : "FB_EncoderTR"; // Encoder
|
||
fbEncoderGF2202 : "FB_EncoderTR"; // Encoder
|
||
fbEncoderGF2203 : "FB_EncoderTR"; // Encoder
|
||
fbEncoderGF2204 : "FB_EncoderTR"; // Encoder
|
||
fbEncoderGF2205 : "FB_EncoderTR"; // Encoder
|
||
END_VAR
|
||
VAR RETAIN
|
||
arCognexInterface { S7_SetPoint := 'False'} : Array[1.."cNoScanner"] of "stCognexInterface"; // Cognex Barcode Reader Profinet Interface
|
||
END_VAR
|
||
VAR
|
||
stCognexInterfaceDummy : "stCognexInterface"; // Cognex Barcode Reader Profinet Interface Platzhalter
|
||
TRO200 : "FB_ILS_MTRO_Vario";
|
||
TRO201 { S7_SetPoint := 'False'} : "FB_ILS_MTRO_1Sep";
|
||
TRO202 { S7_SetPoint := 'False'} : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO203 { S7_SetPoint := 'False'} : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO204 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO205 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO206 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO207 : "FB_ILS_MTRO_1Sep";
|
||
TRO208 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.1.1
|
||
TRO209 : "FB_ILS_MTRO_Vario"; // Rückführung Vario
|
||
TRO210 : "FB_ILS_MTRO_1Sep"; // Rückführung 1Sep
|
||
TRO211 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.1.2
|
||
TRO212 : "FB_ILS_MTRO_Vario"; // Rückführung Vario
|
||
TRO213 : "FB_ILS_MTRO_1Sep"; // Rückführung 1Sep
|
||
TRO214 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.1.3
|
||
TRO215 : "FB_ILS_MTRO_Vario"; // Rückführung Vario
|
||
TRO216 : "FB_ILS_MTRO_1Sep"; // Rückführung 1Sep
|
||
TRO217 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.1.4
|
||
TRO218 : "FB_ILS_MTRO_Vario"; // Rückführung Vario
|
||
TRO219 : "FB_ILS_MTRO_1Sep"; // Rückführung 1Sep
|
||
TRO220 { S7_SetPoint := 'False'} : "FB_ILS_MTRO_Vario";
|
||
TRO221 : "FB_ILS_MTRO_1Sep";
|
||
TRO222 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO223 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO224 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO225 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO226 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO227 : "FB_ILS_MTRO_1Sep";
|
||
TRO228 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.2.1
|
||
TRO229 : "FB_ILS_MTRO_Vario"; // Rückführung Vario
|
||
TRO230 : "FB_ILS_MTRO_1Sep"; // Rückführung 1Sep
|
||
TRO231 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.2.2
|
||
TRO232 : "FB_ILS_MTRO_Vario";
|
||
TRO233 : "FB_ILS_MTRO_1Sep";
|
||
TRO234 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.2.3
|
||
TRO235 : "FB_ILS_MTRO_Vario";
|
||
TRO236 : "FB_ILS_MTRO_1Sep";
|
||
TRO237 { S7_SetPoint := 'False'} : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.2.2
|
||
TRO238 : "FB_ILS_MTRO_Vario";
|
||
TRO239 : "FB_ILS_MTRO_1Sep";
|
||
TRO240 : "FB_ILS_MTRO_Vario";
|
||
TRO241 : "FB_ILS_MTRO_1Sep";
|
||
TRO242 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO243 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO244 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO245 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO246 : "FB_ILS_MTRO_1Sep1Swi";
|
||
TRO247 : "FB_ILS_MTRO_1Sep";
|
||
TRO248 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.3.1
|
||
TRO249 : "FB_ILS_MTRO_Vario"; // Rückführung Vario
|
||
TRO250 : "FB_ILS_MTRO_1Sep"; // Rückführung 1Sep
|
||
TRO251 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.3.2
|
||
TRO252 : "FB_ILS_MTRO_Vario";
|
||
TRO253 : "FB_ILS_MTRO_1Sep";
|
||
TRO254 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.3.3
|
||
TRO255 : "FB_ILS_MTRO_Vario";
|
||
TRO256 : "FB_ILS_MTRO_1Sep";
|
||
TRO257 : "FB_ILS_MTRO_PinStore_Auto"; // Block 1.3.4
|
||
TRO258 : "FB_ILS_MTRO_Vario";
|
||
TRO259 : "FB_ILS_MTRO_1Sep";
|
||
TRO260 : "FB_ILS_MTRO_Vario";
|
||
TRO261 : "FB_ILS_MTRO_1Sep";
|
||
TRO262 : "FB_ILS_MTRO_Vario";
|
||
TRO263 : "FB_ILS_MTRO_1Sep";
|
||
TRO264 : "FB_ILS_MTRO_Vario";
|
||
TRO265 : "FB_ILS_MTRO_1Sep";
|
||
TRO266 : "FB_ILS_MTRO_1Sep";
|
||
TRO267 : "FB_ILS_MTRO_1Sep2Swi";
|
||
TRO268 : "FB_ILS_MTRO_1Sep2Swi";
|
||
TRO269 : "FB_ILS_MTRO_1Sep";
|
||
TRO270 : "FB_ILS_MTRO_Vario";
|
||
TRO271 : "FB_ILS_MTRO_1Sep";
|
||
TRO272 : "FB_ILS_MTRO_Vario";
|
||
TRO273 : "FB_ILS_MTRO_1Sep";
|
||
TRO274 : "FB_ILS_MTRO_1Sep";
|
||
TRO275 : "FB_ILS_MTRO_1Sep";
|
||
xReInit : Bool;
|
||
rTrigReInit {InstructionName := 'R_TRIG'; LibVersion := '1.0'; S7_SetPoint := 'False'} : R_TRIG;
|
||
tOnHeartbeat {InstructionName := 'TON_TIME'; LibVersion := '1.0'} : TON_TIME;
|
||
xSendHB : Bool;
|
||
fTrig_TRO271_TRO306 {InstructionName := 'F_TRIG'; LibVersion := '1.0'} : F_TRIG;
|
||
fTrig_TRO273_TRO307 {InstructionName := 'F_TRIG'; LibVersion := '1.0'} : F_TRIG;
|
||
END_VAR
|
||
|
||
VAR_TEMP
|
||
t_Automatik_OF1 : Bool;
|
||
t_Automatik_OF2 : Bool;
|
||
t_Automatik_OF3 : Bool;
|
||
t_Automatik_OF4 : Bool;
|
||
nActCar : Int;
|
||
nActNo : Int;
|
||
nNiu : DInt;
|
||
stGenerateCarrier : "stCarrier";
|
||
nCounter1 : DInt;
|
||
xResult1 : Bool;
|
||
nIdx : Int;
|
||
nIdx2 : Int;
|
||
nFound : Int;
|
||
stEmptyCarrier : "stCarrier";
|
||
stEmptyCarrierData : "stJamData";
|
||
arCarrierPlaceHolder : Array[1..1] of "stCarrier"; // Platzhalter
|
||
stJamDataPlaceHolder : "stJamData";
|
||
stHMISwitchPlaceholder : "UDT_HMI_UnloadingStation";
|
||
idx : Int;
|
||
arEmptyStorageLine_1 : Int;
|
||
arEmptyStorageLine : Array[1..1] of "stCarrier";
|
||
arDummyEventCorrectionInfo : Array[0..1] of "stEventCorrectionInfo";
|
||
arCarrierHandoverJam2109 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam2109 : "stJamData";
|
||
arCarrierHandoverJam2209 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam2209 : "stJamData";
|
||
arCarrierHandoverJam2309 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam2309 : "stJamData";
|
||
arCarrierHandoverJam5000 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam5000 : "stJamData";
|
||
arCarrierHandoverJam5001 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam5001 : "stJamData";
|
||
arCarrierHandoverJam4301 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam4301 : "stJamData";
|
||
arCarrierHandoverJam4401 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam4401 : "stJamData";
|
||
arCarrierHandoverJam4701 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam4701 : "stJamData";
|
||
arCarrierHandoverJam1801 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam1801 : "stJamData";
|
||
arCarrierHandoverJam1801_2 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam1801_2 : "stJamData";
|
||
arCarrierHandoverJam4701_2 : Array[1..1] of "stCarrier";
|
||
stJamDataHandoverJam4701_2 : "stJamData";
|
||
tmpTSHRCounter : DInt;
|
||
tmpTSHRResult : Bool;
|
||
nIdxUnloading : Int;
|
||
tmpPlaceHolderLaneStatus : Array[0..4] of String;
|
||
END_VAR
|
||
|
||
|
||
BEGIN
|
||
REGION Reinitialisieren
|
||
IF NOT #xReInit THEN
|
||
#xReInit := TRUE;
|
||
END_IF;
|
||
|
||
#rTrigReInit(CLK := #xReInit);
|
||
|
||
IF #rTrigReInit.Q THEN
|
||
|
||
#TRO200.nState := "DB_GLOB_TroState".arTroState["cMainTro200"];
|
||
#TRO201.nState := "DB_GLOB_TroState".arTroState["cMainTro201"];
|
||
#TRO202.nState := "DB_GLOB_TroState".arTroState["cMainTro202"];
|
||
#TRO203.nState := "DB_GLOB_TroState".arTroState["cMainTro203"];
|
||
#TRO204.nState := "DB_GLOB_TroState".arTroState["cMainTro204"];
|
||
#TRO205.nState := "DB_GLOB_TroState".arTroState["cMainTro205"];
|
||
#TRO206.nState := "DB_GLOB_TroState".arTroState["cMainTro206"];
|
||
#TRO207.nState := "DB_GLOB_TroState".arTroState["cMainTro207"];
|
||
#TRO209.nState := "DB_GLOB_TroState".arTroState["cMainTro209"];
|
||
#TRO210.nState := "DB_GLOB_TroState".arTroState["cMainTro210"];
|
||
|
||
// #TRO211.nState := "DB_GLOB_TroState".arTroState["cMainTro211"];
|
||
#TRO212.nState := "DB_GLOB_TroState".arTroState["cMainTro212"];
|
||
#TRO213.nState := "DB_GLOB_TroState".arTroState["cMainTro213"];
|
||
// #TRO214.nState := "DB_GLOB_TroState".arTroState["cMainTro214"];
|
||
#TRO215.nState := "DB_GLOB_TroState".arTroState["cMainTro215"];
|
||
#TRO216.nState := "DB_GLOB_TroState".arTroState["cMainTro216"];
|
||
// #TRO217.nState := "DB_GLOB_TroState".arTroState["cMainTro217"];
|
||
|
||
#TRO218.nState := "DB_GLOB_TroState".arTroState["cMainTro218"];
|
||
#TRO219.nState := "DB_GLOB_TroState".arTroState["cMainTro219"];
|
||
#TRO220.nState := "DB_GLOB_TroState".arTroState["cMainTro220"];
|
||
#TRO221.nState := "DB_GLOB_TroState".arTroState["cMainTro221"];
|
||
#TRO222.nState := "DB_GLOB_TroState".arTroState["cMainTro222"];
|
||
#TRO223.nState := "DB_GLOB_TroState".arTroState["cMainTro223"];
|
||
#TRO224.nState := "DB_GLOB_TroState".arTroState["cMainTro224"];
|
||
#TRO225.nState := "DB_GLOB_TroState".arTroState["cMainTro225"];
|
||
#TRO226.nState := "DB_GLOB_TroState".arTroState["cMainTro226"];
|
||
#TRO227.nState := "DB_GLOB_TroState".arTroState["cMainTro227"];
|
||
// #TRO228.nState := "DB_GLOB_TroState".arTroState["cMainTro228"];
|
||
#TRO229.nState := "DB_GLOB_TroState".arTroState["cMainTro229"];
|
||
#TRO230.nState := "DB_GLOB_TroState".arTroState["cMainTro230"];
|
||
// #TRO231.nState := "DB_GLOB_TroState".arTroState["cMainTro231"];
|
||
#TRO232.nState := "DB_GLOB_TroState".arTroState["cMainTro232"];
|
||
// #TRO234.nState := "DB_GLOB_TroState".arTroState["cMainTro234"];
|
||
#TRO235.nState := "DB_GLOB_TroState".arTroState["cMainTro235"];
|
||
#TRO236.nState := "DB_GLOB_TroState".arTroState["cMainTro236"];
|
||
// #TRO237.nState := "DB_GLOB_TroState".arTroState["cMainTro237"];
|
||
#TRO238.nState := "DB_GLOB_TroState".arTroState["cMainTro238"];
|
||
#TRO239.nState := "DB_GLOB_TroState".arTroState["cMainTro239"];
|
||
#TRO240.nState := "DB_GLOB_TroState".arTroState["cMainTro240"];
|
||
#TRO241.nState := "DB_GLOB_TroState".arTroState["cMainTro241"];
|
||
#TRO242.nState := "DB_GLOB_TroState".arTroState["cMainTro242"];
|
||
#TRO243.nState := "DB_GLOB_TroState".arTroState["cMainTro243"];
|
||
#TRO244.nState := "DB_GLOB_TroState".arTroState["cMainTro244"];
|
||
#TRO245.nState := "DB_GLOB_TroState".arTroState["cMainTro245"];
|
||
#TRO246.nState := "DB_GLOB_TroState".arTroState["cMainTro246"];
|
||
#TRO247.nState := "DB_GLOB_TroState".arTroState["cMainTro247"];
|
||
// #TRO248.nState := "DB_GLOB_TroState".arTroState["cMainTro248"];
|
||
#TRO249.nState := "DB_GLOB_TroState".arTroState["cMainTro249"];
|
||
#TRO250.nState := "DB_GLOB_TroState".arTroState["cMainTro250"];
|
||
// #TRO251.nState := "DB_GLOB_TroState".arTroState["cMainTro251"];
|
||
#TRO252.nState := "DB_GLOB_TroState".arTroState["cMainTro252"];
|
||
#TRO253.nState := "DB_GLOB_TroState".arTroState["cMainTro253"];
|
||
// #TRO254.nState := "DB_GLOB_TroState".arTroState["cMainTro254"];
|
||
#TRO255.nState := "DB_GLOB_TroState".arTroState["cMainTro255"];
|
||
#TRO256.nState := "DB_GLOB_TroState".arTroState["cMainTro256"];
|
||
// #TRO257.nState := "DB_GLOB_TroState".arTroState["cMainTro257"];
|
||
#TRO258.nState := "DB_GLOB_TroState".arTroState["cMainTro258"];
|
||
#TRO259.nState := "DB_GLOB_TroState".arTroState["cMainTro259"];
|
||
#TRO260.nState := "DB_GLOB_TroState".arTroState["cMainTro260"];
|
||
#TRO261.nState := "DB_GLOB_TroState".arTroState["cMainTro261"];
|
||
#TRO262.nState := "DB_GLOB_TroState".arTroState["cMainTro262"];
|
||
#TRO263.nState := "DB_GLOB_TroState".arTroState["cMainTro263"];
|
||
#TRO264.nState := "DB_GLOB_TroState".arTroState["cMainTro264"];
|
||
#TRO265.nState := "DB_GLOB_TroState".arTroState["cMainTro265"];
|
||
#TRO266.nState := "DB_GLOB_TroState".arTroState["cMainTro266"];
|
||
#TRO267.nState := "DB_GLOB_TroState".arTroState["cMainTro267"];
|
||
#TRO268.nState := "DB_GLOB_TroState".arTroState["cMainTro268"];
|
||
#TRO269.nState := "DB_GLOB_TroState".arTroState["cMainTro269"];
|
||
#TRO270.nState := "DB_GLOB_TroState".arTroState["cMainTro270"];
|
||
#TRO271.nState := "DB_GLOB_TroState".arTroState["cMainTro271"];
|
||
#TRO272.nState := "DB_GLOB_TroState".arTroState["cMainTro272"];
|
||
#TRO273.nState := "DB_GLOB_TroState".arTroState["cMainTro273"];
|
||
#TRO274.nState := "DB_GLOB_TroState".arTroState["cMainTro274"];
|
||
#TRO275.nState := "DB_GLOB_TroState".arTroState["cMainTro275"];
|
||
|
||
END_IF;
|
||
|
||
END_REGION
|
||
|
||
REGION Automatik
|
||
#t_Automatik_OF1 := "DB_InterfaceSafety".stFromSafety.stMainContactorsUH02.Q; //#stInOutControlUnitCabinetOF1.xRunning AND NOT #stInOutControlUnitCabinetOF1.xStarting AND "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q(* AND "IBN".xAutomatikON *);
|
||
#t_Automatik_OF2 := "DB_InterfaceSafety".stFromSafety.stMainContactorsUC021.Q; //#stInOutControlUnitCabinetOF2.xRunning AND NOT #stInOutControlUnitCabinetOF2.xStarting AND "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q(* AND "IBN".xAutomatikON *);
|
||
#t_Automatik_OF3 := "DB_InterfaceSafety".stFromSafety.stMainContactorsUC022.Q; //#stInOutControlUnitCabinetOF3.xRunning AND NOT #stInOutControlUnitCabinetOF3.xStarting AND "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q(* AND "IBN".xAutomatikON *);
|
||
#t_Automatik_OF4 := "DB_InterfaceSafety".stFromSafety.stMainContactorsUC023.Q; //#stInOutControlUnitCabinetOF4.xRunning AND NOT #stInOutControlUnitCabinetOF4.xStarting AND "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q(* AND "IBN".xAutomatikON *);
|
||
END_REGION
|
||
|
||
REGION Conveyor
|
||
REGION Pin-Sorter
|
||
REGION Conveyor 1101
|
||
#fbSortConv1101.Settings.tEnergySafeTime := T#120s; // Konstante TODO
|
||
#fbSortConv1101.Settings.tStartingTime := T#50ms;
|
||
#fbSortConv1101.Settings.xGridActive := FALSE;
|
||
#fbSortConv1101.Settings.sMotorProtectName := 'FC0140';
|
||
#fbSortConv1101(xInEnabled :=
|
||
"SF0120" AND "SF0122" AND
|
||
NOT #fbPinControl1101_1.xOutErrorRasterSensor AND
|
||
NOT #fbPinControl1101_2.xOutErrorRasterSensor AND
|
||
NOT #fbEncoderMonitor1101.xOutError AND
|
||
NOT #TRO208.xOutUnloadingError AND
|
||
NOT #TRO211.xOutUnloadingError,
|
||
xInFull := "cTodoFalse",
|
||
xInNextConveyorReady := "cTodoTRUE",
|
||
xInAutomaticMode := #t_Automatik_OF2,
|
||
xInEnergySafeRequest := NOT #stInOutControlUnitCabinetOF2.xRestart AND NOT #TRO208.xOutConvReqSort AND
|
||
NOT #TRO211.xOutConvReqSort AND NOT #TRO210.xOutCarouselReq AND
|
||
NOT #TRO213.xOutCarouselReq AND NOT #TRO202.xOutCarouselReq2,
|
||
xInChainBreakMonitoring := TRUE,
|
||
xInChainBreakMonitoringSmoothing := false,
|
||
xInMotorProtectionMonitoring := "FC0140",
|
||
xInSafetyEnable := "cTodoTRUE",
|
||
xOutPowerContactor => "MA0140",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF2,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".#stConveyors.stSort.stCS1101);
|
||
|
||
REGION Überwachung Pins 1
|
||
|
||
#fbPinControl1101_1.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1101_1.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1101_1.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1101_1.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1101_1(stInSenRaster := "DB_Inputs".Sensors["cInBG3061"],
|
||
xInErrorQuit := "SF0121" OR "SF0123" OR "SF0117",
|
||
xInMotorRun := #fbSortConv1101.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1101_1.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1101_1.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1101_1.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1101_1.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1101_1(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1101',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3061"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
xInQuitError := #stInOutControlUnitCabinetOF2.xQuitError,
|
||
xInSignal := NOT #fbPinControl1101_1.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Überwachung Pins 2
|
||
|
||
#fbPinControl1101_2.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1101_2.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1101_2.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1101_2.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1101_2(stInSenRaster := "DB_Inputs".Sensors["cInBG3001"],
|
||
xInErrorQuit := "SF0121" OR "SF0123" OR "SF0117",
|
||
xInMotorRun := #fbSortConv1101.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1101_2.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1101_2.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1101_2.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1101_2.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1101_2(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1101',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3001"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
xInQuitError := #stInOutControlUnitCabinetOF2.xQuitError,
|
||
xInSignal := NOT #fbPinControl1101_2.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Überwachung Encoder
|
||
#fbEncoderMonitor1101(sInConveyor := 'KR-M1101',
|
||
sInEncoder := 'GF2200',
|
||
nInEncoderValue := "GF2200_PosAct",
|
||
nInEncoderMax := "cEncoderGF2200",
|
||
nInEncMonVal := "cEncMonVal",
|
||
xInClock := "Clock_2Hz",
|
||
xInConveyorRun := #fbSortConv1101.xOutConveyorFullSpeed,
|
||
xInQuit := "SF0121" OR "SF0123" OR "SF0117" OR "IBN".xQuitGlob,
|
||
xInActivate := TRUE,
|
||
stInOutControlUnitCabinet:=#stInOutControlUnitCabinetOF2);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Conveyor 1102
|
||
#fbSortConv1102.Settings.tEnergySafeTime := T#120s; // Konstante TODO
|
||
#fbSortConv1102.Settings.tStartingTime := T#50ms;
|
||
#fbSortConv1102.Settings.xGridActive := FALSE;
|
||
#fbSortConv1102.Settings.sMotorProtectName := 'FC0141';
|
||
|
||
#fbSortConv1102(xInEnabled :=
|
||
"SF0124" AND "SF0126" AND
|
||
NOT #fbPinControl1102_1.xOutErrorRasterSensor AND
|
||
NOT #fbPinControl1102_2.xOutErrorRasterSensor AND
|
||
NOT #fbEncoderMonitor1102.xOutError AND
|
||
NOT #TRO214.xOutUnloadingError AND
|
||
NOT #TRO217.xOutUnloadingError,
|
||
xInFull := "cTodoFalse",
|
||
xInNextConveyorReady := "cTodoTRUE",
|
||
xInAutomaticMode := #t_Automatik_OF2,
|
||
xInEnergySafeRequest := NOT #stInOutControlUnitCabinetOF2.xRestart AND NOT #TRO214.xOutConvReqSort AND
|
||
NOT #TRO217.xOutConvReqSort AND NOT #TRO216.xOutCarouselReq AND
|
||
NOT #TRO219.xOutCarouselReq AND NOT #TRO202.xOutCarouselReq1 AND NOT #TRO202.xOutCarouselReq2 AND NOT #TRO201.xOutCarouselReq,
|
||
|
||
xInChainBreakMonitoring := TRUE,
|
||
xInChainBreakMonitoringSmoothing := false,
|
||
xInMotorProtectionMonitoring := "FC0141",
|
||
xInSafetyEnable := "cTodoTRUE",
|
||
xOutPowerContactor => "MA0141",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF2,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stSort.stCS1102);
|
||
|
||
REGION Überwachung Pins 1
|
||
|
||
#fbPinControl1102_1.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1102_1.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1102_1.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1102_1.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1102_1(stInSenRaster := "DB_Inputs".Sensors["cInBG3121"],
|
||
xInErrorQuit := "SF0125" OR "SF0127" OR "SF0117",
|
||
xInMotorRun := #fbSortConv1102.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1102_1.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1102_1.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1102_1.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1102_1.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1102_1(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1102',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3121"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
xInQuitError := #stInOutControlUnitCabinetOF2.xQuitError,
|
||
xInSignal := NOT #fbPinControl1102_1.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Pins 2
|
||
|
||
#fbPinControl1102_2.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1102_2.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1102_2.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1102_2.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1102_2(stInSenRaster := "DB_Inputs".Sensors["cInBG3181"],
|
||
xInErrorQuit := "SF0125" OR "SF0127" OR "SF0117",
|
||
xInMotorRun := #fbSortConv1102.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1102_2.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1102_2.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1102_2.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1102_2.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1102_2(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1102',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3181"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
xInQuitError := #stInOutControlUnitCabinetOF2.xQuitError,
|
||
xInSignal := NOT #fbPinControl1102_2.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Überwachung Encoder
|
||
#fbEncoderMonitor1102(sInConveyor := 'KR-M1102',
|
||
sInEncoder := 'GF2201',
|
||
nInEncoderValue := "GF2201_PosAct",
|
||
nInEncoderMax := "cEncoderGF2201",
|
||
nInEncMonVal := "cEncMonVal",
|
||
xInClock := "Clock_2Hz",
|
||
xInConveyorRun := #fbSortConv1102.xOutConveyorFullSpeed,
|
||
xInQuit := "SF0125" OR "SF0127" OR "SF0117" OR "IBN".xQuitGlob,
|
||
xInActivate := TRUE,
|
||
stInOutControlUnitCabinet:= #stInOutControlUnitCabinetOF2);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Conveyor 1201
|
||
#fbSortConv1201.Settings.tEnergySafeTime := T#120s; // Konstante TODO
|
||
#fbSortConv1201.Settings.tStartingTime := T#50ms;
|
||
#fbSortConv1201.Settings.xGridActive := FALSE;
|
||
#fbSortConv1201.Settings.sMotorProtectName := 'FC0062';
|
||
|
||
#fbSortConv1201(xInEnabled :=
|
||
"SF0050" AND "SF0052" AND
|
||
NOT #fbPinControl1201_1.xOutErrorRasterSensor AND
|
||
NOT #fbPinControl1201_2.xOutErrorRasterSensor AND
|
||
NOT #fbEncoderMonitor1201.xOutError AND
|
||
NOT #TRO228.xOutUnloadingError AND
|
||
NOT #TRO231.xOutUnloadingError,
|
||
xInFull := "cTodoFalse",
|
||
xInNextConveyorReady := "cTodoTRUE",
|
||
xInAutomaticMode := #t_Automatik_OF1,
|
||
xInEnergySafeRequest := NOT #stInOutControlUnitCabinetOF1.xRestart AND NOT #TRO228.xOutConvReqSort AND
|
||
NOT #TRO231.xOutConvReqSort AND NOT #TRO230.xOutCarouselReq AND
|
||
NOT #TRO233.xOutCarouselReq AND NOT #TRO222.xOutCarouselReq2,
|
||
xInChainBreakMonitoring := TRUE,
|
||
xInChainBreakMonitoringSmoothing := false,
|
||
xInMotorProtectionMonitoring := "FC0062",
|
||
xInSafetyEnable := "cTodoTRUE",
|
||
xOutPowerContactor => "MA0062",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stSort.stCS1201);
|
||
|
||
REGION Überwachung Pins 1
|
||
|
||
#fbPinControl1201_1.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1201_1.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1201_1.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1201_1.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1201_1(stInSenRaster := "DB_Inputs".Sensors["cInBG3481"],
|
||
xInErrorQuit := "SF0051",
|
||
xInMotorRun := #fbSortConv1201.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1201_1.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1201_1.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1201_1.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1201_1.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1201_1(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1201',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3481"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
xInQuitError := #stInOutControlUnitCabinetOF1.xQuitError,
|
||
xInSignal := NOT #fbPinControl1201_1.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Pins 2
|
||
|
||
#fbPinControl1201_2.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1201_2.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1201_2.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1201_2.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1201_2(stInSenRaster := "DB_Inputs".Sensors["cInBG3541"],
|
||
xInErrorQuit := "SF0053",
|
||
xInMotorRun := #fbSortConv1201.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1201_2.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1201_2.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1201_2.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1201_2.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1201_2(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1201',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3541"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
xInQuitError := #stInOutControlUnitCabinetOF1.xQuitError,
|
||
xInSignal := NOT #fbPinControl1201_2.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Encoder
|
||
#fbEncoderMonitor1201(sInConveyor := 'KR-M1201',
|
||
sInEncoder := 'GF2202',
|
||
nInEncoderValue := "GF2202_PosAct",
|
||
nInEncoderMax := "cEncoderGF2202",
|
||
nInEncMonVal := "cEncMonVal",
|
||
xInClock := "Clock_2Hz",
|
||
xInConveyorRun := #fbSortConv1201.xOutConveyorFullSpeed,
|
||
xInQuit := "SF0051" OR "SF0053" OR "IBN".xQuitGlob,
|
||
xInActivate := TRUE,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Conveyor 1202
|
||
#fbSortConv1202.Settings.tEnergySafeTime := T#120s; // Konstante TODO
|
||
#fbSortConv1202.Settings.tStartingTime := T#50ms;
|
||
#fbSortConv1202.Settings.xGridActive := FALSE;
|
||
#fbSortConv1202.Settings.sMotorProtectName := 'FC0063';
|
||
#fbSortConv1202(xInEnabled :=
|
||
"SF0054" AND "SF0056" AND
|
||
NOT #fbPinControl1202_1.xOutErrorRasterSensor AND
|
||
NOT #fbPinControl1202_2.xOutErrorRasterSensor AND
|
||
NOT #fbEncoderMonitor1202.xOutError AND
|
||
NOT #TRO234.xOutUnloadingError AND
|
||
NOT #TRO237.xOutUnloadingError,
|
||
xInFull := "cTodoFalse",
|
||
xInNextConveyorReady := "cTodoTRUE",
|
||
xInAutomaticMode := #t_Automatik_OF1,
|
||
xInEnergySafeRequest := NOT #stInOutControlUnitCabinetOF1.xRestart AND NOT #TRO234.xOutConvReqSort AND
|
||
NOT #TRO237.xOutConvReqSort AND NOT #TRO236.xOutCarouselReq AND NOT #TRO222.xOutCarouselReq1 AND
|
||
NOT #TRO239.xOutCarouselReq AND NOT #TRO221.xOutCarouselReq,
|
||
xInChainBreakMonitoring := TRUE,
|
||
xInChainBreakMonitoringSmoothing := false,
|
||
xInMotorProtectionMonitoring := "FC0063",
|
||
xInSafetyEnable := "cTodoTRUE",
|
||
xOutPowerContactor => "MA0063",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stSort.stCS1202);
|
||
|
||
REGION Überwachung Pins 1
|
||
|
||
#fbPinControl1202_1.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1202_1.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1202_1.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1202_1.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1202_1(stInSenRaster := "DB_Inputs".Sensors["cInBG3601"],
|
||
xInErrorQuit := "SF0055",
|
||
xInMotorRun := #fbSortConv1202.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1202_1.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1202_1.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1202_1.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1202_1.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1202_1(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1202',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3601"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
xInQuitError := #stInOutControlUnitCabinetOF1.xQuitError,
|
||
xInSignal := NOT #fbPinControl1202_1.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Pins 2
|
||
|
||
#fbPinControl1202_2.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1202_2.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1202_2.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1202_2.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1202_2(stInSenRaster := "DB_Inputs".Sensors["cInBG3661"],
|
||
xInErrorQuit := "SF0057",
|
||
xInMotorRun := #fbSortConv1202.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1202_2.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1202_2.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1202_2.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1202_2.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1202_2(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1202',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG3661"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
xInQuitError := #stInOutControlUnitCabinetOF1.xQuitError,
|
||
xInSignal := NOT #fbPinControl1202_2.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Encoder
|
||
#fbEncoderMonitor1202(sInConveyor := 'KR-M1202',
|
||
sInEncoder := 'GF2203',
|
||
nInEncoderValue := "GF2203_PosAct",
|
||
nInEncoderMax := "cEncoderGF2203",
|
||
nInEncMonVal := "cEncMonVal",
|
||
xInClock := "Clock_2Hz",
|
||
xInConveyorRun := #fbSortConv1202.xOutConveyorFullSpeed,
|
||
xInQuit := "SF0055" OR "SF0057" OR "IBN".xQuitGlob,
|
||
xInActivate := TRUE,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Conveyor 1303
|
||
#fbSortConv1303.Settings.tEnergySafeTime := T#120s; // Konstante TODO
|
||
#fbSortConv1303.Settings.tStartingTime := T#50ms;
|
||
#fbSortConv1303.Settings.xGridActive := FALSE;
|
||
#fbSortConv1303.Settings.sMotorProtectName := 'FC0260';
|
||
#fbSortConv1303(xInEnabled :=
|
||
"SF0240" AND "SF0242" AND
|
||
NOT #fbPinControl1303_1.xOutErrorRasterSensor AND
|
||
NOT #fbPinControl1303_2.xOutErrorRasterSensor AND
|
||
NOT #fbEncoderMonitor1303.xOutError AND
|
||
NOT #TRO248.xOutUnloadingError AND
|
||
NOT #TRO251.xOutUnloadingError,
|
||
xInFull := "cTodoFalse",
|
||
xInNextConveyorReady := "cTodoTRUE",
|
||
xInAutomaticMode := #t_Automatik_OF4,
|
||
xInEnergySafeRequest := NOT #stInOutControlUnitCabinetOF4.xRestart AND NOT #TRO248.xOutConvReqSort AND
|
||
NOT #TRO251.xOutConvReqSort AND NOT #TRO250.xOutCarouselReq AND
|
||
NOT #TRO253.xOutCarouselReq AND NOT #TRO242.xOutCarouselReq1,
|
||
xInChainBreakMonitoring := TRUE,
|
||
xInChainBreakMonitoringSmoothing := false,
|
||
xInMotorProtectionMonitoring := "FC0260",
|
||
xInSafetyEnable := "cTodoTRUE",
|
||
xOutPowerContactor => "MA0260",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stSort.stCS1303);
|
||
|
||
REGION Überwachung Pins 1
|
||
|
||
#fbPinControl1303_1.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1303_1.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1303_1.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1303_1.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1303_1(stInSenRaster := "DB_Inputs".Sensors["cInBG4261"],
|
||
xInErrorQuit := "SF0243",
|
||
xInMotorRun := #fbSortConv1303.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1303_1.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1303_1.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1303_1.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1303_1.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1303_1(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1303',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG4261"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
xInQuitError := #stInOutControlUnitCabinetOF4.xQuitError,
|
||
xInSignal := NOT #fbPinControl1303_1.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Pins 2
|
||
|
||
#fbPinControl1303_2.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1303_2.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1303_2.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1303_2.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1303_2(stInSenRaster := "DB_Inputs".Sensors["cInBG4201"],
|
||
xInErrorQuit := "SF0241",
|
||
xInMotorRun := #fbSortConv1303.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1303_2.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1303_2.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1303_2.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1303_2.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1303_2(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1303',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG4201"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
xInQuitError := #stInOutControlUnitCabinetOF4.xQuitError,
|
||
xInSignal := NOT #fbPinControl1303_2.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Encoder
|
||
#fbEncoderMonitor1303(sInConveyor := 'KR-M1303',
|
||
sInEncoder := 'GF2204',
|
||
nInEncoderValue := "GF2204_PosAct",
|
||
nInEncoderMax := "cEncoderGF2204",
|
||
nInEncMonVal := "cEncMonVal",
|
||
xInClock := "Clock_2Hz",
|
||
xInConveyorRun := #fbSortConv1303.xOutConveyorFullSpeed,
|
||
xInQuit := "SF0241" OR "SF0243" OR "IBN".xQuitGlob,
|
||
xInActivate := TRUE,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION Conveyor 1304
|
||
#fbSortConv1304.Settings.tEnergySafeTime := T#120s; // Konstante TODO
|
||
#fbSortConv1304.Settings.tStartingTime := T#50ms;
|
||
#fbSortConv1304.Settings.xGridActive := FALSE;
|
||
#fbSortConv1304.Settings.sMotorProtectName := 'FC0261';
|
||
#fbSortConv1304(xInEnabled :=
|
||
"SF0244" AND "SF0246" AND
|
||
NOT #fbPinControl1304_1.xOutErrorRasterSensor AND
|
||
NOT #fbPinControl1304_2.xOutErrorRasterSensor AND
|
||
NOT #fbEncoderMonitor1304.xOutError AND
|
||
NOT #TRO254.xOutUnloadingError AND
|
||
NOT #TRO257.xOutUnloadingError,
|
||
xInFull := "cTodoFalse",
|
||
xInNextConveyorReady := "cTodoTRUE",
|
||
xInAutomaticMode := #t_Automatik_OF4,
|
||
xInEnergySafeRequest := NOT #stInOutControlUnitCabinetOF4.xRestart AND NOT #TRO254.xOutConvReqSort AND
|
||
NOT #TRO257.xOutConvReqSort AND NOT #TRO256.xOutCarouselReq AND
|
||
NOT #TRO259.xOutCarouselReq AND NOT #TRO241.xOutCarouselReq AND NOT #TRO242.xOutCarouselReq2,
|
||
xInChainBreakMonitoring := TRUE,
|
||
xInChainBreakMonitoringSmoothing := false,
|
||
xInMotorProtectionMonitoring := "FC0261",
|
||
xInSafetyEnable := "cTodoTRUE",
|
||
xOutPowerContactor => "MA0261",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stSort.stCS1304);
|
||
|
||
REGION Überwachung Pins 1
|
||
|
||
#fbPinControl1304_1.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1304_1.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1304_1.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1304_1.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1304_1(stInSenRaster := "DB_Inputs".Sensors["cInBG4321"],
|
||
xInErrorQuit := "SF0245",
|
||
xInMotorRun := #fbSortConv1304.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1304_1.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1304_1.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1304_1.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1304_1.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1304_1(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1304',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG4321"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
xInQuitError := #stInOutControlUnitCabinetOF4.xQuitError,
|
||
xInSignal := NOT #fbPinControl1304_1.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Pins 2
|
||
|
||
#fbPinControl1304_2.stInSettings.xInEnableSupervision := TRUE;
|
||
#fbPinControl1304_2.stInSettings.tInDelayMotorRun := T#1000ms;
|
||
#fbPinControl1304_2.stInSettings.tInRasterHigh := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1304_2.stInSettings.tInRasterLow := T#1800ms;//T#1300ms;//T#600ms;
|
||
#fbPinControl1304_2(stInSenRaster := "DB_Inputs".Sensors["cInBG4381"],
|
||
xInErrorQuit := "SF0247",
|
||
xInMotorRun := #fbSortConv1304.xOutConveyorFullSpeed);
|
||
|
||
REGION Monitoring
|
||
#fbMonPinControl1304_2.stSettings.nErrorType := 1;
|
||
#fbMonPinControl1304_2.stSettings.xErrLedIfMachineIsOff := TRUE;
|
||
#fbMonPinControl1304_2.stSettings.xSelfQuit := TRUE;
|
||
#fbMonPinControl1304_2.stSettings.tDelay := T#1s;
|
||
#fbMonPinControl1304_2(sInFctnName := 'Rastersensorueberwachung',
|
||
sInPrefix := 'KR-M1304',
|
||
wInTextListId_Function := 3000,
|
||
wInTextListId_Message := 3000,
|
||
sInSuffix := "DB_Inputs".Sensors["cInBG4381"].sName,
|
||
InOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
xInQuitError := #stInOutControlUnitCabinetOF4.xQuitError,
|
||
xInSignal := NOT #fbPinControl1304_2.xOutErrorRasterSensor,
|
||
sInAlarmMessage := 'Rastersensorueberwachung ausgeloest');
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Überwachung Encoder
|
||
#fbEncoderMonitor1304(sInConveyor := 'KR-M1304',
|
||
sInEncoder := 'GF2205',
|
||
nInEncoderValue := "GF2205_PosAct",
|
||
nInEncoderMax := "cEncoderGF2205",
|
||
nInEncMonVal := "cEncMonVal",
|
||
xInClock := "Clock_2Hz",
|
||
xInConveyorRun := #fbSortConv1304.xOutConveyorFullSpeed,
|
||
xInQuit := "SF0245" OR "SF0247" OR "IBN".xQuitGlob,
|
||
xInActivate := TRUE,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Kreisel
|
||
|
||
REGION Conveyor 1110
|
||
#fbCarousel1110.Settings.tEnergySafeTime := T#90s;
|
||
#fbCarousel1110.Settings.tStartingTime := T#50ms;
|
||
#fbCarousel1110.Settings.xGridActive := TRUE;
|
||
#fbCarousel1110.Settings.sMotorProtectName := 'FC0075';
|
||
#fbCarousel1110.Settings.sGridSenName := 'BG4510';
|
||
#fbCarousel1110(xInRequestRun := (* "fbPreMain_DB".fbStateMain.nConveyorStartUpCounter = 100 OR *)#stInOutControlUnitCabinetOF1.xRestart OR
|
||
#TRO261.xOutCarouselReq OR
|
||
#TRO263.xOutCarouselReq OR
|
||
#TRO265.xOutCarouselReq OR
|
||
#TRO266.xOutCarouselReq OR
|
||
#TRO267.xOutCarouselReq1 OR #TRO267.xOutCarouselReq2 OR
|
||
#TRO268.xOutCarouselReq1 OR #TRO268.xOutCarouselReq2 OR
|
||
#TRO269.xOutCarouselReq OR
|
||
#TRO274.xOutCarouselReq OR
|
||
#TRO275.xOutCarouselReq,
|
||
xInEnabled := "SF0080" AND "SF0082",
|
||
xInGridSen := "DB_Inputs".Sensors["cInBG4510"].xDirectSensor,
|
||
xInGridQuit := "SF0083",
|
||
xInAutomaticMode := #t_Automatik_OF1,
|
||
xInMotorProtectionMonitoring := "FC0075",
|
||
xOutPowerContactor => "MA0075",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stCarousel.stCarEntr1);
|
||
END_REGION
|
||
|
||
|
||
|
||
REGION "Exit" Conv 1103
|
||
#fbExitConv1103.Settings.tEnergySafeTime := T#90s;
|
||
#fbExitConv1103.Settings.tStartingTime := T#50ms;
|
||
#fbExitConv1103.Settings.xGridActive := TRUE;
|
||
#fbExitConv1103.Settings.sMotorProtectName := 'FC0060';
|
||
#fbExitConv1103.Settings.sGridSenName := 'BG3306';
|
||
#fbExitConv1103(xInRequestRun := (* "fbPreMain_DB".fbStateMain.nConveyorStartUpCounter = 100 OR *)#stInOutControlUnitCabinetOF1.xRestart OR
|
||
#TRO208.xOutConvReqExit OR #TRO211.xOutConvReqExit OR
|
||
#TRO203.xOutCarouselReq1 OR #TRO203.xOutCarouselReq2 OR
|
||
#TRO204.xOutCarouselReq1 OR #TRO204.xOutCarouselReq2 OR
|
||
#TRO206.xOutCarouselReq1,
|
||
xInEnabled := "SF0040" AND "SF0042",
|
||
xInGridSen := "DB_Inputs".Sensors["cInBG3306"].xDirectSensor,
|
||
xInGridQuit := "SF0041" OR "SF0043",
|
||
xInAutomaticMode := #t_Automatik_OF1,
|
||
xInMotorProtectionMonitoring := "FC0060",
|
||
xOutPowerContactor => "MA0060",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stCarousel.stCar1103Exit);
|
||
END_REGION
|
||
|
||
REGION "Exit" Conv 1104
|
||
#fbExitConv1104.Settings.tEnergySafeTime := T#90s;
|
||
#fbExitConv1104.Settings.tStartingTime := T#50ms;
|
||
#fbExitConv1104.Settings.xGridActive := TRUE;
|
||
#fbExitConv1104.Settings.sMotorProtectName := 'FC0061';
|
||
#fbExitConv1104.Settings.sGridSenName := 'BG3433';
|
||
#fbExitConv1104(xInRequestRun := (* "fbPreMain_DB".fbStateMain.nConveyorStartUpCounter = 100 OR *)#stInOutControlUnitCabinetOF1.xRestart OR
|
||
#TRO214.xOutConvReqExit OR #TRO217.xOutConvReqExit OR
|
||
#TRO205.xOutCarouselReq1 OR #TRO205.xOutCarouselReq2 OR
|
||
#TRO206.xOutCarouselReq1 OR #TRO206.xOutCarouselReq2 OR
|
||
#TRO204.xOutCarouselReq2 OR #TRO207.xOutCarouselReq,
|
||
xInEnabled := "SF0044" AND "SF0046",
|
||
xInGridSen := "DB_Inputs".Sensors["cInBG3433"].xDirectSensor,
|
||
xInGridQuit := "SF0055" OR "SF0057",
|
||
xInAutomaticMode := #t_Automatik_OF1,
|
||
xInMotorProtectionMonitoring := "FC0061",
|
||
xOutPowerContactor => "MA0061",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stCarousel.stCar1104Exit);
|
||
END_REGION
|
||
|
||
REGION "Exit" Conv 1203
|
||
#fbExitConv1203.Settings.tEnergySafeTime := T#90s;
|
||
#fbExitConv1203.Settings.tStartingTime := T#50ms;
|
||
#fbExitConv1203.Settings.xGridActive := TRUE;
|
||
#fbExitConv1203.Settings.sMotorProtectName := 'FC0200';
|
||
#fbExitConv1203.Settings.sGridSenName := 'BG3786';
|
||
#fbExitConv1203(xInRequestRun := (* "fbPreMain_DB".fbStateMain.nConveyorStartUpCounter = 100 OR *)#stInOutControlUnitCabinetOF3.xRestart OR
|
||
#TRO228.xOutConvReqExit OR #TRO231.xOutConvReqExit OR
|
||
#TRO223.xOutCarouselReq1 OR #TRO223.xOutCarouselReq2 OR
|
||
#TRO224.xOutCarouselReq1 OR #TRO224.xOutCarouselReq2 OR
|
||
#TRO226.xOutCarouselReq1,
|
||
xInEnabled := "SF0180" AND "SF0182",
|
||
xInGridSen := "DB_Inputs".Sensors["cInBG3786"].xDirectSensor,
|
||
xInGridQuit := "SF0181" OR "SF0183",
|
||
xInAutomaticMode := #t_Automatik_OF3,
|
||
xInMotorProtectionMonitoring := "FC0200",
|
||
xOutPowerContactor => "MA0200",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF3,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stCarousel.stCar1203Exit);
|
||
END_REGION
|
||
|
||
REGION "Exit" Conv 1204
|
||
#fbExitConv1204.Settings.tEnergySafeTime := T#90s;
|
||
#fbExitConv1204.Settings.tStartingTime := T#50ms;
|
||
#fbExitConv1204.Settings.xGridActive := TRUE;
|
||
#fbExitConv1204.Settings.sMotorProtectName := 'FC0201';
|
||
#fbExitConv1204.Settings.sGridSenName := 'BG3911';
|
||
#fbExitConv1204(xInRequestRun := (* "fbPreMain_DB".fbStateMain.nConveyorStartUpCounter = 100 OR *)#stInOutControlUnitCabinetOF3.xRestart OR
|
||
#TRO234.xOutConvReqExit OR #TRO237.xOutConvReqExit OR
|
||
#TRO225.xOutCarouselReq1 OR #TRO225.xOutCarouselReq2 OR
|
||
#TRO226.xOutCarouselReq1 OR #TRO226.xOutCarouselReq2 OR
|
||
#TRO224.xOutCarouselReq2 OR
|
||
#TRO227.xOutCarouselReq,
|
||
xInEnabled := "SF0184" AND "SF0186",
|
||
xInGridSen := "DB_Inputs".Sensors["cInBG3911"].xDirectSensor,
|
||
xInGridQuit := "SF0185" OR "SF0187",
|
||
xInAutomaticMode := #t_Automatik_OF3,
|
||
xInMotorProtectionMonitoring := "FC0201",
|
||
xOutPowerContactor => "MA0201",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF3,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stCarousel.stCar1204Exit);
|
||
END_REGION
|
||
|
||
REGION "Exit" Conv 1301
|
||
#fbExitConv1301.Settings.tEnergySafeTime := T#90s;
|
||
#fbExitConv1301.Settings.tStartingTime := T#50ms;
|
||
#fbExitConv1301.Settings.xGridActive := TRUE;
|
||
#fbExitConv1301.Settings.sMotorProtectName := 'FC0202';
|
||
#fbExitConv1301.Settings.sGridSenName := 'BG4026';
|
||
#fbExitConv1301(xInRequestRun := (* "fbPreMain_DB".fbStateMain.nConveyorStartUpCounter = 100 OR *)#stInOutControlUnitCabinetOF3.xRestart OR
|
||
#TRO248.xOutConvReqExit OR #TRO251.xOutConvReqExit OR
|
||
#TRO243.xOutCarouselReq1 OR #TRO243.xOutCarouselReq2 OR
|
||
#TRO244.xOutCarouselReq1 OR #TRO244.xOutCarouselReq2 OR
|
||
#TRO246.xOutCarouselReq2,
|
||
xInEnabled := "SF0190" AND "SF0192",
|
||
xInGridSen := "DB_Inputs".Sensors["cInBG4026"].xDirectSensor,
|
||
xInGridQuit := "SF0191" OR "SF0193",
|
||
xInAutomaticMode := #t_Automatik_OF3,
|
||
xInMotorProtectionMonitoring := "FC0202",
|
||
xOutPowerContactor => "MA0202",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF3,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stCarousel.stCar1301Exit);
|
||
END_REGION
|
||
|
||
REGION "Exit" Conv 1302
|
||
#fbExitConv1302.Settings.tEnergySafeTime := T#90s;
|
||
#fbExitConv1302.Settings.tStartingTime := T#50ms;
|
||
#fbExitConv1302.Settings.xGridActive := TRUE;
|
||
#fbExitConv1302.Settings.sMotorProtectName := 'FC0203';
|
||
#fbExitConv1302.Settings.sGridSenName := 'BG4150';
|
||
#fbExitConv1302(xInRequestRun := (* "fbPreMain_DB".fbStateMain.nConveyorStartUpCounter = 100 OR *)#stInOutControlUnitCabinetOF3.xRestart OR
|
||
#TRO254.xOutConvReqExit OR #TRO257.xOutConvReqExit OR
|
||
#TRO245.xOutCarouselReq1 OR #TRO245.xOutCarouselReq2 OR
|
||
#TRO246.xOutCarouselReq1 OR #TRO246.xOutCarouselReq2 OR
|
||
#TRO244.xOutCarouselReq1 OR #TRO247.xOutCarouselReq,
|
||
xInEnabled := "SF0194" AND "SF0196",
|
||
xInGridSen := "DB_Inputs".Sensors["cInBG4150"].xDirectSensor,
|
||
xInGridQuit := "SF0195" OR "SF0197",
|
||
xInAutomaticMode := #t_Automatik_OF3,
|
||
xInMotorProtectionMonitoring := "FC0203",
|
||
xOutPowerContactor => "MA0203",
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF3,
|
||
stInOutInterfaceHMI := "DB_Interface_HMI".stConveyors.stCarousel.stCar1302Exit);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
END_REGION ;
|
||
|
||
REGION Encoder
|
||
REGION GF2200
|
||
#fbEncoderGF2200(nInPosAct := "GF2200_PosAct",
|
||
xInPresetAdjQuit := "GF2200_PresetAdjQuit",
|
||
nInEncoderMax := "cEncoderGF2200",
|
||
nInHooksSorterMax := "cHooksSorterMaxPin",
|
||
stInSensorReference := "DB_Inputs".Sensors["cInBG3061"],
|
||
nInPitch := 250); //Konstante
|
||
|
||
"GF2200_PresetAdjSet" := #fbEncoderGF2200.xOutPresetAdjSet;
|
||
"GF2200_PresetAdjValue" := #fbEncoderGF2200.nOutPresetAdjSetValue;
|
||
END_REGION
|
||
|
||
REGION GF2201
|
||
#fbEncoderGF2201(nInPosAct := "GF2201_PosAct",
|
||
xInPresetAdjQuit := "GF2201_PresetAdjQuit",
|
||
nInEncoderMax := "cEncoderGF2201",
|
||
nInHooksSorterMax := "cHooksSorterMaxPin",
|
||
stInSensorReference := "DB_Inputs".Sensors["cInBG3121"],
|
||
nInPitch := 250); //Konstante
|
||
|
||
"GF2201_PresetAdjSet" := #fbEncoderGF2201.xOutPresetAdjSet;
|
||
"GF2201_PresetAdjValue" := #fbEncoderGF2201.nOutPresetAdjSetValue;
|
||
END_REGION
|
||
|
||
REGION GF2202
|
||
#fbEncoderGF2202(nInPosAct := "GF2202_PosAct",
|
||
xInPresetAdjQuit := "GF2202_PresetAdjQuit",
|
||
nInEncoderMax := "cEncoderGF2202",
|
||
nInHooksSorterMax := "cHooksSorterMaxPin",
|
||
stInSensorReference := "DB_Inputs".Sensors["cInBG3541"],
|
||
nInPitch := 250); //Konstante
|
||
|
||
"GF2202_PresetAdjSet" := #fbEncoderGF2202.xOutPresetAdjSet;
|
||
"GF2202_PresetAdjValue" := #fbEncoderGF2202.nOutPresetAdjSetValue;
|
||
END_REGION
|
||
|
||
REGION GF2203
|
||
#fbEncoderGF2203(nInPosAct := "GF2203_PosAct",
|
||
xInPresetAdjQuit := "GF2203_PresetAdjQuit",
|
||
nInEncoderMax := "cEncoderGF2203",
|
||
nInHooksSorterMax := "cHooksSorterMaxPin",
|
||
stInSensorReference := "DB_Inputs".Sensors["cInBG3601"],
|
||
nInPitch := 250); //Konstante
|
||
|
||
"GF2203_PresetAdjSet" := #fbEncoderGF2203.xOutPresetAdjSet;
|
||
"GF2203_PresetAdjValue" := #fbEncoderGF2203.nOutPresetAdjSetValue;
|
||
END_REGION
|
||
|
||
REGION GF2204
|
||
#fbEncoderGF2204(nInPosAct := "GF2204_PosAct",
|
||
xInPresetAdjQuit := "GF2204_PresetAdjQuit",
|
||
nInEncoderMax := "cEncoderGF2204",
|
||
nInHooksSorterMax := "cHooksSorterMaxPin",
|
||
stInSensorReference := "DB_Inputs".Sensors["cInBG4261"],
|
||
nInPitch := 250); //Konstante
|
||
|
||
"GF2204_PresetAdjSet" := #fbEncoderGF2204.xOutPresetAdjSet;
|
||
"GF2204_PresetAdjValue" := #fbEncoderGF2204.nOutPresetAdjSetValue;
|
||
END_REGION
|
||
|
||
REGION GF2205
|
||
#fbEncoderGF2205(nInPosAct := "GF2205_PosAct",
|
||
xInPresetAdjQuit := "GF2205_PresetAdjQuit",
|
||
nInEncoderMax := "cEncoderGF2205",
|
||
nInHooksSorterMax := "cHooksSorterMaxPin",
|
||
stInSensorReference := "DB_Inputs".Sensors["cInBG4321"],
|
||
nInPitch := 250); //Konstante
|
||
|
||
"GF2205_PresetAdjSet" := #fbEncoderGF2205.xOutPresetAdjSet;
|
||
"GF2205_PresetAdjValue" := #fbEncoderGF2205.nOutPresetAdjSetValue;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION SECTION 1.1
|
||
REGION BLOCK 1.1.1 (TRO 208)
|
||
REGION Encoder Settings
|
||
#TRO208.stInEncoderParameter.nPosActDif := #fbEncoderGF2200.nOutPosActDif;
|
||
#TRO208.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2200.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO208.stInSettings.nDestGeneral := "cDest11100";
|
||
#TRO208.stInSettings.nConvStations := "cHooksSorterMaxPin111"; //Konstante todo
|
||
#TRO208.stInSettings.nStationsMax := "cStationsMax111"; // Konstante todo
|
||
#TRO208.stInSettings.nStorageThreshold := "cNoPositionsBlock1"; //Konstante todo
|
||
#TRO208.stInSettings.nNoOfLines := 19;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO208.stInSensorReference := "DB_Inputs".Sensors["cInBG3001"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader In (BX2104)
|
||
#TRO208.stInBarcodeReader.Settings.nStation := 111; // todo Konstante
|
||
#TRO208.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO208.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO208.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2104"].xInCamTriggerReady := "bx2104-TriggerReady";
|
||
#arCognexInterface["cScannerBX2104"].xInCamTriggerAck := "bx2104-TriggerAck";
|
||
#arCognexInterface["cScannerBX2104"].xInCamResultsAvailable := "bx2104-Results Available";
|
||
#arCognexInterface["cScannerBX2104"].xInCamGeneralFault := "bx2104-General Fault";
|
||
#arCognexInterface["cScannerBX2104"].hwInCamInspectionResults := "=A01+UH02-BX2104~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
REGION Sep Pin
|
||
#TRO208.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3000"];
|
||
#TRO208.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO208.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO208.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := 4;//"cStorage111ExitJam1";
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3270"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam2";
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3271"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam3";
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3272"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam4";
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3273"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam5";
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3274"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam6";
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3275"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam7";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3276"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam8";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3277"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam9";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3280"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam10";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3281"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam11";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3282"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam12";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3283"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam13";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3284"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam14";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3285"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam15";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3286"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam16";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3287"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam17";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3290"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 18
|
||
#nActNo := 18;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam18";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3291"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 19
|
||
#nActNo := 19;
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO208.arInSep[#nActNo].stSettings.nJamLength := "cStorage111ExitJam19";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO208.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO208.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3292"];
|
||
#TRO208.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO208.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO208.xInQuitLocal := "SF0121" OR "SF0117";
|
||
|
||
#TRO208.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3030"];
|
||
|
||
#TRO208.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3031"];
|
||
|
||
#TRO208.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3032"];
|
||
|
||
#TRO208.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3033"];
|
||
|
||
#TRO208.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3034"];
|
||
|
||
#TRO208.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3035"];
|
||
|
||
#TRO208.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3036"];
|
||
|
||
#TRO208.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3037"];
|
||
|
||
#TRO208.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3040"];
|
||
|
||
#TRO208.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3041"];
|
||
|
||
#TRO208.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3042"];
|
||
|
||
#TRO208.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3043"];
|
||
|
||
#TRO208.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3044"];
|
||
|
||
#TRO208.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG3045"];
|
||
|
||
#TRO208.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG3046"];
|
||
|
||
#TRO208.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG3047"];
|
||
|
||
#TRO208.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG3050"];
|
||
|
||
#TRO208.arInJamSensor[18] := "DB_Inputs".Sensors["cInBG3051"];
|
||
|
||
#TRO208.arInJamSensor[19] := "DB_Inputs".Sensors["cInBG3052"];
|
||
|
||
END_REGION
|
||
|
||
REGION Aufruf: TRO208
|
||
|
||
#TRO208.stInPriorityManager.xReleaseOk := TRUE;
|
||
|
||
#TRO208(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
nInTestTarget := "IBN".nTestTarget111,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO208,
|
||
xInConveyorRunIn := #fbSortConv1101.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1103.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF2,
|
||
arInOutStorageLines := "DB_Storage1.1.1".arLine,
|
||
arInOutJamEntr := "DB_JamArea1101".stJam1101_2.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1101".stJam1101_2.stData,
|
||
arInOutJamExit := "DB_JamArea1103".stJam1103_1.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1103".stJam1103_1.stData,
|
||
arInOutJamBypass := #arCarrierPlaceHolder,
|
||
stInOutJamBypass := #stJamDataPlaceHolder,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO208,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[1],
|
||
xOutSeparatorPin => "MB3000",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTRO208"],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2104"],
|
||
stConveyorStations:= "DB_ConveyorStations".stConveyorStations111);
|
||
END_REGION ;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO208.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO208.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1101".stJam1101_2.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Barcode Reader Out (BX2104)
|
||
"bx2104-TriggerEnable" := #arCognexInterface["cScannerBX2104"].xOutCamTriggerEnable;
|
||
"bx2104-Trigger" := #arCognexInterface["cScannerBX2104"].xOutCamTrigger;
|
||
"bx2104-ResultsAck" := #arCognexInterface["cScannerBX2104"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
|
||
|
||
REGION Separator Store Out
|
||
"MB3270" := #TRO208.arOutSeparatorStore[1];
|
||
"MB3271" := #TRO208.arOutSeparatorStore[2];
|
||
"MB3272" := #TRO208.arOutSeparatorStore[3];
|
||
"MB3273" := #TRO208.arOutSeparatorStore[4];
|
||
"MB3274" := #TRO208.arOutSeparatorStore[5];
|
||
"MB3275" := #TRO208.arOutSeparatorStore[6];
|
||
"MB3276" := #TRO208.arOutSeparatorStore[7];
|
||
"MB3277" := #TRO208.arOutSeparatorStore[8];
|
||
"MB3280" := #TRO208.arOutSeparatorStore[9];
|
||
"MB3281" := #TRO208.arOutSeparatorStore[10];
|
||
"MB3282" := #TRO208.arOutSeparatorStore[11];
|
||
"MB3283" := #TRO208.arOutSeparatorStore[12];
|
||
"MB3284" := #TRO208.arOutSeparatorStore[13];
|
||
"MB3285" := #TRO208.arOutSeparatorStore[14];
|
||
"MB3286" := #TRO208.arOutSeparatorStore[15];
|
||
"MB3287" := #TRO208.arOutSeparatorStore[16];
|
||
"MB3290" := #TRO208.arOutSeparatorStore[17];
|
||
"MB3291" := #TRO208.arOutSeparatorStore[18];
|
||
"MB3292" := #TRO208.arOutSeparatorStore[19];
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB3030" := #TRO208.arOutSwitch[1];
|
||
"MB3031" := #TRO208.arOutSwitch[2];
|
||
"MB3032" := #TRO208.arOutSwitch[3];
|
||
"MB3033" := #TRO208.arOutSwitch[4];
|
||
"MB3034" := #TRO208.arOutSwitch[5];
|
||
"MB3035" := #TRO208.arOutSwitch[6];
|
||
"MB3036" := #TRO208.arOutSwitch[7];
|
||
"MB3037" := #TRO208.arOutSwitch[8];
|
||
"MB3040" := #TRO208.arOutSwitch[9];
|
||
"MB3041" := #TRO208.arOutSwitch[10];
|
||
"MB3042" := #TRO208.arOutSwitch[11];
|
||
"MB3043" := #TRO208.arOutSwitch[12];
|
||
"MB3044" := #TRO208.arOutSwitch[13];
|
||
"MB3045" := #TRO208.arOutSwitch[14];
|
||
"MB3046" := #TRO208.arOutSwitch[15];
|
||
"MB3047" := #TRO208.arOutSwitch[16];
|
||
"MB3050" := #TRO208.arOutSwitch[17];
|
||
"MB3051" := #TRO208.arOutSwitch[18];
|
||
"MB3052" := #TRO208.arOutSwitch[19];
|
||
END_REGION
|
||
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 19 DO
|
||
IF #TRO208.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO208.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest11100" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.1.2 (TRO 211)
|
||
REGION Encoder Settings
|
||
#TRO211.stInEncoderParameter.nPosActDif := #fbEncoderGF2200.nOutPosActDif;
|
||
#TRO211.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2200.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO211.stInSettings.nDestGeneral := "cDest11200";
|
||
#TRO211.stInSettings.nConvStations := "cHooksSorterMaxPin112"; //Konstante todo
|
||
#TRO211.stInSettings.nStationsMax := "cStationsMax112"; // Konstante todo
|
||
#TRO211.stInSettings.nStorageThreshold := "cNoPositionsBlock1"; //Konstante todo
|
||
#TRO211.stInSettings.nNoOfLines := 17;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO211.stInSensorReference := "DB_Inputs".Sensors["cInBG3061"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader IN (BX2105)
|
||
#TRO211.stInBarcodeReader.Settings.nStation := 212; // todo Konstante
|
||
#TRO211.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO211.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO211.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2105"].xInCamTriggerReady := "bx2105-TriggerReady";
|
||
#arCognexInterface["cScannerBX2105"].xInCamTriggerAck := "bx2105-TriggerAck";
|
||
#arCognexInterface["cScannerBX2105"].xInCamResultsAvailable := "bx2105-Results Available";
|
||
#arCognexInterface["cScannerBX2105"].xInCamGeneralFault := "bx2105-General Fault";
|
||
#arCognexInterface["cScannerBX2105"].hwInCamInspectionResults := "=A01+UH02-BX2105~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
|
||
REGION Pin
|
||
#TRO211.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3060"];
|
||
#TRO211.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO211.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO211.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam1";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3330"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam2";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3331"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam3";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3332"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam4";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3333"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam5";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3334"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam6";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3335"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam7";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3336"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam8";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3337"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam9";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3340"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam10";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3341"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam11";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3342"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam12";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3343"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam13";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3344"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam14";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3345"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam15";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3346"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam16";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3347"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO211.arInSep[#nActNo].stSettings.nJamLength := "cStorage112ExitJam17";
|
||
#TRO211.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3350"];
|
||
#TRO211.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO211.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO211.xInQuitLocal := "SF0123" OR "SF0117";
|
||
|
||
#TRO211.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3090"];
|
||
|
||
#TRO211.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3091"];
|
||
|
||
#TRO211.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3092"];
|
||
|
||
#TRO211.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3093"];
|
||
|
||
#TRO211.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3094"];
|
||
|
||
#TRO211.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3095"];
|
||
|
||
#TRO211.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3096"];
|
||
|
||
#TRO211.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3097"];
|
||
|
||
#TRO211.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3100"];
|
||
|
||
#TRO211.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3101"];
|
||
|
||
#TRO211.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3102"];
|
||
|
||
#TRO211.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3103"];
|
||
|
||
#TRO211.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3104"];
|
||
|
||
#TRO211.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG3105"];
|
||
|
||
#TRO211.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG3106"];
|
||
|
||
#TRO211.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG3107"];
|
||
|
||
#TRO211.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG3110"];
|
||
END_REGION ;
|
||
|
||
REGION Aufruf: TRO211
|
||
|
||
#TRO211.stInPriorityManager.xReleaseOk := True;
|
||
|
||
#TRO211(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
nInTestTarget := "IBN".nTestTarget112,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO211,
|
||
xInConveyorRunIn := #fbSortConv1101.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1103.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF2,
|
||
arInOutStorageLines := "DB_Storage1.1.2".arLine,
|
||
arInOutJamEntr := "DB_JamArea1101".stJam1101_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1101".stJam1101_1.stData,
|
||
arInOutJamExit := "DB_JamArea1103".stJam1103_2.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1103".stJam1103_2.stData,
|
||
arInOutJamBypass := "DB_JamArea1101".stJam1101_2.arCarrier,
|
||
stInOutJamBypass := "DB_JamArea1101".stJam1101_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO211,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[2],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2105"],
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainT
|
||
xOutSeparatorPin => "MB3060",
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations112);
|
||
END_REGION ;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO211.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO211.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1101".stJam1101_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Barcode Reader Out (BX2105)
|
||
"bx2105-TriggerEnable" := #arCognexInterface["cScannerBX2105"].xOutCamTriggerEnable;
|
||
"bx2105-Trigger" := #arCognexInterface["cScannerBX2105"].xOutCamTrigger;
|
||
"bx2105-ResultsAck" := #arCognexInterface["cScannerBX2105"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB3330" := #TRO211.arOutSeparatorStore[1];
|
||
"MB3331" := #TRO211.arOutSeparatorStore[2];
|
||
"MB3332" := #TRO211.arOutSeparatorStore[3];
|
||
"MB3333" := #TRO211.arOutSeparatorStore[4];
|
||
"MB3334" := #TRO211.arOutSeparatorStore[5];
|
||
"MB3335" := #TRO211.arOutSeparatorStore[6];
|
||
"MB3336" := #TRO211.arOutSeparatorStore[7];
|
||
"MB3337" := #TRO211.arOutSeparatorStore[8];
|
||
"MB3340" := #TRO211.arOutSeparatorStore[9];
|
||
"MB3341" := #TRO211.arOutSeparatorStore[10];
|
||
"MB3342" := #TRO211.arOutSeparatorStore[11];
|
||
"MB3343" := #TRO211.arOutSeparatorStore[12];
|
||
"MB3344" := #TRO211.arOutSeparatorStore[13];
|
||
"MB3345" := #TRO211.arOutSeparatorStore[14];
|
||
"MB3346" := #TRO211.arOutSeparatorStore[15];
|
||
"MB3347" := #TRO211.arOutSeparatorStore[16];
|
||
"MB3350" := #TRO211.arOutSeparatorStore[17];
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB3090" := #TRO211.arOutSwitch[1];
|
||
"MB3091" := #TRO211.arOutSwitch[2];
|
||
"MB3092" := #TRO211.arOutSwitch[3];
|
||
"MB3093" := #TRO211.arOutSwitch[4];
|
||
"MB3094" := #TRO211.arOutSwitch[5];
|
||
"MB3095" := #TRO211.arOutSwitch[6];
|
||
"MB3096" := #TRO211.arOutSwitch[7];
|
||
"MB3097" := #TRO211.arOutSwitch[8];
|
||
"MB3100" := #TRO211.arOutSwitch[9];
|
||
"MB3101" := #TRO211.arOutSwitch[10];
|
||
"MB3102" := #TRO211.arOutSwitch[11];
|
||
"MB3103" := #TRO211.arOutSwitch[12];
|
||
"MB3104" := #TRO211.arOutSwitch[13];
|
||
"MB3105" := #TRO211.arOutSwitch[14];
|
||
"MB3106" := #TRO211.arOutSwitch[15];
|
||
"MB3107" := #TRO211.arOutSwitch[16];
|
||
"MB3110" := #TRO211.arOutSwitch[17];
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 17 DO
|
||
IF #TRO211.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO211.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest11200" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.1.3 (TRO 214)
|
||
|
||
REGION Encoder Settings
|
||
#TRO214.stInEncoderParameter.nPosActDif := #fbEncoderGF2201.nOutPosActDif;
|
||
#TRO214.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2201.nPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO214.stInSettings.nDestGeneral := "cDest11300";
|
||
#TRO214.stInSettings.nConvStations := "cHooksSorterMaxPin113"; //Konstante todo
|
||
#TRO214.stInSettings.nStationsMax := "cStationsMax113"; // Konstante todo
|
||
#TRO214.stInSettings.nStorageThreshold := "cNoPositionsBlock1"; //Konstante todo
|
||
#TRO214.stInSettings.nNoOfLines := 21;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO214.stInSensorReference := "DB_Inputs".Sensors["cInBG3121"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader In (BX2106)
|
||
#TRO214.stInBarcodeReader.Settings.nStation := 113; // todo Konstante
|
||
#TRO214.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO214.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO214.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2106"].xInCamTriggerReady := "bx2106-TriggerReady";
|
||
#arCognexInterface["cScannerBX2106"].xInCamTriggerAck := "bx2106-TriggerAck";
|
||
#arCognexInterface["cScannerBX2106"].xInCamResultsAvailable := "bx2106-Results Available";
|
||
#arCognexInterface["cScannerBX2106"].xInCamGeneralFault := "bx2106-General Fault";
|
||
#arCognexInterface["cScannerBX2106"].hwInCamInspectionResults := "=A01+UH02-BX2106~Ergebnisse_–_64_Bytes_1";
|
||
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
|
||
REGION Pin
|
||
#TRO214.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3120"];
|
||
#TRO214.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO214.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO214.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam1";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3390"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam2";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3391"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam3";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3392"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam4";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3393"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam5";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3394"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam6";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3395"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam7";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3396"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam8";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3397"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam9";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3400"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam10";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3401"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam11";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3402"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam12";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3403"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam13";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3404"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam14";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3405"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam15";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3406"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam16";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3407"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam17";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3410"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 18
|
||
#nActNo := 18;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam18";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3411"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 19
|
||
#nActNo := 19;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam19";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3412"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 20
|
||
#nActNo := 20;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam10";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3413"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 21
|
||
#nActNo := 21;
|
||
#TRO214.arInSep[#nActNo].stSettings.nJamLength := "cStorage113ExitJam11";
|
||
#TRO214.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3414"];
|
||
#TRO214.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO214.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION Aufruf: TRO214
|
||
|
||
#TRO214.stInPriorityManager.xReleaseOk := "cTodoTRUE";
|
||
|
||
#TRO214(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
nInTestTarget := "IBN".nTestTarget113,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO214,
|
||
xInConveyorRunIn := #fbSortConv1102.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1104.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF2,
|
||
arInOutStorageLines := "DB_Storage1.1.3".arLine,
|
||
arInOutJamEntr := "DB_JamArea1102".stJam1102_2.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1102".stJam1102_2.stData,
|
||
arInOutJamExit := "DB_JamArea1104".stJam1104_2.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1104".stJam1104_2.stData,
|
||
arInOutJamBypass := "DB_JamArea1102".stJam1102_3.arCarrier,
|
||
stInOutJamBypass := "DB_JamArea1102".stJam1102_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO214,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[3],
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTRO214"],
|
||
xOutSeparatorPin => "MB3120",
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2106"],
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations113);
|
||
END_REGION
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO214.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO214.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1102".stJam1102_2.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO214.xInQuitLocal := "SF0125" OR "SF0117";
|
||
|
||
#TRO214.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3150"];
|
||
|
||
#TRO214.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3151"];
|
||
|
||
#TRO214.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3152"];
|
||
|
||
#TRO214.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3153"];
|
||
|
||
#TRO214.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3154"];
|
||
|
||
#TRO214.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3155"];
|
||
|
||
#TRO214.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3156"];
|
||
|
||
#TRO214.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3157"];
|
||
|
||
#TRO214.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3160"];
|
||
|
||
#TRO214.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3161"];
|
||
|
||
#TRO214.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3162"];
|
||
|
||
#TRO214.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3163"];
|
||
|
||
#TRO214.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3164"];
|
||
|
||
#TRO214.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG3165"];
|
||
|
||
#TRO214.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG3166"];
|
||
|
||
#TRO214.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG3167"];
|
||
|
||
#TRO214.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG3170"];
|
||
|
||
#TRO214.arInJamSensor[18] := "DB_Inputs".Sensors["cInBG3171"];
|
||
|
||
#TRO214.arInJamSensor[19] := "DB_Inputs".Sensors["cInBG3172"];
|
||
|
||
#TRO214.arInJamSensor[20] := "DB_Inputs".Sensors["cInBG3173"];
|
||
|
||
#TRO214.arInJamSensor[21] := "DB_Inputs".Sensors["cInBG3174"];
|
||
END_REGION ;
|
||
|
||
REGION Barcode Reader Out (BX2106)
|
||
"bx2106-TriggerEnable" := #arCognexInterface["cScannerBX2106"].xOutCamTriggerEnable;
|
||
"bx2106-Trigger" := #arCognexInterface["cScannerBX2106"].xOutCamTrigger;
|
||
"bx2106-ResultsAck" := #arCognexInterface["cScannerBX2106"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB3390" := #TRO214.arOutSeparatorStore[1];
|
||
"MB3391" := #TRO214.arOutSeparatorStore[2];
|
||
"MB3392" := #TRO214.arOutSeparatorStore[3];
|
||
"MB3393" := #TRO214.arOutSeparatorStore[4];
|
||
"MB3394" := #TRO214.arOutSeparatorStore[5];
|
||
"MB3395" := #TRO214.arOutSeparatorStore[6];
|
||
"MB3396" := #TRO214.arOutSeparatorStore[7];
|
||
"MB3397" := #TRO214.arOutSeparatorStore[8];
|
||
"MB3400" := #TRO214.arOutSeparatorStore[9];
|
||
"MB3401" := #TRO214.arOutSeparatorStore[10];
|
||
"MB3402" := #TRO214.arOutSeparatorStore[11];
|
||
"MB3403" := #TRO214.arOutSeparatorStore[12];
|
||
"MB3404" := #TRO214.arOutSeparatorStore[13];
|
||
"MB3405" := #TRO214.arOutSeparatorStore[14];
|
||
"MB3406" := #TRO214.arOutSeparatorStore[15];
|
||
"MB3407" := #TRO214.arOutSeparatorStore[16];
|
||
"MB3410" := #TRO214.arOutSeparatorStore[17];
|
||
"MB3411" := #TRO214.arOutSeparatorStore[18];
|
||
"MB3412" := #TRO214.arOutSeparatorStore[19];
|
||
"MB3413" := #TRO214.arOutSeparatorStore[20];
|
||
"MB3414" := #TRO214.arOutSeparatorStore[21];
|
||
END_REGION
|
||
|
||
REGION Unlaoding Stations Out
|
||
"MB3150" := #TRO214.arOutSwitch[1];
|
||
"MB3151" := #TRO214.arOutSwitch[2];
|
||
"MB3152" := #TRO214.arOutSwitch[3];
|
||
"MB3153" := #TRO214.arOutSwitch[4];
|
||
"MB3154" := #TRO214.arOutSwitch[5];
|
||
"MB3155" := #TRO214.arOutSwitch[6];
|
||
"MB3156" := #TRO214.arOutSwitch[7];
|
||
"MB3157" := #TRO214.arOutSwitch[8];
|
||
"MB3160" := #TRO214.arOutSwitch[9];
|
||
"MB3161" := #TRO214.arOutSwitch[10];
|
||
"MB3162" := #TRO214.arOutSwitch[11];
|
||
"MB3163" := #TRO214.arOutSwitch[12];
|
||
"MB3164" := #TRO214.arOutSwitch[13];
|
||
"MB3165" := #TRO214.arOutSwitch[14];
|
||
"MB3166" := #TRO214.arOutSwitch[15];
|
||
"MB3167" := #TRO214.arOutSwitch[16];
|
||
"MB3170" := #TRO214.arOutSwitch[17];
|
||
"MB3171" := #TRO214.arOutSwitch[18];
|
||
"MB3172" := #TRO214.arOutSwitch[19];
|
||
"MB3173" := #TRO214.arOutSwitch[20];
|
||
"MB3174" := #TRO214.arOutSwitch[21];
|
||
END_REGION
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 21 DO
|
||
IF #TRO214.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO214.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest11300" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.1.4 (TRO 217)
|
||
|
||
REGION Encoder Settings
|
||
#TRO217.stInEncoderParameter.nPosActDif := #fbEncoderGF2201.nOutPosActDif;
|
||
#TRO217.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2201.nPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO217.stInSettings.nDestGeneral := "cDest11400";
|
||
#TRO217.stInSettings.nConvStations := "cHooksSorterMaxPin114"; //Konstante todo
|
||
#TRO217.stInSettings.nStationsMax := "cStationsMax114"; // Konstante todo
|
||
#TRO217.stInSettings.nStorageThreshold := "cNoPositionsBlock1"; //Konstante todo
|
||
#TRO217.stInSettings.nNoOfLines := 13;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO217.stInSensorReference := "DB_Inputs".Sensors["cInBG3181"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader In (BX2107)
|
||
#TRO217.stInBarcodeReader.Settings.nStation := 114; // todo Konstante
|
||
#TRO217.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO217.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO217.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2107"].xInCamTriggerReady := "bx2107-TriggerReady";
|
||
#arCognexInterface["cScannerBX2107"].xInCamTriggerAck := "bx2107-TriggerAck";
|
||
#arCognexInterface["cScannerBX2107"].xInCamResultsAvailable := "bx2107-Results Available";
|
||
#arCognexInterface["cScannerBX2107"].xInCamGeneralFault := "bx2107-General Fault";
|
||
#arCognexInterface["cScannerBX2107"].hwInCamInspectionResults := "=A01+UH02-BX2107~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
|
||
REGION Pin
|
||
#TRO217.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3180"];
|
||
#TRO217.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO217.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO217.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam1";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3450"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam2";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3451"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam3";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3452"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam4";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3453"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam5";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3454"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam6";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3455"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam7";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3456"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam8";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3457"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam9";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3460"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam10";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3461"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam11";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3462"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam12";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3463"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO217.arInSep[#nActNo].stSettings.nJamLength := "cStorage114ExitJam13";
|
||
#TRO217.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3464"];
|
||
#TRO217.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO217.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO217.xInQuitLocal := "SF0127" OR "SF0117";
|
||
|
||
#TRO217.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3210"];
|
||
|
||
#TRO217.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3211"];
|
||
|
||
#TRO217.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3212"];
|
||
|
||
#TRO217.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3213"];
|
||
|
||
#TRO217.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3214"];
|
||
|
||
#TRO217.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3215"];
|
||
|
||
#TRO217.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3216"];
|
||
|
||
#TRO217.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3217"];
|
||
|
||
#TRO217.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3220"];
|
||
|
||
#TRO217.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3221"];
|
||
|
||
#TRO217.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3222"];
|
||
|
||
#TRO217.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3223"];
|
||
|
||
#TRO217.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3224"];
|
||
END_REGION
|
||
|
||
|
||
REGION Aufruf: TRO217
|
||
#TRO217.stInPriorityManager.xReleaseOk := "cTodoTRUE";
|
||
|
||
#TRO217(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
nInTestTarget := "IBN".nTestTarget114,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO217,
|
||
xInConveyorRunIn := #fbSortConv1102.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1104.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF2,
|
||
arInOutStorageLines := "DB_Storage1.1.4".arLine,
|
||
xOutSeparatorPin => "MB3180",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTRO217"],
|
||
arInOutJamEntr := "DB_JamArea1102".stJam1102_3.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1102".stJam1102_3.stData,
|
||
arInOutJamExit := "DB_JamArea1104".stJam1104_1.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1104".stJam1104_1.stData,
|
||
arInOutJamBypass := #arCarrierPlaceHolder,
|
||
stInOutJamBypass := #stJamDataPlaceHolder,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO217,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[4],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2107"],
|
||
stConveyorStations := "DB_ConveyorStations".stConveyorStations114);
|
||
END_REGION
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO217.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO217.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1102".stJam1102_3.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Barcode Reader Out (BX2107)
|
||
"bx2107-TriggerEnable" := #arCognexInterface["cScannerBX2107"].xOutCamTriggerEnable;
|
||
"bx2107-Trigger" := #arCognexInterface["cScannerBX2107"].xOutCamTrigger;
|
||
"bx2107-ResultsAck" := #arCognexInterface["cScannerBX2107"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB3450" := #TRO217.arOutSeparatorStore[1];
|
||
"MB3451" := #TRO217.arOutSeparatorStore[2];
|
||
"MB3452" := #TRO217.arOutSeparatorStore[3];
|
||
"MB3453" := #TRO217.arOutSeparatorStore[4];
|
||
"MB3454" := #TRO217.arOutSeparatorStore[5];
|
||
"MB3455" := #TRO217.arOutSeparatorStore[6];
|
||
"MB3456" := #TRO217.arOutSeparatorStore[7];
|
||
"MB3457" := #TRO217.arOutSeparatorStore[8];
|
||
"MB3460" := #TRO217.arOutSeparatorStore[9];
|
||
"MB3461" := #TRO217.arOutSeparatorStore[10];
|
||
"MB3462" := #TRO217.arOutSeparatorStore[11];
|
||
"MB3463" := #TRO217.arOutSeparatorStore[12];
|
||
"MB3464" := #TRO217.arOutSeparatorStore[13];
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB3210" := #TRO217.arOutSwitch[1];
|
||
"MB3211" := #TRO217.arOutSwitch[2];
|
||
"MB3212" := #TRO217.arOutSwitch[3];
|
||
"MB3213" := #TRO217.arOutSwitch[4];
|
||
"MB3214" := #TRO217.arOutSwitch[5];
|
||
"MB3215" := #TRO217.arOutSwitch[6];
|
||
"MB3216" := #TRO217.arOutSwitch[7];
|
||
"MB3217" := #TRO217.arOutSwitch[8];
|
||
"MB3220" := #TRO217.arOutSwitch[9];
|
||
"MB3221" := #TRO217.arOutSwitch[10];
|
||
"MB3222" := #TRO217.arOutSwitch[11];
|
||
"MB3223" := #TRO217.arOutSwitch[12];
|
||
"MB3224" := #TRO217.arOutSwitch[13];
|
||
END_REGION
|
||
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 13 DO
|
||
IF #TRO217.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO217.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest11400" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION SECTION 1.2
|
||
|
||
REGION BLOCK 1.2.1 (TRO228)
|
||
REGION Encoder Settings
|
||
#TRO228.stInEncoderParameter.nPosActDif := #fbEncoderGF2202.nOutPosActDif;
|
||
#TRO228.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2202.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO228.stInSettings.nDestGeneral := "cDest12100";
|
||
#TRO228.stInSettings.nConvStations := "cHooksSorterMaxPin121"; //Konstante todo
|
||
#TRO228.stInSettings.nStationsMax := "cStationsMax121"; // Konstante todo
|
||
#TRO228.stInSettings.nStorageThreshold := "cNoPositionsBlock2"; //Konstante todo
|
||
#TRO228.stInSettings.nNoOfLines := 19;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO228.stInSensorReference := "DB_Inputs".Sensors["cInBG3481"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader (BX2122)
|
||
#TRO228.stInBarcodeReader.Settings.nStation := 121; // todo Konstante
|
||
#TRO228.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO228.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO228.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2122"].xInCamTriggerReady := "bx2122-TriggerReady";
|
||
#arCognexInterface["cScannerBX2122"].xInCamTriggerAck := "bx2122-TriggerAck";
|
||
#arCognexInterface["cScannerBX2122"].xInCamResultsAvailable := "bx2122-Results Available";
|
||
#arCognexInterface["cScannerBX2122"].xInCamGeneralFault := "bx2122-General Fault";
|
||
#arCognexInterface["cScannerBX2122"].hwInCamInspectionResults := "=A01+UH02-BX2122~Ergebnisse_–_64_Bytes_1";
|
||
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
REGION Sep Pin
|
||
#TRO228.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3480"];
|
||
#TRO228.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO228.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO228.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam1";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3750"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam2";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3751"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam3";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3752"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam4";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3753"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam5";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3754"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam6";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3755"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam7";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3756"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam8";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3757"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam9";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3760"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam10";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3761"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam11";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3762"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam12";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3763"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam13";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3764"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam14";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3765"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam15";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3766"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam16";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3767"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam17";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3770"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 18
|
||
#nActNo := 18;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam18";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3771"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 19
|
||
#nActNo := 19;
|
||
#TRO228.arInSep[#nActNo].stSettings.nJamLength := "cStorage121ExitJam19";
|
||
#TRO228.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3772"];
|
||
#TRO228.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO228.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO228.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION Unloading Station Settings
|
||
#TRO228.xInQuitLocal := "SF0051";
|
||
|
||
#TRO228.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3510"];
|
||
|
||
#TRO228.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3511"];
|
||
|
||
#TRO228.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3512"];
|
||
|
||
#TRO228.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3513"];
|
||
|
||
#TRO228.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3514"];
|
||
|
||
#TRO228.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3515"];
|
||
|
||
#TRO228.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3516"];
|
||
|
||
#TRO228.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3517"];
|
||
|
||
#TRO228.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3520"];
|
||
|
||
#TRO228.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3521"];
|
||
|
||
#TRO228.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3522"];
|
||
|
||
#TRO228.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3523"];
|
||
|
||
#TRO228.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3524"];
|
||
|
||
#TRO228.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG3525"];
|
||
|
||
#TRO228.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG3526"];
|
||
|
||
#TRO228.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG3527"];
|
||
|
||
#TRO228.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG3530"];
|
||
|
||
#TRO228.arInJamSensor[18] := "DB_Inputs".Sensors["cInBG3531"];
|
||
|
||
#TRO228.arInJamSensor[19] := "DB_Inputs".Sensors["cInBG3532"];
|
||
|
||
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION Aufruf: TRO228
|
||
|
||
#TRO228.stInPriorityManager.xReleaseOk := TRUE;
|
||
|
||
#TRO228(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
nInTestTarget := "IBN".nTestTarget121,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO228,
|
||
xInConveyorRunIn := #fbSortConv1201.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1203.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
arInOutStorageLines := "DB_Storage1.2.1".arLine,
|
||
arInOutJamEntr := "DB_JamArea1201".stJam1201_2.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1201".stJam1201_2.stData,
|
||
arInOutJamExit := "DB_JamArea1203".stJam1203_1.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1203".stJam1203_1.stData,
|
||
arInOutJamBypass := #arCarrierPlaceHolder,
|
||
stInOutJamBypass := #stJamDataPlaceHolder,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO228,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[5],
|
||
xOutSeparatorPin => "MB3480",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro327"],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2122"],
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations121);
|
||
END_REGION ;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO228.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO228.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1201".stJam1201_2.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Barcode Reader OUT
|
||
"bx2122-TriggerEnable" := #arCognexInterface["cScannerBX2122"].xOutCamTriggerEnable;
|
||
"bx2122-Trigger" := #arCognexInterface["cScannerBX2122"].xOutCamTrigger;
|
||
"bx2122-ResultsAck" := #arCognexInterface["cScannerBX2122"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store OUT
|
||
"MB3750" := #TRO228.arOutSeparatorStore[1];
|
||
"MB3751" := #TRO228.arOutSeparatorStore[2];
|
||
"MB3752" := #TRO228.arOutSeparatorStore[3];
|
||
"MB3753" := #TRO228.arOutSeparatorStore[4];
|
||
"MB3754" := #TRO228.arOutSeparatorStore[5];
|
||
"MB3755" := #TRO228.arOutSeparatorStore[6];
|
||
"MB3756" := #TRO228.arOutSeparatorStore[7];
|
||
"MB3757" := #TRO228.arOutSeparatorStore[8];
|
||
"MB3760" := #TRO228.arOutSeparatorStore[9];
|
||
"MB3761" := #TRO228.arOutSeparatorStore[10];
|
||
"MB3762" := #TRO228.arOutSeparatorStore[11];
|
||
"MB3763" := #TRO228.arOutSeparatorStore[12];
|
||
"MB3764" := #TRO228.arOutSeparatorStore[13];
|
||
"MB3765" := #TRO228.arOutSeparatorStore[14];
|
||
"MB3766" := #TRO228.arOutSeparatorStore[15];
|
||
"MB3767" := #TRO228.arOutSeparatorStore[16];
|
||
"MB3770" := #TRO228.arOutSeparatorStore[17];
|
||
"MB3771" := #TRO228.arOutSeparatorStore[18];
|
||
"MB3772" := #TRO228.arOutSeparatorStore[19];
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB3510" := #TRO228.arOutSwitch[1];
|
||
"MB3511" := #TRO228.arOutSwitch[2];
|
||
"MB3512" := #TRO228.arOutSwitch[3];
|
||
"MB3513" := #TRO228.arOutSwitch[4];
|
||
"MB3514" := #TRO228.arOutSwitch[5];
|
||
"MB3515" := #TRO228.arOutSwitch[6];
|
||
"MB3516" := #TRO228.arOutSwitch[7];
|
||
"MB3517" := #TRO228.arOutSwitch[8];
|
||
"MB3520" := #TRO228.arOutSwitch[9];
|
||
"MB3521" := #TRO228.arOutSwitch[10];
|
||
"MB3522" := #TRO228.arOutSwitch[11];
|
||
"MB3523" := #TRO228.arOutSwitch[12];
|
||
"MB3524" := #TRO228.arOutSwitch[13];
|
||
"MB3525" := #TRO228.arOutSwitch[14];
|
||
"MB3526" := #TRO228.arOutSwitch[15];
|
||
"MB3527" := #TRO228.arOutSwitch[16];
|
||
"MB3530" := #TRO228.arOutSwitch[17];
|
||
"MB3531" := #TRO228.arOutSwitch[18];
|
||
"MB3532" := #TRO228.arOutSwitch[19];
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 19 DO
|
||
IF #TRO228.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO228.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest12100" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.2.2 (TRO231)
|
||
REGION Encoder Settings
|
||
#TRO231.stInEncoderParameter.nPosActDif := #fbEncoderGF2202.nOutPosActDif;
|
||
#TRO231.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2202.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO231.stInSettings.nDestGeneral := "cDest12200";
|
||
#TRO231.stInSettings.nConvStations := "cHooksSorterMaxPin122"; //Konstante todo
|
||
#TRO231.stInSettings.nStationsMax := "cStationsMax122"; // Konstante todo
|
||
#TRO231.stInSettings.nStorageThreshold := "cNoPositionsBlock2"; //Konstante todo
|
||
#TRO231.stInSettings.nNoOfLines := 17;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO231.stInSensorReference := "DB_Inputs".Sensors["cInBG3541"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader (BX2123)
|
||
#TRO231.stInBarcodeReader.Settings.nStation := 122; // todo Konstante
|
||
#TRO231.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO231.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO231.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2123"].xInCamTriggerReady := "bx2123-TriggerReady";
|
||
#arCognexInterface["cScannerBX2123"].xInCamTriggerAck := "bx2123-TriggerAck";
|
||
#arCognexInterface["cScannerBX2123"].xInCamResultsAvailable := "bx2123-Results Available";
|
||
#arCognexInterface["cScannerBX2123"].xInCamGeneralFault := "bx2123-General Fault";
|
||
#arCognexInterface["cScannerBX2123"].hwInCamInspectionResults := "=A01+UH02-BX2123~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
REGION Sep Pin
|
||
#TRO231.stInSeparatorPin.stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO231.stInSeparatorPin.stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO231.stInSeparatorPin.stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO231.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3540"];
|
||
#TRO231.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO231.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO231.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam1";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3810"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam2";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3811"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam3";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3812"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam4";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3813"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam5";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3814"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam6";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3815"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam7";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3816"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam8";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3817"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam9";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3820"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam10";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3821"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam11";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3822"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam12";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3823"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam13";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3824"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam14";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3825"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam15";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3826"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam16";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3827"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO231.arInSep[#nActNo].stSettings.nJamLength := "cStorage122ExitJam17";
|
||
#TRO231.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3830"];
|
||
#TRO231.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO231.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO231.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO231.xInQuitLocal := "SF0053";
|
||
|
||
#TRO231.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3570"];
|
||
|
||
#TRO231.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3571"];
|
||
|
||
#TRO231.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3572"];
|
||
|
||
#TRO231.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3573"];
|
||
|
||
#TRO231.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3574"];
|
||
|
||
#TRO231.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3575"];
|
||
|
||
#TRO231.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3576"];
|
||
|
||
#TRO231.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3577"];
|
||
|
||
#TRO231.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3580"];
|
||
|
||
#TRO231.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3581"];
|
||
|
||
#TRO231.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3582"];
|
||
|
||
#TRO231.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3583"];
|
||
|
||
#TRO231.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3584"];
|
||
|
||
#TRO231.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG3585"];
|
||
|
||
#TRO231.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG3586"];
|
||
|
||
#TRO231.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG3587"];
|
||
|
||
#TRO231.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG3590"];
|
||
END_REGION
|
||
|
||
REGION Aufruf: TRO231
|
||
|
||
#TRO231.stInPriorityManager.xReleaseOk := TRUE;
|
||
|
||
#TRO231(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
nInTestTarget := "IBN".nTestTarget122,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO231,
|
||
xInConveyorRunIn := #fbSortConv1201.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1203.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
arInOutStorageLines := "DB_Storage1.2.2".arLine,
|
||
arInOutJamEntr := "DB_JamArea1201".stJam1201_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1201".stJam1201_1.stData,
|
||
arInOutJamExit := "DB_JamArea1203".stJam1203_2.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1203".stJam1203_2.stData,
|
||
arInOutJamBypass := "DB_JamArea1201".stJam1201_2.arCarrier,
|
||
stInOutJamBypass := "DB_JamArea1201".stJam1201_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO231,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[6],
|
||
xOutSeparatorPin => "MB3540",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro327"],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2123"],
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations122);
|
||
END_REGION ;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO231.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO231.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1201".stJam1201_1.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Barcode-Reader OUT
|
||
"bx2123-TriggerEnable" := #arCognexInterface["cScannerBX2123"].xOutCamTriggerEnable;
|
||
"bx2123-Trigger" := #arCognexInterface["cScannerBX2123"].xOutCamTrigger;
|
||
"bx2123-ResultsAck" := #arCognexInterface["cScannerBX2123"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB3810" := #TRO231.arOutSeparatorStore[1];
|
||
"MB3811" := #TRO231.arOutSeparatorStore[2];
|
||
"MB3812" := #TRO231.arOutSeparatorStore[3];
|
||
"MB3813" := #TRO231.arOutSeparatorStore[4];
|
||
"MB3814" := #TRO231.arOutSeparatorStore[5];
|
||
"MB3815" := #TRO231.arOutSeparatorStore[6];
|
||
"MB3816" := #TRO231.arOutSeparatorStore[7];
|
||
"MB3817" := #TRO231.arOutSeparatorStore[8];
|
||
"MB3820" := #TRO231.arOutSeparatorStore[9];
|
||
"MB3821" := #TRO231.arOutSeparatorStore[10];
|
||
"MB3822" := #TRO231.arOutSeparatorStore[11];
|
||
"MB3823" := #TRO231.arOutSeparatorStore[12];
|
||
"MB3824" := #TRO231.arOutSeparatorStore[13];
|
||
"MB3825" := #TRO231.arOutSeparatorStore[14];
|
||
"MB3826" := #TRO231.arOutSeparatorStore[15];
|
||
"MB3827" := #TRO231.arOutSeparatorStore[16];
|
||
"MB3830" := #TRO231.arOutSeparatorStore[17];
|
||
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB3570" := #TRO231.arOutSwitch[1];
|
||
"MB3571" := #TRO231.arOutSwitch[2];
|
||
"MB3572" := #TRO231.arOutSwitch[3];
|
||
"MB3573" := #TRO231.arOutSwitch[4];
|
||
"MB3574" := #TRO231.arOutSwitch[5];
|
||
"MB3575" := #TRO231.arOutSwitch[6];
|
||
"MB3576" := #TRO231.arOutSwitch[7];
|
||
"MB3577" := #TRO231.arOutSwitch[8];
|
||
"MB3580" := #TRO231.arOutSwitch[9];
|
||
"MB3581" := #TRO231.arOutSwitch[10];
|
||
"MB3582" := #TRO231.arOutSwitch[11];
|
||
"MB3583" := #TRO231.arOutSwitch[12];
|
||
"MB3584" := #TRO231.arOutSwitch[13];
|
||
"MB3585" := #TRO231.arOutSwitch[14];
|
||
"MB3586" := #TRO231.arOutSwitch[15];
|
||
"MB3587" := #TRO231.arOutSwitch[16];
|
||
"MB3590" := #TRO231.arOutSwitch[17];
|
||
END_REGION
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 17 DO
|
||
IF #TRO231.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO231.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest12200" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.2.3 (TRO234)
|
||
REGION Encoder Settings
|
||
#TRO234.stInEncoderParameter.nPosActDif := #fbEncoderGF2203.nOutPosActDif;
|
||
#TRO234.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2203.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO234.stInSettings.nDestGeneral := "cDest12300";
|
||
#TRO234.stInSettings.nConvStations := "cHooksSorterMaxPin123"; //Konstante todo
|
||
#TRO234.stInSettings.nStationsMax := "cStationsMax123"; // Konstante todo
|
||
#TRO234.stInSettings.nStorageThreshold := "cNoPositionsBlock2"; //Konstante todo
|
||
#TRO234.stInSettings.nNoOfLines := 21;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO234.stInSensorReference := "DB_Inputs".Sensors["cInBG3601"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader (BX2124)
|
||
#TRO234.stInBarcodeReader.Settings.nStation := 123; // todo Konstante
|
||
#TRO234.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO234.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO234.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2124"].xInCamTriggerReady := "bx2124-TriggerReady";
|
||
#arCognexInterface["cScannerBX2124"].xInCamTriggerAck := "bx2124-TriggerAck";
|
||
#arCognexInterface["cScannerBX2124"].xInCamResultsAvailable := "bx2124-Results Available";
|
||
#arCognexInterface["cScannerBX2124"].xInCamGeneralFault := "bx2124-General Fault";
|
||
#arCognexInterface["cScannerBX2124"].hwInCamInspectionResults := "=A01+UH02-BX2124~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
REGION Sep Pin
|
||
#TRO234.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3600"];
|
||
#TRO234.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO234.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO234.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam1";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3870"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam2";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3871"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam3";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3872"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam4";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3873"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam5";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3874"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam6";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3875"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam7";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3876"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam8";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3877"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam9";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3880"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam10";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3881"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam11";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3882"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam12";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3883"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam13";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3884"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam14";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3885"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam15";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3886"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam16";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3887"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam17";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3890"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 18
|
||
#nActNo := 18;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam18";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3891"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 19
|
||
#nActNo := 19;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam19";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3892"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 20
|
||
#nActNo := 20;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam10";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3893"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 21
|
||
#nActNo := 21;
|
||
#TRO234.arInSep[#nActNo].stSettings.nJamLength := "cStorage123ExitJam11";
|
||
#TRO234.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3894"];
|
||
#TRO234.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO234.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO234.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO234.xInQuitLocal := "SF0055";
|
||
|
||
#TRO234.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3630"];
|
||
|
||
#TRO234.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3631"];
|
||
|
||
#TRO234.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3632"];
|
||
|
||
#TRO234.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3633"];
|
||
|
||
#TRO234.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3634"];
|
||
|
||
#TRO234.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3635"];
|
||
|
||
#TRO234.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3636"];
|
||
|
||
#TRO234.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3637"];
|
||
|
||
#TRO234.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3640"];
|
||
|
||
#TRO234.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3641"];
|
||
|
||
#TRO234.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3642"];
|
||
|
||
#TRO234.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3643"];
|
||
|
||
#TRO234.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3644"];
|
||
|
||
#TRO234.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG3645"];
|
||
|
||
#TRO234.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG3646"];
|
||
|
||
#TRO234.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG3647"];
|
||
|
||
#TRO234.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG3650"];
|
||
|
||
#TRO234.arInJamSensor[18] := "DB_Inputs".Sensors["cInBG3651"];
|
||
|
||
#TRO234.arInJamSensor[19] := "DB_Inputs".Sensors["cInBG3652"];
|
||
|
||
#TRO234.arInJamSensor[20] := "DB_Inputs".Sensors["cInBG3653"];
|
||
|
||
#TRO234.arInJamSensor[21] := "DB_Inputs".Sensors["cInBG3654"];
|
||
|
||
END_REGION
|
||
|
||
REGION Aufruf: TRO234
|
||
|
||
#TRO234.stInPriorityManager.xReleaseOk := TRUE;
|
||
|
||
#TRO234(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
nInTestTarget := "IBN".nTestTarget123,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO234,
|
||
xInConveyorRunIn := #fbSortConv1202.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1204.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
arInOutStorageLines := "DB_Storage1.2.3".arLine,
|
||
arInOutJamEntr := "DB_JamArea1202".stJam1202_2.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1202".stJam1202_2.stData,
|
||
arInOutJamExit := "DB_JamArea1204".stJam1204_2.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1204".stJam1204_2.stData,
|
||
arInOutJamBypass := "DB_JamArea1202".stJam1202_3.arCarrier,
|
||
stInOutJamBypass := "DB_JamArea1202".stJam1202_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO234,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[7],
|
||
xOutSeparatorPin => "MB3600",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro327"],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2124"],
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations123);
|
||
END_REGION
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO234.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO234.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1202".stJam1202_3.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Barcode Reader OUT (BX2124)
|
||
"bx2124-TriggerEnable" := #arCognexInterface["cScannerBX2124"].xOutCamTriggerEnable;
|
||
"bx2124-Trigger" := #arCognexInterface["cScannerBX2124"].xOutCamTrigger;
|
||
"bx2124-ResultsAck" := #arCognexInterface["cScannerBX2124"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB3870" := #TRO234.arOutSeparatorStore[1];
|
||
"MB3871" := #TRO234.arOutSeparatorStore[2];
|
||
"MB3872" := #TRO234.arOutSeparatorStore[3];
|
||
"MB3873" := #TRO234.arOutSeparatorStore[4];
|
||
"MB3874" := #TRO234.arOutSeparatorStore[5];
|
||
"MB3875" := #TRO234.arOutSeparatorStore[6];
|
||
"MB3876" := #TRO234.arOutSeparatorStore[7];
|
||
"MB3877" := #TRO234.arOutSeparatorStore[8];
|
||
"MB3880" := #TRO234.arOutSeparatorStore[9];
|
||
"MB3881" := #TRO234.arOutSeparatorStore[10];
|
||
"MB3882" := #TRO234.arOutSeparatorStore[11];
|
||
"MB3883" := #TRO234.arOutSeparatorStore[12];
|
||
"MB3884" := #TRO234.arOutSeparatorStore[13];
|
||
"MB3885" := #TRO234.arOutSeparatorStore[14];
|
||
"MB3886" := #TRO234.arOutSeparatorStore[15];
|
||
"MB3887" := #TRO234.arOutSeparatorStore[16];
|
||
"MB3890" := #TRO234.arOutSeparatorStore[17];
|
||
"MB3891" := #TRO234.arOutSeparatorStore[18];
|
||
"MB3892" := #TRO234.arOutSeparatorStore[19];
|
||
"MB3893" := #TRO234.arOutSeparatorStore[20];
|
||
"MB3894" := #TRO234.arOutSeparatorStore[21];
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB3630" := #TRO234.arOutSwitch[1];
|
||
"MB3631" := #TRO234.arOutSwitch[2];
|
||
"MB3632" := #TRO234.arOutSwitch[3];
|
||
"MB3633" := #TRO234.arOutSwitch[4];
|
||
"MB3634" := #TRO234.arOutSwitch[5];
|
||
"MB3635" := #TRO234.arOutSwitch[6];
|
||
"MB3636" := #TRO234.arOutSwitch[7];
|
||
"MB3637" := #TRO234.arOutSwitch[8];
|
||
"MB3640" := #TRO234.arOutSwitch[9];
|
||
"MB3641" := #TRO234.arOutSwitch[10];
|
||
"MB3642" := #TRO234.arOutSwitch[11];
|
||
"MB3643" := #TRO234.arOutSwitch[12];
|
||
"MB3644" := #TRO234.arOutSwitch[13];
|
||
"MB3645" := #TRO234.arOutSwitch[14];
|
||
"MB3646" := #TRO234.arOutSwitch[15];
|
||
"MB3647" := #TRO234.arOutSwitch[16];
|
||
"MB3650" := #TRO234.arOutSwitch[17];
|
||
"MB3651" := #TRO234.arOutSwitch[18];
|
||
"MB3652" := #TRO234.arOutSwitch[19];
|
||
"MB3653" := #TRO234.arOutSwitch[20];
|
||
"MB3654" := #TRO234.arOutSwitch[21];
|
||
END_REGION
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 21 DO
|
||
IF #TRO234.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO234.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest12300" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.2.4 (TRO237)
|
||
REGION Encoder Settings
|
||
#TRO237.stInEncoderParameter.nPosActDif := #fbEncoderGF2203.nOutPosActDif;
|
||
#TRO237.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2203.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO237.stInSettings.nDestGeneral := "cDest12400";
|
||
#TRO237.stInSettings.nConvStations := "cHooksSorterMaxPin124"; //Konstante todo
|
||
#TRO237.stInSettings.nStationsMax := "cStationsMax124"; // Konstante todo
|
||
#TRO237.stInSettings.nStorageThreshold := "cNoPositionsBlock2"; //Konstante todo
|
||
#TRO237.stInSettings.nNoOfLines := 13;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO237.stInSensorReference := "DB_Inputs".Sensors["cInBG3661"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader (BX2125)
|
||
#TRO237.stInBarcodeReader.Settings.nStation := 124; // todo Konstante
|
||
#TRO237.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO237.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO237.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2125"].xInCamTriggerReady := "bx2125-TriggerReady";
|
||
#arCognexInterface["cScannerBX2125"].xInCamTriggerAck := "bx2125-TriggerAck";
|
||
#arCognexInterface["cScannerBX2125"].xInCamResultsAvailable := "bx2125-Results Available";
|
||
#arCognexInterface["cScannerBX2125"].xInCamGeneralFault := "bx2125-General Fault";
|
||
#arCognexInterface["cScannerBX2125"].hwInCamInspectionResults := "=A01+UH02-BX2125~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
REGION Sep Pin
|
||
#TRO237.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG3660"];
|
||
#TRO237.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO237.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO237.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam1";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3930"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam2";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3931"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam3";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3932"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam4";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3933"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam5";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3934"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam6";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3935"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam7";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3936"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam8";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3937"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam9";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3940"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam10";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3941"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam11";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3942"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam12";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3943"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO237.arInSep[#nActNo].stSettings.nJamLength := "cStorage124ExitJam13";
|
||
#TRO237.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3944"];
|
||
#TRO237.arInSep[#nActNo].stSettings.tHandlingTime := T#300ms;
|
||
#TRO237.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO237.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO237.xInQuitLocal := "SF0057";
|
||
|
||
#TRO237.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG3690"];
|
||
|
||
#TRO237.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG3691"];
|
||
|
||
#TRO237.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG3692"];
|
||
|
||
#TRO237.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG3693"];
|
||
|
||
#TRO237.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG3694"];
|
||
|
||
#TRO237.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG3695"];
|
||
|
||
#TRO237.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG3696"];
|
||
|
||
#TRO237.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG3697"];
|
||
|
||
#TRO237.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG3700"];
|
||
|
||
#TRO237.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG3701"];
|
||
|
||
#TRO237.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG3702"];
|
||
|
||
#TRO237.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG3703"];
|
||
|
||
#TRO237.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG3704"];
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION Aufruf: TRO237
|
||
|
||
#TRO237.stInPriorityManager.xReleaseOk := TRUE;
|
||
|
||
#TRO237(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
nInTestTarget := "IBN".nTestTarget124,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO237,
|
||
xInConveyorRunIn := #fbSortConv1202.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1204.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF1,
|
||
arInOutStorageLines := "DB_Storage1.2.4".arLine,
|
||
arInOutJamEntr := "DB_JamArea1202".stJam1202_3.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1202".stJam1202_3.stData,
|
||
arInOutJamExit := "DB_JamArea1204".stJam1204_1.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1204".stJam1204_1.stData,
|
||
arInOutJamBypass := #arCarrierPlaceHolder,
|
||
stInOutJamBypass := #stJamDataPlaceHolder,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO237,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[8],
|
||
xOutSeparatorPin => "MB3660",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro327"],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2125"],
|
||
stConveyorStations := "DB_ConveyorStations".stConveyorStations124);
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO237.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO237.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1202".stJam1202_3.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Barcode Reader OUT (BX2125)
|
||
"bx2125-TriggerEnable" := #arCognexInterface["cScannerBX2125"].xOutCamTriggerEnable;
|
||
"bx2125-Trigger" := #arCognexInterface["cScannerBX2125"].xOutCamTrigger;
|
||
"bx2125-ResultsAck" := #arCognexInterface["cScannerBX2125"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB3930" := #TRO237.arOutSeparatorStore[1];
|
||
"MB3931" := #TRO237.arOutSeparatorStore[2];
|
||
"MB3932" := #TRO237.arOutSeparatorStore[3];
|
||
"MB3933" := #TRO237.arOutSeparatorStore[4];
|
||
"MB3934" := #TRO237.arOutSeparatorStore[5];
|
||
"MB3935" := #TRO237.arOutSeparatorStore[6];
|
||
"MB3936" := #TRO237.arOutSeparatorStore[7];
|
||
"MB3937" := #TRO237.arOutSeparatorStore[8];
|
||
"MB3940" := #TRO237.arOutSeparatorStore[9];
|
||
"MB3941" := #TRO237.arOutSeparatorStore[10];
|
||
"MB3942" := #TRO237.arOutSeparatorStore[11];
|
||
"MB3943" := #TRO237.arOutSeparatorStore[12];
|
||
"MB3944" := #TRO237.arOutSeparatorStore[13];
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB3690" := #TRO237.arOutSwitch[1];
|
||
"MB3691" := #TRO237.arOutSwitch[2];
|
||
"MB3692" := #TRO237.arOutSwitch[3];
|
||
"MB3693" := #TRO237.arOutSwitch[4];
|
||
"MB3694" := #TRO237.arOutSwitch[5];
|
||
"MB3695" := #TRO237.arOutSwitch[6];
|
||
"MB3696" := #TRO237.arOutSwitch[7];
|
||
"MB3697" := #TRO237.arOutSwitch[8];
|
||
"MB3700" := #TRO237.arOutSwitch[9];
|
||
"MB3701" := #TRO237.arOutSwitch[10];
|
||
"MB3702" := #TRO237.arOutSwitch[11];
|
||
"MB3703" := #TRO237.arOutSwitch[12];
|
||
"MB3704" := #TRO237.arOutSwitch[13];
|
||
END_REGION
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 13 DO
|
||
IF #TRO237.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO237.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest12400" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION SECTION 1.3
|
||
REGION BLOCK 1.3.1 (TRO 248)
|
||
|
||
REGION Encoder Settings
|
||
#TRO248.stInEncoderParameter.nPosActDif := #fbEncoderGF2204.nOutPosActDif;
|
||
#TRO248.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2204.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO248.stInSettings.nDestGeneral := "cDest13100";
|
||
#TRO248.stInSettings.nConvStations := "cHooksSorterMaxPin131"; //Konstante todo
|
||
#TRO248.stInSettings.nStationsMax := "cStationsMax131"; // Konstante todo
|
||
#TRO248.stInSettings.nStorageThreshold := "cNoPositionsBlock3"; //Konstante todo
|
||
#TRO248.stInSettings.nNoOfLines := 19;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO248.stInSensorReference := "DB_Inputs".Sensors["cInBG4201"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader In (BX2131)
|
||
#TRO248.stInBarcodeReader.Settings.nStation := 131; // todo Konstante
|
||
#TRO248.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO248.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO248.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2131"].xInCamTriggerReady := "bx2131-TriggerReady";
|
||
#arCognexInterface["cScannerBX2131"].xInCamTriggerAck := "bx2131-TriggerAck";
|
||
#arCognexInterface["cScannerBX2131"].xInCamResultsAvailable := "bx2131-Results Available";
|
||
#arCognexInterface["cScannerBX2131"].xInCamGeneralFault := "bx2131-General Fault";
|
||
#arCognexInterface["cScannerBX2131"].hwInCamInspectionResults := "=A01+UC023-BX2131~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
REGION Sep Pin
|
||
#TRO248.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG4200"];
|
||
#TRO248.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO248.stInSeparatorPin.stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := 4;//"cStorage131ExitJam1";
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3990"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam2";
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3991"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam3";
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3992"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam4";
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3993"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam5";
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3994"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam6";
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3995"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam7";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3996"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam8";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG3997"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam9";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4000"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam10";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4001"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam11";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4002"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam12";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4003"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam13";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4004"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam14";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4005"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam15";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4006"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam16";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4007"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam17";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4010"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 18
|
||
#nActNo := 18;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam18";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4011"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 19
|
||
#nActNo := 19;
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.xActive := "DB_SIM_PARAM".xSimuActive;
|
||
#TRO248.arInSep[#nActNo].stSettings.nJamLength := "cStorage131ExitJam19";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.tSenTime := "tSimuSenTime";
|
||
#TRO248.arInSep[#nActNo].stSettings.stSimu.stJamConfig := "DB_SIM_PARAM".stStorageLineGlob.stSimuJamConfig;
|
||
#TRO248.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4012"];
|
||
#TRO248.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO248.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO248.xInQuitLocal := "SF0241" OR "SF0237";
|
||
|
||
#TRO248.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG4230"];
|
||
|
||
#TRO248.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG4231"];
|
||
|
||
#TRO248.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG4232"];
|
||
|
||
#TRO248.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG4233"];
|
||
|
||
#TRO248.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG4234"];
|
||
|
||
#TRO248.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG4235"];
|
||
|
||
#TRO248.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG4236"];
|
||
|
||
#TRO248.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG4237"];
|
||
|
||
#TRO248.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG4240"];
|
||
|
||
#TRO248.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG4241"];
|
||
|
||
#TRO248.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG4242"];
|
||
|
||
#TRO248.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG4243"];
|
||
|
||
#TRO248.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG4244"];
|
||
|
||
#TRO248.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG4245"];
|
||
|
||
#TRO248.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG4246"];
|
||
|
||
#TRO248.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG4247"];
|
||
|
||
#TRO248.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG4250"];
|
||
|
||
#TRO248.arInJamSensor[18] := "DB_Inputs".Sensors["cInBG4251"];
|
||
|
||
#TRO248.arInJamSensor[19] := "DB_Inputs".Sensors["cInBG4252"];
|
||
|
||
END_REGION
|
||
|
||
REGION Aufruf: TRO248
|
||
|
||
#TRO248.stInPriorityManager.xReleaseOk := TRUE;
|
||
|
||
#TRO248(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
nInTestTarget := "IBN".nTestTarget131,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO248,
|
||
xInConveyorRunIn := #fbSortConv1303.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1301.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4,
|
||
arInOutStorageLines := "DB_Storage1.3.1".arLine,
|
||
arInOutJamEntr := "DB_JamArea1303".stJam1303_2.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1303".stJam1303_2.stData,
|
||
arInOutJamExit := "DB_JamArea1301".stJam1301_1.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1301".stJam1301_1.stData,
|
||
arInOutJamBypass := #arCarrierPlaceHolder,
|
||
stInOutJamBypass := #stJamDataPlaceHolder,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO248,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[9],
|
||
xOutSeparatorPin => "MB4200",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTRO248"],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2131"],
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations131);
|
||
END_REGION ;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO248.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO248.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1303".stJam1303_2.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Barcode Reader Out (BX2131)
|
||
"bx2131-TriggerEnable" := #arCognexInterface["cScannerBX2131"].xOutCamTriggerEnable;
|
||
"bx2131-Trigger" := #arCognexInterface["cScannerBX2131"].xOutCamTrigger;
|
||
"bx2131-ResultsAck" := #arCognexInterface["cScannerBX2131"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
|
||
|
||
REGION Separator Store Out
|
||
"MB3990" := #TRO248.arOutSeparatorStore[1];
|
||
"MB3991" := #TRO248.arOutSeparatorStore[2];
|
||
"MB3992" := #TRO248.arOutSeparatorStore[3];
|
||
"MB3993" := #TRO248.arOutSeparatorStore[4];
|
||
"MB3994" := #TRO248.arOutSeparatorStore[5];
|
||
"MB3995" := #TRO248.arOutSeparatorStore[6];
|
||
"MB3996" := #TRO248.arOutSeparatorStore[7];
|
||
"MB3997" := #TRO248.arOutSeparatorStore[8];
|
||
"MB4000" := #TRO248.arOutSeparatorStore[9];
|
||
"MB4001" := #TRO248.arOutSeparatorStore[10];
|
||
"MB4002" := #TRO248.arOutSeparatorStore[11];
|
||
"MB4003" := #TRO248.arOutSeparatorStore[12];
|
||
"MB4004" := #TRO248.arOutSeparatorStore[13];
|
||
"MB4005" := #TRO248.arOutSeparatorStore[14];
|
||
"MB4006" := #TRO248.arOutSeparatorStore[15];
|
||
"MB4007" := #TRO248.arOutSeparatorStore[16];
|
||
"MB4010" := #TRO248.arOutSeparatorStore[17];
|
||
"MB4011" := #TRO248.arOutSeparatorStore[18];
|
||
"MB4012" := #TRO248.arOutSeparatorStore[19];
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB4230" := #TRO248.arOutSwitch[1];
|
||
"MB4231" := #TRO248.arOutSwitch[2];
|
||
"MB4232" := #TRO248.arOutSwitch[3];
|
||
"MB4233" := #TRO248.arOutSwitch[4];
|
||
"MB4234" := #TRO248.arOutSwitch[5];
|
||
"MB4235" := #TRO248.arOutSwitch[6];
|
||
"MB4236" := #TRO248.arOutSwitch[7];
|
||
"MB4237" := #TRO248.arOutSwitch[8];
|
||
"MB4240" := #TRO248.arOutSwitch[9];
|
||
"MB4241" := #TRO248.arOutSwitch[10];
|
||
"MB4242" := #TRO248.arOutSwitch[11];
|
||
"MB4243" := #TRO248.arOutSwitch[12];
|
||
"MB4244" := #TRO248.arOutSwitch[13];
|
||
"MB4245" := #TRO248.arOutSwitch[14];
|
||
"MB4246" := #TRO248.arOutSwitch[15];
|
||
"MB4247" := #TRO248.arOutSwitch[16];
|
||
"MB4250" := #TRO248.arOutSwitch[17];
|
||
"MB4251" := #TRO248.arOutSwitch[18];
|
||
"MB4252" := #TRO248.arOutSwitch[19];
|
||
END_REGION
|
||
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 19 DO
|
||
IF #TRO248.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO248.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest13100" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.3.2 (TRO 251)
|
||
REGION Encoder Settings
|
||
#TRO251.stInEncoderParameter.nPosActDif := #fbEncoderGF2204.nOutPosActDif;
|
||
#TRO251.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2204.nOutPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO251.stInSettings.nDestGeneral := "cDest13200";
|
||
#TRO251.stInSettings.nConvStations := "cHooksSorterMaxPin132"; //Konstante todo
|
||
#TRO251.stInSettings.nStationsMax := "cStationsMax132"; // Konstante todo
|
||
#TRO251.stInSettings.nStorageThreshold := "cNoPositionsBlock3"; //Konstante todo
|
||
#TRO251.stInSettings.nNoOfLines := 17;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO251.stInSensorReference := "DB_Inputs".Sensors["cInBG4261"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader IN (BX2132)
|
||
#TRO251.stInBarcodeReader.Settings.nStation := 132; // todo Konstante
|
||
#TRO251.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO251.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO251.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2132"].xInCamTriggerReady := "bx2132-TriggerReady";
|
||
#arCognexInterface["cScannerBX2132"].xInCamTriggerAck := "bx2132-TriggerAck";
|
||
#arCognexInterface["cScannerBX2132"].xInCamResultsAvailable := "bx2132-Results Available";
|
||
#arCognexInterface["cScannerBX2132"].xInCamGeneralFault := "bx2132-General Fault";
|
||
#arCognexInterface["cScannerBX2132"].hwInCamInspectionResults := "=A01+UC023-BX2132~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
|
||
REGION Pin
|
||
#TRO251.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG4260"];
|
||
#TRO251.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO251.stInSeparatorPin.stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam1";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4050"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam2";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4051"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam3";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4052"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam4";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4053"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam5";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4054"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam6";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4055"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam7";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4056"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam8";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4057"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam9";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4060"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam10";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4061"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam11";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4062"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam12";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4063"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam13";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4064"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam14";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4065"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam15";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4066"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam16";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4067"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO251.arInSep[#nActNo].stSettings.nJamLength := "cStorage132ExitJam17";
|
||
#TRO251.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4070"];
|
||
#TRO251.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO251.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO251.xInQuitLocal := "SF0243" OR "SF0237";
|
||
|
||
#TRO251.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG4290"];
|
||
|
||
#TRO251.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG4291"];
|
||
|
||
#TRO251.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG4292"];
|
||
|
||
#TRO251.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG4293"];
|
||
|
||
#TRO251.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG4294"];
|
||
|
||
#TRO251.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG4295"];
|
||
|
||
#TRO251.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG4296"];
|
||
|
||
#TRO251.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG4297"];
|
||
|
||
#TRO251.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG4300"];
|
||
|
||
#TRO251.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG4301"];
|
||
|
||
#TRO251.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG4302"];
|
||
|
||
#TRO251.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG4303"];
|
||
|
||
#TRO251.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG4304"];
|
||
|
||
#TRO251.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG4305"];
|
||
|
||
#TRO251.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG4306"];
|
||
|
||
#TRO251.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG4307"];
|
||
|
||
#TRO251.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG4310"];
|
||
END_REGION ;
|
||
|
||
REGION Aufruf: TRO251
|
||
|
||
#TRO251.stInPriorityManager.xReleaseOk := True;
|
||
|
||
#TRO251(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
nInTestTarget := "IBN".nTestTarget132,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO251,
|
||
xInConveyorRunIn := #fbSortConv1303.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1301.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4,
|
||
arInOutStorageLines := "DB_Storage1.3.2".arLine,
|
||
arInOutJamEntr := "DB_JamArea1303".stJam1303_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1303".stJam1303_1.stData,
|
||
arInOutJamExit := "DB_JamArea1301".stJam1301_2.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1301".stJam1301_2.stData,
|
||
arInOutJamBypass := "DB_JamArea1303".stJam1303_2.arCarrier,
|
||
stInOutJamBypass := "DB_JamArea1303".stJam1303_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO251,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[10],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2132"],
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTRO251"],
|
||
xOutSeparatorPin => "MB4260",
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations132);
|
||
END_REGION ;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO251.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO251.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1303".stJam1303_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Barcode Reader Out (BX2132)
|
||
"bx2132-TriggerEnable" := #arCognexInterface["cScannerBX2132"].xOutCamTriggerEnable;
|
||
"bx2132-Trigger" := #arCognexInterface["cScannerBX2132"].xOutCamTrigger;
|
||
"bx2132-ResultsAck" := #arCognexInterface["cScannerBX2132"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB4050" := #TRO251.arOutSeparatorStore[1];
|
||
"MB4051" := #TRO251.arOutSeparatorStore[2];
|
||
"MB4052" := #TRO251.arOutSeparatorStore[3];
|
||
"MB4053" := #TRO251.arOutSeparatorStore[4];
|
||
"MB4054" := #TRO251.arOutSeparatorStore[5];
|
||
"MB4055" := #TRO251.arOutSeparatorStore[6];
|
||
"MB4056" := #TRO251.arOutSeparatorStore[7];
|
||
"MB4057" := #TRO251.arOutSeparatorStore[8];
|
||
"MB4060" := #TRO251.arOutSeparatorStore[9];
|
||
"MB4061" := #TRO251.arOutSeparatorStore[10];
|
||
"MB4062" := #TRO251.arOutSeparatorStore[11];
|
||
"MB4063" := #TRO251.arOutSeparatorStore[12];
|
||
"MB4064" := #TRO251.arOutSeparatorStore[13];
|
||
"MB4065" := #TRO251.arOutSeparatorStore[14];
|
||
"MB4066" := #TRO251.arOutSeparatorStore[15];
|
||
"MB4067" := #TRO251.arOutSeparatorStore[16];
|
||
"MB4070" := #TRO251.arOutSeparatorStore[17];
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB4290" := #TRO251.arOutSwitch[1];
|
||
"MB4291" := #TRO251.arOutSwitch[2];
|
||
"MB4292" := #TRO251.arOutSwitch[3];
|
||
"MB4293" := #TRO251.arOutSwitch[4];
|
||
"MB4294" := #TRO251.arOutSwitch[5];
|
||
"MB4295" := #TRO251.arOutSwitch[6];
|
||
"MB4296" := #TRO251.arOutSwitch[7];
|
||
"MB4297" := #TRO251.arOutSwitch[8];
|
||
"MB4300" := #TRO251.arOutSwitch[9];
|
||
"MB4301" := #TRO251.arOutSwitch[10];
|
||
"MB4302" := #TRO251.arOutSwitch[11];
|
||
"MB4303" := #TRO251.arOutSwitch[12];
|
||
"MB4304" := #TRO251.arOutSwitch[13];
|
||
"MB4305" := #TRO251.arOutSwitch[14];
|
||
"MB4306" := #TRO251.arOutSwitch[15];
|
||
"MB4307" := #TRO251.arOutSwitch[16];
|
||
"MB4310" := #TRO251.arOutSwitch[17];
|
||
|
||
END_REGION
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 17 DO
|
||
IF #TRO251.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO251.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest13200" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.3.3 (TRO 254)
|
||
|
||
REGION Encoder Settings
|
||
#TRO254.stInEncoderParameter.nPosActDif := #fbEncoderGF2205.nOutPosActDif;
|
||
#TRO254.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2205.nPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO254.stInSettings.nDestGeneral := "cDest13300";
|
||
#TRO254.stInSettings.nConvStations := "cHooksSorterMaxPin133"; //Konstante todo
|
||
#TRO254.stInSettings.nStationsMax := "cStationsMax133"; // Konstante todo
|
||
#TRO254.stInSettings.nStorageThreshold := "cNoPositionsBlock3"; //Konstante todo
|
||
#TRO254.stInSettings.nNoOfLines := 21;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO254.stInSensorReference := "DB_Inputs".Sensors["cInBG4321"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader In (BX2133)
|
||
#TRO254.stInBarcodeReader.Settings.nStation := 133; // todo Konstante
|
||
#TRO254.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO254.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO254.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2133"].xInCamTriggerReady := "bx2133-TriggerReady";
|
||
#arCognexInterface["cScannerBX2133"].xInCamTriggerAck := "bx2133-TriggerAck";
|
||
#arCognexInterface["cScannerBX2133"].xInCamResultsAvailable := "bx2133-Results Available";
|
||
#arCognexInterface["cScannerBX2133"].xInCamGeneralFault := "bx2133-General Fault";
|
||
#arCognexInterface["cScannerBX2133"].hwInCamInspectionResults := "=A01+UC023-BX2133~Ergebnisse_–_64_Bytes_1";
|
||
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
|
||
REGION Pin
|
||
#TRO254.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG4320"];
|
||
#TRO254.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO254.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO254.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam1";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4110"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam2";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4111"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam3";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4112"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam4";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4113"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam5";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4114"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam6";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4115"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam7";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4116"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam8";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4117"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam9";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4120"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam10";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4121"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam11";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4122"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam12";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4123"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam13";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4124"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 14
|
||
#nActNo := 14;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam14";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4125"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 15
|
||
#nActNo := 15;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam15";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4126"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 16
|
||
#nActNo := 16;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam16";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4127"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 17
|
||
#nActNo := 17;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam17";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4130"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 18
|
||
#nActNo := 18;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam18";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4131"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 19
|
||
#nActNo := 19;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam19";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4132"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 20
|
||
#nActNo := 20;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam10";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4133"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 21
|
||
#nActNo := 21;
|
||
#TRO254.arInSep[#nActNo].stSettings.nJamLength := "cStorage133ExitJam11";
|
||
#TRO254.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4134"];
|
||
#TRO254.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO254.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO254.xInQuitLocal := "SF0245" OR "SF0237";
|
||
|
||
#TRO254.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG4350"];
|
||
|
||
#TRO254.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG4351"];
|
||
|
||
#TRO254.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG4352"];
|
||
|
||
#TRO254.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG4353"];
|
||
|
||
#TRO254.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG4354"];
|
||
|
||
#TRO254.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG4355"];
|
||
|
||
#TRO254.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG4356"];
|
||
|
||
#TRO254.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG4357"];
|
||
|
||
#TRO254.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG4360"];
|
||
|
||
#TRO254.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG4361"];
|
||
|
||
#TRO254.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG4362"];
|
||
|
||
#TRO254.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG4363"];
|
||
|
||
#TRO254.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG4364"];
|
||
|
||
#TRO254.arInJamSensor[14] := "DB_Inputs".Sensors["cInBG4365"];
|
||
|
||
#TRO254.arInJamSensor[15] := "DB_Inputs".Sensors["cInBG4366"];
|
||
|
||
#TRO254.arInJamSensor[16] := "DB_Inputs".Sensors["cInBG4367"];
|
||
|
||
#TRO254.arInJamSensor[17] := "DB_Inputs".Sensors["cInBG4370"];
|
||
|
||
#TRO254.arInJamSensor[18] := "DB_Inputs".Sensors["cInBG4371"];
|
||
|
||
#TRO254.arInJamSensor[19] := "DB_Inputs".Sensors["cInBG4372"];
|
||
|
||
#TRO254.arInJamSensor[20] := "DB_Inputs".Sensors["cInBG4373"];
|
||
|
||
#TRO254.arInJamSensor[21] := "DB_Inputs".Sensors["cInBG4374"];
|
||
|
||
END_REGION ;
|
||
|
||
REGION Aufruf: TRO254
|
||
|
||
#TRO254.stInPriorityManager.xReleaseOk := "cTodoTRUE";
|
||
|
||
#TRO254(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
nInTestTarget := "IBN".nTestTarget133,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO254,
|
||
xInConveyorRunIn := #fbSortConv1304.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1302.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4,
|
||
arInOutStorageLines := "DB_Storage1.3.3".arLine,
|
||
arInOutJamEntr := "DB_JamArea1304".stJam1304_2.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1304".stJam1304_2.stData,
|
||
arInOutJamExit := "DB_JamArea1302".stJam1302_2.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1302".stJam1302_2.stData,
|
||
arInOutJamBypass := "DB_JamArea1304".stJam1304_3.arCarrier,
|
||
stInOutJamBypass := "DB_JamArea1304".stJam1304_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO254,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[11],
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTRO254"],
|
||
xOutSeparatorPin => "MB4320",
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2133"],
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations133);
|
||
END_REGION
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO254.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO254.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1304".stJam1304_2.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Barcode Reader Out (BX2133)
|
||
"bx2133-TriggerEnable" := #arCognexInterface["cScannerBX2133"].xOutCamTriggerEnable;
|
||
"bx2133-Trigger" := #arCognexInterface["cScannerBX2133"].xOutCamTrigger;
|
||
"bx2133-ResultsAck" := #arCognexInterface["cScannerBX2133"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB4110" := #TRO254.arOutSeparatorStore[1];
|
||
"MB4111" := #TRO254.arOutSeparatorStore[2];
|
||
"MB4112" := #TRO254.arOutSeparatorStore[3];
|
||
"MB4113" := #TRO254.arOutSeparatorStore[4];
|
||
"MB4114" := #TRO254.arOutSeparatorStore[5];
|
||
"MB4115" := #TRO254.arOutSeparatorStore[6];
|
||
"MB4116" := #TRO254.arOutSeparatorStore[7];
|
||
"MB4117" := #TRO254.arOutSeparatorStore[8];
|
||
"MB4120" := #TRO254.arOutSeparatorStore[9];
|
||
"MB4121" := #TRO254.arOutSeparatorStore[10];
|
||
"MB4122" := #TRO254.arOutSeparatorStore[11];
|
||
"MB4123" := #TRO254.arOutSeparatorStore[12];
|
||
"MB4124" := #TRO254.arOutSeparatorStore[13];
|
||
"MB4125" := #TRO254.arOutSeparatorStore[14];
|
||
"MB4126" := #TRO254.arOutSeparatorStore[15];
|
||
"MB4127" := #TRO254.arOutSeparatorStore[16];
|
||
"MB4130" := #TRO254.arOutSeparatorStore[17];
|
||
"MB4131" := #TRO254.arOutSeparatorStore[18];
|
||
"MB4132" := #TRO254.arOutSeparatorStore[19];
|
||
"MB4133" := #TRO254.arOutSeparatorStore[20];
|
||
"MB4134" := #TRO254.arOutSeparatorStore[21];
|
||
END_REGION
|
||
|
||
REGION Unlaoding Stations Out
|
||
"MB4350" := #TRO254.arOutSwitch[1];
|
||
"MB4351" := #TRO254.arOutSwitch[2];
|
||
"MB4352" := #TRO254.arOutSwitch[3];
|
||
"MB4353" := #TRO254.arOutSwitch[4];
|
||
"MB4354" := #TRO254.arOutSwitch[5];
|
||
"MB4355" := #TRO254.arOutSwitch[6];
|
||
"MB4356" := #TRO254.arOutSwitch[7];
|
||
"MB4357" := #TRO254.arOutSwitch[8];
|
||
"MB4360" := #TRO254.arOutSwitch[9];
|
||
"MB4361" := #TRO254.arOutSwitch[10];
|
||
"MB4362" := #TRO254.arOutSwitch[11];
|
||
"MB4363" := #TRO254.arOutSwitch[12];
|
||
"MB4364" := #TRO254.arOutSwitch[13];
|
||
"MB4365" := #TRO254.arOutSwitch[14];
|
||
"MB4366" := #TRO254.arOutSwitch[15];
|
||
"MB4367" := #TRO254.arOutSwitch[16];
|
||
"MB4370" := #TRO254.arOutSwitch[17];
|
||
"MB4371" := #TRO254.arOutSwitch[18];
|
||
"MB4372" := #TRO254.arOutSwitch[19];
|
||
"MB4373" := #TRO254.arOutSwitch[20];
|
||
"MB4374" := #TRO254.arOutSwitch[21];
|
||
END_REGION
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 21 DO
|
||
IF #TRO254.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO254.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest13300" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION BLOCK 1.3.4 (TRO 257)
|
||
|
||
REGION Encoder Settings
|
||
#TRO257.stInEncoderParameter.nPosActDif := #fbEncoderGF2205.nOutPosActDif;
|
||
#TRO257.stInEncoderParameter.nPosPitchPart := #fbEncoderGF2205.nPosPitchPart;
|
||
END_REGION
|
||
|
||
REGION ConveyorStation Settings
|
||
#TRO257.stInSettings.nDestGeneral := "cDest13400";
|
||
#TRO257.stInSettings.nConvStations := "cHooksSorterMaxPin134"; //Konstante todo
|
||
#TRO257.stInSettings.nStationsMax := "cStationsMax134"; // Konstante todo
|
||
#TRO257.stInSettings.nStorageThreshold := "cNoPositionsBlock3"; //Konstante todo
|
||
#TRO257.stInSettings.nNoOfLines := 13;
|
||
END_REGION
|
||
|
||
REGION Pin Query / "Zappler"
|
||
#TRO257.stInSensorReference := "DB_Inputs".Sensors["cInBG4381"];
|
||
END_REGION
|
||
|
||
REGION Barcode Reader In (BX2134)
|
||
#TRO257.stInBarcodeReader.Settings.nStation := 134; // todo Konstante
|
||
#TRO257.stInBarcodeReader.Settings.nScannerPurpose := 0; // todo Konstante
|
||
#TRO257.stInBarcodeReader.Settings.tTimeout := T#5s; // todo Konstante
|
||
#TRO257.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
|
||
#arCognexInterface["cScannerBX2134"].xInCamTriggerReady := "bx2134-TriggerReady";
|
||
#arCognexInterface["cScannerBX2134"].xInCamTriggerAck := "bx2134-TriggerAck";
|
||
#arCognexInterface["cScannerBX2134"].xInCamResultsAvailable := "bx2134-Results Available";
|
||
#arCognexInterface["cScannerBX2134"].xInCamGeneralFault := "bx2134-General Fault";
|
||
#arCognexInterface["cScannerBX2134"].hwInCamInspectionResults := "=A01+UC023-BX2134~Ergebnisse_–_64_Bytes_1";
|
||
END_REGION
|
||
|
||
REGION Separator Settings
|
||
|
||
REGION Pin
|
||
#TRO257.stInSeparatorPin.stSenTrolley := "DB_Inputs".Sensors["cInBG4380"];
|
||
#TRO257.stInSeparatorPin.stSettings.tHandlingTime := T#0ms;
|
||
#TRO257.stInSeparatorPin.stSettings.tTrailingTime := T#50ms;
|
||
#TRO257.stInSeparatorPin.stSettings.xPluggedScanner := TRUE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 1
|
||
#nActNo := 1;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam1";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4170"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 2
|
||
#nActNo := 2;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam2";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4171"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 3
|
||
#nActNo := 3;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam3";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4172"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 4
|
||
#nActNo := 4;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam4";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4173"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 5
|
||
#nActNo := 5;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam5";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4174"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 6
|
||
#nActNo := 6;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam6";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4175"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 7
|
||
#nActNo := 7;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam7";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4176"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 8
|
||
#nActNo := 8;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam8";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4177"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 9
|
||
#nActNo := 9;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam9";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4180"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 10
|
||
#nActNo := 10;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam10";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4181"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 11
|
||
#nActNo := 11;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam11";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4182"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 12
|
||
#nActNo := 12;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam12";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4183"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
REGION Sep Store 13
|
||
#nActNo := 13;
|
||
#TRO257.arInSep[#nActNo].stSettings.nJamLength := "cStorage134ExitJam13";
|
||
#TRO257.arInSep[#nActNo].stSenTrolley := "DB_Inputs".Sensors["cInBG4184"];
|
||
#TRO257.arInSep[#nActNo].stSettings.tHandlingTime := "cTimeSepHandlingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.tTrailingTime := "cTimeSepTrailingStorageLine";
|
||
#TRO257.arInSep[#nActNo].stSettings.xPluggedScanner := FALSE;
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION UnloadingStations Settings
|
||
#TRO257.xInQuitLocal := "SF0247" OR "SF0237";
|
||
|
||
#TRO257.arInJamSensor[1] := "DB_Inputs".Sensors["cInBG4410"];
|
||
|
||
#TRO257.arInJamSensor[2] := "DB_Inputs".Sensors["cInBG4411"];
|
||
|
||
#TRO257.arInJamSensor[3] := "DB_Inputs".Sensors["cInBG4412"];
|
||
|
||
#TRO257.arInJamSensor[4] := "DB_Inputs".Sensors["cInBG4413"];
|
||
|
||
#TRO257.arInJamSensor[5] := "DB_Inputs".Sensors["cInBG4414"];
|
||
|
||
#TRO257.arInJamSensor[6] := "DB_Inputs".Sensors["cInBG4415"];
|
||
|
||
#TRO257.arInJamSensor[7] := "DB_Inputs".Sensors["cInBG4416"];
|
||
|
||
#TRO257.arInJamSensor[8] := "DB_Inputs".Sensors["cInBG4417"];
|
||
|
||
#TRO257.arInJamSensor[9] := "DB_Inputs".Sensors["cInBG4420"];
|
||
|
||
#TRO257.arInJamSensor[10] := "DB_Inputs".Sensors["cInBG4421"];
|
||
|
||
#TRO257.arInJamSensor[11] := "DB_Inputs".Sensors["cInBG4422"];
|
||
|
||
#TRO257.arInJamSensor[12] := "DB_Inputs".Sensors["cInBG4423"];
|
||
|
||
#TRO257.arInJamSensor[13] := "DB_Inputs".Sensors["cInBG4424"];
|
||
|
||
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION Aufruf: TRO257
|
||
#TRO257.stInPriorityManager.xReleaseOk := "cTodoTRUE";
|
||
|
||
#TRO257(xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
nInTestTarget := "IBN".nTestTarget134,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO257,
|
||
xInConveyorRunIn := #fbSortConv1304.xOutConveyorFullSpeed,
|
||
xInConveyorRunOut := #fbExitConv1302.xOutConveyorFullSpeed,
|
||
stInOutControlUnitCabinet := #stInOutControlUnitCabinetOF4,
|
||
arInOutStorageLines := "DB_Storage1.3.4".arLine,
|
||
arInOutJamEntr := "DB_JamArea1304".stJam1304_3.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1304".stJam1304_3.stData,
|
||
arInOutJamExit := "DB_JamArea1302".stJam1302_1.arCarrier,
|
||
stInOutJamExit := "DB_JamArea1302".stJam1302_1.stData,
|
||
arInOutJamBypass := #arCarrierPlaceHolder,
|
||
stInOutJamBypass := #stJamDataPlaceHolder,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO257,
|
||
stMFRStorageRemovalInterface := "DB_HandshakeStorage".Str_StorageRemoval.arrudt_StorageRemovalHandshakeTROsLvl1[12],
|
||
xOutSeparatorPin => "MB4380",
|
||
// nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTRO257"],
|
||
stCognexInterfacePin := #arCognexInterface["cScannerBX2134"],
|
||
stConveyorStations:="DB_ConveyorStations".stConveyorStations134);
|
||
END_REGION
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO257.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO257.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1304".stJam1304_3.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Barcode Reader Out (BX2134)
|
||
"bx2134-TriggerEnable" := #arCognexInterface["cScannerBX2134"].xOutCamTriggerEnable;
|
||
"bx2134-Trigger" := #arCognexInterface["cScannerBX2134"].xOutCamTrigger;
|
||
"bx2134-ResultsAck" := #arCognexInterface["cScannerBX2134"].xOutCamResultsAck;
|
||
END_REGION
|
||
|
||
REGION Separator Store Out
|
||
"MB4170" := #TRO257.arOutSeparatorStore[1];
|
||
"MB4171" := #TRO257.arOutSeparatorStore[2];
|
||
"MB4172" := #TRO257.arOutSeparatorStore[3];
|
||
"MB4173" := #TRO257.arOutSeparatorStore[4];
|
||
"MB4174" := #TRO257.arOutSeparatorStore[5];
|
||
"MB4175" := #TRO257.arOutSeparatorStore[6];
|
||
"MB4176" := #TRO257.arOutSeparatorStore[7];
|
||
"MB4177" := #TRO257.arOutSeparatorStore[8];
|
||
"MB4180" := #TRO257.arOutSeparatorStore[9];
|
||
"MB4181" := #TRO257.arOutSeparatorStore[10];
|
||
"MB4182" := #TRO257.arOutSeparatorStore[11];
|
||
"MB4183" := #TRO257.arOutSeparatorStore[12];
|
||
"MB4184" := #TRO257.arOutSeparatorStore[13];
|
||
|
||
END_REGION
|
||
|
||
REGION Unloading Stations Out
|
||
"MB4410" := #TRO257.arOutSwitch[1];
|
||
"MB4411" := #TRO257.arOutSwitch[2];
|
||
"MB4412" := #TRO257.arOutSwitch[3];
|
||
"MB4413" := #TRO257.arOutSwitch[4];
|
||
"MB4414" := #TRO257.arOutSwitch[5];
|
||
"MB4415" := #TRO257.arOutSwitch[6];
|
||
"MB4416" := #TRO257.arOutSwitch[7];
|
||
"MB4417" := #TRO257.arOutSwitch[8];
|
||
"MB4420" := #TRO257.arOutSwitch[9];
|
||
"MB4421" := #TRO257.arOutSwitch[10];
|
||
"MB4422" := #TRO257.arOutSwitch[11];
|
||
"MB4423" := #TRO257.arOutSwitch[12];
|
||
"MB4424" := #TRO257.arOutSwitch[13];
|
||
|
||
END_REGION
|
||
|
||
REGION Send Container Store Response Message (CSRespM)
|
||
FOR #nIdxUnloading := 1 TO 13 DO
|
||
IF #TRO257.arfbStationUnloadPin[#nIdxUnloading].xOutUnloadingDone THEN //1 Zyklus
|
||
"FC_Send_CSRespM"(sInPLCID := 'PLCID003',
|
||
nInBarcode := #TRO257.arfbStationUnloadPin[#nIdxUnloading].nOutBarcode,
|
||
nInLocation := "cDest13400" + #nIdxUnloading,
|
||
nReasonCode := '1',
|
||
FIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
BUFFER := "DB_Buffer_CommunicationWES_ASRS".BUFFER,
|
||
nInOutSequenceNumber:="DB_CommunicationParameters".nSeqNumWESASRS);
|
||
END_IF;
|
||
END_FOR;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION TROs
|
||
|
||
REGION TRO 200 (Vario) // Eingang von Level 2
|
||
#TRO200.stInSeparator1.Settings.nSeparatorNo := "cSep200.1";
|
||
#TRO200.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO200.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO200.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO200.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO200.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO200.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO200.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO200.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3143"];
|
||
|
||
#TRO200.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO200.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO200.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3144"]; //Finger in Pos
|
||
#TRO200.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3145"]; //MT in Pos
|
||
#TRO200.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3136"]; // Conveyor full
|
||
#TRO200.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3135"]; // Jam detector
|
||
|
||
#TRO200.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO200.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO200.stInVario.Settings.tConvEmpty := T#20000ms;
|
||
#TRO200.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO200.stInVario.Settings.tWaitForStop := t#3s;
|
||
|
||
#TRO200.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO200.stInSettings.xIsBorner := TRUE;
|
||
#TRO200(nInMainTroNo := "cMainTro200",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO200,
|
||
xInAutomatic := #t_Automatik_OF2,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0146",
|
||
arInOutJamEntr := "DB_JamArea1109".stJam1109_1.arCarrier,//Todo
|
||
stInOutJamEntr := "DB_JamArea1109".stJam1109_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1109".stJam1109_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1109".stJam1109_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO200,
|
||
xOutStopper => "MB3143",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro200"],
|
||
xOutVarioMotor => "MA0146");
|
||
|
||
REGION Übernahme von Level 2
|
||
"FB_I-Device_Receive_J1109"(xInReq := "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL_1.%X0,
|
||
stInData := "IO_Device_UH03_FROM_UH01".stCarrierL2toL1[1],
|
||
xInOutAck := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL_1.%X0);
|
||
|
||
|
||
IF "FB_I-Device_Receive_J1109".xOutNewData THEN //1 Zyklus vom Baustein
|
||
//Daten von UH03 in UH02 Jam schieben
|
||
"FC_TSHR_AddAtEnd"(stInTrolley := "FB_I-Device_Receive_J1109".stOutData,
|
||
nOutCounter => #tmpTSHRCounter,
|
||
xOutResult => #tmpTSHRResult,
|
||
arTSHR := "DB_JamArea1109".stJam1109_1.arCarrier);
|
||
END_IF;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 201 (1Sep)
|
||
#TRO201.stInSeparator1.Settings.nSeparatorNo := "cSep201.1";
|
||
#TRO201.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO201.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO201.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO201.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO201.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO201.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO201.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO201.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3134"];
|
||
#TRO201.stInSenJam2 := "DB_Inputs".Sensors["cInBG3141"];
|
||
|
||
#TRO201.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO201.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO201.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO201(nInMainTroNo := "cMainTro201",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO201,
|
||
xInCarouselRun := #fbSortConv1102.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1109".stJam1109_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1109".stJam1109_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1102".stJam1102_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1102".stJam1102_1.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO201,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro201"],
|
||
xOutStopper1 => "MB3134");
|
||
END_REGION
|
||
|
||
REGION TRO 202 (1Sep1Switch)+Scanner(BX2103)
|
||
|
||
#TRO202.stInSeparator1.Settings.nSeparatorNo := "cSep202.1";
|
||
#TRO202.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO202.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO202.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO202.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO202.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO202.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO202.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3137"];
|
||
#TRO202.stInSenJam2 := "DB_Inputs".Sensors["cInBG3123"];
|
||
#TRO202.stInSenJam3 := "DB_Inputs".Sensors["cInBG3063"];
|
||
|
||
#TRO202.stInSwitch1.Settings.nSwitchNo := "cSwi202.1";
|
||
#TRO202.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO202.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO202.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO202.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO202.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO202.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2103"].xInCamTriggerReady := "bx2103-TriggerReady";
|
||
#arCognexInterface["cScannerBX2103"].xInCamTriggerAck := "bx2103-TriggerAck";
|
||
#arCognexInterface["cScannerBX2103"].xInCamResultsAvailable := "bx2103-Results Available";
|
||
#arCognexInterface["cScannerBX2103"].xInCamGeneralFault := "bx2103-General Fault";
|
||
#arCognexInterface["cScannerBX2103"].hwInCamInspectionResults := "=A01+UH02-BX2103~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO202.stInSettings.xCar2NecRight := TRUE;
|
||
#TRO202.stInSettings.xCar2NecLeft := TRUE;
|
||
#TRO202.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO202.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
|
||
#TRO202(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO202_3.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO202_3.TroOut,
|
||
stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO202_4.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO202_4.TroOut,
|
||
nInMainTroNo := "cMainTro202",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO202,
|
||
xInCarouselRun1 := #fbSortConv1102.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbSortConv1101.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO202,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2103"],
|
||
arInOutJamEntr1 := "DB_JamArea1102".stJam1102_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1102".stJam1102_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1102".stJam1102_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1102".stJam1102_2.stData,
|
||
arInOutJamExit3 := "DB_JamArea1101".stJam1101_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1101".stJam1101_1.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro202"],
|
||
xOutStopper1 => "MB3137",
|
||
xOutSw1ExTo3 => "MB3061");
|
||
|
||
"bx2103-TriggerEnable" := #arCognexInterface["cScannerBX2103"].xOutCamTriggerEnable;
|
||
"bx2103-Trigger" := #arCognexInterface["cScannerBX2103"].xOutCamTrigger;
|
||
"bx2103-ResultsAck" := #arCognexInterface["cScannerBX2103"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO202.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO202.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1102".stJam1102_1.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi202.1",
|
||
nOutDirection => #TRO202.nInDirection,
|
||
InOutCarrier := "DB_JamArea1102".stJam1102_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 203 (1Sep1Switch) + Scanner (BX2111)
|
||
#TRO203.stInSeparator1.Settings.nSeparatorNo := "cSep203.1";
|
||
#TRO203.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO203.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO203.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO203.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO203.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO203.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO203.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3240"];
|
||
#TRO203.stInSenJam2 := "DB_Inputs".Sensors["cInBG3241"];
|
||
|
||
#TRO203.stInSwitch1.Settings.nSwitchNo := "cSwi203.1";
|
||
#TRO203.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO203.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO203.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO203.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO203.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO203.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2111"].xInCamTriggerReady := "bx2111-TriggerReady";
|
||
#arCognexInterface["cScannerBX2111"].xInCamTriggerAck := "bx2111-TriggerAck";
|
||
#arCognexInterface["cScannerBX2111"].xInCamResultsAvailable := "bx2111-Results Available";
|
||
#arCognexInterface["cScannerBX2111"].xInCamGeneralFault := "bx2111-General Fault";
|
||
#arCognexInterface["cScannerBX2111"].hwInCamInspectionResults := "=A01+UH02-BX2111~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO203.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO203.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO203.stInSettings.xPrioDir1 := FALSE;
|
||
#TRO203.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
// "DB_JamArea1103".stJam1103_1.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO203(stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO203.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO203.TroOut,
|
||
nInMainTroNo := "cMainTro203",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO203,
|
||
xInCarouselRun1 := #fbExitConv1103.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1103.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO203,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2111"],
|
||
arInOutJamEntr1 := "DB_JamArea1103".stJam1103_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1103".stJam1103_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1105".stJam1105_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1105".stJam1105_1.stData,
|
||
arInOutJamExit3 := "DB_JamArea1103".stJam1103_2.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1103".stJam1103_2.stData,
|
||
xOutStopper1 => "MB3240",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro203"],
|
||
xOutSw1ExTo3 => "MB3241");
|
||
|
||
"bx2111-TriggerEnable" := #arCognexInterface["cScannerBX2111"].xOutCamTriggerEnable;
|
||
"bx2111-Trigger" := #arCognexInterface["cScannerBX2111"].xOutCamTrigger;
|
||
"bx2111-ResultsAck" := #arCognexInterface["cScannerBX2111"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO203.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO203.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1103".stJam1103_1.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi203.1",
|
||
nOutDirection => #TRO203.nInDirection,
|
||
InOutCarrier := "DB_JamArea1103".stJam1103_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 204(1Sep1Switch) + Scanner(BX2112)
|
||
#TRO204.stInSeparator1.Settings.nSeparatorNo := "cSep204.1";
|
||
#TRO204.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO204.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO204.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO204.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO204.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO204.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO204.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3300"];
|
||
#TRO204.stInSenJam2 := "DB_Inputs".Sensors["cInBG3301"];
|
||
|
||
#TRO204.stInSwitch1.Settings.nSwitchNo := "cSwi204.1";
|
||
#TRO204.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO204.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO204.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO204.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO204.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO204.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2112"].xInCamTriggerReady := "bx2112-TriggerReady";
|
||
#arCognexInterface["cScannerBX2112"].xInCamTriggerAck := "bx2112-TriggerAck";
|
||
#arCognexInterface["cScannerBX2112"].xInCamResultsAvailable := "bx2112-Results Available";
|
||
#arCognexInterface["cScannerBX2112"].xInCamGeneralFault := "bx2112-General Fault";
|
||
#arCognexInterface["cScannerBX2112"].hwInCamInspectionResults := "=A01+UH02-BX2112~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO204.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO204.stInSettings.xCar2NecRight := TRUE;
|
||
#TRO204.stInSettings.xPrioDir1 := FALSE;
|
||
#TRO204.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
// "DB_JamArea1103".stJam1103_2.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO204(stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO204.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO204.TroOut,
|
||
nInMainTroNo := "cMainTro204",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO204,
|
||
xInCarouselRun1 := #fbExitConv1103.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1104.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO204,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2112"],
|
||
arInOutJamEntr1 := "DB_JamArea1103".stJam1103_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1103".stJam1103_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1106".stJam1106_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1106".stJam1106_1.stData,
|
||
arInOutJamExit3 := "DB_JamArea1104".stJam1104_3.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1104".stJam1104_3.stData,
|
||
xOutStopper1 => "MB3300",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro204"],
|
||
xOutSw1ExTo3 => "MB3301");
|
||
|
||
"MB3306" := TRUE;
|
||
|
||
"bx2112-TriggerEnable" := #arCognexInterface["cScannerBX2112"].xOutCamTriggerEnable;
|
||
"bx2112-Trigger" := #arCognexInterface["cScannerBX2112"].xOutCamTrigger;
|
||
"bx2112-ResultsAck" := #arCognexInterface["cScannerBX2112"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO204.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO204.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1103".stJam1103_2.arCarrier[1]);
|
||
END_REGION
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi204.1",
|
||
nOutDirection => #TRO204.nInDirection,
|
||
InOutCarrier := "DB_JamArea1103".stJam1103_2.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 205 (1Sep1Switch) + Scanner(BX2114)
|
||
#TRO205.stInSeparator1.Settings.nSeparatorNo := "cSep205.1";
|
||
#TRO205.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO205.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO205.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO205.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO205.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO205.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO205.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3420"];
|
||
#TRO205.stInSenJam3 := "DB_Inputs".Sensors["cInBG3421"];
|
||
|
||
#TRO205.stInSwitch1.Settings.nSwitchNo := "cSwi205.1";
|
||
#TRO205.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO205.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO205.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO205.stInSwitch1.Settings.nTo1Destinations := 4; //Info nötig für HMI
|
||
|
||
#TRO205.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO205.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2114"].xInCamTriggerReady := "bx2114-TriggerReady";
|
||
#arCognexInterface["cScannerBX2114"].xInCamTriggerAck := "bx2114-TriggerAck";
|
||
#arCognexInterface["cScannerBX2114"].xInCamResultsAvailable := "bx2114-Results Available";
|
||
#arCognexInterface["cScannerBX2114"].xInCamGeneralFault := "bx2114-General Fault";
|
||
#arCognexInterface["cScannerBX2114"].hwInCamInspectionResults := "=A01+UH02-BX2114~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO205.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO205.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO205.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO205.stInSettings.xPrioDir2 := FALSE;
|
||
|
||
// "DB_JamArea1104".stJam1104_1.arCarrier[1].nDestination := 11402;
|
||
|
||
#TRO205(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO205.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO205.TroOut,
|
||
nInMainTroNo := "cMainTro205",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO205,
|
||
xInCarouselRun1 := #fbExitConv1104.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1104.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO205,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2114"],
|
||
arInOutJamEntr1 := "DB_JamArea1104".stJam1104_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1104".stJam1104_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1104".stJam1104_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1104".stJam1104_2.stData,
|
||
arInOutJamExit3 := "DB_JamArea1108".stJam1108_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1108".stJam1108_1.stData,
|
||
xOutStopper1 => "MB3420",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro205"],
|
||
xOutSw1ExTo4 => "MB3421");
|
||
|
||
"bx2114-TriggerEnable" := #arCognexInterface["cScannerBX2114"].xOutCamTriggerEnable;
|
||
"bx2114-Trigger" := #arCognexInterface["cScannerBX2114"].xOutCamTrigger;
|
||
"bx2114-ResultsAck" := #arCognexInterface["cScannerBX2114"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO205.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO205.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1104".stJam1104_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi205.1",
|
||
nOutDirection => #TRO205.nInDirection,
|
||
InOutCarrier := "DB_JamArea1104".stJam1104_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION TRO 206 (1Sep1Switch)+Scanner(BX2113)
|
||
#TRO206.stInSeparator1.Settings.nSeparatorNo := "cSep206.1";
|
||
#TRO206.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO206.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO206.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO206.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO206.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO206.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO206.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3360"];
|
||
#TRO206.stInSenJam3 := "DB_Inputs".Sensors["cInBG3361"];
|
||
|
||
#TRO206.stInSwitch1.Settings.nSwitchNo := "cSwi206.1";
|
||
#TRO206.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO206.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO206.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO206.stInSwitch1.Settings.nTo1Destinations := 4; //Info nötig für HMI
|
||
|
||
#TRO206.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO206.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2113"].xInCamTriggerReady := "bx2113-TriggerReady";
|
||
#arCognexInterface["cScannerBX2113"].xInCamTriggerAck := "bx2113-TriggerAck";
|
||
#arCognexInterface["cScannerBX2113"].xInCamResultsAvailable := "bx2113-Results Available";
|
||
#arCognexInterface["cScannerBX2113"].xInCamGeneralFault := "bx2113-General Fault";
|
||
#arCognexInterface["cScannerBX2113"].hwInCamInspectionResults := "=A01+UH02-BX2113~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO206.stInSettings.xCar2NecLeft := TRUE;
|
||
#TRO206.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO206.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO206.stInSettings.xPrioDir2 := FALSE;
|
||
|
||
// "DB_JamArea1104".stJam1104_2.arCarrier[1].nDestination := 11302;
|
||
|
||
#TRO206(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO206.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO206.TroOut,
|
||
nInMainTroNo := "cMainTro206",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO206,
|
||
xInCarouselRun1 := #fbExitConv1104.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1103.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO206,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2113"],//Todo
|
||
arInOutJamEntr1 := "DB_JamArea1104".stJam1104_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1104".stJam1104_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1104".stJam1104_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1104".stJam1104_3.stData,
|
||
arInOutJamExit3 := "DB_JamArea1107".stJam1107_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1107".stJam1107_1.stData,
|
||
xOutStopper1 => "MB3360",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro206"],
|
||
xOutSw1ExTo4 => "MB3361");
|
||
|
||
"bx2113-TriggerEnable" := #arCognexInterface["cScannerBX2113"].xOutCamTriggerEnable;
|
||
"bx2113-Trigger" := #arCognexInterface["cScannerBX2113"].xOutCamTrigger;
|
||
"bx2113-ResultsAck" := #arCognexInterface["cScannerBX2113"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO206.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO206.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1104".stJam1104_2.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi206.1",
|
||
nOutDirection => #TRO206.nInDirection,
|
||
InOutCarrier := "DB_JamArea1104".stJam1104_2.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 207(1Sep)
|
||
#TRO207.stInSeparator1.Settings.nSeparatorNo := "cSep207.1";
|
||
#TRO207.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO207.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO207.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO207.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO207.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO207.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO207.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO207.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3425"];
|
||
#TRO207.stInSenJam2 := "DB_Inputs".Sensors["cInBG3431"];
|
||
|
||
#TRO207.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam2109.Config.nCapacitySet := 1; //
|
||
|
||
#TRO207(nInMainTroNo := "cMainTro207",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO207 AND ("IO_Device_UH02_TO_UH01".stCARRIER_INFO[1].nBarcode = 0), //zwecks Übergabe warten bis UH03 Daten abgeholt hat
|
||
xInCarouselRun := #fbExitConv1104.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1104".stJam1104_3.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1104".stJam1104_3.stData,
|
||
arInOutJamExit2 := "IO_Device_UH02_TO_UH01".stCARRIER_INFO, //Daten#arCarrierHandoverJam2109,
|
||
stInOutJamExit2 := #stJamDataHandoverJam2109,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO207,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro207"],
|
||
xOutStopper1 => "MB3425");
|
||
|
||
"MB3426" := True;
|
||
|
||
REGION Übergabe an Level 2
|
||
//todo: sicherstellen das UH03 ready ist, ansonsten sollte UH02 warten...
|
||
"FB_I-Device_SendCarrier_J2109"(xInTrigger := (#TRO207.nState = 2500) AND #TRO207.fbSeparator1.xOutTrolleyReleasedEdge, //Trigger
|
||
xInAck := "IO_Device_UH02_FROM_UH01".bCARRIER_CONTROL_1.%X3, //von Empfänger
|
||
stInOutData := "IO_Device_UH02_TO_UH01".stCARRIER_INFO[1], //Daten
|
||
xOutReq := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL_1.%X3); //an Empfänger
|
||
END_REGION
|
||
|
||
END_REGION ;
|
||
|
||
REGION TRO 209 (Vario)
|
||
|
||
#TRO209.stInSeparator1.Settings.nSeparatorNo := "cSep209.1";
|
||
#TRO209.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO209.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO209.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO209.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO209.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO209.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO209.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO209.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3244"];
|
||
|
||
#TRO209.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO209.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO209.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO209.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO209.stInVario.Settings.tConvEmpty := T#30000ms;
|
||
#TRO209.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO209.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO209.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3243"]; //Pusher Dog in Pos
|
||
#TRO209.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3006"]; // Conveyor full
|
||
#TRO209.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3005"]; // Jam detector
|
||
#TRO209.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3247"]; // MT in Pos
|
||
|
||
#TRO209.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO209(nInMainTroNo := "cMainTro209",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF2 AND "SF0120" AND "SF0040",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0041" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0142",
|
||
xInRelease := "DB_TRO_Test".TRO209,
|
||
arInOutJamEntr := "DB_JamArea1105".stJam1105_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1105".stJam1105_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1105".stJam1105_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1105".stJam1105_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO209,
|
||
xOutStopper => "MB3244",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro209"],
|
||
xOutVarioMotor => "MA0142");
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 210 (1Sep)
|
||
|
||
#TRO210.stInSeparator1.Settings.nSeparatorNo := "cSep210.1";
|
||
#TRO210.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO210.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO210.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO210.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO210.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO210.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO210.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO210.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO210.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3004"];
|
||
#TRO210.stInSenJam2 := "DB_Inputs".Sensors["cInBG3003"];
|
||
|
||
#TRO210.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO210.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO210(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO210.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO210.TroOut,
|
||
nInMainTroNo := "cMainTro210",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO210,
|
||
xInCarouselRun := #fbSortConv1101.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1105".stJam1105_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1105".stJam1105_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1101".stJam1101_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1101".stJam1101_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO210,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro210"],
|
||
xOutStopper1 => "MB3004");
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 212 (Vario)
|
||
|
||
#TRO212.stInSeparator1.Settings.nSeparatorNo := "cSep212.1";
|
||
#TRO212.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO212.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO212.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO212.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO212.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO212.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO212.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO212.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3304"];
|
||
|
||
#TRO212.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO212.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO212.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3303"]; //Pusher Dog in Pos
|
||
#TRO212.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3066"]; // Conveyor full
|
||
#TRO212.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3065"]; // Jam detector
|
||
#TRO212.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3307"]; // MT in Pos
|
||
|
||
#TRO212.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO212.stInVario.Settings.tWaitForJog := T#50ms;//T#400ms;
|
||
#TRO212.stInVario.Settings.tConvEmpty := T#30000ms;
|
||
#TRO212.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO212.stInVario.Settings.tWaitForStop := T#3s; //NUR FÜR TESTMODUS, Im Normalbetrieb auskommentieren!
|
||
|
||
#TRO212.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO212(nInMainTroNo := "cMainTro212",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF2 AND "SF0122" AND "SF0042",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0043" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0143",
|
||
xInRelease := "DB_TRO_Test".TRO212,
|
||
arInOutJamEntr := "DB_JamArea1106".stJam1106_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1106".stJam1106_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1106".stJam1106_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1106".stJam1106_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO212,
|
||
xOutStopper => "MB3304",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro212"],
|
||
xOutVarioMotor => "MA0143");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 213 (1Sep)
|
||
#TRO213.stInSeparator1.Settings.nSeparatorNo := "cSep213.1";
|
||
#TRO213.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO213.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO213.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO213.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO213.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO213.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO213.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO213.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO213.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3064"];
|
||
#TRO213.stInSenJam2 := "DB_Inputs".Sensors["cInBG3063"];
|
||
|
||
#TRO213.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO213.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO213(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO213.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO213.TroOut,
|
||
nInMainTroNo := "cMainTro213",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO213,
|
||
xInCarouselRun := #fbSortConv1101.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1106".stJam1106_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1106".stJam1106_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1101".stJam1101_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1101".stJam1101_1.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO213,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro213"],
|
||
xOutStopper1 => "MB3064");
|
||
END_REGION
|
||
|
||
REGION TRO 215 (Vario)
|
||
|
||
#TRO215.stInSeparator1.Settings.nSeparatorNo := "cSep215.1";
|
||
#TRO215.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO215.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO215.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO215.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO215.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO215.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO215.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO215.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3364"];
|
||
|
||
#TRO215.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO215.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO215.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3363"]; //Pusher Dog in Pos
|
||
#TRO215.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3126"]; // Conveyor full
|
||
#TRO215.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3125"]; // Jam detector
|
||
#TRO215.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3367"]; // MT in Pos
|
||
|
||
#TRO215.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO215.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO215.stInVario.Settings.tConvEmpty := T#30000ms;
|
||
#TRO215.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO215.stInVario.Settings.tWaitForStop := T#3s; //NUR FÜR TESTMODUS, Im Normalbetrieb auskommentieren!
|
||
|
||
#TRO215.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO215(nInMainTroNo := "cMainTro215",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF2 AND "SF0124" AND "SF0044",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0045" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0144",
|
||
xInRelease := "DB_TRO_Test".TRO215,
|
||
arInOutJamEntr := "DB_JamArea1107".stJam1107_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1107".stJam1107_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1107".stJam1107_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1107".stJam1107_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO215,
|
||
xOutStopper => "MB3364",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro215"],
|
||
xOutVarioMotor => "MA0144");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 216 (1Sep)
|
||
#TRO216.stInSeparator1.Settings.nSeparatorNo := "cSep216.1";
|
||
#TRO216.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO216.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO216.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO216.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO216.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO216.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO216.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO216.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO216.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3124"];
|
||
#TRO216.stInSenJam2 := "DB_Inputs".Sensors["cInBG3123"];
|
||
|
||
#TRO216.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO216.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO216(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO216.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO216.TroOut,
|
||
nInMainTroNo := "cMainTro216",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO216,
|
||
xInCarouselRun := #fbSortConv1102.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1107".stJam1107_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1107".stJam1107_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1102".stJam1102_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1102".stJam1102_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO216,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro216"],
|
||
xOutStopper1 => "MB3124");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 218 (Vario)
|
||
|
||
#TRO218.stInSeparator1.Settings.nSeparatorNo := "cSep218.1";
|
||
#TRO218.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO218.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO218.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO218.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO218.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO218.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO218.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO218.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3424"];
|
||
|
||
#TRO218.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO218.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO218.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3423"]; //Pusher Dog in Pos
|
||
#TRO218.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3186"]; // Conveyor full
|
||
#TRO218.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3185"]; // Jam detector
|
||
#TRO218.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3427"]; // MT in Pos
|
||
|
||
#TRO218.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO218.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO218.stInVario.Settings.tConvEmpty := T#30000ms;
|
||
#TRO218.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO218.stInVario.Settings.tWaitForStop := T#3s; //NUR FÜR TESTMODUS,
|
||
|
||
#TRO218.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO218(nInMainTroNo := "cMainTro218",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF2 AND "SF0126" AND "SF0046",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0047" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0145",
|
||
xInRelease := "DB_TRO_Test".TRO218,
|
||
arInOutJamEntr := "DB_JamArea1108".stJam1108_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1108".stJam1108_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1108".stJam1108_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1108".stJam1108_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO218,
|
||
xOutStopper => "MB3424",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro218"],
|
||
xOutVarioMotor => "MA0145");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 219(1Sep)
|
||
#TRO219.stInSeparator1.Settings.nSeparatorNo := "cSep219.1";
|
||
#TRO219.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO219.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO219.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO219.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO219.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO219.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO219.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO219.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO219.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3184"];
|
||
#TRO219.stInSenJam2 := "DB_Inputs".Sensors["cInBG3183"];
|
||
|
||
#TRO219.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO219.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO219.stInSettings.bSepType.%X6 := TRUE;
|
||
|
||
#TRO219(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO219.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO219.TroOut,
|
||
nInMainTroNo := "cMainTro219",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF2.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO219,
|
||
xInCarouselRun := #fbSortConv1102.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF2,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1108".stJam1108_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1108".stJam1108_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1102".stJam1102_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1102".stJam1102_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO219,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro219"],
|
||
xOutStopper1 => "MB3184");
|
||
END_REGION
|
||
|
||
//Section 1.1 ENDE
|
||
|
||
REGION TRO 220 (Vario) // Eingang von Level 2
|
||
#TRO220.stInSeparator1.Settings.nSeparatorNo := "cSep220.1";
|
||
#TRO220.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO220.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO220.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO220.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO220.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO220.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO220.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO220.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3622"];
|
||
|
||
#TRO220.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO220.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO220.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3623"]; //Finger in Pos
|
||
#TRO220.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3624"]; //MT in Pos
|
||
#TRO220.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3616"]; // Conveyor full
|
||
#TRO220.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3615"]; // Jam detector
|
||
|
||
#TRO220.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO220.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO220.stInVario.Settings.tConvEmpty := T#20000ms;
|
||
#TRO220.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO220.stInVario.Settings.tWaitForStop := t#3s;
|
||
|
||
#TRO220.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
// #TRO220.stInSettings.xIsBorner := TRUE;
|
||
#TRO220(nInMainTroNo := "cMainTro220",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO220,
|
||
xInAutomatic := #t_Automatik_OF1,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0070",
|
||
arInOutJamEntr := "DB_JamArea1209".stJam1209_1.arCarrier,//Todo
|
||
stInOutJamEntr := "DB_JamArea1209".stJam1209_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1209".stJam1209_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1209".stJam1209_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO220,
|
||
xOutStopper => "MB3622",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro220"],
|
||
xOutVarioMotor => "MA0070");
|
||
|
||
REGION Übernahme von Level 2
|
||
"FB_I-Device_Receive_J1209"(xInReq := "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL_1.%X1,
|
||
stInData := "IO_Device_UH03_FROM_UH01".stCarrierL2toL1_2[1],
|
||
xInOutAck := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL_1.%X1);
|
||
|
||
|
||
IF "FB_I-Device_Receive_J1209".xOutNewData THEN //1 Zyklus vom Baustein
|
||
//Daten von UH03 in UH02 Jam schieben
|
||
"FC_TSHR_AddAtEnd"(stInTrolley := "FB_I-Device_Receive_J1209".stOutData,
|
||
nOutCounter => #tmpTSHRCounter,
|
||
xOutResult => #tmpTSHRResult,
|
||
arTSHR := "DB_JamArea1209".stJam1209_1.arCarrier);
|
||
END_IF;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 221 (1Sep)
|
||
#TRO221.stInSeparator1.Settings.nSeparatorNo := "cSep221.1";
|
||
#TRO221.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO221.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO221.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO221.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO221.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO221.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO221.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO221.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3614"];
|
||
#TRO221.stInSenJam2 := "DB_Inputs".Sensors["cInBG3621"];
|
||
|
||
#TRO221.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO221.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO221.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO221(nInMainTroNo := "cMainTro221",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO221,
|
||
xInCarouselRun := #fbSortConv1202.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1209".stJam1209_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1209".stJam1209_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1202".stJam1202_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1202".stJam1202_1.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO221,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro221"],
|
||
xOutStopper1 => "MB3614");
|
||
END_REGION
|
||
|
||
REGION TRO 222 (1Sep1Switch)+Scanner(BX2121)
|
||
#TRO222.stInSeparator1.Settings.nSeparatorNo := "cSep222.1";
|
||
#TRO222.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO222.stInSeparator1.Settings.tTrailingTime := t#0ms;
|
||
#TRO222.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO222.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO222.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO222.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO222.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3617"];
|
||
#TRO222.stInSenJam2 := "DB_Inputs".Sensors["cInBG3603"];
|
||
#TRO222.stInSenJam3 := "DB_Inputs".Sensors["cInBG3543"];
|
||
|
||
#TRO222.stInSwitch1.Settings.nSwitchNo := "cSwi222.1";
|
||
#TRO222.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO222.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO222.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO222.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO222.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO222.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2121"].xInCamTriggerReady := "bx2121-TriggerReady";
|
||
#arCognexInterface["cScannerBX2121"].xInCamTriggerAck := "bx2121-TriggerAck";
|
||
#arCognexInterface["cScannerBX2121"].xInCamResultsAvailable := "bx2121-Results Available";
|
||
#arCognexInterface["cScannerBX2121"].xInCamGeneralFault := "bx2121-General Fault";
|
||
#arCognexInterface["cScannerBX2121"].hwInCamInspectionResults := "=A01+UH02-BX2121~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO222.stInSettings.xCar2NecRight := TRUE;
|
||
#TRO222.stInSettings.xCar2NecLeft := TRUE;
|
||
#TRO222.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO222.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
#TRO222(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO222_3.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO222_3.TroOut,
|
||
stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO222_4.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO222_4.TroOut,
|
||
nInMainTroNo := "cMainTro222",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO222,
|
||
xInCarouselRun1 := #fbSortConv1202.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbSortConv1201.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO222,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2121"],
|
||
arInOutJamEntr1 := "DB_JamArea1202".stJam1202_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1202".stJam1202_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1202".stJam1202_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1202".stJam1202_2.stData,
|
||
arInOutJamExit3 := "DB_JamArea1201".stJam1201_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1201".stJam1201_1.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro222"],
|
||
xOutStopper1 => "MB3617",
|
||
xOutSw1ExTo3 => "MB3541");
|
||
|
||
"bx2121-TriggerEnable" := #arCognexInterface["cScannerBX2121"].xOutCamTriggerEnable;
|
||
"bx2121-Trigger" := #arCognexInterface["cScannerBX2121"].xOutCamTrigger;
|
||
"bx2121-ResultsAck" := #arCognexInterface["cScannerBX2121"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO222.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO222.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1202".stJam1202_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi222.1",
|
||
nOutDirection => #TRO222.nInDirection,
|
||
InOutCarrier := "DB_JamArea1202".stJam1202_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 223 (1Sep1Switch)+Scanner(BX2126)
|
||
#TRO223.stInSeparator1.Settings.nSeparatorNo := "cSep223.1";
|
||
#TRO223.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO223.stInSeparator1.Settings.tTrailingTime := t#0ms;
|
||
#TRO223.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO223.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO223.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO223.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO223.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3720"];
|
||
#TRO223.stInSenJam2 := "DB_Inputs".Sensors["cInBG3721"];
|
||
|
||
#TRO223.stInSwitch1.Settings.nSwitchNo := "cSwi223.1";
|
||
#TRO223.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO223.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO223.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO223.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO223.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO223.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2126"].xInCamTriggerReady := "bx2126-TriggerReady";
|
||
#arCognexInterface["cScannerBX2126"].xInCamTriggerAck := "bx2126-TriggerAck";
|
||
#arCognexInterface["cScannerBX2126"].xInCamResultsAvailable := "bx2126-Results Available";
|
||
#arCognexInterface["cScannerBX2126"].xInCamGeneralFault := "bx2126-General Fault";
|
||
#arCognexInterface["cScannerBX2126"].hwInCamInspectionResults := "=A01+UC022-BX2126~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO223.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO223.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO223.stInSettings.xPrioDir1 := FALSE;
|
||
#TRO223.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
// "DB_JamArea1203".stJam1203_1.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO223(stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO223.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO223.TroOut,
|
||
nInMainTroNo := "cMainTro223",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO223,
|
||
xInCarouselRun1 := #fbExitConv1203.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1203.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO223,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2126"],
|
||
arInOutJamEntr1 := "DB_JamArea1203".stJam1203_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1203".stJam1203_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1205".stJam1205_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1205".stJam1205_1.stData,
|
||
arInOutJamExit3 := "DB_JamArea1203".stJam1203_2.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1203".stJam1203_2.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro223"],
|
||
xOutStopper1 => "MB3720",
|
||
xOutSw1ExTo3 => "MB3721");
|
||
|
||
"bx2126-TriggerEnable" := #arCognexInterface["cScannerBX2126"].xOutCamTriggerEnable;
|
||
"bx2126-Trigger" := #arCognexInterface["cScannerBX2126"].xOutCamTrigger;
|
||
"bx2126-ResultsAck" := #arCognexInterface["cScannerBX2126"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO223.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO223.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1203".stJam1203_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi223.1",
|
||
nOutDirection => #TRO223.nInDirection,
|
||
InOutCarrier := "DB_JamArea1203".stJam1203_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 224 (1Sep1Switch)+Scanner(BX2127)
|
||
#TRO224.stInSeparator1.Settings.nSeparatorNo := "cSep224.1";
|
||
#TRO224.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO224.stInSeparator1.Settings.tTrailingTime := t#0ms;
|
||
#TRO224.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO224.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO224.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO224.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO224.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3780"];
|
||
#TRO224.stInSenJam2 := "DB_Inputs".Sensors["cInBG3781"];
|
||
#TRO224.stInSenJam3 := "DB_Inputs".Sensors["cInBG3847"];
|
||
|
||
#TRO224.stInSwitch1.Settings.nSwitchNo := "cSwi224.1";
|
||
#TRO224.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO224.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO224.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO224.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO224.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO224.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2127"].xInCamTriggerReady := "bx2127-TriggerReady";
|
||
#arCognexInterface["cScannerBX2127"].xInCamTriggerAck := "bx2127-TriggerAck";
|
||
#arCognexInterface["cScannerBX2127"].xInCamResultsAvailable := "bx2127-Results Available";
|
||
#arCognexInterface["cScannerBX2127"].xInCamGeneralFault := "bx2127-General Fault";
|
||
#arCognexInterface["cScannerBX2127"].hwInCamInspectionResults := "=A01+UC022-BX2127~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO224.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO224.stInSettings.xCar2NecRight := TRUE;
|
||
#TRO224.stInSettings.xPrioDir1 := FALSE;
|
||
#TRO224.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
// "DB_JamArea1203".stJam1203_2.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO224(stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO224.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO224.TroOut,
|
||
nInMainTroNo := "cMainTro224",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO224,
|
||
xInCarouselRun1 := #fbExitConv1203.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1204.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO224,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2127"],
|
||
arInOutJamEntr1 := "DB_JamArea1203".stJam1203_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1203".stJam1203_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1206".stJam1206_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1206".stJam1206_1.stData,
|
||
arInOutJamExit3 := "DB_JamArea1204".stJam1204_3.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1204".stJam1204_3.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro224"],
|
||
xOutStopper1 => "MB3780",
|
||
xOutSw1ExTo3 => "MB3781");
|
||
|
||
"bx2127-TriggerEnable" := #arCognexInterface["cScannerBX2127"].xOutCamTriggerEnable;
|
||
"bx2127-Trigger" := #arCognexInterface["cScannerBX2127"].xOutCamTrigger;
|
||
"bx2127-ResultsAck" := #arCognexInterface["cScannerBX2127"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO224.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO224.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1203".stJam1203_2.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi224.1",
|
||
nOutDirection => #TRO224.nInDirection,
|
||
InOutCarrier := "DB_JamArea1203".stJam1203_2.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 225(1Sep1Switch)+Scanner(BX2129)
|
||
#TRO225.stInSeparator1.Settings.nSeparatorNo := "cSep225.1";
|
||
#TRO225.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO225.stInSeparator1.Settings.tTrailingTime := t#0ms;
|
||
#TRO225.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO225.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO225.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO225.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO225.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3900"];
|
||
#TRO225.stInSenJam3 := "DB_Inputs".Sensors["cInBG3901"];
|
||
|
||
#TRO225.stInSwitch1.Settings.nSwitchNo := "cSwi225.1";
|
||
#TRO225.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO225.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO225.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO225.stInSwitch1.Settings.nTo1Destinations := 4; //Info nötig für HMI
|
||
|
||
#TRO225.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO225.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2129"].xInCamTriggerReady := "bx2129-TriggerReady";
|
||
#arCognexInterface["cScannerBX2129"].xInCamTriggerAck := "bx2129-TriggerAck";
|
||
#arCognexInterface["cScannerBX2129"].xInCamResultsAvailable := "bx2129-Results Available";
|
||
#arCognexInterface["cScannerBX2129"].xInCamGeneralFault := "bx2129-General Fault";
|
||
#arCognexInterface["cScannerBX2129"].hwInCamInspectionResults := "=A01+UC022-BX2129~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO225.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO225.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO225.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO225.stInSettings.xPrioDir2 := FALSE;
|
||
|
||
// "DB_JamArea1204".stJam1204_1.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO225(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO225.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO225.TroOut,
|
||
nInMainTroNo := "cMainTro225",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO225,
|
||
xInCarouselRun1 := #fbExitConv1204.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1204.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO225,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2129"],
|
||
arInOutJamEntr1 := "DB_JamArea1204".stJam1204_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1204".stJam1204_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1204".stJam1204_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1204".stJam1204_2.stData,
|
||
arInOutJamExit3 := "DB_JamArea1208".stJam1208_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1208".stJam1208_1.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro225"],
|
||
xOutStopper1 => "MB3900",
|
||
xOutSw1ExTo4 => "MB3901");
|
||
|
||
"bx2129-TriggerEnable" := #arCognexInterface["cScannerBX2129"].xOutCamTriggerEnable;
|
||
"bx2129-Trigger" := #arCognexInterface["cScannerBX2129"].xOutCamTrigger;
|
||
"bx2129-ResultsAck" := #arCognexInterface["cScannerBX2129"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO225.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO225.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1204".stJam1204_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi225.1",
|
||
nOutDirection => #TRO225.nInDirection,
|
||
InOutCarrier := "DB_JamArea1204".stJam1204_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 226 (1Sep1Switch)+Scanner(BX2128)
|
||
#TRO226.stInSeparator1.Settings.nSeparatorNo := "cSep226.1";
|
||
#TRO226.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO226.stInSeparator1.Settings.tTrailingTime := t#0ms;
|
||
#TRO226.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO226.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO226.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO226.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO226.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3840"];
|
||
#TRO226.stInSenJam2 := "DB_Inputs".Sensors["cInBG3847"];
|
||
#TRO226.stInSenJam3 := "DB_Inputs".Sensors["cInBG3841"];
|
||
|
||
#TRO226.stInSwitch1.Settings.nSwitchNo := "cSwi226.1";
|
||
#TRO226.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO226.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO226.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO226.stInSwitch1.Settings.nTo1Destinations := 4; //Info nötig für HMI
|
||
|
||
#TRO226.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO226.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2128"].xInCamTriggerReady := "bx2128-TriggerReady";
|
||
#arCognexInterface["cScannerBX2128"].xInCamTriggerAck := "bx2128-TriggerAck";
|
||
#arCognexInterface["cScannerBX2128"].xInCamResultsAvailable := "bx2128-Results Available";
|
||
#arCognexInterface["cScannerBX2128"].xInCamGeneralFault := "bx2128-General Fault";
|
||
#arCognexInterface["cScannerBX2128"].hwInCamInspectionResults := "=A01+UC022-BX2128~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO226.stInSettings.xCar2NecLeft := TRUE;
|
||
#TRO226.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO226.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO226.stInSettings.xPrioDir2 := FALSE;
|
||
|
||
// "DB_JamArea1204".stJam1204_2.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO226(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO226.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO226.TroOut,
|
||
nInMainTroNo := "cMainTro226",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO226,
|
||
xInCarouselRun1 := #fbExitConv1204.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1203.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO226,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2128"],
|
||
arInOutJamEntr1 := "DB_JamArea1204".stJam1204_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1204".stJam1204_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1204".stJam1204_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1204".stJam1204_3.stData,
|
||
arInOutJamExit3 := "DB_JamArea1207".stJam1207_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1207".stJam1207_1.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro226"],
|
||
xOutStopper1 => "MB3840",
|
||
xOutSw1ExTo4 => "MB3841");
|
||
|
||
"MB3786" := TRUE;
|
||
|
||
"bx2128-TriggerEnable" := #arCognexInterface["cScannerBX2128"].xOutCamTriggerEnable;
|
||
"bx2128-Trigger" := #arCognexInterface["cScannerBX2128"].xOutCamTrigger;
|
||
"bx2128-ResultsAck" := #arCognexInterface["cScannerBX2128"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO226.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO226.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1204".stJam1204_2.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi226.1",
|
||
nOutDirection => #TRO226.nInDirection,
|
||
InOutCarrier := "DB_JamArea1204".stJam1204_2.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 227 (1Sep)
|
||
#TRO227.stInSeparator1.Settings.nSeparatorNo := "cSep227.1";
|
||
#TRO227.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO227.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO227.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO227.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO227.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO227.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO227.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO227.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3905"];
|
||
#TRO227.stInSenJam2 := "DB_Inputs".Sensors["cInBG3910"];
|
||
|
||
#TRO227.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam2209.Config.nCapacitySet := 1;
|
||
|
||
#TRO227(nInMainTroNo := "cMainTro227",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO227 AND ("IO_Device_UH02_TO_UH01".stCARRIER_INFO_1[1].nBarcode = 0), //zwecks Übergabe warten bis UH03 Daten abgeholt hat
|
||
xInCarouselRun := #fbExitConv1204.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1204".stJam1204_3.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1204".stJam1204_3.stData,
|
||
arInOutJamExit2 := "IO_Device_UH02_TO_UH01".stCARRIER_INFO_1, //Daten#arCarrierHandoverJam2209,
|
||
stInOutJamExit2 := #stJamDataHandoverJam2209,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO227,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro227"],
|
||
xOutStopper1 => "MB3905");
|
||
|
||
"MB3906" := TRUE;
|
||
|
||
REGION Übergabe an Level 2
|
||
//todo: sicherstellen das UH03 ready ist, ansonsten sollte UH02 warten...
|
||
"FB_I-Device_SendCarrier_J2209"(xInTrigger := (#TRO227.nState = 2500) AND #TRO227.fbSeparator1.xOutTrolleyReleasedEdge, //Trigger
|
||
xInAck := "IO_Device_UH02_FROM_UH01".bCARRIER_CONTROL_1.%X4, //von Empfänger
|
||
stInOutData := "IO_Device_UH02_TO_UH01".stCARRIER_INFO_1[1], //Daten
|
||
xOutReq := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL_1.%X4); //an Empfänger
|
||
END_REGION
|
||
END_REGION ;
|
||
|
||
REGION TRO 229 (Vario)
|
||
|
||
#TRO229.stInSeparator1.Settings.nSeparatorNo := "cSep229.1";
|
||
#TRO229.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO229.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO229.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO229.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO229.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO229.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO229.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO229.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3724"];
|
||
|
||
#TRO229.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO229.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO229.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3723"]; // Finger in Pos
|
||
#TRO229.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3727"]; //Mt in Pos
|
||
#TRO229.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3486"]; // Conveyor full
|
||
#TRO229.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3485"]; // Jam detector
|
||
|
||
#TRO229.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO229.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO229.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO229.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO229.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO229.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#TRO229(nInMainTroNo := "cMainTro229",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO229,
|
||
xInAutomatic := #t_Automatik_OF1 AND "SF0180" AND "SF0050",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0181" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0064",
|
||
arInOutJamEntr := "DB_JamArea1205".stJam1205_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1205".stJam1205_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1205".stJam1205_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1205".stJam1205_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO229,
|
||
xOutStopper => "MB3724",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro229"],
|
||
xOutVarioMotor => "MA0064");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 230 (1Sep)
|
||
#TRO230.stInSeparator1.Settings.nSeparatorNo := "cSep230.1";
|
||
#TRO230.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO230.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO230.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO230.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO230.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO230.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO230.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO230.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO230.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3484"];
|
||
#TRO230.stInSenJam2 := "DB_Inputs".Sensors["cInBG3483"];
|
||
|
||
#TRO230.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO230.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO230(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO230.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO230.TroOut,
|
||
nInMainTroNo := "cMainTro230",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO230,
|
||
xInCarouselRun := #fbSortConv1201.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1205".stJam1205_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1205".stJam1205_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1201".stJam1201_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1201".stJam1201_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO230,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro230"],
|
||
xOutStopper1 => "MB3484");
|
||
|
||
END_REGION
|
||
REGION TRO 232 (Vario)
|
||
|
||
#TRO232.stInSeparator1.Settings.nSeparatorNo := "cSep232.1";
|
||
#TRO232.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO232.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO232.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO232.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO232.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO232.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO232.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO232.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3784"];
|
||
|
||
#TRO232.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO232.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO232.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3783"]; //Finger in Pos
|
||
#TRO232.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3787"];
|
||
#TRO232.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3546"]; // Conveyor full
|
||
#TRO232.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3545"]; // Jam detector
|
||
|
||
#TRO232.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO232.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO232.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO232.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO232.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO232.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#TRO232(nInMainTroNo := "cMainTro232",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO232,
|
||
xInAutomatic := #t_Automatik_OF1 AND "SF0182" AND "SF0052",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0183" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0065",
|
||
arInOutJamEntr := "DB_JamArea1206".stJam1206_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1206".stJam1206_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1206".stJam1206_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1206".stJam1206_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO232,
|
||
xOutStopper => "MB3784",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro232"],
|
||
xOutVarioMotor => "MA0065");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 233 (1Sep)
|
||
#TRO233.stInSeparator1.Settings.nSeparatorNo := "cSep233.1";
|
||
#TRO233.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO233.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO233.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO233.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO233.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO233.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO233.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO233.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO233.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3544"];
|
||
#TRO233.stInSenJam2 := "DB_Inputs".Sensors["cInBG3543"];
|
||
|
||
#TRO233.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO233.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO233(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO233.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO233.TroOut,
|
||
nInMainTroNo := "cMainTro233",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO233,
|
||
xInCarouselRun := #fbSortConv1201.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1206".stJam1206_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1206".stJam1206_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1201".stJam1201_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1201".stJam1201_1.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO233,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro233"],
|
||
xOutStopper1 => "MB3544");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 235 (Vario)
|
||
|
||
#TRO235.stInSeparator1.Settings.nSeparatorNo := "cSep235.1";
|
||
#TRO235.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO235.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO235.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO235.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO235.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO235.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO235.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO235.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3844"];
|
||
|
||
#TRO235.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO235.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO235.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3843"]; // Finger in Pos
|
||
#TRO235.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3847"]; // MT in Pos
|
||
#TRO235.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3606"]; // Conveyor full
|
||
#TRO235.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3605"]; // Jam detector
|
||
|
||
#TRO235.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO235.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO235.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO235.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO235.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO235.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#TRO235(nInMainTroNo := "cMainTro235",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO235,
|
||
xInAutomatic := #t_Automatik_OF1 AND "SF0184" AND "SF0054",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0185" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0066",
|
||
arInOutJamEntr := "DB_JamArea1207".stJam1207_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1207".stJam1207_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1207".stJam1207_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1207".stJam1207_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO235,
|
||
xOutStopper => "MB3844",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro235"],
|
||
xOutVarioMotor => "MA0066");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 236 (1Sep)
|
||
#TRO236.stInSeparator1.Settings.nSeparatorNo := "cSep236.1";
|
||
#TRO236.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO236.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO236.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO236.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO236.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO236.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO236.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO236.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO236.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3604"];
|
||
#TRO236.stInSenJam2 := "DB_Inputs".Sensors["cInBG3603"];
|
||
|
||
#TRO236.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO236.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO236(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO236.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO236.TroOut,
|
||
nInMainTroNo := "cMainTro236",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO236,
|
||
xInCancel := "cTodoFalse",
|
||
xInCarouselRun := #fbSortConv1202.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1207".stJam1207_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1207".stJam1207_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1202".stJam1202_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1202".stJam1202_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO236,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro236"],
|
||
xOutStopper1 => "MB3604");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 238 (Vario)
|
||
|
||
#TRO238.stInSeparator1.Settings.nSeparatorNo := "cSep238.1";
|
||
#TRO238.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO238.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO238.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO238.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO238.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO238.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO238.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO238.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3904"];
|
||
|
||
#TRO238.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO238.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO238.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3903"]; // Finger in Pos
|
||
#TRO238.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3907"]; // MT in Pos
|
||
#TRO238.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG3666"]; // Conveyor full
|
||
#TRO238.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG3665"]; // Jam detector
|
||
|
||
#TRO238.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO238.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO238.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO238.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO238.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO238.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#TRO238(nInMainTroNo := "cMainTro238",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO238,
|
||
xInAutomatic := #t_Automatik_OF1 AND "SF0186" AND "SF0056",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0187" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0067",
|
||
arInOutJamEntr := "DB_JamArea1208".stJam1208_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1208".stJam1208_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1208".stJam1208_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1208".stJam1208_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO238,
|
||
xOutStopper => "MB3904",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro238"],
|
||
xOutVarioMotor => "MA0067");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 239 (1Sep)
|
||
#TRO239.stInSeparator1.Settings.nSeparatorNo := "cSep239.1";
|
||
#TRO239.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO239.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO239.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO239.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO239.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO239.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO239.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO239.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO239.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3664"];
|
||
#TRO239.stInSenJam2 := "DB_Inputs".Sensors["cInBG3663"];
|
||
|
||
|
||
#TRO239.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO239.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO239(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO239.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO239.TroOut,
|
||
nInMainTroNo := "cMainTro239",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO239,
|
||
xInCancel := "cTodoFalse",
|
||
xInCarouselRun := #fbSortConv1202.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1208".stJam1208_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1208".stJam1208_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1202".stJam1202_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1202".stJam1202_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO239,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro239"],
|
||
xOutStopper1 => "MB3664");
|
||
END_REGION
|
||
|
||
//Section 1.2 ENDE
|
||
|
||
REGION TRO 240 (Vario) // Eingang von Level 2
|
||
#TRO240.stInSeparator1.Settings.nSeparatorNo := "cSep240.1";
|
||
#TRO240.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO240.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO240.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO240.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO240.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO240.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO240.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO240.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4342"];
|
||
|
||
#TRO240.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO240.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO240.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4343"]; //Finger in Pos
|
||
#TRO240.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4344"]; //MT in Pos
|
||
#TRO240.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4336"]; // Conveyor full
|
||
#TRO240.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4335"]; // Jam detector
|
||
|
||
#TRO240.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO240.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO240.stInVario.Settings.tConvEmpty := T#20000ms;
|
||
#TRO240.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO240.stInVario.Settings.tWaitForStop := t#3s;
|
||
|
||
#TRO240.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO240.stInSettings.xIsBorner := TRUE;
|
||
#TRO240(nInMainTroNo := "cMainTro240",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO240,
|
||
xInAutomatic := #t_Automatik_OF4,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0266",
|
||
arInOutJamEntr := "DB_JamArea1309".stJam1309_1.arCarrier,//Todo
|
||
stInOutJamEntr := "DB_JamArea1309".stJam1309_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1309".stJam1309_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1309".stJam1309_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO240,
|
||
xOutStopper => "MB4342",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro240"],
|
||
xOutVarioMotor => "MA0266");
|
||
|
||
REGION Übernahme von Level 2
|
||
"FB_I-Device_Receive_J1309"(xInReq := "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL_1.%X2,
|
||
stInData := "IO_Device_UH03_FROM_UH01".stCarrierL2toL1_3[1],
|
||
xInOutAck := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL_1.%X2);
|
||
|
||
|
||
IF "FB_I-Device_Receive_J1309".xOutNewData THEN //1 Zyklus vom Baustein
|
||
//Daten von UH03 in UH02 Jam schieben
|
||
"FC_TSHR_AddAtEnd"(stInTrolley := "FB_I-Device_Receive_J1309".stOutData,
|
||
nOutCounter => #tmpTSHRCounter,
|
||
xOutResult => #tmpTSHRResult,
|
||
arTSHR := "DB_JamArea1309".stJam1309_1.arCarrier);
|
||
END_IF;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 241(1Sep)
|
||
#TRO241.stInSeparator1.Settings.nSeparatorNo := "cSep241.1";
|
||
#TRO241.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO241.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO241.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO241.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO241.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO241.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO241.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO241.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4334"];
|
||
#TRO241.stInSenJam2 := "DB_Inputs".Sensors["cInBG4340"];
|
||
|
||
#TRO241.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO241.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO241.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#TRO241(nInMainTroNo := "cMainTro241",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO241,
|
||
xInCarouselRun := #fbSortConv1304.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1309".stJam1309_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1309".stJam1309_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1304".stJam1304_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1304".stJam1304_1.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO241,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro241"],
|
||
xOutStopper1 => "MB4334");
|
||
END_REGION
|
||
|
||
REGION TRO 242 (1Sep1Switch)+Scanner(BX2130)
|
||
#TRO242.stInSeparator1.Settings.nSeparatorNo := "cSep242.1";
|
||
#TRO242.stInSeparator1.Settings.SendOverJamTimeOut := TRUE; //true = alter Sep
|
||
#TRO242.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO242.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO242.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO242.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO242.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4337"];
|
||
#TRO242.stInSenJam2 := "DB_Inputs".Sensors["cInBG4263"];
|
||
#TRO242.stInSenJam3 := "DB_Inputs".Sensors["cInBG4323"];
|
||
|
||
#TRO242.stInSwitch1.Settings.nSwitchNo := "cSwi242.1";
|
||
#TRO242.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO242.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO242.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO242.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO242.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO242.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2130"].xInCamTriggerReady := "bx2130-TriggerReady";
|
||
#arCognexInterface["cScannerBX2130"].xInCamTriggerAck := "bx2130-TriggerAck";
|
||
#arCognexInterface["cScannerBX2130"].xInCamResultsAvailable := "bx2130-Results Available";
|
||
#arCognexInterface["cScannerBX2130"].xInCamGeneralFault := "bx2130-General Fault";
|
||
#arCognexInterface["cScannerBX2130"].hwInCamInspectionResults := "=A01+UC022-BX2130~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO242.stInSettings.xCar2NecRight := TRUE;
|
||
#TRO242.stInSettings.xCar2NecLeft := TRUE;
|
||
#TRO242.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO242.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
#TRO242(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO242_3.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO242_3.TroOut,
|
||
stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO242_4.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO242_4.TroOut,
|
||
nInMainTroNo := "cMainTro242",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO242,
|
||
xInCarouselRun1 := #fbSortConv1303.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbSortConv1304.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO242,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2130"],
|
||
arInOutJamEntr1 := "DB_JamArea1304".stJam1304_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1304".stJam1304_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1303".stJam1303_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1303".stJam1303_1.stData,
|
||
arInOutJamExit3 := "DB_JamArea1304".stJam1304_2.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1304".stJam1304_2.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro242"],
|
||
xOutStopper1 => "MB4337",
|
||
xOutSw1ExTo3 => "MB4261");
|
||
|
||
"bx2130-TriggerEnable" := #arCognexInterface["cScannerBX2130"].xOutCamTriggerEnable;
|
||
"bx2130-Trigger" := #arCognexInterface["cScannerBX2130"].xOutCamTrigger;
|
||
"bx2130-ResultsAck" := #arCognexInterface["cScannerBX2130"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO242.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO242.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1304".stJam1304_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi242.1",
|
||
nOutDirection => #TRO242.nInDirection,
|
||
InOutCarrier := "DB_JamArea1304".stJam1304_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 243 (1Sep1Switch)+Scanner(BX3137)
|
||
#TRO243.stInSeparator1.Settings.nSeparatorNo := "cSep243.1";
|
||
#TRO243.stInSeparator1.Settings.SendOverJamTimeOut := TRUE; //true = alter Sep
|
||
#TRO243.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO243.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO243.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO243.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO243.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3960"];
|
||
#TRO243.stInSenJam3 := "DB_Inputs".Sensors["cInBG3961"];
|
||
|
||
#TRO243.stInSwitch1.Settings.nSwitchNo := "cSwi243.1";
|
||
#TRO243.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO243.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO243.stInSwitch1.Settings.nTo1Destinations := 4; //Info nötig für HMI
|
||
|
||
#TRO243.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO243.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2135"].xInCamTriggerReady := "bx2135-TriggerReady";
|
||
#arCognexInterface["cScannerBX2135"].xInCamTriggerAck := "bx2135-TriggerAck";
|
||
#arCognexInterface["cScannerBX2135"].xInCamResultsAvailable := "bx2135-Results Available";
|
||
#arCognexInterface["cScannerBX2135"].xInCamGeneralFault := "bx2135-General Fault";
|
||
#arCognexInterface["cScannerBX2135"].hwInCamInspectionResults := "=A01+UC023-BX2135~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO243.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO243.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO243.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO243.stInSettings.xPrioDir2 := FALSE;
|
||
|
||
"DB_JamArea1301".stJam1301_1.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO243(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO243.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO243.TroOut,
|
||
nInMainTroNo := "cMainTro243",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO243,
|
||
xInCarouselRun1 := #fbExitConv1301.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1301.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO243,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2135"],
|
||
arInOutJamEntr1 := "DB_JamArea1301".stJam1301_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1301".stJam1301_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1301".stJam1301_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1301".stJam1301_2.stData,
|
||
arInOutJamExit3 := "DB_JamArea1305".stJam1305_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1305".stJam1305_1.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro243"],
|
||
xOutStopper1 => "MB3960",
|
||
xOutSw1ExTo4 => "MB3961");
|
||
|
||
"bx2135-TriggerEnable" := #arCognexInterface["cScannerBX2135"].xOutCamTriggerEnable;
|
||
"bx2135-Trigger" := #arCognexInterface["cScannerBX2135"].xOutCamTrigger;
|
||
"bx2135-ResultsAck" := #arCognexInterface["cScannerBX2135"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO243.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO243.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1303".stJam1303_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi243.1",
|
||
nOutDirection => #TRO243.nInDirection,
|
||
InOutCarrier := "DB_JamArea1303".stJam1303_1.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 244 (1Sep1Switch)+Scanner(BX2136)
|
||
#TRO244.stInSeparator1.Settings.nSeparatorNo := "cSep244.1";
|
||
#TRO244.stInSeparator1.Settings.SendOverJamTimeOut := TRUE; //true = alter Sep
|
||
#TRO244.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO244.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO244.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO244.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO244.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4020"];
|
||
#TRO244.stInSenJam2 := "DB_Inputs".Sensors["cInBG4021"];
|
||
|
||
#TRO244.stInSwitch1.Settings.nSwitchNo := "cSwi244.1";
|
||
#TRO244.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO244.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO244.stInSwitch1.Settings.tTransitEx := T#5s;
|
||
#TRO244.stInSwitch1.Settings.nTo1Destinations := 4; //Info nötig für HMI
|
||
|
||
#TRO244.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO244.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2136"].xInCamTriggerReady := "bx2136-TriggerReady";
|
||
#arCognexInterface["cScannerBX2136"].xInCamTriggerAck := "bx2136-TriggerAck";
|
||
#arCognexInterface["cScannerBX2136"].xInCamResultsAvailable := "bx2136-Results Available";
|
||
#arCognexInterface["cScannerBX2136"].xInCamGeneralFault := "bx2136-General Fault";
|
||
#arCognexInterface["cScannerBX2136"].hwInCamInspectionResults := "=A01+UC023-BX2136~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO244.stInSettings.xCar2NecLeft := TRUE;
|
||
|
||
#TRO244.stInSettings.xCar2NecLeft := TRUE;
|
||
#TRO244.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO244.stInSettings.xPrioDir1 := TRUE;
|
||
#TRO244.stInSettings.xPrioDir2 := FALSE;
|
||
|
||
"DB_JamArea1301".stJam1301_2.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO244(stInPriorityManagerDir1 := "DB_Prozessdaten".stPriorityManager.udt_TRO244.TroIn,
|
||
stOutPriorityManagerDir1 => "DB_Prozessdaten".stPriorityManager.udt_TRO244.TroOut,
|
||
nInMainTroNo := "cMainTro244",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO244,
|
||
xInCarouselRun1 := #fbExitConv1301.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1302.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO244,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2136"],
|
||
arInOutJamEntr1 := "DB_JamArea1301".stJam1301_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1301".stJam1301_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1302".stJam1302_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1302".stJam1302_3.stData,
|
||
arInOutJamExit3 := "DB_JamArea1306".stJam1306_1.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1306".stJam1306_1.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro244"],
|
||
xOutStopper1 => "MB4020",
|
||
xOutSw1ExTo4 => "MB4021");
|
||
|
||
"bx2136-TriggerEnable" := #arCognexInterface["cScannerBX2136"].xOutCamTriggerEnable;
|
||
"bx2136-Trigger" := #arCognexInterface["cScannerBX2136"].xOutCamTrigger;
|
||
"bx2136-ResultsAck" := #arCognexInterface["cScannerBX2136"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO244.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO244.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1301".stJam1301_2.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi244.1",
|
||
nOutDirection => #TRO244.nInDirection,
|
||
InOutCarrier := "DB_JamArea1301".stJam1301_2.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 245 (1Sep1Switch)+Scanner(BX2138)
|
||
#TRO245.stInSeparator1.Settings.nSeparatorNo := "cSep245.1";
|
||
#TRO245.stInSeparator1.Settings.SendOverJamTimeOut := TRUE; //true = alter Sep
|
||
#TRO245.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO245.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO245.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO245.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO245.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4140"];
|
||
#TRO245.stInSenJam2 := "DB_Inputs".Sensors["cInBG4141"];
|
||
|
||
#TRO245.stInSwitch1.Settings.nSwitchNo := "cSwi245.1";
|
||
#TRO245.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO245.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO245.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO245.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO245.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2138"].xInCamTriggerReady := "bx2138-TriggerReady";
|
||
#arCognexInterface["cScannerBX2138"].xInCamTriggerAck := "bx2138-TriggerAck";
|
||
#arCognexInterface["cScannerBX2138"].xInCamResultsAvailable := "bx2138-Results Available";
|
||
#arCognexInterface["cScannerBX2138"].xInCamGeneralFault := "bx2138-General Fault";
|
||
#arCognexInterface["cScannerBX2138"].hwInCamInspectionResults := "=A01+UC022-BX2138~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO245.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO245.stInSettings.xCar2NecRight := FALSE;
|
||
#TRO245.stInSettings.xPrioDir1 := FALSE;
|
||
#TRO245.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
"DB_JamArea1302".stJam1302_1.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO245(stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO245.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO245.TroOut,
|
||
nInMainTroNo := "cMainTro245",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO245,
|
||
xInCarouselRun1 := #fbExitConv1302.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1302.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO245,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2138"],
|
||
arInOutJamEntr1 := "DB_JamArea1302".stJam1302_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1302".stJam1302_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1308".stJam1308_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1308".stJam1308_1.stData,
|
||
arInOutJamExit3 := "DB_JamArea1302".stJam1302_2.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1302".stJam1302_2.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro245"],
|
||
xOutStopper1 => "MB4140",
|
||
xOutSw1ExTo3 => "MB4141");
|
||
|
||
"bx2138-TriggerEnable" := #arCognexInterface["cScannerBX2138"].xOutCamTriggerEnable;
|
||
"bx2138-Trigger" := #arCognexInterface["cScannerBX2138"].xOutCamTrigger;
|
||
"bx2138-ResultsAck" := #arCognexInterface["cScannerBX2138"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO245.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO245.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1302".stJam1302_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi245.1",
|
||
nOutDirection => #TRO245.nInDirection,
|
||
InOutCarrier := "DB_JamArea1302".stJam1302_1.arCarrier[1]);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 246 (1Sep1Switch)+Scanner(BX2137)
|
||
#TRO246.stInSeparator1.Settings.nSeparatorNo := "cSep246.1";
|
||
#TRO246.stInSeparator1.Settings.SendOverJamTimeOut := TRUE; //true = alter Sep
|
||
#TRO246.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Long";
|
||
#TRO246.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO246.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO246.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO246.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4080"];
|
||
#TRO246.stInSenJam2 := "DB_Inputs".Sensors["cInBG4081"];
|
||
|
||
#TRO246.stInSwitch1.Settings.nSwitchNo := "cSwi246.1";
|
||
#TRO246.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO246.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO246.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO246.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO246.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2137"].xInCamTriggerReady := "bx2137-TriggerReady";
|
||
#arCognexInterface["cScannerBX2137"].xInCamTriggerAck := "bx2137-TriggerAck";
|
||
#arCognexInterface["cScannerBX2137"].xInCamResultsAvailable := "bx2137-Results Available";
|
||
#arCognexInterface["cScannerBX2137"].xInCamGeneralFault := "bx2137-General Fault";
|
||
#arCognexInterface["cScannerBX2137"].hwInCamInspectionResults := "=A01+UC022-BX2137~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO246.stInSettings.xCar2NecLeft := FALSE;
|
||
#TRO246.stInSettings.xCar2NecRight := TRUE;
|
||
#TRO246.stInSettings.xPrioDir1 := FALSE;
|
||
#TRO246.stInSettings.xPrioDir2 := TRUE;
|
||
|
||
"DB_JamArea1302".stJam1302_2.arCarrier[1].nDestination := "cDestF2HLoaded";
|
||
|
||
#TRO246(stInPriorityManagerDir2 := "DB_Prozessdaten".stPriorityManager.udt_TRO246.TroIn,
|
||
stOutPriorityManagerDir2 => "DB_Prozessdaten".stPriorityManager.udt_TRO246.TroOut,
|
||
nInMainTroNo := "cMainTro246",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO246,
|
||
xInCarouselRun1 := #fbExitConv1302.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbExitConv1301.xOutConveyorFullSpeed,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO246,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2137"],
|
||
arInOutJamEntr1 := "DB_JamArea1302".stJam1302_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1302".stJam1302_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1307".stJam1307_1.arCarrier, //!
|
||
stInOutJamExit2 := "DB_JamArea1307".stJam1307_1.stData,
|
||
arInOutJamExit3 := "DB_JamArea1302".stJam1302_3.arCarrier,
|
||
stInOutJamExit3 := "DB_JamArea1302".stJam1302_3.stData,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro246"],
|
||
xOutStopper1 => "MB4080",
|
||
xOutSw1ExTo3 => "MB4081");
|
||
|
||
"MB4026" := 0
|
||
;
|
||
|
||
"bx2137-TriggerEnable" := #arCognexInterface["cScannerBX2137"].xOutCamTriggerEnable;
|
||
"bx2137-Trigger" := #arCognexInterface["cScannerBX2137"].xOutCamTrigger;
|
||
"bx2137-ResultsAck" := #arCognexInterface["cScannerBX2137"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO246.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO246.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1302".stJam1302_2.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi246.1",
|
||
nOutDirection => #TRO246.nInDirection,
|
||
InOutCarrier := "DB_JamArea1302".stJam1302_2.arCarrier[1]);
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 247(1Sep) // Ausgang zu Level 2
|
||
#TRO247.stInSeparator1.Settings.nSeparatorNo := "cSep247.1";
|
||
#TRO247.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO247.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO247.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO247.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO247.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO247.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO247.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO247.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4085"];
|
||
#TRO247.stInSenJam2 := "DB_Inputs".Sensors["cInBG4091"];
|
||
|
||
#TRO247.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam2309.Config.nCapacitySet := 1; //
|
||
|
||
#TRO247(nInMainTroNo := "cMainTro247",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF3.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO247 AND ("IO_Device_UH02_TO_UH01".stCARRIER_INFO_2[1].nBarcode = 0), //zwecks Übergabe warten bis UH03 Daten abgeholt hat
|
||
xInCarouselRun := #fbExitConv1302.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF3,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1302"."stJam1302_3".arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1302".stJam1302_3.stData,
|
||
arInOutJamExit2 := "IO_Device_UH02_TO_UH01".stCARRIER_INFO_2, //Daten #arCarrierHandoverJam2309,
|
||
stInOutJamExit2 := #stJamDataHandoverJam2309,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO247,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro247"],
|
||
xOutStopper1 => "MB4085");
|
||
|
||
"MB4086" := TRUE;
|
||
|
||
REGION Übergabe an Level 2
|
||
//todo: sicherstellen das UH03 ready ist, ansonsten sollte UH02 warten...
|
||
"FB_I-Device_SendCarrier_J2309"(xInTrigger := (#TRO247.nState = 2500) AND #TRO247.fbSeparator1.xOutTrolleyReleasedEdge, //Trigger
|
||
xInAck := "IO_Device_UH02_FROM_UH01".bCARRIER_CONTROL_1.%X5, //von Empfänger
|
||
stInOutData := "IO_Device_UH02_TO_UH01".stCARRIER_INFO_2[1], //Daten
|
||
xOutReq := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL_1.%X5); //an Empfänger
|
||
END_REGION
|
||
END_REGION
|
||
|
||
REGION TRO 249 (Vario)
|
||
|
||
#TRO249.stInSeparator1.Settings.nSeparatorNo := "cSep249.1";
|
||
#TRO249.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO249.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO249.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO249.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO249.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO249.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO249.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO249.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG3964"];
|
||
|
||
#TRO249.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO249.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO249.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG3963"]; //Finger in Pos
|
||
#TRO249.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG3967"];
|
||
#TRO249.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4206"]; // Conveyor full
|
||
#TRO249.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4205"]; // Jam detector
|
||
|
||
#TRO249.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO249.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO249.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO249.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO249.stInVario.Settings.tWaitForStop := t#3s;
|
||
|
||
#TRO249.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
// #TRO249.stInSettings.sJamSrc := 'xxx';
|
||
// #TRO249.stInSettings.sJamDest := 'yyy';
|
||
|
||
#TRO249(nInMainTroNo := "cMainTro249",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO249,
|
||
xInAutomatic := #t_Automatik_OF4 AND "SF0190" AND "SF0240",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0191" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0262",
|
||
arInOutJamEntr := "DB_JamArea1305".stJam1305_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1305".stJam1305_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1305".stJam1305_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1305".stJam1305_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO249,
|
||
xOutStopper => "MB3964",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro249"],
|
||
xOutVarioMotor => "MA0262");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 250 (1Sep)
|
||
#TRO250.stInSeparator1.Settings.nSeparatorNo := "cSep250.1";
|
||
#TRO250.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO250.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO250.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO250.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO250.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO250.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO250.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO250.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO250.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4204"];
|
||
#TRO250.stInSenJam2 := "DB_Inputs".Sensors["cInBG4203"];
|
||
|
||
#TRO250.stInSeparator1.Settings.tSenFree := T#1500ms;
|
||
#TRO250.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO250(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO250.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO250.TroOut,
|
||
nInMainTroNo := "cMainTro250",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO250,
|
||
xInCarouselRun := #fbSortConv1303.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1305".stJam1305_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1305".stJam1305_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1303".stJam1303_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1303".stJam1303_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO250,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro250"],
|
||
xOutStopper1 => "MB4204");
|
||
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 252 (Vario)
|
||
|
||
#TRO252.stInSeparator1.Settings.nSeparatorNo := "cSep252.1";
|
||
#TRO252.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO252.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO252.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO252.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO252.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO252.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO252.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO252.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4024"];
|
||
|
||
#TRO252.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO252.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO252.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4023"]; //Finger in Pos
|
||
#TRO252.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4027"];
|
||
#TRO252.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4266"]; // Conveyor full
|
||
#TRO252.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4265"]; // Jam detector
|
||
|
||
#TRO252.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO252.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO252.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO252.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO252.stInVario.Settings.tWaitForStop := t#3s;
|
||
|
||
#TRO252.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
// #TRO252.stInSettings.sJamSrc := 'xxx';
|
||
// #TRO252.stInSettings.sJamDest := 'yyy';
|
||
|
||
#TRO252(nInMainTroNo := "cMainTro252",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO252,
|
||
xInAutomatic := #t_Automatik_OF4 AND "SF0192" AND "SF0242",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0193" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0263",
|
||
arInOutJamEntr := "DB_JamArea1306".stJam1306_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1306".stJam1306_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1306".stJam1306_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1306".stJam1306_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO252,
|
||
xOutStopper => "MB4024",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro252"],
|
||
xOutVarioMotor => "MA0263");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 253 (1Sep)
|
||
#TRO253.stInSeparator1.Settings.nSeparatorNo := "cSep253.1";
|
||
#TRO253.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO253.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO253.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO253.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO253.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO253.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO253.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO253.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO253.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4264"];
|
||
#TRO253.stInSenJam2 := "DB_Inputs".Sensors["cInBG4263"];
|
||
|
||
#TRO253.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO253.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO253(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO253.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO253.TroOut,
|
||
nInMainTroNo := "cMainTro253",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO253,
|
||
xInCarouselRun := #fbSortConv1303.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1306".stJam1306_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1306".stJam1306_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1303".stJam1303_1.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1303".stJam1303_1.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO253,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro253"],
|
||
xOutStopper1 => "MB4264");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 255 (Vario)
|
||
|
||
#TRO255.stInSeparator1.Settings.nSeparatorNo := "cSep255.1";
|
||
#TRO255.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO255.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO255.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO255.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO255.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO255.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO255.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO255.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4084"];
|
||
|
||
#TRO255.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO255.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO255.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4083"]; //Finger in Pos
|
||
#TRO255.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4087"];
|
||
#TRO255.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4326"]; // Conveyor full
|
||
#TRO255.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4325"]; // Jam detector
|
||
|
||
#TRO255.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO255.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO255.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO255.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO255.stInVario.Settings.tWaitForStop := t#3s;
|
||
|
||
#TRO255.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
// #TRO255.stInSettings.sJamSrc := 'xxx';
|
||
// #TRO255.stInSettings.sJamDest := 'yyy';
|
||
|
||
#TRO255(nInMainTroNo := "cMainTro255",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInRelease := "DB_TRO_Test".TRO255,
|
||
xInAutomatic := #t_Automatik_OF4 AND "SF0194" AND "SF0244",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0195" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0264",
|
||
arInOutJamEntr := "DB_JamArea1307".stJam1307_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1307".stJam1307_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1307".stJam1307_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1307".stJam1307_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO255,
|
||
xOutStopper => "MB4084",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro255"],
|
||
xOutVarioMotor => "MA0264");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 256 (1Sep)
|
||
#TRO256.stInSeparator1.Settings.nSeparatorNo := "cSep256.1";
|
||
#TRO256.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO256.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO256.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO256.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO256.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO256.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO256.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO256.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO256.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4324"];
|
||
#TRO256.stInSenJam2 := "DB_Inputs".Sensors["cInBG4323"];
|
||
|
||
#TRO256.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO256.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO256(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO256.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO256.TroOut,
|
||
nInMainTroNo := "cMainTro256",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO256,
|
||
xInCarouselRun := #fbSortConv1304.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1307".stJam1307_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1307".stJam1307_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1304".stJam1304_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1304".stJam1304_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO256,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro256"],
|
||
xOutStopper1 => "MB4324");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 258 (Vario)
|
||
|
||
#TRO258.stInSeparator1.Settings.nSeparatorNo := "cSep258.1";
|
||
#TRO258.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO258.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO258.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO258.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
#TRO258.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO258.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO258.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO258.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO258.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO258.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4144"];
|
||
|
||
#TRO258.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO258.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO258.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4143"]; //Pusher Dog in Pos
|
||
#TRO258.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4147"];
|
||
#TRO258.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4386"]; // Conveyor full
|
||
#TRO258.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4385"]; // Jam detector
|
||
|
||
#TRO258.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO258.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO258.stInVario.Settings.tConvEmpty := T#35000ms;
|
||
#TRO258.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO258.stInVario.Settings.tWaitForStop := t#3s;
|
||
|
||
// #TRO258.stInSettings.sJamSrc := 'xxx';
|
||
// #TRO258.stInSettings.sJamDest := 'yyy';
|
||
#TRO258.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#TRO258(nInMainTroNo := "cMainTro258",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF4 AND "SF0196" AND "SF0246",
|
||
xInReset := "cTodoFalse",
|
||
xInErrorQuit := "SF0197" OR "SF0002" OR "IBN".xQuitGlob,
|
||
xInMotorProtection := "FC0265",
|
||
xInRelease := "DB_TRO_Test".TRO258,
|
||
arInOutJamEntr := "DB_JamArea1308".stJam1308_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1308".stJam1308_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1308".stJam1308_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1308".stJam1308_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO258,
|
||
xOutStopper => "MB4144",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro258"],
|
||
xOutVarioMotor => "MA0265");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 259 (1Sep)
|
||
#TRO259.stInSeparator1.Settings.nSeparatorNo := "cSep259.1";
|
||
#TRO259.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO259.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO259.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO259.stInSeparator1.Settings.DoNotDeleteOnScanCorrection := TRUE; //unterdrückt den Fehler "Carrier kommt nicht an", weil Sep nach Vario
|
||
#TRO259.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO259.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO259.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO259.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO259.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4384"];
|
||
#TRO259.stInSenJam2 := "DB_Inputs".Sensors["cInBG4383"];
|
||
|
||
#TRO259.stInSeparator1.Settings.tSenFree := T#2500ms;
|
||
#TRO259.stInSeparator1.Settings.tSenWait := T#2500ms;
|
||
|
||
#TRO259(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO259.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO259.TroOut,
|
||
nInMainTroNo := "cMainTro259",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF4.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO259,
|
||
xInCarouselRun := #fbSortConv1304.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF4,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1308".stJam1308_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1308".stJam1308_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1304".stJam1304_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1304".stJam1304_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO259,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro259"],
|
||
xOutStopper1 => "MB4384");
|
||
|
||
END_REGION
|
||
|
||
// Ende Section 1.3
|
||
|
||
|
||
REGION TRO 260 (Vario) + Scanner (BX2115)
|
||
|
||
REGION Übernahme von Level 2
|
||
"FB_I-Device_Receive_J1601"(xInReq := "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X2,
|
||
stInData := "IO_Device_UH03_FROM_UH01".stCARRIER_INFO_2[1],
|
||
xInOutAck := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X2);
|
||
|
||
IF "FB_I-Device_Receive_J1601".xOutNewData THEN //1 Zyklus vom Baustein
|
||
//Daten von UH03 in UH02 Jam schieben
|
||
"FC_TSHR_AddAtEnd"(stInTrolley := "FB_I-Device_Receive_J1601".stOutData,
|
||
nOutCounter => #tmpTSHRCounter,
|
||
xOutResult => #tmpTSHRResult,
|
||
arTSHR := "DB_JamArea1601".stJam1601_1.arCarrier);
|
||
END_IF;
|
||
END_REGION
|
||
|
||
|
||
#TRO260.stInSeparator1.Settings.nSeparatorNo := "cSep260.1";
|
||
#TRO200.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO200.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO260.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO260.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO260.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO260.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO260.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO260.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4543"];
|
||
|
||
#TRO260.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO260.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO260.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4544"]; //Pusher Dog in Pos
|
||
#TRO260.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4545"];
|
||
#TRO260.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4524"]; // Conveyor full
|
||
#TRO260.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4525"]; // Jam detector
|
||
|
||
#TRO260.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO260.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO260.stInVario.Settings.tWaitForStop := T#3s;
|
||
#TRO260.stInVario.Settings.tConvEmpty := T#15000ms;
|
||
#TRO260.stInVario.Settings.nCountCarrier := 1;
|
||
|
||
#TRO260.stInVario.Settings.xJamSenDelayActive := true;
|
||
#TRO260.stInVario.Settings.tJamSenDelay := t#1s;
|
||
|
||
#TRO260.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO260.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2115"].xInCamTriggerReady := "bx2115-TriggerReady";
|
||
#arCognexInterface["cScannerBX2115"].xInCamTriggerAck := "bx2115-TriggerAck";
|
||
#arCognexInterface["cScannerBX2115"].xInCamResultsAvailable := "bx2115-Results Available";
|
||
#arCognexInterface["cScannerBX2115"].xInCamGeneralFault := "bx2115-General Fault";
|
||
#arCognexInterface["cScannerBX2115"].hwInCamInspectionResults := "=A01+UH02-BX2115~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO260.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO260(nInMainTroNo := "cMainTro260",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF1,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0073",
|
||
xInRelease := "DB_TRO_Test".TRO260,
|
||
arInOutJamEntr := "DB_JamArea1601".stJam1601_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1601".stJam1601_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1601".stJam1601_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1601".stJam1601_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2115"],
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO260,
|
||
xOutStopper => "MB4543",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro260"],
|
||
xOutVarioMotor => "MA0073");
|
||
|
||
"bx2115-TriggerEnable" := #arCognexInterface["cScannerBX2115"].xOutCamTriggerEnable;
|
||
"bx2115-Trigger" := #arCognexInterface["cScannerBX2115"].xOutCamTrigger;
|
||
"bx2115-ResultsAck" := #arCognexInterface["cScannerBX2115"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO260.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO260.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1601".stJam1601_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 261 (1Sep)
|
||
#TRO261.stInSeparator1.Settings.nSeparatorNo := "cSep261.1";
|
||
#TRO261.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO261.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO261.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO261.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO261.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO261.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO261.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO261.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4526"];
|
||
#TRO261.stInSenJam2 := "DB_Inputs".Sensors["cInBG4507"];
|
||
|
||
#TRO261.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO261.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
(* REGION ZIEL FÜR LEERE ANGEBEN
|
||
IF "DB_JamArea1601".stJam1601_2.arCarrier[1].bStatus.%X0 THEN
|
||
"DB_JamArea1601".stJam1601_2.arCarrier[1].nDestination := "cDestF2HEmpty";//"cDestInboundEmpty";
|
||
END_IF;
|
||
END_REGION *)
|
||
|
||
|
||
#TRO261.stInPriorityManager.xReleaseOk := "cTodoTRUE";
|
||
|
||
#TRO261(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO261.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO261.TroOut,
|
||
nInMainTroNo := "cMainTro261",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO261,
|
||
xInCarouselRun := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1601".stJam1601_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1601".stJam1601_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1110".stJam1110_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1110".stJam1110_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO261,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro261"],
|
||
xOutStopper1 => "MB4526");
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 262 (Vario) + Scanner (BX2109)
|
||
|
||
REGION Übernahme von Level 2
|
||
"FB_I-Device_Receive_J1501"(xInReq := "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X1,
|
||
stInData := "IO_Device_UH03_FROM_UH01".stCARRIER_INFO_1[1],
|
||
xInOutAck := "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X1);
|
||
|
||
IF "FB_I-Device_Receive_J1501".xOutNewData THEN //1 Zyklus vom Baustein
|
||
//Daten von UH03 in UH02 Jam schieben
|
||
"FC_TSHR_AddAtEnd"(stInTrolley := "FB_I-Device_Receive_J1501".stOutData,
|
||
nOutCounter => #tmpTSHRCounter,
|
||
xOutResult => #tmpTSHRResult,
|
||
arTSHR := "DB_JamArea1501".stJam1501_1.arCarrier);
|
||
END_IF;
|
||
END_REGION
|
||
|
||
#TRO262.stInSeparator1.Settings.nSeparatorNo := "cSep262.1";
|
||
#TRO262.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO262.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO262.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO262.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO262.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO262.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO262.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO262.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4540"];
|
||
|
||
#TRO262.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO262.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO262.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4541"]; //Pusher Dog in Pos
|
||
#TRO262.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4542"];
|
||
#TRO262.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4520"]; // Conveyor full
|
||
#TRO262.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4521"]; // Jam detector
|
||
|
||
#TRO262.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO262.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO262.stInVario.Settings.tConvEmpty := T#15000ms;
|
||
#TRO262.stInVario.Settings.tWaitForStop := t#3s;
|
||
#TRO262.stInVario.Settings.nCountCarrier := 1;
|
||
|
||
#TRO262.stInVario.Settings.tCarrierInPosDelay := t#1200ms;
|
||
#TRO262.stInVario.Settings.tCarrierInPosEdgeDelay := t#100ms;
|
||
|
||
#TRO262.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO262.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2109"].xInCamTriggerReady := "bx2109-TriggerReady";
|
||
#arCognexInterface["cScannerBX2109"].xInCamTriggerAck := "bx2109-TriggerAck";
|
||
#arCognexInterface["cScannerBX2109"].xInCamResultsAvailable := "bx2109-Results Available";
|
||
#arCognexInterface["cScannerBX2109"].xInCamGeneralFault := "bx2109-General Fault";
|
||
#arCognexInterface["cScannerBX2109"].hwInCamInspectionResults := "=A01+UH02-BX2109~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO262.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO262(nInMainTroNo := "cMainTro262",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF1,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0072",
|
||
xInRelease := "DB_TRO_Test".TRO262,
|
||
arInOutJamEntr := "DB_JamArea1501".stJam1501_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1501".stJam1501_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1501".stJam1501_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1501".stJam1501_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2109"],
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO262,
|
||
xOutStopper => "MB4540",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro262"],
|
||
xOutVarioMotor => "MA0072");
|
||
|
||
"bx2109-TriggerEnable" := #arCognexInterface["cScannerBX2109"].xOutCamTriggerEnable;
|
||
"bx2109-Trigger" := #arCognexInterface["cScannerBX2109"].xOutCamTrigger;
|
||
"bx2109-ResultsAck" := #arCognexInterface["cScannerBX2109"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO262.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO262.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1501".stJam1501_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 263 (1Sep)
|
||
#TRO263.stInSeparator1.Settings.nSeparatorNo := "cSep263.1";
|
||
#TRO263.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO263.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO263.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO263.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO263.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO263.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO263.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO263.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4522"];
|
||
#TRO263.stInSenJam2 := "DB_Inputs".Sensors["cInBG4514"];
|
||
|
||
#TRO263.stInSeparator1.Settings.tSenFree := t#2000ms;
|
||
#TRO263.stInSeparator1.Settings.tSenWait := t#6000ms;
|
||
|
||
REGION ZIEL FÜR BELADENE ANGEBEN
|
||
IF "DB_JamArea1501".stJam1501_2.arCarrier[1].bStatus.%X0 THEN
|
||
"DB_JamArea1501".stJam1501_2.arCarrier[1].nDestination := "cDestAMRLoaded";
|
||
END_IF;
|
||
END_REGION
|
||
|
||
|
||
#TRO263(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO263.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO263.TroOut,
|
||
nInMainTroNo := "cMainTro263",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO263,
|
||
xInCarouselRun := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1501".stJam1501_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1501".stJam1501_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1110".stJam1110_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1110".stJam1110_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO263,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro263"],
|
||
xOutStopper1 => "MB4522");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 264 (Vario) + Scanner (BX2108)
|
||
|
||
REGION Übernahme von Level 2
|
||
"FB_I-Device_Receive_J1401"(xInReq:="IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X0,
|
||
stInData:="IO_Device_UH03_FROM_UH01".stCARRIER_INFO[1],
|
||
xInOutAck:="IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X0);
|
||
|
||
IF "FB_I-Device_Receive_J1401".xOutNewData THEN //1 Zyklus vom Baustein
|
||
//Daten von UH03 in UH02 Jam schieben
|
||
"FC_TSHR_AddAtEnd"(stInTrolley := "FB_I-Device_Receive_J1401".stOutData,
|
||
nOutCounter => #tmpTSHRCounter,
|
||
xOutResult => #tmpTSHRResult,
|
||
arTSHR := "DB_JamArea1401".stJam1401_1.arCarrier);
|
||
END_IF;
|
||
END_REGION
|
||
|
||
#TRO264.stInSeparator1.Settings.nSeparatorNo := "cSep264.1";
|
||
#TRO264.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO264.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO264.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO264.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO264.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO264.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO264.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO264.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4460"];
|
||
|
||
#TRO264.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO264.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO264.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4462"]; //Finger in Pos
|
||
#TRO264.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4461"]; // MT in Pos
|
||
#TRO264.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4446"]; // Conveyor full
|
||
#TRO264.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4447"]; // Jam detector
|
||
|
||
#TRO264.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO264.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO264.stInVario.Settings.tConvEmpty := T#8000ms;
|
||
#TRO264.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO264.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO264.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO264.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2108"].xInCamTriggerReady := "bx2108-TriggerReady";
|
||
#arCognexInterface["cScannerBX2108"].xInCamTriggerAck := "bx2108-TriggerAck";
|
||
#arCognexInterface["cScannerBX2108"].xInCamResultsAvailable := "bx2108-Results Available";
|
||
#arCognexInterface["cScannerBX2108"].xInCamGeneralFault := "bx2108-General Fault";
|
||
#arCognexInterface["cScannerBX2108"].hwInCamInspectionResults := "=A01+UH02-BX2108~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO264.stInPriorityManager.xReleaseOk := TRUE; //braucht keine Vorfahrtsregelung
|
||
|
||
#TRO264(nInMainTroNo := "cMainTro264",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF1,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0071",
|
||
xInRelease := "DB_TRO_Test".#TRO264,
|
||
arInOutJamEntr := "DB_JamArea1401".stJam1401_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1401".stJam1401_1.stData,
|
||
arInOutJamFinger := "DB_JamArea1401".stJam1401_2.arCarrier,
|
||
stInOutJamFinger := "DB_JamArea1401".stJam1401_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2108"],
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO264,
|
||
xOutStopper => "MB4460",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro264"],
|
||
xOutVarioMotor => "MA0071");
|
||
|
||
"bx2108-TriggerEnable" := #arCognexInterface["cScannerBX2108"].xOutCamTriggerEnable;
|
||
"bx2108-Trigger" := #arCognexInterface["cScannerBX2108"].xOutCamTrigger;
|
||
"bx2108-ResultsAck" := #arCognexInterface["cScannerBX2108"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO264.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO264.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1401".stJam1401_1.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 265 (1Sep)
|
||
#TRO265.stInSeparator1.Settings.nSeparatorNo := "cSep265.1";
|
||
#TRO265.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO265.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO265.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO265.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO265.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO265.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO265.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO265.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4445"];
|
||
#TRO265.stInSenJam2 := "DB_Inputs".Sensors["cInBG4443"];
|
||
|
||
#TRO265.stInSeparator1.Settings.tSenFree := t#1200ms;
|
||
#TRO265.stInSeparator1.Settings.tSenWait := t#4300ms;
|
||
|
||
#TRO265(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO265.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO265.TroOut,
|
||
nInMainTroNo := "cMainTro265",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO265,
|
||
xInCarouselRun := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1401".stJam1401_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1401".stJam1401_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1110".stJam1110_4.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1110".stJam1110_4.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO265,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro265"],
|
||
xOutStopper1 => "MB4445");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 266(1Sep)
|
||
#TRO266.stInSeparator1.Settings.nSeparatorNo := "cSep266.1";
|
||
#TRO266.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO266.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO266.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO266.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO266.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO266.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4451"];
|
||
#TRO266.stInSenJam2 := "DB_Inputs".Sensors["cInBG4453"];
|
||
|
||
#TRO266(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO266.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO266.TroOut,
|
||
nInMainTroNo := "cMainTro266",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO266,
|
||
xInCarouselRun := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1110".stJam1110_3.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1110".stJam1110_3.stData,
|
||
arInOutJamExit2 := "DB_JamArea1110".stJam1110_4.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1110".stJam1110_4.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO266,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro266"],
|
||
xOutStopper1 => "MB4451");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 267 (1Sep2Switch)+Scanner(BX2100)
|
||
#TRO267.stInSeparator1.Settings.nSeparatorNo := "cSep267.1";
|
||
#TRO267.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO267.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO267.stInSeparator1.Settings.xPluggedPart := TRUE;
|
||
#TRO267.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO267.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4440"];
|
||
#TRO267.stInSeparator1.stSenPart := "DB_Inputs".Sensors["cInBG4465"];
|
||
#TRO267.stInSenJam2 := "DB_Inputs".Sensors["cInBG4444"];
|
||
#TRO267.stInSenJam3 := "DB_Inputs".Sensors["cInBG4455"];
|
||
#TRO267.stInSenJam4 := "DB_Inputs".Sensors["cInBG4454"];
|
||
|
||
#TRO267.stInSwitch1.Settings.nSwitchNo := "cSwi267.1";
|
||
#TRO267.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO267.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO267.stInSwitch1.Settings.xNewSwitch := TRUE;
|
||
#TRO267.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
// #TRO267.stInSwitch2.Settings.nSwitchNo := "cSwi267.2"; todo
|
||
#TRO267.stInSwitch2.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO267.stInSwitch2.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO267.stInSwitch2.Settings.xNewSwitch := TRUE;
|
||
#TRO267.stInSwitch2.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO267.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO267.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2100"].xInCamTriggerReady := "bx2100-TriggerReady";
|
||
#arCognexInterface["cScannerBX2100"].xInCamTriggerAck := "bx2100-TriggerAck";
|
||
#arCognexInterface["cScannerBX2100"].xInCamResultsAvailable := "bx2100-Results Available";
|
||
#arCognexInterface["cScannerBX2100"].xInCamGeneralFault := "bx2100-General Fault";
|
||
#arCognexInterface["cScannerBX2100"].hwInCamInspectionResults := "=A01+UC021-BX2100~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO267.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam5000.Config.nCapacitySet := 1;
|
||
#stJamDataHandoverJam5001.Config.nCapacitySet := 1;
|
||
|
||
#TRO267.stInSettings.bSepType.%X2 := TRUE;
|
||
|
||
REGION !!!NUR PROVISORISCH!!!
|
||
// Statement section REGION
|
||
// "DB_JamArea1110".stJam1110_4.arCarrier[1].nDestination := "cDestF2HLoaded";//"cDestAMRLoaded";//"cDestInboundEmpty";//"cDestF2HEmpty";//2;
|
||
END_REGION ;
|
||
|
||
#TRO267(nInMainTroNo := "cMainTro267",
|
||
xInSftyOk := "cTodoTRUE",
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO267,
|
||
xInCarouselRun1 := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2100"],
|
||
arInOutJamEntr1 := "DB_JamArea1110".stJam1110_4.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1110".stJam1110_4.stData,
|
||
arInOutJamExit2 := #arCarrierHandoverJam5001,
|
||
stInOutJamExit2 := #stJamDataHandoverJam5001,
|
||
arInOutJamExit3 := #arCarrierHandoverJam5000,
|
||
stInOutJamExit3 := #stJamDataHandoverJam5000,
|
||
arInOutJamExit4 := "DB_JamArea1110".stJam1110_5.arCarrier,
|
||
stInOutJamExit4 := "DB_JamArea1110".stJam1110_5.stData,
|
||
xOutStopper1 => "MB4440",
|
||
xOutSw1ExTo3 => "MB4444",
|
||
xOutSw2ExTo3 => "MB4455",
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO267);
|
||
|
||
"bx2100-TriggerEnable" := #arCognexInterface["cScannerBX2100"].xOutCamTriggerEnable;
|
||
"bx2100-Trigger" := #arCognexInterface["cScannerBX2100"].xOutCamTrigger;
|
||
"bx2100-ResultsAck" := #arCognexInterface["cScannerBX2100"].xOutCamResultsAck;
|
||
|
||
IF #TRO267.xOutNewScan THEN
|
||
"FC_Send_GOHDReqM"(sInPLCID := "cPLCID",
|
||
xInSSCCReq := FALSE,
|
||
xInLengthReq := FALSE,
|
||
xInDockDoorReq := FALSE,
|
||
xInLaneStatusReq := FALSE,
|
||
nInBarcode := "DB_JamArea1110".stJam1110_4.arCarrier[1].nBarcode,
|
||
sInSSCC := '',//#TRO110.fbBarcodeReaderSSCC.sOutBarcode,//DELETE(IN := LINT_TO_STRING(#TRO110.nOutScanResultSSCC), L := 1, P := 1),
|
||
sInDecisionPoint := 'GOH.Route.01',//"cDP_DOCK_02",
|
||
sInDockDoor := '',
|
||
sInLengthInfo := '',
|
||
arInLaneStatus := #tmpPlaceHolderLaneStatus,
|
||
nInLaneCnt := 0,
|
||
FIFO := "DB_LGF_FIFO_CommWCSBL",
|
||
BUFFER := "DB_Buffer_CommunicationWCSBL".BUFFER,
|
||
nInOutSequenceNumber := "DB_CommunicationParameters".nSeqNumWCSBL);
|
||
END_IF;
|
||
|
||
|
||
|
||
REGION Kontrolle
|
||
(* IF #TRO267.nState = 1400 THEN
|
||
IF #TRO267.xTrolleyWithPart (* AND "DB_JamArea1110".stJam1110_4.arCarrier[1].nDestination = "cDestLeaveAmr" *) THEN
|
||
// "DB_JamArea1110".stJam1110_4.arCarrier[1].bStatus.%X1 := TRUE;
|
||
"DB_JamArea1110".stJam1110_4.arCarrier[1].nDestination := 0;
|
||
ELSIF #TRO267.xTrolleyWoPart THEN
|
||
// "DB_JamArea1110".stJam1110_4.arCarrier[1].bStatus.%X1 := FALSE;
|
||
"DB_JamArea1110".stJam1110_4.arCarrier[1].nDestination := 0;
|
||
END_IF;
|
||
END_IF; *)
|
||
END_REGION
|
||
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO267.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO267.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1110".stJam1110_4.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi267.1",
|
||
nOutDirection => #TRO267.nInDirection,
|
||
InOutCarrier := "DB_JamArea1110".stJam1110_4.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
REGION Send DUM to Fortna WCS
|
||
(* IF #TRO267.xOutBookedDir1 AND "FB_CommunicationWCSBL_DB".fbTeleHandler.xOutConnectionActive THEN
|
||
"FC_Send_GOHDUM"(sInPLCID := "cPLCID",
|
||
nInBarcode := #TRO313.stOutLastCarrier.nBarcode,
|
||
sInDecisionPoint := "cDP_REC_02",
|
||
sInActionTaken := '1',
|
||
nReasonCode := 1,
|
||
FIFO := "DB_LGF_FIFO_CommWCSBL",
|
||
BUFFER := "DB_Buffer_CommunicationWCSBL".BUFFER,
|
||
nInOutSequenceNumber := "DB_CommunicationParameters".nSeqNumWCSBL);
|
||
END_IF;
|
||
|
||
IF #TRO313.xOutBookedDir2 AND "FB_CommunicationWCSBL_DB".fbTeleHandler.xOutConnectionActive THEN
|
||
"FC_Send_GOHDUM"(sInPLCID := "cPLCID",
|
||
nInBarcode := #TRO313.stOutLastCarrier.nBarcode,
|
||
sInDecisionPoint := "cDP_REC_02",
|
||
sInActionTaken := '1',
|
||
nReasonCode := 1,
|
||
FIFO := "DB_LGF_FIFO_CommWCSBL",
|
||
BUFFER := "DB_Buffer_CommunicationWCSBL".BUFFER,
|
||
nInOutSequenceNumber := "DB_CommunicationParameters".nSeqNumWCSBL);
|
||
END_IF; *)
|
||
;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
|
||
REGION TRO 268 (1Sep2Switch)+Scanner(BX2101) // TODO
|
||
#TRO268.stInSeparator1.Settings.nSeparatorNo := "cSep270.1";
|
||
#TRO268.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO268.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO268.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO268.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO268.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4500"];
|
||
#TRO268.stInSenJam2 := "DB_Inputs".Sensors["cInBG4532"];
|
||
#TRO268.stInSenJam3 := "DB_Inputs".Sensors["cInBG4534"];
|
||
#TRO268.stInSenJam4 := "DB_Inputs".Sensors["cInBG4504"];
|
||
|
||
#TRO268.stInSwitch1.Settings.nSwitchNo := "cSwi268.1";
|
||
#TRO268.stInSwitch1.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO268.stInSwitch1.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO268.stInSwitch1.Settings.xNewSwitch := TRUE;
|
||
#TRO268.stInSwitch1.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
// #TRO268.stInSwitch2.Settings.nSwitchNo := "cSwi268.2"; todo
|
||
#TRO268.stInSwitch2.Settings.xPluggedExSen3 := FALSE;
|
||
#TRO268.stInSwitch2.Settings.xPluggedExSen4 := FALSE;
|
||
#TRO268.stInSwitch2.Settings.xNewSwitch := TRUE;
|
||
#TRO268.stInSwitch2.Settings.nTo1Destinations := 3; //Info nötig für HMI
|
||
|
||
#TRO268.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO268.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2101"].xInCamTriggerReady := "bx2101-TriggerReady";
|
||
#arCognexInterface["cScannerBX2101"].xInCamTriggerAck := "bx2101-TriggerAck";
|
||
#arCognexInterface["cScannerBX2101"].xInCamResultsAvailable := "bx2101-Results Available";
|
||
#arCognexInterface["cScannerBX2101"].xInCamGeneralFault := "bx2101-General Fault";
|
||
#arCognexInterface["cScannerBX2101"].hwInCamInspectionResults := "=A01+UC021-BX2101~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO268.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam4701.Config.nCapacitySet := 1;
|
||
#stJamDataHandoverJam1801.Config.nCapacitySet := 1;
|
||
|
||
REGION nur füt test
|
||
// "DB_JamArea1110".stJam1110_6.arCarrier[1].nDestination := 4; // 4=empty, 1=loaded, 0=kreisen, 3=F2H
|
||
|
||
END_REGION
|
||
|
||
#TRO268(nInMainTroNo := "cMainTro268",
|
||
xInSftyOk := "cTodoTRUE",
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO268,
|
||
xInCarouselRun1 := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
xInCarouselRun2 := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2101"],
|
||
arInOutJamEntr1 := "DB_JamArea1110".stJam1110_6.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1110".stJam1110_6.stData,
|
||
arInOutJamExit2 := #arCarrierHandoverJam4701, //"DB_JamArea4701".stJam4701_1.arCarrier,
|
||
stInOutJamExit2 := #stJamDataHandoverJam4701, //"DB_JamArea4701".stJam4701_1.stData,
|
||
arInOutJamExit3 := #arCarrierHandoverJam1801, //"DB_JamArea1801".stJam1801_1.arCarrier,
|
||
stInOutJamExit3 := #stJamDataHandoverJam1801, //"DB_JamArea1801".stJam1801_1.stData,
|
||
arInOutJamExit4 := "DB_JamArea1110".stJam1110_1.arCarrier,
|
||
stInOutJamExit4 := "DB_JamArea1110".stJam1110_1.stData,
|
||
xOutStopper1 => "MB4500",
|
||
xOutSw1ExTo3 => "MB4503",
|
||
xOutSw2ExTo3 => "MB4504",
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO268);
|
||
|
||
|
||
"bx2101-TriggerEnable" := #arCognexInterface["cScannerBX2101"].xOutCamTriggerEnable;
|
||
"bx2101-Trigger" := #arCognexInterface["cScannerBX2101"].xOutCamTrigger;
|
||
"bx2101-ResultsAck" := #arCognexInterface["cScannerBX2101"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO268.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO268.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1110".stJam1110_6.arCarrier[1]);
|
||
END_REGION ;
|
||
|
||
REGION Direction
|
||
"FC_Direction"(nInSwitchNo := "cSwi268.1",
|
||
nOutDirection => #TRO268.nInDirection,
|
||
InOutCarrier := "DB_JamArea1110".stJam1110_6.arCarrier[1]);
|
||
|
||
END_REGION
|
||
|
||
IF #TRO268.xOutNewScan THEN
|
||
"FC_Send_GOHDReqM"(sInPLCID := "cPLCID",
|
||
xInSSCCReq := FALSE,
|
||
xInLengthReq := FALSE,
|
||
xInDockDoorReq := FALSE,
|
||
xInLaneStatusReq := FALSE,
|
||
nInBarcode := "DB_JamArea1110".stJam1110_6.arCarrier[1].nBarcode,
|
||
sInSSCC := '',//#TRO110.fbBarcodeReaderSSCC.sOutBarcode,//DELETE(IN := LINT_TO_STRING(#TRO110.nOutScanResultSSCC), L := 1, P := 1),
|
||
sInDecisionPoint := 'GOH.Route.02',//"cDP_DOCK_02",
|
||
sInDockDoor := '',
|
||
sInLengthInfo := '',
|
||
arInLaneStatus := #tmpPlaceHolderLaneStatus,
|
||
nInLaneCnt := 0,
|
||
FIFO := "DB_LGF_FIFO_CommWCSBL",
|
||
BUFFER := "DB_Buffer_CommunicationWCSBL".BUFFER,
|
||
nInOutSequenceNumber := "DB_CommunicationParameters".nSeqNumWCSBL);
|
||
END_IF;
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 269 (1Sep)+Scanner (BX2102)
|
||
#TRO269.stInSeparator1.Settings.nSeparatorNo := "cSep269.1";
|
||
#TRO269.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO269.stInSeparator1.Settings.tTrailingTime := t#300ms;
|
||
#TRO269.stInSeparator1.Settings.tHandlingTime := t#0ms;
|
||
#TRO269.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO269.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO269.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO269.stInSeparator1.Settings.xPluggedScanner := TRUE;
|
||
#TRO269.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4505"];
|
||
#TRO269.stInSenJam2 := "DB_Inputs".Sensors["cInBG4507"];
|
||
|
||
#TRO269.stInBarcodeReader.Settings.xActivateCheckASCI := TRUE;
|
||
#TRO269.stInBarcodeReader.Settings.tTimeout := T#5s;
|
||
|
||
#arCognexInterface["cScannerBX2102"].xInCamTriggerReady := "bx2102-TriggerReady";
|
||
#arCognexInterface["cScannerBX2102"].xInCamTriggerAck := "bx2102-TriggerAck";
|
||
#arCognexInterface["cScannerBX2102"].xInCamResultsAvailable := "bx2102-Results Available";
|
||
#arCognexInterface["cScannerBX2102"].xInCamGeneralFault := "bx2102-General Fault";
|
||
#arCognexInterface["cScannerBX2102"].hwInCamInspectionResults := "=A01+UH02-BX2102~Ergebnisse_–_64_Bytes_1";
|
||
|
||
#TRO269(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO269.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO269.TroOut,
|
||
nInMainTroNo := "cMainTro269",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO269,
|
||
xInCarouselRun := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #arCognexInterface["cScannerBX2102"],
|
||
arInOutJamEntr1 := "DB_JamArea1110".stJam1110_1.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1110".stJam1110_1.stData,
|
||
arInOutJamExit2 := "DB_JamArea1110".stJam1110_2.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1110".stJam1110_2.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO269,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro269"],
|
||
xOutStopper1 => "MB4505");
|
||
|
||
"bx2102-TriggerEnable" := #arCognexInterface["cScannerBX2102"].xOutCamTriggerEnable;
|
||
"bx2102-Trigger" := #arCognexInterface["cScannerBX2102"].xOutCamTrigger;
|
||
"bx2102-ResultsAck" := #arCognexInterface["cScannerBX2102"].xOutCamResultsAck;
|
||
|
||
REGION CARR_GLOB_CORRECTION
|
||
"FC_CARR_GLOB_CORRECTION"(xInStart := #TRO269.xOutCorrection, //Führe Korrektur aus
|
||
nInBarcodeScan := #TRO269.nBarcodeResult,
|
||
nInStation := 1,
|
||
arOutEventLogInfo => #arDummyEventCorrectionInfo,
|
||
InOutCarrierExpect := "DB_JamArea1110".stJam1110_1.arCarrier[1]);
|
||
END_REGION
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 270 (Vario)
|
||
|
||
#TRO270.stInSeparator1.Settings.nSeparatorNo := "cSep270.1";
|
||
#TRO270.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO270.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO270.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO270.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO270.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO270.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO270.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO270.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4530"];
|
||
|
||
#TRO270.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO270.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO270.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4531"]; //Finger in Pos
|
||
#TRO270.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4533"]; // mT in Pos
|
||
#TRO270.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4553"]; // Conveyor full
|
||
#TRO270.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4554"]; // Jam detector
|
||
|
||
#TRO270.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO270.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO270.stInVario.Settings.tConvEmpty := T#45000ms;
|
||
#TRO270.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO270.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO270.stInVario.Settings.tRasterHigh := t#5s;
|
||
#TRO270.stInVario.Settings.tRasterLow := t#5s;
|
||
|
||
#TRO270.stInVario.Settings.xJamSenDelayActive := true;
|
||
#TRO270.stInVario.Settings.tJamSenDelay := t#1s;
|
||
|
||
#TRO270.stInVario.Settings.tCarrierInPosDelay := t#1200ms;
|
||
#TRO270.stInVario.Settings.tCarrierInPosEdgeDelay := t#100ms;
|
||
|
||
#TRO270.stInVario.Settings.xLongSlope := TRUE;
|
||
|
||
#TRO270.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam4701_2.Config.nCapacitySet := 1;
|
||
|
||
#TRO270.stInSettings.xIsBorner := TRUE;
|
||
|
||
#TRO270(nInMainTroNo := "cMainTro270",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF1,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0074",
|
||
xInRelease := "DB_TRO_Test".TRO270,
|
||
arInOutJamEntr := "DB_JamArea4701".stJam4701_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea4701".stJam4701_1.stData,
|
||
arInOutJamFinger := #arCarrierHandoverJam4701_2, //"DB_JamArea4701".stJam4701_2.arCarrier,
|
||
stInOutJamFinger := #stJamDataHandoverJam4701_2, //"DB_JamArea4701".stJam4701_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO270,
|
||
xOutStopper => "MB4530",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro270"],
|
||
xOutVarioMotor => "MA0074");
|
||
|
||
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 271 (1Sep)
|
||
(* #TRO271.stInSeparator1.Settings.nSeparatorNo := "cSep271.1";
|
||
#TRO271.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO271.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO271.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO271.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO271.stInSeparator1.Settings.xPluggedJam := true;
|
||
#TRO271.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO271.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO271.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4555"];
|
||
#TRO271.stInSenJam2 := "DB_Inputs".Sensors["cInBG4546"];
|
||
|
||
#TRO271.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO271.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO271.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam4301.Config.nCapacitySet := 1; //
|
||
|
||
#TRO271(nInMainTroNo := "cMainTro271",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInCarouselRun := TRUE,
|
||
xInRelease := true,
|
||
// "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X3 AND //Ready von UH03
|
||
// NOT "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X4 AND //Busy von UH03
|
||
// NOT "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X3, //Release aktiv
|
||
stInOutMachineState := #stInOutControlUnitCabinet,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea4701".stJam4701_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea4701".stJam4701_2.stData,
|
||
arInOutJamExit2 := #arCarrierHandoverJam4301,//Jam Übergabe zu Highway Empty
|
||
stInOutJamExit2 := #stJamDataHandoverJam4301,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO271,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro271"],
|
||
xOutStopper1 => "MB4555"); *)
|
||
|
||
"MB4555" := "IO_Device_UH03_FROM_UH01".xJAM_3;
|
||
|
||
|
||
REGION UH02 <-> UH03
|
||
|
||
(* #fTrig_TRO271_TRO306(CLK := "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X4);
|
||
|
||
IF #TRO271.nState = 2500 AND #TRO271.fbSeparator1.xOutTrolleyReleasedEdge THEN
|
||
"IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X3 := TRUE; //Release von UH02 zu UH03
|
||
ELSIF #fTrig_TRO271_TRO306.Q THEN
|
||
"IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X3 := FALSE; //Release von UH02 zu UH03
|
||
END_IF; *)
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 272 (Vario)
|
||
|
||
#TRO272.stInSeparator1.Settings.nSeparatorNo := "cSep272.1";
|
||
#TRO272.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO272.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO272.stInSeparator1.Settings.tHandlingTime := t#400ms;
|
||
#TRO272.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO272.stInSeparator1.Settings.xPluggedJam := FALSE;
|
||
#TRO272.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO272.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO272.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4535"];
|
||
|
||
#TRO272.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO272.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO272.stInVario.stSenFinger := "DB_Inputs".Sensors["cInBG4536"]; //Finger in Pos
|
||
#TRO272.stInVario.stSenCarrInPos := "DB_Inputs".Sensors["cInBG4537"]; // MT in Pos
|
||
#TRO272.stInVario.stSenLastPos := "DB_Inputs".Sensors["cInBG4550"]; // Conveyor full
|
||
#TRO272.stInVario.stSenJam := "DB_Inputs".Sensors["cInBG4551"]; // Jam detector
|
||
|
||
#TRO272.stInVario.Settings.xContinousEmptying := FALSE;
|
||
#TRO272.stInVario.Settings.tWaitForJog := T#400ms;
|
||
#TRO272.stInVario.Settings.tConvEmpty := T#30000ms;
|
||
#TRO272.stInVario.Settings.nCountCarrier := 1;
|
||
#TRO272.stInVario.Settings.tWaitForStop := T#3s;
|
||
|
||
#TRO272.stInVario.Settings.tRasterHigh := t#5s;
|
||
#TRO272.stInVario.Settings.tRasterLow := t#5s;
|
||
|
||
#TRO272.stInVario.Settings.xJamSenDelayActive := true;
|
||
#TRO272.stInVario.Settings.tJamSenDelay := t#1s;
|
||
|
||
#TRO272.stInVario.Settings.tCarrierInPosDelay := t#1200ms;
|
||
#TRO272.stInVario.Settings.tCarrierInPosEdgeDelay := t#100ms;
|
||
|
||
#TRO272.stInVario.Settings.xLongSlope := TRUE;
|
||
|
||
#TRO272.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam1801_2.Config.nCapacitySet := 1;
|
||
|
||
#TRO272.stInSettings.xIsBorner := TRUE;
|
||
#TRO272(nInMainTroNo := "cMainTro272",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInAutomatic := #t_Automatik_OF1,
|
||
xInReset := "cTodoFalse",
|
||
xInMotorProtection := "FC0076",
|
||
xInRelease := "DB_TRO_Test".TRO272,
|
||
arInOutJamEntr := "DB_JamArea1801".stJam1801_1.arCarrier,
|
||
stInOutJamEntr := "DB_JamArea1801".stJam1801_1.stData,
|
||
arInOutJamFinger := #arCarrierHandoverJam1801_2,//"DB_JamArea1801".stJam1801_2.arCarrier,
|
||
stInOutJamFinger := #stJamDataHandoverJam1801_2,//"DB_JamArea1801".stJam1801_2.stData,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO272,
|
||
xOutStopper => "MB4535",
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro272"],
|
||
xOutVarioMotor => "MA0076");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 273 (1Sep)
|
||
(* #TRO273.stInSeparator1.Settings.nSeparatorNo := "cSep273.1";
|
||
#TRO273.stInSeparator1.Settings.tTrailingTime := "cTimeSepTrailing";
|
||
#TRO273.stInSeparator1.Settings.tHandlingTime := T#400ms;
|
||
#TRO273.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Short";
|
||
#TRO273.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO273.stInSeparator1.Settings.xPluggedJam := TRUE; //FALSE;
|
||
#TRO273.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO273.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO273.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4552"];
|
||
#TRO273.stInSenJam2 := "DB_Inputs".Sensors["cInBG4547"];
|
||
|
||
#TRO273.stInSeparator1.Settings.tSenFree := T#1200ms;
|
||
#TRO273.stInSeparator1.Settings.tSenWait := T#4300ms;
|
||
|
||
#TRO273.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#stJamDataHandoverJam4401.Config.nCapacitySet := 1; //
|
||
|
||
#TRO273(nInMainTroNo := "cMainTro273",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInCarouselRun := TRUE,
|
||
xInRelease := true,
|
||
// "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X5 AND //Ready von UH03
|
||
// NOT "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X6 AND //Busy von UH03
|
||
// NOT "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X4, //Release aktiv
|
||
stInOutMachineState := #stInOutControlUnitCabinet,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1801".stJam1801_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1801".stJam1801_2.stData,
|
||
arInOutJamExit2 := #arCarrierHandoverJam4401,//Jam Übergabe zu Highway Loaded
|
||
stInOutJamExit2 := #stJamDataHandoverJam4401,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO273,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro273"],
|
||
xOutStopper1 => "MB4552"); *)
|
||
|
||
"MB4552" := "IO_Device_UH03_FROM_UH01".xJAM_2;
|
||
|
||
REGION UH02 <-> UH03
|
||
|
||
// #fTrig_TRO273_TRO307(CLK := "IO_Device_UH03_FROM_UH01".bCARRIER_CONTROL.%X6); //flanke Busy
|
||
|
||
// IF #TRO273.nState = 2500 AND #TRO273.fbSeparator1.xOutTrolleyReleasedEdge THEN //Release von TRO
|
||
// "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X4 := TRUE; //Release von UH02 zu UH03
|
||
// ELSIF #fTrig_TRO273_TRO307.Q THEN //Busy fällt ab
|
||
// "IO_Device_UH02_TO_UH01".bCARRIER_CONTROL.%X4 := FALSE; //Release von UH02 zu UH03
|
||
// END_IF;
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 274 (1Sep)
|
||
#TRO274.stInSeparator1.Settings.nSeparatorNo := "cSep274.1";
|
||
#TRO274.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO274.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO274.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO274.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO274.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO274.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4512"];
|
||
#TRO274.stInSenJam2 := "DB_Inputs".Sensors["cInBG4514"];
|
||
|
||
#TRO274(stInPriorityManager := "DB_Prozessdaten".stPriorityManager.udt_TRO274.TroIn,
|
||
stOutPriorityManager => "DB_Prozessdaten".stPriorityManager.udt_TRO274.TroOut,
|
||
nInMainTroNo := "cMainTro274",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO274,
|
||
xInCarouselRun := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1110".stJam1110_2.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1110".stJam1110_2.stData,
|
||
arInOutJamExit2 := "DB_JamArea1110".stJam1110_3.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1110".stJam1110_3.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO274,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro274"],
|
||
xOutStopper1 => "MB4512");
|
||
|
||
END_REGION
|
||
|
||
REGION TRO 275 (1Sep)
|
||
#TRO275.stInSeparator1.Settings.nSeparatorNo := "cSep275.1";
|
||
#TRO275.stInSeparator1.Settings.tDelayToNextItem := "TimeForSepWaiting_Medium";
|
||
#TRO275.stInSeparator1.Settings.tJam := "TimeForSepJam";
|
||
#TRO275.stInSeparator1.Settings.xPluggedJam := TRUE;
|
||
#TRO275.stInSeparator1.Settings.xPluggedPart := FALSE;
|
||
#TRO275.stInSeparator1.Settings.xPluggedScanner := FALSE;
|
||
#TRO275.stInSeparator1.stSenInSep := "DB_Inputs".Sensors["cInBG4456"];
|
||
#TRO275.stInSenJam2 := "DB_Inputs".Sensors["cInBG4457"];
|
||
|
||
#TRO275.stInPriorityManager.xReleaseOk := TRUE; // braucht keine Vorfahrtsregelung
|
||
|
||
#TRO275(nInMainTroNo := "cMainTro275",
|
||
xInSftyOk := "DB_InterfaceSafety".stFromSafety.EStopMainOF1.Q,
|
||
xInAllRdyToStart := TRUE,
|
||
xInCancel := "cTodoFalse",
|
||
xInRelease := "DB_TRO_Test".TRO275,
|
||
xInCarouselRun := #fbCarousel1110.xOutConveyorFullSpeed,
|
||
stInOutMachineState := #stInOutControlUnitCabinetOF1,
|
||
stInOutCognexInterface := #stCognexInterfaceDummy,
|
||
arInOutJamEntr1 := "DB_JamArea1110".stJam1110_5.arCarrier,
|
||
stInOutJamEntr1 := "DB_JamArea1110".stJam1110_5.stData,
|
||
arInOutJamExit2 := "DB_JamArea1110".stJam1110_6.arCarrier,
|
||
stInOutJamExit2 := "DB_JamArea1110".stJam1110_6.stData,
|
||
stInOutHMI := "DB_Interface_HMI".stTRO.TRO275,
|
||
nOutStateLast => "DB_GLOB_TroState".arTroState["cMainTro275"],
|
||
xOutStopper1 => "MB4456");
|
||
|
||
END_REGION
|
||
|
||
END_REGION
|
||
|
||
REGION TCP Communication
|
||
"FB_CommunicationWCSBL_DB"(fbInOutSendFIFO := "DB_LGF_FIFO_CommWCSBL",
|
||
arFifoSendBuffer := "DB_Buffer_CommunicationWCSBL".BUFFER);
|
||
|
||
"FB_CommunicationWES_ASRS_DB"(fbInOutSendFIFO := "DB_LGF_FIFO_CommWES_ASRS",
|
||
arFifoSendBuffer := "DB_Buffer_CommunicationWES_ASRS".BUFFER);
|
||
END_REGION
|
||
|
||
REGION StorageManagement
|
||
"FB_StorageManagementCall_DB"();
|
||
END_REGION
|
||
|
||
// "DB_JamArea1102".stJam1102_1.arCarrier[1].nDestination := "cDest11100";
|
||
// //"DB_JamArea1102".stJam1102_1.arCarrier[1].bStatus.%X5 := TRUE;
|
||
"DB_JamArea1202".stJam1202_1.arCarrier[1].nDestination := 12400;
|
||
END_FUNCTION_BLOCK
|
||
|