Forum: Mikrocontroller und Digitale Elektronik Motorrad Thermometer mit PIC 16F84 und Nokia 3310 Display


von Manuel P. (elloco)


Lesenswert?

Hallo,
da ich mein Motorrad umgebaut habe, und keine Temperaturanzeige der
Kühlflüßigkeit mehr habe, möchte ich mir eine Anzeige mit im Betreff
angegebenen Komponenten bauen.
Als Fühler ist am Motorrad ein NTC, was mir die Sache etwas erschwert
da ich nur Beispile mit PTC gefunden habe.

Da ich auf dem Display noch genug Platz habe, dachte ich mir das ich
mit einem 2. Fühler noch die Außentemperatur oder die Öl Temperatur
anzeigen könnte.

Ich habe zwar schon ein paar kleinere Sachen mit dem PIC gemacht, bin
aber eigentlisch noch Anfänger.
Programmieren fällt mir aber leicht, da ich Programmierer von Beruf
bin.

Ist dafür der PIC 16F84 ausreichend, oder was würdet Ihr mir
empfehlen?
Wo kann ich Informationen zu oben genannten Komponenten finden?

Ich will keine fertige Lösung, brauche aber warscheinlich etwas mehr
Hilfe da ich Anfänger bin.

Danke.
Gruß
Pepe

von Geri (Gast)


Lesenswert?

Hallo Pepe

Würde keinen Pic16F84 verwenden, da er keine ADC hat, wenn du mit NTC
messen willst. PIC16F628 fände ich schon passender, liegt preislich im
ähnlichen Feld. Gibt es auch in SMD-Form. Je nachdem wir genau du
messen willst fände ich auch andere Sensoren geeigneter.

Beste Grüsse

Geri

von Manuel P. (elloco)


Lesenswert?

Hallo Geri,
ich hab auch an den 16F876 gedacht, der hat auch ADC.
Bei http://www.sprut.de/electronic/pic/projekte/thermo/thermo.htm wird
der auch benuzt, aber mit einem PTC, und ich weis nicht wie ich das für
den NTC um programmieren kann.
Für den genannten zweck ist die genauigkeit ausreichend.
Auserdem ist der ja schon am Motorrad vorhanden.
Vieleicht kann mir ja einer einen Tipp geben wo und wie ich das
Programm für einen NTC ändern kann.

Gruß
Pepe

von Thorsten (Gast)


Lesenswert?

Im Wesentlichen wirst Du die Berechnung der Temperatur an deinen Sensor,
deine Schaltung und die ADC-Parameter anpassen müssen. Bei PTCs steigt
der Widerstand mit der Temperatur, bei NTC nimmt er ab. Genaueres kann
ich ohne weitere Details (Quellcode, Datenblatt des Sensors,
Schaltplan) auch nicht sagen.

Thorsten

von Michi B (Gast)


Lesenswert?

Hi,

schau dir einfach das Datenblatt des NTCs an und rechne dir
Temperaturkurve in ADC-Werte um. Diese schreibst du dann als LUT ins
EEPROM. Der Rest ist Dreisatz.

von Manuel P. (elloco)


Lesenswert?

Hallo,
leider habe ich kein Datenblatt.
Der NTC ist am Motorrad im Kühlerstuzen eingeschraubt, und ich habe
keine Ahnung was das für einer ist. Nur das es ein NTC ist.
Wo könnte ich denn eine Datenblatt her bekommen?
Habe schon das Internet von oben bis unten durchsucht, aber nichts
gefunden.

Wie rechnet man die Temperaturkurve in ADC-Werte um?
Was ist LUT?

Danke.
Gruß
Pepe

von akw (Gast)


Lesenswert?

Wenn du kein Datenblatt hast, siehts schlecht aus... Weil daraus musst
du schauen welchen Widerstand er bei welcher Temperatur hat. Dann
speicherst du in der LUT Tabelle die TEmp und den dazugehörigen Wert.
Je nachdem welche Spannung jetzt am ADC anliegt, wird dann halt die
TEmp ausgegeben.

gruß

von Geri (Gast)


Lesenswert?

Hallo Pepe

Eine einfache Variante ist jedenfalls, einen zweiten Sensor zu
installieren. Dann kannst du jenen nehmen, der für Deine Anforderungen
am passensten ist. Alternativ, das ist dann aber eher ungenauer wäre
die Möglichkeit, den vorhandenen Sensor bei bestimmten Temparaturen
auszumessen. Daraus erhältst du das Verhalten -also z.B. die
Sensorspannung messen und die Temparatur an der bestehenden Einhei
ablesen:)

Allgmein dünken mich NTC und PTC recht ungenau - dafür aber billig und
robust. Ich würde mir vielleicht einmal den DS18B20 anschauen.
Wenn du weisst, welchen Sensor du verwenden möchstest bzw. eine
Messreihe hast, dann kann man dir eine formellen Zusammenhang zwischen
ADC-Wert und der Temperatur ableiten.

Beste Grüsse
Geri

von emil (Gast)


Lesenswert?

nur eine bemerkung am rande:

ich weiss aus eigener erfahrung, wie schlecht lesbar das
lcd von nokia3310 im "outdoor"-einsatz ist. (boardcomputer
in meinem auto, hintergrungbeleuchtung mit sehr hellen leds, bei einem
motorrad ist das bestimmt noch schlimmer)

in diesem fall würde ich deswegen kleine 7-seg anzeigen nehmen, sieht
zwar ein wenig nach dem "knight-rider", ist dafür aber
praxisgerecht...

von Geri (Gast)


Lesenswert?

