03.11.2013 Aufrufe

PI con Anti-Windup - Repositorio Digital de la Universidad de ...

PI con Anti-Windup - Repositorio Digital de la Universidad de ...

PI con Anti-Windup - Repositorio Digital de la Universidad de ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine<br />

feldorientierte Motorregelung für ein<br />

Elektrofahrzeug<br />

Bachelorthesis - Abschlussprojekt<br />

Autor: Luis Alfonso Puertol<strong>la</strong>no Ventura<br />

Studienbereich: Elektro- und Informationstechnik<br />

Matrikelnummer: 23 50 38 2<br />

Erstprüfer: Prof. Dr.- Ing. Armin Dietz<br />

Zweitprüfer: Prof. Dr.- Ing. Norbert Graß<br />

Datum: 23/08/2012<br />

[Escriba aquí una <strong>de</strong>scripción breve <strong>de</strong>l documento. Normalmente, una <strong>de</strong>scripción breve es<br />

un resumen corto <strong>de</strong>l <strong>con</strong>tenido <strong>de</strong>l documento. Escriba aquí una <strong>de</strong>scripción breve <strong>de</strong>l<br />

documento. Normalmente, una <strong>de</strong>scripción breve es un resumen corto <strong>de</strong>l <strong>con</strong>tenido <strong>de</strong>l<br />

documento.]


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Einleitung<br />

Die Arbeit wur<strong>de</strong> in Rahmen <strong>de</strong>s europeischen Stu<strong>de</strong>ntenAustauschprogramms ERASMUS am<br />

Institut ELSYS durchgeführt.<br />

Es geht um die Programmierung und Steuerung <strong>de</strong>s Motors eines bereits vorhan<strong>de</strong>nen<br />

Elektrofahrzeugs (E-Buggy). Für das Fahrzeug braucht man verschie<strong>de</strong>ne Komponenten, wie<br />

einen Umrichter <strong>de</strong>r von einem Mikro<strong>con</strong>troller gesteuert und geregelt wird, an<strong>de</strong>re<br />

Leistungselektronik Elemente, sowie ein kleines Batteriemanagement.<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 1


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Inhaltsverzeichnis<br />

A. Abkürzungsverzeichnis .......................................................................................................... 3<br />

1. Zusammenfassung ................................................................................................................. 4<br />

2. Vergleich <strong>de</strong>r Reglertypen ..................................................................................................... 5<br />

3. <strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> .................................................................................................... 6<br />

3.1. Eigenschaften <strong>de</strong>s <strong>PI</strong>-Reglers ........................................................................................ 7<br />

3.2. <strong>Anti</strong>-<strong>Windup</strong> Metho<strong>de</strong> .................................................................................................. 9<br />

4. Realisierung <strong>de</strong>s <strong>PI</strong>-Reglers ................................................................................................. 14<br />

4.1. <strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong>-Funktionalität .................................................................. 15<br />

4.1.1. Initialisierung ....................................................................................................... 15<br />

4.1.2. Berechnung und <strong>Anti</strong>-<strong>Windup</strong>-Algorithmus........................................................ 16<br />

4.1.3. Ergebnisse ........................................................................................................... 17<br />

4.1.4. Einstellungen <strong>de</strong>s Reglers .................................................................................... 23<br />

4.2. Hauptprogramm .......................................................................................................... 24<br />

B. Literaturverzeichnis ............................................................................................................. 25<br />

C. Anhang ................................................................................................................................ 26<br />

C.1. Mikro<strong>con</strong>trollers Infineon XC2287M ................................................................................ 26<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 2


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

A. Abkürzungsverzeichnis<br />

µC Mikro<strong>con</strong>troller<br />

FOC<br />

Feldorientierte Regelung (engl. Field Oriented Control)<br />

PWM<br />

Pulsenweitenmodu<strong>la</strong>tion<br />

PMSM<br />

Permanenterregte Synchronmaschine (engl. Permanent Magnet<br />

Synchronous Motors)<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 3


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

1. Zusammenfassung<br />

Das Projekt E-Buggy hat zum Ziel <strong>de</strong>r Bau eines Elektrofahrzeugs (E-Buggy). Dafür wur<strong>de</strong>n<br />

verschie<strong>de</strong>ne Teams gebil<strong>de</strong>t, welche sich verschie<strong>de</strong>nen Teilprojekten gewidmet haben. Dazu<br />

gehört das Design <strong>de</strong>s Fahrzeuges, die Untersuchung <strong>de</strong>r Batterie und das Programmieren <strong>de</strong>r<br />

Leistungelektronik. Ich persönlich habe mich beson<strong>de</strong>rs mit <strong>de</strong>r Motorregelung beschäftigt.<br />

Für die Steuerung <strong>de</strong>r PMSM, wird die feldorientierte Regelung (Field Oriented Control, FOC)<br />

genutzt (Abb. 1). Dafür war es zunächst nötig zu lernen, wie je<strong>de</strong>s Tei<strong>la</strong>ufgabe funktioniert.<br />

Dazu gehört zum Beispiel: die Anwendung <strong>de</strong>r Park- und C<strong>la</strong>rk-Transformationen, die Funktion<br />

<strong>de</strong>s Umrichters, das Programmieren eines <strong>PI</strong>-Reglers in C für <strong>de</strong>n Infineon µC XC2287M.<br />

