Wysyłanie wielu waveformów na kartę analogową + bufor

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
Boo
Posty: 35
Rejestracja: 26 cze 2010 14:34
Wersja środowiska: LabVIEW 7.1
Lokalizacja: Kraków

Wysyłanie wielu waveformów na kartę analogową + bufor

Post autor: Boo »

Witam,

Posiadam LV2010 i dwie karty z wyjściami analogowymi 6722, na które potrzebuję wysłać sygnały zmienne w postaci waveformów. Na jedną kartę chcę wysłać 8 sygnałów, na drugą 5. Program pracuje pod windowsem, więc wysyłanie próbka po próbce nie wchodzi w rachubę, bo częstotliwość tego sygnału to 10kHz i musi być dokładne odtworzona, chcę więc wysłać dane pakietami. Sygnały te, to kilka okresów (0,1s - więc jest to 1000 sampli) jakiegoś przebiegu, na przykład sinusa, które chcę wysyłać w pętli do kart. Problem w tym, że karta ta ma wielkość bufora równy ~2050 sampli. Ja chcąc wysłać 13 przebiegów, potrzebuję więc jakieś 13000 sampli w buforze. Kiedy zapętlam wysyłanie danych, program się zawiesza, czasem wyrzuca błędy o przepełnieniu bufora, czasem w ogóle nic nie wyświetla tylko zamiera i nie pozwala się wyłączyć. Wysyłanie zrobiłem na bloczku express (daq assistant), bo tylko jego udało mi się skonfigurować tak, by prawidłowo wysyłał próbki w pakiecie, jednak chodzi o to przepełnienie bufora. Jak rozwiązać ten problem? Może należy jakoś podzielić wysyłanie tych pakietów, ale w takim razie jak to zrobić? Sprawa jest dosyć pilna, więc będę bardzo wdzięczny za pomoc.
Awatar użytkownika
skoziate
Administrator
Posty: 245
Rejestracja: 06 mar 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Warszawa
Kontakt:

Wysyłanie wielu waveformów na kartę analogową + bufor

Post autor: skoziate »

Witaj,

Bufor, o którym wspominasz, to FIFO na pokładzie karty. Natomiast przepełnienie następuje na buforze w pamiąci RAM, który jest automatycznie tworzony przez sterownik DAQmx.
Wrzuć swój program i kod błędu, który występuje, wtedy będę mógł pomóc.
Pozdrawiam,
Sebastian
ODPOWIEDZ