Forum: Projekte & Code Temperatur mit Bascom


von Tom (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

Da ich noch ein Anfänger auf dem Gebiet der µControlern bin,
möchte ich einfach mal ein Gespräch anleiern um auch daraus zu lernen
;-)

Ich habe einen NTC Wiederstand mit einem NE555 geschaltet. Die Frequez
des NE 555 ist abhängig von der Temperatur. mit Bascom messe bzw. zähle
ich eine Sekunde lang die Impulse. Ich habe dann bei verschiedenen
Temperaturen die Frequenz gemessen und mit diesen Werten erechne ich
dann die anderen Temperaturen(siehe Code).
Das Messergebnis ist so um die 0,5 - 1 Grad genau.

Meine Frage gehe ich an die Sache zu kompliziert ran? Kann man sich das
Vereinfachen insbesondere das Zählen der Impulse? Gibt es eine generel
bessere Lösung?

Bin mal gespannt was passiert ;-))

TOM

von formtapez (Gast)


Lesenswert?

Du kannst den NTC Widerstand auch als Spannungsteiler betreiben und den
Spannungswert mit dem Analog-Digital-Wandler abfragen. Das spart den
NE555 und viele Zeilen Code ein.

Weiterhin ist mir aufgefallen das Du in Deinem Programm die meisten
Variablen löscht (bzw. mit $00 überschreibst) bevor sie ein Wert
zugewiesen bekommen. Das ist unnötig.

MfG
formtapez

von Tom (Gast)


Lesenswert?

Hallo,

Wird die Messung mit einem Spannungsteiler genauer?
Wobei mir noch unklar ist wie das erechnen der Werte ablaufen soll.

Tom

von Peter Löschnig (Gast)


Lesenswert?

hallo

verwende einfach GETRC (guckst du in der Hilfe)
brauchst nur einen Portpin, einen Kondensator und deinen NTC

Peter

von Tom (Gast)


Lesenswert?

Ich habe die Funktion mal ausprobiert das sieht nicht schlecht aus.
Allerdings scheint es bei mir nicht so richtig zu funzen. Sollte bei
einem Konstanten Widerstand und Kondenator nicht ein nahezu konstanter
Wert ermittelt werden? Bei mir schwankt das tüchtig hin und her... Oder
mach ich da was falsch? Ich habe die schaltung so wie in der Hilfe
beschrieben aufgebaut.

Tom

von Peter Löschnig (Gast)


Lesenswert?

wie groß ist deine Einheit "tüchtig" (in % vom Messwert)

Peter

von Tom (Gast)


Lesenswert?

Ich gehe mal davon aus das mir die Funktion einen wert in Millisekunden
zurück gibt. jedenfals habe ich die Hilfe so verstanden.
Es ist so das bei einem konstanten 10 K Ohm Widerstand und ein 100 nF
Kondensator der Wert schwankt zwischen 1050 und 1450. Wo man doch
eigentlich eine konstante Entladezeit erwarten würde.

von Peter Löschnig (Gast)


Lesenswert?

hallo

viel besser wirds nicht werden
die von dir geschilderten Sprünge entsprechen 6% vom max. Wert
bei 20°C  könnte also alles von 19.4 bis 20,6° angezeigt werden
jetzt könntest du ein anderes (genaueres) Messverfahren wählen
oder ( wie ich es immer mache) den Wert mitteln

Peter

von Bjoern Blunck (Gast)


Lesenswert?

Ich baue mir das selbe derzeit auf aber programmiere das ganze in C.
I´ch habe mir eine Konstantstromquelle aus Transistor LED und 2
wiederständen gebau, wo mein NTC in denn Emitterzweig kommt.Diese
Quelle liefert mir einen konstanten Strom von 1mA(für denn sensor denn
ich verwende der Arbeitsstor).Dieses Funbktionier sehr gzut., Habe aber
noch nicht das Program dafür fertig....

von Sven (Gast)


Lesenswert?

Bin auch gerade dabei eine Temperatur auszulesen. Dafür hab ich mal eure
Schaltung mit dem RC-Glied verwendet. Dabei hab ich ein KOndensator mit
100µF und eine NTC Iderstand mit 1000 ohm. Soweit funktioniert auch
alles perfekt, er ließt einen Wert aus von 176. Jetzt meine Frage, was
gibt mir der Wert an und wie kann ich weitere schlüsse daraus ziehen?
Gibt es Formeln zur Berechnung des Widerstandes und zur Berechnung der
Temperatur?
Würde mich sehr freuen, wenn ihr mir weiterhelfen könntet.

Gruß Sven

von Uwe Kullmann (Gast)


Lesenswert?

Ist es nicht einfacher einen DS1820 oder den LM075 (oder so)
anzuschliessen? Die liefern den Temp-wert doch als 1-Wire Datenstrom
und Bascom hat schon frertige Befehle dafür.

Gruß
UK

von Sven (Gast)


Lesenswert?

ja hab ich mir auch schon überlegt, nur weiß ich nicht genau, wie man
diesen ausließt. Wo finde ich die Befehle bei Bascom, vielleicht hast
du schon mal ein Programm dafür geschrieben.

Gruß

von Benny (Gast)


Lesenswert?

wenn du einen Code für den DS1621 (I²C) haben willst dann schreibe mir
eine eMail ! das ist extrem einfach.

Gruss Benny

von Mikro A. (mikroavr)


Lesenswert?

Für DS1820 gucke mal auf www.comwebnet.de
Unter Thermometer, vielleicht kannst du das brauchen.

von Paul Baumann (Gast)


Lesenswert?

Ich habe hier im Forum schon mal ein Programm für ein Thermometer mit
DS 1820 gepostet. Da kannst Du sehen, wie es mit Bascom geht. Tückisch
ist, daß man die Formel zur Berechnung in einzelne Terme zersägen muß,
weil Bascom sie nicht im ganzen frißt.

MfG Paul

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.