NASA käytti Linuxia ja avoimen lähdekoodin ohjelmistoja Ingenuity Mars -raketissa

NASAn avaruusjärjestön edustajat paljastivat Spectrum IEEE:n haastattelussa yksityiskohtia autonomisen tiedusteluhelikopterin Ingenuity sisäosista, joka laskeutui eilen onnistuneesti Marsiin osana Mars 2020 -tehtävää. Projektin erityispiirteenä oli älypuhelimien valmistuksessa käytettävän Qualcommin Snapdragon 801 SoC:hen perustuvan ohjauskortin käyttö. Ingenuityn ohjelmisto perustuu Linux-ytimeen ja avoimen lähdekoodin lentoohjelmistoon. On huomattava, että tämä on ensimmäinen Linuxin käyttö Marsiin lähetetyissä laitteissa. Lisäksi avoimen lähdekoodin ohjelmistojen ja laajasti saatavilla olevien laitteistokomponenttien käyttö antaa kiinnostuneille mahdollisuuden koota samanlaisia ​​droneja itse.

Tämä päätös johtuu siitä, että lentävän dronin ohjaaminen vaatii huomattavasti enemmän laskentatehoa kuin Mars-kulkijan ohjaaminen, joka on varustettu erikoisvalmisteisilla siruilla lisäsäteilysuojauksella. Esimerkiksi lennon ylläpitäminen vaatii ohjaussilmukan, joka toimii nopeudella 500 jaksoa sekunnissa ja kuva-analyysin nopeudella 30 kuvaa sekunnissa.

Snapdragon 801 SoC (neliydin, 2.26 GHz, 2 Gt RAM, 32 Gt Flash) toimii ydin Linux-pohjaisessa järjestelmäympäristössä, joka vastaa korkean tason toiminnoista, kuten kameran kuva-analyysiin perustuva visuaalinen navigointi, tiedonhallinta, käsittely komennot, telemetrian luominen ja langattoman viestintäkanavan ylläpitäminen.

Prosessori on kytketty UART-liitännän avulla kahteen mikro-ohjaimeen (MCU Texas Instruments TMS570LC43x, ARM Cortex-R5F, 300 MHz, 512 KB RAM, 4 MB Flash, UART, SPI, GPIO), jotka suorittavat lennonohjaustoimintoja. Kahta mikro-ohjainta käytetään redundanssiin vian sattuessa ja ne saavat identtiset tiedot antureilta. Vain yksi mikrokontrolleri on aktiivinen, ja toista käytetään varavarana ja se pystyy ottamaan hallinnan vian sattuessa. MicroSemi ProASIC3L FPGA vastaa tiedon välittämisestä antureista mikrokontrollereihin ja vuorovaikutuksesta teriä ohjaavien toimilaitteiden kanssa, joka myös vaihtaa vara-mikro-ohjaimeen vian sattuessa.

NASA käytti Linuxia ja avoimen lähdekoodin ohjelmistoja Ingenuity Mars -raketissa

Laitteistaan ​​drone käyttää SparkFun Electronicsin laserkorkeusmittaria, joka on avoimen lähdekoodin laitteistoa valmistava yritys, joka on yksi avoimen lähdekoodin laitteiston (OSHW) määritelmän luojista. Muita tyypillisiä komponentteja ovat gimbal-stabilisaattori (IMU) ja älypuhelimissa käytettävät videokamerat. Yhtä VGA-kameraa käytetään sijainnin, suunnan ja nopeuden seuraamiseen kehyskohtaisen vertailun avulla. Toista 13 megapikselin värikameraa käytetään alueen kuvien ottamiseen.

Lennonohjausohjelmistokomponentit kehitettiin NASA JPL:ssä (Jet Propulsion Laboratory) pienille ja erittäin pienille keinotekoisille maan satelliiteille (cubesats) ja niitä on kehitetty useiden vuosien ajan osana avointa alustaa F Prime (F´), jota jaetaan Apache 2.0 lisenssi.

F Prime tarjoaa työkaluja lennonohjausjärjestelmien ja niihin liittyvien sulautettujen sovellusten nopeaan kehittämiseen. Lento-ohjelmisto on jaettu yksittäisiin komponentteihin, joissa on hyvin määritellyt ohjelmointirajapinnat. Erikoiskomponenttien lisäksi tarjotaan C++-kehys, jossa on toteutettu sellaisia ​​ominaisuuksia kuin viestijono ja monisäikeistys sekä mallinnustyökalut, joiden avulla voit yhdistää komponentteja ja generoida koodia automaattisesti.

NASA käytti Linuxia ja avoimen lähdekoodin ohjelmistoja Ingenuity Mars -raketissa


Lähde: opennet.ru

Lisää kommentti