Messdatenerfassung und Abtastung: Übungsaufgaben mit Schritt-für-Schritt-Lösungen

Kostenlose Übungsaufgaben zu Messdatenerfassung und Abtastung mit Skizzen, Tipps und vollständigen Musterlösungen. Jedes Mal neue Werte, in drei Stufen: Nyquist, LSB und Datenraten, Aliasing, Bits und UART-Frames, Oberschwingungen, SQNR und Systementwurf.

Kostenlose ÜbungsaufgabeLeicht
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​ = ?115200 Bd

Eine UART-Verbindung läuft mit 115200 Baud. Bestimme die Dauer Tb eines Bits in µs.

baud = 115200 Bd
µs
Nächste Aufgabe →

Was du übst

  1. LeichtNyquist, LSB und Datenraten
  2. MittelAliasing, Bits und UART-Frames
  3. SchwerOberschwingungen, SQNR und Systementwurf

So löst du Aufgaben zu Messdatenerfassung und Abtastung

  1. Schreibe auf, was gegeben ist: Abtastrate, Signalfrequenzen, Bitanzahl, Eingangsbereich, Baudrate.
  2. Vergleiche bei Abtastaufgaben jede Frequenz mit fs/2; eine höhere Frequenz erscheint bei fa = |f − k·fs| mit dem nächstgelegenen Vielfachen von fs.
  3. Bestimme bei Auflösungsaufgaben 1 LSB = VFSR/2ᴺ oder das kleinste N mit 2ᴺ ≥ Spanne/Auflösung.
  4. Zähle bei Datenraten und UART-Verbindungen alles, was gesendet wird: Kanäle, Abtastwerte pro Sekunde, Bits oder ganze Bytes pro Abtastwert sowie Start-, Paritäts- und Stoppbits jedes Frames.

Häufige Fehler

  • Zu glauben, dass eine Frequenz über fs/2 verschwindet: Sie erscheint als Alias innerhalb des Bandes.
  • Den Bereich durch N statt durch 2ᴺ zu teilen.
  • Die Bitanzahl abzurunden statt aufzurunden.
  • Start- und Stoppbit zu vergessen: 8N1 sendet 10 Bits pro Byte.

Wichtige Formeln

Nyquist-Kriterium
fs > 2·fmax, fN = fs/2
Alias-Frequenz
fa = |f − k·fs|, k = round(f/fs)
Schrittweite
1 LSB = VFSR/2ᴺ
Quantisierungsfehler (Runden)
±½ LSB
ADC-Code bei Abschneiden
D = ⌊Vin/LSB⌋
Bits für eine Auflösung r
2ᴺ ≥ span/r
Ideales SQNR, Sinus mit Vollaussteuerung
SQNR = 6,02·N + 1,76 dB
Datenrate
Kanäle × fs × N bit/s
Gemultiplexter ADC
fs = 1/(n·(tc + tset))
UART
Tb = 1/Baudrate; 8N1 = 10 Bit pro Byte; Byte/s = Baudrate/Bits pro Frame
Baudraten-Teiler
baud = fclk/(16·D)

Messdatenerfassung und Abtastung von Grund auf lernen

Davor: Zahlensysteme

1Was Messdatenerfassung ist

Ein Computer kann eine Spannung nicht direkt lesen. Ein Messdatenerfassungssystem verwandelt eine physikalische Größe in Zahlen: Ein Sensor erzeugt eine kleine Spannung, ein Verstärker skaliert sie, und ein Analog-Digital-Umsetzer (ADC) misst sie in regelmäßigen Abständen und gibt eine Binärzahl aus.

TG∿01N, fs​0101

Zwei Entscheidungen bestimmen, wie gut die Zahlen sind. Die Abtastrate fs sagt, wie oft der ADC misst, und die Bitanzahl N sagt, wie fein er seinen Spannungsbereich unterteilt. Zusammen bestimmen sie auch, wie viele Daten du speichern oder senden musst.

Selbsttest Ein ADC tastet mit 2 kHz ab. Wie viele Abtastwerte nimmt er in 0,5 s auf?
  1. 1000
  2. 2000
  3. 250
  4. 4000

