Strona 1 z 1

Błąd z DAQ Assistant podczas zatrzymania programu

: 30 sty 2016 16:16
autor: wojciOne
Witam,
proszę o pomoc w rozwiązaniu następującego problemu. Podczas zatrzymania programu pracującego z NI6008 otrzymuję komunikat jak na zrzucie poniżej:

error_lab.jpg
Znalazłem posty z radami zmian parametrów karty. Niestety nie pomaga. W jaki sposób mam zmienić parametry bufora?
W tej chwili mam ustawione:
Continous read, sample to read: 1k, Rate: 5 k
Karta obsługuje dwa kanały: AI0 oraz AI2
LabView 2013 (32 bit)

Dziękuje

Błąd z DAQ Assistant podczas zatrzymania programu

: 01 lut 2016 14:49
autor: Nowszy
Cześć

Twój problem polega na tym, że zawartość pętli (PID i cała reszta) wykonuje się dłużej niż 200ms, a co tyle musisz odczytywać dane, żeby nie przepełnił się bufor. Możłiwe, że pętla symulacyjna wykonuje się wielokrotne (kliknij 2x na terminal po lewej i sprawdź ustawienia). Ten problem rozwiążesz więc dzieląc całą aplikację na dwie pętle - zobacz architekturę "producent-konsument".

To powyższe to rozwiązanie tego problemu. Natomiast ja zastanowiłbym się nad logiką całego VIa. Po pierwsze - liczysz PIDa z 1000 próbek i to nie podając jego ustawień - co chcesz tym osiągnąć? Po drugie - zrezygnowałbym z całej pętli While i całość zmieścił w 1 pętli symulacyjnej.

Re: Błąd z DAQ Assistant podczas zatrzymania programu

: 08 lut 2016 23:30
autor: wojciOne
Dzięki Nowszy za zainteresowanie. Rozdzielenie pętli pomogło. Dopiero uczę się oprogramowania. Zamierzam sterować temp. grzałek oporowych z wykorzystanie czujników PT100 i zewnętrznego układu generującego sygnał PWM o wypełnieniu proporcjonalnym do podanego na jego wejściu napięcia. Czytałem, że na samej karcie NI 6008 ciężko zrealizować PWM, chociaż dla sterowania temp. takie ograniczone symulowane działanie mogłoby wystarczyć. Stąd użycie PIDa. Czy w takim razie najlepszym krokiem dla zrealizowania powyższego sterowania byłoby wykorzystać pętlę symulacyjną? O architekturze producent-konsument w LabView poczytam w wolnej chwili. Temat wydaje się dość ciekawy.