Schwingungsformer

Projekt c't-Lab: DDS-Funktionsgenerator-Modul

Praxis & Tipps | Praxis

Für Audio-Messungen gehört ein Funktionsgenerator zur Labor-Pflichtausstattung. Unser DDS-Modul für das c't-Lab verbindet moderne Schaltungstechnik mit exzellenten technischen Daten - dagegen sieht so manches Laborgerät ziemlich alt aus.

Ein ICL8038 und ein paar Bauteile aus der Restekiste, mit Pattex in eine filzstiftbeschriftete Zigarrenkiste geleimt - kommt Ihnen das bekannt vor? Tausende derartiger Apparate mit einem Schaltungsdesign aus den späten Siebzigern tun selbst bei fortgeschrittenen Elektronikern immer noch treu und brav ihren Dienst, weil preiswerte Neugeräte kaum bessere technische Daten aufweisen. Auch wenn sie etwas schöner verpackt sind als der rustikale Eigenbau - ihr eher frugales Innenleben lässt mehr oder weniger nur Schätzungen zu, nicht aber ernsthafte Messungen. Weder kann man sich auf die eingestellte Frequenz noch auf den Pegel so richtig verlassen, und selbst der eingebaute Frequenzzähler neuzeitlicher Fernost-Produkte kaschiert das Problem instabiler Generatoren nur. Schade, denn ein Funktionsgenerator mit Verlässlichkeitsgarantie ist nicht nur für Audio-Messungen gut, genauso kann man damit Spulen, Kondensatoren und ganz allgemein Vierpole im Niederfrequenz-Bereich vermessen.

Gegenüber der immer noch häufig anzutreffenden ICL8038/XR2206-Lösung weist unser DDS-Funktionsgenerator um mindestens eine Zehnerpotenz bessere Daten auf, ist aber im Eigenbau nur wenig teurer. Seine quarzgesteuerte Frequenz lässt sich aufs Zehntelhertz genau und reproduzierbar von 0 bis 250 kHz (mit gewissen Abstrichen bei der Pegel-Treue sogar bis 400 kHz) einstellen, der Ausgangspegel in knapp 8000 Stufen von 0,2 mV bis 8 Veff, die Pegelabweichung beträgt dabei weniger als ein Fünfzigstel dB. Der Klirrfaktor liegt auch ohne Abgleich unter 0,06 Prozent und der Störspannungsabstand einer sauber aufgebauten Platine bei über 90 dB. Eine in 5-mV-Schritten einstellbare, hochstabile Offset-Gleichspannung (-10 bis +10V) erleichtert Messungen an Halbleiter-Bauteilen. Gegen Masseschleifen-Brumm ist das Modul durch die optoelektronische Isolation zur Außenwelt vollständig immun, und nicht zuletzt lässt sich das DDS-Modul in das c't-Lab-System integrieren, da es voll fernsteuerbar ist und mit dem Rechner, wie die anderen c't-Lab-Module auch, über einfache ASCII-Klartext-Befehle kommuniziert.

Zwei Features machen das Modul besonders wertvoll: Über ein kleines Frontpanel lässt sich der Generator (mit Ausnahme weniger Funktionen) auch vollständig ohne Rechnerunterstützung bedienen, und eine Tochterplatine mit True-RMS-Gleichrichter und zuschaltbarem Vorverstärker ermöglicht es, das Produzierte umgehend auszuwerten. Für die Frequenzgang-Analyse einer Audio-Schaltung beispielsweise werden deshalb keinerlei zusätzliche Messmittel benötigt. Erhöhte Aufmerksamkeit haben wir der einfachen und schnellen Bedienung gewidmet: Über ein „Endlos-Poti“ (Inkremental-Encoder) stellt man die Parameter ein, zum Aussuchen dienen zwei Taster. Trotz der beengten Platzverhältnisse auf der Frontplatte konnten wir dort noch ein kleines alphanumerisches LC-Display zur Anzeige der Parameter unterbringen.

Unser DDS-Modul verwendet das IC AD9833 von Analog Devices, das nach dem „Direct Digital Synthesis“-Verfahren arbeitet. Es enthält einen 28 Bit breiten Vektorgenerator (Phasen-Akkumulator) mit Addierwerk, über die es auf ein 10 Bit breites, 4 KWorte langes Sinus-ROM zugreift. Die ausgelesenen Werte gelangen schließlich in einen D/A-Wandler, der daraus die Schwingung formt. Alternativ zu den Werten im Sinus-ROM kann der Baustein auch einen Teil der im Phasen-Akkumulator generierten Adresse oder nur dessen höchstwertiges Bit auf den D/A-Wandler legen, dann erhält man Dreieck- und Rechteckschwingungen. Im Prinzip ändert man mit der Frequenzeinstellung den Wert im Additionsregister: Bei jedem Taktimpuls addiert der Baustein den Wert im Additionsregister zum Phasen-Akkumulator; je größer der Summand, desto höher die erzeugte Frequenz. Die kann beim AD9833 im Prinzip so hoch sein wie die Hälfte der Taktfrequenz. Obwohl der Baustein bis zu 25 MHz verkraftet, haben wir uns auf etwas über 4 MHz beschränkt: Mit der gängigen Quarzfrequenz von 4,1943 MHz ergibt sich „ganz zufällig“ ein gerader Additionswert pro Hertz der gewünschten Ausgangsfrequenz, nämlich 64. Nur bei den Zehntel-Hertzen muss die steuernde Firmware etwas runden.

In ein „halbes“ 19"-Gehäuse integriert, macht das DDS-Modul (rechts) schon einen professionellen Eindruck. In der Mitte zwei DCG-Netzteilmodule, die zu einem Doppelnetzteil verschaltet sind - die eingebaute Tracking-Funktion macht’s möglich.

Skeptiker werden zu bedenken geben, das 10 Bit Auflösung im Audio-Bereich doch arg wenig seien - da waren schon vor zwanzig Jahren 16 Bit das Maß der Dinge. Der Abstand relativiert sich, wenn man bedenkt, wie wenig Stützstellen ein 1-kHz-Sinus bei 44,1 kHz Sample-Rate nur noch aufweist: Schlappe 44 - beim AD9833 sind es fast hundertmal so viele. Außerdem steht die 10-Bit-Auflösung bei jedem Pegel zur Verfügung, der Klirrfaktor beträgt auch bei geringem Ausgangspegel um 0,05 Prozent - direkt mit PCM-Audio-Hardware vergleichen kann man das DDS-Modul daher nicht. Trotzdem wollen wir einen Nachteil des DDS-Verfahrens nicht verschweigen: Bei allen höheren Ausgangsfrequenzen (will meinen: jenseits der 100 kHz), die in keinem geradzahligem Verhältnis zur Taktfrequenz stehen, macht sich ein gewisser Jitter bemerkbar, also ein kurzzeitiges Phasen-Zittern über wenige Perioden hinweg, obwohl die Ausgangsfrequenz im Mittel konstant bleibt.

Die Firmware läuft wie beim ADA-IO-Modul auf einem ATmega32-Controller mit teilweise gleicher Peripherie (Optokoppler, Adress-Jumper, ISP-Interface, Bedien-Panel-Anschluss). Mit dem DDS-Chip kommuniziert er über lediglich drei Leitungen (Takt, serielle Daten, Lade-Impuls). Weitere Portleitungen steuern den Abschwächer (über ein 16-Bit-Schieberegister), einige Relais sowie den D/A-Wandler für die Offset-Gleichspannung. Zwei der Analogeingänge des ATmega32 dienen zum Erfassen der von der Tochterplatine gleichgerichteten Mess-Spannung - sogar für den Spitzen- und Effektivwert getrennt, denn genügend Analog-Ports erhält man mit dem Controller ja sozusagen als Dreingabe. Eigentlich kam es uns mehr auf die 32 KByte Flash-Speicher an, denn die Firmware wird durch die umfangreichen Fließkomma-Berechnungen (z. B. für dB-Logarithmus und -Exponent sowie die Pegel-Skalierungen) ziemlich aufgebläht. Da die Einstellbarkeit in dB-Schritten auch per Bedienpanel gegeben sein sollte, wollten wir die Umrechnungen gleich vom Controller machen lassen. Als schöner Nebeneffekt ergibt sich, dass das DDS-Modul im Remote-Betrieb die Pegelangaben auch direkt in dBu akzeptiert, mit 0 dBu=0,7746 Veff.

Viel drumherum für ein winziges Bauteil: Damit der DDS-Chip AD9833 im Labor sinnvolle Dienste leistet, ist einiges an Peripherie-Aufwand nötig.

Der AD9833 liefert nur rund 0,6 Vss Ausgangsspannung, für den gewünschten Ausgangspegel von bis zu 8 Veff muss das Signal zunächst kräftig verstärkt werden - natürlich gleichspannungsgekoppelt, damit niedrige Frequenzen noch pegelgetreu verarbeitet werden. Das rund 19fach verstärkte Signal gelangt dann auf den multiplizierenden D/A-Wandler AD7541, der als Abschwächer geschaltet ist und eine Einstellung des Ausgangspegels in 4096 Stufen gestattet. Damit die Stufung bei sehr kleinen Ausgangspegeln nicht zu grob wird, folgt dem zweifach verstärkenden Ausgangs-OpAmp noch ein schaltbarer passiver Abschwächer (auf 1/40stel), der mit einem robusten und absolut „klangneutral“ arbeitenden Relais arbeitet. Dadurch stehen die 4096 Pegelstufen auch unterhalb von 200 mV Ausgangsspannung wieder zur Verfügung, und außerdem erhöht der passive Abschwächer den Störabstand bei sehr kleinen Pegeln enorm - bei sorgfältigem Aufbau lässt sich eine Dynamik von über 120 dB erreichen. Die Ausgangsstufe erinnert an eine NF-Endstufe kleiner Leistung, die hier mit einem relativ hohen Ruhestrom auf niedrige Verzerrungen auch bei höheren Ausgangsfrequenzen getrimmt wurde. Im Ausgangskreis findet sich eine sogenannte Polyswitch-Sicherung, ein „selbstheilendes“ Bauteil, das den Ausgangsstrom auf etwa 100 mA begrenzt. Die Ausgangsimpedanz erhöht sich bei eingeschaltetem passivem Abschwächer von 0 Ohm auf etwa 5 Ohm. Eine Alternativ-Bestückung führt zu einer konstanten Impedanz von 50 Ohm, falls gewünscht - dies betrifft die Widerstände rund um das Abschwächer-Relais SW2.

Ein weiterer D/A-Wandler ist für die Offset-Gleichspannung zuständig, die sich in 4000 Stufen zwischen -10 und +10 V einstellen lässt. Hier kommt der bereits von der DA12-8-Karte bekannte LTC1257 zum Einsatz, ein preiswerter und einfach zu handhabender 12-Bit-Wandler. Das Ausgangssignal des Wandlers wird zunächst symmetriert, damit ohne Umschalten oder Umstöpseln auch negative Offset-Spannungen (z. B. für Messungen an Feldeffekt-Transistoren oder Röhren) möglich sind. Die Offset-Spannung gelangt schließlich zur Ausgangsstufe, die analog zum AC-Ausgang aufgebaut und wie jener mit einer Polyswitch-Sicherung geschützt ist. Die Sicherung liegt hier ebenfalls im Feedback-Kreis, weshalb ihr Innenwiderstand (etwa 4 Ohm) den Ausgangspegel nicht verfälscht.

Durch einen Trick erreichten wir, dass die Offset-Spannung in voller Höhe dem Ausgangssignal (immerhin bis zu 23,2 Vss) addiert werden kann, ohne dass die Verstärkerstufe in die Begrenzung fährt: Die Offset-Stufe - praktisch die Hälfte einer H-Brückenschaltung - bildet eine virtuelle Masse an „AC Return/Offset Out“, während das (reale) Massepotenzial der Schaltung durch die Opto-Isolation ohne Weiteres in der Luft schweben kann. Die Masse des „Verbrauchers“ - also üblicherweise die Abschirmung einer BNC-Buchse - wird also nicht an das Massepotenzial der DDS-Schaltung (Gnd), sondern an „AC Return/Offset Out“ angeschlossen!

Wundern Sie sich deshalb nicht, dass bei einer eingestellten Offset-Spannung von beispielsweise +2 V am Offset-Ausgang genau -2 V gegenüber dem (realen) Schaltungs-Massepotenzial zu messen sind. Wir haben die DDS-Masse trotzdem herausgeführt, damit man die Offset-Spannung auch als eigenständige Steuerspannung verwenden kann - natürlich unter Beachtung des negativen Vorzeichens. Damit das (äußerst geringe, aber immerhin vorhandene) Rauschen auf der virtuellen Masse bei kritischen Messungen im mV-Bereich nicht stört, schaltet ein weiteres Relais den Offset-Verstärker ab, wenn die Offset-Spannung auf genau 0 V eingestellt wurde.

Der Einsatzbereich des DDS-Funktionsgenerators vergrößert sich mit dem True-RMS-Messaufsatz deutlich. Die Messgleichrichter-Platine kommt huckepack auf das DDS-Modul, sodass eine kompakte Einheit entsteht.

All diese internen Vorgänge brauchen Sie als Anwender nicht zu scheren, die Umschaltungen und Einstellungen erledigt die Firmware automatisch - ebenso wie die Umrechnung von und zu Vss-Werten bei Rechteck- und Dreieckschwingungen, bei denen der Effektivwert zweitrangig ist.

Um den äußerst effizienten und sehr genauen Abschwächer auch für andere Zwecke verwenden zu können, haben wir schließlich noch einen Audio-Eingang für extern zugeführte Signale vorgesehen, der sich per Befehl (oder im Bedienungs-Menü „Funktion“) aufschalten lässt, der DDS-Chip wird dann abgewürgt. Zusätzlich zur Rechteckschwingung gibt es die Wellenform „Logic“, bei der eine dem Rechteck zugegebene, voreingestellte Offset-Spannung ein TTL-Signal „emuliert“. Die normale Rechteckschwingung weist durch die hier andere interne Signal-Aufbereitung seitens des AD9833 leider einen Schönheitsfehler auf: Sie enthält einen minimalen Gleichspannungsanteil und ist damit nicht exakt Null-symmetrisch - was der Trick mit Widerstand R59 so gut es geht zu korrigieren versucht.

Das ganzseitige Schaltbild auf Seite 193 in c't 15/07 lässt zunächst Schlimmes befürchten - doch keine Angst, die Schaltung passt auf eine einzige Euro-Karte und ist an einem Nachmittag aufgebaut und getestet. Wenn Sie das DDS-Modul als Segor-Teilesatz erhalten haben, wurde Ihnen eine ausgesprochen nervenaufreibende Arbeit bereits abgenommen: Das Auflöten des winzigen AD9833, den es wie viele andere hochinteressante Bauteile nur noch im SMD-Gehäuse gibt. Hier leider ein besonders kleines: Das MSOP10-Gehäuse verlangt dem Praktiker schon einiges an Lötkunst ab, die fünf Beinchen auf jeder Seite haben hier nur 0,5 mm Abstand voneinander. Eine SMD-Lötnadel und 0,5-mm-Lötzinn sollten Sie mindestens auftreiben, sonst geht das Vorhaben in die Hose. Demgegenüber ist die Montage des Atmel-Prozessors im Flatpack mit 0,8 mm Beinchenabstand schon fast eine leichte Übung; ohne SMD-Erfahrung sollten Sie aber unbedingt auf die mit beiden Bauteilen vorbestückte Platine zurückgreifen.

Rund um den AD9833 ist noch etwas „Hühnerfutter“ in Form von drei SMD-Kondensatoren verstreut, die den Adrenalinspiegel nur begrenzt erhöhen. Bei der übrigen Bestückung gilt die goldene Regel, zuerst die niedrigen Bauteile (Widerstände, Drossel, Dioden, Drahtbrücke auf Position R8) einzulöten. Sehr hilfreich ist ein Stück Schaumstoff als Lötunterlage, der die Bauteile nach dem Einsetzen bis zum Verlöten fixiert. Achten Sie wie immer auf die richtige Polung der Elkos und Halbeiter; verpolte Elektrolyten werden schnell übellaunig und entladen ihren Zorn in spontaner Desintegration.

Innenleben des AD9833: Der Phasen-Akkumulator/Addierer erzeugt Adressen für ein Sinus-ROM mit 4096 Stützstellen. Die Ausgangsfrequenz ergibt sich nach der Formel f = Addierwert x Taktfrequenz / 228


Die Inbetriebnahme gestaltet sich vergleichsweise einfach. Das DDS-Modul wird von einem (ggf. eigenen, siehe erster Teil der Serie) IFP-Netzteil mit Strom versorgt, das OptoBus-Datenkabel gehört an DDS/PL3, Jumper JP4 und JP5 sind gesteckt. Nach dem Aufspielen der Firmware (siehe www.ct-lab.de) sollte LED1 aufblinken und kurz darauf Relais SW3 anziehen, begleitet vom Aufleuchten von Kontroll-LED4. Am Ausgang muss jetzt eine Sinusschwingung von 1 kHz mit einem Pegel von rund 0,8 Veff zu messen sein, was dem Einschalt-Default von 0 dBu nahe kommt. Auf einem Terminal-Programm am Rechner (Parameter 38400-8n1, lokales Echo ein, Handshake aus) meldet sich die Platine mit ihrer Einschaltmeldung, etwa „#0:254=3.482 [DDS by CM/c't 03/2007]“, und reagiert auf eingetippte Befehle.

