IP Library Granted Patent US 11,385,887
Granted Patent B2
US 11,385,887 · App. 17/110,115 · Granted Jul 12, 2022

Multi-mission configurable spacecraft system

Inventors: Sherrie Schmit (Sunnyvale, CA); James Pham (San Jose, CA); William Gray (Santa Clara, CA); William Hreha (San Jose, CA)
Assignee: MAXAR SPACE LLC
G06F8/65B64G1/66G06F9/45533G06F2009/4557G06F2009/45575G06F2009/45583
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,385,887
App. No.
17/110,115
Granted
Jul 12, 2022
Kind
B2
Abstract

A scalable, extensible, multi-tenancy multi-mission configurable spacecraft system is provided that allows applications to be deployed and managed across many spacecraft. One embodiment includes a plurality of satellites in orbit, where each satellite includes an antenna, a memory configured to store a non-virtualized operating system and one or more software applications, and a processor connected to the antenna and the memory. The processor is configured to run the non-virtualized operating system and to run the one or more software applications. The processors and the applications can be managed by ground terminals or other satellites.

Claims (75)

1. A method of operating a plurality of spacecrafts, comprising:

deploying a first software application across a first set of the spacecrafts while the first set of spacecrafts are in orbit such that each spacecraft of the first set of spacecrafts is executing the first software application;

deploying a second software application across a second set of the spacecrafts and the first set of spacecrafts while the first set of spacecrafts and the second set of spacecraft are in orbit such that each spacecraft of the first set of spacecrafts and the second set of spacecrafts is executing the second software application, the first set of spacecraft and the second set of spacecrafts are executing the second software application concurrently while the first set of spacecrafts are executing the first software application, the second set of spacecrafts and the first set of spacecrafts are disjoint sets of spacecrafts;

running management software on all of the plurality of spacecraft including the first set of spacecrafts and the second set of spacecrafts;

assigning a first set of work for the first software application to a processor for a particular spacecraft of the first set of spacecrafts;

detecting a high radiation condition at the particular spacecraft;

shutting down the processor of the particular spacecraft in response to detecting the high radiation condition;

reassigning the first set of work to a processor of a different spacecraft of the first set of spacecrafts in response to detecting the high radiation condition;

detecting that the high radiation condition at the particular spacecraft has ended; and

reassigning the workload for the first software application including assigning a portion of the first software application to the processor for the particular spacecraft in response to detecting that the high radiation condition at the particular spacecraft has ended.

2. The method of claim 1 , wherein:

the deploying the first software application across the first set of the spacecrafts includes the first set of spacecrafts executing the first software application in a container that is in direct contact with a non-virtual operating system; and

the deploying the second software application across the first set of spacecrafts and the second set of the spacecrafts includes the first set of spacecrafts and the second set of spacecrafts executing the second software application in a container that is in direct contact with a non-virtual operating system.

3. The method of claim 1 , further comprising:

deploying the first software application across a plurality of ground-based computing nodes while the first set of spacecrafts are in orbit such that each ground-based computing nodes of the plurality is executing of the first software application.

4. The method of claim 1 , wherein:

the deploying the first software application across the first set of the spacecrafts includes the first set of spacecrafts executing the first software application in a container that is in direct contact with a non-virtual operating system;

the deploying the second software application across the first set of spacecrafts and the second set of the spacecrafts includes the first set of spacecrafts and the second set of spacecrafts executing the second software application in a container that is in direct contact with a non-virtual operating system; and

the deploying the first software application across the plurality of ground-based computing nodes includes the ground-based computing nodes executing the first software application in a container.

5. The method of claim 1 , wherein:

the deploying the first software application across the first set of the satellites includes a first satellite of the first set of satellites executing the first software application using a first type of processor having a first architecture and a second spacecraft of the first set of spacecrafts executing the first software application using a second type of processor having a second architecture.

6. The method of claim 1 , further comprising:

removing the first software application from being executed by one or more spacecrafts of the first set of spacecrafts while the first set of spacecrafts are in orbit.

7. The method of claim 1 , further comprising:

deploying the first software application across one or more additional spacecrafts to the first set of spacecrafts while the first set of spacecrafts are executing the first software application.

