Ich würde gerne einen DC Motor über eine H-Brücke mittels PWM steuern. Das ist erstmal kein Problem. Allerdings wollte ich, wenn die Drehzahl einknickt, gegenregeln. (PWM @ 16khz) Ich habe im Netz folgende Idee gesehen: Über den Motor (also am H-Ausgang) kommt ein Spannungsteiler (bpsw 10k, 10k). Das Mittensignal geht über eine 5V Z Diode an den ADC vom Atmel. Jetzt die Frage: Klappt das wirklich? Wie regel ich dort nun die Drehzahl, bzw. was erwarte ich dort für Signale? Dazu stand leider nichts dort. Ich denke ich muss messen, während der Motor "aus" ist bei der PWM. Welche Induktionsspannung bekomme ich dort und wie ist diese mit der Drehzahl zu vereinen?
> Jetzt die Frage: Klappt das wirklich? Klar, ich hab das vor 10Jahren mal im richtigen Internet <BG> diskutiert: http://www.edaboard.de/motorsteuerung-ueber-gegen-emk-und-ixr-t13935.html Ich hab das damals rein analog aufgebaut und es hat wunderbar funktioniert. Macht Spass und man lernt etwas ueber Regelungstechnik. Genau das richtige fuer lange Winterabende. :-) Olaf
Es ist moglich um wahrend die low periode von PWM die gegen-EMK von DC-motor zu vermessen. Das gibt dan in Prinzip das Drehzahl. Leiter ist das Signal sehr verrausch durch die commutierung / inductions-spitzen. Auch ist Schluss bei 100 % PWM (keine Low mehr). Darum ist es einfacher um das Drehzahl ueber ein Encoder zu vermessen. MFG, RP6conrad.
> Darum ist es einfacher um das Drehzahl ueber ein Encoder zu vermessen. Ach was...braucht bloss ein paar Bauteile. So sah damals mein Versuchsaufbau aus: http://www.criseis.ruhr.de/bilder/regler.jpg Wie du schon richtig erkannt hast, 100% PWM geht nicht. Aber 95% (oder so) reichen ja auch aus. Mit Encoder wird halt gleich der Motor deutlich teurer. Das ist sinnvoll wenn man auch noch einen Positionsregelung braucht. Nur fuer Drehzahl und wenn es einfach und billig sein muss reicht auch ueber GegenEMK. Zumal man das ja auch im Mikrocontroller machen kann. Olaf
Die Drehzahlregelung über Gegen-EMK in einer Austastlücke hast Du heute in jedem Modelleisenbahndecoder mit Lastregelung drin. Das Prinzip ist immer gleich und wie oben schon beschrieben, bei der Regelung an sich unterscheiden sich die Produkte im Bereich zwischen brauchbar und butterweich.
Knut B. schrieb: > Die Drehzahlregelung über Gegen-EMK in einer Austastlücke hast Du heute > in jedem Modelleisenbahndecoder mit Lastregelung drin. Das Prinzip ist > immer gleich und wie oben schon beschrieben, bei der Regelung an sich > unterscheiden sich die Produkte im Bereich zwischen brauchbar und > butterweich. Jop, du hast es erkannt. Dafür soll das ganze werden. Deswegen nix Encoder, da Motor vorgegeben. Butterweich ist mein Ziel. Brauche ich noch die Dioden über den Motor (4 stk.) oder reichen die internen der Mosfets? Mit Dioden verfälscht das das Signal? Wie ist der Zusammenhang zwischen gemessener Spannung und Drehzahl. Das ist mein Problem zzt.
> Wie ist der Zusammenhang zwischen gemessener Spannung und Drehzahl. Das > ist mein Problem zzt. Das steht in den in meinem Link erwaehnten PDFs. Und es ist auch nicht ganz trivial. Zumal ich mir bei einer Eisenbahn auch vorstellen koennte das sich da etwas in Abhaengigkeit von der angehaengten Masse aendern koennte. Olaf
Olaf schrieb: >> Wie ist der Zusammenhang zwischen gemessener Spannung und Drehzahl. Das >> ist mein Problem zzt. > > Das steht in den in meinem Link erwaehnten PDFs. Und es ist auch nicht > ganz trivial. Zumal ich mir bei einer Eisenbahn auch vorstellen koennte > das sich da etwas in Abhaengigkeit von der angehaengten Masse aendern > koennte. > > Olaf Okay ich gucke nochmal, die PDF hatte ich nicht gesehen. Welche spezielle ist das? Ja klar mit der angehängten Masse stimmt schon.
Bei einer gut ausbalancierten Regelung, bei der mehrere Faktoren einbezogen werden, hat die angehängte Masse kaum Einfluss auf das Fahrverhalten. Der klassische PI(D)-Regler reicht hier nicht aus. Vielmehr muss man die Stellgröße mit weiteren außenliegenden Regelschleifen überlagern, um einerseits schnell genug reagieren zu können, andererseits aber auch das Aufschwingen zu verhindern. Kritisch ist das Befahren von Schrägen, also wenn starke Lastwechsel anstehen. Auf gerader Strecke muss dir Regelung nicht viel können aber bei einer Bergkuppe kann sie schnell außer Kontrolle geraten und die Lok wie einen Esel springen lassen. Wie oben schon gesagt, nicht trivial. Als hilfreich hat sich auch erwiesen, die Abtastungsintervalle relativ zur Drehzahl zu verschieben, um bei Langsamfahrt mehr Messungen zu bekommen, als bei Schnellfahrt, wo der Schwung des Gesamtsystems die Regelung träger macht. Je nach Motor sind mehrere kritische Drehzahlbereiche vorhanden, wo die Regelung stark gefordert ist. Es ist sinnvoll, die Regelparameter während der Fahrt ausgeben und loggen zu können, um zu sehen, wie sie sich unter den verschiedenen Bedingungen verhalten.
Knut B. schrieb: > Regelparameter während der Fahrt ausgeben und loggen zu können, um zu > sehen, wie sie sich unter den verschiedenen Bedingungen verhalten. Die Links von Olaf sind alle tot. Mich würde jetzt noch interessieren was ich genau beachten muss. In Zeitpunkt der Tastlücke muss die H-Brücke hochimpedant sein oder? Das die beiden Adern Masse haben wäre falsch da ich dann nicht kann konnte richtig? Reicht mir der Spannungsteiler über den Motor oder muss ich noch den Stromverbrauch des Motors messen? Hat jmd noch ein paar Infos zu der Regelung?
Morgen, wenn es für einen Modelleisenbahn Decoder sein soll, hab ich das schon gemacht: http://forum.opendcc.de/viewtopic.php?f=39&t=3716 Tiny85 PWM mit 32 KHz, kurz unterbrechen EMK messen und Drehzahl mit PID Regler nachregeln. PID Regler ist der von der Atmel Apnote. LG
Für eine Drehrichtung: Beitrag "Drehzahlregler für DC-Motor, ATmega48-328" Bei Auswertung der EMK ist es nicht erforderlich, eine höherfrequente PWM zu erzeugen. 200 - 300 Hz PWM-Frequenz sind sinnvoll, da die notwendige Pause zur EMK-Auswertung nicht zu kurz sein darf. Da eine PWM mit 100% nicht möglich ist, kann man die Versorgungsspannung erhöhen, um volle Drehzahl zu erhalten. willi schrieb: > wenn es für einen Modelleisenbahn Decoder sein soll, hab ich das schon > gemacht: > http://forum.opendcc.de/viewtopic.php?f=39&t=3716 Gut versteckt, da will man dann auch nicht stören ;-)
m.n. schrieb: > Bei Auswertung der EMK ist es nicht erforderlich, eine höherfrequente > PWM zu erzeugen. 200 - 300 Hz PWM-Frequenz sind sinnvoll, da die > notwendige Pause zur EMK-Auswertung nicht zu kurz sein darf. Da eine PWM > mit 100% nicht möglich ist, kann man die Versorgungsspannung erhöhen, um > volle Drehzahl zu erhalten. Eine hohe PWM-Frequenz ist sehr wohl notwendig, wenn man seine Ohren schonen will, denn bei den ansonsten laufruhigen Fahrzeugen will man keine unschönen Resonanzen durch die Motoransteurung haben. Die Austastung zum Messen der EMK hört man ohnehin, da muss man schon weiche Lücken programmieren, damit einem das Gebrumme nicht auf den Keks geht. Die hohe PWM-Frequenz gestattet auch ein weicheres Regeln, da man feiner abstimmen kann bei den Schwingungspaketen, die man dem Motor zukommen lässt. Und volle Spannung gibt man ohnehin nicht auf den Motor, da die allermeisten Loks bei 12V bereits für den Maßstab zu rasant unterwegs sind. Da die meisten Digitalanlagen mit 16V oder sogar noch darüber am Gleis abliefern, bleibt genug Regelreserve, auch wenn die nutzbaren Pakete nur 80% PWM entsprechen. Erklärung: Nicht bei jedem PWM-Umlauf wird die EMK gemessen, sondern nur alle 1...10ms, je nach Lastzustand. In dieser Zeit wird die PWM auf 0 reduziert, der jeweils untere Transistor der jeweils durchgeschalteten Richtung ist geschlossen, der obere ist offen, so dass an dem Anschluss die Motorspannung gemessen werden kann. Nach einer Zeit x ist die Messung abgeschlossen und die PWM wird wieder hochgefahren bis zur nächsten Messung.
:
Bearbeitet durch User
Knut B. schrieb: > m.n. schrieb: >> Bei Auswertung der EMK ist es nicht erforderlich, eine höherfrequente >> PWM zu erzeugen. 200 - 300 Hz PWM-Frequenz sind sinnvoll, da die >> notwendige Pause zur EMK-Auswertung nicht zu kurz sein darf. Da eine PWM >> mit 100% nicht möglich ist, kann man die Versorgungsspannung erhöhen, um >> volle Drehzahl zu erhalten. > > Eine hohe PWM-Frequenz ist sehr wohl notwendig, wenn man seine Ohren > schonen will, denn bei den ansonsten laufruhigen Fahrzeugen will man > keine unschönen Resonanzen durch die Motoransteurung haben. Die > Austastung zum Messen der EMK hört man ohnehin, da muss man schon weiche > Lücken programmieren, damit einem das Gebrumme nicht auf den Keks geht. > Die hohe PWM-Frequenz gestattet auch ein weicheres Regeln, da man feiner > abstimmen kann bei den Schwingungspaketen, die man dem Motor zukommen > lässt. Und volle Spannung gibt man ohnehin nicht auf den Motor, da die > allermeisten Loks bei 12V bereits für den Maßstab zu rasant unterwegs > sind. Da die meisten Digitalanlagen mit 16V oder sogar noch darüber am > Gleis abliefern, bleibt genug Regelreserve, auch wenn die nutzbaren > Pakete nur 80% PWM entsprechen. Erklärung: Nicht bei jedem PWM-Umlauf > wird die EMK gemessen, sondern nur alle 1...10ms, je nach Lastzustand. > In dieser Zeit wird die PWM auf 0 reduziert, der jeweils untere > Transistor der jeweils durchgeschalteten Richtung ist geschlossen, der > obere ist offen, so dass an dem Anschluss die Motorspannung gemessen > werden kann. Nach einer Zeit x ist die Messung abgeschlossen und die PWM > wird wieder hochgefahren bis zur nächsten Messung. Es handelt sich um eine Gartenbahn (LGB) mit 24V. Also wie sieht das aus mit der H-Brücke. Im Zeitraum des Messens muss also die Brücke nicht auf High-Z stehen? Sondern kann angeschaltet bleiben (zu hälfte?). Wie ist das mit der allg. Strommessung des Motors? Erforderlich?
Strommessung brauchst Du nicht, aber eine fette H-Brücke, die noch dazu schnell schalten kann. Darauf solltest Du Dich als erstes konzentrieren, bevor Du Dich an die weitere Prgrammierung machst. Wenn du es Dir einfach machen willst, dann lass die beiden Low-Side-Transistoren (n-Kanal) nur die Richtung vorgeben, die beide High-Side-Transistoren (p-Kanal) lass die PWM schalten. Dann brauchst Du nur 2 schnelle Treiber, da die Low-Side direkt vom Controller geschaltet werden kann. Die p-Kanal-FETs lassen sich recht einfach gegen Masse ansteuwrn, so dass Du auch hier Teile sparen kannst. Die Programmierung ist auch einfacher, wenn Du nur 2 PWM-Kanäle zu verwalten hast. Messzyklus: 1. PWM herunterfahren bei durchgeschalteter Low-Side 2. Warten bis Motorspannung hochläuft 3. Messen 4. PWM wieder hochfahren. Einer der beiden Low-Side Transistoren bleibt immer durchgeschaltet, da Dir sonst der Massebezug zum Messen fehlt. Als Überlastdetektierung kannst Du auch den Strom in der Brücke messen oder ihre Temperatur.
:
Bearbeitet durch User
Marius D. schrieb: > Es handelt sich um eine Gartenbahn (LGB) mit 24V. Welche Leistung hat der Motor und hat er auch noch Kraft, wenn er mit 16 kHz getaktet wird? Soll der Motor auch bremsen können oder ist genug Reibung vorhanden, dass die Bahn von selbst zum Stehen kommt? Unter Umständen kannst Du eine Ansteuerung mit nur einem MOSFET verwenden, wenn zur Richtungsumkehr ein Relais verwendet wird.
m.n. schrieb: > Marius D. schrieb: >> Es handelt sich um eine Gartenbahn (LGB) mit 24V. > > Welche Leistung hat der Motor und hat er auch noch Kraft, wenn er mit 16 > kHz getaktet wird? > Soll der Motor auch bremsen können oder ist genug Reibung vorhanden, > dass die Bahn von selbst zum Stehen kommt? > Unter Umständen kannst Du eine Ansteuerung mit nur einem MOSFET > verwenden, wenn zur Richtungsumkehr ein Relais verwendet wird. Die von LGB verwendeten 7 poligen Bühlermotoren (kugelgelagert) haben extrem viel Kraft. Die nutzen ein Schneckengetriebe. 16 kHz wird auch von allen anderen Herstellern verwendet, sind die wahrscheinlich drauf ausgelegt. Kleiner Loks (mit 1 Motor) besitzen ca. 10N. Manche haben bisschen mehr, manche weniger, je nach Bauart und vorallem Eigengewicht. Größere (2 oder 3 motorige) dementsprechend weitaus mehr. Bremsen muss die Lok via Motor nicht, das Getriebe hat ausreichend Reibung. Bei Gefälle jedoch (abh. von angehängter Last) muss gegengeregelt werden. Auf Mechanik verzichte ich (Relais) immer gerne. Lieber Vollbrücke. Ich habe eine 4 achsige Dampflok mit 1 Motor. Eigengewicht liegt ca. bei 4kg. Die ist extrem stark. Hier ist das Getriebe leichtläufiger (die rollt von selbst bei Neigung). Der Motor kann wenn man sie richtig belastet auch gerne mal 4A ziehen.
Marius D. schrieb: > Ich würde gerne einen DC Motor über eine H-Brücke mittels PWM > steuern. > Das ist erstmal kein Problem. Nein isses nicht wenn du von Regelungstechnik keine Ahnung hast. Für die Drehzahlregelung wird P oder PI Regler eingesetzt, den D Anteil braucht man nicht. Wenn du die Drehzahl oder den Ankerstrom nicht messen kannst, vergiss die Regelung. Das würde dir Zeit sparen, lies einfach einen Skript drüber. Meine Güte.
Meine Güte schrieb: > Nein isses nicht wenn du von Regelungstechnik keine Ahnung hast. > ... > Wenn du die Drehzahl oder den Ankerstrom nicht messen kannst, War der Glühwein zu schlecht? Du hättest vollständig zitieren sollen. Marius D. schrieb nämlich: "Allerdings wollte ich, wenn die Drehzahl einknickt, gegenregeln." Das Problem, was Du meine Güte lösen möchtest, existiert garnicht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.