National Aeronautics and Space Administration Goddard Space Flight

  • Slides: 15
Download presentation
National Aeronautics and Space Administration Goddard Space Flight Center Cubesat/Small. Sat Flight Software Alan

National Aeronautics and Space Administration Goddard Space Flight Center Cubesat/Small. Sat Flight Software Alan Cudmore NASA/GSFC Flight Software Systems Branch (Code 582) NASA Internal Use Only 1 1

Introduction • NASA/GSFC Cubesat/Small. Sat Flight Software is a distribution of NASA’s core Flight

Introduction • NASA/GSFC Cubesat/Small. Sat Flight Software is a distribution of NASA’s core Flight System (c. FS) flight software tailored for GSFC Cubesat/Small. Sat missions • The goals of the GSFC Cubesat/Smallsat c. FS Distribution are: • • To provide robust, proven flight software for a selection of GSFC’s Small. Sat and Cubesat hardware platforms and missions • To maximize software reuse for GSFC Cubesat/Small. Sat missions • To minimize integration time, test time, and cost for GSFC Cubesat/Small. Sat missions The NASA/GSFC Cubesat/Small. Sat c. FS distribution consists of: • Operating system and platform support for a specific set of processor cards • The reusable NASA/GSFC Core Flight Executive (c. FE) • A carefully selected set of reusable c. FS flight software applications (“apps”) to provide functionality that is common to every mission • A selection of Cubesat/Small. Sat and mission apps to provide mission specific functionality 2 2

c. FS Background Core Flight Software (c. FS) is a generic software framework and

c. FS Background Core Flight Software (c. FS) is a generic software framework and execution environment intended to be used on embedded systems. Originally developed by NASA GSFC due to common requirements between flight projects and desire to avoid “reinventing the wheel” Grown over the years: Released as Open Source (NOSA license) Used at several NASA centers for both flight and ground projects Runs on Vx. Works, [RT]Linux, RTEMS OS's Runs on x 86 (32/64 bit), ARM, SPARC/LEON, Power. PC CPU architectures Easily portable to additional embedded platforms/OSs using a modular board support package (BSP) and OS abstraction layer. 3 3

c. FS Architecture Heritage SMEXLite SAMPEX SWAS TRACE WIRE (8/92) (12/98) (3/98) (2/99) XTE

c. FS Architecture Heritage SMEXLite SAMPEX SWAS TRACE WIRE (8/92) (12/98) (3/98) (2/99) XTE (12/95) Triana/DSCOVR Swift BAT (12/04) TRMM (11/97) JWST ISIM (2018) Ice. Sat GLAS (01/03) MAP (06/01) ST-5 (4/06) SDO (2/10) 4 4

c. FS Based Missions at GSFC In Orbit or Completed Missions Upcoming Missions OPIS/WASP

c. FS Based Missions at GSFC In Orbit or Completed Missions Upcoming Missions OPIS/WASP There are many more external users of the c. FS Flight Software 5 5

c. FS Basic Architecture c. FS uses a collection of “apps” that primarily communicate

c. FS Basic Architecture c. FS uses a collection of “apps” that primarily communicate using a message passing architecture called the “Software Bus” Other Systems Gateway app Software Bus (SB) Telemetry and Commands CCSDS Space Packet Protocol Ground Station The Software Bus may be extended to exchange commands and telemetry with other systems/processors, which may or may not be based on c. FS. CCSDS standard 133. 0 -B-1 space packet protocol (with secondary command/telemetry header) is used for all messages, internal and external. 6 6

Cubesat/Small. Sat Distribution (1) The Distribution Starts with the Platform Layer (bottom), which is

Cubesat/Small. Sat Distribution (1) The Distribution Starts with the Platform Layer (bottom), which is specific to a processor card and operating system. The Platform layer is everything needed to allow the c. FS to run on a Cubesat/Smallsat Mission Specific Layer Cubesat/Smallsat Specific Apps and Components Reusable c. FS Layer Core Flight Executive and Reusable c. FS Applications Platform Layer Operating System Abstraction Layer Platform Support Package Real Time Operating System (Linux, Vx. Works, etc) Real Time OS Board Support Package Boot Software – Usually Vendor Provided ( u-boot, etc ) Cubesat/Small. Sat Hardware 7 7

Cubesat/Small. Sat Distribution (2) Next, the Reusable c. FS Layer provides the core functionality

Cubesat/Small. Sat Distribution (2) Next, the Reusable c. FS Layer provides the core functionality that is common to every mission Mission Specific Layer Cubesat/Smallsat Specific Apps and Components Reusable c. FS Apps Command Services: Uplink, Downlink, Stored Commands Spacecraft Health, Safety and Maintenance Services Failure Detection and Correction Services Recorder Manageme nt and File Transfer Services Core Flight Executive System Startup Exception, and Restart Services Table Services For Loadable Flight Parameters Publish and Subscribe Software Bus Time Services and Event Services Reusable c. FS Layer Platform Abstraction – Operating System and Board Specific 8 8

