PC & Elektronik

Messtechnik mit dem ATmega von Cornelius Schneider, Gerd Schönfelder 1. Auflage

Franzis Verlag, Poing 2010 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 7723 5927 9

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG

5927-9 U1+U4

15.01.2010

9:10 Uhr

Seite 1

PC & ELEKTRONIK

Gert Schönfelder, Cornelius Schneider

Messtechnik mit dem ATmega Dieses Buch widmet sich den vielen kleinen Aufgaben für Prozessoren – genauer Mikroprozessoren –, wobei der PC nur als Hilfsmittel genutzt wird. Viele Prozessoranwendungen sind in der Messtechnik der Elektronik angesiedelt. Dazu kann man auch jede Erfassung von Ereignissen zählen. Somit gehört die Eingabe durch Schaltkontakte genauso dazu wie die Erfassung von Temperaturen und Wegen. Da ein Prozessor gewöhnlich nur digitale Ereignisse verarbeiten kann, ist die Umsetzung der zumeist analogen Umwelt in eine digitale Form ein Problem. Dieses Buch zeigt, wohin man diesen Schnittpunkt legen kann und welchen Einfluss dabei die Wahl von Hardund Software hat. Um dem Titel „Praxisbuch“ gerecht zu werden, orientiert sich das Buch an den grundlegenden Prinzipien. Dabei werden viele Schaltungen als Beispiellösung oder Prinzipschaltung angeboten, die mit eigenen Ideen

Aus dem Inhalt: • Messdatenerfassung und Auswertung • Sensoren zur Messwertgewinnung • Die Messwertübertragung • Die Messwertaufbereitung • Analog-Digital-Wandler • Digital-Analog-Wandler • Verknüpfung von Messwertein- und -ausgabe • Darstellung von Messwerten auf Displays

an die speziellen Aufgaben angepasst werden können. Das Buch bietet zu den einzelnen Beispielen Hinweise zu Möglichkeiten und Grenzen einer Schaltung oder Lösung. Ohne eine große theoretische Herleitung zu betreiben, werden an vielen Stellen natürlich die Dimensionierung der Schaltung und die Aufteilung zwischen Hard- und Software begründet. Am Ende des Buchs verfügen Sie über eine Sammlung von Schaltungs-

Auf CD-ROM: • Lösungsbeispiele zu den Aufgaben • Hardwaresimulator für die AVR-Umgebung

und Programmbausteinen, die Sie nach eigenen Wünschen auch zu einem Gerät zusammenstellen können. Die Wahl des Prozessortyps für dieses Buch fiel auf den ATmega128® von ATmel, da er in vielerlei Hinsicht der 8051-Baureihe ähnelt und eine kostenlose Entwicklungsumgebung existiert. Ein wesentlicher Punkt ist jedoch die Verfügbarkeit eines Entwicklersystems zur Erweiterung des AVR-Studios®. Durch dieses besteht die Möglichkeit, die reine Softwaresimulation eines Programms um „externe“ Hardware zu erweitern und damit einen komplexen Test einer Mischung aus Hardund Software möglich zu machen.

ISBN 978-3-7723-5927-9 ISBN 978-3-7723-5927-9

Der dem Buch beiliegende Simulator ist nicht auf die Experimente im Buch

Messtechnik mit dem ATmega

PC & ELEKTRONIK

Schönefelder Schneider

beschränkt. Sie können ihn frei für technische Experimente verwenden und auch eigene beliebige Schaltungen und Programme testen.

49,95 EUR [D] Besuchen Sie uns im Internet: www.franzis.de

Gert Schönfelder, Cornelius Schneider

Messtechnik mit dem ATmega Auf CD-ROM: · Lösungsbeispiele zu den Aufgaben · Hardwaresimulator für die AVR-Umgebung

5

Inhaltsverzeichnis Inhaltsverzeichnis  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1  Ziel des Buchs  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2  Messen – was und wie  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1  Was ist Messen?  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2  Steuerung und Regelung als Grundanwendung  . . . . . . . . . . . . . . . . . . . 18 2.3  Die Welt ist analog – warum digitale Messtechnik?  . . . . . . . . . . . . . . . . 20 2.4  Eine andere Seite des Messens  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.5  Wie genau soll man messen?  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.6  Hardware oder Software  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.7  Zur Programmierung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3  Messen – mit Hardware oder Software?  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.1  Was nehme ich wann?  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.2  Der Prozessor in der Messtechnik  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4  Die Simulation  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.1  Grundlage der Simulation  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.2  Verwendung des Simulators  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.2.1  Installation  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.2.2  Starten des Simulators  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.3  Prinzip des Simulators  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.4  Beschreibung der Simulationsobjekte  . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.4.1  Analog-digital-Umsetzer (ADU)  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

6

Inhaltsverzeichnis

4.4.2  ADU-Blackbox  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.4.3  ATmega128  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.4.4  DAU  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.4.5  Integrator  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.4.6  Komparator  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.4.7  LED  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.4.8  LED-Matrix  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.4.9  Regelstrecke  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.4.10  Schalter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.4.11  Tastenmatrix  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.4.12  Taster  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.5  Problemlösung und Update  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5  Messdatenerfassung und -auswertung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.1  Grundgrößen bei Messreihen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.2  Übung – Erfassen und Bewerten von Messreihen  . . . . . . . . . . . . . . . . . 42 5.2.1  Erfassen ungestörter Funktionen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 5.2.2  Erfassen zufälliger Messwerte  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.2.3  Erfassen gestörter Messwerte  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.3  Ein Verfahren der Messstochastik   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 5.4  Das Problem der Messfehler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.5  Lösungshinweise zum Kapitel  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

