RoboterNetz.de Foren-‹bersicht               
 RN-Wissen Home  -  Community Home  -  Alle Artikel -  Mitglieder -  Moderatoren  -  Bilderliste  -  Letzte √Ąnderungen
 Kategorien  -  Beliebte Seiten  -  Sackgassenartikel  -  Artikel ohne Kategorie  -  Neue Artikel  -  Anmelden

Getriebemotoren Ansteuerung

aus RN-Wissen, der freien Wissensdatenbank

Ist der Entschluss gefasst, f√ľr seinen Roboter oder andere Konstruktion einen Getriebemotor zu verwenden, so m√ľssen sich Gedanken gemacht werden, wie er ansteuert werden kann. Gew√∂hnlich sollen die Motoren ja sowohl in Bezug auf Drehrichtung und Geschwindigkeit √ľber eine Programmiersprache angesteuert werden. Daher wird in der Regel erst mal ein Controllerboard ben√∂tigt. Leider kann man an die wenigsten Controllerboards einen Getriebemotor direkt anschlie√üen, eine der wenigen Ausnahmen ist das RN-Control-Board und das RNBFRA-Board. Bei beiden Boards ist es einfach, dort m√ľssen die Getriebemotoren einfach nur an die Schraubklemmen angeschlossen werden, danach kann man sofort mit der Programmierung loslegen.

Ich m√∂chte hier aber aufzeigen, wie man Motoren auch bei anderen Boards anschlie√üen kann. Die gleiche Technik l√§sst sich nat√ľrlich auch nutzen, um z.B. mehr als zwei Motoren an RN-Control anzuschlie√üen.

Inhaltsverzeichnis

Ansteuerung mit Relais

Die einfachste Methode, um Motoren per Controller anzusteuern, erreicht man durch die Verwendung von Relais. Mit einem Relais, das zwei Umschaltkontakte besitzt, l√§sst sich √ľber einen einzelnen Controllerport bequem die Drehrichtung wechseln.

Da auch Relais wegen des Strombedarfes nicht direkt vom Controller geschaltet werden k√∂nnen, wurde in dem oberen Beispiel ein Transistor vorangestellt. Die Diode dient dazu, die Spannungen abzuleiten, die beim Ausschalten des Relais induziert werden. Ohne Diode k√∂nnte der Transistor oder sogar der Controller durch die induzierte Spannung besch√§digt werden. Die Schaltung ist also in der Lage, die Drehrichtung umzuschalten, jedoch nicht in der Lage, den Motor zu stoppen. Um den Motor ganz auszuschalten, k√∂nnte man man 2 getrennte Relais f√ľr die beiden Umschaltkontakte nutzen. Ein Schaltbild k√∂nnen wir uns ersparen, da das Ganze recht √§hnlich aussieht. Der gro√üe Nachteil von Relaisschaltungen ist, dass die Geschwindigkeit des Motors nicht geregelt werden kann, zudem haben Relais bei vielen Schaltvorg√§ngen einen gewissen Verschlei√ü. Das Auschalten einer induktiven Last ist dabei f√ľr die Relaiskontakte besonders sch√§dlich. Vorteil der Schaltung ist jedoch, das man auch gro√üe Lasten/Motoren schalten kann.

Ansteuerung mit Relais und MOS-FET

Die Schaltung ist sehr ähnlich wie die vorherige Relaisschaltung. Es wird aber in die Masseleitung hinter dem Relais ein MOSFET und eine Freilaufdiode eingesetzt. Dadurch werden die meisten Nachteile der einfachen Relaisschaltung behoben. Durch den MOSFET läßt sich der Motor in der Geschwindigkeit regeln und ggf. abschalten.

Es sind prinzipiell alle N-Kanal MOS-FETs geeignet. F√ľr die hier gezeigte direkte Steuerung vom ¬ĶC sollte es ein Logik-Level-Typen sein. Der FET IRLZ34 sollte ohne K√ľhlung bis etwa 5 A gen√ľgen. Die Freilaufdiode D1 mu√ü f√ľr den Motorstrom ausgelegt sein, und bei PWM Steuerung gen√ľgend schnell sein(z.B. Shottky SB540). Die Induktivit√§t L1 (ca. 1...100 ¬ĶH) und der Kondensator C1 dienen zur Funkentst√∂rung und k√∂nnen bei kurzem Kabel zum Motor auch weggelassen werden. Um die Umschaltverluste und Funkst√∂rungen gering zu halten, sollte die PWM-Frequenz nicht unn√∂tig hoch liegen. Eine einfache Motorbremse ist m√∂glich mit einem P-MOSFET (oder PNP Transistor) parallel zur Freilaufdiode. Ein Programmfehler kann damit allerdings zu einem Kurzschluss f√ľhren.

Da das Relais nur Strom verbraucht, wenn es angezogen wird, sollte man den Motor so anschlie√üen, dass in der bevorzugten Drehrichtung (beim Roboter Vorw√§rtsfahren) das Relais nicht angezogen ist. Die Schaltung (ohne Motorbremse) ist sicher gegen Querstr√∂me und es k√∂nnen durch Fehler im Programm des ¬ĶC kaum Sch√§den entstehen. Das Relais sollte erst umgeschaltet werden, wenn der Motor steht, dann gibt es keine Funken an den Relaiskontakten.

Der Verdrahtungsaufwand insgesamt ist minimal und sogar kleiner als bei Motortreiber-ICs, wie dem L298, da keine zus√§tzlichen Bauteile ben√∂tigt werden. Daher ist die Schaltung insbesondere f√ľr Anf√§nger geeignet.

Vorteile sind:

  • tolerant gegen Fehler im ¬ĶC Programm
  • hohe Strombelastbarkeit
  • sehr geringer Spannungsabfall (< 1 V)
  • niedrige Kosten, auch bei hoher Leistung
  • das Relais kann stromlos geschaltet werden (wenig Verschlei√ü an Kontakten)

Nachteile sind:

  • h√∂rbares "Klacken" beim Laufrichtungswechsel
  • zus√§tzlicher Stromverbrauch, wenn das Relais geschaltet ist

Ansteuerung mit MOS-FET

Neufassung

Dieser Artikel ist noch lange nicht vollständig. Der Auto/Initiator hofft das sich weitere User am Ausbau des Artikels beteiligen.

Das Erg√§nzen ist also ausdr√ľcklich gew√ľnscht! Besonders folgende Dinge w√ľrden noch fehlen:

Die Neufassung kann im momentanen Stand nur als Anregung verstanden werden.

Insbesondere fehlen noch angepasste Schaltpläne.

Einige der Anmerkungen aus dem Abschnitt "Kritik an der Schaltung" sind in der Neufassung noch nicht enthalten, die Beschreibung von Verz√∂gerungsgliedern m√ľsste auch eine Erkl√§rung enthalten, welche Verz√∂gerung mit welchen Werten erreicht wird.

Wenn die Neufassung komplett fertig ist, sollten die alten Texte weg.


Grundprinzip

Wenn man die Steuerung rein mit Halbleitern realisieren will, bietet sich die H Br√ľckenschaltung (Vollbr√ľcke) an. An jeden Motoranschlu√ü kommt einen Halbbr√ľcke, die den Anschlu√ü mit GND oder der Versorgungsspannung verbinden kann. Die fertigen Motorteiber ICs sind auch entsprechend aufgebaut. Der Aufbau aus Einzelteilen wird vor allem gebraucht, wenn man kein passendes IC findet, z.B. bei hoher Leistung.

Bei den √ľblichen Batteriespannungen sind als Schaltelemete MOS-FETs die beste Wahl. Also (unipolaren) Transistoren, die quasi leistungslos nur durch Spannungen geschaltet werden. Zu diesem Thema findet man unz√§hlige Beitr√§ge im Roboternetz, denn die Schaltung ist nicht ganz einfach.

Die Grundschaltung besteht aus 2 N-Kanal-MOS-FET und zwei P-Kanal-MOS-FET, mit denen die Motoranschl√ľsse nach GND bzw. UB geschaltet werden. Auf die extra Freilaufdioden kann bei einer Vollbr√ľcke mit modernen MOSFETs meistens verzichtet werden, da die MOSFETs bereits hinreichend gute Dioden enthalten. Teilweise werden trotzdem zus√§tzliche Schottky-Dioden benutzt, um die Verluste etwas weiter zu reduzieren. Die Dioden werden in Sperrichtung von den beiden Motoranschl√ľssen nach GND bzw. UB geschaltet. Die Transistortypen werden entsprechend der ben√∂tigten Str√∂me und Spannungen gew√§hlt. Zu gro√üe Transistoren haben den Nachteil einer gro√üen Gatekapazit√§t und ben√∂tigen daher aufwendigere Treiber.

Grundsätzlich muss die Beschaltung der Gate-Eingänge so erfolgen, dass zum Starten des Motors die Transistoren einer Diagonale auf "leitend" und die der anderen auf "sperrend" geschaltet werden. Zum Anhalten des Motors werden z.B. die unteren auf leitend und die oberen auf sperrend geschaltet (Der Motor wird aufgrund des nicht unerheblichen Bremsstroms von Transistor und Freilaufdiode stark gebremst). Alternativ kann man auch alle Transistoren auf sperrend schalten, der Motor läuft dann im Leerlauf aus.

