0 BEGIN PGM 8175_DE MM 1 ;NC-Programm, bei dem aus dem Programm heraus 2 ;eine Protokolldatei erzeugt wird. Da 3 ;in dem Protokoll auch die 4 ;Programmlaufzeit dokumentiert ist, beginnt 5 ;das Programm mit dem automatischen Auslesen 6 ;der aktuellen Systemzeit in Sekunden. Im 7 ;Anschluss schreibt die Steuerung den Inhalt 8 ;einer Maskendatei in das Protokoll. Diese 9 ;enthaelt in diesem Beispiel das aktuelle 10 ;Datum, die Uhrzeit beim Programmstart und den 11 ;Programmnamen inklusive des Dateipfades. 12 ;Diese Informationen ermittelt die Steuerung 13 ;mittels der in der Maskendatei definierten 14 ;Syntax automatisch. 15 ;Nun wuerde die Bearbeitung erfolgen. Diese 16 ;ist im Beispiel durch eine Verweilzeit 17 ;simulliert. 18 ;Vor dem Programmende ruft die Steuerung 19 ;ein Unterprogramm zur Berechnung der 20 ;Programmlaufzeit auf. In diesem liest sie 21 ;zunaechst erneut die aktuelle Systemzeit in 22 ;Sekunden aus. Aus dieser und der am 23 ;Programmanfang ausgelesenen Zeit errechnet 24 ;die Steuerung die waehrend des 25 ;Programmlaufs vergangene Zeit in Sekunden. 26 ;Im Anschluss rechnet die Steuerung diese in 27 ;Stunden, Minuten und Sekunden um. 28 ;Die so ermittelten Werte schreibt sie, 29 ;mittels einer weiteren Maskendatei auch in 30 ;das Protokoll. 31 ;Sie als Bediener muessen lediglich die Pfade 32 ;der Maskendateien und den Namen der zu 33 ;erstellenden Protokolldatei anpassen. 34 ; 35 ;!WICHTIG! Wenn Sie das Programm mehrfach 36 ;starten, ohne die Protokolldatei zu loeschen 37 ;oder diese umzubenennen, werden die neuen 38 ;Eintraege an das bereits vorhandene Protokoll 39 ;angehaengt. Auch Programmdurchlaeufe im 40 ;Programmtest werden protokolliert. Dabei 41 ;wird eine Verweilzeit aber nicht 42 ;beruecksichtigt. 43 ; 44 ; 45 ;Programmanfang 46 FN 18: SYSREAD Q10 = ID320 NR1 IDX0 ;Aktuelle Systemzeit in Sekunden auslesen 47 ;Maske 81751_de.a in das Protokoll schreiben 48 ;!Hier muessen Sie den Pfad der Maskendatei 49 ;und den Protokollnamen definieren! 50 FN 16: F-PRINT 81751_de.a / Protokoll_8175.txt 51 ; 52 ;Bearbeitung, hier mit einer Verweilzeit 53 ;simuliert 54 CYCL DEF 9.0 VERWEILZEIT 55 CYCL DEF 9.1 V.ZEIT999 56 ; 57 ;Unterprogramm zur Berechnung der 58 ;Programmlaufzeit aufrufen 59 CALL LBL 1 60 ;Maske 81752_de.a mit der berechneten 61 ;Programmlaufzeit in das Protokoll schreiben 62 ;!Hier muessen Sie den Pfad der Maskendatei 63 ;und den Protokollnamen definieren! 64 FN 16: F-PRINT 81752_de.a / Protokoll_8175.txt 65 ; 66 ;Programmende 67 M30 68 ; 69 ;Unterprogramm zur Berechnung der 70 ;Programmlaufzeit 71 LBL 1 72 FN 18: SYSREAD Q11 = ID320 NR1 IDX0 ;Aktuelle Systemzeit in Sekunden auslesen 73 FN 2: Q12 =+Q11 - +Q10 ;Systemzeit Start von der Systemzeit Ende abziehen in Sekunden 74 Q13 = Q12 / 3600 ;Berechnung der Stunden 75 Q20 = INT Q13 ;Nachkommastellen der Stunden abschneiden 76 Q14 = Q20 * 3600 ;Stunden in Sekunden umrechnen 77 Q15 = Q12 - Q14 ;Berechnung der Restsekunden 78 Q16 = Q15 / 60 ;Berechnung der Minuten 79 Q21 = INT Q16 ;Nachkommastellen der Minuten abschneiden 80 Q17 = Q21 * 60 ;Minuten in Sekunden umrechnen 81 Q22 = Q15 - Q17 ;Berechnung der Restsekunden 82 LBL 0 83 ; 84 END PGM 8175_DE MM