Zapis do pliku kolumna obok kolumny

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.
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Witam,
Czy ma ktoś pomysł jak zrealizować zapis do pliku kolumna obok kolumny (w poziomie)? Na razie udało mi się dopisywać do pliku w pionie - tzn. kolumna pod kolumną.
Przy okazji drugi problem, z którym muszę sobie poradzić to zabezpieczenie przed wpisaniem zbyt dużej wartości napięcia przy ustawianiu miernika za pomocą pliku konfiguracyjnego lub w panelu.
Załączniki
Fragment_kodu.JPG
Ostatnio zmieniony 23 kwie 2012 13:21 przez forgetmenot21, łącznie zmieniany 2 razy.
MicMac89
Posty: 122
Rejestracja: 05 wrz 2011 20:40
Wersja środowiska: LabVIEW 2011

Zapis do pliku kolumna obok kolumny

Post autor: MicMac89 »

Pierwsza rzecz to transpozycja danych, które wpisujesz (zamiana ze sobą wierszy i kolumn). Jeżeli wpisujesz te napięcie za pomocą kontrolki to można po wybraniu jej właściwości (prawym myszy i Properties) określić Maximum Value oraz Minimum Value w zakładce Data Entry.
Certified LabVIEW Associate Developer
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Re: Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Dzięki. Nie chodzi mi o transpozycję. Mam 3 kolumny danych z jednego przebiegu programu. Przy kolejnym uruchomieniu programu chcę nowe trzy kolumny dopisać do pliku obok trzech kolumn z pierwszego przebiegu i tak dalej przy kolejnych uruchomieniach. Tak aby łatwiej było narysować z tego wykresy np. w Matlabie. W załączniku ręcznie zrobiony przykład o co mi chodzi.
A jeśli chodzi o to zabezpieczenie to spróbuję to zrobić, dziękuję.
Ostatnio zmieniony 25 kwie 2012 13:22 przez forgetmenot21, łącznie zmieniany 3 razy.
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Zapis do pliku kolumna obok kolumny (jeszcze nie rozwiązane)

Post autor: smiga »

Nie wiem jak dużo masz/będziesz miał tych danych, ale najprościej będzie odczytać zapisane dotychczas dane z pliku, dołożyć nowe odpowiednio je ustawiając w tablicy 2D (czyli dokładając kolejne kolumny) i ponownie zapisać tak:
Załączniki
zapis.png
zapis.png (3.09 KiB) Przejrzano 15067 razy
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Dziękuję. Takich powtórzeń pomiaru będę mieć około dziesięciu. 3 kolumny danych w jednym pomiarze dla około 20 punktów częstotliwości. Czyli około 30 kolumn z wszystkich powtórzeń po 20 wierszy każda. Dopiero dzisiaj mam dostęp do miernika. Bardzo proszę o wskazówki co zmienić w programie, bo na razie nie che mi to działać (dalej dopisuje kolumna pod kolumną). Załączam vi w załączniku.
Załączniki
Fragment.JPG
Ostatnio zmieniony 15 maja 2012 22:52 przez forgetmenot21, łącznie zmieniany 1 raz.
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Zapis do pliku kolumna obok kolumny

Post autor: smiga »

Mniej więcej tak jak zrobiłeś tylko odwrotnie :-)
Najpierw czytasz dane z pliku, później czytasz dane z miernika, układasz sobie wszystko w jednej tabeli 2D i na koniec zapisujesz całość do pliku.
Jak będę miał jutro chwilkę to może coś namaluję w celu instruktażowym :-)
Ostatnio zmieniony 25 kwie 2012 22:23 przez smiga, łącznie zmieniany 1 raz.
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Re: Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Znalazłam taki przykład, ale działający dla dwóch kolumn i dla typu danych typu double. Czy da się to przerobić dla 3 kolumn i danych typu string?
https://decibel.ni.com/content/docs/DOC-11050. W tym samym czasie napisaliśmy posty :D . Będę bardzo wdzięczna za pomoc.
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Zapis do pliku kolumna obok kolumny

Post autor: smiga »

Pewnie że się da - rozciągnij sobie stałą tablicę na wejściu Transpose 2D Array o jeszcze jedną kolumnę, wartości w środku tablicy zmień z double na string, kliknij na napis pod Read From Spreadsheet File i zmień na string ... i powinno działać.
Możesz też zrobić jak pisałem przed kilkoma minutami.
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Re: Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Zrobiłam na razie tak, dobrze? Jutro jeszcze spróbuję z miernikiem czy będzie działało po połączeniu z moim programem.
Załączniki
Write Column Data_2.vi
(11.69 KiB) Pobrany 324 razy
Zapis.JPG
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Re: Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Niestety nie chce to działać z moim programem do obsługi miernika :( Zapisuje nie wszystkie dane i to w jednej linii dla każdej iteracji. Co można poprawić w tym sposobie zapisu lub tym wcześniejszym?
Ostatnio zmieniony 15 maja 2012 22:52 przez forgetmenot21, łącznie zmieniany 1 raz.
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Zapis do pliku kolumna obok kolumny

Post autor: smiga »

Przetestuj to (stwórz sobie jakiś plik .txt z danymi w trzech kolumnach - jak poniżej):
Przykładowe dane:
1 2 3
11 22 33
111 222 333
1111 2222 3333
Załączniki
zapis.vi
v8.5
(13.02 KiB) Pobrany 350 razy
zapis.png
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Re: Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Dziękuję. Działa. Zaraz spróbuję go dołączyć do mojego programu.
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Re: Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Połączyłam go z programem w taki sposób. Czy mogłabym prosić o sprawdzenie? Jutro sprawdzę czy to działa z miernikiem.
Załączniki
Zapis_3.JPG
Ostatnio zmieniony 15 maja 2012 22:52 przez forgetmenot21, łącznie zmieniany 1 raz.
MicMac89
Posty: 122
Rejestracja: 05 wrz 2011 20:40
Wersja środowiska: LabVIEW 2011

Zapis do pliku kolumna obok kolumny

Post autor: MicMac89 »

Wygląda dobrze w porównaniu do zaproponowanego rozwiązania, także powinno to działać prawidłowo.
Certified LabVIEW Associate Developer
forgetmenot21
Posty: 25
Rejestracja: 30 mar 2012 21:26
Wersja środowiska: LabVIEW 8.5

Re: Zapis do pliku kolumna obok kolumny

Post autor: forgetmenot21 »

Dzięki. Zapisało mi kolumna obok kolumny (a właściwie wartość obok wartości :) )tylko dla jednej wartości częstotliwości (tutaj akurat dla 60 Hz) dla dwóch iteracji. Więc niby dobrze, ale nie do końca. Tak to wygląda w pliku:
60,000000 876031,000000 -36,400500 60,000000 880385,000000 -36,893200
Dla kolejnych iteracji również dopisuje kolumna obok kolumny, ale tylko dla jednej wartości.
Co jeszcze trzeba poprawić? Jakaś pętla jest potrzebna?
ODPOWIEDZ