ESA o przyczynach katastrofy lądownika Schiparelli
Po przeanalizowaniu danych specjaliści z Europejskiej Agencji Kosmicznej orzekli, że za katastrofę lądownika Schiparelli odpowiada błąd komputerowy. Lądownik rozbił się o powierzchnię Marsa 19 października bieżącego roku. Teraz wiemy, że komputer, który mierzył ruch obrotowy lądownika uległ przeciążeniu, co doprowadziło do pojawienia się błędów w innych obliczeniach. Wygenerowane błędne informacje wskazywały na wysokość w liczbach ujemnych, co oznacza, że według komputera lądownik znajdował się pod powierzchnią planety. W wyniku tego doszło do zbyt wczesnego odrzucenia spadochronu i osłony termicznej, uruchomienia silników hamujących na zbyt krótki czas a w końcu aktywacji systemów naziemnych tak, jakby Schiparelli już wylądował. W rzeczywistości lądownik znajdował się na wysokości około 3,7 kilometra - oświadczyła ESA.
Przeprowadzenie udanego lądowania wymagało by Schiparelli wyhamował z 21 000 km/h do zera i przetrwał w międzyczasie temperaturę ponad 1500 stopni Celsjusza. W tym celu wyposażono go w osłonę termiczną, spadochron, silniki hamujące oraz specjalną ulegającą zgnieceniu strukturę, która miała zaabsorbować uderzenie o powierzchnię planety. To kolejna nieudane próba lądowania na Marsie podjęta przez ESA. Pierwsza miała miejsce w 2003, gdy łazik Beagle 2 zaginął po oddzieleniu się od orbitera Mars Express.
Misja Schiparellego, który poleciał na Marsa na pokładzie Trace Gas Orbiter, odbyła się w ramach pierwszej części programu ExoMars. Głównym celem pojazdu było przetestowanie europejskich technologii lądowania na Marsie. W pewnym sensie mamy szczęście, że słabość systemu nawigacyjnego wyszła na jaw podczas testowego lądowania, przed drugą częścią misji, mówi Thierry Blancquaert, manager Schiparellego. Druga część rosyjsko-europejskiej ExoMars jest planowana na rok 2020. Wówczas na Marsa ma polecieć łazik, który będzie wiercił w powierzchni planety i badał uzyskane próbki.
ESA zastrzega, że powyższe informacje to jedynie wstępne wnioski. Pełny raport na temat katastrofy zostanie zaprezentowany przez niezależnych ekspertów w pierwszych miesiącach 2017 roku.
Komentarze (26)
Gość Astro, 24 listopada 2016, 18:36
Wcale mnie to nie cieszy, ale wychodzi na to, że byłem prorokiem… :/
Zastanawiam się tak czasami: gdyby ludzkość powróciła do klasycznych metod motywacji jak np. ścięcie głównego programisty, to czy przypadkiem nie mielibyśmy lepszego rozwoju?
gucio222, 24 listopada 2016, 18:47
Astro, wystarczy ich lepiej wynagradzać. Eurokołchozowi kierownicy i managerowie ESA którzy często są głupsi od gimnazjalisty zarabiają 10 do 20 razy tyle co inżynierowie konstruktorzy czy programiści. Kiepsko wynagradzany programista musi być frajerem żeby przykładać się do roboty pod którą i tak podpiszą się w razie sukcesu zgrzybiałe i sklerotyczne pierdzi-stołki z tytułami.
Gość Astro, 24 listopada 2016, 19:24
Oczywiście. Jeśli misja się powiedzie, to obsypujemy złotem, jeśli nie – ścinamy.
No wiesz, w rzeczywistości tak to nie wygląda.
gucio222, 24 listopada 2016, 19:33
Chyba jednak prościej, to lepiej to ich na początku wynagradzać. A publiczna chłosta dla pierdzistołków w razie porażki Nie jestem za ścinaniem.
wilk, 24 listopada 2016, 19:35
Obawiam się, że prędzej zabrakłoby nam się programistów… Zwróć jednak uwagę, że winę ponosi raczej awaria komputera, zależy jak tłumaczyć owo „przeciążenie” — czy jako fizyczne zjawisko mające wpływ na delikatną elektronikę i wówczas winni są inżynierowie, czy też słabą mocą obliczeniową i tutaj winni są projektanci. Niemniej anomalia taka powinna zostać wykryta przez oprogramowanie (w końcu to nie była maszyna wiertnicza) i jakieś środki zaradcze powinny być przewidziane.
Gość Astro, 24 listopada 2016, 20:04
Gucio, w jednym się zgodzę. Chłosta jest niesłusznie zapomnianą, choć BARDZO skuteczną metodą na wiele problemów. Można też dorzucić kamienowanie.
Wilk, programistów nie zabraknie. Wiesz ilu ich było np. w latach siedemdziesiątych przy misjach kosmicznych (a nawet w ogóle)? Różnica jest taka, że wówczas wszyscy byli DOBRYMI programistami. Co do "awarii komputera":
Średnio nawet inteligentny programista nie będzie zapuszczał na ZX Spectrum jakiegoś widowza 10.
DOBRY programista wiedząc czym dysponuje nie dopuści do takiego IDIOTYZMU.
Z oryginału:
Przy wtopie jedynie 230 megaeurosów można i optymistycznie:
tempik, 24 listopada 2016, 20:07
No takie kwiatki to powinny wyłapać nawet automatyczne algorytmy testujące soft. Zrozumiał bym jakieś wady materiałowe czy konstrukcyjne trudne do wykrycia, ale coś takiego?
gucio222, 24 listopada 2016, 20:09
Ponieważ w latach 80 namiętnie programowałem jeszcze pod assemblerem sterowniki do procesów produkcyjnych to już wtedy z kumplami nabijaliśmy się z jakiegoś takiego filmu amerykańskiego w którym jakiś młody haker włamał się do NORAD i kazał opalić rakiety więc żeby temu zapobiec zapuścił program który tak przeciążył komputer NORADu aż ten się spalił (chyba to było kółko i krzyżyk). Więc zgadam się z Astro że nie ma czegoś takiego jak przeciążenie procesora. Natomiast nie mam tekstu źródłowego artykułu bo może chodzi o to, że dane z czujników zaczęły spływać bezsensowne na skutek przekroczenia ich maksymalnych wartości i może tego nikt nie przewidział. Coś jak pęknięcie tensometru który zaczyna podawać ujemne obciążenie. Tyle że pomyłka o prawie 4km w wysokości to raczej żenada. Poprzednie lądowanie na Marsie też odbyło się jakość podobnie tylko 30m pod ziemią bo nie zgrano komputera amerykańskiego od silników z europejskim (jeden w funtach, a drugi w kilogramach), a skapnęli się dopiero gdy lądownik wbił się w ziemię ( może ktoś przypomni mi co to był za lądownik)
Gość Astro, 24 listopada 2016, 20:44
To była misja NASA:
https://pl.wikipedia.org/wiki/Mars_Climate_Orbiter
gucio222, 24 listopada 2016, 20:46
Dzięki, pamięć już nie ta
Gość Astro, 24 listopada 2016, 20:46
Oczywiście nie był to lądownik (choć wylądował ).
wilk, 24 listopada 2016, 21:07
Wargames? Tam niezupełnie chodziło o kółko i krzyżyk i nie było żadnego spalenia procesora. Chodziło faktycznie o przeciążenie systemu, który w tym czasie łamał kody startowe i opóźnienie tego procesu (grał sam ze sobą, a jak wiemy KiK to gra w której się remisuje). Aczkolwiek komputer zaczął uruchamiać rozmaite scenariusze zagład nuklearnych i doszedł do wniosku, że niezależnie kto zacznie i kto przetrwa — zniszczenia będą tak katastrofalne, że nikt nie będzie tak naprawdę zwycięzcą.
Astro, no właśnie nawet wersja ze źródła też nieszczególnie wiele rozjaśnia. Możliwe, że nadejście nowego odczytu wywoływało przerwanie i nawałnica tych wydarzeń spowodowała, że oprogramowanie przetwarzało tylko odczyty nie mając czasu na cokolwiek innego, co by wyjaśniało dlaczego ucierpiały na tym inne obliczenia. Niemniej ten drugi cytat pokazuje straszną amatorkę…
radar, 24 listopada 2016, 21:32
Tu jest jeszcze inna sprawa. Czas.
Programiści mogli mieć za mało czasu ( a presja deadline'u "przyśpieszyła" testowanie), albo projekt był prowadzony źle, tzn. czasu było pod dostatkiem, ale nikt nie pilnował tego wystarczająco dobrze od początku, więc wiadomo, wszystko na ostatnią chwilę, a potem błędy, problemy... czyli de facto patrz pkt 1.
Za takie coś ścięcie byłoby łaską, powinno się łeb urywać.
Gdzie się podziały te wszystkie środki ostrożności, które można znaleźć nie tylko w kosmosie, ale nawet i w samolotach? Zdublowanie najważniejszych podzespołów, zabezpieczenia w oprogramowaniu, nawet najprostsze if wysokość < 0 then WTF! mogłoby załatwić sprawę. Zgadzam się z Astro, to co tutaj się stało to...
EDIT: projekt jest europejsko-rosyjski, może ruscy powinni udostępnić miejsca w łagrach na kilka miesięcy?
Stanley, 24 listopada 2016, 22:30
Tak na zupełnym marginesie aczkolwiek troszke w temacie o słabościach systemów określania pozycji było mi dane intensywnie testować oprogramowanie iGO oraz jego alternatywy np. Maps.me i Offline Maps na Androida. Co bardzo ważne podczas wjazdu do tunelu lub pod miasto np. Włochy lun Paryż za którym bywają rozjazdy na rozmaite autostrady. Pędząc nie ma zbytnio czasu na zastanowienia.. Otóż iGo okazało się perfekcyjne w każdym calu bo gdy gubiło sygnał GPS kontynuowało symulację mojej pozycji na podstawie kierunku i prędkości przed zgubieniem sygnału - czyli ignorowało odczyt nieprawidłowych wartości. Zgubienie sygnału GPS w obecnych czasach przy obecnym skomplikowaniu dróg to tak jakby nagle zgasło światło.. W przypadku lądownika być może właśnie brak algorytmu wykrywania poprawności odczytów, uśredniania, opisywania czasem aktualizacji itd?
Fajnie byłoby znać ten kod i przeanalizować(zapewne wielowątkowy) w jaki sposób można by to naprawić.. ponieważ idę o zakład że wypowiadający się w stylu "obciąć mu obie dłonie" niekoniecznie byliby w stanie wymyślić patcha - pozbawionego wad ukrytych Każdy ma takie wady, a jeśli nie ma to po prostu znaczy że nie nastąpiły stosowne okoliczności.
gucio222, 24 listopada 2016, 22:38
Mam może już sklerę ale dobrze pamiętałem jednak film sprzed 30 lat mimo że nie pamiętałem tytułu. Odkopałem ten film własnie.
http://www.cda.pl/video/17855274
Zobacz sobie 102 minutę filmu z CDA jak wybuchają terminale tego kompa, nawet teraz można boki zrywać. I jednak chodziło o kółko i krzyżyk. No i te migające lampki. Lepsze niż w Odra 1300
Oj, młode lata i pierwsza praca mi się przypomina na PDP11
darekp, 25 listopada 2016, 07:47
Gdyby to rzeczywiście było skuteczne, już byłoby stosowane w tych nielicznych krajach, w których kara śmierci jest jeszcze stosowana;)
Zgoda, pod warunkiem, że zawsze znajdzie się jakiś mądry człowiek, który powie "Kto z was programuje i nie popełnił błędu, niech pierwszy rzuci kamieniem"
Oh, really? DOBRZY programiści też popełniają błędy (chociaż rzadziej). Software powinien być jeszcze testowany, ale nawet DOBRZY testerzy nie zdołają wszystkiego przetestować. Są jeszcze narzędzia do statycznej weryfikacji kodu, ale one są w tzw. głębokim średniowieczu (http://lambda-the-ultimate.org/node/5348 ps. ja nie uważam średniowiecza za okres ciemnoty, ale niech będzie zgodnie ze stereotypem). I będą takie dopóki nie powstanie prawdziwa AI.
Więc...
A może raczej trzy słowa: wot, russkaja tiechnika (w tym wypadku z rozszerzeniem na oprogramowanie). Rosjanom/sowietom o ile pamiętam, nie udało się ani razu pomyślnie umieścić lądownika na Marsie. ESA chyba też, a może max. 1-2 razy???
Fajnie brzmi ta zapowiedź w kontekście tego co się stało, w najgorszym razie znów wywierci jedną wielką dziurę (krater) ale wtedy już nie będzie badał. )
Gość Astro, 25 listopada 2016, 10:01
Przy braku prawdziwej AI i niemożliwości liczenia na naszą własną (wrodzoną) pozostaje chyba tylko siedzieć w domu...
(Na marginesie, gdyby ktoś nie zauważył, to kilkukrotnie zamieściłem taką oto emotkę: )
Możesz być pewien, że kod nie zostanie upubliczniony.
(Osobiście nie jestem programistą; najwyżej domorosłym klepaczem)
Jajcenty, 25 listopada 2016, 11:21
I myślę, że to błąd. Gdyby udostępnili kod dostaliby darmowy test od tysięcy pasjonatów. A jakie tam mogą być tajemnice? hasło do wifi? Czytanie rejestru co 50 ms?
pogo, 25 listopada 2016, 11:58
API do tajnej wojskowej technologii udostępnionej agencji specjalnie dla tej misji?
Gość Astro, 25 listopada 2016, 16:26
A miało być tak pięknie…
http://www.esa.int/spaceinvideos/Videos/2016/10/Schiaparelli_s_descent_to_Mars_in_real_time
To może się jednak weźmiemy za coś takiego? W tydzień dobry kod napiszemy, a jak widać z filmiku ustrojstwo na zbyt skomplikowane nie wygląda (). Trochę kasy trzeba będzie (zwłaszcza na wyniesienie tego w cholerę, czyli na Marsa), ale wydaje mi się, że ludzi od dobrego marketingu (nawet politycznego) jak i crowdfoundingu na KW nie zabraknie.
radar, 26 listopada 2016, 09:23
Ale cały myk polega na tym, że jak w projekcie za setki milionów, gdzie masz tylko jedną szansę, mogłoby czegoś takiego zabraknąć?
Przecież zwykły timer jako ostateczne narzędzie weryfikacji mogłoby uchronić ich przed katastrofą. Skoro manewr ma zająć około 7 min to nie ma szans, żebyśmy po 4 byli na miejscu, prawda?
Ja myślę, że Astro z jakością programistów/projektantów ma jednak trochę racji. Kiedyś się dużo programowało, eksperymentowało, teraz jest gotowe API, "gotowe wzorce", gotowe rozwiązania (bo przecież zawsze może ktoś napisze na stackoverflow albo gdziekolwiek jak coś zrobić, bo nie wiem). Widzę to często, zwłaszcza jak rekrutuję kogoś do roboty.
Nie przewidzieć ujemnych odczytów z czujnika? W głowie mi się to nie mieści. Czy Ci programiści mieli kiedyś do czynienia z jakąkolwiek elektroniką żeby się przekonać, że czujnik może wrócić właściwie wszystko?
gucio222, 26 listopada 2016, 16:10
Coś w tym jest. Pracuję cały czas przy projektowaniu i wdrażaniu mikro sterowników i w starych czasach żeby czymś sterować to trzeba było najpierw sobie polutować komputer (pierwszy robiłem na 8080 ). Dzisiaj młodzi programiści jak mają zacisnąć RJ-ta zaciskarką to są przerażeni. Hardware odbierają jako coś strasznego i nieczystego co paraliżuje ich zdolność logicznego myślenia. Pod tym względem młodzi uczniowie techników którzy publikują swoje pomysły z Arduino na elektrodzie przebijają o głowę studentów a nawet wykładowców informatyki. Mechatronika jeszcze jakoś to łączy ale bez solidnych podstaw z technikum też są kiepscy.
Gość Astro, 26 listopada 2016, 18:47
Trafiliście chłopaki w sedno. Lutownicę, od kiedy tylko pamiętam, mam zakodowaną w mózgu jako przedłużenie dłoni (choć to "tylko" hobby ). Kiedyś programiści – nawet jeśli nie lutowali – to myśleli niskopoziomowo (czyli czuli gadzinę), a dziś rządzi "maszyna wirtualna"; wiem, ma to sens, ale przy czymś takim jak dyskutowana misja potrzeba chyba większego "zżycia" człowieka z maszyną. Nie znam szczegółów dotyczących projektowania misji, ale przypuszczam, że zapewne programiści byli "lepszego sortu" jak i "dobrze opłacani", choć niekoniecznie wiedzieli jakie (i gdzie) kabelki z czym się łączą (i po co). To chyba fundamentalny problem. Gdybym był większym idealistą (w moim wypadku to oksymoron, bo wzrostu mi nie brakuje, podobnie jak i idealizmu ), to poszedłbym w połączenie koncepcji Jajcentego i Gucia (z pewnym rozwinięciem, więc niech będzie JG+ ). Promując naukę, wiedzę i uniwersalne wartości humanizmu można by przecież ogłosić otwarty konkurs na soft (nawet przy "minimalnej" specyfikacji technicznej ustrojstwa). Jestem pewien, że bardzo wiele uzdolnionych osób i zespołów bardzo chętnie podjęłoby wyzwanie; i to tylko dla lauru (wawrzynu).
pogo, 27 listopada 2016, 03:36
A ja mam dziwne podejrzenie, że pracowało nad tym zwyczajnie zbyt wielu programistów i każdy z nich złożył, że kto inny zrobi zabezpieczenie w swojej warstwie...