FY6900

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

Arbitrary Function Generator FY6900

FY6900 Front.jpeg

Erster Eindruck

Erstmal ein wenig planlos rumspielen. Man kann aus 36 vordefinierten und 64 selbstdefinierten Signalformen wählen. Diese werden als Minibild im Display dargestellt. Doch als erstes muss man mal den nervigen Beeper ausstellen, der ist gut gemeint, geht aber schnell auf den Keks. Das Gerät ist mit real 620g sehr leicht, dank der geringen Leistungsaufnahme auch lüfter- und geräuschlos. Das Systemmenu zeigt an.

MODEL  : FY6900-60M
VERSION: V1.3.1. 

Bedienung

Die Einstellung der Parameter, allen voran der Frequenz, Amplitude, Signalform etc. erfolgt über ein Drehrad ohne Tastfunktion und darunter zwei Tasten für links/rechts zur Auswahl der Stelle. Das ist ein Quasi-Standard bei derartigen Geräten. Über 5 Soft Keys erfolgt die Auswahl in den Menus. Die Tasten sind der übliche Gummi, einige sogar beleuchtet. Das LCD ist mit 2,4 Zoll Diagonale nicht riesig, erfüllt aber seinen Zweck. Die Darstellung der Parameter ist einfach und übersichtlich. Die Anzeige der Frequenz erfolgt konstant mit sage und schreibe 14(!) Stellen mit 1uHz Auflösung (ja, MIKROhertz). Mittels der OK-Taste kann man jedoch den Dezimalpunkt verschieben und zwischen uHz, mHz, Hz, kHz und MHz umschalten. Je drei Zifferngruppen sind per Hochkomma separiert. Das ist OK, wenn gleich unorthodox. Das Drehrad für die Zahlenverstellung hat Rastpunkte und eine kleine Delle für den Finger zum drehen. Allerdings ist die Qualität entsprechend der Preiskategorie des Geräts. Es funktioniert. Die Amplitude ist mit 0,1mV Auflösung von 0-24Vpp einstellbar, der Offset mit 1mV. Das Tastverhältnis ist mit 0,001%, die Phasenlage mit 0,001° einstellbar. Diese extreme Auflösung wird aber nur bei recht niedrigen Frequenzen erreicht, dazu später mehr. Es gibt Speicherplatz für 64 selbstdefinierte Signalformen mit 8192 Punkten zu je 14 Bit.

Bei Veränderung der Parameter Frequenz oder Phase wird die gesamte Signalerzeugung auf Null zurück gesetzt und läuft neu an. Das sieht man sehr gut, wenn man beide Kanäle aktiviert und sehr langsame Signale, z.B. 0,1Hz Sinus erzeugt. Damit will man die Synchronität der beiden Kanäle herstellen, damit die Phasenlage stimmt. Das ist bei genauer Überlegung unvermeidlich. Bei den Parametern Wave (Signalform), Amplitude, Offset, Duty Cycle passiert das nicht, diese wirken direkt und nur auf den gerade veränderten Kanal und führen nicht zum Reset der Signalerzeugung.

FY6900 distortion.png

Signalqualität

So da wollen wir mal ein Koaxkabel anschließen und das Signal auf einem Oszi betrachten. Alle Messungen werden mit einem LeCroy WaveJet 314 mit 100MHz Bandbreite durchgeführt. Fangen wir mal mit einem einfachen 1kHz Sinus mit 10V Amplitude an. Hmm, das Signal sieht gut aus, aber es sind 5V (1M Eingang am Oszi). Der chinesische Programmierer hat scheinbar eine andere Definition von Amplitude, die auch vom eigenen Handbuch abweicht. Und da 10Vpp mehr klingen als 5Vp ist hier wohl auch das gemeint. Mit 50 Ohm Last, ist es nur noch die Hälfte, als 1/4 der angezeigten Amplitude. Nervig! Die "Amplitude" kann man bis 24V erhöhen, im Leerlauf ist die Kurvenform auch sehr gut. Aber ab ca. 17Vpp (4,25Vp bei 50 Ohm Last) werden die Spitzen des Sinus plattgedrückt. Da geht dem Ausgangsverstärker die Versorgungsspannung aus, wie es schon in der Diskussion weiter unten festgestellt wurde. Allerdings muss man auch sagen, daß die Amplitude bei keinem Generator ewig erhöht werden kann und muss. 20Vpp reichen! Die 24Vpp sind eher Marketing und nur für wenige Anwendungen wie 12V CMOS-Signale nötig.