8. The method of claim 1 , further comprising:

allocating resources on the first set of spacecrafts for use with the first software application; and

changing allocation of the resources on the first set of spacecrafts for use with the first software application while the first set of spacecrafts are executing the first software application, the changing allocation is performed by a node in orbit without ground intervention.

9. The method of claim 1 , wherein:

the first set of spacecrafts comprise a cluster of computing nodes;

one spacecraft of the first set of spacecrafts is a cluster master that controls the other computing nodes; and

the method further comprises the cluster master allocating resources on the first set of spacecrafts for use with the first software application.

10. The method of claim 9 , further comprising:

the cluster master communicating with other spacecrafts of the first set of spacecrafts via direct wireless communication without communicating via ground hops.

11. The method of claim 1 , wherein the first set of spacecrafts includes a plurality of data storage systems, the method further comprises:

receiving data to be stored without receiving an indication of which spacecraft is to store the received data; and

storing the received data across multiple spacecrafts of the first set of spacecrafts by storing the data in multiple data storage systems.

12. A method of operating a plurality of spacecrafts, comprising:

deploying a first software application across a first set of the spacecrafts while the first set of spacecrafts are in orbit such that each spacecraft of the first set of spacecrafts is executing the first software application;

deploying a second software application across a second set of the spacecrafts and the first set of spacecrafts while the first set of spacecrafts and the second set of spacecraft are in orbit such that each spacecraft of the first set of spacecrafts and the second set of spacecrafts is executing the second software application, the first set of spacecraft and the second set of spacecrafts are executing the second software application concurrently while the first set of spacecrafts are executing the first software application, the second set of spacecrafts and the first set of spacecrafts are disjoint sets of spacecrafts;

running management software on all of the plurality of spacecraft including the first set of spacecrafts and the second set of spacecrafts;

storing training data in a data storage system onboard one or more of the first set of spacecrafts;

onboard one or more of the first set of spacecrafts, training a classifier model to establish a trained classifier based on the training data stored in the data storage system onboard one or more of the first set of spacecrafts, the classifier model is part of the first software application;

storing the classifier model onboard one or more of the first set of spacecrafts;

storing new data in the data storage system onboard one or more of the first set of spacecrafts;

onboard one or more of the first set of spacecrafts, using the trained classifier model to classify the new data stored in the data storage system onboard one or more of the first set of spacecrafts; and

reporting the classification of the new data to a ground terminal.

13. One or more non-transitory processor readable storage devices having processor readable code embodied on the processor readable storage devices, the processor readable code for programming one or more processors to perform a method comprising:

deploying a first software application across a first set of spacecrafts while the first set of spacecrafts are in orbit such that each spacecraft of the first set of spacecrafts is executing the first software application in a container that is in direct contact with a non-virtual operating system;

deploying a second software application across a second set of spacecrafts while the second set of spacecraft are in orbit such that each spacecraft of the second set of spacecrafts is executing the second software application in a container that is in direct contact with a non-virtual operating system, the second set of spacecrafts is different than the first set of spacecrafts;

storing training data in a data storage system onboard one or more of the first set of spacecrafts;

onboard one or more of the first set of spacecrafts, training a classifier model to establish a trained classifier based on the training data stored in the data storage system onboard one or more of the first set of spacecrafts, the classifier model is part of the first software application;

storing the classifier model onboard one or more of the first set of spacecrafts;

storing new data in the data storage system onboard one or more of the first set of spacecrafts;

onboard one or more of the first set of spacecrafts, using the trained classifier model to classify the new data stored in the data storage system onboard one or more of the first set of spacecrafts; and

reporting the classification of the new data to a ground terminal.

14. A system, comprising:

a plurality of satellites in orbit such that each satellite includes an antenna, a memory configured to store a non-virtualized operating system and one or more software applications and a processor connected to the antenna and the memory, the processor is configured to run the non-virtualized operating system, the processor is configured to run the one or more software applications such that the one or more software applications are in direct contact with the non-virtualized operating system without the one or more software applications being executed by a virtual operating system, a first software application is deployed across a first set of the satellites, the plurality of satellites comprises a cluster of computing nodes, one satellite of the plurality of satellites is a cluster master that controls the other computing nodes, the cluster master is configured to:

