Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SPEED CONTROL METHOD AND DEVICE FOR A TWO-PULSE MOTOR OPERATING WITH AUXILIARY TORQUE
Document Type and Number:
WIPO Patent Application WO/2005/018084
Kind Code:
A1
Abstract:
The invention relates to a method for rotational speed control of a two-pulse electronically switched motor which operates with an auxiliary reluctance torque (fig. 13:MR) and comprises at least one stator winding strand (32), a rotor (38) and a control unit (76) for controlling the motor (30) at a desired rotational speed (nsoll; t s). The inventive method consists in continuously collecting the characteristic value of the rotor (38). Above a determined minimum rotational speed (+NMIN, -NMIN), the operation of the motor (30) is adjusted to an independent value (BW) of a desired rotational speed. Above said minimum rotational speed (+NMIN, -NMIN), the operation of the motor (30) is adjusted to a value (BW) which is a difference function between the desired rotational speed (nsoll; t s) and an actual rotational speed (n; T HALL). A corresponding motor is also disclosed.

Inventors:
BERROTH HANSJOERG (DE)
JESKE FRANK (DE)
RAPPENECKER HERMANN (DE)
Application Number:
PCT/EP2004/005389
Publication Date:
February 24, 2005
Filing Date:
May 19, 2004
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
EBM PAPST ST GEORGEN GMBH & CO (DE)
BERROTH HANSJOERG (DE)
JESKE FRANK (DE)
RAPPENECKER HERMANN (DE)
International Classes:
H02P6/00; (IPC1-7): H02P6/00
Foreign References:
US4376261A1983-03-08
Attorney, Agent or Firm:
Raible, Tobias (Stuttgart, DE)
Download PDF:
Claims:
Patentansprüche
1. Verfahren zur Drehzahlregelung eines mit einem Hilfsmoment (Fig. 13 : MR) arbeitenden zweipulsigen elektronisch kommutierten Motors (30), welcher mindestens einen Statorwicklungsstrang (32), einen Rotor (38) und eine Regeleinrichtung (76) für die Generierung eines Stellwert (BW) zur Regelung des Motors (30) auf einen eine gewünschte Drehzahl (nsoll ; ts) charakterisierenden Wert aufweist, welches Verfahren folgende Schritte aufweist : Ein die tatsächliche Drehzahl (n) des Rotors (38) charakterisierender Wert wird fortlaufend erfasst ; in einem unteren Drehzahlbereich (150) zwischen der Drehzahl Null und einer vorgegebenen Mindestdrehzahl (+NMIN,NMIN) wird der Motor (30) mit einem von der gewünschten Drehzahl (nsoll ; t_s) unabhängigen Strom betrieben ; außerhalb dieses unteren Drehzahlbereichs (150) wird der Motor (30) mit einem Stellwert (BW) für den Strom betrieben, welcher eine Funktion der Regeldifferenz (Fig. 19 : RGL_DIFF) zwischen einem die gewünschte Drehzahl (nsoll ; ts) charakterisierenden Wert und einem die tatsächliche Drehzahl charakterisierenden Wert (n ; HALL) ist.
2. Verfahren nach Anspruch 1, bei welchem der Stellwert (BW) fortlaufend als Funktion der Regeldifferenz (Fig. 19 : RGLD ! FF) berechnet, aber erst im Bereich des Erreichens der vorgegebenen Mindestdrehzahl (+NMIN,NMIN) für den Regelvorgang verwendet wird.
3. Verfahren nach Anspruch 1 oder 2, bei welchem bei Erreichen einer Drehzahl (n) außerhalb des unteren Drehzahlbereichs und bevorzugt im Bereich der Mindestdrehzahl (+NMIN,NMIN) ein Wert (Rt) für die augenblicklich vorgeschriebene SollDrehrichtung (DIR) des Rotors (38) gespeichert wird.
4. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem bei Überschreiten der gewünschten Drehzahl (sou) die Kommutierung der Motorströme (i, i') auf eine Kommutierung umgeschaltet (inv. 180°) wird, welche einer Drehung des Rotors (38) entgegen seiner augenblicklichen Drehrichtung zugeordnet ist.
5. Verfahren nach Anspruch 4, bei welchem bei Überschreiten der gewünschten Drehzahl (soll) der Stellwert (BW) für den Motorstrom entsprechend der Differenz zwischen gewünschter Drehzahl (soll) und tatsächlicher Drehzahl (n) eingestellt wird, sofern die gewünschte Drehzahl (nsoll) höher ist als die Mindestdrehzahl (+NMIN,NMIN) und ein Befehl zur Änderung der Drehrichtung nicht vorliegt.
6. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem bei einem Befehl zur Änderung der Drehrichtung die Kommutierung der Motorströme (i, i') auf eine Kommutierung umgeschaltet (inv. 180°) wird, welche einer Drehung des Rotors (38) entgegen seiner augenblicklichen Drehrichtung zugeordnet ist, und der Rotor (38) bis zum Erreichen der Drehzahl Null mit einem Strom gebremst wird, welcher von der gewünschten Drehzahl unabhängig ist.
7. Verfahren nach Anspruch 6, bei welchem nach Erreichen der Drehzahl Null die Drehzahl in der neuen Drehrichtung bis zum Erreichen einer vorgegebenen Mindestdrehzahl (+NMIN,NMIN) mit einem von der gewünschten Drehzahl unabhängigen Stellwert (BW) erhöht wird, und anschließend mit einem Stellwert (BW), der abhängig von der Differenz zwischen gewünschter Drehzahl (nsoll) und tatsächlicher Drehzahl (n) ist.
8. Verfahren nach Anspruch 6 oder 7, bei welchem dann, wenn nach einer Änderung der Drehrichtung ein Bereich außerhalb des unteren Drehzahlbereichs (150) erreicht wird, ein Wert (Rt) für die neue vorgeschriebene Drehrichtung (DIR) gespeichert wird.
9. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem nach einem Startbefehl zum Anlauf in Reversrichtung (Fig. 13 : DIR=1) zuerst eine Kommutierung für Drehung in der zur Reversrichtung entgegengesetzten Drehrichtung des Motors (30) erfolgt, in welcher der Motor (30) leicht anläuft, und anschließend die Kommutierung auf Kommutierung in Reversrichtung (DIR=1) umgeschaltet wird.
10. Zweipulsiger elektronisch kommutierter Motor (30), welcher mit einem Reluktanz Hilfsmoment (Fig. 13 : MR) arbeitet und welcher mindestens einen Statorwicklungsstrang (32), einen Rotor (38) und eine Regeleinrichtung (76) für die Erzeugung eines Stellwert (BW) zur Regelung des Motors (30) auf eine gewünschte Drehzahl (nso, l) aufweist, welcher Regeleinrichtung eine Anordnung zur Erfassung einer für die Drehzahl des Rotors (38) charakteristischen Größe (T_HALL) zugeordnet ist, und bei welcher in einem unteren Drehzahlbereich (Fig. 10 : 150) zwischen der Drehzahl Null und einer vorgegebenen Mindestdrehzahl (+ N MIN,N MIN) der Motor (30) mit einem von der gewünschten Drehzahl (nsoll) unabhängigen Stellwert (BW=Max) betrieben wird, und außerhalb dieses unteren Drehzahlbereichs (150) der Stellwert (BW) abhängig von der Differenz zwischen gewünschter Drehzahl (nsoll) und tatsächlicher Drehzahl (n) bestimmt wird.
11. Motor nach Anspruch 10, bei welchem der Stellwert (BW) fortlaufend als Funktion der Differenz zwischen gewünschter Drehzahl (nsoll) und tatsächlicher Drehzahl (n) berechnet (Fig. 19 : S664), aber erst außerhalb des unteren Drehzahlbereichs (150) für einen DrehzahlRegelvorgang verwendet wird.
12. Motor nach Anspruch 10 oder 11, bei welchem bei Erreichen einer Drehzahl außerhalb des unteren Drehzahlbereichs (150) ein Wert (Rt) für die augenblicklich vorgeschriebene SollDrehrichtung (DIR) des Motors (30) gespeichert wird.
13. Motor nach einem der Ansprüche 10 bis 12, bei welchem bei Überschreiten der gewünschten Drehzahl (non) die Kommutierung der Motorströme auf eine Kommutierung umgeschaltet (inv. 180°) wird, welche einer Drehung des Rotors (38) entgegen seiner augenblicklichen Drehrichtung zugeordnet ist.
14. Motor nach Anspruch 13, bei welchem bei Überschreiten der gewünschten Drehzahl der Stellwert entsprechend der Differenz zwischen gewünschter Drehzahl (nsoll) und tatsächlicher Drehzahl (n) eingestellt wird, wenn die gewünschte Drehzahl größer ist als die vorgegebene Mindestdrehzahl (+ N MIN, N MIN), und ein Befehl zur Änderung der Drehrichtung nicht vorliegt, und die Kommutierung der Motorströme (i, i') auf eine Kommutierung umgeschaltet (inv. 180°) wird, welche einer Drehung des Rotors (38) entgegen seiner augenblicklichen Drehrichtung zugeordnet ist.
15. Motor nach einem der Ansprüche 10 bis 14, bei welchem bei einem Befehl zur Änderung der Drehrichtung die Kommutierung der Motorströme (i, i') auf eine Kommutierung umgeschaltet wird, welche einer Drehung des Rotors (38) entgegen seiner augenblicklichen Drehrichtung zugeordnet ist, so dass der Rotor (38) bis zum Erreichen der Drehzahl Null mit einem von der gewünschten Drehzahl (nsoll) unabhängigen Strom abgebremst und danach bis zum Erreichen der Mindestdrehzahl (+ N MIN,N MIN) in Gegenrichtung ebenfalls mit einem von der gewünschten Drehzahl (nsoll) unabhängigen Strom angetrieben wird.
16. Motor nach Anspruch 15, bei welchem außerhalb des unteren Drehzahlbereichs (150) der Antrieb in der neuen Drehrichtung mit einem Stellwert (BW) erfolgt, der abhängig von der Differenz zwischen gewünschter Drehzahl (nsoll) und tatsächlicher Drehzahl (n) ist.
17. Motor nach Anspruch 15 oder 16, bei welchem nach einer Drehrichtungsumkehr und nach Verlassen des unteren Drehzahlbereichs (150) ein Wert (Rt) für die neue vorgeschriebene Drehrichtung gespeichert wird.
18. Motor nach einem der Ansprüche 10 bis 17, welcher eine Vorzugsrichtung hat (Fig. 13 : DIR=0), in der er leicht anläuft, und eine Reversrichtung (Fig. 13 : DIR=1), in der sein Anlauf schwierig ist, und bei welchem nach einem Startbefehl zum Anlauf in Reversrichtung zuerst eine Kommutierung für Drehung in Vorzugsrichtung erfolgt und dann auf Kommutierung für Reversrichtung umgeschaltet wird, um einen sicheren Anlauf in Reversrichtung zu erhalten (Fig. 12).
19. Motor nach einem der Ansprüche 10 bis 18, bei welchem die Vorgabe einer gewünschten Drehzahl (nsol), welche im unteren Drehzahlbereich (150) liegt, als Vorgabe einer gewünschten Drehzahl Null interpretiert wird.
20. Motor nach einem der Ansprüche 10 bis 19, bei welchem zur Charakterisierung der augenblicklichen Drehzahl des Motors ein Flag (Rs) vorgesehen ist, welches bei einer Drehzahl im unteren Drehzahlbereich (Fig. 10 : 150) einen Wert (Rs=0) aufweist, der sich von einem Wert (Rs=1) unterscheidet, den dieses Flag (Rs) außerhalb des unteren Drehzahlbereichs (150) annimmt.
Description:
VERFAHREN UND VORRICHTUNG ZUR DREZAHLREGELUNG EINES MIT HILFSMOMENT ARBEITENDEN ZWEIPULSIGEN MOTORS Die Erfindung betrifft ein Verfahren zur Regelung der Drehzahl eines mit einem invarianten Hilfsmoment arbeitenden zweipulsigen Motors, und sie betrifft einen zweipulsigen elektronisch kommutierten Motor, welcher mit einem invarianten Hilfsmoment arbeitet und eine Regeleinrichtung zur Regelung seiner Drehzahl aufweist. Als invariantes Hilfsmoment wird gewöhnlich ein sogenanntes Reluktanzmoment verwendet, doch ist die Erfindung nicht hierauf beschränkt, sondern ein solches Hilfsmoment könnte auch mechanisch erzeugt werden, z. B. durch eine Nockenkurve.

Zweipulsige elektronisch kommutierte Motoren mit Reluktanz-Hilfsmoment sind preiswert, weil sie im Vergleich mit mehrphasigen Motoren gleicher Baugröße preiswerter hergestellt werden können, und weil diese Motor-Bauart einfach und robust ist. Solche Motoren werden deshalb häufig zum Antrieb von Lüftern verwendet, z. B. für die Kühlung im IT-Bereich.

Bedingt durch ihr Hilfsmoment haben derartige Motoren eine Drehrichtung, in der sie leicht anlaufen, weil der Anlauf durch das Hilfsmoment unterstützt wird. Diese Drehrichtung wird auch als Vorzugsrichtung bezeichnet. Dagegen ist in der zur Vorzugsrichtung entgegengesetzten Richtung, auch Reversrichtung genannt, der' Anlauf schwierig. Ein Vierquadrantenbetrieb solcher Motoren stößt zudem deshalb auf Schwierigkeiten, weil es Drehzahlbereiche gibt, wo eine Regelung aus verschiedenen Gründen nicht möglich ist, u. a. deshalb, weil, bedingt durch das Hilfsmoment und seine Wechselwirkung mit dem elektromagnetischen Antriebsmoment, bei einem solchen Motor niedrige Drehzahlen nicht regelbar sind. Der Grund hierfür ist, dass die Größe des Hilfsmoments durch den Drehzahlregler nicht beeinflusst werden kann und quasi eine feste Größe ist.

Bedingt durch diesen unteren Drehzahlbereich, in welchem eine Regelung nicht möglich ist, entsteht um die Drehzahl Null herum eine Lücke im Betriebsbereich.

Hierdurch ergeben sich besonders dann Schwierigkeiten, wenn die Drehrichtung umgekehrt werden soll, z. B. wenn von einer Drehzahl von 3000 U/min in Vorzugsrichtung umgeschaltet werden soll auf 3000 U/min in Reversrichtung.

Es ist deshalb eine Aufgabe der Erfindung, ein neues Verfahren und einen neuen Motor der eingangs genannten Art bereitzustellen.

Nach der Erfindung wird diese Aufgabe gelöst durch den Gegenstand des Anspruchs 1. Dadurch, dass der Motor unterhalb einer vorgegebenen Mindestdrehzahl mit einem von der gewünschten Drehzahl unabhängigen Strom angetrieben wird, kann der Anlauf in einem Drehzahifenster, das durch die Mindestdrehzahl definiert ist, mit einem vom Regler nicht beeinflussten hohen Drehmoment erfolgen. Nach Verlassen dieses Drehzahifensters geht der Motor in den geregelten Betrieb über, um die gewünschte Drehzahl ("Soll-Drehzahl") zu erreichen, und dies geschieht in der Weise, dass dann der Stellwert abhängig von der Differenz zwischen gewünschter Drehzahl und tatsächlicher Drehzahl eingestellt wird, also eine Drehzahlregelung stattfindet, bevorzugt durch einen PI-Regler.

Bei einer sehr vorteilhaften Weiterbildung der Erfindung wird der Stellwert (und damit der dem Motor zugeführte Strom) als Funktion der Differenz zwischen gewünschter Drehzahl und tatsächlicher Drehzahl fortlaufend berechnet, aber für den Regelvorgang erst bei oder nach Erreichen der Mindestdrehzahl verwendet. Dadurch steht nach Verlassen des erwähnten Drehzahifensters sofort ein bereits berechneter Stellwert für die Drehzahlregelung zur Verfügung.

Eine andere Lösung der gestellten Aufgabe ist Gegenstand des Patentanspruchs 10.

Ein solcher Motor hat ein Drehzahlfenster, das er beim Anlauf ohne Drehzahlregelung durchläuft, und erst nach Verlassen dieses Fensters setzt die Drehzahlregelung ein.

Daraus ergibt sich gleichzeitig, dass innerhalb des Fensters eine Drehzahlregelung nicht möglich ist, weshalb eine gewünschte Drehzahl, die innerhalb dieses Fensters liegt, als Drehzahl Null interpretiert wird, also als eine Drehzahl, die nicht dargestellt werden kann.

Weitere Einzelheiten und vorteilhafte Weiterbildungen der Erfindung ergeben sich aus den im folgenden beschriebenen und in der Zeichnung dargestellten, in keiner Weise als Einschränkung der Erfindung zu verstehenden Ausführungsbeispielen, sowie aus den übrigen Unteransprüchen. Es zeigt : Fig. 1 ein Übersichtsschaltbild einer bevorzugten Ausführungsform einer Brückenschaltung für einen zweipulsigen ECM kleiner Leistung, Fig. 2 ein Schaltbild mit den Anschlussbezeichnungen eines beim Ausführungsbeispiel verwendeten Mikrocontrollers 76, Fig. 3 ein Schaltbild einer Hilfsschaltung, welche an den Eingang RA0 des Mikrocontrollers 76 angeschlossen ist ; dieser Eingang RAO ist der Eingang eines A/D-Wandlers, Fig. 4 ein Schaltbild der Beschaltung des Eingangs RB1, alternativ des Eingangs RB7, des Mikrocontrollers 76, Fig. 5 ein Schaltbild, welches zeigt, wie aus den Ausgangssignalen eines Hallgenerators 6 ein Frequenzsignal abgeleitet und dem Eingang RBO des Mikrocontrollers 76 zugeführt wird, wo dieses Signal in Hall-Interrupts umgesetzt wird, Fig. 6 ein Gesamtschaltbild der verwendeten Hardware ; hier werden dieselben Bezugszeichen verwendet wie in den vorhergehenden Figuren 1 bis 5, Fig. 7 eine Prinzipdarstellung eines 1-Quadranten-Reglers (1-Q-Reglers), Fig. 8 eine Prinzipdarstellung eines 2-Q-Reglers, Fig. 9 eine Prinzipdarstellung eines 4-Q-Reglers, Fig. 10 eine Darstellung des Verlaufs interner Signale bei einem Übergang von +3000 nach-3000 U/min, Fig. 11 ein Zustandsdiagramm, welches die Änderung der Zustände bei verschiedenen Betriebszuständen zeigt, Fig. 12 eine schematisierte Darstellung des Anlaufvorgangs in Reversrichtung, Fig. 13 eine schematisierte Darstellung eines typischen Verlaufs eines Reluktanzmoments, Fig. 14 ein Flussdiagramm einer Routine für den Vergleich zwischen der tatsächlichen Drehrichtung und einer vom Benutzer eingestellten Drehrichtung, Fig. 15 ein Flussdiagramm einer Routine für die Ermittlung des Motorstatus, Fig. 16 & 17 ein Flussdiagramm für die Diskriminierung zwischen verschiedenen Betriebszuständen eines Motors, Fig. 18 eine schematische Darstellung der bei der Kommutierung des Motors verwendeten Größen und ihrer Verwendung, und Fig. 19 ein Flussdiagramm RGL, welches Rechenvorgänge bei der Drehzahlregelung eines Motors zeigt.

In der nachfolgenden Beschreibung werden für gleiche oder gleich wirkende Teile oder Funktionen dieselben Bezugszeichen verwendet, und diese werden gewöhnlich nur einmal beschrieben. Bei der Beschreibung von Drehzahlen und ihren Änderungen folgen wir dem Sprachgebrauch, d. h. wenn sich der Rotor schneller dreht, egal in welcher Richtung, sprechen wir von einer Erhöhung der Drehzahl. Folgende Abkürzungen werden verwendet : Y JA N NEIN n tatsächliche Drehzahl, Istdrehzahl ; wird als Zeit T_HALL gemessen nsoii gewünschte Drehzahl, Solldrehzahl ; wird als Zeit t_s vorgegeben BW Blocklänge eines im Motor 30 fließenden Stromimpulses, vgl. Fig. 18.

Diese Blocklänge stellt den sogenannten"Stellwert"des Drehzahlreglers dar und wird mit dem Flussdiagramm der Fig. 19 berechnet. Bei BW=Max wird BW auf einen Wert eingestellt, der z. B. etwas kleiner als THALL ist.

DIR Richtungsbefehl für Drehrichtung (von außen vorgegeben) DIRist aktueller Wert der Drehrichtung DlRsoll gewünschter Wert der Drehrichtung inv. 180° Umschaltung der Kommutierung auf das Gegenteil der augenblicklichen Kommutierung. In Fig. 18 kommt innerhalb des Bereichs, der mit 360° el. bezeichnet ist, als erstes ein Stromimpuls 444 (Strom i') und dann ein Stromimpuls 446 (Strom i). Nach Umschalten durch"inv. 180°"kommt als erstes ein Impuls 446 und danach ein Impuls 444, so dass der Motor in umgekehrter Richtung angetrieben wird. Durch erneutes Umschalten mit"inv. 180wird der Zustand nach Fig. 18 wieder hergestellt. Vgl. hierzu die Gleichungen (5), (6), (11), (12) und die Erläuterungen zu Fig. 19.

Beim Ausführungsbeispiel bedeuten : DIR = 0 Befehl : Gewünschter Lauf in Vorzugsrichtung DIR = 1 Befehl : Gewünschter Lauf entgegen der Vorzugsrichtung, also in Reversrichtung Rt Richtungsflag. Der Wert von Rt wird erst gespeichert, wenn bestimmte Bedingungen erfüllt sind und kann sich deshalb von DIR unterscheiden.

Rt = 0 Vorzugsrichtung Rt = 1 Reversrichtung.

Rs Flag, das anzeigt, ob der Motor ungeregelt oder geregelt laufen soll.

Rs = 0 Ungeregelter Lauf in der gewünschten Drehrichtung mit max. Strom Rs = 1 Lauf in der gewünschten Drehrichtung mit geregelter Drehzahl NMIN Mindestdrehzahl. Bei steigender Drehzahl |n| unterhalb von INMINI läuft der Motor ungeregelt mit maximalem Strom, und bei Drehzahlen darüber mit Drehzahlregelung.

T_HALL Zeit, die der Rotor für das Durchlaufen eines vorgegebenen Drehwinkels benötigt, der durch zwei Änderungen eines Rotorstellungssignals HALL definiert ist. Beim Ausführungsbeispiel entspricht T_HALL der Zeit für ein Viertel einer vollen Rotorumdrehung. T_HALL wird als Maß für die aktuelle Drehzahl n verwendet, vgl. die Gleichungen (9) und (10). t_s Soll-Zeit, die dem Drehzahlregler (Fig. 19) als gewünschter Wert für die Drehzahl vorgegeben wird, und die der Zeit für ein Viertel einer vollen Rotorumdrehung bei nsoi entspricht.

RGL_DIFF Regeldifferenz. (Differenz zwischen T_HALL und t s, vgl. S654 in Fig. 19.) RGL_P Proporzionalfaktor des Drehzahlreglers RGL_I Integralfaktor des Drehzahlreglers, vgl. S664 in Fig. 19.

Zum Stellwert BW ist zu bemerken, dass dieser die Länge eines Stromimpulses (i oder i') festlegt, wobei dieser Stromimpuls mit der Länge BW seinerseits durch die PWM-Steuerung aus kürzeren Stromimpulsen zusammengesetzt sein kann, und durch die Vorgänge beim Abschalten der Stromimpuls etwas länger ist als BW.

Die Hardware Fig. 1 zeigt symbolisch die Grundstruktur eines zweipulsigen elektronisch kommutierten Motors 30, der bei diesem bevorzugten Ausführungsbeispiel mit einer Vollbrückenschaltung 31 dargestellt ist und deshalb nur einen einzigen Wicklungsstrang 32 mit zwei Anschlüssen 34,36 hat, ferner einen permanentmagnetischen Rotor 38, der als vierpoliger Rotor dargestellt ist. Wenn sich der Rotor 38 dreht, wird der Wicklungsstrang 32 abwechselnd von Stromimpulsen i von links nach rechts und von Stromimpulsen i'von rechts nach links durchflossen.

"Zweipulsig"heißt ein solcher Motor, weil während einer Rotordrehung von 360° el. ein Impuls i und ein Impuls i'fließen, also zwei Impulse, vgl. Fig. 18. Man kann auch einen ersten Wicklungsstrang für die Impulse i und einen zweiten Strang für die Impulse i' vorsehen, wie das dem Fachmann bekannt ist. Ein zweipulsiger Motor kann also ein- oder zweisträngig sein.

Für die Zwischenzeit zwischen zwei Impulsen i, i' (oder i'und i), in der kein Strom fließt, braucht der Motor zu seinem Antrieb ein Hilfsmoment, das man als Reluktanzmoment MR bezeichnet, vgl. Fig. 13, weil es durch die Wechselwirkung des permanentmagnetischen Rotors 38 mit am Stator vorgesehenen Eisenmassen entsteht, z. B. mit dem Blechpaket (lamination stack) des Stators. Solche Motoren sind in Stückzahlen von Hunderten von Millionen gefertigt worden, weshalb es nicht nötig erscheint, sie in allen ihren vielen Varianten zu beschreiben.

Der Motor 30 wird aus einem Gleichstromnetz mit einer Plusleitung 40 (z. B. + 24 V) und einer Minusleitung 42 (GND) mit Strom versorgt. Ferner ist eine Spannungsquelle mit einer geregelten Hilfsspannung von z. B. +5 V vorgesehen, deren Ausgang mit 43 bezeichnet ist. Diese wird nachfolgend bei Fig. 6 beschrieben.

Dem Wicklungsstrang 32 sind vier Freilaufdioden 44,46, 48,50 zugeordnet. Die Katoden der Dioden 44,46 sind mit der Plusleitung 40 verbunden, die Anoden der Dioden 48,50 mit der Minusleitung 42. Die Anode der Diode 44 und die Katode der Diode 48 sind mit dem Anschluss 34 verbunden. Die Anode der Diode 46 und die Katode der Diode 50 sind mit dem Anschluss 36 verbunden.

Zur Steuerung der Ströme i, i'dienen bei diesem Beispiel zwei Leistungs- Operationsverstärker (OPV) 52,54. Bei dieser bevorzugten Ausführungsform sind sie als Komparatoren bzw. als invertierende Verstärker geschaltet. Der Ausgang des OPV 52 ist mit dem Anschluss 34 verbunden, der Ausgang des OPV 54 mit dem Anschluss 36. Naturgemäß kann die Brückenschaltung auch mit anderen Halbleiterelementen ausgeführt werden.

Vom Anschluss 43 (+ 5 V) führt ein Widerstand 56 zum Pluseingang 5 des OPV 52, und von dort führt ein Widerstand 60 zur Minusleitung 42.

Ebenso führt vom Anschluss 43 (+ 5 V) ein Widerstand 62 zum Pluseingang 64 des OPV 54, und von dort führt ein Widerstand 66 zur Minusleitung 42.

Bevorzugte Werte der Bauelemente in Fig. 1 Widerstände 56,60, 62,66... 22 kOhm Operationsverstärker 52,54... L2720, Hersteller : SGS Diese Operationsverstärker enthalten bevorzugt einen eingebauten Strombegrenzer, um eine Überlastung zu verhindern.

Da alle Widerstände gleich groß sind, erhält man an den Pluseingängen beider OPV 52,54 ein Potenzial von + 2,5 V.

Dem Minuseingang 70 des OPV 52 wird ein Steuersignal zugeführt, das entweder größer oder kleiner als 2,5 V ist, und dasselbe gilt für den Minuseingang 72 des OPV 54.

Zur Ansteuerung wird entweder an den Eingang 70 ein Potenzial von > 2,5 V gelegt, so dass der Punkt 34 mit der Minusleitung 42 verbunden wird, und an den Eingang 72 wird dann ein Potenzial von < 2,5 V gelegt, so dass sein Ausgang mit der Plusleitung 40 verbunden wird, also hier mit +24 V. In diesem Fall fließt ein Strom i'von der Plusleitung 40 über den OPV 54, die Anschlüsse 36,34 und den OPV 52 zur Minusleitung 42. Im umgekehrten Fall liegt der Eingang 70 an einem Potenzial <2,5 V und der Eingang 72 an einem Potenzial >2,5 V, so dass ein Strom i vom Anschluss 34 zum Anschluss 36 fließt.

Zur Veranschaulichung sind in Fig. 1 Schalter gestrichelt eingezeichnet. Im OPV 52 sind das ein oberer Schalter HSL und ein unterer Schalter LSL. Im OPV 54 sind das ein oberer Schalter HSR und ein unterer Schalter LSR. Es bedeuten HSL High Side Left HSR High Side Right LSL Low Side Left LSR Low Side Right Wenn HSL und LSR eingeschaltet sind, fließt ein Strom i, und wenn HSR und LSL eingeschaltet sind, fließt ein Strom i'.

Fig. 2 zeigt das Anschlussschema eines beim vorliegenden Ausführungsbeispiel verwendeten Mikrocontrollers 76 vom Typ PIC16C711. Die Anschlüsse sind in der üblichen Weise mit Zahlen und mit Buchstaben bezeichnet. Wie aus Fig. 6 hervorgeht, ist der Anschluss 70 des OPV 52 über einen Widerstand 78 mit dem Ausgang RB3 des pC 76 verbunden, und der Anschluss 72 über einen Widerstand 80 mit dem Ausgang RB2, d. h. die Vollbrückenschaltung 31 der Fig. 1 wird direkt vom uC 76 und seinem Steuerprogramm gesteuert. Letzteres wird nachfolgend unter"Software" beschrieben. Die Widerstände 78 und 80 können z. B. je 10 kOhm haben.

Fig. 3 zeigt die Erzeugung des Signals für die gewünschte Drehzahl (Solldrehzahl sou). Der C 76 hat eine Mehrkanal-8 Bit-A/D-Wandlung, d. h. er setzt ein zugeführtes analoges Signal in ein digitales Signal mit 8 Bit um. Von dieser A/D-Wandlung wird am Eingang RAO ein Kanal benutzt. Da es in der Industrie üblich ist, derartige Signale entweder als Gleichspannung mit einem Spannungsbereich von 0... 10 V vorzugeben, oder als Frequenzsignal mit einem Tastverhältnis von 0 bis 100 %, wird eine Schaltung gemäß Fig. 3 verwendet. Diese hat einen Anschluss 84 für das von außen zugeführte Signal, also entweder eine Gleichspannung U= oder ein PWM-Signal PWM.

Vom Anschluss 84 führt ein Widerstand 86 zu einem Knotenpunkt 88, und von dort ein Widerstand 90 zur Minusleitung 42.

Vom Knotenpunkt 88 führt ein Widerstand 92 zum Anschluss RAO des uC 76, und von RAO zur Minusleitung 42 ein Kondensator 94. Auf diese Weise wird die Spannung bzw. das PWM-Signal am Eingang 84 in einen Spannungsbereich umgesetzt, der am Eingang RAO digitalisiert werden kann.

Bevorzugte Werte für Fig. 3 Widerstände 86,90... 2,7 kOhm Widerstand 92... 680 kOhm Kondensator 94... 68 nF Fig. 4 zeigt die Erzeugung eines Signals für die gewünschte Drehrichtung, das dem Eingang RB1 des uC 76 zugeführt wird. Von einem Eingang 98 für einen von außen zugeführten Logikpegel (Steuersignal) DIR (entweder gilt DIR=0 oder DIR=1) führt ein Widerstand 100 zum Eingang RB1, und von dort ein Kondensator 102 zur Minusleitung 42.

Bevorzugte Werte : Widerstand 100... 2, 7 kOhm Kondensator 102... 10 nF Falls die gewünschte Drehzahl einem Eingang 98'in Form einer Frequenz zugeführt werden soll, wird ebenfalls die Schaltung gemäß Fig. 4 verwendet, aber mit anderen Werten, weshalb die entsprechenden Bauelemente mit Bezugsziffern in Klammern bezeichnet sind. Der Widerstand 100'hat hier ebenfalls bevorzugt 2,7 kOhm, der Kondensator 102'4,7 nF, und das Signal am Ausgang wird dem Eingang RB7 des pC 76 zugeführt.

Fig. 5 zeigt eine Schaltung zur Erfassung eines Frequenzwertes, der der Drehzahl des Rotors 38 proportional ist.

Hierzu ist im Bereich des Rotors 38 ein Hallgenerator 106 vorgesehen, wie in Fig. 1 symbolisch angedeutet. Seine Stromeingänge sind über einen Widerstand 108 mit dem Anschluss 43 (+ 5 V) und über einen Widerstand 110 mit der Minusleitung 42 verbunden. Seine Ausgangssignale werden dem Minuseingang 112 und dem Pluseingang 114 eines OPV 116 zugeführt, dessen Ausgang 118 über einen Rückkopplungswiderstand 120 mit dem Minuseingang 112 und direkt mit dem Eingang RBO des uC 76 verbunden ist. Der Eingang RBO hat eine Interrupt-On- Change-Funktion, d. h. wenn das Signal am Hallgenerator 106 rasch steigt oder rasch fällt, wird im uC 76 ein sogenannter Hall-Interrupt erzeugt. Dieser dient zur Steuerung der Kommutierung des Motors 30 und zur Erfassung von dessen Drehzahl.

Bevorzugte Werte in Fig. 5 : Widerstände 108,110... 470 Ohm Widerstand 120... 100 kOhm Hallgenerator 106... HW301A FU OPV 116... LM29030 Fig. 6 zeigt eine bevorzugte Schaltung gemäß den Fig. 1 bis 5 in der Zusammenschau. Für gleiche oder gleich wirkende Teile werden in allen Figuren dieselben Bezugszeichen verwendet, und diese Teile werden gewöhnlich nur einmal beschrieben.

Die Plusleitung 40 ist über eine Diode 128 mit einem Anschluss 130 verbunden, der z. B. an eine Batterie 132 angeschlossen sein kann. Die Diode 128 verhindert eine Zerstörung der Schaltung, wenn die Batterie 132 mit falscher Polarität angeschlossen wird. Ein Kondensator 134 (z. B. 10 uF) ist zwischen den Leitungen 40 und 42 angeschlossen und dient dazu, Energie aufzunehmen, die über die Freilaufdioden 44 bis 50 an die Leitung 40 zurückgespeist wird.

Vom Anschluss 130 führt ein Widerstand 134 über einen Knotenpunkt zu einer Zenerdiode 138 (5,6 V) und von dieser zur Minusleitung 43, an die auch der Emitter eines npn-Transistors 140 angeschlossen ist, dessen Basis mit dem Knotenpunkt 136 und dessen Kollektor über einen Widerstand 142 mit dem Anschluss 130 verbunden ist. Der Transistor 140 arbeitet als Emitterfolger und liefert an seinem Emitter und dadurch an der Leitung 43 eine geregelte Spannung von z. B. + 5 V, die über einen Kondensator 144 (10 nF) gesiebt wird.

Der Anschluss Vss des uC 76 ist mit der Minusleitung 42 verbunden, der Anschluss VDO mit der Leitung 43. An die Anschlüsse OSC1 und OSC2 ist ein Quarzoszillator 146 (1 MHz) angeschlossen, zu dem eine Serienschaltung von zwei Kondensatoren 148,150 parallelgeschaltet ist, deren Verbindungspunkt mit der Leitung 42 verbunden ist. Die nicht verwendeten Anschlüsse RA1, RA2, RA3, RA4, MLCR/, RB4, RB5, RB6 sind jeweils über einen Widerstand R (z. B. 10 kOhm) mit der Leitung 43 verbunden und liegen dadurch auf einem definierten Potenzial.

Der Rest der Schaltung gemäß Fig. 6 wurde bereits bei den Fig. 1 bis 5 ausführlich beschrieben.

Erläuterung des Vierquadrantenbetriebs (4-Q-Betriebs) In den Fig. 7 bis 9 sind die vier Quadranten mit I bis IV bezeichnet.

Fig. 7 zeigt ein Diagramm für einen 1-Q-Betrieb, z. B. Betrieb des Motors 30 in seiner Vorzugsrichtung. Auf der waagerechten Achse ist die Drehzahl n aufgetragen, auf der senkrechten Achse das antreibende oder bremsende Drehmoment M.

In einem Bereich 150 um den Nullpunkt herum ist bei dieser Motorbauart kein geregelter Betrieb möglich, sondern erst in einem Bereich 152. Im Bereich 152 wird der Motor 30 z. B. auf eine geregelte Drehzahl +N beschleunigt. Wenn die Drehzahl +N überschritten wird, so dass ein höherer Drehzahlwert +N1 erreicht wird, erhält der Motor 30 zeitweilig keinen oder nur wenig Strom, so dass seine Drehzahl längs einer Kurve 154 infolge Reibung etc. wieder sinkt. Eine aktive Bremsung findet nicht statt, sondern das positive Drehmoment M wird reduziert, ggf. auf Null.

Fig. 8 zeigt einen 2-Q-Betrieb, also einen Zweiquadrantenbetrieb, bei dem der Motor 30 auch rückwärts laufen kann. Beim Rückwärtslauf wird er mit einem negativen Drehmoment angetrieben und erreicht so die geregelte Drehzahl-N. Steigt durch äußere Einflüsse diese Drehzahl noch höher auf-N1, so wird das negative Drehmoment seinem Betrag nach reduziert (Kurve 156), ggf. auf 0, so dass die Drehzahl durch Reibung etc. wieder auf den Wert-N sinkt.

Fig. 9 zeigt die Darstellung eines 4-Q-Betriebs, also eines Vierquadrantenreglers. Es sei unterstellt, dass bei Antrieb in Vorwärtsrichtung auf eine Drehzahl +N geregelt wird, entsprechend dem Punkt 160.

Wenn durch äußere Einflüsse die Drehzahl auf einen Wert +N1 erhöht wird, entsprechend einem Punkt 162, der über der gewünschten Drehzahl liegt, wird vom Regler ein negatives (bremsendes) Drehmoment erzeugt, d. h. der Motor geht zu einem Punkt 164, und dort wird durch den Regler ein Bremsmoment erzeugt, so dass die Drehzahl zu einem Punkt 166 geht, der der geregelten Drehzahl +N entspricht. Dort wird wieder auf ein positives Drehmoment umgeschaltet, so dass der Regler wieder zum Punkt 160 geht, entsprechend der gewünschten Drehzahl +N.

Das bremsende Drehmoment wird bei dieser Motorbauart in sehr einfacher Weise dadurch erzeugt, dass der Motor 30 mit einer um 180° el. verschobenen Kommutierung betrieben wird, d. h. mit derselben Kommutierung wie bei Rückwärtslauf. Dies wird nachfolgend bei Fig. 19 beschrieben.

Wenn der Motor 30 mit der Drehzahl-N rückwärts läuft, arbeitet er am Punkt 168.

Wird er dort durch äußere Einflüsse angetrieben, so kann seine Drehzahl auf-N1 ansteigen, also bis zum Punkt 170. Dort schaltet der 4-Q-Regler auf ein positives Drehmoment um, also zum Punkt 172, und durch das positive Drehmoment sinkt die Drehzahl wieder auf-N, also zum Punkt 174, wo das Drehmoment wieder auf Antrieb in Rückwärtsrichtung umgeschaltet wird, so dass man wieder am Ausgangspunkt 168 ist, also der gewünschten Drehzahl.

In der gleichen Weise ist auch ein Übergang von +N (Punkt 160) zu-N (Punkt 168) möglich. Dazu wird durch einen Befehl DIR=1 (am Eingang 98 der Fig. 6) bei der Drehzahl +N ein negatives Drehmoment erzeugt, d. h. der Motor geht vom Punkt 160 zum Punkt 166, von dort zur Drehzahl 0, und dann-mit dem gleichen, nunmehr antreibend wirkenden Drehmoment, das ständig eingeschaltet bleibt-zur Drehzahl -NMIN am linken Ende des Fensters 150. Dort wird auf Drehzahlregelung umgeschaltet, und die Drehzahl wird auf den Wert-N geregelt, entsprechend dem Punkt 168. Der Motor läuft dann in Rückwärtsrichtung mit der Drehzahl-N.

Will man vom Punkt 168 zum Punkt 160 gelangen, wobei also die Drehzahl durch den Wert Null geht und der Motor seine Drehrichtung umkehrt, so geht der Verlauf vom Punkt 168 zum Punkt 174 (positives Drehmoment wird erzeugt), zur Drehzahl 0, und dann-mit demselben positiven Drehmoment-zur Drehzahl +NMIN und anschließend - mit Drehzahlregelung-zum Punkt 160 mit der Drehzahl +N.

Der Vorteil beim 4-Q-Betrieb ist, dass Drehzahländerungen sehr schnell ablaufen, der Antrieb also sehr dynamisch ist, und dass z. B. auch der Antrieb eines Roliladens möglich ist, weil beim Schließen des Rollladens, wo dieser nach unten zieht und dadurch den Motor 30 antreibt, letzterer automatisch in den Bremsbetrieb übergeht und dadurch die eingestellte Drehzahl beibehält. Bei dieser Motorbauart ist zudem die Umschaltung des Drehmoments von positiv nach negativ oder umgekehrt außerordentlich einfach und problemlos.

Software Hierzu wird auf Fig. 10 Bezug genommen. Diese zeigt als Beispiel einen Drehzahlbereich von-3000 bis +3000. In diesem Bereich befindet sich das Fenster 150, das von einer unteren Mindestdrehzahl-NMIN bis zu einer oberen Mindestdrehzahl +NMIN geht, z. B., wie dargestellt, von-1000 bis +1000.

In diesem Fenster 150 ist, wie eingangs beschrieben, bei dieser Art von Motor eine Drehzahlregelung nicht möglich. Wenn der Benutzer z. B. eine Drehzahl von +800 U/min einstellt, wird das deshalb vom C 76 so interpretiert, als würde die Drehzahl 0 eingestellt, d. h. der Motor 30 läuft nicht an, oder er wird, wenn er läuft, abgeschaltet.

Solange sich die aktuelle Drehzahl n innerhalb des Fensters 150 befindet, wird ein Flag Rs=0 gesetzt, was vom Rechner als"Motor steht"interpretiert wird, obwohl die Drehzahl z. B. zwischen-999 und +999 U/min liegen kann.

Bei Verlassen des Fensters 150 wird dieses Flag umgestellt auf Rs = 1, also"Motor läuft", und in diesem Bereich, wo Rs=1 ist, wird die Drehzahl durch einen Drehzahlregler geregelt.

Ferner wird ein Richtungsflag Rt verwendet. Erst wenn beim Anlauf oder einer Drehrichtungsänderung die Drehzahl das Fenster 150 verlässt, wird das Richtungsflag Rt umgeschaltet auf den Wert der augenblicklich vom Benutzer befohlenen Richtung DIR, der am Eingang 98 (Fig. 6) zugeführt wird. (DIR kann entweder den Wert 0 oder den Wert 1 haben).

Wenn z. B. in Fig. 10 der Motor 30 am Punkt A arbeitet, also bei eine Drehzahl von 3000, wobei Rt=0 ist, und es wird der Befehl DIR=1 gegeben, also der Befehl, dass der Motor 30 reversieren und zum Punkt B gehen soll, also auf den Drehzahlwert-3000, so wird ab dem Punkt A der Motor 30 mit maximalem Bremsstrom bestromt (also nicht mehr geregelt) und unterschreitet dadurch rasch +NMIN, wo Rs von 1 auf 0 umgeschaltet wird. Die Information Rs=0 instruiert den Rechner, weiterhin mit maximalem Bremsstrom zu arbeiten, so dass zunächst die Drehzahl 0 erreicht wird, wo der Bremsstrom-durch die geänderte Drehrichtung-automatisch zum Antriebsstrom wird, so dass die Drehzahl in negativer Richtung ansteigt. Während dieser ganzen Zeit bleibt die"alte"Drehrichtung Rt = 0 gespeichert. Dabei wird die Drehzahl 0 problemlos und kontinuierlich durchlaufen.

Ab Erreichen der Drehzahl-NMIN ergibt sich eine Änderung von Rs = 0 zu Rs = 1, d. h. ab hier setzt die Drehzahlregelung wieder ein und der neue, am Eingang 98 vorgegebene Richtungswert DIR=1 wird als Rt=1 gespeichert, so dass der Motor ab- NMIN geregelt bis zur Drehzahl-3000 hochläuft. Das Richtungsflag Rt wird also nicht beim Durchlaufen der Drehzahl 0 geändert, sondern erst beim Verlassen des Fensters 150 der Fig. 10.

In umgekehrter Richtung (von B nach A) ist der Ablauf spiegelbildlich genau derselbe, d. h. die Drehzahl 0 wird problemlos durchlaufen, weil bei diesem Typ von Motor gilt : Bremsen in einer Richtung = Antrieb in der Gegenrichtung.

Diese Eigenschaft wird bei der vorliegenden Erfindung in vorteilhafter Weise ausgenutzt.

Innerhalb des Fensters 150 wird nicht geregelt, sondern der Motor 30 läuft dort ungeregelt mit maximalem Stellwert, also maximalem Strom, wobei abhängig vom Motortyp der Motorstrom ggf. durch eine Strombegrenzung begrenzt werden muss, wie bei Fig. 1 beschrieben. In bevorzugter Weise wird bereits im Bereich des Fensters 150 der Stellwert BW (Fig. 18, 19) für die Regelung fortlaufend berechnet, damit er sofort zur Verfügung steht, wenn von Rs=0 auf Rs=1 umgeschaltet wird.

Bei den im Zusammenhang mit Fig. 1 und 6 beschriebenen Operationsverstärkern 52 und 54 vom Typ L2720 ist eine interne Strombegrenzung vorgesehen. Alternativ kann, besonders bei höheren Leistungen, auch eine externe Strombegrenzung vorgesehen werden.

Fig. 11 zeigt ein Zustandsdiagramm für die verschiedenen Abläufe, die im 4-Q- Betrieb vorkommen.

Der"normale"Anlauf in Vorwärtsrichtung Wenn im Zustand 181 (Stillstand des Motors 30) durch ein Signal DIR = 0 am Eingang 98 (Fig. 4 und 6) die Drehrichtung rechts, also Vorzugsrichtung, vorgegeben wird und der Drehzahl-Sollwert nsoii am Eingang 86 oder 98'größer als die Mindestdrehzahl +NMiN ist, geht der Regler in den Zustand 182, d. h. der Motor 30 läuft mit maximalem Stellwert BW, also maximalem Strom, in Vorzugsrichtung (DIR = 0) an. Der Start in Vorzugsrichtung ist bei diesen Motoren problemlos. Dabei wird das Flag Rs auf Rs = 0 eingestellt, da die tatsächliche Drehzahl n kleiner als NMIN ist.

Wenn die tatsächliche Drehzahl n den Wert +NMIN überschritten hat, geht der Motor 30 vom Zustand 182 in den Zustand 183, d. h. sein Betriebsbereich ist erreicht, und die Drehzahl n wird jetzt auf den vorgegebenen Wert nsoii durch den Regler der Fig. 19 geregelt, was in Fig. 11 mit"BW via RGL"symbolisch angegeben ist. Der Motorstatus Rs wird umgeschaltet auf Rs = 1, da die tatsächliche Drehzahl n größer als NMIN geworden ist, und der Regler regelt die Drehzahl durch Veränderung der Blocklänge BW (Fig. 18,19) auf den gewünschten Wert. Soll der Motor 30 z. B. schneller laufen, so wird der Stellwert BW innerhalb der zulässigen Grenzen vergrößert, d. h. der Motor 30 arbeitet dann mit einem höheren Stellwert BW und folglich einem höheren Strom.

Start in Reversrichtung Diese Art von Motor ist eigentlich nur für den Start in einer Vorzugsrichtung DIR = 0 ausgelegt. Deshalb ist für einen zuverlässigen Start in Reversrichtung (DIR = 1) "elektronische Hilfe"nötig. Hierbei läuft der Motor 30 zunächst aus dem Status 181 in Vorzugsrichtung an, also entgegen der befohlenen Drehrichtung DlRsoll.

Wenn im Zustand 181 die Drehrichtung DIR = 1, also links (Rückwärtsdrehung ; Drehung in Reversrichtung) vorgegeben wird, und der vorgegebene Sollwert nson negativer als die (negative) Mindestdrehzahl-NMIN ist, beschleunigt der Motor 30 zunächst in Vorzugsrichtung, also mit DIR = 0, misst dabei die Zeit T_HALL zwischen zwei Hallwechseln, also zwischen zwei Hall-Interrupts, bis T_HALL kleiner als ein vorgegebener Wert TG geworden ist, und bestromt anschließend nochmals während einer Zeit (TG-EW), damit der Motor 30 magnetische Energie für den Reversstart speichern kann, reversiert dann aus diesem Zustand, und beschleunigt bis-NMIN mit maximalem Stellwert BW = MAX in Rückwärtsrichtung. Dies ist der Zustand 184. Der Wert EW ist dabei eine empirisch ermittelte Konstante für den betreffenden Motor 30 in seiner konkreten Applikation, also z. B. eingebaut in einem Lüfter.

Nach Erreichen von-NMIN wird Rs = 1 gesetzt, und der Motor geht in den Zustand 183 über. Dort wird die Drehzahl durch den Drehzahlregler (Fig. 19) auf den gewünschten Wert geregelt ("BW via RGL"), und die eingestellte Sollrichtung (DIR = 1) wird jetzt als Flag Rt = 1 gespeichert.

Der pC 76 hat bei diesem Beispiel für die Erfassung der Drehzahl einen Zähler, der nur bis 64.000 us zählen kann, also bis 64 ms. Dies bedeutet, dass man die Drehzahl n erst messen kann, wenn die Zeit zwischen zwei Hall-Interrupts kleiner als TG = 64 ms geworden ist. Diese Zeit entspricht einer Rotordrehung von 180° el. Wenn der Motor 30 bei der Messung noch zu langsam ist, tritt ein Überlauf auf, und diese Messung kann deshalb noch nicht verwendet werden. Deshalb wird der Motor 30 so lange in Vorzugsrichtung (DIR = 0) angetrieben, bis die Zeit zwischen zwei Hall-Interrupts einen Wert von kleiner ais TG = 64 ms erreicht hat. Wenn der Motor 30 ein kleines GD2 hat, erreicht er diese Drehzahl n schon zwischen den beiden ersten Hall-Interrupts, aber bei einem Lüfter mit großem Lüfterrad dauert es länger, bis diese Drehzahl erreicht ist.

Wenn die Drehzahl n so hoch geworden ist, dass zwischen zwei Hall-Interrupts die Zeit T_HALL für 180° el. z. B. 63,8 ms beträgt, was einer Drehzahl von 235 U/min entspricht, nämlich 60/ (4 x 0,0638), so zieht man von dieser so ermittelten Zeit T-Hall den empirisch ermittelten Wert EW ab, führt also die Operation (T_HALL-EW)... (1) durch, und ab dem nächsten Hall-Interrupt misst man diese Zeit (T_HALL-EW) und schaltet nach ihrem Ablauf um auf Kommutierung in Gegenrichtung, d. h. erst ab diesem Zeitpunkt wird der Rotor 38 in der gewünschten Richtung angetrieben. In diesem Augenblick entspricht der Wert T_HALL praktisch dem Wert TG.

Das ist in Fig. 12 für einen vierpoligen Motor 38 dargestellt. Fig. 12 zeigt zwei Hall- Interrupts 190,192. Zwischen diesen wird erstmals eine Zeit T_HALL gemessen, die kleiner ist als TG = 64 ms. Von dieser Zeit wird der Wert EW subtrahiert, z. B. 5 ms. Ab dem Hall-Interrupt 192 wird nun die berechnete Zeit (T_HALL-EW) gemessen, und zum Zeitpunkt 194 wird von DIR = 0 auf Bestromung in der gewünschten Sollrichtung, also mit DIR = 1, umgeschaltet. Dies bedeutet den Antrieb in Reversrichtung.

Der Motor 38 läuft bei diesem Vorgang durch seine gespeicherte Energie zunächst noch um einen kleinen Drehwinkel weiter in Vorzugsrichtung, und EW ist empirisch so ermittelt, dass der Motor bis zu einer Drehstellung weiterläuft, wo er in seinem magnetischen Kreis genügend magnetische Energie gespeichert hat, um den Start in Reversrichtung zu unterstützen und zu ermöglichen. Man kann sagen, dass der Rotor 38 bei seinem anfänglichen Start in Vorzugsrichtung, also der"falschen" Drehrichtung, "Schwung holt", also magnetische Energie für den Start in Reversrichtung speichert, und durch diesen"Schwung"läuft der Motor dann von dieser empirisch ermittelten Startstelle aus problemlos in Reversrichtung an.

Hierzu wird noch auf das Diagramm der Fig. 13 verwiesen, wo der Verlauf des Reluktanzmoments MR schematisiert dargestellt ist. An der Stelle 196 hat der Rotor 38 eine durch das Reluktanzmoment MR definierte Ruhelage, weil dort MR = 0 ist, und wenn er in Vorzugsrichtung (DIR = 0) startet, steigt das bremsende Reluktanzmoment 198 nur relativ langsam an, so dass ein Anlauf problemlos möglich ist. Startet der Rotor 38 jedoch in Reversrichtung (DIR = 1), so tritt direkt nach dem bei 196 erfolgenden Start ein steil ansteigendes bremsendes Reluktanzmoment 200 auf, das dort den Anlauf verhindern kann. Deshalb wird in diesem Fall der Rotor 38 durch Bestromung in der Richtung DIR = 0 bis etwa zu einer Stelle 202 (Fig. 13) verdreht, aus der heraus er problemlos in der Richtung DIR = 1 starten kann.

Übergang aus dem Zustand 183 in den Bremszustand Es gibt hier verschiedene Möglichkeiten : a) Die Drehzahl n soll reduziert werden. b) Der Motor 30 soll stillgesetzt werden. c) Der Motor soll reversiert werden. a) Die Drehzahl soll reduziert werden.

Wird lediglich die Drehzahl n reduziert, ohne dass sich die Drehrichtung ändert, so ist der Sollwert nsoii kleiner als der Istwert n, und der Regler geht in den Zustand 185, wo mit dem entsprechenden (geregelten) Strom der Motor um 180° el. versetzt bestromt wird, was mit"inv 180°"symbolisch angegeben ist. Die Reihenfolge der Strom- impulse i, i'wird hierbei invertiert, also umgekehrt. Das Flag Rs behält den Wert 1.

Ist der Sollwert noon wieder größer oder gleich dem Istwert n, so geht der Regler aus 185 zurück in den Zustand 183, d. h. die um 180° el. versetzte Bestromung wird wieder auf eine normale Bestromung umgeschaltet. Die neue Drehzahl wird also durch ein "dosiertes Bremsen"mittels inverser Bestromung erreicht, was sehr schnelle Regelvorgänge ermöglicht. b) Der Motor 30 soll stiligesetzt werden.