Ok, stellen wir mal was ein. Die Bilder sind als ZIP-Archiv verfügbar.

  • 100kHz, 20Vpp, sehr gut
  • 1MHz, 20Vpp, sehr gut
  • 10MHz, 20Vpp, sehr gut
  • 20MHz, 20Vpp, Verformungen. Bis 20 MHz ist noch die volle Amplitude einstellbar, aber der Sinus wird oberhalb von 10Vpp immer schlechter und ist bei 20Vpp schon arg dreieckig. Ab 20 MHz sind nur noch max 5Vpp einstellbar, welche real als 2,6V gemessen werden.
  • 60MHz, 5Vpp, sehr gut, Der Sinus sieht immer noch gut aus, wird aber breiter. Ich vermute das sind die unvermeidlichen Nebenlinien (Jitter) der Signalgenerierung durch das DDS-Prinzip. Wie sauber der Sinus wirklich ist, kann man nur mit einem guten Spektrumanalyzer messen, den hab ich aber nicht. In der Diskussion haben das einige Leute gemacht. Die Aussteuerung sinkt auf 3,3Vpp, das sind 66% bzw. ca. -3dB. Passt!

Mit 2 Kanälen kann man u.a. eine Phasenverschiebung einstellen. Die klassische Demonstrationen von phasenverschobenen Sinussignalen sind Lissajousfiguren. Hier ist ein Signalgenerator mit 2 Ausgängen ideal, vor allem, weil man mit digitaler Genauigkeit die Phasenlage und Frequenz einstellen kann. Allerdings muss man sagen, daß Lissajousfiguren auf einem Digitaloszi nicht so ganz ihren Charme entfalten 8-0. Bilder können auch nicht das schöne Tanzen der Linien vermitteln.

So weit, so gut. Probieren wir mal die Signalform CMOS. Das ist ein Rechtecksignal mit einstellbarem Tastverhältnis, das witzigerweise auch einen negativen Offset haben kann. Ok, 1kHz CMOS mit 5V Amplitude, was HIER auch stimmt! Schauen wir uns mal die Flanken an. WOW! Das nenn ich mal sauber! Praktisch kein überschwingen und ca. 13ns Anstiegszeit! Und das ohne 50 Ohm Terminierung am Oszi, denn die 50 Ohm im Generator wirken als Serienterminierung, siehe Wellenwiderstand. Die fallende Flanke sieht etwas langsamer aus und wird vom Oszi mit 14ns gemessen. So, jetzt schauen wir mal, wie gut die Auflösung des Tastverhältnisses WIRKLICH einstellbar ist. 0,001% sind bei 1kHz 10ns Schrittweite. Das sollte der Generator noch schaffen, er arbeitet intern mit 250 Msmps. Der Triggerzeitpunkt liegt 500us vor der Bildschirmmitte (50%). Wie man im Screenshot mit Nachleuchten sieht, verändert sich die Pulsbreite aber um ca. 16ns, wenn man auf 49,999% dreht, in die andere Richtung (50,001%) ist die Schrittweite kleiner. Das sind vermutlich Quantisierungsprobleme der DDS oder der Software, welche die Pulsbreite berechnet. Das Ergebnis ist leicht suboptimal. Gehen wir auf 100kHz. Hier müßten 0,001% Schrittweite zu 0,1ns Änderung führen. Geht natürlich nicht. Erst eine Änderung des Tastverhältnisses um 0,04% ergibt die erwartete Änderung um 4ns. Allso stimmt alles wieder. Bei 10 MHz ist CMOS noch als gutes Rechtecksignal zu bewerten, hier ist auch offiziell Schluß mit den meisten Signalformen außer Sinus und Rechteck (wo liegt der Unterschied zu CMOS?).

Signalform Square (konstant 50% Tastverhältnis, max. 25MHz) und Rectangle (Einstellbares Tastverhältnis von 0-100%, max 10MHz). Hier wird wahrscheinlich die Flanke nicht künstlich verlangsamt sondern der DAC und der Ausgangsverstärker schalten so schnell wie möglich von einem Sample auf das nächste von 0 auf 100%. Das Ergebnis sind 5ns gemessene Anstiegszeit bei 5Vpp! Achtung, das Oszi hat mit 100MHz Bandbreite schon selber ca. 3,5ns, real sind es vermutlich eher

[math]\displaystyle{ t_r = \sqrt{{t_{ges}}^2 - {t_{oszi}}^2} = \sqrt{5ns^2-3,5ns^2} = 3,5ns }[/math]

WOW! Die fallende Flanke ist merkwürdigerweise mit 7ns deutlich langsamer. Das könnte ein Problem des Ausgangsverstärkers sein. Bei 20Vpp sind es ca. 15ns, immer noch sehr gut!

Die nächsten Kandidaten im Schnelldurchlauf, wobei ich nur einige wenige herauspicke.

  • 1MHz, 10Vpp, Trapezoid: Rechteck mit einstellbarer steigender Flanke von 4-10.000ns, die fallende Flanke ist immer maximal schnell (Softwarefehler?)
  • 1MHz, 10Vpp, Ramp: Positiver Sägezahn mit ca. 10ns Anfallzeit.
  • 1MHz, 10Vpp, P-Full-Wave: Sinus mit Zweiwegegleichrichtung, positiv
  • 1MHz, 10Vpp, Trapezoid: Ein echtes Trapez mit echt langsamen, linearen Flanken von 157ns (ca. 16% der Periodendauer)
  • 1kHz, 10Vpp, AM: konstante Amplitudenmodulation
  • 1kHz, 10Vpp, PM: konstante, lineare Phasenmodulation
  • 1kHz, 10Vpp, Chirp: konstante, logarithmische Frequenzmodulation

Signalformen und Parameter

Das Handbuch ist im sehr kargen Englisch gehalten und vereint die literarischen Ambitionen der Gattung Ingenieur und Asiate. Darum hier die Übersicht der fest definierten Signalformen. Bei allen außer DC sind die Parameter Frequenz, Amplitude, Offset und Phase einstellbar, bei Nr. 2-5 Tastverhältnis, Anstiegszeit, und Pulsbreite.

Signalformen
Nr Name Beschreibung
0 SINE Sinus
1 Square Rechteck, konstantes Tastverhältnis 50%
2 Rectangle Rechteck mit einstellbarem Tastverhältnis 0-100%
3 Trapezoid Trapez mit einstellbarer, steigender Flanke 4ns-10us
4 CMOS Rechteck mit einstellbarem Tastverhältnis 0-100%
5 Adj-Pulse Rechteck mit einstellbarer Pulsbreite 10ns-4s
6 DC Gleichspannung, keine Amplitudeneinstellung
7 TRGL symmetrisches Dreieck
8 Ramp steigende Rampe
9 NegRamp fallende Rampe
10 Stair TRGL symmetrische Treppenstufen
11 Stairstep positive Treppenstufen
12 NegStair negative Treppenstufen
13 PosExponen negative Nadelpulse
14 NegExponen positive Nadelpulse
15 P-Fall-Exp negative Nadelpulse, zeitlich gespiegelt
16 N-Fall-Exp positiveNadelpulse, zeitlich gespiegelt
17 PosLogarit positiver Logarithmus
18 NegLogarit negativer Logarithmus
19 P-Fall-Log positiver Logarithmus, fallend
20 N-Fall-Log negativer Logarithmus, fallend
21 P-Full-Wav Zweiweggleichrichtung, Sinus, positiv
22 N-Full-Wav Zweiweggleichrichtung, Sinus, negativ
23 P-Half-Wav Einweggleichrichtung, Sinus, positiv
24 N-Half-Wav Einweggleichrichtung, Sinus, negativ
25 Lorentz-Pu Lorentzpuls
26 Multitone Mehrfachsinus
27 Random-Noi Pseudozufallsrauschen
28 ECG EKG-Puls
29 Trapezoid Trapez mit linearen Flanken, tr = tf = 16% der Periodendauer
30 Sinc-Pulse Sinc-Puls
31 Impulse Einzelpuls mit 1/8192 Tastverhältnis, bei F>30kHz nicht sinnvoll nutzbar
32 AWGN Digitale Modulation, ähnlich PAM
33 AM konstante Amplutudenmodulation, 100%
34 FM konstante, lineare Frequenzmodulation
35 Chirp konstante, logarithmische Frequenzmodulation
36-99 ARB1-ARB64 programmierbare Signalform

Obere Grenzfrequenz und Jitter

  • Sinus: 60MHz
  • Square: 25MHz
  • Sonstige: 10MHz

Wenn man bei 100kHz und 10Vpp die verschiedenen Signalformen mal durchprobiert, sieht alles noch sehr gut aus, Signalqualität wie bei PSpice. Bei 1MHz sieht auch noch alles sehr gut aus. Bei 10MHz, der offiziellen Grenze, wird natürlich alles ein wenig runder und die extrem steilen Flanken werden überproportional größer. Denoch ist die Signalqualität als gut zu bewerten. Mit steigender Frequenz wird natürlich die Luft immer dünner. Und ein DDS-Generator kann bei aller Raffinesse nicht zaubern, sprich, der prinzipbedingte Jitter des Ausgangssignals wird immer sichtbarer. Der wird bestimmt durch das feste Zeitraster von 4ns (250MHz), mit welchem die DACs getaktet sind. Dazwischen kann kein Sample generiert werden! Auch der Ausgangsfilter mit fg = 60MHz kann das nicht! Darum werden besonders die steilen Flanken von Signalen immer diesen Jitter aufweisen! Dessen Frequenz ist jedoch von der eingestellten Frequenz abhängig und kann sehr hoch- oder auch sehr niederfrequent sein, von Mikrohertz bis Megahertz. Das ist die Achillesferse eines einfachen Signalgenerators auf DDS-Basis. Nur eine extrem kleine Anzahl bestimmter Frequenzen ist prinzipbedingt jitterfrei, nämlich dann, wenn die Anzahl der Samples/Periode EXAKT dem Zählerumfang des DDS-Akkumulators entspricht. Wenn der Generator WIRKLICH 1uHz Frequenzauflösung hat, muss er mindestens log2(250MHz/1uHz) = 47,8 Bit haben. DDS-ICs mit 48 Bit Akku sind üblich, hier in einem FPGA umgesetzt. D.h. nur Ausgangsfrequenzen mit einem Frequenzeinstellungswort von 2^n (n=0..47) sind jitterfrei, hier

f = 2^n / 2^48 * 250 MHz = 250 MHz / 2, 4, 8, 16 etc. 
  = 125, 62,5, 31,25MHz etc. bis hinab zu 1,77636E-06 Hz