Für diesen Teil <strong>de</strong>r Arbeit, hat man sich in <strong>de</strong>r <strong>PI</strong>-Regler beschäftigt. So kann man mit <strong>de</strong>m<br />

Elektromotor und seinem Drehmoment arbeiten (Abb. 1), ohne die maximale Grenze <strong>de</strong>s<br />

Motorstromes zu überschreiten. Um das ganzen Regelungsystem gut funktionieren zu machen,<br />

muss man auch anpassen<strong>de</strong> Reglerparameter hingefügt wer<strong>de</strong>n.<br />

Abbildung 1: Struktur <strong>de</strong>r Feldorientierten Motorregelung [Sahhary, 2008]<br />

Folgen<strong>de</strong> Programme wur<strong>de</strong>n eingesetz:<br />

• DAvE – Auto co<strong>de</strong> generation.<br />

• TASKING VX-toolset for C166 – C/C++ compiler and <strong>de</strong>bugger.<br />

• DAS Control Server – Device Acces Server.<br />

• UDE Desktop 3.0 – Universal Debug Engine, Develop and test software applications.<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 4


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

2. Vergleich <strong>de</strong>r Reglertypen<br />

In <strong>de</strong>r Abbildung 2 (Abb. 2) ist <strong>de</strong>r Vergleich von P-, I-, <strong>PI</strong>-, PD- und <strong>PI</strong>D-Regler in einem<br />

Regelkreis mit PT2-Glied als Regelstrecke dargestellt. Es ist <strong>de</strong>utlich zu sehen, dass die Regler<br />

ohne I-Anteil (P und PD) eine bleiben<strong>de</strong> Rege<strong>la</strong>bweichung aufweisen. Erst die Regler mit I-<br />

Anteil können auf <strong>de</strong>n normierter Endwert von 1 ausregeln. Beim reinen I-Regler geht das so<br />

<strong>la</strong>ngsam, dass es gar nicht mehr auf <strong>de</strong>m Diagramm zu sehen ist. Der Hauptzweck eines I-<br />

Anteils ist also die Vermeidung bleiben<strong>de</strong>r Rege<strong>la</strong>bweichungen. Daher ist ein I-Anteil<br />

normalerweise nicht nötig, wenn die Strecke schon einen I-Anteil besitzt (ausnahme: es wird<br />

ein doppelter I-Anteil zur Vermeidung von Schleppfehlern benötigt).<br />

Die schnellsten Regler sind die mit einem D-Anteil (PD- und <strong>PI</strong>D-Regler). Der D-Anteil kommt<br />

<strong>de</strong>shalb hauptsächlich zum Einsatz, wenn schnelle Dynamik gefragt ist o<strong>de</strong>r die Strecke selbst<br />

schon instabil ist. Voraussetzung für die Schnelligkeit ist allerdings, dass keine Begrenzung im<br />

Stellglied o<strong>de</strong>r Aktuator auftritt. In <strong>de</strong>r Praxis ist eine Begrenzung meistens nicht zu vermei<strong>de</strong>n,<br />

<strong>de</strong>shalb gilt die Sprungantwort in <strong>de</strong>r Praxis nur für kleine Sprünge.<br />

Die Regler ohne D-Anteil, aber mit P-Anteil (P- und <strong>PI</strong>-Regler) sind mittelschnell. Für einfache<br />

Rege<strong>la</strong>ufgaben reicht auch oft schon ein reiner P-Regler aus, wenn die bleiben<strong>de</strong><br />

Rege<strong>la</strong>bweichung vernachlässigt wer<strong>de</strong>n kann o<strong>de</strong>r wenn die Strecke schon einen I-Anteil<br />

besitzt.<br />

Abbildung 2: Vergleich <strong>de</strong>r Antwort <strong>de</strong>r Reglertypen [www.rn-wissen.<strong>de</strong>, Regelungstechnik]<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 5


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

3. <strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong><br />

Der <strong>PI</strong>-Regler (Proportional–Integral Regler) besteht aus <strong>de</strong>n Anteilen <strong>de</strong>s P-Glie<strong>de</strong>s K P und I-<br />

Glie<strong>de</strong>s mit <strong>de</strong>r Zeitkonstante T N . Er kann sowohl aus einer Parallelstruktur o<strong>de</strong>r aus einer<br />

Reihenstruktur <strong>de</strong>finiert wer<strong>de</strong>n. Der Begriff <strong>de</strong>r Nachstellzeit T N stammt aus <strong>de</strong>r<br />

Parallelstruktur <strong>de</strong>s Reglers (Abb. 3).<br />

Abbildung 3: Struktur <strong>de</strong>s <strong>PI</strong>-Reglers [U<strong>de</strong>nar]<br />

So dass diese I<strong>de</strong>ale Sprungsantwort sehen kann (Abb. 4):<br />

<br />

∗ <br />

<br />

(3.1.)<br />

K p → Proportionale Verstärkung<br />

K i → Integral Verstärkung<br />

Abbildung 4: I<strong>de</strong>aler Sprungantwort <strong>de</strong>s <strong>PI</strong>-Reglers [Wikipedia, <strong>PI</strong>-Regler]<br />