Die Transistoren einer Seite d√ľrfen nicht gleichzeitig auf "leitend" geschaltet werden, da dies einen Kurzschluss verursacht.

Elektrische Ansteuerung der Gates

Beim Umschalten der Transistoren entstehen Verluste - der Widerstand wechselt von sperrend (sehr großer Widerstand) nach leitend (sehr kleiner Widerstand) und umgekehrt. Zwischen beiden Enden des Schaltvorgangs befindet sich der Transistor in der "Widerstandsphase" (weder ganz leitend, noch ganz sperrend), die eine erhebliche Verlustleistung und damit Erwärmung mit sich bringt.

Deshalb sollte der Schaltvorgang schnell erfolgen, insbesondere wenn f√ľr eine PWM-Regelung sehr oft geschaltet wird. Da zum Umschalten die durch den Aufbau des MOSFETs bedingte Gatekapazit√§t umgeladen werden muss, ist hierzu (sehr kurzzeitig) ein hoher Stromfluss n√∂tig. Zu schnell (<100 ns) sollte man wegen der Funkst√∂rungen aber auch nicht schalten.

F√ľr die P-Mosfets wird eine Spannung von 0 V bzw. etwa -10 V realtiv zur postiven Versorgung gebraucht. F√ľr die N-Mosfets reicht eine Spannung von 0 V bzw. ca. 10 V, bei logic level Mosfets reichen 5 V.

Schaltung direkt am Port

Eine Ansteuerung unmittelbar √ľber den Ausgang eines Mikrocontrollers (oder eines TTL-IC) ist schon wegen der ben√∂tigten Spannungen oft nur f√ľr die N-MOSFETs m√∂glich, und das auch nur bei Logic Level Fets. Bei den P-MOSFET bemisst sich die Schaltspannung gegen UB und nur f√ľr ein UB von etwa 5-6 V k√∂nnte die Spannung passen.

Dass ein Portpin nur einen geringen Stromfluss (ca. 20 mA) zul√§sst, ist ein weiteres Problem und verhindert einen schnellen Schaltvorgang. Diese Schaltungsversion ist f√ľr eher kleine Logic Level MOSFETs (bis etwa 2 nF Gate Kapazit√§t), bevorzugt ohne PWM, m√∂glich.

Schaltung mit einem Transistor

Eine einfache Steuerschaltung besteht aus einem Transistor-Schalter (Emitter nach GND)und einem Pull-Up-Widerstand.

Der Vorteil liegt in der Einfachheit, der Nachteil liegt darin, dass die Schaltung nicht sonderlich schnell vonstatten geht: F√ľr die Schaltung des FET muss die Gate-Kapazit√§t transferiert werden, was insbesondere beim Wechsel von 0 V nach UB einen Moment dauert, da die Ladung durch den Widerstand hindurch muss. Ein kleinerer Widerstand k√∂nnte hier helfen, verursacht allerdings einen nicht unerheblichen Stromfluss im geschalteten Zustand.

Sinnvoll ist diese Version damit nur f√ľr die P-MOSFETs, wenn diese nicht mit dem PWM Signal versorgt werden. F√ľr die N Kanal Fets ist es in der Regel besser direkt den Logicpegel und Logic Level Fets zu nehmen.

Schaltung mit zwei Transistoren

Eine bessere Ansteuerung sollte sich ergeben, wenn man zwei Transistoren zur Gate-Ansteuerung verwendet: Einer schaltet gegen 0 V, der andere gegen UC. So kann man erreichen, dass in beide Richtungen rasch umgeschaltet werden kann.

Integrierte Gate-Treiber

Statt der Beschaltung mit zwei Transistoren kann man auch einen integrierten MOSFET-Treiber verwenden. Derartige ICs (z.B. ICL7667) sind darauf ausgelegt, kurzfristig den f√ľr eine Umschaltung ben√∂tigten hohen Stromfluss zu erm√∂glichen.

Es gibt auch Treiber-ICs (z.B. IR2111), die zur Ansteuerung der oberen Transistoren eine Spannung oberhalb von UB erzeugen. Mit solchen Highside-Treibern kann die H-Br√ľcke auch aus 4 N-Kanal-Transistoren gebaut werden, was den Vorteil hat, dass N-Kanal-FETs mit geringerem Schaltwiderstand zu bekommen sind. Bei den Treibern f√ľr highside N-Kanal-Fets hat man aber oft eine Begrenzung des Tastverh√§ltnisses.

Logische Ansteuerung der Gates

Nach der elektrischen Ansteuerung ist die logische Ansteuerung durch den Mikrocontroller zu √ľberlegen. In der H-Br√ľcke sind zwei problematische Zust√§nde zu ber√ľcksichtigen:

1. Das offensichtliche Problem ist ein Kurzschluss: Wenn beide Transistoren einer Seite auf leitend geschaltet werden ist das ein Kurzschluss. Falls vorhanden brennt die Sicherung durch oder es wird sogar etwas beschädigt.

2. Ein nicht so offensichtliches Problem r√ľhrt daher, dass der Schaltvorgang nur mit endlicher Geschwindigkeit abl√§uft und der Transistor auch schon vor Erreichen des Zielwertes der Gate-Spannung erheblichen Strom leitet. Hierdurch kommt es zu einem Kurzschluss durch den nicht mehr richtig gesperrten und den noch nicht richtig gesperrten Transistor. Es reicht also nicht die beiden Transistoren gleichzeitig zu schalten, sondern es wird eine kleine Verz√∂gerung ben√∂tigt.

Die Stromspitze selbst liegt oft noch im Rahmen der Spezifikationen der Transistoren. Allerdings hat die Stromspitze drei Auswirkungen:

  1. Die Transistoren erwärmen sich
  2. Es kann an einem Messwiderstand zu einer Spannungsspitze kommen
  3. Die Versorgungsspannung bricht kurzzeitig zusammen

Die Störung der Versorgungsspannung lässt sich ohne Oszilloskop kaum messen. Insbesondere in umfangreicheren Schaltungen können Störungen an ganz anderen Stellen (z.B. bei Sensoren) auftreten, die man dann nicht gleich mit der Motorsteuerung in Verbindung bringt.

softwaremäßige Ansteuerung

Die einfachste Art der Ansteuerung besteht darin, die 4 Gates mit 4 Ausgängen des Controllers zu steuern.

Die korrekte Ansteuerung muss dann durch die Software garantiert werden. Eine Fehlschaltung der Software z.B. bei einem Absturz kann allerdings zur Zerst√∂rung der Schaltung f√ľhren, die Schaltung sollte also in jedem Fall eine Sicherung haben.

Einfache, gemeinsame Ansteuerung

Bei passender Spannung, können die Gates einer Seite jeweils gemeinsam geschaltet werden. Bei einer Gate-Spannung von 0V sperrt der N-MOSFET (UGS=0V), der P-MOSFET leitet bei dieser Gate-Spannung, da hier UGS=-UB ist.

Bei einer Gate-Spannung von UB verhält es sich genau umgekehrt: Der N-MOSFET leitet (UGS=UB) und der P-MOSFET sperrt (UGS=0V)

Diese einfache Ansteuerung benötigt nur 2 Port-Pins, hat jedoch den Nachteil, dass während des Umschaltens die oben beschriebenen temporären Querströme auftreten können und deshalb eher schnell geschaltet werden sollte. Die Ansteuerung mit nur einem Transistor ist hier also nicht angebracht. Je höher die Spannung, desto schlimmer wird das Problem beim Umschalten. Ohne extra Verzögerungen sind damit nur Spannungen bis ca. 8 V möglich.

Mit einer Parallelschaltung aus einem Widerstand und einer Diode vor den Gates, kann man erreichen, dass die Transistoren schneller auf sperrend als auf leitend schalten. Beim N-FET zeigt die Anode zum FET, beim P-FET die Kathode. Damit sind dann auch etwas höhere Spannungen möglich, aber spätestens bei ca. 20 V wird die maximale Gatespannung erreicht.

Eine m√∂gliche Ausf√ľhrung f√ľr etwa 8-15 V, ist es ein Gate Treiber IC (z.B. ICL7667) zu nehmen, und durch Dioden und Widerst√§nde zu den Gates f√ľr eine Verz√∂gerung beim Einschalten zu sorgen.

Ansteuerung mit logischer Verkn√ľpfung

Der Zustand eines dauerhaften Querstroms sollte besser Hardwarem√§√üig vermieden werden. Zus√§tzlich kann die Logic die Zahl der IO Pins auf 2 oder 3 reduziert werden. Sinnvollerweise sollte dabei nur eine Leitung die PWM Steuerung √ľbernehmen. Mittels Logik-Bausteinen werden zwei Ausg√§nge des Controllers so umgesetzt, dass die folgenden Zust√§nde geschaltet werden k√∂nnen:

  1. Motor-Stop: untere Transistoren leitend, obere sperrend (oder umgekehrt)
  2. Motor-Vorlauf: 1. Diagonale leitend
  3. Motor-R√ľcklauf: 2. Diagonale leitend
  4. Motor-Leerlauf: Alle Transistoren sperrend

Der Motor Stop Zustand ist dabei nicht unbedingt n√∂tig. Wie die Logic genau aussieht h√§ngt davon ab ob die Gate Treiber die Signale noch mal invertieren. In der wohl einfachsten Form, kann man die P MOSFETs √ľber einfache Transistortreiber langsam steuern. Die PWM Steurung geht dann nur mit den N-FETs. Hier kann man Logic Level Typen nehmen, die man direkt von Logic Gattern (z.B. 74HC...) ansteuern kann, oder bei gr√∂√üeren FETs mit Gate Treibern.

Die Querstrom-Problematik beim Schalten kann hierbei softwaremäßig gelöst werden, indem beim Umschalten jeweils kurz der Leerlauf geschaltet wird, damit alle Transistoren sperren. Damit auch Temporäre Querströme sicher vermieden werden können auch hier Verzögerungselemente sinnvoll sein.

Heidingscher Encoder (Beispiel f√ľr Logic)

Aufgrund der Kritik an der alten Schaltung(siehe Alte Schaltungsbeschreibung) entschied ich mich einen neuen, einfachen sowie preisg√ľnstigen Encoder zu entwickeln, den man mit der 74series aufbauen kann. Die 74series sind mit 20 mA Treiberstrom nat√ľrlich kaum zum direkten Treiben geeignet. Die Verz√∂gerung m√ľ√üte hier in die Treiber integriert sein. Die Logikanzeigen in den Grafiken sollen je einen Transistor bzw. Mosfet darstellen.

PR Encoder

Bild:Prtreiber.png

Der PR Encoder(PWM-Richtung Encoder) ist mit zwei NOR Gates sowie eines Inverters aufgebaut, d.h. man kann ihn mit nur einem IC(74HC(T)02) aufbauen. Will mein 2 Encoder verwenden, empfiehlt sich den Inverter auszulagern (74HC(T)04 oder 74HC(T)14. Sollte man keinen Schmitt-Trigger ben√∂tigen empfiehlt sich aus Schnelligkeitsgr√ľnden die 74HC(T)04 Variante). Alternativ ist es noch m√∂glich sich den Inverter zu sparen, und die Ansteuerung f√ľr den P(WM) Kanal invertiert laufen zu lassen.

PRK Encoder

Bild:Prktreiber.png

Der Prk-Encoder(PWM-Richtung-Kurzschluss-Encoder) ist eine Erweiterung des PR-Encoders. Er erlaubt es zus√§tzlich, die Motoren durch einen Kurzschluss zu stoppen. Aufgebaut werden kann dieser aus 1 NOR und 1 NAND Gate. Dabei werden 3 NAND-Gates als Inverter beschaltet (d.h. eine Leitung, die √ľbrigen bleiben auf VCC).

Support

Fragen einfach in das Forum posten, oder mich anschreiben (User s.o.)

Alte Schaltungsbeschreibung

Achtung! Die Schaltung ist so nicht zu verwenden! Siehe unter Kritik an der Schaltung

Wesentlich g√ľnstiger und auch beliebter ist die Ansteuerung von Motoren mit MOS-FETs. Also Transistoren, die quasi leistungslos nur durch Spannungen geschaltet werden und extrem hohe Str√∂me verkraften. Zu diesem Thema findet man unz√§hlige Beitr√§ge im Roboternetz. Eine der interessantesten Schaltungen, die im Roboternetz vorgestellt wurde, d√ľrfte diese sein:



Anmerkung: Den 74HC26N gibts wohl nicht , nur die TTL-Version 74LS26, die HC-Mos-Version lautet 74HC03.

Eine sogenannte H-Br√ľcke, die nur aus zwei MOSFETSs und einem Logik-IC besteht. Mit zwei Controllerports kann diese Schaltung sowohl Geschwindigkeit als auch Drehrichtung regeln. F√ľr die Geschwindigkeit ist ein sogenannter PWM-Port notwendig. Also ein Port, der durch ein gepulstes Signal den Motor etlichemal innerhalb einer Sekunde ein- und ausschaltet und somit quasi die Leistung regelt (siehe PWM). Die Schaltung ist so konstruiert, dass immer nur zwei Transistoren durchschalten. Auf diese Weise flie√üt einmal der Strom von links oben nach rechts unten und einmal von rechts oben nach links unten, der Motor wird also √§hnlich wie bei der Relaisschaltung umgepolt. Bei niedriger PWM_Frequenz sollte die Schaltung durchaus f√ľr einige Ampere geeignet sein, wobei ca. 8 bis 13 V ideal sein sollten.

Das Logic-IC wurde durch 3x BC547 Transitoren ersetzt.


Kritik an der Schaltung

Diese Schaltung wird hier Forum von mehreren Leuten, u.A. Ratber, shaun, massiv kritisiert.

Ich habe leider nicht das Wissen eine bessere L√∂sung zu liefern. Das Problem sind die Querstr√∂me: Im Umschaltmoment sind highside und lowside switch f√ľr kurze Zeit beide leitend. Das entspricht einem Kurzschluss der Versorgungsleitung bei jedem Umschalten mit allen damit verbundenen Problemen (Erw√§rmung, Schwingung, Sicherungen, Reset). Aus diesem Grund sind NAND-Gatter nicht geeignet!

Zum Umschalten muss man

  • den bisher leitenden MOSFET ausschalten,
  • dann etwas warten,
  • und dann den n√§chsten MOSFET schlie√üen.

Dies kann man erreichen, indem man den Einschaltmoment

  • durch RC-Glieder verz√∂gert und
  • den Ausschaltmoment durch Dioden beschleunigt.

Die entstehenden Schaltungen sind komplex, benötigen viele Bauteile und sind fehleranfällig.


Am sinnvollsten sind integrierte MOSFET-Treiber. Diese haben oft eine einstellbare Tot-Zeit (Dead-Time), können hohe Leistungen zum Umladen der Gatekapazität liefern und beachten andere Effekte wie Propagation-Time, Veränderung des Source Potentials beim Highside-switch, etc.

Erklärung von shaun:

Die gezeigte Schaltung taugt auch nur als Prinzipschaltung bedingt, da man einen variierenden Aufwand in eine sichere Verriegelung investieren m√ľsste. Bei fixer und nicht zu hoher Betriebsspannung k√∂nnte man mit RD-Kombinationen in den Gateleitungen das Ausschalten beschleunigen und das Einschalten verz√∂gern, so dass die Querleitung wegf√§llt. Allerdings bewirkt diese simple R-Cg-Verz√∂gerung gr√∂√üere Schaltverluste.

Setzt man die Verz√∂gerung vor dedizierte Treiber, m√ľssen diese wiederum leistungsf√§hig genug zum Umladen der Gates sein und bis an die Versorgung heranreichen, weshalb man an diesem Punkt √ľberlegen sollte, ob 95% duty cycle nicht auch reichen w√ľrden (Anmerkung: Bezug auf bootstrapping?) und man integrierte Treiber f√ľr reine N-Kanal-Best√ľckung einsetzen sollte - spart dann wieder etwas Verluste am Highside-Switch, weil N-Kan√§ler gleicher Generation und Leistungsklasse einen niedrigeren Rds(on) als ihre P-Pendants haben.

Dieser Artikel ist noch lange nicht vollständig. Der Auto/Initiator hofft das sich weitere User am Ausbau des Artikels beteiligen.

Das Erg√§nzen ist also ausdr√ľcklich gew√ľnscht! Besonders folgende Dinge w√ľrden noch fehlen:

Eine vern√ľnftige diskrete Ansteuerung f√ľr eine H-Br√ľcke. Korrektur auf Rechtschreibfehler, Zeichensetzung, Schreibstil, Fachausdr√ľcke. Gibt's denn keinen, der etwas verbessern m√∂chte?


Ansteuerung mit einem LeistungsOPV

Die wohl preislich und platztechnisch g√ľnstigste Alternative zur Ansteuerung von Motoren in H-Br√ľcken ist die Verwendung von (Leistungs-)Operationsverst√§rkern oder Audioverst√§rker ICs.

Heidingscher Motortreiber

Bei dem Heidingschen Motortreiber wird jeder Anschluss des Motors mit einem Ausgang des Operationsverst√§rker verbunden, die Eing√§nge des OPVs selbst als Komparator. Diese Methode ist f√ľr kleine und mittlere Motoren(=< 1A) und m√§√üige PWM-Frequenzen(<10kHz) gut geeignet. Ein RB35 von Conrad kann damit problemlos angesteuert werden. Bei zu hohen PWM-Frequenzen ist die SlewRate von vielen OPVs zu gering und die entsprechenden OPVs sind dann viel zu teuer und man sollte eine Ansteuerung per MOSFET (s.o.) bevorzugen. Momentan hat sich der TCA 0372 DP1 (0,57‚ā¨ bei Reichelt) Verwendung gefunden. Weitere Informationen sind in diesem Forumsbeitrag zu finden.

Gleichstromansteuerung