Cubesat/Small. Sat Distribution (3) Finally, the Mission Specific Layer adds support for commonly used

Cubesat/Small. Sat Distribution (3) Finally, the Mission Specific Layer adds support for commonly used components, and mission specific functionality Mission Specific Layer Radio Interface Apps (L 3 Cadet) (Innoflight) Attitude Control Components (Sun Sensors, Star Trackers, etc) Spacecraft Bus and Power Control Apps Instrument and Payload and Apps. Payload Apps Reusable c. FS Layer Core Flight Executive and Reusable c. FS Applications Platform Layer Platform Abstraction – Operating System and Board Specific 9 9

Cubesat/Smallsat c. FS Architecture Mission Specific Layer Reusable c. FS Layer Instrument 2 App

Cubesat/Smallsat c. FS Architecture Mission Specific Layer Reusable c. FS Layer Instrument 2 App Instrument 1 App Radio (L 3 Cadet) CFDP Check Sum Data Storage File Manager Limit Checker Memory Dwell Memory Man. Scheduler Attitude Control Housekeeping SB Network Health & Safe Stored Cmd. Python Ground System Core Flight Executive API Application Generator Core Flight Executive Performance Tools Performance Analyzer Platform Support Package API OS Abstraction API Tools Platform Layer Vx. Works RTEMS Linux • • • Unit Tests Mcp 750 -Vx. Works Build System Real Time Operating System OS Board Support Package Boot Software c. FE Open Source Release OSAL Open Source Release Application Open Source Releases 3 rd Party Mission Developed 10 10

1 1 Simulation on a Budget • Cubesat missions such as Dellingr do not

1 1 Simulation on a Budget • Cubesat missions such as Dellingr do not have dedicated dynamic simulator such as the Goddard Dynamic Simulator (GDS) for ACS testing • Simulation is accomplished with a combination of: • The open source dynamic simulator ” 42” developed by GSFC Code 591 • The capability in the c. FS to run on Linux and simulate hardware devices • Most of the ACS app debugging was done on c. FS/Linux with 42 • The Dellingr project did a single axis “hang and spin” test to test the ACS algorithms and exercise sun sensors and reaction wheels 11 11

More Information • c. FS home page: • https: //cfs. gsfc. nasa. gov •

More Information • c. FS home page: • https: //cfs. gsfc. nasa. gov • c. FS Community • https: //coreflightsystem. org • c. FS on Github: • c. FS-101 Training Package on Github: • https: //github. com/nasa/cfs-101 • NASA/GSFC Code 582 Flight Software Systems Branch • https: //etd. gsfc. nasa. gov/580/code 582. php • https: //github. com/nasa/cfe 12 12

Acronym List - 1 Acronym Definition 42 An open source spacecraft dynamic simulator API

Acronym List - 1 Acronym Definition 42 An open source spacecraft dynamic simulator API Application Programmer Interface BSP Board Support Package C&DH Command Data Handling CFDP CCSDS File Delivery Protocol c. FE Core Flight Executive c. FS Core Flight Software System CMD Command COTS Commercial Off The Shelf CRC Cyclic Redundancy Check CS Checksum (c. FS Application) DMA Direct Memory Access DS Data Storage (c. FS Application) EEPROM Electrically Erasable Programmable Read-Only Memory ES Executive Services (c. FE Core Component) EVS Event Services (c. FE Core Component) FDC Failure Detection and Correction FDIR Failure Detection, Isolation, and Recovery FM File Management (c. FS Application), Fault Management FSW Flight Software 13 13

Acronym List - 2 Acronym Definition GNC Guidance Navigation and Control GSFC Goddard Space

Acronym List - 2 Acronym Definition GNC Guidance Navigation and Control GSFC Goddard Space Flight Center GPM Global Precipitation Measurement GPS Global Positioning System HK Housekeeping (c. FS Application) HS Health and Safety (c. FS Application) HW Hardware Hz Hertz I&T Integration and Test LC Limit Checker (c. FS Application) OS Operating System OSAL Operating System Abstraction Layer PCI Peripheral Component Interconnect PSP Platform Support Package (c. FS platform porting layer) RAM Random Access Memory ROM Read Only Memory R/T Real Time RTOS Real Time Operating System RTS Relative Time Sequence S/C Spacecraft 14 14

Acronym List - 3 Acronym Definition SBC Single Board Computer SC Stored Commands (c.

Acronym List - 3 Acronym Definition SBC Single Board Computer SC Stored Commands (c. FS Application) SCH Scheduler (c. FS Application) SDO Solar Dynamics Observatory TBL Table Services (c. FE Core Component) TIME Time Services (c. FE Core Component) TLM Telemetry TO Telemetry Output UART Universal Asynchronous Receiver/Transmitter UDP User Datagram Protocol UT Unit Test UTC Universal Coordinated Time VCDU Virtual Channel Data Unit 15 15