Signaltechnisch wirkt <strong>de</strong>r <strong>PI</strong>-Regler gegenüber <strong>de</strong>m I-Regler so, dass nach einem<br />

Eingangssprung <strong>de</strong>ssen Wirkung um die Nachstellzeit T N vorverlegt ist. Durch <strong>de</strong>n I-Anteil wird<br />

die stationäre Genauigkeit gewährleistet, die Rege<strong>la</strong>bweichung wird nach <strong>de</strong>m Einschwingen<br />

<strong>de</strong>r Regelgröße zu Null.<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 6


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

3.1. Eigenschaften <strong>de</strong>s <strong>PI</strong>-Reglers<br />

• Kompensation eines PT1-Glie<strong>de</strong>s <strong>de</strong>r Strecke: Er kann mit <strong>de</strong>m PD-Glied ein PT1-Glied<br />

<strong>de</strong>r Strecke kompensieren und damit <strong>de</strong>n offenen Regelkreis vereinfachen.<br />

• Keine Rege<strong>la</strong>bweichung bei konstantem Sollwert: Durch das I-Glied wird im<br />

stationären Zustand bei konstantem Sollwert die Rege<strong>la</strong>bweichung zu Null.<br />

• Langsamer Regler: Der durch das I-Glied erworbene Vorteil <strong>de</strong>r Vermeidung einer<br />

stationären Rege<strong>la</strong>bweichung hat auch <strong>de</strong>n Nachteil, dass eine zusätzliche Polstelle mit<br />

-90 ° Phasenwinkel in <strong>de</strong>n offenen Regelkreis eingefügt wird, was eine Reduzierung <strong>de</strong>r<br />

Kreisverstärkung K <strong>PI</strong> be<strong>de</strong>utet. Deshalb ist <strong>de</strong>r <strong>PI</strong>-Regler kein schneller Regler.<br />

• 2 Einstellparameter: Der Regler enthält nur zwei Einstellparameter, K <strong>PI</strong> = K P / T N und T N .<br />

• Regelstrecke höherer Ordnung: kann optimal an einer Regelstrecke höherer Ordnung<br />

eingesetzt wer<strong>de</strong>n, von <strong>de</strong>r nur die Sprungantwort bekannt ist. Durch Ermittlung <strong>de</strong>r<br />

Ersatztotzeit T U (Verzugszeit) und <strong>de</strong>r Ersatzverzögerungs-Zeitkonstante T G<br />

(Ausgleichszeit) kann das PD-Glied <strong>de</strong>s Reglers die Zeitkonstante T G kompensieren. Für<br />

die I-Regler-Einstellung <strong>de</strong>r verbleiben<strong>de</strong>n Regelstrecke mit Ersatztotzeit TU gelten die<br />

bekannten Einstellvorschriften.<br />

• Regelstrecke mit 2 dominanten Zeitkonstanten: er kann eine Regelstrecke mit zwei<br />

dominanten Zeitkonstanten von PT1-Glie<strong>de</strong>rn regeln, wenn die Kreisverstärkung<br />

reduziert wird und die längere Dauer <strong>de</strong>s Einschwingens <strong>de</strong>r Regelgröße auf <strong>de</strong>n<br />

Sollwert akzeptiert wird. Dabei kann mit K <strong>PI</strong> je<strong>de</strong>r gewünschte Dämpfungsgrad D<br />

eingestellt wer<strong>de</strong>n, von aperiodisch (D=1) bis schwach gedämpft schwingend (D gegen<br />

0).<br />

• PD-Glied ohne Differenzierung: Das in <strong>de</strong>r Reihenstruktur entstan<strong>de</strong>ne PD-Glied <strong>de</strong>s <strong>PI</strong>-<br />

Reglers ist mathematisch ohne Differenzierung entstan<strong>de</strong>n. Deshalb entsteht bei <strong>de</strong>r<br />

Realisierung <strong>de</strong>s Reglers in <strong>de</strong>r Parallelstruktur auch keine parasitäre Verzögerung.<br />

Wegen eines möglichen <strong>Windup</strong>-Effektes durch Regelstreckenbegrenzung <strong>de</strong>r<br />

Stellgröße u(t) ist die schaltungsmäßige Realisierung <strong>de</strong>s <strong>PI</strong>-Reglers in Parallelstruktur<br />

anzustreben.<br />

Die Grundi<strong>de</strong>e <strong>de</strong>s <strong>PI</strong>-Reglers (Abb. 5) ist einfach und lässt sich vergleichen mit <strong>de</strong>r<br />

Entscheidungsfindung von Menschen, welche häufig auf <strong>de</strong>r Kenntniss von Vergangenheit und<br />

Gegenwart basiert. Der <strong>PI</strong>-Regler macht das Gleiche mit <strong>de</strong>m Regler. Das Steuersignal besteht<br />

aus zwei Teilen:<br />

• Ein proportionaler Teil zum Auffin<strong>de</strong>n <strong>de</strong>s Fehlers (Regelverhalten aufgrund <strong>de</strong>r<br />

gegenwärtigen Information).<br />

• Ein proportionaler Teil zum Integral-Fehler <strong>de</strong>r Vergangenheit (Regelverhalten<br />

aufgrund <strong>de</strong>r vergangenen Information).<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 7


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

So dass:<br />

