Entwurf und Aufbau einer digitalen Strom- und Drehzahlregelung für eine permanentmagneterregte Synchronmaschine
- Art: Diplomarbeit
- Autor: Rüdiger Kusch
- Abgabedatum: September 1998
- Umfang: 270 Seiten
- Dateigröße: 1,7 MB
- Note: 0,7
- Institution / Hochschule: Technische Universität Carolo-Wilhelmina zu Braunschweig Deutschland
- ISBN (eBook): 978-3-8324-2620-0
-
ISBN (Paperback) :
978-3-8324-2620-0 P - ISBN (CD) :978-3-8324-2620-0 CD
- Sprache: Deutsch
- Prämierung:
- Arbeit zitieren: Kusch, Rüdiger September 1998: Entwurf und Aufbau einer digitalen Strom- und Drehzahlregelung für eine permanentmagneterregte Synchronmaschine, Hamburg: Diplomica Verlag
- Schlagworte: feldorientierte Regelung, Drehmomentwelligkeit, Mikroprozessor, permanenterregte Synchronmaschine, Rotorkoordinate
In den Warenkorb
38,00 €
Diplomarbeit von Rüdiger Kusch
Beinleitung:
ei der Konzeption und Auslegung eines elektrischen Antriebssystems müssen im wesentlichen Punkte wie Oberwellengehalt, Pendelmomente, Schaltverluste, Regeldynamik und Verhalten bei nicht-stationärem Betrieb untersucht werden. Diese Arbeit hat auf Basis eines konfigurierbaren Mikrocontrollers die Grundlage hierfür geschaffen. Der elektrische Antrieb ist eine Synchronmaschine mit permanenterregtem Axialfeld und Ringkernwicklung (SPARK). Um beim verwendeten spannungseinprägenden Zwischenkreisumrichter die bestmögliche Ausnutzung zu erwirken, wird die Raumzeiger-Pulsweitenmodulation verwendet. Die Regelung ist als feldorientierte Regelung in rotorbezogenen (d,q)-Koordinaten realisiert.
Gang der Untersuchung:
Der erste Teil der Arbeit bestand darin, die vorhandenen Hardwarekomponenten an das SAB80C167-Evaluation Board anzupassen. Aus den Phasenströmen (LEM-Module) und der absoluten Rotorlage (Resolver) wurde ein Pulsmuster generiert, das einen 3-phasigen Brückenwechselrichter ansteuert. Die Stromsignale sind sinusförmige Signale und werden über ein Eingangsfilter der Analogeinheit zugeführt.
Im zweiten und umfangreicheren Teil wurden die C-Routinen für die feldorientierte Regelung implementiert und optimiert. Mit Hilfe des Satzes nichtlinearer Differentialgleichungen, die die Synchronmaschine beschreiben, wurde der geschlossene Regelkreis entwickelt. Somit entstand die bekannte kaskadenförmige Reglerstruktur mit PI-Stromregler, I-Drehzahlregler und P-Lageregler. Um für den Stromregelkreis eine Zykluszeit von 400µs erreichen zu können, ist das Zahlenformat durchgängig Integer. Die bezüglich der Verarbeitungsgeschwindigkeit erzielten Ergebnisse sind im Vergleich zu bisherigen DSP-basierende Lösungen recht zufriedenstellend. Benötigte mathematische Funktionen sind als Iterationen bzw. als eine LUT (look-up table) realisiert. Es wurde eine angemessene Skalierung der Größen vorgenommen, damit der sich fortpflanzende Fehler möglichst gering bleibt. Der Mikroprozessor 80C167 besitzt einige Funktionen, die für embedded control Anwendungen von Interesse sind. Hierbei sind beispielsweise die A/D-Wandlung mittels PEC Pipeline, die fast external Interrupts, die „on-the-fly“ einstellbare PWM-Einheit und nicht zuletzt das CAN-Bus Modul zu nennen. Die betriebene Maschine läßt sich in Strom und Drehzahl regeln, bei zu wählender Schaltfrequenz zwischen 1kHz und 14kHz. Der Regelmodus, der Sollwert und die maschinenabhängigen Parameter werden über die serielle Schnittstelle heruntergeladen. Ferner ist ein Steuermodus für eine Asynchronmaschine realisiert, in dem ein Betragszeiger mit einer festen Umlaufgeschwindigkeit eingeprägt wird. Der Betriebsmodus und die Betriebsparameter werden auf einem LCD-Display ausgegeben.
Den Abschluss der Arbeit bildete die Messung der Stromrippel bei unbelasteter und belasteter Maschine, des Stromverlaufs und des Verhaltens beim Reversiervorgang und Sollwertsprung.
Inhaltsverzeichnis:
| 1. | Einleitung | |
| 2. | Grundlagen | |
| 2.1 | Maschinenmodell in Pollagekoordinaten | 3 |
| 2.2 | Transformation der Phasenströme (3 -> 2) | 11 |
| 2.3 | Transformation in Rotorkoordinaten (a,b) -> (d,q) | 11 |
| 2.4 | Transformation in Statorkoordinaten (d,q) ->(a,b) | 12 |
| 2.5 | Das Prinzip der feldorientierten Regelung | 12 |
| 2.6 | Maschinenparameter | 13 |
| 2.7 | Mikrorechner für die digitale Regelung | 13 |
| 2.8 | Realisierung der mathematischen Funktionen | 15 |
| 2.8.1 | Die Quadratwurzeliteration | 15 |
| 2.8.2 | Reihenentwicklung der Funktion arctan(x) | 16 |
| 2.8.3 | Interpolation der Funktion arctan(x) | 17 |
| 2.9 | Das Shannonsche Abtasttheorem | 21 |
| 2.10 | Ansätze bei der Reglerauswahl | 22 |
| 2.10.1 | Beschreibung der zeitdiskreten Regelstruktur | 24 |
| 2.10.2 | Auslegung der Regler | 24 |
| 2.10.3 | Zeitverhalten der Regelung | 26 |
| 2.11 | Verluste im Wechselrichter | 26 |
| 3. | Die Hardware | |
| 3.1 | Die Architektur des C167 | 27 |
| 3.1.1 | Übersicht | 27 |
| 3.1.2 | Speicherorganisation | 28 |
| 3.1.3 | Das externe Bus-Interface | 30 |
| 3.1.4 | Konfiguration des Externen Bus Controllers (EBC) | 33 |
| 3.1.5 | Registerbänke | 36 |
| 3.1.6 | Speichermodelle | 37 |
| 3.1.7 | Anbindung externer Speicherbausteine | 38 |
| 3.2 | Das Entwicklungsboard | 40 |
| 3.2.1 | Der RAM-Monitor | 40 |
| 3.2.2 | Programmdownload ins Flash | 41 |
| 3.2.3 | Verwendete Hardware | 42 |
| 3.2.4 | Jumperkonfigurationen | 43 |
| 3.2.5 | Firmware / Technische Daten | 46 |
| 3.2.6 | Speicherverwendung | 47 |
| 3.2.7 | Das serielle Interface | 47 |
| 3.2.8 | Pinbelegung | 48 |
| 3.2.9 | Anbindung externer Hardware | 49 |
| 3.2.10 | Verwendung der Timer/Counter für die Positionserfassung und Geschwindigkeitsmessung | 54 |
| 3.2.11 | Die Resolver-Gebersignale | 57 |
| 3.2.12 | Das Resolverkabel | 58 |
| 3.2.13 | Das LCD-Display | 58 |
| 3.2.14 | Die Schnittstelle zum Umrichter | 61 |
| 4. | Steuerverfahren | |
| 4.1 | Einleitung | 66 |
| 4.2 | Prinzip der Raumzeigermodulation | 67 |
| 5. | Softwarebeschreibung | |
| 5.1 | Einleitung | 74 |
| 5.2 | Der Keil Compiler V3.11 | 75 |
| 5.2.1 | Compiler- und Linkeroptionen | 75 |
| 5.2.2 | Die Datentypen | 77 |
| 5.3 | Präprozessoranweisungen für das bedingte Übersetzen | 79 |
| 5.4 | Modulare Programmierweise | 81 |
| 5.5 | PEC Transfers | 82 |
| 5.6 | Die A/D-Wandlung | 85 |
| 5.7 | Die A/D-Wandlung mit PEC-Kanal 2 | 86 |
| 5.8 | Die Pulsweitenmodulation (PWM) | 88 |
| 5.9 | Die Verwendung der Timer und Counter | 89 |
| 5.10 | Die Geschwindigkeitsmessung | 91 |
| 5.10.1 | Vorabbetrachtungen | 91 |
| 5.10.2 | Die CAPREL-Einheit | 92 |
| 5.10.3 | Fehlerbestimmung | 100 |
| 5.11 | Probleme beim bedingten Initialisieren der PEC Transfers | 101 |
| 5.12 | Messen der Zwischenkreisspannung | 102 |
| 5.13 | Serielles Lesen des Polradwinkels | 103 |
| 5.14 | Die Stringausgabe auf die serielle Schnittstelle | 104 |
| 5.15 | Zeichenausgabe auf das LCD-Display | 105 |
| 5.16 | Die Strommessung | 107 |
| 5.16.1 | Synchronisation der Strommessung | 110 |
| 5.17 | Die Run-Time-Library | 111 |
| 5.18 | Verwendete Funktionen | 112 |
| 5.19 | Die serielle Kommunikation (RS232) | 115 |
| 5.19.1 | Einstellen der Baudrate | 115 |
| 5.19.2 | Ändern der Schaltfrequenz f PWM | 116 |
| 5.19.3 | Einstellen des Betriebsmodus' | 116 |
| 5.19.4 | Schnelle Datenanforderung | 117 |
| 5.20 | Beschreibung der Betriebsmodi | 118 |
| 5.20.1 | Der Monitormodus | 118 |
| 5.20.2 | Abgleich der Nullposition Rotorfeld / Statorfeld | 119 |
| 5.20.3 | Der Steuermodus | 121 |
| 5.20.4 | Der Betrieb mit/ohne Wicklungsdrossel | 125 |
| 5.20.5 | Der Stromregelmodus | 125 |
| 5.20.6 | Der Drehzahlregelmodus | 131 |
| 5.20.7 | Der Fehlermodus | 134 |
| 5.21 | Systemparameter | 136 |
| 5.22 | Realisierung der Regler | 138 |
| 5.22.1 | Der I-Regler | 139 |
| 5.22.2 | Der PI-Regler | 140 |
| 5.22.3 | Der P-Regler | 140 |
| 5.23 | Wahl der Skalierungsfaktoren | 140 |
| 5.23.1 | Skalierungsfaktoren bei der Multiplikation von Zahlen im long-Format | 144 |
| 5.24 | Überstrom-Schutzmaßnahmen | 144 |
| 5.24.1 | Diskrete Realisierung der Überstromabschaltung | 147 |
| 5.25 | Probleme während der Erprobung | 148 |
| 6. | Messergebnisse | |
| 6.1 | Die Phasenströme | 151 |
| 7. | Zusammenfassung | |
| 7.1 | Ausblick | 163 |
| A. | Sourcecode und Platinenlayout | |
| A.1 | Liste erstellter Dateien | 164 |
| A.2 | Input-Platine | 167 |
| A.2.1 | Bestückungsplan | 167 |
| A.2.2 | Layout Bestückungsseite | 168 |
| A.2.3 | Layout Lötseite | 169 |
| A.2.4 | Teileliste | 170 |
| A.3 | Das LCD-Display | 171 |
| A.3.1 | Bestückungsplan | 171 |
| A.3.2 | Layout Bestückungsseite | 172 |
| A.3.3 | Layout Lötseite | 173 |
| A.3.4 | Teilelisten | 174 |
| A.4 | Phytec kitCON-167 - Platine | 174 |
| A.4.1 | Verwendete Signale | 174 |
| A.5 | GAL-Gleichungen | 176 |
| Literaturverzeichnis | 178 |
Der C167 verfugt uber vier unabh¨ngige PWM Kan¨le, die in verschiedenen Modi betrieben a a ¨ ¨ werden konnen. Detaillierte Beschreibungen sind in [13] zu finden. Fur die PWM zur Wechsel¨ ¨ richteransteuerung eignet sich gut die symmetrische Pulsweitenmodulation, wie sie vom C167 unterstutzt wird. Im Kern besteht die PWM-Einheit aus vier unabhangigen 16 Bit PWM¨ ¨ Timern (PTx), je einem Komparator, vier Shadow-Registern, vier Periodenregistern (PPx) und den zugehorigen Werteregistern (PWx). Der Wert in dem Werteregister PWx, welches ¨ die aktuelle Pulsweite enthalt, wird in das Shadow-Register geladen und mit dem aktuellen ¨ Counterstand (PTx) verglichen. Wenn der Counterstand einen Wert erreicht hat, der gleich oder großer dem des Shadow-Registers ist, so wird der entsprechende Ausgangspin auf ’High’ ¨ gesetzt. ¨ Anlich ist die Arbeitsweise fur die Einstellung der Zyklusperiode. Der im Periodenregister ¨ (PPx) abgelegte Wert wird ebenfalls in ein Shadow-Register geladen. Stellt der Comparator eine Gleichheit zwischen diesem Wert und dem aktuellen Counterstand fest, so wird in diesem Modus die Zahlrichtung des Counters ungedreht. Nachteilig ist, daß fur kleine Schaltfrequen¨ ¨ zen die Auflosung kleiner wird. ¨ Alle Referenztimer sind mit dem CPU-Takt fCP U = 20 MHz getaktet, so daß sich eine Timerauflosung von 50ns ergibt. Mit der gewuschten PWM-Frequenz fP W M ergibt sich der Wert im ¨ ¨ Periodenregister fur den Mode 1 (maximale PWM-Periode ist das 2-fache der Timerperiode) ¨ somit zu < P P x >= 1 20M Hz · − 1. 2 fP W M (5.1) [...]
Die Funktion IO GetADC(n), die den 10 Bit Wert der A/D-Wandlung des Kanals n zuruckgibt, kann somit verkurzt werden auf ¨ ¨ WORD IO_GetADC(BYTE ch_nr) { return(ADC_val[ADC_CNT-1-ch_nr] &= 0x03FF); } Der ausgewahlte Kanal wird aus dem Zielarray herausgesucht und die oberen 6 Bits werden ¨ abgeschnitten. ADC CN T ist die Anzahl der ausgewerteten Analogkanale und ch nr ist ¨ die ubergebene Kanalnummer (0..ADC CNT-1). Mit Hilfe eines PEC Services ist es nun ¨ moglich, einen neuen Analogwert nach 2,1µs zu bekommen. Die meiste Zeit entf¨llt hiera ¨ bei auf den Sprung und Rucksprung in die Funktion IO GetADC(n). Eine beschleunigte ¨ Abarbeitung konnte hier erreicht werden, indem die Zeile an der entsprechenden Stelle im ¨ Quelltext direkt fur jeden einzelnen Kanal eingefugt wird. An dieser Stelle sei angemerkt, daß ¨ ¨ die A/D-Wandlung selbst nicht beschleunigt werden kann. Die Wandelzeit dauert immer noch tc = 9, 7µs. Jedoch kann durch Nutzung der PEC Resourcen die Zeit zwischen dem Beginn der Wandlung und Abschluß des letzten Kanals fur die Programmabarbeitung genutzt werden. ¨ Es muß praktisch nur noch auf eine Interruptanforderung reagiert werden, im Gegensatz zu vier einzelnen Anforderungen. [...]
Das bisher verfolgte Konzept, daß die A/D-Wandlung im injection mode bei Aufruf der Funktion IO GetADC(n) durchgefuhrt wird, soll nun durch einen PEC Service beschleunigt ¨ werden. Dazu wird der PEC Transfer in Kanal 2 vier mal ausgefuhrt. Ausgelost wird der ¨ ¨ PEC Transfer durch die Anforderung eines ADC-Interrupts nach Abschluß einer Wandlung. Die A/D-Wandlung geschieht im Modus auto scan continous conversion. Damit nicht standig ¨ gewandelt wird, sondern nur dann, wenn ein neues Ergebnis gewunscht ist, wird in einer Task ¨ die Wandlung durch setzen von ADST=1 gestartet. Sind die vier PEC Transfers abgearbeitet, wird in einer ISR die Wandlung gestoppt und der PEC Kanal auf einen neuen Transfer vorbereitet. Der unten gezeigte Auszug aus dem Quelltext zeigt die Umsetzung. #pragma PECDEF (2) // Kanal 2 reservieren [...]
In den Warenkorb
38,00 €
Link zur Arbeit:
http://www.diplom.de/ean/9783832426200
Arbeit zitieren:
Kusch, Rüdiger September 1998: Entwurf und Aufbau einer digitalen Strom- und Drehzahlregelung für eine permanentmagneterregte Synchronmaschine, Hamburg: Diplomica Verlag
Schlagworte:
feldorientierte Regelung, Drehmomentwelligkeit, Mikroprozessor, permanenterregte Synchronmaschine, Rotorkoordinate



