Makro Sprache Bewegung
Valid for S300, S700
Fahraufträge in EEPROM oder RAM
Um in einem PLC - Programm Fahraufträge zu bewältigen, verwenden Sie die Befehle XWRITE und COMMAND, die auf die ASCII - Variablen zugreifen:
Beispiel:
COMMAND('ORDER 192 49000 2800 8192 50 50 0 0 0 0');
Erstellt einen Fahrauftrag mit der Nummer 192 mit der Zielposition 49000, Sollgeschwindigkeit 2800, Auftragstyp „absolut", Beschleunigungs- und Bremsrampe 50ms, kein Folgeauftrag.
Es ist auch möglich, einzelne Werte eines im RAM gespeicherten Fahrauftrags zu ändern:
COMMAND (‘MTMUX 195’); // Pointer auf Fauhrauftrag 195 einstellen
XWRITE (‘O_P’, TEMPVAR); // Wert der Variablen TEMPVAR schreiben
Mit Hilfe dieser beiden Zeilen wird die Position des Fahrauftrags Nr. 195 in TEMPVAR verändert.
Fahrauftrag Nr. 0
Den ASCII Befehlen
O_P
O_V
O_C
O_ACC1
O_ACC2
O_DEC1
O_DEC2
O_FT
O_FN
sind Makrovariablen zugeordnet, die dieselben Namen wie die ASCII - Befehle tragen. Diese Befehle schreiben direkt in den Fahrauftrag Nr. 0, ohne den ASCII - Befehl XWRITE aufzurufen.
Beispiel:
Die Zeilen
O_P := 35000;
O_V := 50000;
setzen die Position von Fahrauftrag Nr. 0 auf 35000 und die Geschwindigkeit auf 50000.
Fahrauftrag starten
Ein Fahrauftrag („Motion Task") kann mit Hilfe der folgenden Zeilen gestartet werden:
MOVEP_NR:=0; // Nummer des Fahrauftrages einstellen SETPTR(TRJ,G_STARTMOVE); // Fahrauftrag starten
Tippbetrieb starten (in OPMODE 8)
VJOGIO:=MYJOGSPEED; // Tipp - Geschwindigkeit einstellen SETPTR(TRJ,G_MOVEJOGIO); // Bewegung starten
Referenzfahrt starten
SETPTR(TRJ,G_MOVEREF); // Referenzfahrgeschwindigkeit VREF wird benutzt
Bewegung beenden
SETPTR(TRJ,G_STOPMOVE);
OPMODE wechseln
NOPMODE:=TEMPVAR1; // set new OPMODE FUNCTION(CALCOPMODE); //do some internal adjustments
Camming Funktionen
Bis zu 8 Profile (Tabellen) können im Verstärker gespeichert werden. Alle Profile zusammen können bis zu 8.000 Punkte beschreiben. Tabellennummer startet mit 0.
Die Systemvariablen LTABL0,...LTABL7 beschreiben die Länge der Tabellen.
Wenn einer Camming Tabelle basierend auf einem externen Master (z.B. einem Encoder) gefolgt werden soll, muss der Parameter EXTPOS auf einen negativen Wert gesetzt werden (passend zum Encoder). Das Camming kann dann auf die Variable PFB0 bezogen werden. Camming wird im OPMODE 5 durchgeführt, die Position kommt von der Tabelle, die vom Macro NEWPOS ausgewertet wird.
Die folgenden Funktionen können verwendet werden:
FUNCTION4(GETTAB,TABVAL,TABNR,INDEX,TABREST);
Diese Funktion holt einen Wert aus einer Tabelle und führt eine (lineare) Interpolation zwischen zwei Werten durch. Alle Variablen müssen im LONG Format definiert sein.
| Parameter | Bedeutung |
|---|---|
| FUNCTION4 | Startet eine Funktion mit 4 Variablen des Types LONG |
| GETTAB | Funktionsname |
| TABVAL | Funktionsergebnis |
| TABNR | Tabellennummer |
| INDEX | Pointer für die Tabelle. Wert der Tabellenposition INDEX wird verwendet. |
| TABREST | Rest, wird für die Interpolation zwischen Tabellenwerten verwendet. Format 0...1023 |
Der Wert von TABVAL wird wie folgt berechnet:
TABVAL:=TABLE{TABNR}{INDEX} + ((TABLE{TABNR}{INDEX+1}-TABLE{TABNR}{INDEX})*TABREST)>>10;
FUNCTION5(GEARALL,POSOUT,TABVAL,MYGEARI,MYGEARO,MYREST);
Diese Funktion führt eine Multiplikation und Division aus und berücksichtigt den sich aus der Division ergebenden Rest. Anwendung: Sinnvoll bei Gearing-Funktionen? Alle Variablen müssen im LONG Format definiert sein.
| Parameter | Bedeutung |
|---|---|
| FUNCTION5 | Startet eine Funktion mit 5 Variablen des Types LONG |
| GEARALL | Funktionsname |
| POSOUT | Funktionsergebnis |
| TABVAL | Eingangswert für die Funktion |
| MYGEARI | Übersetzuing Nenner |
| MYGEARO | Übersetzung Zähler |
| MYREST | Rest, darf nicht vom Nutzerprogramm verändert werden |
Diese Funktion führt folgende Berechnung durch:
TEMP = TABVAL*MYGEARO+MYREST; POSOUT = TEMP/MYGEARI; MYREST = TEMP%MYGEARI; (% steht für Modulooperation)
Durch Mitführen von MYREST wird ein Weglaufen der Achse durch ständige Fehler der Division verhindert.
Back to top
Startseite >
Knowledge Base >
FAQs nach Themen >
Downloads >