Ist der Sollwert noon kleiner als |NMINl (einschließlich des Sollwerts 0), so wird ebenfalls gebremst, indem die Bestromung um 180° el. verschoben wird, und der Regler geht- über den Zustand 185 und den Pfad 185'-in den Zustand 181, also Rs=0, BW=0 und Stillstand, weil unterhalb von INMINI aus physikalischen Gründen eine Drehzahlregelung nicht möglich ist und deshalb ein solcher Sollwert nson als gewünschte Drehzahl 0 interpretiert wird. Der Stellwert BW wird dabei auf 0 gestellt, d. h. der Strom zum Motor 30 wird abgeschaltet. c) Der Motor soll reversiert werden.

Soll-aus dem Zustand 183 heraus-der Motor 30 reversiert werden, so gilt gemäß 183' Sollrichtung + Istrichtung, und der Regler geht in den Zustand 186. Dort wird der Motor 30 mit maximalem Stellwert BW in Bremsrichtung bestromt, also mit"inv. 180°", unterschreitet dabei INMINI, und gelangt in den Zustand 188, wo Rs auf 0 umgeschaltet wird, solange die Drehzahl n im Fenster 150 (Fig. 10), also zwischen + N MIN und-N MIN, liegt. Der Status 188 (Rs = 0) besagt also nicht, dass der Motor 30 tatsächlich steht, sondern nur, dass seine tatsächliche Drehzahl n unterhalb der vorgegebenen Werte liegt. Dies zeigt Fig. 10. Innerhalb des gesamten Fensters 150 ist Rs = 0, und das gibt dem uC 76 die Information, dort mit maximalem Stellwert, also maximalem Strom, zu fahren, entsprechend dem Zustand 186. (Die Änderung in Rs = 0 im Zustand 188 ist eine Zustandsänderung und wird deshalb separat dargestellt.) Beim Reversieren der Drehrichtung geht der Motor 30 in Fig. 10 z. B. von A nach B, also vom Zustand 183 zum Zustand 186. Obwohl hierbei die vorgegebene Soll- Drehrichtung DiRson den Wert 1 hat, bleibt der bisherige Wert Rt = 0 für die Drehrichtung vorerst gespeichert, und weil als neue Drehrichtung DIR = 1 vorgegeben ist und die neue Drehzahl außerhalb des Fensters 150 (Fig. 10) liegt, erhält der PC 76 die Information, dass der Motor 30 mit vollem Stellwert in umgekehrter Drehrichtung bestromt werden muss (Zustand 186). Im Bereich der bisherigen Drehrichtung bedeutet das einen Bremsvorgang mit hohem Strom, und diese Art der Bestromung mit hohem Strom wird zwischen A und B unverändert fortgesetzt bis zur Drehzahl- NMIN, also bis zum Verlassen des Fensters 150, wobei aber ab der Drehzahl 0 die vom Rotor 38 in der Wicklung 32 induzierte Spannung die Amplitude der Stromimpulse i bzw. i'reduziert. Hierbei wird die Drehzahl 0 problemlos kontinuierlich durchlaufen.

