Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR STORING OPERATIONAL STATUS DATA OF AN ELECTRIC MOTOR AND ELECTRIC MOTOR FOR CARRYING OUT SUCH A METHOD
Document Type and Number:
WIPO Patent Application WO/2007/085346
Kind Code:
A1
Abstract:
The invention relates to a method for storing operational status data of an electric motor (1), comprising a processor (4) for control thereof and a non-volatile memory (7), said non-volatile memory having a flash memory (7) embodiment which may be overwrite or sector erased and which is divided into several memory sectors (11, 12, 13, 14) for the loading of a control programme and the recording of error codes for the electric motor (1) which characterise the operational status data, at least two memory sectors (11, 12) serving for the storage of the error codes. According to the invention, the recording of operational status data of an electric motor with a contactless armature is achieved by a circular writing of the memory sectors (11, 12), wherein erasing a memory sector (11, 12) to continue the writing is first carried out after the complete writing of all memory sectors (11, 12).

Inventors:
WASSENHOVEN HEINZ-GEORG (DE)
BABOUL NOUR-EDDINE (DE)
MEERKAMP SVEN (DE)
BRAKENSIEK DIRK (DE)
COENEN NORBERT (DE)
Application Number:
PCT/EP2007/000182
Publication Date:
August 02, 2007
Filing Date:
January 11, 2007
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SAURER GMBH & CO KG (DE)
WASSENHOVEN HEINZ-GEORG (DE)
BABOUL NOUR-EDDINE (DE)
MEERKAMP SVEN (DE)
BRAKENSIEK DIRK (DE)
COENEN NORBERT (DE)
International Classes:
H02P29/02; G06F11/07
Foreign References:
DE19639500A11998-04-02
DE10024485A12000-11-23
US6247149B12001-06-12
DE3523344A11987-01-08
Attorney, Agent or Firm:
HAMANN, Arndt (Landgrafenstrasse 45, Mönchengladbach, DE)
Download PDF:
Claims:
Patentansprüche :

1. Verfahren zum Speichern von Betriebszustandsdaten eines Elektromotors (1), der einen seiner Steuerung dienenden Prozessor (4) sowie einen nicht flüchtigen Speicher (7) umfasst, wobei der nicht flüchtige Speicher als beschreib- und sektorweise löschbarer Flash-Speicher (7) ausgeführt ist, der in mehrere Speichersektoren (11, 12, 13, 14) unterteilt ist, die der Hinterlegung eines Steuerungsprogrammes sowie der Erfassung von die Betriebszustandsdaten charakterisierenden Fehlercodes des Elektromotors (1) dienen, dass zumindest zwei Speichersektoren (11, 12) der Speicherung der Fehlercodes dienen, wobei die Speichersektoren (11, 12)- zirkulär beschrieben werden,

dadurch gekennzeichnet,

dass zur Erfassung von Betriebszustandsdaten eines Elektromotors mit berührungslos gelagertem Läufer die Löschung eines Speichersektors (11, 12) zur Fortführung der Speicherung erst nach dem vollständigen Beschreiben aller Speichersektoren (11, 12) durchgeführt wird.

2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Löschen eines Speichersektors (11, 12) zirkulär in der Reihenfolge ihres vollständigen Beschreibens durchgeführt wird.

3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass eine in den Speichersektoren (13, 14) hinterlegte Steuerungsroutine, die zur Erfassung und Abspeicherung der Fehlercodes schreibend auf einen der mindestens zwei Speichersektoren (11, 12) zugreift, temporär

in einen flüchtigen Speicher (6) ausgelagert wird.

4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass der Prozessor (4) zur Durchführung eines schreibenden Zugriffs auf den Flash-Speicher (7) in einen sicheren Antriebsstatus überführt wird.

5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass ein im Flash-Speicher (7) implementierter Zähler bei jedem Reset des Prozessors (4) inkrementiert wird.