Antwort: 1000. Abtastwerte = fs·t = 2000·0,5 = 1000. Mit 2 statt 0,5 zu multiplizieren ergibt 4000, und die Zeit zu ignorieren ergibt 2000.

2Abtastung und Aliasing

Um eine Sinuswelle zu erfassen, brauchst du mehr als zwei Abtastwerte pro Periode. Die Abtastrate muss also mehr als doppelt so groß sein wie die höchste Frequenz im Signal. Die halbe Abtastrate ist die Nyquist-Frequenz:

fs > 2·fmax fN = fs/2

Eine Frequenz über fs/2 verschwindet nicht. Ihre Abtastwerte sehen genau wie die einer niedrigeren Frequenz aus, des Alias. In der Abbildung wird ein 7-Hz-Sinus (durchgezogen) mit 10 Hz abgetastet, und die Punkte passen genauso gut zu einem 3-Hz-Sinus (gestrichelt).

tf = 7 Hzfs​ = 10 Hz
fa = |f − k·fs|, k = die ganze Zahl, die f/fs am nächsten liegt

Nach der Abtastung kann nichts den Alias von einem echten Signal unterscheiden. Darum entfernt ein analoges Anti-Aliasing-Filter vor dem ADC alles oberhalb von fs/2.

Selbsttest Ein 7-kHz-Ton wird ohne Filter mit 10 kHz abgetastet. Bei welcher Frequenz erscheint er?
  1. 17 kHz
  2. 3 kHz
  3. 5 kHz
  4. 7 kHz

Antwort: 3 kHz. 7 kHz liegt über fs/2 = 5 kHz und klappt daher zurück: |7 − 1·10| = 3 kHz. Er kann nicht bei 7 kHz bleiben, 17 kHz addiert statt zu subtrahieren, und 5 kHz ist nur die Faltungsfrequenz.

3Auflösung und Quantisierung

Ein N-Bit-ADC hat 2ᴺ Ausgangscodes, von 0 bis 2ᴺ − 1. Er teilt seinen Vollaussteuerbereich VFSR in 2ᴺ gleiche Schritte. Ein Schritt heißt 1 LSB (niederwertigstes Bit):

1 LSB = VFSR/2ᴺ

Ein abschneidender ADC gibt den Code ⌊Vin/LSB⌋ aus, die ganze Zahl darunter. Ein rundender ADC liegt nie mehr als ½ LSB vom wahren Wert entfernt: Das ist sein Quantisierungsfehler.

Um Schritte der Größe r über einer Spanne aufzulösen, brauchst du das kleinste N mit 2ᴺ ≥ Spanne/r. Jedes zusätzliche Bit halbiert das LSB und erhöht das ideale Signal-Quantisierungsrausch-Verhältnis um etwa 6 dB:

SQNR = 6,02·N + 1,76 dB
Selbsttest Ein 10-Bit-ADC hat einen Bereich von 0 bis 5,12 V. Wie groß ist 1 LSB?
  1. 10 mV
  2. 2,5 mV
  3. 5 mV
  4. 512 mV

Antwort: 5 mV. 210 = 1024, also 1 LSB = 5,12/1024 = 0,005 V = 5 mV. Teilen durch N = 10 ergibt 512 mV, 2⁹ zu verwenden ergibt 10 mV, und 2,5 mV ist der größte Fehler eines rundenden ADC, ein halbes LSB.

4Datenraten und serielle Verbindungen

Jeder Kanal liefert fs Abtastwerte pro Sekunde mit je N Bits. Die rohe Datenrate beträgt Kanäle × fs × N. Im Speicher belegt ein Abtastwert ganze Bytes, ein 12-Bit-Wert also 2 Bytes.

Ein UART sendet jedes Byte als Frame: ein Startbit, 8 Datenbits, ein optionales Paritätsbit und ein oder zwei Stoppbits. Im üblichen 8N1-Format sind das 10 Bits pro Byte. Die Baudrate zählt Bits pro Sekunde, ein Bit dauert also 1/Baudrate.

Bytes pro Sekunde = Baud/(Bits pro Frame)

Ein Multiplexer lässt einen ADC mehrere Kanäle nacheinander bedienen. Dauert eine Wandlung (mit Einschwingen) t, wird jeder von n Kanälen mit 1/(n·t) abgetastet.

5Ein durchgerechnetes Beispiel

