Forum: Mikrocontroller und Digitale Elektronik temperatur sensor an mega8


von jaron (Gast)


Lesenswert?

ich trau mich zwar kaum das zu fragen aber:

ich habe einen KTY 81-110 und den möchte ich gern an meinen mega8
anschließen.

mit welchen spannungen etc. muss ich den betreiben?

danke für hilfe!!!!

von Thomas K (Gast)


Lesenswert?

datenblatt?

von jaron (Gast)


Lesenswert?

ich hab den sensor nun auf der einen seite mit 5V verbunden und auf der
anderen direkt in den ADC0.

nun müsste ich eigentlich doch irgendwas kriegen oder?

von Wolle (Gast)


Lesenswert?

So einfach kann man das auch nicht machen.
Der Sensor muß in einer Widerstandsbrücke (ähnlich einem
Brückengleichrichter) geschaltet werden. An den einen Zweig kommt eine
Referenzspannung und am anderen - den mit dem Sensor - fällt dann je
nach Temperatur eine Spannung ab.
Das ist ein Widerstandssensor und liefert von selbst keine Daten.
Außerdem darf der Strom durch den Sensor nicht größer als 10mA sein -
besser 1-2mA, um Eigenerwärmung auszuschließen.

von jaron (Gast)


Lesenswert?

danke wolle jetzt verstehe ich das endlich jedenfalls vom prinzip!

von Messfux (Gast)


Lesenswert?

KTY und Widerstand in Reihe schalten. Der Widerstand fungiert als
Referenz. Wiederstand ungefähr so groß wie der Widerstand des KTY. 5V
an die Widerstandsreihe anlegen: Minus an das KTY-Ende, Plus an das
Refernzwiderstandsende. Spannungsmessung zwischen Minus und der
Verbindung zwischen KTY und Referenzwiderstand. Es wird der
Spannungsabfall über dem KTY gemessen.
Kalibrierung: Du mußt nun den gemessenen Spannungswert in eine
Temperatur umwandeln.
Der KTY zeigt ein nichtlineares Verhältnis zwischen Temperatur und
Widerstand, außerdem  sollte (muß) jedes Meßsystem kalibriert werden um
Systematische Fehler auzuschließen (gute Laboratoriums-Paxis, GLP).
Deswegen ist eine Kalibrierung notwendig. Geht recht einfach: Über
deinen Temperaturmessbereich verteilt benötigst Du ungefähr 9
Temperatur/Digital-Meßwerte-Paare: Halte Deinen Sensor und ein
möglichst genaues, idealerweise geeichtes Termometer in Wasser und
notiere die Thermometertemp. und die Dazugehörigen Digitalmesswerter.
Das ganze rein in Exel als Tabellenform: erste Spalte   Digits, zweite
Spalte Temperaturwerte. Erstelle eine Grafik mit Punktdarstellung. Mit
der rechten Maustaste auf den Graphen klicken und "Trendlinie
hinzufügen" anklicken: Polynom 3. Grades. Im gleichen Fenster unter
"Optionen" noch die Funktionsanzeige anklicken und schon hast Du in
deiner Graphik zusätlich die Kalibrierfunktion dargestellt.
Mit dieser Funktion kannst Du die gemessenen Digits in eine zugehörige
Temperatur umwandeln.

Für Bascom kannst Du die Programmierung von mir haben, habe eine
Heizungssteuerung  realisiert.

Gruß

Messfux

von jaron (Gast)


Lesenswert?

hey danke das is mal was konkretes!

von Thorsten (Gast)


Lesenswert?


von jaron (Gast)


Lesenswert?

so ich habs nu so:

kty mit einem 1K widerstand in reihe. 5V am kty und gnd am widerstand.
zwischen kty und widerstand dann eine leitung in den adc.

hab ich nu wa vergessen? denn werte bekomme ich immer noch nicht!

von Lutz Müller (Gast)


Lesenswert?

Hallo,

dem AVR hast Du schon mit der Software gesagt, daß du den ADC nutzen
willst (alles konfigurieren, Samplefrequenz/Prescaler, welchen Kanal Du
möchtest, den Meßwert auch irgendwohin auslesen etc.; sprich alles, was
im Datenblatt so steht?). Es wird auch gerne vergessen, den ADC
überhaupt hardwaremäßig mit Spannung zu versorgen; oder eine
Referenzspannung/Bezugspannung anzuschließen etc. ???

von jaron (Gast)


Lesenswert?

mein code sieht in etwa so aus:

samplefrequenz wird im ADCSRA gesetzt (64)
dann enable ich den adc erst einmal
setze dann den channel auf 0 (obwohl eh default =0)
dann starte ich und warte solang bis das ADIF bit gesetz ist.
dann lese ich high und lowteil aus dem adc register aus und gebe die
werte über den seriellen port an meinen rechner weiter!


und es kommen keine werte snief

von Lutz Müller (Gast)


Lesenswert?

Nun ja,

wenn ADIF "kommt" macht der ADC zumindest eine Wandlung. Die
Spannungsversorgungen (Wandler selbst und Referenzspannung) sind o.k.?
Die erste Wandlung nach dem aktivieren ist ja auch eine "erweiterte"
Wandlung zur Initialisierung und soll verworfen werden (obwohl ich beim
Mega16 glabe gelesen zu haben, daß er das mittlerweile selbst macht. Was
kommt denn bei Deinem Rechner als Wert raus? Immer was
(Grund)verschiedenes oder gar gar nix? Dann wär das Problem woanders.

von jaron (Gast)


Lesenswert?

es kommt garnix an.

von Wolle (Gast)


Lesenswert?

Erstmal soltest du die Reihenfolge umgekehren.
5V -> Widerstand + KTY -> GND.
Vielleicht ist der KTY auch schon hinüber, weil du ihn anfangs ohne
strombegrenzenden Widerstand betrieben hast.
Ein Meßinstrument ist an der Stelle auch hilfreich, damit du die
ungefähre Größe der Spannung am KTY einschätzen kannst.

von Sven (Gast)


Lesenswert?

>>und es kommen keine werte *snief*

Hatte ich auch gerade ;-)

Im Gegensatz zum 4433 muss beim ATmega8 die Referenzquelle selektiert
werden.

REFS0 => Referenz auf AVcc
REFS1 => Referenz auf 2.56V
keins von beiden => externe Referenz an VREF

in ADMUX setzen

Vielleicht liegts daran.

Sven

von jaron (Gast)


Lesenswert?

ok was muss (welche spannung) dann an Aref ran?

von jaron (Gast)


Lesenswert?

so also wie es aussieht funzt es jetzt!

hab als temperatur (besser spannungswert weil ja noch nicht kalibriert)
erst 244 dann mit lötkolben in der nähe stiegs auf 246,247,250,252,254
und dann wieder langsam runter!

was ich geändert habe ..... die von wolle vorgeschlagene reihenfolge !

danke!

von jaron (Gast)


Lesenswert?

tja natürlich zu früh gefreut

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.