6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass bei jeder Inkrementierung des Zählers die im flüchtigen Speicher (6) befindlichen Daten in den Flash-Speicher (7) transferiert werden.

7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass im Flash-Speicher (7) die Betriebsstunden des Elektromotors (1) erfasst werden.

8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass den erfassten Betriebszustandsdaten Ereigniszeiten zugeordnet werden.

9. Elektromotor (1) zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 8, umfassend einen der Steuerung des Elektromotors (1) dienenden Prozessor (4) sowie einen in den Prozessor (4) integrierten nicht flüchtigen Speicher (7), wobei der nicht flüchtige Speicher (7) der Hinterlegung und Ausführung eines Steuerungsprogrammes sowie der Erfassung von Betriebszustandsdaten des Elektromotors (1) dient, dass zumindest zwei zirkulär beschreibbare

Speichersektoren (11, 12) des nicht flüchtigen Speichers (7)

zur Speicherung von die Betriebszustandsdaten charakterisierenden Fehlercodes vorgesehen sind,

dadurch gekennzeichnet,

dass der Prozessor (4) zur Steuerung des Beschreibens und Löschens der Speichersektoren (11, 12) eingerichtet ist, derart, dass die Löschung eines Speichersektors (11, 12) zur Fortführung der Speicherung erst nach dem vollständigen Beschreiben aller Speichersektoren (11, 12) durchgeführt wird.

10. Elektromotor (1) nach Anspruch 9, dadurch gekennzeichnet, dass der Prozessor (4) seinerseits in den Elektromotor (1) integriert ist.

11. Elektromotor (1) nach einem der Ansprüche 9 oder 10, dadurch gekennzeichnet, dass der Elektromotor (1) mit einer Datenverarbeitungsvorrichtung verbindbar ist, mittels derer die mindestens zwei der Abspeicherung der Fehlercodes dienenden Speichersektoren (11, 12) auslesbar sind.

12. Elektromotor (1) nach einem der Ansprüche 9 bis 11, dadurch gekennzeichnet, dass der Elektromotor (1) einen Betriebsstundenzähler aufweist.

Description:

Beschreibung :

Verfahren zum Speichern von Betriebszustandsdaten eines Elektromotors sowie ein Elektromotor zur Durchführung eines solchen Verfahrens

Die Erfindung betrifft ein Verfahren zum Speichern von Betriebszustandsdaten eines Elektromotors gemäß dem Oberbegriff des Anspruches 1 sowie einen Elektromotor gemäß dem Oberbegriff des Anspruches 9.

Aus der DE 196 39 500 Al ist eine Steuerungsvorrichtung für einen elektromotorischen Antrieb einer Tür bekannt, die eine Mikroprozessoreinrichtung und eine Speichereinrichtung umfasst. Die Speichereinrichtung weist neben einem flüchtigen Speicher auch einen nichtflüchtigen Speicher in Form eines wieder- beschreibbaren Flash-ROM 's auf. Der Flash-ROM dient der Hinterlegung von Betriebsparametern, von für den Betrieb des Mikroprozessors erforderlichen AblaufProgrammen, sowie der Hinterlegung von kundenspezifischen Daten, wie beispielsweise Türendlagen, Türgeschwindigkeit oder anzuzeigenden Fehlermeldungen. Diese Daten werden in der Regel erst bei Inbetriebnahme der Tür ermittelt oder von einer Bedienperson eingegeben. Zur Speicherung von neuen Daten wird der im Flash-ROM bereits abgelegte Datenbestand zunächst in den flüchtigen Speicher übertragen. Anschließend wird durch das Anlegen eines Spannungsimpulses der Inhalt des Flash-ROM' s gelöscht. Dabei ist auch das Löschen einzelner Speichersektoren möglich. Nachfolgend wird der zwischengespeicherte Inhalt des flüchtigen Speichers mitsamt den neu erfassten oder eingegebenen Daten in einen oder mehrere der Speichersektoren zurückgeschrieben.

