Archiv verlassen und diese Seite im Standarddesign anzeigen : Temperatursensor
runner02
07.12.2010, 17:26
So, da der ADC meines ATtiny13's endlich klappt, geht es mit Riesenschritten weiter zum nächsten Ziel:
Temperatursensor.
Ich habe mir einen "Temperatursensor KTY84-130" besorgt,
bei 19°C habe ich 590 Ohm gemessen, bei 23°C 633 Ohm.
Laut Angabe:
-40C -> 359 Ohm
120°C -> 1.172 Ohm
Somit käme ich auf 10,75 Ohm/°C bzw. 5,04 Ohm/°C. (0,093°C/Ohm oder 0,1968 °C / Ohm)
Jetzt würde ich gerne 2 Kiloohm als festen Widerstand, und den temp-Abhängigen Widerstand (xr) als Spannungsteiler nehmen, und die Schaltung zum Laufen bringen.
Aber ich komme auf keine Formel, die die wirkliche Temperatur berechnet.
Probiert hätte ich es mit
temp=0,093°C/Ohm * xr
Dabei kommt aber nichts ordentliches raus.
Beispielsweise bei xr=500 Ohm käme 46,5°C raus.
Nehme ich das -40 als Starttwert, wär es schon realistischer.
Aber ich kann doch nicht -40 einfach so dazuzählen, nur weil das Ergebnis schön ist??
hardware.bas
07.12.2010, 19:14
Bei Analogsensoren müssen meistens die Kennlinien umgerechnet und
die Potentiale verschoben werden, damit man noch einigermassen mit
der Auflösung klarkommt. Ich selber hatte das Problem, musste negative
Spannungen (Fusspunkt) bereitstellen und mit OPV arbeiten, dabei war
dieser Sensor sogar noch ziemlich linear. Ich weiss, dass hilft dir jetzt nicht
weiter, jedoch kann ich nur empfehlen, in Verbindung mit einem AVR
einen digitalen Temperatursensor zu nehmen, zumal es in BASCOM
perfekte Befehle zum Auslesen dafür gibt. Auch ist dann die
weitere Beschaltung mimimal. Ich habe gute Erfahrungen mit dem
DS1820 gemacht... auch wenn ich heute (siehe Beitrag) selber ein kleines
spezielles Problem hatte, wobei ich mir jedoch ziemlich sicher bin, hier
von der kompetenten Gemeinde geholfen zu werden. VG Micha
Besserwessi
07.12.2010, 21:18
Die KTY Sensoren sind von sich aus nicht besonders linear. Erst mit dem richtigen Widerstand in Reihe wird da mit der Linearität relativ gut. Für eine Sensor mit ca. 600 Ohm bei 20 Grad sollte der passende Widerstand etwa 1,5-1,8 K sein, falls es das gleiche Material wird bei den etwa hochohmigeren Sensoren ist.
Ohne extra Verstärkerschaltung ist die Spannung die der AD wandler misst nicht direkt Proportional zur Temperatur in Grad C (auch nicht in K). Die Formel wird also schon etwa so aussehen:
Temp = a * ( Uadc - b)
mit 2 Konstanten a und b, die man entweder aus den Widerstandswerten berechnet, oder halt aus 2 Kalibriermessungen bestimmt.
runner02
08.12.2010, 13:40
Die KTY Sensoren sind von sich aus nicht besonders linear.
Ich hatte mir schon vorgestellt, dass sie linaear genug sind, um die Temperatur auf wenige Grad genau zu messen...
Aber mit meiner lineraren Formel steh ich da an...
Da kommt alles mögliche raus...
Temp = a * ( Uadc - b)
Ah, danke..
Und nun baue ich die Schaltung und messe sie draußen bei -1 Grad und drinnen bei 20°C...
Aber bei 2 Variablen bräuchte ich einen dritten Wert auch noch...
Die KTY Sensoren sind von sich aus nicht besonders linear.
... und haben zudem eine relativ große Exemplarstreuung.
Das bedeutet 2 relativ gleiche KTY zu finden ist nicht einfach.
Wenn Du mit diesen Sensoren tatsächlich auf wenige °C genaue Werte haben willst, musst Du kalibrieren und die ermittelten Werte für Offset und Steilheit in deinem Programm mit integrieren.
Ich speicher diese Werte im EEPROM ab und verpass der Software eine Kalibrierungsroutine, wo dann diese Werte ermittelt werden.
Wenn Du diesen ganzen Problemen aus dem Weg gehen willst nimm gleich einen digitalen Temperatursensor mit ausreichender Genauigkeit, wie dem DS1820 oder den SHT 11.
( Gibt da sicher ne Menge Alternativen - Der SHT 11 ist ja eigentlich ein Feuchte Sensor-, die 2 waren mir halt eben geläufig ! )
runner02
10.12.2010, 17:54
Ok, danke. Bin gerade am Messen verschiedener Temperaturen, evt. kann ich eine Parabel herauslesen... Wenn nicht, dann besorg ich mir so einen Sensor...
Der DS1820 kommuniziert doch, wie ich herauslesen konnte, mit dem Chip via UART....
Nur leider habe ich keine Erfahrungen damit gemacht...
Gibt es nicht primitivere ausgabe-Chips à la 1mV => 0,1°C (also solche, die den ADC des AVR brauchen) ??
Der DS1820 kommuniziert doch, wie ich herauslesen konnte, mit dem Chip via UART....
Nur leider habe ich keine Erfahrungen damit gemacht...
Nicht wirklich.
Das ist das sogenannte 1wire Protokoll.
Die meisten C-Compiler haben aber eine fertige Library für dieses Protokoll.
Man kann auch mehrere dieser 1wire Sensoren parallel schalten, weil jeder eine individuelle Seriennummer hat und nur der Sensor antwortet, dessen Adresse angewählt wurde.
Der Nachteil ist, das man die Sensoren den Messstellen zuweisen muß, wenn man mehrere Sensoren verwendet.
Gibt es nicht primitivere ausgabe-Chips à la 1mV => 0,1°C (also solche, die den ADC des AVR brauchen) ??
Doch, natürlich gibts die.
Guck mal nach LM335 ( LM135, LM 235 ).
Die machen 10mV/K.
Der Schwachpunkt bei dieser Methode ist, das die Genauigkeit dann von der Referenzquelle des A/D Wandlers des Microcontrollers abhängig ist.
Nimmst Du da eine hochgenaue ( externe ) Referenzquelle, sollte eine gute absolute Genauigkeit auch ohne Kalibrierung möglich sein.
Eine weitere Methode wäre Temperatursensoren mit Frequenz bzw. PWM Ausgang zu verwenden - Auch die gibt es, Typ hab ich jetzt grad keinen parat.
Frequenzen kann ein Microcontroller wesentlich genauer messen ( ICP !? ) als Gleichspannungen ( = A/D Wandler ).
Hierbei ist die Genauigkeit deiner Messung vom Quarz, der Qualität Deiner Auswerteroutine und der Genauigkeit deines Temperatursensors abhängig.
Viel Spaß bei Experimentieren...
runner02
19.12.2010, 13:40
Danke!
Ich besorge mir dann mal den LM235 ( oder LM135, die beiden gehen etwas über 100... Notfalls auch den LM 335 ).
Und die 10mV/K sind dann in diesem Wertebereich?
Also ich meine: 0,001 V/K * 250 K = 0,25V
Also ich lese 250mV aus, und dann ist es 250K?
Oder muss ich das noch eichen, im da der untere Temperaturbereich nicht vollständig linear ist?
Mfg
runner02
22.12.2010, 10:40
Im datasheet steht eigentlich keine Spannung drinnen, nur dass der LM335 (den ich mir besorgt habe) bis zu 5mA aufnimmt....
Ich nehme mal an 3-5 V sollten dem Sensor genügen??
runner02
26.12.2010, 18:48
Also die lineare Formel für meinen Temperaturwiderstand steht, allerdings habe ich folgendes Problem:
Im Zimmer hat es ca. 21°C.
Nun zeigt der Sensor aber manchmal 24, 19 oder 16 an, das wäre ja noch brauchbar. Wenn er dann aber 12,9 und 31 °C liefert, dann ist das Schmarrn.
Da die linaeare Formel eigentlich die korrekten Ergebnisse liefert, nehme ich mal an, das ist das berühmt-berüchtigte Rauschen des ADCs??
(Momentan arbeite ich am LM335, bei 21° zeigt er 1992mV an - poste dazu wieder, wenn es dabei Probleme gibt)
Besserwessi
26.12.2010, 21:23
Bei den nur 10 Bit Auflösung ist Rauschen normal kein Problem. Ehe halt man Problem durch Einkoppelung von Störungen, wie 50 Hz.
runner02
27.12.2010, 18:50
Bei den nur 10 Bit Auflösung ist Rauschen normal kein Problem. Ehe halt man Problem durch Einkoppelung von Störungen, wie 50 Hz.
Danke, das ist schon mal gut zu wissen.
Das Programm ist ja vorerst mal sehr minimalistisch und es sind keine exterenen Störquellen angeschlossen...
Aber wie erklären sich dann die schwankungen? Kann ich dagegen was machen? Wenn es nicht das Rauschen ist, hilft ein Kondensator?
Besserwessi
27.12.2010, 20:27
Der erste Punkt Wegen der Schwankungen wäre es die Schaltung und das Programm auf grobe Fehler zu untersuchen. D.h.
- stimmt der Teiler für den AD-takt: so etwa 50 - 250 kHz sollte es sein
- genug ( > 100 µs) Zeit nach dem Einschalten der Referenz, wenn die interne Ref. genutz wird ?
- sind Abblockkondensatoren an GND-VCC und AGND-AVCC vorhanden ?
- sind GND und AGND sovie VCC und VCC angeschlossen ?
- Stimmt die Ref. Spannung (unter 2 V bzw. 1 V) sind je nach µC nicht gut
Wenn der Sensor extern per langem Kabel verbunden ist, kann ein Kondensator (ca. 100 nF) parallel zum Sensor helfen HF Einkopplungen abzuschwächen. Gegen 50 Hz hilft das aber nicht viel.
Wenn es 50 Hz Einkopplungen sind, hilft es ein paar (z.B: 100) Werte zu mitteln, am besten über eine Zeit die ein vielfaches von 20 ms ist.
Als test für die Art der Störungen wäre ein Testprogramm geeigent, dass erstmal etwa 100 Werte in RAM schreibt, und die dann zum PC sendet. An den Werten kann man dann meist sehen was man für Störungen hat.
runner02
27.12.2010, 21:45
//----------------------------------------------------------------------
#define F_CPU 3686400 // Taktfrequenz des myAVR-Boards
#include <avr\io.h> // AVR Register und Konstantendefinitionen
#include <inttypes.h>
//----------------------------------------------------------------------
uint16_t readADC(uint8_t channel)
{
uint8_t i;
uint16_t result = 0;
ADCSRA = (1<<ADEN)|(1<<ADPS2)|(1<<ADPS1); //ADEN = ADC Enable
ADMUX = channel; //Kanal wählen; REFs0+1 -> interne Referenz 2,56V verwenden, REFS1 gibt es bei Attiny13 nicht
//Dummy-Readout (unten), misst 1* Ergebnis, wird nicht gespeichert
ADCSRA = ADCSRA | (1<<ADSC); // Schaltet bei ADCSRA das ADSC-Bit ein, d.h. Messung starten
while(ADCSRA & (1<<ADSC)); //Warte bis Messvorgang vorbei ist
// Nun 3* Spannung auslesen, Durchschnittswert ausrechnen
for (i=0; i<3; i++)
{
// Schleife, startet 3*
ADCSRA = ADCSRA |(1<<ADSC); // Einmal messen
while(ADCSRA & (1<<ADSC)); //Warte bis Messung vorbei
result = result + ADCW; // Resultate zusammenzählen (R1+R2+R3) -> später alles /3
}
ADCSRA = ADCSRA & (~(1<<ADEN)); //ADC wieder deaktivieren
result=result/3; // Durchschnittswert
return result;
}
main ()
{
int spannung, einer,zehner, komma, temperatur=0;
DDRB=0b00001111;
while (true)
{
PORTB=PORTB|(1<<PB1);
waitMs(50);
PORTB=PORTB&(~(1<<PB1));
waitMs(50);
uint16_t result = readADC(2);
spannung=(result*2978)/100;
temperatur=(spannung-20000);
zehner=(temperatur)/100;
einer=(temperatur-100*zehner)/10;
komma=(temperatur-100*zehner-10*einer);
for (int k=0;k<zehner;k++)
{
PORTB=PORTB|(1<<PB2);
waitMs(100);
PORTB=PORTB&(~(1<<PB2));
waitMs(100);
}
for (int h=0;h<einer;h++)
{
PORTB=PORTB|(1<<PB1);
waitMs(100);
PORTB=PORTB&(~(1<<PB1));
waitMs(100);
}
for (int g=0;g<komma;g++)
{
PORTB=PORTB|(1<<PB0);
waitMs(100);
PORTB=PORTB&(~(1<<PB0));
waitMs(100);
}
waitMs(1100);
}
return 0;
}
Das ist der Code meines LM335... Zuerst habe ich nur den ADC eingelesn, das ging prima. Aber dann soll er es in Temperatur umrechnen
(Wenn Spannung = 2019mV, dann sind es 19 °C also d=-2000)
Und jetzt macht er nur den ersten Blink-Befehl in der while schleife, dann wartet er und macht ihn wieder....
Der erste Punkt Wegen der Schwankungen wäre es die Schaltung und das Programm auf grobe Fehler zu untersuchen. D.h.
- stimmt der Teiler für den AD-takt: so etwa 50 - 250 kHz sollte es sein
- genug ( > 100 µs) Zeit nach dem Einschalten der Referenz, wenn die interne Ref. genutz wird ?
- sind Abblockkondensatoren an GND-VCC und AGND-AVCC vorhanden ?
- sind GND und AGND sovie VCC und VCC angeschlossen ?
- Stimmt die Ref. Spannung (unter 2 V bzw. 1 V) sind je nach µC nicht gut
Wenn der Sensor extern per langem Kabel verbunden ist, kann ein Kondensator (ca. 100 nF) parallel zum Sensor helfen HF Einkopplungen abzuschwächen. Gegen 50 Hz hilft das aber nicht viel.
Wenn es 50 Hz Einkopplungen sind, hilft es ein paar (z.B: 100) Werte zu mitteln, am besten über eine Zeit die ein vielfaches von 20 ms ist.
Teiler habe ich keine Ahnung...
Muss ich gleich mal nachschauen, aber da er aus einem Demoprogramm stammt...
Nachdem ixch die interne Referenz eingeschaltet habe, wartet er nicht, sondern startet gleich. Allerdings ist dies eine Dummy-Messung.
Das passt dann doch?
AVCC gibt es beim ATtiny13 gar nicht. Kondensator hängt keiner dran... Soll ich zwischen VCC und GND einen Keramikkondensator einbauen?
Referenz ist intern 1,1V beim Widerstandsmesser, das solte also stimmen
Mit einem längerem Kabel ist er übrigens auch nicht verbunden....
Als test für die Art der Störungen wäre ein Testprogramm geeigent, dass erstmal etwa 100 Werte in RAM schreibt, und die dann zum PC sendet. An den Werten kann man dann meist sehen was man für Störungen hat.
Leider beherrsche ich noch kein UART, das geht somit erst später :(
Besserwessi
27.12.2010, 22:45
Beim Tiny13 erübrigt sich der Kondensator an AVCC natürlich. Der Kondensator von VCC nach GND, auf kurzen Wege dicht am IC sollte schon sein. Nicht nur wegen des AD-wandler, auch schon wegen Funkstörungen.
Der Teiler wird über ADPS0...ADPS4 eingestellt. Im Code ist ein Teiler von 6 eingestellt. Das ist etwa wenig - besser ein Wert von etwa 20, das sollte aber nur etwas mehr rauschen ergeben.
In der Zeile:
" spannung=(result*2978)/100; "
kann es zu einem Überlauf kommen. Result*2978 passt nicht mehr unbedingt in eine integer Zahl. Da sollte man das Abziehen aus der Nächsten Zeile Vorziehen, oder mit Longint Zahlen rechnen.
runner02
28.12.2010, 12:25
Im Code ist ein Teiler von 6 eingestellt. Das ist etwa wenig - besser ein Wert von etwa 20, das sollte aber nur etwas mehr rauschen ergeben.
Also 6 ergibt mehr Rauschen als 20 oder umgekehert?
Beim Tiny13 erübrigt sich der Kondensator an AVCC natürlich. Der Kondensator von VCC nach GND, auf kurzen Wege dicht am IC sollte schon sein. Nicht nur wegen des AD-wandler, auch schon wegen Funkstörungen.
Das kann ich machen. Was für einen würdest du denn da empfehlen (Farad-mäßig)?
In der Zeile:
" spannung=(result*2978)/100; "
kann es zu einem Überlauf kommen. Result*2978 passt nicht mehr unbedingt in eine integer Zahl. Da sollte man das Abziehen aus der Nächsten Zeile Vorziehen, oder mit Longint Zahlen rechnen.
19 Grad C sind schon 678 ADC.
Kommt es da schon zum Überlauf??
Danke vielmals, da wär ich ja nie draufgekommen =D>
Naja, das Abziehen kann ich ja kaum vorziehen, denn dabei geht es ja darum, Kommazahlen zu screiben mit Integer. Später dann wieder durch 10^x und fertig :)
Besserwessi
28.12.2010, 14:54
678*2978 sind schon deutlich mehr als 32767, das ist die maximale zahl die in die 16 Bit Integer rein passt. Da hat man also schon längst einen Überlauf. Selbst wenn man den Faktor 4 raus kürzt reicht es nicht.
Das Abziehen kann man schon vorziehen, indem an gleich eine Formel für die Temperatur aus den AD werten berechnet als
Temp = (AD_wert - A) * B
mit konstanten Werten A und B. Man kann da in der Regel auch gleich auf das Teilen Verzichten und B entsprechend passend Berechnen.
Der einfache Weg ist es natürlich einfach auf longint als Datentyp auszuweichen. Da reicht es schon wenn man
statt (result*2978)/100; einfach (result*2978L)/100; schreibt. Die Rechnung wird dann mit 32 Bit, ausgeführt.
Der Teiler 20 für den AD Takt gibt etwas weniger Rauschen. Der alte Teiler von 6 ist aber noch nicht so schlimm.
Der Abblockkondensator ist typischerweise 100 nF. Zur Not tun es auch 10 nF als Kondensator, wenn da noch ein Elko mit z.B. 10 µF in der Nähe ist.
runner02
29.12.2010, 20:31
habe einen 104-Kondensator gefunden, der müsstge ideal sien.
Und in der Tat, das LM335 springt nicht herum....
Allerding fürchte ich, das die Auflösung zu gering ist: ADC 673 = -4,5°C
ADC 678 = 19°C.
einfach (result*2978L)/100;
Klappt wunderbar, danke ;)
Besserwessi
29.12.2010, 22:23
Bei der Einstellung zum AD-Takt hatte ich einen Fehler drin. Die alte Einstellung mit ADPS1/ADPS2 = 1 gibt schon einen Teiler von 64. Das ist so OK.
Wenn der LM335 10 mV/K hat, kommt man wohl nicht mehr mit der intern 1,1 V ref. aus. Mit Vcc=5V als Referenz sollte das für etwa 5 mV Auflösung oder etwa 0,5 C reichen.
Für etwas mehr Auflösung, aber nicht unbedingt Genauigkeit, kann Oversampling nutzen: den AD nicht nur 3 mal, sondern z.B. 64 mal auslesen und dann aber nicht durch 64 Teilen, sondern nur durch 16. Das Ergebnis ist dann eine Zahl zwischen 0 und 4096, so als hätte der AD Wandler 12 Bit Auflösung. Ein Voraussetzung ist dabei, dass der AD Wandler gerade keine immer Konstanten werte ausgibt, sondern schon etwas Schwankungen zeigt - ggf. kann man die Schwankungen sogar absichtlich hinzu addieren.
runner02
31.12.2010, 15:46
Wenn der LM335 10 mV/K hat, kommt man wohl nicht mehr mit der intern 1,1 V ref. aus.
Darum musste ich auch auf Versorgungsspannung (3,05V, 2 Batterien) zurückgreifen. Mit eben 4°C oder so Auflösung.
Mit 5V käme ich auf 0,5 °C Auflösung? Das wäre ja super!
Allerdings - ob der Sprung von 3V auf 5V so viel ausmacht?
Ich probiers einfach mal.
Für etwas mehr Auflösung, aber nicht unbedingt Genauigkeit, kann Oversampling nutzen: den AD nicht nur 3 mal, sondern z.B. 64 mal auslesen und dann aber nicht durch 64 Teilen, sondern nur durch 16. Das Ergebnis ist dann eine Zahl zwischen 0 und 4096, so als hätte der AD Wandler 12 Bit Auflösung. Ein Voraussetzung ist dabei, dass der AD Wandler gerade keine immer konstanten Werte ausgibt, sondern schon etwas Schwankungen zeigt - ggf. kann man die Schwankungen sogar absichtlich hinzu addieren.
Das klingt ganz interessant, aber eigentlich hat er ja fast keine Schwankungen mehr...
19°C zeigt er seitdem ich den Kondensator angehängt habe immer an, (und einmal 16,1)
Besserwessi
31.12.2010, 18:05
Das Oversampling reduziert zwar auch die Schwankungen, der hier wesentlichere Effekt wird aber die höhere Auflösung sein. Das könnte dann gerade den Unterschied zwischen 0,5 K oder 0,1 K Schritten ausmachen, und der Aufwand ist minimal, sofern man genügend Rauschen drin hat.
Das Problem mit der Auflösung verstehe ich noch nicht ganz. Bei 3 V als Ref. hat man rund 3 mV als Auflösung bei einem 10 Bit AD. Das macht bei 10 mV/K als Steigung eine Temperaturauflösung von etwa 0,3 K.
Oder wird jetzt der KTY... als Sensor Verwendet ? Der Sollte aber auch eine Ähnliche Auflösung geben, wenn der Widerstand dazu passt.
runner02
02.01.2011, 13:05
Das macht bei 10 mV/K als Steigung eine Temperaturauflösung von etwa 0,3 K.
10 mV/K hat der LM135.
Bei meinem LM335 habe ich herausgefunden, dass es 1mV/K sein müssen.
Oder wird jetzt der KTY... als Sensor Verwendet ? Der Sollte aber auch eine Ähnliche Auflösung geben, wenn der Widerstand dazu passt.
Den verwende ich eigentlich nicht mehr.... Obwohl, da waren die ADC-Sprünge (und somit die Auflösung) deutlich höher...
Ok, dann versuche ich's mal mit oversampling ;)
Besserwessi
02.01.2011, 14:19
Der LM335 sollte auch 10 mV/ K haben. Sonst würden auch keinen knapp 3 V an Spannung raus kommen. Der LM135 hat nur einen Größeren Bereich und mehr Genauigkeit.
Oder ist es versehentlich ein LM385 - das wäre eine Refferenz mit möglichst wenig Temperatureffekt.
runner02
03.01.2011, 13:32
Oder ist es versehentlich ein LM385 - das wäre eine Refferenz mit möglichst wenig Temperatureffekt.
Das könnte es sein, fürchte ich... Ich muss mir gleich mal die Aufschrift ansehen!!
Bin mir aber relativ sicher, dass es 1mV/K sind!
Ich betreibe ihn mit der selben Spannung wie den ATtiny (Batterien haben momentan 3,05V)
Mit dem Multimeter messe ich 2019mV bei 19°C, 2001 bei 1°C ...
Also temp=spannung -2000 mV.
Nur - die Auflösung ist hierbei wie gesagt viel zu gering - 3°C....
Irgendwo habe ich gelesen, dass der echte LM335 bei 0°C 273K also 2,7315V anzeigen sollte....
Dann könnte er aber +100°C gar nicht anzeigen, es sei den, ich betriebe ihn mit >3700mV
runner02
04.01.2011, 13:31
Aufschrift:
LM335...
(und oben und unten irgendwelche Buchstaben)
Vielleicht betreibe ih ihn mit zu wenig Spannung...?
Besserwessi
04.01.2011, 13:47
Zu wenig Spannung ? - der Sensor braucht eine Strom von 400 µA bis 5 mA, wobei mehr als 1 mA wegen der Eigenerwärmung nicht so gut sind.
runner02
06.01.2011, 10:16
Das könnte schon sein...
Aber, wie ich die ankommenden Ampere berechnen? Das ist ja kein einfacher Widerstand, sondern ein komplexes Bauteil - ich nehme an, der Widerstand darin wechselt ja auch....
Ich würds gefühlsmäßig mal mit 4,5V Batterie probieren, mit einem Widerstand von 2,3 kOhm?
Besserwessi
06.01.2011, 13:48
Da liegt das Gefühl schon sehr gut.
Der Strom berechnet sich so ähnlich wie bei den LEDs. Also von der Versorgungsspannung die Spannung am Sensor abziehen, und dann durch den Widerstand teilen. Mit 4,5 V und 2,3 kOhm gibt da dann 1,6 V / 2,3 K = 0,7 mA.
Ich hätte eher 2,2 K oder 2,4 K gewählt - die sind leichter zu bekommen.
runner02
06.01.2011, 16:10
Ok, danke nochmals....
Besorge mir so einen Widerstand (und bete inzwischen mal, dass es dieses Mal funktioniert ;) )
Poste auf jeden Fall nochmal bei Erfolg :)
runner02
09.01.2011, 20:04
Houston, wir haben ein Problem....
Ich habe einen 2,19 kOhm Widerstand gefunden. 4,49 V hatte die Batterie.
Bei Raumtemperatur zeigt er um die 1953 mV an... Dabei sollte er doch ca 2930 mV anzeigen....
](*,) :-k ](*,) :(
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.