Eine weitere M√∂glichkeit ist es, dem Operationsverst√§rker eine Gleichspannung vorzugeben, mit denen der OPV die Motoren ansteuert. Diese Methode eignet sich sehr gut f√ľr analoge Schaltkreise. Der Wirkungsgrad ist allerdings nicht der beste, da die restliche Spannung in W√§rme umgesetzt wird. Zudem werden viele weitere Komponenten ben√∂tigt, was den Aufbau teurer und fehleranf√§lliger macht. Der entsprechende Schaltkreis ist im Datenblatt des TCA 0372 DP1 zu finden.

Ansteuerung mit Treiber ICs

Ansteuerung mit Treiber IC L293 D

Dies ist ohne Zweifel die am h√§ufigsten genutzte Ansteuerung bei Roboter-Bastlern: Man nimmt einfach das IC L293D, denn darin sind sogar zwei H-Br√ľcken enthalten. Also mit einem IC lassen sich ohne weitere externe Bauteile gleich zwei Motoren ansteuern. Zwar nur bis ca. 600mA, aber das reicht oft schon f√ľr kleinere bis mittlere Roboteranwendungen aus.


Wie aus dem Schaltbild zu ersehen ist, werden f√ľr die Ansteuerung jedes Motors 3 Ports ben√∂tigt. Die Enable-Leitung f√ľhrt man oft auf einen PWM-Port welcher, wie bei der MOS-FET Schaltung oben, die Geschwindigkeit regelt. Die beiden anderen Ports geben die Drehrichtung an. Immer wenn die Ports unterschiedliche Polarit√§t haben dreht der Motor in eine bestimmte Richtung, je nachdem wo Low und High anliegt. Das Besondere ist, dass wenn an beiden Ports der gleiche Pegel anliegt, also zweimal Low oder High, dann wird n√§mlich der Motor kurzgeschlossen, das dann als Bremse fungiert. Das Bremsen kann bei Robotern durchaus n√ľtzlich sein. Zudem ist bei schnellen Richtungswechseln immer zu empfehlen zuerst kurz zu bremsen, um nicht den Motor oder Motortreiber zu stark zu belasten.

Hinweise zum Schaltplan:

Es m√ľssen unbedingt alle vier GND-Anschl√ľsse mit Masse verbunden werden!

Zur Stabilisierung der Versorgungsspannung sollten noch Elkos (z.B. 100¬ĶF) eingebaut werden, dies ist im Schaltplan nicht eingezeichnet! (Vergleiche z.B. mit Schaltplan vom L293B, weiter unten)

Wahrheitstabelle (hier exemplarisch f√ľr 1 und 2; bei 3 und 4 entsprechend):

Eingang "1A" Eingang "2A" "1,2EN" Ausgang "1Y" Ausgang "2Y" entspricht
0V 0V 5V - - Motor kurzschließen (Bremsen)
0V 5V 5V - + Motor dreht vorwärts
5V 0V 5V + - Motor dreht r√ľckw√§rts
5V 5V 5V + + Motor kurzschließen (Bremsen)
egal egal 0V hochohmig hochohmig Motor aus (Verbindung trennen, nicht kurzschließen)


Bei Belastung des Ausgangs steht nicht mehr die volle Betriebsspannung am Ausgang zur Verf√ľgung.

Der angegebene Maximalstrom von 600mA pro H-Br√ľcke ist mit Vorsicht zu genie√üen, da oft die Verlustleistung des Treibers au√üer Acht gelassen wird. Bei der Entnahme des Nennstroms (600mA) entwickelt das IC eine Verlustleistung von etwa 3 Watt !! (aufgrund UCE S√§ttigungsspannungen der Transistoren). Das IC kann sich dabei so stark erw√§rmen, dass es zerst√∂rt wird.

Um dieses Problem zu l√∂sen, kann man einerseits versuchen, mit K√ľhlk√∂rpern und/oder einem Platinenlayout mit gro√üer Massefl√§che, die W√§rme abzuf√ľhren; andererseits k√∂nnte der Motor mit PWM betrieben werden, um die durchschnittliche Stromaufnahme zu verringern; die Motorleistung wird damit aber auch niedriger. Als K√ľhlk√∂rper gibt es auch spezielle Formen, die direkt auf das IC geklebt werden k√∂nnen (Beispiel), ob diese daf√ľr jedoch ausreichen sei dahin gestellt. Selten erfolgt auch eine Huckepack-Montage von mehreren identischen ICs zur Verteilung der Abw√§rme. Auch auf kurzes Abbremsen des Motors vor einem Richtungswechsel soll noch einmal hingewiesen werden.

Falls diese Ma√ünahmen nicht zielf√ľhrend sein sollten und der Motortreiber trotzdem √ľberhitzt oder zerst√∂rt wird, sollte man sich nach einem anderen Motortreiber umsehen.

Den Treiberbaustein gibt es auch in SMD und heißt dann L293DD.

Ansteuerung mit Treiber IC L293 B

Der L293B ist dem L293D sehr √§hnlich, da er die selbe Pinbelegung besitzt und auch von der Ansteuerung genau identisch ist. Im Gegensatz zum L293D kann er aber 67% mehr Strom (d.h. 1A) am Ausgang liefern, ben√∂tigt aber zus√§tzlich noch 4 Freilaufdioden pro Motor. Der Preisunterschied zum L293D ist minimal, sodass man sich den Einbau des etwas st√§rkeren L293B √ľberlegen kann.

Es soll noch eine typische Anwendungsschaltung f√ľr den L293B gezeigt werden (Auf das Bild klicken f√ľr h√∂here Aufl√∂sung):

Als Dioden schl√§gt das Datenblatt die Verwendung von 1N4001 vor. (Dioden in oben gezeigter Anordnung kommen so auch in Br√ľckengleichrichtern vor.) Bei einem PWM Signal, wo der Strom nicht auf Null zur√ľck geht, sind langsame Dioden aber problematisch, besser geeignet sind schnelle oder Schottkydioden (z.B. BYV27, 1N5819).

Die Verlustleistung des ICs bei einem Ausgangsstrom von 1A (Nennstrom) betr√§gt ca. 3 Watt! Hierf√ľr ist schon eine K√ľhlung erforderlich (K√ľhlk√∂rper, Platinenlayout mit K√ľhlfl√§chen, ggf. L√ľfter).

Wahrheitstabelle: siehe L293D

Ein ähnliches IC ist das SN754410, welches allerdings schwer erhältlich ist.

Ansteuerung mit dem Schaltkreis L298

Der Schaltkreis L298 ist quasi der gro√üe Bruder des L293D. Er beinhaltet auch zwei komplette H-Br√ľcken, kann also auch zwei Motoren ansteuern. Die Pinbelegung ist ebenfalls dem L293D sehr √§hnlich, jedoch verf√ľgt er √ľber eine andere Bauform ("MULTIWATT-15"):


Hinweis: Der L298 ist auch in einer SMD-Ausf√ľhrung erh√§ltlich.

Der wichtigste Unterschied besteht jedoch darin, dass jede H-Br√ľcke bei L298 bis zu 2 A belastet werden kann. Damit lassen sich also schon wesentlich gr√∂√üere Motoren ansteuern. Ein weiterer Vorzug sind die sogenannten SENSE-Ausg√§nge, √ľber die der komplette Strom flie√üt. Oft wird hier ein Hochlastwiderstand angeschlossen, um aus der abfallenden Spannung den Strom berechnen zu k√∂nnen. Dies machen sich Steuerungen wie RN-Motor oder aber andere Schrittmotoransteuerungen zunutze, um den Strom zu regeln. Ben√∂tigt man keine Strommessung, so m√ľssen die Sense-Ausg√§nge direkt mit GND verbunden werden. Anders als beim L293D werden hier externe Freilaufdioden gebraucht.

Bei der angegebenden Stromst√§rke von 2A ist allerdings auf eine ausreichende W√§rmeabfuhr durch K√ľhlk√∂rper zu achten. Laut Datenblatt kann bei einem Strom von 2A in einer Br√ľcke eine Spannung von bis zu 4,9V abfallen. Die Verlustleistung betr√§gt dann 9,8W pro Br√ľcke. Geringere Verluste haben im Allgemeinen Motortreiber, welche aus MOSFETs aufgebaut sind, da sie niederohmiger sind. Leider l√§sst sich dieser Motortreiber bei Defekt aufgrund seiner Bauform nur schwer auswechseln.



Hinweis: Im Schaltplan fehlen Kondensatoren und Elkos. Es sollte noch ein Keramikkondensator 100nF zwischen +5V und GND, sowie noch ein 100nF Keramikkondensator und parallel dazu ein Elko mit ausreichender Kapazität zwischen Betriebsspannung und GND eingebaut werden.

Ein weiteres Schaltbild gibt es hier [1]

Ansteuerung mit L620x

