Forum: Mikrocontroller und Digitale Elektronik Millivolt messen mit Arduino Due


von Nils (Gast)


Lesenswert?

Moin Moin,

vermutlich ist die Frage schnell geklärt, aber ich habe dazu leider 
bisher nichts im Internet oder speziell hier dazu gefunden (vielleicht 
stelle ich mich auch nur blöd mit den Begriffen an). Ich arbeite mit 
einem Arduin Due, der ja mit 3,3 V läuft. Wenn man mit ihm ein analoges 
Spannungssignal eines Sensors empfängt, wird der Messbereich ja auf 1024 
Werte aufgeteilt, was bei 3,3 V etwa einer Genauigkeit von 3 mV 
entspricht. Nun würde der Sensor, den ich anbringen will, eine 
Kraftmessdose, bei dieser Versorgungsspannung nur ein Signal von 0 bis 9 
mV liefern. Gibt es eine Möglichkeit in Messbereich im Arduino zu ändern 
bzw. das mapping der Werte so anzupassen, dass er in diesem kleinen 
Bereich die Änderungen auflösen kann, also nur den Bereich 0 bis z.B. 20 
mV nimmt und den dann aufteilt in Intervalle? Oder ist die Hardware des 
Arduinos gar nicht dafür geeignet, sodass ich um einen (teuren) 
Messverstärker nicht herum komme?

Vielen Dank!

von Jim M. (turboj)


Lesenswert?

Nils schrieb:
> Oder ist die Hardware des
> Arduinos gar nicht dafür geeignet, sodass ich um einen (teuren)
> Messverstärker nicht herum komme?

So teuer sind doch Opamps nun auch wieder nicht, jedenfalls verglichen 
zu einem Arduino.

Außerdem scheint der µC im Due einen 12 Bit ADC zu besitzen, der auch 
noch eine 1:4 PGA besitzt. Könnte man ausprobieren, wird aber vermutlich 
nicht ausreichen.

von Manfred (Gast)


Lesenswert?


von Arduinoquäler (Gast)


Lesenswert?

Nils schrieb:
> Gibt es eine Möglichkeit in Messbereich im Arduino zu ändern
> bzw. das mapping der Werte so anzupassen

Ja. Speise Einfach eine Referenzspannung an Aref ein. Diese
Referenz stellt den möglichen Spannungsmessbereich deines
ADCs dar.

Dazu musst du beim Due allerdings eine Brücke (BR1) setzten/
umlegen und einen Widerstand (JR1) auslöten.

Näheres dazu findest du im Schaltplan des Reference Designs.

von U. M. (oeletronika)


Lesenswert?

Hallo,
es wäre sicher angebracht, mit einem OPV die Messspannung von max. ca. 
20mV um etwa den Faktor 100 zu verstärken und dann dieses Signal dem uC 
anzubieten.
Der OPV sollte einen kleinen Offset (max. ca. 100uV) und vor allem eine 
geringe Offsetdrift von weniger als ca. 1uV/K haben.
http://www.elektronik-kompendium.de/sites/slt/0210151.htm
Gruß Öletronika

von spess53 (Gast)


Lesenswert?

Hi

>Ja. Speise Einfach eine Referenzspannung an Aref ein. Diese
>Referenz stellt den möglichen Spannungsmessbereich deines
>ADCs dar.

Bei einer minimalen Referenzspannung von 2,4V(12Bit) oder 2V(10Bit) und 
einer Eingangsspannung von 0 bis 9mV ist der Vorschlag nicht unbedingt 
der Renner.

MfG Spess

von Arduinoquäler (Gast)


Lesenswert?

spess53 schrieb:
> ist der Vorschlag nicht unbedingt der Renner.

Stimmt. Hab isch nischd ins Dadenblatt geguggd.

.... isch fauler Sack.

von spess53 (Gast)


Lesenswert?

Hi

>Stimmt. Hab isch nischd ins Dadenblatt geguggd.