Weiterhin sollte man sich folgenden Zusammenhang verdeutlichen. Der Datenspeicher pro Kanal besteht aus 8192 Samples. Wenn diese mit 250MHz ausgegeben werden, ergibt das 30,52kHz. D.h, bei allen höheren Frequenzen werden nach und nach Samples übersprungen, bis letztendlich bei 60Mhz nur noch im Mittel 4,1 Samples / Periode aus dem Datenspeicher gelesen und ausgegeben werden. Damit wird auch klar, das damit nur noch ein reines Sinussignal rekonstruiert werden kann. Bei allen kleineren Frequenzen unterhalb 30,52kHz werden verschiedene Samples mehrfach ausgegeben, was eher unkritisch ist und nur bei EXTREM niederfrequenten Signalen (deutlich unter 1Hz) zu Treppenstufen im Ausgangssignal führen kann. Wenn man beispielsweise eine Rampe mit 1mHz mit 10Vp ausgibt, dauert eine Periode 1000s, in der 8192 Samples ausgegeben werden, d.h. nach ca. 122ms wird ein neues Sample mit im Extremfall nur einem Unterschied von 1/8192 (14 Bit DAC incl. Vorzeichen) der Maximalspannung (hier ~1,2mV) ausgegeben. Bei 10MHz, der offiziellen Grenze für die meisten Signalformen, besteht eine Periode des Ausgangssignals nur noch aus 25 Samples, da bleibt nur noch wenig Spielraum für Details in der Signalform.

DC Auflösung und Genauigkeit

Man darf sich nie blind auf die tollen Anzeigen von Meßgeräten verlassen, schon gar nicht in der Preisklasse. Die Spannung am Ausgang ist nicht mal ansatzweise so genau und so gut aufgelöst, wie es in der Anzeige und dem Datenblatt dargestellt ist. Das kann man einfach prüfen. DC Signalform wählen und die Spannung einstellen. Dabei zeigt sich eine durchschnittliche Abweichung zwischen Soll und Ist-Wert von 100mV und mehr. Und das bei 1mV Auflösung in der Anzeige und einem halben Dutzend Potis auf der Platine. Naja. Auch die Auflösung von 1mV ist nicht wirklich da, da reden wir eher über 10mV Schrittweite. Wer also sehr genaue Signalparameter braucht, muss sie nachmessen.

FY6900 DC1.png FY6900 DC2.png

Modulation

Die Parameter Frequenz, Amplitude, Offset und Phase von Kanal 1 können moduliert werden. Als Quelle stehen Kanal 2, ein externes Signal sowie manueller Betrieb über den OK Taster zur Verfügung. Man kann beide Kanäle auf dem Oszi anschauen, sowohl Kanal1, das Trägersignal als auch Kanal2, das Modulationssignal. Sieht gut aus! Den externen Modulationseingang (VCO) habe ich jetzt nicht getestet, er soll 0-2kHz Bandbreite haben.

Eine Sonderform der Modulation ist der Sweep. Modulationssignal ist hier nicht Kanal2, sondern eine lineare oder logarithmische Rampe, welche von der CPU im Frontpanel generiert wird. Es können Anfangs- und Endpunkt des Parameters sowie die Gesamtzeit und Richtung für die Rampe eingestellt werden. Genaugenommen ist das nur eine einfacher einstellbare Modulation. Allerdings fehlt hier was. Der SYNC-OUT Ausgang bringt hier nur ein Rechtecksignal mit 50% Tastverhältnis, welches synchron zum Kanal 1 ist. Das nützt hier aber nix, beim Sweep braucht man ein Synchronsignal für das Modulationssignal, damit man externe Meßgeräte wie z.B. ein Oszi triggern kann.

Frequenzzähler

