PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Motor will über L298 nicht laufen



dasisch
18.11.2007, 21:39
Hallo liebe Roboterianer,

ich bin mal wieder am verzweifeln. Ich hatte vor, über einen L298 einen RB-32-Getriebemotor anzusteuern. Dazu habe ich die Schaltung aus dem Wiki genutzt (https://www.roboternetz.de/wissen/index.php/Bild:Hbrueckel298.gif). Enable Motor 1, Motor 1 Eingang A sowie Eingang B habe ich direkt jeweils an einen Port meines mega32 gehänt. Danach habe ich den AVR so programmiert, dass er den Enable Motor 1 auf High schaltet und den Eingang A ebenfalls. Allerdings tut sich nichts... Ich habe jetzt schon extra einen neuen l298 gekauft, aber leider keine Besserung. Der mega32 funzt auf jeden Fall. Ich verwende für meine Schaltung Dioden des Typs BYV28-200. Kann mir jemand sagen, ob ich etwas falsch mache?

Gruß und vielen Dank im Voraus,
Sven

mare_crisium
19.11.2007, 06:23
Dasisch,

lass' uns mal systematisch vorgehen: Hast Du mit dem Multimeter geprüft, ob die Steuersignale vom AVR am Port und an Eingängen des L298 so erscheinen, wie Du es erwartest?

mare_crisium

dasisch
20.11.2007, 07:28
hi,
also ich habe alle Ein- und Ausgänge am AVR gemessen --> alles wie erwartet.

Beim L298 sieht es allerdings nicht gut aus: Ich habe nur einen Motor angeschlossen, folglich sind die Ports 10, 11, 12, 13, 14 nicht belegt. An Port 5 kann ich eine Spannung von 5V messen. An Port 6 liegen 5 V an. An Port 7 dagegen kommen 1,3V an!? An den Ausgängen für den Motor kommt garnichts an. Versorgungsspannung messe ich auf Seiten der Logic 5 V, auf Seiten des Motors 12,3V.

Kann mir da jemand weiterhelfen?

Gruß,
Sven

mare_crisium
20.11.2007, 16:01
Dasisch,

ok, mit den Daten kann man was anfangen :-) ! Den L298 hast Du richtig angeschlossen; die Pins die Du offen gelassen hast brauchst Du nicht.
Versorgungsspannungen sind auch richtig. Geerdet über Pin 1 hast Du auch?

Wenn Du den Motor an Pins2 und 3 angeschlossen hast, dann dreht er nur, wenn nur einer der Pins 5 und 7 Spannungen führt: Wenn Pin5 = 5V, dann muss Pin7 = 0V ingestellt werden und umgekehrt. Wenn beide dieselbe Spannung bekommen, bekommt der Motor keine Speisepannung.

An welche Pins hast Du den Motor angeschlossen?

Wir kriegen das schon hin!

mare_crisium

Edit_1: Das Datenblatt hier:

http://www.st.com/stonline/products/literature/ds/1773/l298.pdf

kennst Du sicher. Auf Seite 6 ist die Schaltung abgebildet, auf die ich mich beziehe.

dasisch
20.11.2007, 19:43
Hi,

erstmal vielen Dank für deine Hilfe!

Ich habe mich nach dem Schaltplan hier gerichtet: https://www.roboternetz.de/wissen/index.php/Bild:Hbrueckel298.gif
Aber im Grund genommen ist der bis auf beiden Kondensatoren ja auch nicht anders - ich denke, das sollte keinen großen Unterschied machen, oder?

Ich habe per Software nur einen zwei Ports über den AVR auf HIGH geschaltet - zum einen den Port 6 und zum anderen Port 5. Dabei erhalte ich auf Port 7, obwohl er auf LOW geschaltet ist, diese 1,3V.
Der Motor ist über die Pins 2 und 3 angeschlossen. Pin 1 und (weil ich nicht wusste, ob das nen Unterschied macht) mittlerweile auch Pin 15 liegen an GND.

Viele Grüße,
Sven

ManuelB
20.11.2007, 21:22
Hallo,
schon mal mit Pull Down Widerständen versucht?

MfG
Manu

