PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Motorstrom messen



Surveyor
22.06.2007, 12:48
Hi,

Ich möchte mit einem ATMEGA8 einen Motor ansteuern und auch gleichzeitig messen wie hoch die Stromaufname ist. Da hatte ich mir überlegt einen kleinen Wiederstand zwischen die Brückenschaltung und Masse zu legen und dann die Spannung zu messen. Somit würde ich mich auch nicht um das Problem kümmern müssen, das der Motor in beide Richtungen dreht und somit ja am Motor direkt je nach Drehrichtung auch einen negative Spannung anliegen kann. Aufgrund der kompaken Bauweise wollte ich den Motortreiber L293 verwenden, allerdings kann ich da das beschriebene Prinzip nicht anwenden.

Meine Idee ist jetzt den Widerstand in Reihe mit dem Motor zu legen und dann mit einem Differenzverstärker (OpAmp) die Spannung zu messen, allerdings hab ich nun das Problem, das ich dann ja auch eine Negativespannung haben kann, was für den OP zunächst nicht das Problem ist, aber am AD-Wandler. Ich könnte nun die Spannung anheben, aber dann würde ich ja die hälfte der Aufösung am AD-Wandler verschenken.

Hat jemand eine Idee, wie ich sinnvoll den Motorstrom messen kann?

zumgwadrad
22.06.2007, 13:02
Hi,
such mal bei Reichelt nach Shunt. Musst halt den Wiederstand möglichst klein wählen das Wenig Spannung abfällt. Denn die Spannung die du bei der Shuntmessung nutzt fehlt dir am Motor, d.h. er dreht langsamer!
Hab hier einen Shunt da fallen bei 40A 150mV ab, also 3,75mOhm. Und die 150mV fallen bei 420V Nennspannung nicht wirklich ins Gewicht!!
D.h. du solltesz in etwa auf 50mV maximal Dimensionieren!
Ach ja der Shunt muss dann in Reihe!

recycle
22.06.2007, 13:15
Hat jemand eine Idee, wie ich sinnvoll den Motorstrom messen kann?

Nicht wirklich. Ein L293D ist einiges kompakter als ein L298 mit 4 Freilaufdioden.
Eine Idee hätte ich erst, wenn der Schaltungsaufwand für die Messung der Motorströme mit L293D so hoch wird, dass sich dieses Verhältnis dreht.
Wie die dann lautet kannst du dir sicher denken ;-)

recycle
22.06.2007, 13:24
@zumgwadrad

ob man das Ding als Shunt oder als Widerstand bezeichnet, hat leider keinen Einfluss darauf in welche Richtung die Spannung dran abfällt ;-)

Surveyor
22.06.2007, 17:54
Also wie das mit dem Shunt geht weiß ich und auch das dann die Spannung geringer ist, das kann ich in diesem Fall gut kompensieren bzw. ist nicht wichtig.

Ich meine auch eher das ein 293 besser ist als 4 Transistoren + Beschaltung um eine komplette Brücke zu bauen (vom Platzbedarf).

Also das einzige was ich mir Zur Zeit vorstellen kann ist: L293 zum treiben des Motors in Reihe mit Shunt/Widerstand. Am Widerstand ein Differenzverstärker und dahinter ein Gleichrichter um immer z.B. 0..5 Volt am AD-Wandler zu haben.
Dabei stört mich aber, das die Dioden ja immer erst bei ~0,6 V Schalten, d.h. ich habe im unteren Bereich kein genaues Ergebnis.
Das ist mein Hauptproblem.

Surveyor
22.06.2007, 18:06
Nachdem ich gerade noch mal drüber nachgedacht hab, ist wohl der Aufwand L293 + OpAmp + Gleichrichter + symmetrische Betriebsspannung höher, als eine Brückenschaltung mit Shunt zwischen Brücke und Masse. Notfalls muss ich die Brücke in SMD realisieren.

Falls jemanden noch was besseres Einfällt bin ich aber weiterhin interessiert =).

Edit: Ups .. Denkfehler, den OpAmp brauch ich ja auf jeden Falls als Messverstärker. Naja aber mit der zweiten Lösung kann ich auf eine symmtrische Betriebsspannung verzichten.

Hubert.G
22.06.2007, 18:09
Warum nimmst du nicht einen L293E, da sind die Anschlüsse für den Shunt schon vorgesehen und negative Spannungen gibts da auch nicht.