Der Schaltkreis L620x stellt eine etwas modernere Alternative zur L298-Ansteuerung dar. Die Ansteuerung ist praktisch identisch, der Schaltungsaufbau in etwa gleich. Beim L620x sind keine externen Freilaufdioden mehr notwendig, daf√ľr ist ein Kondensator und zwei Dioden f√ľr die interne Spannungserzeugung notwendig. Ein gro√üer Vorteil ist auch, dass kein extra K√ľhlk√∂rper mehr notwendig ist. Durch die Verwendung von niederohmigen FETs im L620x f√§llt am Motortreiber weniger Spannung ab und die Verlustleistung des Motortreiber-ICs wird dadurch deutlich geringer. Durch die erh√§ltliche DIP-Bauform lassen sich diese Motortreiber bei Defekt auch schnell und einfach auswechseln. Viele integrierte Schutzfunktionen im L620x sorgen daf√ľr, dass der Chip nicht so einfach zerst√∂rt werden kann.

In der Praxis sind die angegeben 2,8 A (f√ľr den L6205) jedoch mit Vorsicht zu genie√üen. Bei Testlayouts erw√§rmten sich die ICs bereits bei 2 A Dauerstrom (PWM) oft so stark, dass die automatische Temperaturabschaltung reagierte, somit wird man vermutlich ohne K√ľhlung oder gro√ües K√ľhllayout auf der Platine auch nicht mehr als beim L298 erreichen.

L6202 f√ľr 1 Motor

Pinbelegung des Motortreibers:

Bild:L6202Pinbelegung.png

Den L6202 gibt es auch noch in anderen Geh√§usebauformen: L6201 ist die SMD-Ausf√ľhrung (SO20 / PowerSO20), L6203 hat ein "Multiwatt-11"-Geh√§use.

Schaltungsbeispiel:

Kurze Erläuterung:

R1 schaltet die H-Br√ľcke bei fehlendem PWM-Signal ab und ist entbehrlich. Anmerkung: dieser Widerstand sollte scheinbar doch etwas hochohmiger gew√§hlt werden, in der Gr√∂√üenordnung 50kOhm, um das PWM-Signal nicht zu stark zu belasten. (Details folgen u.U. noch)

C1 stabilisiert eine interne Spannungsreferenz.

C4 und C5 sind so genannte boostrap-Kondensatoren, die unbedingt notwendig sind, damit der Motortreiber seine oberen FETs treiben kann (n√§here Details im Datenblatt). Die Kapazit√§t von C4/C5 soll f√ľr einen sicheren Betrieb jeweils mindestens 10nF betragen.

R2 und C6 bilden ein sog. Snubber-Netzwerk, welches zur Entstörung dient.

L6205 f√ľr 2 Motoren

Bild:l6205ic.gif Bild:l6205pinbelegung.gif

TLE4202B / B57928

Der TLE4202B ist ein kompakter Motortreiber von Siemens im TO-220-Geh√§use und kann einen Motor mit maximal 2A treiben. Er kann von 3,5V-17V Betriebsspannung arbeiten (absoutes Maximum: 40V). Intern ist der TLE4202B analog aufgebaut, er besteht aus Komparatoren mit einer Leistungsendstufe. Die notwendigen Freilaufdioden sind bereits integriert. Der Treiber ist kurzschlussfest gegen Masse und schaltet bei √úberhitzung ab. Leider l√§sst sich aufgrund des internen Aufbaus der Motorausgang nicht hochohmig schalten, es mangelt auch - im Vergleich zu anderen Motortreiberbausteinen - an einem separaten PWM-Eingang. Der Betrieb mit PWM ist trotzdem m√∂glich TODO!. Zur Verlustleistung und Abw√§rme des Treibers je nach Laststrom wurde eine Messreihe durchgef√ľhrt (siehe unten). Bezugsquelle f√ľr den TLE4202B ist vorzugsweise Pollin aufgrund des attraktiven Preises (50 Cent).

Pinbelegung des Motortreibers TLE4202B (TO-220-Gehäuse):

Bild:TLE4202_Pins.png

Anwendungsschaltung laut Datenblatt (nachgezeichnet in Target):

Bild:TLE4202_Schematic.png

Die Kondensatoren (C2,C3) und Widerst√§nde(R1,R2), die zwischen den Motoranschl√ľssen und Masse liegen, sind wichtig zur Schwingneigungsunterdr√ľckung. Diese sog. Snubber-Netzwerke sind durchaus √ľblich, beispielsweise bei Audioverst√§rkern. Sie tragen hier zur Stabilit√§t des Treibers bei. Ein Weglassen dieser Komponenten k√∂nnte zu wilden Schwingungen am Ausgang f√ľhren.

Die 1,7V-Referenz wird intern erzeugt und ist mit den invertierenden Eing√§ngen der Komparatoren verbunden (√ľber 50kOhm intern). Die Komparatoren vergleichen die Eingangssignale an IN1/IN2 mit dieser Spannungsreferenz und steuern dann den Ausgang auf High (wenn Eingangsspannung √ľber Referenzspannung) oder auf Low (wenn Eingangsspannung unter der Referenzspannung). Im gezeigten Schaltplan wird die interne Referenz verwendet. Pin 2 wird dann nur mit einem Kondensator gegen Masse verbunden. Die Referenzspannung wird somit etwas stabilisiert.

Da die Referenz √ľber 50kOhm intern an die invertierenden Eing√§nge geschaltet ist, k√∂nnte auch von au√üen an Pin 2 eine andere beliebige (niederohmige) Referenzspannungsquelle eingespeist werden.

Wahrheitstabelle der Ansteuerung:

IN1 IN2 OUT1 OUT2 entspricht
L L - - Stop (Motor kurzschließen)
L H - + Motor dreht vorwärts
H L + - Motor dreht r√ľckw√§rts
H H + + Stop (Motor kurzschließen)

Wie man hier noch einmal sieht, kann bei dieser Br√ľcke die Verbindung zum Motor nicht getrennt werden, Motor ausschalten bedeutet hier den Motor kurzschlie√üen, sodass er dann relativ abrupt stehen bleibt.

Es existiert auch ein TLE4203, welcher bis zu 4 Ampere treiben kann.

Messreihe

Zur Bestimmung der Verlustleistung und der am Treiber TLE4202B abfallenden Spannung wurde vom RN-User BMS eine Messreihe durchgef√ľhrt. Die Beschaltung des Treibers erfolgte nach Datenblatt, als Betriebsspannung wurde 12V gew√§hlt. Eingang 1 des Treibers wurde auf GND gelegt und Eingang 2 mit +12V verbunden. Als Last diente eine einstellbare elektronische Last. Die Messreihe wurde bei Raumtemperatur durchgef√ľhrt. Der Treiber wurde zun√§chst ohne K√ľhlk√∂rper betrieben, um zu ermitteln, bis zu welchem Strom bzw. welcher Verlustleistung ein gefahrloser Betrieb noch ohne K√ľhlk√∂rper m√∂glich ist.

Bei verschiedenen Laststr√∂men im Bereich 0...2,5 A erfolgte die Messung der Ausgangsspannung des Treibers sowie dessen Temperatur. F√ľr Laststr√∂me gr√∂√üer 1 A wurde ein K√ľhlk√∂rper verwendet, um den Treiber durch zu hohe Abw√§rme nicht zu gef√§hrden. Die automatische Abschaltung bei √úbertemperatur wurde dabei nicht herausgefordert. Da Temperaturwerte f√ľr die F√§lle mit und ohne K√ľhlk√∂rper nicht direkt vergleichbar sind, wurden f√ľr die h√∂heren Str√∂me keine Temperaturen mehr gemessen, zumindest aber die abfallende Spannung am Treiber.

Die Ruhestromaufnahme des Treibers wurde mit 16mA gemessen, an 12V ergibt das eine Leistungsaufnahme von knapp 0,2 Watt. M√∂chte man die gesamte Verlustleistung des Treibers berechnen, m√ľssen diese 0,2 Watt zu den Werten aus der Tabelle addiert werden.

Laststrom Ausgangsspannung Spannungsabfall am Treiber [*1] Verlustleistung aufgrund Laststrom [*1] Temperatur
0,0 A 11,3 V 0,7 V
0,1 A 11,0 V 1,0 V 0,10 W 34 ¬įC
0,2 A 10,9 V 1,1 V 0,22 W 41 ¬įC
0,3 A 10,8 V 1,2 V 0,36 W 50 ¬įC
0,4 A 10,7 V 1,3 V 0,52 W 58 ¬įC
0,5 A 10,6 V 1,4 V 0,70 W 66 ¬įC
0,6 A 10,4 V 1,6 V 0,96 W 75 ¬įC
0,7 A 10,3 V 1,7 V 1,19 W 87 ¬įC
0,8 A 10,2 V 1,8 V 1,44 W 97 ¬įC
1,0 A 10,1 V 1,9 V 1,90 W
1,5 A 9,5 V 2,5 V 3,75 W
2,0 A 8,9 V 3,1 V 6,20 W
2,5 A [*2] 8,0 V 4,0 V 10,00 W

[*1] : Diese Werte wurden berechnet.

[*2] : Der Treiber ist nur bis 2 A spezifiziert, konnte aber kurzzeitig auch 2,5 A liefern.

