Witam.
W związku z niedawnym przejściem na czas letni pojawił mi się problem w aplikacji odczytującej dane z pamięci rejestratora danych.
Mianowicie urządzenie zewnętrzne dokonuje pomiarów i zapisuje je w wewnętrznej pamięci zgodnie z czasem wg swojego zegara RTC który nie uwzględnia zmiany czasu letni/zimowy.
Odczytując pamięć pomiarów z urządzenia dokonuję sprawdzenia chronologii kolejnych pomiarów i w przypadku gdyby była ona zaburzona wyświetlam odpowiedni komunikat. Niestety podczas odczytu pomiarów i analizy chronologii LV automatycznie wprowadza korektę czasu z zimowego na letni o 1 godz w odczytanej próbce z dnia 30 kwietnia o godz 1.00 a to powoduje że procedura zajmująca się kontrolą chronologii fałszywie wystawia komunikat.
W tej sytuacji nie chciałbym aby LV automatycznie wprowadzało korektę z odczytanej ramki ale nie bardzo wiem jak to zrobić. LV powinno bazować i dokonywać porównań tylko i wyłącznie wg czasu odczytanego z rejestratora.
Nieporządana zmiana na czas letni
Nieporządana zmiana na czas letni
Sugeruje dopisać moduł korekty w zależności od daty.
Na Wikipedii masz konkretnie kiedy się zmienia czas z zimowego na letni i w tym czasie zmieniać wartość korekty. Dla zmiany na czas letni jest to ostatnia niedziela marca godz 3, na czas zimowy nie pamiętam.
Możesz też używać jakiegoś serwera czasu z gmt+0 i z nim porównywać czas z Windows i obliczać korekte.
Na Wikipedii masz konkretnie kiedy się zmienia czas z zimowego na letni i w tym czasie zmieniać wartość korekty. Dla zmiany na czas letni jest to ostatnia niedziela marca godz 3, na czas zimowy nie pamiętam.
Możesz też używać jakiegoś serwera czasu z gmt+0 i z nim porównywać czas z Windows i obliczać korekte.
Ja tu tylko wklejam linki ale i tak możesz kliknąć pochwal ;)
Nieporządana zmiana na czas letni
Robert79
Żeby LV nie zmieniał czasów musisz przy ostatnim elemencie klastra, gdzie tworzysz datę, podpiąć wartość -1. Wtedy Date/Time To Seconds Function nie będzie dostosowywało się do strefy czasowej.
Pozdrawiam
Żeby LV nie zmieniał czasów musisz przy ostatnim elemencie klastra, gdzie tworzysz datę, podpiąć wartość -1. Wtedy Date/Time To Seconds Function nie będzie dostosowywało się do strefy czasowej.
Pozdrawiam