dasisch
20.11.2007, 21:43
Hi,

da muss ich jetzt ehrlich gesagt passen und nachfragen, was du damit meinst. Habe schon gegoogelt, aber verstehe nicht so ganz, was das sein soll und wie ich das realisiere...

Gruß,
Sven

ManuelB
20.11.2007, 22:07
Hallo,
ich meine Widerstände von ca. 10kOhm gegen Ground an den Logikeingängen des L298, so dass ein definierter Pegel an den Eingängen liegt.
Ich weiß nicht genau ob der Atmel oder der L298 Pull-downs intern hat.

Hier z.B. ein Wikipedia Link: http://de.wikipedia.org/wiki/Pullup_Widerstand

Am besten nach pulldown Wiederstand oder pullup Widerstand suchen.

dasisch
20.11.2007, 22:27
Hi,
in der Schaltung im Wiki und in der Schaltung im handbuch steht aber nichts von Widerständen vor dem Logikeingängen. Ich habe bisher immer nur gelesen, dass der L298 direkt an die Ausgänge eines µC angeschlossen werden kann...

Gruß,
Sven

ManuelB
20.11.2007, 22:40
War halt nur so eine Idee, da 1,3V schon bald so nach "fliegendem" Potenzial aussehen. Ich weiß jetzt auch nicht, ob der AVR die Pulldowns intern hat oder ob man die extra aktiviren muss oder ob es so funktionieren sollte.

MfG
Manu

mare_crisium
20.11.2007, 23:27
Dasisch,

ja, die beiden Schaltungen sind vergleichbar. Die Kondensatoren sind für die Funktion der Motoren unbedeutend: Sie sollen nur die Spannungsversorgung vor elektrische Störungen schützen, die vom Motor ausgehen. Auch Pin 15 tut nix zur Sache, solange an Pins 13 und 14 kein Motor hängt.

So, dann gibt's noch die Polung der Begrenzer-Dioden zu beachten. Die wird aber wohl stimmen, weil Du sonst am Pin 4 keine 15V messen könntest. Überprüfen kann aber nicht schaden.

Jetzt testen wir mal den L298 auf Defekte. Dazu trennst Du ihn vom AVR. Dreht der Motor, wenn Du die Pins 5 und 6 mit Drahtverbindungen direkt auf 5V und Pin 7 auf 0V legst? Dreht er andersherum, wenn Du Pin 5 auf 0V und Pin 7 auf 5V?

Dann kommen wir zur Programmierung der Ports des AVR. Ich vertue mich dabei immer wieder gern mit den DDR-, PORT- und PIN-Adressen ;-). Wenn Du (bei abgetrenntem L298) den Output-Port-Pin, der normalerweis mit Pin 7 des L298 verbunden ist, per Software zwischen 0 und 1 hin- und herschaltest - macht er das richtig mit? Schadet nichts, denselben Test auch für die Port-Pins zu machen, die mit Pin 5 und 6 des L298 verbunden sind. Wohlgemerkt: Dafür kein neues Initialisierungsprogramm für die Ports schreiben! Es muss mit dem klappen, das Du nachher auch für die Motorsteuerung einsetzen willst.

Bin mal gespannt, was Du findest!

Ciao,

mare_crisium

ManuelB
21.11.2007, 14:42
Hallo,
hatte noch mal im Datenblatt des Atmel nachgeschaut. Wenn die Pins richtig deklariert sind arbeiten sie in LOW als Senke, sollte also ohne Pulldown gehen.

MfG
Manu

dasisch
21.11.2007, 19:46
Hi mare_crisium,

habe jetzt extra nochmals die Dioden überprüft - meiner Ansicht nach sind die schon richtig herum eingelötet.

Ich habe deine Anweisungen befolgt und den L298 komplett vom AVR abgekoppelt. Danach habe ich Pin 6 und Pin 5 auf 5V gelegt und Pin 7 auf 0V - leider keine Reaktion. Das gleiche passiert, wenn ich Pin 6 und Pin 7 auf 5V lege und Pin 5 auf 0V. Der Motor dreht sich nicht und es ist auch kein bischen Spannung auf Pin 2 und 3 zu messen.

