EDN Admin
Well-known member
I am using regex to find text within lines, and when i use an online tool, i get all of the text that i need. when i use the following code, i only get one match even if theres other text thats the same.
the text im using as a sample is
<pre>ERUNG FUER BAHNTREUE NOT-AUS-BREMSUNG STRUC STOPMESS INT CONFNO,GRO,MESSNO,STATE,CAUSE_T CAUSE;CONFNO = QUITTUNGSNUMMER, GRO = MELDUNGSGRUPPE, MESSNO = MELDUNGSNUMMER, STATE = STATUS,CAUSE = VERURSACHER STRUC EMSTOP_PATH EMSTOP T1,T2,AUT,EX;PROJEKTIERUNG FUER BAHNTREUE NOT-AUS-BREMSUNG STRUC AXIS_CAL BOOL A1,A2,A3,A4,A5,A6,E1,E2,E3,E4,E5,E6 STRUC AXIS_INC INT I1,I2,I3,I4,I5,I6,E1,E2,E3,E4,E5,E6;INKREMENTELLE ISTWERTE ENUM ROTSYS AS_TRA,TCP,BASE ENUM MODUS_T SYNC, ASYNC, ABS, COND, SEQ ENUM IPO_MODE BASE,TCP ENUM EXT_IPO_MODE STANDARD, WP, PP ENUM LASER_MODE PROCESS, PILOT ENUM MODE_OP T1, T2, AUT, EX, INVALID ENUM PRO_MODE ISTEP, PSTEP, MSTEP, CSTEP, GO, BSTEP ENUM DEVICE ACTIVE, BLOCK, PASSIVE, OFF ENUM COSYS AX,CAR ENUM MODE_MOVE MM,MC,MI ENUM TRANSSYS WORLD,BASE,ROBROOT,TCP ENUM KINCLASS STANDARD,SPECIAL,TEST,NONE;KINEMATIKKLASSEN ENUM MAIN_AXIS SS,CC,NR,SC,RR,CS,NN,RN,NS,LR;GRUNDACHSENKENNUNG (SS = PORTAL, CC = SCARA, NR = GELENKROBOTER, SS = PORTAL CC = SCARA, NR = GELENKROBOTER ENUM WRIST_AXIS NOH,ZEH,SRH,DSH,WIH,WSH;HANDACHSENKENNUNG (NOH = KEINE HAND, ZEH = ZENTRALHAND, SRH = SCHRAEGHAND, DSH = DOPPELSCHRAEGHAND, WIH = WINKELHAND, WSH = WINKELSCHRAEGHAND) ENUM ESYS NONE,EASYS,EBSYS,ECSYS,EDSYS,EESYS,EFSYS,ERSYS,ROBOT,CONVEYOR;ZULAESSIGE EXTERNE SYSTEME STRUC EX_KIN ESYS ET1,ET2,ET3,ET4,ET5,ET6;EXTERNE KINEMATIKEN-TRANSFORMATIONEN ENUM EAX NONE,E1,E2,E3,E4,E5,E6;ZULAESSIGE EXTERNE ACHSEN STRUC ET_AX EAX TR_A1,TR_A2,TR_A3;ACHSEN EINER TRAFO FUER EXTERNE KIN. ENUM PRO_STATE P_FREE, P_RESET, P_ACTIVE, P_STOP, P_END ENUM ORI_TYPE VAR, CONSTANT, JOINT, IGNORE;ORIENTIERUNGSFUEHRUNG ENUM CIRC_TYPE BASE,PATH;BEZUGSSYSTEM FUER ORIENTIERUNGSINTERPOLATION BEI CIRC-SAETZEN ENUM CP_STATMON NONE,CHECK_S,CHECK_TS;enum fuer cp konfigurationueberwachug ENUM TECHMODE OFF,SINGLE,CYCLE;TECHNOLOGIEMODUS ENUM TECHCLASS PATH,SYSTIME,VEL,SENSOR,CONVEYOR,DATALINK,TOUCH;TECHNOLOGIEKLASSE ENUM TECHGEOREF NONE,X,Y,Z,A,B,C;GEOMETRISCHE REFERENZ DER TECHNOLOGIEFUNKTION ENUM TECHSYS WORLD,BASE,ROBROOT,TCP,TTS;PROGRAMMIERBARE TECHNOLOGIEDREIBEINE ENUM DIRECTION FORWARD, BACKWARD ENUM TRACE_MODE T_START, T_STOP, T_TRIGGER ENUM TRACE_STATE T_WAIT, TRIGGERED, T_END ENUM SYNCTYPE PROGSYNC, MOTIONSYNC ENUM CANCEL_PSYNC_E CANCEL_ALL,CANCEL_ID ENUM WAIT_CMD_E NOT_WAITING, WAIT_PROGSYNC, WAIT_WORKSPACE, WAIT_REMOTECMD, WAIT_BOOL_EXPR ENUM RET_C_PSYNC_E CANCEL_OK,ID_INVALID,CANCEL_ERROR,NOT_NO_WAIT,NO_SYNCS,UNKNOWN ENUM BIN_PARITY_T NONE, EVEN, ODD; Binout/inParity Typ STRUC BIN_TYPE INT F_BIT, LEN, BIN_PARITY_T PARITY; Konfiguration binaere Eingaenge / Ausgaenge ENUM WAITTYPE NO_WAIT, NO_RESOLUTION, WAIT_INDEX_RES, WAIT_NO_INDEX_RES;Typ fuer die Kennung Interpreter Wartend mit / ohne Wait-For Array-Index Aufloesung STRUC TECHFCTCTRL REAL SCALE_IN,SCALE_OUT,OFFSET_IN,OFFSET_OUT,TECHGEOREF GEOREF;FUNKTIONSKONTROLLPARAMETER DER TECH-STRUKTUR STRUC TECHCPS REAL X1,Y1,X2,Y2,X3,Y3,X4,Y4,X5,Y5,X6,Y6,X7,Y7,X8,Y8,X9,Y9,X10, Y10;STUETZPUNKTLISTE FUER TECHFCT ENUM SPL_TECH_BOUND CYCLIC, NATURAL;Randedingungen STRUC TECHFCT INT ORDER, CPNUM, TECHCPS CPS1, CPS2, CPS3, CPS4, CPS5, SPL_TECH_BOUND BOUND_COND;FUNKTIONSPARAMETER DER TECH-STRUKTUR STRUC TECH TECHMODE MODE,TECHCLASS CLASS,TECHFCTCTRL FCTCTRL,TECHFCT FCT;TECH-STRUKTUR STRUC TECHANGLE REAL A,B,C;VERDREHUNG DES TECHNOLOGIEDREIBEINS ENUM ASYS ROBOT, EXTAX,EXTAX2;VERFAHRTASTENBELEGUNG ROBOTER/EXTERNE ACHSEN STRUC DHART REAL DHART_A,DHART_D,DHART_ALPHA STRUC SPIN INT SPIN_AXIS,REAL SPIN_RAD_G,SPIN_RAD_H,INT SPIN_SG,REAL SPIN_BETA STRUC TRPSPIN INT TRPSP_AXIS,TRPSP_COP_AX,REAL TRPSP_A,TRPSP_B,TRPSP_C,TRPSP_D ENUM CMD_STAT CMD_OK, CMD_TIMEOUT, DATA_OK, DATA_BLK, DATA_END, CMD_ABORT, CMD_REJ, CMD_PART, CMD_SYN, FMT_ERR;BEARBEITUNGSSTATUS EINES DIALOGSCHNITTSTELLENKOMMANDOS ENUM MSG_TYP NOTIFY, STATE, QUIT, DIALOG ENUM MSG_PRM_TYP VALUE, WORDS, KEY ENUM BOXMODE OFF, INSIDE, OUTSIDE, INSIDE_STOP, OUTSIDE_STOP ENUM EMT_MODE FIRST_CAL, TOOL_TEACH, CHECK_CAL, RECALC_CAL ENUM VAR_STATE DECLARED, INITIALIZED, UNKNOWN ENUM VAR_TYPE TYP_CHAR,TYP_INT,TYP_REAL,TYP_BOOL,TYP_ENUM,TYP_STRUC,TYP_FRAME,TYP_AXIS,TYP_E3AXIS,TYP_E6AXIS,TYP_POS,TYP_E3POS,TYP_E6POS,TYP_CALLSTACK,TYP_SIGNALBOOL,TYP_SIGNALINT,TYP_SIGNALREAL,TYP_UNKNOWN ENUM SYS_VARS CYCFLAG, FLAG, TIMER,AN_IN, AN_OUT, COUNT_I ENUM ASYNC_STATE IDLE, BUSY, CANCELLED, PEND ENUM MOVE_STATE PTP_SINGLE, PTP_AP01, PTP_AP02, LIN_SINGLE, LIN_AP01,LIN_AP02, CIRC_SINGLE, CIRC_AP01, CIRC_AP02, MOVE_EMI_SINGLE, SPLINE_SPL, SPLINE_LIN, SPLINE_CIRC, SPLINE_UES, NONE ENUM TARGET_STATUS SOURCE, BEST ENUM CP_VEL_TYPE CONSTANT, VAR_T1, VAR_ALL, VAR_ALL_MODEL ENUM IOSIM_STATE NONE, SIM_FALSE, SIM_TRUE;WERTE FUER DIE IO-SIMULATION ENUM REQ_STATUS BLOCKED, FREE, INVALID;REQUEST STATUS OF WORKSPACE ENUM PROG_STATUS ACTIVE, WAITING, DEADLOCK, INVALID ENUM CASE_SENSE_T CASE_SENS, NOT_CASE_SENS STRUC STATE_T CMD_STAT RET1, INT MSG_NO, CHAR MSG_TYPE, CHAR MSG_TXT[60], INT HITS, INT LENGTH;BEARBEITUNGSINFORMATIONEN DER KANALFUNKTIONEN STRUC INERTIA REAL X,Y,Z STRUC LOAD REAL M, FRAME CM, INERTIA J;LAST STRUC TRACE CHAR NAME [7], TRACE_MODE MODE,TRACE_STATE STATE STRUC POWERMODUL INT PMSTATE, PMERROR, CURRCAL, CURRERROR, BUSVOLTAGE;INFORMATIONEN UEBER DAS POWERMODUL STRUC KEYMOVE INT T1,T2,T3,T4,T5,T6 STRUC MSG_T BOOL VALID, BOOL RELEASE, MSG_TYP TYP, CHAR MODUL [24], CHAR KEY [80], MSG_PRM_TYP PARAM_TYP, CHAR PARAM [20], CHAR DLG_FORMAT [70], INT ANSWER STRUC BOX REAL X,Y,Z,A,B,C,X1,Y1,Z1,X2,Y2,Z2, BOXMODE MODE, BOOL STATE STRUC AXBOX REAL A1_N, A1_P, A2_N, A2_P, A3_N, A3_P, A4_N, A4_P, A5_N, A5_P, A6_N, A6_P, E1_N, E1_P, E2_N, E2_P, E3_N, E3_P, E4_N, E4_P, E5_N, E5_P, E6_N, E6_P, BOXMODE MODE, BOOL STATE STRUC ACC_CAR REAL X, Y, Z, A, B, C, ABS STRUC SERVOPARA INT R_AXIS, INT VAL_INDEX, INT SUBINDEX, INT VALUE_I, INT VALUE_F, REAL VALUE_R, CHAR VAL_TYPE [2] STRUC INT_INFO INT INT_PRIO, INT INT_STATE, INT INT_TYPE, INT PROG_LINE, CHAR PROG_NAME [32] STRUC SLAVE_AXIS_INC INT M, S1, S2, S3, S4, S5;POSITION IN INKREMENTEN STRUC WS_STATE REQ_STATUS REQ_STAT, INT RCVRY_STATE, PROG_STATUS PROG_STAT, INT NR_OF_REQ, REQ_NR, CHAR REQ_NAME[24], ROBOT_NAME[24], WS_NAME[24];STATE FOR MUTUAL EXCLUSION STRUC WS_CONFIG INT COOP_KRC, CHAR WS_NAME[24], INT WS_PRIO;CONFIGURATION FOR MUTUAL EXCLUSION STRUC COOP_KRC CHAR IP_ADDR[15], CHAR NAME[24];STRUCTURE FOR COOPERATING ROBOTS STRUC COOP_UPDATE_T INT FLAG, TYPE, CHAR NAME[64];WCD - TPBASIS kommunikation STRUC FORCE_VAL_STRUC INT INC, VAL;KRAFTSENSORISTWERTE IN INKREMENTEN UND NEWTON ENUM INT_TYP_E I_NORMAL, I_INTERRUPT, I_STOP_INTERRUPT; Interrupt Typ ENUM PROG_INT_E R_INT, S_INT; Interpreter Typ STRUC ERROR_T INT NUMBER, PROG_INT_E INTERPRETER, INT_TYP_E INT_TYPE, INT INT_PRIO, LINE_NR, CHAR MODULE[24], UP_NAME[24]; Struktur fuer KRL Fehlerbehandlung EXTP ERR_CLEAR (ERROR_T PERR : OUT); Loescht KRL-$Err-Variable EXTP ERR_RAISE (ERROR_T PERR : OUT); Verursacht einen definierten Interpreter-Laufzeitfehler STRUC KRLMSG_T CHAR MODUL[24], INT NR, CHAR MSG_TXT[80];Typdeklaration einer KRL Meldung STRUC KRLMSGPAR_T KRLMSGPARTYPE_T PAR_TYPE, CHAR PAR_TXT[26], INT PAR_INT, REAL PAR_REAL, BOOL PAR_BOOL;Typ Deklaration fuer einen Parameter einer KRL-Meldung STRUC KRLMSGDLGSK_T KRLMSGPARTYPE_T SK_TYPE, CHAR SK_TXT[10];Typ Definition fuer die Softkey Belegung bei KRL Anwender-Dialogen STRUC KRLMSGOPT_T BOOL VL_STOP, CLEAR_P_RESET, CLEAR_P_SAW, LOG_TO_DB;Typ Deklaration fuer die Optionen einer KRL-Meldung STRUC MSGBUF_T MSGBUFMSGTYPE_T TYPE, INT NR, CHAR MODUL[24], MSG_TXT[80], KRLMSGPARTYPE_T PAR_TYPE1, CHAR PAR_TXT1[40], KRLMSGPARTYPE_T PAR_TYPE2, CHAR PAR_TXT2[40], KRLMSGPARTYPE_T PAR_TYPE3, CHAR PAR_TXT3[40], INT HANDLE;KRL-Meldungssystem EXTFCTP REAL ABS (REAL X :IN) EXTFCTP REAL SQRT (REAL X :IN) EXTFCTP REAL SIN (REAL X :IN) EXTFCTP REAL COS (REAL X :IN) EXTFCTP REAL TAN (REAL X :IN) EXTFCTP REAL ACOS (REAL X :IN) EXTFCTP REAL ATAN2 (REAL X :IN, REAL Y :IN) EXTFCTP INT MBX_REC (INT MBX_ID :IN,STOPMESS MESS :OUT) EXTFCTP FRAME TOOL_ADJ (FRAME X) EXTFCTP FRAME EK (FRAME TKRWE : IN,ESYS EXKIN : IN,FRAME TBAFL : IN);KINEMATIKZUWEISUNG EXTFCTP FRAME LK(FRAME ROOT:IN,CHAR IP_ADDR[15]:IN,FRAME OFFSET:IN,ESYS EXKIN:IN);gelinkte Kinematik EXTFCTP E6AXIS INVERSE (E6POS TOOLPOS : IN, E6AXIS START_AXIS : IN, INT STATUS : OUT) EXTFCTP E6POS FORWARD (E6AXIS AXVAL : IN, INT STATUS : OUT) EXTFCTP E6POS INV_POS (E6POS POS_VALUES : IN) EXTFCTP INT IOCTL (INT DRVID : IN, INT REQUEST : IN, INT ARGUMENT : IN) EXTFCTP INT CIOCTL (INT HANDLE : IN, INT REQUEST: IN, INT ARGUMENT : IN, CHAR PARAM[128] : IN, INT RETVAL : OUT);ioCtl fuer Kanaele EXTFCTP INT SYNC() EXTFCTP VAR_STATE VARSTATE ( CHAR VAR_STR [80] : IN ) EXTFCTP INT EXECFUNC ( CHAR FNAME[16]:OUT, INT IPAR[32]:OUT, REAL RPAR[32]:OUT, CHAR MSG[80]:OUT ) EXTFCTP BOOL WSPACEGIVE (INT SPACEID : IN);FREE A WORKSPACE EXTFCTP BOOL WSPACETAKE (INT SPACEID : IN, INT ADVANCE : IN);BLOCK A WORKSPACE EXTP SYNCCMD (SYNCTYPE SYNC_T:IN,CHAR ID_NAME[64]:IN,INT COOP_LIST:IN) EXTFCTP RET_C_PSYNC_E CANCELPROGSYNC (CANCEL_PSYNC_E CMD:IN,CHAR ID_NAME[64]:IN) EXTFCTP BOOL REMOTECMD (CHAR IP_ADDR[15]:IN,CHAR CMD[128]:IN) EXTFCTP CHAR[256] REMOTEREAD(CHAR IP_ADDR[15] :IN, CHAR VARIABLE[128] :IN, INT ERROR :OUT); Lesen eines Variablenwertes auf einer externen Steuerung EXTFCTP INT STRLEN (CHAR STRVAR[2047]:IN) EXTFCTP INT STRDECLLEN (CHAR STRVAR[2047]:OUT) EXTFCTP BOOL STRCLEAR (CHAR STRVAR[2047]:OUT) EXTFCTP INT STRADD (CHAR STRDEST[2047]:OUT, CHAR STRTOADD[2047]:IN) EXTFCTP INT STRFIND (INT STARTAT:IN, CHAR STRVAR[2047]:IN, CHAR STRFIND[2047] :IN, CASE_SENSE_T CASE_MODE:IN) EXTFCTP BOOL STRCOMP (CHAR STRCOMP[2047]:IN, CHAR STRCOMP2[2047]:IN, CASE_SENSE_T CASE_MODE:IN) EXTFCTP BOOL STRCOPY (CHAR STRDEST[2047]:OUT, CHAR STRSOURCE[2047]:IN) EXTFCTP BOOL ISMESSAGESET (INT MESSAGENO:IN) EXTFCTP BOOL TIMER_LIMIT (REAL SECONDS:IN) EXTFCTP INT SET_KRLMSG (EKRLMSGTYPE TYPE: IN, KRLMSG_T MSG: OUT,KRLMSGPAR_T PAR[3]: OUT, KRLMSGOPT_T OPT: OUT);Setzen einer KRL-Meldung EXTFCTP BOOL EXISTS_KRLMSG (INT NHANDLE: IN); Meldungs handle auf Existenz pruefen EXTFCTP BOOL CLEAR_KRLMSG (INT NHANDLE: IN);Loescht eine KRL-Anwendermeldung EXTFCTP INT SET_KRLDLG (KRLMSG_T MSG: OUT,KRLMSGPAR_T PAR[3]: OUT, KRLMSGDLGSK_T SK[7]: OUT, KRLMSGOPT_T OPT: OUT);Setzt einen KRL-Dialog EXTFCTP BOOL SET_KRLDLGANSWER (INT NHANDLE: IN, INT ANSWERSK: IN);Setzen der Dialogantwort durch HMI EXTFCTP BOOL EXISTS_KRLDLG (INT NHANDLE: IN, INT ANSWER: OUT);Lesen der Dialogantwort in KRL EXTFCTP INT GET_MSGBUFFER (MSGBUF_T MSGBUF[100]: OUT); Lesen des gesamten Meldungspuffers EXTFCTP BOOL STRTOREAL (CHAR STRVAR[256]:IN, REAL RETVAL:OUT); Konvertierung STRING nach REAL EXTFCTP BOOL STRTOBOOL (CHAR STRVAR[256]:IN, BOOL RETVAL:OUT); Konvertierung STRING nach BOOL EXTFCTP BOOL STRTOINT (CHAR STRVAR[256]:IN, INT RETVAL:OUT); Konvertierung STRING nach INT EXTFCTP BOOL STRTOSTRING (CHAR STRVAR[256]:IN, CHAR RETVAL[256]:OUT);Konvertierung KRL-String im String in einen String EXTFCTP BOOL STRTOFRAME (CHAR STRVAR[256]:IN, FRAME RETVAL:OUT); Konvertierung STRING nach FRAME EXTFCTP BOOL STRTOPOS (CHAR STRVAR[256]:IN, POS RETVAL:OUT); Konvertierung STRING nach POS EXTFCTP BOOL STRTOE3POS (CHAR STRVAR[256]:IN, E3POS RETVAL:OUT); Konvertierung STRING nach E3POS EXTFCTP BOOL STRTOE6POS (CHAR STRVAR[256]:IN, E6POS RETVAL:OUT); Konvertierung STRING in E6POS EXTFCTP BOOL STRTOAXIS (CHAR STRVAR[256]:IN, AXIS RETVAL:OUT); Konvertierung STRING nach AXIS EXTFCTP BOOL STRTOE3AXIS (CHAR STRVAR[256]:IN, E3AXIS RETVAL:OUT); Konvertierung STRING nach E3AXIS EXTFCTP BOOL STRTOE6AXIS (CHAR STRVAR[256]:IN, E6AXIS RETVAL:OUT); Konvertierung STRING nach E6AXIS EXTFCTP VAR_TYPE VARTYPE ( CHAR VAR_STR [80] : IN ) BOOL $IN[4096];EINGANG [1 BIS 1026] EXTFCTP INT GETVARSIZE ( SYS_VARS MESSAGENO:IN ) BOOL $OUT[4096];AUSGANG [1 BIS 1024] INT $NUM_IN;ANZAHL DER EINGAENGE INT $NUM_OUT;ANZAHL DER AUSGAENGE INT $OV_JOG;EINRICHT-OVERRIDE INT $OV_AJOG [6];Handoverride fuer asynchrone Zusatzachsen CHAR $HOME [3];HOME-EINSTELLUNG (/ = STEUERUNGSSPEZIFISCH, /R1 = ROB.SYSTEM 1, /R2 = ROB.SYSTEM 2 ) INT $INTERPRETER;INTERPRETERWAHL (0 = SUBMIT; 1 = ROBOTERINTERPRETER) DECL MODE_MOVE $MODE_MOVE;MM = HANDVERFAHREN, MC = HANDREFERIEREN, MI = SCHRITTMASSFAHREN DECL COSYS $COSYS;AX, CAR DECL MODE_OP $MODE_OP;BETRIEBSART (T1, T2, AUT, EX) DECL PRO_MODE $PRO_MODE;PROZESSLAUFART (ISTEP, PSTEP, MSTEP, CSTEP,GO) DECL PRO_IP $PRO_IP;PROZESSZEIGER (NAME = BAUSTEINNAME, SNR = SATZNUMMER) CHAR $DATAPATH [32];KOMMANDOCOMPILER-SUCHPFAD DECL DISPLAY_VAR $DISPLAY_VAR [32];BEOBACHTBARE VARIABLEN BOOL $DISPLAY_REF;FORMULARNEUAUSGABE BEI AENDERUNG VON $DISPLAY_VAR BOOL $EXCLU;EXCLUSIV-BELEGUNG BOOL $MSG_ENABLE;MELDUNGSANZEIGE DECL DEVICE $DEVICE;BEDIENGERAETEZUSTAND (ACTIVE, BLOCK, PASSIVE, OFF) DECL DEVICE $KCP_STATE;Dient zur Abschaltung der aktiven Bedienelemente eines angeschlossenen KCP DECL TRANSSYS $TRANSSYS;WORLD, BASE, ROBROOT, TCP CHAR $PRO_NAME [24];PROZESSNAME DECL PRO_STATE $PRO_STATE;PROZESS-ZUSTAND INT $STOPMB_ID;KENNUNG DER MAILBOX FUER STOPMELDUNGEN BOOL $TURN;DREHJUSTAGE AKTIV CHAR $PRO_NAME0 [24];STEUERUNGSINTERNE ANWENDUNG CHAR $PRO_NAME1 [24];STEUERUNGSINTERNE ANWENDUNG DECL PRO_STATE $PRO_STATE0;STEUERUNGSINTERNE ANWENDUNG DECL PRO_STATE $PRO_STATE1;STEUERUNGSINTERNE ANWENDUNG DECL PRO_MODE $PRO_MODE0;STEUERUNGSINTERNE ANWENDUNG DECL PRO_MODE $PRO_MODE1;STEUERUNGSINTERNE ANWENDUNG INT $OV_PRO1;STEUERUNGSINTERNE ANWENDUNG INT $OV_ROB1;STEUERUNGSINTERNE ANWENDUNG BOOL $CONSENT;ZUSTIMMUNGSSCHALTER KCP REAL $ANOUT[32];ANALOGAUSGAENGE 1 BIS 32 REAL $ANIN [32];ANALOGEINGAENGE 1 BIS 32 DECL ASYS $ASYS;VERFAHRTASTENBELEGUNG (ROBOT = ROBOTER, EXTAX = EXTERNE ACHSEN) CHAR $JKMODE [26];VERFAHRTASTENBELEGUNG CHAR $WAIT_FOR[2047];WAIT_FOR-ANWEISUNG, AN DER DER INTERPRETER WARTET DECL WAIT_CMD_E $WAIT_STATE; Interpret-Markierungsfahne, die Wartebedingung anzeigt DECL WAIT_CMD_E $IPO_WAIT_STATE; Interpolator-Markierungsfahne, die Wartebedingung anzeigt DECL WAITTYPE $WAIT_FOR_INDEXRES;Kennung fuer die Programminterpreter Wait-For Variable BOOL $WAIT_FOR_ON;DER INTERPRETER WARTET AN EINER BEDINGUNG CHAR $IPO_WAIT_FOR[2047];INTERPOLATOR IS WAITING FOR A WORKSPACE BOOL $IPO_WAIT_FOR_ON;INTERPOLATOR IS WAITING FOR "WORKSPACENAME" BOOL $PRO_START;START WIRKT AUF PROGRAMM DECL DATE $DATE;INTERNE SYSTEMZEIT DECL TRACE $TRACE INT $CMD;HANDLE FUER DEN KOMMANDOKANAL INT $SHELL;Handle fuer Shell Kommandos INT $DATA_SER1;ZAEHLER FUER DATENPAKETE DIE UEBER :SER1 EINTREFFEN INT $DATA_SER2;ZAEHLER FUER DATENPAKETE DIE UEBER :SER2 EINTREFFEN INT $DATA_EXT_OBJ1;Zaehler fuer Daten von :LD_EXT_OBJ1 (Cread) INT $DATA_EXT_OBJ2;Zaehler fuer Daten von :LD_EXT_OBJ2 (Cread) ENUM DIGINCODE UNSIGNED, SIGNED, GRAYCODE;KODIERUNG DER DIGITALEINGAENGE ENUM ADAP_ACC NONE, STEP1, STEP2 ENUM MODEL_TYPE STANDARD, TORQUE_COUPLED ENUM SIG_STATE RELEASED, PRESSED, INVALID ENUM IDENT_STATE I_END, I_READY, I_TEST, I_MEAS, I_MEAS_OK, I_CALC ENUM SLAVE_MOVE_DRIVE MS_ALL, MASTER, SLAVE1, SLAVE2, SLAVE3, SLAVE4, SLAVE5 ENUM INDIVIDUAL_MAMES NONE, RDC, HD; Existenz individueller MAMES-Werte ENUM EKO_MODE OFF, ON, OPT;EKO-MODUS ( OFF, #ON, #OPT) INT $TIMER [32] BOOL $MOUSE_DOM BOOL $MOUSE_TRA BOOL $MOUSE_ROT BOOL $MOUSE_ACT BOOL $TIMER_STOP [32] BOOL $TIMER_FLAG [32] BOOL $FLAG [1024] DECL SIG_STATE $SAFETY_SW;Zustimmungsschalter DECL POWERMODUL $POWERMODUL1;INFORMATIONEN UEBER DAS POWERMODUL 1 DECL POWERMODUL $POWERMODUL2;INFORMATIONEN UEBER DAS POWERMODUL 2 DECL POWERMODUL $POWERMODUL3;INFORMATIONEN UEBER DAS POWERMODUL 3 DECL POWERMODUL $POWERMODUL4;INFORMATIONEN UEBER DAS POWERMODUL 4 CHAR $RCV_INFO[128] BOOL $SIMULATE CHAR $PHGINFO [24] INT $PHGBRIGHT INT $PHGTEMP INT $PHGCONT DECL KEYMOVE $KEYMOVE BOOL $KCP_CONNECT;TRUE = KCP ANGESCHLOSSEN, FALSE = KEIN KCP BOOL $POWER_FAIL;TRUE BEI SPANNUNGSAUSFALL INT $BRAKE_SIG;BITFELD BREMSENSIGNALE INT $SEN_PINT [20] INT $APP_INT[20]; Variable fÃr Applikationszwecke z.B. Umstellen von SoftKeys abhÃngig von KRL Status INT $SEN_PINT_C [20] REAL $SEN_PREA [20] REAL $SEN_PREA_C [20] BOOL $EXTSTARTTYP BOOL $STOPNOAPROX BOOL $SR_OV_MSG_SHOW;M_SR_OV_RED in Automatik ausgeben REAL $DUMMY [6,10] INT $KR_SERIALNO_CAL; Roboterseriennummer laut cal-File BOOL $WBOXDISABLE INT $KR_SERIALNO;ROBOTER-SERIENNUMMER INT $JUS_TOOL_NO INT $CAL_DIFF;JUSTAGE-DIFFERENZ BOOL $CAL_DIFF_INIT;IST $CAL_DIFF INITIALISIERT ? DECL EMT_MODE $EMT_MODE REAL $CURR_ACT[12]; AKTUELLER MOTORSTROM IN % INT $INPOSITION;BITFELD ACHSE IN POSITION DECL ASYNC_STATE $ASYNC_STATE;ZUSTAND DER ASYNCHRONEN ACHSEN INT $ASYNC_FLT;FILTER FUER ASYNC ACHSEN INT $TORQUE_AXIS BOOL $PAL_MODE;ACHSE A4 WIRD AUF NULL GRAD FIXIERT CHAR $ROBTRAFO [32];ROBOTERNAME DECL SERVOPARA $SERVOPARA INT $ROB_TIMER DECL INT_INFO $RINT_LIST [32] DECL INT_INFO $SINT_LIST [32] INT $TORQMON [12];MOMENTENUEBERWACHUNGSSCHLAUCH IM PROGRAMMBETRIEB [%] INT $TORQMON2 [12] INT $TORQMON_COM [12];MOMENTENUEBERWACHUNGSSCHLAUCH IM KOMMANDOBETRIEB [%] REAL $TORQ_VEL [12];GESCHWINDIGKEITSGRENZE IN % ZUR UEBERWACHUNG IM MOMENTENBETRIEB DECL IDENT_STATE $IDENT_STATE DECL MOVE_STATE $MOVE_STATE BOOL $ZERO_MOVE BOOL $LINE_SEL_OK;SATZANWAHL IST ERFOLGT REAL $VEL_AXIS_ACT [12];AKTUELLE ACHSGESCHW. IN % VON DER MAXIMALGESCHW. BOOL $ABS_RELOAD BOOL $ABS_UPDATE;Update der Parameter des absolutgenauen Robotermodells ueber SOAP-HTTP-Protokoll INT $TORQ_DIFF [12];MAX MOMENTENABWEICHUNG DES LETZTEN BEWEGUNGSSATZES [%] INT $TORQ_DIFF2 [12];MAX ABLEITUNG DER MOMENTENABWEICHUNG DES LETZTEN BEWEGUNGSSATZES [%] CHAR $BIOS_VERSION [80];BIOS-VERSION DES MAINBOARDS INT $CPVELREDMELD INT $TRIGGER_LIMIT_INFO INT $POWEROFF_DELAYTIME;WARTEZEIT BEI POWEROFF IN SEKUNDEN BOOL $IOBLK_EXT;BLOCKIERT DAS SETZEN DER AUSGAENGE IN EXT BOOL $IOSIM_OPT;TRUE SCHALTET DIE IO-SIMULATION EIN BOOL $GM_WO_PLC;Simulierter Automatikbetrieb fuer Kundenversion GM (ohne SPS) BOOL $OUT_NODRIVE;AUSGAENGE SETZEN OHNE ZUSTIMMUNG (ANTRIEBE) BOOL $SERVO_SIM;SIMULATION DER FAHRBEWEGUNGEN DER ACHSEN (TRUE, FALSE) BOOL $MOT_STOP;EXTERNER START BLOCKIERT, ROBOTER NICHT AUF PFAD INT $BWD_INFO;BSTEP-INFORMATION INT $DRY_RUN_INFO;Konfig. und Zustaende des Trockenlaufes INT $BUS_STATE;ANZEIGE FELDBUSSE IM SYSTEM O.K. ODER NICHT INT $BUS_USED;ANZEIGE FELDBUSSE IM SYSTEM DEFINIERT INT $MB_TEMP1;MAINBOARD TEMPERATUR 1 INT $MOT_TEMP[12];AKTUELLE MOTORTEMPERATUR IN KELVIN INT $MB_TEMP2;MAINBOARD TEMPERATUR 2 INT $DATA_SER3 INT $DATA_SER4 INT $PC_FANSPEED INT $CAB_FANSPEED INT $VW_CYCFLAG;Anzahl der aufgezeichneten Cycflags bei BSTEP-Trace INT $VW_MOVEMENT;LEGT DIE ANZAHL DER MAX. RUECKWAERTS ZU FAHRENDEN BEWEGUNGSSAETZE FEST BOOL $VW_BACKWARD;DIENT ZUM EIN-AUSSCHALTEN DES RUECKWAERTSFAHRENS BOOL $OUT_C[4096] DECL IOSIM_STATE $INSIM_TBL[4096];SIMULATIONSTABELLE FUER EINGAENGE DECL IOSIM_STATE $OUTSIM_TBL[4096];SIMULATIONSTABELLE FUER AUSGAENGE INT $COLL_LINKCHK; BOOL $COLL_FILERDY;- BOOL $COLL_RELOADSCENE;- BOOL $RUNTIME_ERROR0;Laufzeitfehler Submit Interpreter BOOL $RUNTIME_ERROR1;Laufzeitfehler Roboter Interpreter BOOL $RUNTIME_ERROR2;Laufzeitfehler Expression Interpreter DECL RUNTIME_DATA $RUNTIME_DATA0;Laufzeitdaten Submit Interpreter DECL RUNTIME_DATA $RUNTIME_DATA1;Laufzeitdaten Roboter Interpreter DECL RUNTIME_DATA $RUNTIME_DATA2;Laufzeitdaten Expression Interpreter INT $MAX_COOP_KRC; Hoechstzahl der zusammenarbeitenden Roboterkontrolleure INT $SPY_MODE;Aktivierung / Deaktivierung der SPY Funktion EXTFCTP INT SET_OPT_FILTER (E6POS TARGETPOS: IN) STRUC SRCARTBOX REAL X, Y, Z, A, B, C, X1, Y1, Z1, X2, Y2, Z2;Struktur fuer die kartesichen Ueberwachungsraeume des SafeRobots DECL SRCARTBOX $SR_CARTWORKSPACE[7];kartesische Ueberwachungsraeume SafeRobot STRUC SRAXBOX REAL A1_N, A1_P, A2_N, A2_P, A3_N, A3_P, A4_N, A4_P, A5_N, A5_P, A6_N, A6_P, E1_N, E1_P, E2_N, E2_P;Struktur fue die achsspezifischen Ueberwachungsraeume des SafeRobots DECL SRAXBOX $SR_AXWORKSPACE[7];achsspezifische Ueberwachungsraeume STRUC SRSPHEREBOX REAL X, Y, Z, RADIUS;Struktur fuer SafeRobot Kugel DECL SRSPHEREBOX $SR_SPHERE[6];Systemvariable fure SafeRobot Kugel STRUC SRPOLYGONBOX BOOL ISNODEACTIVE, REAL X, Y;Struktur fuer den Zellenbereich des SafeRobots DECL SRPOLYGONBOX $SR_POLYGONNODE[6];Stuetzstellen fuer den Zellenbereich des SafeRobots STRUC SRTOOLBOX BOOL SPHERE1, SPHERE2, SPHERE3, SPHERE4, SPHERE5, SPHERE6, DUMMY1, DUMMY2, REAL TCPVECTOR_X, TCPVECTOR_Y, TCPVECTOR_Z;Struktur fuer SafeRobot Werkzeuge STRUC VECTOR REAL X, Y, Z;Dreidimensionaler Vektor STRUC DERI_VECTOR VECTOR D, DD;1. und 2. Ableitung als 3D-Vektor STRUC DERI_EXAX REAL D, DD;1. und 2. Ableitung fÃr Einzelkomponenten STRUC DERI_STRUC DERI_VECTOR CART, ORI, DERI_EXAX E1, E2, E3, E4, E5, E6;Ableitungsvorgabe fÃr Splinesegmente DECL SRTOOLBOX $SR_TOOL[3];Systemvariable fuer SafeRobot Werkzeuge DECL LOAD $SR_LOAD[3]; SYSTEMVARIABLE FUER SAFE ROBOT WERKZEUGLASTEN STRUC SRBOX BOOL ROBOTSTOPS, ISCARTESIANRANGE, ISPROTECTEDSPACE, MONITORINGSTOP, STOPSBEFOREWORKSPACE, PROTECTEDAREASPEED, REFERENCEROBROOT, DUMMY2, REAL CARTESIANVELOCITY, INT INTERFACENUMBERIN, INTERFACENUMBEROUT;Struktur fuer SafeRobot Ueberwachungsraeume DECL SRBOX $SR_WORKSPACE[7];Struktur fuer SafeRobot Ueberwachungsraeume STRUC MAXTOOL REAL LOAD_CM_R, LOAD_CM_Z, LOAD_M, LOAD_J, TOOL_R, TOOL_Z; STRUKTUR DER TOOLGRENZEN FUER KARTESISCHE BREMSWEGANSCHAETZUNG BOOL $SR_STOPSBEFORECELLSPACE;Funktion Anhalten vor Polygongrenzen aktivieren BOOL $SR_AXISMONITORING[8];TRUE = Achse wird von SafeRDW ueberwacht STRUC SRVELBOX REAL CART_VEL_T1, CART_VEL_GLOBAL, CART_VEL_RED;Struktur fuer SafeRobot Geschwindigkeiten DECL SRVELBOX $SR_VELOCITY;Geschwindigkeiten SafeRobot BOOL $SR_STATERANGE_OK[8];FALSE = Ueberwachungsraum ueberschritten nur fuer die Diagnose zu verwenden REAL $SR_AXIS_VEL_T1[8];achsspezifische Geschwindigkeit in der Betriebsart T1 REAL $SR_AXIS_VEL_RED[8];fÃr die achsspezifische Geschwindigkeitsgrenze der Funktion "sicher reduzierte Geschwindigkeit" STRUC BOXSTATESAFEIN BOOL RDW, PULSEERR, PRE, TOGGLE, OSCILLATION, REDUNDANCY, ERRORFLAG;Struktur fuer den Status von Kanal A und B der Eingaenge von der SafeRDW DECL BOXSTATESAFEIN $SR_STATESAFEIN_CHA[13];Gibt den Status von Kanal A der Eingaenge auf der SafeRDW DECL BOXSTATESAFEIN $SR_STATESAFEIN_CHB[13];Gibt den Status von Kanal B der Eingaenge auf der SafeRDW STRUC BOXSTATESAFEOUT BOOL PRE, POST, RDW, PULSEERR0, PULSEERR1, REDUNDANCY, LOOPBACK, APPROVED, ERRORFLAG;Struktur fuer den Status von Kanal A und B der Ausgaenge von der SafeRDW DECL BOXSTATESAFEOUT $SR_STATESAFEOUT_CHA[7];Gibt den Status von Kanal A der Ausgaenge auf der SafeRDW DECL BOXSTATESAFEOUT $SR_STATESAFEOUT_CHB[7];Gibt den Status von Kanal B der Ausgaenge auf der SafeRDW BOOL $SR_INPUT_ERRORFLAG[13];Gibt an, ob ein Eingang einen Fehler hat BOOL $SR_OUTPUT_ERRORFLAG[7];Gibt an, ob ein Ausgang einen Fehler hat INT $SR_ACTIVETOOL;Zeigt, ob ein Werkzeug auf der SafeRDW aktiviert wurde BOOL $BRAKETEST_NEWCONFIG;Wenn die Bremsentestkonfiguration geaendert wird,muss ein neuer Bremsentest durchgefuehrt werden STRUC SPL_FCTDEF REAL AMPLITUDE1, AMPLITUDE2, WAVELENGTH_RATIO;Definition des asymmetrischen Sinus ENUM SPL_TECHFCT_MODE FCT_POLYNOMIAL, FCT_SIN;Wahl der Pendelfigurdefinition STRUC SPL_TECHFCT SPL_TECHFCT_MODE MODE, TECHFCT POLYNOMIAL, SPL_FCTDEF FCT_DEF, REAL BLEND_IN, BLEND_OUT, PHASE_SHIFT;Definition der Pendelfigur STRUC SPL_FCTCTRL BOOL ADJUST_WAVELENGTH, REAL SCALE_IN, SCALE_OUT, OFFSET_OUT;Spline-Pendelparameter STRUC SPL_TECHSYS TECHSYS SYS, TECHANGLE ANGLES, TECHGEOREF GEOREF;Spline-Pendel-Referenzsystem STRUC SPL_TECH BOOL HAND_WEAVING, REAL HAND_WEAVING_MAX_ADJUST, TECHMODE MODE, TECHCLASS CLASS, SPL_TECHSYS REF_SYS, SPL_FCTCTRL FCTCTRL, SPL_TECHFCT FCT, REAL FADE_IN, FADE_OUT;Spline-Technologiestruktur STRUC SPL_TECH_MAP INT FG1, FG2, FG3, FG4, FG5, FG6;gemeinsem benutzte SPL_TECH-Parameter END Xd.gd.Ãd.Ve.Ãe.Ff.Ãf.Eg.g.Ãg.:h.âh. h.Ãh.Fi.qi.Ãi.âj.Ãj.@k.âk.[l. l.m.Nm. m. m.Ãm.Zn. n.Ãn..o.Xo. o.Ão.p.Ãp.*q.bq.Ëq.Ãq.r.ir.Ãr.5s. s.Ãs.ât.Ãt."u.pu.Åu. u.Ãu.Ãu.v.5v.iv.âv. v. v.Ãv.w. w.lx.Ãx.y.Xy.Åy.Ãy.z.oz. z.Ãz.<{.â{.Ã{.Ã{.$|.N|.q|.Å|.Ã|.G}.~}.Ã}.z~.Ã~.l.Å.$â.{â. â..2..Ã.wâ. â.Ãâ. Æ.;Æ.iÆ.8â.râ.Åâ.Yâ.yâ. â.Ãâ.>â.râ.â..â.Gâ.sâ. â.Ë.=Ë.ÃË. â.Ãâ.Å.vÅ.ÃÅ.â.Ãâ.&Å.vÅ.ÃÅ..[.â.Ž.fŽ.ÃŽ..Ã.B. . â.Ãâ.Ãâ. â.â.Eâ.dâ.â.Ãâ.Ãâ.Aâ. â.Ãâ.8â.fâ. â.2â.Eâ.{â.Ãâ.â.iâ. â.â.?â.Ãâ.Ãâ..Ë.Ë. Ë.â.{â.Ãâ.Ãâ.Å. Å.ÃÅ.Bâ.Ãâ.1Å.ŽÅ.ÃÅ.F. .Ã.wž.Þ.3Å.âÅ.ÃÅ.Q . . .M .q . .à .à .
.[/code]
the code im using is
<div style="color:Black;background-color:White; <pre>
<span style="color:Blue; private <span style="color:Blue; static ArrayList GetFunctions(<span style="color:Blue; string FunctionFile, <span style="color:Blue; string MatchString)
{
<span style="color:Blue; if (FunctionFile.Equals(<span style="color:Blue; string.Empty)) <span style="color:Blue; return <span style="color:Blue; null;
ArrayList Functions = <span style="color:Blue; new ArrayList();
<span style="color:Green; // System.Text.StringBuilder sb = new System.Text.StringBuilder();
MatchString = <span style="color:#A31515; @"(EXTFCTP|EXTDEF)([dw]*)([wd( :,]*))";
<span style="color:Green; // Open File for reading
<span style="color:Blue; using (StreamReader r = <span style="color:Blue; new StreamReader(FunctionFile))
{
<span style="color:Green; // Read each line until EOF
<span style="color:Blue; string line;
<span style="color:Blue; while ((line = r.ReadLine()) != <span style="color:Blue; null)
{
<span style="color:Green; // Try to match each line against the regex
<span style="color:Green; // Match m = g.Match(line);
Match mtch = Regex.Match(line, MatchString, RegexOptions.IgnoreCase);
<span style="color:Blue; if (mtch.Success)
{
<span style="color:Green; // sb.AppendLine(mtch.Groups[0].ToString());
<span style="color:Green; // Functions.Add(mtch.Groups[0].ToString());
Functions.AddRange(getMatches(line, MatchString));
}
}
<span style="color:Blue; return Functions;
}
}
[/code]
ive changed some of the things while trying it out but it should react the same.
View the full article
the text im using as a sample is
<pre>ERUNG FUER BAHNTREUE NOT-AUS-BREMSUNG STRUC STOPMESS INT CONFNO,GRO,MESSNO,STATE,CAUSE_T CAUSE;CONFNO = QUITTUNGSNUMMER, GRO = MELDUNGSGRUPPE, MESSNO = MELDUNGSNUMMER, STATE = STATUS,CAUSE = VERURSACHER STRUC EMSTOP_PATH EMSTOP T1,T2,AUT,EX;PROJEKTIERUNG FUER BAHNTREUE NOT-AUS-BREMSUNG STRUC AXIS_CAL BOOL A1,A2,A3,A4,A5,A6,E1,E2,E3,E4,E5,E6 STRUC AXIS_INC INT I1,I2,I3,I4,I5,I6,E1,E2,E3,E4,E5,E6;INKREMENTELLE ISTWERTE ENUM ROTSYS AS_TRA,TCP,BASE ENUM MODUS_T SYNC, ASYNC, ABS, COND, SEQ ENUM IPO_MODE BASE,TCP ENUM EXT_IPO_MODE STANDARD, WP, PP ENUM LASER_MODE PROCESS, PILOT ENUM MODE_OP T1, T2, AUT, EX, INVALID ENUM PRO_MODE ISTEP, PSTEP, MSTEP, CSTEP, GO, BSTEP ENUM DEVICE ACTIVE, BLOCK, PASSIVE, OFF ENUM COSYS AX,CAR ENUM MODE_MOVE MM,MC,MI ENUM TRANSSYS WORLD,BASE,ROBROOT,TCP ENUM KINCLASS STANDARD,SPECIAL,TEST,NONE;KINEMATIKKLASSEN ENUM MAIN_AXIS SS,CC,NR,SC,RR,CS,NN,RN,NS,LR;GRUNDACHSENKENNUNG (SS = PORTAL, CC = SCARA, NR = GELENKROBOTER, SS = PORTAL CC = SCARA, NR = GELENKROBOTER ENUM WRIST_AXIS NOH,ZEH,SRH,DSH,WIH,WSH;HANDACHSENKENNUNG (NOH = KEINE HAND, ZEH = ZENTRALHAND, SRH = SCHRAEGHAND, DSH = DOPPELSCHRAEGHAND, WIH = WINKELHAND, WSH = WINKELSCHRAEGHAND) ENUM ESYS NONE,EASYS,EBSYS,ECSYS,EDSYS,EESYS,EFSYS,ERSYS,ROBOT,CONVEYOR;ZULAESSIGE EXTERNE SYSTEME STRUC EX_KIN ESYS ET1,ET2,ET3,ET4,ET5,ET6;EXTERNE KINEMATIKEN-TRANSFORMATIONEN ENUM EAX NONE,E1,E2,E3,E4,E5,E6;ZULAESSIGE EXTERNE ACHSEN STRUC ET_AX EAX TR_A1,TR_A2,TR_A3;ACHSEN EINER TRAFO FUER EXTERNE KIN. ENUM PRO_STATE P_FREE, P_RESET, P_ACTIVE, P_STOP, P_END ENUM ORI_TYPE VAR, CONSTANT, JOINT, IGNORE;ORIENTIERUNGSFUEHRUNG ENUM CIRC_TYPE BASE,PATH;BEZUGSSYSTEM FUER ORIENTIERUNGSINTERPOLATION BEI CIRC-SAETZEN ENUM CP_STATMON NONE,CHECK_S,CHECK_TS;enum fuer cp konfigurationueberwachug ENUM TECHMODE OFF,SINGLE,CYCLE;TECHNOLOGIEMODUS ENUM TECHCLASS PATH,SYSTIME,VEL,SENSOR,CONVEYOR,DATALINK,TOUCH;TECHNOLOGIEKLASSE ENUM TECHGEOREF NONE,X,Y,Z,A,B,C;GEOMETRISCHE REFERENZ DER TECHNOLOGIEFUNKTION ENUM TECHSYS WORLD,BASE,ROBROOT,TCP,TTS;PROGRAMMIERBARE TECHNOLOGIEDREIBEINE ENUM DIRECTION FORWARD, BACKWARD ENUM TRACE_MODE T_START, T_STOP, T_TRIGGER ENUM TRACE_STATE T_WAIT, TRIGGERED, T_END ENUM SYNCTYPE PROGSYNC, MOTIONSYNC ENUM CANCEL_PSYNC_E CANCEL_ALL,CANCEL_ID ENUM WAIT_CMD_E NOT_WAITING, WAIT_PROGSYNC, WAIT_WORKSPACE, WAIT_REMOTECMD, WAIT_BOOL_EXPR ENUM RET_C_PSYNC_E CANCEL_OK,ID_INVALID,CANCEL_ERROR,NOT_NO_WAIT,NO_SYNCS,UNKNOWN ENUM BIN_PARITY_T NONE, EVEN, ODD; Binout/inParity Typ STRUC BIN_TYPE INT F_BIT, LEN, BIN_PARITY_T PARITY; Konfiguration binaere Eingaenge / Ausgaenge ENUM WAITTYPE NO_WAIT, NO_RESOLUTION, WAIT_INDEX_RES, WAIT_NO_INDEX_RES;Typ fuer die Kennung Interpreter Wartend mit / ohne Wait-For Array-Index Aufloesung STRUC TECHFCTCTRL REAL SCALE_IN,SCALE_OUT,OFFSET_IN,OFFSET_OUT,TECHGEOREF GEOREF;FUNKTIONSKONTROLLPARAMETER DER TECH-STRUKTUR STRUC TECHCPS REAL X1,Y1,X2,Y2,X3,Y3,X4,Y4,X5,Y5,X6,Y6,X7,Y7,X8,Y8,X9,Y9,X10, Y10;STUETZPUNKTLISTE FUER TECHFCT ENUM SPL_TECH_BOUND CYCLIC, NATURAL;Randedingungen STRUC TECHFCT INT ORDER, CPNUM, TECHCPS CPS1, CPS2, CPS3, CPS4, CPS5, SPL_TECH_BOUND BOUND_COND;FUNKTIONSPARAMETER DER TECH-STRUKTUR STRUC TECH TECHMODE MODE,TECHCLASS CLASS,TECHFCTCTRL FCTCTRL,TECHFCT FCT;TECH-STRUKTUR STRUC TECHANGLE REAL A,B,C;VERDREHUNG DES TECHNOLOGIEDREIBEINS ENUM ASYS ROBOT, EXTAX,EXTAX2;VERFAHRTASTENBELEGUNG ROBOTER/EXTERNE ACHSEN STRUC DHART REAL DHART_A,DHART_D,DHART_ALPHA STRUC SPIN INT SPIN_AXIS,REAL SPIN_RAD_G,SPIN_RAD_H,INT SPIN_SG,REAL SPIN_BETA STRUC TRPSPIN INT TRPSP_AXIS,TRPSP_COP_AX,REAL TRPSP_A,TRPSP_B,TRPSP_C,TRPSP_D ENUM CMD_STAT CMD_OK, CMD_TIMEOUT, DATA_OK, DATA_BLK, DATA_END, CMD_ABORT, CMD_REJ, CMD_PART, CMD_SYN, FMT_ERR;BEARBEITUNGSSTATUS EINES DIALOGSCHNITTSTELLENKOMMANDOS ENUM MSG_TYP NOTIFY, STATE, QUIT, DIALOG ENUM MSG_PRM_TYP VALUE, WORDS, KEY ENUM BOXMODE OFF, INSIDE, OUTSIDE, INSIDE_STOP, OUTSIDE_STOP ENUM EMT_MODE FIRST_CAL, TOOL_TEACH, CHECK_CAL, RECALC_CAL ENUM VAR_STATE DECLARED, INITIALIZED, UNKNOWN ENUM VAR_TYPE TYP_CHAR,TYP_INT,TYP_REAL,TYP_BOOL,TYP_ENUM,TYP_STRUC,TYP_FRAME,TYP_AXIS,TYP_E3AXIS,TYP_E6AXIS,TYP_POS,TYP_E3POS,TYP_E6POS,TYP_CALLSTACK,TYP_SIGNALBOOL,TYP_SIGNALINT,TYP_SIGNALREAL,TYP_UNKNOWN ENUM SYS_VARS CYCFLAG, FLAG, TIMER,AN_IN, AN_OUT, COUNT_I ENUM ASYNC_STATE IDLE, BUSY, CANCELLED, PEND ENUM MOVE_STATE PTP_SINGLE, PTP_AP01, PTP_AP02, LIN_SINGLE, LIN_AP01,LIN_AP02, CIRC_SINGLE, CIRC_AP01, CIRC_AP02, MOVE_EMI_SINGLE, SPLINE_SPL, SPLINE_LIN, SPLINE_CIRC, SPLINE_UES, NONE ENUM TARGET_STATUS SOURCE, BEST ENUM CP_VEL_TYPE CONSTANT, VAR_T1, VAR_ALL, VAR_ALL_MODEL ENUM IOSIM_STATE NONE, SIM_FALSE, SIM_TRUE;WERTE FUER DIE IO-SIMULATION ENUM REQ_STATUS BLOCKED, FREE, INVALID;REQUEST STATUS OF WORKSPACE ENUM PROG_STATUS ACTIVE, WAITING, DEADLOCK, INVALID ENUM CASE_SENSE_T CASE_SENS, NOT_CASE_SENS STRUC STATE_T CMD_STAT RET1, INT MSG_NO, CHAR MSG_TYPE, CHAR MSG_TXT[60], INT HITS, INT LENGTH;BEARBEITUNGSINFORMATIONEN DER KANALFUNKTIONEN STRUC INERTIA REAL X,Y,Z STRUC LOAD REAL M, FRAME CM, INERTIA J;LAST STRUC TRACE CHAR NAME [7], TRACE_MODE MODE,TRACE_STATE STATE STRUC POWERMODUL INT PMSTATE, PMERROR, CURRCAL, CURRERROR, BUSVOLTAGE;INFORMATIONEN UEBER DAS POWERMODUL STRUC KEYMOVE INT T1,T2,T3,T4,T5,T6 STRUC MSG_T BOOL VALID, BOOL RELEASE, MSG_TYP TYP, CHAR MODUL [24], CHAR KEY [80], MSG_PRM_TYP PARAM_TYP, CHAR PARAM [20], CHAR DLG_FORMAT [70], INT ANSWER STRUC BOX REAL X,Y,Z,A,B,C,X1,Y1,Z1,X2,Y2,Z2, BOXMODE MODE, BOOL STATE STRUC AXBOX REAL A1_N, A1_P, A2_N, A2_P, A3_N, A3_P, A4_N, A4_P, A5_N, A5_P, A6_N, A6_P, E1_N, E1_P, E2_N, E2_P, E3_N, E3_P, E4_N, E4_P, E5_N, E5_P, E6_N, E6_P, BOXMODE MODE, BOOL STATE STRUC ACC_CAR REAL X, Y, Z, A, B, C, ABS STRUC SERVOPARA INT R_AXIS, INT VAL_INDEX, INT SUBINDEX, INT VALUE_I, INT VALUE_F, REAL VALUE_R, CHAR VAL_TYPE [2] STRUC INT_INFO INT INT_PRIO, INT INT_STATE, INT INT_TYPE, INT PROG_LINE, CHAR PROG_NAME [32] STRUC SLAVE_AXIS_INC INT M, S1, S2, S3, S4, S5;POSITION IN INKREMENTEN STRUC WS_STATE REQ_STATUS REQ_STAT, INT RCVRY_STATE, PROG_STATUS PROG_STAT, INT NR_OF_REQ, REQ_NR, CHAR REQ_NAME[24], ROBOT_NAME[24], WS_NAME[24];STATE FOR MUTUAL EXCLUSION STRUC WS_CONFIG INT COOP_KRC, CHAR WS_NAME[24], INT WS_PRIO;CONFIGURATION FOR MUTUAL EXCLUSION STRUC COOP_KRC CHAR IP_ADDR[15], CHAR NAME[24];STRUCTURE FOR COOPERATING ROBOTS STRUC COOP_UPDATE_T INT FLAG, TYPE, CHAR NAME[64];WCD - TPBASIS kommunikation STRUC FORCE_VAL_STRUC INT INC, VAL;KRAFTSENSORISTWERTE IN INKREMENTEN UND NEWTON ENUM INT_TYP_E I_NORMAL, I_INTERRUPT, I_STOP_INTERRUPT; Interrupt Typ ENUM PROG_INT_E R_INT, S_INT; Interpreter Typ STRUC ERROR_T INT NUMBER, PROG_INT_E INTERPRETER, INT_TYP_E INT_TYPE, INT INT_PRIO, LINE_NR, CHAR MODULE[24], UP_NAME[24]; Struktur fuer KRL Fehlerbehandlung EXTP ERR_CLEAR (ERROR_T PERR : OUT); Loescht KRL-$Err-Variable EXTP ERR_RAISE (ERROR_T PERR : OUT); Verursacht einen definierten Interpreter-Laufzeitfehler STRUC KRLMSG_T CHAR MODUL[24], INT NR, CHAR MSG_TXT[80];Typdeklaration einer KRL Meldung STRUC KRLMSGPAR_T KRLMSGPARTYPE_T PAR_TYPE, CHAR PAR_TXT[26], INT PAR_INT, REAL PAR_REAL, BOOL PAR_BOOL;Typ Deklaration fuer einen Parameter einer KRL-Meldung STRUC KRLMSGDLGSK_T KRLMSGPARTYPE_T SK_TYPE, CHAR SK_TXT[10];Typ Definition fuer die Softkey Belegung bei KRL Anwender-Dialogen STRUC KRLMSGOPT_T BOOL VL_STOP, CLEAR_P_RESET, CLEAR_P_SAW, LOG_TO_DB;Typ Deklaration fuer die Optionen einer KRL-Meldung STRUC MSGBUF_T MSGBUFMSGTYPE_T TYPE, INT NR, CHAR MODUL[24], MSG_TXT[80], KRLMSGPARTYPE_T PAR_TYPE1, CHAR PAR_TXT1[40], KRLMSGPARTYPE_T PAR_TYPE2, CHAR PAR_TXT2[40], KRLMSGPARTYPE_T PAR_TYPE3, CHAR PAR_TXT3[40], INT HANDLE;KRL-Meldungssystem EXTFCTP REAL ABS (REAL X :IN) EXTFCTP REAL SQRT (REAL X :IN) EXTFCTP REAL SIN (REAL X :IN) EXTFCTP REAL COS (REAL X :IN) EXTFCTP REAL TAN (REAL X :IN) EXTFCTP REAL ACOS (REAL X :IN) EXTFCTP REAL ATAN2 (REAL X :IN, REAL Y :IN) EXTFCTP INT MBX_REC (INT MBX_ID :IN,STOPMESS MESS :OUT) EXTFCTP FRAME TOOL_ADJ (FRAME X) EXTFCTP FRAME EK (FRAME TKRWE : IN,ESYS EXKIN : IN,FRAME TBAFL : IN);KINEMATIKZUWEISUNG EXTFCTP FRAME LK(FRAME ROOT:IN,CHAR IP_ADDR[15]:IN,FRAME OFFSET:IN,ESYS EXKIN:IN);gelinkte Kinematik EXTFCTP E6AXIS INVERSE (E6POS TOOLPOS : IN, E6AXIS START_AXIS : IN, INT STATUS : OUT) EXTFCTP E6POS FORWARD (E6AXIS AXVAL : IN, INT STATUS : OUT) EXTFCTP E6POS INV_POS (E6POS POS_VALUES : IN) EXTFCTP INT IOCTL (INT DRVID : IN, INT REQUEST : IN, INT ARGUMENT : IN) EXTFCTP INT CIOCTL (INT HANDLE : IN, INT REQUEST: IN, INT ARGUMENT : IN, CHAR PARAM[128] : IN, INT RETVAL : OUT);ioCtl fuer Kanaele EXTFCTP INT SYNC() EXTFCTP VAR_STATE VARSTATE ( CHAR VAR_STR [80] : IN ) EXTFCTP INT EXECFUNC ( CHAR FNAME[16]:OUT, INT IPAR[32]:OUT, REAL RPAR[32]:OUT, CHAR MSG[80]:OUT ) EXTFCTP BOOL WSPACEGIVE (INT SPACEID : IN);FREE A WORKSPACE EXTFCTP BOOL WSPACETAKE (INT SPACEID : IN, INT ADVANCE : IN);BLOCK A WORKSPACE EXTP SYNCCMD (SYNCTYPE SYNC_T:IN,CHAR ID_NAME[64]:IN,INT COOP_LIST:IN) EXTFCTP RET_C_PSYNC_E CANCELPROGSYNC (CANCEL_PSYNC_E CMD:IN,CHAR ID_NAME[64]:IN) EXTFCTP BOOL REMOTECMD (CHAR IP_ADDR[15]:IN,CHAR CMD[128]:IN) EXTFCTP CHAR[256] REMOTEREAD(CHAR IP_ADDR[15] :IN, CHAR VARIABLE[128] :IN, INT ERROR :OUT); Lesen eines Variablenwertes auf einer externen Steuerung EXTFCTP INT STRLEN (CHAR STRVAR[2047]:IN) EXTFCTP INT STRDECLLEN (CHAR STRVAR[2047]:OUT) EXTFCTP BOOL STRCLEAR (CHAR STRVAR[2047]:OUT) EXTFCTP INT STRADD (CHAR STRDEST[2047]:OUT, CHAR STRTOADD[2047]:IN) EXTFCTP INT STRFIND (INT STARTAT:IN, CHAR STRVAR[2047]:IN, CHAR STRFIND[2047] :IN, CASE_SENSE_T CASE_MODE:IN) EXTFCTP BOOL STRCOMP (CHAR STRCOMP[2047]:IN, CHAR STRCOMP2[2047]:IN, CASE_SENSE_T CASE_MODE:IN) EXTFCTP BOOL STRCOPY (CHAR STRDEST[2047]:OUT, CHAR STRSOURCE[2047]:IN) EXTFCTP BOOL ISMESSAGESET (INT MESSAGENO:IN) EXTFCTP BOOL TIMER_LIMIT (REAL SECONDS:IN) EXTFCTP INT SET_KRLMSG (EKRLMSGTYPE TYPE: IN, KRLMSG_T MSG: OUT,KRLMSGPAR_T PAR[3]: OUT, KRLMSGOPT_T OPT: OUT);Setzen einer KRL-Meldung EXTFCTP BOOL EXISTS_KRLMSG (INT NHANDLE: IN); Meldungs handle auf Existenz pruefen EXTFCTP BOOL CLEAR_KRLMSG (INT NHANDLE: IN);Loescht eine KRL-Anwendermeldung EXTFCTP INT SET_KRLDLG (KRLMSG_T MSG: OUT,KRLMSGPAR_T PAR[3]: OUT, KRLMSGDLGSK_T SK[7]: OUT, KRLMSGOPT_T OPT: OUT);Setzt einen KRL-Dialog EXTFCTP BOOL SET_KRLDLGANSWER (INT NHANDLE: IN, INT ANSWERSK: IN);Setzen der Dialogantwort durch HMI EXTFCTP BOOL EXISTS_KRLDLG (INT NHANDLE: IN, INT ANSWER: OUT);Lesen der Dialogantwort in KRL EXTFCTP INT GET_MSGBUFFER (MSGBUF_T MSGBUF[100]: OUT); Lesen des gesamten Meldungspuffers EXTFCTP BOOL STRTOREAL (CHAR STRVAR[256]:IN, REAL RETVAL:OUT); Konvertierung STRING nach REAL EXTFCTP BOOL STRTOBOOL (CHAR STRVAR[256]:IN, BOOL RETVAL:OUT); Konvertierung STRING nach BOOL EXTFCTP BOOL STRTOINT (CHAR STRVAR[256]:IN, INT RETVAL:OUT); Konvertierung STRING nach INT EXTFCTP BOOL STRTOSTRING (CHAR STRVAR[256]:IN, CHAR RETVAL[256]:OUT);Konvertierung KRL-String im String in einen String EXTFCTP BOOL STRTOFRAME (CHAR STRVAR[256]:IN, FRAME RETVAL:OUT); Konvertierung STRING nach FRAME EXTFCTP BOOL STRTOPOS (CHAR STRVAR[256]:IN, POS RETVAL:OUT); Konvertierung STRING nach POS EXTFCTP BOOL STRTOE3POS (CHAR STRVAR[256]:IN, E3POS RETVAL:OUT); Konvertierung STRING nach E3POS EXTFCTP BOOL STRTOE6POS (CHAR STRVAR[256]:IN, E6POS RETVAL:OUT); Konvertierung STRING in E6POS EXTFCTP BOOL STRTOAXIS (CHAR STRVAR[256]:IN, AXIS RETVAL:OUT); Konvertierung STRING nach AXIS EXTFCTP BOOL STRTOE3AXIS (CHAR STRVAR[256]:IN, E3AXIS RETVAL:OUT); Konvertierung STRING nach E3AXIS EXTFCTP BOOL STRTOE6AXIS (CHAR STRVAR[256]:IN, E6AXIS RETVAL:OUT); Konvertierung STRING nach E6AXIS EXTFCTP VAR_TYPE VARTYPE ( CHAR VAR_STR [80] : IN ) BOOL $IN[4096];EINGANG [1 BIS 1026] EXTFCTP INT GETVARSIZE ( SYS_VARS MESSAGENO:IN ) BOOL $OUT[4096];AUSGANG [1 BIS 1024] INT $NUM_IN;ANZAHL DER EINGAENGE INT $NUM_OUT;ANZAHL DER AUSGAENGE INT $OV_JOG;EINRICHT-OVERRIDE INT $OV_AJOG [6];Handoverride fuer asynchrone Zusatzachsen CHAR $HOME [3];HOME-EINSTELLUNG (/ = STEUERUNGSSPEZIFISCH, /R1 = ROB.SYSTEM 1, /R2 = ROB.SYSTEM 2 ) INT $INTERPRETER;INTERPRETERWAHL (0 = SUBMIT; 1 = ROBOTERINTERPRETER) DECL MODE_MOVE $MODE_MOVE;MM = HANDVERFAHREN, MC = HANDREFERIEREN, MI = SCHRITTMASSFAHREN DECL COSYS $COSYS;AX, CAR DECL MODE_OP $MODE_OP;BETRIEBSART (T1, T2, AUT, EX) DECL PRO_MODE $PRO_MODE;PROZESSLAUFART (ISTEP, PSTEP, MSTEP, CSTEP,GO) DECL PRO_IP $PRO_IP;PROZESSZEIGER (NAME = BAUSTEINNAME, SNR = SATZNUMMER) CHAR $DATAPATH [32];KOMMANDOCOMPILER-SUCHPFAD DECL DISPLAY_VAR $DISPLAY_VAR [32];BEOBACHTBARE VARIABLEN BOOL $DISPLAY_REF;FORMULARNEUAUSGABE BEI AENDERUNG VON $DISPLAY_VAR BOOL $EXCLU;EXCLUSIV-BELEGUNG BOOL $MSG_ENABLE;MELDUNGSANZEIGE DECL DEVICE $DEVICE;BEDIENGERAETEZUSTAND (ACTIVE, BLOCK, PASSIVE, OFF) DECL DEVICE $KCP_STATE;Dient zur Abschaltung der aktiven Bedienelemente eines angeschlossenen KCP DECL TRANSSYS $TRANSSYS;WORLD, BASE, ROBROOT, TCP CHAR $PRO_NAME [24];PROZESSNAME DECL PRO_STATE $PRO_STATE;PROZESS-ZUSTAND INT $STOPMB_ID;KENNUNG DER MAILBOX FUER STOPMELDUNGEN BOOL $TURN;DREHJUSTAGE AKTIV CHAR $PRO_NAME0 [24];STEUERUNGSINTERNE ANWENDUNG CHAR $PRO_NAME1 [24];STEUERUNGSINTERNE ANWENDUNG DECL PRO_STATE $PRO_STATE0;STEUERUNGSINTERNE ANWENDUNG DECL PRO_STATE $PRO_STATE1;STEUERUNGSINTERNE ANWENDUNG DECL PRO_MODE $PRO_MODE0;STEUERUNGSINTERNE ANWENDUNG DECL PRO_MODE $PRO_MODE1;STEUERUNGSINTERNE ANWENDUNG INT $OV_PRO1;STEUERUNGSINTERNE ANWENDUNG INT $OV_ROB1;STEUERUNGSINTERNE ANWENDUNG BOOL $CONSENT;ZUSTIMMUNGSSCHALTER KCP REAL $ANOUT[32];ANALOGAUSGAENGE 1 BIS 32 REAL $ANIN [32];ANALOGEINGAENGE 1 BIS 32 DECL ASYS $ASYS;VERFAHRTASTENBELEGUNG (ROBOT = ROBOTER, EXTAX = EXTERNE ACHSEN) CHAR $JKMODE [26];VERFAHRTASTENBELEGUNG CHAR $WAIT_FOR[2047];WAIT_FOR-ANWEISUNG, AN DER DER INTERPRETER WARTET DECL WAIT_CMD_E $WAIT_STATE; Interpret-Markierungsfahne, die Wartebedingung anzeigt DECL WAIT_CMD_E $IPO_WAIT_STATE; Interpolator-Markierungsfahne, die Wartebedingung anzeigt DECL WAITTYPE $WAIT_FOR_INDEXRES;Kennung fuer die Programminterpreter Wait-For Variable BOOL $WAIT_FOR_ON;DER INTERPRETER WARTET AN EINER BEDINGUNG CHAR $IPO_WAIT_FOR[2047];INTERPOLATOR IS WAITING FOR A WORKSPACE BOOL $IPO_WAIT_FOR_ON;INTERPOLATOR IS WAITING FOR "WORKSPACENAME" BOOL $PRO_START;START WIRKT AUF PROGRAMM DECL DATE $DATE;INTERNE SYSTEMZEIT DECL TRACE $TRACE INT $CMD;HANDLE FUER DEN KOMMANDOKANAL INT $SHELL;Handle fuer Shell Kommandos INT $DATA_SER1;ZAEHLER FUER DATENPAKETE DIE UEBER :SER1 EINTREFFEN INT $DATA_SER2;ZAEHLER FUER DATENPAKETE DIE UEBER :SER2 EINTREFFEN INT $DATA_EXT_OBJ1;Zaehler fuer Daten von :LD_EXT_OBJ1 (Cread) INT $DATA_EXT_OBJ2;Zaehler fuer Daten von :LD_EXT_OBJ2 (Cread) ENUM DIGINCODE UNSIGNED, SIGNED, GRAYCODE;KODIERUNG DER DIGITALEINGAENGE ENUM ADAP_ACC NONE, STEP1, STEP2 ENUM MODEL_TYPE STANDARD, TORQUE_COUPLED ENUM SIG_STATE RELEASED, PRESSED, INVALID ENUM IDENT_STATE I_END, I_READY, I_TEST, I_MEAS, I_MEAS_OK, I_CALC ENUM SLAVE_MOVE_DRIVE MS_ALL, MASTER, SLAVE1, SLAVE2, SLAVE3, SLAVE4, SLAVE5 ENUM INDIVIDUAL_MAMES NONE, RDC, HD; Existenz individueller MAMES-Werte ENUM EKO_MODE OFF, ON, OPT;EKO-MODUS ( OFF, #ON, #OPT) INT $TIMER [32] BOOL $MOUSE_DOM BOOL $MOUSE_TRA BOOL $MOUSE_ROT BOOL $MOUSE_ACT BOOL $TIMER_STOP [32] BOOL $TIMER_FLAG [32] BOOL $FLAG [1024] DECL SIG_STATE $SAFETY_SW;Zustimmungsschalter DECL POWERMODUL $POWERMODUL1;INFORMATIONEN UEBER DAS POWERMODUL 1 DECL POWERMODUL $POWERMODUL2;INFORMATIONEN UEBER DAS POWERMODUL 2 DECL POWERMODUL $POWERMODUL3;INFORMATIONEN UEBER DAS POWERMODUL 3 DECL POWERMODUL $POWERMODUL4;INFORMATIONEN UEBER DAS POWERMODUL 4 CHAR $RCV_INFO[128] BOOL $SIMULATE CHAR $PHGINFO [24] INT $PHGBRIGHT INT $PHGTEMP INT $PHGCONT DECL KEYMOVE $KEYMOVE BOOL $KCP_CONNECT;TRUE = KCP ANGESCHLOSSEN, FALSE = KEIN KCP BOOL $POWER_FAIL;TRUE BEI SPANNUNGSAUSFALL INT $BRAKE_SIG;BITFELD BREMSENSIGNALE INT $SEN_PINT [20] INT $APP_INT[20]; Variable fÃr Applikationszwecke z.B. Umstellen von SoftKeys abhÃngig von KRL Status INT $SEN_PINT_C [20] REAL $SEN_PREA [20] REAL $SEN_PREA_C [20] BOOL $EXTSTARTTYP BOOL $STOPNOAPROX BOOL $SR_OV_MSG_SHOW;M_SR_OV_RED in Automatik ausgeben REAL $DUMMY [6,10] INT $KR_SERIALNO_CAL; Roboterseriennummer laut cal-File BOOL $WBOXDISABLE INT $KR_SERIALNO;ROBOTER-SERIENNUMMER INT $JUS_TOOL_NO INT $CAL_DIFF;JUSTAGE-DIFFERENZ BOOL $CAL_DIFF_INIT;IST $CAL_DIFF INITIALISIERT ? DECL EMT_MODE $EMT_MODE REAL $CURR_ACT[12]; AKTUELLER MOTORSTROM IN % INT $INPOSITION;BITFELD ACHSE IN POSITION DECL ASYNC_STATE $ASYNC_STATE;ZUSTAND DER ASYNCHRONEN ACHSEN INT $ASYNC_FLT;FILTER FUER ASYNC ACHSEN INT $TORQUE_AXIS BOOL $PAL_MODE;ACHSE A4 WIRD AUF NULL GRAD FIXIERT CHAR $ROBTRAFO [32];ROBOTERNAME DECL SERVOPARA $SERVOPARA INT $ROB_TIMER DECL INT_INFO $RINT_LIST [32] DECL INT_INFO $SINT_LIST [32] INT $TORQMON [12];MOMENTENUEBERWACHUNGSSCHLAUCH IM PROGRAMMBETRIEB [%] INT $TORQMON2 [12] INT $TORQMON_COM [12];MOMENTENUEBERWACHUNGSSCHLAUCH IM KOMMANDOBETRIEB [%] REAL $TORQ_VEL [12];GESCHWINDIGKEITSGRENZE IN % ZUR UEBERWACHUNG IM MOMENTENBETRIEB DECL IDENT_STATE $IDENT_STATE DECL MOVE_STATE $MOVE_STATE BOOL $ZERO_MOVE BOOL $LINE_SEL_OK;SATZANWAHL IST ERFOLGT REAL $VEL_AXIS_ACT [12];AKTUELLE ACHSGESCHW. IN % VON DER MAXIMALGESCHW. BOOL $ABS_RELOAD BOOL $ABS_UPDATE;Update der Parameter des absolutgenauen Robotermodells ueber SOAP-HTTP-Protokoll INT $TORQ_DIFF [12];MAX MOMENTENABWEICHUNG DES LETZTEN BEWEGUNGSSATZES [%] INT $TORQ_DIFF2 [12];MAX ABLEITUNG DER MOMENTENABWEICHUNG DES LETZTEN BEWEGUNGSSATZES [%] CHAR $BIOS_VERSION [80];BIOS-VERSION DES MAINBOARDS INT $CPVELREDMELD INT $TRIGGER_LIMIT_INFO INT $POWEROFF_DELAYTIME;WARTEZEIT BEI POWEROFF IN SEKUNDEN BOOL $IOBLK_EXT;BLOCKIERT DAS SETZEN DER AUSGAENGE IN EXT BOOL $IOSIM_OPT;TRUE SCHALTET DIE IO-SIMULATION EIN BOOL $GM_WO_PLC;Simulierter Automatikbetrieb fuer Kundenversion GM (ohne SPS) BOOL $OUT_NODRIVE;AUSGAENGE SETZEN OHNE ZUSTIMMUNG (ANTRIEBE) BOOL $SERVO_SIM;SIMULATION DER FAHRBEWEGUNGEN DER ACHSEN (TRUE, FALSE) BOOL $MOT_STOP;EXTERNER START BLOCKIERT, ROBOTER NICHT AUF PFAD INT $BWD_INFO;BSTEP-INFORMATION INT $DRY_RUN_INFO;Konfig. und Zustaende des Trockenlaufes INT $BUS_STATE;ANZEIGE FELDBUSSE IM SYSTEM O.K. ODER NICHT INT $BUS_USED;ANZEIGE FELDBUSSE IM SYSTEM DEFINIERT INT $MB_TEMP1;MAINBOARD TEMPERATUR 1 INT $MOT_TEMP[12];AKTUELLE MOTORTEMPERATUR IN KELVIN INT $MB_TEMP2;MAINBOARD TEMPERATUR 2 INT $DATA_SER3 INT $DATA_SER4 INT $PC_FANSPEED INT $CAB_FANSPEED INT $VW_CYCFLAG;Anzahl der aufgezeichneten Cycflags bei BSTEP-Trace INT $VW_MOVEMENT;LEGT DIE ANZAHL DER MAX. RUECKWAERTS ZU FAHRENDEN BEWEGUNGSSAETZE FEST BOOL $VW_BACKWARD;DIENT ZUM EIN-AUSSCHALTEN DES RUECKWAERTSFAHRENS BOOL $OUT_C[4096] DECL IOSIM_STATE $INSIM_TBL[4096];SIMULATIONSTABELLE FUER EINGAENGE DECL IOSIM_STATE $OUTSIM_TBL[4096];SIMULATIONSTABELLE FUER AUSGAENGE INT $COLL_LINKCHK; BOOL $COLL_FILERDY;- BOOL $COLL_RELOADSCENE;- BOOL $RUNTIME_ERROR0;Laufzeitfehler Submit Interpreter BOOL $RUNTIME_ERROR1;Laufzeitfehler Roboter Interpreter BOOL $RUNTIME_ERROR2;Laufzeitfehler Expression Interpreter DECL RUNTIME_DATA $RUNTIME_DATA0;Laufzeitdaten Submit Interpreter DECL RUNTIME_DATA $RUNTIME_DATA1;Laufzeitdaten Roboter Interpreter DECL RUNTIME_DATA $RUNTIME_DATA2;Laufzeitdaten Expression Interpreter INT $MAX_COOP_KRC; Hoechstzahl der zusammenarbeitenden Roboterkontrolleure INT $SPY_MODE;Aktivierung / Deaktivierung der SPY Funktion EXTFCTP INT SET_OPT_FILTER (E6POS TARGETPOS: IN) STRUC SRCARTBOX REAL X, Y, Z, A, B, C, X1, Y1, Z1, X2, Y2, Z2;Struktur fuer die kartesichen Ueberwachungsraeume des SafeRobots DECL SRCARTBOX $SR_CARTWORKSPACE[7];kartesische Ueberwachungsraeume SafeRobot STRUC SRAXBOX REAL A1_N, A1_P, A2_N, A2_P, A3_N, A3_P, A4_N, A4_P, A5_N, A5_P, A6_N, A6_P, E1_N, E1_P, E2_N, E2_P;Struktur fue die achsspezifischen Ueberwachungsraeume des SafeRobots DECL SRAXBOX $SR_AXWORKSPACE[7];achsspezifische Ueberwachungsraeume STRUC SRSPHEREBOX REAL X, Y, Z, RADIUS;Struktur fuer SafeRobot Kugel DECL SRSPHEREBOX $SR_SPHERE[6];Systemvariable fure SafeRobot Kugel STRUC SRPOLYGONBOX BOOL ISNODEACTIVE, REAL X, Y;Struktur fuer den Zellenbereich des SafeRobots DECL SRPOLYGONBOX $SR_POLYGONNODE[6];Stuetzstellen fuer den Zellenbereich des SafeRobots STRUC SRTOOLBOX BOOL SPHERE1, SPHERE2, SPHERE3, SPHERE4, SPHERE5, SPHERE6, DUMMY1, DUMMY2, REAL TCPVECTOR_X, TCPVECTOR_Y, TCPVECTOR_Z;Struktur fuer SafeRobot Werkzeuge STRUC VECTOR REAL X, Y, Z;Dreidimensionaler Vektor STRUC DERI_VECTOR VECTOR D, DD;1. und 2. Ableitung als 3D-Vektor STRUC DERI_EXAX REAL D, DD;1. und 2. Ableitung fÃr Einzelkomponenten STRUC DERI_STRUC DERI_VECTOR CART, ORI, DERI_EXAX E1, E2, E3, E4, E5, E6;Ableitungsvorgabe fÃr Splinesegmente DECL SRTOOLBOX $SR_TOOL[3];Systemvariable fuer SafeRobot Werkzeuge DECL LOAD $SR_LOAD[3]; SYSTEMVARIABLE FUER SAFE ROBOT WERKZEUGLASTEN STRUC SRBOX BOOL ROBOTSTOPS, ISCARTESIANRANGE, ISPROTECTEDSPACE, MONITORINGSTOP, STOPSBEFOREWORKSPACE, PROTECTEDAREASPEED, REFERENCEROBROOT, DUMMY2, REAL CARTESIANVELOCITY, INT INTERFACENUMBERIN, INTERFACENUMBEROUT;Struktur fuer SafeRobot Ueberwachungsraeume DECL SRBOX $SR_WORKSPACE[7];Struktur fuer SafeRobot Ueberwachungsraeume STRUC MAXTOOL REAL LOAD_CM_R, LOAD_CM_Z, LOAD_M, LOAD_J, TOOL_R, TOOL_Z; STRUKTUR DER TOOLGRENZEN FUER KARTESISCHE BREMSWEGANSCHAETZUNG BOOL $SR_STOPSBEFORECELLSPACE;Funktion Anhalten vor Polygongrenzen aktivieren BOOL $SR_AXISMONITORING[8];TRUE = Achse wird von SafeRDW ueberwacht STRUC SRVELBOX REAL CART_VEL_T1, CART_VEL_GLOBAL, CART_VEL_RED;Struktur fuer SafeRobot Geschwindigkeiten DECL SRVELBOX $SR_VELOCITY;Geschwindigkeiten SafeRobot BOOL $SR_STATERANGE_OK[8];FALSE = Ueberwachungsraum ueberschritten nur fuer die Diagnose zu verwenden REAL $SR_AXIS_VEL_T1[8];achsspezifische Geschwindigkeit in der Betriebsart T1 REAL $SR_AXIS_VEL_RED[8];fÃr die achsspezifische Geschwindigkeitsgrenze der Funktion "sicher reduzierte Geschwindigkeit" STRUC BOXSTATESAFEIN BOOL RDW, PULSEERR, PRE, TOGGLE, OSCILLATION, REDUNDANCY, ERRORFLAG;Struktur fuer den Status von Kanal A und B der Eingaenge von der SafeRDW DECL BOXSTATESAFEIN $SR_STATESAFEIN_CHA[13];Gibt den Status von Kanal A der Eingaenge auf der SafeRDW DECL BOXSTATESAFEIN $SR_STATESAFEIN_CHB[13];Gibt den Status von Kanal B der Eingaenge auf der SafeRDW STRUC BOXSTATESAFEOUT BOOL PRE, POST, RDW, PULSEERR0, PULSEERR1, REDUNDANCY, LOOPBACK, APPROVED, ERRORFLAG;Struktur fuer den Status von Kanal A und B der Ausgaenge von der SafeRDW DECL BOXSTATESAFEOUT $SR_STATESAFEOUT_CHA[7];Gibt den Status von Kanal A der Ausgaenge auf der SafeRDW DECL BOXSTATESAFEOUT $SR_STATESAFEOUT_CHB[7];Gibt den Status von Kanal B der Ausgaenge auf der SafeRDW BOOL $SR_INPUT_ERRORFLAG[13];Gibt an, ob ein Eingang einen Fehler hat BOOL $SR_OUTPUT_ERRORFLAG[7];Gibt an, ob ein Ausgang einen Fehler hat INT $SR_ACTIVETOOL;Zeigt, ob ein Werkzeug auf der SafeRDW aktiviert wurde BOOL $BRAKETEST_NEWCONFIG;Wenn die Bremsentestkonfiguration geaendert wird,muss ein neuer Bremsentest durchgefuehrt werden STRUC SPL_FCTDEF REAL AMPLITUDE1, AMPLITUDE2, WAVELENGTH_RATIO;Definition des asymmetrischen Sinus ENUM SPL_TECHFCT_MODE FCT_POLYNOMIAL, FCT_SIN;Wahl der Pendelfigurdefinition STRUC SPL_TECHFCT SPL_TECHFCT_MODE MODE, TECHFCT POLYNOMIAL, SPL_FCTDEF FCT_DEF, REAL BLEND_IN, BLEND_OUT, PHASE_SHIFT;Definition der Pendelfigur STRUC SPL_FCTCTRL BOOL ADJUST_WAVELENGTH, REAL SCALE_IN, SCALE_OUT, OFFSET_OUT;Spline-Pendelparameter STRUC SPL_TECHSYS TECHSYS SYS, TECHANGLE ANGLES, TECHGEOREF GEOREF;Spline-Pendel-Referenzsystem STRUC SPL_TECH BOOL HAND_WEAVING, REAL HAND_WEAVING_MAX_ADJUST, TECHMODE MODE, TECHCLASS CLASS, SPL_TECHSYS REF_SYS, SPL_FCTCTRL FCTCTRL, SPL_TECHFCT FCT, REAL FADE_IN, FADE_OUT;Spline-Technologiestruktur STRUC SPL_TECH_MAP INT FG1, FG2, FG3, FG4, FG5, FG6;gemeinsem benutzte SPL_TECH-Parameter END Xd.gd.Ãd.Ve.Ãe.Ff.Ãf.Eg.g.Ãg.:h.âh. h.Ãh.Fi.qi.Ãi.âj.Ãj.@k.âk.[l. l.m.Nm. m. m.Ãm.Zn. n.Ãn..o.Xo. o.Ão.p.Ãp.*q.bq.Ëq.Ãq.r.ir.Ãr.5s. s.Ãs.ât.Ãt."u.pu.Åu. u.Ãu.Ãu.v.5v.iv.âv. v. v.Ãv.w. w.lx.Ãx.y.Xy.Åy.Ãy.z.oz. z.Ãz.<{.â{.Ã{.Ã{.$|.N|.q|.Å|.Ã|.G}.~}.Ã}.z~.Ã~.l.Å.$â.{â. â..2..Ã.wâ. â.Ãâ. Æ.;Æ.iÆ.8â.râ.Åâ.Yâ.yâ. â.Ãâ.>â.râ.â..â.Gâ.sâ. â.Ë.=Ë.ÃË. â.Ãâ.Å.vÅ.ÃÅ.â.Ãâ.&Å.vÅ.ÃÅ..[.â.Ž.fŽ.ÃŽ..Ã.B. . â.Ãâ.Ãâ. â.â.Eâ.dâ.â.Ãâ.Ãâ.Aâ. â.Ãâ.8â.fâ. â.2â.Eâ.{â.Ãâ.â.iâ. â.â.?â.Ãâ.Ãâ..Ë.Ë. Ë.â.{â.Ãâ.Ãâ.Å. Å.ÃÅ.Bâ.Ãâ.1Å.ŽÅ.ÃÅ.F. .Ã.wž.Þ.3Å.âÅ.ÃÅ.Q . . .M .q . .à .à .
.[/code]
the code im using is
<div style="color:Black;background-color:White; <pre>
<span style="color:Blue; private <span style="color:Blue; static ArrayList GetFunctions(<span style="color:Blue; string FunctionFile, <span style="color:Blue; string MatchString)
{
<span style="color:Blue; if (FunctionFile.Equals(<span style="color:Blue; string.Empty)) <span style="color:Blue; return <span style="color:Blue; null;
ArrayList Functions = <span style="color:Blue; new ArrayList();
<span style="color:Green; // System.Text.StringBuilder sb = new System.Text.StringBuilder();
MatchString = <span style="color:#A31515; @"(EXTFCTP|EXTDEF)([dw]*)([wd( :,]*))";
<span style="color:Green; // Open File for reading
<span style="color:Blue; using (StreamReader r = <span style="color:Blue; new StreamReader(FunctionFile))
{
<span style="color:Green; // Read each line until EOF
<span style="color:Blue; string line;
<span style="color:Blue; while ((line = r.ReadLine()) != <span style="color:Blue; null)
{
<span style="color:Green; // Try to match each line against the regex
<span style="color:Green; // Match m = g.Match(line);
Match mtch = Regex.Match(line, MatchString, RegexOptions.IgnoreCase);
<span style="color:Blue; if (mtch.Success)
{
<span style="color:Green; // sb.AppendLine(mtch.Groups[0].ToString());
<span style="color:Green; // Functions.Add(mtch.Groups[0].ToString());
Functions.AddRange(getMatches(line, MatchString));
}
}
<span style="color:Blue; return Functions;
}
}
[/code]
ive changed some of the things while trying it out but it should react the same.
View the full article