APRS2RRD Second Edition - wersja 1.0 wydana
Siema,
Jako mały prezent na święta wrzucam najnowszą i pierwszą stabilną wersję mojego programu APRS2RRD, którego od przeszło 4 lat używam do archiwizowania i wyświetlania danych pogodowych z moich stacji. Wszystkie strony z domeny http://pogoda.cc , np. stacja na Koziej Górze w Bielsku (http://kozia.pogoda.cc) są właśnie obsługiwane przez aplikację APRS2RRD.

Programu używam od lat ale dopiero teraz udało się wyeliminować jego wady, które ciągnęły się przez ten okres. Głównym i podstawowym problemem z nim był bardzo niedbale a momentami wręcz ohydnie napisany kod, zawierający liczne bugi powodujące wysypywanie się aplikacji. W moim przypadku zdarzało się, że program potrafił działać kilka tygodni bez problemu a czasami wysypywał się raz na kilka godzin z powodu na przeróżne błędy obracające się wokół AccessViolation. Obecnie kod został w większości przepisany od zera. Oferuje prawie taką samą funkcjonalność ale w oparciu o zupełnie inne technologie i biblioteki języka C++ co zapewnia stabilną i wolną od bugów pracę

Aktualne możliwości programu przedstawiają się następująco:
strzałka Komunikacja z serwerami APRS-IS w oparciu o bibliotekę Boost ASIO (Asynchronous Input/Output) i standardowy protokół tekstowy
strzałka Parsowanie otrzymanych w protokole tekstowym APRS-IS ramek, celem wydobycia ich znaku źródłowego, docelowego, ścieki pakietowej i samych przesyłanych w nich danych
strzałka Jeżeli otrzymana ramka jest ramką z danymi pogodowymi, parsowanie temperatury, ciśnienia, wilgotności oraz parametrów wiatru (kierunek, średnia, porywy).
strzałka Jeżeli otrzymana ramka zawiera dane telemetryczne a użytkownik zdecydował się na włączenie opcji powodującej użycie kanału piątego telemetrii jako odczytu temperatury, użycie tej temperatury w dalszym procesie.
strzałka Ograniczenie "slew rate" czyli szybkości narastania bądź opadania wartości sygnałów. Pozwala na wygładzenie "szpilek", które mogą pojawiać się na skutek niepoprawnej pracy przyrządów pomiarowych na stacji i powodować zmiany wartości odczytów szybsze, niż jest to fizycznie możliwe.
strzałka Korekcja kierunku wiatru pozwalająca dodać bądź odjąć zadany kąt od wartości otrzymanej z ramek pogodowych. Korekcja odbywa się wektorowo, tj. z odpowiednią obsługą przejścia przez 0/360
strzałka Zapis przetworzonych parametrów do plików kołowej bazy danych RRD przy pomocy rrdtool.
strzałka Kreślenie przy pomocy aplikacji rrdtool wykresów na podstawie danych zapisanych w plikach RRD.
strzałka Generowanie statycznej strony WWW zawierającej numeryczne dane z ostatnio odebranej ramki, oraz wykresy pokazujące zmianę parametrów na przestrzeni czasu. Strona ta może być w pewnym ograniczonym stopniu dostosowywana przy pomocy pliku konfiguracyjnego.
strzałka Opcjonalny zapis danych do bazy danych MySQL.

Instrukcja instalacji i konfiguracji: https://github.com/SP8EBC/aprs2rrd-se/blob/master/doc/README-pl.pdf

Kod źródłowy, dokumentacja, przykładowa konfiguracja itp: https://github.com/SP8EBC/aprs2rrd-se


  PRZEJDŹ NA FORUM