6  Sensoren zur Messwertgewinnung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 6.1  Temperaturmessung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 6.1.1  Das Widerstandsthermometer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 6.1.2  Der Heißleiter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Inhaltsverzeichnis

7

6.1.3  Der pn-Übergang als Sensor  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 6.2  Kraft- und Druckmessung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 6.2.1  Aufnehmer mit Metall-Dehnmessstreifen  . . . . . . . . . . . . . . . . . . . . . . 59 6.2.2  Piezoresistive Aufnehmer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 6.2.3  Piezoelektrische Aufnehmer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 6.2.4  Kapazitive und induktive Aufnehmer  . . . . . . . . . . . . . . . . . . . . . . . . . . 61 6.3  Beschleunigung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 6.4.1  Fotozelle, Fotovervielfacher   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6.4.2  Fotowiderstand  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.4.3  Fotodiode  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.4.4  Fotoelement/Solarzellen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 6.4.5  Fototransistor  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 6.5  Magnetfelder  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 6.6  Weg- und Winkelerfassung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 6.6.1  Messung über Tauchkern  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.6.2  Messung über Messpotenziometer  . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 6.6.3  Messung über Codelineal  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 6.6.4  Messung über inkrementelle Geber  . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 6.7  Schalter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 6.7.1  Entprellung durch Hardware  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 6.7.2  Entprellung durch Software  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

7  Die Messwertübertragung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 7.1  Störungen bei der Übertragung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 7.1.1  Störungen durch Felder  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 7.1.2  Störungen durch Potenzialdifferenzen  . . . . . . . . . . . . . . . . . . . . . . . . . 91

8

Inhaltsverzeichnis

7.1.3  Störungen durch Leitungsreflexionen  . . . . . . . . . . . . . . . . . . . . . . . . . . 92 7.1.4  Fehler durch das Übertragungsmedium  . . . . . . . . . . . . . . . . . . . . . . . . 94 7.2  Varianten der Datenübertragung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 7.2.1  Übertragung analoger Messwerte  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 7.2.2  Übertragung digitaler Werte  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

8  Die Messwertaufbereitung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 8.1  Analoge Filterschaltungen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 8.2  Digitale Filter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 8.2.1  Mittelwertbildung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 8.2.2  Akkumulierender Mittelwert  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 8.2.3  Median-Filter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 8.3  Gleichrichter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 8.3.1  Einweg-Gleichrichter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 8.3.2  Vollweg-Gleichrichter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 8.3.3  Fehler beim aktiven Gleichrichter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 8.4  Multiplexer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 8.4.1  Passive Analogschalter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 8.4.2  CMOS-Schalter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 8.5  Sample-and-hold-Stufen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 8.5.1  Diskrete Sample-and-hold-Stufen  . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 8.5.2  Integrierte Sample-and-hold-Stufen  . . . . . . . . . . . . . . . . . . . . . . . . . . 117 8.6  Referenzquellen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 8.6.1  Spannungsreferenzen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 8.6.2  Stromreferenzen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 8.7  Sonderbaugruppen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

Inhaltsverzeichnis

9

8.7.1  Logarithmierer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 8.7.2  Schaltbare Inverter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 8.7.3  Schaltbare Verstärker  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

9  Analog-Digital-Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 9.1  Klassifizierung der Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 9.2  Vergleichende Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 9.2.1  Parallelumsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 9.2.2  Einflankenumsetzer (Sägezahnumsetzer)  . . . . . . . . . . . . . . . . . . . . . 132 9.2.3  Stufenumsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 9.2.4  Servoumsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 9.2.5  Sukzessive Approximation  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 9.2.6  Fehler bei vergleichenden AD-Wandlern  . . . . . . . . . . . . . . . . . . . . . . 137 9.2.7  Bewertung der Umsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 9.3  Integrierende Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 9.3.1  Zweiflankenumsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 9.3.2  Spannungs-Frequenz-Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 9.3.3  Mehrflankenumsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 9.3.4  Charge-balancing-Umsetzer   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 9.3.5  Sigma-Delta  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 9.3.6  PWM-Umsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 9.3.7  Fehler integrierender AD-Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 9.4  Allgemeine Fehler bei AD-Wandlern  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 9.5  Das Antialiasing  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 9.6  Kommerzielle Wandlerschaltkreise  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 9.6.1  AD-Wandlerschaltungen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

10

Inhaltsverzeichnis

9.6.2  Datenerfassungssysteme  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 9.6.3  Multimeter-Schaltkreise  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 9.6.4  Die andere Lösung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 9.7  Lösungshinweise zum Kapitel  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