Als nachteilig an diesem Verfahren erweist sich, dass eine fortlaufende Erfassung von Betriebszustandsdaten des Elektromotors, die die Ableitung einer Fehlerhistorie zulassen, nicht erfolgt. Außerdem kann es bei einem Ausfall der Betriebsspannung während des Schreibvorganges zu einem vollständigen Datenverlust kommen, da gemäß dem Verfahren die Daten in dem flüchtigen Speicher zwischengespeichert werden.

Aus der EP 1 181 757 Bl ist ein Verfahren zum Betreiben eines Elektromotors bekannt, welchem ein Mikroprozessor oder Mikrocontroller zur Durchführung von Programmroutinen und ein nichtfluchtiger Speicher in Form eines EEPROM' s oder Flash-ROM 1 s zugeordnet sind, die der Speicherung von zu erfassenden Betriebszustandsdaten beim Auftreten eines Fehlers dienen. Hierbei werden die Betriebszustandsdaten in zeitlichen Abstanden überprüft und bei Erfüllung vorgebbarer Kriterien gegebenenfalls gespeichert. Bei diesem Verfahren wird das zu erfassende Datenaufkommen zeitlich getaktet erfasst. Diese Verfahrensweise weist den Nachteil auf, dass eine kontinuierliche lückenlose Erfassung von Betriebszustandsdaten im Fehlerfall nicht möglich ist. Das Auftreten eines Fehlers während des Taktungsintervalles wird nicht berücksichtigt, so dass bei einem Ausfall des Elektromotors die Ursache unter Umstanden nicht ermittelbar ist.

Aufgabe der vorliegenden Erfindung ist es, ein Verfahren bereitzustellen, welches die sequentielle Erfassung von Betriebszustandsdaten über die gesamte Lebensdauer des Elektromotors hinweg ermöglicht, wobei aus den jeweils gespeicherten Daten eine Fehlerhistorie ableitbar ist, sowie einen Elektromotor bereitzustellen, der eine einfache und kostengünstige Durchfuhrung des Verfahrens ermöglicht.

Diese Aufgabe wird hinsichtlich des Verfahrens durch die kennzeichnenden Merkmale des Anspruchs 1 gelöst. Bezuglich des

Elektromotors wird die Aufgabe durch die kennzeichnenden Merkmale des Anspruches 9 gelöst.

Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche .

Gemäß Anspruch 1 ist vorgesehen, dass die Löschung eines Speichersektors zur Fortführung der Speicherung erst nach dem vollständigen Beschreiben aller Speichersektoren durchgeführt wird. Dadurch sind die gespeicherten Fehlercodes zumindest des einen Speichersektors bis zum vollständigen Beschreiben aller anderen Speichersektoren verfügbar, da erst mit Erreichen dieses Status' der andere Speichersektor gelöscht wird. Somit lässt sich zumindest der Inhalt eines Speichersektors zur Analyse auslesen, im günstigsten Fall steht der Inhalt aller Speichersektoren zur Verfügung. Durch die lückenlose Erfassung der Fehlercodes ist somit im Umfang der abgespeicherten Daten eine Betrachtung der Historie des Elektromotors möglich, die Rückschlüsse auf Betriebszustandsdaten des Elektromotors zum Zeitpunkt eines Fehlers ermöglichen, die Fehlerereignisse des Elektromotors oder Fehlerereignisse einer von dem Elektromotor angetriebenen Komponente oder Vorrichtung, die den Betriebszustand des Elektromotors beeinflussen, darstellen. Insbesondere bei der Erfassung von Betriebszustandsdaten eines Elektromotors mit berührungslos gelagertem Läufer beziehungsweise Rotor ist das auftretende Datenvolumen von den aktuellen Betriebszustand repräsentierenden Daten sehr groß, da die Regelung derartiger Elektromotoren gegenüber Elektromotoren mit konventionell gelagerten Läufern, das heißt Läufern, die nicht berührungslos gelagert sind, ungleich aufwendiger ist. Hierzu zählt vor allem der notwendige Steuerungs- und Regelungsaufwand, um den berührungslos gelagerten Läufer in seine Schwebeposition zu überführen und während des Betriebes in dieser zu halten. Auch die Anzahl an Einflüssen, die zu einer negativen Beeinflussung