Ab-N MIN geht der uC 76 zum Zustand 187, wo sich Rs von 0 zu 1 ändert, d. h. ab dort setzt die Drehzahlregelung (Fig. 19) ein, und das Flag Rt = 1 für den neuen Richtungswert DIR = 1 (am Eingang 98 der Fig. 6) wird jetzt gespeichert (Zustand 187), so dass der Motor 30 ab-N MIN geregelt bis zur gewünschten Drehzahl nsoll hochläuft, entsprechend dem Zustand 183 der Fig. 11.

In umgekehrter Richtung, also in Fig. 10 von B nach A, läuft der Vorgang spiegelbildlich genauso ab, d. h. die Drehzahl 0 wird problemlos durchlaufen, weil bei diesem Typ von Motor gilt : Bremsen in einer Richtung = Antrieb in Gegenrichtung.

Innerhalb des Fensters 150 um die Drehzahl 0 herum wird also nicht geregelt, sondern der Motor 30 läuft dort ungeregelt mit maximalem Stellwert, weil in diesem Bereich eine Regelung nicht möglich ist, aber trotzdem wird auch dort der Stellwert BW für die Drehzahlregelung bevorzugt fortlaufend berechnet, damit er sofort zur Verfügung steht, wenn Rs von 0 auf 1 umgeschaltet wird und die Drehzahlregelung einsetzen muss.