Hubert

recycle
22.06.2007, 18:28
Warum nimmst du nicht einen L293E, da sind die Anschlüsse für den Shunt schon vorgesehen und negative Spannungen gibts da auch nicht.


Stimmt, der ist noch kompakter als ein L298.

Surveyor
23.06.2007, 07:23
Wenn ich die Dokumentation vom L293E richtig verstanden habe, dann lege ich die Sens Ausgänge zusammen mit einem Widerstand an Masse und an dem Widerstand kann ich dann eine Spannung messen, die im Verhältnis zum Strom steht, oder?

Jakob L.
23.06.2007, 07:48
Hallo,

theoretisch könnte man eventuell auch bei einem normalen L293D einen (kleinen) Widerstand zwichen die GND Anschlüsse des Chips und die Schaltungsmasse schalten. Das Problem dabei ist, dass die Spannung an den Logikeingängen, die der L293 "sieht", um den Spannungsabfall am Widerstand reduziert wird. Wenn der Spannungsabfall (im ungünstigsten Fall) grösser als 0.3 Volt werden kann, dann muss man noch einen Widerstand in Serie zu den Eingangssignalen schalten, damit die interne Schutzdiode des L293 ( siehe "schematics of inputs and outputs" im Datenblatt) und der Ausgang des µC nicht überlastet werden.

Auf diese Weise kann man natürlich nur den Gesamtstrom durch den L293 und nicht den Strom durch einen einzelnen Motor bestimmen, wenn an dem L293 zwei Motoren angeschlossen werden.

Gruss
Jakob

Surveyor
24.06.2007, 10:05
Ja und das will ich ja nicht. Ich werde den L293E nehmen das ist ne gute Lösung =).

MoeJoeHH
24.06.2007, 11:12
Der ADC MCP3204 bzw MCP3208 kann 2 bzw. 4 differentielle Spannungen wandeln, d.h. auch negative, wenn ich das richtig verstehe. Die kann man sich (sofern man eine eMail-Addresse einer Uni oder so hat) bei http://sample.microchip.com als kostenlose Samples bestellen. Im drop-down Menü Analog/Input Devices auswählen und dann die entsprechende Device-Family nehmen.

Aus eigener Erfahreung kann ich sagen: Klappt anstandslos, zwei Wochen später sind die Dinger da.

Moe

Hubert.G
24.06.2007, 11:13
Wenn der Strom passt ist der L293E sicher eine gute Lösung. Ich habe damit eine Rollo-Steuerung realisiert. Über die Shunt mache ich die Endabschaltung.

Hubert

Surveyor
05.07.2007, 13:11
1A reicht mir, allerdings sehe ich gerade, das die "E" Variante keine internen Dioden hat. Welche nehme ich da am besten?

malthy
05.07.2007, 13:24
Moin!

Es gibt übrigens auch Stromsensor-ICs, die eine dem Betrag des Stromes (also vorzeichenfreie) proportionale Spannung liefern, das Vorzeichen wird durch einen separaten Pin signalisiert. Der MAX472 ist so'n Ding. Den gibt's auch bei Reichelt, ist aber glaube ich ein Auslaufmodell.

Gruß,
malte

Hubert.G
05.07.2007, 13:44
Ich habe BYT54 genommen, die hatte ich gerade da. Sonst sollte jede schnelle Diode gehen die etwa 1A kann.

Hubert

Surveyor
05.07.2007, 15:13
Die BYT 54 hab ich bei Reichelt gerade nicht gefunden.

Ich hab hier noch BYV 27/200, die hab ich bisher immer für den L298 genommen, ich denk mal die sollten auch gehen, oder?

Hubert.G
05.07.2007, 16:22
Ja, sollte laut Datenblatt gehen.
Hubert

Robotronix
05.07.2007, 17:42
wenn es klein bauen soll :
BA6845 von ROHM (auch bei Reichelt)
hat allerdings nur 0,8W max.Verlustleistung und 12V / 1A

recycle
05.07.2007, 20:39
Ich möchte bei meinem L298 den Strom irgenwann mal überwachen, bis dahin aber erst mal nur pro Motor eine Sicherung reinhängen.