der berührungslosen Lagerung führen können, ist gegenüber konventionell gelagerten Läufern größer. Das zu verarbeitende Datenvolumen würde die Anzahl der maximal möglichen Löschzyklen sehr schnell ausschöpfen, wodurch eine langfristige Datenerfassung nicht gewährleistet ist.

Zudem weist das erfindungsgemäße Verfahren gegenüber dem Stand der Technik den Vorteil auf, dass die Anzahl der durchzuführenden Löschzyklen reduziert wird, die zur Erfassung der Fehlercodes notwendig sind, ohne dass eine Einschränkung des Datenaufkommens bei der Erfassung vorgenommen werden muss, wie es bei dem Verfahren gemäß der EP 1 181 757 Bl der Fall ist. Wenn eine Aktualisierung der Daten auf die in der

DE 196 39 500 Al beschriebenen Weise durchgeführt würde, käme es durch die Anzahl der zur Aktualisierung erforderlichen Schreibund Löschzyklen zu einer überschreitung der von den Herstellern angegebenen garantierten Anzahl an Schreib- und Löschzyklen. Im Allgemeinen wird die Anzahl garantierter Schreib- und Löschzyklen des Flash-Speichers mit cirka 10.000 angegeben. Die Lebensdauer des Flash-Speichers wird somit durch die in der DE 196 39 500 Al beschriebenen Verfahrensweise stark reduziert, da die in einem Speichersektor abgespeicherten Daten stets gelöscht werden, um ein erneutes Beschreiben der Speichersektoren mit aktualisierten Daten zu ermöglichen.

Insbesondere kann das Löschen eines Speichersektors zirkulär in der Reihenfolge ihres vollständigen Beschreibens durchgeführt werden. Auf diese Weise wird bei einem Ausfall des Elektromotors eine chronologische Analyse der hinterlegten Fehlercodes möglich.

Vorzugsweise kann eine in den Speichersektoren hinterlegte Steuerungsroutine, die zur Erfassung und Abspeicherung der Betriebszustandsdaten schreibend auf mindestens einen der zwei

-A-

Speichersektoren zugreift, temporär in einen flüchtigen Speicher ausgelagert werden. Auf diese Weise wird sichergestellt, dass zur Ausführung der Steuerungsroutine der beschränkt vorhandene Speicherplatz des flüchtigen Speichers (RAM) nur für den Zeitraum der Fehlercodeerfassung belegt wird, und ansonsten ausschließlich dem Steuerungsprogramm des Elektromotors zur Verfügung steht.

In bevorzugter Ausgestaltung des erfindungsgemäßen Verfahrens kann der Prozessor zur Durchführung eines schreibenden Zugriffs auf den Flash-Speicher in einen sicheren Antriebsstatus überführt werden. In diesem Antriebsstatus wird der Prozessor für den Zeitraum der Datenerfassung von allen Steuerungsaufgaben hinsichtlich des Elektromotors entbunden. Dadurch wird sichergestellt, dass der Prozessor zu diesem Zeitpunkt keine anderen Aufgaben im Rahmen der Steuerung des Elektromotors wahrnimmt, die die Erfassung der erfassten Betriebszustandsdaten verhindern oder zumindest verändern können. Um zu vermeiden, dass der Prozessor in diesem Zustand verweilt, weil es zu einem Fehler während des Speichervorganges kommt, kann eine zeitliche Limitierung der durchzuführenden Routine zur Betriebsdatenerfassung vorgesehen sein. Nach überschreiten des Zeitlimits wird der Prozessor automatisch wieder in den Status überführt, in der er seine Steuerungsauggaben wahrnehmen kann, unabhängig vom Resultat und/oder Abschluss des Speichervorganges.

