Forum: Mikrocontroller und Digitale Elektronik Fragen Temp. Logger


von Ramon S. (ramon2)


Lesenswert?

Hallo zusammen.

Bräuchte mal eure Hilfe und ein paar  Tipps.
Ich möchte einen Data Logger bauen mit einem PIC Microcontroller 
folgende Anforderungen habe ich:
-  Messen Temperatur habe da an einen Digitalen Temperatur Fühler 
gedacht Anschluss via I2C.
-  14 Tage Loggen jede Minute 1-ne Messung sind also so um die 20160 
Messungen.
-  Zeitstempel wann die Messung gemacht wurde.
-  Soll mit einem Akku betrieben werden.
-  Auslesen der Daten via RS 232.
-  Möchte das ganze so Stromsparend wie möglich betreiben (Sleep mode 
MC).

Ich denke ich brauche folgende Bauteile:
-  Spannungsregler 3.3V
-  Microcontroller
-  IC für die RS232 Schnittstelle
-  Temp. Sensor
-  Evtl.  SD Karte

So nun zu meinen Fragen:
-  Ist für mein Projekt eher die 16-er PIC Familie zu empfehlen oder 
doch die 18-er?
-  Wie berechne ich die benötigte Speicher Grösse? Also ich stelle mir 
vor dass eine Messung in etwas so aussehen sollte 14.12.10 19.38 28.5. 
Davon ist dann ja auch abhängig ob ich noch eine SD Karte brauche, oder 
sollte ich für sowas grundsätzlich eine SD Karte einplanen?

Falls ich noch für euch relevante Informationen vergessen haben sollte 
bitte fragen.

Hoffe Ihr könnt mir ein paar Tipps geben.
Grüsse ramon

von Bernd R. (Firma: Promaxx.net) (bigwumpus)


Lesenswert?

Ich denke, der interne Speicher (Flash oder EEPROM) eines PICs reicht 
nicht für Dein Vorhaben, Du mußt externen Speicher nutzen.
SD-Karten werden immer gerne genommen, sind aber Sch***e anzusteuern.
Ich habe da ein Projekt mit einem PIC18F und einer SDCARD und mEBASIC 
gemacht, daß die Daten auf einer SDCARD speichert (redundant...), da 
suchst Du lange nach den richtigen Librarys...
Evtl. könnte man auch SPI-SRAM nehmen, da habe ich jetzt etwas am Start 
mit 32KByte SRAM-Modulen.
Als Prozessor würde ich keinen 16F mehr nehmen, da gibt es echt geile 
18F-Typen. Ich habe hier gerade den 18F46K20 in der aktuellen 
Entwicklung. Der kann auch richtig Low-Power...
Und ganz krass wäre dann noch der Einsatz einer RTC. RX-4045 von EPSON 
(inkl. Quarz und Genauigkeit) an den SPI-Bus zusammen mit den Speichern 
und der kann auch Minuten-Interrupts zum Aufwachen erzeugen.
Der PIC wird dann nur noch geweckt, mißt die Daten (wie auch immer) und 
speichert sie im SPI-SRAM - und pennt weiter...
Der PIC ist eigentlich nur noch ein Schieberegister, das alle 
Komponenten ansteuert.
Dann kann man ja eine RS-232-Schnittstelle anbauen, über die Daten und 
Uhrzeit ausgetauscht wird. Wäre ganz nett.

Speichergröße:
Im Groben: 3 Byte Datum, 2 Byte Zeit, 2 Byte Temperatur = 7 Byte je 
Messwert, machen wir 8 draus, dann paßt es besser. 20000 Stück davon 
sind 160000 Bytes = ca. 160kB sind 6 SPI-SRAMs.

Ein Kunde von mir hat die "Zauberdisk" von Meilhaus im Einsatz. Die kann 
aber nur 3000 Meßwerte speichern...

von Guest (Gast)


Lesenswert?

Wenn Du nicht selbst bauen willst, wäre so etwas interessant:

http://www.fuchs-shop.com/de/shop/4/1/13372024/

von Timmo H. (masterfx)


Lesenswert?

Oder nen USB Temperaturlogger (DL-100T) von Conrad für 50€. 32000 
Messpunke und eingebauter Lithium-Batterie. Klar für 10€ und etwas 
Bastelarbeit bekommt man das auch hin.

Wenn es nur die Temperatur ist z.B. als 10 Bit Wert, brauchst du keine 
32 KB. Die Zeit+Datum reicht es ja einmal an den Anfang zu schreiben, da 
man ja das Ausleseinterval kennt (und ggf. auch in den Speicher 
schreibt). Da bekommt man für 1€ ein 256 kbit EEPROM. Oder ein 512 kbit 
für 1,1€

von bingo (Gast)


Lesenswert?