Da der Sicherung die Stromrichtung wurscht ist, könnte ich die natürlich einfach in die Zuleitungen für den Motor hängen.
Ich würde sie aber lieber in Reihe mit den Sense-Widerständen schalten.
Geht das oder geht der Motortreiber dann erst recht in Rauch auf, wenn die Sicherungen durchhauen?

So wie ich das Datenblatt verstehe, müsste ja der gesamte Strom für einen Motor über den jeweiligen Sense-Ausgang fliessen.

Damit wäre ich dann auch gleich bei der nächsten Frage.
Im Datenbaltt steht als maximaler Spannungsabfall für die Sense-Widerstände 2V.
Ich gehe mal davon aus ich muss die Sense-Widerstände so auslegen, dass hier nicht mehr als 2V abfallen können, weil der L298 bei höherem Spannungsabfall nicht mehr richtig funktioniert.
Oder sollte es egal sein welchen Widerstand ich das reinhänge und es fallen nie mehr als 2 V ab? (letzteres wohl eher nicht).

Wenn ich eine Sicherung an den Sense-Pin hänge und die brennt durch, fällt die maximale Spannung ab. In dem Fall wäre aber egal, bzw. irgendwie sogar erwünscht, dass der L298 nicht mehr richtig funktioniert, solange er keine bleibenden Schäden abkriegt.

Ich habe mir neulich die Finger an meinem L298 verbrannt. Über die Brandblase komme ich ja weg, aber dass ich jetzt eine neue Schaltung blöten muss stört mich doch etwas. Deswegen würde ich nächstes mal lieber nur eine Sicherung austauschen.
Den Strom mit dem C überwachen und abschalten ist zwar eleganter, bei meinen Programmierkünsten aber für die Experimentierphase zu unzuverlässig ;-)

Yossarian
05.07.2007, 21:21
Hallo
Wenn die Sicherung durchbrennt, fließt kein Strom mehr, also kann auch keine Spannung abfallen.
Ein Kurzschlußschutz für den 298 ist die Sicherung aber nicht, da der 298 schon lange hinüber ist, bevor die Sicherung kommt.
Da fungiert der 298 eher als Schutz für die Sicherung.

Mit freundlichen Grüßen
Benno

recycle
06.07.2007, 09:47
Wenn die Sicherung durchbrennt, fließt kein Strom mehr, also kann auch keine Spannung abfallen.

Sorry, aber wenn du da keine plausible Begründung für liefern kannst, gehe ich eher vom Gegenteil aus. Wenn die Sicherung rausfliegt geht der Widerstand gegen unendlich, dahe rwürde ich hier eigentlich davon ausgehen, dass die maximale Spannung abfällt.
Natürlich nicht am Sense-Widerstand sondern am Sense-Eingang, aber der dürfte den L298 auch mehr intersssieren als der Widerstand.



Ein Kurzschlußschutz für den 298 ist die Sicherung aber nicht, da der 298 schon lange hinüber ist, bevor die Sicherung kommt.

Warum? Weil du davon ausgehst, dass ich die Sicherung falsch dimensioniere oder gibt es da auch irgendeinen elektronischen Zwang, dass der L298 eher durchbrennt?

zumgwadrad
06.07.2007, 10:02
Hi,
richtig wenn die Sicherung durchbrennt geht der Widerstand gegen Unendlich und es entsteht ein so genannter Leerlauf!
Im Leerlauf findet kein Stromfluss statt, und deine Spannung geht auch nicht über deine Versorgungsspannung drüber, also bei 5V und einem angenommenen Widerstand von 22MOhm für deine gebrannte Sicherung ergibt sich ein Stromfluss von 0,22µA also eigentlich Null, da der Widerstand wahrscheinlich auch noch höher ist!
Warum jetzt aber der IC vor der Sicherung abdampfen soll kann ich auch nicht so nachvollziehen!
Viel Spass no

kalledom
06.07.2007, 11:57
Es ist schon richtig, daß eine Sicherung keinen Halbleiter schützen kann.
Wenn eine Sicherung hinüber ist, ist auch der Halbleiter hinüber, denn eine Sicherung löst bei zu hohem Stromfluß aus und der entsteht bei defektem Halbleiter, sofern nicht jemand einen Kurzschluß verursacht. Aber auch dann ist der Halbleiter schneller hinüber als die Sicherung.
Die Sicherung schützt vor Folgeschäden, damit z.B. das Netzteil nicht auch noch abfackelt.
Es kommt schon mal vor, daß eine Sicherung wegen Altersschwäche bei einem Stromstoß den Geist aufgibt; das ist dann ein 'Glücksfall'.
Normalerweise ist bei einer defekten Sicherung immer ein Halbleiter hinüber.