Irgendwie weiß ich nicht mehr weiter...

Viele Grüße,
Sven

mare_crisium
22.11.2007, 15:27
Dasisch,

wenn das so ist, dann nähern wir uns dem Punkt an dem wir den Nachruf auf Deinen L298 schreiben können :-( . - Mich wundert nur, dass Du so gar keine Reaktion von dem Teil bekommst - das ist ungewöhnlich. Normalerweise findet man irgendwo wenigstens ein paar Zehntel Volt.

Hast Du einen niederohmigenWiderstand zur Hand (1 - 20 Ohm)? Den könntest Du zwischen Pin 1 und Erde zu schalten und vielleicht daran einen Spannungsabfall feststellen, wenn Du den Motor einschaltest.

Ach, und versuch' mal, ob der Motor dreht, wenn Du ihn nur an Pin 2 oder 3 anschliesst. Den anderen Motoranschluss musst Du dafür erden. Damit müsste man erkennen können, ob wenigstens eine Halbbrücke noch Lebenszeichen abgibt.

Dann bleibt noch, das andere System (Pins 10,11,13,14 und 15) genauso durchzuprobieren. Wenn dort auch nichts passiert, dann --- requiescat in pacem!

Hast Du schonmal merken können, ob der IC warm wird?

mare_crisium

dasisch
22.11.2007, 18:06
Hi,
also ich werde das jetzt gleich nochmal mit dem Widerstand versuchen. Werd's mal mit 1 Ohm probieren, mal schauen, was ich messen kann. Ansonsten hab ich eben extra nochmal den anderen IC ausprobiert, aber der tuts auch nicht.

Warm wird der IC auf keinen Fall. Ich hab mir für den zweiten sogar extra einen Sockel gebastelt, damit der von Anfang an nie heiß wird (kann ja auch beim Löten passieren).

Welche Alternative gibt es denn zu dem L298? Kann ich das Ganze vielleicht auch einfach über zwei Transistoren lösen, dass ich einen Motor an/ausschalten kann und in zwei Richtungen drehen kann? Und wenn ja, was muss ich da für welche nehmen!?

Viele Grüße,
Sven

ManuelB
22.11.2007, 18:13
Ist es möglich ein Bild vom Aufbau zu sehen (am besten Bestückungs und Lötseite)?
Eigendlich sind die Brückentreiber ja recht gängig, somit ist es etwas merkwürdig das zwei nicht funktionieren.

MfG
Manu

dasisch
22.11.2007, 18:19
hm, ich denke, auf den fotos würde man nicht viel erkennen. ich kann das aber mal zeichnen (mit verschiedenen farben), wie ich das aufgebaut habe. dauert allerdings nen moment. vorher mess ich noch den strom an dem widerstand :)

dasisch
22.11.2007, 19:56
so, ich habs versucht zu zeichnen, und zwar so, wie ich es auf meiner Lochrasterplatine aufgebaut habe. hoffe, ich habe nichts vergessen...

Habe ich irgendwas falsch gemacht?

EDIT: Ich bekomme keine Spannung am Widerstand von 1 Ohm (wohlbemerkt bei beiden ICs!)

Gruß,
Sven

ManuelB
22.11.2007, 21:25
Hm so auf den ersten Blick ist nichts zu erkennen. Wenn es genau so aufgebaut ist und das IC heile sollte der schon funktionieren. Keine Kurzschlüsse vergessenen Verbindungen oder ähnliches in Sicht?
Ansonsten bin ich nun ziemlich ratlos :?

MfG
Manu

dasisch
22.11.2007, 21:30
joa, ist genauso aufgebaut. ich glaub, ich verklag conrad. die ham mir wahrscheinlich zwei defekte ICs angeboten. Wieso sollte ich denn ausgerechnet 2 ICs kaputt kriegen. Das wäre ja schon oberst dämlich... Abgesehen davon, dass mir noch nie ein IC kaputt gegangen ist...

Naja, ich überleg jetzt ernsthaft, ob ich mir noch einen kaufe. Weil wenn der dann auch noch kaputt geht, dann raste ich aus. Immerhin beruhigend, dass meine Schaltung schonmal stimmt ;-)