10  Digital-analog-Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 10.1  Summation gewichteter Ströme  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 10.2  Das R2R-Netzwerk  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 10.3  Frequenz-Spannungs-Umsetzer   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 10.4  Wandlung durch Impulsbreitenmodulation (PWM- Wandler)  . . . . . . . 165 10.5  Fehler von DA-Wandlern  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 10.6  Integrierte Umsetzer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 10.7  Einsatzbeispiele für DA-Wandler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 10.7.1  Multiplikation von Spannungen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 10.7.2  Lautstärkeregelung mit DA-Wandlern  . . . . . . . . . . . . . . . . . . . . . . . . 169 10.7.3  Digital einstellbarer Komparator  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

11  Verknüpfung von Mess­wertein- und -ausgabe – eine einfache Regelung  .171 11.1  Einige Grundlagen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 11.1.1  Die stetigen linearen Regler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 11.1.2  Die diskontinuierlichen Regler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 11.2  Der Regelkreis an einem Beispiel erläutert  . . . . . . . . . . . . . . . . . . . . . 175 11.2.1  Der Zweipunktregler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 11.2.2  Der Mehrpunktregler  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 11.2.3  Die fast stetige Regelung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 11.2.4  Einfluss des Zeitverhaltens der Regelstrecke  . . . . . . . . . . . . . . . . . . 179 11.3  Lösungshinweise zum Kapitel  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

Inhaltsverzeichnis

11

12  Darstellung von Messwerten auf Displays  . . . . . . . . . . . . . . . . . . . . . . . . . . 182 12.1  Einige Grundgedanken  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 12.2  Die alphanumerische Darstellung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 12.3  Die grafische Darstellung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

13  Darstellung von Zuständen und Messwerten  . . . . . . . . . . . . . . . . . . . . . . . . 185 13.1  Ausgabe durch Leuchtdioden  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 13.1.1  Arbeit mit Einzeldioden  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 13.1.2  Nutzung von Diodenanordnungen  . . . . . . . . . . . . . . . . . . . . . . . . . . 189 13.2  Das Verfahren der zeitmultiplexen Ansteuerung  . . . . . . . . . . . . . . . . . 191 13.3  Der Einsatz von LCD-Displays  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 13.4  Schaltkreise für die Anzeigesteuerung  . . . . . . . . . . . . . . . . . . . . . . . . 198

14  Ansteuerung von Lasten  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 14.1  Probleme beim Anschluss größerer Lasten  . . . . . . . . . . . . . . . . . . . . . 202 14.2  Treiberschaltkreise  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 14.3  Der Einsatz von Thyristoren (an Gleichspannung)  . . . . . . . . . . . . . . . 206 14.4  Thyristor an Netzspannung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

15  Erzeugung von Signalen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 15.1  Die Grenzen beim Rechnereinsatz  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 15.2  Rechtecksignale  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 15.2.1  Frequenz- und Impulserzeugung mittels Software  . . . . . . . . . . . . . 210 15.2.2  Impulserzeugung mit der Controller-Hardware  . . . . . . . . . . . . . . . . 211 15.2.3  Impulserzeugung mit externer Zusatzhardware  . . . . . . . . . . . . . . . 211 15.3  Sinussignale  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 15.3.1  Digitale Sinusgeneratoren  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 15.3.2  DDS – Digital Direct Synthese  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

12

Inhaltsverzeichnis

15.3.3  Analoge Sinusgeneratoren  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 15.4  Spezielle Funktionsformen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 15.4.1  Analoge Erzeugung von monotonen Spannungsverläufen  . . . . . . . 223 15.4.2  Digitale Erzeugung von Funktionsverläufen  . . . . . . . . . . . . . . . . . . . 225 15.5  Digitale Impulsmuster  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 15.6  Funktionsgenerator-IC  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

16  Messung von Frequenz und Zeit  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 16.1  Die Frequenzmessung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 16.2  Fehler bei der Frequenzmessung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 16.3  Messmöglichkeiten mit einem Zähler  . . . . . . . . . . . . . . . . . . . . . . . . . 230 16.4  Frequenzmessung mit dem Mikrocontroller  . . . . . . . . . . . . . . . . . . . . 232 16.5  Der Aufbau von Digitalzählern  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

17  Messschaltungen und Hilfsmittel  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 17.1  Widerstandsmessung  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 17.2  Messung von Kapazitäten  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 17.3  Messung des Frequenzgangs  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 17.4  Hilfsskala für den Oszillografen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

18  Messungen in digitalen Schaltungen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 18.1  Bestimmung von Pegeln und Zuständen  . . . . . . . . . . . . . . . . . . . . . . . 243 18.2  Bestimmung von Zeitabläufen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 18.3  Logikkomparatoren  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 18.4  Signaturanalyse  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

19  Interfaces industrieller Sensoren  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 19.1 Analoge Interfaces  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 19.1.1  Spannungsausgang  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250

Inhaltsverzeichnis

13

19.1.2  Ratiometrischer Spannungsausgang  . . . . . . . . . . . . . . . . . . . . . . . . 251 19.1.3  Stromausgang  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 19.1.4  Frequenzausgang und Pulsweitenmodulation  . . . . . . . . . . . . . . . . 253 19.1.5  4-/6-Draht-Interface  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 19.2  Digitale Interfaces  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 19.2.1  CAN-Gruppe  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 19.2.2  LON   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 19.2.3  HART  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 19.2.4  RS485  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 19.2.5  Profi-Bus  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 19.2.6  I2C  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 19.2.7  SPI  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 19.2.8  IEEE 1451   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263