es gibt dann auch noch die 7x5-Punktanzeige, welche man in Reihe und
Zeile anordenen kann (vgl. ähnl. Kombiinstrument bei Audi).
Damit ist man auch sehr flexibel.

von Manuel P. (elloco)


Lesenswert?

Daran das, das Display bei Sonneneinstrahlung schlecht ablesbar sein
könnte habe ich gar nicht gedacht.
Das könnte aber gut möglich sein.
Eine 7 Segment LED Anzeige ist bestimmt besser zu sehen.
Allerdings könnte mann mit dem Display so eine Art Analoganzeige
machen, das sehe bestimmt nicht schlecht aus.

Ich habe mal den Fühler ausgebaut, und es hat die Bezeichnung 083139
HB.
Kann da einer was mit anfangen. Kann aber auch sein das es nur die
Teile Nr. ist.

von Marko B. (Gast)


Angehängte Dateien:

Lesenswert?

Zufälligerweise mache ich auch gerade mit dem 3310 Display rum, und ich
kann euch versichern, daß es bei starkem Lichteinfall perfekt ablesbar
ist. Und zwar umso besser, je stärker der Lichteinfall ist - das
Display ist transflektiv. Also bestens geeignet für draußen. Im Anhang
ein Foto das ich gerade gemacht habe, mit vollem Blitz.

von Manuel P. (elloco)


Lesenswert?

Hätte mich auch erlich gesagt gewundert.
Wehre ja auch schlecht wenn man ein Handy hat was man bei Tageslischt
nicht erkennt.

@Marko
So wie es aussieht ist das auch ein Thermometer, oder?

von Manuel P. (elloco)


Lesenswert?

Ich weis, licht schreibt man ohne s.
Kommt schon mal vor, sorry.
Ja,ja und ehrlich mit h.
Sonst noch was?

von Michi B (Gast)


Lesenswert?

R25 ist bei NTCs in den meisten Fällen 100k. Wenn das bei einem Test
ungefähr stimmt dann bei einer höheren Temperatur, sollte im Moment
kein Problem sein, nochmals messen und den Beta Wert bestimmen. Daraus
lässt sich dann die Kennlinie bestimmen.

Wie rechnet man die Temperaturkurve in ADC-Werte um?
- (Spannung NTC / V) / (Eingangsspannungsbereich des ADC / V) * 1024

Was ist LUT?
- Eine Tabelle, die für die gewandelten Ergebnisse des ADCs die
entsprechenden Temperaturen enthält.

von Marko B. (Gast)


Lesenswert?

Pepe:

> So wie es aussieht ist das auch ein Thermometer, oder?

Das hast Du messerscharf geschlußfolgert. ;-)

Das Display hängt zusammen mit einem DS18S20 an einem R8C/13. Die
angezeigten Werte sind, von oben nach unten: Temperatur, Scratchpad
Register und ROM Code.

Ist im Moment nur ein Testaufbau.

von Manuel P. (elloco)


Lesenswert?

So, ich habe das Teil mal gemessen.
0 Grad = 1K3 Ohm
20 Grad = 505 Ohm
25 Grad 410 Ohm
42 Grad 250 Ohm

Kann mann damit was anfangen, und den Beta Wert und die Kennlinie
bestimmen?

von Philipp (Gast)


Lesenswert?

Ich habe mir so einen VDO Öltempgeber (anstatt Ölablasschraube)
eingebaut. Diesen habe ich dann zusammen, mit einem Thermometer, in
einem Kochtopf (mit Pflanzenöl statt Wasser) getan und den Bereich der
mich interessierte ausgemessen (bei kleiner Stufe langsam aufheizen
lassen, so dass ich gut mitschreiben konnte und beim abkühlen nochmal).
Die Kennlinie war alles andere als linear, hab ne Tabelle gemacht und
interpoliere dazwischen linear.

Gruß Philipp

PS: Hat vielleicht jmd ne Beschreibung zu den VDO Dingern oder ne
offizielle Kennlinie? Und sind das KTY Sensoren? (hab nur AD Werte
aufgeschrieben und daher keine Ahnung)

von Geri (Gast)


Lesenswert?

Hallo

Also wie es aussieht, hat der Sensor einen negativen
Temperaturkoeffizienten. Die Kurve ist, wenn die Messwerte stimmen,
nicht linear. Vielleicht wird sie aber zwischen 20-100°C linearer:)
Wenn du bei diesem Sensor bleiben willst, dann würde ich noch mehre
Werte aufnehmen und den Weg, wie ihn Philipp schön beschrieben hat
gehen.
Wenn der vorhandene Sensor aber sonst eine Funktion hat und (oder) der
Einbau z.B. eines DS18B20 einfach möglich ist, dann kommst du damit
s.w. zu genaueren Ergebnissen.

Beste Grüsse
Geri

von Manuel P. (elloco)


Angehängte Dateien:

Lesenswert?

Ich bin am überlegen ob ich da nicht ein anderen Sensor rein basteln
kann, und soll.
Ich habe mal ein Bild angehangen, wie ich mir das so in etwa mit der
Anzeige vorstelle.
Ist das für einen fast noch anfänger realisierbar?
Was nehme ich da am besten für einen PIC (2 Sensoren)?
Wehre ein ATMEL AVR dafür besser geeignet bzw. einfacher zu
Programmieren?

von akw (Gast)


Lesenswert?

Naja, von der Eignung her ist es wohl egal. Aber du fidnest mehr AVR
beispiele und die meisten kennen sich hier besser mit AVRs als mit PICs
aus.

Realisierbarkeit ist wohl gegeben G ist nicht kompliziert würd ich
mal sagen. Ein Mega8 oder so reicht dicke aus.

gruß

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.