NI 9263 oraz 9205 - problem

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
siema24
Posty: 23
Rejestracja: 14 mar 2012 10:20
Wersja środowiska: LabVIEW 2011

NI 9263 oraz 9205 - problem

Post autor: siema24 »

Witam, mam problem z przetwornikami 9263 i 9205. Znajdują się one w kasetce tak jak na zdjęciu poniżej. Chciałbym z poziomu LabView ustawić 9263 (przetwornik D/A) do nadawania fizycznego, analogowego sygnału sinusa (przykładowo f=1kHz, amplituda=5V), który kabelkami ląduje w przetworniku A/D 9205, stamtąd czytane są próbki po czym wyświetlane są na wykresie w LabView. Próbowałem za pomocą DAQ Assistant jednak bez rezultatu, najwyraźniej robię coś źle, czy ktoś może mi pomóc? Zakładamy, że połączenia kablami są zrobione poprawnie, z góry dziękuję :)
Załączniki
22.jpg
Awatar użytkownika
trooper
Posty: 22
Rejestracja: 22 paź 2012 17:44
Wersja środowiska: LabVIEW 2012
Kontakt:

Re: NI 9263 oraz 9205 - problem

Post autor: trooper »

Witam,

Przykład genracji i akwizycji widoczny jest poniżej - kod załączony jest jako snippet - zapisz obraz i przeciągnij do diagramu w celu edycji. Zapisany w LabVIEW 2012. Oba zadania są rozłączne. Sprawdź która karta jest która i ustaw kanały odpowiednio, bo nawet zakładając, że kable są podłaczone poprawnie nie sprawdzałem do którego wejścia fizicznie ;)
przykład generacji i akwizycji
przykład generacji i akwizycji
Nie mam Twoich kart i nie jestem pewien czy częstotliwość próbkowania możesz zadać przez waveform - jeżeli nie, to rys. poniżej pozwala na konfigurację probkowania osobno. W tym przypadku częstotliwość sygnału na wyjściu karty będzie zależna od częstotliwości próbkowania - aby nie miec problemów w obu przypadkach ustaw sinusa tak, żeby do bufora karty wpisany był tylko jeden okres (lub jego wielokrotność). Jeżeli chcesz modyfikować sygnał wyjściowy - musisz nadpisywać bufor wyjściowy - jak będziesz miał z tym problem - wyśle kolejny przykład (ale popracuj najpierw samodzielnie)
separate sampling
separate sampling
SeparateSampling.png (26.39 KiB) Przejrzano 8248 razy
Wszystkie parametry możesz modyfikować oczywiście. Auto cleanup możesz na początek ustawić na True - nie będziesz miał błędów jak wciśniesz Break Execution.

Udanej zabawy ze sprzętem i powodzenia w kodowaniu

Pozdrawiam
siema24
Posty: 23
Rejestracja: 14 mar 2012 10:20
Wersja środowiska: LabVIEW 2011

Re: NI 9263 oraz 9205 - problem

Post autor: siema24 »

wow, dziękuję! przez weekend się tym zajmę i dam znać jak wyszło
siema24
Posty: 23
Rejestracja: 14 mar 2012 10:20
Wersja środowiska: LabVIEW 2011

NI 9263 oraz 9205 - problem

Post autor: siema24 »

Twój układ działa poprawnie, dziękuję. Po uruchomieniu pojawił się nowy problem związany z synchronizacją generowanego przebiegu z działaniem reszty programu, jeżeli nie poradzę sobie z nim to pewnie jeszcze raz poproszę o pomoc
siema24
Posty: 23
Rejestracja: 14 mar 2012 10:20
Wersja środowiska: LabVIEW 2011

Re: NI 9263 oraz 9205 - problem

Post autor: siema24 »

Kolejny problem, tym razem związany z równoczesną generacją i odbiorem dwóch niezależnych sygnałów, np. sinus i prostokąt z dwóch (z czterach dostępnych) kanałów przetwornika 9205. W przypadku jednego sygnału nie ma problemu, jednak działając zgodnie z kodem Troopera, lekko go tylko zmieniając, i rozpoczynając drugi Task takim samym fragmentem kodu jak pierwszy, a odbiór realizując we wspólnej pętli while - nie jest generowany żaden z sygnałów. Ponad to, gdy z LabView ustawiłem const generacje i odbiór jednego sygnału a drugi sygnał chccę generować za pomocą zewnętrznego programu, otrzymuję błąd, taki jak na załączonym rysunku. Czy wiecie co to oznacza? Coś z kodem czy może jakieś zwarcia na kabelkach łączących...? Z góry dzięki
Załączniki
daq_parallel.jpg
Awatar użytkownika
trooper
Posty: 22
Rejestracja: 22 paź 2012 17:44
Wersja środowiska: LabVIEW 2012
Kontakt:

Re: NI 9263 oraz 9205 - problem

Post autor: trooper »

Witam,

Skoro tylko lekko zmieniłeś program, to oczywiście ma prawo nie działać ;)
Wiele lekkich zmian powodujących błedy mogę sobie wyobrazić, więc podziel się fragmentami kodu ... może coś poprawie, ale we czwartek dopiero.

Błąd, który otrzymujesz pojawia się w momencie, kiedy dwa programy chcą używać tych samych zasobów. To jest bardzo dobrze, w przeciwieństwie do używania zmiennych globalnych gdzie nie masz informacji o jednoczesnym dostępie do tych samych zasobów ... błędy to nie zwarcia na kablach. Wiele kanałów we/wy obslugujemy w inny sposób - w większości przypadków wystarczy dodefiniować w jednym zadaniu więcej kanałów i na wejście / wyjście podać/odebrać tablicę 2D. W moim przykładzie powinienes zatem zdefiniować nie single channel N samples a N channels N samples... wybierając wejścia/wyjścia zamiast np. dev3/ao0 wpisz dev3/ao0:1 (dla dwóch kanałów) lub dev3/ao0, dev3/ao1

Jak już będziesz pisał kolejnego posta (a ten będzie niezbędny, bo dla mnie nie wszystkie Twoje intencje są do końca zrozumiałe) to im lepiej napiszesz jaki efekt chcesz uzyskać, tym lepszą odpowiedź dostaniesz. Polecam jakiś przykładowy wykres, aby przemyślany. Może być na kartce ze zdjęciem - cokolwiek.

Pozdrawiam i powodzenia w kodowaniu.
siema24
Posty: 23
Rejestracja: 14 mar 2012 10:20
Wersja środowiska: LabVIEW 2011

NI 9263 oraz 9205 - problem

Post autor: siema24 »

Poradziłem sobie już z tym, dziękuję. To co napisałeś w poprzednim poście mi wystarczyło :)
siema24
Posty: 23
Rejestracja: 14 mar 2012 10:20
Wersja środowiska: LabVIEW 2011

Re: NI 9263 oraz 9205 - problem

Post autor: siema24 »

Jeszcze jedno pytanie. Czy z przetwornika, o którym wyżej była mowa, jest możliwość generowania losowego przebiegu prostokąta? Gdy uruchomię układ wg diagramu który znajduje się w załączniku wówczas generowany jest przebieg prostokąta, którego każdy okres jest taki sam (1 - 0). Czy jest możliwość zaprogramowania przetwornika żeby generował losowo wszystkie 4 możliwości w ramach jednego okresu (11, 10,01,00)?
Załączniki
przebieg.JPG
bd.JPG
ODPOWIEDZ