20  Inhalt CD  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 21  Literatur und Quellen  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Stichwortverzeichnis  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277

15

1  Ziel des Buchs Beim Durchstöbern der Bücherregale findet man zu fast allen Problemen der Rechentechnik das richtige Buch. Nur repräsentiert dieses Bücherangebot nicht die Mengenverhältnisse bei den Prozessoranwendungen. Wer denkt vor seinem PC schon daran, dass die benannte CPU in diesem Gehäuse nur einer von vielen Prozessoren ist – man denke nur an die Tastatur, den Tastaturcontroller und einige Anschlusssteuerungen und Peripherieeinheiten, die alle eigene Prozessoren enthalten. Das vorliegende Buch verwendet deshalb den PC nur als Hilfsmittel und wendet sich den vielen kleinen Aufgaben für Prozessoren – genauer Mikroprozessoren – zu. Nicht ohne Grund führt dieses Buch den Begriff „Messtechnik“ im Titel. Ein großer Teil der Prozessoranwendungen ist in diesem Teil der Elektronik angesiedelt. Fasst man dazu den Begriff der Messtechnik etwas weiter, kann man jegliche Erfassung von Ereignissen dazu zählen. Es gehören somit die Eingabe durch Schaltkontakte genauso dazu wie die Erfassung von Temperaturen und Wegen. Da ein Prozessor gewöhnlich nur digitale Ereignisse verarbeiten kann, ist die Umsetzung der zumeist analogen Umwelt in eine digitale Form ein Problem. Dieses Buch zeigt, wo man diesen Schnittpunkt hinlegen kann und welchen Einfluss dabei die Wahl von Hard- und Software hat. Um dem Titel „Praxisbuch“ gerecht zu werden, orientiert sich das Buch an den grundlegenden Prinzipien. Dabei werden viele Schaltungen als Beispiellösung oder Prinzipschaltung angeboten, die mit eigenen Ideen an die speziellen Aufgaben angepasst werden können. Das Buch bringt zu den einzelnen Beispielen Hinweise zu Möglichkeiten und Grenzen einer Schaltung oder Lösung. Ohne eine große theoretische Herleitung zu betreiben, werden an vielen Stellen natürlich die Dimensionierung der Schaltung und die Aufteilung zwischen Hard- und Software begründet. Am Ende des Buchs verfügen Sie über eine Sammlung von Schaltungs- und Programmbausteinen, die Sie nach eigenen Wünschen auch zu einem Gerät zusammenstellen können. In diesem Buch befassen wir uns bewusst mit dem „Low-end-Bereich“ der Messtechnik. Es wird demzufolge nicht um höchste Auflösungen und Geschwindigkeiten gehen. Dieser Bereich erfordert eine sehr exakte technische und physikalische Konstruktion und Dimensionierung einer Schaltung. Dies lässt sich nicht mehr mit geringem Aufwand als Experiment verwirklichen. Die Wahl des Prozessortyps für dieses Buch fiel auf den ATmega128 ® von Atmel. Er ist nicht unbedingt der Prozessor mit der einfachsten Hard- und Softwarestruktur, bietet aber eine große Anzahl von Pluspunkten. So ist er in vielen Fragen der 8051-Baureihe ähnlich, er ist im Handel erhältlich und es existiert eine kostenlose Entwicklungsumgebung.

16

1  Ziel des Buchs

Ein wesentlicher Punkt ist die Verfügbarkeit eines Entwicklersystems zur Erweiterung des AVR-Studios ®. Durch dieses besteht die Möglichkeit, die reine Softwaresimulation eines Programms um „externe“ Hardware zu erweitern und damit einen komplexen Test einer Mischung aus Hard- und Software möglich zu machen. Der dem Buch beiliegende Simulator ist nicht auf die Experimente des Buchs beschränkt. Sie können ihn frei für technische Experimente verwenden und auch eigene beliebige Schaltungen und Programme testen.

37

5  Messdatenerfassung und -auswertung „Wir wissen nicht, was wir messen, aber das mit acht Stellen.“ Aus dem Spruch lässt sich leicht ableiten, dass ein Grundproblem der Messtechnik die Analyse der zu erwartenden Daten und deren Interpretation ist. Man muss sich demzufolge sehr genau darüber klar werden, was man messen will, bevor es an die Auswahl der Methoden und Mittel geht. Ein Messobjekt bietet uns allgemein mehr Informationen an, als wir benötigen. Diese können dann auch noch als direkte Größe oder in indirekter Form vorliegen. Nehmen Sie ein einfaches Beispiel: einen Klingeltrafo. Bereits an diesem können Sie eine Unzahl von Werten und Parametern messen oder anschließend errechnen, wie z. B. ●● ●● ●● ●● ●●

Leerlaufspannung Kurzschlussstrom Innenwiderstand Störspannungsanteile Spitzenspannung

Das war nur eine Auswahl von elektrischen Parametern; sie ließe sich durch thermische, magnetische und andere Parameter ergänzen. Die genaue Analyse der Messwerte hat auch noch ein anderes Ziel. So kann man durch mathematische Verfahren aus der Summe der Messwerte systematische und teilweise auch zufällige Fehler herauslösen. Die wohl anschaulichste Aufgabenstellung ist hier die Unterdrückung des Netzbrummens. Auch der Ausschluss bestimmter Amplituden-, Frequenz- oder Wertebereiche aus einer Messreihe können eine Qualitätsverbesserung bringen.