Der zu bestückende Teil der DDS-Platine ist etwas kleiner als das Euro-Format, damit das Modul mechanisch hinter die Panel-Platine passt.

Schließen Sie ein NF-Millivoltmeter oder ein gutes Digitalvoltmeter an TP1 (auf der Platine und im Schaltbild gekennzeichnet) an, die Masse gehört (zum Abgleich) an die Drahtbrücke R8. Stellen Sie nun mit R24 eine Wechselspannung von exakt 4,096 Veff ein. Dann die Wellenform mit „WAV=0!“ abschalten und den Pegel mit „LVL=1!“ auf Minimum setzen, das Digitalvoltmeter auf Gleichspannung (200-mV-Bereich) umschalten und mit R11 auf 0 V abgleichen; einige Millivolt Rest sind zulässig. Klemmen Sie das Digitalvoltmeter nun an TP2 an und gleichen Sie hier die Ausgangsverstärker-Fehlerspannung mit R24 ebenfalls auf 0 mV ab. Zur Kalibrierung der Rechteck-Ausgangsspannung können Sie entweder ein Oszilloskop oder ein True-RMS-Digitalvoltmeter verwenden, beide werden an TP1 angeschlossen. Wählen Sie die Rechteck-Wellenform mit „WAV=3!“. Am Oszilloskop stellen Sie nun mit R28 einen Spitze-Spitze-Wert von 11,6 Volt ein - oder am True-RMS-Voltmeter 5,792 Veff.

Wenn Sie Ihren Kopf jetzt leicht nach links neigen, wird Ihnen auffallen, dass die DDS-Schaltung zum größten Teil aus reinrassiger Analog-Technik besteht. Die Steuerung der D/A-Wandler und Schalter sowie die Aufbereitung der Daten für den Synthese-Chip übernimmt die Firmware im ATmega32-Prozessor. Das Modul belohnt die Aufbau- und Abgleicharbeiten mit vorzüglichen technischen Daten.


Abschließend ist der DC-Offset-Ausgang an der Reihe. Geben Sie mit „DCO=0!“ eine Offset-Spannung von 0 V vor und stellen Sie diese mit R29 auch am Testpunkt TP3 ein (Digitalvoltmeter im mV-Bereich). Mit „DCO=10!“ nun eine Offset-Spannung von 10 V programmieren und mit R27 auf -10 V abgleichen (negative Spannung, wie oben erwähnt). Kontrollieren Sie, ob der Befehl „DCO=-10!“ zu einer positiven Ausgangsspannung führt; die Abweichung vom Sollwert darf einige Millivolt betragen. In der Zwischenzeit dürften die Endstufen-Transistoren warm geworden sein, dies ist normal. Dampfende Widerstände oder Netzteil-Spannungsregler, die bei Berührung ihre Kontur in die Fingerkuppe brennen, weisen allerdings auf fatale Bestückungsfehler oder Zinnbrücken hin.

Die True-RMS-Voltmeter-Platine TRMSC ist wie das Bedienpanel optional, erweitert aber den Einsatzbereich des Moduls beträchtlich. Sie kann wie im Bild ersichtlich direkt auf der DDS-Platine montiert werden, mit der sie über ein kurzes 16-poliges Flachbandkabel verbunden ist. Alternativ wäre eine Verbindung über zweireihige Buchsenleisten und Pfostenstecker (sogenannte Stapelleisten) möglich, servicefreundlicher ist aber auf jeden Fall die Flachkabel-Lösung.

Die optionale TRMSC-Platine kommt huckepack auf das DDS-Modul. Neben ihrer Messfunktion führt sie das Sweep-Sync-Signal (PL5) und den externen Audio-Eingang (PL3) auf Steckverbinder. Ungewöhnlich ist der Einsatz und die Beschaltung des NE5534 in einer Hochimpedanz-Eingangsstufe - aber kein anderer (billiger) OpAmp bringt hier so gute Ergebnisse, schon gar keiner mit FET-Eingang. Bei der Montage Plastik-Bolzen und Nylon-Scheiben verwenden, damit kein Kurzschluss zu den Leiterbahnen entsteht.