Gehe bei den meisten Aufgaben in dieser Reihenfolge vor:

  1. Prüfe die Abtastrate gegen die höchste Signalfrequenz.
  2. Bestimme die Schrittweite aus dem Bereich und der Bitanzahl.
  3. Zähle die Daten: Kanäle, Abtastwerte pro Sekunde, Bytes pro Abtastwert.
  4. Vergleiche mit dem, was die Verbindung oder der Speicher aufnehmen kann, und zähle Start-, Paritäts- und Stoppbits mit.
Durchgerechnetes Beispiel

Ein Datenlogger misst 4 Temperaturkanäle mit einem 12-Bit-ADC über 0 bis 4,096 V. Die Signale enthalten Frequenzen bis 20 Hz, und jeder Kanal wird mit 100 Hz abgetastet. Jeder Abtastwert wird als 2 Bytes über einen UART mit 9600 Baud, 8N1, gesendet. Ist die Abtastrate hoch genug, wie groß ist 1 LSB, und kommt die Verbindung mit?

1

Nyquist-Prüfung

2·fmax = 2·20 = 40 Hz < 100 Hz

Die Abtastrate ist hoch genug.

2

Schrittweite

1 LSB = 4,096/212 = 4,096/4096 = 0,001 V = 1 mV
3

Zu sendende Daten

4 Kanäle · 100 Abtastwerte/s · 2 Bytes = 800 Bytes/s
4

Kapazität der Verbindung

8N1 sendet 10 Bits pro Byte.

9600/10 = 960 bytes/s ≥ 800 bytes/s
5

Antwort prüfen

Auf der Leitung sind das 800·10 = 8000 bit/s, weniger als 9600 Baud. Die Verbindung ist zu 83 % ausgelastet.

Antwort

Ja: 100 Hz sind mehr als das Doppelte von 20 Hz, 1 LSB = 1 mV, und die Verbindung braucht 800 ihrer 960 Bytes/s.

6Häufige Fehler

  • Zu glauben, dass eine Frequenz über fs/2 einfach verloren geht: Sie erscheint als Alias innerhalb des Bandes.
  • Den Bereich durch N statt durch 2ᴺ zu teilen.
  • Die Bitanzahl abzurunden: 2ᴺ muss mindestens Spanne/Auflösung sein.
  • Auf einem UART 8 Bits pro Byte zu zählen: 8N1 braucht 10.
  • Zu vergessen, dass ein 10-Bit- oder 12-Bit-Abtastwert in 2 ganzen Bytes gespeichert wird.
Selbsttest Wie viele Bytes pro Sekunde kann ein UART mit 9600 Baud im 8N1-Format senden?
  1. 1067
  2. 1200
  3. 9600
  4. 960

Antwort: 960. Jedes Byte braucht 10 Bits (Start, 8 Daten, Stopp): 9600/10 = 960. Teilen durch 8 vergisst Start- und Stoppbit, und Teilen durch 9 vergisst eines davon.

7So sehen Prüfungsaufgaben aus

  • Leicht: Nyquist, LSB und Datenraten. Du bestimmst die minimale Abtastrate, die Nyquist-Frequenz, die LSB-Größe oder den Quantisierungsfehler, die Bitdauer eines UART oder die rohe Datenrate.
  • Mittel: Aliasing, Bits und UART-Frames. Du bestimmst eine Alias-Frequenz, die Bitanzahl für eine Auflösung, den Ausgangscode für eine Spannung, den Speicher für eine Aufzeichnung, die Byterate eines UART-Formats oder das ideale SQNR.
  • Schwer: Oberschwingungen, SQNR und Systementwurf. Du bestimmst, wohin eine Oberschwingung aliasiert, die Bits für ein gefordertes SQNR, die höchste Frequenz, die ein per UART streamender ADC erfassen kann, die Rate eines gemultiplexten ADC, den Baudratenfehler eines Teilers oder die Temperaturauflösung einer Messkette.

Lerne Schritt für Schritt in der AppLerne Schritt für Schritt in der App

Beispielaufgaben

Beispiel 1Leicht
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​ = ?2400 Bd

Eine UART-Verbindung läuft mit 2400 Baud. Bestimme die Dauer Tb eines Bits in µs.

baud = 2400 Bd

