Forum: Mikrocontroller und Digitale Elektronik Strom messen mit Arduino


von Basti (Gast)


Lesenswert?

Hallo allerseits,

ich möchte mit einem Arduino Strom messen. Also wie viel Strom z.B. vom 
Akkupack an den Motor fließt. Ich habe mich da in den Weiten des www mal 
schlau gemacht und verschiedene Methoden gefunden. Von Messwandler nach 
dem Transformatorprinzip über einen Shunt oder die Lösung, welche ich 
für am besten halte: Einem Hall-Effekt Sensor.

Ich habe mir also dieses Modul geholt: 
http://www.watterott.com/de/Sensoren/Strom/ACS712-Breakout (bis 5 A)

Leider gibt das Modul nicht gerade eine große Spannungsänderung am 
Ausgang ab. 150mV pro A. Damit kann man nicht vernünftig bis in den mA 
Bereich messen. Und wenn kein Strom fließt, liegt am Modul schon 2,5 
Volt an.

Mein Vorhaben ist es also den Output "hochzuskalieren" damit der 
komplette Messbereich des Arduino von 0-5V ausgenutzt wird.

Also wieder das Internet nach Lösungen bemüht und schließlich auf den 
Begriff Operationsverstärker gestoßen. Davon eine besondere Art. Dem 
Instrumentenverstärker. Also bei Reichelt noch einen INA125 bestellt, da 
der noch im bezahlbaren Rahmen lag (Man sind die Dinger teuer).

Jetzt habe ich allerdings etwas Verständnisschwierigkeiten mit dem 
Datenblatt. Ich muss also die 2,5 Volt was der ACS712 Stromsensor im 
Ruhezustand ausgibt auf 0 Volt bringen und den verändernden Output von 
knapp 200mV auf den vollen Messbereich des Arduino bringen (5V)

Wie stelle ich das nun am besten mit dem INA125 an. Mein Englisch ist 
nicht so gut aber ich denke, dass es was mit dem Offset Trimming zu tun 
hat.

Ich hoffe ihr könnt mir helfen. Ich kann ja jetzt nicht kurz vor dem 
Ziel scheitern...

von Kurti K. (kurti_kurti)


Lesenswert?

Hallo,
vergiss das mit dem Operationsverstärker.

Der Chip gibt bei 0 Ampere 2,5 Volt aus, damit Du Ströme in beiden 
Richtungen messen kannst.
Bei Akkus z.B. laden und entladen, bei Wechselstrom eben diesen.
Alles andere wird im Programm gemacht.
Im Arduino-Forum gibt es Beispiele dafür.

Die Auflösung ist für Dein Problem hoch genug.

Viel Erfolg.

Gruss
Kurti

von Matt B. (mattb)


Lesenswert?

Hallo,

schau dir mal im Datenblatt des ACS712 auf Seite 12 die Application 3 
an. Wenn ich sie richtig verstanden habe, wird durch den LM321 sowohl 
eine Verstärkung (V_out = -R3/R_F * V_in) und eine Subtraktion von 2,5V 
erreicht.
Die Verstärkung kann damit mit R_F und R3 an die eigenen Bedürfnisse 
angepasst werden. Ob R_F innerhalb eines bestimmten Wertebereichs liegen 
muss hab ich noch nicht geschaut.

Sollte ich die Schaltung falsch interpretiert haben bitte ich darum mich 
zu korrigieren.

von Alex (Gast)


Lesenswert?

Hi,

ic hab das auch schon gehabt. und zwar den 712 von Allegro. das ganze 
geht auch mit 2 OPVs. Der erste als Subtrahierer, der zweite als 
Verstärker. Eine stabilisierte 2,5V Spannung dient der Offset 
eliminierung mittels Differenzierer. Das Ausgngssignal wird dann auf den 
nichtinvertierenden Verstärker gegeben.

Allerdings hat diese Methode auch nachteile. Die Offsetspannung des 712 
ist temperaturabhängig. Bei starkem Stromfluss durch den IC wird dieser 
sich erwärmen, sodass einen Fehler entsteht, der dann auch verstärkt 
wird. Wir hatten dann teilweise auch starke Störungen vom 
Elektromagneten auf dem Signal. Am Ende der Messkette (Messung, 
übertragung, Quantisierung mittels Quanser) hatten wir ein Rauschen von 
100mA auf dem Scope in Matlab. Durch einen Tiefpassfilter konnten wir 
das zwar eindämmen, hat aber unserere Regelung trotzdem gestört.

