Designing a next generation free-flying autonomous robot [see Figure 1], scheduled to be deployed on the International Space Station (ISS) in 2017, is no trivial task. The NASA Astrobee will serve as a robotic assistant to offload routine, repetitive, but long-duration and CPU-intensive tasks  and replace a legacy and older free-flying robot.
Challenges in building the Astrobee avionics
The Astrobee has subsystems for structure, propulsion, power, guidance, navigation and control (GN&C), command and data handling (C&DH), thermal control, communications, docking mechanism, and a perching arm . As seen in the block diagram in Figure-2 , the avionics provides computation and communication resources for the Astrobee. The three compute platforms are the low- [LLP], mid- [MLP], and high-level-processor [HLP], which are configured to perform specific functions.
The bake-off to pick the right compute platform
Choosing an appropriate compute platform is the most critical part of designing the avionics. Particularly since the new stuff will replace an ageing workhorse in the ISS, it must be upgradeable, and reliably serve for several years ahead. So the engineers at NASA Ames ran a thorough analysis that compared commercial compute platforms (SOMs and SBCs) from six different vendors. The following were their requirements: 
- Compute power: The MLP runs vision-based mapping and navigation algorithms, which requires high-end processing capability.
- Software development cost: The MLP runs the Robot Operating System (ROS) package on a Linux OS and hence compute modules that support this requirement along with appropriate device drivers was critical.
- Hardware development cost: Off-the-shelf compute platforms that offer plug-and-play capabilities get better scores.
- Modularity: Crews on the ISS should be able to swap these modules effortlessly should a failure occur or an upgrade is required. SOMs with edge connectors got a higher score since no wires and nuts/bolts needed to be operated.
- Connectivity: Ethernet, I2C, SPI, USB 2.0, and WiFi are basic requirements for the MLP to communicate with the LLP, HLP, and external devices.
- Power consumption: Depending on use-cases, the Astrobee must be able to run on batteries upwards of 9 hours. Lower the power consumption, better the score.
Results from the bake-off to pick the right compute platforms for the Astrobee
Nine products from six independent vendors were analyzed in a bake-off. The Inforce 6501 Micro SOM came in a clear winner with an overall score of 3.14 (see results in Table-1 below), beating some well-known names/vendors out there. The Inforce 6501 Micro SOM scored high marks for computing power, modularity, software development cost, and communications. Based on these results, the NASA Ames Intelligent Robotics Group decided to use the Inforce 6501™ Micro SOM for both the MLP and the HLP on the Astrobee.
Other factors that pitched the Inforce 6501 Micro SOM to the top spot were:
- Qualcomm Snapdragon 805 processor (APQ8084) with quad-core 2.7GHz CPUs and heterogeneous compute that includes Hexagon DSP, Adreno GPU and dual ISPs enabling streaming of 1080p HD and H.264 encoded video to the ground
- Support for Linux (Ubuntu) and ROS–this is the first known port of ROS on the Qualcomm Snapdragon 805 processor (APQ8084) platform.
- Readily available camera (4K HD capable ACC-1H30) and display (4” ACC-1B10) accessories and associated device drivers to run on an Android OS (for the HLP).
- Tiny form-factor (28mm x 50mm) and cross-compatibility with a common carrier board design makes it easily swappable and upgradeable to newer Snapdragon modules in the future.
If your embedded design has multiple compute-intensive applications such as high-megapixel camera based image processing, navigation, motor control for robotic arms, and need additional headroom with heterogeneous compute resources, look no further than the proven Inforce 6501 Micro SOM or its successor, the upcoming Inforce 6601 Micro SOM.
All photos courtesy of NASA Ames Research Center publications—see below.
 Astrobee: Developing a Free Flying Robot for the International Space Station— a paper published for the American Association of Aeronautics and Astronautics
Inforce Computing Desk
© 2016 Inforce Computing, Inc. All rights reserved.