Ideen und Wünsche
1.Die Aufgabe bestand darin, eine Temperatur, sprich eine nichtelektrische Größe in eine elektrische umzuwandeln
und an einem PC auszugeben.
2.Die Temperatur soll passend zum Analog-Digitalwandler verstärkt werden.
Überlegungen/Alternativen
Ein Temperaturfühler wechselt seinen Widerstand in Abhängigkeit zu der Außentemperatur.
Dieses Wissen kann man sich zunutze machen, indem man die Spannung misst,
der bei einer bestimmten Temperatur an einer Schaltung anfällt.
Uns standen dabei folgendeTemperaturfühler zur Auswahl:
1. PT1000
2. KTY 10
3. KTY 23-5
Auswahl und Begründung:
Der Jahrgang entschied sich dafür, den KTY 10 bei Conrad zu bestellen,
da er von den drei Alternativen der günstigste ist und gut für unser Vorhaben geeignet ist.
Block-Schaltbild
Schaltbild
Begründung, Erklärung
Um zu gucken, wie sich unser Widerstand verhält, mussten wir zuerst einige Messungen durchführen.
Dabei maßen wir zuerst die Temperatur und setzten sie dann in Abhängigkeit zum Widerstand.
Dies führten wir für die Raumtemperatur, Körpertemperatur und für die Außentemperatur im Winter durch.
Danach entwickelten wir den Schaltplan mit dem Programm sPlan.
Infolge dessen konnten wir die Druckvorlage für unsere Platine mit dem Programm Sprint-Layout entwerfen
und unsere Platine ätzen und bestücken.
Hier kam es zu folgenden Problemen:
- Es zeigte sich ein Fehler unserer Platinenvorlage. So hatten wir für zwei Widerstände nur ein Loch vorgesehen,
sodass wir hinterher ein weiteres in die Platine bohren mussten.
- Es kam zu wenig Strom am potenziellen Widerstand an.
Deshalb mussten wir den Widerstand von 2,7k auf 4,7k Ohm erhöhen.
- Dies führte zu einer Invertierung der Messwerte, die nun auch nicht mehr über 0 V stiegen.
Deshalb mussten wir neue Leitungen auf der Platine legen, die den Fehler wieder ausglichen.
Layout, Bestückungsplan
| Bauteilliste mit Preisen: |
| 1x KTY81 Temperaturfühler (KTY10) | 1,16€ |
| 2x 2,7kO Widerstand (R1-R2) | 0,10€ |
| 2x 10kO Widerstand (R3-R4) | 0,10€ |
| 2x 130kO Widerstand (R5-R6) | 0,09€ |
| 1x 2,5kO Potentiometer (P1) | 0,27€ |
| 4x Buchsen (Rot, Blau, Schwarz, Gelb) (ABr, ABb, ABs, ABg) | 1,32€ |
| 1x Platine (55mm x 50mm) | 0,40€ |
| 1x Operationsverstärker LM3582 (OP1) | 0,26€ |
| 1x Fixpoint Lötzinn 1,0mm 100 g Rolle | 5,66€ |
Platine.exe
Das Auslesen der Temperaturwerte am Computer erwies sich als das Schwierigste,
da zuvor niemand so wirklich wusste, wie dies umzusetzen war.
Zunächst sollte eine mit C++-Builder entworfene Datei den Spannungswert
des Bords auslesen und in den passenden Temperaturwert umrechnen.
Das Umrechnen an sich war nicht das eigentliche Problem,
da wir dies schon innerhalb einer Doppelstunde hinbekommen haben.
Das Design war individuell und deswegen auch schnell gemeistert.
Dies hatten wir aber noch im Halbjahr zuvor hinbekommen,
doch nach den Winterferien mussten wir uns mit einem neuen Problem auseinandersetzen,
was dazu führte das wir nicht mehr so vorgehen konnten wie zuvor.
Das Problem hatte einen Namen: Es nannte sich "Iserv". Den C++-Builder,
den wir zuvor verwendet haben, konnten wir nun nicht mehr in der Schule verwenden.
Auf dem Schüleraccount war die Installation dieses Programms nicht mehr möglich.
Deshalb versuchten wir es ebenfalls erfolglos auf dem Lehreraccount, was daran lag,
dass die in der Registrierung abgelegten Dateien, die für den Builder notwendig waren,
nach jedem Neustart wieder entfernt wurden.
Deshalb erarbeiteten wir unsere Lösung zuhause
und probierten in den Stunden unsere fertiggestellten Programme
an der angeschlossenen Platine aus und behoben wiederrum zuhause die Fehler.
Der schwerwiegendste Fehler war, dass wir es nicht hinbekommen haben mit dem Board zu verbinden.
Über das von dem Mittschüler Fabrice Stolla gekaufte Board konnten wir das Problem letztendlich doch lösen.
Über den Button "MySQL" unseres Programms werden der Temperaturwert und das aktuelle Datum
an den Webserver des Anbieters "1blu" gesendet und in eine von uns erstellte Tabelle
der uns zugrunde liegenden Datenbank gespeichert.
In dieser Tabelle gibt es zwei Datenfelder mit den Namen "Datum" und "Temperatur".
Durch PHP lesen wir die jeweiligen Datenfelder aus
und generieren so die Tabelle mit unseren Messwerten auf dieser Website.
Da wir unsere Platine zuhause nicht anschließen können,
konnten wir die Funktionsweise dieser Datenbank noch nicht testen.
Deshalb haben wir fiktive Werte in die Datenbank gespeichert,
um zumindest die Funktion des Auslesens aufzuzeigen.
Download
Messwerte
| Datum | Temperatur |
| 2011-03-11 21:13:38 | 22 |
| 2011-03-11 21:13:56 | 23 |
| 2011-03-11 21:14:06 | 21 |
| 2011-03-13 19:06:44 | 0 |
| 2011-03-13 19:06:51 | 0 |
| 2011-03-13 19:07:00 | 0 |
| 2011-03-13 19:07:01 | 0 |
| 2011-03-13 20:51:50 | 0 |
| 2011-03-13 20:51:51 | 0 |
| 2011-03-13 20:51:52 | 0 |