cDAQ odczyt wszystkich danych

Tematy związane z LabVIEW pracującym w czasie rzeczywistym.
kornikb
Posty: 10
Rejestracja: 18 sty 2011 13:24
Wersja środowiska: LabVIEW 2010

cDAQ odczyt wszystkich danych

Post autor: kornikb » 01 paź 2012 09:35

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ę.
Załączniki
ProducerConsumerData 2.vi
(25.03 KiB) Pobrany 214 razy

Awatar użytkownika
conioo
Posty: 53
Rejestracja: 22 mar 2006 00:00
Wersja środowiska: LabVIEW 2014
Lokalizacja: Kraków

cDAQ odczyt wszystkich danych

Post autor: conioo » 01 paź 2012 11:47

Pokaż jak masz skonfigurowany Task.
Możesz też pomysleć nad użyciem Property node DAQmx Read -> AvailSamplePerChan

kornikb
Posty: 10
Rejestracja: 18 sty 2011 13:24
Wersja środowiska: LabVIEW 2010

Re: cDAQ odczyt wszystkich danych

Post autor: kornikb » 01 paź 2012 13:51

O jakie konkretnie ustawienia pytasz, domyślne takie jak w DAQ assist z tym, że pobieram 100k próbek z f=100kHz

Awatar użytkownika
conioo
Posty: 53
Rejestracja: 22 mar 2006 00:00
Wersja środowiska: LabVIEW 2014
Lokalizacja: Kraków

Re: cDAQ odczyt wszystkich danych

Post autor: conioo » 01 paź 2012 14:05

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.

kornikb
Posty: 10
Rejestracja: 18 sty 2011 13:24
Wersja środowiska: LabVIEW 2010

Re: cDAQ odczyt wszystkich danych

Post autor: kornikb » 01 paź 2012 15:23

Konfiguruję kanał tak jak w załączniku
Załączniki
cDAQ.PNG

Awatar użytkownika
conioo
Posty: 53
Rejestracja: 22 mar 2006 00:00
Wersja środowiska: LabVIEW 2014
Lokalizacja: Kraków

cDAQ odczyt wszystkich danych

Post autor: conioo » 02 paź 2012 07:18

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.

ODPOWIEDZ