Forum: Analoge Elektronik und Schaltungstechnik 0-300mA Strommessung


von noah (Gast)


Lesenswert?

Hallo zusammen

Ich möchte von einer verstellbaren Spannungsquelle (7-12V) den Strom 
messen.
Maximaler Strom ist 300mA.
Den Strom möchte ich als AD-Signal auf einem uP Auswerten.
Die Genauigkeit sollte mindesten +/- 2mA betragen.

Vielen Dank schon im voraus, für eure Hilfe.
Freundliche Grüsse noah

: Verschoben durch Moderator
von Karsten B. (kastenhq2010)


Lesenswert?

Wo klemmt's denn genau?

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

Ich brauche am besten ein IC dass mir ein Analog Signal liefert

von Karsten B. (kastenhq2010)


Lesenswert?

Du hast doch analog deine 0-300 mA?

Meinst du eine analoge Spannung? Vielleicht hilft statt eines ICs ein 
Widerstand? :)

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

Meine Spannungsquelle liefert max 300mA bei 7-12V DC
Bei dieser Spannungsquelle möchte ich wissen welcher Strom im Moment 
gerade fliesst.

von Volker S. (sjv)


Lesenswert?

Du brauchst einen Shuntwiderstant, der Dir eine stromproportionale 
Spannung liefert, z.B. 1 Ohm, die Spg kannst Du dann weiter verstärken.

von Karsten B. (kastenhq2010)


Lesenswert?

Die Aufgabenstellung habe ich verstanden.
Nochmal: Du hast deinen Strom, möchtest eine dazu proportionale 
Spannung. Statt eines ICs zur Umwandlung, reicht ein simpler Widerstand.

Gibt es noch mehr Angaben, wie z.B. maximal erlaubter Spannungsabfall 
durch die Messung, Typ des Microkontrollers?

von Christoph M. (maije)


Lesenswert?

Noah R. schrieb:
> Meine Spannungsquelle liefert max 300mA bei 7-12V DC
> Bei dieser Spannungsquelle möchte ich wissen welcher Strom im Moment
> gerade fliesst.

Shunt mit Verstärker?
Ok, ist halt kein fertiger IC :)

Lg,
Maije

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

Einen Shunt Widerstand habe ich schon ausprobiert, ist jedoch zu 
ungenau. Weil die Differenz nur 0.3 Volt beträgt und mein 
Differenzverstärker maximale eingangs Spannung von 5V hat, deshalb muss 
ich die Eingänge im voraus schon teilen und diese dann wieder 
Verstärken.

von Wolfgang (Gast)


Lesenswert?

Noah R. schrieb:
> Ich brauche am besten ein IC dass mir ein Analog Signal liefert

Einen für deine Genauigkeitsanforderungen ausreichend präzisen 
Widerstand mit 4-Leiter-Anschluss wirst du schon auch noch brauchen.

Als IC vielleicht einen INA240?

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

Der Maximaler Spannungsabfall sollte nicht über 0.5V betragen.
Der Mikrocontroller ist ein PIC16F15376.

von quant (Gast)


Lesenswert?


von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

Wolfgang schrieb:
> Einen für deine Genauigkeitsanforderungen ausreichend präzisen
> Widerstand mit 4-Leiter-Anschluss wirst du schon auch noch brauchen.
>
> Als IC vielleicht einen INA240?

Reicht für das INA240 nicht einfach ein normaler Shunt Widerstand? (z.B. 
1 Ohm)

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

quant schrieb:
> Das könnte eine Lösung sein.
>
> 
https://www.allegromicro.com/en/Products/Current-Sensor-ICs/Zero-To-Fifty-Amp-Integrated-Conductor-Sensor-ICs.aspx

Diese decken doch einen viel zu grossen Spannungsbereich ab

von Falk B. (falk)


Lesenswert?

@ Noah Rodriguez (Firma: Komax AG) (ron00)

>Meine Spannungsquelle liefert max 300mA bei 7-12V DC
>Bei dieser Spannungsquelle möchte ich wissen welcher Strom im Moment
>gerade fliesst.

Dazu muss man einen Strommeßwiderstand, aka Shunt, in die + oder - 
Leitung einschleifen und dort drüber den Spannungsabfall messen.

I = U / R

R ist bekannt und konstant, U wird gemessen.

