Forum: Mikrocontroller und Digitale Elektronik Stromstärke per uC messen


von CortexA8 (Gast)


Lesenswert?

Hallo zusammen,
Ich habe folgende Fragestellung:
Ich will mit einem uC die Stromstärke messen. Die Leitung hat eine 
Spannung von ca 5V (+- 0,2 V) und es können maximal 2 Ampere fließen. 
Ich würde das ganze gerne per Microcontroller auslesen. Was ich bei 
meiner Recherche bis dato herausgefunden habe ist, dass es Shunt IC´s 
gibt, bei diesen fällt jedoch "relativ" viel Spannung ab. Ich kann 
allerdings maximal 20 mV Verlust ertragen, da ich sonst schnell 
außerhalb der gewünschten Spannung bin. Die andere Methode war das 
Messer per Hall Effekt. Leider bin ich mir dort zu unsicher was IC´s 
angeht, da ich diese nicht kenne und ich teilweise die Bauteile auch 
nicht verstehe (Datenblätter von Allegro z.B.). Hat jemand bereits ein 
ähnliches Projekt gehabt bzw. kennt eine praktische Lösung für mich ?
Vielen Dank im Voraus,

Mit freundlichen Grüßen CortexA8

von Tülle (Gast)


Lesenswert?

Also das ist machbar, kein Problem. Wie viel Aufwand Du treiben willst, 
musst Du selber wissen:

Linear hat eine super AN dazu, da steht vieles drin (gibt auch Steine, 
welche Deine 20mV Abfall schaffen):
http://cds.linear.com/docs/en/application-note/an105fa.pdf

Du kannst Dir das ganze aber auch einfach machen (leider nicht ganz 
günstig)
http://www.lem.com/docs/products/lts%2015-np.pdf

Die LEM nutze ich persönlich öfters in Laboraufbauten, die sind prima 
linear und genau.

Wie Du das ganze dann in den uC kriegst ist, denke ich, klar.

Sonst noch zum Thema Hall-Sensoren: Hatte mal preliminarys von Alllegro 
in den Pfoten und die waren zum Kotzen


Hoffe das hilft

Gruss
Tülle

von Timmo H. (masterfx)


Lesenswert?

Nimm einen kleinen Shunt-Widerstand (z.B 20mOhm) und verstärke via OPV 
die Spannung auf eine maximal mögliche ADC Spannung, skaliert für 2A 
oder 3A. Also z.B. 20mOhm Shunt, max 2A skaliert auf 5V => Verstärkung = 
125

Oder du nimmst fertige ICs mit I2C interface z.B. LTC4151, INA220....

von npn (Gast)


Lesenswert?

Timmo H. schrieb:
> Nimm einen kleinen Shunt-Widerstand (z.B 20mOhm) und verstärke via
> OPV
> die Spannung auf eine maximal mögliche ADC Spannung, skaliert für 2A
> oder 3A. Also z.B. 20mOhm Shunt, max 2A skaliert auf 5V => Verstärkung =
> 125
>
> Oder du nimmst fertige ICs mit I2C interface z.B. LTC4151, INA220....

Also wenn ich mich nicht verrechnet habe, sind 20mOhm x 2A schon 40mV, 
die am Shunt abfallen. Der TO möchte aber maximal 20mV Spannungsabfall 
haben. Also sollte er, wenn schon ein Shunt sein muß, kleiner als 10mOhm 
bleiben! Im Übrigen würde ich aber auch Stromwandler mit Hall 
bevorzugen.

von thomas (Gast)


Lesenswert?

Dann muss amn eben einen anderen shunt nehmen. Ich hab hier einen, der 
macht bis 100 A pro A ein Millivolt. Der wäre geeignet. Hab ich damals 
für 6 € in der Bucht geschossen.

von npn (Gast)


Lesenswert?

thomas schrieb:
> Dann muss amn eben einen anderen shunt nehmen.

Genau das gleiche habe ich doch geschrieben:
npn schrieb:
> Also sollte er, wenn schon ein Shunt sein muß, kleiner als 10mOhm
> bleiben!

von Wolfgang (Gast)


Lesenswert?

npn schrieb:
> Der TO möchte aber maximal 20mV Spannungsabfall haben.

Der TO soll sich einfach ein bisschen mehr Eingangsspannung gönnen. Dann 
bereiten ihm 20mV Spannungsabfall am Shunt auch keine Kopfschmerzen. Er 
könnte den Strom auch vor dem Sense-Eingang seiner Versorgungsspannung 
messen. Dann würde die Stromversorgung das von selbst ausreden.

