Zapisywanie stringów do tablicy bez określania jej wymiarów

Sprawy związane z interfejsem użytkownika - kontrolki, wskaźniki, wyświetlacze, wykresy oraz inne zagadnienia tego typu...
lorddran
Posty: 5
Rejestracja: 11 sty 2016 20:32
Wersja środowiska: LabVIEW 2013

Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: lorddran »

Witam,
podejrzewam, że mój problem jest banalny (stawiam pierwsze kroki w LV) ale nie mogę sobie z nim poradzić. Jak mogę stworzyć tablicę, do której będą przekazywane kolejne zmienne, bez podawania wymiarów tej tablicy?
z góry dziękuję za pomoc i pozdrawiam
Awatar użytkownika
aaddaas
Posty: 202
Rejestracja: 26 cze 2013 20:42
Wersja środowiska: LabVIEW 2015

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: aaddaas »

Bloczek build array, najepiej w połączeniu z shift register
Patrz przykład
Załączniki
tablica.png
tablica.png (13.64 KiB) Przejrzano 12260 razy
Obrazek
lorddran
Posty: 5
Rejestracja: 11 sty 2016 20:32
Wersja środowiska: LabVIEW 2013

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: lorddran »

Dzięki za odpowiedź :)
jednak nadal nie potrafię tego zrobić :/ mianowicie mam sobie pętlę for, do niej przez shift register wchodzi sobie wartość (string przekonwertowany na wartość numeryczną) i dalej wchodzi do Build Array. Do drugiego wejścia bloczku podłączyłem Loop Iteration. Następnie podczas próby wyprowadzenia appended array do shift register na wyjściu pętli for następuje błąd...
Awatar użytkownika
aaddaas
Posty: 202
Rejestracja: 26 cze 2013 20:42
Wersja środowiska: LabVIEW 2015

Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: aaddaas »

podrzuc kod
Obrazek
lorddran
Posty: 5
Rejestracja: 11 sty 2016 20:32
Wersja środowiska: LabVIEW 2013

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: lorddran »

chciałem zrealizować odczyt stringów z portu szeregowego tak by można podejrzeć wszystkie odebrane wartości, a nie tylko ostatnia.
Załączniki
8.vi
(26.92 KiB) Pobrany 428 razy
Awatar użytkownika
dajpanspokój
Posty: 145
Rejestracja: 05 lis 2015 08:15
Wersja środowiska: LabVIEW 2016

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: dajpanspokój »

Ja bym to raczej zrobil normalnym wyjsciem bez shifta ustawionym jako indexing (prawym na wyjście, Tunnel Mode). Wtedy po zamknięciu pętli dostaniesz tablicę wszystkich stringów.
Możesz do tego jeszcze zaznaczyć Conditional i ustawić tak, żeby do tablicy wyjściowej były brane tylko niepuste.

To rozwiązanie jest efektywniejsze od dodawania do tablicy z shiftem, ale nie możesz tej tablicy podglądać w trakcie działania pętli (dopiero po wyjściu z niej)
string out.png
string out.png (13.67 KiB) Przejrzano 12255 razy
lorddran pisze:Dzięki za odpowiedź :)
jednak nadal nie potrafię tego zrobić :/ mianowicie mam sobie pętlę for, do niej przez shift register wchodzi sobie wartość (string przekonwertowany na wartość numeryczną) i dalej wchodzi do Build Array. Do drugiego wejścia bloczku podłączyłem Loop Iteration. Następnie podczas próby wyprowadzenia appended array do shift register na wyjściu pętli for następuje błąd...

Na wejsciu do shift registera nic nie dawaj albo daj tablice a nie wartosc. Ten loop iteration to sa wartosci, które chcesz dodawac do tablicy
Obrazek
lorddran
Posty: 5
Rejestracja: 11 sty 2016 20:32
Wersja środowiska: LabVIEW 2013

Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: lorddran »

Z jakiegoś powodu ciągle moje zmienne są zapisywane do pierwszej komórki tablicy, a reszta pozostaje pusta
Awatar użytkownika
aaddaas
Posty: 202
Rejestracja: 26 cze 2013 20:42
Wersja środowiska: LabVIEW 2015

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: aaddaas »

Może bardziej w ten sposób?
Załączniki
8.vi
(39.68 KiB) Pobrany 413 razy
Ostatnio zmieniony 11 sty 2016 22:29 przez aaddaas, łącznie zmieniany 1 raz.
Obrazek
Awatar użytkownika
dajpanspokój
Posty: 145
Rejestracja: 05 lis 2015 08:15
Wersja środowiska: LabVIEW 2016

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: dajpanspokój »

O ile dobrze rozumiem, twój program ma zbierac wartości przesyłane przez serial, a potem wyswietlic wszystkie niezerowe na wykresie, jesli po tej wartości jest Enter?
Jeśli tak to tu jest rozw (usun ta mala petle for)
Załączniki
shift.png
Obrazek
lorddran
Posty: 5
Rejestracja: 11 sty 2016 20:32
Wersja środowiska: LabVIEW 2013

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: lorddran »

eh, ma głupota nie zna granic... co jeszcze robię nie tak? ;p
Załączniki
Untitled.png
Awatar użytkownika
dajpanspokój
Posty: 145
Rejestracja: 05 lis 2015 08:15
Wersja środowiska: LabVIEW 2016

Zapisywanie stringów do tablicy bez określania jej wymiarów

Post autor: dajpanspokój »

Jeśli masz wersje LV>=2014 to mozesz sobie przeciagnac to moje rozwiazanie na swoj block diagram.

Bloczek łączenia stringów jest zły, powinien być build table.

Ale generalnie staralbym sie sprawdzac czy dostales liczbe zaraz po jej otrzymaniu a w shifcie przekazywac tablice doubli a nie stringów. Wtedy juz bez sprawdzania mozesz ją wyświetlić na wykresie.

I zastanów się jak rozwiązać problem gdy ktoś ci wyśle 0 przez serial
Obrazek
ODPOWIEDZ