Prośba o pomoc w prowadzeniu do LabVIEW
Prośba o pomoc w prowadzeniu do LabVIEW
Witam,
dostałem za zadanie stworzyć projekt w LabVIEW, ale nie mam bladego pojęcia o tym środowisku. Na zajęciach nikt nam go nie omawia i mamy sobie radzić sami. Nie oczekuje, żeby ktoś go zrobił za mnie - potrzebuje wskazówek i jakiegoś punktu zaczepienia.
Moim zadaniem jest stworzenie prostego modelu (w paśmie podstawowym) transmisji wielodrożnej (4 ścieżki) w łączu do użytkownika. Model powinien zawierać jakieś źródło danych binarnych, układ kształtowania wiązki impulsów (impulsy w pasmie podstawowym o kształcie np. (sin(x)/x)^2 ), modele kanałów: szum + tłumienie + losowe opóźnienie sygnału, oraz prosty układ odbiornika, w którym sygnały z wielu ścieżek są sumowane i dekodowane.
Istnieje jakieś polskie kompendium, czy kurs LabVIEW, który mógłby mi pomóc? Od prowadzącego dostałem jedynie link do tego serwisu, do wiki i do centrum LabVIEW (ang). W bibliotece są książki, ale prawie wszystkie po angielsku i do tego dostępne tylko na miejscu.
Pozdrawiam, Łukasz
dostałem za zadanie stworzyć projekt w LabVIEW, ale nie mam bladego pojęcia o tym środowisku. Na zajęciach nikt nam go nie omawia i mamy sobie radzić sami. Nie oczekuje, żeby ktoś go zrobił za mnie - potrzebuje wskazówek i jakiegoś punktu zaczepienia.
Moim zadaniem jest stworzenie prostego modelu (w paśmie podstawowym) transmisji wielodrożnej (4 ścieżki) w łączu do użytkownika. Model powinien zawierać jakieś źródło danych binarnych, układ kształtowania wiązki impulsów (impulsy w pasmie podstawowym o kształcie np. (sin(x)/x)^2 ), modele kanałów: szum + tłumienie + losowe opóźnienie sygnału, oraz prosty układ odbiornika, w którym sygnały z wielu ścieżek są sumowane i dekodowane.
Istnieje jakieś polskie kompendium, czy kurs LabVIEW, który mógłby mi pomóc? Od prowadzącego dostałem jedynie link do tego serwisu, do wiki i do centrum LabVIEW (ang). W bibliotece są książki, ale prawie wszystkie po angielsku i do tego dostępne tylko na miejscu.
Pozdrawiam, Łukasz
- Nowszy
- Posty: 504
- Rejestracja: 30 maja 2008 08:33
- Wersja środowiska: LabVIEW 2011
- Lokalizacja: Katowice
- Kontakt:
Prośba o pomoc w prowadzeniu do LabVIEW
Witaj na Forum!
Jezeli chcesz (lub musisz
) napisac projekt w LV, najpierw musisz nauczyc sie samego srodowiska. Ja bym wiec sugerowal najpierw poswiecenie troche czasu na poznanie podstaw tego srodowiska, a dopiero potem zaglebienie sie w sam temat. Kiedy cos z podstaw bedzie dla ciebie niejasne lub kiedy juz w trakcie pracy nad projektem napitkasz jakis konkretny problem, postaramy sie pomoc.
Na poczatek kilka linkow jako 'punkt startowy':
http://zone.ni.com/devzone/cda/tut/p/id/5243
http://www.ni.com/trylabview/ (kilka cenny linkow z tej strony)
Powodzenia!
Jezeli chcesz (lub musisz

Na poczatek kilka linkow jako 'punkt startowy':
http://zone.ni.com/devzone/cda/tut/p/id/5243
http://www.ni.com/trylabview/ (kilka cenny linkow z tej strony)
Powodzenia!
Pozdrawiam, Maciek Antonik
Edu4Industry
Edu4Industry
Prośba o pomoc w prowadzeniu do LabVIEW
No więc łyknąłem sporą dawkę informacji i podstawowe umiejętności już mam. Na początek chce zrobić źródło danych binarnych. Obejrzałem już sobie przykładowe projekty w programie, gdzie pokazane jest mniej więcej jak to zrobić, ale... No właśnie, wszędzie są pokazane sygnały skończone, a ja chciałbym aby mi generowało sygnał ciągły (losowe dane). Poza tym zastanawiam się jak wykonać te 4 ścieżki - czy to muszą być osobno 4 generatory danych, czy można to zrobić w jednym, który wygeneruje 4 sygnały? Wszystko na początku wydaje się tutaj czarną magią... Będę wdzięczny za wskazówki.
Tak w ogóle jaki stopień trudności ma ten projekt? Bo nie jestem w stanie tego ocenić.
Pozdrawiam, Łukasz
Tak w ogóle jaki stopień trudności ma ten projekt? Bo nie jestem w stanie tego ocenić.
Pozdrawiam, Łukasz
- Nowszy
- Posty: 504
- Rejestracja: 30 maja 2008 08:33
- Wersja środowiska: LabVIEW 2011
- Lokalizacja: Katowice
- Kontakt:
Prośba o pomoc w prowadzeniu do LabVIEW
Czesc
Dobrze, skoro podstawy znasz, mozemy przejsc dalej. Jesli chcesz pracowac na danych ciaglych, caly program bedzie musial pracowac w petli While. Kolejnym krokiem w twoim projekcie powinno byc:
1/ Szczegolowe zdefiniowanie, co projekt ma robic. Na pewno bedzie dzialal w jakiejs petli, rozpisz wiec sobie, co bys chcial, zeby sie dzialo w kazdej iteracji takiej petli. Z tego co zrozumialem z twojego pierwszego posta, przebieg jednej petli mialby wygladac mniej wiecej tak:
>> wygeneruj pojedyncza wartosc chwilowa sygnalu na 4 kanalach (analogowe czy cyfrowe? w kazdej petli tylko 1 wartosc, czy kilka, np. 10 kolejnych?)
>> przeprowadz operacje ksztaltowania wiazki (jaka to dokladnie operacja matematyczna?)
>> zasymuluj kanal rzeczywisty - szumy, etc (pytanie jak wyzej)
>> stworz odbiornik sygnalu (co ma robic? jesli wyswietlac dane, to w jaki sposob?)
W nawiasach masz przykladowe pytania, na ktore bedziesz musial odpowiedziec. Takich pytan bedzie o wiele wiecej
2/ Kiedy juz stworzysz sobie ogolny schemat programu, najlepiej od razu zaplanowac:
>> typy danych z jakich bedziesz korzystal (tablice wartosci, czy tylko pojedyncze wartosci?)
>> ogolna architekture programu (petle, etc)
Jesli bedziesz mial problem z ktorymkolwiek z punktow, pisz tutaj a pomozemy. Szczegolnie z calym punktem 2. mozesz miec problemy, jesli nie masz duzego doswiadczenia, tu ci jednak na pewno bedziemy w stanie pomoc. Czesc pierwsza to juz specyfikacja twojej pracy.
Powodzenia!
Dobrze, skoro podstawy znasz, mozemy przejsc dalej. Jesli chcesz pracowac na danych ciaglych, caly program bedzie musial pracowac w petli While. Kolejnym krokiem w twoim projekcie powinno byc:
1/ Szczegolowe zdefiniowanie, co projekt ma robic. Na pewno bedzie dzialal w jakiejs petli, rozpisz wiec sobie, co bys chcial, zeby sie dzialo w kazdej iteracji takiej petli. Z tego co zrozumialem z twojego pierwszego posta, przebieg jednej petli mialby wygladac mniej wiecej tak:
>> wygeneruj pojedyncza wartosc chwilowa sygnalu na 4 kanalach (analogowe czy cyfrowe? w kazdej petli tylko 1 wartosc, czy kilka, np. 10 kolejnych?)
>> przeprowadz operacje ksztaltowania wiazki (jaka to dokladnie operacja matematyczna?)
>> zasymuluj kanal rzeczywisty - szumy, etc (pytanie jak wyzej)
>> stworz odbiornik sygnalu (co ma robic? jesli wyswietlac dane, to w jaki sposob?)
W nawiasach masz przykladowe pytania, na ktore bedziesz musial odpowiedziec. Takich pytan bedzie o wiele wiecej

2/ Kiedy juz stworzysz sobie ogolny schemat programu, najlepiej od razu zaplanowac:
>> typy danych z jakich bedziesz korzystal (tablice wartosci, czy tylko pojedyncze wartosci?)
>> ogolna architekture programu (petle, etc)
Jesli bedziesz mial problem z ktorymkolwiek z punktow, pisz tutaj a pomozemy. Szczegolnie z calym punktem 2. mozesz miec problemy, jesli nie masz duzego doswiadczenia, tu ci jednak na pewno bedziemy w stanie pomoc. Czesc pierwsza to juz specyfikacja twojej pracy.
Powodzenia!
Pozdrawiam, Maciek Antonik
Edu4Industry
Edu4Industry
Re: Prośba o pomoc w prowadzeniu do LabVIEW
Wielkie dzięki za te podpowiedzi 
Przemyślałem i skonsultowałem projekt z prowadzącym i już wiem jak to ma generalnie wyglądać od strony teoretycznej.
Na razie stworzyłem źródło danych, które generuje zadaną liczbę bitów. Wszystko będzie działać w pętli czyli za każdym wykonaniem zwracana będzie dana liczba bitów.
Kolejnym etapem jest ukształtowanie impulsu. Sygnał transmitowany ma postać:
u(t)= suma k [ g(t-kT)*s(k)]
gdzie s(k) to są bity informacji, a g(t) to impuls modulujący sygnał g(t) = (sin(2*pi*(t-2))/(2*pi*(t-2)))^2, t=<0,T>, T=4 - generalnie chodzi o to, że w zależności od wartości bitu jest on wysyłany z wagą 1 (1) lub -1 (0).
Na razie chciałbym się skupić na tym i dopiero potem zająć się resztą, bo chyba ten etap jest najtrudniejszy (moim zdaniem). Z moich przemyśleń wynika, że trzeba przesłać "paczkę" bitów, żeby to jakoś działało. Bity są generowane i teraz następuje kształtowanie... No właśnie nie wiem jak się do tego zabrać. Możliwe, że wynika to ze zbyt słabego zaznajomienia z tematem, albo... Albo może być to również bardzo proste
Za tydzień idę z tym na konsultacje, ale chciałem już coś ruszyć. Może ktoś robił coś podobnego i może mi podpowiedzieć?

Przemyślałem i skonsultowałem projekt z prowadzącym i już wiem jak to ma generalnie wyglądać od strony teoretycznej.
Na razie stworzyłem źródło danych, które generuje zadaną liczbę bitów. Wszystko będzie działać w pętli czyli za każdym wykonaniem zwracana będzie dana liczba bitów.
Kolejnym etapem jest ukształtowanie impulsu. Sygnał transmitowany ma postać:
u(t)= suma k [ g(t-kT)*s(k)]
gdzie s(k) to są bity informacji, a g(t) to impuls modulujący sygnał g(t) = (sin(2*pi*(t-2))/(2*pi*(t-2)))^2, t=<0,T>, T=4 - generalnie chodzi o to, że w zależności od wartości bitu jest on wysyłany z wagą 1 (1) lub -1 (0).
Na razie chciałbym się skupić na tym i dopiero potem zająć się resztą, bo chyba ten etap jest najtrudniejszy (moim zdaniem). Z moich przemyśleń wynika, że trzeba przesłać "paczkę" bitów, żeby to jakoś działało. Bity są generowane i teraz następuje kształtowanie... No właśnie nie wiem jak się do tego zabrać. Możliwe, że wynika to ze zbyt słabego zaznajomienia z tematem, albo... Albo może być to również bardzo proste

Ostatnio zmieniony 03 gru 2009 15:59 przez got3, łącznie zmieniany 1 raz.
- Nowszy
- Posty: 504
- Rejestracja: 30 maja 2008 08:33
- Wersja środowiska: LabVIEW 2011
- Lokalizacja: Katowice
- Kontakt:
Re: Prośba o pomoc w prowadzeniu do LabVIEW
Cześć
Ja bym mimo wszystko sugerował ci bardziej zorganizowane podejście do tematu. Nawet jeśli przejdziesz przez tą najtrudniejszą część, to potem może się okazać, że ogólna architektura programu jest nieodpowiednia i będziesz musiał modyfikować co już napisałeś. Spróbuj zamiast tego podejścia jak poniżej (to ogólna propozycja, jedna z możliwych opcji)
1. Narysuj sobie na kartce, jak byś chciał, żeby wyglądał interfejs użytkownika. Gdzie i jakie przebiegi chcesz wyświetlać, jakie przyciski będą ci potrzebne. Potem zbuduj taki interfejs w LV
2. Masz już terminale najważniejszych kontrolek. Teraz zbuduj program, który będzie na razie tylko symulacją, skoncentruj się na architekturze. Każdą pojedynczą funkcję zastąp pojedynczym, być może tymczsowym subVI-em. Tak więc na przykład w pętli wstaw 2 subVI-e symulujące jakiś sygnał cyfrowy, następnie subVI który realizuje zadaną operację (na początek zrób jakiś banał, np. funkcję OR na tych dwóch sygnałach, chodzi o to, żeby był subVI). Podłącz wszystkie kontrolki i zobacz jak działa twój program.
3. Kiedy będziesz już miał program, który działa tak jak chcesz, czyli symulowane sygnały będą się pojawiać i odświeżać w odpowiednich momentach, zastąp poszczególne subVIe takimi, które będą realizowały prawidłowe funkcje. Wtedy na spokojnie możesz się skoncentrować nad matematyką, którą zamieściłeś.
To oczywiście tylko propozycja
Napisz jak ci idzie i wklej kod jeśli napotkasz jakiś problem
Ja bym mimo wszystko sugerował ci bardziej zorganizowane podejście do tematu. Nawet jeśli przejdziesz przez tą najtrudniejszą część, to potem może się okazać, że ogólna architektura programu jest nieodpowiednia i będziesz musiał modyfikować co już napisałeś. Spróbuj zamiast tego podejścia jak poniżej (to ogólna propozycja, jedna z możliwych opcji)
1. Narysuj sobie na kartce, jak byś chciał, żeby wyglądał interfejs użytkownika. Gdzie i jakie przebiegi chcesz wyświetlać, jakie przyciski będą ci potrzebne. Potem zbuduj taki interfejs w LV
2. Masz już terminale najważniejszych kontrolek. Teraz zbuduj program, który będzie na razie tylko symulacją, skoncentruj się na architekturze. Każdą pojedynczą funkcję zastąp pojedynczym, być może tymczsowym subVI-em. Tak więc na przykład w pętli wstaw 2 subVI-e symulujące jakiś sygnał cyfrowy, następnie subVI który realizuje zadaną operację (na początek zrób jakiś banał, np. funkcję OR na tych dwóch sygnałach, chodzi o to, żeby był subVI). Podłącz wszystkie kontrolki i zobacz jak działa twój program.
3. Kiedy będziesz już miał program, który działa tak jak chcesz, czyli symulowane sygnały będą się pojawiać i odświeżać w odpowiednich momentach, zastąp poszczególne subVIe takimi, które będą realizowały prawidłowe funkcje. Wtedy na spokojnie możesz się skoncentrować nad matematyką, którą zamieściłeś.
To oczywiście tylko propozycja

Pozdrawiam, Maciek Antonik
Edu4Industry
Edu4Industry
Prośba o pomoc w prowadzeniu do LabVIEW
Schematy i ogólne wyobrażenie o projekcie mam już gotowe 
Mam teraz taki problem: chciałbym obliczyć coś za pomocą bloczku "Formula", ale problem w tym, że potrzebuje aby jeden z argumentów posiadał wartości w zadanym przedziale np. od 0 do 10. Jak to zrobić? Dla przykładu: chce obliczyć wartości np. funkcji sin(x) w danym przedziale.

Mam teraz taki problem: chciałbym obliczyć coś za pomocą bloczku "Formula", ale problem w tym, że potrzebuje aby jeden z argumentów posiadał wartości w zadanym przedziale np. od 0 do 10. Jak to zrobić? Dla przykładu: chce obliczyć wartości np. funkcji sin(x) w danym przedziale.
- Nowszy
- Posty: 504
- Rejestracja: 30 maja 2008 08:33
- Wersja środowiska: LabVIEW 2011
- Lokalizacja: Katowice
- Kontakt:
Re: Prośba o pomoc w prowadzeniu do LabVIEW
Jeśli dobrze zrozumiałem, to odpowiedź w załączniku
- Załączniki
-
- tablica z FOR.png (24.14 KiB) Przejrzano 9164 razy
Pozdrawiam, Maciek Antonik
Edu4Industry
Edu4Industry
Prośba o pomoc w prowadzeniu do LabVIEW
O właśnie o to. Miałem jednak jakieś problemy ze zbudowaniem takiego układu więc wymyśliłem coś innego i chyba lepszego.

Potrzeba matką wynalazków
W simulate arbitrary signal zrobiłem po prostu prostą y=x ( w zakresie który potrzebuje) i sprawdziło się idealnie 

Potrzeba matką wynalazków


Prośba o pomoc w prowadzeniu do LabVIEW
Istnieje sposób na zrobienie digital waveform chart? Generalne chodzi mi o to, żeby wykres przesuwał się w lewo tzn. żeby zapamiętywał poprzednie dane i wyświetlał je na wykresie. W graphie są pokazywane tylko aktualne dane, które są nadpisywane potem.