Abbildung 5: <strong>PI</strong>-Regler [www.rn-wissen.<strong>de</strong>, Regelungstechnik]<br />

Übertragungsfunktion <strong>de</strong>r Parallelstruktur. Solche Werten wer<strong>de</strong>n so normalerweise<br />

berechnet:<br />

U HSL<br />

E HSL = K 1+ T N∗s<br />

p<br />

T N ∗s<br />

K <strong>PI</strong> = K p<br />

T N<br />

TN und KP sind berechnet so dass es keine Oberschingungen erscheinen. Wenn man es falsch<br />

macht, kann folgen<strong>de</strong>s passieren (Abb. 6):<br />

1.5<br />

1.25<br />

1<br />

0.75<br />

0.5<br />

0.25<br />

2<br />

1<br />

-1<br />

-2<br />

2 4 6 8 10 12 14<br />

1 2 3 4 5 6 7<br />

Abbildung 6: Sprungsnatworte mit Oberschwingungen [Luis Puertol<strong>la</strong>no, 2012]<br />

Deswegen, wer<strong>de</strong>n die kritische Werte berechnet, um an <strong>de</strong>r Grenze <strong>de</strong>n<br />

Oberschwingungen zu bleiben, und wer<strong>de</strong>n danach wie folgen<strong>de</strong>s benutzt:<br />

K p = 0.45∗K P Krit<br />

T N = 0.83∗T N Krit<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 8


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Obwohl viele Aspekte eines Steuersystems von <strong>de</strong>r linearen Regelungstechnik verstan<strong>de</strong>n<br />

wer<strong>de</strong>n können, müssen einige nicht-lineare Effekte berücksichtigt wer<strong>de</strong>n. Bei <strong>de</strong>r<br />

Implementierung eines Reglers sind dies zum Beispiel:<br />

• Ein motor hat eine nominale Geschwindigkeit (wie in unserem Fall).<br />

• Ein Ventil hat eine maximale und eine minimale Öffnung.<br />

• Eine Stromversorgung eines elektrischen Gerätes ist begrenzt.<br />

3.2. <strong>Anti</strong>-<strong>Windup</strong> Funktion<br />

Für eine Steuerung mit einer Vielzahl von Betriebsbedingungen kann es vorkommen, dass die<br />

Regelgröße die vorgegebenen Grenzen <strong>de</strong>s Aktuators erreicht. Wenn dies passiert, bleibt die<br />

Rückkopplungsschleife in ihrer Grenze unabhängig von <strong>de</strong>m Prozeß-Ausgang. Bei Verwendung<br />

eines integralen Reglers wird ein möglicher Fehler immer weiter seinen Wert steigern. Der<br />

Integral-Anteil wird ganz groß und es wird die Wirkung "<strong>Windup</strong>" produziert (Abb. 7).<br />

Abbildung 7: Beispiel von <strong>Windup</strong> [Luis Puertol<strong>la</strong>no, 2012]<br />

Dies kann so vermie<strong>de</strong>n wer<strong>de</strong>n:<br />

• Der Begrenzung <strong>de</strong>r Reglerabweichung bewirkt, dass <strong>de</strong>r Ausgang <strong>de</strong>s Reglers nicht die<br />

Begrenzung <strong>de</strong>s Aktuators erreichen kann. Dies produziert häufig Begrenzungen in <strong>de</strong>r<br />

Wirkung <strong>de</strong>s Reglers, aber kann nichts gegen <strong>de</strong>n <strong>Windup</strong>-Effekt, welcher von<br />

Störungen produziert wird, ausrichten.<br />

• Ein an<strong>de</strong>rer Weg ist die Neuberechnung <strong>de</strong>s Integra<strong>la</strong>nteils: Wenn <strong>de</strong>r Ausgang<br />

gesättigt ist, wird das Integral neu berechnet, so dass <strong>de</strong>r neue Wert ein<br />

Ausgangssignal an <strong>de</strong>r Sättigungsgrenze darstellt.<br />

Eine an<strong>de</strong>re Metho<strong>de</strong> ist die konditionale Integration zur Begrenzung <strong>de</strong>s Integralüber<strong>la</strong>ufs.<br />

Man benutzt ein Schalter, wenn das Signal sehr weit weg von <strong>de</strong>m stationären Status liegt. In<br />

diesem Fall, wird <strong>de</strong>r I-Anteil nur unter solchen Bedingungen benutzt. In an<strong>de</strong>ren Fällen, bleibt<br />

<strong>de</strong>r I-Anteil gleich. Es wird auch „Festbin<strong>de</strong>n <strong>de</strong>s Integrators“ genannt.<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 9


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Abbildung 8: <strong>PI</strong>-Regler Parallelform und Begrenzung [www.20sim.com]<br />

Abbildung 9: <strong>PI</strong>-Regler Seriesform und Begrenzung [www.20sim.com]<br />

Der Unterschied zwischen Eingang und Ausgang (TR) ist rückgekoppelt in <strong>de</strong>n I-Anteil durch<br />

<strong>de</strong>n 1/T a Verstärkung (Abbs. 8 und 9). Eine gute Überwachung ist die Rückkopplung mit <strong>Anti</strong>-<br />

<strong>Windup</strong>. Der Aktuator ist von einem Signal-Begrenzer vertreten wor<strong>de</strong>n.<br />

