Tablice.

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.
Tomal
Posty: 5
Rejestracja: 29 mar 2015 21:37
Wersja środowiska: LabVIEW 2014

Tablice.

Post autor: Tomal »

Witam, to mój pierwszy post na tym forum więc z góry przepraszam jeśli to nie jest odpowiedni dział.

Jestem świeżym członkiem środowiska lab view i mam kilka pytań w związku z programem który starałem się napisać. (działa chyba dobrze choć bardzo "łopatologicznie")

Pytania, które mam:
1. Jak zrobić tak żeby program czekam aż osoba obsługująca program wprowadzi pierwszą wartość w tablicy i ją zatwierdzi? (Teraz po wpisaniu danej trzeba nacisnąć przycisk i trafić akurat w to 100ms kiedy program bd zczytywał wartość )
2. Jak inaczej mogę wyindeksować kolejne wartości z tablicy, żeby szły po kolei, bo już próbowałem na parę sposobów i nie wychodziło mi.
3. Dlaczego "tablica z wynikiem" jest 2 wymiarowa choć w rzeczywistości tylko jeden wymiar jest obsługiwany?
4. Jakieś porady co do bardziej oszczędnego i skondensowanego zapisu? (bo wiem że ten program jest dość nie poprawnie zapisany)

Za wszystkie uwagi z góry dziękuję.

@Edit: Zapomniałem napisać - program generuje tablice o zadanej liczbie, ma czekać na wprowadzenie danych przez użytkownika a następnie wymnożyć kolejne ze sobą (0 z 1, 2 z 3 itd...) a następnie wynik wygenerować w tabeli.
Załączniki
InputArrays_1.vi
(12.42 KiB) Pobrany 325 razy
Ostatnio zmieniony 29 mar 2015 22:11 przez Tomal, łącznie zmieniany 1 raz.
Awatar użytkownika
koofaya
Posty: 38
Rejestracja: 23 sty 2014 14:51
Wersja środowiska: LabVIEW 2014

Tablice.

Post autor: koofaya »

Ja niestety mam LV 2013, więc musiałbyś to zapisać jedną wersję do tyłu. Ale już na podstawie postawionych pytań mogę co nieco poradzić.
Po pierwsze, jeżeli masz zamiar w przyszłości coś więcej pracować w LabVIEW, polecam posty na tym forum poświęcone początkującym użytkownikom.

1. Do reagowania na działania użytkownika na panelu czołowym stosuje się tzw. event structure. One wymagają niestety trochę wprawy, bo nie wszystkie możliwości tych struktur są dobrze opisane w helpie.

2. Indeksowanie tablic najłatwiej zrealizować w pętli for. Jeżeli jest to tablica dwuwymiarowa, trzeba zagnieździć jedną pętlę w drugiej i na obu ustawić autoindeksowanie. Pętla wykonuje się tyle razy, ile elementów (w danym wymiarze) liczy najmniejsza wprowadzona tablica. Ma to największy sens wtedy, kiedy wykonujesz podobne operacje na każdym elemencie tablicy.

3. Żeby zrobić jednowymiarową tablicę wyników, musisz zrobić wyjście z autoindeksowaniem na tej zewnętrznej pętli for.

4. Nie wiem, jak wygląda kod, z powodu napisanego wyżej, ale generalnie program powinien się składać z głównej pętli while, w której będzie struktura event czekająca na akcję użytkowniku (array: value change), a wewnątrz struktury event lub po wyjściu z niej te 2 pętelki for, w których będzie realizowana właściwa funkcjonalność programu.

Polecam powalczyć samemu, a nie czekać na dobrego wujka, który wrzuci gotowy kod. Ale, jak zapiszesz to w wersji 2013, może będę mógł poradzić bardziej szczegółowo. Pozdrawiam i powodzenia!
Tomal
Posty: 5
Rejestracja: 29 mar 2015 21:37
Wersja środowiska: LabVIEW 2014

Re: Tablice.

Post autor: Tomal »

Tutaj podrzucam kod w 2013 jak coś.

Dzięki za odpowiedź i tak, coś poszperam jeszcze.

@Edit:
2. Jeśli spojrzysz na kod to chodzi mi o indeksowanie w drugiej części kodu (pętla for) kolejnych wartości, żeby były ze sobą mnożone bo u mnie to jest zrobione na zasadzie 2*5=2+2+2+2+2...

3. Nie za bardzo czuje o co Ci tutaj chodzi. Bo nie mogę chyba wyjść z indeksowaniem po za pętle, bo nie będzie mi mnożyć kolejnych elementów.
Załączniki
zad.vi
(8.53 KiB) Pobrany 296 razy
pawhan11
Posty: 67
Rejestracja: 21 wrz 2011 16:25
Wersja środowiska: LabVIEW 2012

Re: Tablice.

Post autor: pawhan11 »

Nie wiem czy o coś takiego chodziło ale zobacz w załączniku.
Załączniki
Untitled 2.vi
(11.6 KiB) Pobrany 304 razy
CLS - Certified LabVIEW Student
Awatar użytkownika
koofaya
Posty: 38
Rejestracja: 23 sty 2014 14:51
Wersja środowiska: LabVIEW 2014

Re: Tablice.

Post autor: koofaya »

Jak już sprawy zaszły tak daleko, to ja też jakiś programik skleciłem. Też jest nieco łopatologiczny i nie wiem, czy działa do końca tak, jak powinien. VIa zaproponowanego przez pawhan11 nie widziałem ze względu na wersję.
Załączniki
zad_ver2.vi
(24.16 KiB) Pobrany 322 razy
Tomal
Posty: 5
Rejestracja: 29 mar 2015 21:37
Wersja środowiska: LabVIEW 2014

Re: Tablice.

Post autor: Tomal »

Hehe, dzięki. Nie chodziło mi o dokładne rozwiązanie, tylko o odp na pytania :P Ale dzięki za kody - posiedzę nad nimi i przeanalizuje jak to działa, żeby się czegoś nowego nauczyć.

Dzięki wielkie. Problem solved.
ODPOWIEDZ