Überrascht mich bei der zumehmenden Ahnunglosigkeit hier im Forum nicht 
sonderlich.

MfG Spess

von chris_ (Gast)


Lesenswert?

Beim Arduino DUE kann man die Auflösung des AD-Wandlers mit folgender 
Funktion auf 12 Bit stellen:

https://www.arduino.cc/en/Reference/AnalogReadResolution

von Harald W. (wilhelms)


Lesenswert?

chris_ schrieb:
> Beim Arduino DUE kann man die Auflösung des AD-Wandlers mit folgender
> Funktion auf 12 Bit stellen:

Sind das denn dann "echte" 12Bit, oder nur gemittelte?

von m.n. (Gast)


Lesenswert?

Nils schrieb:
> Nun würde der Sensor, den ich anbringen will, eine
> Kraftmessdose, bei dieser Versorgungsspannung nur ein Signal von 0 bis 9
> mV liefern.

Gibt die Kraftmessdose ein Differenzsignal aus? Oder einfacher gefragt: 
hat sie 4 Anschlußdrähte?
Dann brauchst Du einen Instrumentenverstärker oder mehrere OPVs, um das 
Signal der Meßbrücke sinnvoll aufzubereiten. Ferner ist eine negative 
Versorgungsspannung bei nur 3,3 V meist von Vorteil.

Zur Orientierung sieh Dir INA125 oder AD620 an.

von Wolfgang (Gast)


Lesenswert?

Harald W. schrieb:
> Sind das denn dann "echte" 12Bit, oder nur gemittelte?

Bei solchen Fragen hilft es wie so oft, einen Blick in das Datenblatt 
des Prozessors zu tun. Wenn der über einen 12Bit-ADC verfügt, stehen die 
Chancen nicht schlecht, dass die Arduino Funktionen den auch nutzen ;-)

Gleich Kapitel 1 auf Seite 2 liest man dort:
"The peripheral set includes ..., a 12-bit ADC and ..."

Was mag das wohl bedeuten?

Und die Arduino Bibliotheksfunktion analogReadResolution() sagt 
ebenfalls, dass das Board (und nicht die Arduino analogread() 
Funktion) über damit echte 12Bit-Fähigkeit verfügt.
("The Due and the Zero have 12-bit ADC capabilities")
https://www.arduino.cc/en/Reference/AnalogReadResolution

von chris_ (Gast)


Lesenswert?

>Bei solchen Fragen hilft es wie so oft, einen Blick in das Datenblatt
>des Prozessors zu tun.

Oder einfach die Beschreibung des Links lesen, den ich zur 
AnalogReadResolution gepostet habe.
Aber gut, wer will schon Dokumentationen lesen, selbst wenn sie nur 
knapp eine Seite lang sind.

von chris_ (Gast)


Lesenswert?

Wolfgang schrieb
>...
Ah, jetzt war ich zu schnell mit schreiben ... Du hattest den Link ja 
erwähnt.

von Simpel (Gast)


Lesenswert?

Du schreibst: Bei dieser Spannung(!) wird die KMD nur eine Spannung bis 
9mV liefern...

bis zu welcher max. Spannung kann die KMD denn betrieben werden? Diesen 
Maximalbereich zu erreichen, wäre die angebrachte Lösung, um eine hohe 
Genauigkeit und hohen Störabstand zu bekommen. StepUp für deren 
Versorgung einsetzen. Die 9mV bis zum Gehtnichtmehr zu spreizen ist 
nicht der Weg.

von Harald W. (wilhelms)


Lesenswert?

chris_ schrieb:

>>Bei solchen Fragen hilft es wie so oft, einen Blick in das Datenblatt
>>des Prozessors zu tun.
>
> Oder einfach die Beschreibung des Links lesen, den ich zur
> AnalogReadResolution gepostet habe.
> Aber gut, wer will schon Dokumentationen lesen, selbst wenn sie nur
> knapp eine Seite lang sind.