Fig. 14 zeigt das Flussdiagramm einer Routine S204 für den Vergleich der gewünschten Richtung DIRsoll mit der tatsächlichen Richtung DIRist, wie er in Fig. 11 an der Stelle 183'stattfindet.

Im Schritt S206 wird geprüft, ob D) Rist = DIRsoll ist. Falls ja, geht das Programm weiter zu S208 (Normalbetrieb), d. h. in Fig. 11 bleibt der Zustand 183 unverändert.

Falls in S206 die Antwort NEIN lautet, wird in S210 der Strom auf einen Maximalwert eingestellt, und in S212 wird auf eine um 180° el. phasenverschobene Kommutierung umgestellt. Dies entspricht in Fig. 11 dem Zustand 186.

Danach geht die Routine S204 zum Schritt S214"Return".

Fig. 15 zeigt eine Routine S220 mit der Bezeichnung"Motorstatus". In S222 wird der augenblickliche Wert von Rs im Register Rsalt gespeichert. Anschließend wird in S224 geprüft, ob der Betrag |nl der augenblicklichen Drehzahl größer ist als der Betrag INMINI der Mindestdrehzahl, d. h. ob die Drehzahl n außerhalb des Fensters 150 liegt.

Falls JA, wird in S226 das Flag Rs auf 1 gesetzt, was bedeutet, dass der Motor 30 mit einer ini >lNMlN| läuft und eine Regelung der Drehzahl stattfinden muss. Falls NEIN, wird in S228 Rs auf 0 gesetzt, was bedeutet, dass sich die Drehzahl innerhalb des Fensters 150 (Fig. 10) befindet, weshalb eine Drehzahlregelung nicht möglich ist.

