CubeSats are a type of miniature satellite that are around the size of a shoe box and made from easily available, non-aerospace, parts. Because CubeSats use widely supported technologies, you no longer have to be a government or a space corporation to send a satellite into orbit: building a CubeSat is within the reach of individuals, universities and other organisations. The small size of the Raspberry Pi Compute Module makes it suitable for this very exciting application, and today we have a guest blog post from the University of Surrey to tell us more.
The Surrey Space Centre, Chris Bridges and CubeSats
Dr Chris Bridges leads the spacecraft On-Board Data Handling group in the Surrey Space Centre at the University of Surrey. He researches and teaches computer hardware and software to provide reliable computer processing in the harsh radiation environment of space. Chris is also an amateur radio enthusiast, with a passion for hacking almost any electronics for space and telling everyone that the sky is most definitely not the limit. He was involved at the beginning of the Astro Pi project back in 2014, since he has been working on numerous space flight projects involving Raspberry Pi devices and has been doing thermal and vacuum tests on them with his students.
Together with Surrey Satellite Technology Ltd, he designed, built, programmed, launched, and operated the UK’s first CubeSat, called STRaND1. The STRaND1 mission aimed to train new researchers and students as well as to launch novel payloads aboard CubeSats, including a smartphone. The team is proud of the enthusiastic coverage that the BBC and New Scientist magazine gave to the world’s first ‘phone-sat’!
Raspberry Pi in space: detecting other CubeSats
Space is a harsh environment where it’s difficult to ensure that a computer will operate reliably for an extended period of time. Cosmic radiation interferes with transistors and can bit-flip computer memory (change the state of a single binary bit from a 0 to a 1 or from a 1 to a 0) causing what’s known as a single event upset crash.
Solving this is traditionally highly expensive, but using commercial off-the-shelf technologies has been proven as an effective method in reducing these costs. Being small, powerful, and low-cost, with large community support, Raspberry Pis are an obvious candidate here, provided that they can operate reliably in space. Chris says,
CubeSats and nanosatellites are a great educational tool used around the world – for students, staff, and researchers to learn about the Earth, and explore further into our solar system. For me, the new tech I’d like to try out is towards better computing parts – the Raspberry Pi fits the bill here.
Led by Professor Craig Underwood at the Surrey Space Centre, Chris is working on the on-board computer for the STRaND2 and AAReST CubeSat missions, along with CalTech and the NASA Jet Propulsion Laboratory in the US. These CubeSat missions require the processing and detection of other CubeSats in flight for rendezvous and docking experiments, as well as for collision avoidance manoeuvres.
These kinds of CubeSats employ light detection and ranging technologies (LIDAR) as a way to measure distance to nearby objects in space. This works by illuminating the target with a laser beam and then analysing the reflected light to calculate how far away the target is.
Postgrad student Richard Duke achieved this with a Raspberry Pi, an ordinary Microsoft Kinect and some custom Linux drivers that he rewrote himself. He now works at Surrey Space Centre as a software engineer. Enthusiasts can find detailed information in Craig and Chris’ paper on AAReST published in Acta Astronautica and their paper on STRaND2 at the IEEE/AIAA Aerospace Conference.
The project allowed me to gain real-world technical knowledge into Linux hardware drivers and the building of a full LIDAR sensor package. Using low-cost but highly capable components such as the Raspberry Pi in spaceflight is a hugely exciting area of technology. It’s been fantastic to be a part of developing real space projects as part of my Masters degree.
Here is a video of Richard’s work, showing a Raspberry Pi Model B controlling a CubeSat on a frictionless test platform. It’s sending the LIDAR information over WiFi back to a Windows laptop which is processing it. The detection algorithm autonomously obtains the range and pose of the target/obstacle (the cardboard Kinect box) sixteen times every second. You can even hear the compressed air propulsion from the CubeSat firing as it gets close to the target in order to avoid a collision.
The Raspberry Pi Compute Module and reliability through redundancy
One way of making sure that a Raspberry Pi can operate reliably in space is through redundancy: if multiple Raspberry Pis are used, then if one of them should fail, another can take over (the same system used on the space shuttle). Using this method, students at the Surrey Space Centre have developed several on-board computer systems.
The smallest size of the popular CubeSat format measures just 10x10x10cm (known as 1U), and the largest 10x10x34cm (3U). As physical space is at a premium inside a CubeSat, undergraduate Oliver Launchbury-Clark developed a new on-board computer specifically for the AAReST CubeSat mission. Designed in KiCad (an open source PCB design tool), Oliver’s board is PC/104-compliant and features two Raspberry Pi Compute Modules and an MSP430 microcontroller to provide some ultra-low power functionality.
The Raspberry Pis kindle an interest in space, programming and engineering in general by providing an accessible method for students of any age to have their programs run in space.
CubeSats: widening access to space
Building CubeSats is just as hard as building a full satellite – but being able to use the latest technologies that are widely supported means that access is no longer restricted to government space programmes or large space corporations. Now, universities and private individuals can undertake these ambitious projects too.
Craig and Chris visited Caltech in Pasadena USA and got a chance to visit the NASA Jet Propulsion Laboratory in September 2015. Chris writes,
It’s a truly inspiring place – and we now need to build and work on the software to meet all the mission requirements.
At the SmallSat Conference in Utah, it was announced that the AAReST mission is planned for launch in 2018 – just one of the many CubeSat missions NASA is working on.
The tweet below shows different CubeSat missions (rows) and when they were/are planned to fly (columns). For more information go here.
Many thanks to the Raspberry Pi Foundation for donating Pis and a Compute Module to begin all this development. Chris will be looking for more Surrey students to get involved to create new software chains with US partners – so feel free to get in touch with him to help develop their line of CubeSats!