Forum: Mikrocontroller und Digitale Elektronik ACS712 Auflösung am ADC besser ausnutzen


von Dirk (Gast)


Lesenswert?

Hallo,

ich habe einen ACS712 Stromsensor, der von -5A bis 5A misst.
Ausgang ist eine Spannung zwischen 0 und 5V. Bei 0A also genau die Mitte 
bei 2,5V.

D.h. mein 10Bit ADC Wert ist bei 0A schon bei 512, bleiben also noch 512 
Schritte bis 5A.

Jetzt interessiert mich der ganze Fall <0A aber nicht und eigentlich 
alles über 3A auch nicht. Gibt es da Schaltungstechnisch irgendwelche 
Möglichkeiten, die Auflösung in dem für mich interessanten Bereich zu 
vergrößeren?
Also so, dass 0A - 3A dann 0V - 5V entsprechen. <0A bleibt 0V und >3A 
bleibt 5V.

VG
Dirk

von Dirk (Gast)


Lesenswert?

Ahh...ein Differenzverstärker scheint der Schlüssel zu sein.
Liege ich da richtig?

von Dennis K. (scarfaceno1)


Lesenswert?

Hi...

Ich hab mir mal das Datenblatt von Allegro Systems angeschaut.
http://www.allegromicro.com/~/media/files/datasheets/acs712-datasheet.ashx

Dort gibt es auf Seite 6 die schöne Grafik mit dem Namen: Output Voltage 
versus Sensed Current

Und wenn ich das richtig sehe, dann kommen da bei -5A gemessenem Strom 
schon 1,5V am Ausgang raus. Bei +5A kommen dann 3,5V raus.

Also ist deine Rechnung ohnehin verkehrt.
Die 2V Differenz zwischen Min und Max kannst du aber durchaus mit einer 
Verstärkerschaltung (OpAmp) verstärken.

: Bearbeitet durch User
von Dirk (Gast)


Lesenswert?

OK, ich hatte das Diagramm nur bildich im Kopf, ohne Zahlen.
In der Frage ging es eher ums Prinzip.

Aber danke! :)

von A. S. (Gast)


Lesenswert?

ja, das geht. Einen Verstärke mit Verstärkung 10/3 und Referenz bei 
2.5V.

Du musst aber schon einigen Aufwand treiben, um die Genauigkeit wirklich 
zu verbessern, also die Gesamt-Fehler der Schaltung kleiner zu halten 
als den Gewinn der Auflösung (hier Faktor 3.3, also weniger als 2 Bit, 
bzw. 0,3%)

von Manfred (Gast)


Lesenswert?

Dirk schrieb:
> ich habe einen ACS712 Stromsensor, der von -5A bis 5A misst.
>
> Jetzt interessiert mich der ganze Fall <0A aber nicht

Kommt mir bekannt vor! Ich betreibe den ACS712 "falsch" herum: In Ruhe 
habe ich 2,5V, bei zunehmendem Strom wird die Spannung geringer. Die 
2,5V teile ich auf 1Volt herunter und nutze im AVR die interne Referenz 
vom 1,1 Volt. Damit habe ich noch immer nicht die volle Auflösung, sehe 
aber besser aus als wenn ich ihn direkt gegen 5V-Referenz anklemme.

Die Skalierung ist 185mV/A, hinter dem Teiler sind das dann 74mV/Ampere. 
Gegen die 1,1V Referenz des AT328 gibt das rund 14mA pro Digit als 
Auflösung.

Wenn Dir das nicht reicht, suchst Du einen geeigneteren Baustein oder 
schiebst das Signal mit einem zusätzlichen OP hin - die Grundlage dazu 
liefert Dir im Datenblatt auf Seite 12 die Application 3.

Ein anderer Ansatz wäre, den ACS712 um 2,5V unter µC-Ground zu hängen, 
also den Offset analog weg zu kompensieren. Ändert nichts daran, dass Du 
bei 5V-AD-Referenz etwa 5mV/digit hast und damit die 185mV/A auch nur 
auf 27mA/digit aufgelöst bekommst.

von Michael B. (laberkopp)


Lesenswert?

Dirk schrieb:
> Jetzt interessiert mich der ganze Fall <0A aber nicht und eigentlich
> alles über 3A auch nicht. Gibt es da Schaltungstechnisch irgendwelche
> Möglichkeiten, die Auflösung in dem für mich interessanten Bereich zu
> vergrößeren?

Zumindest den zu messenden Strom umpolen.

Dann liefert der ACS712 nur noch 2.5V (0A) bis 0V (5A).

Und dann die Referenzspannung auf interne 2.56V zu stellen.

Dann müsste man noch die 0A kalibrieren, das kann m<n machen in dem man 
die Referenzspannung in Bezug zur Versorgungsspannung misst, und bei 
halber Spannung ist dann der 0-Wert.

Dann hast du wenigstens 600 für die 3A und nicht bloss 300.

von Manfred (Gast)


Lesenswert?

Michael B. schrieb:
> Dann liefert der ACS712 nur noch 2.5V (0A) bis 0V (5A).

leider nicht bis 0V:
Manfred schrieb:
> Die Skalierung ist 185mV/A,

von Dirk (Gast)


Lesenswert?

Die Idee finde ich gerade auch sehr geil!
Bei der 2,56V Referenz bekomme ich auf der Strecke 2,5V-0V ja schon fast 
die 1024 Schritte hin, nicht nur 512 (2,5V-5V bei 5Vref).
Damit ist die Auflösung effektiv ja schon verdoppelt, ohne 
Zusatzschaltung.

Danke euch!

von Εrnst B. (ernst)


Lesenswert?

Brauchst du die Galvanische Trennung, oder würde auch ein High-Side 
Shunt funktionieren?

=> ebay 272503170703, INA219

Würde sogar nebenbei noch die Spannung messen, falls relevant.

von Dennis K. (scarfaceno1)


Lesenswert?

Michael B. schrieb:
> Zumindest den zu messenden Strom umpolen.
>
> Dann liefert der ACS712 nur noch 2.5V (0A) bis 0V (5A).
>
> Und dann die Referenzspannung auf interne 2.56V zu stellen.

Die Idee finde ich auch gut.
Das eine Volt von 0A bis -5A kann man sich mit einer geeignetenOP 
Schaltung ja noch anpassen.

von Klaus (Gast)


Lesenswert?

Dirk schrieb:
> Bei der 2,56V Referenz bekomme ich auf der Strecke 2,5V-0V ja schon fast
> die 1024 Schritte hin, nicht nur 512 (2,5V-5V bei 5Vref).

Bei tausend Schritten ist deine Auflösung 1 Promille. Meinst du dieses 
Messsystem hat eine Genauigkeit von 1 Promille?

MfG Klaus

von Wolfgang (Gast)


Lesenswert?

Klaus schrieb:
> Meinst du dieses
> Messsystem hat eine Genauigkeit von 1 Promille?

Der ACS712 garantiert über den Gesamtbereich einen Fehler durch 
Nichtlinearität von 1.5%, verrät aber nicht, wie kalibrierfähig das ist.

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.