Vorteilhafterweise kann ein im Flash-Speicher implementierter Zähler bei jedem Reset des Prozessors inkrementiert werden. Dies dient der Dokumentation der Anzahl von Resets des Prozessors. Der jeweilige Stand des Zählers wird dabei bei jedem Erfassen und Abspeichern eines Fehlercodes im Flash-Speicher hinterlegt. Hierdurch kann der Grund der Beendigung des Steuerungsprogrammes dokumentiert werden, der zu einem Reset führte. Ursächlich für die Beendigung des Steuerungsprogrammes kann beispielsweise der

Neustart einer übergeordneten Steuerung des Elektromotors sein. Auf diese Weise kann mittels der Inkrementierung des Zählers bei der Auswertung festgestellt werden, ob die Zeit zwischen zwei erfassten und abgespeicherten Fehlercodes kontinuierlich aufgezeichnet wurde, das heißt, ob zwischen der Protokollierung zweier Fehlercodes ein Reset des Steuerungsprogrammes stattgefunden hat.

Darüber hinaus können bei jeder Inkrementierung des Zählers die im flüchtigen Speicher befindlichen Daten in den Flash-Speicher transferiert werden. Dieser Vorgang dient der fortlaufenden Datensicherung .

Insbesondere können im Flash-Speicher die Betriebsstunden des Elektromotors erfasst werden. Der Betriebsstundenzähler kann dabei als eine Echtzeiterfassung ab dem Zeitpunkt der Inbetriebnahme des Elektromotors realisiert werden. Dies erlaubt die Beurteilung von auftretenden Fehlern hinsichtlich ihrer Quantität innerhalb eines bestimmten Zeitraumes. Ebenso kann die Zahl der Betriebsstunden des Elektromotors für eine Entscheidung darüber herangezogen werden, ob eine Reparatur sinnvoll ist oder nicht .

Alternativ zur Echtzeiterfassung kann eine relative, auf den jeweiligen Zeitpunkt der Inbetriebnahme beziehungsweise Wiederinbetriebnahme des Elektromotors abstellende zeitliche Erfassung vorgenommen werden.

Des Weiteren können den erfassten Betriebszustandsdaten Ereigniszeiten zugeordnet werden. Somit lässt sich ausgehend von der erstmaligen Inbetriebnahme oder gemäß der alternativen Ausführung vom letzten Neustart des Prozessors beziehungsweise des Elektromotors der Zeitraum ableiten, in welchem die Betriebszustandsdaten respektive die korrespondierenden

Fehlercodes erfasst wurden. Die Ereigniszeiten ermöglichen die Rückschlussnahme auf die Häufigkeit des Auftretens eines bestimmten Betriebszustandes.

Gemäß Anspruch 9 wird vorgeschlagen, dass der Prozessor zur Steuerung des Beschreibens und Löschens der Speichersektoren eingerichtet ist, derart, dass die Löschung eines Speichersektors zur Fortführung der Speicherung erst nach dem vollständigen Beschreiben aller Speichersektoren durchgeführt wird.

Dabei kann der Prozessor seinerseits in den Elektromotor integriert sein. Dies hat den Vorteil, dass die während des Betriebes des Elektromotors im Flash-Speicher abgespeicherten Fehlercodes beim Ausbau desselben beziehungsweise der durch den Elektromotor angetriebene Komponente mitsamt dem Elektromotor nicht verloren gehen, sondern einer nachfolgenden Analyse zugänglich sind. Vorzugsweise ist der Prozessor im Inneren eines den Elektromotor umschließenden Gehäuses angeordnet.

