Makro Sprache Ein_Ausgänge
Gültig für S300, S700
Digitale Ein-/ Ausgänge
Wenn ein digitaler Eingang für das Makroprogramm verwendet werden soll, darf ihm keine Firmwarefunktion zugewiesen sein:
INxMODE 0
Wenn ein digitaler Ausgang im Makroprogramm verwendet werden soll, muß ihm die die Funktion 23, "DPR-Ausgabe" zugewiesen werden:
OxMODE 23
Die Ein- bzw. Ausgänge werden mit INPUTx bzw. OUTPUTx angesprochen. Beispiel:
IF INPUT3=1 THEN // wenn dig. Eingang 3 aktiv OUTPUT1:=1; OUTPUT2:=0; // schalte dig. Ausgang 1 ein und dig. Ausgang 2 aus END_IF;
Virtuelle Eingänge
Es ist möglich, die virtuellen Eingänge (Input 5...20 wenn keine I/O Erweiterungskarte verwendet wird) mit den Standardfunktionen zu belegen und den Eingang im Makroprogram zu verändern. Auf diese Weise lassen sich fertige Funktionen aus dem Makroprogram heraus verwenden.
Die Eingänge können mit dem Makro SOFTIN geändert werden. Bit 0 steht für Eingang 5, Bit für Eingang 6 usw.
Im Beispiel wurde der virtuelle Eingang 7 mit der Funktion 16, Fahrsatzstart, konfiguriert. Mit IN7TRIG = 0 wird der Eingang zumStart der Referenzfahrt genutzt:
SOFTIN:=SOFTIN|0x04; // set (virt.) Input7 to start reference move SOFTIN:=SOFTIN&0xFFFFFFFB; // set Input 7 back to 0
Digitale I/Os auf der Erweiterungskarte I/O-14/08
Die zusätzlichen I/Os auf der Erweiterungskarte I/O14/08 können im Makro Programm genutzt werden. Um die I/Os als allgemeine I/Os zu nutzen, setzen Sie die zugehörigen Parameter
INxMODE=0 und OxMODE=23.
Die folgende Tabelle zeigt die Makronamen für die I/Os:
| Eingang | X11A Pin | Makro |
|---|---|---|
| A0 | 1 | INPUT11 |
| A1 | 2 | INPUT12 |
| A2 | 3 | INPUT13 |
| A3 | 4 | INPUT14 |
| A4 | 5 | INPUT15 |
| A5 | 6 | INPUT16 |
| A6 | 7 | INPUT17 |
| A7 | 8 | INPUT18 |
| Reference | 9 | INPUT5 |
| FError_clear | 10 | INPUT6 |
| Start_MT Next | 11 | INPUT7 |
| Start_Jog v=x | 12 | INPUT8 |
| MT_Restart | X11B Pin1 | INPUT9 |
| Start_MT No. x | Pin2 | INPUT10 |
Um die Eingänge als Byte zu lesen, verwenden Sie die Byte Makro Variablen SLOTX1 und SLOTX2.
Beispiel:
TEMPVAR:=SLOTX2&0XFF; //Liest Eingänge Input11 bis Input18 in die LONG Variable TEMPVAR
TEMPVAR1:=SLOTX1&0X3F; //Liest Eingänge Input5 bis Input10 in die LONG Variable TEMPVAR1
| Ausgang (Defaulteinstellung) | X11B Pin | Macro |
|---|---|---|
| InPos | 3 | OUTPUT3 |
| Next-InPos | 4 | OUTPUT4 |
| /SFAULT | 5 | OUTPUT5 |
| Sw_limit 1 | 6 | OUTPUT6 |
| Sw_limit 2 | 7 | OUTPUT7 |
| PosReg3 | 8 | OUTPUT8 |
| PosReg4 | 9 | OUTPUT9 |
| PosReg5 | 10 | OUTPUT10 |
Analoge Eingänge
Die Analogeingänge werden mit den Makrovariablen ANIN1 und ANIN2 gelesen.
Skalierung: +/-10V = +/-8192 Inkremente
Beispiel für die Umrechnung in mV:
LONG TEMPVAR1, MILLIVOLT; LONG CONST10T:=10000; LONG CONST13BIT:=8192; TEMPVAR1:=ANIN1; // Spannung in Inkr., Konvertierung von Word in Long MULDIV(TEMPVAR1,CONST10T,CONST13BIT,MILLIVOLT); //MILLIVOLT=ANIN1*10000 / 8192Back to top
Startseite >
Knowledge Base >
FAQs nach Themen >
Downloads >