Und wenn ich dieses hier lesen

CortexA8 schrieb:
> Die Leitung hat eine Spannung von ca 5V (+- 0,2 V)

kann es so kritisch mit der Spannung eigentlich nicht sein. Ein paar 
mehr Infos wären wohl mal wieder hilfreich.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Tülle schrieb:
> Hatte mal preliminarys von Alllegro
> in den Pfoten und die waren zum Kotzen

Hmmm, wo war das Problem? Ich hab mir diese gekauft, kann aber noch 
nichts dazu sagen, außer dass sie etwa 120ct gekostet haben:

http://www.aliexpress.com/snapshot/294300965.html

Tülle schrieb:
> leider nicht ganz günstig

LEM hatte ich in meiner Diplomarbeit benutzt. Die sind ja wirklich irre 
teuer und groß!

Eingenzlich reicht ein 10mOhm Shunt und ein R2R-OP, wenn man keine 
galvanische Trennung benötigt. Das ist billiger als ein "Allegro" und 
garantiert nicht "zum Kotzen".

Achtung! Beim 10mOhm Shunt (SMD?) die Leiterbahn-Führung beachten: Strom 
von außen dran, Sensor-Leitungen von der Mitte. Das steht aber auch in 
den Datenblättern.

PS: Zum Thema Hall-Sensor habe ich viele hilfreiche Tipps bekommen im
Beitrag "Stromsensor mit I²C? TLI4970 Alternative?"

: Bearbeitet durch User
von MaWin (Gast)


Lesenswert?

CortexA8 schrieb:
> Hat jemand bereits ein
> ähnliches Projekt gehabt bzw. kennt eine praktische Lösung für mich ?

Kommt drauf an, wie genau du messen könne willst.

von CortexA8 (Gast)


Lesenswert?

Hi Leute,
Vielen vielen Dank für die Antworten :)
Was für mich in Frage kommen würde wäre der TLI4970. Leider ist dieser 
noch nicht verfügbar.

@Torsten C: Danke für den Link zu den Hall IC´s.

Zu den SHunt IC´s: Gibt es auch eine "All-in-one"-Lösung wo der R_Sense 
bzw. R_Shunt intigriert ist ? Das würde mir viel Platz ersparen ;) Hat 
jemand von euch schon eine derartige Schaltung aufgebaut und kann mir 
die "dunklen Geheimnisse" sagen ?

@MaWin: Ich will keine "exakten Zahlen", dh mir reichen Werte mit 2-3 
Stellen nach dem Komma, e.g. 1,67 A oder 1.678 A. Hättest du dafür eine 
"einfachere" Lösung ?

Vielen Dank schon mal,
CortexA8

von Harald W. (wilhelms)


Lesenswert?

CortexA8 schrieb:

> @MaWin: Ich will keine "exakten Zahlen", dh mir reichen Werte mit 2-3
> Stellen nach dem Komma, e.g. 1,67 A oder 1.678 A.

Das würde ich aber schon als "sehr exakt" bezeichnen. Da braucht
man schon etwas Erfahrung in der Entwicklung analoger Schaltungen.
Es gibt da auch keine "Geheimtips" sondern es ist die Summe aller
Eigenschaften, die nachher die Genauigkeit bestimmt.

von npn (Gast)


Lesenswert?

CortexA8 schrieb:
> Zu den SHunt IC´s: Gibt es auch eine "All-in-one"-Lösung wo der R_Sense
> bzw. R_Shunt intigriert ist ? Das würde mir viel Platz ersparen ;)

Schau dir mal von Allegro den ACS712 an. Hat einen integrierten Shunt 
von 1,2mOhm, eine Betriebsspannung von 5V, sogar eine galvanische 
Trennung des Shunts vom Rest des ICs und kommt im SO8-Gehäuse daher. Gut 
und klein genug? :-))

von Torsten C. (torsten_c) Benutzerseite


Angehängte Dateien:

Lesenswert?

npn schrieb:
> Allegro ... ACS712 ... Hat einen integrierten Shunt von 1,2mOhm,

Nein, hatte ich oben (120ct^^) schon geschrieben: Das ist kein Shunt, 
sondern arbeitet mit einem Hall-Sensor. Die Angabe 1,2mOhm stimmt, 
bezieht sich aber nicht auf einen Shunt.

Zum ACS712 ist noch die Frage offen, was daran vielleicht "Kacke"^^ ist.

CortexA8 schrieb:
> ... der TLI4970. Leider ist dieser noch nicht verfügbar.