Gesucht: Tb (µs)

Tipps anzeigen
  1. Die Baudrate ist die Anzahl der pro Sekunde gesendeten Bits.
  2. Tb = 1/baud.
  3. 1 s = 10⁶ µs.
Antwort und Schritt-für-Schritt-Lösung anzeigen

UART: Eine asynchrone serielle Verbindung sendet jedes Byte als Frame: ein Startbit (low), die Datenbits, ein optionales Paritätsbit und ein oder zwei Stoppbits (high). Die Baudrate ist die Anzahl der Bits pro Sekunde, ein Bit dauert also Tb = 1/Baudrate und ein Frame aus n Bits dauert n/Baudrate. Das übliche 8N1-Format hat 10 Bits pro Byte. Der Baudratengenerator teilt den Takt: Baudrate = fclk/(16·D) mit einer ganzen Zahl D, sodass die tatsächliche Baudrate leicht vom Sollwert abweicht; ein Fehler unter etwa 2 % ist meist akzeptabel.

Bitdauer

Tb = 1/2400 s = 416,7 µs

Antwort

Tb = 416,7 µs
Beispiel 2Mittel
Vin​N = 85 V2ᴺ − 101 LSB2,125 V?

Ein 8-Bit-ADC mit einem Eingangsbereich von 0 bis 5 V schneidet ab: Sein Ausgangscode ist ⌊Vin/LSB⌋ mit 1 LSB = VFSR/2ᴺ. Bestimme den dezimalen Ausgangscode D für eine Eingangsspannung von 2,125 V.

N = 8VFSR = 5 VVin = 2,125 V

Gesucht: D

Tipps anzeigen
  1. Bestimme zuerst die Größe eines LSB.
  2. 1 LSB = 5/256 = 19,53 mV.
  3. Teile die Eingangsspannung durch das LSB und behalte den ganzzahligen Anteil.
Antwort und Schritt-für-Schritt-Lösung anzeigen

ADC-Auflösung: Ein N-Bit-Umsetzer teilt seinen Vollaussteuerbereich VFSR in 2ᴺ Codes, von 0 bis 2ᴺ − 1. Ein Schritt ist 1 LSB = VFSR/2ᴺ: die kleinste Änderung, die der Umsetzer anzeigen kann. Ein abschneidender ADC liefert den Code ⌊Vin/LSB⌋; ein rundender ADC liegt nie mehr als ½ LSB vom wahren Wert entfernt, das ist sein Quantisierungsfehler. Jedes zusätzliche Bit halbiert das LSB und erhöht das ideale Signal-Quantisierungsrausch-Verhältnis SQNR = 6,02·N + 1,76 dB für einen vollausgesteuerten Sinus um etwa 6 dB. Um eine Auflösung r über einer Spanne zu erreichen, wähle das kleinste N mit 2ᴺ ≥ Spanne/r.

Schrittweite

1 LSB = 5/28 = 19,53 mV

Code

Vin/LSB = 2125/19,53 = 108,8
Code = ⌊108,8⌋ = 108

Antwort

D = 108

Binär ist das 01101100.

Beispiel 3Schwer
f0fs​/2fs​1,92 kHz7f₁?

Eine Rechteckwelle mit 1,92 kHz wird ohne Anti-Aliasing-Filter mit 8 kHz abgetastet. Ein Rechtecksignal enthält die ungeraden Oberschwingungen 3f₁, 5f₁, 7f₁, … Bei welcher Frequenz fa erscheint seine Oberschwingung 7f₁ in den abgetasteten Daten? Gib sie in Hz an.

f₁ = 1,92 kHzfs = 8 kHzOberschwingung: 7f₁

Gesucht: fa (Hz)

Tipps anzeigen
  1. Die Oberschwingung liegt bei 7·1,92 kHz = 13,44 kHz, über fs/2 = 4 kHz.
  2. Sie erscheint bei fa = |f − k·fs| mit dem nächstgelegenen Vielfachen von fs.
  3. 13440/8000 = 1,68.
Antwort und Schritt-für-Schritt-Lösung anzeigen