Kommentar:

  • Allgemein gilt: Mit steigendem Laststrom steigt der Spannungsabfall am Treiber sowie auch dessen Verlustleistung.
  • Wie bei anderen Treibern auch ist der laut Datenblatt versprochene maximale Ausgangsstrom des Treibers (hier 2A) nur mit vern√ľnftiger K√ľhlung erreichbar.
  • Nimmt man als gefahrlose Betriebstemperatur etwa 60 ¬įC an ( um sich nicht die Finger daran zu verbrennen ;) ), kann man an den Messwerten ablesen, dass dann nur knapp ein halbes Ampere Dauerstrom m√∂glich sind.
  • F√ľr gr√∂√üere Str√∂me sollte unbedingt ein geeigneter K√ľhlk√∂rper verwendet werden.

Warnung: Wird der Treiber bei h√∂heren Dauerstr√∂men dennoch ohne K√ľhlk√∂rper und damit bei hohen Temperaturen betrieben, muss damit gerechnet werden, dass die Lebensdauer und Zuverl√§ssigkeit des Treibers drastisch sinkt!

TLE5205

Der TLE5205 ist ein starker Motortreiber im TO-220-Geh√§use, welcher einen Motor bis 5A treiben kann. Freilaufdioden sind hier bereits integriert. Der Motortreiber kann falsche Verbindungen am Ausgang erkennen und zeigt dies durch ein Signal am Errorflag (EF) an. Kurzschl√ľsse der Ausg√§nge mit der Versorgung (V+ und GND) und eine zu hohe Stromaufnahme der Last k√∂nnen erkannt werden, der Ausgang wird dann innerhalb 50¬ĶS abgeschaltet und das EF gesetzt (open-drain-Ausgang!). Ein offener Ausgang wird ebenfalls detektiert. Bei √úberhitzung (150¬įC) schaltet das IC ab. Achtung! Bei Unterspannung ("Under Voltage Lockout" im Datenblatt) schaltet sich die Br√ľcke ebenfalls ab (bei etwa 5V). Die Betriebsspannung des ICs kann maximal 40V betragen, die Testschaltungen im Datenblatt werden im Bereich von 6-18V betrieben. Die Ruhestromaufnahme des ICs betr√§gt typisch 5mA (maximal 10mA).

Bild:TLE5205_Pins.png

Der TLE5205 ist nicht pinkompatibel zum TLE4202(B) !

Wie man sieht, kommt dieser Motortreiber mit sehr wenig Außenbeschaltung aus:

Bild:TLE5205_Schaltplan.png

Als Elko kann auch gerne ein Typ mit gr√∂√üerer Kapazit√§t verwendet werden (im Datenblatt 4700¬ĶF in der Testschaltung). Es k√∂nnen auch mehrere Elkos mit kleiner Kapazit√§t parallel geschaltet werden (g√ľnstiger ESR).

Im Fehlerfall (Kurzschluss, √úberhitzung, Leerlauf) wird "ERROR" auf GND gelegt. Durch √Ąndern der Pegel an den Eing√§ngen wird das EF wieder zur√ľckgesetzt (liefert dann High, +5V). Der Pull-up-Widerstand ist notwendig, da der EF-Pin nur gegen GND schalten kann (open-drain-Ausgang).

Die Br√ľcke verh√§lt sich im Vergleich zu den anderen gezeigten Motortreibern etwas anders an ihren Eing√§ngen:

Wahrheitstabelle (laut Datenblatt):

IN1 IN2 OUT1 OUT2 entspricht
L L + - Motor dreht vorwärts
L H - + Motor dreht r√ľckw√§rts
H L - - Motor stop (kurzschließen, OUT1+2 auf GND)
H H Z Z Motor ausschalten (Verbindung trennen)

Wahrheitstabelle (nach Fehlersuche mit zwei Bauteilen herausgefunden):

IN1 IN2 OUT1 OUT2 entspricht
L L - - Motor stop (kurzschließen, OUT1+2 auf GND)
L H - + Motor dreht r√ľckw√§rts
H L + - Motor dreht vorwärts
H H Z Z Motor ausschalten (Verbindung trennen)

Leider mangelt es bei dieser Br√ľcke an einem separaten Eingang f√ľr PWM. Man k√∂nnte zun√§chst auf die Idee kommen, den Eingang IN1 mit PWM zu verbinden und IN2 als Richtungssignal zu nehmen. Das das allerdings nicht ganz wie erhofft klappt soll hier erkl√§rt werden (ist nicht ganz einfach): Der Motor w√ľrde beim Vorw√§rtsfahren abwechselnd drehen und gebremst (kurzgeschlossen) werden, beim R√ľckw√§rtsfahren allerdings abwechselnd drehen und ausgeschaltet werden (nicht kurzgeschlossen). Das Verhalten des Motors je nach Richtung w√§re dann unterschiedlich.

Abhilfe verschafft diese kleine Schaltung an den Eingängen des Motortreibers:

Bild:TLE5205_PWM.png

Ist PWM auf 5V, dann wird der Motor ausgeschaltet (Verbindung wird getrennt).

Ist PWM auf 0V, so gelten die angelegten Pegel zur Richtungsinformation.

Vorsicht! Bei den zuvor vorgestellten Motortreibern ist dieses Verhalten genau anders herum.

Weitere Treiber-ICs

Es gibt noch mehr √§hnliche Treiber ICs, die hier nur kurz aufgez√§hlt werden sollten. F√ľr Details sollte man ohnehin ins Datenblatt schauen.

  • L293E √§hnlich dem L293B, mit Strommessung
  • BTS7741G max. 7A , nur eine Br√ľcke, SMD
  • MC33887 max. 5A, nur eine Br√ľcke, SMD
  • BA6209 1,6A pk (max. continuous output current nicht angegeben), max.18V, nur eine Br√ľcke, SIP10-Geh√§use
  • TA7267 1A (3A pk), 6-18V, eine Br√ľcke, HSIP7-Geh√§use
  • TB6568KQ 1,5A (3A pk), 10-45V, eine Br√ľcke, HSIP7-Geh√§use

Grundsätzliche Hinweise zum Aufbau

  • Die Spannungsversorgung der Motortreiber sollte ausreichend gepuffert werden, um Spannungseinbr√ľche durch z.B. hohe Anlaufstr√∂me der Motoren zu vermeiden. Ein Elko mit einer Kapazit√§t von 100¬ĶF...2200¬ĶF (je nach Stromaufnahme des Motors) sollte in der Versorgungsleitung vorgesehen werden. Typen mit geringem ESR sind von Vorteil; es k√∂nnen auch mehrere "normale" Elkos parallel geschaltet werden. Ein zus√§tzlicher 100nF Keramikkondensator filtert hochfrequente St√∂rungen auf der Versorgungsleitung.
  • Die Verkabelung von der Versorgungsleitung zum Motortreiber und von dort bis hin zu den Motoren muss einen ausreichenden Querschnitt aufweisen; ein Verdrillen der Kabel verbessert dabei die EMV (elektromagnetische Vertr√§glichkeit). Die Kabel der Motoren sollten nach M√∂glichkeit Abstand zu Sensorleitungen halten und m√∂glichst nicht zu ihnen parallel liegen, um eine Verf√§lschung der Sensormesswerte durch Induktion zu unterbinden. Dies ist vor allem bei einer Steuerung der Motoren mit PWM und bei hochohmigen Sensorimpedanzen enorm wichtig. Die Motoren sollten grunds√§tzlich immer entst√∂rt werden (siehe unten). Ein Kondensator zwischen den Anschl√ľssen ist das Minimum.
  • Wird der Motortreiber mit PWM betrieben, sollte die Frequenz der PWM m√∂glichst niedrig eingestellt werden. Dadurch werden Verluste beim Umschalten in der H-Br√ľcke reduziert (v.a. bei MOSFETs).
  • Freilaufdioden m√ľssen f√ľr die auftretenden Str√∂me ausgelegt und auch "schnell genug" sein. Sind in den Motortreiberbausteinen bereits Freilaufdioden ("free wheeling diodes") integriert, so m√ľssen in der Regel keine zus√§tzlichen Dioden in die Schaltung eingebaut werden. Zus√§tzliche Freilaufdioden schaden allerdings auch nicht.
  • Ein Motortreiber kann seinen angegebenen Nennstrom in Realit√§t meist nicht ohne K√ľhlung erreichen (kurzzeitig durchaus m√∂glich, langfristig aber nicht). Der Motortreiber sollte lieber etwas √ľberdimensioniert werden (in Bezug auf maximal lieferbaren Strom), um einerseits die Verluste zu reduzieren, andererseits aber auch die M√∂glichkeit zum zuk√ľnftigen Umbau und Betrieb des Roboters mit leistungsf√§higeren Motoren zu gew√§hrleisten.
  • Am Motor steht aufgrund der internen Verluste (z.B. RDS-ON-Widerstand bei MOSFETs) meist nicht mehr die volle Betriebsspannung zur Verf√ľgung. Insbesondere bei niedrigen Versorgungsspannungen macht sich dies bemerkbar.
  • Vor allem wenn gr√∂√üere Str√∂me von den Motoren ben√∂tigt werden, sollte man auf ein m√∂glichst sternf√∂rmiges Massekonzept (Verdrahtung) der Schaltung achten, notfalls muss Steuerung und Leistungsteil aus getrennten Spannungsquellen versorgt werden.
  • Die Motortreiber sollten auswechselbar sein, z.B. durch Verwendung einer IC-Fassung. Bei Defekt oder √úberlastung kann der Motortreiber z√ľgig und einfach ausgetauscht werden (besonders auf Roboter-Wettbewerben sinnvoll!). Nicht f√ľr alle Geh√§usebauformen der Motortreiber sind Sockel verf√ľgbar.
  • Bei einem Platinenlayout f√ľr Motortreiber sind breite Leiterbahnen und K√ľhlfl√§chen (h√§ufig gro√üe Massefl√§chen) sowie kurze Verbindungen vorteilhaft, um Spannungsabf√§lle auf den Leitungen zu reduzieren und W√§rme abzuf√ľhren.

