Błąd zawiesił satelitę, zresetowało go promieniowanie kosmiczne

dodał 7 czerwca 2015 o 22:27 w kategorii Błędy  z tagami:
Błąd zawiesił satelitę, zresetowało go promieniowanie kosmiczne

Prywatny satelita testujący żagiel słoneczny prawie został spisany na straty po tym, jak po przepełnieniu pamięci zawiesił się jego system operacyjny. Na szczęście na ratunek przyszła zabłąkana cząsteczka która spowodowała reset.

LightSail to znajdujący się od kilku tygodni na orbicie okołoziemskiej prywatny satelita, którego zadaniem jest testowanie procedur rozkładania żagla słonecznego. Jego twórcy chcą sprawdzić wszystkie procedury przed wysłaniem właściwego satelity w podróż z napędem generowanym przez fotony uderzające w żagiel. Satelita co rusz napotyka na poważne przeszkody, w tym spowodowane prostym błędem programistów.

Jestem sobie małym satelitą

Towarzystwo Planetarne od wielu lat pracuje nad koncepcją satelity napędzanego energią fotonów. LightSail-1, wysłany na orbitę 20 maja tego roku, jest ważnym krokiem na drodze do udowodnienia zasadności takiego napędu. Niestety krążący właśnie wokół ziemi miniaturowy satelita jest źródłem wielu zmartwień zespołu nadzorującego eksperyment. LightSail-1 zbudowany jest w modelu CubeSat o rozmiarze 3 modułów, czyli 10x10x30cm.

Satelita jest naprawdę miniaturowy

Satelita jest naprawdę miniaturowy

Dzięki niewielkiej wadze i rozmiarom koszt wyniesienia go na orbitę był akceptowalny dla stowarzyszenia, które utrzymuje się ze składek członkowskich i darowizn od sponsorów. Wraz z nim na rakiecie zmierzającej na orbitę znalazło się 9 innych satelitów podobnego rozmiaru (oraz wojskowy wahadłowiec szpiegowski X-37B). Niestety LightSail po niecałych 3 dniach przestał wysyłać jakiekolwiek dane. Przez pierwsze 40 godzin w trakcie każdego przelotu nad jednym z dwóch centrów kontroli można było usłyszeć komunikaty satelity, sygnalizującego, że nadal funkcjonuje prawidłowo. Zaraz potem system pokładowy się zawiesił.

Testy, testy i jeszcze raz testy

Na pokładzie satelity podróżuje system operacyjny oparty o jądro Linux. Satelita co 15 sekund wysyła komunikat sygnalizujący prawidłowe działanie. Po każdym wysłaniu komunikatu informacja o tym fakcie zapisywana jest do pliku /data/beacon.csv. Niestety nikt nie przewidział, że miejsce w systemie plików może w ten sposób skończyć się szybciej niż sama misja satelity. Już po 40 godzinach plik osiągnął rozmiar 32 megabajtów i zawiesił system. W trakcie naziemnych testów komputer nigdy nie działał naraz ponad 40 godzin – testy długoterminowe są jak widać stałą bolączką systemów lotniczych (pamiętacie Boeinga 787, którego też trzeba było resetować od czasu do czasu?) Okazało się, że satelita nie tylko przestał komunikować się z otoczeniem, ale także wyglądało na to, że ignoruje regularnie wysyłane instrukcje restartu komputera. Co ciekawe, błąd był już znany producentowi systemu, jednak w kosmos wysłana została starsza, zapewne lepiej przetestowana wersja. Zespół jednak nie tracił nadziei, licząc na mały, choć powtarzalny cud.

Promieniowanie kosmiczne na ratunek

W przestrzeni kosmicznej nie było żadnego śmiałka gotowego nacisnąć guzik odcinający zasilanie. Trzeba było zatem liczyć na oddziaływanie innych sił. Wcześniejsze doświadczenia z satelitami CubeSat wykazywały, że w większości przypadków po 3 tygodniach od umieszczenia na orbicie ich komputery resetowały się samoistnie. Najdłużej na reset czekano 6 tygodni. Reset powodowany był najprawdopodobniej przez cząsteczki o dużym ładunku, poruszające się w przestrzeni kosmicznej i trafiające w elementy satelity. Takie trafienie może spowodować zmianę stanu komórki pamięci czy też rejestru procesora, powodując anomalię wystarczającą do restartu (nawet na Ziemi, chronionej atmosferą, zdarza się, że pakiet wysyłany do serwera WWW może zostać przypadkowo zmodyfikowany przez przestawienie jednego bitu w ten właśnie sposób).

Czas życia satelity na tej orbicie planowany był na około 6 miesięcy, zatem zespół kontroli lotu uzbroił się w cierpliwość i czekał. Szczęście im dopisało, ponieważ już po 8 dniach satelita nagle się zrestartował i nawiązał ponowny kontakt z ziemią. Podjęto próbę naprawy satelity przez… SSH. Polecenie, które należało wydać, by załatać system, to

ssh [email protected][IP] 'ln -sf /dev/null /data/beacon.csv'

Niestety okazało się, że połączenie SSH jest tak niestabilne, że nie ma możliwości skutecznego przesłania nawet tego jednego polecenia. Kierownictwo lotu uznało zatem, że bezpieczniej będzie po prostu raz na dobę restartować satelitę ręcznie. Metoda ta wydaje się działać.

LightSail właśnie rozkłada żagiel

Najważniejszym etapem misji miało być rozłożenie żagla słonecznego. Misja najwyraźniej jednak była z definicji pechowa, ponieważ dwa dni temu satelita znowu przestał nadawać sygnały kontrolne. Tym razem milczenie trwało niecałe 2 doby i nastąpiło po rozłożeniu baterii słonecznych. Prawdopodobnie było spowodowane zbyt dużymi skokami napięcia pomiędzy momentami, kiedy baterie widziały słońce, a momentami, kiedy były w cieniu. Naukowcy postanowili wykorzystać dostępność satelity i nie kusić więcej losu oraz jak najszybciej przeprowadzić najważniejszą część eksperymentu. Dosłownie kilka minut temu szef misji poinformował, że z odczytów parametrów satelity wynika, że żagiel zaczął się już rozkładać. Trzymamy kciuki za los satelity, oby jego dalsza podróż wolna już była od błędów programistów.