Auch auf dieser Platine kommt ein SMD-IC zum Einsatz, der True-RMS-Konverter LTC1967 (U4) von Linear Technologies. Damit der zierliche Baustein unter den vergleichsweise riesigen bedrahteten Rest-Bauteilen nicht vereinsamt, haben wir ihm noch einige SMD-Widerstände und Kondensatoren zur Seite gestellt - was wegen der kurzen elektrischen Verbindungen ohnehin von Vorteil ist. Mit diesem IC ist auch schon das Herzstück der Schaltung genannt: Das Bauteil arbeitet nach einem neuartigen Verfahren mit einem Sigma-Delta-Modulator, der ohne Abgleich auskommt. Frühere True-RMS-Konverter verwendeten aufwendige und mit Amateur-Mitteln schwer abzugleichende Analog-Multiplizierer und -Logarithmierer. Etwas pingelig ist der LTC1967 nur bezüglich der Höhe seiner Eingangsspannung, sie darf für optimale Ergebnisse und gute Linearität 500 mVeff nicht überschreiten. Ansonsten ist der Baustein sehr pflegeleicht: Wechselspannung rein, und eine dem Effektivwert entsprechende Gleichspannung kommt raus.

Dem LTC1967 ist ein digital umschaltbarer Vorverstärker/Abschwächer vorgeschaltet, der vier Bereiche abdeckt - für 100 mV, 1 V, 10 V und 100 V „Vollausschlag“. Wegen der schaltungstechnisch kritischen parasitären Kapazitäten kommen auch hier einige SMD-Widerstände zum Einsatz. Der Eingangswiderstand beträgt Oszilloskop-übliche 1 MOhm, mit dem Trimmkondensator C23 kann man die Eingangskapazität sogar seinem Scope anpassen, sodass dessen 10:1-Tastköpfe keinen Kompensationsneuabgleich benötigen. Wenn Ihnen an dieser Stelle irgendetwas unklar erscheint: Lassen Sie C23 einfach weg, es geht auch ohne.Letztere Aussage gilt auch für das Vernier-Poti an PL4, mit dem man die Mess-Spannung auf einen Referenzwert einstellen kann. Wer das nicht benötigt, setzt anstelle von PL4 einen Jumper ein, der Pin 2 und 3 brückt. Der „echte“ Masse-Pin 1 am Signal-Eingang PL2 darf natürlich nur mit dem Prüfling verbunden werden, wenn der Offset-Ausgang abgeschaltet ist, sonst entsteht ein Kurzschluss mit der virtuellen Masse („AC Return/Offset Out“ im DDS-Schaltbild). Es ist aber durchaus zulässig und auch so gewollt, „AC Return/Offset Out“ als Masseanschluss für den Signaleingang der TRMSC-Platine zu benutzen. Die Bandbreite der Gesamt-Schaltung reicht bis weit über 100 kHz, allerdings liefert der LTC1967 ab etwa 40 kHz ein zunehmendes Rumpeln im gleichgerichteten Signal, das prinzipbedingt durch Aliasing-Effekte in seinem Sigma-Delta-Modulator entsteht.

Der externe Audio-Eingang der DDS-Platine liegt an Steckverbinder TRMSC/PL3 an. Steckt man den Jumper JP1, wird das auf dem TRMSC-Board verstärkte oder abgeschwächte Signal des Messeingangs auf den Audio-Eingang geschaltet, sodass man das System auch als universellen Vorverstärker/Abschwächer für beliebige Audio-Signale verwenden kann. Für Messungen mit der Soundkarte wird deren Eingang mit PL3 verbunden, hier liegt ja das Signal des Messeingangs an, und man kommt so in den Genuss eines hochohmigen Eingangs mit umschaltbarer (und bei Einsatz des Vernier-Potis auch stufenlos einstellbarer) Empfindlichkeit. Zu beachten ist allerdings, dass die hochgelobte Potenzialtrennung bei Verbindung mit einer PC-Audio-Karte dahin ist.

Ein Sallen-Key-Filter zweiter Ordnung um und mit U2 sorgt dafür, dass sehr niederfrequente Wechselspannungen nicht zu stark pulsierenden Gleichspannungen werden, die den internen A/D-Wandler des ATmega32 verwirren. Damit der Eingangsspannungsbereich des A/D-Wandlers gut ausgenutzt wird, verstärkt U3 die maximal 500 mV vom LTC1967 auf einen Spannungshub von 2 V. Der ATmega32-Controller erhält seine Referenzspannung übrigens vom Offset-Generator LTC1257 (DDS/U11, nominal 2,048 V, Signal ARef1257). Die 10 Bit Auflösung der ATmega32-Wandler (1024 Counts) entsprechen etwa drei Digitalvoltmeter-Stellen - nicht umwerfend, aber sicher genauer als jedes analoge Instrument.

