Bitte nicht erschrecken. Ich habe die Position, die er anfahren soll, mit einem Smiley markiert.
LBL[150] ;
293: !******************************** ;
294: !ZUR AUFNAHME 1/2/3/4 WENDER FAHR ;
295: !******************************** ;
296: JMP LBL[159] ;
297: !AUFNAHMEPOSITION 1 WENDER TEACHE ;
298:L P[12] 100mm/sec FINE ;
299: !AUFNAHMEPOSITION 2 WENDER TEACHE ;
300:L P[13] 100mm/sec FINE ;
301: !AUFNAHMEPOSITION 3 WENDER TEACHE ;
302:L P[14] 100mm/sec FINE ;
303: !AUFNAHMEPOSITION 4 WENDER TEACHE ;
304:L P[15] 100mm/sec FINE ;
305: !ENDE TEACHEN ;
306: LBL[159] ;
307: ;
308: !POSITION LADEN ;
309: PR[12:AUFN_1_WENDER]=P[12] ;
310: PR[13:AUFN_2_WENDER]=P[13] ;
311: PR[14:AUFN_3_WENDER]=P[14] ;
312: PR[15:AUFN_4_WENDER]=P[15] ;
313: ;
314: UTOOL_NUM=2 ;
315: F[3:Ueberw. Stempel 0 Grad]=(OFF) ;
316: RO[1:STEMPEL NACH 0 GRAD]=OFF ;
317: RO[2:STEMPEL NACH 90 GRAD]=ON ;
318: LOCK PREG ;
319:J PR[26:ZWISCHEN_03] 100% CNT100 ACC100 ;
320: UNLOCK PREG ;
321: ;
322: !WARTEN AUF FREIG.AUFNAHME WENDER ;
323: WAIT (DI[186:FREIGABE AUFNAHME 1] OR DI[187:FREIGABE AUFNAHME 2] OR DI[188:FREIGABE AUFNAHME 3] OR DI[189:FREIGABE AUFNAHME 4]) ;
324: CALL SUB_SAUGSTEMPEL_90_GRAD ;
325: ;
326: IF (DI[186:FREIGABE AUFNAHME 1]),JMP LBL[151] ;
327: IF (DI[187:FREIGABE AUFNAHME 2]),JMP LBL[152] ;
328: IF (DI[188:FREIGABE AUFNAHME 3]),JMP LBL[153] ;
329: IF (DI[189:FREIGABE AUFNAHME 4]),JMP LBL[154] ;
330: ;
331: LBL[151] ;
332: !AUFNAHME TEIL 1 ;
333: UTOOL_NUM=2 ;
334: PR[2,1:TOOL_OFFSET]=0 ;
335: PR[2,2:TOOL_OFFSET]=0 ;
336: PR[2,3:TOOL_OFFSET]=(-100) ;
337: PR[2,4:TOOL_OFFSET]=0 ;
338: PR[2,5:TOOL_OFFSET]=0 ;
339: PR[2,6:TOOL_OFFSET]=0 ;
340: LOCK PREG ;
341:J PR[12:AUFN_1_WENDER] 80% CNT20 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
342: UNLOCK PREG ;
343: WAIT .80(sec) ;
344: ;
345: WAIT (DI[186:FREIGABE AUFNAHME 1]) ;
346: LOCK PREG ;
347:L PR[12:AUFN_1_WENDER] 800mm/sec CNT2 ACC100 ;
348: UNLOCK PREG ;
349: ;
350: CALL SUB_VAKUUM_STEMPEL_EIN ;
351: DO[186:Teil 1 aufgenommen]=ON ;
352: WAIT (!DI[186:FREIGABE AUFNAHME 1]) ;
353: DO[186:Teil 1 aufgenommen]=OFF ;
354: WAIT .10(sec) ;
355: F[1:Vakuumueberw. Stempel]=(ON) ;
356: ;
357: PR[2,1:TOOL_OFFSET]=0 ;
358: PR[2,2:TOOL_OFFSET]=0 ;
359: PR[2,3:TOOL_OFFSET]=(-100) ;
360: PR[2,4:TOOL_OFFSET]=0 ;
361: PR[2,5:TOOL_OFFSET]=0 ;
362: PR[2,6:TOOL_OFFSET]=0 ;
363: LOCK PREG ;
364:L PR[12:AUFN_1_WENDER] 2000mm/sec CNT100 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
365: UNLOCK PREG ;
366: JMP LBL[200] ;
367: ;
368: LBL[152] ;
369: !AUFNAHME TEIL 2 ;
370: UTOOL_NUM=2 ;
371: PR[2,1:TOOL_OFFSET]=0 ;
372: PR[2,2:TOOL_OFFSET]=0 ;
373: PR[2,3:TOOL_OFFSET]=(-100) ;
374: PR[2,4:TOOL_OFFSET]=0 ;
375: PR[2,5:TOOL_OFFSET]=0 ;
376: PR[2,6:TOOL_OFFSET]=0 ;
377: LOCK PREG ;
378:J PR[13:AUFN_2_WENDER] 80% CNT20 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
379: UNLOCK PREG ;
380: ;
381: WAIT (DI[187:FREIGABE AUFNAHME 2]) ;
382: LOCK PREG ;
383:L PR[13:AUFN_2_WENDER] 800mm/sec CNT2 ACC100 ;
384: UNLOCK PREG ;
385: ;
386: CALL SUB_VAKUUM_STEMPEL_EIN ;
387: DO[187:Teil 2 aufgenommen]=ON ;
388: WAIT (!DI[187:FREIGABE AUFNAHME 2]) ;
389: DO[187:Teil 2 aufgenommen]=OFF ;
390: WAIT .10(sec) ;
391: F[1:Vakuumueberw. Stempel]=(ON) ;
392: ;
393: PR[2,1:TOOL_OFFSET]=0 ;
394: PR[2,2:TOOL_OFFSET]=0 ;
395: PR[2,3:TOOL_OFFSET]=(-100) ;
396: PR[2,4:TOOL_OFFSET]=0 ;
397: PR[2,5:TOOL_OFFSET]=0 ;
398: PR[2,6:TOOL_OFFSET]=0 ;
399: LOCK PREG ;
400:L PR[13:AUFN_2_WENDER] 2000mm/sec CNT100 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
401: UNLOCK PREG ;
402: JMP LBL[200] ;
403: ;
404: LBL[153] ;
405: !AUFNAHME TEIL 3 ;
406: UTOOL_NUM=2 ;
407: PR[2,1:TOOL_OFFSET]=0 ;
408: PR[2,2:TOOL_OFFSET]=0 ;
409: PR[2,3:TOOL_OFFSET]=(-100) ;
410: PR[2,4:TOOL_OFFSET]=0 ;
411: PR[2,5:TOOL_OFFSET]=0 ;
412: PR[2,6:TOOL_OFFSET]=0 ;
413: LOCK PREG ;
414:J PR[14:AUFN_3_WENDER] 80% CNT20 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
415: UNLOCK PREG ;
416: ;
417: WAIT (DI[188:FREIGABE AUFNAHME 3]) ;
418: LOCK PREG ;
419:L PR[14:AUFN_3_WENDER] 800mm/sec CNT2 ACC100 ;
420: UNLOCK PREG ;
421: ;
422: CALL SUB_VAKUUM_STEMPEL_EIN ;
423: DO[188:Teil 3 aufgenommen]=ON ;
424: WAIT (!DI[188:FREIGABE AUFNAHME 3]) ;
425: DO[188:Teil 3 aufgenommen]=OFF ;
426: WAIT .10(sec) ;
427: F[1:Vakuumueberw. Stempel]=(ON) ;
428: ;
429: PR[2,1:TOOL_OFFSET]=0 ;
430: PR[2,2:TOOL_OFFSET]=0 ;
431: PR[2,3:TOOL_OFFSET]=(-100) ;
432: PR[2,4:TOOL_OFFSET]=0 ;
433: PR[2,5:TOOL_OFFSET]=0 ;
434: PR[2,6:TOOL_OFFSET]=0 ;
435: LOCK PREG ;
436:L PR[14:AUFN_3_WENDER] 2000mm/sec CNT100 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
437: UNLOCK PREG ;
438: JMP LBL[200] ;
439: ;
440: LBL[154] ;
441: !AUFNAHME TEIL 4 ;
442: UTOOL_NUM=2 ;
443: PR[2,1:TOOL_OFFSET]=0 ;
444: PR[2,2:TOOL_OFFSET]=0 ;
445: PR[2,3:TOOL_OFFSET]=(-100) ;
446: PR[2,4:TOOL_OFFSET]=0 ;
447: PR[2,5:TOOL_OFFSET]=0 ;
448: PR[2,6:TOOL_OFFSET]=0 ;
449: LOCK PREG ;
450:J PR[15:AUFN_4_WENDER] 80% CNT20 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
451: UNLOCK PREG ;
452: ;
453: WAIT (DI[189:FREIGABE AUFNAHME 4]) ;
454: LOCK PREG ;
455:L PR[15:AUFN_4_WENDER] 800mm/sec CNT2 ACC100 ;
456: UNLOCK PREG ;
457: ;
458: CALL SUB_VAKUUM_STEMPEL_EIN ;
459: DO[189:Teil 4 aufgenommen]=ON ;
460: WAIT (!DI[189:FREIGABE AUFNAHME 4]) ;
461: DO[189:Teil 4 aufgenommen]=OFF ;
462: WAIT .10(sec) ;
463: F[1:Vakuumueberw. Stempel]=(ON) ;
464: ;
465: PR[2,1:TOOL_OFFSET]=0 ;
466: PR[2,2:TOOL_OFFSET]=0 ;
467: PR[2,3:TOOL_OFFSET]=(-100) ;
468: PR[2,4:TOOL_OFFSET]=0 ;
469: PR[2,5:TOOL_OFFSET]=0 ;
470: PR[2,6:TOOL_OFFSET]=0 ;
471: LOCK PREG ;
472:L PR[15:AUFN_4_WENDER] 2000mm/sec CNT100 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
473: UNLOCK PREG ;
LBL[200] ;
477: !******************************** ;
478: !ZUR ABGABE BOX FAHREN ;
479: !******************************** ;
480: JMP LBL[299] ;
481: !ABGABEPOSITION 1 TEACHEN ;
482:L P[31] 100mm/sec FINE ;
483: !ABGABEPOSITION 2 TEACHEN ;
484:L P[32] 100mm/sec FINE ;
485: !ABGABEPOSITION 3 TEACHEN ;
486:L P[33] 100mm/sec FINE ;
487: !ABGABEPOSITION 4 TEACHEN ;
488:L P[34] 100mm/sec FINE ;
489: !ABGABEPOSITION 5 TEACHEN ;
490:L P[35] 100mm/sec FINE ;
491: !ABGABEPOSITION 6 TEACHEN ;
492:L P[36] 100mm/sec FINE ;
493: !ABGABEPOSITION 7 TEACHEN ;
494:L P[37] 100mm/sec FINE ;
495: !ABGABEPOSITION 8 TEACHEN ;
496:L P[38] 100mm/sec FINE ;
497: !ABGABEPOSITION 9 TEACHEN ;
498:L P[39] 100mm/sec FINE ;
499: !ENDE TEACHEN ;
500: LBL[299] ;
501: ;
502: !WARTEN AUF FREIGABE ABGABE BOX ;
503: UTOOL_NUM=2 ;
504: RO[2:STEMPEL NACH 90 GRAD]=ON ;
505: WAIT (DI[191:FREIGABE BOX]) ;
506: CALL SUB_SAUGSTEMPEL_90_GRAD ;
507: ;
508: !ABFRAGE NEUE BOX VORHANDEN ;
509: IF (DI[192:NEUE BOX VORHANDEN]) THEN ;
510: R[2:AKT_LAGE]=0 ;
511: R[3:AKT_STAPEL]=1 ;
512: DO[192:Quittierung neue Box]=ON ;
513: WAIT (!DI[192:NEUE BOX VORHANDEN]) ;
514: DO[192:Quittierung neue Box]=OFF ;
515: ENDIF ;
516: ;
517: !AUSWAHL AKTUELLER STAPEL ;
518: !ABGABEPOSITION 1 LADEN ;
519: IF (R[3:AKT_STAPEL]=1) THEN ;
520: PR[21:AKT_BOX_ABGABE]=P[31] ;
521: JMP LBL[250] ;
522: ENDIF ;
523: !ABGABEPOSITION 2 LADEN ;
524: IF (R[3:AKT_STAPEL]=2) THEN ;
525: PR[21:AKT_BOX_ABGABE]=P[32] ;
526: JMP LBL[250] ;
527: ENDIF ;
528: !ABGABEPOSITION 3 LADEN ;
529: IF (R[3:AKT_STAPEL]=3) THEN ;
530: PR[21:AKT_BOX_ABGABE]=P[33] ;
531: JMP LBL[250] ;
532: ENDIF ;
533: !ABGABEPOSITION 4 LADEN ;
534: IF (R[3:AKT_STAPEL]=4) THEN ;
535: PR[21:AKT_BOX_ABGABE]=P[34] ;
536: JMP LBL[250] ;
537: ENDIF ;
538: !ABGABEPOSITION 5 LADEN ;
539: IF (R[3:AKT_STAPEL]=5) THEN ;
540: PR[21:AKT_BOX_ABGABE]=P[35] ;
541: JMP LBL[250] ;
542: ENDIF ;
543: !ABGABEPOSITION 6 LADEN ;
544: IF (R[3:AKT_STAPEL]=6) THEN ;
545: PR[21:AKT_BOX_ABGABE]=P[36] ;
546: JMP LBL[250] ;
547: ENDIF ;
548: !ABGABEPOSITION 7 LADEN ;
549: IF (R[3:AKT_STAPEL]=7) THEN ;
550: PR[21:AKT_BOX_ABGABE]=P[37] ;
551: JMP LBL[250] ;
552: ENDIF ;
553: !ABGABEPOSITION 8 LADEN ;
554: IF (R[3:AKT_STAPEL]=8) THEN ;
555: PR[21:AKT_BOX_ABGABE]=P[38] ;
556: JMP LBL[250] ;
557: ENDIF ;
558: !ABGABEPOSITION 9 LADEN ;
559: IF (R[3:AKT_STAPEL]=9) THEN ;
560: PR[21:AKT_BOX_ABGABE]=P[39] ;
561: JMP LBL[250] ;
562: ENDIF ;
563: !ENDE ABGABEPOSITION LADEN ;
564: JMP LBL[200] ;
565: ;
566: LBL[250] ;
567: !UEBER BOX FAHREN ;
568: PR[1:AKT_POS]=PR[21:AKT_BOX_ABGABE] ;
569: PR[1,3:AKT_POS]=350 ;
570: LOCK PREG ;
571: J PR[1:AKT_POS] 100% CNT100 ACC100 ;
572: UNLOCK PREG ;
573: ;
574: !ABGABE IN BOX ;
575: UTOOL_NUM=2 ;
576: PR[2,1:TOOL_OFFSET]=0 ;
577: PR[2,2:TOOL_OFFSET]=0 ;
578: PR[2,3:TOOL_OFFSET]=R[2:AKT_LAGE]*R[5:LAGENABSTAND] ;
579: PR[2,4:TOOL_OFFSET]=0 ;
580: PR[2,5:TOOL_OFFSET]=0 ;
581: PR[2,6:TOOL_OFFSET]=0 ;
582: LOCK PREG ;
583:L PR[21:AKT_BOX_ABGABE] 800mm/sec CNT5 Tool_Offset,PR[2:TOOL_OFFSET] ACC100 ;
584: UNLOCK PREG ;
585: ;
586: F[1:Vakuumueberw. Stempel]=(OFF) ;
587: CALL SUB_VAKUUM_STEMPEL_AUS ;
588: R[2:AKT_LAGE]=R[2:AKT_LAGE]+1 ;
589: DO[176:Gutteilezaehler 1]=PULSE,0.3sec ;
590: !ABFRAGE LAGENZAEHLER ;
591: IF (R[2:AKT_LAGE]>=GI[3:SOLLANZAHL LAGEN]) THEN ;
592: R[2:AKT_LAGE]=0 ;
593: R[3:AKT_STAPEL]=R[3:AKT_STAPEL]+1 ;
594: ENDIF ;