Sobald <strong>de</strong>r Begrenzer sättigt, bekommt das Signal einen unterschiedlichen Wert von null<br />

aufwärts und vermei<strong>de</strong>t, dass <strong>de</strong>r I-Anteil in <strong>Windup</strong> geht (Abb. 10). Reset-Zeitkonstanten<br />

bestimmen dabei, wie schnell auf <strong>Windup</strong> <strong>de</strong>s Integrators reagiert wird.<br />

Abbildung 10: Antwort ohne und mit <strong>Anti</strong>-<strong>Windup</strong> [micros-<strong>de</strong>signs, Suky, CreativeCommons]<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 10


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Abbildung 11: Antwort mit Switch On-Off Metho<strong>de</strong> [micros-<strong>de</strong>signs, Suky, CreativeCommons]<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 11


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Der Ziel <strong>de</strong>s <strong>Anti</strong>-<strong>Windup</strong>s ist <strong>de</strong>r Integration zu begrenzen (Abb. 12).<br />

Abbildung 12: Antwort <strong>de</strong>s Systems mit und ohne <strong>Anti</strong>-<strong>Windup</strong><br />

[Universität Bochum, Christian Schmid, 2005]<br />

Diese <strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> müssen angewen<strong>de</strong>t wer<strong>de</strong>n, so dass ihre Funktion von<br />

einem µC ausgeübt wer<strong>de</strong>n kann. Der Aktuator wird begrenzt und gibt ein Signal (Abb. 13),<br />

welches auf <strong>de</strong>r folgen<strong>de</strong>n Grundi<strong>de</strong>e begrenzt wird:<br />

; < <br />

; < < <br />

; ! > <br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 12


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Abbildung 13: Grundfunktionsweise <strong>de</strong>s Reglers mit <strong>Anti</strong>-<strong>Windup</strong> stationares Vorhalten<br />