Nun, die Arduino-Schiene interessiert mich eher weniger.
Da wollte ich nur zur Klärung einer solchen Teilfrage
nicht gleich ellenlange Datenblätter "durchkämmen".

: Bearbeitet durch User
von chris_ (Gast)


Lesenswert?

>Nun, die Arduino-Schiene interessiert mich eher weniger.
>Da wollte ich nur zur Klärung einer solchen Teilfrage
>nicht gleich ellenlange Datenblätter "durchkämmen".

Ähm, also es gibt eigentlich die zwei Möglichkeiten: Entweder einfache 
und gut beschriebene Arduino-Funktionen und Libraries nutzen und das 
wenige durchlesen und mit den gegebenen Beschränkungen jeder Library 
leben.

Oder die Treiber des Prozessors selber schreiben um die optimale 
Performance zu erreichen und ellenlange Datenblätter ducharbeiten.

Insofern scheint mir Deine Aussage etwas widersprüchlich.

von Harald W. (wilhelms)


Lesenswert?

chris_ schrieb:

>>Nun, die Arduino-Schiene interessiert mich eher weniger.

> Insofern scheint mir Deine Aussage etwas widersprüchlich.

Ich will selbst garnichts mit Arduino bauen. Das Interesse
an Arduino dient rein der Fortbildung, um mein elektronisches
Grundlagenwissen zu erweitern.

von Wolfgang (Gast)


Lesenswert?

Harald W. schrieb:
> Nun, die Arduino-Schiene interessiert mich eher weniger.
> Da wollte ich nur zur Klärung einer solchen Teilfrage
> nicht gleich ellenlange Datenblätter "durchkämmen".

Die Suchfunktion im Acrobat-Reader funktioniert bei manchen Dokumenten 
;-)
Da muss man die weit über 1000 Seiten nicht von hand durchflöhen. Selbst 
ein Blick auf die Seite 1 reicht da schon ;-)

Schon da steht: "16-channel 12-bit 1Msps ADC with differential input 
mode and programmable gain stage"

Zu Details über den integrierten PGA muss man dann allerdings schon 
tiefer einsteigen und findet im Kapitel 44.6 (Functional Description), 
dass der das Signal maximal um einen Faktor 4 verstärken kann, was einen 
bei 9mV Signal nicht so wirklich weiter bringt.

von Manfred (Gast)


Lesenswert?

Harald W. schrieb:
> Beim Arduino DUE
> Sind das denn dann "echte" 12Bit, oder nur gemittelte?

Laut Schaltplan ein ATSAM3X8EA, also aus der ARMleuchter Familie.

"16-channel 12-bit 1Msps ADC with differential input mode and 
programmable gain stage"

von Joe F. (easylife)


Lesenswert?

Einen Stepup dazu zu verwenden, eine feste (40V) Spannung zu erzeugen, 
um dann einen Teil dieser Spannung dann in einem LDO zu vernichten ist 
doch ein sehr unsinniges Konzept.
Die 3.4V sind ja auch nur ein Richtwert. Evtl. stellen sich bei deinen 
LEDs die 700mA bereits bei 3.2V oder sogar weniger ein.
Dann hast du eine benötigte LED Spannung von sagen wir mal 32V, fütterst 
vor dem LDO 40V rein. Dein Widerstand vernichtet noch ca. 1.2V*0.7A, 
bleiben am LDO 6.8V*0.7A, also fast 5W hängen, die als Wärme abgeleitet 
werden müssen.

Man kann den Step-Up auch durchaus gleich so betreiben, dass er die 
Spannung an den benötigten Strom anpasst (current mode). Das machen die 
üblichen LED Regler. Damit fällt der LDO weg.

Ich würde dir als Anfänger raten, erstmal mit einem kleineren Projekt 
anzufangen. Eine LED Regelung in dieser Leistungsklasse ist absolut 
nichts für Anfänger.
Wie schon erwähnt, werden sich deine teuren Bauteile oder LEDs innerhalb 
kürzester Zeit mit spektakulären Licht und Raucheffekten verabschieden.