Damit dabei nicht zuviel Spannung verloren geht, nimmt man meist recht 
niederohmige widerstände, an denen bei maximalem Meßwert so 100-200mV 
abfallen.

R = U / I = 0,2V / 0,3A = 0,666 Ohm

Real wird man wohl eher 0,47 Ohm nehmen, das ist ein leicht verfügbarer 
Standardwert. Den kleinen Spannungsabfall muss man dann per 
Operationsverstärker soweit verstärken, daß bei maximalem Strom die 
maximal zulässige Eingangsspannung des AD-Wandlers deines 
Mikrocontrollers erreicht wird. Damit nutzt man die Auflösung maximal 
aus. Wenn dein Mikrocontroller mit 5V Referenzspannung arbeitet (z.B. 
Arduino), dann braucht man eine Verstärkung von 5V / 0,2V = 25

Dabei muss man beachten, daß der OPV mit der verfügbaren Stromversorgung 
auskommt. Im einfachsten Fall nimmt man einen Rail to Rail Typ wie den 
TS912, der hat damit keine Probleme, wenn gleich er nicht supergenau 
ist.

von Andrew T. (marsufant)


Lesenswert?

Noah R. schrieb:
> Diese decken doch einen viel zu grossen Spannungsbereich ab

Aber nur ausgangsseitig. Und genau dort schließt Du noch einen 
Spannungsteiler an. Dafür gibt es diese aus 2 Widerständen bestehenden 
Dinge.

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

Andrew T. schrieb:
> Noah R. schrieb:
>> Diese decken doch einen viel zu grossen Spannungsbereich ab
>
> Aber nur ausgangsseitig. Und genau dort schließt Du noch einen
> Spannungsteiler an. Dafür gibt es diese aus 2 Widerständen bestehenden
> Dinge.

Jedoch ist der Strombereich auch viel zu gross.

von Jemand (Gast)


Lesenswert?

Hallo

"Weil die Differenz nur 0.3 Volt beträgt und mein
Differenzverstärker maximale eingangs Spannung von 5V hat, deshalb muss
ich die Eingänge im voraus schon teilen und diese dann wieder
Verstärken."

So 100% schlau werde ich aus deinen Ausführungen nicht, warum welche 
Spannung teilen und dann wieder verstärken?

Im Allgemeinen sind aber auch diese "kleinen" Spannungen kein Problem - 
diese 0,3V einfach mit einen Operationsverstärker verstärken und 
zusätzlich eine geeignete Referenzspannung am µC wählen bzw. vorgeben 
(zumindest bei den 8Bit AVR sind verschiedene U Ref möglich, bei den 
PICs sicherlich auch).
0,3V ist eigentlich noch eine "riesige" Spannung die Problemfrei zu 
verstärken ist - interessant und tricky wird es bei Spannungen von 
einigen mV oder sogar im µV Bereich.

Jemand

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

@ Falk B.

Würdest du dann auch einen Differenzverstärker anschließen?

von Olaf (Gast)


Lesenswert?

Ich wuerde mir ja erstmal darueber klar werden das ein Shunt in Masse 
leider dein Bezugspotential verschiebt. Je nach Anwendung ist das 
vernachlaessigbar oder total inakzeptabel.

Wenn man einen Shunt in der Plusleitung hat dann muss man die 
Ausgangsspannung vom OP in der Regler noch auf Massepotential bringen. 
Das kann man natuerlich machen.

Oder man kauft sich eines der dafuer entwickelten SpezialICs. Eines ist 
z.B der MAX4080.

Olaf

von Martin (Gast)


Lesenswert?

Nimm eine 0,1 Ohm Widerstand als Shunt, dann ist der Spannungsabfall 
geringer.

von Falk B. (falk)


Angehängte Dateien:

Lesenswert?

Siehe Anhang. Oben die Messung mit einem Shunt in der Masseleitung. Das 
ist einfach, man braucht nur einen invertierenden OPV und fertig. 
Allerdings muss die Spannungsquelle dann auch potenialfrei sein. Das 
sind zwar viele, aber nicht alle (Labornetzteile, Steckernetzteile, 
etc).