[http://www.20sim.com]<br />

Ein Beispiel <strong>de</strong>s Grundprogrammes wäre folgen<strong>de</strong>s:<br />

Programm-Co<strong>de</strong> in C:<br />

# − ; // Vergleich<br />

% % ; // Integration I-Anteil<br />

if % < −400{ % −400; } // Begrenzung I-Anteil<br />

if % < 400{ % 400; }<br />

* Kp ∗ e + Ki ∗ Ta ∗ esum;//Reglergleichung<br />

if * < 0{* = 0; } // Begrenzung Stellgröβe<br />

if * < 1023{* = 1023; }<br />

789 = *; // Übergabe Stellgröβe<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 13


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

4. Realisierung <strong>de</strong>s <strong>PI</strong>-Reglers<br />

Für die Co<strong>de</strong>entwicklung wird die Software „TASKING VX-toolset for C166“ eingesetzt (Abb. 14).<br />

Abbildung 14: Ansicht von TASKING VX-toolset for C166 [Luis Puertol<strong>la</strong>no, 2012]<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 14


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

4.1. <strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong>-Funktionalität<br />

4.1.1. Initialisierung<br />

Hier wird <strong>de</strong>r Regler initialisiert, und wird folgen<strong>de</strong> Werte für die verschie<strong>de</strong>nen Glie<strong>de</strong>n<br />

benutzen:<br />

// Initialisierung <strong>de</strong>s Reglers – Werten die man für die verschie<strong>de</strong>nen Glie<strong>de</strong>n will.<br />

void initRegler(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

ptrRegler->KP = 0;// Proportionalkonstant - Constante proporcional<br />

ptrRegler->KI = 0;// Integrationskonstant - Constante <strong>de</strong> integración<br />

ptrRegler->StellGroesse = 0;// Stellgrösse - Control <strong>de</strong> <strong>la</strong> variable<br />

ptrRegler->FuehrungsGroesse = 0;// Führungsgrösse - Comando <strong>de</strong> <strong>la</strong> variable<br />

ptrRegler->RegelGroesse = 0;// Regelgrösse - Control <strong>de</strong> <strong>la</strong> variable<br />

ptrRegler->RegelAbweichung = 0;// Abweichung (Unterschied) - Desviación<br />

ptrRegler->EingangsBegrenzungMax = 0;// Maximal Eingangs Begrenzung -<br />

Limitación máxima <strong>de</strong> entrada<br />

ptrRegler->EingangsBegrenzungMin = 0;// Minimal Eingangs Begrenzung -<br />

Limitación mínima <strong>de</strong> entrada<br />

ptrRegler->AusgangsBegrenzungMax = 0;// Maximal Ausgangs Begrenzung -<br />

Limitación máxima <strong>de</strong> salida<br />

ptrRegler->AusgangsBegrenzungMin = 0;// Minimal Ausgangs Begrenzung -<br />

Limitación mínima <strong>de</strong> salida<br />

ptrRegler->Abtastzeit = 0;// Abtastzeit - Tiempo <strong>de</strong> muestreo<br />

}<br />

ptrRegler->Summe = 0;// Summe - Suma<br />

ptrRegler->SummenBegrenzungMax = 0;// Maximal Summe Begrenzung -<br />

Limitación máxima <strong>de</strong> <strong>la</strong> suma<br />

ptrRegler->SummenBegrenzungMin = 0;// Minimal Summe Begrenzung -<br />

Limitación mínima <strong>de</strong> <strong>la</strong> suma<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 15


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

4.1.2. Berechnung und <strong>Anti</strong>-<strong>Windup</strong>-Algorithmus<br />

Hier wird es beschrieben wie man die Berechnung <strong>de</strong>s <strong>PI</strong>-Reglers programmiert ist:<br />

// Berechnung <strong>de</strong>s Regler Algorithmus -> Cálculo <strong>de</strong>l algoritmo <strong>de</strong>l regu<strong>la</strong>dor<br />

long calcRegler(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

// Berechnung <strong>de</strong>r Regel Abweichung - Cálculo<br />

ptrRegler->RegelAbweichung = ptrRegler->FuehrungsGroesse - ptrRegler->RegelGroesse;<br />

// Begrenzung für <strong>de</strong>n Regler Eingang - Limitación<br />

if(ptrRegler->RegelAbweichung > ptrRegler->EingangsBegrenzungMax)<br />

{<br />

ptrRegler->RegelAbweichung = ptrRegler->EingangsBegrenzungMax;<br />

}<br />

else if(ptrRegler->RegelAbweichung < ptrRegler->EingangsBegrenzungMin)<br />

{<br />

ptrRegler->RegelAbweichung = ptrRegler->EingangsBegrenzungMin;<br />

}<br />

// Berechnung <strong>de</strong>r Regler Summe - Cálculo <strong>de</strong> <strong>la</strong> suma <strong>de</strong>l regu<strong>la</strong>dor<br />

ptrRegler->Summe = ptrRegler->Summe + ptrRegler->RegelAbweichung;<br />

// Begrenzung <strong>de</strong>r Regler Summe - Limitación <strong>de</strong> <strong>la</strong> suma <strong>de</strong>l regu<strong>la</strong>dor<br />

if(ptrRegler->Summe > ptrRegler->SummenBegrenzungMax)<br />

{<br />

ptrRegler->Summe = ptrRegler->SummenBegrenzungMax;<br />

}<br />

else if(ptrRegler->Summe < ptrRegler->SummenBegrenzungMin)<br />

{<br />

ptrRegler->Summe = ptrRegler->SummenBegrenzungMin;<br />

}<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 16


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

// Berechnung <strong>de</strong>r Stellgröße - Cálculo <strong>de</strong> <strong>la</strong> variable <strong>de</strong> <strong>con</strong>trol<br />

ptrRegler->StellGroesse = ptrRegler->KP * ptrRegler->RegelAbweichung +<br />

ptrRegler->KI * ptrRegler->Abtastzeit * ptrRegler->Summe;<br />

// Begrenzung für <strong>de</strong>n Regler Ausgang - Limitación <strong>de</strong> <strong>la</strong> salida <strong>de</strong>l regu<strong>la</strong>dor<br />

if(ptrRegler->StellGroesse > ptrRegler->AusgangsBegrenzungMax)<br />

{<br />

ptrRegler->StellGroesse = ptrRegler->AusgangsBegrenzungMax;<br />

}<br />

else if(ptrRegler->StellGroesse < ptrRegler->AusgangsBegrenzungMin)<br />

{<br />

ptrRegler->StellGroesse = ptrRegler->AusgangsBegrenzungMin;<br />

}<br />

return ptrRegler->StellGroesse;<br />

}<br />

/*********************************************************************/<br />

4.1.3. Ergebnisse<br />

Hier wird es beschrieben wie man die Ergebnisse <strong>de</strong>s <strong>PI</strong>-Reglers bekommen kann:<br />

// Get Metho<strong>de</strong> für KP<br />

int getReglerKP(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

}<br />

return ptrRegler->KP;<br />

// Set Metho<strong>de</strong> für KP<br />

void setReglerKP(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, int kp)<br />

{<br />

ptrRegler->KP = kp;<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 17


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für KI<br />

int getReglerKI(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->KI;<br />

}<br />

// Set Metho<strong>de</strong> für KI<br />

void setReglerKI(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, int ki)<br />

{<br />

ptrRegler->KP = ki;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für StellGroesse<br />

long getReglerStellGroesse(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->StellGroesse;<br />

}<br />

// Set Metho<strong>de</strong> für StellGroesse<br />

void setReglerStellGroesse(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long stellgroesse)<br />

{<br />

ptrRegler->StellGroesse = stellgroesse;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für FuehrungsGroesse<br />

long getReglerFuehrungsGroesse(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->FuehrungsGroesse;<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 18


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

}<br />

// Set Metho<strong>de</strong> für FuehrungsGroesse<br />

void setReglerFuehrungsGroesse(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long fuehrungsgroesse)<br />

{<br />

ptrRegler->FuehrungsGroesse = fuehrungsgroesse;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für RegelGroesse<br />

long getReglerRegelGroesse(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->RegelGroesse;<br />

}<br />

// Set Metho<strong>de</strong> für RegelGroesse<br />

void setReglerRegelGroesse(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long regelgroesse)<br />

{<br />

ptrRegler->RegelGroesse = regelgroesse;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für RegelAbweichung<br />

long getReglerRegelAbweichung(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->RegelAbweichung;<br />

}<br />

// Set Metho<strong>de</strong> für RegelAbweichung<br />

void setReglerRegelAbweichung(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long rege<strong>la</strong>bweichung)<br />

{<br />

ptrRegler->RegelAbweichung = rege<strong>la</strong>bweichung;<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 19


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für EingangsBegrenzungMax<br />

long getReglerEingangsBegrenzungMax(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->EingangsBegrenzungMax;<br />

}<br />

// Set Metho<strong>de</strong> für EingangsBegrenzungMax<br />

void setReglerEingangsBegrenzungMax(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long eingangsBegrenzungMax)<br />

{<br />

ptrRegler->EingangsBegrenzungMax = eingangsBegrenzungMax;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für EingangsBegrenzungMin<br />

long getReglerEingangsBegrenzungMin(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->EingangsBegrenzungMin;<br />

}<br />

// Set Metho<strong>de</strong> für EingangsBegrenzungMin<br />

void setReglerEingangsBegrenzungMin(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long eingangsBegrenzungMin)<br />

{<br />

ptrRegler->EingangsBegrenzungMin = eingangsBegrenzungMin;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für AusgangsBegrenzungMax<br />

long getReglerAusgangsBegrenzungMax(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->AusgangsBegrenzungMax;<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 20


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

}<br />

// Set Metho<strong>de</strong> für AusgangsBegrenzungMax<br />

void setReglerAusgangsBegrenzungMax(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long ausgangsBegrenzungMax)<br />

{<br />

ptrRegler->AusgangsBegrenzungMax = ausgangsBegrenzungMax;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für AusgangsBegrenzungMin<br />

long getReglerAusgangsBegrenzungMin(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->AusgangsBegrenzungMin;<br />

}<br />

// Set Metho<strong>de</strong> für AusgangsBegrenzungMin<br />

void setReglerAusgangsBegrenzungMin(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long ausgangsBegrenzungMin)<br />

{<br />

ptrRegler->AusgangsBegrenzungMin = ausgangsBegrenzungMin;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für Abtastzeit<br />

int getReglerAbtastzeit(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->Abtastzeit;<br />

}<br />

// Set Metho<strong>de</strong> für Abtastzeit<br />

void setReglerAbtastzeit(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, int abtastzeit)<br />

{<br />

ptrRegler->Abtastzeit = abtastzeit;<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 21


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für SummenBegrenzungMax<br />

long getReglerSummenBegrenzungMax(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->SummenBegrenzungMax;<br />

}<br />

// Set Metho<strong>de</strong> für SummenBegrenzungMax<br />

void setReglerSummenBegrenzungMax(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long summenBegrenzungMax)<br />

{<br />

ptrRegler->SummenBegrenzungMax = summenBegrenzungMax;<br />

}<br />

/*********************************************************************/<br />

// Get Metho<strong>de</strong> für SummenBegrenzungMin<br />

long getReglerSummenBegrenzungMin(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler)<br />

{<br />

return ptrRegler->SummenBegrenzungMin;<br />

}<br />

// Set Metho<strong>de</strong> für SummenBegrenzungMin<br />

void setReglerSummenBegrenzungMin(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrRegler, long summenBegrenzungMin)<br />

{<br />

ptrRegler->SummenBegrenzungMin = summenBegrenzungMin;<br />

}<br />

/*********************************************************************/<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 22


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

4.1.4. Einstellungen <strong>de</strong>s Reglers<br />

Hier wird es geschrieben wie man die Parametereinstellungen <strong>de</strong>s <strong>PI</strong>-Reglers:<br />

// Reglereinstellungen setzen für Id-Regler - Establecer los parámetros <strong>de</strong>l Regu<strong>la</strong>dor (Potencia reactiva)<br />

void mainSet<strong>PI</strong>ReglerIdParams(struct <strong>PI</strong>Regler *ptr<strong>PI</strong>ReglerId)<br />

{<br />

setReglerKP(ptr<strong>PI</strong>ReglerId, 0);<br />

setReglerKI(ptr<strong>PI</strong>ReglerId, 0);<br />

setReglerEingangsBegrenzungMax(ptr<strong>PI</strong>ReglerId, 350);<br />

setReglerEingangsBegrenzungMin(ptr<strong>PI</strong>ReglerId, -350);<br />

setReglerAusgangsBegrenzungMax(ptr<strong>PI</strong>ReglerId, 52213);<br />

setReglerAusgangsBegrenzungMin(ptr<strong>PI</strong>ReglerId, -52213);<br />

setReglerAbtastzeit(ptr<strong>PI</strong>ReglerId, 1);<br />

setReglerSummenBegrenzungMax(ptr<strong>PI</strong>ReglerId, 100000);<br />

setReglerSummenBegrenzungMin(ptr<strong>PI</strong>ReglerId, -100000);<br />

}<br />

// Reglereinstellungen setzen für Iq-Regler - Establecer los parámetros <strong>de</strong>l Regu<strong>la</strong>dor (Potencia activa)<br />

void mainSet<strong>PI</strong>ReglerIqParams(struct <strong>PI</strong>Regler *ptr<strong>PI</strong>ReglerIq)<br />

{<br />

setReglerKP(ptr<strong>PI</strong>ReglerIq, 0);<br />

setReglerKI(ptr<strong>PI</strong>ReglerIq, 0);<br />

setReglerEingangsBegrenzungMax(ptr<strong>PI</strong>ReglerIq, 350);<br />

setReglerEingangsBegrenzungMin(ptr<strong>PI</strong>ReglerIq, -350);<br />

setReglerAusgangsBegrenzungMax(ptr<strong>PI</strong>ReglerIq, 52213);<br />

setReglerAusgangsBegrenzungMin(ptr<strong>PI</strong>ReglerIq, -52213);<br />

setReglerAbtastzeit(ptr<strong>PI</strong>ReglerIq, 1);<br />

setReglerSummenBegrenzungMax(ptr<strong>PI</strong>ReglerIq, 100000);<br />

setReglerSummenBegrenzungMin(ptr<strong>PI</strong>ReglerIq, -100000);<br />

}<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 23


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Mit diesem Co<strong>de</strong> wird <strong>de</strong>r Regler <strong>de</strong>finiert, d.h. die Ausgangsbegrenzungen und die Parameter<br />

<strong>de</strong>s Reglers. Und man muss auch <strong>de</strong>n Regler initialisieren. Damit wird folgen<strong>de</strong>r Co<strong>de</strong> in <strong>de</strong>r<br />

Main.c File geschrieben:<br />

4.2. Hauptprogramm<br />

Hier wird es geschrieben, wie man die an<strong>de</strong>ren Teilen <strong>de</strong>s Programms anrufen muss:<br />

// Initialisierung <strong>de</strong>s Reglers<br />

void initRegler(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrReglerId);<br />

void initRegler(vo<strong>la</strong>tile struct <strong>PI</strong>Regler *ptrReglerIq);<br />

void mainSet<strong>PI</strong>ReglerIdParams(struct <strong>PI</strong>Regler *ptr<strong>PI</strong>ReglerId);<br />

void mainSet<strong>PI</strong>ReglerIqParams(struct <strong>PI</strong>Regler *ptr<strong>PI</strong>ReglerIq);<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 24


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

B. Literaturverzeichnis<br />

[1] Laboratorio <strong>de</strong> procesos industriales:<br />

http://www.e<strong>la</strong>i.upm.es:8009/spain/Asignaturas/ControlProcesos/archivos/Practicas/Practica<br />

_1.pdf<br />

[2] Regelungstechnik:<br />

http://www.rn-wissen.<strong>de</strong>/in<strong>de</strong>x.php/Regelungstechnik<br />

[3] <strong>Anti</strong>-<strong>Windup</strong>:<br />

http://www.20sim.com/webhelp/library/signal/<strong>con</strong>trol/pid_<strong>con</strong>trol/antiwindup.htm<br />

[4] Control <strong>PI</strong>D <strong>con</strong> <strong>Anti</strong>-<strong>Windup</strong>:<br />

http://www.micros-<strong>de</strong>signs.com.ar/<strong>con</strong>trol-pid-<strong>con</strong>-anti-windup-en-pic/<br />

[5] Regelungstechnik:<br />

http://<strong>de</strong>.wikipedia.org/wiki/Regler#<strong>PI</strong>-Regler<br />

[6] Infineon: [AP16084] FOC of a PMSM Application Note, V1.0, May 2004<br />

[7] Sahhary, Bassel; Elektrische Antreibe mit dauermagneterregten Maschinen im dynamischen<br />

sensorlosen Betrieb. Hamburg, 2008.<br />

[8] Nickl, Felix; Feoldorientierte Motorregelung für ein Elektrofahrzeug; Nürnberg, 2011.<br />

[9] Control system with anti-windup measure:<br />

http://www.atp.ruhr-uni-bochum.<strong>de</strong>/rt1/sys<strong>con</strong>trol/no<strong>de</strong>92.html<br />

[10] <strong>Universidad</strong> <strong>de</strong> Zaragoza;<br />

Regelungstechnik-, Leistungs-, und <strong>Digital</strong>elektronikunter<strong>la</strong>gen.<br />

[11] [Sahhary 2008] Sahhary, Bassel: Elektrische Antriebe mit dauermagneterregten<br />

Maschinen im dynamischen sensorlosen Betrieb, Helmut-Schmidt-Universität Hamburg, Diss.,<br />

2008. http://opus.unibw-hamburg.<strong>de</strong>/opus/volltexte/2009/1904/pdf/2009_Sahhary.pdf,<br />

Abruf: 01.02.2011<br />

[12]Datenblätter:<br />

http://www.infineon.com/dgdl/XC2287M-<br />

PB.pdf?fol<strong>de</strong>rId=db3a3043132679fb01133eb909a307c3&fileId=db3a30431c69a49d011c94d56<br />

aa7058d<br />

[13] [U<strong>de</strong>nar] <strong>Universidad</strong> <strong>de</strong> Colombia, Kolumbien Universität<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 25


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

C. Anhang<br />

C.1. Mikro<strong>con</strong>trollers Infineon XC2287M<br />

Abbildung 15: Dattenb<strong>la</strong>tt <strong>de</strong>s XC2287M Mikro<strong>con</strong>troller [Infineon]<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 26


<strong>PI</strong>-Regler mit <strong>Anti</strong>-<strong>Windup</strong> für eine feldorientierte<br />

Motorregelung für ein Elektrofahrzeug<br />

Abbildung 16: Diagram Block XC2287M [Infineon]<br />

Luis Alfonso Puertol<strong>la</strong>no Ventura 27

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!