elektronische messdatenverarbeitung - ... ?· 1 detektoren und sensoren 1 1 detektoren und...

Download Elektronische Messdatenverarbeitung - ... ?· 1 Detektoren und Sensoren 1 1 Detektoren und Sensoren…

Post on 10-Aug-2019

212 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Elektronische Messdatenverarbeitung

    Klaus Betzler ∗

    Universität Osnabrück Wintersemester 2006/2007

    Inhaltsverzeichnis

    1 Detektoren und Sensoren 1 1.1 Temperatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    1.1.1 Widerstände . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.2 Thermoelemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.3 Band-Gap-Referenz-Diode . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1.4 Kapazitive Sensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    1.2 Koordinaten (Ort und Winkel) . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Licht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    1.3.1 Zur Charakterisierung von Photodetektoren . . . . . . . . . . . . . . 6 1.3.2 Photomultiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3.3 Photodioden, Phototransistoren . . . . . . . . . . . . . . . . . . . . . 14 1.3.4 Photoleiter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.3.5 Thermische Detektoren . . . . . . . . . . . . . . . . . . . . . . . . . 19

    1.4 Teilchen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.4.1 Szintillationszähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.4.2 Halbleiterdetektoren . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.4.3 Sekundärelektronenvervielfacher . . . . . . . . . . . . . . . . . . . . 22

    ∗ Klaus.Betzler@Physik.Uni-Osnabrueck.de 14. Oktober 2006

  • Inhaltsverzeichnis ii

    2 Aktoren 23 2.1 Externe Geräte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2 Leistungsschalter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.3 Schrittmotoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.4 Servos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.5 Altgeräte-Recycling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.6 Piezostellelemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.7 Entstörung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    3 Signalverarbeitung 30 3.1 Strom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.2 Spannung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.3 Widerstand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.4 Lock-In-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.5 Ladung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.6 Ereignis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.7 Zeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    3.7.1 Transientenspeicher . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.7.2 Boxcar-Technik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.7.3 Zeit-Impulshöhen-Wandlung . . . . . . . . . . . . . . . . . . . . . . . 35

    4 D/A- und A/D-Wandler 36 4.1 Digital/Analog-Wandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.2 Analog/Digital-Wandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    4.2.1 Parallel-A/D-Wandler . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.2.2 Kaskaden-Wandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.2.3 Integrations- und Zählverfahren . . . . . . . . . . . . . . . . . . . . . 39 4.2.4 Wägeverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.2.5 Spannungs-Frequenz-Wandlung . . . . . . . . . . . . . . . . . . . . . 44

    4.3 Potentialtrennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 4.4 Digitale Regelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    5 MATLAB I : Messdatenerfassung 48 5.1 Hardware-Zugriff mit MATLAB-Funktionen . . . . . . . . . . . . . . . . . . 49 5.2 Externe Programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.3 MEX-Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 5.4 MEX-Funktionen und ‘Microsoft Foundation Classes’ . . . . . . . . . . . . . 53 5.5 MEX-Funktionen mit GCC oder G++ . . . . . . . . . . . . . . . . . . . . . 54 5.6 MATLAB als ‘Engine’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.7 ActiveX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.8 Dateiformate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

  • Inhaltsverzeichnis iii

    5.9 Graphische Benutzeroberflächen . . . . . . . . . . . . . . . . . . . . . . . . . 59

    6 MATLAB II : Messdatenverarbeitung 63 6.1 Filterung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

    6.1.1 Gewichteter Mittelwert . . . . . . . . . . . . . . . . . . . . . . . . . 64 6.1.2 Gradientenfilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.1.3 Savitzky-Golay-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . 66

    6.2 Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 6.3 Fouriertransformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

    6.3.1 Frequenzanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 6.3.2 Datenfilterung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

    6.4 Fits, Anpassung an Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . 77 6.4.1 Polynome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 6.4.2 Parameterlineare Fits . . . . . . . . . . . . . . . . . . . . . . . . . . 78 6.4.3 Anpassung an beliebige Funktionen . . . . . . . . . . . . . . . . . . . 79

    6.5 Graphische Darstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

    7 Schnittstellen und Programmierung 83 7.1 Die serielle Schnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

    7.1.1 Grundlagen und Schnittstellennorm . . . . . . . . . . . . . . . . . . 83 7.1.2 Quittungsbetrieb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 7.1.3 Andere Übertragungsnormen . . . . . . . . . . . . . . . . . . . . . . 86 7.1.4 Programmierung unter Windows . . . . . . . . . . . . . . . . . . . . 86 7.1.5 C++ und Microsoft Foundation Classes . . . . . . . . . . . . . . . . 89 7.1.6 C-Programmierung mit Stream-IO-Funktionen . . . . . . . . . . . . 89 7.1.7 Linux-Spezifisches . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 7.1.8 Programmierung in MATLAB . . . . . . . . . . . . . . . . . . . . . 91

    7.2 Direkte Port-Ein/Ausgabe unter Windows 32 . . . . . . . . . . . . . . . . . 92 7.2.1 Portzugriff unter Windows 2000 . . . . . . . . . . . . . . . . . . . . 93 7.2.2 Test: PC-Lautsprecher . . . . . . . . . . . . . . . . . . . . . . . . . . 94 7.2.3 Bit-Operationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

    7.3 Zeit und Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 7.3.1 Systemzeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 7.3.2 Zeitmessung in MATLAB . . . . . . . . . . . . . . . . . . . . . . . . 97 7.3.3 Performance-Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 7.3.4 Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 7.3.5 Timer in MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 7.3.6 Multimedia-Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

    7.4 Parallele Schnittstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 7.4.1 Die Druckerschnittstelle alter Art . . . . . . . . . . . . . . . . . . . . 101 7.4.2 Druckerport und Multimedia-Timer zur Schrittmotoransteuerung . . 102

  • Inhaltsverzeichnis iv

    7.4.3 Servo-Ansteuerung: Multimedia-Timer und Performance-Counter . . 105 7.4.4 Enhanced Parallel Port (EPP) und Extended Capability Port (ECP) 106 7.4.5 Der programmierbare Parallel-E/A-Baustein 8255 . . . . . . . . . . 106

    7.5 Der IEC-Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 7.5.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 7.5.2 Datenformat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 7.5.3 Programmierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

    7.6 Universal Serial Bus (USB) . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 7.7 TCP/IP-Programmierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

    7.7.1 Sockets und Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 7.7.2 Socket-Server in C/C++ . . . . . . . . . . . . . . . . . . . . . . . . 119 7.7.3 Socket-Client in C/C++ . . . . . . . . . . . . . . . . . . . . . . . . . 121 7.7.4 Socket-Client in MATLAB/Java . . . . . . . . . . . . . . . . . . . . 121

    8 Windows-Programmierung mit Visual C++ 123 8.1 C, C++ und MFC, Visual C++ . . . . . . . . . . . . . . . . . . . . . . . . 123

    8.1.1 Windows-Programmierung in C . . . . . . . . . . . . . . . . . . . . . 123 8.1.2 Objektorientiert mit C++ und MFC . . . . . . . . . . . . . . . . . . 126 8.1.3 Programmunterstützt in Visual C++ . . . . . . . . . . . . . . . . . 127

    8.2 Dialogorientierte Programme . . . . . . . . . . . . . . . . . . . . . . . . . . 128 8.2.1 Visuelle Dialogerstellung mit dem Ressourceneditor . . . . . . . . . 129 8.2.2 Funktionen und Variablen . . . . . . . . . . . . . . . . . . . . . . . . 130

    8.3 MFC-Zeitfunktionen . . . . . . . . . . . . . .

Recommended

View more >