Problem z uzyskaniem widma

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
Awatar użytkownika
Klejur
Posty: 19
Rejestracja: 23 cze 2005 00:00
Lokalizacja: Poznan

Problem z uzyskaniem widma

Post autor: Klejur »

Hej
Zainstalowałem kartę pomiarową Daq na PCI (przykład na zdjęciu i w .vi był dodany na CD). Problem w tym, że nie wiem dlaczego nie mogę uzyskać widma z sygnału wewnątrz pętli While ??? W połączeniach nie ma błędu a na wykresie Waveform Graph nic się nie pojawia.
Mam jeszcze jedno pytanie:
Czy na jednym wykresie można uzyskać kilka przebiegów widmowych (np. z 3 wejść analogowych). ???
Pozdrawiam
Maciej
\"Tylko ten nie popełnia błędów, kto nic nie robi.\"\r\nW.I.Lenin
Awatar użytkownika
Nowszy
Posty: 504
Rejestracja: 30 maja 2008 08:33
Wersja środowiska: LabVIEW 2011
Lokalizacja: Katowice
Kontakt:

Re: Problem z uzyskaniem widma

Post autor: Nowszy »

Kiedyś miałem wątpliwą przyjemność pracować pod LV z kartami IOTecha (bo tak się chyba ta firma nazywa?).

Nie pamiętam dokładnie, a nie mam tu takiej karty, ale chyba wystarczy na panelu czołowym zaznaczyć kilka kanałów jednocześnie (klikając z Ctrl-em na Channel 0,1,2,..) - wtedy będzie brał pomiary z wybranych kanałów.
Pozdrawiam, Maciek Antonik
Edu4Industry
Awatar użytkownika
Klejur
Posty: 19
Rejestracja: 23 cze 2005 00:00
Lokalizacja: Poznan

Problem z uzyskaniem widma

Post autor: Klejur »

Witam
Tak jest to karta IOTech'a i jest tak jak piszesz. Trzeba zaznaczyć za pomocą SHIFT lub Ctrl kilka kanałów wtedy akwizycja będzie się odbywała np. z 1, 2 i 3.
Tylko, że mi chodzi o uzyskanie widma z sygnału.
Znalazłem przykład w help'ie NI i dzisiaj będę to gryzł dalej :) . Przykład jest na : http://decibel.ni.com/content/docs/DOC-4526
A pamiętasz może jak zrobić aby ustawić kanały np. 1, 4 i 5 ale tak aby po zamknięciu programu i ponownym jego odpaleniu te kanały były dalej zaznaczone? Prawdopodobnie będzie trzeba zmienić Cluster: DaqBoard Channels i zastąpić go własnym. Ale to później :)
Pozdrawiam
Maciej
\"Tylko ten nie popełnia błędów, kto nic nie robi.\"\r\nW.I.Lenin
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Problem z uzyskaniem widma

Post autor: jogurt_owocowy »

na wykresie Waveform Graph nic się nie pojawia
A co pojawia się w kontrolce Waveform Chart?
Awatar użytkownika
Nowszy
Posty: 504
Rejestracja: 30 maja 2008 08:33
Wersja środowiska: LabVIEW 2011
Lokalizacja: Katowice
Kontakt:

Re: Problem z uzyskaniem widma

Post autor: Nowszy »

Znów nie mam pod ręką LV, więc z pamięci mówię - ustaw kanały, które mają być domyślnie włączone a później prawym przyciskiem myszy na CAŁY klaster i Data Operations >> Make current value defeault.

Co do widma, to może jutro będę mógł pomóc z LV przed nosem :D
Pozdrawiam, Maciek Antonik
Edu4Industry
Awatar użytkownika
Nowszy
Posty: 504
Rejestracja: 30 maja 2008 08:33
Wersja środowiska: LabVIEW 2011
Lokalizacja: Katowice
Kontakt:

Re: Problem z uzyskaniem widma

Post autor: Nowszy »

Wracając do twoich problemów z widmem. Problem może leżeć w tym, że nie masz podpiętych wyjść indeksacyjnych do Index Array. Tak więc w tej chwili nie ważne ile sygnałów będziesz mierzył i tak zawsze bierzesz tylko pierwszy rząd tablicy.
Z drugiej strony, VI "FFT Power Spectrum" działa dla danych wejściowych typu "Waveform", a ty mu podajesz zwykłą tablicę próbek. LV próbuje się do nich 'dostosować' (na co wskazuje czerwona kropka na wejściuPower Spectrum), ale najwyraźniej mu nie wychodzi
Pozdrawiam, Maciek Antonik
Edu4Industry
Awatar użytkownika
Klejur
Posty: 19
Rejestracja: 23 cze 2005 00:00
Lokalizacja: Poznan