Anschließend wird im Schritt S230 geprüft, ob Rs nach wie vor den Wert gemäß S222 hat, oder sich geändert hat. Letzteres bedeutet, dass die Schwelle der Drehzahl, also IMIN1, in der einen oder anderen Richtung überschritten wurde, weshalb dann anschließend geprüft werden muss, in welcher Richtung diese Schwelle überschritten wurde. Falls in S230 die Antwort JA lautet, geht die Routine zu ihrem Ende, nämlich zu S232, Return. Falls NEIN, hat sich der Wert von Rs seit dem Schritt S222 geändert, und in S234 wird geprüft, ob Rsalt = 0 war. Falls NEIN bedeutet dies, dass Rsalt den Wert 1 hatte und sich zu Rs=0 geändert hat, d. h. dass die aktuelle Drehzahl n jetzt einen Wert innerhalb des Fensters 150 hat, und die Routine S220 wird über S232 verlassen.

Falls in S234 die Antwort JA lautet, bedeutet dies, dass die Drehzahl des Motors 30 gestiegen ist, die Schwelle INMINI überschritten hat, und jetzt außerhalb des Fensters 150 (Fig. 10) liegt, weshalb in S236 das Flag Rt jetzt den neuen Soll-Richtungswert DIR annimmt, der vom Benutzer am Eingang 98 vorgegeben wurde, und in S238 auf eine Drehzahlregelung RGL übergegangen wird, so dass der Drehzahlregler eingreift und die Drehzahl auf den vom Benutzer vorgegebenen Wert nson geregelt wird. Danach wird diese Routine S220 über S232 verlassen.

