NASAs neste måne-rover vil kjøre åpen kildekode-programvare

viper rover

En kunstners gjengivelse av VIPER på månen. NASA





I 2023 vil NASA lansere VIPER (Volatiles Investigating Polar Exploration Rover), som vil vandre over månens overflate og jakte på vannis som en dag kan brukes til å lage rakettdrivstoff. Roveren vil være bevæpnet med de beste instrumentene og verktøyene som NASA kan komme opp med: hjul som kan spinne skikkelig på månejord, en drill som er i stand til å grave seg inn i utenomjordisk geologi, maskinvare som kan overleve 14 dager av en månekveld når temperaturen synker til ˗173 °C.

Men mens mye av VIPER er unik, skreddersydd for oppdraget, mye av programvaren den kjører er åpen kildekode, noe som betyr at den er tilgjengelig for bruk, modifikasjon og distribusjon av alle til ethvert formål. Hvis det lykkes, kan oppdraget handle om mer enn bare å legge grunnlaget for en fremtidig månekoloni – det kan også være et vendepunkt som får romindustrien til å tenke annerledes om hvordan den utvikler og driver roboter.

Åpen kildekode-teknologi kommer sjelden til tankene når vi snakker om romfart. Det kreves enormt mye penger for å bygge noe som kan skytes ut i verdensrommet, komme seg til sin rette destinasjon og deretter utføre et spesifikt sett med oppgaver hundrevis eller tusenvis (eller hundretusenvis) av miles unna. Å holde kunnskapen om å trekke disse tingene av nær brystet er en naturlig tilbøyelighet. Åpen kildekode-programvare er i mellomtiden mer vanligvis assosiert med elendig programmering for mindre prosjekter, som hackathons eller studentdemoer. Koden som fyller online repositories som GitHub er ofte en rimelig løsning for grupper som mangler penger og ressurser for å bygge kode fra bunnen av.



Men romindustrien øker, ikke en liten del fordi det er et krav om økt tilgang til plass. Og det betyr bruk av teknologier som er rimeligere og mer tilgjengelig, inkludert programvare.

Selv for større grupper som NASA, der penger ikke er et problem, kan åpen kildekode-tilnærmingen ende opp med å føre til sterkere programvare. Flyprogramvare akkurat nå, vil jeg si, er ganske middelmådig i verdensrommet, sier Dylan Taylor, styreleder og administrerende direktør i Voyager Space Holdings. (Eksempel: Boeings Starliner testflyfeil i 2019, som var på grunn av programvarefeil .) Hvis det er åpen kildekode, kan de smarteste forskerne fortsatt utnytte et større fellesskaps ekspertise og tilbakemelding hvis det støter på problemer, akkurat som amatørutviklere gjør.

I utgangspunktet, hvis det er bra nok for NASA, bør det antagelig være godt nok for alle andre som prøver å betjene en robot utenfor denne planeten. Med et stadig økende antall nye bedrifter og nye nasjonale etater jorden rundt Å prøve å skyte opp sine egne satellitter og sonder ut i verdensrommet samtidig som kostnadene holdes nede, er billigere robotprogramvare som trygt kan håndtere noe så risikabelt som et romoppdrag, en stor velsignelse.



Åpen kildekode-programvare kan også bidra til å gjøre det billigere å komme til verdensrommet fordi det fører til standarder alle kan ta i bruk og jobbe med. Du kan eliminere de høye kostnadene forbundet med spesialisert koding. Åpen kildekode-rammeverk er vanligvis noe nye ingeniører allerede har jobbet med. Hvis vi bare kan utnytte det og øke denne rørledningen fra det de har lært på skolen til det de bruker i flyoppdrag, forkorter det læringskurven, sier Terry Fong, sjefrobotiker i Intelligent Robotics Group ved NASA Ames Research Center i California , og nestleder rover for VIPER-oppdraget. Det gjør ting raskere for oss å ta fremskritt fra forskningsverdenen og sette den på flukt.

