Umrechnen von ADC Wert zu Einheit

Gast #3627238
Lesenswert?

Hallo Forum,

ich bin neu mit dem STM32 Discovery F4 zugange.

Ich versuche gerade einen Temperatur-Sensor (0-250°C, 4 bis 20mA) über 
einen Widerstand auszulesen.

Der ADC liefert mir ja für 12bit = 4096.

3,256V ist die Spannung welche am ADC hängt (Vref). So ergibt sich:


Ue = Xd * Uref / 2^n


Ue = ADC Spannung
Xd = ADCWert
Uref = Vref = 3,256
2^n = 4096


Dann hab ich doch bspw beim ADC wert 512 :

512 * 3,256V
-------------     = 0,407V
4096


Wenn ich jetzt die Temperatur haben möchte vom mA Strom Signal des 
Sensor:

                0°C             250°C
ADC     0mA    4mA  10mA  20mA

ADC1  0,000V  0,653V  1,608V  3,206V
ADC2  0,000V  0,618V  1,538V  3,066V


dann muss ich doch so normieren:

y = (y1-y0) / (x1-x0) * (x-x0) + y0

hierbei ist

x: =    aktueller Wert in V
x0:=   0,653V   = untergrenze ADC = 4mA
y0:=   0        = untergrenze Einheit = 0,0 °C
x1:=   3,206V   = obegrenze ADC = 20mA
y1:=   250      = obegrenze Einheit = 250,0°C


y:=   Sklaiertes Ergebnis


Beispiel 10mA entspricht 0,653V  (müsste 125°C sein theoretisch):


(250-0)
-----------------------------------------
(3,206V-0,653V) * (1,608V-0,653V) + 0



250
-------------------
2,553 *  0,955   +0



 = 102,538°C

es kommen keine 125°C raus.
Wo ist denn mein Fehler? Ist die Formel so wie ich dachte falsch oder 
rechnet man anders die einheiten raus?




Viele Grüße
Tristan
Gast #3627244
Lesenswert?

oops!

4mA = 0°C
10mA = 93,75°C
12mA = 125°C
20mA = 250°C



                    Strom-gemessen(10mA) -4mA
Temperatur(°C) =    -------------------------- * 250(°C) max Wert des 
Sensors
                            16mA

= 93,75°C    ... also ist die abweichung 9°C  zu den errechneten 102,x°C 
oben.


...
Gast #3627248
Lesenswert?

Hi.

Her past doch was nicht zusammen:

≥ ADC 0mA 4mA 10mA 20mA
≥ ADC1 0,000V 0,653V 1,608V 3,206V
≥ ADC2 0,000V 0,618V 1,538V 3,066V

Beim fünffachen Strom solltest du doch die fünffache Spannung bekommen, 
das ist aber nicht der Fall. Irgend was ist da ziemlich nichtlinear, 
deine Rechnung setzt aber Linearität voraus.

Grüße
Flo

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren