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 »

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 535 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 »

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 »

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 »

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 »

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 »

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