Problem z czasem
Problem z czasem
Witam!
Jako początkujący mam problem z programem a mianowicie chcę zapisywać do tabeli wyniki pomiaru do pierwszego wiersza i po określonym czasie zmieniać numer wiersza na kolejny i tak kilka razy aż minie czas całego pomiaru. Dzięki za wskazówki.
Jako początkujący mam problem z programem a mianowicie chcę zapisywać do tabeli wyniki pomiaru do pierwszego wiersza i po określonym czasie zmieniać numer wiersza na kolejny i tak kilka razy aż minie czas całego pomiaru. Dzięki za wskazówki.
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Problem z czasem
Witaj.
Przydałoby się więcej szczegółów. Co to będą za pomiary, jak wykonywane (co stały okres czasu czy może mniej lub bardziej losowy) itp.
Chodzi o to, że od tego zależy architektura programu, a od niej z kolei postać optymalnego rozwiązania Twojego problemu. Tak czy inaczej będzie się ono opierać o klocki z paletki Timing (albo dawniej: Time & Dialog): Tick Count, Get Date/Time... itp.
Pozdrawiam
Przydałoby się więcej szczegółów. Co to będą za pomiary, jak wykonywane (co stały okres czasu czy może mniej lub bardziej losowy) itp.
Chodzi o to, że od tego zależy architektura programu, a od niej z kolei postać optymalnego rozwiązania Twojego problemu. Tak czy inaczej będzie się ono opierać o klocki z paletki Timing (albo dawniej: Time & Dialog): Tick Count, Get Date/Time... itp.
Pozdrawiam
Re: Problem z czasem
Ogólnie jest to pomiar wartości skutecznej napięcia. W tym przykładzie jest on tylko symulowany. Chodzi o to, żeby zapisywać mierzone wartości powiedzmy przez 5 minut, ale żeby co minute (stałe odstępy czasu) zmieniał sie wiersz zapisywanych wartości w tabeli.
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Problem z czasem
Może coś takiego?
Pozdrawiam
Pozdrawiam
Problem z czasem
Dzięki wielkie, to rozwiązanie okazało się bardzo pomocne. Mam jeszcze jedno pytanie, jak można zrobić żeby pomiar wartości skutecznej odbywał się co pół okresu napięcia? I jeszcze jedno, jak można zapisać wyniki pomiarów do pliku, bo wcześniej jak miałem tablicę typu array to używałem bloczku write to spreadsheet file, a teraz tak się już nie da.
Pozdrawiam
Pozdrawiam
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Problem z czasem
Oczywiście, że się da:
[img]http://www.labview.pl/uploads/veir/writ ... length.gif[/img]
W LV da się wszystko ;]
[img]http://www.labview.pl/uploads/veir/writ ... length.gif[/img]
W LV da się wszystko ;]
Problem z czasem
No i kolejny sukces 

Ostatnio zmieniony 30 mar 2008 16:48 przez kozik, łącznie zmieniany 1 raz.
Problem z czasem
No to pojawił się błąd którego wcześniej nie zauważyłem. Chodzi mianowicie o to, że gdy np. ustawiam długość pomiaru na 1s, to liczba próbek zapisywanych w tabeli mi maleje. A w sumie cały czas powinna być taka sama (zbliżona) :/
Re: Problem z czasem
kozik pisze:No to pojawił się błąd którego wcześniej nie zauważyłem. Chodzi mianowicie o to, że gdy np. ustawiam długość pomiaru na 1s, to liczba próbek zapisywanych w tabeli mi maleje. A w sumie cały czas powinna być taka sama (zbliżona) :/ Zauważyłem, że ma to związek z zapisem do pliku, który jest ponawiany z każdą iteracją i coraz więcej chyba pamięci zajmuje przez co zwalnia się pomiar.
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Problem z czasem
Pokaż diagram.
Re: Problem z czasem
Jeżeli pętla for jest poza pętlą while to zapis do pliku praktycznie nie następuje :/ jeżeli ją przeniosę do struktury to zapis już jest ale liczba próbek z kolejnym wierszem się zmniejsza (przy dłuższym czasie pomiaru) i wychodzą bzdury.
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Problem z czasem
Nie mogę teraz spojrzeć w program, ale tak strzelę:
Jeśli używasz rozwiązania z obrazków powyżej, to do kończenia programu nie używaj przycisku Abort tylko guzika STOP na panelu!
Jeśli chodzi o zmniejszającą się liczbę próbek... Czy chodzi Ci o to, że w pierwszym wierszu tabeli jest więcej próbek niż w pozostałych? Jeśli tak, to wynika to ze specyfiki klocka Wait Until Next Multiple. Zamień go na Wait i będzie ok.
Jeśli używasz rozwiązania z obrazków powyżej, to do kończenia programu nie używaj przycisku Abort tylko guzika STOP na panelu!
Jeśli chodzi o zmniejszającą się liczbę próbek... Czy chodzi Ci o to, że w pierwszym wierszu tabeli jest więcej próbek niż w pozostałych? Jeśli tak, to wynika to ze specyfiki klocka Wait Until Next Multiple. Zamień go na Wait i będzie ok.
Problem z czasem
No faktycznie jak zatrzymam program przyciskiem to sie pojawia
Ale mam taki problem przy tym ze w pierwszym wierszu jest o jedną próbkę wiecej niz w pozotalych i jak wgrywam potem dane z pliku to tabela uzupełnia mi się zerami o tą jedną wartość a tak nie moze byc :/

- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Problem z czasem
Właśnie dlatego klocek Wait Until Next Multiple zmień na Wait.Ale mam taki problem przy tym ze w pierwszym wierszu jest o jedną próbkę wiecej niz w pozotalych
W rozwiązaniu z obrazka pierwszego taka szczególna struktura do przechowywania danych (tablica jednoelementowych klastrów z tablicami) jest użyta właśnie dlatego, aby możliwe było przechowywanie serii pomiarów o różnych długościach. Z Twojego opisu nie wynika, że istnieje jakaś gwarancja, że każda seria będzie zawierać jednakową liczbę probek. Jeśli masz taką pewność, albo jeśli przerobisz program tak, aby tak było (nowy wiersz zapala się nie po odmierzeniu danego okresu czasu, a po odliczeniu odpowiedniej liczby próbek) to: 1. Możesz, (ale nie musisz) zmienić sposób przechowywania danych na zwykłą tablicę 2D. 2. Nie będziesz mieć problemów z wgrywaniem danych z pliku (zapewne za pomocą Read From Spreadsheet File).Chodzi o to, żeby zapisywać mierzone wartości powiedzmy przez 5 minut, ale żeby co minute (stałe odstępy czasu) zmieniał sie wiersz zapisywanych wartości w tabeli.
Przed rozpoczęciem kodowania trzeba nakreślić jakieś założenia. To, które teraz jest interesujące to założenie dotyczące liczby próbek w kolejnych seriach. Musi być taka sama czy nie?
Problem z czasem
Pomiar nawiązuje do częstotliwości sieci. Teoretycznie, częstotliwość jej jest stała, więc przy stałym pomiarze wartości skutecznej powinienem uzyskiwać w danym przedziale czasu tą samą liczbę próbek. Teoretycznie też jeżeli liczba próbek w danym odstępie czasu będzie zbliżona (różnica 1-2 próbek) to nie stanowi to problemu. Najważniejszy jest czas pomiaru!!
Jak już było wspomniane w innym temacie w sumie nie mam gwarancji, że częstotliwość sieci się minimalnie nie zmieni i nie będę idealnie trafiał na półokres do wyznaczenia RMS. Nad tym muszę się jeszcze zastanowić.
Problem w tym, że zamieniłem blok wait until next multiple na wait i nadal mam w pierwszym wierszu o jedną próbkę więcej. Nie przeszkadzało by mi to gdyby przy odczycie tablica nie byla uzupełniana dodatkowo zerami o tą jedną komórkę w pozostałych wierszach :/
Pozdrawiam (mam nadzieję że dosyć zrozumiale napisałem)
Jak już było wspomniane w innym temacie w sumie nie mam gwarancji, że częstotliwość sieci się minimalnie nie zmieni i nie będę idealnie trafiał na półokres do wyznaczenia RMS. Nad tym muszę się jeszcze zastanowić.
Problem w tym, że zamieniłem blok wait until next multiple na wait i nadal mam w pierwszym wierszu o jedną próbkę więcej. Nie przeszkadzało by mi to gdyby przy odczycie tablica nie byla uzupełniana dodatkowo zerami o tą jedną komórkę w pozostałych wierszach :/
Pozdrawiam (mam nadzieję że dosyć zrozumiale napisałem)