Als kleinen Zusatz gibt es einen Frequenzzähler von 0,01Hz-100MHz. Der arbeitet sowohl als normaler Frequenzzähler mit 1, 10 oder 100s Torzeit als auch als reziproker Zähler für Periodendauer, Pulsbreite und Tastverhältnis. Damit kann man auch sehr niederfrequente Signale schnell und genau messen. Die Anzeige erfolgt zwar mit 1ns Auflösung, real kann er aber bestenfalls 4ns (250MHz interner Takt) auflösen, wenn nicht noch andere Tricks angewendet werden. Wenn man genau hinschaut, sind die Zahlen immer nur durch 4 teilbar ;-). Die Genauigkeit des Frequenzzählers wird auch hier vom 10 MHz Oszillator mit +/-20ppm bestimmt, was für einen Frequenzzähler nicht sonderlich gut ist. In der Preisklasse muss man das aber wohl akzeptieren oder einen besseren TCXO einbauen, siehe unten. Auch die Wahl der Eingangskopplung ist verwirrend. Der Eingang an der Frontplatte hat laut Handbuch immer AC-Kopplung, das sieht man auch auf der Platine. Bei DC-Kopplung wird der Triggereingang auf der Rückseite benutzt! Ebenso soll laut Handbuch der Eingangspegel an der Frontplatte min. 1,5V betragen. Naja, für ein paar Messungen an ausreichend starken Signalen, vor allem Digitalsignalen, wird es reichen. Man kann den Eingang auch als einfachen Pulszähler verwenden.

Software

