Licznik Klop liczy impulsy.
Przy ustawieniu "rosnący i malejący", w sytuacji, kiedy kolejny odczyt jest mniejszy od poprzedniego, pokazuje właściwe wartości, ale jako ujemne.
Przy ustawieniu "zawsze rosnący" wycina kolejne mniejsze od poprzednich wartości (nie zawsze) i pokazuje info "Reset licznika" na wykresie.
Jak to ustawić, żeby wyglądało "normalnie"?
Na stronie i w apce na IOS wygląda to tak samo "niepoprawnie".
Wykresy liczników Klop
-
- Posts: 353
- Joined: Thu Feb 09, 2023 1:25 pm
You do not have the required permissions to view the files attached to this post.
-
- Posts: 11112
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Wykresy liczników (w tym KLOP) pokazują zawsze "przyrosty" (dodanie i ujemne).
Licznik impulsów nigdy nie powinien maleś. Bo czymże jest ujemny impuls?
Jeśli chcesz widzieć po prostu mierzoną wartość, to użyj KPOP-a.
Licznik impulsów nigdy nie powinien maleś. Bo czymże jest ujemny impuls?

Jeśli chcesz widzieć po prostu mierzoną wartość, to użyj KPOP-a.
-
- Posts: 353
- Joined: Thu Feb 09, 2023 1:25 pm
Ok, te wykresy są generowane w oparciu o dane powstające liczenia impulsów w odniesieniu do okresu pomiaru (tu akurat 5s). Po każdym okresie są zerowane - to licznik impulsów dla prędkości chwilowej wiatru.
W sumie to zrezygnuję z historii tego Klopa, mam drugi, który po prostu liczy impulsy i wysyła wyniki co 10 min do Supli - i tam jest ok, nie ma ujemnych wartości.
Muszę tylko przeliczyć w konfiguracji na stronie impulsy/ obroty anemometru z 10 minut na m/s i będę miał historię prędkości wiatru.
Dzięki.
W sumie to zrezygnuję z historii tego Klopa, mam drugi, który po prostu liczy impulsy i wysyła wyniki co 10 min do Supli - i tam jest ok, nie ma ujemnych wartości.
Muszę tylko przeliczyć w konfiguracji na stronie impulsy/ obroty anemometru z 10 minut na m/s i będę miał historię prędkości wiatru.
Dzięki.
-
- Posts: 11112
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Jeśli liczysz ilość impulsów w jednostce czasu, to to już nie jest licznik impulsów, tylko pomiar czegoś zbliżonego do prędkości. Dlatego ten kanał powinien być kpop-emiM@rek wrote: Wed May 29, 2024 1:53 pm Ok, te wykresy są generowane w oparciu o dane powstające liczenia impulsów w odniesieniu do okresu pomiaru (tu akurat 5s). Po każdym okresie są zerowane - to licznik impulsów dla prędkości chwilowej wiatru.
W sumie to zrezygnuję z historii tego Klopa, mam drugi, który po prostu liczy impulsy i wysyła wyniki co 10 min do Supli - i tam jest ok, nie ma ujemnych wartości.
Muszę tylko przeliczyć w konfiguracji na stronie impulsy/ obroty anemometru z 10 minut na m/s i będę miał historię prędkości wiatru.
Dzięki.
-
- Posts: 353
- Joined: Thu Feb 09, 2023 1:25 pm
@Klew:klew wrote: Wed May 29, 2024 2:00 pm Jeśli liczysz ilość impulsów w jednostce czasu, to to już nie jest licznik impulsów, tylko pomiar czegoś zbliżonego do prędkości. Dlatego ten kanał powinien być kpop-em
za Twoją radą zmieniłem moduły w Anemometrze:
KLOP - liczy impulsy
KPOP - mierzy szybkość na podstawie liczby impulsów z KLOPa
pomiar jest w czasie 5 sekund, przeliczenie na szybkość i aktualizacja SetValue kanału KPOP.
No i robią się historyczne wykresy prędkości - fajne.
Ale: jako, że do serwera Supli dane trafiają co 10 minut, wypadałoby uśrednić pomiary 5-ciosekundowe w czasie 10-min.
No i zsynchronizować wysyłanie z transmisją do serwera.
Bo oprócz pokazywania w apce wartości chwilowych aktualizowanych co 5 sekund (u mnie), chciałbym do serwera wysyłać uśrednione prędkości z 10 min, żeby na wykresach były średnie 10-cio min. a nie przypadkowa wartość chwilowa odczytana w chwili synchronizacji.
Na wykresach widzę, że znacznik czasu danych ma końcówkę minutową "6": 06, 16, 26 itd...
Pytanie: jak mam sprawdzić/ zrobić tę synchronizację?
-
- Posts: 11112
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Wartość średnia z 10 min jest dostępna w wykresach. Ja bym tutaj na urządzeniu już nic nie przerabiał, bo jak z urządzenia zaczniesz wysyłać średnią z 10 min, to stracisz info o pomiarach chwilowych, min/max.iM@rek wrote: Thu Jun 06, 2024 7:47 am@Klew:klew wrote: Wed May 29, 2024 2:00 pm Jeśli liczysz ilość impulsów w jednostce czasu, to to już nie jest licznik impulsów, tylko pomiar czegoś zbliżonego do prędkości. Dlatego ten kanał powinien być kpop-em
za Twoją radą zmieniłem moduły w Anemometrze:
KLOP - liczy impulsy
KPOP - mierzy szybkość na podstawie liczby impulsów z KLOPa
pomiar jest w czasie 5 sekund, przeliczenie na szybkość i aktualizacja SetValue kanału KPOP.
No i robią się historyczne wykresy prędkości - fajne.
Ale: jako, że do serwera Supli dane trafiają co 10 minut, wypadałoby uśrednić pomiary 5-ciosekundowe w czasie 10-min.
No i zsynchronizować wysyłanie z transmisją do serwera.
Bo oprócz pokazywania w apce wartości chwilowych aktualizowanych co 5 sekund (u mnie), chciałbym do serwera wysyłać uśrednione prędkości z 10 min, żeby na wykresach były średnie 10-cio min. a nie przypadkowa wartość chwilowa odczytana w chwili synchronizacji.
Na wykresach widzę, że znacznik czasu danych ma końcówkę minutową "6": 06, 16, 26 itd...
Pytanie: jak mam sprawdzić/ zrobić tę synchronizację?
Może tutaj warto się zastanowić nad rozbudową apek, aby na liście pokazywały wartość chwilową, albo średnią/min/max z jkaiegoś okresu?
-
- Posts: 353
- Joined: Thu Feb 09, 2023 1:25 pm
Ja to chciałem zrobić w nast. sposób:
Mam KPOP do prezentacji wartości chwilowej aktualizowanej co 5s.
Zrobię drugi KPOP, który będzie dostawał uśrednioną prędkość z 10 min.
I tę wartość będę dodatkowo wysyłać do serwera.
Czyli będą dwa wykresy: prędkości chwilowych i prędkości średnich 10-cio minutowych.
Tylko nie wiem, jak się zsynchronizować z wysyłkami co 10 minut.
Dlatego pytam, gdzie jest ta procedura wysyłania.
Chociaż w sumie... może ta synchronizacja nie jest aż tak potrzebna, najwyżej wartości będą "przesunięte" względem 10-cio minutowej synchronizacji oprogramowania.
Tak czy inaczej -
1. W którym module jest ta procedura wysyłania co 10 min?
2. Jak się z nią synchronizować?
3. W moim przypadku, na różnych wykresach, z różnych modułów, widzę, że dane mają końcówkę minutową "6" - przypadek, czy od czegoś to zależy?
-
- Posts: 11112
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Możesz trzymać średnią kroczącą i wysyłać ją dowolnie często (jak się zmieni).iM@rek wrote: Thu Jun 06, 2024 9:32 am Tylko nie wiem, jak się zsynchronizować z wysyłkami co 10 minut.
Dlatego pytam, gdzie jest ta procedura wysyłania.
Chociaż w sumie... może ta synchronizacja nie jest aż tak potrzebna, najwyżej wartości będą "przesunięte" względem 10-cio minutowej synchronizacji oprogramowania.
Tak czy inaczej -
1. W którym module jest ta procedura wysyłania co 10 min?
2. Jak się z nią synchronizować?
3. W moim przypadku, na różnych wykresach, z różnych modułów, widzę, że dane mają końcówkę minutową "6" - przypadek, czy od czegoś to zależy?
Np. jeśli robisz pomiar co 5 s, to robisz tablicę "pomiary[120]" i ją zapełniasz pomiarami i przy każdym nowym pomiarze, obliczasz średnią i ją wstawiasz do KPOP'a średniego.
Wtedy ten kanał będzie zawsze pokazywał średnią z ostatnich 10 min pracy.
ad 3 - to zależy od tego kiedy serwer wystartował. Jeśli uruchomił się o 12:36 to kolejne zapisy w historii będą co 10 min od tego czasu. Stąd masz te 6

-
- Posts: 353
- Joined: Thu Feb 09, 2023 1:25 pm
Dzięki, zrobiłem tablicę dynamiczną
Code: Select all
int * tIC0_Val = new int[MeasCount] (); // tabl. na wart. pomiarów dla Avg 10 min z zerowaniem
Po restarcie tworzy tę tablicę, wypełnia zerami.
Potem co 5 sekund wstawia do niej kolejną wartość,
sumuje te 120 wartości, liczy średnią i aktualizuje KPOP-10min.
Ale teraz pytanie: Ta tablica chyba powinna być we FRAM?