von Basti (Gast)


Lesenswert?

Hallo,

@Matt B.: Diese Applikation habe ich mir auch schon angeschaut. Und auch 
aufgebaut. Irgendwie will die bei mir nicht so wirklich. Die 
Ausgangsspannung schwankt unheimlich stark und es ist damit schlechter 
zu messen als ohne irgendwelche Verstärkung (ACS712 direkt an µC)

@Alex: Habe das mit der beschaltung des Instrumentenverstärkers auch 
endlich verstanden. Sind in dem einen IC ja auch nur zwei 
Operationsverstärker. Einfach die Grundbeschaltung aufbauen und an den 
Eingang des einen OPs den Mittelabriff eines Potis anbringen der an den 
äußeren Pins an +5V und GND geschalten wird und an den Eingang des 
anderen OPs wird der ACS712 angeschlossen. Nach dem Abgleich 
funktionierts wunderbar. Außer das die Ausgangssapnnung ebenfalls stark 
schwankt. Applikatikon 4 im Datenblatt habe ich da glatt überlesen. 
Diese schaltung hilft aber enorm. Jetzt kann ich zumindest bis ca. 10mA 
genau Messen.

Aber wie du auch schon festgestellt hast, ist der ACS712 sehr 
Temperaturabhängig. Ich habe es bei 24 Grad Raumtemperatur abgeglichen 
(OP gibt 0V aus). Nach einer Weile benutzen und Testen ist der Nullpunkt 
nach oben gedriftet. Auch wenn kein Strom fließt, gibt der OP etwas aus. 
Und dann ist natürlich die Genauigkeit dahin. Irgendwie nicht wirklich 
zufriedenstellend.

von T. A. (wambly)


Lesenswert?

Hallo
ich hänge mich mit meinem Problem mal hier an.
Ich habe mir letztens auch eine kleine Platine mit dem Sensor 
mitbestellt.
Bei mir trifft das Datenblatt aber nicht zu.
Ich habe den 30A Chip. Bei 0A habe ich am Ausgang knapp 2V(statt 2,5V),
bei +-3A habe ich 2V+-0.084V (statt 0,066V/A) mehr bzw. weniger.
Am Filterpin habe ich bei 0A ca. 1,6V.
Stromaufnahme ist 10mA.

Kann jemand, mit einem funktionierenden Sensor, mal die Spannung am 
Filterpin für mich messen?

Ich werde noch Messungen machen, ob der Chip von 0..25A linear arbeitet, 
dann könnte ein OPV wie in App3 das Modul Praxistauglich machen.

Ciao
Wambly

von Neuni (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich hab mir ne OP-Verstärkerschaltung mit nem Rail-to-Rail-OP gebaut.
Hier muss man nur beachten das man halbwegs linear nur von etwa 0,2 bis 
4,8V Ausgangsspannung am OP messen kann.
Im Prinzip funktioniert die OP-Schaltung nur der Abgleich ist etwas 
tricky:
Man muss den Offset von OP1 und die Verstärkung von OP2 mehrmals 
hintereinander am besten mit Spindelpotis abgleichen um halbwegs was 
vernünftiges zu messen.

Sollte hier jemand ne gute Idee haben um Ströme mit hohem Dynamik-Umfang 
zu messen immer her damit.... ist gar nicht so einfach....;-)

lg

9i

von MaWin (Gast)


Lesenswert?

Neuni schrieb:
> Sollte hier jemand ne gute Idee haben um Ströme mit hohem Dynamik-Umfang
> zu messen immer her damit.... ist gar nicht so einfach....;-)

Nucht mit einem Hallsensor. Der misst eher das Erdmagnetfeld die 
Umgebungstemperatur und den Trafobrumm.

Wie wäre es mit einem 0.01% shunt-Widerstand? Dann ggf. ein 24 bit D/A 
und erst danach eine galvanische Trennung - falls überhaupt notwendig.

von Route_66 H. (route_66)


Lesenswert?

MaWin schrieb:
> Wie wäre es mit einem 0.01% shunt-Widerstand? Dann ggf. ein 24 bit D/A
> und erst danach eine galvanische Trennung - falls überhaupt notwendig.

Er will doch messen - oder ist da was falsch hier rüber gekommen?
Dann ist der Tip mit 24 bit D/A doch die falsche Richtung.

MaWin hat sich bestimmt verschrieben.

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.