Go to: www.scheidig.de

PRBS Generator - Rauschgenerator von Hardy Scheidig


1.1 Vorwort

Wenn man sich für den Frequenzgang von Bauteilen, Schaltungen speziell aber von Teslaspulen oder auch aber auch Filtern interessiert, steht man neben der Frage nach dem geeigneten Messmittel, zunächst einmal vor dem Problem ein geeignetes Testsignal zur Verfügung zu haben.
Natürlich gibt es Signalgeneratoren, welche ggf. auch über Wobbelfunktionalität verfügen oder Rauschsignale erzeugen können. Aber diese Geräte sind in der Regel auch nicht ganz billig.

Es ist Ziel dieses Projektes, einen einfachen , extrem kostengünstigen Rauschgenerator zu entwickeln, der folgende Anforderungen erfüllt:

  • einfacher Aufbau
  • sehr geringe Bauteilkosten
  • Das Rauschsignal soll bis min. 1MHz einen gleichmäßig flachen Frequenzgang aufweisen.
  • Das Rauschsignal soll eine hinreichende Leistung Rauschleistung (Rauschleistungsdichte) erzeugen.
  • Hardy Scheidig
    (Feb 2009)


    1.2 Historie

      Version   Datum   Bemerkung
      1.0   28.06.09   Erste Version mit Messbeispielen für Teslaspulen
         
         
         


    1.3 Urheberrechtsbestimmung

    Der Inhalt dieses Werkes mit allen Texten und Abbildungen ist, soweit nicht anders gekennzeichnet, das geistige Eigentum von Hardy Scheidig. Es unterliegt den deutschen und internationalen Urheberrechtsbestimmung.
    Alle Rechte vorbehalten.


    2 Einführung

    Intention:
    In der Elektronik ist die Messung des Frequenzganges die Beantwortung der Fragen, wie eine elektronische Schaltung

  • verschiedenen Frequenzen verstärkt bzw. dämpft
  • verschiedenen Frequenzen verzögert (Phasendrehung)
  • Im Fachgebrauch nennt man diesen Messvorgang auch Netzwerkanalyse.

    Überblick:
    Zur Durchführung solcher Messungen benötigt man Messsignale, welche sich eben aus den zu vermessenden Frequenzen zusammensetzt. Im Trivialfall benutzt man einen Sinusgenerator, welchen man der Reihe nach auf die zu vermessenden Frequenzen abstimmt und einzelne Messungen durchführt. Dies kann sich jedoch als recht langwierig erweisen, ins Besondere dann, wenn die zu untersuchende Bandbreite groß ist und man keine Vermutung über den zu erwartenden Frequenzgang hat, so dass man sehr viele einzelne Frequenzen vermessen müsste.
    Die logische Fortführung des Gedankens der Abstimmung eines Sinusgenerators auf verschiedene Frequenzen ist die Automatisierung des Vorgangs, also ein Wobbelgenerator. Der Wobbelgenerator zeichnet sich dadurch aus, dass zeitlich nacheinander diskrete Frequenzen (oder auch Frequenzbereiche im Falle eines analogen Frequenz- Sweeps) präsent sind.

    Ein andere Herangehensweise ist der Gedankengang, dass zu jeder Zeit mehr oder weniger alle Frequenzen eines bestimmten Frequenzbereiches gleichzeitig präsent sind. Dies erreicht man durch einen Rauschgenerator. Analoge Rauschgeneratoren basieren hauptsächlich auf

  • Thermischen Rauschen (Rauschen an Widerständen)
  • oder Schrotrauschen (Kathodenübergang in Elektronenröhren , PN-Übergang in Halbleitern )
  • Der Nachteil dieser Verfahren ist die geringe Rauschleistung die ursächlich zur Verfügung steht und dementsprechend erst kräftig verstärkt werden muss.

    Eine weitere Möglichkeit eröffnet sich durch die Digitaltechnik, indem ein zufälliges Rechecksignal erzeugt wird. Dabei ändert sich die Breite des Rechtecksignals. Digital gesprochen die Dauer der On/Off Zeit ist zufällig oder besser gesagt pseudo-zufällig. Solche Signale nennt man PRBS-Signale (Pseudo Random Binary Sequence) oder auch PN-Signale (Pseudo Noise) .
    Dieses Verfahren hat den Vorteil, dass das Rauschsignal mit geringen Aufwand mit hinreichender Leistung erzeugt werden kann.

    PRBS-Generator:
    Die Erzeugung von PRBS-Signalen erfolgt in der Regel durch ein oder mehrere kombinatorisch verknüpfte, rückgekoppelte Schieberegister. Die Theorie diese Sequenzen (Codes) ist eine Wissenschaft für sich.

    Die folgende Abbildung zeigt einen einfachen PRBS Generator mit rückgekoppelten Schieberegister, 7 Registerstufen für das Generator-Polynom x7+x6+1.

    Abbildung1: einfacher PRBS-Generator
    Abbildung 1: einfacher PRBS-Generator

    Wie die Abbildung bereits suggeriert sind verschiedenste Abgriffskombinationen für die Rückkopplung möglich. Die Rückkopplungskombination ist entscheidend für die Beschaffenheit der Ausgangsfolge sn und wird durch das so genannte Generatorpolynom zum Ausdruck gebracht.
    Wie zu Vermuten ist, wird sich die Folge sn nach einer gewissen Anzahl von Takten wiederholen. Diese Anzahl hängt sowohl von der Länge des Schieberegisters als auch von der Rückkopplungskombination , also dem Generatorpolynom ab.
    Im Sinne eines möglichst zufälligen Signals (Noise) sollte es maximal viel Takte benötigen, bis es zu einer Wiederholung (Periodifizierung) kommt. Die höchstmögliche Anzahl von Takten bis zur Wiederholung ist durch die Länge des Schieberegisters auf 2N-1 begrenzt, wobei N die Anzahl der Registerstufen repräsentiert. Die besonderen Polynome, welche zu Folgen maximaler Länge führen, sind so genannte primitive Polynome. " x7+x6+1 " ist ein solches primitives Polynom. Die Wiederholung der Sequenz erfolgt in diesem Fall alle 127 Takte.

    Grundprinzip:
    Für das hier beschrieben Rauschgenerator- Projekt wird das Prinzip des PRBS Generators angewendet. Die durch die Auswahl verschiedener Schieberegisterlängen und primitiver Polynome sowie die Wahl der Taktfrequenz könne die Parameter des Rauschsignals beeinflusst werden.


    3 Aufbau und Funktion

    Überblick:
    Im Sinne des Ziele " einfacher Aufbau", "geringe Kosten" wird als Basis des Generators ein Mikrocontroller verwendet.
    Die folgende Abbildung zeigt die realisierte Schaltung.

    Abbildung 2 - Schaltung des Rauschgenerators
    Abbildung 2 - Schaltung des Rauschgenerators

    Funktion:
    Die Gesamte Schaltung besteht aus

  • dem Mikrocontroller ATMega88
  • den Schaltern S1..S6
  • dem Treiber "Driver IC"
  • und der Spannungsversorgung
  • Der untere Teil der Schaltung gemäß Abbildung 2 dient lediglich der Erzeugung der 5V Betriebsspannung aus einer entsprechend höheren Spannung, wie z.B 9V aus einer Batterie.

    Zur Realisierung der eigentlichen Funktionalität kommt der ATMega88 zum Einsatz. Dieser Mikrocontroller verfügt über die notwendigen Ressourcen um als "single chip" Basis für den Rauschgenerator zu fungieren. Die Eingänge PD2..7 dienen als Steuereingänge. Die Eingänge sind intern als "pull up" programmiert, sind somit "1" solange sie nicht mittels der Schalter S1..6 auf "0" gezogen werden. Somit kann man über PD2..4 und PD5..7 jeweils ein 3 bit Codewort einstellen.

  • S1..3 / PD2..4 dient der Einstellung der Taktfrequenz fs
  • S4..6 / PD5..7 dient der Auswahl des Generatorpolynoms.
  • Der XTAL1 Eingang könnte als externer Takteingang benutzt werden. Dies ist jedoch momentan nicht einprogrammiert.

    Als Ausgangsport dient PC0. Über den Widerstand R3 kann das Signal Out2 direkt abgegriffen werden. Zudem wird Out2 dem "Driver IC" zugeführt. Dieser Block steht für eine Schaltung, welche das Ausgangssignal niederohmiger macht und ggf. verstärkt. Dadurch entsteht sodann dann das Ausgangssignal Out1.
    Das Programm des Mikrocontrollers ist so beschaffen, das PC0 jeden 4. Takt ein neuen Ausgangswert generieren kann. Diese Rate sei mit fPN = fs / 4 bezeichnet. Die minimale Breite des in erster Näherung rechteckförmigen Ausgangssignals ist folglich 0.5 µs .

    Spannungsversorgung:
    Der untere Teil der Schaltung dient der Erzeugung der 5V Betriebspannung für den Mikrocontroller sowie der Bereitstellung einer ca. 8V Betreibspannung für den Treiber. Als Basis dient hier beispielsweise ein 9V Batterie.
    Zur Erzeugung der 5V kommt ein linearer Spannungsregler "3170" zur Anwendung.
    Wenn die Signalstärke von "Out2" ausreichend ist, so dass kein extra Treiber (Driver IC) benötigt wird, könnte man sich diesen Teil auch sparen und eine 4.5V Flachbatterie verwenden.

    Mikrocontroller:
    Als Mikrocontroller wurde der ATMega88 gewählt.
    Er verfügt über 8 Kbyte internen Flash Speicher, was für diese Anwendung durchaus hinreichend ist.
    Des weiteren verfügt der ATMega88 über einen internen Taktgenerator, welcher einen Basistakt von ca. 8MHz erzeugt. Diese Taktfrequenz wird entsprechen der Einstellungen von S1..3 heruntergeteilt.
    Da es sich um eine zeitkritische Realtime-Anwendung handelt, ist das Programm in Assembler erstellt.
    Der Chip selbst kostet nur 2-3 € !

    Schalter S1..3:
    Die Schalter sind als DIP-Schalter realisiert und dienen der Einstellung des Systemtaktes.
    Die Bandbreite des Rauschsignals ist direkt vom Systemtakt abhängig. Bedingt durch die näherungsweise zeitlich Rechteckform des Ausgangssignals ergibt sich eine sin (x)/x Formung im Frequenzbereich. Es gilt x = f /(fs /4) = f / fPN .
    Im Übrigen kann diese sin(x)/x Formung bei der Messwerterfassung wieder rechnerisch kompensiert werden.

      Codewort (S3,S2,S1)   System clock fs (kHz)   1. spektrale Nullstelle bzw.
      fPN (kHz)
      3dB Grenzfrequenz (kHz)   1dB Grenzfrequenz (kHz)
      000   8000   2000   880   520
      001   4000   1000   440   260
      010   2000   500   220   130
      011   1000   250   110   65
      100   500   125   55   32.5
      101   250   62.5   27.5   16.25
      110   125   31.25   13.75   8.125
      111   62.5   15.625   6.875   4.0625

    3dB Grenzfrequenz bei f ≈ 0.44 * fPN
    1dB Grenzfrequenz bei f ≈ 0.26 * fPN

    Schalter S4..6:
    Die Schalter sind als DIP-Schalter realisiert und dienen der Auswahl der Sequenzlänge und des Generatorpolynoms.
    Aus der Sequenzlänge folgt über die Frequenz des Systemtaktes auch die Periodendauer einer Sequenz. Da ein periodisches Zeitsignal zu einem Linienspektrum führt folgt aus

    Δ f = 1/ Periodendauer der Abstand der Spektrallinien.

      Codewort (S6,S5,S2)   Polynom   Sequenzlänge (N) in Systemtakten
      000   x14+x13+ x8+ x4+1   16383
      001   x13+x12+ x10+ x9+1   8191
      010   x12+x11+ x8+ x6+1   4095
      011   x11+x9+1   2047
      100   x10+ x7+ 1   1023
      101   x9+ x5+ 1   511
      110   x8+x6+ x5+ x4+1   255
      111   x7+x6+1   127

    Der Abstand der Spektrallinien ist Δ f = fPN / N
    Die Periodendauer der Sequenz ist TPN = N / fPN

    Driver IC:
    Dieser Block symbolisiert einen Treiber. Er hat die Aufgabe den Pegel zu erhöhen und das Ausgangssignal niederohmiger zu machen. Denkbar ist hierfür eine Transistorschaltung oder wie im praktischen Beispiel die Verwendung eines Mosfet Treibers Schaltkreises wie z.B. der ICL7667.

    Praktischer Aufbau:
    Die folgende Abbildung zeigt den praktischen Aufbau der Schaltung:

    Abbildung 3 - praktischer Aufbau des Rauschgenerators
    Abbildung 3 - praktischer Aufbau des Rauschgenerators


    4 Eigenschaften

    Im folgenden seinen die wichtigsten Eigenschaften des Rauschgenerators aufgeführt.

  • Herstellkosten < 10 €
  • maximale 3dB Grenzfrequenz ca. 880 kHz
  • maximale 1 dB Grenzfrequenz ca. 440 kHz
  • Rauschleistungsdichte bei fPN= 2MHz.
  • out 2: ca. -56 dBv emf / Hz (hochohmige Last)
  • out 1: ca. -51 dBv emf /Hz (hochohmige Last)
  • maximale Periodendauer bei fPN= 2MHz.
  • 8.1915 ms
  • minimaler Linienabstand bei fPN= 2MHz
  • ca. 122 Hz

  • Folgende Abbildungen dokumentieren den Verlauf des Spektrums am Ausgang out2

    Abbildung 4 - Spektrum 0..50 MHz des Rauschgenerators (out2 , max Hold)
    Abbildung 4 - Spektrum 0..50 MHz des Rauschgenerators (out2 , max Hold)

    Abbildung 5 - Spektrum 0..2 MHz des Rauschgenerators (out2 , max Hold) Sequenzlänge 127
    Abbildung 5 - Spektrum 0..2 MHz des Rauschgenerators (out2 , max Hold) Sequenzlänge 127


    5 Anwendungsbeispiele

    5.1 Messungen an Teslaspulen mittels Spektrumanalysator:

    Der PRBS Generator ist gut geeignet um Teslaspulen zu vermessen oder auch abzustimmen.
    Dazu wird der PRBS-Generator zwischen Fußpunkt und Erdanschluß der Teslaspule geschaltet.

  • "out1" an Teslaspule und "Masse" an Erde.
  • Der Spektrumanalysator (im Beispiel SpekOszi und SDS200 Device) greift das Signal mittels Antenne (einfacher Draht ) aus der Luft. Die Antenne kann beispielsweise im Abstand von 1..2 m platziert werden. Da die Resonanzfrequenz der Teslaspule sehr empfindlich auf die Umgebung reagiert, sollte man während der Messung von der Teslaspule entfernt bleiben.

    Siehe auch -->
    Bestimmung der Resonanzfrequenz von TC's


    Abbildung 6 zeigt die Messung einer einfach resonanten Teslaspule mit Resonanzfrequenz bei ca. 392.5kHz.

    Abbildung 6 - PRBS Generator an einfach resonanter Teslaspule
    Abbildung 6 - PRBS Generator an einfach resonanter Teslaspule



    Abbildung 7 zeigt die Messung an einer zweifach resonanten Teslaspule. Es ist die gleiche Spule wie oben, jedoch hat sie im Primärkreis einen Kondensator. In Abbildung 7 ist der Primärkreis schlecht abgestimmt, was sich durch unterschiedlich hohe Ausprägung der Maximas zeigt. In Abbildung 8 ist der Primärkreis besser abgestimmt.

    Abbildung 7 - PRBS Generator an zweifach resonanter Teslaspule (schlechte Abstimmung)
    Abbildung 7 - PRBS Generator an zweifach resonanter Teslaspule (schlechte Abstimmung)



    Abbildung 8 - PRBS Generator an zweifach resonanter Teslaspule (bessere Abstimmung)
    Abbildung 8 - PRBS Generator an zweifach resonanter Teslaspule (bessere Abstimmung)



    5.2 Vermessung von Teslaspulen mittels TickyFMeas

    Für einfach resonante Teslaspulen ist es ebenfalls möglich die Resonanzfrequenz mit Hilfe des Programms TickyFMeas unter Benutzung des Vorteilers zu bestimmen.
    Siehe auch -->
    Frequenzmessung mittels TickyFMeas

    Abbildung 9 - Messung der Resonanzfrequenz einer einfach resonanten Teslaspule
    Abbildung 9 - Messung der Resonanzfrequenz einer einfach resonanten Teslaspule


    Abbildung 10 zeigt den zur obigen Messung zugehörigen spektralen Verlauf des mittels Vorteiler um Faktor 64 geteilten Signals, welches der Soundkarte zugeführt wird. Das deutliche Maximum liegt bei 6.1344 kHz . Multipliziert man dies Frequenz mit 64, so erhält man schließlich die Resonanzfrequenz von 392.6 kHz, welche auch durch TickyFMeas angezeigt wird.

    Abbildung 10 - Spektrum des Faktor 64 geteilten Signals
    Abbildung 10 - Spektrum des Faktor 64 geteilten Signals


    5.3 Messung Frequenzgang eines Verstärkers.

    Coming soon.



    Weiterführende Links

    http://de.wikipedia.org/wiki/Rauschgenerator
    .

    http://www.qrpproject.de/Leistungs-Rauschgenerator
    .