5.1  Grundgrößen bei Messreihen Die erste Aufgabe beim Konzipieren einer Messanordnung ist die Analyse der Messwerte. Für die Dimensionierung unserer Schaltungen und Programme benötigen wir Werte, die uns Informationen über das Verhalten des Messobjekts bringen. Zu diesem Zweck erstellt man eine Messreihe, die aus systematisch erfassten Werten, aus spontanen Einzelmessungen oder aus physikalischen und technischen Betrachtungen und darauf errechneten Werten bestehen kann.

38

5  Messdatenerfassung und -auswertung

Welche Werte charakterisieren unser Messobjekt? Der minimale und der maximale Messwert Über diese Werte erhalten wir den Arbeitsbereich, in dem wir zukünftig messen wollen. Da wir nur mit endlich vielen Stufen auflösen können, ist es wichtig, den Messbereich so eng wie möglich um diesen Arbeitsbereich zu legen, da dadurch die Genauigkeit steigt. Der Mittelwert Er gibt Auskunft über die wahrscheinlichste Größe des Messwerts. Er kann auch für die Wahl eines Arbeitspunkts herangezogen werden. (Abb. 5.1) k Miwe = (S Messwert(n)) / k n=1 Messwert max Mittelwert

min

Zeit Abb. 5.1: Funktionsverlauf mit MIN, MAX und Mittelwert

Der gleitende Mittelwert Er wird aus den Mittelwerten kurzer Stücke der Messreihe gebildet und bildet damit eine eigene Messreihe. Der Funktionsverlauf wird durch die Mittelwerte eines wandernden Abschnitts der Messreihe bestimmt, d. h.: GMW(1) ist der Mittelwert der Messwerte 1 bis 9 GMW(2) ist der Mittelwert der Messwerte 2 bis 10 GMW(3) ist der Mittelwert der Messwerte 3 bis 11 usw.

5.1  Grundgrößen bei Messreihen

39

Der gleitende Mittelwert kann auch als einfachste Form der Filterung genutzt werden. Durch die Bearbeitungsform werden einmalige „Ausrutscher“ der Messwerte unterdrückt. (Abb. 5.2) Messwert

t gleitender Mittelwert

t Abb. 5.2: Gleitender Mittelwert

Ergibt sich dabei eine Kurve, enthält die Messreihe langzeitliche Schwankungen, die z. B. thermische Ursachen haben können. Ein stetiger Anstieg dieser Kurve deutet auf eine Drift hin.

40

5  Messdatenerfassung und -auswertung

Messwert

Drift

t gleitender Mittelwert

t Abb. 5.3: Drift

Die Standardabweichung Sie kann aus der Messreihe auf mathematischem Weg bestimmt werden und gibt Auskunft über die wahrscheinlichste(n) (und damit häufigsten) Größe(n) des Messwerts. Mit diesen Aussagen ließen sich Bereiche unterschiedlicher Messgenauigkeit definieren, was zu einer Vereinfachung der Schaltung führen könnte. Praktisch ausgedrückt bedeutet die Standardabweichung, dass sich der Messwert mit einer definierten Wahrscheinlichkeit (z. B. 95 %) in dem Bereich „Mittelwert +/– Standardabweichung“ aufhält (Abb. 5.4).

5.1  Grundgrößen bei Messreihen

41

Messwert

Mittelwert

+/- Standardabweichung

Zeit

Abb. 5.4: Standardabweichung

Nachdem wir bis jetzt vor allem die statischen Werte der Messreihe betrachtet haben, folgen nun Aussagen zum dynamischen Verhalten der Werte. Änderungsgeschwindigkeit Aus der minimalen und maximalen Änderungsgeschwindig­keit lassen sich Schlussfolgerungen auf das zu erwartende Frequenzspektrum ableiten. Je höher die Änderungsgeschwindigkeit ist, desto größer sind die zu verarbeitenden Frequenzen. Aus der maximalen Änderungsgeschwindigkeit lassen sich auch Schlussfolgerungen auf die notwendige Messhäufigkeit ziehen, denn je schneller sich ein Messwert ändert, umso häufiger muss man messen, um alle Änderungen zu erfassen. Periodendauer Die Periodendauer einer Messreihe kann bei sich wiederholenden Vorgängen von Interesse sein. Das ist vor allem für die Unterdrückung von (periodischen) Störungen wichtig, da man durch die Wahl eines geeigneten Umsetzverfahren periodische Störungen noch am besten eliminieren kann. Abtastrate (Samplingrate) Ein wichtiger Parameter ist die Messhäufigkeit – oder auch Abtastrate. Sie beeinflusst die Qualität der Messung erheblich, sobald sich die Messwerte über die Zeit verändern. Bei periodischen Verläufen gilt das Abtasttheorem, wonach bei der höchsten auftretenden Frequenz je Periode mindestens zwei Abtastpunkte vorhanden sein müssen. Wie aber in Abb. 5.5 zu erkennen ist, bringt das nur Messwerte mit einem begrenzten Aussagewert. Als praktische Faustregel gilt, dass die Abtastrate etwa um den Faktor 10 höher als die maximale Signalfrequenz sein sollte.