Doch, inzwischen schon, kostet aber über 1000ct:
http://www.mouser.de/ProductDetail/Infineon/TLI4970D050T4XUMA1/?qs=%2fha2pyFaduiJS7hIye5zuEsrT3JXrC7eTEJrKQ4ENSI%3d

Siehe Beitrag "[Biete] Sammelbestellung de.Mouser.com 2015"

CortexA8 schrieb:
> Hat jemand von euch schon eine derartige Schaltung aufgebaut und kann
> mir die "dunklen Geheimnisse" sagen ?

Wie gesagt schau ins Datenblatt. Viel Platz braucht so ein Shunt nicht:

http://www.mouser.de/Passive-Components/Resistors/Current-Sense-Resistors/Current-Sense-Resistors-SMD/_/N-7fjcg/

Zu "Sensor-Leitungen von der Mitte"^^ siehe 'Shunt.png'(aus einem 
Datenblatt). ;-)

R2R^^ steht für Rail2Rail, vielleicht der hier?

Beitrag "Rail2Rail OP-AMP MC33204 für €0,45"

: Bearbeitet durch User
von Frank K. (fchk)


Angehängte Dateien:

Lesenswert?

CortexA8 schrieb:

> nicht verstehe (Datenblätter von Allegro z.B.). Hat jemand bereits ein
> ähnliches Projekt gehabt bzw. kennt eine praktische Lösung für mich ?

So habe ich es gemacht. Beim Shunt musst Du sehen, wie Du den 
dimensionierst. Lies das Datenblatt des INA220!

fchk

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Kommentar von einem "Mitleser":

Frank K. schrieb:
> Lies das Datenblatt des INA220!

Von mir vielen Dank. Der INA220 kostet bei Ali 118ct, vergleichbar zum
ACS712, aber gleich inclusive ADC. Guter Hinweis! :-)

von MaWin (Gast)


Lesenswert?

CortexA8 schrieb:
> @MaWin: Ich will keine "exakten Zahlen", dh mir reichen Werte mit 2-3
> Stellen nach dem Komma, e.g. 1,67 A oder 1.678 A. Hättest du dafür eine
> "einfachere" Lösung ?

Dafür reicht also der 10 bit ADC im uC und ein Gain von 100,
also ein TSC101C oder baugleich an einem 0.01 Ohm Widerstand.

von Richard S. (rscheff)


Lesenswert?

Tülle schrieb:

> Sonst noch zum Thema Hall-Sensoren: Hatte mal preliminarys von Alllegro
> in den Pfoten und die waren zum Kotzen

Servus,

kannst du deine Erfahrungen mit den ACS712 etwas ausführlicher 
erläutern?

Gabs Probleme bei der Linearität, Temperaturkompensation, 
Reproduzierbarkeit, galvanischen Trennung, ...?

Ich suche galvanisch getrennte Stromsensoren (200Vdc, Spitze bis 500Vdc; 
Strom typisch <2A, maximal 5A; genauigkeit 5-10%), und dachte an diese 
Chips; Kompensation (Temperatur, Hysterese etc) würde ich nach dem AD im 
MCU machen wollen (falls das überhaupt notwendig ist).

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Ich hoffe ich nerve "Mitleser" nicht.

MaWin schrieb:
> ein TSC101C

 € 1,61 / piece bei Ali. Auch nicht uninteressant. :-)

Richard Scheffenegger schrieb:
> kannst du deine Erfahrungen mit den ACS712 etwas ausführlicher
> erläutern?

Die interessieren mich auch sehr!

von Christoph1024 (Gast)


Angehängte Dateien:

Lesenswert?

> kannst du deine Erfahrungen mit den ACS712 etwas ausführlicher
> erläutern?
Ich habe mit denen auch schon gearbeitet. Schön einfach im Einsatz, aber 
halt nicht genau und auch sonst noch einige Nachteile.

Ich hab das in einem anderen Forum dazu geschrieben:
- Die Auflösung an einem 10Bit ADC vom AVR ist schlecht. Von 0 bis 5A 
=2,5 bis 3,45V. Wenn man einen 5V µC hat, sind das also grade mal 26mA 
pro Bit kleinste Auflösung. Bei der Leistungsberechnung bei 12V System 
sind das 0,3W kleinste Auflösung. Das ist nicht besonders genau. Ich 
habe zwei ACS 712 verwendet um bei einem MPPT-Soladladeregler die 
Effizienz zu bestimmen. Bei kleinen Leistungen bin ich mit den ACS auf 
Wirkungsgrade von 108% gekommen! Ich habe die ACS sogar mit meinen UNI-T 
61E vorher abgestimmt und kalibriert, aber die Ungenauigkeit und 
Meßfehler von zwei mal ACS712+ zwei mal Spannungsmessung zusammen bringt 
einen direkt ins Reich der Phantasie.
Man könnte mit einem OPAMP die 185mV pro 1A zwar auf 5V aufblasen, aber 
wo bleibt dann der Einfachheit-Vorteil gegenüber Shuntlösungen? 
Ausserdem rauscht der dafür zu stark.