Des Weiteren kann der Elektromotor mit einer externen Datenverarbeitungsvorrichtung verbindbar sein, mittels derer die mindestens zwei der Abspeicherung der Fehlercodes dienenden Speichersektoren auslesbar sind. Dies ermöglicht zum einen die Analyse des betreffenden Elektromotors im eingebauten Zustand der Komponente in der Vorrichtung. Zum anderen kann der Elektromotor ausgebaut und separat einer Analyse zugeführt werden, ohne auf die Zugänglichkeit von in der Vorrichtung hinterlegten Daten angewiesen zu sein. Alternativ kann das Auslesen der Speichersektoren beziehungsweise die Abfrage der Betriebszustanddaten remote erfolgen, beispielsweise über ein lokales Netzwerk oder das Internet, an das der Elektromotor mittelbar über eine Maschine, an der der Elektromotor zum Einsatz kommt, oder unmittelbar angeschlossen sein kann. Das Auslesen beziehungsweise die Abfrage erfolgt über einen

Kommunikationskanal, der unmittelbar mit der Steuereinrichtung des elektromotorischen Antriebes verbunden ist und/oder über eine übergeordnete Steuereinheit einer Arbeitsstelle und/oder der Maschine.

Insbesondere kann der Elektromotor einen Betriebsstundenzähler aufweisen, um eine chronologische Analyse der auftretenden Fehlercodes zu ermöglichen und um Rückschlüsse über die Gesamtbetriebsdauer des Elektromotors zuzulassen, die als Kriterium hinsichtlich der Durchführung einer eventuell erforderlichen Reparatur herangezogen werden kann.

Die vorliegende Erfindung wird nachfolgend anhand eines in der Zeichnung schematisiert dargestellten Blockschaltbildes des erfindungsgemäßen Elektromotors näher erläutert.

Figur 1 zeigt in schematisierter Darstellung ein Blockschaltbild eines Elektromotors 1 mit einem berührungslos gelagerten Läufer, dem eine Steuerungseinrichtung 2 zugeordnet ist, die in den Elektromotor 1 integriert ist. Vorzugsweise ist die Anordnung im Inneren eines den Elektromotor 1 umschließenden, nicht dargestellten Gehäuses vorgesehen. Die Steuerungseinrichtung 2 umfasst eine Regelelektronik 3 sowie einen Prozessor 4. In den Prozessor 4 sind ein Analog/Digital-Wandler 5, ein flüchtiger Speicher 6 (RAM) , ein nichtflüchtiger Speicher in Form eines Flash-Speichers 7 sowie ein Flash-Interface 8, das der Kommunikation zwischen dem flüchtigen Speicher 6 (RAM) und dem Flash-Speichers 7 dient, und ein Kommunikationsbaustein 9 (UART - universeller asynchroner Empfänger und Sender) integriert. Der Kommunikationsbaustein 9 kann als ein eigenständiger Chip der Steuerungseinrichtung 2 oder als eine Teilfunktion im Prozessor 4 realisiert sein.

Der prozessorinterne Flash-Speicher 7 besteht aus mehreren Speichersektoren 11, 12, 13, 14, die der permanenten Hinterlegung eines Steuerungsprogrammes sowie der Speicherung von die Betriebszustandsdaten charakterisierenden Fehlercodes, die Fehlerereignisse des Elektromotors 1 oder Fehlerereignisse einer von dem Elektromotor 1 angetriebenen Komponente oder Vorrichtung, die den Betriebszustand des Elektromotors 1 beeinflussen, darstellen, dienen. Die Anzahl der Speichersektoren kann in Abhängigkeit vom verwendeten Flash-Speicher 7 auch größer sein, als die der beschriebenen Ausführungsform. Dabei erfolgt eine Aufteilung der Speichersektoren 11, 12, 13, 14 in der Hinterlegung des Steuerungsprogrammes dienende Applikationssektoren 13, 14 und zumindest zwei zusammenhängende Fehlerspeichersektoren 11, 12. Die der Hinterlegung des Steuerungsprogrammes beziehungsweise der Speicherung der Fehlercodes dienenden Speichersektoren 11, 12, 13, 14 des Flash- Speicher 7 sind nur sektorweise löschbar, ermöglichen aber ein sequentielles Beschreiben der einzelnen Speichersektoren 11, 12, 13, 14. Die Löschung und das Beschreiben der Applikationssektoren 13, 14 erfolgt nur im Bedarfsfall bei einem notwendig werdenden Austausch des Steuerungsprogrammes.