Die Fig. 16 und 17 zeigen eine Diskriminierungsfunktion S250, welche dazu dient, die Vorgänge beim Anlauf, einer Drehzahländerung oder einer Drehrichtungsänderung des Motors 30 zu steuern.

Im Schritt S252 wird geprüft, ob ein neuer Wert für die Solidrehzahl nsoll vorliegt. Dieser Wert wird beim vorliegenden Ausführungsbeispiel als eine Zeit t_s vorgegeben, die der Motor 30 z. B. für eine Drehung von 180° el. benötigen soll. Falls JA, wird in S254 der neue Wert für noon (also t s) gespeichert, und in S256 wird ein Flag mit der Bezeichnung"nsoii NEWFLG"auf 1 gesetzt, um anzuzeigen, dass ein neuer Wert vorliegt.

Falls in S252 die Antwort NEIN ist, geht das Programm zu S258, wo geprüft wird, ob ein neuer Wert für die tatsächliche Drehzahl n vorliegt. (Beim Ausführungsbeispiel wird als Wert für die tatsächliche Drehzahl die Zeit T_HALL verwendet, die der Rotor 38 für eine Drehung von 180° el. benötigt. ) Falls NEIN, geht das Programm zurück zu S252. Falls JA, wird in S260 der neue Wert für n gespeichert, und bei S262 wird ein Flag auf 1 gesetzt, das die Bezeichnung"n NEWFLG"hat, um anzuzeigen, dass ein neuer Wert für n vorliegt. Wie nachfolgend beschrieben, wird dann, wenn zwei neue Werte vorliegen, eine Berechnung mit diesen Werten durchgeführt, und dann werden bei S268 beide Flags auf 0 gesetzt, um anzuzeigen, dass diese Werte"verarbeitet" sind.

Anschließend an S256 und S262 wird in S264 geprüft, ob die beiden Flags aus S256 und S262 den Wert"1"haben. Falls NEIN, geht das Programm zurück zu S252. Falls JA, wird in S266 aus den beiden neuen Werten für n und nsoll, also aus T_HALL und t_s, ein neuer Stellwert BW berechnet. Dieser Wert gibt die Länge eines Stromblocks bei der sogenannten Blockregelung an, die bei Fig. 18 erläutert wird. (Die Berechnung von BW wird bei Fig. 19 beschrieben. ) Danach werden in S268 die beiden Flags "n NEWFLG"und'nsolì NEWFLG"wieder auf"0"gesetzt, um anzuzeigen, dass die beiden aktuellen Werte zu einem neuen Stellwert BW verarbeitet worden sind.

Im Schritt S272 (Fig. 17) wird geprüft, ob die Solldrehzahl nsoll innerhalb oder außerhalb des Fensters 150 (Fig. 10) liegt, also ob |nSO NMINI ?... (2) Falls NEIN ("N"), soll das so interpretiert werden, dass die gewünschte Drehzahl gleich Null ist, und es wird anschließend in S274 geprüft, ob die tatsächliche Drehzahl n innerhalb des Fensters 150 liegt, also ob ini : INmINi ?. .. (3) Falls die Drehzahl n außerhalb des Fensters 150 liegt (Antwort : JA), geht die Routine zu S275 und dort wird der Motor 30 mit dem berechneten Stellwert BW abgebremst.

Falls die Drehzahl n innerhalb des Fensters 150 liegt, also beim Beispiel im Bereich zwischen-1000 und +1000 U/min, wird in S276 gesetzt Rs=0 und in S277 BW=0, also Motor 30 stromlos, und die Routine geht zu S278 (Return).

Falls in S272 die Antwort Y (JA) ist, also die gewünschte Drehzahl nsoll außerhalb des Fensters 150 liegt, wird in S280 geprüft, in welche Richtung der Motor 30 anlaufen soll. Die Vorgabe DIR = 0 am Eingang 98 bedeutet, dass der Motor 30 in Vorzugsrichtung starten soll. DIR = 1 bedeutet Start entgegen der Vorzugsrichtung.