-Wenn man mit einem kleinen Magneten in die Nähe kommt, so etwa 4cm 
reichen, geht der Meßwert schnell über 10A. Sollte man dran denken, wenn 
man den Sensor in der Nähe von Motoren und Spulen verwendet.

-Meine bisher probierten ACS haben eine Streuung zwischen 185mV und 
195mV pro A. Man ist also gut beraten, das eigene Teil vor der 
Verwendung auszumessen.
-Der Sensor genehmigt sich 10mA
-Obwohl die nur 1,2mOhm an Widerstand haben, reicht die Verlustleistung 
auf meinen China-PCB zusammen mit den 10mA Stromaufnahme aus, um den 
winzigen ACS bei 5A relativ schnell auf 60°C zu bringen. Allerdings muss 
ich dazusagen, dass das China-PCB mit den Schraubklemmen bei mir 
insgesamt einen Widerstand von 7mOhm hat. Das heizt leider und füttert 
die Temperaturdrift. Dadurch läuft der Meßwert 80mA weg bei Volllast. Im 
angehängten Bild habe ich mal die Werte vom ACS 712-5 mit dem meinem 
UNI-T61E verglichen. Last etwa 5A, ein paar Birnen, daher die 
Stromspitzen beim Einschalten.Interessant zu sehen, wie der ACS beim 
hohen Einschaltstrom ins Negative schwenkt-noch ein Nachteil. Man sieht 
wie der ACS mit der Zeit warm wird und um -80 mA gegenüber dem UNI-T 
absinkt. Nach dem Ausschalten bleibt der ACS noch eine Weile bei -80mA, 
bis er wieder abkühlt (Dauert ne Minute). Ich habe mal ein 3x1cm langes 
Alublech drangepackt, das reicht schon, um Ihn unter 40°C zu bringen und 
das Problem DEUTLICH zu lindern.
Die 20A Version ist im gleichen Gehäuse wie die 5A Version, ich hab noch 
nicht gemessen, wie warm die wird, aber das Weglaufen müsste noch 
wesentlich krasser sein.
-Mit der im Datenblatt empfohlenen Filterkapazität rausch das Teil immer 
noch ordentlich. Am Oszi hab ich so etwa 15mV Rauschen gesehen, das sind 
80mA! Wenn man die Filterkapazität auf 400nF erhöht, sieht die Sache 
schon viel besser aus, aber von den 80khz maximale Meßfrequenz bleibt 
dann kaum was übrig.