über die Regelelektronik 3 werden die von dem im Prozessor 4 verarbeiteten Steuerungsprogramm generierten Befehle, die den Betriebszustand des Elektromotors 1 verändern sollen, umgesetzt und an den Elektromotor 1 weitergeleitet. In umgekehrter Richtung werden die vom Elektromotor 1 erfassbaren Betriebszustandsdaten entweder direkt an das Steuerungsprogramm weitergeleitet oder durch den A/D-Wandler 5 in entsprechende vom Steuerungsprogramm verarbeitbare Signale umgewandelt.

Wird auf Grund der erfassten Betriebszustandsdaten durch das Steuerungsprogramm ein Fehlerereignis diagnostiziert, wird der dieses Fehlerereignis eindeutig charakterisierende Fehlercode in

einem der Speichersektor 11, 12 gespeichert. Hierzu wird der Fehlercode mittels einer Steuerungsroutine über das Flash- Interface 8 an die Speichersektor 11, 12 weitergeleitet. Um einen willkürlichen Schreibvorgang in einen der beiden Speichersektoren 11, 12 zu verhindern, ist eine Logik 10 vorgesehen, die die Steuerung der Schreib- und Löschvorgänge vornimmt. Die dem Flash-Speicher 7 vorgeschaltete Logik 10 steuert den in den Speichersektoren 11, 12 zu speichernden Datenfluss und überwacht zudem den Grad der Kapazitätsauslastung der Speichersektoren 11, 12.

Zum Beschreiben der Speichersektoren 11, 12 wird der Prozessor 4 temporär in einen sicheren Antriebsstatus überführt, in dem dieser keine anderen Aufgaben im Rahmen der Steuerung des Elektromotors 1 wahrnehmen kann, die die Erfassung der erfassten Betriebszustandsdaten verhindern oder zumindest verändern könnten. Die den Schreibvorgang ausführende Steuerungsroutine wird für die Dauer des Schreibvorganges aus einem der Speichersektoren 13, 14 in den flüchtigen Speicher 6 übertragen.

Das Beschreiben und Löschen der Speichersektoren 11, 12 erfolgt zirkulär. Zunächst werden durch die Logik 10 nur in einem der beiden Speichersektoren 11, 12 Fehlercodes abgespeichert, bis dessen Speicherkapazität erschöpft ist. Im Anschluss daran wird der noch unbeschriebene Speichersektor 12 beschrieben. Mit dem Erreichen der Kapazitätsgrenze des zweiten Speichersektors 12 wird durch die Logik 10 der zuerst beschriebene Speichersektor 11 vollständig gelöscht, um im Anschluss an den Löschvorgang wieder sukzessiv beschrieben zu werden. Erst wenn der Speichersektor 11 erneut vollständig mit Daten in Form von Fehlercodes gefüllt wurde, wird der nachfolgende Speichersektor 12 ebenfalls gelöscht und erneut beschrieben. Somit wird sichergestellt, dass zumindest die zuletzt aufgezeichneten Fehlercodes ausgelesen werden können, wenn es zu

einer Unterbrechung der Spannungsversorgung im Zeitpunkt des Löschens oder nach dem Löschen kommt.

