-
TECHNISCHES GEBIET
-
Diese Offenbarung betrifft Winkelgeber und Verfahren und Systeme zum Bestimmen zugeordneter Winkelstellungen.
-
HINTERGRUND
-
Vorrichtungen, die drehbare Elemente beinhalten, können Winkelgeber zum Überwachen der Winkelposition und der Drehzahl des Rotors verwenden. Als nicht einschränkende Beispiele können Antriebsstrangsysteme elektrisch angetriebene Maschinen zum Erzeugen von Zugkraft für den Vortrieb verwenden. Bekannte Drehmomentmaschinen beinhalten mehrphasige Elektromotoren/Generatoren, die elektrisch mit Energiespeichervorrichtungen über Hoch-Volt-Busverbindungen und Wechselrichtermodulen verbunden sind. Drehmomentmaschinen können Winkelgeber zum Überwachen der Winkelposition und Drehzahl verwenden und solche Informationen zum Steuern und zum Betreiben derselben verwenden.
-
Ein Winkelgeber ist ein elektromechanischer Wandler, der einen Rotor mit einer Erregerwicklung beinhaltet, die mit dem drehbaren Element und einem Stator mit Sekundärwicklungen verbunden ist, die zum drehfesten Teil der Vorrichtung verbunden sind, worin elektromagnetische Kopplung zwischen der Primär- und den Sekundärwicklungen sich mit der Drehstellung des Rotors verändert. Die Primärwicklung kann mit einem sinusförmigen Signal erregt werden, das in den Sekundärwicklungen differentielle Ausgangssignale hervorruft. Die Größe der elektrischen Kopplung an die Sekundärwicklungen betrifft die Drehstellung des Rotors gegenüber dem Stator und einen Abschwächungsfaktor, der als Winkelgeber-Übersetzungsverhältnis bekannt ist. In bestimmten Ausführungsformen ist der Winkelgeber ein variabler Reluktanz-Winkelgeber, in dem eine Erregerwicklung im Stator angeordnet ist und ein Luftspalt zwischen Rotor und Stator wird am Rotor moduliert, der das Übersetzungsverhältnis je nach Drehstellung moduliert. Die Ausgangssignale der Sekundärwicklungen können durch 90 Grad Drehung zueinander phasenverschoben werden als Ergebnis dessen, dass die Sekundärwicklungen mechanisch durch 90/PP Grad mechanische Drehung mechanisch verschoben werden, worin PP die Anzahl von Polpaaren des Winkelgebers ist. Somit wird die elektrische Drehung ermittelt auf Basis der mechanischen Drehung dividiert durch eine Anzahl von elektrischen Polpaaren. Die Primärwicklung kann mit einem Sinuswellen-Referenzsignal erregt werden, was differentielle Ausgangssignale auf den Sekundärwicklungen induziert. Die Zusammenhänge zwischen dem Winkelgebereingang und den Differential-Ausgangssignalen können verwendet werden, um einen Sinus- und Cosinus des Drehwinkels des Rotors zu bestimmen. Somit sind die Beziehungen zwischen dem Winkelgeber-Eingangssignal und den Winkelgeberausgangssignalen auswertbar, um dynamisch eine Winkellage und Drehzahl des Rotors zu bestimmen und damit das Drehelement.
-
Bekannte Systeme mit Winkelgebern weisen Winkelgeber/Digitalumwandlungsintegrierte Schaltungsvorrichtungen zum Verarbeiten von Eingangssignalen vom Winkelgeber zum Erzeugen von Rotationsinformationen auf, die von einer Steuerung verwendet werden können.
-
ZUSAMMENFASSUNG
-
Eine Vorrichtung zum Überwachen eines Winkelgebers, der auf einem drehbaren Teil angeordnet ist, wird hier beschrieben und beinhaltet eine Steuerung einschließlich einer Mikroprozessorschaltung und eine Schnittstellenschaltung mit dem Winkelgeber, worin die Mikroprozessorschaltung eine Zweikern-Zentraleinheit (CPU), einen Impulsgenerator, einen Sigma-Delta-Analog/Digital-Wandler (SDADC), eine globale Speichervorrichtung, einen internen Kommunikationsbus und eine direkte Speicherzugriffsvorrichtung (DMA) beinhaltet. Der Impulsgeber ist elektrisch mit einer Erregerwicklung des Winkelgebers verbunden. Der SDADC ist elektrisch mit der Sekundärwicklung des Winkelgebers verbunden, worin der SDADC einen Speicherpuffer in Kommunikation mit dem Kommunikationsbus beinhaltet. Die Zweikern-CPU beinhaltet eine erste CPU und eine zweite CPU. Ein Taktsignal steuert synchron die Taktdrehzahlen des SDADC, den Impulsgeber, die erste CPU und die zweite CPU. Die Mikroprozessorschaltung ist angeordnet zum Steuern des Impulsgenerators zum Erzeugen eines Erregungsimpulses, der auf die Erregerwicklung des Winkelgebers übertragbar ist und zum Steuern des SDADC, um Daten von den Sekundärwicklungen des Winkelgebers zu erfassen und die erfassten Daten in dem Pufferspeicher zu speichern. Die DMA wird zum Übertragen der erfassten Daten von dem Pufferspeicher über den Kommunikationsbus auf die globale Speichervorrichtung gesteuert. Eine Steuerroutine wird ausgeführt zum Erfassen einer Hüllkurve für die erfassten Daten und eine Rotorstellung für den Winkelgeber wird auf der Basis der erfassten Hüllkurve ermittelt.
-
Die genannten Merkmale und Vorteile sowie weitere Merkmale und Vorteile der vorliegenden Lehren gehen deutlich aus der folgenden ausführlichen Beschreibung von einigen der besten Arten und weiteren Ausführungsformen der vorliegenden Lehren unter Bezugnahme auf die beigefügten Zeichnungen hervor.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Im Folgenden werden exemplarisch eine oder mehrere Ausführungsformen mit Bezug auf die beigefügten Zeichnungen beschrieben, in welchen:
-
1 und 2 eine schematische Veranschaulichung eines Elektromotors sind, der drehbar über ein starres drehbares Element an eine Last gekoppelt ist, das durch einen Winkelgeber überwacht und durch eine Motorsteuerung in Übereinstimmung mit der Offenbarung überwacht wird;
-
3 schematisch Details der beschriebenen Motorsteuerung darstellt mit Bezug auf 1 und 2, einschließlich einer Mikroprozessorschaltung und einer Schnittstellenschaltung, worin die Mikroprozessorschaltung eine Zweikern-CPU, einen Impulsgeber und einen Sigma-Delta-Analog/Digital-Wandler (SDADC) in Übereinstimmung mit der Erfindung beinhaltet;
-
4 grafisch Ausgabesignale von Sekundärwicklungen eines Winkelgebers einschließlich SIN und COS-Signalen und entsprechender Hüllsignale SINENV und COS-ENV zeigt, die den Ausgangssignalen SIN und COS in Übereinstimmung mit der Erfindungntnommen werden können;
-
5 grafisch Daten zeigt, die mit Betriebselementen der Zweikern-CPU der Motorsteuerung verknüpft sind, die unabhängig ausgeführtes Verarbeiten von Daten vom Winkelgeber und von der Steuerung des Elektromotors in Übereinstimmung mit der Erfindung beinhalten;
-
6 grafisch Daten zeigt, die mit dem Betrieb einer Ausführungsform eines Winkelgebers einschließlich einer Wellenform eines Impulsgenerators, einem Winkelgeber-Anregungssignal und primären und sekundären Ausgabesignalen einer Ausführungsform des Winkelgebers in Übereinstimmung mit der Erfindung verknüpft sind; und
-
7 schematisch Einzelheiten eines Software-Flussdiagramms zum Steuern einer Ausführungsform des Winkelgebers einschließlich einer Unterbrechungsroutine zum Erzeugen von Hüllinformationen von den Signalausgängen der Sekundärwicklungen in Übereinstimmung mit der Erfindung zeigt.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Bezugnehmend auf die Zeichnungen, die lediglich zum Veranschaulichen bestimmter exemplarischer Ausführungen dienen und den Umfang der Erfindung nicht beschränken sollen, stellen 1 und 2 schematisch Einzelheiten eines Motorsteuerungssystems zum Steuern des Betriebs eines Elektromotors 10 dar, der drehbar an eine Last 17 über eine starres drehbares Element 16 gekoppelt ist, worin die Winkelposition des drehbaren Elements 16 durch einen Winkelgeber 20 überwacht und der Betrieb über eine Motorsteuerung 40 gesteuert wird. Wie dargestellt, ist der Winkelgeber 20 auf einer Seite des Elektromotors 10 angeordnet, die entfernt von der Last 17 ist, jedoch kann der Winkelgeber 20 an jeder passenden Stelle zum Überwachen der Drehung des drehbaren Elementes 16 angeordnet sein. Die Last 17 kann in einem nicht einschränkenden Beispiel ein Getriebe 18 mit einem Antriebsrad 19 sein, das zusammen mit einer Bodenoberfläche wirkt, wenn es als Teil eines Antriebssystems für ein Bodenfahrzeug eingesetzt wird. Die hier beschriebenen Konzepte gelten jeder beliebigen Konfiguration, die eine drehbare Komponente 16 einer Vorrichtung beinhaltet, worin das drehbare Element 16 durch einen Winkelgeber 20 zum Bestimmen von Winkelposition und Drehzahl davon überwacht wird.
-
Der Elektromotor 10 kann jede geeignete Elektromotor-/Generatorvorrichtung sein, z. B. eine Permanentmagnetvorrichtung und beinhaltet einen Stator 14 und einen Rotor 12. Wie dargestellt ist der Stator 14 eine ringförmige Vorrichtung und der Rotor 12 ist koaxial innerhalb angeordnet und an das drehbare Element 16 gekoppelt. Alternativ kann der Rotor 12 als eine ringförmige Vorrichtung mit einem koaxialen Stator 14 innerhalb konfiguriert sein. Der Betrieb des Elektromotors 10 erfolgt über die Motorsteuerung 40, die vorzugsweise einen Wechselrichter 45 in Signalkommunikation mit einer Steuerung 50 über eine Kommunikationsverbindung 42 beinhaltet. Der Wechselrichter 45 ist elektrisch mit dem Stator 14 des Elektromotors 10 zum Übertragen von elektrischer Energie verbunden, entweder, um am Rotor 12 für das drehbare Element 16 Drehmoment zu erzeugen oder um Drehmoment auf den Rotor 12 zu übertragen, das von dem drehbaren Element 16 übertragen wird. Die Steuerung 50 kommuniziert mit dem Winkelgeber 20 zum Überwachen der Winkelposition des drehbaren Elements 16.
-
Der Winkelgeber 20 beinhaltet einen Winkelgeberrotor 22, der fest am drehbaren Element 16 befestigt ist und einen Winkelgeberstator 24, der an einem Erdungselement, z. B. einem Motorgehäuse befestigt ist. Der Winkelgeberrotor 22 kann eine primäre elektrische Wicklung, hier als Erregerwicklung 23 bezeichnet, beinhalten und der Winkelgeberstator 24 beinhaltet zwei sekundäre elektrische Wicklungen, im Folgenden jeweils als erste und zweite Sekundärwicklung 25, 26 bezeichnet. Alternativ kann der Winkelgeber 20 ein variabler Reluktanz-Winkelgeber mit der Erregerwicklung 23 und der ersten und zweiten Sekundärwicklung 25, 26, angebracht am Winkelgeberstator 24, sein, worin der Winkelgeberrotor 22 einen Luftspalt dazwischen zum Erzeugen von Ausgangssignalen auf der ersten und zweiten Sekundärwicklung 25, 26 moduliert.
-
Die Erregerwicklung 23 und die erste und zweite Sekundärwicklung 25, 26 arbeiten als variable Koppeltransformatoren. Im Betrieb kommuniziert die Steuerung 50 ein Erregungssignal, vorzugsweise in Form eines analogen sinusförmigen Referenzsignals an die Erregerwicklung 23 über erste Leitungen 33. In bestimmten Ausführungsformen hat das sinusförmige Referenzsignal eine Frequenz in einem Bereich zwischen 1 kHz und 15 kHz. Die erste und zweite Sekundärwicklung 25, 26 erzeugen erste und zweite Ausgabesignale als Reaktion auf das Erregersignal, die über zweite und dritte Leitungen 35, 36 kommuniziert werden. Wenn die erste und zweite Sekundärwicklung 25, 26 mechanisch drehbar durch 90/PP Grad mechanische Drehung verschoben sind, worin PP die Anzahl von Polpaaren des Winkelgebers um die Drehachse des Rotors 12 ist, wird das erste und zweite Ausgangssignal, erzeugt durch die erste und zweite Sekundärwicklung 25, 26, der Signalverarbeitung unterzogen, was Digitalisierung und Demodulation zum Ermitteln eines Drehwinkels des Rotors 12 und damit des drehbaren Elements 16 beinhaltet. Der Winkelgeber 20 kann mit einem einzigen Polpaar für die erste und zweite Sekundärwicklung 25, 26 konfiguriert sein, was bedeutet, dass 360 Grad mechanische Drehung des drehbaren Elements 16 ein Signal erzeugt, das 360 Grad elektrische Drehung vom Winkelgeberrotor 22 anzeigt. Alternativ kann der Winkelgeber 20 mit mehreren Polpaaren für die erste und zweite Sekundärwicklung 25, 26 konfiguriert werden. Exemplarisch erzeugen, wenn der Winkelgeber 20 mit zwei Polpaaren konfiguriert ist, 180 Grad mechanische Drehung des drehbaren Elements 16 ein Signal, das 360 Grad elektrische Drehung vom Winkelgeberrotor 22 anzeigt, und wenn der Winkelgeber 20 mit drei Polpaaren konfiguriert ist, erzeugen 120 Grad mechanische Drehung des drehbaren Elements 16 ein Signal, das 360 Grad elektrische Drehung vom Winkelgeberrotor 22 anzeigt.
-
Die Steuerung 50 beinhaltet eine Mikroprozessorschaltung 60 und eine Schnittstellenschaltung 55. Die Mikroprozessorschaltung 60 beinhaltet vorzugsweise eine Zweikern-Zentraleinheit (CPU) 65, einen Impulsgeber 78 und einen Sigma-Delta-Analog/Digital(A/D)-Wandler (SDADC) 70, die über einen internen parallelen Kommunikationsbus 85 kommunizieren. Der Impulsgeber 78 erzeugt einen elektrischen Impuls auf die Erregerwicklung 23 des Winkelgebers 20 über den Signalaufbereitungs-Schaltkreis einschließlich beispielsweise eines Tiefpassfilters 54 und eines Differenzverstärkers 53, die elektrisch über erste Leitungen 33 zum Erregen von Wicklung 23 des Winkelgebers 20 verbunden sind. Die erste und zweite Sekundärwicklung 25, 26 des Winkelgebers 20 kommunizieren über zweite und dritte Leitungen 35, 36 jeweils mit Zuleitungen zum SDADC 70. Die zweiten und dritten Leitungen 35, 36 beinhalten jeweilige Leitungsfilter 52 zum Entfernen von elektromagnetischem Störungs-(EMI)-Rauschen vor dem Senden an den SDADC 70. Die Steuerung 50 steht mit dem Wechselrichter 45 über die Kommunikationsverbindung 42 in Verbindung.
-
Die Erregerwicklung 23 und die zwei Sekundärwicklungen der ersten und zweiten Sekundärwicklung 25, 26 können als variable Kupplungstransformatoren arbeiten. Im Betrieb sendet die Steuerung 50 ein Erregungssignal, vorzugsweise in Form eines analogen sinusförmigen Referenzsignals an die Erregerwicklung 23 über die ersten Leitungen 33. In bestimmten Ausführungsformen hat das sinusförmige Referenzsignal eine Frequenz in einem Bereich zwischen 1 kHz und 15 kHz. Das Erregungssignal kann vom Impulsgeber 78 in Form eines Rechteckschwingungs-Referenzsignals erzeugt werden und das Tiefpassfilter 54 durchlaufen, um die sinusförmige Wellenform zu bilden. Die zweite und dritte Leitung 35, 36 überträgt erste und zweite Ausgangssignale, die durch die erste und zweite Sekundärwicklung 25, 26 in Reaktion auf das Erregersignal erzeugt werden. Wenn die erste und zweite Sekundärwicklung 25, 26 mechanisch drehbar um 90/PP Grad Drehung um die Drehachse des Rotors 12 verschoben sind (worin PP die Anzahl von Polpaaren des Winkelgebers ist), können das erste und zweite Ausgangssignal, erzeugt durch die erste und zweite Sekundärwicklung 25, 26, einer Signalverarbeitung unterzogen werden, das Digitalisierung und Demodulation zum Ermitteln eines Drehwinkels des Rotors 12 beinhaltet.
-
Die Motorsteuerung 40 beinhaltet die Mikroprozessorschaltung 60 und andere Schaltungen zum Erfassen der Rückmeldesignale wie Motorstrom, Eingangsspannung, Motorposition und Drehzahl. Die Motorsteuerung 40 erzeugt die Steuersignale für die Leistungshalbleiterschalter des Wechselrichters 45 zum Erzeugen von Strom, der auf den Stator 14 über Dreiphasenmotorkabel 15 übertragen wird. Die Drehung des drehbaren Gliedes 16 fällt mit der Drehung des Rotors 12 und des Winkelgeberrotors 22 zusammen und die Position und Drehzahl des Winkelgeberrotors sind direkt mit der Position und Drehzahl des Rotors 12 gekoppelt. Als Beispiel eines Permanentmagnet-Motorantriebssystems ist der Winkelgeberrotor 22 montiert, um den Nordpol des Magneten im Rotor 12 zu lokalisieren, was der Motorsteuerung 40 erlaubt, den Elektromotor 10 gegenüber dem Ort des Magneten des Motors zum Maximieren des Ausgabedrehmoments für einen gegebenen Strom zu steuern. Insbesondere ohne jegliche Mechanisierung der beschriebenen Motorsteuerung 40 mit Bezug auf 1 und 2 wird eine spezielle integrierte Schaltung in Form eines Winkelgeber-zu-Digitalwandlers (RDC) beschrieben. Stattdessen wird hier ein RDC-System in Form einer von einer Steuerung ausführbaren Routine(n) detailliert beschrieben.
-
Der Betrieb einer Ausführungsform des Winkelgebers 20 kann als Drehtransformator ausgebildet sein einschließlich eines Erregungssignals EXC, das an die Primärwicklung der Erregerwicklung 23 und die Ausgangssignale SIN und COS von den zweiten Wicklungen der ersten und zweiten Sekundärwicklung 25, 26 gesendet werden kann. Exemplarische Wellenformen der Ausgabesignale SIN und COS sind graphisch dargestellt sind mit Bezug auf 4 einschließlich SIN 402 und COS 404. Anhand eines nicht einschränkenden Beispiels kann das Erregersignal EXC eine Anregungsfrequenz fe aufweisen, die nahe 10 kHz liegt und bevorzugt größer als eine Frequenz f des Winkelgeberrotors 22 ist. Eine einzige Drehperiode (1/f) des Winkelgeberrotors 22 wird durch Periode 415 angezeigt und eine Hälfte einer einzelnen Drehperiode (1/fe) der Erregungsfrequenz fe wird durch Periode 405 angezeigt.
-
Die Ausgabesignale SIN 402 und COS 404 weisen positionsabhängige Informationen auf (sinθ und cosθ), die ein Modulationssignal sinωet beinhalten, worin ωe die Anregungsfrequenz ist. Das Anregungssignal EXC kann beispielsweise als EQ. 1 und die Ausgabesignale SIN und COS können als EQ. 2 und EQ. 3 jeweils in einem ausgeglichen System repräsentiert sein wie folgt: EXC = Esinωet = EXC+ – EXC– [1] SIN = kEsinθsin(ωet – ϕ) = SIN+ – SIN– [2] COS = kEcosθsin(ωet – ϕ) = COS+ – COS– [3] worin:
- ωe
- die Anregungsfrequenz in rad/s (= 2πfe);
- E
- die Anregungsspannung;
- k
- ein Übersetzungsverhältnis (Verstärkung) zwischen den Primär- und Sekundärwicklungen;
- θ
- die Winkelgeberposition in Radian (= ωt = 2πf); und
- ϕ
- eine Phasenverzögerung zwischen der Primär- und der Sekundärwicklung ist.
-
Die Ausdrücke EXC+ und EXC– geben die Eingangssignale von den ersten Leitungen 33 an, die Ausdrücke SIN+ und SIN geben die Ausgabesignale der zweiten Leitungen 35 an und die Ausdrücke COS+ und COS– geben die Ausgabesignale der dritten Leitungen 36 an. 4 zeigt weiterhin grafisch eine erste Hüllkurve SINENV 412, die mit dem SIN 402 verknüpft ist und eine zweite Hüllkurve COSENV 414, die mit dem COS 404 verknüpft ist. Die erste Hüllkurve SINENV 412 und die zweite Hüllkurve COSENV 414 und zugehörige Parameter können aus den Ausgabesignalen SIN 402 und COS 404 unter Verwendung von Signaldemodulation und anderen Analysen, die hierin beschrieben werden, extrahiert werden.
-
Die Sinus- und Cosinus-Signale der Drehwinkel können interpretiert werden, um einen Drehwinkel des Winkelgeberrotors 22 und damit einen Drehwinkel des drehbaren Elements 16 und des Rotors 12 zu ermitteln. Die Motorsteuerung 40 kann den Drehwinkel des drehbaren Elements 16 zum Steuern des Betriebs des Elektromotors 10 einsetzen. Es versteht sich, dass es eine Differenz zwischen dem Drehwinkel, gemessen durch den Winkelgeber 20, und dem Drehwinkel des Rotors 12 gegenüber dem Stator 14 des Elektromotors 10 aufgrund der Winkelgeberverschiebung oder mechanischer Verspannung des drehbaren Element 16 bei der Anwendung von Drehmoment geben kann.
-
Das erste und zweite Ausgangssignal erzeugt Ausgangssignale durch die erste und zweite Sekundärwicklung 25, 26 in Reaktion auf das Anregungssignal und die auf der zweiten und dritten Leitung 35, 36 kommunizierten Signale sind analoge Signale. Die analogen Signale können in digitale Signale umgewandelt werden, die die Winkelposition und Drehzahl des drehbaren Elements unter Verwendung der Motorsteuerung 40 anzeigen.
-
3 zeigt schematisch Einzelheiten der Mikroprozessorschaltung 60 und einer Schnittstellenschaltung 55 der Motorsteuerung 40 einschließlich der Zweikern-CPU 65, den Impulsgenerator 78, den SDADC 70 sowie eine direkte Speicherzugriff(DMA)-Vorrichtung 80. Die Zweikern-CPU 65 ist vorzugsweise konfiguriert als Zweikern-Zentraleinheit (CPU) einschließlich eines ersten CPU-Kerns 64 und eines zweiten CPU-Kerns 66, eines globalen Zeitgebers 62 und einer globalen Random-Access-Memory-(RAM)-Vorrichtung 68, die alle über den Bus 85 kommunizieren. Ein Takt 67 arbeitet bei einer geeigneten Drehzahl, die bevorzugt eine Größenordnung von 10 MHz in bestimmten Ausführungsformen aufweist. Der SDADC 70 ist eine Doppelkanal-Analog/Digital-Umwandler-Vorrichtung, die einen Überabtastungsmodulator, sukzessive Approximation und einen digitalen Dezimationsfilter zum Erzeugen hochauflösender digitaler Signale aus analogen Niederfrequenz-Eingangssignalen einsetzen. Der Zweikanal-SDADC 70 beinhaltet zwei SDADC-Vorrichtungen, von denen jede vorzugsweise jeweils zum Kommunizieren mit einer der zweiten und dritten Leitungen 35, 36 eingerichtet ist, die die ersten und zweiten Ausgabesignale kommunizieren, die durch die ersten und zweiten Sekundarwicklungen 25, 26 in Reaktion auf das Erregersignal erzeugt wurden. Jede der SDADC-Vorrichtungen 70 beinhaltet einen Differenzverstärker 76 mit einer ADC 74, der ein digitales Signal erzeugt, das in einem First-in-first-out-(FIFO)-Pufferspeicher 72 gespeichert wird. Der Takt 67 treibt einen Sigma-Delta-(SD)-Takt 75 synchron mit einem CPU-Takt 79 und einem Impulsgenerator-(PG)-Takt 77 an. Der SD-Takt 75 steuert das Sequenzieren des Analog-Digital-Wandlers (ADC) 74. Der FIFO-Pufferspeicher 72 kommuniziert mit dem Bus 85. Die DMA 80 erzeugt ein Unterbrechungssignal 81 in Reaktion auf Registersignale, die von dem FIFO-Pufferspeicher 72 mitgeteilt werden. Die Mikroprozessorschaltung 60 verwendet Signalverarbeitungs-Hardware- und Software-Routinen zum Erzeugen von Hüllkurveninformationen, beispielsweise die erste Hüllkurve SINENV 412 und die zweite Hüllkurve COSENV 414, die dazu verwendet werden können, die Rotorposition θ des Winkelgebers und damit des Drehelements 16 zu ermitteln. Die erste Hüllkurve SINENV 412 und die zweite Hüllkurve COSENV 414, die mit Bezug auf 4 dargestellt sind, können aus den Ausgangssignalen SIN 402 und COS 404 unter Verwendung von analytischen hierin beschriebenen Prozessen extrahiert werden.
-
Die Zweikern-CPU 65 erleichtert das Verarbeiten von Daten aus dem Winkelgeber 20 gleichzeitig und parallel mit Ausführen der Steuerung des Elektromotors 10. Der zweite CPU-Kern 66 der Zweikern-CPU 65 ist konfiguriert zum Verarbeiten der vom SDADC 70 gelieferten Daten und zum Ermitteln von Signal-Hüllkurven-Informationen und der erste CPU-Kern 64 ist konfiguriert zum Ausführen der Motorsteuerung basierend auf den Signal-Hüllkurven-Informationen, die vom zweiten CPU-Kern 66 abgegeben werden. Der SDADC 70 und der Impulsgeber 78 werden im Betrieb synchronisiert und sie teilen sich gemeinsam den SD-Takt 75 mit dem globalen Zeitgeber 62. Als solche haben der SD-Takt 75, der PG Takt 77 und der CPU-Takt 79 einen gemeinsamen Takt 67 und sind miteinander synchronisiert. Der Impulsgeber 78 erzeugt einen Rechteckimpuls oder modulierte Impulsfolge, die durch das Tiefpassfilter oder Bandpassfilter 54 gefiltert werden, das durch den Differenz-Ausgangs-Verstärker 53 zum Bilden eines analogen sinusförmigen Referenzsignals verstärkt wird. Das analoge sinusförmige Referenzsignal wird der Erregerwicklung 23 über erste Leitungen 33 mitgeteilt und dient als Anregungssignal, das die Primärwicklung des Winkelgebers 20 antreibt. Die von den Winkelgeber-Sekundärwicklungen SIN 402 und COS 404 empfangenen Signale werden durch den SDADC 70 abgetastet. In der gezeigten Ausführungsform werden die über Leitungen 35 kommunizierten SIN+/SIN Signale und die über Leitungen 36 kommunizierten COS+/COS– Signale durch einen der Differenzverstärker 76 geleitet und durch die ADC 74 abgetastet. Der SDADC 70 kann stetig laufen oder alternativ programmiert werden zum Umwandeln einer festgelegten Anzahl von Abtastungen. Jedes Signal wird vorzugsweise ein ganzzahliges Vielfaches von N mal der Erregungsfrequenz fe umgewandelt, worin N bevorzugt größer als drei ist, um den Alias-Effekt zu vermeiden. Wenn zum Beispiel die Erregungsfrequenz 10 kHz beträgt, kann N 10 sein. Der SDADC 70 kann konfiguriert werden, kontinuierlich bei N × 10 kHz = 100 kHz zu laufen, der SDADC 70 kann konfiguriert werden, N = 10 Abtastungen von Daten jede 10 μs (= 1/100 kHz) an der ansteigenden (oder fallenden) Kante des Ausgangs des Impulsgebers 78 abzutasten und die Aktionen an der nächsten steigenden (oder fallenden) Kante des Ausgangs des Impulsgebers 78 wieder zu starten. Die DMA 80 ordnet den Betrieb zum Ziehen von Daten von jedem der FIFO-Pufferspeicher 72 an, wenn die Anzahl erwarteter Abtastungen in einem Zyklus erfüllt ist und bewegt die Daten zum Speichern in die globale Speichervorrichtung 68.
-
5 stellt grafisch die Daten mit dem Betrieb der Elemente der Zweikern-CPU 65 dar, um ein unabhängiges paralleles Verarbeiten von Daten von dem Winkelgeber 20 sowie Steuern des Elektromotors 10 zu erreichen. Graphisch dargestellte Parameter beinhalten einen Zähler 510, der Ausgang des Impulsgebers 78 ist, einen Impulsgeneratorausgang 520 in Form eine mäanderförmigen Tastverhältnisses, das Ausgangssignal von dem Impulsgenerator 78 ist, ADC-Abtasten 530, das Ausgang vom SDADC 70 ist, Datenübertragungs-Ereignis-540-Ausgabe von dem DMA 80, Hüllkurven-Erfassungs-Ereignis-550-Ausgang von der zweiten CPU 66 und Ausführen der Motorsteuerungssoftware 560 von der ersten CPU 64, allesamt im Verhältnis zur einer gemeinsamen Zeitbasis 570, die Ausgang ist vom globalen Zeitgeber 62.
-
Der Impulsgeber 78 setzt den Wert des Zählers 510 zurück, wenn der Zählwert gleich dem Erregungszeitraum te 515 wird, was das Gegenteil der umgekehrten Anregungsfrequenz fe oder 1/fe ist. Ist der Zähler 510 auf null zurückgesetzt, wird der Impulsgenerator-Ausgang 520 eingestellt, eine 50% Belastung aufzuweisen. In diesem Beispiel wird N = 16 verwendet. Der SDADC 70 initiiert ADC-Abtasten 530 mit der ansteigenden Kante des Impulsgeber-Ausgangs 520 und sammelt Daten mit einer Rate von jedem 1/16fe. Wenn die gesammelte Anzahl von Daten in jedem Kanal (SIN 402 und COS 404) N wird wie bei 531, 532 und 533 gezeigt, initiiert die DMA 80 Datenübertragung von dem FIFO-Pufferspeicher 72 zur globalen Speichervorrichtung 68 ohne Belasten entweder der ersten CPU 64 oder der zweiten CPU 66. Exemplarische DMA-Datenübertragungs-Ereignisse sind bei 541, 542, 543 angedeutet. Wenn alle Datenübertragungen abgeschlossen sind, ruft die DMA 80 Anrufe die Unterbrechungs-Serviceroutine an der zweiten CPU 66 auf, um die Hüllkurveninformationen für analoge Signale zu verarbeiten. Zu Beginn eines jeden Hüllkurven-Erfassungsereignisses 550 an der zweiten CPU 66 werden der Erregungszeitraum te des Impulsgebers und der Zeitstempel t1 des Impulsgeberausgangs 520 und die Zeitbasis 570, die den Ausgang des globalen Zeitgebers 62 darstellt, synchronisiert. Timer im Mikroprozessor zählen in binären Ganzzahlen und der globale Zeitgeber 62 kann zum Zählen für einen längeren Zeitraum und dann Überrollen konfiguriert werden. Ist die zweite CPU 66 schnell genug, um auf die DMA-Unterbrechungsanforderung zu reagieren, ist der Zeitstempel te nahe der Anfangsnummer, d. h. gleich 0 im Normalbetrieb. Durch Überwachen des Zeitstempels te kann die Synchronisierung zwischen SDADC 70 und dem Impulsgeber 78 überwacht werden. Zeitstempel t1 wird zum Erfassen des Startzeitpunkts der Chargen-Datenverarbeitung verwendet. Exemplarische Hüllkurven-Erfassungsereignisse 551, 552 und 553 sind dargestellt und folgen jeweils entsprechenden DMA-Datenübertragungs-Ereignissen 541, 542 und 543.
-
Asynchron mit der zweiten CPU-66-Hüllkurven-Erfassung fährt die erste CPU 64 eine separate Unterbrechungs-Serviceroutine zum Ausführen der Motorsteuerungssoftware 560 zum Erzeugen von PWM-Motorsteuerausgängen zum Steuern des Elektromotors 10 wie durch Elemente 561, 562, 563 und 564 angezeigt. Dies beinhaltet Erfassen und Auswerten relevanter Daten, die die Motorsteuerung einschließlich Motorposition/Drehzahl, Strom und Eingangsspannung betreffen und Berechnen der Erzeugung von Ausgabespannung, die dann basierend darauf berechnet wird. Zu Beginn einer jeden Unterbrechung erfasst die erste CPU 64 den Zeitstempel t0 des globalen Zeitgebers 62, wenn sie diskrete und analoge Eingaben für die PWM-Steuerung des Motors vorbereitet. Die Zeitdifferenz zwischen t0 und t1 dient zum Extrapolieren von Positionsinformationen θ[k] am Beginn der Motorsteuerungs-Unterbrechungs-Routine durch die erste CPU 64 in Übereinstimmung mit EQ. 4, die annimmt, dass die Drehzahl ω sich nicht für eine kurze Zeit wie während der PWM-Periode verändert. Dies stellt einen Weg zum genauen Messen der Rotorposition synchron mit dem Steuern des Elektromotors 10 dar. θ[k] = θrohe[n] + ω[k – 1] × (t0[k] – t1[n] – tversetzt), [4] worin t0[k] – t1[n] > 0; und
worin:
- θraw[n]
- eine rohe Rotorposition ist, die direkt aus den Hüllkurveninformationen des n-ten Schritts an der zweiten CPU 66 ermittelt wird;
- ω[k]
- ist eine Drehzahl, die aus der Position des k-ten Schritts an der ersten CPU 64 ermittelt wird; und
- tversetzt
- eine Kalibrierung für versetztes Einstellen der Zeit ist.
-
6 zeigt grafisch Beispiele von Signalwellenformen einschließlich einem Impulsgenerator, einem Winkelgeber-Anregungssignal und die primären und sekundären Ausgabesignale von einer Ausführungsform des Winkelgebers 20. In diesem Beispiel erzeugt der Impulsgenerator 78 eine Rechteckwelle 610 mit einem durch Element 635 angezeigten Zeitraum. Alternativ kann der Impulsgenerator 78 ein pulsweitenmoduliertes Signal erzeugen. Die Grundfrequenz, d. h. Anregungsfrequenz fe dieses Signals wird als eine Anregungssignal-Referenz angenommen wie verwendet in GL. 1. Das rechteckförmige Signal 610 durchläuft das Tiefpassfilter oder Bandpassfilter 54, um ein glattes EXC-Signal 620 zu erzeugen, um jedes beliebige Oberwellensignal zu eliminieren. Die Filterung kann eine Phasenverschiebung ϕ1 622 vom ursprünglichen Impulsgeneratorausgang 610 wie dargestellt einführen. Das EXC-Signal 620 wird der Winkelgeber-Primärwicklung 630 kommuniziert und erscheint als EXC-Signal 631 konzeptionell, wenn es in der Software im idealen Zustand zum Bilden der Maximalamplitude der Hüllkurve behandelt wird und die Signale der Sekundärwicklungen, beispielsweise SIN und COS 633, eine Amplitudenänderung durch das Übersetzungsverhältnis k und eine zusätzliche Phasenverschiebung ϕ2 632 aufgrund des Betriebs des Winkelgebers 20 und des Leitungsfilters 52 zeigen. Die Summe dieser beiden Phasenverschiebungen bildet eine gesamte Phasenverschiebung zwischen dem Anregungs-Referenzsignal und SIN/COS-Signalen am Eingang der Mikrosteuerung wie folgt: ϕ = ϕ1 + ϕ2
-
Eine erste Hüllkurve SINENV im Zusammenhang mit dem SIN-Signal von den Sekundärwicklungen und eine zweite Hüllkurve COSENV in Zusammenhang mit dem COS-Signal von den Sekundärwicklungen kann mittels Fourier-Reihen-Berechnung extrahiert werden, wenn alle Daten in einem Anregungszyklus gesammelt werden, vorausgesetzt, die Hüllkurve ändert sich langsam oder nahezu konstant während eines Anregungszeitraums. Beispiele einer ersten Hüllkurve SINENV 412, die mit dem SIN 402 verknüpft ist und einer zweiten Hüllkurve COSENV 414, die mit dem COS 404 verknüpft ist, werden dargestellt mit Bezug auf 4.
-
Die SIN
ENV und COS
ENV können berechnet werden unter Verwendung der GL. 5 und 6 jeweils mittels des bekannten Referenzsignals (einschließlich einer Software-eingeführten Phasenverschiebung ϕ
sw), worin
winnerhalb der Anregungsperiode liegt.
SINENV = 2 / NΣ N-1 / i=0SIN[i]sin( 2πi / N – ϕsw) = kEcos(ϕ – ϕsw)sinθ [5] COSENV = 2 / NΣ N-1 / i=0COS[i]sin( 2πi / N – ϕsw) = kEcos(ϕ – ϕsw)cosθ [6]
-
Diese Analyse nimmt an, dass cosϕ konstant ist, wenn die Phasenverschiebung (4) konstant ist während des Berechnens von GL. 5 und 6. Ohne die Phasenverschiebung ϕ jede der Hüllkurven eine Maximalamplitude kE auf. Das Nichtzusammenpassen der Phasenverschiebung zwischen der Hardware und Software führt cos(ϕ – ϕsw) ein, was in einer Amplitudenverringerung resultiert. Um dies zu vermeiden, werden GL. 7 und 8 als Teil der Hüllkurvenerfassung wie folgt ausgeführt: SINQUAD = 2 / NΣ N-1 / i=0SIN[i]cos( 2πi / N – ϕsw) = kEsin(ϕ – ϕsw)sinθ [7] COSQUAD = 2 / NΣ N-1 / i=0COS[i]cos( 2πi / N – ϕsw) = kEsin(ϕ – ϕsw)cosθ [8]
-
Die Ausdrücke SINQUAD und COSQUAD haben Werte ungleich Null, wenn ein Phasen-Nichtzusammenpassen auftritt und sie zum Erfassen einer tatsächlichen Hardware-Phasenverschiebung ϕ durch Einstellen von ϕsw zum Maximieren der Werte für SINENV und COSENV eingesetzt werden können, die berechnet werden können unter Verwendung von jeweils GL. 5 und 6. Die berechneten Werte für die erste Hüllkurve SINENV und für die zweite Hüllkurve COSENV können zum Ermitteln der Rotorposition θ angewendet werden und die berechneten Werte für die dritte Hüllkurve SINQUAD und die vierte Hüllkurve COSQUAD zusammen mit SINENV und COSENV können zum Ermitteln der Hardware-Phasenverschiebung ϕ angewendet werden.
-
7 zeigt schematisch Einzelheiten eines Software-Flussdiagramms für einen Unterbrechungsroutine
700, die durch eine Ausführungsform der Motorsteuerung
40 zum Bestimmen von SIN
ENV, COS
ENV, SIN
QUAD, COS
QUAD und Abtastzeit t
1 der hier beschrieben Hüllkurvenverarbeitung ausgeführt werden kann. Die Unterbrechungsroutine
700 wird vorzugsweise durch die zweite CPU
66 zum Auswerten von Daten und Ermitteln der ersten Hüllkurven SIN
ENV in Zusammenhang mit dem SIN-Signal von den Sekundärwicklungen und der zweiten Hüllkurve COS
ENV in Zusammenhang mit dem COS-Signal von der ersten und zweiten Sekundärwicklung
25,
26 des Winkelgebers
20 durchgeführt, wie beschrieben mit Bezug auf
4 und
6. Diese Unterbrechungsroutine
700 kann in der zweiten CPU
66 unmittelbar nach Vollenden jedes DMA-Datenübertragungs-Ereignisses ausgeführt werden. Exemplarische DMA-Datenübertragungs-Ereignisse
541,
542 und
543 und exemplarische Hüllkurven-Erfassungsereignisse
551,
552 und
553 sind dargestellt in
5. Zu Beginn jeder Ausführung der Unterbrechungsroutine
700 wird ein Zeitstempel t
1[n] vom globalen Zeitgeber
62 erfasst. Anschließend wird die Software-Phasenverzögerung ϕ
sw, die außerhalb dieser Routine von der ersten CPU erkannt wird, lokal kopiert, sodass eine konstante Zahl zum Erzeugen der internen Signale
SIN( 2πi / N – ϕsw) und COS( 2πi / N – ϕsw) in der folgenden Schleife verwendet wird. Anschließend werden GL. 5–8 ausgeführt zum Berechnen von Werten für die erste Hüllkurve SIN
ENV, die zweite Hüllkurve COS
ENV, die dritte Hüllkurve SIN
QUAD und die vierte Hüllkurve COS
QUAD. Tabelle 1 stellt eine Aufschlüsselung bereit, in der die numerisch gekennzeichneten Blocks und die entsprechenden Funktionen wie folgt entsprechend der Unterbrechungsroutine
700 festgesetzt sind. Tabelle 1
BLOCK | BLOCKINHALTE |
702 | Starten Unterbrechungsroutine |
704 | Zeitstempel erfassen |
706 | Phasenverzögerung erfassen |
708 | Datenpuffer initialisieren |
710 | Erfassen von Hüllkurve ausführen |
711 | Ist die Berechnung vollständig? (Durch alle Indizes?) |
712 | Erhöhung Index |
714 | Extrahieren von SINENV, COSENV und Speichern in Datenpuffer (GL. 5 und 6) |
716 | Extrahieren von SINQUAD, COSQUAD und Speichern in Datenpuffer (GL. 7 und 8) |
718 | Vorbereiten für die nächste Indexberechnung für GL. 5 bis 8 |
720 | Ausführen des Speicherns für Globalspeicher |
722 | Blockieren von Ampel |
724 | Skalieren und übertragen auf globale Speicher von
SINENV, COSENV, SINQUAD und COSQUAD aus Datenpuffer mit Daten-Reskalieren (Vervollständigen von GL. 5 bis 8) und Kopieren von Zeitstempel |
726 | Freigeben von Ampel |
730 | Unterbrechungsroutine beenden |
-
Die Unterbrechungsroutine 700 wird in der zweiten CPU 66 ausgeführt, nachdem ein DMA-Datenübertragungs-Ereignis abgeschlossen ist (702) und sie beinhaltet das Erfassen eines Zeitstempels (704) sowie einer Phasenverzögerung (706) bei Abschluss des Datenübertragungsereignisses. Der Datenpuffer wird beispielsweise als 32-Bit-Puffer (708) initialisiert und eine Hüllkurven-Berechnungsschleife 710 wird ausgeführt. Die Hüllkurven-Erfassungsschleife (710) beinhaltet Erhöhen des Index i (712). Die erste phasengleiche Hüllkurve SINENV im Zusammenhang mit den SIN-Daten und die zweite phasengleiche Hüllkurve COSENV Zusammenhang mit den COS-Daten werden aus den gespeicherten Daten extrahiert jeweils unter Verwendung von GL. 5 und 6 (714). Desgleichen werden die erste Quadrat-Hüllkurve SINQUAD im Zusammenhang mit den SIN-Daten und die zweite Quadratur-Hüllkurve COSQUAD in Zusammenhang mit den COS-Daten extrahiert jeweils unter Verwendung von GL. 7 und 8 (716). Der Phasenindex für das Anregungssignal wird erhöht (718) und die Ausführung der Hüllkurven-Erfassungsschleife (710) wiederholt sich, bis die Berechnungen nach GL. 5 bis 8 abgeschlossen sind wie durch den Index i (711)(1) angezeigt wird. Wenn der Puffer gefüllt ist (711)(1), wird eine Speicherroutine ausgeführt (720). Die Ergebnisse müssen im globalen Speicher 68 gespeichert werden, sodass die erste CPU 64, die für die Ausführung der Motorsteuerung zuständig ist, ohne Verfälschung der Daten durch die zweite CPU 66 lesen kann und das Ergebnis für das Erfassen von Position/Drehzahl und Diagnose verwenden kann. In der mehrkernigen CPU-Umgebung kann das Ergebnis nicht direkt in den globalen Speicher 68 geschrieben werden, da die erste CPU 64 das Ergebnis abrufen kann, während die zweite CPU 66 diese speichert, was ein Datenkohärenzproblem bedeuten kann. Zum Vermeiden einer solchen Situation ist eine Anzeige verriegelt (722) zum Verhindern, dass die zweite CPU 66 schreibt oder anderweitig auf den gemeinsamen globalen Speicher 68 beim Datentransfer zugreift. Die Daten in Form des Zeitstempels und der SINENV, COSENV, SINQUAD, COSQUAD Werte im Datenpuffer werden in den gemeinsamen globalen Speicher 68 (724) übertragen und die Anzeige wird freigegeben, um der zweiten CPU 66 den Zugriff auf den gemeinsamen globalen Speicher 68 (726) zu ermöglichen. Diese Iteration der Unterbrechungsroutine 700 endet nach dem Datentransfer (730). Die Motor Steuerroutine liest Motorstrom, die Wechselrichter-Eingangsspannung und Positions-/Drehzahl-Informationen von dem Sensor aus und ermittelt die Ausgabespannung des Wechselrichters zum Steuern des Motorstroms, Drehmoments und der darauf basierenden Drehzahl.
-
Die Motorsteuerroutine in der ersten CPU 64 kann bei einer festen oder variablen Schaltfrequenz beispielsweise zwischen 2 kHz und 20 kHz laufen. Zu Beginn der Motorsteuerroutine in der ersten CPU 64 müssen die Motorinformationen für die Motorsteuerung zum Bereitstellen der besten Leistungsfähigkeit erfasst werden. Zuerst wird der Zeitstempel des globalen Timers erfasst zum Erfassen von t0[k] in GL. 4. Anschließend muss die Routine Daten aus dem globalen Speicher unter Verwendung des Semaphors auslesen. Die Motorsteuerroutine liest Motorstrom, die Wechselrichter-Eingangsspannung und Positions-/Drehzahl-Informationen von dem Sensor und bestimmt die Ausgabespannung des Wechselrichters zum Steuern des Motorstroms, Drehmoments und der Drehzahl
-
Somit können ein Satz Signale, SINENV, COSENV, SINQUAD, COSQUAD und Zeitstempel t0 und t1 zum Ermitteln von Motordrehzahl und Position ohne Zeitverzögerungen erzeugt werden, die in die CPU 64 eingefügt werden können. Die hier beschriebenen Konzepte stellen eine systematische Weise zum Verarbeiten der rohen Signale zur Berechnung von Rotorposition, Rotordrehzahl und einer Phasenverschiebung ϕ bereit. In bestimmten Ausführungsformen kann die Rotorposition θ aus den Zuständen für SINENV und COSENV wie folgt ermittelt werden und es kann zahlreiche andere Wege des Ausführens und Filterns der Berechnung basierend auf allen in der zweiten CPU erfassten Informationen geben. θrohe = tan–1(COSENV, SINENV) [9]
-
Wie ein nicht einschränkendes Beispiel der Motorsteuerung unter Verwendung eines PWM-Wechselrichters erfasst die Steuerung 50 die Motorposition, Motordrehzahl, den Motorstrom und die Wechselrichter-Eingangsspannung. Diese Eingänge dienen zum Ermitteln der Motorausgangsspannung am nächsten PWM-Zyklus unter Verwendung einer PI-Steuerung. Vorzugsweise sollten alle diese Signale gleichzeitig zur Vermeidung von Abbau der Leistungsfähigkeit aufgrund der Signalverzögerung zwischen dem Eingang und dem Ausgang. Bei den analogen Signalen wie dem Motorstrom und der Invertereingangsspannung können diese mit der Ausgangs-PWM-Periode oder der Zykluszeit für die Ausführung der Motorsteuerungs-Software 560 synchronisiert werden.
-
Die rohe Motorposition (die entweder in CPU0 oder CPU1 berechnet werden kann) θraw kann verwendet werden wie in EQ. 4 zum Berechnen der genauen Position zur Motorsteuerung. Auf diese Weise kann die ordnungsgemäße Motorposition θ[k], die synchronisiert ist mit dem Ausführen der Motorsteuerungssoftware 560, ebenso wie der Motorstrom und die Wechselrichterspannung wie beschrieben erhalten werden. Die Motordrehzahl ω kann aus dem Inkrement von θ bei ordnungsgemäßem Verarbeiten ermittelt werden.
-
Somit kann der hier beschriebene Betrieb zum Umwandeln von Winkelgeberdaten zu digital lesbaren Daten zum Verwenden beim Erfassen von Position, Drehzahl und Fehlererkennung unter Verwendung von Software ausgeführt werden, die durch einen Mehrkernprozessor auf Basis von Informationen von konventionellen Peripheriegeräten ohne die Notwendigkeit einer speziellen RDC-(Winkelgeber-zu-Digital Wandler)-integrierten Schaltungsvorrichtung ausgeführt werden. Ein synchronisierter Impulsgeber ersetzt den Oszillator (OSC) und der Prozessor liest die analogen Signale direkt nach dem Leitungsfilter. Der CPU-Kern steuert den Impulsgeber- und A/D-Wandler-Zeitpunkt. Der CPU-Kern berechnet das EXC-Signal (1) und sendet es durch den Impulsgenerator aus, was eventuell EXC+ und EXC– wird. Der A/D-Wandler tastet SIN+, SIN–, COS+ und COS–-Signale ab, die mit dem Anregungssignal EXC synchronisiert wurden.
-
Die Ausdrücke Steuerung, Steuermodul, Modul, Steuerung, Steuereinheit, Prozessor und ähnliche Ausdrücke beziehen sich auf eine oder mehrere Kombinationen anwendungsspezifischer integrierter Schaltkreise (ASIC), elektronische(r) Schaltkreis(e), Zentraleinheit(en) wie z. B. Mikroprozessor(en) und diesen zugeordneten nicht flüchtigen Speicherkomponenten in Form von Speicher- und Speichergeräten (Lesespeicher, programmierbarer Lesespeicher, Direktzugriff, Festplatte usw.). Die nicht flüchtige Speicherkomponente ist in der Lage, maschinenlesbare Anweisungen in Form eines oder mehrerer Software- oder Firmware-Programme oder -Routinen, kombinatorischen Logikschaltung(en), Eingangs-/Ausgangsschaltung(en) und -Vorrichtungen, Signalaufbereitungs- und Pufferschaltungen und anderen Komponenten zu speichern, auf die von einem oder mehreren Prozessoren zugegriffen werden kann, um eine beschriebene Funktionalität bereitzustellen. Ein- und Ausgabeschaltungen und -vorrichtungen beinhalten Analog-/Digitalwandler und verwandte Vorrichtungen, die Eingaben von Sensoren mit einer vorgegebenen Abruffrequenz oder als Reaktion auf ein Auslöseereignis überwachen. Software, Firmware, Programme, Anweisungen, Steuerroutinen, Code, Algorithmen und ähnliche Ausdrücke beziehen sich auf jedwede von einer Steuerung ausführbare Befehlssätze einschließlich Kalibrierungen und Nachschlagetabellen. Jede Steuerung führt für die gewünschten Funktionen (eine) Steuerroutine(n) aus, so auch die Überwachung der Eingaben von Sensorgeräten und anderen vernetzten Steuerungen und führt Steuer- und Diagnoseroutinen zum Steuern der Betätigung von Stellgliedern durch. Die Routinen können in regelmäßigen Intervallen ausgeführt werden, wie z. B. während des laufenden Betriebs alle 100 Mikrosekunden. Alternativ können Routinen als Reaktion auf ein Auslöseereignis ausgeführt werden. Die Kommunikation zwischen den Steuerungen und zwischen Steuerungen, Stellgliedern und/oder Sensoren kann über eine Direktverkabelung, eine vernetzte Kommunikationsbus-Verbindung, eine drahtlose Verbindung oder jede andere geeignete Kommunikationsverbindung bewerkstelligt werden. Kommunikationsinhalte beinhalten das Austauschen von Datensignalen auf jede beliebige geeignete Art und Weise, einschließlich z. B. elektrischer Signale über ein leitfähiges Medium, elektromagnetischer Signale über die Luft, optischer Signale über Lichtwellenleiter und dergleichen. Datensignale können unter anderem Signale umfassen, die Eingaben von Sensoren repräsentieren, Signale, die Stellgliedbefehle und Kommunikationssignale zwischen Steuerungen repräsentieren. Der Ausdruck „Modell” bezeichnet einen prozessorbasierten oder einen mittels des Prozessors ausführbaren Code und der zugehörigen Kalibrierung, die die physische Existenz einer Vorrichtung oder eines physischen Prozesses simuliert. Wie hier verwendet beschreibt der Begriff „dynamisch” Schritte oder Prozesse, die in Echtzeit ausgeführt werden und durch das Überwachen oder sonstige Ermitteln von Parameterzuständen und dem regelmäßigen oder periodischen Aktualisieren von Parameterzuständen beim Ausführen einer Routine oder zwischen Iterationen beim Ausführen der Routine gekennzeichnet sind.
-
Das Flussdiagramm und die Blockdiagramme in den Flussdiagrammen veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedener Ausführungsformen der vorliegenden Offenbarung. In dieser Hinsicht kann jeder Block in den Flussdiagrammen oder Blockdiagrammen ein Modul, ein Segment oder einen Abschnitt eines Codes darstellen, der zum Implementieren der spezifizierten logischen Funktion(en) einen oder mehrere ausführbare Befehle umfasst. Es wird auch darauf hingewiesen, dass jeder Block der Blockdiagramme und/oder Flussdiagrammdarstellungen und Kombinationen von Blöcken in den Blockdiagrammen und/oder Flussdiagrammdarstellungen durch Spezialzweck-Hardware-basierte Systeme, die die spezifizierten Funktionen oder Vorgänge durchführen, oder Kombinationen von Spezialzweck-Hardware und Computerbefehlen implementiert werden können. Diese Computerprogrammanweisungen können auch in einem computerlesbaren Medium gespeichert sein, das einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung steuern kann, um in einer bestimmten Art und Weise zu funktionieren, sodass die in dem computerlesbaren Medium gespeicherten Befehle einen Herstellungsartikel erzeugen, einschließlich Anweisungsmitteln, die die Funktion/Vorgang, der in dem Flussdiagramm und/oder Blockdiagrammblock oder Blöcken angegeben ist, implementieren.
-
Die ausführliche Beschreibung und die Zeichnungen oder Figuren unterstützen und beschreiben die vorliegenden Lehren, doch wird der Umfang der vorliegenden Lehren einzig und allein durch die Ansprüche definiert. Während ein paar der besten Arten und Weisen und weitere Ausführungsformen der vorliegenden Lehren ausführlich beschrieben wurden, gibt es verschiedene alternative Konstruktionen und Ausführungsformen zur Umsetzung der vorliegenden Lehren in den angehängten Ansprüchen.