Autor – Piotr Musiński
1. Cel i podstawowe założenia
Celem pracy jest zaprojektowanie i implementacja aplikacji wyświetlającej pozycje obiektów wysyłających dane w systemie ADS-B. Spodziewanym rezultatem pracy będzie system w postaci aplikacji internetowej wyświetlającej pozycję obiektów. W ramach pracy przeprowadzona zostanie analiza problemu pozyskiwania danych i wizualizacji pozycji obiektów oraz analiza istniejących rozwiązań. Przedstawiona zostanie koncepcja rozwiązania własnego, projekt systemu oraz analiza responsywności interfejsu aplikacji.
2. Realizacja projektu
Rezultatem pracy jest system składający się z aplikacji serwerowej, aplikacji klienckiej, bazy danych i modułu dostarczającego dane z systemu ADS-B. Platforma oferuje możliwość wyświetlania danych o obiektach latających oraz ich pobieranie przez interfejs REST API. Witryna umożliwia dostęp do szczegółowych informacji o samolotach oraz historycznych danych o lotach. Dzięki zastosowanemu mechanizmowi natychmiastowej komunikacji dane o pozycjach przekazywane są w czasie rzeczywistym.
3. Produkt końcowy – stworzone oprogramowanie
3.1 Podstawowe wymagania aplikacji
Aplikacja wymaga instalacji i konfiguracji: bazy danych, modułu udostępniającego dane oraz aplikacji serwerowej.
3.2 Funkcje oprogramowania
Po uruchomieniu aplikacji i wprowadzeniu adresu witryny użytkownikowi wyświetla się strona domowa, opisująca jej zawartość. Następnie po wybraniu odnośnika „Map”, w zależności od urządzenia, na którym wyświetlana jest strona, zostanie dostosowany tryb widoku. Jeśli strona będzie wyświetlana na komputerze, interfejs dostosuje się do orientacji poziomej.
Rysunek 1 Widok mapy w aplikacji na komputerze
Gdy aplikacja zostanie uruchomiona na tablecie lub smartfonie, tryb widoku powinien umożliwiać jej wyświetlanie w orientacji poziomej i pionowej.
Rysunek 2 Widok mapy w aplikacji na tablecie
Rysunek 3 Widok mapy w aplikacji na smartfonie
Po naciśnięciu na ikonę obiektu zostanie wyświetlone okno dialogowe z podstawowymi informacjami. Rysunek 4 prezentuje mapę wraz z oknem zawierającym numer ICAO samolotu, znak wywoławczy, informacje o wysokości, kierunku lotu i jego położeniu oraz odnośniki do podstron. Wybierając hiperłącze „Flights info”, użytkownik zostanie przeniesiony do strony z informacjami o lotach historycznych wybranego obiektu.
Rysunek 4 Widok mapy w aplikacji z otwartym oknem informacyjnym
Wybierając pozycję „Flights info” z menu lub przechodząc pod odnośnik w oknie dialogowym na mapie, zostanie wyświetlona strona z historią lotów. Rysunek 5 prezentuje widok przelotów wybranego obiektu latającego. W wyświetlanej tabeli znajduje się numer ICAO samolotu, kiedy rozpoczął lot, z jakiego lotniska oraz na jakie lotnisko zmierzał. Jeśli podczas przelotu miały miejsca międzylądowania, zostaną wyświetlone w kolumnie „Stops”.
Przechodząc do podstrony „Planes info”, zostanie wyświetlona tabela ze szczegółami dotyczącymi samolotu. Rysunek 6 prezentuje widok szczegółów takich jak znak wywoławczy, rejestracja, model samolotu, etc. Zastosowany na stronie model tabeli umożliwia wybór ilości wyświetlanych wierszy.
Rysunek 5 Widok lotów historycznych
Rysunek 6 Widok szczegółów obiektów
Widok bieżących lotów dostępny jest po wybraniu z menu aplikacji odnośnika „Current planes”. Na tej stronie wyświetlane są informacje o samolotach, które wysyłają sygnał ADS-B w czasie rzeczywistym. Zawartość tabeli może być sortowana oraz filtrowana, co przedstawia Rysunek 7.
Rysunek 7 Widok bieżących lotów
4. Informacje o możliwości wykorzystania / wykorzystaniu pracy
Aplikacja opisana w pracy może być wykorzystana w różnych obszarach związanych z monitorowaniem i analizą danych lotniczych. System może być używany przez entuzjastów lotnictwa do śledzenia lotów samolotów w czasie rzeczywistym, nawet w miejscach, gdzie dostęp do Internetu jest ograniczony lub brak go w ogóle. Choć aplikacja została stworzona z myślą o amatorskim użytku, może być również wykorzystywana w celach profesjonalnych, np. przez małe lotniska lub prywatne firmy lotnicze do monitorowania lokalizacji swoich samolotów i zarządzania nimi w czasie rzeczywistym.