Vielen Dank für deine Hilfe!

Wenn noch jemand etwas weiss - nur her damit! Ich bin dankbar für jede Antwort!

Viele Grüße,
Sven

mare_crisium
23.11.2007, 06:24
Dasisch,

es geht mir jetzt, besonders nachdem ich an Deiner Schaltungsskizze auch nix Schlimmes sehen konnte, wie Manu: Bin ratlos. -

Aber wie gesagt, das Verhalten des Teils ist ungewöhnlich. So mausetot ist ein IC selten! Zumal auch der andere, den Du schon probiert hast. - Also, als letzten verzweifelten Versuch, nimm' doch mal die Dioden raus und probier's dann mal. Es ist unwahrscheinlich, dass das die Lösung ist, aber Du solltest es wenigstens probiert haben.

mare_crisium

dasisch
23.11.2007, 09:40
okay, werd ich mal probieren

dasisch
23.11.2007, 19:08
hab es ausprobiert, indem ich die Dioden ausgebaut habe und stattdessen Brücken eingebaut habe - kein Erfolg. Ich kauf jetzt noch einen letzten von diesen ICs, wenn's danach nicht klappt, weiß ich echt nicht, was ich noch machen soll...

ManuelB
23.11.2007, 20:00
Brücken dürfen als Ersatz für die Dioden nicht rein, dass wäre ja ein Kurzschluss der Versorgungsspannung.

MfG
Manu

mare_crisium
24.11.2007, 19:20
Dasisch,

wie Manu schon sagt: Wenn Du statt der Dioden wirklich Brücken eingebaut hast, dann hätte es einen Donnerschlag von einem Kurzschluss geben müssen. Wenn das nicht passiert ist, dann stimmt was mit Deiner Spannungsversorgung für den Motor nicht! Das könnte dann auch die Ursache Deiner bisherigen Schwierigkeiten sein...

mare_crisium

dasisch
24.11.2007, 20:34
Hi,

also ich habe jetzt noch zwei von diesen L298 gekauft - und es funktioniert immer noch nicht. Habe die Schaltung sogar mittlerweile komplett neu aufgebaut und die High/Low Signale nicht über den µC sondern über 0 bzw. 5V Batteriespannung geschaltet - leider kein Erfolg.

Vielleicht noch zwei Dinge, an denen ich momentan etwas kaue:

1.) Wenn ich die High/Low-Signale über den µC laufen lasse, dann erhalte ich (Pin 7 und Pin 6 sind auf High, Pin 5 auf Low) auf Pin 7, wenn er auf Low geschaltet ist, nicht 0V, sondern 1V. Sollte ja eigentlich nichts ausmachen, aber wenn die Schaltung mit dem L298 abgeklemmt ist, dann schaltet er bei Low auf 0V.

2.) Zu der angesprochenen Spannungsversorgung: Ich nutze zum Experimentieren ein ausgedientes 250W ATX-Netzteil und greife dort 12V stabilisierte Spannung ab. Um 5V stabilisiert zu bekommen, nutze ich die Schaltung aus dem Wiki (https://roboternetz.de/wissen/index.php/AVR-Einstieg_leicht_gemacht#Spannung_stabilisieren). Als Elko nutze ich einen mit 470µF. Reicht das oder muss ich da einen größeren wählen?

Die stabilisierten 12V greife ich dann direkt am Elko ab und leite sie an die Schaltung weiter; die 5V für die Logik greife ich hinter dem Spannungsregler ab (dort, wo auch die Versorgungsspannung für den Mikrocontroller in der Beispielschaltung aus dem Wiki abgegriffen wird).

Einen Kurzschluss konnte ich übrigens nicht feststellen, wie hätte der sich bemerktbar machen müssen?

Viele Grüße und vielen, vielen Dank an euch!
Sven

ManuelB
24.11.2007, 20:53
Hallo,

sind die 12V wirklich an der Schaltung vorhanden? (nachmessen)
Auch mal nachmessen im Schaltmoment, ob die Spannung beim Einschalten der Brücke mit Motor daran zusammenbricht.
Wenn es sich um ein PC Netzteil handelt wird bei einem Kurzschluss wohl nichts bzw. nicht viel passieren, da diese die Spannung abregeln bei Überlast (sollte jedenfalls so sein). Dem L298 sollte auch nichts passieren dabei.
Also ich bin mir, wenn die anderen auch nicht gehen, fast sicher das irgendwas am Schaltungsaufbau oder der Spannungsversorgung nicht stimmt. Läuft der Motor direkt an den 12V, nicht das das Netzteil abregeln oder ähnliches.

MfG
Manu

dasisch
24.11.2007, 21:03
Hi,

die 12 V sind direkt an der Schaltung vorhanden und auch im Schaltmoment absolut stabil.

Was genau meinst du mit "läuft der Motor direkt an den 12V"? Also ich habe den Motor an den 12V getestet - da funktioniert er einwandfrei. Nur über die Schaltung nicht. Ich habe nur das dumpfe Gefühl, dass das nicht das ist, was die Frage beantwortet... ;)