Noch mehr Power gew√ľnscht?

Obwohl der L298 schon einiges abdeckt, so kommt er sp√§testens bei den Scheibenwischermotoren langsam an seine Grenzen. Bei starker Belastung k√∂nnen solche Motoren kurzzeitig bis ca. 10 A und mehr ziehen. F√ľr solch starke Motoren gibt es jetzt einen ganz interessanten Motorchip aus dem Kfz-Bereich: VNH3SP (Datenblatt u.a. im Roboternetz Download-Bereich). Mit ihm lassen sich sogar recht gro√üe Motoren ansteuern; vorausgesetzt, man k√ľhlt ihn entsprechend, so vertr√§gt der Chip bis zu 30 A. Aber selbst ohne K√ľhlung bietet er bedeutet mehr Leistung als der L298. Das Sch√∂ne: die Ansteuerung ist kaum anders als beim L298 und L293D.

Kleiner Nachteil: Da es ein SMD-Chip mit 1mm Kontaktabstand ist, muss man schon eine geeignete Platine (spezielles Layout mit K√ľhlfl√§chen) und etwas L√∂terfahrung besitzen. Inzwischen gibt es aber schon verschiedene RN-Projekte mit dem Chip (RN-Power, RN-Mini H-Bridge), Platinen und Chip k√∂nnen √ľber den Robotikhardware.de-Platinenservice bezogen werden.



Alternativ zum SMD-Chip VNH3SP30 gibt es noch die Alternative VNH2SP30. Dieser Chip erlaubt zwar nur Motorspannungen zwischen 6 und 16 Volt (Achtung: schaltet √ľber 16V ab aufgrund Overvoltage Protection!), jedoch hat er einen wesentlich geringeren Innenwiderstand und wird deshalb nur etwa halb so warm wie der VNH3SP30. Aus diesem Grund eignet er sich auch ideal f√ľr kleine Doppelmotorsteuerungen. Nat√ľrlich gibt's auch hierf√ľr ein Projekt und eine Bauanleitung, siehe RN-VNH2Dualmotor

Das Schöne ist, dass es dieses RN-Projekt jetzt auch als Fertigmodul gibt!


Vergleich der gezeigten Motortreiber(-bausteine)

Bitte kontrollieren, korregieren und/oder erg√§nzen :)

Bezeichnung Bauformen Mot. UB Ausg.strom Freilaufd. Curr.Sens. ca. Preis REI CON CSD POL RHW
L293B DIL-16 2 4.5V-36V 1A keine nein 1-2 ‚ā¨ X . . . .
L293D DIL-16 2 4.5V-36V 600mA integriert nein 1-2 ‚ā¨ X X X . X
L293DD SO-16 (SMD) 2 4.5V-36V 600mA integriert nein 2-3 ‚ā¨ X X . . .
L293E DIL-20 2 4.5V-36V 1A keine ja 2-3 ‚ā¨ X X X . .
L298 Multiwatt-15, Pow.SO20 2 4,5V-50V 2A keine ja 2-4 ‚ā¨ X X X X X
L6201/PS SO20/PowerSO20 1 12V-48V 1A / 4A(!?) integriert ja 5 ‚ā¨ X . . . .
L6202 DIL-18 1 12V-48V 1,5-2 A integriert ja 3-4 ‚ā¨ X . X . .
L6203 Multiwatt-11 1 12V-48V 2A / (4A!?) integriert ja 4 ‚ā¨ X . X . .
L6205 DIL-20,(Power)SO-20 2 8V-52V 2,8A integriert ja 7 ‚ā¨ X . . . X
TLE4202 TO220 1 3,5-17V 2A integriert nein 0,50 ‚ā¨ . . . X .
TLE5205 TO220, P-DSO-20 1 6V-40V 5A integriert nein (5 ‚ā¨) . . . . .
BTS7741G P-DSO-28-14 1 4,8V-42V 7A integriert nein 2 ‚ā¨ . . . X .
VNH2SP30 MultiPowerSO-30 1 5,5V-16V [*1] 30A integriert ja 10 ‚ā¨ . . . . X
VNH3SP30 MultiPowerSO-30 1 5,5V-36V [*2] 30A integriert nein 6-9 ‚ā¨ X . . . X
Bezeichnung Bauformen Mot. UB Ausg.strom Freilaufd. Curr.Sens. ca. Preis REI CON CSD POL RHW

Abk√ľrzungen:

  • Mot. = Wie viele Motoren k√∂nnen gesteuert werden
  • UB = Betriebsspannungsbereich
  • Ausg.strom = Ausgangsstrom
  • Freilaufd. = Freilaufdioden
  • Curr.Sens. = Current Sensing = Messung des Motorstroms

Verf√ľgbarkeit bei H√§ndlern:

  • REI = reichelt.de
  • CON = conrad.de
  • CSD = csd-electronics.de
  • POL = pollin.de
  • RHW = robotikhardware.de

X bedeutet verf√ľgbar, . bedeutet nicht verf√ľgbar

Anmerkungen zu Motortreibern vom Typ VNH2SP30 und VNH3SP30:

  • [*1]: schaltet bei typ. 19V (16V-22V) ab aufgrund Overvoltage Protection
  • [*2]: schaltet bei typ. 43V (>36V) ab aufgrund Overvoltage Protection

(keine Garantie auf Vollständigkeit und Richtigkeit der Angaben)

Stand: März 2012

Endstufen mit I2C-Bus / RS232

Motoransteuerung √ľber RS232, I2C, RC
vergrößern
Motoransteuerung √ľber RS232, I2C, RC
Verwendet man eine der oben vorgestellten H-Bridges, so wird immer vorausgesetzt, dass ein PWM-Signal und mehrere Ports zur Ansteuerung bereitstehen. Ist dies nicht der Fall, weil diese vielleicht schon belegt sind, so lassen sich Endstufen durch einen zus√§tzlichen Microcontroller auch um beliebige Schnittstellen erweitern. Insbesondere √ľber I2C lassen sich dadurch mehrere Motorboards √ľber einen einzigen Bus ansteuern. Ein Beispiel ist der programmierte Controller MOTCTRL, der speziell f√ľr diese Aufgabe gedacht ist. Die Grundschaltung sieht man in der rechten Skizze.

Varianten der Ansteuerung

Verwendung von Logikgattern

Pro Motor, der angesteuert werden soll, werden normalerweise je drei Pins ben√∂tigt: 1xPWM und 2xRichtung. Sollen viele Motoren gleichzeitig angesteuert werden, so werden auch viele Pins des Mikrocontrollers ben√∂tigt. Durch die Verwendung von NAND oder NOT-Gattern k√∂nnen Pins f√ľr die Richtungsinformation gespart werden:

Aufgabe der Gatter ist es, das Richtungsbit zu invertieren. So liegt an IN1 der gleiche Pegel wie an Richtung an, an IN2 der invertierte Pegel. Somit ist es m√∂glich, mit nur einem Richtungsbit auszukommen. Es wird die Verwendung von 74HC00 (enth√§lt 4x NAND) oder 74HC04 (enth√§lt 6x NOT) - Logikgattern empfohlen. Selbstverst√§ndlich m√ľssen die Logikgatter f√ľr den Betrieb auch mit der Versorgungsspannung (meist +5V) verbunden werden, √ľblicherweise wird die Versorgung auch mit einem 100nF Keramikkondensator in der N√§he des Gatters abgeblockt. (Nicht im Plan eingezeichnet!)

Vorteile dieser Variante:

  • 50% der Mikrocontrollerpins f√ľr die Richtungsinformation werden eingespart und k√∂nnen f√ľr andere Zwecke verwendet werden
  • Programmierung wird einfacher, da weniger Pins gesteuert werden m√ľssen

Nachteile:

  • Es wird ein zus√§tzliches IC ben√∂tigt
  • kurze Laufzeitunterschiede der Signale an IN1 und IN2 (in der Regel vernachl√§ssigbar)
  • Motor kann nicht kurzgeschlossen (also gebremst) werden, da hierzu gleiche Pegel an IN1 und IN2 notwendig w√§ren; Ausschalten geschieht weiterhin √ľber PWM

Inverter können auch aus Transistoren und Widerständen gebaut werden:

Verwendung von Portexpandern