Beispielhaft werden die zu erfassenden Betriebszustandsdaten anhand eines Elektromotors 1 erläutert, dessen Läufer vorzugsweise magnetisch gelagert ist. Der Elektromotor 1 kann dabei als Antrieb einer Komponente einer Vorrichtung ausgeführt sein, wie sie beispielhaft im zitierten Stand der Technik beschrieben sind. Für einen derartigen Elektromotor 1 ist beispielsweise die Erfassung der Drehzahl relevant, um anhand von Grenzwerten ein über- oder Unterschreiten der Drehzahl zu erfassen. Ebenso ist die überwachung des Spannungsverlaufes während des Betriebes des Elektromotors 1 und des Magnetlagers ein wichtiges Kriterium. Des Weiteren sind insbesondere bei der Magnetlagerung die Fälle relevant, bei denen der Läufer nicht von den Lagern abhebt oder wenn unzulässige Stromwerte in der Spule des Magnetlagers beim Beschleunigen, beim Bremsen beziehungsweise im stationären Betrieb des Elektromotors 1 auftreten. Weitere zu erfassende Betriebszustände sind in Abhängigkeit vom Einsatz des erfindungsgemäßen Elektromotors 1 als Antrieb einer Komponente durch entsprechende komponentenspezifische Kriterien vorgebbar.

Um die in den Speichersektoren 11, 12 gespeicherten Daten zu visualisieren, können diese über den Kommunikationsbaustein 9 an ein internes Bussystem einer Vorrichtung, deren mit dem erfindungsgemäßen Elektromotors 1 anzutreibende Komponente Bestandteil der Vorrichtung ist, oder an eine externe Datenverarbeitungsvorrichtung übertragen werden. Hierzu kann der Prozessor an ein Bussystem der externen Datenverarbeitungseinrichtung angeschlossen werden, um die auszuwertenden Daten zu übertragen. Unabhängig von diesen Arten der Datenübertragung und -auswertung ermöglicht die Verwendung des prozessorinternen Flash-Speichers 7 als Speicher den Ausbau des Elektromotors 1

aus der Vorrichtung, um diesen direkt auszulesen, ohne auf diese zurückgreifen zu müssen oder ein entsprechendes Datenverarbeitungsgerät an die Vorrichtung anschließen zu müssen.

Den die Betriebszustandsdaten charakterisierenden Fehlercodes werden entsprechende Fehlerereigniszeiten zugeordnet, die eine chronologische Analyse der aufgetretenen Betriebszustände des Elektromotors 1 im Fehlerfall ermöglichen. Hierzu ist ein Betriebsstundenzähler in den Elektromotor 1 implementiert, der jedem Fehlerereignis eine Ereigniszeit in Form eines Zeitstempels zuweist. Der Betriebsstundenzähler kann dabei als eine Echtzeiterfassung ab dem Zeitpunkt der Inbetriebnahme des Elektromotors 1 realisiert werden. Alternativ kann eine relative, auf den jeweiligen Zeitpunkt der Inbetriebnahme beziehungsweise Wiederinbetriebnahme des Elektromotors 1 abstellende zeitliche Erfassung vorgenommen werden. Somit lässt sich ausgehend vom letzten Neustart des Prozessors 4 beziehungsweise des Elektromotors 1 der Zeitraum ableiten, in welchem die Betriebszustandsdaten respektive die korrespondierenden Fehlercodes erfasst wurden.

Da während des Betriebes des Elektromotors 1 Situationen auftreten können, die einen Neustart (Reset) des Steuerungsprogrammes erforderlich machen, ist im Flash- Speicher 7 ein Zähler implementiert, der bei jedem Reset inkrementiert wird. Der aktuelle Zählerstand wird vom Prozessor 4 protokolliert und in dem jeweils zu beschreibenden Speichersektor 11, 12 zusammen mit dem zu protokollierenden Fehlercode hinterlegt. Auf diese Weise kann bei der Auswertung festgestellt werden, ob zwischen zwei protokollierten Fehlercodes ein Reset des Steuerungsprogrammes stattgefunden hat.