Post on 29-Nov-2015
transcript
Fachhochschule CoburgFachbereich: ElektrotechnikStudienschwerpunkt: Informationstechnik
DIPLOMARBEIT
Entwicklung und Aufbau eines elektronischen Wärmemengenzählers
Diplomand: Markus Stark
Betreuer: Prof. Dr.Kollmann
Ausgabe: 15.11.1994Abgabe: 14.04.1995
Inhaltsverzeichnis
1. Vorwort
2. Aufgabe2.1. Problemspezifikation 2.2. Projektplan
3. Software3.1. Entwurfsspezifikation3.2. Codierspezifikation3.3. Programmlisting
4. Hardware4.1. Entwurfsspezifikation4.2. Stromlaufplan4.3. Layout
5. Literaturverzeichnis und Quellennachweis
6. Anhang
1. Vorwort Seite 1
1. Vorwort
Motivation dieser Diplomarbeit: Entwicklung eines autarken undfernabfragbaren Systems zur Wärmekostenabrechnung (auchHeizkostenverteiler (nach dem Hauptanwendungsgebiet : Verteilung derHeizkosten auf die einzelnen Mietpartien), Wärmezähler oder Wärme-mengenmesser) um bestehende Systeme, wie z.B. das Ver-dunstungsprinzip (rel.hohe Meßungenauigkeit und kostenintensive Ablesung der Meßdaten) zuersetzen.
Es wurde versucht, die Spezifikation in Soft- u. Hardware aufzuteilen. Es zeigtesich aber bald, daß diese Teilung nicht immer möglich war.Es ist nicht alles implementiert worden, was möglich ist (z.B. wurde auf eineEchtzeituhr verzichtet, um z.B. den Zeitpunkt von Betriebsunter-brechungenfestzustellen ...). Die Schaltung ist natürlich weiter optimierbar, vor allem weilbei der Wahl der Bauteile oft die schnelle Verfügbarkeit der Funktionvorgezogen wurde.
Ich bedanke mich bei allen, die die Erstellung dieser Diplomarbeit unterstützthaben, insbesondere bei meinen Betreuer Herrn Prof. Dr. Kollmann und denLeiter des Elektroniklabors Herrn Dipl.-Ing. Wunderlich.
2. Aufgabenstellung Seite 2
2. Aufgabenstellung
Anforderungen an das System 'elektronischer Wärmemengenmesser':
· autarkes System· Fernabfrage· hohe Meßgenauigkeit· Datensicherheit Ein 'reelles' und professionelles System müßte noch weitere mech. Featuresenthalten. Die beiden Temperatursensoren, die Hardware und derDurchflußmesser müßten verplombt werden. Natürlich lassen sich dadurch'Betriebsstörungen' nicht 100%ig verhindern. Es besteht aber die Möglichkeitdiese Störungen zu erkennen und in einen nicht flüchtigen Speicher abzulegen,bzw. über eine Schnittstelle eine Störung bzw. Manipulation zu melden.
2.1 Problemspezifikation
Die Problemspezifikation definiert das Problem, z.B. wie kann Wärme-mengegemessen werden; physikalischer Hindergrund.. .
2.1.1 Physikalischer Hindergrund
Thermodynamik: [1]
Wird einem Festkörper oder einer Flüssigkeit Wärme zugeführt (abge-führt), soist dies immer mit einer Temperaturerhöhung (T.senkung) ver-knüpft, falls keinPhasenübergang stattfindet. Um die Temperatur T eines Systems um dT zuerhöhen (senken), ist eine Wärmezufuhr (Wärmeabgabe) dQ erforderlich, dieproportional zu dT ist:
µ § (2-1)
Die Proportionalitätskonstante C ist die Wärmekapazität des Systems. Sie hängtvon der Art des Stoffes und von der Menge ab.
2.1 Problemspezifikation Seite 3
Je nachdem, ob die Wärmemenge C auf die Masse m oder die Teil-chenmenge nbezogen wird, ergibt sich die spezifische Wärmekapazität
µ § (2-2) oder die molare Wärmekapazität µ
§ (2-3) .
Die Wärmekapazität kann nur in bestimmten Grenzen als Konstante an-gesehenwerden. Tatsächlich hängt sie von der Temperatur ab. Bei einer endlichenTemperaturänderung von T1 auf T2 beträgt die übertragene Wärme
µ § (2-4)
Ist das Temperaturintervall klein, kann die Wärmekapazität als konstantangesehen werden, und Gleichung (2-4) vereinfacht sich zu
µ § (2-5)
Gleichung (2-5) gilt auch für einen größeren Temperaturbereich, wenn anstattder wahren eine mittlere Wärmekapazität eingesetzt wird.
Anmerkung:
Genau an diesem Punkt knüpft der Algorithmus im Programm Wärme.Asm an.Die Berechnung eines best. Integrals (bzw. wie in dieser Anwendung einerendlichen Summe) wäre mit einen Microcontroller vom Typ 8051 zuzeitaufwendig. Gleichung (2-5) stellt also die Grundlage desBerechnungsalgorithmus dar, der je nach Temperaturbereich eine andere mittlereWärmekapazität (durch Tabellenzugriff) in (2-5) einsetzt und die Teilwärmenzur Gesamtwärme addiert.
2.1 Problemspezifikation Seite 4
2.1.2 Meßprinzip
µ §
Bild 2.1 Anwendung am Beispiel eines Heizungssystems
Gleichung (2-5) ist in dieser Form noch nicht nutzbar. Schließlich wird nicht dieMasse, sondern der Volumenstrom mittels eines Durchfluß-messers gemessen.Daraus folgt aber auch, daß die Temperatur-abhängigkeit der Flüssigkeitsdichtemit berücksichtigt werden muß.
µ § (2-6)
Diskretisierung von (2-6):
µ § (2-7)
Gleichung (2-7) gilt auch bei nicht äquidistanten Tk.
DQ12
.. Teilwärmemenge im Meßzeitraum Dt DQnutzDV/Dt.. Volumenstrom
T0
.. Vorlauftemperatur TvorTj .. Rücklauftemperatur Trück
rk .. Flüssigkeitsdichte im Temperaturbereich [T
k+1 ,T
k]
ck
.. spezif. Wärmekapazität im Temperaturbereich [Tk+1
, Tk]
2.1 Problemspezifikation Seite 5
Sinnvollerweise ist die Vorlauftemperatur immer größer als die Rück-
lauftemperatur -> DQ12
ist negativ (Wärme wird abgegeben), wird aber indieser Anwendung als positiv festgelegt.
Gleichung (2-7) kann beträchtlich vereinfacht werden, wenn (s. An-merkung)
für den gesamten Temperaturbereich (T0..Tj) eine mittlere spez.
Wärmekapazität und mittlere Dichte eingesetzt werden. Diese Werte rm
und cm
unterscheiden sich aber von rk
und ck, da sie die über den gesamten
Temperaturbereich gemittelten Werte von rk
und ck
darstellen und nicht nur fürein kleines Temperaturintervall gelten:
µ § (2-8) µ
§ (2-9)
µ § (2-10)
Um die Teilwärmemenge im Meßzeitraum Dt zu bestimmen, ist es jetzt nur nochnotwendig, die Volumenimpulse im Meßzeitraum Dt zu messen(Volumenstrom), mit der Temperaturdifferenz zwischen Vor- u. Rücklauf und
einer vom Temperaturbereich abhängigen Konstante rm
* cm
zu multiplizieren.Die Teilwärmemenge wird schließlich noch zur Gesamtwärmemenge addiert.
Weitere ableitbare Meßgröße:
P .. Wärmeleistung µ § (2-11)
2.1 Problemspezifikation Seite 6
2.1.3 wesentl. physikalische Eigenschaften von Wasser
a) Temperaturabhängigkeit der Dichte r [2]:
Temperatur in °C r(T) in g/cm3
0 0.99987
5 0.99999
15 0.99913
25 0.99707
40 0.99224
60 0.983
80 0.972
100 0.95838
Tabelle 2.1
b) Temperaturabhängigkeit der spezifischen Wärmekapazität c [3]:
Temperatur in °C c(T) in J g-1 °C-1
0 4.218
5 4.207
15 4.186
25 4.180
40 4.178
60 4.183
80 4.197
100 4.216
Tabelle 2.2
2.2 Projektplanung Seite 7
2.2 Projektplanung
Der Projektplan beschreibt mögliche Lösungen und Vorgehensweisen und stelltklar warum diese Lösung ausgewählt wurde.
Anforderungen an das System 'elektronischer Wärmemengenmesser':
· autarkes System· Fernabfrage der Meßdaten· hohe Meßgenauigkeit· Datensicherheit· Display
a) autarkes System
Ein autarkes System, das z.B. 5 Jahre mit Batterie funktionsfähig sein soll, stelltsehr hohe Anforderungen, an den Energieverbrauch der Hardware. Eine Batteriemit etwa 10Ah und sehr geringer Selbstentladung (z.B: Lithium-Batterien)dürfte nur mit etwa 200uA belastet werden. In der Praxis würde man eine anwenderspezifische integrierte Schaltung (ASIC)für diese Anwendung entwerfen. Die Herstellung lohnt sich aber nur ab einerrelativ großen Stückzahl.Herkömmliche CMOS-Prozessoren sind auch nicht geeignet. Eine Ausnahmestellen z.B. die Prozessoren der Reihe PIC 16C5X von Microchip dar [4].
PIC 16C57 Features:· Harvard Architektur· 2K x 12 OTP EPROM· 80 x 8 RAM· 21 I/O· Watchdog, Timer/Counter· sehr niedriger Energieverbrauch: 50uA bei Vcc=3V 100kHz
<3uA im Standby-Mode80C51 Features:· von-Neumann Architektur· 4K x 8 PROM· 256 x 8 RAM / SFR
2.2 Projektplanung Seite 8
· 32 I/O· Timer/Counter, UART· Energieverbrauch: 2.2mA bei Vcc=5V 500kHz (intern 42 kHz)
0.9mA im Idle-Mode50uA im Power-Down-Mode
Aufgrund der Verfügbarkeit einer Entwicklungsumgebung (Simulator undMacro-Assembler [5]) habe ich mich, trotz des rel. hohen Energie-verbrauchs,für den 8XC51 entschieden. Daraus folgt aber, das die Forderung nach einemautarken System nicht erfüllt werden kann.
Es wird trotzdem versucht, den Energieverbrauch zu minimieren undenergiesparende Komponenten einzusetzen. Die Taktfrequenz wirdheruntergesetzt, da der Energieverbrauch bei CMOS-Prozessoren ungefähr prop.zur Taktfrequenz ist. Netzausfälle werden entweder mit einer wiederaufladbarenBatterie überbrückt, oder eine Schaltung detektiert und meldet den Netzausfall.Bei Netzausfall läuft näturlich auch keine Umwälzpumpe mehr, d.h. derDurchflußzähler gibt keine Impulse pro Volumeneinheit mehr aus und es kann
auf keine Wärmemenge mehr gemessen werden (DV=0 Þ DQ12
=0). Darausfolgt, daß eigentlich keine Batterie zur unterbrechungsfreien Energieversorgungnotwendig ist. Es muß aber dafür gesorgt werden, daß sich der Prozessor schonin einen def. Zustand befindet (Reset = L), bevor die Versorgungsspannung(Vcc) absinkt.
b) AD-Wandlung
Die rel. großen Zeitkonstanten eines Heizungssystemes (insbesondere der Vor-u. Rücklauftemperatur) lassen eine integrative AD-Wandlung zu. IntegrativeVerfahren haben den Vorteil der Störunterdrückung, d.h. Schwankungen derBetriebs- u. Referenzspannung usw. wirken sich nur wenig auf das Ergebnis derAD-Wandlung aus. Dagegen stellen AD-Wandler nach dem Parallel- o.sukzessiven Approximationsprinzip hohe Anforderungen an die Stabilität derReferenz- u. Betriebsspannungen.
2.2 Projektplanung Seite 9
Ich habe mich wegen der großen Störunterdrückung für ein abge-wandeltesintegratives Verfahren zur AD-Wandlung entschieden:
Der Meßkondensator C wird auf Vcc aufgeladen und über einVergleichswiderstand entladen. Die Dauer der Entladung (k*Rcomp*C) wirdgemessen. Der Kondensator wird wieder aufgeladen und jetzt über den Temperatursensor entladen. Die Dauer der Entladung (k*Rtemp*C) wirdebenfalls gemessen (s. Schaltplan Kap. 4.1.2).Der Vorteil dieser Methode liegt darin, daß dieser Kalibrierungszyklus alleFehler erster Ordnung (Langzeitstabilität, Genauigkeit undTemperaturabhängigkeit der verwendeten Komponenten undVersorgungsspannung) entfernt (Verfahren wird ausführlich im Kap. 4.1.2erklärt).
c) Fernabfrage der Meßdaten
Implementierung einer RS232-Schnittstelle mit Hilfe des im 80C51 be-findlichen UART. Eine energiesparende Version vom Typ MAX2XX sorgt nochfür die Pegelanpassung. Anwendungsmöglichkeit: Bei einem Mietshaus mit mehreren Partien könnteman die elektronischen Wärmemengenmesser an einen zentralen Datenloggeranschließen, der telefonisch abfragbar ist. Ein Problem stellt der Datenschutz dar, da man das System dazu mißbrauchenkönnte, festzustellen, ob jemand anwesend ist oder nicht (z.B. wird im Winterniemand über einen längeren Zeitraum seine Heizung mit niedrigerWärmeleistung laufen lassen) -> Entweder muß der Datenlogger mit einerZugangsberechtigung versehen werden (Code), oder der Datenlogger läßt sichnur für eine bestimmte Zeitspanne (Wärmekostenabrechnung) fernabfragen.
d) Datensicherung
Anforderung an den nichtflüchtigen Speicher:· Speicherkapazität muß ausreichen, um Meß-, Status-, Zeitdaten ...
aufzunehmen (Bedarfsabschätzung: ca. 20 Byte)· geringe Verlustleistung
2.2 Projektplanung Seite 10
Möglichkeiten zur Datensicherung:
EEPROM z.B. PCX8582 bzw. 24C02:· Organisation: 256 X 8 bit· geringe Verlustleistung (aktiv: 2mA; standby: 60mA)· geringer Platzbedarf (8-Pin DIL)· begrenzte Anzahl von Schreib- u. Löschzyklen (typ. 100000)· relativ aufwendige Ansteuerung (Nachbildung des I2C-Bus-Interfaces per
Software)
NOVRAM z.B. X22C10:· Organisation: 64 X 4 bit· mittlere Verlustleistung (aktiv: 40mA; standby: 100mA)· einfache und schnelle Ansteuerung
e) Display
Ein alpha-numerisches LCD-Modul wird zur Anzeige der Daten ver-wendet.Ein normales LCD-Display hätte zwar einen beträchtlich gering-erenEnergieverbrauch (vernachlässigbar), stand aber nicht zur Ver-fügung (müßteeigentlich speziell für diese Anwendung gefertigt werden).
f) Temperatursensor
Typen von Temperatursensoren:
Typ K / N / T / J - Thermoelemente:· Genauigkeit (unkalibriert): 0°C bis 300 ± 3°C· geringe Langzeitstabilität
Platinwiderstand (Pt100):· erreichbare Genauigkeit mit Vierleitertechnik: ± 0.05°C· Widerstand bei 0°C: 100 ± 0.1W im Temperaturbereich von -50°C bis 250°C
(-> Verwendung eines ausgemessenen Paares von Sensoren)· Temperaturkoeffizient: 0.385 W/°C· Eigenerwärmungskoeffizient mit unendl. Wärmeableiter: 5 K/W· Zeitkonstante: < 2 Sek. (PT1-Verhalten) in strömender Flüssigkeit· hohe Langzeitstabilität
2.2 Projektplanung Seite 11
Ich habe mich für Pt100-Sensoren entschieden, da sie eine hoheLangzeitstabilität besitzen. Das Meßzeitintervall Dt habe ich aufgrund dergroßen Zeitkonstanten des Heizsystems auf 60 Sekunden festgelegt. Er könnteaber bei dynamischeren Systemen jederzeit bis auf ca. 1 Sekunde verkürztwerden, ohne die Funktion des Programmes zu beein-trächtigen.
Anmerkung zum Meßzeitraum D t:
Der Meßzeitintervall Dt (= Zeit zwischen zwei Messungen) sollte beiVerwendung von Pt100-Temperatur-Sensoren nicht kleiner als 10 Sekundengewählt werden. Begründung: Die schnellste Möglichkeit zur Temperaturmessung mit Pt100-Sensoren ist die Direktmessug (ohne Tauchhülsen) im Heizmedium (Wasser).Pt100-Sensoren zeigen PT1-Verhalten mit einer Zeitkonstante von ca. 2Sekunden, d.h. bei einem (angenommenen) Temperatursprung benötigt derSensor ungefähr 5*2s=10s um einen der Temperatur entsprechendenWiderstandswert anzunehmen.
3. Software Entwurfspezifikation Seite 12
3. SOFTWARE
3.1 Entwurfspezifikation
Anforderungen an das System 'elektronischer Wärmemengenmesser':
· Fernabfrage der Meßdaten· hohe Meßgenauigkeit· Datensicherheit· Display
Um den Energieverbrauch mittels Software zu minimieren, bittet die CMOS-Version des 8031 mehrere Möglichkeiten:
· Idle-Modus (OP-Code: ORL PCON,#01HORL PCON,#20H)
· Power-Down-Modus (ORL PCON,#02HORL PCON,#40H)
Weitere Möglichkeit(en):· Nachbildung von Teilsystemen mittels Software (z.B. AD-Wandlung)
Im Power-Down-Modus (der on-chip Oszillator wird gestoppt) nimmt der80C31 nur etwa 60mA Strom auf . Dieser Mode hat aber den Nachteil, das ernur durch einen Reset verlassen werden kann. Daraus folgt, um auf Ereignissereagieren zu können, wäre eine aufwendige externe Interrupthardware nötig, dieverschiedene Ereignisse unterscheiden kann. Dies widerspricht aber derForderung den Energieverbrauch zu minimieren, also möglichst wenig externeKomponenten zu verwenden.
Im Idle-Mode (CPU wird vom Taktsignal getrennt; das Interruptsystem, Timerusw. werden aber weiterhin mit dem Takt versorgt) sinkt der Stromverbrauch aufein Viertel im Vergleich zum Normal-Mode.
3.1 Software Entwurfspezifikation Seite 13
Betriebsart Normal Idle P-Down
Frequenz [MHz] Stromaufnahme [mA] bei Vcc=5V Ausgänge offen
0.5 2.2 0.9 0.06
3.5 5.7 1.6 0.06
8 11 2.7 0.06
12 16 3.7 0.06
Tabelle 3.1 Stromaufnahme des 80C51 bei verschiedenen Betriebsarten
-> Die Software wird so aufgebaut, das sich der Microcontroller normalerweiseim Idle-Mode befindet, und nur für die Dauer der Interruptserviceroutine inNormal-Mode arbeitet. Alle Events und Tasks werden über Interruptsabgearbeitet (z.B. zeitabhängiger Task (o. Sub-routine) Measure_&_Calculatewird im Timer Interrupt 0 (int. Uhr) aufgerufen). Der Reset (Netzausfall) wirdselbst als Interrupt miß-braucht, d.h. nach einem Reset liest der Microcontrollerdie relevanten Daten aus dem EEPROM (Wärmemenge, Volumen ...) ins interneRAM ein und kann anschließend wieder seinen normalen Betrieb aufnehmen.
Wie zu erkennen ist, erzeugt die interne Uhr alle 0.4 Sekunden einen Interruptum die Zeitregister (s. Kap. 3.2.1) aktuallisieren zu können. Innerhalb des Uhr-Interrupts (Timer Int. 0) werden zeitabhängige Tasks aufgerufen, z.B. alleMinute die Subroutine zur Messung der Temperatur und Berechnung derWärmemenge usw. oder alle Stunde die Subroutine zur Sicherung der Daten insext. EEPROM.
µ §
Bild 3.2 Zeitdiagramm zur Verdeutlichung des Programmablaufs
3.2 Software Codierspezifikation Seite 14
3.2 Codierspezifikation
3.2.1 Speicherbedarf
Da kein externes RAM verwendet wird, muß mit den 128 Byte des internenRAM des Mikrocontrollers 80C31 sparsam umgegangen werden. Von den 128Byte müssen noch die Registerbank 0 (R0..R7) und der Stack (Bedarf: ca. 32Byte) abgezogen werden. Es stehen also ca. 88 Byte RAM zu Verfügung.
Bestimmung des Speicherbedarfes der Messgrößen, die über einen bestimmtenZeitraum aufsummiert werden müssen:
µ §
Bild 3.3 absolute maximum ratings der zu messenden Größen bzw. Konstanten:
Die maximalen Werte für den Volumenstrom und die Temperatur-differenzwerden in Praxis so gut wie nie auftreten, dennoch wird das Programm für dieseExtremwerte ausgelegt.
Heute übliche Durchflußzähler sind für eine Dauerbelastung von 1m3/h(entspricht ca. 17 Liter/Minute) bzw. 2.5m3/h ausgelegt.Der Wert für die maximale Temperaturdifferenz kommt dadurch zustande, daßder Durchflußzähler einer max. Betriebstemperatur von 90°C ausgesetzt werdendarf (auch wenn er in der Rücklaufleitung eingesetzt wird).(s. Anhang Volumenmessteil)
a) WAERME
µ §
3.2 Software Codierspezifikation Seite 15
Bei einen Meßzeitraum von 10 Jahren benötigt man also im Extremfall 11Stellen um die Wärmemenge speichern zu können (mit LSB=1kJ). Dasentspricht einem Speicherdedarf von 6 Byte (s. Kap. 3.2.5)
b) VOLUMEN
µ §
Bei einen Meßzeitraum von 10 Jahren benötigt man also im Extremfall 9 Stellenum das Volumen speichern zu können (mit LSB=1Liter). Das entspricht einemSpeicherdedarf von 5 Byte im BCD-Zahlenformat.
3.2.2 Verbesserung der Rechengenauigkeit
Jede Minute wird die Teilwärmemenge DQ zur Gesamtwärmemenge Qaddiert. Aufgrund der endlichen Rechengenauigkeit entsteht ein Ab-schneidefehler. Dieser Fehler ist statistisch gesehen, gleichmäßig zwischen 0und 1 verteilt. Daraus folgt, daß bei jeder Messung durch-schnittlich 0.5 kJ zuwenig zum wahren Ergebnis addiert wird.Den Abschneidefehler kann man dadurch vermeiden, daß bei jeder 2. Messungeine 1 (entspricht 1kJ) zur Wärmemenge addiert wird (convergent rounding).
3.2.3 Variablendefinitionen
Variablenfestlegung der 128 Byte des internen RAM des Micro-controllers80C31:
Der Variablen-Name enthält immer das LSB. Höherwertige Bytes werden durchVariablen-Name+X angesprochen. (Es werden hier nur die Variablen aufgeführt,die unmittelbar zum System Wärme-mengenzähler beitragen, d.h. die Variablender Arithmetikroutinen usw. werden nicht aufgeführt).
RAM-Adresse Variablen-Name Funktion
20H..22H Flag_... Bitsegment -> enthält Status- u.Error-Flags
3.2 Software Codierspezifikation Seite 16
RAM-Adresse Variablen-Name Funktion
23H Sec_Counter Interne Uhr; wird alle 0.4 Sekundeninkrementiert
24H Mni_Counter Interne Uhr; wird alle 60 Sekundeninkrementiert
25H Counter Tastenentprellung; Display ON/OFF
2CH Vol_Counter enthält Volumenstrom in l/min
2DH EEH enthält Übergabe- bzw. Rückgabe-daten des EEPROMs
2EH EEL "
2FH ADR_EE enthält Adresse des EEPROMs
30H..35H Wärme enthält Wärmemenge in kJ
36H..3BH Volumen enthält Volumen in Liter
3CH..3FH Vorlauf-temperatur
enthält Vorlauftemperatur in 0.01°C
40H..43H Rücklauf-temperatur
enthält Rücklauftemperatur in 0.01°C
44H..47H Temperatur-differenz
enthält Temperaturdifferenz in 0.01 Kelvin
48H..4BH Wärmeleistung enthält Wärmeleistung in W
68H..6BH T_Comp zur Zeitkonstante R_Compare * Cproportionaler 16-bit Wert
6CH..6FH T_Temp_1 zur Zeitkonstante R_Temp_1 * Cproportionaler 16-bit Wert
70H.. 73H T_Temp_2 zur Zeitkonstante R_Temp_2 * Cproportionaler 16-bit Wert
74H..77H R_Temp_1 Widerstand des Vorlauf-Temperatursensors
78H..7BH R_Temp_2 Widerstand des Rücklauf-Temperatursensors
7CH..7FH Const Zwischenspeicher für Kostanten;wird für Arithmetikprogr. benötigt
3.2 Software Codierspezifikation Seite 17
3.2.4 Flagdefinitionen
Die Flags sind im Bitsegment 20H .. 22H des Microcontrollers abgelegt.
Flag-Name Funktion
Flag_Vol_Error wird gesetzt, falls keine Volumenimpulsegemessen werden, z.B.: Manipulation desDurchflusszählers
Flag_Temp_Error wird gesetzt, falls Temperaturwerte außerhalb festgelegter Grenzen, z.B.: defekterPt100-Sensor
Flag_Display_Wärme wenn gesetzt, wird Wärmemenge auf LCD-Display ausgegeben
Flag_Display_Volumen "
Flag_Display_Vorlauftemp "
Flag_Display_Rücklauftemp "
Flag_Display_Tempdifferenz "
Flag_Display_Wärmeleistung "
Flag_Display_Off wenn gesetzt, wird Display nach einer Minuteausgeschaltet
Flag_Send_Data wenn gesetzt, wird Datensegment 30H..3BHins EEPROM abgespeichert
Flag_Measure_&_Calculate falls gesetzt, wird Messungs- undBerechnungs-Routine aufgerufen
3.2 Software Codierspezifikation Seite 18
3.2.5Syntaxdefinitionen
Die Verwendung von BCD-Arithmetikprogrammen spiegelt sich im Aufbau derzu berechnenden Variablen wieder. Ein Byte einer Variable entspricht zweiBCD-Ziffern.
Erklärung der Syntax am Beispiel der Variablen Wärme:
MSB LSBint. RAM 35H 34H 33H 32H 31H 30H
Wärme 00H 12H 34H 56H 78H 90H
-> Wärmemenge = 1234567890 kJ = 1234.56.. GJ
Entsprechendes gilt für die anderen Variablen im Bereich von 30H..4CH und75H..7FH.
3.2 Software Codierspezifikation Seite 19
3.2.6 Subroutinen und Interruptroutinen
Übersicht:
Subroutine Funktion
Init_Circuit initialisiert Hardware
Init_Display initialisert LCD-Controller
Save_Energy versetzt Microcontroller in Idle-mode und schaltetLCD-Display usw. ab
Save_Data speichert Datenblock vom int. RAM ins EEPROM
Read_Data liest Datenblock vom EEPROM ins int. RAM ein
Send_Data gibt Datenblock über serielle Schnittstelle aus
Measure_and_Calculate
mißt Vorlauf- u. Rücklauftemperatur und berechnetWärmemenge, Wärmeleistung usw.
Interrupt Funktion
Ext. Interrupt 0 wird durch Durchflusszähler ausgelöst und mißt Volumen (inkrementiert Variable Volumen)
Timer Interrupt 0 wird als interne Zeitreferenz benutzt und alle 0.4 sbei einer Quarzfrequenz von 1.8432 MHz ausgelöst
Ext. Interrupt 1 wird durch Tastenbetätigung ausgelöst und zeigtDaten im LCD-Display an
Timer Interrupt 1 wird durch Fehler bei Temperaturmessung, z.B.Kabelbruch, ausgelöst und dokumentiert Fehler
Serieller Interrupt wird durch Fernabfrage ausgelöst und gibt Daten über ser.Schnittstelle aus
3.2 Software Codierspezifikation Seite 20
3.2.7 Flußdiagramme
a) Subroutine MEASURE_&_CALCULATE
Dieses Unterprogramm wird in zeitlichen Abständen von 1. Minute aufgerufen(Meßintervall = 60 s). Das Meßprinzip ist im Kapitel 2.1.2 erklärt. Timer1 wirdfür Messung als Pulsbreitenmesser initialisert, sonst wird er alsBaudratengenerator (ser. Schnittstelle) verwendet. Während der Messung ist nurder Timer1-Interrupt (wird durch Überlauf des Timer1 ausgelöst) enabled, d.h.ein Fehler bei Temperaturmessung (z.B. Kabelbruch oder Manipulation an denSensoren) kann festgestellt, im EERPOM zur späteren Auswertungdokumentiert und im Display angezeigt werden. Andere Interrupts würden dasMeßergebnis ver-fälschen. Die Messung der drei Zeitkonstanten dauert ca. 120ms bei fosz=1.8432 MHz. Die Berechnung der Wärmemenge, des Volumen usw.dauert ca. 250 ms.
Beispiel eines Meß- u. Berechnungsvorgangs:(Hardware s. Bild 4.2)
- Kondensator laden- Timer1 löschen und starten- Kondensator über Widerstand R_Comp, R_Temp_1 oder R_Temp_2 entladen,Timer solange zählen lassen bis Kondensatorspannung unter Triggerschwelle sinkt und Komparatorausgang wechselt.- binären Timerwert auslesen und in BCD-Code konvertieren, da BCD- Arithmetikprogramme verwendet werden- Berechnung der Pt100-Widerstände - Berechnung von Vor- u. Rücklauftemperatur, Temperaturdifferenz, Wärmemenge, Wärmeleistung und Volumen
3.2 Software Codierspezifikation Seite 21
Flußdiagramm zur Subroutine Measure_&_Calculate:
3.2 Software Codierspezifikation Seite 22
Flußdiagramm zur Subroutine Measure_&_Calculate (Fortsetzung):
3.2 Software Codierspezifikation Seite 23
b) Reset
Nach Programmstart werden die Hardware und das LCD-Modul initialisiert.Nach einem Netzausfall werden die im EEPROM gesicherten Meßdaten aufDatenkonsistenz (durch Bildung einer Checksum) geprüft und falls gültig insinterne RAM des Mikrocontrollers übertragen. Danach wird der Prozessor inden IDLE-Mode versetzt (s. Kap. 3.1).
µ §
3.2 Software Codierspezifikation Seite 24
c) Externer Interrupt 0
Der Durchflusszähler (Volumenzähler) gibt pro Liter einen Impuls aus. Dienegative Flanke diese Impulses löst den ext. Interrupt 0 des 80C31 aus. In derInterrupt-Service-Routine wird Volumenstrom-Register um 1 erhöht. DieseRegister wird jede Minute ausgelesen, und enthält zu diesem Zeitpunkt denVolumenstrom in Liter/Minute. Register Vol_Counter enthält den Volumenstromin Liter/Stunde. Falls innerhalb einer Stunde kein Volumenimpuls gemessenwurde, wird Flag_Vol_Error gesetzt (Durchflusszähler defekt bzw. Anlaufgrenzefür Durchflusszähler nicht erreicht, d.h. die Messung des Volumens gilt erst abeinem best. Volumenstrom. Dieser Wert ist von den Betriebsdaten desDurchflusszählers abhängig).
Flußdiagramm zum externen Interrupt 0:
3.2 Software Codierspezifikation Seite 25
d) Timer Interrupt 0
Wird als Zeitreferenz benutzt und alle 0.4 Sekunden bei einer Quarz-frequenzvon 1.8432 MHz aufgerufen. Steuert zeitabhängige Tasks. Es wird z.B. jedeMinute die Subroutine Measure_&_Calculate und jede Stunde die SubroutineSave_Data aufgerufen.
Flußdiagramm zum Timer Interrupt 0:
µ §
3.2 Software Codierspezifikation Seite 26
Flußdiagramm zum Timer Interrupt 0 (Fortsetzung):
3.2 Software Codierspezifikation Seite 27
e) Externer Interrupt 1
Wird durch Tastenbetätigung ausgelöst. Durch erneute Tastenbetätig-ung wirdnächstes Datum im Display angezeigt. Nachdem letztes Datum angezeigt wurde,wird wieder beim ersten Datum fortgesetzt.Wurde eine Minute lang keine Taste gedrückt, wird Display ausge- schaltet.
Flußdiagramm zum externen Interrupt 1:
3.2 Software Codierspezifikation Seite 28
State Anzeige
0 Wärmemenge in GJ
1 Vorlauftemperatur in °C
2 Rücklauftemperatur in °C
3 Temperaturdifferenz in K
4 Volumen in m3
5 Wärmeleistung in kW
3.2 Software Codierspezifikation Seite 29
f) Timer Interrupt 1
Flußdiagramm zum Timer Interrupt 1:
3.2 Software Codierspezifikation Seite 30
g) Serieller Interrupt
Flußdiagramm zum seriellen Interrupt:
3.2 Software Codierspezifikation Seite 31
h) Subroutine SAVE_DATA
Flußdiagramm zur Datensicherung:
µ §
3.2 Software Codierspezifikation Seite 32
i) Subroutine READ_DATA
Flußdiagramm zum Auslesen des EEPROMs:
µ §
3.3 Software Programmlisting Seite 33
3.3 Programmlisting
4. Hardware Entwurfsspezifikation Seite 34
4. HARDWARE
4.1 Entwurfsspezifikation
Die Entwurfsspezifikation beschreibt die Hardware und enthält z.B.Datenblätter.
4.1.1 Schaltungskonzept
µ §
Bild 4.1 Blockschaltbild 'elektronischer Wärmemengenmesser'
4.1.2 Programmspeicher
Es besteht die Möglichkeit entweder ein externes EPROM 27C64 oder einenmaskenprogrammierten 80C51 bzw. die EPROM-Version 87C51 einzusetzen(Achtung: Jumper 2 richtig setzen).
4.1 Hardware Entwurfsspezifikation Seite 35
Features EPROM 27C64:· Speichergröße 64K· Organisation 8K x 8· max. Zugriffszeit 150ns· max. Stromaufnahme bei Vcc aktiv (/CE=L und /OE=L): 20mA
stand-by (/CE=H) : 1 mA
Das EPROM ist mit Abstand der größte Energieverbraucher in der Schaltung.Welche Möglichkeiten gibt es nun, um den Energieverbrauch zu reduzieren ?
· CMOS-Version einsetzen· kleine Speichergröße verwenden· stand-by-Mode ausnutzen
Da sich der Prozessor während der Anwendung hauptsächlich im Idle-Mode (s.Kap. 3.1: der Prozessor wird vom Takt getrennt, und kann nur durch einenInterrupt diesen Mode verlassen) befindet, und er während dieser Zeit sein /PSE-Signal auf H legt, folgert daraus, daß man /PSE mit /CE verbindet (/OE=L). DasERPOM wird also automatisch in den stand-by-Mode versetzt und dieStromaufnahme reduziert sich auf ein 20tel.
Nachteil: Die Zugriffszeit verdoppelt sich (2*150ns=300ns). Dies stellt aber beider geringen Taktfrequenz (1 Maschinenzyklus=6.51ms) des Prozessors keinProblem dar.
nicht implementierte Optionen:
Eine weitere Möglichkeit wäre der Anschluß eines Uhrenbausteins an den I2C-Bus, um z.B. den Zeitpunkt der Fernabfragen (Wärmekosten-abrechnung) oderaufgetretener Fehler zu dokumentieren.
4.1 Hardware Entwurfsspezifikation Seite 36
4.1.3 AD-Wandler
Zur Temperaturmessung werden Pt100-Temperatursensoren und ein integrativesWandlungsverfahren (ähnlich dem Dual-Slope-Verfahren) eingesetzt. DieAuflösung der Temperaturmessung soll mindestens 0.5 K betragen. Umkapazitive und magnetische Einkopplungen des Netzes zu unterdrücken, wirddie Integrationszeit auf ein ganzzahliges Viel-faches von 1/50Hz=20msfestgelegt. Die Intergrationszeit kann aber nur auf etwa n*20ms festgelegtwerden, da sie vom Sensorwiderstand abhängig ist.
Kennlinie des Pt100-Sensors [6]:
µ § (4 - 1)
R0=100W
mit A=3,90802*10-3/°C; B=-5,802*10-7/(°C)2; C=-4.2735*10-12/(°C)4 für -200°C £ J £ 0 °C und C=0 für 0°C £ J £ 850°C
Gleichung (4-1) kann ohne größere Fehler durch lineare Regression vereinfachtwerden zu:µ § (4 - 2) ® µ
§ (4 - 3)
maximaler Fehler durch Linearisierung DJ: µ § für J=50°C mit µ
§
µ § (4 - 4)
Durch die Linearisierung der Temperatursensorkennlinie im Bereich von0°C..100°C (Arbeitsbereich einer Heizungsanlage: ca. von 20°C..90°C) wirdalso ein relativ kleiner Fehler gemacht. Eine Erhöhung der Genauigkeit könnteman z.B. dadurch erreichen, daß man Kennlinienpunkte in einer Tabelle ablegtund Zwischenwerte interpoliert (Näherung der Kennlinie durch einenPolygonzug).
4.1 Hardware Entwurfsspezifikation Seite 37
Schaltbild AD-Wandler:
µ §
Bild 4.2 Schaltbild des analogen und digitalen (80C51) Teils des AD-Wandlers
R5 / R6 .. Pt100-Temperatursensoren (Software: R_Temp_1/2)R4 .. Vergleichswiderstand (Software: R_Comp)
Funktion AD-Wandler:
µ §
Bild 4.3 Diagramm der Kondensatorspannung Uc
µ § (4 - 5)
4.1 Hardware Entwurfsspezifikation Seite 38
Der Kondensator C8
wird auf Vcc-Ucesat aufgeladen und anschließend übereinen der 3 Widerstände entladen. Mit Beginn der Entladung wird derrückgesetzte Zähler gestartet. Wenn Uc die Schwelle UTrigger unterschreitet,kippt die Spannung am Ausgang des Komparators von H auf L. Der Zähler wirddadurch gestoppt und der Wert zwischen-gespeichert. Nachdem man das dreimalwiederholt hat, kann man mit Gleichung (4-5) die Widerstände der beiden
Temperatursensoren berechnen. Von diesen Wert müssen noch RDSon
desMOSFETs (laut. Datenblatt ca. 40mW) und der Leitungswiderstand (bei 2mLeitungslänge, 0.25mm2 Querschnitt, Cu ca. 144mW) zu den Sensorenabgezogen werden, um den wirklichen Widerstandwert zu erhalten. MitGleichung (4 - 3) wird dann die Temperatur berechnet.
Vorteil des AD-Wandlers:
Der Kalibrierungszyklus (Entladung von C8 über R4) entfernt alle Fehler ersterOrdnung (Langzeitstabilität, Genauigkeit und Temperatur-abhängigkeit derverwendeten Komponenten und Versorgungsspan-nung). Es sind keineReferenzspannungsquellen notwendig. Nur der Vergleichswiderstand R4 mußmöglichst genau bekannt, temperatur-unabhängig und langzeitstabil sein, da erden Fehler der AD-Wandlung beträchtlich beeinflusst.
Dimensionierung AD-Wandler:
Um eine Auflösung von min. DJ=0.5 Kelvin zu erreichen, muß nach Gl. (4-4)der Temperaturwiderstand mit einer Genauigkeit von mindestens DR=0.19Wgemessen werden.
µ §
d.h. der Zähler muß bis mindestens n=729 zählen, um die geforderte Auflösung
zu erreichen. Bei einer Periodendauer TTakt
=6.51us entspricht dies einer Zeit
Tint:
µ § mit fosz=1.8432MHz und x Î [2,3]
4.1 Hardware Entwurfsspezifikation Seite 39
Eine gute Störunterdrückung der Netzeinkopplungen wird aber nur erreicht,wenn die Integrationszeit ein ganzzahliges Vielfaches von 20ms (Grund:Mittelwert der Störwechselspannung = 0) beträgt. Daraus folgt, dieIntegrationszeit wird auf etwa 20 ms festgelegt. Damit berechnet sich n zu:
µ §
· Berechnung von C mit Ucesat=0.2V, R3=12kW und R2=47kWgewählt:
µ §
µ § ®
µ §
Der Kondensator C8
wird auf etwa 100mF festgelegt. Es wird einTantal-Kondensator verwendet, da er eine geringere Selbstent- ladung
besitzt.
· Für R4 wird ein Metallschichtwiderstand mit 100W und 0.1% Toleranzverwendet, um min. die geforderte Auflösung von 0.5 Kelvin zu erreichen (s.u. max. Fehler).
· Die Triggerschwelle wird auf etwa 1V festgelegt ->R3/(R2+R3)=1/5 -> R2=47k und R3=12k (sollten wegen Verlust-leistung nicht zu klein gewählt werden)
· Als Komparator wird eine verlustarme Version, z.B. LM 393,verwendet
4.1 Hardware Entwurfsspezifikation Seite 40
Abschätzung des Leistungsverbrauchs des Analogteils des AD-Wandlers beieiner Messung (3 Lade -u. Entladezyklen) pro Minute:
· Komparator: µ §
· Kondensator: µ §
· R2 / R3: µ §
· MOSFET: Umschaltverluste (Umladung der CGS
..) sind ver-nachlässigbar
® µ §
max. Fehlerabschätzung der Temperaturmessung:
Aus Gleichung (4 - 3) und (4 - 5) folgt:
µ §
4.1.4 RS232-Schnittstelle
Das serielle Interface des 80C51 benötigt eine Taktrate die 16mal die Baudrateist. Bei einer Baudrate von 1.2 KBaud und einer Quarz-frequenz vonfosz=1.8432 MHz beträgt der Reload-Wert des Timer1-High-Registers=252 (s.Gl. 4-6).Als Treiber und zur Pegelanpassung an den RS-232-Standard wird der BausteinMAX220 (ultra low-power) verwendet.
µ § (4 - 6)
4.1 Hardware Entwurfsspezifikation Seite 41
4.1.5 Bedienteil
Das 'Bedienteil' besteht aus einer einzigen Taste.
Schaltbild:
µ §
Bild 4.4 Schaltbild Bedienteil
Funktion:
Initialisierung: Sense-Line als Eingang (d.h. H in P3.4 schreiben) und Drive-Line als Ausgang initialisieren.Während der Bedienteilabfrage (Tastendruckerkennung) muß die Drive-Line(P1.4) auf L gelegt werden. Bei Tastenbetätigung wird die Sense-Line auf Lheruntergezogen und der ext. Interrupt 0 (handelt Tasten-abfrage) wird durch dienegative Flanke ausgelöst.
Der Ausgang des Operationsverstärkers hat normalerweise H-Pegel(Kondensator geladen). Nur wenn die Kondensatorspannung >Schwellwertspannung UTrigger ist, geht Ausgang auf L-Pegel. -> Während der Temperaturmessung muß der ext. Interrupt 0 disabled werdenund es muß eine Diode o. Widerstand eingesetzt werden, damit durchTastenbetätigung der Port-Transister nicht überlastet wird.
Vorteil dieser Schaltung:
Taste kann deaktiviert werden, indem man H auf Drive-Line ausgibt. Davonwird während der Temperaturmessung gebraucht gemacht, da hier P3.4 zumStoppen des Zählers während der Zeitkonstanten-messung benötigt wird.
4.1 Hardware Entwurfsspezifikation Seite 42
4.1.6 EEPROM
Die Meßdaten usw. dürfen natürlich durch einen Netzausfall nicht verlorengehenund müssen in einen nichtflüchtigen Speicher abgelegt werden, falls wie indieser Anwendung keine Pufferbatterie verwendet wird.Das EEPROM PCF8582 darf aber pro Byte maximal 100000mal beschrieben /gelöscht werden:
Forderung: Schaltung soll mind. 10 Jahre funktionsfähig bleiben ->
µ §
Die Daten werden einmal pro Stunde im EEPROM abgelegt. Falls nur einkleiner Teil des EEPROMs mit Daten belegt ist, könnte man z.B. nach 10Jahren, den Bereich neu festlegen, in dem die Daten abgelegt werden (nichtimplementiert).
µ §
Bei einem geschätzten Speicherbedarf von 100 byte und einen Speichergrößevon 256 byte, würde die Lebensdauer (Funktions-fähigkeit) des EEPROMsverdoppelt.
Meßfehler durch Netzausfall:
Die Teilwärmemenge und das Teilvolumen von maximal einer Stunde (da jedeStunde die aktuellen Daten ins EEPROM geschrieben werden) gehen durcheinen Netzausfall verloren. Der dadurch entstehende Meß-fehler ist im Vergleichzum gesamten Meßzeitraum der Wärmekosten-abrechnung (z.B. 1 Jahr)vernachlässigbar.
4.1 Hardware Entwurfsspezifikation Seite 43
Begründung:
Vereinfachung: Heizungsanlage läuft das ganze Jahr mit ungefähr konstanterWärmeleistung ->
maximaler Meßfehler pro Netzausfall bezogen auf Abrechnungszeitraum 1 Jahr:µ §
Dieser Wert ist im Vergleich zur Meßgenauigkeit (s. 4.1.2. unten) des Systemsum den Faktor 29 kleiner.
Der wirklicher Meßfehler pro Netzausfall bezogen auf den Abrechnungs-zeitraum ist natürlich vom Zeitpunkt der letzten Datensicherung abhängig: µ §
Dieser Wert liegt also im Bereich von fast 0% .. 0.011%.
4.1 Hardware Entwurfsspezifikation Seite 44
4.1.7 Display
Schaltbild LCD-Modul:µ §
Bild 4.5 Anschluß des LCD_Moduls
kurze Funktionsbeschreibung:
Verwendet wird das 16X2 (2 Zeilen mit jeweils 16 Characters) ModulHD44780. Das Modul wird mit dem Anlegen der Versorgungsspannungautomatisch initialisert, aber leider nur für einzeiligen Betrieb. Es muß also fürzweizeiligen Betrieb neu initialisiert werden. Die zwei Register des Moduls, dasInstruction-Register (IR) und das Daten-Register (DR), werden durch das SignalRS ausgewählt. Ob die Register gelesen oder beschrieben werden sollen, legtdas Signal R/W fest.
Ansteuerung:
A1 = R/W A0 = RS Funktion mit E=HA15=H
L L IR <- DB0..7
H L DB0..7 <- IR
L H DR <- DB0..7
H H DB0..7 <- DR
® Schreiben des Akku ins Datenregister durch MOVX @DPTR, A mit DPTR=1XXX XXXX XXXX XX01B. Schreiben des Akku ins Befehlsregister durch MOVX @DPTR, A mit DPTR=1XXX XXXX XXXX XX00B.
4.1 Hardware Entwurfsspezifikation Seite 45
gefordertes Timing des LCD-Moduls:
µ §
Bild 4.6 Impulsdiagramm einer Schreiboperation
ITEM SYMBOL MIN. MAX. UNIT
Enable Cycle Time t cyc E 1.0 - ms
Enable Pulse Width PW E 450 - ns
Enable Rise/Fall Time t Er, t Ef - 25 ns
Address Set-up Time t AS 140 - ns
Adress Hold Time t AH 10 - ns
Data Start-up Time t DSW 195 - ns
Data Hold Time t H 10 - ns
In dieser Anwendung wird nur die Schreiboperation benötigt. Die Leseoperationläuft ähnlich (Signal R/W=H) und wird deshalb nicht erklärt.Um das geforderte Timing zu erhalten, muß man erst einmal wissen, wie dasTiming des 80C51 bei einem ext. Datenspeicher-Schreibzugriff aussieht.
Bild 4.7 Impulsdiagramm ext. Datenspeicher-Schreibzyklus des 80C51
4.1 Hardware Entwurfsspezifikation Seite 46
ITEM SYMBOL TIME / ms
Maschinenzyklus tmcyc 6.51
Write Pulse Width PW wr 2.1
Address Set-up Time t3 1.63
Die beiden Signale RS und R//W lassen sich einfach dadurch erzeugen, indemman A0=RS und A1=R//W setzt, d.h. wenn ALE (Address Latch Enable) nach Lgeht, werden die Daten auf Port0 (in diesen Fall DPL (Datenpointer Lowbyte))gelatcht.
Das Enable-Signal läßt sich aus /RD u. /WR des Microcontrollers und einemAdressdecoder-Signal gewinnen:
µ §
d.h. bei einem ext. Datenspeicher-Lese- o. Schreibzugriff auf die passendeAdresse wird das LCD-Modul enabled.Da kein ext. RAM verwendet wird, kann auf einen Adressdecoder verzichtetwerden, indem man z.B. A15 als Adressdecodersignal verwendet.
µ §
® das geforderte Timing wird eingehalten (vor allem aufgrund der niedrigenTaktfrequenz; die Propagation-Delay-Time der Gatter in der kombinatorischenLogik zur Erzeugung des Enable-Signals kann vernachlässigt (max. 80ns beiHC-Typen) werden)
4.1 Hardware Entwurfsspezifikation Seite 47
komb. Logik:
Es soll nur ein Gater-Typ zur Erzeugung des Enable-Signals verwendet werden(weniger Komponenten, Energieverbrauch ...). Es wird der Typ 74HC00 (4NAND-Gatter) ausgewählt, da sich aus einen NAND- oder NOR-Gatter alleanderen Gatter-Typen ableiten lassen.
µ §
Um das Enable-Signal zu erzeugen, sind also 3 Nand-Glieder aus-reichend:
Bild 4.8 Enable-Logik
4.2 Hardware Schaltplan Seite 48
4.2 Schaltplan
4.3 Hardware Layout Seite 49
4.3 Layout
4.3.1 Bestückungsplan
4.3 Hardware Layout Seite 50
4.3.2 Layout der Komponentenseite
4.3 Hardware Layout Seite 51
4.3.2 Layout der Lötseite
5. Literaturverzeichnis / Quellennachweis Seite 52
5. Literaturverzeichnis / Quellennachweis
[1] Hering / Martin /.. : Physik für Ingenieure, S. 1573. Auflage 1989VDI-Verlag, Düsseldorf
[2] Water : Encyclopaedia Britannica, Band 19, S. 63415. Auflage 1983Enc. Br. Inc., Chicago
[3] Bohrmann / Pitka / .. : Physik für Ingenieure, S. 6121. Auflage 1993Verlag Harri Deutsch, Frankfurt an Main
[4] Microchip Ò : PICÒ16C5X Introduction KitMicrochip Technology Incorporated2355 West Chandler Blvd.Chandler, AZ 85224-6199
[5] Feger : Die 8051-Mikrocontroller-FamilieTeil1: Einführung in die SoftwareVerlag: Siemens Aktiengesellschaft,
München 1991
[6] Niebuhr / Lindner : Physikalische Meßtechnik mit Sensoren,S. 184 / 1853. Auflage 1994R. Oldenbourg Verlag , München
[7] ACTRON Application NoteActron Distributor8000 München 82, Dompfaffweg 10
6. Anhang Seite 53
6. Anhang
(enthält Datenblätter usw.)