Thema:
- Kann ein SSI Encoder mit mehr als 32 Bit Daten bei der EPOS4 verwendet werden?
Ausgangslage:
Fast alle Positioniersteuerungen nutzen eine Datenlänge von 32 Bit für die Positionserfassung und Regelung. Dem gegenüber stehen jedoch einige SSI Multi-turn Drehgeber, die eine Gesamtauflösung von mehr als 32 Bit besitzen und teilweise noch zusätzliche Status-Bits vor und / oder nach den Positionsbits übertragen.
Die sehr hohe Auflösung von mehr als 32 Bit bei einigen SSI Encodern bietet die Möglichkeit diese Encoder-Typen sehr flexibel ausgerichtet auf die jeweiligen Anwendungsanforderungen zu nutzen. Eine Anwendung erfordert zum Beispiel eine möglichst hohe Auflösung innerhalb einer Encoder-Wellenumdrehung, aber der gesamthafte Bewegungsbereich ist mechanisch ohnehin limitiert. Bei den meisten anderen Anwendung ist eine Auflösung von 4096 Inkr. pro Encoder-Wellenumdrehung (= 12 Bit) bereits mehr als ausreichend, aber es ist aufgrund eines grossen Positionierbereichs die maximale Anzahl an zählbaren Encoder-Wellenumdrehungen (z.B. 20 Bit = 1048576) sehr wichtig. SSI Encoder, die sowohl eine hohe Multi-turn als auch eine hohe Single-turn Auflösung besitzen, können hierdurch bei einer Vielzahl verschiedener Anwendungsanforderungen eingesetzt werden sofern die Steuerung diese Daten entsprechend verarbeiten kann.
Lösung:
Die EPOS4 kann ab der Firmware-Version 0x160 sehr flexibel auf die Möglichkeiten und Eigenschaften der SSI Encoder verschiedener Hersteller konfiguriert werden. Dies bietet unter anderem auch die Möglichkeit zu definieren, welcher Teil der Positionsinformation des SSI Encoders bei mehr als 32 Bit Positionsdaten (aus einem Datenstrom von bis zu 62 Bit) effektiv für die Anwendung von Nutzen ist. Es kann zum Beispiel ...
- ... ein oder mehrere LSB (= Lowest significant Bits) der "Single-turn" Positionsdaten-Information ignoriert werden, was zu einer verringerten Auflösung bei der Auswertung innerhalb einer Encoder-Wellenumdrehung führt. Falls die hohe "Single-turn" Auflösung des SSI Encoders nicht benötigt wird, ist dies eine Möglichkeit um die Gesamtlänge der Positionsdaten für die Regelung auf 32 Bit zu reduzieren.
- ... ein oder mehrere MSB (= Most significant Bits) der "Multi-turn" Positionsdaten-Information ignoriert werden, falls der Positionierbereich ohnehin kleiner ist als die theoretisch maximal durch den SSI-Encoder zu erfassende Anzahl von Wellenumdrehungen.
Mit EPOS Studio's "Startup" Wizard kann sehr einfach aber trotzdem flexibel konfiguriert werden, wie die SSI Daten ausgewertet werden und welcher Teil der Positionsdaten in Abhängigkeit von den Anwendungsanforderungen für die Steuerung relevant ist.
SSI Encoder Beispiel 1:
Es wird ein SSI "Multi-turn" Encoder mit der folgenden Spezifikation eingesetzt:
- "Special bits leading" / Führende Daten: Keine
- "Multi-turn" Auflösung: 16 Bits
- "Single-turn" Auflösung: 18 Bits
- "Special bits trailing" / Folgedaten: 10 bits
Die gesamthafte Positionsdatenlänge des SSI Encoders von 34 Bits (= 16 "multi-turn" Bits + 18 "single-turn" Bits) kann in der Steuerung mit verschiedenen Konfigurationsvarianten auf 32 Positionsdaten-Bits reduziert werden:
Konfigurationsvariante A:
Unter der Annahme, dass der effektive Bewegungsbereich des Antriebs in der Anwendung kleiner als 14 Bits (= 16384 Encoder-Wellemnumdrehungen) ist, können die oberen 2 Bits des 16 Bit "Multi-turn" Datenbereichs ignoriert werden.
Konfigurationsvariante B:
Falls die 18 Bit "Single-turn" Auflösung (= 262144 Inkr. pro Encoderwellenumdrehung) bei einer Anwendung nicht erforderlich ist, kann diese auf 16 Bits (= 65536 Inkr. pro Encoder-Wellenumdrehung) für die Steuerung reduziert werden. In der Regel ist eine Auflösung von sogar nur 10 bis 12 Bits pro Encoder-Wellenumdrehung ausreichend.
SSI Encoder Beispiel 2:
Es wird ein SSI "Multi-turn" Encoder mit der folgenden Spezifikation eingesetzt:
- "Special bits leading" / Führende Daten: 2 Bits
- "Multi-turn" Auflösung: 20 Bits
aber es wird immer auf eine Länge von 22 Bits mit zusätzlichen führenden '0' Bits aufgefüllt. - "Single-turn" Auflösung: 16 Bits
- "Special bits trailing" / Folgedaten: 8 Bits
Die gesamthafte SSI Encoder Positionsdatenlänge von 36 Bits (= 20 "Multi-turn" Bits + 16 "Single-turn" Bits) kann auf verschiedene Arten auf 32 Positionsdaten-Bits reduziert werden.
Bei diesem sehr spezifischen SSI Encoder-Typ wird die "Multi-turn" Datenlänge mit führenden '0' Bits immer auf eine fixe Länge von 22 Bits aufgefüllt. Die tatsächliche Länge der "Multi-turn" Positionsdaten ist aber weiterhin nur 20 Bit. Der Wert von 20 Bit muss deshalb als "Multi-turn" Datenlänge des SSI Encoders konfiguriert werden. Die führenden '0' Bits zählen als Bestandteil der "Special bits leading". Die Anzahl an zu konfigurierenden "Special leading bits" vor den eigentlichen Positionsdaten summiert sich deshalb auf 4 Bits (= 2 tatsächlich führende Bits + 2 x '0' Bits).
Mögliche Konfigurationsvariante:
Nachfolgend wird nur eine mögliche, aber typische Konfigurationsvariante für diesen SSI Encoder-Typ gezeigt. Bie dieser Variante wird die "Single-turn" Auflösung des SSI Encoders von den 16 Bits (= 65536 Inkr. pro Encoderwellenumdrehung) auf 12 Bits (= 4096 Inkr. pro Encoderwellenumdrehung) für die Steuerung reduziert, was für viele Anwendungen immer noch ausreichend ist.
Ergänzende Hinweise:
- Falls eine übergeordnete Steuerung die vollständigen Positionsdaten des SSI-Encoders auslesen möchte, stehen diese in dem EPOS4 Objekt "SSI position raw value complete" (0x3012/0x0D) als 64 Bit Wert zur Verfügung.
- Auf den Inhalt der konfigurierten "SSI bits leading" kann über das EPOS4 Objekt "SSI special bits leading data" (0x3012/0x0C) zugegriffen werden.
- Auf den Inhalt der konfigurierten "SSI bits trailing" kann über das EPOS4 Objekt "SSI special bits trailing data" (0x3012/0x06) zugegriffen werden.
In dem Kapitel "SSI absolute encoder" der "EPOS4 Firmware Specification" finden sich weitere Details zur Konfiguration des SSI Encoders und verfügbaren SSI Prozessdaten.
Kommentare
0 Kommentare
Zu diesem Beitrag können keine Kommentare hinterlassen werden.