Abtastung: Ein ADC misst das Signal fs-mal pro Sekunde. Nach dem Nyquist-Shannon-Theorem wird eine Frequenz f nur dann korrekt erfasst, solange f < fs/2 gilt, der Nyquist-Frequenz (Faltungsfrequenz); die Abtastrate muss also größer sein als das Doppelte der höchsten Signalfrequenz. Eine höhere Frequenz geht nicht verloren: Sie erscheint als Alias bei fa = |f − k·fs|, wobei die ganze Zahl k das Ergebnis in den Bereich zwischen 0 und fs/2 bringt. Die Abtastwerte können beide nicht unterscheiden, daher muss ein analoges Anti-Aliasing-Filter vor dem ADC alles oberhalb von fs/2 entfernen.

Frequenz der Oberschwingung

7f₁ = 7·1,92 kHz = 13,44 kHz

Nächstes Vielfaches der Abtastrate

m = round(1,68) = 2

Alias-Frequenz

fa = |13440 − 2·8000| = 2560 Hz

Antwort

fa = 2560 Hz

Der Alias landet im Signalband, wo ihn kein digitales Filter entfernen kann. Nur ein analoges Filter vor dem ADC hilft.

Fragen und Antworten

Messdatenerfassung und Abtastung: Worum geht es?

Ein Computer kann eine Spannung nicht direkt lesen. Ein Messdatenerfassungssystem verwandelt eine physikalische Größe in Zahlen: Ein Sensor erzeugt eine kleine Spannung, ein Verstärker skaliert sie, und ein Analog-Digital-Umsetzer (ADC) misst sie in regelmäßigen Abständen und gibt eine Binärzahl aus.

Zwei Entscheidungen bestimmen, wie gut die Zahlen sind. Die Abtastrate fs sagt, wie oft der ADC misst, und die Bitanzahl N sagt, wie fein er seinen Spannungsbereich unterteilt. Zusammen bestimmen sie auch, wie viele Daten du speichern oder senden musst.

Messdatenerfassung und Abtastung: Wie löst man die Aufgaben Schritt für Schritt?
  1. Schreibe auf, was gegeben ist: Abtastrate, Signalfrequenzen, Bitanzahl, Eingangsbereich, Baudrate.
  2. Vergleiche bei Abtastaufgaben jede Frequenz mit fs/2; eine höhere Frequenz erscheint bei fa = |f − k·fs| mit dem nächstgelegenen Vielfachen von fs.
  3. Bestimme bei Auflösungsaufgaben 1 LSB = VFSR/2ᴺ oder das kleinste N mit 2ᴺ ≥ Spanne/Auflösung.
  4. Zähle bei Datenraten und UART-Verbindungen alles, was gesendet wird: Kanäle, Abtastwerte pro Sekunde, Bits oder ganze Bytes pro Abtastwert sowie Start-, Paritäts- und Stoppbits jedes Frames.
Messdatenerfassung und Abtastung: Welche Fehler passieren am häufigsten?
  • Zu glauben, dass eine Frequenz über fs/2 verschwindet: Sie erscheint als Alias innerhalb des Bandes.
  • Den Bereich durch N statt durch 2ᴺ zu teilen.
  • Die Bitanzahl abzurunden statt aufzurunden.
  • Start- und Stoppbit zu vergessen: 8N1 sendet 10 Bits pro Byte.
Messdatenerfassung und Abtastung: Was wird geübt?
  • Leicht: Nyquist, LSB und Datenraten
  • Mittel: Aliasing, Bits und UART-Frames
  • Schwer: Oberschwingungen, SQNR und Systementwurf

Jede Aufgabe hat neue Werte, so lernst du den Lösungsweg statt einer Antwort. Du hängst fest? Öffne zuerst einen kleinen Tipp und die vollständige Erklärung erst, wenn du sie brauchst.

So funktioniert das Üben

  • Jede Aufgabe hat neue Werte, so lernst du den Lösungsweg statt einer Antwort.
  • Du hängst fest? Öffne zuerst einen kleinen Tipp und die vollständige Erklärung erst, wenn du sie brauchst.
  • Dein Fortschritt, deine Fehler und gespeicherten Aufgaben bleiben erhalten, damit du vor der Prüfung wiederholen kannst.

Themen davor und danach

Zuerst lernen

Kurse mit diesem Thema

Weitere Themen in Elektrotechnik

Arbeitsblatt zum Ausdrucken