Mit einem I2C-Portexpander wie z.B. PCF8574 oder mit einem Seriell-Parallel-Schieberegister 74HC595 könnten die Richtungsinformationen IN1, IN2 usw. geschaltet werden.

Vorteile:

  • Einsparung der Mikrocontrollerpins f√ľr die Richtungsinformation
  • Bremsen ist weiterhin m√∂glich (im Gegensatz zur Variante mit den Logikgattern)

Nachteile:

  • Es wird ein zus√§tzliches IC ben√∂tigt
  • leicht erh√∂hter Softwareaufwand f√ľr den Mikrocontroller (I2C-Bus oder Ansteuerung des Schieberegisters)
  • Verz√∂gerungen durch die Ansteuerung


Messung der Stromaufnahme des gesteuerten Motors

Es kann manchmal interessant sein, zu wissen, wie viel Strom die Motoren eines Roboters verbrauchen. Man k√∂nnte so einen Anhaltspunkt zur Belastung der Motoren erhalten. Ein hoher Motorstrom w√ľrde z.B. bedeuten, dass der Roboter gegen eine Wand f√§hrt o.√§. Au√üerdem k√∂nnte eine Regelung der Motoren realisiert werden.

Die meisten Motortreiber-ICs haben daf√ľr SENSE-Anschl√ľsse. Wer keine Messung des Motorstroms ben√∂tigt, verbindet die SENSE-Anschl√ľsse mit GND (vgl. Schaltplan des L298). Ansonsten ist vorgesehen, einen Widerstand zwischen SENSE und GND einzubauen. Durch diesen Widerstand, der auch "Shunt" genannt wird, flie√üt auch genau der Strom, der durch den Motor flie√üt. Nach dem Ohmschen Gesetz U = R * I f√§llt dann an diesem Shunt eine Spannung ab, die proportional zum Motorstrom ist. Die Spannung l√§sst sich dann relativ einfach mit einem Mikrocontroller messen, indem man diese Spannung an einen Analogeingang anlegt.

Beispiel: Es soll ein Shunt mit 0,1 Ohm verwendet werden, der Motor benötigt 2A. Dann fallen am Shunt U = R * I = 0,1Ohm * 2A = 0,2V ab.

Ein Mikrocontroller k√∂nnte diese Spannung direkt mit dem ADC messen. Da ein Mikrocontroller allerdings einen Messbereich bis meistens 5V aufweist, w√ľrde sich nur eine geringe Aufl√∂sung des gemessenen Motorstroms ergeben. Man k√∂nnte nun den Shunt gr√∂√üer machen (z.B. 1 Ohm), um gr√∂√üere Spannungen zum Messen zu erhalten. Allerdings fehlt die Spannung, die am Shunt abf√§llt, dann nat√ľrlich am Motor, sodass dieser langsamer dreht. Au√üerdem wird im Shunt elektrische Energie in W√§rme umgesetzt, sodass diese f√ľr die entsprechende Leistung ausgelegt werden m√ľssten. Die elektrische Leistung berechnet sich aus P = I¬≤ * R. W√ľrde man beim angegebenen Beispiel einen 1-Ohm Widerstand einsetzen, m√ľsste dieser schon P = (2A)¬≤ * 1Ohm = 4W verheizen!

Eine bessere L√∂sung ist die Verwendung eines niederohmigen Shunts (z.B. 0,1 Ohm) sowie eines Operationsverst√§rkers, welcher die am Shunt gemessene Spannung quasi multipliziert und somit f√ľr den Mikrocontroller besser messbar macht.

Gezeigt wird in der Abbildung der Shunt (links), dahinter ein RC-Tiefpassfilter, welches den Strom mittelt, indem kurze Stromspitzen reduziert werden und den Messwert glätten/stabilisieren soll, sowie ein Operationsverstärker als nichtinvertierender Verstärker. Der Kondensator C2 dient nur zur Entstörung der Versorgungsspannung des Operationsverstärkers.

Als Operationsverst√§rker kann z.B. der LM358 (zwei in einem Geh√§use) oder der LM324 (vier in einem Geh√§use) verwendet werden. Dieser kommt mit asymmetrischer Betriebsspannung - also +5V und GND - aus. Der Operationsverst√§rker wird in der Grundschaltung des nichtinvertierenden Verst√§rkers betrieben. Der Verst√§rkungsfaktor berechnet sich aus 1+(R3/R4); hier also 1+(10k/1k)=11. Aus einer Eingangsspannung von z.B. 0,2V w√ľrden dann 0,2V * 11 = 2,2V am Ausgang werden. Diese Spannung lie√üe sich schon viel besser mit einem Mikrocontroller messen. Es k√∂nnen auch andere Widerstandswerte f√ľr R3 und R4 verwendet werden, um den Verst√§rkungsfaktor anzupassen.

Die genauen Werte des Tiefpassfilters sind unkritisch, es können auch andere Werte als in der Abbildung verwendet werden. Man könnte das Filter auch weglassen.

Anmerkung: Der LM358 bzw. LM324 kann bei 5V Betriebsspannung am Ausgang nur bis etwa 3,5V aussteuern. Sollen noch höhere Spannungen am Ausgang erreicht werden, muss entweder die Betriebsspannung des OpAmps erhöht oder ein sog. Rail-To-Rail Operationsverstärker (z.B. LMC6484) eingesetzt werden, der bis knapp an die Versorgungsspannung aussteuern kann.

Bei ungeschickter Massef√ľhrung kann es zu Fehlmessungen kommen. Nicht nur in diesem Fall, sondern grunds√§tzlich ist es besser, einen Subtrahierer mit OpAmp anstatt der oben gezeigten Schaltung aufzubauen. Eine solche Schaltung ist nicht viel umfangreicher, es sind nur zwei zus√§tzliche Widerst√§nde notwendig. Sind pr√§zise Messungen erforderlich, sollte der Widerstandswert des Shunts nachgemessen werden, au√üerdem wird die Verwendung von Metallfilmwiderst√§nden mit einer Toleranz von 1% in der weiteren OpAmp-Schaltung empfohlen.

Motor ausschalten - Varianten

Muss man √ľber einen so banalen Zusammenhang noch Worte verlieren? JA! Es gibt hier zwei Varianten, die durchaus wichtig sind, und in manchen Anwendungsgebieten auch einen gro√üen Unterschied machen. Naheliegend ist, die Verbindung zum Motor einfach zu trennen, sodass dieser noch ausrollen kann. Die andere M√∂glichkeit ist, die beiden Anschl√ľsse des Motors miteinander zu verbinden. Damit wird der Motor abgebremst. Den Effekt kann jeder einmal praktisch ausprobieren: Verbinde die beiden Anschl√ľsse des Motors und versuche dann, an der Achse zu drehen. Vor allem bei Getriebemotoren ist dann diese Bremse sp√ľrbar.

Bild:Motor_aus.png

F√ľr eine Geschwindigkeitsregelung mittels PWM sollte das "normale Ausschalten" gew√§hlt werden, da sich der Roboter sonst wohl kaum vom Fleck bewegt. Soll der Roboter schnell anhalten oder f√ľr einen relativ kleinen Winkel drehen, so sollten die Motoren gebremst werden.

Andererseits sollte die Hardware falls erw√ľnscht auch beide Betriebsarten unterst√ľtzen k√∂nnen. Jedoch sind dazu nicht alle Motortreiber in der Lage. Probleme kann das Bremsen machen, da der Motor dann √ľber den Motortreiber kurzgeschlossen wird (z.B. beide Anschl√ľsse mit GND verbunden). Dann flie√üt im Moment des Bremsens ein Strom durch den Treiber, welcher dann Leistung in Form von W√§rme abgeben muss.

Motortreiber aus Operationsverstärkern können z.B. ihren Ausgang nicht hochohmig schalten, es liegt immer eine belastbare Spannung am Ausgang an, somit können diese nur bremsen und nicht "normal" ausschalten.

Hier eine Tabelle die zeigt, welche Motortreiber welche Variante beherrschen können:

Treiber L293B/D/DD/E L298 L620x OpAmp TLE4202B TLE5202 BTS7741 VNH2SP30 Variante mit Logikgattern
Ausschalten ja ja ja nein nein ja nein ja ja
Bremsen ja ja ja ja ja ja ja ja nein

Und nie vergessen Motoren zu entstören

Das Entst√∂ren dient dazu, eine Ausbreitung von Funkst√∂rungen durch das sogenannte "B√ľrstenfeuer" zu verhindern. Und so wird's gemacht:


Bei Steuerung des Motors per PWM sind die Induktivitäten hilfreich. Sie verhindern das bei den steilen Flanken des PWM Signals große Ströme duch die Kondensatoren fließen. Alternativ zu den 2 Kondensatoren (C2,C3) gegen das Gehäuse kann das Gehäuse auch direkt an Masse angeschlosssen werden. Bei einer PWM Steuerung ist das die bessere Lösung.

Siehe auch

Weblinks

'Persönliche Werkzeuge

USB-RS232 Modul
Controller einfach
mit USB nachr√ľsten
robotikhardware.de


Lichtprofi.de
LED Shop
www.lichtprofi.de