entwicklung einer digitalen bertragungsstrecke mit...
TRANSCRIPT
Entwicklung einer digitalen Übertragungsstrecke mit
Einplatinencomputern zur Signalanalyse
Philipp Urban Jacobs
Digitale
Übertragungsstrecke
P. U. Jacobsp.1
Chair ofCommunication Systems
Inhalt
1 Motivation
2 Grundlagen
3 Umsetzung
4 Verifizierung
5 Fazit
Digitale
Übertragungsstrecke
P. U. Jacobsp.2
Chair ofCommunication Systems
Motivation
GertboardADC DAC
Raspberry Pi
Signalgenerator Oszilloskop
GUI
Digitale Übertragungsstrecke für Praktikumsversuch (TLS- Praktikum) mit
Raspberry Pi & Gertboard
Anzeige des Eingangssignals (im Zeit- und Frequenzbereich) in GUI
Hinzuschaltbarkeit digitaler Filter (einstellbar über Koeffizienten)Digitale
Übertragungsstrecke
P. U. Jacobsp.3
Chair ofCommunication Systems
GrundlagenAbtastung
Ideale Abtastung: Multiplikation mit Dirac-
Stößen
t
s(t)
sa(t)
−Ta
Ta 2Ta 3Ta 4Ta 5Ta
sa(t) = s(t)∞∑
k=−∞
δ(t − kTa)
Reale Abtastung: Verwendung von Abtast-
Haltegliedern
t
sra(t)
Ta 2Ta 3Ta 4Ta 5Ta 6Ta
s(t)
sra(t) =∞∑
k=−∞
s(kTa) rect
(
(t − kTa)− αTa/2αTa
)
⇒ Abgetastetes Signalsa(t) bzw.sra(t) kann als zeitdiskrete Wertefolge betrachtet werden:
sa(t) = sa(kTa) ⇒ sa,zd [k]
Digitale
Übertragungsstrecke
P. U. Jacobsp.4
Chair ofCommunication Systems
GrundlagenDigitale Filter
FIR - Filter (Finite Impulse Response)
z−1
z−1
z−1
z−1x [k]
a0 a1 a2 aN−1 aN
+ + + +
......
... y [k]
+
Immer stabil
Toleranter gegen Quantisierungsfehler
Keine Verzerrungen
-
Höhere Filterordnung notwendig
IIR - Filter (Infinite Impulse Response)
z−1
z−1
z−1
z−1
z−1
a0 a1 a2 aN-1 aN
+ + + + +
...
...
...z−1
z−1
z−1
z−1
z−1
−−−−
bN bN-1 bN-2 b1
x [k]
y [k]
+
Kleinere Filterordnung
-
Mögliche Instabilität (Bei Design zu beachten)
Störungen durch Quantisierungsfehler
Digitale
Übertragungsstrecke
P. U. Jacobsp.5
Chair ofCommunication Systems
GrundlagenRaspberry Pi & Gertboard
Raspberry Pi
Scheckkartengroßer Einplatinencomputer
700 MHz ARM-Prozessor, 512 MB RAM
Betriebssystem: meist Linux, Betrieb über
SD-Karte
GPIO, SPI, I2C, UART
Gertboard
Erweiterungsplatine für Raspberry Pi
Diverse I/O - Komponenten
AD-WandlerMCP3002
DA-WandlerMCP48x2
Digitale
Übertragungsstrecke
P. U. Jacobsp.6
Chair ofCommunication Systems
GrundlagenAD- und DA-Wandler
AD-Wandler MCP3002
Anschluss über SPI
Auflösung: 10 Bit
Versorgungs- und Referenzspannung:
2,7 V - 5,5 V (3,3 V bei Gertboard)
Max. Abtastrate:
75 ksps (Uref = 2,7 V) - 200 ksps (Uref =
5,5 V)− Bei Gertboard ca. 72 ksps
DA-Wandler MCP4802/4812/4822
Anschluss über SPI
Auflösung: 8, 10 oder 12 Bit (3 Versionen,
bei Gertboard je nach verfügbarer Stückzahl
verbaut - meist 8 Bit)
Versorgungsspannung: 2,7 V - 5,5 V
Referenzspannung (Maximalwert): 2,048 V
Aktualisierungszeit: 4,5µs⇒ Max.
Aktualisierungsrate ca. 222 ksps
Gertboard verbindet MCP3002 und MCP48x2 direkt über SPI mitRaspberry Pi⇒ Können ohne
Änderungen am Programm auch einzeln (ohne Gertboard) angeschlossen werden!
Digitale
Übertragungsstrecke
P. U. Jacobsp.7
Chair ofCommunication Systems
UmsetzungHardware
Hardware - Aufbau
Gertboard - Konfiguration
Digitale
Übertragungsstrecke
P. U. Jacobsp.8
Chair ofCommunication Systems
UmsetzungVerwendete Software
Betriebssystem:Raspbian
• Abwandlung von Debian Linux, Quasi-Standardsystem für Raspberry Pi
• Geringer Einrichtungsaufwand, breites Softwareangebot über Paketverwaltung
Programmiersprache:C++
GUI-Toolkit: FLTK (Fast Light ToolKit)
• Ressourcenschonendes, plattformübergreifendes GUI-Toolkit für C++
• Unkomplizierte Programmierung
• Eigene grafische Elemente durch Vererbung leicht erstellbar
Weitere Software:FFTW (Fastest Fourier Transform in the West), GNU
Scientific Library (GSL), Gertboard-HilfsbibliothekenDigitale
Übertragungsstrecke
P. U. Jacobsp.9
Chair ofCommunication Systems
UmsetzungProgrammierung
Grundfunktion: Übertragung und Filterung
Realisierung durch Timer - gesteuerte Methode
Einzelne Verarbeitungsschritte werden im Abstand einer Sampling-Periode
aufgerufen
Neuen Eingangswert
einlesen
Filter ein
FIR-FilterungFIR
IIR
IIR-Filterung
Neuen
Ausgangswert
ausgeben
Filter aus
Einzelner Verarbeitungsschritt (schematisch)
Digitale
Übertragungsstrecke
P. U. Jacobsp.10
Chair ofCommunication Systems
UmsetzungProgrammoberfläche
Digitale
Übertragungsstrecke
P. U. Jacobsp.11
Chair ofCommunication Systems
VerifizierungTest der Signalübertragung
Signalübertragung weist Störungen und Unterbrechungen auf (Nicht-Echtzeit-System)
Empfehlenswerte Samplingrate:10 kHz (Falls kleiner: Starke Quantisierungseffekte; Falls
größer: Extrem hohe Prozessorauslastung und Störanfälligkeit)
„Vernünftige“ Übertragung von Signalen bis zu500 Hzmöglich
Obergrenze: 1 kHz (gerade noch erkennbares Signal)
fsig = 100 Hz
fsmpl = 10 kHz
fsig = 500 Hz
fsmpl = 10 kHz
fsig = 1 kHz
fsmpl = 10 kHz
Digitale
Übertragungsstrecke
P. U. Jacobsp.12
Chair ofCommunication Systems
VerifizierungTest der Filtereigenschaften
FIR - Filter
• Funktionstüchtig
• Problem: Samplingrate 10 kHz, Grenzfrequenz 0 Hz - 500 Hz→ Verhältnisfc/fs sehr klein
→ So steilflankiges FIR-Filter mit so wenig Koeffizienten nicht realisierbar
(getestet mit max. 30 Koeffizienten, mehr nicht sinnvoll beimanueller Eingabe)
• Bei kleineren Samplingraten funktioniert FIR-Filter wie vorgesehen (Test mit 10
Koeffizienten,fs = 500 Hz undfc = 100 Hz)
IIR - Filter
• Zum Zeitpunkt der BA-Abgabe noch Probleme, inzwischen aberfunktionstüchtig
• Test mit Filter der Ordnung 2,fs = 10 kHz undfc = 50 Hz→ Funktion wie vorgesehen
Digitale
Übertragungsstrecke
P. U. Jacobsp.13
Chair ofCommunication Systems
Fazit
System nur bedingt als digitale Übertragungsstrecke geeignet (nur niedrige
Frequenzen, Störungen)
Für „ernsthafte“ Anwendungen daher nicht zu empfehlen
Als Praktikumsversuch aber dennoch sinnvoll, da grafische Oberfläche das
„Experimentieren“ mit Übertragungs- und Filtereigenschaften ermöglicht
Digitale
Übertragungsstrecke
P. U. Jacobsp.14
Chair ofCommunication Systems
FazitAusblick
Tiefpass hinter Ausgang (Glättung des quantisierten Signals⇒ Niedrigere Samplingraten
nutzbar, FIR-Filter funktioniert besser)
Alternativ: FIR-Filter höherer Ordnung automatisch generieren
Gertboard verfügt über ATmega-Mikrocontroller (12 MHz, SPI etc. vorhanden)⇒
Übertragung und Filterung darauf auslagern (Echtzeit-System) ?
Falls nicht, sind restliche Gertboard-Komponenten überflüssig⇒ AD- und DA-Wandler
einzeln kaufen? Geringer zusätzlicher Schaltungsaufwand, aber enorme Kostenersparnis
(Gertboard ca. 50e, AD- und DA-Wandler ohne Gertboard insgesamt ca. 5e)
Ausgangssignal ebenfalls in GUI anzeigen
Ressourcenschonung: „Spartanischere“ Linux-Distribution benutzen (Erfolg zweifelhaft, da
X-Server in jedem Fall notwendig); Konsolen-Version (Für Praktikum unpraktikabel)
Digitale
Übertragungsstrecke
P. U. Jacobsp.15
Chair ofCommunication Systems
Praktische Vorführung
Praktische Vorführung
Digitale
Übertragungsstrecke
P. U. Jacobsp.16
Chair ofCommunication Systems