Data i czas na wykresie
-
- Posty: 8
- Rejestracja: 25 maja 2007 00:00
Data i czas na wykresie
Witam
Mam problem z wykresem, a mianowicie nie wiem jak na osi X wyświetlić datę i czas odczytanych próbek. Wiem, że jest opcja ustawienia daty na wykresie ale pokazuje mi tylko datę 1904 roku (może nie wiem jak to skonfigurować). Odstępy czasowe próbek są takie same (np. co 5 minut) a odczyt jest co jakiś czas odświeżany.
Za wszelką pomoc z góry dziękuję.
Jeżeli podobny temat znajduje się na forum to prosze o podesłanie linka, mnie nie udało się znaleźć.
Pozdrawiam
Sir Saracen
Mam problem z wykresem, a mianowicie nie wiem jak na osi X wyświetlić datę i czas odczytanych próbek. Wiem, że jest opcja ustawienia daty na wykresie ale pokazuje mi tylko datę 1904 roku (może nie wiem jak to skonfigurować). Odstępy czasowe próbek są takie same (np. co 5 minut) a odczyt jest co jakiś czas odświeżany.
Za wszelką pomoc z góry dziękuję.
Jeżeli podobny temat znajduje się na forum to prosze o podesłanie linka, mnie nie udało się znaleźć.
Pozdrawiam
Sir Saracen
-
- Administrator
- Posty: 1315
- Rejestracja: 30 lip 2003 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Ruda Śląska
- Kontakt:
Re: Data i czas na wykresie
Witaj
Zbuduj z tablicy próbek Waveform, gdzie podajesz informację nt. czasu u daty rozpoczęcia pomiarów oraz czasu między kolejnymi próbkami. Jak to podepniesz do wykresu będziesz miał już właściwe wartości.
bogdani
Zbuduj z tablicy próbek Waveform, gdzie podajesz informację nt. czasu u daty rozpoczęcia pomiarów oraz czasu między kolejnymi próbkami. Jak to podepniesz do wykresu będziesz miał już właściwe wartości.
bogdani
- Ender
- Posty: 137
- Rejestracja: 02 cze 2005 00:00
- Wersja środowiska: LabVIEW 2009
- Lokalizacja: Cieszyn
Re: Data i czas na wykresie
Z bloczka Get Date/Time In Seconds otrzymujesz aktualny czas. Podpinając to przez "To Double Precision Float" do property node "XScale.Minimum" oraz zmieniając oczywiście format osi X na "absolute time" otrzymasz wykres, którego początkiem będzie aktualny czas systemu.
Mam nadzieję, że ta wskazówka naprowadzi Cię na właściwy trop.
Mam nadzieję, że ta wskazówka naprowadzi Cię na właściwy trop.
-Czy orał pan już kiedyś morskie fale?
Colon rzucił mu chytre spojrzenie.
-Nie złapie mnie pan na taki numer, sir - rzekł - Wszyscy wiedzą, że konie by potonęły.
Leonard umilkł na chwilę i przestroił swój mózg na Radio Colon ....
Colon rzucił mu chytre spojrzenie.
-Nie złapie mnie pan na taki numer, sir - rzekł - Wszyscy wiedzą, że konie by potonęły.
Leonard umilkł na chwilę i przestroił swój mózg na Radio Colon ....
Re: Data i czas na wykresie
Jak napisał bogdani:
Y to oczywiście tablica próbek.
Y to oczywiście tablica próbek.
-
- Posty: 8
- Rejestracja: 25 maja 2007 00:00
Re: Data i czas na wykresie
Ender zastosowałem Twój sposób bo chyba najbardziej mi pasuje ale mam mały problem. Wszystko jest ładnie ale wykres miga mi jak piorun. Przez bardzo krótką chwilę pojawia się a później znika na większość czasu i tak co sekundę. Nawet nie wiem do końca czy skala jest ta którą ustawiłem czy wskakuje standardowa. Jeżeli wiecie co robię źle to proszę o pomoc.
A drugie moje pytanko to czy można przerobić stringa z czasem spowrotem na time stamp? Bo bloczku takiego nie ma (jest tylko w drugą stronę) i nie wiem czy trzeba rozbijać tego stringa na clusters i przerabiać kolejno. Na rysunku jest ten string zaznaczony pytajnikiem.
Za pomoc z góry dziękuję
Sir Saracen
A drugie moje pytanko to czy można przerobić stringa z czasem spowrotem na time stamp? Bo bloczku takiego nie ma (jest tylko w drugą stronę) i nie wiem czy trzeba rozbijać tego stringa na clusters i przerabiać kolejno. Na rysunku jest ten string zaznaczony pytajnikiem.
Za pomoc z góry dziękuję
Sir Saracen
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Data i czas na wykresie
Zamieść kod, bo jednak nie wszystko można sobie wyobrazić ;)Na rysunku jest ten string zaznaczony pytajnikiem.
W kontekście tego co napisałeś na początku można by dać głowę, że rozwiązanie Mikrobiego Cię zadowoli. Co Ci w nim nie pasuje?
Re: Data i czas na wykresie
Stosujesz węzeł własności (property node) i to właśnie jest źle.Sir_Saracen pisze:Wszystko jest ładnie ale wykres miga mi jak piorun. Przez bardzo krótką chwilę pojawia się a później znika na większość czasu i tak co sekundę. Nawet nie wiem do końca czy skala jest ta którą ustawiłem czy wskakuje standardowa. Jeżeli wiecie co robię źle to proszę o pomoc.
Problemem property node jest to, że kopiuje do bufora w pamięci wszystkie informacje jakie są związane z dana kontrolką, aktualizuje je, a nastepnie czeka na możliwośc aktualizacji z bufora do wątku interfejsu wyświetlającego na ekranie. To właśnie widzisz jako "miganie jak piorun".
Property Node nie powinno być stosowane w pętli, a na pewno nie w głownej pętli programu - a zakładam że tak ją własnie zastosowaleś. Pokazany na diagramie sposób można zastosować na początku programu, ale nie w pętli podczas akwizycji i prezentacji danych.
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Data i czas na wykresie
Tylko, że pętla się wykonuje raz na sekundę, więc to chyba nie to. Problem jest raczej w czymś, czego nie ma na obrazku. Dobre zwrócenie uwagi na Property Node z własnością Value, nad którym jest niepodpięty terminal.Stosujesz węzeł własności (property node) i to właśnie jest źle.
Re: Data i czas na wykresie
Węzły to jednak węzły. Niemal dosłownie
ponadto mam jedno pytanie:Sir_Saracen:
dlaczego wpisujesz wartośc przez węzeł Value pomimo że masz obok własciwy terminal...?
ponadto mam jedno pytanie:Sir_Saracen:
dlaczego wpisujesz wartośc przez węzeł Value pomimo że masz obok własciwy terminal...?
-
- Posty: 8
- Rejestracja: 25 maja 2007 00:00
Re: Data i czas na wykresie
Witam
Już odpowiadam na pytania.
jogurt_owocowy: troszke niezbyt precyzyjnie opisałem swój problem dlatego rozwiązanie Mikrobiego było niewystarczające. Chodzi o to, że posiadam próbki z pewnego przedziału ale niekoniecznie muszą być wszystkie próbki tzn. jakiś pomiar mógł zostać wyłączony na chwilę, a to w konsekwencji spowoduje duże zmiany zakresu na wykresie. Ostatnia wartość na wykresie musi mieć aktualny czas (jeżeli uda się przerobić stringa na Time stamp to być może będzie to czas ostatniej próbki). Jeżeli jakieś próbki będą pogubione w czasie pomiarów to na wykresie to nie ma znaczenia. Najważniejsze żeby był dobry początek i koniec zakresu.
Mikrobi: próbowałem różne sposoby umiejscowienia property node, czy to było poza pętlą czy też na samym początku programu to nie miało to znaczenia. Być może nadal popełniam jakiś błąd.
Drugą sprawą jest to, że nie mogę na sztywno ustawić czasu początku wykresu lecz muszę odczytać go z próbki dlatego potrzebuję przerobić stringa na time stamp. Chciałem tylko zapytać czy da się to jakoś łatwo zrobić tak jak łatwo jest zamienić Time stamp na Stringa, czy trzeba rozebrać takiego stringa na części pierwsze i kolejno przerabiać na time stamp?
Załączam kod tak jak sobie tego życzył jogurt_owocowy. Wiem, że pewnie nie jest to najoptymalniejszy kod ale proszę tylko o pomoc w moim problemie. Wartości pomiarów zapamiętałem na panelu. Proszę się nie sugerować tym że wartości są co sekundę bo to będzie zmienione na 5 minut.
Już odpowiadam na pytania.
jogurt_owocowy: troszke niezbyt precyzyjnie opisałem swój problem dlatego rozwiązanie Mikrobiego było niewystarczające. Chodzi o to, że posiadam próbki z pewnego przedziału ale niekoniecznie muszą być wszystkie próbki tzn. jakiś pomiar mógł zostać wyłączony na chwilę, a to w konsekwencji spowoduje duże zmiany zakresu na wykresie. Ostatnia wartość na wykresie musi mieć aktualny czas (jeżeli uda się przerobić stringa na Time stamp to być może będzie to czas ostatniej próbki). Jeżeli jakieś próbki będą pogubione w czasie pomiarów to na wykresie to nie ma znaczenia. Najważniejsze żeby był dobry początek i koniec zakresu.
Mikrobi: próbowałem różne sposoby umiejscowienia property node, czy to było poza pętlą czy też na samym początku programu to nie miało to znaczenia. Być może nadal popełniam jakiś błąd.
Wpisywanie wartości przez Value powoduje miganie wykresu (i być może nie zmieniają się wtedy czasy na zakresie wykresu) natomiast wpisywanie przez terminal powoduje, że wykres jest przez dłuższy czas wyświetlany ale powoduje to też zmianę zakresu na wykresie i jest wtedy data z 1904 roku... Nie wiem jak rozwiązać ten problem.dlaczego wpisujesz wartośc przez węzeł Value pomimo że masz obok własciwy terminal...?
Drugą sprawą jest to, że nie mogę na sztywno ustawić czasu początku wykresu lecz muszę odczytać go z próbki dlatego potrzebuję przerobić stringa na time stamp. Chciałem tylko zapytać czy da się to jakoś łatwo zrobić tak jak łatwo jest zamienić Time stamp na Stringa, czy trzeba rozebrać takiego stringa na części pierwsze i kolejno przerabiać na time stamp?
Załączam kod tak jak sobie tego życzył jogurt_owocowy. Wiem, że pewnie nie jest to najoptymalniejszy kod ale proszę tylko o pomoc w moim problemie. Wartości pomiarów zapamiętałem na panelu. Proszę się nie sugerować tym że wartości są co sekundę bo to będzie zmienione na 5 minut.
Re: Data i czas na wykresie
Popatrzyłem na kod i po otarciu łez ;) kilka wniosków:
0. pd (trywialny) :!:
1. trzy pętle, które separują dane z ramki można zrobić prościej i - moim zdaniem - należy zamknąć do subVIjów :idea:
2. zastanawiałem się przez chwilę i nadal nie rozumiem dlaczego nie chcesz zastosować rozwiązania bogdaniego, które pokazałem na diagramie we wcześniejszej wypowiedzi :?:
0. pd (trywialny) :!:
1. trzy pętle, które separują dane z ramki można zrobić prościej i - moim zdaniem - należy zamknąć do subVIjów :idea:
2. zastanawiałem się przez chwilę i nadal nie rozumiem dlaczego nie chcesz zastosować rozwiązania bogdaniego, które pokazałem na diagramie we wcześniejszej wypowiedzi :?:
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Data i czas na wykresie
Czyżby chodziło Ci o takie cośNajważniejsze żeby był dobry początek i koniec zakresu.
[img]http://www.labview.pl/uploads/veir/X%20 ... 0Style.gif[/img]
?
A jeśli chodzi o Twoje drugie pytanie dotyczące konwersji stringa na Time Stamp to sprawa jest trudniejsza, choć nie niewykonalna. Do czego Ci to jest potrzebne?
-
- Posty: 8
- Rejestracja: 25 maja 2007 00:00
Re: Data i czas na wykresie
Jak już wspomniałem wcześniej to nie jest najoptymalniejszy kod...
Mikrobi
jogurt_owocowy moja wypowiedź:
Mam nadzięję, że jakoś to zrozumiecie
Mikrobi
a czy zastanawiałeś się co się stanie jak nie będzie pełnego kompletu pomiarów? Np. wyłączymy sobie pomiar na 10 minut, które znajdują się wewnątrz zakresu. Końcowy czas na wykresie będzie pomniejszony o czas przerwania pomiaru a właśnie tam ma być teraźniejszy czas. Być może źle podchodzę do tego problemu.zastanawiałem się przez chwilę i nadal nie rozumiem dlaczego nie chcesz zastosować rozwiązania bogdaniego, które pokazałem na diagramie we wcześniejszej wypowiedzi
jogurt_owocowy moja wypowiedź:
nie chodziło mi o wygląd wykresu tylko o to, żeby czas pierwszej próbki pomiarowej wskazywał początek zakresu na wykresie natomiast żeby koniec zakresu miał czas teraĹşniejszy (lub czas ostatniej próbki) i właśnie dlatego potrzebuję przerobić stringa na Time stamp aby mieć te czasy na zakresie wykresu.Najważniejsze żeby był dobry początek i koniec zakresu.
Mam nadzięję, że jakoś to zrozumiecie
-
- Posty: 8
- Rejestracja: 25 maja 2007 00:00
Re: Data i czas na wykresie
Chciałem wam podziękować za pomoc. Wasze podpowiedzi pomogły mi dojść do rozwiązania
Pozdrawiam
Sir Saracen
Pozdrawiam
Sir Saracen
Re: Data i czas na wykresie
:arrow: Jeśli wyłączysz pomiar to wartościami wynikowymi są zera.Sir_Saracen pisze:Jak już wspomniałem wcześniej to nie jest najoptymalniejszy kod...
Mikrobia czy zastanawiałeś się co się stanie jak nie będzie pełnego kompletu pomiarów? Np. wyłączymy sobie pomiar na 10 minut, które znajdują się wewnątrz zakresu. Końcowy czas na wykresie będzie pomniejszony o czas przerwania pomiaru a właśnie tam ma być teraźniejszy czas. Być może źle podchodzę do tego problemu..zastanawiałem się przez chwilę i nadal nie rozumiem dlaczego nie chcesz zastosować rozwiązania bogdaniego, które pokazałem na diagramie we wcześniejszej wypowiedzi
:arrow: jako wskazówka: przemyśl jednak zastosowanie XYGraph : jako pierwsza tablica - tablica timestampów a jako druga - tablica próbek
:arrow: każdy timestamp w tablicy powinien byc jednak pobierany w tej samej chwili co próbka.
...o własnie i tak
8)