Zusätzlich zum True-RMS-Konverter haben wir auf der Tochterplatine einen einfachen Spitzenwert-Gleichrichter vorgesehen, dessen Ausgangspegel ebenfalls zum DDS-Controller gelangt. Der Scheitelwert der angelegten Wechselspannung lässt sich somit getrennt erfassen. Wichtiger ist aber die darauf aufbauende Übersteuerungsanzeige um U8: Zwei LEDs zeigen genügend Pegel (grün, LED1) und Übersteuerung (rot, LED2) an. Das ist besonders deshalb hilfreich, weil der True-RMS-Konverter einige Millisekunden „Rechenzeit“ benötigt, der Spitzenwert aber sofort erfasst wird. Zusammen mit dem Vernier-Poti und der Eingangsbuchse sollten sie auf einer eigenen Frontplatte untergebracht werden, damit man ihrer Aktivität auch gewahr wird. Um den Platz hinter dieser Frontplatte nicht zu verschenken, bringt man hier pfiffigerweise die DDS-Netzteilplatine unter. Frontplattenvorschläge finden Sie auf www.ct-lab.de, ebenso wie die Firmware und einige LabVIEW-Demos für das DDS-Modul.

Der Abgleich setzt eine funktionsfähige und kalibrierte DDS-Platine voraus. Nach dem Einschalten stellt die DDS-Firmware per Default „RNG=1!“ ein, also den 1-Volt-Bereich. Der wird auch für den Abgleich benötigt. Schließen Sie den Eingang der TRMSC-Platine mit einem Jumper über PL2 kurz und stellen sie R5 so ein, dass sich eine leicht (!) positive Spannung an TP4 ergibt - die sollte deutlich unter 1 mV bleiben, aber keinesfalls negativ werden. Geben Sie mit „LVL=774!“ einen Ausgangspegel von 774 mV vor und verbinden Sie den Eingang der TRMSC-Platine (PL2 Pin 2) über ein kurzes Kabel direkt mit dem DDS-Ausgang (DDS/PL7 Pin 2, AC Out). Die grüne LED sollte nun leuchten, die rote nicht. Stellen Sie R6 so ein, dass sich auf Anfrage mit „INL 0?“ das Ergebnis 774 ergibt; alternativ können Sie auch die DDS-LabVIEW-Demo starten und den RMS-Eingangspegel kontinuierlich ablesen, was deutlich bequemer ist. Nun mit „LVL=1000!“ einen DDS-Ausgangspegel von 1 V einstellen: Die rote LED sollte nun leuchten. R4 so abgleichen, dass „INL 1?“ das Ergebnis 2828 hervorbringt (Spitze-Spitze-Wert in mV einer Sinusspannung mit 1 Veff).

Skalierungskorrekturen für einzelne Messbereiche kann man gegebenenfalls mit den SCL-Parametern vornehmen, analog dem beim ADA-IO-Modul beschriebenen Procedere - siehe hierzu auch die aktuelle c't-Lab-Syntax-Tabelle (unter „Browse Source/Dokumentation“ auf www.ct-lab.de). Damit ist der Abgleich vollständig, denn die in der nächsten Ausgabe beschriebene Panel-Platine benötigt keinen - wenn man von der trivialen Einstellung des Display-Kontrastes einmal absieht. (cm)

[1] www.heise.de/ct/projekte/machmit/ctlab/browser/Dokumentation

[2] Datenblätter von Analog Devices, Atmel, Linear Technologies

Soft-Link

Forum zu c't-Lab