Wenn das aus diversen Gründen nicht geht, muss man den Shunt in die + 
Leitung setzen, das ist die untere Schaltung. Um den Spannungsabfall von 
dort in eine massebezogene Spannung umzuwandlen, nimmt man 
sinnvollerweise einen fertigen current sense amplifier, da ist alles 
drin, was man braucht. Sowas baut man heute nicht mehr diskret aus.

von Karsten B. (kastenhq2010)


Lesenswert?

Benötigt man für die geforderte Genauigkeit denn überhaupt einen OP? Hat 
der PIC keine interne Referenz <5 V, sodass ein simpler Shuntwiderstand 
von 1,47 Ohm reicht?

von Falk B. (falk)


Lesenswert?

@Noah Rodriguez (Firma: Komax AG) (ron00)

>Würdest du dann auch einen Differenzverstärker anschließen?

Nein, siehe meinen anderen Beitrag. Die meisten Differenzverstärker 
brauchen eine Versorgungsspannung, die größer gleich der maximalen 
Gleichtaktspannung ist, in deinem Fall also deine 12V vom Netzteil. Das 
ist aufwändig. Die Spannung des Shunt mit Spannungsteilern teilen und 
per Differenzverstärker auf Erdpotential zu bekommen ist SEHR 
fehleranfällig!!! Das ist die schlechteste aller Lösungen!

Die Leute wissen schon, warum sie den current sense amplifier erfunden 
haben.

von Noah R. (Firma: Komax AG) (ron00)


Lesenswert?

Vielen Dank an alle für die schnelle Hilfe

von Harald W. (wilhelms)


Lesenswert?

Noah R. schrieb:

> Einen Shunt Widerstand habe ich schon ausprobiert, ist jedoch zu
> ungenau.

Ooch, ich denke, das geht mit einer Genauigkeit von besser 10E-5.
Ist Dir das zu ungenau? Natürlich muss die Spannung anschliessend
noch verstärkt werden und da schleicht sich so manche Ungenauig-
keit ein.

> Weil die Differenz nur 0.3 Volt beträgt und mein
> Differenzverstärker maximale eingangs Spannung von 5V hat, deshalb muss
> ich die Eingänge im voraus schon teilen und diese dann wieder
> Verstärken.

Deine Worte hören sich recht seltsam an.

von Falk B. (falk)


Lesenswert?

@ Harald Wilhelms (wilhelms)

>> Weil die Differenz nur 0.3 Volt beträgt und mein
>> Differenzverstärker maximale eingangs Spannung von 5V hat, deshalb muss
>> ich die Eingänge im voraus schon teilen und diese dann wieder
>> Verstärken.

>Deine Worte hören sich recht seltsam an.

Ja, aber er meint, daß sein Differenzverstärker nur 5V 
Gleichtaktspannung verträgt, vermutlich weil er mit 5V versorgt wird.

von soso (Gast)


Lesenswert?

1% ist schon sportlich, aber noch machbar, bei 300mA würde ich 
persönlich noch Shunts nehmen.

Vorschlag:
Shunt + INA170, mit Bias. Ein Vierpoliger Shunt, da gibts ja recht 
brauchbare Serien mit 0,1%:
http://www.vishay.com/docs/30195/wsk1206.pdf
Möglicherweise sind 50m etwas wenig, musst du halt kucken obs noch 
größere Werte gibt.

Damit bekomm man sowas hin bis runter zu 0mA, auch mit 2mA Genauigkeit.

Bei <1% musst du auch den Fehler des ADC und der Referenz in Betracht 
ziehen, d.h. alle restlichen Widerstände sind 0,1% verpflichtend, eine 
0,1% Referenz halte ich auch für nötig.

In Summe dürfte man auf die 1% gerade so hinkommen.

PS:
Wenn du die Anforderungen etwas einschränkst (wie 1% von 50mA - 300mA) 
könntest du mit einem INA138 hinkommen. Musst du selber wissen.

von Karl (Gast)


Lesenswert?

INA138 mit Shunt in der Plusleitung.

von soso (Gast)


Lesenswert?

Karl schrieb:
> INA138 mit Shunt in der Plusleitung.

Naja:
http://www.ti.com/lit/ds/symlink/ina138.pdf

"Figure4. Total Output Error vs VIN"

Den Fehler kann man leider nicht abgleichen.