assign a first set of work for the first software application to a processor for a particular satellite of the plurality of satellites,

detecting a high radiation condition at the particular satellite,

shutting down the processor of the particular satellite in response to detecting the high radiation condition,

reassigning the first set of work to a processor of a different satellite of the plurality of satellites in response to detecting the high radiation condition,

detecting that the high radiation condition at the particular satellite has ended, and

reassigning the workload for the first software application including assigning a portion of the first software application to the processor for the particular satellite in response to detecting that the high radiation condition at the particular satellite has ended; and

a plurality of ground-based computing nodes, each ground-based computing node includes a memory configured to store one or more software applications and a processor connected to the memory, the processor is configured to run the one or more software applications, a second software application is deployed across a subset of the satellites and a first set of the ground-based computing nodes concurrently while the first software application is deployed across the first set of the satellites.

15. A spacecraft, comprising:

an antenna;

a memory configured to store a non-virtualized operating system and a software application packaged in a container; and

a processor connected to the antenna and the memory, the processor is configured to run the non-virtualized operating system, the processor is configured to run the software application in the container such that the software application in the container is in direct contact with the non-virtualized operating system without the software application being executed by a virtual operating system, the processor is configured to wirelessly communicate with a master satellite to receive instructions for executing the software application in the container from the master satellite, the process configured to:

store training data in the memory onboard the spacecraft,

train a classifier model onboard the spacecraft to establish a trained classifier based on the training data stored in the memory, the classifier model is part of the software application,

store the classifier model onboard the spacecraft,

store new data in the memory onboard the spacecraft,

use the trained classifier model in the memory onboard the spacecraft to classify the new data stored, and

report the classification of the new data to a ground terminal.

Assignments (9)
CHANGE OF NAME Recorded Jan 7, 2026
From: MAXAR SPACE LLC
To: LANTERIS SPACE LLC
Reel/Frame 074270/0351 →
CHANGE OF NAME Recorded Nov 6, 2025
From: MAXAR SPACE LLC
To: LANTERIS SPACE LLC
Reel/Frame 073512/0398 →
RELEASE (REEL 060389/FRAME 0720) Recorded May 12, 2023
From: ROYAL BANK OF CANADA
To: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
Reel/Frame 063633/0431 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 5, 2023
From: MAXAR INTELLIGENCE INC. (F/K/A DIGITALGLOBE, INC.); AURORA INSIGHT INC.; MAXAR MISSION SOLUTIONS INC. ((F/K/A RADIANT MISSION SOLUTIONS INC. (F/K/A THE RADIANT GROUP, INC.)); MAXAR SPACE LLC (F/K/A SPACE SYSTEMS/LORAL, LLC); SPATIAL ENERGY, LLC; MAXAR SPACE ROBOTICS LLC ((F/K/A SSL ROBOTICS LLC) (F/K/A MDA US SYSTEMS LLC)); MAXAR TECHNOLOGIES HOLDINGS INC.
To: SIXTH STREET LENDING PARTNERS, AS ADMINISTRATIVE AGENT
Reel/Frame 063660/0138 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT - RELEASE OF REEL/FRAME 060389/0782 Recorded May 4, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
Reel/Frame 063544/0074 →
SECURITY AGREEMENT Recorded Jun 17, 2022
From: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 060389/0782 →
SECURITY AGREEMENT Recorded Jun 16, 2022
From: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
To: ROYAL BANK OF CANADA
Reel/Frame 060389/0720 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2021
From: SPACE SYSTEMS/LORAL, LLC
To: MAXAR SPACE LLC
Reel/Frame 054960/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2020
From: SCHMIT, SHERRIE; PHAM, JAMES; GRAY, WILLIAM; HREHA, WILLIAM
To: SPACE SYSTEMS/LORAL, LLC
Reel/Frame 054522/0290 →
Continuity (2)
Provisional Application 62994651 · Mar 25, 2020
Related Publication 20210303290A1 · Sep 30, 2021
Cited By (4)
US 12,368,503 US 12,587,274 US 12,603,701 US 12,627,372