Bei defekter Sicherung liegt dort die volle Betriebsspannung an. In diesem Fall, wo die Sicherung an GND ist, kommt der Plus über den Baustein, egal, ob der heile oder hinüber ist.
Liegt die Sicherung in der Plus-Leitung, kommt der GND über das Bauteil.
Da ist nix mit Widerstand und Spannungs-Abfall berechnen; die Spannung liegt da einfach so an :-)

zumgwadrad
06.07.2007, 12:20
Hi,
des Rechenbeispiel war eher für den Leerlauf allg. gedacht, um zu verstehen warum da kein Strom fließt, analog kann man das für Kurzschluß und keine Spannung verwenden!

Yossarian
06.07.2007, 13:18
Hallo
Siehe Bild... (abgesehen davon, daß mir eine Sicherung an der Stelle nicht behagen würde)
Besser wäre es, die Sicherung auf der Plusseite zu plazieren (neu: platzieren, brrrr) , weil sie dann auch fliegt , wenn ein Kurzschluß vom Ausgang nach Masse passiert. Der 298 wird zwar nicht geschützt, aber z.B. das Netzteil.

Mit freundlichen Grüßen
Benno

recycle
06.07.2007, 14:51
@Kalledom,


Es ist schon richtig, daß eine Sicherung keinen Halbleiter schützen kann.
Wenn eine Sicherung hinüber ist, ist auch der Halbleiter hinüber, denn eine Sicherung löst bei zu hohem Stromfluß aus und der entsteht bei defektem Halbleiter, sofern nicht jemand einen Kurzschluß verursacht.

Sorry, aber das geht voll an der Frage vorbei.
Die Sicherung soll doch gar nicht vor einem Kurzschluss oder einem defekt in der Schaltung schützen, sondern nur vor einem zu hohen Motorstrom.
Die Sicherung darf deutlich unter dem Strom durchgehen dem Strom abschalten den der Motortreiber maximal verträgt.
Vor einem Fehler/Kurzschluss in der Schaltung soll sie gar nicht schützen. Um den Akku vor defekten in der Schaltung zu schützen kommt eine Sicherung hinter den Akku.

recycle
06.07.2007, 15:24
Hallo
Siehe Bild... (abgesehen davon, daß mir eine Sicherung an der Stelle nicht behagen würde)
Besser wäre es, die Sicherung auf der Plusseite zu plazieren

Der L298 hat aber nur einen Eingang für die Versorgungsspannung, d.h. eine Sicherung am Eingang müsste doppelt soviel abkönnen wie ein einzelner Treiberkanal.
Als Schutz vor zu hohem Motorstrom erscheint mir das ziemlich sinnfrei.


(neu: platzieren, brrrr)
nö, noch liegen die Bauteile neben der Lochrasterplatine ;-)



weil sie dann auch fliegt , wenn ein Kurzschluß vom Ausgang nach Masse passiert. Der 298 wird zwar nicht geschützt, aber z.B. das Netzteil.
Dafür soll ja auch eine Sicherung in die Plusleitung vom Akku rein, aber den L298 will ich trotzdem vor zu hohen Motorströmen schützen.

Yossarian
06.07.2007, 16:13
Hallo
Mit einer Schmelzsicherung kannst Du aber den 298 nicht schützen!
Wenn natürlich nur der Motor geschützt werden soll, ist das okay.
Mit freundlichen Grüßen
Benno

recycle
06.07.2007, 16:59
Mit einer Schmelzsicherung kannst Du aber den 298 nicht schützen!
Wenn natürlich nur der Motor geschützt werden soll, ist das okay.

OK, die Motoren zu schützen ist ja schon Motivation genug ein paar Cent für 2 Sicherungen zu investieren und wenn der L298 eh unbedingt kaputtgehen muss, können die in der Sense Leitung das auch nicht schlimmer machen ;-)

Steffen44
07.07.2007, 19:42
kennst du diesen Tread schon ?

Da gibt es auch gute Lösungsansätze!

https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=10564&highlight=strommessung+hallsensor