1% schafft der INA138 erst, wenn Vin einen bestimmten Wert 
überschreitet, also so ab 100mV am Eingang - also niemals bei 0mA.

Das ist beim INA170 auch so, darum das "Bias", der hat einen eigenen 
Pin, mit dem man die 100mV bei 0mA am Eingang draufgeben kann.
Das macht einen Offset, den man abgleichen kann, aber dafür bekommt man 
ab 0mA eine einigermaßen brauchbare Messung.
Selbst da wirds mit 1% schon schwierig.

von Karsten B. (kastenhq2010)


Lesenswert?

Wie kommst du auf 1% Anforderung?

von Falk B. (falk)


Lesenswert?

@soso (Gast)

>1% schafft der INA138 erst, wenn Vin einen bestimmten Wert
>überschreitet, also so ab 100mV am Eingang - also niemals bei 0mA.

Kein Mensch redet über 1% bei kleinen Meßwerten und schon gar nicht bei 
0mA!

von soso (Gast)


Lesenswert?

Karsten B. schrieb:
> Wie kommst du auf 1% Anforderung?

Naja, im Ursprünglicehn Beitrag heißt es:
300mA auf +-2mA genau messen.

Das sind meiner Meinung nach 300mA +-0,67%

Sogar genauer noch als 1%, aber wollen wir mal nicht so sein.

von Michael B. (laberkopp)


Lesenswert?

noah schrieb:
> Ich möchte von einer verstellbaren Spannungsquelle (7-12V) den Strom
> messen.

Nun ja.

Noah R. schrieb:
> Ich brauche am besten ein IC dass mir ein Analog Signal liefert

Da kommt doch eine Salamischeibe hinterher.

Meinst du einen Widerstand ?

Noah R. schrieb:
> Der Maximaler Spannungsabfall sollte nicht über 0.5V betragen.

Oh, eine weitere Salamischeibe.

noah schrieb:
> Maximaler Strom ist 300mA.
> Die Genauigkeit sollte mindesten +/- 2mA betragen.

Da reichen 8 bit.

Noah R. schrieb:
> Der Mikrocontroller ist ein PIC16F15376.

Löst 2mV auf
AD02 EIL Integral Error — ±0.1 ±1.0 LSb ADCREF+ = 3.0V, ADCREF-= 0V
AD03 EDL Differential Error — ±0.1 ±1.0 LSb ADCREF+ = 3.0V, ADCREF-= 0V
ein 1 Ohm Widerstand tut es also.
1
+7..12V
2
  |
3
 Last
4
  |
5
  +---|PIC16F15376
6
  |
7
 1Ohm
8
  |
9
 GND
und ist auf 1 digit genau, aber nicht initial:
AD04 EOFF Offset Error — 0.5 2.0 LSb ADCREF+ = 3.0V, ADCREF-= 0V
AD05 EGN Gain Error — ±0.2 ±1.0 LSb ADCREF+ = 3.0V, ADCREF-= 0V
Muss also zuerst kalibiert werden.

von Schorsch X. (bastelschorsch)


Lesenswert?

Evtl. Strom in der Versorgungseite (+) messen mit INA19x 
(x=3,4,5,6,7,8). Spannungsabfall nach Wunsch. Funktionieren sehr gut.

http://www.ti.com/lit/ds/symlink/ina195a-q1.pdf

von Karl (Gast)


Lesenswert?

soso schrieb:
> Den Fehler kann man leider nicht abgleichen.

Doch, locker.

Der Fehler kommt durch den Eingangsbias von 2µA in Verbindung mit dem 
5kohm Eingangswiderstand zustande => 10mV.

Der Fehler ist damit, von extremen Temperaturbereichen abgesehen, 
ziemlich gut reproduzierbar.

Kann man einmal ausmessen und digital wegrechnen. Den Verstärkungsfaktor 
(Shuntwiderstand, Bürdewiderstand) muss man eh ausmessen und im 
Controller ablegen.

Leute ihr wollt mir doch nicht erzählen, dass ihr im 21. Jahrhundert 
Offsetabgleiche und Verstärkungsfaktoren mit Potis einstellt. Da kommen 
temperaturstabile Festwiderstände rein, die sind langfristig genauer als 
jedes Poti, und der Abgleich wird digital gemacht.

von Karsten B. (kastenhq2010)


Lesenswert?

