Tam i z powrotem – oprogramowanie w segmencie naziemnym dla dużych konstelacji małych satelitów
W ostatnich latach powstał nowy paradygmat w zakresie satelitów komunikacyjnych. Przeszliśmy od modelu opartego na flotach zawierających kilka „dużych” satelitów GEO do nowego podejścia, zakładającego obecność wielu (ponad 100) konstelacji satelitów LEO. Niektóre podmioty, takie jak OneWeb czy SpaceX, zaczęły już wdrażać konstelacje o tak dużych rozmiarach, podczas gdy Amazon i inne są również na drodze do ich implementacji.
Niemniej jednak ta nowa koncepcja wiąże się z nowymi, ogromnymi wyzwaniami, nie tylko w zakresie pojazdów kosmicznych, ale także segmentu naziemnego. Tradycyjnie stosowane rozwiązania dla oprogramowania sterującego naziemnych centrów kontroli satelitów GEO nie znajdują już dłużej zastosowania w przypadku dużych konstelacji LEO.
Kluczowym czynnikiem jest tutaj skalowalność. Zarówno anteny naziemne, jak i oprogramowanie sterujące muszą być w pełni skalowalne do setek, a nawet tysięcy satelitów w miarę rozrostu konstelacji, przy jednoczesnym zapewnieniu opłacalności, a tym samym rozwiązań, które będą wykonalne.
W związku z tym w 2019 roku podjęliśmy decyzję o wdrożeniu w życie zupełnie nowej, odmiennej od innych, przełomowej inicjatywy, mającej na celu stworzenie nowego produktu autorstwa GMV, który będzie odpowiedzialny za monitorowanie oraz kontrolę dużych konstelacji małych satelitów i nanosatelitów.
Przyświecającą temu projektowi ideą nie było wykonanie klasycznego projektu w formie z góry określonej liczby kamieni milowych o zamkniętym zakresie. Zamiast tego zdefiniowaliśmy ramy uwzględniające dogłębne zbadanie potrzeb naszych klientów, a także wysoki poziom swobody zespołu we wdrażaniu innowacyjnych rozwiązań. Następnie rozpoczęliśmy implementowanie tego, co nazwaliśmy inicjatywą MiniSats, która ma dwa różne główne cele.
Pierwszym celem było opracowanie całkiem nowego oprogramowania dla sektora naziemnego. Obecne produkty firmy GMV służące do monitorowania oraz kontroli stacji naziemnych i satelitów zapewniają niezwykle szeroki zakres funkcjonalności. Są one doskonałym rozwiązaniem dla klasycznych flot satelitów GEO, a nawet dla konstelacji satelitów średniej wielkości. Uznaliśmy jednak, że to podejście nie pasuje do nowego paradygmatu, jakiego wymagają konstelacje małych satelitów i nanosatelitów. Za niezbędne w tym przypadku uznano zaproponowanie całkiem odmiennej inicjatywy, bazującej na prostszym podejściu i skoncentrowanej na wysoce skalowalnym i opłacalnym rozwiązaniu. Dostrzegliśmy również potrzebę zdefiniowania interfejsu umożliwiającego interoperacyjność nie tylko z naszymi istniejącymi już produktami marki GMV, ale także z innymi rozwiązaniami zewnętrznymi.
Drugim celem było dostosowanie oferty oprogramowania dla sektora naziemnego autorstwa GMV do nowoczesnych technologii. Niebywała ewolucja oprogramowania, jaką możemy obecnie zaobserwować, napędzana w szczególności przez Internet i ogólnie przez środowisko webowe, sprawiła, że zrozumieliśmy, jakie korzyści płyną z wykorzystania utworzonych już komponentów oraz nowoczesnych architektur, powszechnie dziś stosowanych w oprogramowaniu, i postanowiliśmy włączyć je do naszych systemów.
Następnie do celów realizacji projektu wytypowaliśmy grupę doświadczonych inżynierów wywodzących się z różnych obszarów pionu Kontroli Satelitarnej i Planowania Misji w GMV. Celem tego przedsięwzięcia była współpraca z personelem mogącym pochwalić się nie tylko udokumentowanym doświadczeniem w zakresie opracowywania oprogramowania naziemnego, ale także dużym doświadczeniem operacyjnym.
Zdecydowaliśmy się pracować w oparciu o ramy modelu Agile, a dokładnie SCRUM. Zespół programistów – poprzez iteracje – budował stopniowo system, regularnie dodając nowe funkcje zdefiniowane przez naszego właściciela produktu. Właściciel produktu jest również wspierany przez zespół złożony z innych inżynierów, posiadających wybitną wiedzę na temat rozwoju oprogramowania oraz ogromną wiedzę operacyjną. Ci inni inżynierowie wywodzą się nie tylko z naszego zespołu interesariuszy w GMV. Są nimi również inni użytkownicy zewnętrzni, np. nasi klienci.
Było to możliwe dzięki regularnemu prezentowaniu systemu odpowiednim podmiotom na różnych etapach procesu jego opracowywania. W ten sposób byliśmy w stanie zebrać ich opinie i odpowiednio ukierunkować proces rozwoju naszego systemu na rozwiązanie najlepiej odpowiadające potrzebom naszych klientów.
W efekcie opracowaliśmy architekturę sterowaną zdarzeniami, tworzoną w formie mikrousług – z zastosowaniem istotnych nowych technologii, takich jak Grafana w przypadku frontendu czy influxdb w warstwie przechowywania danych – oraz oferującą możliwość wdrożenia w dowolnym miejscu: w siedzibie klienta lub zdalnie (na przykład w ramach Usług Internetowych firmy Amazon, dzięki wykorzystaniu technologii konteneryzacji).
Możesz obejrzeć demonstrację sposobu działania naszego systemu MiniSat na poniższym filmie:
Autor(ka): Hugo Garzón