Forum: Projekte & Code C-Source für SMT160-30???


von Thomas (Gast)


Lesenswert?

Hallo Leute,

bin gerade dabei, mir ein Thermometer für meinen
Solarpufferschichtspeicher zu basteln! Habe mir gedacht, ich nehme die
Sensoren von Smartec, SMT160-30!

Die sind ja recht genau(+-0,7°C) und können direkt ohne zusätzliche
Hardware an den µC angeschlossen werden!
Da ich schon vor Jahren mal mit PIC´s gearbeitet habe, möchte ich für
dieses kleine Projekt auch einen neuen 18er PIC verwenden!

Meine Frage nun, hat jemand für diesen SMT160-30 einen C-Source Code,
der auf den PIC´s läuft?

Wenn nicht muss ich eben selber ran.....aber warum das Rad neu
erfinden, wenn es vielleicht im Netz oder sonst wo schon was fertiges
gibt!?

Gruß

Thomas

von Peter Dannegger (Gast)


Angehängte Dateien:

Lesenswert?

Anbei mal ein C-Beispiel für den AT89C2051.

Der 8051 ist ideal geeignet, weil er einen Gated Mode hat.
D.h. man mißt mit einem Timer die gesamte Periode und mit dem anderen
Timer nur die High-Impulsbreite.

Auch ist eine einzelne Periode des SMT160 nicht sonderlich stabil
(Jitter), man muß also über mehrere Perioden messen.

Im Beispiel wird deshalb über alle Perioden innerhalb 50ms aufaddiert
und dann exakt bei der nächsten Flanke ausgelesen (der Gate-Eingang des
Timers ist gleichzeitig der Eingang für den flankengetriggerten
Interrupt).


Peter

von Thomas (Gast)


Lesenswert?

Hallo Peter,

vielen Dank für Dein Beispiel, das sieht ganz gut aus!!!!
Mal sehen, ob ich das auf den PIC portieren kann....



Gruß

Thomas

von Benedikt (Gast)


Lesenswert?

Nimm besser einen Ds1820, LM92 oder einen anderen digitalen Sensor, da
hast du diese Problem nicht, denn da kann man den Wert direkt in °C
auslesen.

von Thomas (Gast)


Lesenswert?

Hallo Benedikt,

bei den genannten habe ich aber das Problem, das ich mehr als drei
Leitungen für den Sensor benötige....Außerdem muss ich da dann eben das
1 wire Interface implementieren, ob das einfacher ist....

von Peter Dannegger (Gast)


Lesenswert?

"bei den genannten habe ich aber das Problem, das ich mehr als drei
Leitungen für den Sensor benötige"


Bei DS18B20 brauchst Du 2 Leitungen und nur über 100°C 3 Leitungen,
also nie mehr als 3.


"1 wire Interface implementieren, ob das einfacher ist"

Es gibt doch schon nen Haufen an Beispielcode dafür (8051, AVR).


Peter

von Thomas (Gast)


Lesenswert?

Hallo,

habe mir jetzt von dem SMT160 ein paar Muster besorgt! Habe Ihn auch
schon in Betrieb genommen und konnte schon erste Messungen damit
machen!

Die Information(Temperatur) steckt ja im sog. Duty Cycle des Sensors.
Die Periodendauer kann man bei diesem Sensor 1...4Khz betragen!

Meinen PIC habe ich jetzt schon so programmiert, dass ich mit Hilfe des
Capture Moduls die Puls-und Pausendauer des Ausgangssignals messe! Dazu
hätte ich jetzt ne Frage!
Wie hoch sollte die Zählerfrequenz(Samplefrequenz) des Capture Moduls
sein, um den Fehler möglichst gering zu halten, bzw. um die laut
Datenblatt genannten Toleranzbereiche einhalten zu können?

Zur Info, mein Controller läuft zur Zeit mit 8MHz, d.h. ein
"Zählertick" hat 2MHz bzw. 500ns Periodendauer!


Bitte um Hilfe, bzw. einen Ansatz, wie ich das beurteilen kann!


Gruß

von Thomas (Gast)


Lesenswert?

Hallo...

bin gerade wieder an dem Projekt, musste die letzten Wochen was anderes
machen, weil der Chef was anderes zuerst haben wollte...

Auf meine letzte Frage hat leider niemand geantwortet, vielleicht hat
jetzt einer ein Antwort parat....


In einer AN zu dem SMT160 habe ich irgendwo gelesen, dass man am Bester
wegen dem JITTER mehrere Perioden messen soll und dann mitteln soll!!!

Ist das sinnvoll oder reicht es, wenn man eine Periode misst und daraus
dann die Temperatur errechnet?



Gruß

Thomas

von mohsen (Gast)


Lesenswert?

hi:
dear sirs:
please direct me that how can i connect  smt160 to 8051 microcontroller
and use your c code for that .if it is possible for you mail me a
diagram of this connection.with the best wishes .

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.