Michael B. schrieb:
> ein 1 Ohm Widerstand tut es also.

Sag ich doch, Op und Co sind gar nicht notwendig. Danke!

von soso (Gast)


Angehängte Dateien:

Lesenswert?

Falk B. schrieb:
> @soso (Gast)
>
>>1% schafft der INA138 erst, wenn Vin einen bestimmten Wert
>>überschreitet, also so ab 100mV am Eingang - also niemals bei 0mA.
>
> Kein Mensch redet über 1% bei kleinen Meßwerten und schon gar nicht bei
> 0mA!

Naja, oben stands aber so...

Karl schrieb:
>> Den Fehler kann man leider nicht abgleichen.
>
> Doch, locker.
>
> Der Fehler kommt durch den Eingangsbias von 2µA in Verbindung mit dem
> 5kohm Eingangswiderstand zustande => 10mV.

Das ist kein Bias, sondern einfach der Offset des Verstärkers. Kuckt man 
hier:
http://www.ti.com/lit/sg/slyb194c/slyb194c.pdf

Das Problem dabei:
Das kann man nicht einfach abgleichen, oder zumindest nicht bei 0mA, 
weil der Offset in 50% der Fälle negativ ist. Der INA138 kann aber keine 
negative Spannung ausgeben.
Um das Abgleichen zu können, müsstest du einen (genau bekannten) 
positiven prüfstrom durchlassen, und das dann herausrechnen.

Dazu muss man beim Abgleich immer auch die Last wegschalten. Das ist oft 
mit Zusatzaufwand verbunden.

Also, wenn man mit dem INA138 eine Strommessung für 1A aufbaut, und 10mA 
messen will, ist das nicht mehr einfach.
Weil das selten vorkommt, ist der INA138 trotzdem so beliebt :-)

von Karl (Gast)


Lesenswert?

soso schrieb:
> Das ist kein Bias, sondern einfach der Offset des Verstärkers. Kuckt man
> hier:

Und jetzt schaust Du nochmal ins Datenblatt, guckst auf die Angaben zur 
Offsetspannung (+-0.2mV) und vergleichst diese mit der Messspannung.

Und dann ziehst Du in Betracht, dass TI in der AppNote vielleicht grob 
vereinfacht hat.

Ja, es ist ein Offset, aber es ist nicht die Offsetspannung (0.2mV) des 
Verstärkers, sondern ein durch den Eingangsbias in Verbindung mit den 
5kohm Eingangswiderständen hervorgerufener Offset (5kohm x 2µA = 10mV).

von Karl (Gast)


Angehängte Dateien:

Lesenswert?

Um den theoretischen Diskussionen um die Genauigkeit des INA138 mal was 
Reales beizutragen: Anbei eine Messung.

Die Schaltung ist auf 1.4A bei 1.1V Vref des ADC ausgelegt, deswegen ist 
sie leider etwas "unempfindlich" und liefert bei mA nur noch mV. Die 
angegebenen Stromwerte über 400mA sind im 10A Bereich gemessen, daher 
die größeren Abweichungen.

Man sieht, dass man durch Korrektur des Offsets bis an die 
Messbereichsgrenze von etwa 5mA heran noch mit gut 1% Genauigkeit messen 
kann. Bei Auslegung der Schaltung auf einen Messbereich bis 500mA 
(Rshunt auf 330mohm) kann man die Messbereichsgrenze unter 2mA schieben. 
Durch Erhöhung des Bürdewiderstands (Rmess auf 100kohm) kann man die 
Ausgangsspannung an eine größere Vref anpassen. Aufpassen, Vout max muss 
1V unter Vcc liegen.

von Wolfgang (Gast)


Lesenswert?

Falk B. schrieb:
> Nein, siehe meinen anderen Beitrag. Die meisten Differenzverstärker
> brauchen eine Versorgungsspannung, die größer gleich der maximalen
> Gleichtaktspannung ist, in deinem Fall also deine 12V vom Netzteil.

Um diese Problematik zu umgehen hatte ich den INA240 vorgeschlagen.
Bei 5V Versorgung verträgt der einen Common-Mode Bereich von –4 V bis 80 
V

von Ach Du grüne Neune (Gast)


Angehängte Dateien:

Lesenswert?

Soll angeblich auch funktionieren.

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.