Strona 1 z 1
Zapis diagramow do pliku
: 11 cze 2014 09:32
autor: Harnas
Czesc,
mam problem, ktory wiem jak moglbym rozwiazac ale to rozwiazanie mi sie nie podoba
Raz dziennie pomiary (pare kanalow z czestotliwoscia 1Hz) z ostatniej doby musza byc zapisywane jako diagramy do pliku. Wiem, ze moge przez cala dobe rysowac diagram w LV a potem poprostu go eksportowac jako JPEG. Tylko, ze przez cala mase innych prozesow nie chce niepotrzebnie obciazac komputer a na te diagramy na FP same w sobie sa tez mi niepotrzebne. Szukalem jakiegos rozwiazania na necie, ale przewaznie odsylaja mnie wlasnie do eksportwania diagramu do pliku.
I tutaj moje pytanie:
czy znacie jakas sprytna metode jak to zrobic oszczedzajac zuzycie procesora i ramu ?
Myslalem, ze mozna to jakos zrobic w ramach SubVIa albo przez jakis zewnetrzny program sterowany z LV ale jak zaczne probowac to strace pare dni a niekoniecznie musi wyjsc.
Pozdrawiam wszystkich ;)
harnas
PS. Pomiary te sa tez caly czas zapisywane do pliku.
Re: Zapis diagramow do pliku
: 11 cze 2014 09:56
autor: TMa
Skoro dane zapisywane są do pliku to w jakim celu na bieżąco trzymasz diagram w przetwarzaniu CPU? Może lepiej zrobić aplikację, która wyświetla na żądanie dane ze zdefiniowanego okresu czasu (w twoim przypadku domyślna wartością będzie ostatnie 24h) i na żądanie (lub automatem) zapisze w zdefiniowanej formie (format, pattern na nazwe pliku) w zdefinowane (ale konfigurowalne) miejsce

coś w stylu TDMS Viewer.
PS. W wersji dla ambitnych można pomyśleć o rozwiązaniu sieciowym, np.
https://plot.ly/
Zapis diagramow do pliku
: 11 cze 2014 10:05
autor: Harnas
Boje sie, ze jak mu na raz kaze wyswietlic ostatnie 24h to caly programm zwolni i sie przytnie zanim zaladuje dane. Cos w tym stylu mialem jak wlaczalem na diagramie dane z ostatnich paru sekund taktowane z czestotliwoscia ca. 15kHz.
Zapis diagramow do pliku
: 11 cze 2014 11:14
autor: Pitol
Mam jedną propozycję, jednak zależy ona od rodzaju pomiarów, które robisz.
Jeżeli nie są to jakieś szybkozmienne przebiegi to możesz zrobić następującą rzecz:
1. Pomiary robisz tak jak robisz i zapisujesz je gdzieś (np. TDMS, czy coś)
2. W momencie, w którym chcesz wyświetlić/zapisać ten diagram ładujesz dane na wykres, ale... nie ładujesz wszystkich

Powiedzmy, że w ciągu dnia zbierze Ci się ~100k próbek. Wyświetlenie tego na wykresie to nieporozumienie.
Wystarczy, że zrobisz sobie funkcję, która będzie czytać np. co 100 próbek albo rzadziej i to wyświetlała na wykresie.
Robiłem kiedyś coś podobnego i działało dobrze.
Zapis diagramow do pliku
: 11 cze 2014 11:31
autor: Jamal79
Mozesz otworzyc kopie tego pliku po sieci?? Nie obciazysz pomiarowego PCeta.
Uzywasz moze Diadema?? w LV masz opcje ekspotru do raportu Diademowskiego. (Niewiem ile "zrzera" to CPU i reszty.) A tam jest sporo opcji na export np do PDFu, itd...
Zapis diagramow do pliku
: 11 cze 2014 11:58
autor: Pitol
Problem nie leży w narzędziu, ale w liczbie danych, które mają być obrobione. Nie ma programu, który nie przytnie się przy próbie wrzucenia do pamięci 1M albo więcej próbek.
Zapis diagramow do pliku
: 11 cze 2014 14:38
autor: Jamal79
Dokladnie, ale jak uzyjesz innej maszyny to niema wiekszego znaczenia czy sie przytnie czy nie...
A tak z drugiej strony to domyslam sie ze macie jakiegos rodzaju system monitorujacy prace maszyny lub maszyn. Zakladam rowniez, ze diagramy maja na celu dokumentacje tej pracy a dane sa zapisywane do analizy w razie wystapienia anomali. W takim razie chyba mozna wytuamaczyc brak kilku danych raz na dobe w ramach serwisu itd...
Wiem, ze najlepiej jakby sie udalo bez

Re: Zapis diagramow do pliku
: 11 cze 2014 14:52
autor: TMa
Polecam zapoznanie się z takimi zagadnieniami:
Zapis diagramow do pliku
: 12 cze 2014 08:14
autor: Harnas
Dzieki za pomoc! Wiedza i doswiadczenie bardziej doswiadczonych programistow jak zwykle nieoceniona!
Pitol, swietny pomysl