Falls in S280 die Antwort JA lautet, also Start in Vorzugsrichtung, erfolgt in S282 die übliche Kommutierung in Vorzugsrichtung"0"bei maximalem Stellwert BW, also maximalem Strom, um einen raschen Start zu erhalten, d. h. innerhalb des Fensters 150 erfolgt keine Drehzahlregelung.

Anschließend geht die Routine zum Schritt S284, wo geprüft wird, ob die tatsächliche Drehzahl n außerhalb des Fensters 150 liegt. Falls NEIN, geht die Routine zurück zu S272. Falls JA, geht die Routine zu S286, wo jetzt das Flag Rt den aktuellen Wert von DIR erhält, also in diesem Fall Rt = 0, da der Motor 30 in Vorzugsrichtung"0"läuft.

Anschließend wird in S288 Rs=1 gesetzt, um anzuzeigen, dass die aktuelle Drehzahl n einen Wert außerhalb des Fensters 150 erreicht hat, und dass deshalb der Motor 30 jetzt mit Drehzahlregelung betrieben werden muss. Dieses Flag Rs wird im suc76 entsprechend ausgewertet, vgl. Fig. 15, und schaltet die Drehzahlregelung nCTL ein, so dass in S289 der Motor 30 mit dem berechneten Stellwert BW, also geregelt, beschleunigt wird.

Falls in S280 DIR = 1 ist, bedeutet dies einen Start entgegen der Vorzugsrichtung, wie er bei Fig. 12 bereits erläutert wurde. In diesem Fall geht die Routine zu S290, wo der Motor 30-entgegen dem Befehl DIR = 1-in der Vorzugsrichtung"0", also mit DIR = 0, mit maximalem Stellwert BW gestartet wird, ebenso wie in S282.

Anschließend wird in S292 geprüft, ob die Zeit T_HALL (Fig. 12), also die Zeit zwischen zwei aufeinander folgenden Hall-Interrupts, kleiner als eine Zeit TG geworden ist, die bei diesem Beispiel 64 ms beträgt, wie bereits erläutert. (Die Zeit T_HALL entspricht der Zeit für eine Viertelsumdrehung des vierpoligen Rotors 38. In S292 wird also bei diesem Beispiel-indirekt-abgefragt, ob der Rotor 38 eine Drehzahl von mindestens 234 U/min erreicht hat). Falls die Antwort NEIN lautet, geht die Routine zurück zu S290, und es wird weiter mit maximalem Stellwert BW, also maximalem Strom, in Vorzugsrichtung kommutiert, bis die Bedingung von S292 erfüllt ist.

Die meisten Motoren erreichen schon nach einer Viertelsumdrehung eine Drehzahl von 234 U/min, weil der Start mit maximalem Strom erfolgt. Bei manchen Antrieben kann es aber sein, dass ein größerer Drehwinkel benötigt wird, um einen Wert für T_HALL zu erreichen, der kleiner als TG ist.

Falls in S292 die Antwort JA lautet, also die Drehzahl den Wert von 234 U/min erreicht oder überschritten hat, wird in S294 in einen TIMER der Wert (TG-EW) geladen, und dieser TIMER wird gestartet. Anschließend wird in S296 geprüft, ob TIMER = 0 ist.

Falls NEIN, also falls die Zeit (TG-EW) noch nicht abgelaufen ist, geht die Routine zurück zu S294.

Falls in S296 die Antwort JA lautet, geht die Routine zu S298, wo jetzt-entsprechend dem Befehl DIR=1 am Eingang 98-die Kommutierung auf Kommutierung in Reversrichtung"1"bei maximalem Stellwert BW umgeschaltet wird, so dass die Drehzahl von den erreichten +234 U/min über die Drehzahl 0 zur gewünschten <BR> <BR> negativen Drehzahl, z. B. -1205 U/min, hochläuft, wobei die Drehzahl 0, also die Zone des Stillstands, problemlos durchlaufen wird.

Anschließend an S298 geht das Programm zu S284, wo geprüft wird, ob die tatsächliche Drehzahl n bereits außerhalb des Fensters 150 ist. Falls NEIN, geht die Routine zurück zu S272, wie bereits beschrieben, und falls JA, geht sie zu S286, wo jetzt Rt=1 gesetzt wird, d. h. die vom Benutzer am Eingang 98 vorgegebene Drehrichtung DIR=1 wird nach Verlassen des Fensters 150 auch im Flag Rt im uC76 gespeichert, so dass dieses den Wert Rt=1 annimmt, und anschließend wird in S288 Rs=1 gesetzt, um anzuzeigen, dass nun die Drehzahlregelung aktiviert wird, und bei S289 wird der Motor 30 auf Betrieb mit dem in der Routine S266 berechneten Stellwert BW umgeschaltet, also auf Betrieb mit Drehzahlregelung. Bei S278 wird dann die Routine S250 verlassen.

Fig. 18 dient zur Erläuterung von Vorgängen bei der Kommutierung des Motors 30.

Fig. 18a zeigt ein Signal PWM, das kontinuierlich erzeugt wird und z. B. eine Frequenz von 20 kHz hat. Sein Tastverhältnis pwm ist programmgesteuert einstellbar. Es ist darauf hinzuweisen, dass die vorliegende Erfindung auch ohne Verwendung eines solchen Signals PWM ausgeführt werden kann. Mit diesem Tastverhältnis kann die Amplitude der Stromimpulse i, i' (Fig. 1) gesteuert werden, die dem Motor 30 zugeführt werden.

Fig. 18b zeigt das Signal HALL. Dieses hat ansteigende Flanken 370 beim Übergang von LOW nach HIGH, und es hat abfallende Flanken 372 beim Übergang von HIGH nach LOW.

Die Zeitpunkte t1, t2 etc., an denen diese Flanken auftreten, werden von einem Ringzähler TIMER1 gemessen und in einer temporären Variablen t TEMP gespeichert.

Wie Fig. 18 zeigt, regieren die ansteigenden Flanken 370 die Einschaltung der Transistoren HSL und LSR, also des Stromes i der Fig. 1. Umgekehrt regieren die abfallenden Flanken 372 die Einschaltung der Transistoren HSR und LSL, also des Stromes i'der Fig. 1.

Die Dauer T_HALL zwischen zwei Flanken ergibt sich als T HALL = t2-t1... (4) Diese Zeitdauer ist ein Maß für die augenblickliche Drehzahl n des Rotors 38 und entspricht der Zeit, die dieser für eine Drehung von 180° el. benötigt Selbstverständlich kann diese Zeit auf vielerlei Arten gemessen werden. Bevorzugt misst man, sobald die Drehzahl hoch genug ist, die Zeit für einen größeren Drehwinkel, insbesondere für eine oder auch mehrere volle Umdrehung (en) des Rotors 38, was beim Ausführungsbeispiel einem Drehwinkel von 720° el. (oder einem Vielfachen hiervon) entspricht. -Die Messung über eine volle Umdrehung ist besonders genau, setzt aber voraus, dass eine bestimmte Mindestdrehzahl erreicht ist.

Fig. 18c und Fig. 18d zeigen stark schematisiert die Signale für die Steuerung der H- Brücke gemäß Fig. 1. Fig. 18c zeigt die Signale HSR, LSL für die Einschaltung des Stromes i'. Fig. 18d zeigt die Signale HSL, LSR für die Einschaltung des Stromes i.

Der Beginn eines der Impulse 444 der Fig. 18c wird berechnet ab der abfallenden Flanke 372 eines zugeordneten Signals HALL, was durch den Pfeil 445 symbolisiert wird, und der Beginn eines der Impulse 446 der Fig. 18d wird berechnet ab der ansteigenden Flanke 370 des zugeordneten Signals HALL, wie durch den Pfeil 447 symbolisiert. Die Flanken 370,372 des Signals HALL entsprechen vorgegebenen, messbaren Drehstellungen des Rotors 38. Bei der Berechnung von Kommutierungsvorgängen sind dies die einzigen Drehstellungen, die exakt bekannt sind, und deshalb beziehen sich die Berechnungen auf diese"Fixpunkte".

Unter der Voraussetzung, dass die Steuersignale 444,446 symmetrisch zu den Impulsen des Signals HALL liegen, ergibt sich für den Zeitpunkt t3, an dem ein Signal 446 beginnt, der Wert t3 = t1 + T_HALL + (T_HALL-BW)/2... (5) Dabei bedeutet BW = Blocklänge der Signale 444,446. Diese Blocklänge wird durch'&n Drehzahlregler RGL berechnet, der nachfolgend bei Fig. 19 beschrieben wird, und sie wird deshalb auch-wie üblich-als Stellwert bezeichnet.

Analog ergibt sich für den Zeitpunkt t4, an dem das Steuersignal 444 beginnen soll, der Wert t4 = t2 + T_HALL + (T_HALL-BW)/2... (6) Zu beachten ist, dass z. B. der Zeitpunkt t3 nicht ab dem Zeitpunkt t2 (der direkt vorhergehenden Flanke 372 des Signals HALL) berechnet wird, der am dichtesten bei t3 liegt, sondern ab einem früheren Zeitpunkt t1, nämlich ab der vorvorhergehenden Flanke 370. Der Grund ist, dass dann, wenn BW = T_HALL ist, der Zeitpunkt t2 mit dem Zeitpunkt t3 zusammenfallen würde, was nicht geht, da zwischen t2 und t3 Rechenschritte ausgeführt werden müssen.

Sofern eine sogenannte Zündwinkelverschiebung, z. B. um einen festen Wert VZ, verwendet wird, ändern sich die obigen Formeln wie folgt : t3'= t1 + T_HALL + ((T_HALL-BW)/2)-VZ... (7) t4'= t2 + T_HALL + ((T_HALL-BW)/2)-VZ... (8) In diesem Fall liegen die Zeitpunkte t3'und t4'um die Größe VZ weiter links, wie in Fig. 18d für t3'angedeutet, was eine etwas frühere Einschaltung der Ströme i und i' bedeutet und eine Verbesserung des Wirkungsgrades bewirken kann. Man erkennt auch, dass t3'in diesem Fall zeitlich vor t2 liegt, was nur möglich ist, weil Bezugszeit RefTime für die Berechnung von t3'nicht der Zeitpunkt t2 ist, also die fallende Flanke 372, sondern der Zeitpunkt t1, also die ansteigende Hallflanke 370, wie durch den Pfeil 447 symbolisch dargestellt. VZ ist gewöhnlich eine Konstante, kann aber auch eine drehzahlabhängige Funktion sein oder durch separate, nicht dargestellte Programmteile ständig optimiert werden.

Fig. 19 zeigt die Routine RGL S266 für die Drehzahlregelung. Diese beruht auf einem Vergleich der Halizeit T_HALL mit der Sollzeit t s, welch letztere der gewünschten Drehzahl nsoii entspricht und am Eingang 84 in Form eines PWM-Signals oder einer Gleichspannung vorgegeben werden kann. Der Regler gemäß Ausführungsbeispiel arbeitet also nicht direkt mit Drehzahlen, sondern mit Zeiten, die der Rotor 38 für einen bestimmten Drehwinkel benötigt bzw. benötigen soll. Die Hallzeit T_HALL entspricht der Zeit, die der Rotor 38 für eine Umdrehung von 180° el. benötigt. Ist der Rotor 38 vierpolig und rotiert mit 3000 U/min, so gilt T_HALL = 60/ (3000*4) = 0,005 s = 5 ms... (9) Analog beträgt diese Zeit bei 1000 U/min T-HALL = 60/ (1000*4) = 0,015 s = 15 ms... (10) Bei niedrigen Drehzahlen wird also der Istwert T_HALL sehr groß und ist dann wesentlich größer als der Sollwert ts, der z. B. für 3000 U/min 5 ms beträgt. Aus diesem Grund wird die Regeldifferenz RGL_DIFF gemäß Schritt S654 bevorzugt als Differenz (T-HALL-t-s) gebildet, damit man ein positives Resultat der Differenzbildung erhält.