NASA har brukt åpen kildekode-programvare i mange FoU-prosjekter i omtrent 10 til 15 år nå – byrået holder en svært omfattende katalog av åpen kildekode den har brukt. Men denne teknologiens rolle i faktiske roboter som sendes til verdensrommet er fortsatt begynnende. Et system byrået har prøvd ut er Robot Operating System, en samling av programvarerammeverk med åpen kildekode vedlikeholdt og oppdatert av den ideelle organisasjonen Open Robotics, også med hovedkontor i Mountain View. ROS brukes allerede i Robonaut 2, den humanoide roboten som har hjulpet med forskning på den internasjonale romstasjonen, samt den autonome Astrobee-roboter surrer rundt ISS for å hjelpe astronauter med å utføre daglige oppgaver.

astrobee nasa

Astrobee-roboten på den internasjonale romstasjonen kjører på ROS.



NASA

ROS skal kjøre og tilrettelegge oppgaver som er kritiske for noe som kalles flykontroll på bakken. VIPER kommer til å bli kjørt rundt av NASA-personell som skal betjene ting fra jorden. Bakkeflykontroll vil ta data samlet inn av VIPER for å bygge sanntidskart og gjengivelser av miljøet på månen som roverens sjåfører kan bruke for å navigere trygt. Andre deler av roverens programvare har også åpen kildekode: grunnleggende funksjoner som telemetri og minneadministrasjon håndteres ombord av et program som heter kjerneflysystem (cFS) , utviklet av NASA selv og tilgjengelig gratis på GitHub . VIPERs oppdragsoperasjoner utenfor selve roveren håndteres av Åpne MCT , også laget av NASA.

Sammenlignet med Mars er månemiljøet veldig vanskelig å etterligne fysisk på jorden, noe som betyr at det ikke er lett å teste ut en rovers maskinvare- og programvarekomponenter. For dette oppdraget, sier Fong, var det mer fornuftig å lene seg på digitale simuleringer som kunne teste mange av roverens komponenter – og som inkluderte åpen kildekode-programvare.

En annen grunn til at oppdraget egner seg til bruk av åpen kildekode-programvare er at månen er nær nok for nesten sanntidskontroll av roveren, noe som betyr at noe av programvaren ikke trenger å være på selve roveren og kan kjøres på jorden i stedet.



Vi bestemte oss for å dele robotens hjerne mellom månen og jorden, sier Fong. Og så snart vi gjorde det, åpnet det for muligheten for at vi kan bruke programvare som ikke er begrenset av strålingshard flydatabehandling – men i stedet kan vi bare bruke kommersielle stasjonære datamaskiner. Så vi kan bruke ting som ROS på bakken, noe som brukes av så mange mennesker så regelmessig. Vi trenger ikke bare stole på tilpasset programvare.

VIPER kjører ikke på 100 % åpen kildekode-programvare – flysystemet ombord bruker for eksempel ekstremt pålitelig proprietær programvare. Men det er lett å se fremtidige oppdrag ta i bruk og utvide det VIPER vil kjøre. Jeg mistenker at kanskje den neste roveren fra NASA vil kjøre Linux, sier Fong.

Det vil aldri være mulig å bruke åpen kildekode i alle tilfeller. Sikkerhetsproblemer kan være et problem, og kan føre til at enkelte parter holder seg til proprietær teknologi helt (selv om et pluss til åpen kildekode-plattformer er at utviklere ofte er veldig offentlige om å finne feil og foreslå oppdateringer). Og Fong understreker også at noen oppdrag alltid vil være for spesialiserte eller avanserte til å stole sterkt på åpen kildekode-teknologi.

Likevel er det ikke bare NASA som henvender seg til åpen kildekode-fellesskapet. Blue Origin kunngjorde nylig et samarbeid med flere NASA-grupper for å kode robotintelligens og autonomi bygget fra åpen kildekode-rammeverk (selskapet nektet å gi detaljer). Mindre tiltak som Free Space Foundation basert i Hellas, som leverer åpen kildekode maskinvare og programvare for små satellittaktiviteter, vil garantert få mer oppmerksomhet ettersom romfart fortsetter å bli billigere. Det er en dominoeffekt der, sier Brian Gerkey, administrerende direktør i Open Robotics. Når du først har en stor organisasjon som NASA som offentlig sier «Vi er avhengige av denne programvaren», så er andre organisasjoner villige til å ta sjansen og grave i og gjøre arbeidet som er nødvendig for å få det til å fungere for dem.

gjemme seg