Home
Elektronik am PC
Elektronik
Tutorials
Forum
Downloads
Vermischtes
Kontakt
Impressum











Home >  Elektronik am PC  > Motorsteuerung

Motorsteuerung mit dem L293D


Der L293D ist ein Treiber IC, der optimal fü die DC- bzw. Schrittmotoransteuerung ist. Er verfügt über TTL-kompatible Eingänge und kann bis zu 500mA pro Motor liefern (bei Schrittmotoren: 500 mA pro Spule). Jeder DC-Motor ist in beide Richtungen steuerbar und die Geschwindigkeit, bei entprechender Programmierung, über ein PWM Signal regelbar. Stoppen kann man den Motor durch eine Kurzschlussbremse, die den DC-Motor sofort stoppen lässt, oder durch einfaches Auslaufen. Wenn man aber wie in Schaltung 2 die Pins 1 und 9 auch noch steuert kann mann bei den DC-Motoren noch zusätzlich die Geschwindigkeit per externe PWM steuern und die Spulen auch richtig von der Versorgungsspannung trennen. Desweiteren kann man mit dem L293D bipolare Schrittmotoren ansteuern, allerdings nicht Stromgeregelt...hierzu eignet sich der L297 viel besser aber mehr dazu hier. Zur Richtungssteuerung eines DC-Motors benötigt man 2 Bit, zur eventuellen externen PWM Regelung noch mal 1 Bit pro Motor, die man entweder aus dem COM Port mit der Ausgangserweiterung bekommt oder aus dem LPT, jedoch rate ich davon ab, denn der LPT ist sehr empfindlich und geht schneller kaputt als man denkt. Wenn es trotzdem sein muss empfehle ich, eine alte ISA Steckkarte mit einem LPT Port drauf zu nehmen. Wenn dieser dann kaputt geht ist es wenigstens nicht so schlimm. Ausserdem ist eine Ansteuerung des LPTs unter Windows XP (bzw. NT allgemein) z.B. mit QBasic in fast allen Fällen nicht ohne zusätzliche Software möglich, denn Windows NT verhindert den direkten Zugriff auf die Hardware des LPTs.

Schaltung 1 stellt die einfachste Form dar, den L293D zu betreiben. Ich habe ihn nie mit mehr als 12V betrieben, laut Datenblatt sollen aber bis zu 36V möglich sein. Hier wird auch überall der L293D benutzt, weil dieser schon interne Schutzdioden besitzt, was den Schaltungsaufwand beträchtlich verringert bei fast gleichem Preis.






 
Hier werden die DC-Motoren über folgende Signale gesteuert, die Tabelle gilt für jeweils einen DC-Motor (Links- und Rechtslauf können auch vertauscht sein, dass hängt davon ab, wie die Motoren angeschlossen sind):



M1 oder M2 a b
links 1 0
rechts 0 1
normaler stop 0 0
sofort stop 1 1



Der L293D bietet zusätzlich noch die Möglichkeit über eine externe Pulsweitenmodulation die Geschwindigkeiten beider Motoren getrennt voneinander zu regeln. Dazu muss die obere Schaltung nur etwas modifiziert werden und zwar so, wie im folgenden Bild zu sehen ist.






Mit der Schaltung 2 kann man beide DC-Motoren getrennt voneinander noch in der Geschwindigkeit regeln, indem man die "Chip Enable" Pins der einzelnen Brücken mit einem externen PWM Signal moduliert. Dazu benötigt man allerdings pro Motor noch ein zusätzliches Bit, ausser man steuert beide Motoren gleichzeitig mit einem PWM Signal an. Dazu muss man einfach Pin 1 und Pin 9 zusammenschalten und dort das externe PWM Signal anlegen. Die Richtungssteuerung der Motoren bleibt die gleiche wie bei der Schaltung 1, also gelten die Werte aus der Tabelle für beide Schaltungen. Über die "Chip Enable" Pins (also Pin 1 und Pin 9) kann man allerdings auch die Motoren unabhängig voneinander von der der Versorgungsspannung getrennt werden... man sieht das der der L293D optimal zum steuern von Elektromotoren mit einem TTL Pegel ist, da er einem ohne irgendwelche externen Bauteile jede nur erdenkliche Steurungsmöglichkeit bietet, ausser eben die oben erwähnte "Stromregelung".

Für die Ansteuerung von Schrittmotoren mit dem L293D kann ich nur diese Seite empfehlen. Die dort gezeigten Schaltungen sind ohne Weiteres mit ein paar kleinen Modifikationen an der Ausgangserweiterung zu betreiben.