Ich nutze Ihn trotzdem gerne weil`s so schön einfach ist bei Sachen die 
nicht so genau sein müssen.

von Torsten C. (torsten_c) Benutzerseite


Angehängte Dateien:

Lesenswert?

Der Thread-Titel ist gut gewählt, um hier Wissen und Erfahrungen zu 
sammeln.

Christoph1024 schrieb:
> Von 0 bis 5A = 2,5 bis 3,45V.

Also für Wechselstrom wären das 1.55V .. 3,45V.
Für Gleichstrom nehme man einen Differenzverstärker gegen VCC/2.

Christoph1024 schrieb:
> Wenn man mit einem kleinen Magneten in die Nähe kommt, so etwa 4cm
> reichen, geht der Meßwert schnell über 10A.

Das wurde hier noch nicht erwähnt. Das ist ein Grund mehr, einen Shunt 
zu nehmen, statt eines Hall-Sensors, falls keine galvanische Trennung 
erforderlich ist. Guter Hinweis! :-)

Christoph1024 schrieb:
> Streuung zwischen 185mV und 195mV pro A.

Auch gut zu wissen. Wenn man einen OP dahinter schaltet und keine 
0.1%-Widerstände für R1/R2 benutzt, muss man aber eh kalibrieren.

@Christoph1024: Danke für die Hinweise. :-)

: Bearbeitet durch User
von Christoph1024 (Gast)


Lesenswert?

Torsten C. schrieb:
> Christoph1024 schrieb:
>> Von 0 bis 5A = 2,5 bis 3,45V.
>
> Also für Wechselstrom wären das 1.55V .. 3,45V.
> Für Gleichstrom nehme man einen Differenzverstärker gegen VCC/2.
Klar, aber wenn man schon anfängt mit einem Opamp zu arbeiten, kann man 
sich das Geld für den ACS auch sparen und einen Shunt nehmen, ohne die 
ganzen Nachteile - es sei denn man braucht die galvanische Trennung.

> @Christoph1024: Danke für die Hinweise. :-)
Bitte ..

Christoph

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Christoph1024 schrieb:
> Ich habe mit denen auch schon gearbeitet.

Christoph1024 hat viele Erfahrungen beigesteuert!
@Tülle (Gast): Was genau war denn nun "zum Kotzen"^^?

Christoph1024 schrieb:
> sich das Geld für den ACS auch sparen und einen Shunt nehmen

Ja! Einen Shunt habe ich daher bei meinem Dimmer eingeplant. Ich lese 
hier fleißig mit, falls es neue Erkenntnisse für mich gibt.

von Tülle (Gast)


Lesenswert?

Also zu den Erfahrung mit den Allegros:

Wie schon gesagt, die waren wirklich preliminary... Absolut 
vor-vor-vor-Serie (kamen auf einem Prototypen vom Kunden, Schaltung war 
auch nicht der Hammer ^^).
Wie  Christoph1024 schon gesagt hatte, mit der Genauigkeit war's nicht 
gerade weither... Ich weiss nicht wie die jetzt sind, einen Versuch ist 
sicherlich wert. Ansonsten habe ich nie schlechte Erfahrung mit Allegro 
gemacht.


Grüsse
Tülle

von CortexA8 (Gast)


Lesenswert?

Hallo zusammen,
Ich habe mir jetzt auf ebay 
http://www.ebay.de/itm/5-Stuck-Stromsensor-ACS712-30A-Range-Current-Modul-Arduino-Bascom-Projekte-TE142-/271839405342?pt=LH_DefaultDomain_77&hash=item3f4ae4251e 
diese Boards bestellt. Preislich ist das ganze okay ;) Vorallem muss man 
im Notfall nur einen C tauschen wie Christoph1024 bereits beschrieben 
hat. Ich teile euch mit, wie ich persönlich mit den IC´s klar komme und 
ob sich etwas verbessert hat bzw. wo ich noch Probleme gefunden habe. 
Ich werde mir auch den INA220 von TI anschauen. An diesem Punkt schonmal 
vielen Dank für das große Interesse und den guten Input.

MfG CortexA8

von Christoph1024 (Gast)


Lesenswert?

CortexA8 schrieb:
> Hallo zusammen,
> Ich habe mir jetzt auf ebay
> 
http://www.ebay.de/itm/5-Stuck-Stromsensor-ACS712-30A-Range-Current-Modul-Arduino-Bascom-Projekte-TE142-/271839405342?pt=LH_DefaultDomain_77&hash=item3f4ae4251e
> diese Boards bestellt. Preislich ist das ganze okay ;)
Wenn deine Bedingungen vom Eingangsposting noch stimmen hast du die 
falschen bestellt. Die 30A sind bei deinen angegebenen 2A ziemlich 
grobschlächtig. Die haben nur 66mV/A. D.H. wenn du einen 10BIT Adc bei 
5V hast, hast du nur 77mA/bit. Da das LSB eh wackelt, misst du grob nur 
auf 0,1A genau. Deine Anforderungen auf 2-3Stellen hinter dem Komma 
kannst du also mit den 30A Teilen vergessen. Wenn du eh nur maximal 2A 
hast, warum kaufst du keine 5A-Version, die löst 3 mal genauer auf?

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Torsten C. schrieb:
> http://www.aliexpress.com/snapshot/294300965.html
Christoph1024 schrieb:
> Die 30A sind bei deinen angegebenen 2A ziemlich
> grobschlächtig.

Ich hätte CortexA8 ja auch gern welche von meinen 120ct^^-Teilen mit 5A 
per Warensendung geschickt. Aber nun ist es egal!

von CortexA8 (Gast)


Lesenswert?

HI,
Ja mir ist mein überstürztes Handeln auch gestern aufgefallen.
@ Torsten C.: Könntest du mir mal eine Mail schreiben ? cortexa8@me.com 
Ich würde gerne 1-2 IC´s austauschen.  Ginge das ?
Vielen Dank CortexA8

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.