Strona 1 z 1

cDAQ odczyt wszystkich danych

: 01 paź 2012 09:35
autor: kornikb
Witam forumowiczów, chciałbym w prosty sposób odbierać cały sygnał, który podany jest do karty z fs 100kS/s i równolegle go przetwarzać. Próbowałem z konstrukcją producent - konsumer odebrać po 1s danych, tj. 100000 próbek pakować je do kolejki i w drugiej pętli na początek tylko wyświetlić. Niestety na pierwszy rzut oka widzę, że pętla odświeża mi się dłużej niż sekundę i tracę część danych. Umieściłem pomiar czasu w pętli producenta, żeby zmierzyć czas odczytu danych i średnio trwa mi to ok. 1,4 s. Pewnie robię jakiś błąd gruby, poproszę o sugestie i pomoc. Z góry dziękuję.

cDAQ odczyt wszystkich danych

: 01 paź 2012 11:47
autor: conioo
Pokaż jak masz skonfigurowany Task.
Możesz też pomysleć nad użyciem Property node DAQmx Read -> AvailSamplePerChan

Re: cDAQ odczyt wszystkich danych

: 01 paź 2012 13:51
autor: kornikb
O jakie konkretnie ustawienia pytasz, domyślne takie jak w DAQ assist z tym, że pobieram 100k próbek z f=100kHz

Re: cDAQ odczyt wszystkich danych

: 01 paź 2012 14:05
autor: conioo
Nie widzę w VI, który załączyłeś, gdzie ustawiasz częstotliwość próbkowania dla AI. Stwórz najpierw kanał, skonfiguruj go poprawnie, a potem dopiero czytaj z niego napięcie. Polecam użyć bloczka DAQmx Timing oraz zapoznanie się z Examplami.

Re: cDAQ odczyt wszystkich danych

: 01 paź 2012 15:23
autor: kornikb
Konfiguruję kanał tak jak w załączniku

cDAQ odczyt wszystkich danych

: 02 paź 2012 07:18
autor: conioo
I teraz widać, co ustawiłeś źle. Masz aquisition mode ustawione na N Samples. Wtedy pobiera Ci 100k próbek i resetuje akwizycje. Zmień to na Continuous Samples to będzie pobierał w sposób ciągły.