Moglem sam na to wpasc

Zaprogramuje i przetestuje.
Jamal79, nie mam w pracy Diadema i nie widac, zeby chcieli go dla mnie zamowic ;) Wiesz jak to jest. Projekt musi isc do przodu a programy zrobi sie przy okazji na koncu ;)
Twoje domysly sa jak najbardziej poprawne.
Przez cala dobe program zapisuje dane z czestotliwoscia 1Hz przy okazji obserwujac jak sie zmieniaja. W razie przekroczenia ustalonych wartosci lub naglych wachan uruchamia sie rownolegle zapisywanie wszystkich pobranych wartosci.
O polnocy program wysyla do nas maila z informacja co dzialo sie w ciagu ostatniej doby i paroma wykresami.
TMa, dzieki. Przeczytam ;)
Zapis diagramow do pliku
: 16 cze 2014 15:26
autor: Harnas
Takie szybkie pytanko:
Czy diagram koniecznie musi byc wyswietlany na ekranie, zeby dal sie zapisac do pliku ? Myslalem, ze jezeli go sobie w SubVIu narysuje i tam zapisze to pliku to sie uda a cos nie chodzi.
Zapis diagramow do pliku
: 17 cze 2014 07:25
autor: Pitol
Z tego co na szybko sprawdziłem, to faktycznie indykator musi być widoczny, żeby metoda GetImage albo ExportImage zadziałała.
Jeśli robisz to w subVI to rozwiązaniem "na szybko" będzie sprawienie, żeby się ten subVI pokazał na czas jego działania.
Prawym na subVI -> SubVI Node Setup -> i tutaj zaznaczasz "Show front panel when called" oraz "Close afterward if originally closed".
SubVI pojawi Ci się na czas działania, a jak skończy to się zamknie. Nie jest to rozwiązanie piękne, ale prawdopodobnie skuteczne ;)
Jeśli jednak Cię to nie zadowoli to będziemy szukać czegoś innego...
Re: Zapis diagramow do pliku
: 17 cze 2014 08:30
autor: TMa
Jeśli faktycznie konieczne jest otwarcie subVi to możesz użyć
VI Servera
Re: Zapis diagramow do pliku
: 19 cze 2014 10:44
autor: Harnas
hej,
podlubalem sobie troche i cos tam mi na koncu wyszlo. Generalnie chcialem, zeby SubVIa mozna bylo w miare szybko i bezbolesnie zastosowac do tworzenia diagramow dla roznych danych pomiarowych. Tak jak pisaliscie docelowo bedzie sie on otwieral o polnocy, zapisywal diagram do pliku BMP i od razu zamykal. Wykorzystalem tez pomysl o zmniejszeniu ilosci punktow, ktore sie na diagramie wyswietlaja. Majac dane z ostatniej doby wystarczy jak sie co minute wyswietli pomiar na wykresie.
W moim rozwiazaniu mam 4 wykresy jeden pod drugim. Odpowiednio 2 wykresy "polozenie" i dwa "napiecia", ktore tym polozeniom odpowiadaja. Autoskalowanie czasem zyje swoim wlasnym zyciem i glupio wyglada jak na kazdym wykresie z polozenia jest inna skala. Dociagnalem pare drutow, tak ze skalowanie kazdych dwoch wykresow odpowiada max/min z danych tych dwoch sygnalow +0,5/-0,5.
Opis osi Y czytany jest z pliku pomiarowego. Nazwy w legendzie oczywiscie tez. Data w gornym prawym roku pochodzi od nazwy pliku, zmienila tylko swoj format.
Jakby kogos zainteresowal resultat to wrzucilem do zalacznika, razem z przykladowym plikiem z paru minut. W razie jakichs pomyslow, wskazowek lub krytki nie krepujcie sie.
Ps. Komentarze w programie sa po niemiecku. Mam nadzieje, ze nie odstraszy to zainteresowanych tematem.
Zapis diagramow do pliku
: 19 cze 2014 15:35
autor: Jamal79
pewnie ze i jestesmy zainteresowani. Ale jakbys wrzucil jeszcze w starszej wersji bylo by fajnie

LV 11(12)
PS. Sa znaczocze roznice w 13?? niewiem czy przeinstalowywac czy nie...
Re: Zapis diagramow do pliku
: 20 cze 2014 08:38
autor: Harnas
Ja sie przesiadlem w sumei niedawno z LV 2009 na 2013. Troche roznic jest, ale jakiejs kolosalnej zmiany nie odczulem.
Ten plik tekstowy w poprzednim poscie nie ma u mnie generalnie zadnego formatu, ale tutaj na forum musialem formatowanie dodac. W resultacie przy zapisywaniu do BMP wychodzi cos w stylu *.txt.bmp ;)
W zalaczniku Vi pod LV2011.
Pozdrawiam ;)