Skip to main content
Makro Sprache Ein_Ausgänge | 01 Mai 2017 | |

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 / 8192
Back to top

About this Article

Kollmorgen Support