Re: Problem z uzyskaniem widma

Post autor: Klejur »

Witam i dziękuję za odpowiedzi.
Postanowiłem inaczej podejść do tematu.
W załączonym pliku jest fragment diagramu.
Po zaznaczeniu próbkowania z 2 kanałów na Waveform Charts pojawia się sygnał z 2 kanałów a Array pokazuje 100 i 2 (ilość próbek 100, 2 kanały) i do tego miejsca wszystko jest jasne.
Następnie za pomocą Array Subset chcę wyodrębnić tylko 1 kanał lub kanał 2. Na panelu ustawiłem Numeric tak aby wybierać numer kolumny (numer kanału). Jak wybiorę "0" to Waveform Charts 2 pokazuje wykres z obu kanałów czyli to samo co Waveform Charts natomiast po wybraniu "1" pokazuje tylko 2 kanał (co chaciałem uzyskać).
Tylko dlaczego po ustawieniu "0" mam oba kanały?? i jak przełączać się między kanałami tak aby na Waveform Charts 2 pojawiał się sygnał z wybranego kanału ???
Do widma z poszczególnego kanału zabiorę się później.
Dziękuję "Nowszy" za Data Operations >> Make current value defeault - DZIAŁA.
Pozdrawiam
Maciej
\"Tylko ten nie popełnia błędów, kto nic nie robi.\"\r\nW.I.Lenin
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Problem z uzyskaniem widma

Post autor: jogurt_owocowy »

Na wejścia Array Subset podajesz początkowy indeks od którego chcesz wyciąć kawałek tablicy (w Twoim przypadku numer kolumny w kontrolce Numeric - to jest ok) a na wejście length poniżej - długość tego kawałka. W Twoim przypadku, to wejście jest niepodłączone i w takim wypadku Array Subset działa tak, że wycina kawałek do końca tablicy (wartość domyślna: rest). Dlatego dla Numeric=0 masz kolumny od 0 do 1 (bo są dwie), a dla Numeric=1 - od 1 do 1.
Rozwiązanie jest proste: na wejściu length (poniżej kontrolki Numeric) kliknij prawym Create -> Constant i ustaw wartość 1 (jedna kolumna).
Pozdrawiam
Awatar użytkownika
Klejur
Posty: 19
Rejestracja: 23 cze 2005 00:00
Lokalizacja: Poznan

Problem z uzyskaniem widma

Post autor: Klejur »

Witam
Teraz rozumiem. Cały czas działałem w Matlabie i teraz próbuję się przerzucić na LV i pewnie dlatego niektórych funkcji jeszcze nie rozumiem do końca.
Wielkie dzięki.
Teraz idę dalej do widma. :)
Pozdrawiam
Maciej
\"Tylko ten nie popełnia błędów, kto nic nie robi.\"\r\nW.I.Lenin
Awatar użytkownika
Klejur
Posty: 19
Rejestracja: 23 cze 2005 00:00
Lokalizacja: Poznan

Re: Problem z uzyskaniem widma

Post autor: Klejur »

Jeszcze ostatnia rzecz i koniec :)
Aby stworzyć teraz widmo musiałem zrobić to przez Index Array wpisując w Index(col) wartość 0. Inaczej blok Power FFT nie chciał się łączyć (Error: próba podłączenia 2D do waveform).
Pytanie. Czy dobrze zrobiłem w ten sposób podłączając Power FFT ???
Widmo wydaje się być OK.
Pozdrawiam
Maciej
\"Tylko ten nie popełnia błędów, kto nic nie robi.\"\r\nW.I.Lenin
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Problem z uzyskaniem widma

Post autor: jogurt_owocowy »

Aby stworzyć teraz widmo musiałem zrobić to przez Index Array wpisując w Index(col) wartość 0
I dobrze. I teraz w kontrolce Waveform Graph widzisz widmo sygnału zawartego w zerowej kolumnie.
Jeśli chcesz oglądać widmo sygnału z kolumny numer 1 podaj na wejście index(col) wartość 1, a jeśli wszystkich kanałów - oblicz ich widma po kolei w pętli for.
Awatar użytkownika
Klejur
Posty: 19
Rejestracja: 23 cze 2005 00:00
Lokalizacja: Poznan

Problem z uzyskaniem widma

Post autor: Klejur »

OK. Dziękuję bardzo i pozdrawiam.
\"Tylko ten nie popełnia błędów, kto nic nie robi.\"\r\nW.I.Lenin
ODPOWIEDZ