PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Schrittmotor: ungewollte Richtungswechsel



marcsen
29.08.2008, 13:43
Hallo allerseits,

ich habe ein Problem mit meiner auf der bekannten L297/L298 basierenden Schrittmotorsteuerung. Der Motor neigt bei mir dazu, völlig willkürlich mal im, mal gegen den Uhrzeigersinn zu drehen, obwohl dieselbe Richtung über den L297 vorgegeben wird. Dieses Problem tritt zum einen beim Start des Motors aus der Ruhe auf, zum andren teilweise auch während des Betriebs. Der Motor dreht... und schwups plötzlich ändert er die Drehrichtung. Meist tritt dies auf, wenn ich den Motor plötzlich belaste. Beim Start kann ich den Motor in die richtige Richtung zwingen, indem ich den Motor zu Beginn sehr langsam drehen lasse und dann die Schrittfrequenz erhöhe. Allerdings macht er bei langsamer Startdrehzahl teilweise zunächst einen kleinen Satz in die falsche Richtung.
Nun noch ein paar Worte zur verwendeten Schaltung: Als Treiber habe ich eine L297/L298 Schaltung benutzt, wie sie zb im Datenblatt des L297 dargestellt ist (siehe auch Anhang). Schrittmotor ist dieser: dieser (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=69&products_id=172) . Als Versorgungsspannung habe ich mit Einstellungen zw 12V und 24V experimentiert. Gesteuert wird das ganze von einem Atmega 8 der den Takt generiert die Drehrichtung einstellt usw. Den Atmega wiederum spreche ich per I2C an. Außerdem lasse ich das ganze im Halbschrittmodus laufen.
Um euch ein paar Ansatzpunkte für die Fehlersuche zu liefern habe ich mit einem Oszi mal gemessen, was sich an den Ausgängen des L298 tut. Screenshots davon im Anhang. Im einzelnen sieht man dort:

Spule1.bmp
- Kanal 1 (gelb): Output 4 L298
- Kanal 2 (türkis): Output 3 L298

Spule2.bmp
- Kanal 1: Output 1
- Kanal 2: Output 2

Dann habe ich noch den Spannungsabfall an den sense Widerständen gemessen. Komisch ist dort, das sich nur an Sense B was tut.

Sense.bmp
- Kanal 1: Sense B
- Kanal 2: Sense A

Auch die Aufnahmen der beiden Motorspulen kommen mir irgendwie komisch vor. Die Platine habe ich als Fehlerquelle schon fast ausgeschlossen. Habe alle Verbindungen mindestens 5 mal gemessen...

Schöne grüße
Marc

markusj
29.08.2008, 15:38
Hast du Reset auf High gezogen?
Welche Dioden hast du verbaut?
Stimmt der Anschluss des Motors an die Platine?
Läuft der Motor, wenn er Mal läuft, "rund" oder macht er auffällig laute Geräusche?

mfG
Markus

marcsen
29.08.2008, 16:25
Reset ist auf High.
Als Dioden habe ich Schottky Dioden verwendet. Genauer gesagt SB140 (http://www.datasheetcatalog.net/de/datasheets_pdf/S/B/1/4/SB140.shtml) Dioden.
Die Anschlüsse auf der Platine sollten stimmen, hab die Spulen gemäß Datenblatt angeschlossen. (Werde aber mal spasseshalber die Anschlüsse vertauschen).
Der Motor läuft relativ rund, wenn auch nicht gerade vibrationsfrei. Vor allem im unteren Frequenzbereich, in dem ich ihn starte (Clock an L297 bei ca. 1200 Hz) rumort er ziemlich, so ab 1600 Hz läuft er ziemlich Vibrationsfrei. Unter 1200 Hz tut sich außer rütteln gar nix.
Ach ja, je nach dem, ob der Motor "falsch" oder richtig herum dreht ist das Motorgeräusch leicht verschieden.

Manf
29.08.2008, 18:06
Wenn Du dann die Spulen an den Treibern vertauschst und wieder nur in der gleichen Spule Strom fließt (und im anderen Treiber) dann wird wohl eine Spule unterbrochen sein.

Besserwessi
29.08.2008, 20:32
Nach den Oszilloskopbildern kriegt nur eine Spule Strom. An Curent Sense B fließt paraktisch kein Strom. Eventuell man die Spulen mit dem Multimeter nachmessen.