Bei S656 wird geprüft, ob die Regeldifferenz größer als ein zulässiger positiver Maximalwert RGL_DIFF_MAX ist. Falls das der Fall ist, wird bei S658 die Regeldifferenz auf diesen positiven Maximalwert gesetzt. Dies ist vor allem beim Anlauf wichtig, weil dort die Regeldifferenz sonst sehr groß würde.

Ist bei S656 die Antwort NEIN, so geht das Programm zum Schritt S660 und prüft dort, ob die Regeldifferenz kleiner als ein zulässiger maximaler negativer Wert - RGL_DIFF_MAX ist. Falls JA, wird bei S662 die Regeldifferenz auf diesen negativen Maximalwert gesetzt. (Dies betrifft den Fall, dass der Motor schneller ist als die gewünschte Drehzahl).

Auf die Schritte S658, S660 oder S662 folgt S664, wo die Rechenschritte eines Pl- Reglers ausgeführt werden. Hierzu wird die Regeldifferenz mit einem Proportionalfaktor RGL_P multipliziert, der z. B. den Wert 2 haben kann, und man erhält den Proportionalanteil RGL_PROP.

Ebenso wird die Regeldifferenz mit einem Integralfaktor RGL_I multipliziert, der z. B.

0,0625 betragen kann, und wird dann zum alten Integralanteil RGL_INT addiert, so dass man einen neuen Integralanteil erhält.

Schließlich wird die Länge BW eines Stromblocks 444 oder 446 (Fig. 18) berechnet als Summe von neuem Proportionalanteil und neuem Integralanteil.

Proportionalfaktor RGL_P und Integralfaktor RGL_I werden empirisch festgelegt, abhängig hauptsächlich von der Größe des Motors 30 und dem Trägheitsmoment der anzutreibenden Last.

Der PI-Regler S664 kann einen Stellwert BW liefern, dessen Betrag (BWI zu groß ist.

Da dieser Betrag nicht größer sein darf als die Zeit T_HALL, die der Rotor 38 für das Durchlaufen von 180° el. benötigt, wird im nächsten Schritt S666 geprüft, ob BW zu groß ist, und ggf. wird die Blocklänge im Schritt S668 begrenzt, z. B. auf den augenblicklichen Wert T_HALL oder einen etwas kleineren Wert.

Wenn in S666 Die Antwort NEIN ist, geht die Routine S266 zum Schritt S670, wo geprüft wird, ob BW kleiner als-T_HALL ist. Falls JA, wird in S672 gesetzt BW : =-HALL, d. h. BW wird auf-T_HALL (oder einen dem Betrag nach etwas kleineren Wert) begrenzt. Das in S664 berechnete Vorzeichen (+ oder-) bleibt dabei bestehen.

Der Befehl"inv. 180°"schaltet also die Bestromung des Motors immer von der augenblicklichen Richtung in die entgegengesetzte Richtung um.

Beispiel 1 Der Motor läuft, entsprechend dem Befehl DIR = 0, in Vorzugsrichtung. Der Befehl DIR = 1 wird gegeben. Die Bestromung wird dann durch"inv. 180°"so umgeschaltet, dass der Motor abgebremst und in der Reversrichtung angetrieben wird.

Beispiel 2 Am Ende von Beispiel 1 läuft der Motor mit DIR = 1 in Reversrichtung. Der Motor erhält nun den Befehl DIR = 0. Auch jetzt wird durch einen Befehl"inv. 180°"die Bestromung umgeschaltet, und zwar so, dass der Motor abgebremst und anschließend wieder in Vorzugsrichtung angetrieben wird.

Für die Umschaltung der Bestromung ergibt sich bei der Ausführungsform nach Fig.

6 eine sehr einfache Möglichkeit, denn dort wird der OPV 52 vom Ausgang RB3 des C 76 gesteuert, und der OP 54 wird vom Ausgang RB2 des uC 76 gesteuert.

Bei einer Umkehr der Bestromung wird im uC 76 eine Umschaltung vorgenommen dergestalt, dass die Kommutierungsimpulse, die bisher dem Ausgang RB3 zugeführt wurden, jetzt dem Ausgang RB2 zugeführt werden, und dass die Kommutierungsimpulse, die bisher dem Ausgang RB2 zugeführt wurden, jetzt dem Ausgang RB3 zugeführt werden.

Bei Motoren mit komplizierteren Schaltungen kann man auch die Signale an den Ausgängen RB2 und RB3 nach einem etwas anderen Schema berechnen, entsprechend den folgenden Formeln t3 = t2 + T_HALL + (T_HALL-lBWl)/2... (11) t4 = t1 + T_HALL + (T_HALL-BW)/2... (12) Bei"inv. 180wird dann entweder von der Formel (7) auf die Formel (11) umgeschaltet, oder umgekehrt von der Formel (11) auf die Formel (7), und genau analog von der Formel (8) auf die Formel (12), oder umgekehrt von der Formel (12) auf die Formel (8).

Die Abschaltung erfolgt in allen Fällen bei (t3 + IBWI) bzw. bei (t4 +IBWI), so dass der Strom jeweils während einer Zeit IBWI fließt. Eine Vorzündung VZ kann, falls gewünscht, analog den Gleichungen (7) und (8) berücksichtigt werden.

Im Anschluss an S670 geht das Programm zu S674. Dort wird geprüft, welche Art von Befehl DIR vorliegt. Dieser Befehl kann sich naturgemäß vom aktuellen Zustand des Motors unterscheiden. Z. B. kann der Motor gerade im Augenblick den Befehl DIR = 0 erhalten haben, also Vorwärtslauf, aber der Motor läuft noch in Reversrichtung, weil der bisherige Befehl DIR = 1 war.

Ist DIR = 0, so bedeutet dies, dass der Befehl zum Lauf in Vorzugsrichtung vorliegt, und das Programm geht zu S676, wo das Vorzeichen des Stellwert BW geprüft wird, was durch Prüfung von dessen höchstwertigem Bit MSB erfolgt, das den Wert 0 hat, wenn der Stellwert BW positiv ist.

Ist der in S664 berechnete Stellwert BW positiv, so bedeutet dies, dass der Strom in der richtigen Weise zugeführt wird, um den Motor in Vorzugsrichtung anzutreiben, und dass die Drehzahl nicht zu hoch wird, und deshalb wird der Stellwert BW unverändert dem Motor zugeführt, wie in S678 symbolisch angegeben. Dort ist das symbolisch ausgedrückt als |BWl-->MOT.

Wird in S676 festgestellt, dass der Stellwert ein negatives Vorzeichen hat, so bedeutet dies, dass entweder die Drehzahl des Motors zu hoch ist, wobei sich aber der Motor in Vorzugsrichtung dreht, oder dass der Motor im Augenblick in Reversrichtung angetrieben wird. In beiden Fällen geht das Programm zu S680, wo durch"inv. 180°" die Richtung der Bestromung umgeschaltet wird, wobei die Impulslänge durch die Größe des Stellwert BW festgelegt wird. Dadurch wird entweder die Drehzahl des Motors (bei Drehung in Vorzugsrichtung) so lange reduziert, bis BW wieder positiv wird, oder die Drehrichtung wird reversiert, wodurch dann ebenfalls BW ein positives Vorzeichen erhält.

Ist in S674 die Antwort NEIN, so bedeutet dies den Befehl DIR = 1, also Lauf in Reversrichtung.

In diesem Fall wird in S682 das Vorzeichen des berechneten Stellwert BW geprüft. Ist dieses Vorzeichen negativ, so bedeutet das, dass der Befehl DIR = 1 mit der augenblicklichen Drehrichtung des Motors übereinstimmt, d. h. der Motor läuft in Reversrichtung, und das Programm geht zu S684, wo der Motor unverändert mit dem berechneten Stellwert BW in Reversrichtung bestromt wird.

Lautet in S682 die Antwort NEIN, so bedeutet dies, dass der Stellwert BW ein positives Vorzeichen hat, d. h. entweder, dass die Drehzahl des Motors zu hoch ist, wobei sich der Motor in Reversrichtung dreht, oder dass der Motor im Augenblick in Vorzugsrichtung bestromt wird, also entgegengesetzt zum Befehl DIR = 1.

In beiden Fällen geht das Programm zu S686, wo die Richtung der Bestromung invertiert wird. Dadurch wird der Motor jetzt in einer zur bisherigen Bestromung entgegengesetzten Richtung bestromt, wodurch entweder seine Drehzahl soweit absinkt, bis der berechnete Stellwert BW wieder negativ wird, oder die Drehrichtung des Motors wird umgekehrt, so dass er mit der gewünschten Drehzahl in Reversrichtung läuft.

Die rechte Hälfte des Flussdiagramms der Fig. 19 (Schritte S676,678, 680) betrifft also den Fall, dass der Motor den Befehl DIR = 0 zum Lauf in Vorzugsrichtung hat, und die linke Hälfte (Schritte S682,684, 686) bedeutet, dass der Motor den Befehl DIR zum Lauf in Reversrichtung hat.

Anschließend an die Schritte S678, S680, S684 und S686 geht die Routine zu S688 (Return).

Durch die Routine der Fig. 19 erhält man also einen Stellwert BW, dessen Betrag um so kleiner wird, je mehr sich die tatsächliche Drehzahl dem gewünschten Wert nsoll annähert. Das Vorzeichen des berechneten Stellwert gibt dabei an, ob die Drehzahl zu hoch oder zu niedrig ist. Bei Überschreiten des Wertes nsoll wird die Kommutierung auf Kommutierung entgegen der eingestellten Drehrichtung DIR umgeschaltet, so dass dann der Motor 30 geregelt auf die gewünschte Drehzahl nsoll abgebremst wird, sofern letztere dem Betrag nach größer ist als die Mindestdrehzahl NMIN.

Naturgemäß sind im Rahmen der vorliegenden Erfindung außerordentlich viele Abwandlungen und Modifikationen möglich. Z. B. kann ein Teil der Funktionen weggelassen oder durch andere ersetzt werden, oder es können zusätzliche Funktionen hinzugefügt werden, je nach den Anforderungen der Kunden. Besonders geeignet ist die Erfindung für den Antrieb von Lüftern, deren Drehrichtung umgeschaltet werden muss und bei denen die Drehzahl auch dann eingehalten werden muss, wenn z. B. durch Windstöße die Drehzahl des Lüfters erhöht wird. Eine andere Anwendung sind Antriebe von Roliläden, Jalousien und dergleichen. Ein großer Vorteil der Erfindung ist, dass sowohl für den Motor wie für die Elektronik die Kosten geringer sind als bei bisherigen Antrieben mit ähnlichen Funktionen.