Hallo,
ich möchte gerne über eine DAQ-Karte (USB-6251) einen Sinus (2 bis 3 kHz) mit einem Gauß-Fenster ausgeben. Dazu habe ich das angehängte VI gebaut.
An den Ausgang der DAQ-Karte habe ich zum Überprüfen ein Oszilloskop angeschlossen. Es kommt ein Sinus mit Gauß-Fenster raus, allerdings stimmt die Frequenz nicht. Wenn ich die Frequenz im VI ändere, ändert sie sich auf dem Oszi nur circa alle 100 Hz.
Was muss ich machen, damit die Frequenz am analogen Ausgang der entspricht, die ich im VI eingebe?
Gruß
Aya
Hallo Aya,
wie schnell änderst du denn die Frequenz? Etwa schneller als dein VI neu startet? Das wartet nämlich immer erst, bis die aktuelle Waveform komplett ausgegeben wurde...
Außerdem:
Es ist keine gute Idee, ein VI über den RunContinuous-Button laufen zu lassen. Der ist nur zum Debugging gedacht!
Das von Dir festgestellte Verhalten ist leider normal. Die Karten verwenden einen Masterclock, meist sind es 20 MHz (In Spezifikation nachschauen). Die Samplerate wird durch ganzzahlige Division aus dem Masterclock abgeleitet. Je größer die Samplerate, desto grobmaschiger das Raster möglicher Frequenzen. Die wirklich verwendete Frequenz kann man mittels Eigenschaftsknoten auslesen.
Ich mache es meist so, dass ich von vornherein nur solche Frequenzen zulasse, die in das Raster passen. Dann hat man diese Diskrepanz nicht.
Danke für den Hinweis mit der Masterclock. Durch die Berechnung einer besser zur Frequenz passenden Anzahl von samples pro Periode konnte ich das Frequenzraster auf weniger als 10 Hz verbessern. (SubVI im Anhang)
Meine DAQ-Karte hat eine 80MHz-Basis. Kann man diese zur analogen Ausgabe nutzen? Falls ja, wie kann ich auf diese Clock umstellen?
Kannsts ja mal versuchen - ob es dann mit deiner Karte auch funktioniert, ist eine andere Frage:
[
attachment=40880]
Ich habe mein VI entsprechend verändert.
Solange ich "OnboardClock" an der Quelle anschließe funktioniert es ohne Probleme. Wähle ich allerdings "80MHzTimebase" aus, wird nichts ausgegeben. Eine Fehlermeldung gibt es aber auch nicht.
Außerdem wird das VI nicht mehr beendet. Es bleibt in der "Task done?"-Schleife hängen.
Komisch - Du erzeugst die Spannungen mit "dev1", also mit Messkarte 1, und benutzt als Sampletaktgeber die 80MHz von "dev2", also Messkarte 2. Warum das? Hast Du überhaupt 2 Karten im PC, und wenn ja, sind die über Kabel miteinander verbunden. damit es evtl. funktionieren könnte?
Ich benutze für alles Dev2. Ich hatte nur vergessen den Standartwert auf Dev2 zu setzen. Entschuldigung für die Verwirrung.