Gruß,
Sven

ManuelB
24.11.2007, 21:19
Doch das ist schon richtig mit der Antwort.
Ich finde die Nichtfunktion eines weit verbreiteten Bausteins nur sehr merkwürdig. Besonders unter dem Gesichtspunkt, dass Du nun schon vier Stück getestet hast. Es ist halt leider manchmal sehr schwierig Ferndiagnosen anzustellen wenn man nicht alles genau prüfen kann.
Meine Ratlosigkeit wächst ?

MfG
Manu

Achso wegen der Frage mit dem Motor direkt an den 12V:
Schaltnetzteile sind relativ empfindlich was Strom- bzw. Leistungspitzen angeht. Wird die max. mögliche Leistung überschritten regeln sie die Spannung runter was unter Umständen zu unerwünschten Nebeneffekten führten kann, zumal Elektromotoren im Einschaltmoment eine hohe Stromaufnahme haben/habe können (ein vielfaches des Nennstromes ist möglich)

dasisch
24.11.2007, 21:53
aber nochmal zu der schaltung, die ich online gestellt hatte. wäre das denn die richtige umsetzung oder ist da nicht vielleicht odch irgendetwas falsch? weil wenn, dann scheint der fehler ja wohl doch bei der schaltung zu liegen...

mich irritieren halt auch die 1V, die ich erhalte, wenn Pin 7 auf Low geschaltet ist. Wie gesagt, wenn ich den L298 entferne, dann liegen da auf Low auch 0V an...

Zu dem Motor: das Netzteil liefert 2A, ich denke, die sollten für einen RB35 reichen ;-)

Gruß,
Sven

robocat
24.11.2007, 22:18
wenn ich meinen l298 hier angucke und mit deiner zeichnung vergleiche, dann ist pin1 bei mir dort, wo bei dir pin 15 ist. oder ist das von unten gezeichnet? irgendwo muss der fehler doch stecken.
https://www.roboternetz.de/phpBB2/download.php?id=12084

gruesse

dasisch
24.11.2007, 22:22
nee, das ist von oben gezeichnet. soll das heißen, dass ich den falsch herum montiert habe!?

EDIT: Du hast recht... oh mein gott... hoffentlich funzts anders rum noch... werde mich melden, sobald ich neues weiß

dasisch
24.11.2007, 22:50
jaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaa! ES LÄUFT!!!!!!!!!!!!!!!

du bist mein retter... vielen, vielen dank... nun kann ich endlich weiter an meiner arbeit bauen/schreiben.

Vielen lieben Dank nochmal an alle, die mir versucht haben zu helfen... Ich glaub, dank eurer Hilfe bin ich nun L298-Fachmann ;-)

Wie konnte ich nur so dumm sein und das Datenblatt falsch herum lesen...

Viele Grüße,
Sven

ManuelB
25.11.2007, 10:47
Oh man ich glaube ich brauche ein Brille!
Wieder ein Punkt wo man doch mal etwas näher hinsehen sollte.
Na denn frohes basteln!

MfG
Manu

dasisch
25.11.2007, 10:55
dankeschön :)

Gruß,
Sven

mare_crisium
25.11.2007, 21:52
@robocat,

Du bist der oder die Grösste :-)!!

mare_crisium