Was spricht dagegen zunächst einmal erste Erfahrungen mit einem 20mA 
Regler zu machen, der 2x 10 normale (also keine 3W) LEDs als String 
versorgt?
Wenn du das im Griff hast, kannst du dich an die höhere Leistungsklasse 
wagen.

: Bearbeitet durch User
von Joe F. (easylife)


Lesenswert?

Sorry, mein letzter Beitrag ist im falschen Thread gelandet, und ich 
kann ihn auch aus irgendeinem Grund nicht mehr löschen. Bitte einfach 
ignorieren.

von Harald (Gast)


Lesenswert?

Vielleicht einfach einen HX711 ADC dazwischenschalten? Der kann 
differentiell und hat 24-bit Auflösung. Kostet sehr sehr wenig und für 
Arduino (Due) sollte es tonnenweise Software geben.

Suche mal nach HX711

von Mitlesa (Gast)


Lesenswert?

Harald schrieb:
> Vielleicht einfach einen HX711 ADC dazwischenschalten?

Das überfordert bereits die meisten Arduino User.

Und 24 Bit braucht man in diesem Zusammenhang
sicherlich nicht.

von Marco H. (damarco)


Lesenswert?

Das macht keinen Sinn. Man könnte den Gain nach oben nehmen, da dieser 
einen PGA besitzt. Allerdings ist dieser auf den Faktor 4 Begrenzt.

Die Auflösung wäre immer noch sehr bescheiden und die Stabilität 
ebenfalls.

Wie angesprochen ist das Messsignal mit einen OPV(Messverstärker). 
anzupassen. Maßnahmen zur Temperatur Kompensation etc. wären bei diesen 
Bereich ebenfalls sehr angebracht.

Mich würde es nicht wundern wenn es zu dem Sensor entsprechende 
Messverstärker gibt.  0..10V oder 4..20mA man muss der Rad nicht neu 
erfinden.

von Wolfgang (Gast)


Lesenswert?

Marco H. schrieb:
> Wie angesprochen ist das Messsignal mit einen OPV(Messverstärker).
> anzupassen.

Besser wäre wohl ein InstAmp (Instrumentation amplifier) mit 
Elektrometereingängen zur lastfreien Messung an der Brücke.

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Wolfgang schrieb:
> Besser wäre wohl ein InstAmp (Instrumentation amplifier)
das ist wahrscheinlich so.
Der Fragesteller hat leider wieder mal keinerlei Angaben dazu gemacht, 
wie die Kraftmessdose konkret arbeitet. Dass es eine Messbrücke ist, 
scheint mir auch wahrscheinlich zu sein.

> Elektrometereingängen zur lastfreien Messung an der Brücke.
Das ist vermutlich eher unnötig.
Solche Brücken haben meist einen Innenwiderstand im Bereich von paar 
kOhm bis paar 10 kOhm. Da reichen auch normale OPV oder 
Instrument-Verstärker mit bipolaren Eingängen.
Fehler entstehen hier nicht nur durch den Bias, sondern auch durch 
Offsetdrift. Elektrometerverstärker haben diesbezüglich aber oft 
schlechtere Eigenschaften als bipolare Präzisionsverstärker.
Für Laien ist es oft schwer, den richtigen OPV zu benennen, weil eben 
verschiedene Parameter beachtet werden müssen.
Gruß Öletronika

: Bearbeitet durch User
von Nils (Gast)


Lesenswert?

Simpel schrieb:
> bis zu welcher max. Spannung kann die KMD denn betrieben werden? Diesen
> Maximalbereich zu erreichen, wäre die angebrachte Lösung, um eine hohe
> Genauigkeit und hohen Störabstand zu bekommen. StepUp für deren
> Versorgung einsetzen. Die 9mV bis zum Gehtnichtmehr zu spreizen ist
> nicht der Weg.