42

5  Messdatenerfassung und -auswertung

t Abb. 5.5: Abtastung einer Funktion

Für nicht periodische Signale muss man sich an der Änderungsgeschwindigkeit orientieren, oder man geht davon aus, welche maximalen Messwertänderungen auf den Gesamtprozess keinen Einfluss haben, wenn Änderungen nicht erfasst worden sind.

5.2  Übung – Erfassen und Bewerten von Messreihen Wir kommen nun zu einigen praktischen Übungen. Dazu benötigen wir den Simulator, der uns Funktionen mit unterschiedlichen Eigenschaften bereitstellt. Da dies der erste praktische Kontakt mit dem Simulator ist, wird das zu erstellende Programm etwas ausführlicher erklärt.

5.2.1  Erfassen ungestörter Funktionen Der Simulator bietet uns vier systematische Funktionen an, wovon wir die Funktion 2 untersuchen wollen. Aufgabe 5.1 Erfassen Sie die Werte der systematischen Funktion 2 und stellen Sie die Ergebnisse tabellarisch dar. Bestimmen Sie den Verlauf der Funktion und die Periodendauer. Lösungsschritte 1) Setzen Sie sich im Simulator eine Experimentieranordnung zusammen aus den Komponenten AVR-Prozessor und ADU-Blackbox – eingestellt auf Funktion 2.

5.2  Übung – Erfassen und Bewerten von Messreihen

43

2) Wählen Sie als Startpin A0, als ReadyPin A1 und als Daten-Port B. 3) Schreiben Sie ein Programm zum Lesen des ADC über 100 Schritte, legen Sie die Ergebnisse im RAM ab und testen Sie es im AVR-Studio. 4) Betrachten Sie die entstandenen Daten und bestimmen Sie empirisch die Funktionsform und die Frequenz. Alternativ können Sie die Frequenz oder Periodendauer auch durch ein Programm bestimmen. Als Programm hat das dann etwa die folgende Form: .include "m128def.inc" ; ; ---------------------------------------------------------------; ; Beispielprogramm zur Aufgabe 5.1 ; ; ---------------------------------------------------------------; .def temp1 = r16 ; temporary register .def temp2 = r17 ; 2. TEMP-Register .def temp3 = r18 ; 3. Temp .def loop1 = r19 ; Schleife 1 ; X = r26/r27 ; Pointer ; Y = r28/r29 ; ; Z = r30/r31 ; ; ; ---------------------------------------------------------------; .dseg ; Daten-Segment ; RAM: .byte 200 ; ; ---------------------------------------------------------------; .cseg ; Programm-Segment ; reset: ldi temp1,low(RAMEND) out SPL,temp1 ; init Stack Pointer ldi temp1,high(RAMEND) out SPH,temp1 ; ; Init Ports fuer Aufgabe ; ; -- Port 0 –A ldi temp1,0b00000000 ; out PortA,temp1 ldi temp1,0b00000001 ; Richtung (1=out) out DDRA,temp1 ; A0 = out ; -- Port 1 –B ldi temp1,0b00000000 ; out PortB,temp1 ldi temp1,0b00000000 ; Richtung (1=out) out DDRB,temp1 ; alle IN

44

5  Messdatenerfassung und -auswertung

; ; ---------------------------------------------------------------; ZL,low(RAM) main: ldi ldi ZH,high(RAM) ; Zeiger auf Datenpuffer ldi loop1,100 ; Anzahl ; m1: sbi PORTA, 0 ; Startimpuls "ADC" nop ; Denkpause zur Datenaktualisierung nop cbi PORTA, 0 m2: sbis PINA, 1 rjmp m2 ; warten auf fertig ; Daten da in temp1,PinB ; Daten holen st Z+,temp1 ; Daten in RAM dec loop1 ; Schleife Anzahl brne m1 ; end1: nop rjmp main ; ; ---------------------------------------------------------------;

Der Programmteil zwischen reset und main dient der Einstellung der CPU und wird in den folgenden Beispielen ebenfalls verwendet. Port B wird dazu auf Eingabe und bei Port A das Pin 0 auf Ausgabe und Pin 1 auf Eingabe initialisiert. Die eigentliche Datenerfassung beginnt ab der Marke main mit dem Setzen des Datenzeigers und des Schleifenzählers. Ab der Marke m1 wird die AD-Wandlung angestoßen, indem ein 1-Impuls auf dem Portpin A0 ausgegeben wird. Bei Marke m2 wird auf die Fertigmeldung des ADC gewartet, was durch eine 1 angezeigt wird. Anschließend erfolgen das Einlesen und die Ablage der Daten und die Prüfung der Schleife. Auswertung Skizzieren Sie die Messwerte in ein Diagramm. Welche Periodendauer besitzt die gemessene Funktion? Aufgabe 5.1 (Zusatz) Bestimmen Sie die Funktionsformen von Funktion 1 und 3 durch Änderung der Auswahl im Simulator. Aufgabe 5.2 Erweitern Sie das Programm von Aufgabe 5.1 um eine Bestimmung von Minimum, Maximum und Mittelwert bei den Funktionen 1 bis 3.

5.2  Übung – Erfassen und Bewerten von Messreihen