Stückliste DDS
Halbleiter
U1 6N137
U2 ATmega32-16AU (QFP)
U3, 4 HCF4094
U5 OSC 4,194 MHz DIL14
U6 AD7541AK (DIL)
U7 AD9833 (MSOP10)
U8, 10, 14 NE5534
U11 LTC1257 CN8
U12 NE5532
U13 entfällt
U9 OP-27
D1..D8 1N4148
Q1 BS170
Q2, 5, 6 BC337
Q3, 7 BD438
Q4, 8 BD437
passive Bauteile
C1, C4..6, 8, 13, 16, 18, 23, 31, 32 100n ker. RM5
C2, 3, 19, 20, 33 22p RM2,5
C7 470n 63V MKT RM5
C9 10µ 25V Ta
C10, 12 100n SMD 1206
C11 10n SMD 0805
C14 22µ 16V Ta
C15, 30 8p2 RM 2,5
C17, 21 47µ 25V
C22 22µ 16V Ta
C24, 34 100µ 25V
C25, 27, 35 4µ7 50V
C26 100n 63V MKT RM5
C28 10µ 50V
C29 330n 63V MKT RM5
R1, 3 220R
R2, 4, 5 2k7
R6 470R
R7, 9, 14, 15 4k7
R8 0R (Drahtbrücke)
R10 entfällt
R11 10k Präz.-Trimmer stehend inline, Ausführung 64W
R12 15k
R13 50k Präz.-Trimmer stehend inline, Ausführung 64W
R16 33k
R17, 23 2R2
R18 8k2
R19 47k
R20 1k2
R21, 22, 39, 42, 56 2k2
R24 5k Präz.-Trimmer stehend inline, Ausführung 64W
R25 100k Präz.-Trimmer stehend inline, Ausführung 64W
R26 22k
R27, 28, 29 200R Präz.-Trimmer stehend inline, Ausführung 64W
R30 18k
R31,32, 37, 48 10k
R33 220R
R34, 35, 55 100R
R36, 58 Polyswitch-Sicherung 100mA, z.B. PFRA 010 oder RXEF010
R38, 44, 57 1k
R40, 41, 53, 54 6R8
R43 910R
R45, 47 0R (100R für 50-Ohm-Ausgang, siehe Text)
R46 2k2
R49 180R ( 1k8 für 50-Ohm-Ausgang)
R50 15R (150R für 50-Ohm-Ausgang)
R51, R52 10R (100R für 50-Ohm-Ausgang)
R59 27k
alle Widerstände 1% 0,4W
Sonstiges
SW1 Min.-Relais 1-pol. um 12V, z.B. Omron G5V-1 12VDC
SW2, SW3 Min.-Relais 2-pol. um 12V, z.B. Omron G5V-2 12VDC oder SDS DS2E-M-DC12V
XTAL1 16 MHz HC49U
JP1..JP5 Jumper-Steckbrücken nach Bedarf
L1 10µH axial
LED1..4 LED 3 mm rot
PL1 Wannen-Pfostenverbinder 14-pol.
PL2, PL6 Wannen-Pfostenverbinder 10-pol.
PL5 Wannen-Pfostenverbinder 16-pol.
PL7 Platinen-Steckverbinder 3-pol.
Platine DDS (eMedia, Segor), Flachbandkabel, Pfostenstecker
Stückliste TRMSC
Halbleiter
U1 LF411
U2, 3 OP-07
U4 LTC1967 (MSOP8)
U5, 10 DG419 (DIL)
U6 78L05
U7, 9 NE5534
U8 LM358
D1..4 1N4148
LED1 LED 3mm grün
LED2 LED 3mm rot
passive Bauteile
C1 220n MKT 63V RM5
C2 4µ7 50V
C3, 5, 6, 10, 16, 17 100n ker. RM5
C11, 12 2µ2 MKT 63V RM5
C13 4µ7 25V Ta.
C14 4µ7 50V
C15, 21 22p RM2,5
C18 330n 160V o. 250V MKT RM15
C19 33p RM2,5
C20, 21 entfällt
C23 Trimmer 6..30p RM5
C4 4µ7 50V
C7 220n MKT
C8, 9 4µ7 50V
R1 100R
R2 470k
R3 82k
R4 10k Präz.-Trimmer stehend inline
R5 100k Präz.-Trimmer stehend inline
R6 5k Präz.-Trimmer stehend inline/td>
R7, 8, 11 47k
R9 10k
R10 27k
R12 10k
R13, 14 15k SMD 0805
R15 22k
R16 180k
R17 100k
R18 3k9
R19 18k
R20 33k
R21 4k7 SMD 0805
R22 10k
R23 150k
R24, 25, 30 470k SMD 0805
R26, 27 1k
R28 220R
R29 270R
R31 4k7
R32 470R
R40 22k lin., Potenziometer (bei Bedarf)
alle Widerstände 1% 0,4W
Sonstiges
JP1, 2 Jumper nach Bedarf
PL1 Wannen-Pfostenverbinder 16-pol.
PL2, PL3, PL5 Platinen-Steckverbinder 2-pol.
PL4 Platinen-Steckverbinder 3-pol.
Shield Abschirm-Gehäuse Teko 4020, Platine TRMSC (eMedia, Segor), Kunststoff-Abstandsbolzen M3, 20 mm lang
Anzeige