Forum: Mikrocontroller und Digitale Elektronik Problem Motor resettet Atmega64


von Carsten M. (carsten_m)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche über eine H-Brücke(L 6202) einen kleinen Motor vorwärts und 
rückwärts laufen zu lassen, gesteuert wird die H-Brücke über einen 
Atmega64. Den Schaltplan von der H-brücke ist im Anhang
Das Testprogramm lässt den Motor alle 3 Sekunden die Richtung wechseln, 
das mit dem Richtungswechsel funktioniert auch, das Problem ist nur das 
der Motor immer wieder den atmega resettet, also er dreht drei Sekunden 
in die eine Richtung und dann nur zwei in die andere weil dann der reset 
kommt, das wiederholt sich sehr unregelmäßig, ich denke mal, dass die 
Versorgungsspannung komplett zusammenbricht.

Wenn ich den Motor entferne und die Schaltung nur so laufen lasse dann 
schaltet die H-brücke an den Ausgängen sauber um und es kommt auch nicht 
zu einem Neustart des Atmega.

Der Motor braucht nach meiner Messung bei 12v 400mA und das Netzteil das 
sowohl den Motor als auch den Atmega versorgt ist für 2,25A 
ausgelegt.Der Atmega wird mit 5v versorgt über die 
Spannungsversorgungschaltung aus dem AVR-Tut.

Wie kann das sein, dass der Motor den Atmega immer wieder Neustarten 
lässt, das Netzteil müsste doch ausreichend Strom liefern.

Für Lösungsvorschläge und Tipps bin ich sehr dankbar.

Gruß
Carsten

von oszi40 (Gast)


Lesenswert?

Zum Test würde ich den Motor mal aus einem anderen Netzteil versorgen.
Wahrscheinlich wirken induktive Spitzen oder der "Generator" beim 
Umschalten auf Deine Speisespannung?

von Falk B. (falk)


Lesenswert?

@ Carsten M. (carsten_m)

>Atmega64. Den Schaltplan von der H-brücke ist im Anhang

Sieht OK aus, wenn gleich C9 etwas größer sein darf, so 1000uF klingt 
OK.

>der Motor immer wieder den atmega resettet, also er dreht drei Sekunden
>in die eine Richtung und dann nur zwei in die andere weil dann der reset
>kommt,

Also 2 Sekunden nach dem Richtungswechsel.

> das wiederholt sich sehr unregelmäßig, ich denke mal, dass die
>Versorgungsspannung komplett zusammenbricht.

Denke? Du glaubst. Besser ist es aber zu WISSEN! Das erreicht man durch 
MESSEN. In diesem Fall mit einem Oszilloskop.

>Wenn ich den Motor entferne und die Schaltung nur so laufen lasse dann
>schaltet die H-brücke an den Ausgängen sauber um und es kommt auch nicht
>zu einem Neustart des Atmega.

>Der Motor braucht nach meiner Messung bei 12v 400mA

Wenn er läuft. Aber nicht beim Loslaufen oder umpolen. Da genemigt sich 
so ein Motor gern mal SEHR viel Strom, so Fakor 10 ist da locker drin.

>ausgelegt.Der Atmega wird mit 5v versorgt über die
>Spannungsversorgungschaltung aus dem AVR-Tut.

Und wo ist die angeklemmt? Am gleichen Netzteil?

>Wie kann das sein, dass der Motor den Atmega immer wieder Neustarten
>lässt, das Netzteil müsste doch ausreichend Strom liefern.

Oder auch nicht.

>Für Lösungsvorschläge und Tipps bin ich sehr dankbar.

1.) C9 auf 1000uF erhöhen.
2.) Test: Motor 5s laufen lassen, 5s Pause, 5s andere Richtung, 5s Pause

MFG
Falk

von Dietrich L. (dietrichl)


Lesenswert?

Carsten M. schrieb:
> Für Lösungsvorschläge und Tipps bin ich sehr dankbar.

