Pan Marek Tuszyński, pracownik Jet Propulsion Laboratory (JPL – NASA) to jeden z wielu Polaków zatrudnionych przy tworzeniu oprogramowania oraz czujników sondy Curiosity, która właśnie rozpoczęła badanie Czerwonej Planety. Sonda, jak pamiętamy, szczęśliwie wylądowała na Marsie 6 sierpnia i od paru dni, po wcześniejszym sprawdzeniu aparatury i testach, zaczyna swoją właściwą misję, której celem jest między innymi określenie czy kiedyś na Czerwonej Planecie występowała woda. Poza tym chodzi o weryfikację różnych hipotez dotyczących teraźniejszości oraz przyszłości planety, zebranie danych, które pozwolą określić zakres przyszłych misji – bezzałogowych, z możliwością wysłania na Ziemię próbek oraz załogowych (horyzont czasowy – 2035-2045). W wywiadzie udzielonym polskiej prasie, Pan Marek zdradza sekrety oprogramowania sondy… to niezwykle ciekawa lektura, pokazująca jak trudnym i skomplikowanym procesem jest tworzenie kodu na potrzeby tego typu misji.
Warto zwrócić uwagę, że twórcy software muszą pogodzić się z licznymi ograniczeniami związanymi z hardware. Bardzo ostre wymagania dotyczące sprzętu IT wykorzystywanego przez NASA (proces weryfikacji i akceptacji dla techniki trwa niezwykle długo, jest bardzo czasochłonny) nie dają dużego pola manewru. Przykładowo nie można użyć nowoczesnych, potężnych jednostek obliczeniowych – w wielu obecnych sondach wykorzystuje się układy z lat 90 minionego wieku (procesory Intel Pentium, w Curiosity dwa komputery BAE RAD 750, oparte na CPU Power PC 133 MHz z 256 kB pamięci podręcznej EEPROM, 256 MB DRAM pamięci operacyjnej oraz 2 GB pamięci Flash). Jak zauważa Pan Marek, w wykorzystywanych obecnie CPU nie ma nawet pamięci podręcznej drugiego poziomu. Oczywiście fakt korzystania z takich, a nie innych rozwiązań, związany jest z niezawodnością, odpornością na promieniowanie, także mniej skomplikowana architektura stanowi w tym wypadku zaletę. Tak czy inaczej, software sondy jest niezwykle złożony, tworzą go 154 moduły, to 750 tysięcy linii kodu w języku C (napisanego ręcznie, bez tego, który generowany jest automatycznie), znaczna część służy wyłącznie wielopoziomowej diagnostyce.
Nasz rodak mówi, że co prawda nie było mowy o AI (sztucznej inteligencji), ale wiele cech opracowanego software zawiera coś, co można nazwać inteligencją. Warto zaznaczyć, że w przypadku obecnej misji, tak naprawdę chodzi o aż trzy aparaty – sondę kosmiczną, lądownik oraz łazik, stąd zapewne wynika ta złożoność oprogramowania. System operacyjny VxWorks firmy Wind River to fundament software sondy, który wraz z pozostałym oprogramowaniem podlega ciągłej modyfikacji – aktualizacje są częste, kod podlega ciągłym modyfikacjom, tworzone są nowe moduły. Prędkość transmisji danych wynosi 40 Mb/s - to docelowa prędkość transmisji danych z Ziemią, po wylądowaniu było to zaledwie 5 Mb/s. Cały, bardzo interesujący tekst, dostępny jest pod tym adresem.
Dodaj komentarz
Musisz się zalogować, aby móc dodać komentarz.