HIPERFACE
HIPERFACE
Description of the
HIPERFACE® Interface
Inhaltsverzeichnis Contents
HIPERFACE® Motorfeedback-Systeme 3 HIPERFACE® Motor Feedback Systems 33
HIPERFACE® Der Parameterkanal 15 HIPERFACE® The parameter channel 45
HIPERFACE® Das Übertragungsprotokoll 16 HIPERFACE® The transmission protocol 46
Datenformat 16 Data Format 46
Dialog Timing 16 Dialogue Timing 46
ADDRESS-Format 17 ADDRESS Format 47
Broadcastadresse FFh 17 Broadcast Address FFh 47
COMMAND-Format 17 COMMAND Format 47
Fehlerbehandlung 17 Error Handling 47
HIPERFACE® Die Befehle 18 HIPERFACE® The commands 48
Position lesen 19 Read position 49
Position setzen 20 Set position 50
Analogwert lesen 21 Read analogue value 51
Zählerfunktionen 22 Counter functions 52
Zähler lesen 22 Read counter 52
Zähler erhöhen 22 Increase counter 52
Zähler löschen 22 Delete counter 52
Datenspeicherung und Verwaltung 23 Data Storage and Administration 53
Daten lesen 24 Read data 54
Daten speichern 24 Store data 54
Status eines Datenfeldes ermitteln 24 Determine status of a data field 54
Datenfeld anlegen 25 Create data field 55
Verfügbaren Speicherbereich ermitteln 25 Determine available memory area 55
Zugriffsschlüssel ändern 25 Change access code 55
Beispiel zur Datenfelddefinition 26 Example: Data Field Definition 56
Geberstatus abfragen 27 Read encoder status 57
Typenschild auslesen 27 Read out type label 57
Reset 29 Reset 59
Adresse vergeben 30 Allocate address 60
Seriennummer & Programmversion lesen 30 Read serial number and program version 60
Serielle Schnittstelle konfigurieren 31 Configure serial interface 61
Position setzen mit interner Synchronisation 32 Set position with internal synchronisation 62
HIPERFACE®
Vorteil dieser Systeme ist deren einfache Implementierung aufgrund der Verfügbarkeit der entsprechenden Inter-
face-Bausteine und die geringe Komplexität der Einzelkomponenten.
Nachteilig ist demgegenüber nicht nur, dass die Gebersysteme selbst jeweils Geld kosten, auch die Montage dreier
Systeme und deren Verkabelung, verursacht hohe Kosten. Außerdem steigt mit der Anzahl der Komponenten auch
deren Ausfallwahrscheinlichkeit.
Besonders bei Kompaktreglern kleiner Leistungsklassen stehen natürlich die Einsparpotentiale im Vordergrund.
Ansatzpunkte sind hier:
• Die Ausführung des Kommutierungsgebers mit Hall-Sensoren
• Der Wegfall des Positionsgebers, falls nicht unbedingt erforderlich
• Ersatz des Tachogenerators durch Software-Konzepte der „Sensorless Control“
Diese Einsparungen werden jedoch stets mit Einschränkungen der Performance des Gesamt-Systems erkauft.
Früher
Steuerung Steuerung
Winkel
Geschwindigkeit
Kommutierung
Abb. 1
Das Wissen um diese Anforderungen und der Wunsch, alle diese Funktionen mit nur einem Gerät zu erfüllen,
waren Auslöser zur Entwicklung der innovativen Motorfeedback-Systeme von SICK-STEGMANN, ausgestattet mit
einer neuartigen Schnittstelle:
HIPERFACE®
steht für High Performance Interface und ist die Standard-Schnittstelle für Motorfeedback-Systeme von SICK-
STEGMANN.
Diese Schnittstelle wurde speziell auf die Anforderungen der digitalen Antriebsregelung entwickelt und bietet dem
Anwender vereinheitlichte und vereinfachte mechanische und elektrische Schnittstellen.
Das Besondere
Bisher wurden optische Drehgeber als so genannte Incrementalgeber oder Absolutwertgeber klassifiziert.
Incrementalgeber sind vergleichsweise einfach aufgebaut und tasten nur wenige Spuren ab. Sie bieten relativ
hohe Auflösungen, und eignen sich aufgrund ihrer zählenden, echtzeitfähigen Schnittstelle (Quadratur-Signale) gut
zur Drehzahlregelung von Antrieben. Aufgrund der fehlenden absoluten Positionsinformation, bzw. erst nach Dre-
hung der Welle um bis zu 360°, sind sie jedoch als Kommutierungsgeber ungeeignet.
Absolutwertgeber übertragen stets die gesamte Positionsinformation und sind deshalb sehr gut zur Positionsrege-
lung geeignet. Die digitale Übertragung der Position benötigt eine hohe Übertragungsbandbreite im Kabel und ist
nur bedingt echtzeitfähig. Außerdem sind die Absolutwertgeber wegen ihres großen Aufwandes zur Herstellung
nach konventioneller Art relativ teuer. Diese konventionelle Art ist das Lesen, einer auf einer Glasscheibe codierten
binären Information, wobei für jede binäre Stelle eine entsprechende optische Abtastung nötig ist. Alle diese Ab-
tastungen müssen zueinander so eingestellt sein, damit unter allen Bedingungen kein Lesefehler auftreten kann.
HIPERFACE®-Motorfeedback-Systeme sind eine Mischung aus Incrementalgeber und Absolutwertgeber und verei-
nen die Vorteile beider Geberarten.
Der Absolutwert wird hierbei zunächst nur beim Einschalten des Gerätes gebildet und über die busfähige Parame-
ter-Schnittstelle nach RS485-Spezifikation dem externen Zähler im Regler mitgeteilt, der danach von diesem Abso-
lutwert aus, inkrementell mit den analogen Sinus-/Cosinussignalen weiterzählt.
Durch die Verwendung hochlinearer Sinus- und Cosinussignale wird die zur Drehzahlregelung notwendige hohe Auf-
lösung erreicht (Arcus tangens-Bildung im Regler). Gleichzeitig bleiben jedoch die zu übertragenden Signalfrequen-
zen relativ nieder, so entsteht z. B. bei einer Periodenzahl von 512 pro Umdrehung, selbst bei einer Drehzahl von
12.000 UPM nur eine Frequenz von 102,4 kHz, welche problemlos auch über weite Strecken übertragbar ist.
HIPERFACE®
Interner Aufbau
Typischer Aufbau eines HIPERFACE®-Motorfeedback-Systems
Singleturn Analog-
sin2 +
cos2 Treiber
Prozessdatenkanal
Längs-
SSI® Eeprom
regler US/Gnd
Micro-
1
Controller
16
RS 485
Multiturn
1 Treiber
16 Parameterkanal
1
16
Abb. 2
Wie bei Standard-Gebern üblich, befindet sich im Inneren eines Motorfeedback-Systems meist eine Codescheibe
aus Glas als Maßverkörperung. Das auf der Scheibe befindliche Codemuster wird im Durchlichtverfahren von einer
Infrarot-Diode auf einem voll kundenspezifischen, hochintegrierten Schaltkreis abgebildet.
Die Besonderheit der SinCos®-Motorfeedback-Systeme beruht nun darin, dass neben der absoluten Codespur auch
eine inkrementelle Spur angeordnet ist, welche Sinus- und Cosinussignale erzeugt.
Incrementalspur
Incrementale
Sinus-/Cosinus-Abtastung
Absolute Spur
Absolute Abtastung
Abb. 3
Üblicherweise werden in einem Motorfeedback-System 2n Perioden sinus- und cosinusförmiger Signale abgeta-
stet. Diese Signale stehen jederzeit über den so genannten Prozessdatenkanal als Echtzeit-Information zur Verfü-
gung.
Parallel dazu ist über den Parameterkanal (RS485) die absolute Positionsinformation verfügbar, die in erster Linie
dazu dient, genau eine dieser 2n Perioden zu identifizieren.
Versorgungsspannung
Auf den ersten Blick erscheint es nachteilig, im Regler eine weitere, recht ungewöhnliche Versorgung von typischer-
weise 8V aufbauen zu müssen. Dies gewährleistet jedoch auch bei langen Distanzen zwischen Regler und Motor-
feedback eine ausreichende Versorgungspannung am HIPERFACE®-Motorfeedback-System. Aufwändigere Versor-
gungen z. B. mit Sense-Leitungen werden nicht benötigt.
RS485-Interface
Diese Schnittstelle kann getrost als Industriestandard bezeichnet werden. Das physikalische Interface benötigt ei-
nen 130 Ω-Abschlusswiderstand, zwei Biasing-Widerstände und einen Standard RS485-Transceiver. Das Protokoll
wird mit einer Standard-UART abgewickelt, wie sie auf fast allen üblichen Mikrocontollern/DSPs implementiert ist.
SinCos®-Schnittstelle
Die Sinus-/Cosinussignale werden voll differentiell übertragen, ihre Amplitude variiert unter allen Bedingungen um
höchstens 20%. Da diese Schnittstelle die eigentliche Performance des Drehzahlreglers gewährleistet, muss dieser
Teil des Interface sorgfältig entwickelt werden. Neben Differenz-Eingangverstärkern mit geringen Offsets, geringem
Rauschen und hoher Gleichtaktunterdrückung, sind auch Widerstände und Kondensatoren (Tiefpass) geringer To-
leranz einzusetzen.
Auch nach dem analogen Eingangsverstärker müssen Signalrauschen und Übersprechen klein gehalten werden.
Hier geht es auch weiter zu den Komparatoren zur Erzeugung von inkrementellen Zählsignalen und zu einem 2-ka-
naligen, simultan erfassenden AD-Wandler mit mindestens 10 Bit Auflösung.
Üblicherweise sind weder zum Zählen, noch zur Analog/Digital-Wandlung zusätzliche, externe Komponenten not-
wendig. Diese Funktionalitäten sind heute bei Mikrocontrollern und DSP Stand der Technik.
Optionales
Um die volle Funktionalität der HIPERFACE®-Schnittstelle auszunützen, sollte zusätzlich eine Verbindung zwischen
interner RxD-Leitung und dem Capture-Eingang des Incremental-Zählers vorgesehen werden. Hiermit ist es z. B. in
sicherheitsrelevanten Applikationen, auch bei voller Drehzahl (6000 rpm) möglich, den Zählerstand mit der absolu-
ten Position zu vergleichen.
Zur Vervollkommnung des aus den Analogsignalen abgeleiteten Geschwindigkeitswerts stehen inzwischen viele al-
gorithmische und/oder Hardware-Lösungen zur Verfügung, wie z. B.
• Filterung
• Oversampling
• PLL-Verfahren
HIPERFACE®
Software
Serielles Protokoll
Standardmäßig ist die Schnittstelle auf 9600 Bd konfiguriert. Die bidirektionale RS485-Schnittstelle ist prinzipiell
busfähig, weshalb jede Kommunikation vom Master, also von der Steuerung, mit der Slave-Adresse beginnt. Zur Mi-
nimierung der Übertragungszeiten werden die Informationen binär übertragen. Jedes Protokoll wird mit einer ein-
fach zu berechnenden XOR-Prüfsumme abgeschlossen. Die Protokoll-Ende-Erkennung erfolgt anhand einer Time-
out-Steuerung.
Die HIPERFACE®-Motorfeedback-Systeme verfügen über interne Diagnose-Funktionen und signalisieren kritische
oder fehlerhafte Zustände im Antwortprotokoll.
Sinus Cosinus
Tangens (X/Y)
Abb. 4 Arctan-Interpolationsverfahren
Synchronisation
Der Überlauf, bzw. die Flanken auf den verschiedenen Übertragungswegen werden in Realität nie zum exakt identi-
schen Zeitpunkt auftreten.
Dies lässt sich durch folgende Effekte erklären:
• die absolute Position wird über separate Codespuren ermittelt und weicht deshalb geringfügig von der aus den
Analogsignalen interpolierten Position ab (s. Abb. 5) Diese Phasenlage kann sich deshalb innerhalb einer Umdre-
hung um bis zu ± 4/32 einer Periode verändern.
• dynamische Effekte, wie Signallaufzeiten oder unterschiedliche Eingangsfilter
• Hysterese, z. B. am Komparator des Quadraturzählers
Incrementale Sinus-/
Absolute Cosinusspur
Codespuren
Sequenzieller Absolutcode
digitale
Position via
RS485
– Sinus
– Cosinus
Abb. 5
Die Synchronisation beschreibt nun ein Verfahren welches diese Effekte in weiten Grenzen (± 1/2 Periode) kom-
pensieren kann. Damit ist es möglich, auch bei hohen Drehzahlen die analogen Signale einer bestimmten Periode
zuzuordnen.
Dabei werden jeweils die überlappenden Bits zweier unterschiedlicher Positionsinformationen auf gleiche Wertig-
keit ausgerichtet und sodann die Differenz der Positionswerte gebildet. Zeigen die beiden Positionswerte in unter-
schiedliche Perioden, so wird der niedriger aufgelöste Positionswert in Richtung der kleineren Differenz um ± 1 Pe-
riode korrigiert.
synchronisation
quadrature_counter: der im Regler mitgezählte Positionswert mit einer Auflösung von 4* Periodenzahl
Abb. 6 analogue_angle: der aus den Analogsignalen berechnete Winkel innerhalb einer Periode
absolute_position: die über den Parameterkanal ausgelesene absolute Position
HIPERFACE®
Ilim
PM-
motor
VDC
Abb. 7
Bei der Einstellung der Motorkommutierung kommt im Allgemeinen eines der folgenden Verfahren zur Anwendung:
Start Up
Startup Nach dem Einschalten können neben dem Initialisierungsstatus des HIPER-
Power on
FACE®-Motorfeedback-Systems, auch alle Betriebsparameter der Motor-
Regler-Kombination aus dem Eeprom ausgelesen und der Regler anhand
Wartezeit
100 < Tw < 900 ms des elektronischen Typenschilds auf die technischen Daten des Motorfeed-
Reset 53h
Status lesen
back-Systems parametriert werden.
Fehler 50h Sodann wird die absolute Position ausgelesen und damit die Kommutie-
Position lesen rungslage und ggf. die Position der Achse ermittelt.
42h
Beim ersten Regelzyklus werden danach die Analogsignale erfasst, und mit
Analogsignale dem daraus berechneten Arcus-Tangens, der Incrementalzähler initialisiert.
erfassen
(Prozessdaten)
Feinposition
berechnen &
Synchronisation
Quadratur-
zähler laden
Kommutie-
rungsoffset
auslesen
Abb. 8
Geschwindigkeitsregler
Die hochlinearen, sinusförmigen Analogsignale erlauben einen hohen Interpolationsfaktor und damit eine hohe Auf-
lösung der Geschwindigkeit. Hiermit ist beinahe mühelos ein weiter Drehzahlstellbereich von 1:10.000 erreichbar.
Positionsregler
Was die Schnittstelle zum Positionsregler angeht, so wurden bereits unter- Motor-
schiedliche Konzepte realisiert. Es existieren Lösungen, bei denen der Posi- Regelung
tionsregler als zweiter RS485-Master direkt auf die Schnittstelle des HIPER-
FACE®-Motorfeedback-Systems zugreift um zyklisch die Position abzufragen.
Häufiger jedoch, werden die vom Frequenzumrichter geformten inkremen-
tellen Zählsignale an die Positioniersteuerung durchgeschleust. Die Initial-
position wird dabei durch den Controller ausgezählt. Ebenso häufig findet Analogsignale
man eine zeitdiskrete Realisierung, bei der der Regler die in jedem Zyklus erfassen &
Quadratur-
berechnete absolute Position in einem seriellen (z. B. SSI®) Ausgangsregi- zähler lesen
ster zur Verfügung stellt.
Arcus Tangens
Ein weiterer, großer Vorteil der Realisierung mit einem HIPERFACE®-Motor-
feedback-System ist dessen Verfügbarkeit als Multiturn. Dadurch ist es Synchronisation
HIPERFACE®
Sicherheitskonzepte
Obwohl ein HIPERFACE®-Motorfeedback-System nur EIN Gerät ist, genügt es doch, aufgrund des redundanten Auf-
baus, nicht nur der Schnittstelle, hohen Sicherheitsanforderungen.
Die Positionswerte werden auf zwei physikalisch getrennten Schnittstellen (analog & RS485) übertragen. Der ana-
loge Übertragungskanal besitzt bereits eine hohe Eigensicherheit, da die Signale z. B. mittels Amplituden- &
Sin2+Cos2-Überwachung im Regler in engen Grenzen auf ihre Gültigkeit überprüft werden können. Eine gegenseiti-
ge Überwachung der Informationen ist aufgrund der physikalischen Trennung ohne zusätzlichen Aufwand möglich.
Im Innersten des Motorfeedback-Systems werden beide Informationen von einem System, bestehend aus Sender,
Codescheibe und Empfänger abgetastet. Im Folgenden werden die Analogsignale, ohne Bearbeitung durch einen
Mikroprozessor, nur noch verstärkt und übertragen, während der absolute Wert zuerst digital bearbeitet, überwacht
und dann übertragen wird.
Wird die absolute Position auch zyklisch ausgelesen, so ist eine zuverlässige Überwachung des Incrementalzählers
möglich. Außerdem kann so schon frühzeitig festgestellt werden, wenn beim HIPERFACE®-Motorfeedback-System
kritische Betriebszustände erreicht werden.
Motorregler
Quadratur-
zähler
Motorfeedback
Prozessdaten
ADC/
Sinus
Drehzahl Arcus-
relative Position tangens-
Cosinus Wandler
Data out
RS485
Parameter UART
Spannung RxD
Data in
7 … 12 V
Schirm
Abb. 10
Versorgungsspannung 7 - 12 V
Stromaufnahme ≤ 250mA
Signalspezifikation für den Prozessdatenkanal 1 Vss, differentiell
Signalspezifikation für den Parameterkanal gemäß RS 485
Schnittstellen-Timing siehe Seite 16 + 17
Datenformat für Adressierung und Befehle siehe Seite 16 + 17
• Differentielle Nichtlinearität
Dieser Wert spezifiziert die Abweichungen innerhalb einer elektrischen Periode des Prozessdatenkanals und er-
gibt sich daraus, dass die Sinus-/Cosinussignale von der idealen Form abweichen. Mögliche Fehlerquellen sind
hier z. B. Signaloffsets, Amplitudenabweichungen, Phasenfehler oder Abbildungsfehler.
Dieser Parameter ist vor allem für die Drehzahlregelung kleiner Drehzahlen relevant.
• Integrale Nichtlinearität
Dieser Wert beschreibt die Abweichungen über eine mechanische Umdrehung der Welle.
Abweichungen über eine Wellenumdrehung erklären sich u. a. aus der Exzentrizität der Codescheibe, aus der
Übertragungsfunktion der Statorkupplung oder aus Fehlern der Maßverkörperung.
Differentielle
(periodische)
Integrale Nichtlinearität
Abweichung
Nichtlinearität
HIPERFACE®
Prozessdatenkanal (Analogausgänge)
Sinus
Cosinus
Abb. 12 Prinzipdarstellung
– Sinus
– Cosinus
Abb. 13
Typische Eingangsschaltung:
RefSin/
RefCos
Sinus/
ADC
Cosinus
Sinus/
Cosinus
Verstärker
VRef
K2/ Counter
K1
* typische Werte
Komparator
Abb. 14 Prinzipdarstellung
Die Filter müssen entsprechend der notwendigen Bandbreite dimensioniert werden. Um eine gute Unterdrückung
von Gleichtaktstörungen zu erhalten, ist im Leiterplattenlayout auf die symmetrische Auslegung von SIN und REF-
SIN zu achten.
Die Toleranz der verwendeten Widerstände muss ≤ 1 % sein.
Eine typische Dimensionierung für sinusförmige Eingangssignale bis zu einer Frequenz von 100 kHz ist:
L = 50 μH
RV = bestimmt zusammen mit RE die Verstärkung (RV/RE)
C = 22 … 47 pF
RL = ≥ 1 kΩ (optionale, zusätzliche Signalbelastung im Nulldurchgang der Differenzsignale)
Der aus RE und C gebildete Filter verringert das Signalrauschen auf den Analogsignalen, bestimmt aber auch die
maximal verarbeitbare Signalfrequenz.
Phasenverschiebung arctan ( * RV * C)
1
Ausgangsamplitude Ua * Ue
1 + ( * RV * C)2
Die hier skizzierte Schaltung (Komparator hinter dem Differenzverstärker angeordnet) sorgt für ein sicheres Schalt-
verhalten des Komparators, da Signalrauschen und Gleichtaktstörungen bereits durch den Differenzverstärker wir-
kungsvoll unterdrückt werden. Außerdem stehen die Signale am AD-Converter und am Zähler phasengleich zur Ver-
fügung, was die Synchronisation bei hohen Drehzahlen vereinfacht.
HIPERFACE®
Der Parameterkanal
Der Parameterkanal ist eine asynchrone, halbduplex Schnittstelle, die physikalisch der EIA RS485 Spezifikation
entspricht.
Um eine störungsfreie Übertragung sicherzustellen ist es notwendig die Übertragungsleitungen mit pull up/down
Widerständen zu versehen.
Um auch die Unabhängigkeit von Line Transceiver Herstellern zu gewährleisten geben wir folgende Empfehlung für
die Dimensionierung der Schnittstelle:
R1 R2 R3 R4 R5 R6
* Da HIPERFACE®-Motorfeedback-Systeme immer Slave sind und die Anzahl der Teilnehmer im BUS
variieren kann, muss die Dimensionierung der BUS-Schnittstelle kundenseitig vorgenommen werden.
**Bei mehr als 8 Teilnehmern setzen Sie sich bitte mit unserem Vertrieb in Verbindung.
Standardmäßig sind der 130 Ohm Abschlusswiderstand und die 1K Ohm pull up/down Widerstände eingebaut. Für
Bus-Betrieb (mehr als 1 Geber) ist kein Abschlusswiderstand im Geber eingebaut, dieser muss kundenseitig an den
am weitesten vom Master entfernten Teilnehmer angebracht werden.
Die Motorfeedback-Systeme müssen folglich in der Ausführung „BUS“ gesondert bestellt werden.
Das Übertragungsprotokoll
Datenformat
Die Daten auf der asynchronen Schnittstelle haben folgendes Grundformat:
• 1 Startbit
• 8 Datenbit (LSB first)
• 1 Stopbit
• Parity programmierbar: odd, even, none
• Baudrate programmierbar*: 600, 1200, 2400, 4800, 9600, 19200, 38400 Baud
* Hinweis: Die Baudrate ist nicht bei allen MFB-Typen frei programmierbar. Bitte die Datenblätter beachten.
8 Datenbit
Abb. 16 Datenformat allgemein
Die Parameter sind bei Auslieferung der Geräte in der Regel voreingestellt auf:
9600 Bd &
Parity = 1, wenn die Summe der Datenbits ungerade ist
Dialog Timing
Abb. 17 Dialog-Timing
Die Datenübertragung auf der RS485 wird über ein Timeout-Protokoll gesteuert, d. h. erst, wenn innerhalb einer be-
stimmten Zeit (Timeout), keine weiteren Informationen am MFB eintreffen, wird das aktuell empfangene Protokoll
bearbeitet.
Unterbrechungen eines Datenpakets um mehr als Timeout führen zu entsprechenden Protokoll-Fehlermeldungen
(s. auch COMMAND 50h).
Das 1. Byte nach einem Timeout wird als Adresse interpretiert.
Grundsätzlich belegt ein HIPERFACE®-Motorfeedback-System nicht von sich aus die Schnittstelle.
Ein Informationsaustausch muss also immer vom Master, dem Motorregler, initiiert werden.
HIPERFACE®
ADDRESS-Format
5 Bit Teilnehmernummer
Abb. 18 Adress-Format
Broadcastadresse FFh
Statt der spezifischen Geberadresse kann das MFB auch mit einem BROADCAST, FFh angesprochen werden. Bei
diesem BROADCAST führen alle am Bus angeschlossenen MFB’s die selektierte Funktion aus und quittieren diese
mit ihrer spezifischen Adresse.
Dabei ist zu beachten, dass die Befehle die mit einer Quittung abschließen, nur bei einem angeschlossenen MFB
ausgeführt werden dürfen.
COMMAND-Format
Abb. 19 Command-Format
Fehlerbehandlung
Fehlermeldung
• Befehle die nicht bearbeitet werden können (Protokollfehler, Befehlsargumente oder interne Fehler des MFB)
führen zum Abbruch der Befehlsbearbeitung und das MFB antwortet mit einem Fehlerprotokoll
(s. Command 50h)
Warnmeldung
• Während der Befehlsausführung wird der Betriebszustand des MFB überwacht (z. B. Temperatur, Sender-
strom). Werden hierbei kritische Parameter festgestellt die jedoch auf den aktuell bearbeiteten Befehl ohne
direkte Auswirkung sind, so generiert das MFB bei gesetztem Errorbit, das erwartete Antwortprotokoll.
• Das Fehlerbit wird mit dem Auslesen des Fehlercodes (Command 50h) oder durch einen MFB-Reset (Command
53h) gelöscht.
• Treten mehrere Fehler gleichzeitig auf, so werden vom MFB bis zu 4 Fehlercodes zwischengespeichert die mit
dem Command 50h nacheinander ausgelesen werden können.
Das Fehlerbit bleibt hierbei solange gesetzt, bis alle Fehlercodes ausgelesen sind.
• Werden hierbei kritische Parameter festgestellt die jedoch auf den aktuell bearbeiteten Befehl ohne direkte Aus-
wirkung sind, so generiert das MFB bei gesetztem Errorbit das erwartete Antwortprotokoll.
Ein adressiertes MFB antwortet auf eine fehlerfrei bearbeitete Befehlssequenz stets mit der Wiederholung
von ADDRESS und COMMAND, gefolgt von den angeforderten Daten und der CHECKSUM.
Der Befehlssatz
Der für den jeweiligen MFB-Typ verfügbare Befehlssatz kann variieren.
Der gültige Befehlssatz kann dem Datenblatt des jeweiligen Motorfeedback-Systems entnommen werden.
1)
Die entsprechend gekennzeichneten Befehle beinhalten den Parameter „Code 0“. Code 0 ist ein Byte, das zur
zusätzlichen Absicherung wichtiger Systemparameter gegen versehentliches Überschreiben, ins Protokoll
eingefügt ist.
Bei Auslieferung ist „Code 0“ = 55h.
2)
Die angegebene Antwortzeiten verstehen sich OHNE Übertragungszeiten und Protokoll-Timeout.
Bei Defaulteinstellung der RS485 beträgt das Timeout ca. 4,7 ms.
Die hier aufgeführten Funktionen lassen sich auch alle mit dem als Zubehör erhältlichen Programming-Tool durch-
führen.
HIPERFACE®
Die Befehle
Position lesen 42h
Um den Quadratur-Zähler im Motorregler auf den Absolutwert des MFB zu setzen, ist diese Funktion die wichtigste
des gesamten Systems. Wesentliche Eigenschaft der MFB’s ist es, dass diese Synchronisation auch bei voller Dreh-
zahl ohne Einbuße von Information oder Regelgeschwindigkeit erfolgen kann.
Abb. 20
Der Positionswert wird in Pos_HH … Pos_LL als unsigned long mit rechtsbündigem LSB übertragen.
Zur Synchronisation der MFB-Position mit dem steuerungsseitigen mitgezählten Absolutwerts dient die erste Flanke
des Startbits von „ADDRESS“ der MFB-Antwort
Um eine störsichere Synchronisation zu ermöglichen, wird der RS485-Treiber ca. 2 ms vor Beginn der Datenübertra-
gung aktiv geschaltet.
Bei Ausführung dieser Funktion werden im MFB verschiedene Diagnosefunktionen ausgeführt die gegebenenfalls
als Warnung oder Fehler signalisiert werden.
≥ ca. 2 ms
Startbit
Abb. 21
Der absolute Positionswert dient zur eindeutigen Identifizierung einer der analogen Perioden und hat deshalb stets
eine Auflösung von 5 Bit/Periode. Zur Überprüfung der im Regler mitgezählten Position, kann die Absolutposition
des MFB zyklisch ausgelesen werden. Dabei empfiehlt es sich die ausgelesene Position nur zur Verifikation des
Zählwertes heranzuziehen, nicht aber zu dessen Korrektur. Ein sauber aufgebautes & geschirmtes System ver-
zählt sich im Regelfall nicht.
Soll die Überwachung von Incrementalzählung und Position auch bei hohen Drehzahlen mit hoher Genauigkeit erfol-
gen, so muss die Startflanke der Positionsantwort zur Speicherung des Zählerstandes verwendet werden (s. Abb.).
Die Absolutinformation pro Umdrehung wird bei Synchronmotoren auch für die Kommutierung des Motors verwen-
det. Da unsachgemäßer Gebrauch die Funktion des Motors beeinträchtigt, muss Code 0 korrekt angegeben sein.
Diese Funktion sollte nur vom Motorenhersteller aufgerufen werden.
Abb. 22
Mit dieser Funktion kann der mechanischen Wellenstellung jeder beliebige Wert innerhalb des Messbereichs zuge-
ordnet werden. Dazu erfolgt intern die Berechnung der momentanen Geberposition und das Abspeichern des dar-
aus berechneten Positions-Offset.
Achtung:
Da hier kein Synchronisationsmechanismus vorgesehen ist, muss diese Funktion im Stillstand aufgerufen werden.
ACHTUNG:
Diese Funktion verändert die Zuordnung zwischen der absoluten Position und den Analogsignalen.
Bei Auslieferung ist die Phasenlage gemäß unten stehender Abbildung definiert:
5 LSB
der digitalen
Absolutposition
– Sinus
– Cosinus
Abb. 23
Um beim Einschalten des Motorreglers immer die größtmögliche Genauigkeit zu gewährleisten, ist es erforderlich,
dass die Zuordnung der Analogsignale zur digitalen Position in der dargestellten Weise beibehalten wird, da nur
dann die eindeutige Identifizierung einer Periode möglich ist.
HIPERFACE®
Abb. 24
Das mit „CHANNEL“ selektierte Analogsignal wird digital gewandelt und im Regelfall mit einer Auflösung von
10 Bit/5 V vorzeichenbehaftet (SIGNED INT) in Value_xx rechtsbündig zurückgesandt.
Die verfügbaren Analogsignale, deren Verschlüsselung und Auflösung, sind jeweils im Datenblatt des einzelnen
Geräts angegeben.
Zählerfunktionen
In der Geberfirmware ist ein incrementeller 24Bit-Zähler realisiert.
Nachstehende Befehle erlauben beispielsweise die einfache Implementierung eines Betriebsstundenzählers.
Ebenso einfach kann z. B. auch die Zählung der Einschaltvorgänge verwirklicht werden.
Dabei ist zu beachten, dass das Zählregister im EEPROM des MFB verwaltet wird, wodurch die Anzahl der Zählvor-
gänge auf maximal ca. 1 Million eingeschränkt ist.
Abb. 25
Abb. 26
Der interne 24-Bit Zähler wird um 1 erhöht. Ein eventueller Überlauf des Zählers wird je nach MFB-Typ durch das
ERROR Bit oder durch eine Status-Antwort mit dem Status „08h“ angezeigt.
Abb. 27
Der Zähler wird auf „000“ gesetzt. Zum Schutz gegen versehentliches Löschen muss Code 0 angegeben werden.
HIPERFACE®
Zur Abspeicherung von Daten im MFB, muss das EEPROM zuerst in einzelne Datenfelder mit Blockgrößen zwischen
16 und 128 Bytes eingeteilt werden (Command 4Dh). Dabei wird auch jeweils die Zuordnung zu einem der 4 im
MFB hinterlegten Zugriffscodes festgelegt. Die Zugriffscodes (Default = 55h) ihrerseits, können mit der Funktion
„4Fh“ modifiziert werden.
Weiterhin kann für jedes Datenfeld separat das Beschreiben gesperrt werden.
Der Zugriff auf ein Datenfeld wird im Wesentlichen durch drei Größen bestimmt:
1. Datenfeldnummer, 1 Byte, 0 … x
2. Anfangsadresse, 1 Byte, innerhalb eines Datenfeldes jeweils von 0 … n
3. Anzahl der zu schreibenden/lesenden Daten, 1 Byte, 1 … 128
Dabei werden die folgenden Fehler erkannt und mit einer ERROR-Meldung quittiert:
• falscher Zugriffsschlüssel
• nicht initialisiertes Datenfeld (die angegebene Feldnummer ist zu groß)
• der Adressbereich des gewählten Datenfeldes ist überschritten
Datenfeld-Statusbyte
Definiert die Datenfeldgröße in 16 Blöcken
Die Feldgröße ist dann:
(Size + 1)*16 Byte
Dieses Bit legt fest, ob ein Datenfeld definiert ist. Zum Löschen eines Feldes
wird das Bit auf Null gesetzt.
Abb. 28 Datenfeld-Statusbyte
Abb. 29
Aus dem Datenfeld mit der Nummer Datafield und dem Zugriffsschlüssel Access Code werden ab der Adresse
byte address die Anzahl count an Daten ausgelesen und übertragen. Der Code wird ignoriert, wenn das CE-Bit (sie-
he auch Datenfeldstatus lesen Commandbyte 4Ch) nicht gesetzt ist.
Abb. 30
Beim Beschreiben eines Datenfeldes wird außer der Zugriffsberechtigung und der Adressbereichsüberschreitung
auch das WE-Bit (Write Enable, siehe auch Datenfeldstatus lesen Commandbyte 4Ch) im Statuswort der Datenfeld-
definition überwacht. Die Antwortzeit des MFB ist von der Anzahl der zu programmierenden Daten abhängig und
beträgt max. 250 ms.
Abb. 31
Hiermit lassen sich die Kenngrößen und Zugriffsmodi eines bereits definierten Datenfeldes ermitteln.
HIPERFACE®
Abb. 32
Neudefinitionen von Datenfeldern sind unabhängig vom CE-Bit nur unter Angabe des Code-Zugriffschlüssels mög-
lich. Dabei ist zu beachten, dass eine Änderung der Feldgröße nur beim zuletzt angelegten Feld (höchste Datenfeld-
nummer) möglich ist. Dasselbe gilt beim Löschen eines Datenfeldes (E = 0)
Abb. 33
Mit Hilfe dieser Funktion lässt sich der für Datenfelddefinitionen zur Verfügung stehende Speicherplatz ermitteln.
Der Parameter free memory gibt die Größe des noch nicht zugewiesenen Speichers an und wird entsprechend der
Datenfelddefinition als Anzahl freier 16 Byte Blöcke angezeigt.
Zusätzlich wird die Anzahl (number of datafields) bereits definierter Datenfelder ausgegeben.
Abb. 34
Der Motorhersteller kann für seine Kunden Zugriffswörter für bestimmte Speicherbereiche definieren. In diesen
können dann Daten wie Kaufdatum, Serviceeinsätze, Projektnummern etc. hinterlegt werden.
Ein Zugriffsschlüssel kann nur unter Angabe seines aktuellen Wertes (Old_Code) neu bzw. umdefiniert werden. Bei
Auslieferung sind die vier möglichen Codes (Code_Nr = 0 … 3) mit dem Wert 55h vorbesetzt.
1. Zeile: Befehl 0 1 2 3 4 5 6 7 8 9 A B C D E F
0
2. Zeile: MFB-Antwort 1
Verfügbaren Speicherbereich
2 ermitteln
40 4E 0E 3
4
• 8 x 16 Bytes freies EEPROM
40 4E 08 00 06 5 • 0 (keine) Datenfelder angelegt
6
7
0 1 2 3 4 5 6 7 8 9 A B C D E F 1. Datenfeld anlegen
0 • Nummer 0
40 4D 00 C9 55 91 1. d a t a f i e l d
1
2 • Größe 32 Bytes
40 4D 00 C9 C4 3 • Code 0 verwenden
4
5 • Schreibzugriff erlaubt
6 • Codeangabe erforderlich
7
쏡 Statusbyte = C9h
0 1 2 3 4 5 6 7 8 9 A B C D E F 2. Datenfeld anlegen
0
1
1. d a t a f i e l d • Nummer 1
40 4D 01 E0 55 69
2 1. d a t a f i e l d • Größe 16 Bytes
40 4D 01 E0 EC 3
4
• Code 2 verwenden
5 • Schreibzugriff erlaubt
6
7
• Codeangabe erforderlich
쏡 Statusbyte = E0h
Zugriffsschlüssel ändern
40 4F 02 55 66 3E
• Code Nr. 2
• bisher 55h
40 4F 02 0D
• neu 66h
0 1 2 3 4 5 6 7 8 9 A B C D E F
0
1
1. d a t a f i e l d Daten speichern
2 1. d a t a f i e l d • ins 2. Datenfeld (Nr. 1)
3
4 • an Adresse 5
40 4B 01 05 02 66
5 • 2 Byte Daten
08 15 76 6
7 08 15 • mit Code 2, (66h)
40 4B 01 05 02 0D • Datenwert (08h, 15h)
HIPERFACE®
Abb. 35
Mit dieser Funktion kann der aktuelle MFB-Zustand abgefragt werden (z. B. nach dem Einschalten).
Diese Funktion wird auch benötigt, wenn bei der Ausführung eines Befehls das ERROR-Bit gesetzt wurde, der ei-
gentliche Befehl jedoch fehlerfrei bearbeitet wurde (pending error). Dies ist beispielsweise dann der Fall, wenn die
Temperaturüberwachung eine Bereichsüberschreitung erkannt hat.
Die tatsächlich verfügbaren Fehlercodes variieren je nach MFB-Typ und sind jeweils im Datenblatt angegeben.
Nach dem Einschalten des MFBs und nach Ablauf der Initialisierungszeit wird empfohlen, zuerst eine fehlerfreie
Initialisierung des MFBs mit Hilfe der Statusabfrage zu überprüfen. Es können während der Initialisierungsphase
bis zu vier Fehlermeldungen zwischengespeichert werden.
Abb. 36
• RS485 settings
siehe Command „57h“ (s. S. 31)
• Encoder type
„encoder type ungleich 0xFF“: siehe produktspezifisches Datenblatt
„encoder type OxFF“: die Encoderbeschreibung kann direkt aus dem EEPROM des Encoders ausgelesen werden.
(Siehe Ablauf für das Auslesen „Typenschild mit Encoder type“ 0xFF
• Size of eeprom:
Die Größe des im MFB verwendeten EEPROMS = EEPR_Size * 16
• Options
spezifische Hardware-/Softwareerweiterungen
HIPERFACE®-Version
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Parameterselektor
v max. H-Byte
a max. L-Byte
v max. L-Byte
tbd
tbd
tbd
tbd
tbd
tbd
tbd
tbd
HIPERFACE®
Reset 53h
Abb. 37
Keine MFB-Quittung.
Das MFB durchläuft hierbei die gleiche Initialisierungsphase wie beim Einschalten der Versorgungsspannung.
Die vom Benutzer einmal geänderten Parameter, wie z. B. die MFB-Adresse bleiben dabei erhalten!
Power on
Reset
53H
Initialisierung
Variablen
100 ms
max.
nein
T > 900 ms
200 ms
max.
Standby
nein
Befehl?
Diagnose
Temperatur
Senderstrom
Befehlsausführung
Antwort!
Abb. 38
Abb. 39
Abb. 40
HIPERFACE®
Abb. 41
000 = 600
001 = 1200
010 = 2400
011 = 4800
100 = 9600 Bd DEFAULT
101 = 19200
110 = 38400
00 = 8 Databit, no
10 = 8 Databit, parity =
∑Datenbits ungerade DEFAULT
11 = 8 Databit, parity = ∑Datenbits gerade
0 = 1*11/Baudrate
1 = 4*11/Baudrate DEFAULT
0 = BUS
1 = Standard DEFAULT
Grundsätzlich ist jedes HIPERFACE®-MFB nach dem Einschalten für die Zeit von ca. einer Sekunde auf die Default-
Werte eingestellt. Trifft während dieser Sekunde eine plausible Information ein, so bleibt diese Einstellung erhalten.
Ist dies nicht der Fall, so wird die über diese Funktion festgelegte Einstellung übernommen. Dieses Verfahren ist
notwendig, um mit Geräten, deren Einstellung unbekannt ist, kommunizieren zu können.
Die eingestellte Baudrate sowie die Definition des Parity werden erst durch einen GEBERRESET (53h) bzw.
Aus- und Einschalten des MFB aktiv.
Abb. 43
Das MFB ermittelt die Werte der internen Codespuren und berechnet daraus entsprechende interne Winkeloffsets,
es erzeugt sich eine virtuelle 0.
Zusammen mit diesen Winkeloffsets wird der im Protokoll angegebene Positionsoffset (Pos_HH .. Pos_LL) unverlier-
bar im EEPROM des MFB abgespeichert.
Der Positionsoffsetwert wird im Format unsigned long mit dem LSB rechtsbündig in Pos_LL übertragen.
Achtung: Dieser Befehl darf nur bei stehender Geberwelle aufgerufen werden, da sonst fehlerhafte Winkeloffset-
werte ermittelt werden können.
Abb. 44
HIPERFACE®
The HIPERFACE® interface has been established on the market for several years, featuring significant savings and,
simultaneously, higher performance compared with conventional concepts. Conventional concepts involve the use
of several encoder systems supporting the various controller functions:
• A tachogenerator to provide “speed” data
• A magnetic or optical commutating encoder for block commutation
• A final positioner for overlaid position control.
The advantage of these systems is their easy implementation due to the availability of the appropriate interface
components and the low complexity of the individual components.
The disadvantage, however, is not only that the encoder systems themselves cost money. The fitting of three sy-
stems and their cabling lead to high costs and the number of components also means increased likelihood of failu-
res.
The potential savings associated with compact low-power controllers are, of course, a major consideration with
some relevant aspects being:
• the design of the commutating encoder with Hall sensors
• omitting the final positioner, if not absolutely essential
• replacing the tachogenerator by “Sensorless Control” software concepts
These savings, however, are always balanced against performance limits of the overall system.
Previously
Control Control
up to
15 cables
Motor Motor
Angle
Speed
Commutation
Fig. 1
The knowledge of these requirements and the wish to provide all these functions in just one device triggered the
development of the innovative motor feedback by SICK-STEGMANN, equipped with a novel interface:
HIPERFACE®
It is short for High Performance Interface and is the standard interface for SICK-STEGMANN motor feedback sys-
tems.
This interface was specially developed for the requirements of digital drive control and offers the user standardised
and simplified mechanical and electrical interfaces.
Characteristics
Previously, optical encoders were classified as so-called incremental encoders or absolute encoders.
Incremental encoders are comparatively simple in design and scan a few tracks only. They offer relatively high re-
solutions and – due to their counting, real-time enabled interface (quadrature signals) – are well suited to the
speed control of drives. Because the absolute position data is missing and position within a turn is only available
after turning the shaft by up to 360° (locating zero pulse), they are unsuitable as commutating encoders.
Absolute encoders always transmit the entire position data and, therefore, are very well suited to position control.
The digital transmission of the position requires a high transmission bandwidth in the cable and is only conditional-
ly real-time enabled. Moreover, due to the major production effort involved in the conventional type, absolute enco-
ders are relatively expensive. This conventional type reads binary data coded onto a glass disc, for which each
binary digit requires a corresponding optical scan. All these scans must be adjusted to one another such that no
reading errors can occur under any conditions.
HIPERFACE® motor feedback systems are a mix of incremental encoders and absolute encoders and combine the
advantages of both encoder types.
Initially, the absolute value is only formed when the device is powered up and communicated – via the bus-enabled
parameter interface according to the RS485 specification – to the external counter in the controller which, based
on this absolute value, then incrementally counts on from the analogue sine/cosine signals.
The use of highly linear sine and cosine signals achieves the high resolution needed for speed control (the arc tan-
gent is formated in the controller). Simultaneously, however, the signal frequencies to be transmitted remain relati-
vely low. For example: 512 periods per revolution, even at a speed of 12,000 rpm, only produce a frequency of
102.4 kHz which can be easily transmitted, even over very long distances.
HIPERFACE®
Internal arrangement
Typical arrangement of a HIPERFACE® motor feedback system
Singleturn Analogue-
sin2 +
cos2 driver
1 driver
16 Parameter channel
1
16
Fig. 2
As is common for standard encoders, most motor feedback systems have an internal glass code disc as a measu-
ring scale . Using the direct-light method, an infrared diode maps the code pattern on the disc onto a fully customi-
sed highly integrated circuit.
The characteristic feature of the SinCos® motor feedback systems now is that, in addition to the absolute code
track, there also is an incremental track producing sine and cosine signals.
Incremental track
Incremental
sine/cosine scan
Absolute track
Absolute scan
Fig. 3
Usually, in a motor feedback system, 2n periods of sinusoidal and cosinusoidal signals are scanned. These signals
are always available via the so-called process data channel, as real-time data.
Parallel to this, the absolute position data is available via the parameter channel (RS485). It primarily serves to
identify exactly one of these 2n periods.
Supply voltage
At first glance it seems a disadvantage having to produce an additional, rather unusual supply of typically 8 V wit-
hin the controller. This, however, ensures sufficient voltage supply to the HIPERFACE® motor feedback system even
for long distances between drive and motor feedback system. More involved supplies, e.g. with sense cables, are
not required.
RS485 interface
This interface can safely be described as industry standard. The physical interface requires a 130 Ω termination re-
sistor, two biasing resistors and a standard RS485 transceiver. The protocol is handled with a standard UART, as
implemented on almost all popular micro controllers/DSPs.
SinCos® interface
The sine/cosine signals are transmitted fully differentially, their amplitude varying no more than 20% in all circum-
stances. Since this interface determines the actual performance of the speed controller, this part of the interface
must be carefully developed. Apart from differential input amplifiers with low offsets, low noise and high common-
mode suppression, resistors and capacitors (low-pass) with low tolerance should also be used.
The area behind the analogue input amplifier also remains important since, here too, signal noise and crosstalk
need to be kept low.
The signals lead onto the comparators for generating incremental counting signals and to a 2-channel, A/D conver-
ter which simultaneously captures the Sine and Cosine signals. The A/D converter should have a resolution of at
least 10-bits.
Usually, it is not necessary to add additional external components for counting or analogue/digital conversion. To-
day, these functions are available in most micro controllers and DSPs.
Optional
To utilise the full functionality of the HIPERFACE® interface, a signal connection should additionally be provided
between the internal RxD line and the capture input of the incremental counter. Thus, for instance in safety-related
applications, it is possible to compare the counter readout with the absolute position, even at full speed (6000
rpm).
Many algorithms and/or hardware solutions are now available to perfect the speed value derived from the analogue
signals, such as:
• Filtering
• Oversampling
• PLL method
HIPERFACE®
Software
Serial protocol
The interface is configured to 9600 baud, as standard. In principle, the bidirectional RS485 interface is bus-enab-
led; therefore, each communication from the Master, i.e. the control, begins with the slave address. Binary data
transmission minimises the transmission times. Each protocol is completed with an easy to calculate XOR check-
sum. The end of the protocol is detected using a timeout control.
The HIPERFACE® motor feedback systems have internal diagnostic functions and signal critical or faulty conditions
monitoring within the response protocol.
Sine Cosine
Tangent (X/Y)
Synchronisation
The overrun or the flanks on the various transmission paths will, in reality, never occur at the exactly identical point
in time.
This can be explained by the following effects:
• the absolute position is determined via separate code tracks and, therefore, differs slightly from the position
interpolated from the analogue signals (see figure 5). Therefore, this phase position can change by up to ± 4/32
of a period, within a turn.
• dynamic effects such as signal run times or different input filters
• hysteresis, e.g. within the comparator of the quadrature counter
Incremental
Absolute sine/cosine track
code tracks
– Cosine
Fig. 5
The synchronisation now describes a method which can compensate these effects within wide limits (± 1/2 period).
This makes it possible, even at high speeds, to assign the analogue signals to a specific period.
Consequently, the overlapping bits of two different pieces of position data are always oriented to the same valence,
and the difference of the position values is then formed. If the two position values point to different periods, the
position value with lower resolution is corrected in the direction of the smaller difference by ± 1 period.
synchronisation
quadrature_counter: the position value also within the controller with a resolution of 4* number of periods
Fig. 6 analogue_angle: the angle calculated from the analogue signals within one period
absolute_position: the absolute position read out via the parameter channel
HIPERFACE®
Ilim
PM-
motor
VDC
Fig. 7
When adjusting the motor commutation, one of the following methods is generally used:
Startup
Startup Following power-on, in addition to the initialisation status of the HIPER-
Power on
FACE® motor feedback system, all operating parameters of the motor/con-
troller combination can also be read out from the EEPROM, and the control-
Waiting time
100 < Tw < 900 ms ler is parametrised – using the electronic type label – to match the techni-
Reset 53h
Read status
cal data of the motor feedback system.
Error 50h Then the absolute position is read out and, thus, the commutation position
Read position and the position of the axis, if required, are determined.
42h
For the first control cycle, the analogue signals are then captured, and the
Capture incremental counter is initialised with the arc tangent calculated from this.
analogue signals
(process data)
Calculate
fine position and
synchronisation
Load
quadrature counter
Read out
commutation
offset
Fig. 8
Speed controller
The highly linear, sinusoidal analogue signals permit a high interpolation factor and thus a high resolution of the
speed. With almost no effort, this enables a wide speed adjustment range of 1:10,000.
Position controller
As regards the interface to the position controller, different concepts have Motor
already been implemented. There are solutions in which the position con- control
troller, being the second RS485 Master, directly accesses the interface of
the HIPERFACE® motor feedback system to cyclically interrogate the positi-
on. More frequently, however, the incremental counting signals formed by
the frequency converter are fed through to the positioning control. The initi-
al position is thus counted out by the controller. Just as often, one finds a Capture ana-
time-discrete implementation in which the controller makes available the logue signals
and read qua-
absolute position calculated in each cycle, in a serial (e. g. SSI®) output drature counter
register.
Arc tangent
A further big advantage of the implementation with a HIPERFACE® motor
feedback system is its availability as a multiturn device. This enables the Synchronisation
application without limit switches. Add
commutation
offset
Remainder of
control loop
Fig. 9
HIPERFACE®
Safety concepts
Although a HIPERFACE® motor feedback system is only ONE device, it does meet, due to the redundant design (not
only of the interface), high safety requirements.
The position values are transmitted to two physically separated interfaces (analogue and RS485). The analogue
transmission channel already has high intrinsic safety, since the signals’ validity can be checked in the controller,
within tight limits, e.g. using amplitude monitoring and Sin2+Cos2 monitoring. Mutual monitoring of data is possible
due to the physical separation of the data, without additional effort.
At the heart of the motor feedback system both pieces of data are scanned by a system consisting of transmitter,
code disc and receiver. Hereafter, the analogue signals – without processing by a microprocessor – are only ampli-
fied and transmitted, while the absolute value is first digitally processed, monitored and then transmitted.
If the absolute position is also read out cyclically, reliable monitoring of the incremental counter is possible. This
can also provide early detection if the HIPERFACE® motor feedback system reaches critical operational states.
Motor controller
Quadrature
counter
Motor Feedback
Process data
ADC/
Sine
Speed Arc
relative position tangent
Cosine converter
Data out
RS485
parameter UART
Voltage RxD
Data in
7 … 12 V
Screen
Fig. 10
Supply voltage 7 - 12 V
Current consumption ≤ 250mA
Signal specification for the process data channel 1 Vpp, differential
Signal specification for the parameter channel according to RS 485
Interfaces-timing see page 47 + 48
Data format for addressing and commands see page 47 + 48
On the data sheet of a motor feedback system, there are different details regarding the error limits:
Error limits when evaluating the sine/cosine signals
• Differential non-linearity
This value specifies the deviations within an electrical period of the process data channels and results from the
sine/cosine signals deviating from their ideal shapes. Such possible error sources are, for in-
stance, signal
offsets, amplitude variations, phase errors or mapping errors.
Above all, this parameter is relevant to the control of low speeds.
• Integral non-linearity
This value describes the deviations over a mechanical rotation of the shaft.
Deviations over a mechanical shaft rotation derive, amongst other factors, from the eccentricity of the code disc,
from the transmission function of the stator coupling or from errors relating to the measuring scale.
Differential
(periodic)
Integral non-linearity
Deviation
non-linearity
HIPERFACE®
Sine
Cosine
– Sine
– Cosine
Fig. 13
RefSin/
RefCos
Sine/
ADC
Cosine
Sine/
Cosine
Amplifier
VRef
K2/ Counter
K1
* typical values
Comparator
Fig. 14 Schematic diagram
The filters must be dimensioned according to the necessary bandwidth. To achieve good suppression of common-
mode interference, check the PCB layout for symmetric arrangement of SIN and REFSIN.
The tolerance of the resistors used must be ≤ 1 %.
A typical dimensioning for sinusoidal input signals up to a frequency of 100 kHz is:
L = 50 μH
RV = determines, together with RE, the amplification (RV/RE)
C = 22 … 47 pF
RL = ≥ 1 kΩ (optional, additional signal loading in the zero passage of the differential signals)
The filter formed from RE and C reduces the signal noise on the analogue signals, but also determines the maxi-
mum signal frequency which can be processed.
Phase shift arctan ( * RV * C)
1
Output amplitude Ua * Ue
1 + ( * RV * C)2
The circuit sketched here (comparator arranged behind the differential amplifier) ensures the safe switching beha-
viour of the comparator, since signal noise and common-mode interferences are already suppressed effectively by
the differential amplifier. Moreover, the signals are available at the AD converter and at the counter (in phase),
which simplifies synchronisation at high speeds.
HIPERFACE®
R1 R2 R3 R4 R5 R6
* As HIPERFACE® motor feedback systems are always slaves and the number of subscribers in the BUS can vary,
the BUS interface must be dimensioned by the customer.
** Please contact our distributor if there are more than 8 subscribers.
The 130 Ω termination resistor and the 1 kΩ pull-up/pull-down resistors are fitted as standard. For bus mode (more
than 1 encoder) no termination resistor is fitted in the encoder; the customer must fit this to the subscriber furthest
away from the Master.
Consequently, the Motor Feedback Systems must be ordered separately as “BUS” version.
8 data bits
Fig. 16 General data format
When the devices are delivered, the parameters are usually preset to:
9600 baud and
parity = 1, if the sum of the data bits is odd
Dialogue Timing
Fig. 17 Dialogue-Timing
Checksum – EXOR link of the bytes transmitted, including address and command
TIMEOUT – programmable, 11/baud rate or 44/baud rate = default
The data transmission on the RS485 is controlled via a timeout protocol, i.e. the protocol currently received is pro-
cessed only if – within a certain time (Timeout) – no further information arrives at the MFB.
Interruptions of a data packet by more than Timeout lead to corresponding protocol error messages (see also COM-
MAND 50h).
The 1st byte after a timeout is interpreted as an address.
As a rule, a HIPERFACE® motor feedback system does not occupy the interface of its own accord.
An exchange of information must always be initiated by the Master, the motor controller.
HIPERFACE®
ADDRESS Format
Instead of the specific MFB address, the MFB can also be addressed with a BROADCAST, FFh. For this BROADCAST
all bus-linked devices perform the selected function and acknowledge this with their specific addresses.
Consequently, it must be ensured that commands resulting in an acknowledgement must only be executed with
one MFB connected.
COMMAND-Format
Error Handling
Error message
• Commands which cannot be processed (protocol errors, command arguments or internal MFB errors) lead to
the command processing being cancelled and the MFB responding with an error protocol
(see command 50h)
Warning message
• During command execution, the operational state of the MFB is monitored (e.g. temperature, LED current). If this
finds critical parameters (which, however, have no direct effect on the command currently executed) then the
MFB generates the expected response protocol with the error bit set.
• The error bit is deleted by reading out the error code (command 50h) or by a MFB reset (command 53h).
• If several errors occur simultaneously, the MFB stores up to 4 error codes which, with the command 50h, can be
read out successively. For this, the error bit remains set until all error codes have been read out.
• If this detects critical parameters which, however, have no direct effect on the command currently processed,
then the MFB generates, with the error bit set, the expected response protocol.
An addressed MFB always responds to a faultlessly processed command sequence by repeating ADDRESS
and COMMAND, followed by the requested data and the CHECKSUM.
Command Set
The command set, available for each motor feedback type, may vary.
The valid command set can be taken from the data sheet for the relevant motor feedback system.
1)
The commands thus labelled contain the parameter “Code 0”. Code 0 is a byte inserted into the protocol, for
additional safeguarding of vital system parameters against accidental overwriting.
When shipped, “Code 0” = 55h.
2)
The response times given do NOT include transmission times and protocol timeout.
At the default setting of the RS485, the timeout is 4.7 ms approx.
All the functions listed can also be performed with the programming tool available as an accessory.
It is used for the individual parametrisation of HIPERFACE® Motor Feedback Systems and consists of:
- Programming adapter
- Link cable
- MFB cable
- Plug-in power supply
- Program CD-Rom
HIPERFACE®
The Commands
Read position 42h
This function is the most important one in the whole system for setting the quadrature counter in the motor control-
ler to the absolute value of the MFB. An important property of the MFB is that this synchronisation can even be per-
formed at full speed without loss of information or control speed.
Fig. 20
In Pos_HH … Pos_LL, the position value is transmitted as unsigned long with right-justified LSB.
The first flank of the start bit of "ADDRESS" of the MFB response is used to synchronise the MFB position with the
absolute value counted by the control.
To enable interference-free synchronisation, the RS485 driver is switched to active 2 ms approx. prior to the start of
data transmission.
When executing this function, various diagnostic functions are performed in the MFB; if required, they are signalled
as a warning or an error.
≥ 2 ms approx.
Startbit
Fig. 21
The absolute position value serves to uniquely identify one of the analogue periods and, therefore, always has a re-
solution of 5 bits/period. To check the position counted within the controller, the absolute position of the MFB can
be cyclically read out. Consequently, it is recommended to use only the position read out for verification of the
count, but not for its correction. A neatly arranged and screened system does not usually miscount.
If the monitoring of incremental counting and position also needs to be performed at high speeds with higher accu-
racy, then the starting flank of the position response must be used for storing the counter readout (see figure).
For synchronous motors, the absolute data per revolution is also used for the commutation of the motor. Since im-
proper use will impair the function of the motor, Code 0 must be given correctly.
This function should only be called by the motor manufacturer.
Fig. 22
With this function, the mechanical shaft position can be assigned any value within the measuring range. For this,
the momentary encoder position is calculated internally, and the position offset calculated from this will be stored.
Caution:
As no synchronisation mechanism is provided for this, this function must be called at standstill.
CAUTION:
This function changes the assignment between the absolute position and the analogue signals.
When shipped, the phase position is defined according to the following diagram:
5 LSB
of the digital
absolute position
– Sine
– Cosine
Fig. 23
To ensure maximum possible accuracy always when the motor controller is switched on, it is necessary for the as-
signment of the analogue signals to the digital position to be maintained in the manner shown since only then will
the unambiguous identification of a period be possible.
HIPERFACE®
Fig. 24
The analogue signal selected with “CHANNEL“ is digitally converted and is usually sent back right-justified, signed
with a resolution of 10 bits/5 V (SIGNED INT) in Value_xx.
The available analogue signals, their encryption and resolution are always given on the data sheet of the individual
device.
Counter Functions
An incremental 24-bit counter is implemented in the encoder firmware.
The commands listed below permit simple implementation of a pseudo hour meterr. Counting the power-ups can
also be implemented just as easily.
Consequently, ensure that the counting register in the EEPROM of the encoder is administered, whereby the num-
ber of counts is limited to a maximum of 1 million approx.
Fig. 25
Fig. 26
The internal 24-bit counter is increased by 1. Depending upon the MFB type, a counter overflow will be indicated
either by the MFB setting the ERROR Bit or an answer of “08h“ to the Status request command.
Fig. 27
The counter is set to “000“. CODE 0 must be given to protect from accidental deletion.
HIPERFACE®
To store data in the MFB, the EEPROM must first be divided into individual data fields with block sizes between 16
and 128 bytes (command 4Dh). This also defines the assignation to one of the 4 access codes deposited in the
MFB. As regards the access codes (default = 55h), they can be modified with the function “4Fh“.
Furthermore, each data field can be separately write-protected.
Accordingly, the following errors are detected and acknowledged with an ERROR message:
• wrong access code
• non-initialised data field (the given field number is too large)
• the address range of the data field selected, is exceeded
The two code bits defines the access code (0 … 3) required for
the data transfer.
This bit defines whether a data field is defined. To delete a field, the bit is set
to zero.
Fig. 29
From the data field with the number Datafield and the access code Access Code, the number count of data is
read out and transmitted from the address byte address on. The code is ignored if the CE bit (see also read data
field status, command byte 4Ch) is not set.
Fig. 30
When writing to a data field: in addition to the access authorisation and the address range overrun, the WE bit (Wri-
te Enable, see also read data field status, command byte 4Ch) in the status word of the data field definition is also
monitored. The response time of the MFB depends on the number of data to be programmed and is 250 ms max.
Fig. 31
This enables the determination of characteristic quantities and access modes of a data field already defined.
HIPERFACE®
Fig. 32
Irrespective of the CE bit, new definitions of data fields are only possible by giving the access Code. For this, note
that a change of the field size is only possible for the field created last (highest data field number).
The same applies to deleting a data field (E = 0)
Fig. 33
The available memory area can be determined using this function. The parameter free memory gives the size of
unallocated memory and is shown, according to the data field definition, as the number of free 16 byte blocks.
In addition, the number of datafields already defined, is output.
Fig. 34
For customers, the motor manufacturer can define access words for certain memory areas. Data such as date of
purchase, services, project numbers etc. can be deposited in these.
An access code can only be newly defined or redefined by giving its current value (Old_Code). When shipped, the
four possible codes (Code_Nr = 0 … 3) are pre-occupied with the value 55h.
HIPERFACE®
Fig. 35
With this function, the current encoder state can be interrogated (e.g. after power-on).
This function is also needed if, when executing a command, the ERROR bit has been set, the actual command how-
ever having been processed error-free (pending error). For example, this is the case when the temperature monito-
ring has detected a range overrun.
The actual available errors vary according to MFB type and are always given on the data sheet.
Once the initialisation time has elapsed, following power up of the MFB, it is recommended to check that initialisa-
tion proceeded without errors using the Status request command. In the event of errors occuring during the initiali-
sation phase, up to 4 error messages will be stored in the MFB.
Fig. 36
• RS485 settings
see command “57h“ (see p. 59)
• Encoder type
Encoder type“ unequal 0xFF: see product data sheet
“Encoder type” = 0xFF : the encoder description can be directly read out from the encoder’s EEPROM.
(See sequence for reading out “Type label with encoder type” 0xFF
• Size of EEPROM:
The size of EEPROM used in the MFB = EEPR_Size * 16
• Options
specific hardware/software upgrades
HIPERFACE® version
Sequence for reading out “Type label with encoder type” 0xFF
1. Determine status and size of the data field 0xFF for encoder description. See figure 4Ch (page 54)
2. Read out data field 0xFF
1) Count size from data field status previously identified 2) Code 00 55h
Abb. 36a
Contents of the data field FFh (type label)
The data field FFh (type label) consists of two areas:
H-Byte L-Byte
no. Bit
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Parameter selector
v max. H-Byte
a max. L-Byte
v max. L-Byte
tbd
tbd
tbd
tbd
tbd
tbd
tbd
tbd
HIPERFACE®
Reset 53h
Fig. 37
No MFB acknowledgement
Here, the MFB runs through the same initialisation process as it does when the supply voltage is switched on.
The parameters previously changed by the user, such as the MFB address, are retained!
Power on
Reset
53H
Initialisation
variables
100 ms
max.
no
T > 900 ms
200 ms
max.
Standby
no
Command?
Diagnosis
temperature
LED current
Command execution
Response!
Fig. 38
Fig. 39
Fig. 40
HIPERFACE®
Fig. 41
000 = 600
001 = 1200
010 = 2400
011 = 4800
100 = 9600 Bd DEFAULT
101 = 19200
110 = 38400
00 = 8 data bit, no
10 = 8 data bit, parity =
∑Odd data bits DEFAULT
11 = 8 data bit, parity = ∑Even data bits
0 = 1*11/Baud rate
1 = 4*11/Baud rate DEFAULT
0 = BUS
1 = Standard DEFAULT
* Note: The baud rate cannot be programmed for all MFB types.
Fig. 42 RS485 settings Please refer to the individual data sheets.
Basically, each HIPERFACE® MFB, after power-up, is set to the default values for a time of 1 second approx. If, du-
ring this second, a plausible piece of information arrives, this setting is retained.
If this is not the case, the setting defined via this function is adopted. This procedure is necessary to be able to
communicate with devices whose setting is unknown.
The baud rate set as well as the definition of the parity only become active through an ENCODER RESET (53h)
or switching the encoder on and off.
Fig. 43
The MFB determines the values of the internal code tracks and uses this to calculate appropriate internal angle
offsets, with a virtual 0 being generated.
Together with these angle offsets, the position offset (Pos_HH .. Pos_LL) given in the protocol is stored in the
EEPROM of the MFB, where it cannot be lost.
The position offset value is transmitted as unsigned long with the LSB right-justified in Pos_LL.
Caution: This command must only be called when the MFB shaft is stationary, otherwise faulty angle offset va-
lues might be obtained.
Fig. 44