Dazu ist auch die Schaltung des ATmega-Teils interessant und 
(wichtiger): Aufbau, Layout, Verdrahtung (hier besonders die GNDs).

Gruß Dietrich

von Carsten M. (carsten_m)


Lesenswert?

Hallo

erstmals vielen dank für die Antworten.

Ich habe mir gerade mein Atmega64 auf der Platine zerschossen, so das 
ich erst auf einen neuen warten muss um weiter zu testen :(
C9 werde ich erhöhen und dann mal den Test mit den 5 Sekunden laufen 
lassen. Ein Oszilloskop habe ich leider nicht, kann daher nicht messen 
ob die Versorgungsspannung wirklich zusammen bricht. Ich lasse mir aber 
über den UART jede Sekunde ab Start ausgeben und da sehe ich halt immer 
wenn der ATmega neu startet und neu anfängt zu zählen. Eine 
Regelmäßigkeit ist dabei nicht zu erkennen.

Da der Atmega vom selben Netzteilbetrieben wird, dachte ich mir dann das 
wahrscheinlich die Versorgungsspannung zusammenbricht.

Gibt es einen Möglichkeit diese induktiven Spitzen oder die Stromspitzen 
abzufangen oder sollte ich mir einen anderen Motor zulegen?

Gruß
Carsten

von Falk B. (falk)


Lesenswert?

@ Carsten M. (carsten_m)

>Gibt es einen Möglichkeit diese induktiven Spitzen oder die Stromspitzen
>abzufangen

Die "induktiven Spitzen" hat jeder Motor, die werden hier von den 
Freilaufdioden in der H-Brücke abgefangen, zusammen mit C9.
Die Stromspitzen bei Anfahren kann man mit einem Stromregler abfangen. 
Dazu schaltet man einen Shunt an den Pin Sense wie im Datenblatt und 
nutzt einen Steuer-IC wie L297.

>oder sollte ich mir einen anderen Motor zulegen?

Nö.

von Carsten M. (carsten_m)


Lesenswert?

Gut, da die Platine jetzt schon fertig ist kann ich einen anderen Steuer 
IC nicht mehr nehmen, also werde ich es mal mit einem Shunt versuchen, 
in der Hoffnung das das ausreicht.

Wie genau sieht dieser Shunt aus, ist das einfach nur ein Widerstand? 
Wenn ja wie groß sollte der sein, möglichst klein?

Ich habe auch noch in anderen Schaltungen gesehen, dass noch zusätzliche 
Dioden an die Ausgänge gegen Masse gesetzt wurden, würde das für mein 
Problem etwas bringen?

Gruß
Carsten

von Wieland (Gast)


Lesenswert?

Mit nicht-deterministischen Verhalten von MCUs und Schaltungen verhält 
es sich so, dass es in aller Regel die Stromversorgung ist. Ist es mal 
nicht die Stromversorgung, ist es die Stromversorgung.

Ein möglicher Quick fix wäre mehr Kapazität vor und nach dem 
Spannungsregler deiner MCU.

von Falk B. (falk)


Lesenswert?

@ Carsten M. (carsten_m)

>Gut, da die Platine jetzt schon fertig ist kann ich einen anderen Steuer
>IC nicht mehr nehmen, also werde ich es mal mit einem Shunt versuchen,
>in der Hoffnung das das ausreicht.

Die Hoffung stirbt zuletzt. ;-)
Was soll denn der Shunt allein bewirken? NICHTS!

>Wie genau sieht dieser Shunt aus, ist das einfach nur ein Widerstand?

Ja.

>Wenn ja wie groß sollte der sein, möglichst klein?

Dass bei maximalem Strom so 0,1-0,5V abfallen.

>Ich habe auch noch in anderen Schaltungen gesehen, dass noch zusätzliche
>Dioden an die Ausgänge gegen Masse gesetzt wurden, würde das für mein
>Problem etwas bringen?

Nein.

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
Noch kein Account? Hier anmelden.