Suchen Sie Anzahlen von Messwerten, bei denen sich die Ergebnisse gleichen. Lösungsansatz .include "m128def.inc" ; ; ---------------------------------------------------------------; ; Beispielprogramm zur Aufgabe 5.2 ; ; ---------------------------------------------------------------; .def temp1 = r16 ; temporary register .def temp2 = r17 ; 2. TEMP-Register .def temp3 = r18 ; 3. Temp .def loop1 = r19 ; Schleife 1 .def min = r20 ; MIN .def max = r21 ; MAX ; X = r26/r27 ; ; Y = r28/r29 ; Summe ; Z = r30/r31 ; Speicherzeiger ; ; ---------------------------------------------------------------; .dseg ; Daten-Segment ; RAM: .byte 200 ; ; ---------------------------------------------------------------; .cseg ; Programm-Segment ; reset: ldi temp1,low(RAMEND) out SPL,temp1 ; init Stack Pointer ldi temp1,high(RAMEND) out SPH,temp1 ; ; Init Ports fuer Aufgabe ; ; -- Port 0 –A ldi temp1,0b00000000 ; out PortA,temp1 ldi temp1,0b00000001 ; Richtung (1=out) out DDRA,temp1 ; A0 = out ; -- Port 1 –B ldi temp1,0b00000000 ; out PortB,temp1 ldi temp1,0b00000000 ; Richtung (1=out) out DDRB,temp1 ; alle IN ; ; ---------------------------------------------------------------; main: ldi ZL,low(RAM)

45

46 ; m1: m2:

5  Messdatenerfassung und -auswertung

ldi ldi

; Zeiger auf Datenpuffer ; Anzahl

sbi PORTA, 0 ; Startimpuls "ADC" nop ; Denkpause zur Datenaktualisierung nop cbi PORTA, 0

sbis rjmp Daten da in st dec brne



ZH,high(RAM) loop1,128

PINA, 1 m2

; warten auf fertig ; temp1,PinB ; Daten holen Z+,temp1 ; Daten in RAM loop1 ; Schleife Anzahl m1 ; end1: nop ; ; –- –- –- –- –- –- –- –- –- –- –- –- –- –- –- –; ; Auswertung MIN, MAX, Mittelwert der Funktion ; ZL,low(RAM) aw1: ldi ldi ZH,high(RAM) ; Zeiger auf Datenpuffer ldi loop1,128 ; Anzahl ldi max,0 ; Startwert Max ldi min,255 ; Startwert Min clr YL clr YH ; Summe = 0 clr XH ; XH=0 fuer Addition Summe ; aw2: ld XL,Z+ ; holen Datenwert add YL,XL adc YH,XH ; Summe bilden (fuer MiWe) cp min,XL brcs aw3 ; XL > min mov min,XL ; XL < min max,XL aw3: cp brcc aw4 ; XL < max mov max,XL ; XL > max aw4: dec loop1 ; Schleife Anzahl brne aw2 ; add YL,YL adc YH,YH ; YH = Mittelwert ; ; rjmp main ; ; ----------------------------------------------------------------

5.2  Übung – Erfassen und Bewerten von Messreihen

47

Der Teil der Datenerfassung entspricht dem von Aufgabe 5.1. Die Zahl der Messwerte wurde nur zugunsten einer einfacheren Auswertung auf 128 erhöht. An diesen Teil schließt sich eine Auswertung des Datenvectors an. Der geladene Messwert wird zuerst auf das Summenregister addiert und anschließend auf Min und Max verglichen. Am Ende des Programmabschnitts steht im Register R20 der Minimalwert und im Register R21 steht der Maximalwert. Im Doppelregister Y befindet sich die Summe alle Messwerte, die noch durch 128 zu teilen ist. Hier wurde der kürzere Weg gewählt und die Summe mit 2 multipliziert (Addition mit sich selbst), wodurch das Ergebnis in YH steht, da ein Tausch von YH und YL einer dann notwendigen Division durch 256 entspräche. Für die Variation der Auswertung können Sie den letzten Sprung zum Programmanfang auf die Marke aw1 setzen und anschließend im Debugger den Loop-Wert verändern. Die zwei letzten Additionsbefehle sollten dann gestrichen und die Division von Hand ausgeführt werden. Auswertung Versuchen Sie eine Interpretation der Messergebnisse. Zeichnen Sie sich dazu den Funktionsverlauf über mehrere Perioden und interpretieren Sie den Verlauf der Mittelwerte als Funktion der Messdauer (Anzahl der Messwerte). Zeichen Sie dabei die Funktion selbst und den Mittelwert in ein Diagramm. Zu einem späteren Zeitpunkt werden diese Zusammenhänge noch eine Rolle spielen.

5.2.2  Erfassen zufälliger Messwerte Der Simulator bietet mit der Funktion 4 der ADC-Blackbox eine zufällige Messwertfolge an. Die dort ablesbaren Werte unterliegen zwar programmbedingt einem System und wiederholen sich nach einer bestimmten Zeit, ihr Auftreten kann aber als stochastisch betrachtet werden. Aufgabe 5.3 Erfassen Sie die Werte der zufälligen Funktion 4 und bestimmen Sie die Periodendauer. Ermitteln Sie dazu Minimum, Maximum und Mittelwert für unterschiedliche Anzahlen von Messwerten. Wählen Sie die Messwertanzahl ab 64 bis 256 Messwerte aufsteigend in Einerschritten. Lösungsschritte Als Basis verwenden wir das Programm aus Aufgabe 5.2. Ändern Sie das Programm so ab, dass die Funktion über 256 Elemente einmal in den Speicher gelesen wird und anschließend mehrfach ausgewertet werden kann.

