Witam
Problem, na jaki napotkałem (pewnie banalny, ale dopiero zaczynam zabawę z LV) jest dwuczęściowy.
Sprzęt: LV 8, NI DAQPad-6016 (for USB), system WinXP
Cel: Chcę napisać aplikację, która pozwoli mi zasilać przetwornik napięciem 10V oraz z 2 kanałów zapisywać do pliku i oglądać na bieżąco wskazania przetwornika.
Z zasilaniem nie ma kłopotu. Do zbierania próbek użyłem ikonki jak w examplach. Ponieważ przy użyciu tej ikony mogę pobrać jednorazowo tylko określoną ilość, a nie ciągły sygnał umieściłem to w pętli. Generalnie działa, tylko że:
Problem 1:
Pierwsze dane zapisane w pliku to dane od ok 6-10 sek po włączeniu (ale to jest do przeżycia). Natomiast zasadniczy problem to taki, że syganł jaki otrzymuję na wykresie a następnie w pliku jest "poszarpany". Pojawiają się paczki sygnału a nastepnie (mniej więcej tej samej długości) przerwy w sygnale itd. Jak się tego pozbyc? Tak żeby sygnał był ciągły (w sensie bez tych odstepów)
Problem 2:
Do zapisu do pliku uzywam Write Measurement File. W zapisanym pliku w pierwszej kolumnie zapisuje się czas. Na jednym komputerze jest tak jak bym chciał, czyli pokazuje w sekundach i ich ułamkach licząc od momentu włączenia zapisu. Natomiast na drugim kompoterze, ten sam program z tym samym przetwornikiem w pierwszej kolumnie zapisuje mi liczbę w postaci np: 2.1418E+9 (i to taką samą wartość w całej kolumnie czasu). Podejrzewam, że to kwestia jakis ustawień. Tylko jakich?
Z góry dzięki za pomoc.
Witek
Zapis danych do pliku
Re: Zapis danych do pliku
problem 1.
moze to wynikac z budawy drivera.
nie ogladalem go bo czasu brak ale przewaznie driver to:
1-otwarcie taska(dostep do visa tzn. configuracja portu, otwarcie, visa clear itp..)
2- knfiguracja urzadzenia (wybranie kanalu, zakresu, czasu usredniania, AC/DC i szereg innych reczy w zaleznasci od sprzeu)
3- triger ewentualnie wyslaniek "read" (sam pomiar/odczyt danych)
Jesli takiecos wrzuciles do petli to byc moze z tego wynika opuznienie 6 sekundowe i za kazdym przejsciem petli opuznienie w akwizycji danych.
Mozesz spróbowac przerobic driver tak zeby punkt 1 i 2 wyzucic poza petle (taska otworzyc raz i raz skonfiurawac sprzet) a w samej petli tylko punkt 3 (tylko odczyt danych), pamietajac o zamknieciu visa po wyjsciu z petli.
Problem2.
nie wiem jak pobierasz czas czy za pomoca bloczkow Get Date/Time. Bloczki te zapewniaj jeden format czasu i nie powinien on sie zmieniac w zaleznosci od platformy.
do konwersja typów danych moze byc tez wymagane takie samo "system decimal" platformy. Byc moze na 1 PC masz ustawiony przecine a na 2 PC kropke
moze to wynikac z budawy drivera.
nie ogladalem go bo czasu brak ale przewaznie driver to:
1-otwarcie taska(dostep do visa tzn. configuracja portu, otwarcie, visa clear itp..)
2- knfiguracja urzadzenia (wybranie kanalu, zakresu, czasu usredniania, AC/DC i szereg innych reczy w zaleznasci od sprzeu)
3- triger ewentualnie wyslaniek "read" (sam pomiar/odczyt danych)
Jesli takiecos wrzuciles do petli to byc moze z tego wynika opuznienie 6 sekundowe i za kazdym przejsciem petli opuznienie w akwizycji danych.
Mozesz spróbowac przerobic driver tak zeby punkt 1 i 2 wyzucic poza petle (taska otworzyc raz i raz skonfiurawac sprzet) a w samej petli tylko punkt 3 (tylko odczyt danych), pamietajac o zamknieciu visa po wyjsciu z petli.
Problem2.
nie wiem jak pobierasz czas czy za pomoca bloczkow Get Date/Time. Bloczki te zapewniaj jeden format czasu i nie powinien on sie zmieniac w zaleznosci od platformy.
do konwersja typów danych moze byc tez wymagane takie samo "system decimal" platformy. Byc moze na 1 PC masz ustawiony przecine a na 2 PC kropke