Gliederung der Platzversatzdaten

In der Platzversatzdatenliste können verschiedene Platzversatzgruppen vorgegeben werden. Durch Anwahl des Platzversatzindex vor Programmstart kann die entsprechende Platzversatzgruppe geladen werden. Jede Platzversatzgruppe enthält die Platz-versatzdaten für alle Bahnachsen und wird im folgenden allgemein als Platzversatz bezeichnet.

Bild 1.1: Zuordnung der Platzversatzdaten zu den logischen Achsen

Momentan sind nur Achskonfigurationen mit einer Gruppe möglich [CHAN], so daß gilt: "dec_achs_nr" = "achsen_idx"

Beim NC-Programmstart werden die Platzversatzdaten in die Koordinaten aller Bahnachsen eingerechnet. Der Achsindex entspricht der kanalinternen Achsindizierung (Bild 1.1, dec_achs_nr). Die Anfangs-Achskonfiguration des NC-Kanals wird in den Kanalparametern festgelegt [CHAN].

Wertebereiche von Parametern werden ggf. auch durch Angabe einer Grenze, die sich aufgrund der Datenbreite ergibt, mit z.B. MAX(UNS32) etc. definiert.


Syntax und Interpretation des Platzversatzdaten-ASCII-Files

Die Platzversatzdaten werden in einem ASCII-File definiert und von einem ASCII-Interpreter interpretiert und in den entsprechenden Strukturen gespeichert.

Danach werden für die Platzversatzdaten Plausibilitätsprüfungen durchgeführt.

Dieses Dokument definiert Inhalt und Syntax des ASCII-Files (Beispiel "pzv_d*.lis") sowie die Elemente des Platzversatzdatensatzes.


Kommentar im ASCII-File

Kommentare können ganzzeilig, oder am Ende einer Zeile eingefügt werden.

Bei ganzzeiligem Kommentar muß am Zeilenanfang das Kommentarzeichen "'#", gefolgt von einem Leerzeichen eingefügt werden.

Soll am Ende einer Zeile ein Kommentar eingefügt werden, so muß vor dem Kommentar lediglich ein Leerzeichen vorhanden sein. Wurde in der Zeile jedoch ein String definiert, so muß dem Kommentar das Kommentarzeichen "(" vorangestellt werden.

Leerzeilen sind ebenfalls möglich.

Beispiel:

# ************************************************************************

# Daten

# ************************************************************************

#

# Auflistung

dummy[1] 1 Kommentar

dummy[2] 1 # Kommentar

dummy[3] 1 ( Kommentar

dummy[4] 1 /* Kommentar

...

...

beispiel[0].bezeichnung STRING_2 (Kommentar, hier Kommentarklammer nötig!)


Platzversatzgruppe (pzv_grp[i])

Pro Platzversatzgruppe "pzv_grp[i]" sind die Platzversätze für alle Bahnachsen enthalten. Die Platzversatzgruppe kann vor Programmstart in der Bedienung angewählt werden.

Variablenname | Typ | erlaubter Bereich | Dimension
pzv_grp[i] | PZV_GRUPPE | ---- | ----
i | UNS16 | 0 ... [DEC_PZV_DATA_ANZ-1] | ----

Wert DEC_PZV_DATA_ANZ | Bedeutung
applikationsabhängig | Anzahl der Platzversatzgruppen

Mehr:

button Achszuordnung der Daten in Platzversatzgruppe (pzv_grp[i].achse[j])


Achszuordnung der Daten in Platzversatzgruppe (pzv_grp[i].achse[j])

Die Zuordnung der Platzversätze zu den Bahnachsen erfolgt über die decoder-interne Achsindizierung.

Dabei entspricht der Achsindex "j" in "pzv_grp[i].achse[j]" der Decoder-Achsnummer (siehe Bild 1.1).

Variablenname | Typ | erlaubter Bereich | Dimension
achse[j] | PZV_STRUCT | --- | ----
j | UNS16 | 0 ... [SDA_GRPMAX * SDA_AXMAX - 1] | ----

Konstante | Wert | Bedeutung
SDA_AXMAX | applikations-abhängig | maximale Anzahl der Achsen je Gruppe
SDA_GRPMAX | 1 | maximale Anzahl der Gruppen, momentan ist hier nur der Wert 1 erlaubt

2.1.1.1

Mehr:

button Achsversatz (P-CLMP-00001)


Achsversatz (P-CLMP-00001)

Pro Platzversatzgruppe "i" ist für jede Achse "j" ein Achsversatzparameter "pzv_grp[i].achse[j].versatz" reserviert.

Variablenname | Typ | erlaubter Bereich | Dimension
versatz | SGN32 | MIN(SGN32) < versatz < MAX(SGN32) | ----

Die Achsversätze werden in der Einheit [0,1μm] bei translatorischen Achsen bzw. [0.0001°] bei rotatorischen Achsen erwartet.


Beispiel für die Belegung der Platzversatzdaten

Konfiguration mit 3 Achsen:

# ****************************************************************************

# Platzversatzdaten

# ****************************************************************************

# Wichtiger Hinweis: Hinter dem Kommentarzeichen ´# ´ muß

# unbedingt ein Leerzeichen (Space) eingefügt werden.

# ACHTUNG: Der Platzversatz wird in der Einheit 0,1 μm erwartet.

# ****************************************************************************

#

# ============================================================================

# 1.Platzversatzgruppe

# ============================================================================

pzv_grp[0].achse[0].versatz 100000 # Verschiebung um 10 mm

pzv_grp[0].achse[1].versatz 200000 # Verschiebung um 20 mm

pzv_grp[0].achse[2].versatz 300000 # Verschiebung um 30 mm

#

# ============================================================================

# 2.Platzversatzgruppe

# ============================================================================

pzv_grp[1].achse[0].versatz -100000 # Verschiebung um -10 mm

pzv_grp[1].achse[1].versatz 200000 # Verschiebung um 20 mm

pzv_grp[1].achse[2].versatz 400000 # Verschiebung um 40 mm

#

# ============================================================================

# 3.Platzversatzgruppe

# ============================================================================

pzv_grp[2].achse[0].versatz 40000 # Verschiebung um 4 mm

pzv_grp[2].achse[1].versatz 50000 # Verschiebung um 5 mm

pzv_grp[2].achse[2].versatz 60000 # Verschiebung um 6 mm