Die Software ist relativ einfach und mit Visual Basic selbst gestrickt. Nach dem Start des Programms ist man auf der Oberfläche zur Fernsteuerung. Das erste Problem ist die Auswahl des virtuellen COM-Ports. Die geht nur von 1-16. Auf meinem alten WinXP wurde der Port aber als COM69 eingetragen. Also muss man das im Gerätemanager auf 1-16 ändern. Der erste Bug ist auch schnell entdeckt. Die Frequenzeinstellung geht um Faktor 10 falsch, sprich, bei 10.000 Hz auf der Oberfläche kommen nur 1000 Hz aus dem Generator. Hallo? Wer hat das entwickelt und getestet? Auf dem Frontpanel wird die richtige Frequenz angzeigt, welche auch ausgegeben wird. Als Dezimaltrenner muss man den Punkt verwenden, nicht das Komma. Trotzdem ist der fehlerhafte Faktor 10 drin. Auf die Nachkommastellen der Amplitude reagiert die Fernsteuerung gar nicht. Die verstellbare Einheit der Frequenz ist auch nur Deko. OMG! Die Steuerung der Modulation scheint zu funktionieren, hab ich aber jetzt nicht intensiv getestet. Zumindest reagiert die Anzeige auf die Kommandos der Fernsteuerung ebenso wie auch die der Frontplatte. Es gibt noch 2 andere Fenster (Tabs). Waveform Window ist ein sehr einfacher, graphischer Editor, in dem man den Kurvenverlauf per Maus zeichnen kann. Man kann auch aus den Standardsignalformen Sinus, Rechteck, etc. durch einfache mathematische Operationen +/-/* eine neue Kurve einfach erzeugen. Das Ergebnis kann man dann in einem der 64 Speicher im Gerät ablegen. Das scheint auch recht flott zu funktionieren, der Upload dauert ca. 2s, es gibt einen kleinen Fortschrittsbalken am unteren Fensterrand. Im Test Window kann man per Zahlenkolone eine Signalform beschreiben. Man kann Zeile für Zeile eine Zahl eintragen, nach jeder Eingabe rennt aber eine "Logik" drüber und rechnet die Zahlen in das Ausgabeformat um. NERVIG und sinnlos! Außerdem füllt es den Ausgabepuffer immer gleich periodisch mit den bisher eingebenen Daten. Nervig^2 und LANGSAM! Was aber funktioniert ist, wenn man den Haken unten in der Mitte bei "Auto resize data" entfernt und die Daten in einem exteren Programm wie Excel etc. als Integer im Bereich +/-8191 genertiert und dann mittels CTRL+C CTRL+V ins Fenster kopiert. Dann ein Druck auf "Send data" und die Daten sind gespeichert. Hallelulja! Allgemein muss man sagen, daß die Doku als auch die Texte in der Software schon in recht holprigem Englisch geschrieben sind, wie man es von vielen Texten zu chinesischen Produkten kennt, erst recht von den "preiswerten". Naja, ergibt hin und wieder einen gewissen Unterhaltungsfaktor. Es gibt ein Menu mit Load/Save, dort kann man u.a. .csv Dateien laden. Nach mehreren Versuchen, diverse kleine und große .csv Dateien zu laden, welche immer mit einer Visual Basic Fehlermeldung und dem Programmabsturz endeten, hab ich es aufgegen. Mal sehen was der Hersteller dazu sagt.

Probleme

Wie schon in einer recht alten Diskussion auf eevblog festgestellt wurde, gab es ein paar Probleme bzw. Mängel am Vorgänger FY6600. Wurden diese im aktuellen Nachfolger, der laut Spezifikation sehr ähnlich ist, abgestellt?

Leckstrom vom Netzteil

Das Problem wurde behoben. Der Generator hat einen Kaltgeräteanschluss mit Schutzleiter, auf dem auch die Masse liegt. Die Ein- und Ausgänge sind also nicht potentialfrei. Das ist OK. Was weniger OK ist, ist die praktische Umsetzung. Ein schwächliches Kabel wurde an den PE-Kontakt angelötet. Sowas bricht gern mal ab, vor allem wenn da kein weiterer Knickschutz dran ist. Naja. Solange man es nicht anfasst und dauerhaften Vibrationen aussetzt, hält es.

Ungenaue Zeitbasis

Die Zeitbais des Geräts wird von einem 10 MHz Quarzoszillator abgeleitet, der laut Spezifikation aber nur eine Genauigkeit von +/-20ppm hat. Für ein Gerät dieser Preisklasse ist das voll OK, nach ca. 30min Warmlaufzeit ist die Frequenz auch relativ stabil und bei halbwegs konstanter Umgebungstemperatur auch reproduzierbar. In der Diskussion auf eevblog wurde mal gemessen, da lag die Drift beim Warmlaufen bei ca. 10ppm. Im alten Design FY6600 war ein 50 MHz Oszillator drin, jetzt im FY6900 ein 10 MHz Typ. Das erleichtert den Einbau eines OCXO mit 10 MHz Ausgang bzw. eines 10MHz Referenzeingangs erheblich, die x5 PLL wird nicht mehr benötigt, die steckt sowieso im FPGA. Wer also mehr Genauigkeit haben will, kann den XO gegen einen TXCO oder gar OCXO tauschen, siehe die Links am Ende des Artikels.

Instabile Firmware

Die älteren Firmwareversionen 3.0 und 3.1 hatten diverse Probleme, u.a. mit Abstürzen nach langer Laufzeit, teilweise mit dem Löschen von Signalformen und Kalibrierparametern. Die aktuelle Firmware 1.3.1 der neuen Serie FY6900 macht einen stabilen Eindruck, 3 Jahre "Reifung" haben eine postive Wirkung gezeigt.

Etwas schwache Endstufe und Netzteil

Hier hat sich ein wenig getan. Als Ausgangsverstärker kommen immer noch die THS3002I (I wie industrial grade) von TI zum Einsatz, das sind sauschnelle Current Feedback Amplifier mit 420 MHz Bandbreite, 100mA Ausgangsstrom und 2 Verstärkern im IC! Im alten FY6600 war es ein nur IC, wobei jeder Verstärker einen Kanal bediente. Im neuen FY6900 wird jetzt ein IC pro Kanal verwendet. Die beiden Verstärker sind über entsprechende Widerstände parallel geschaltet. Trotzdem reicht es nicht ganz. Bei 50 Ohm Last schafft man nur 17Vpp Sinus ohne sichtbare Verzerrungen, selbst bei sehr niedrigen Frequenzen von 1kHz, was real 8,5Vpp am der Last entspricht. Naja, die Stromversorgung ist etwas knapp, +13,5 und -13,9V sind bei 12V Ausgangsspannung nicht üppig. Viele Leute in der alten Diskussion haben ein neues Netzteil mit sauberen +/-15V eingebaut. Eine deutliche Verbessung brachten aber erst neue Verstärker, auch wenn die knapp 10 Euro/Stück kosten (bei irgendwelchen Chinahändlern angeblich nur 2,50). Kann man machen, wenn man denn unbedingt die volle Spannung an 50 Ohm braucht. Die 5V stehen stabil bei 4,9V, was auch kein Wunder ist, denn die werden vom Netzteil direkt per TL431 geregelt. Die +/-12V sind nur über den Trafo verkoppelt, was aber trotzdem relativ gut funktioniert (Sperrwandler, der schiebt die meiste Energie in den Ausgang, der relativ am höchsten belastet ist).

Unter der Haube

Das Gerät lässt sich leicht öffnen, einfach die Front- und Rückplatte vorsichtig an den Seiten und oben/unten ausrasten und abziehen. Eine lange Schraube unter dem Aufkleber der Unterseite verbindet die beiden Gehäusehälften oben und unten. Danach liegt alles frei. Das Innenleben ist übersichtlich und überraschend aufgeräumt. Ein kleines Low Cost Netzteil mit +/-12V (real +/-13,5V) und +5V speist die Hauptplatine. Dort ist ein FPGA das Zentrum des Geschehens, flankiert von 2 DACs und diversen anderen ICs. Für die Endstufentreiber gibt es einen recht großen Kühlkörper, der aber selbst im Dauerbetrieb nur mäßig warm wird, geschätzt 40°C. Das FPGA bleibt auch entspannt lauwarm. Hinter der Frontplatte werkelt ein STM32 F103C8T6. Ein paar Bilder gibt es hier und hier.

Fazit

Der Signalgenerator hat ein sehr gutes Preis/Leistungsverhältnis und ist auch überaus leistungsstark. Die Fernsteuersoftware ist sehr schlecht, aber wenigstends funktioniert der Upload eigener Signalformen, das ist das Wichtigste. Praktisch wird man die Fernsteuerung nur wenig nutzen. Und wenn, dann ggf. mit einem eigenen Programm, die Kommandos sind offengelegt. Wieviele Fehler in dieser Doku stecken weiß ich nicht. Trotz der diversen Schwächen kann ich den Signalgenerator absolut empfehlen.

Siehe auch

  • Forumsbeitrag: Programm zum Hochladen von Signalformen auf den FY6900

Weblinks

  • Homepage des Herstellers Feeltech
  • Video auf Youtube zum Abgleich von Offset und Amplitude

Die nachfolgende Diskussion dreht sich im Wesentlichen um das Vorgängermodell FY6600 und ist 3 Jahre alt! Die wesentlichen Probleme sind im FY6900 behoben! Ich hab die ziemlich lange Diskussion mal durchgelesen und wichtige Beiträge per Link extrahiert (89 Seiten a 25 Beiträge = 2225 Beiträge! OK, nach 50 Seiten hab ich aufgehört)

  • XO durch TCXO ersetzt, 50 MHz
  • Weitere Modifikatioen, Netzteil durch Linearnetzteil mit +/-15V ersetzt, Ausgangsverstärker ersetzt, volle 20Vpp mit weniger Verzerrungen
  • Verstärker ersetzen
  • Alternatives Netzteil
  • Nochmal Netzteil geändert, keinerlei Verzerrungen
  • Selbstbau Linearnetzteil
  • Firmwarefehlfunktion
  • Verstärkung kalibrieren
  • Oszillator kalibrieren
  • Flash vom Mainbaord auslesen
  • Der Hersteller liest mit und geht auf Verbesserungen ein!
  • Zusammenfassung von Modifikationen