wykres niquista

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
genek
Posty: 6
Rejestracja: 13 sty 2011 23:28
Wersja środowiska: LabVIEW 2010

wykres niquista

Post autor: genek »

Mam przetwornik a/c udaq lite i do niego jest podłączony układ dla którego należy wykreślić charakterystykę niquista. Na wyjściu przetwornika jest podawana sinusoida (narazie o stalej częstotliwości) i na wejściu jest zczytywane wyjście z układu. Tutaj jak narazie działa dobrze i przebieg sygnału na wykresie wygląda dobrze, ale co zrobic dalej? Program z przykładu coś nie działa bo mu typy zmiennych nie pasują.
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: wykres niquista

Post autor: PiDi »

Witam
Pierwsze pytanie brzmi: czy wiesz czym jest charakterystyka Nyquista i jak się ma ona do sygnałów sinusoidalnych w układzie? Jeśli to jest jasne, to Ty musisz uchylić rąbka tajemnicy i powiedzieć coś więcej na temat "programu z przykładu", bo ciężko mi rozmawiać o czymś czego nie widziałem na oczy ;)

Pozdrawiam
Piotrek
ObrazekObrazekObrazekObrazek
genek
Posty: 6
Rejestracja: 13 sty 2011 23:28
Wersja środowiska: LabVIEW 2010

Re: wykres niquista

Post autor: genek »

PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: wykres niquista

Post autor: PiDi »

Ok, to już wiemy, że masz przykład który robi wszystko czego potrzebujesz. Ewentualnie można też użyć Dual Channel Spectral Measurement z palety Express.
W czym problem?
ObrazekObrazekObrazekObrazek
genek
Posty: 6
Rejestracja: 13 sty 2011 23:28
Wersja środowiska: LabVIEW 2010

wykres niquista

Post autor: genek »

No problem jest w tym, że ten program z przykładu nie chce działać, bo mu typy zmiennych nie pasują, sygnał odczytany z układu nie pasuje do tego jaki powinien być na wejściu tego przykładu.
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: wykres niquista

Post autor: PiDi »

No to nadal niezbyt precyzyjnie określasz problem, bo nie wiem w jaki sposób odczytujesz sygnał z układu :-? Strzelam, że korzystasz z DAQ Assistant, który daje na wyjściu Dynamic Data. Żeby wykorzystać ten sygnał w przykładzie, musisz wykorzystać bloczek Convert From Dynamic Data (w palecie Express->Sig Manip) i skonwertować go na odpowiedni waveform (przypuszczalnie jednowymiarową tablicę, bo zbierasz dwa sygnały).
Jeśli nie o to chodzi, to pokaż swój program.
Załączniki
vi.jpg
vi.jpg (13.67 KiB) Przejrzano 8442 razy
ObrazekObrazekObrazekObrazek
genek
Posty: 6
Rejestracja: 13 sty 2011 23:28
Wersja środowiska: LabVIEW 2010

Re: wykres niquista

Post autor: genek »

Ok, wiec myślę ze pomysł z zapisem do tablicy bedzie raczej słuszny.
Niestety nie korzystam z DAQ assistant, ponieważ posiadam przetwonik uDAQLite firmy Eagle.
Aby z niego korzystac producent udostepnia addon do labview z bloczkami do zczytywania wejsc i genieracji sygnalow na wyjscia.
Za pomoca Simulate signal generuje sinusa na wyjscie przetwornika, a bloczkami A\D SP odczytuje dane na wejsciach przetwrnika.
Aktualnie generowanego sinusa puszczam na uklad RC.
Problem tkwi w tym ze bloczki odczytujace wejscia zwracaja mi Waveform(DBL) ktorego nie moge zapisac bezposrednio do tablicy.
Podpiecie sygnalow wejsciowych bezposrednio do bloku funkcyjnego (frequency response) raczej mija sie z celem gdyż w danej chwili czasowej
posiadaja one pojedyncza wartosc (tak wiec przebiegi musial bym zapisywac do jakiejs tabeli i dopiero po jakims czasie uzyc tej funkcji)
Załaczam wyglad mojego programu. oraz blad jaki otrzymuje przy podlaczaniu do tablicy.
Załączniki
p2.JPG
p1.JPG
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: wykres niquista

Post autor: PiDi »

Jeśli dobrze rozumiem, to w tej chwili te bloczki z uDAQ zwracają Ci waveform zawierający jedną próbkę? Sądzę, że musi się dać jakoś skonfigurować to tak, żeby zrobiło Ci N próbek i wtedy powinieneś dostać sensowny waveform, który da się już podłączyć do Frequency Response.
Jeśli jednak faktycznie jest tak, że możesz dostać tylko jedną próbkę na raz, to można teoretycznie zebrać te próbki w jeden waveform za pomocą pętli for. Ale to rozwiązanie wydaje mi się potwornie naciągane i nie wiem, czy nie powinienem się wstydzić, że w ogóle nie nie wpadłem...
Załączniki
vi.jpg
ObrazekObrazekObrazekObrazek
ODPOWIEDZ