48

5  Messdatenerfassung und -auswertung

Auswertung Führen Sie eine Auswertung wie bei Aufgabe 5.2 durch und übertragen Sie die Erkenntnisse von dort auf diese Funktion.

5.2.3  Erfassen gestörter Messwerte Die von der ADU-Blackbox bereitgestellten Funktionen 1 bis 3 würden den Idealzustand darstellen. Leider sind die Messwerte in der Praxis gestört, was bei der Datenerfassung und Auswertung zu berücksichtigen ist. Bei den Störungen unterscheiden wir zwei Arten: ●● die determinierten Störungen, die durch Messreihen bestimmbar sind. Sie treten in einem festen Zusammenhang im Bezug zum Messwert auf und können deshalb mathematisch oder technisch berücksichtigt werden. Zu ihnen rechnen wir Erscheinungen wie Drift, Offset und nichtlineare Kennlinien. ●● die stochastischen (zufälligen) Störungen. Sie lassen sich nicht vorhersagen und finden bei der Gestaltung der Messanordnung somit keine Berücksichtigung. Man kann sie durch technische Maßnahmen einschränken und mittels mathematischer Methoden weitestgehend „herausrechnen". Die folgenden Aufgaben behandeln die Erfassung und Bewertung gestörter Messreihen. Dabei dienen uns die bereits bekannten Funktionen als Basis. Aufgabe 5.4 Erfassen Sie die Werte der ADU-BlackBox für die Funktionen 5 und 6. Bestimmen Sie dabei von den Messreihen Minimum, Maximum und den Mittelwert unter Verwendung des Programms von Aufgabe 5.2. Auswertung Bewerten Sie die Wirkung der Störungen auf die Messwerte. Vergleichen Sie dabei die Ergebnisse der Aufgaben 5.2 und 5.4 miteinander. Welche Maßnahmen lassen sich zur Beseitigung dieser Störungen verwenden? Unangenehmer sind zufällige Störungen der Messwerte. Dieses Problem betrachten wir in Aufgabe 5.5. Aufgabe 5.5 Erfassen Sie die Werte der ADU-BlackBox für die Funktionen 7 bis 11. Bestimmen Sie dabei von den Messreihen Minimum, Maximum und den Mittelwert unter Verwendung des Programms von Aufgabe 5.2. Auswertung Betrachten Sie die Verwendbarkeit der Messwerte. Welche Auswirkung hat das Verhältnis vom Störpegel zum Messwert?

5.3  Ein Verfahren der Messstochastik

49

Wir unternehmen nun einen Versuch, diese Messwerte in eine brauchbare Form zu bringen. Eine einfache Möglichkeit ist dabei die Arbeit mit gleitenden Mittelwerten, die eine Glättung einer Messreihe realisieren. Aufgabe 5.6 Wiederholen Sie die Messreihe von Aufgabe 5.5. Führen Sie mit den einlaufenden Messwerten eine Verrechnung zum gleitenden Mittelwert durch, und verarbeiten Sie die Ergebnisse der neuen Messreihe. Betrachten Sie dabei mehrere Perioden der Funktionen. Lösungsschritte Um das Programm einfacher und flexibler zu gestalten, ist eine Trennung der Messwertaufnahme und der -verarbeitung zu empfehlen. Erfassen Sie dazu etwa 500 Messwerte in einem Puffer. Aus diesem heraus berechnen Sie in der Programmschleife entsprechend der vorhergehenden Aufgaben die Mittelwerte und Grenzwerte. Untersuchen Sie zur Kontrolle die Einzelwerte einer Periode der Funktion nach der Mittelwertbildung. Variieren Sie bei der Berechnung die Anzahl der zur Mittelwertbildung herangezogenen Messwerte. Auswertung Bei entsprechender Wahl der Parameter kann die ursprüngliche Funktion nahezu hergestellt werden. Vergleichen Sie die Ergebnisse mit den zuvor gemessenen Werten.

5.3  Ein Verfahren der Messstochastik Bei Aufgabe 5.2 und 5.3 haben wir versucht, mittels Betrachtung der Mittelwerte einer Funktion ihre Periodendauer zu bestimmen. Dabei sind wir davon ausgegangen, dass bei zyklisch wiederkehrenden Funktionen eine Periode immer den gleichen Mittelwert besitzt und damit mehrere Perioden diesen Wert ebenfalls ergeben müssen. Die statistische Sicherheit dieser Methode ist allerdings nicht sehr hoch, da sich ein gleicher Mittelwert mit sehr unterschiedlichen Einzelwerten bilden lässt. [5.1] Für diese Aufgabe existiert ein mathematisches Verfahren, das die Ähnlichkeit von Funktionen oder Messreihen bestimmt. Das Ergebnis ist der Korrelationskoeffizient (r), der anzeigt, ob die beiden Messreihen proportional (r-1) oder zusammenhanglos (r=0) sind. Da sich r in den Grenzen von –1