29.07.2015, 11:58
Hi,
ich habe folgendes Problem bei der Ausgabe eines Signals über DAQ:
es soll ein Sinus generiert werden, welcher über ein cdaq-9174 und einem 9263 Modul ausgegeben wird. Der Sinus soll in seinen Parametern (Amplitude, Phase, Frequenz) während der Ausführung veränderbar sein und kontinuierlich ausgegeben werden.
Mit dem angehangenen Programm schaffe ich es aber nicht, dass er ohne Unterbrechung ausgegeben wird. Wenn ich die Sample-Raten von DAQ Write und der Sinuserzeugung gleich setze, bekomme ich pro Schleifendurchlauf 2 mal ein Knackgeräusch auf dem angeschlossenen Körperschallwandler. Je größer ich die Sample-Zahl des Sinus mache, desto länger wird das Signal, allerdings läuft die Schleife dadurch natürlich noch langsamer.
Da komm ich auch schon zu meinem zweiten Problem, der Geschwindigkeit. Ich bekomme gefühlt pro Sekunde einen Schleifendurchlauf und dadurch wird das ganze Programm sehr träge. Zum testen wurde die Sinuserzeugung aus der Schleife genommen (ist dadurch nicht mehr anpassbar im Betrieb), es ruckelt allerdings trotzdem. Daher scheint die Unterbrechung durch den Write zu entstehen.
Habe ich das ganze nun grundlegend falsch verstanden mit der Platzierung der Blöcke in der Schleife? Ich möchte das Signal verändern können um mittels Amplituden- und Frequenzanpassung einen vorhandenen Sinus auszulöschen ("manuelles" Active Noise Canceling, da ich es über einen LMS Baustein ebenfalls nicht schaffe aktuell), daher sollte der Sinus unterbrechungsfrei sein und seine Parameter schnell anzupassen sein (also nicht jedes mal mehrere Sekunden warten, bis eine Eingabe auch umgesetzt wird)
Gruß, Chris
ich habe folgendes Problem bei der Ausgabe eines Signals über DAQ:
es soll ein Sinus generiert werden, welcher über ein cdaq-9174 und einem 9263 Modul ausgegeben wird. Der Sinus soll in seinen Parametern (Amplitude, Phase, Frequenz) während der Ausführung veränderbar sein und kontinuierlich ausgegeben werden.
Mit dem angehangenen Programm schaffe ich es aber nicht, dass er ohne Unterbrechung ausgegeben wird. Wenn ich die Sample-Raten von DAQ Write und der Sinuserzeugung gleich setze, bekomme ich pro Schleifendurchlauf 2 mal ein Knackgeräusch auf dem angeschlossenen Körperschallwandler. Je größer ich die Sample-Zahl des Sinus mache, desto länger wird das Signal, allerdings läuft die Schleife dadurch natürlich noch langsamer.
Da komm ich auch schon zu meinem zweiten Problem, der Geschwindigkeit. Ich bekomme gefühlt pro Sekunde einen Schleifendurchlauf und dadurch wird das ganze Programm sehr träge. Zum testen wurde die Sinuserzeugung aus der Schleife genommen (ist dadurch nicht mehr anpassbar im Betrieb), es ruckelt allerdings trotzdem. Daher scheint die Unterbrechung durch den Write zu entstehen.
Habe ich das ganze nun grundlegend falsch verstanden mit der Platzierung der Blöcke in der Schleife? Ich möchte das Signal verändern können um mittels Amplituden- und Frequenzanpassung einen vorhandenen Sinus auszulöschen ("manuelles" Active Noise Canceling, da ich es über einen LMS Baustein ebenfalls nicht schaffe aktuell), daher sollte der Sinus unterbrechungsfrei sein und seine Parameter schnell anzupassen sein (also nicht jedes mal mehrere Sekunden warten, bis eine Eingabe auch umgesetzt wird)
Gruß, Chris