nimm doch ein externes EEPROM mit I2C-Schnittstelle, z.B. 
http://www.reichelt.de/?;ARTICLE=96618

von heinzhorst (Gast)


Lesenswert?

Auf jeden Fall ein PIC18. Da gibt es die File System Library für die 
SD-Karte schon Fix und Fertig von Microchip. Die Controllerauswahl wird 
jedoch eingeschränkt weil du zwei MSSP-Module brauchst. Eins für SPI für 
die SD-Karte und eins für I2C. Der 18F26J11 würde mir da spontan 
einfallen. Oder der 18f26j50, da hast du gleich USB mit drin. Sind 
beides 3,3V-Typen. Da kannst du dir eine Pegelwandlung für die SD-Karte 
sparen. Als Temperatursensor bietet sich der LM75 an (günstig, leicht zu 
beschaffen aber leider nur in SMD).

von bingo (Gast)


Lesenswert?

Wenn Du in regelmässigen definierten Abständen misst, kannst Du Dir die 
timestamp sparen, also einen Quarz oder besser eine 
tempereturkompensierte RTC (z.B. DS3231) an Timer1

Den Spannungsregler würde ich übrigens auch einsparen, der nuckelt Dir 
den Akku in nullkommanix leer

von bingo (Gast)


Lesenswert?

Wenn Du einen sehr genauen Temperatur-IC suchst, nimm einen TSIC, das 
Protokoll ist zwar nicht I2C, aber absolut easy

von bingo (Gast)


Lesenswert?

Da gibt es eine Anleitung für das Zacwire-Protokoll des TSIC 
Beitrag "Temperatursensor TSIC 306 TO92"

von Lehrmann M. (ubimbo)


Lesenswert?

Ganz nebenbei: Manche PICs haben schon eine RTC an Bord.
Siehe Microchip Product Selector: 
http://www.microchip.com/productselector/MCUProductSelector.html
RTCC mit Auswählen. Real Time Clock Calendar.
In jedem Fall PIC18. Libraries sind genug im Netz die man nach meinen 
Erfahrungen auch ohne jede Problematik einsetzen kann.

von bingo (Gast)


Lesenswert?

> Ganz nebenbei: Manche PICs haben schon eine RTC an Bord.

Das sind aber nur Chips mit mindestens 64 Pins ...

von Ramon S. (ramon2)


Lesenswert?

Also erstmal recht Herzlichen dank für die vielen guten Ratschläge.

Ich werde mir heute Abend nochmals alles genauer durchlesen und dann auf 
euch zurück kommen.
Stressig heute...

Also bis heute Abend dann.
Gruss ramon

von heinzhorst (Gast)


Lesenswert?

bingo schrieb:
>> Ganz nebenbei: Manche PICs haben schon eine RTC an Bord.
>
> Das sind aber nur Chips mit mindestens 64 Pins ...

Nein. Der 18f26j11 hat RTC und nur 28 Pins. Gibt's auch als DIL.

von Ramon S. (ramon2)


Lesenswert?

Was halltet ihr vom PIC18F47J13?

Der hat wie von einigen vorgeschlagen.

•  2 xMSSP .
•  Eine RTCC
•  Und ein 128Kb Memory

Damit müsste ich ja schon fast hin kommen für meine Messungen. Falls der 
Speicher dann doch noch nicht reicht kann ich ja noch die 
vorgeschlagenen  SPI-SRAMs dazu hängen. Oder wie vorgeschlagen nur dass 
Start Datum aufzeichnen und den Rest berechnen, dann würde ich ja noch 
viel mehr Messungen aufnehmen können.

Gruss ramon

von heinzhorst (Gast)


Lesenswert?

Ramon S. schrieb:
> Was halltet ihr vom PIC18F47J13?

Gute Wahl dafür. Aber nur, wenn SMD kein Problem für dich ist. Aber ein 
TQFP44 lässt sich noch gut von Hand löten. Glaube zwar nicht, dass du 
soviel Speicher brauchen wirst, aber gut ihn zu haben. Solltest den 
18F47J13 nur nicht mit einem Low-Cost Eigenbau Brenner flashen 
(Vpp=3,3V!).

von Michael E. (rince)


Lesenswert?

Hallo

Obwohl du eher PIC als AVR verwenden willst, lohnt es sich vielleicht 
auch mal hier vorbei zu schauen:

http://www.brokentoaster.com/butterflylogger/

Hab dass selber auch schon ausprobiert und läuft soweit super.

von Ramon (Gast)


Angehängte Dateien:

Lesenswert?

So habe das Ding gebaut, danke für die Hilfe Anno dazumal.

Habe sogar mal ein Video vom Layouten gemacht ;)
http://www.youtube.com/watch?v=EnCKIAH0-DA

LG Ramon

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.