Avaruudessa olevat suurienergiset hiukkaset ja säteily tulevat olemaan myös Aalto-1 -satelliitin harmina. Pikkusatelliitti on kuitenkin varustettu toimimaan niiden aiheuttamien häiriöiden kanssa – ja yksi osa tätä on erityisesti vikaantumista kestämään suunniteltu tietokoneohjelmisto.
Satelliitin rakentaminen ei ole vain osien laittamista yhteen ja niiden testaamista, vaan myös koodaamista. Satelliitin ohjelmisto käyttää Linuxia, ja kuten kaikki muukin satelliitissa, on softapuolikin tehty opiskelijavoimin.
30-senttisen Aalto-1:n sisällä on tusina piirilevyä, jotka sisältävät pääosin varsin tavanomaisia elektroniikkakomponentteja. Kuten yleensä edullisissa nanosatelliiteissa, ei komponentteja ole erityisesti suunniteltu kestämään avaruussäteilyä.
Luotettavuustasoa voidaan kuitenkin nostaa esimerkiksi hyvällä ohjelmistoarkkitehtuurilla, jossa on huomioitu ympäristön aiheuttamat mahdolliset virhetilanteet.
Aalto-1:n tapauksessa tietotekniikan opiskelija Joonas Javanainen analysoi diplomityössään satelliitin ohjelmistoa ja sen vikamekanismeja.
"Avaruussäteilyn ansiosta yksittäinen bitti voi vaihtua tietokoneen jossain osassa", selittää Joonas.
"Virheet aiheutuvat ympäristöstä ja niitä tulee joka tapauksessa – vaikka ohjelmointi olisi ollut täydellistä."
Avaruuslaitteissa säteily saakin aikaan toisinaan toimintahäiriöitä, kun esimerkiksi tietokoneen sisällä säteily osuu työtä tekevään elektroniikkakomponenttiin juuri ikävään aikaan, ja saa aikaan sen, että esimerkiksi bitti vaihtuu toiseen kesken kaiken. Se voi aiheuttaa laskentavirheitä tai kaataa ohjelmiston, tai pahimmassa tapauksessa jopa aiheuttaa pysyviä vaurioita laitteiston toimintaan.
Yleensä se ei kuitenkaan vaikuta juuri lainkaan satelliitin toimintaan, koska satelliitit ja niiden tietokoneet on suunniteltu kestämään tällaisia tapauksia. Samoin Aalto-1 on suunniteltu – ja itse asiassa Joonaksen diplomityön ansiosta suomalaissatelliitti kestää säteilyä hieman paremmin monet vastaavat satelliitit.
Satelliitissa käytetään useita vahtikoiramekanismeja, jotka valvovat järjestelmän eri osia ja voivat esimerkiksi käynnistää satelliitin uudelleen ongelmatilanteissa. Myös maa-aseman kanssa kommunikointia vahditaan, ja satelliitti osaa automaattisesti vaihtaa käytettävää radiota, jos maa-asemasta ei ole kuulunut mitään pitkään aikaan.
"Luotettavuutta voidaan parantaa menetelmillä, joilla pyritään havaitsemaan bittivirheitä. Esimerkiksi maa-asemalta tuleva komento voi bittivirheiden takia korruptoitua matkalla, mutta järjestelmä voi havaita tämän ja pyytää maa-asemaa lähettämään komennon uudestaan", Joonas kertoo.
Tärkeimmät satelliitin osat on kahdennettu, eli laitteita on kaksi kappaletta, joista vain toinen kerrallaan on käytössä. Laitteen rikkoontuessa voidaan käyttää varalla olevaa laitetta.
"Ennen laukaisua pitää valmistautua haasteisiin ja bittien vaihtumisiin, ja siinä tulee löytää kultainen keskilinja, sopiva valmistautumisen taso. Mitä monimutkaisempia ohjelmistoista tulee, sitä enemmän saatetaan aiheuttaa lisää ongelmia ja sitä kalliimpi nanosatelliitista myös tulee."
Fyysisesti nanosatelliitin ohjelmistoon ei pääse enää käsiksi, koska satelliitti on jo nyt matkalla kohti laukaisupaikkaa. Ohjelmistoa sen sijaan voidaan vielä päivittää, ja vielä satelliitin ollessa avaruudessa voidaan sen ohjelmistoihin tehdä radikaalejakin muutoksia radiolinkin kautta. Siksi ei olekaan mikään ihme, että vaikka Aalto-1:n fyysinen rakentaminen on ohi, jatkuu bittien viilaaminen edelleen. Kuten jokainen koodari tietää, työ ei periaatteessa lopu koskaan, koska ohjelmistosta löytyy aina jotain korjattavaa tai parannettavaa.
Aalto-1 -hankkeeseen on osallistunut satakunta Aalto-yliopiston opiskelijaa ja sen puitteissa on tehty viitisenkymmentä opinnäytettä. Ohjelmistopuolella on ollut töissä yhteensä kymmenisen henkeä kandi-, diplomi- ja erikoistöiden puitteissa.