Der Sensor kann bis 15V Speisespannung betrieben werden, was bei einem 
Nennkennwert von 3mV/V dann 45mV bei Nennlast bedeutet. Ändern leider an 
der Größenordnung des Signals nicht viel :-/ Aber das mit dem StepUp 
Wandler ist ein guter Tipp, danke!

m.n. schrieb:
> ibt die Kraftmessdose ein Differenzsignal aus? Oder einfacher gefragt:
> hat sie 4 Anschlußdrähte?
> Dann brauchst Du einen Instrumentenverstärker oder mehrere OPVs, um das
> Signal der Meßbrücke sinnvoll aufzubereiten. Ferner ist eine negative
> Versorgungsspannung bei nur 3,3 V meist von Vorteil.
>
> Zur Orientierung sieh Dir INA125 oder AD620 an.

hier mal ein Link zum Sensor: 
http://www.lorenz-messtechnik.de/pdfdatbl/waegung/080734_zfa.pdf
also ja.
Was genau meinst mit dem Vorteil der negativen Versorgungsspannung?

Vielen Dank!

von hp-freund (Gast)


Lesenswert?


von hp-freund (Gast)


Lesenswert?

Und noch das Datenblatt für die Berechnung der Verstärkung:

http://www.ti.com/lit/ds/symlink/ina122.pdf

von Wolfgang (Gast)


Lesenswert?

U. M. schrieb:
>> Elektrometereingängen zur lastfreien Messung an der Brücke.
> Das ist vermutlich eher unnötig.

Ein Instrumentenverstärker hätte das aber, ohne dass man sich weitere 
Gedanken darum machen müsste ;-)

von m.n. (Gast)


Lesenswert?

U. M. schrieb:
> Solche Brücken haben meist einen Innenwiderstand im Bereich von paar
> kOhm bis paar 10 kOhm.

Nein, 350 Ohm wie es auch hier der Fall ist ;-)

Nils schrieb:
> Was genau meinst mit dem Vorteil der negativen Versorgungsspannung?

Da die Sensoren zumeist Druck- und Zugkräfte zulassen, kann man die 
Schaltung so auslegen, daß ohne ext. Kraft 0 V ausgegeben werden. Je 
nach Kraft werden dann postive oder negative Ausgangsspannungen 
ausgegeben.

von Marco H. (damarco)


Lesenswert?

http://www.lorenz-messtechnik.de/deutsch/produkte/interfaces/lmv.php

Vom selben Anbieter wie der Sensor, manchmal frage ich mich im ernst wie 
weit der "Geiz ist geil " gehen muss.

: Bearbeitet durch User
von m.n. (Gast)


Lesenswert?

Marco H. schrieb:
> http://www.lorenz-messtechnik.de/deutsch/produkte/interfaces/lmv.php
>
> Vom selben Anbieter wie der Sensor, manchmal frage ich mich im ernst wie
> weit der "Geiz ist geil " gehen muss.

Genau diese Teile mag ich nicht:
Der 0-Punkt liegt irgendwo und die +/- Endspannungen ebenso. Ferner ist 
es nicht mehr möglich, die Kraft ratiometrisch zu messen und damit eine 
Hauptfehlerquelle auszuschließen.
Ein AD620 ist mir da die bessere Lösung.

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Wolfgang schrieb:
> Ein Instrumentenverstärker hätte das aber, ohne dass man sich weitere
> Gedanken darum machen müsste ;-)
Jetzt weiß ich erst, was du meinst.
Der normale Spannungsfolger wird im Volksmund auch so genannt.

Mit normalen bipolaren Eingängen gängiger Instumentverstärker liegt man 
aber bei den Biasströmen einige Größenordnungen oberhalb von echten 
"Elektrometerverstärkern".
Ich verstehe unter Elektrometerverstärker aber eher so etwas:
http://www.ld-didactic.de/documents/en-US/GA/GA/5/532/53214de.pdf
Gruß Öletronika

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.