This project is solving the PhoneSat: Convert Your Smartphone Into a Satellite challenge. Description
Before the industrial revolution happened in England, the challenges were focused on improving roads and transportation. New roads were built, then improved with broken stones allowing faster carriages. Water canals were built as well, connecting cities along Great Britain.
But the real industrial revolution happened when the railroad transformed the steam engine in a locomotive. The cities changed, the economies changed and life in Earth changed deeply.
In the 1950´ the space race began just as the roads and transport improvements started in England. Today, more than 60 years later, this race is not only accessible to big government agencies or huge corporations. There is available knowledge and consumer electronic products that can be used, these days, to build a satellite.
This is a unique and historic opportunity for our civilization where students, professionals, engineers, entrepreneurs, hackers and makers are protagonists to achieve a better world through knowledge, and we want to be a part of it.
Our challenge was to achieve the construction of nano satellite in 24 hours of research and 36 hours of implementation.
And this test validated the power of access to scientific and technological open knowledge, mainly based on open source tools and consumer materials easy to get at any store. Thanks to this new reality we have a great chance to democratize access to space.
We decided to focus our project on the hardware development, data sensing and communications. We believe this is the foundation of the platform to create this revolution in space exploration.
To achieve this, we assembled a system based on a IOIO-OTG board that allowed us to interface the Phone (Samsung S4) to a battery, XBEE (Series 1) and five solar panels. Here's what we got:
And this is a general diagram of the system (drafted in a whiteboard during the hackathon):
With these elements in place we were able to capture sun energy, store it in the battery and provide power to the magnetorquer and phone (which also has an internal battery), and accomplished communication with the “Ground Control”.
We wanted to do a demo using balloons, but we couldn't due to a Helium leak (just like SpaceX's Falcon 9 on april 14th).
The challenge proposed designing the satellite as a bundle (just the phone with the additional hardware), but we thought it more convenient to adhere to the cubesat standard. This simplifies the launch options and provides a practical frame to accommodate all the hardware. The frame was the only part of the satellite that we produced before the hackathon. It was cut using a CNC router using an open source 3D model. The material is aluminum; a space-worthy design would probably require a less malleable alloy but could be made with the same method. It is a 2U cubesat as the phone we used does not fit the dimensions for 1U.
We designed a homemade magnetorquer so as to have an actuator for the cubesat's attitude.
This picture shows the magnetorquer before winding the inductors.
We used a 6mm x 70mm cylindrical ferrite core and wound it with around 6000 turns. Due to the time constrain we were only able to make one inductor. The magnetorquer works like a compass, generating a torque by trying to point to the North pole. We based our design on this article. By our design, each coil can be switched on or off using a MOS transistor (2n7000) connected to one of the IOIO's GPIO pins. This creates the need for a control system that works with an on-off actuator of this sort. We analyzed possible algorithms conceptually, and the output was an article proposing a potential control system (in Spanish).
We put 5 solar panels in parallel (with diodes protecting them from voltage drops among them), and connected them to a battery charger board:
The charger is the blue board shown in the following picture:
As the picture shows, it is connected to a LiPo battery, and outputs 5V to power the IOIO and charge the phone. In a final design, adding current sensors to each panel would allow this system to be used as a sun sensor, which would be used as an input to the attitude control subsystem.
To develop a “Ground Control” station, we developed software based on Node.js and webkit. This application received data from the satellite using another XBEE. To simulate real communication with a Satellite, we limited the speed at 9600 bps, similar to what a space-worthy radio could provide, and focused on transmitting images and the gyroscope values, both captured by the phone itself.
The UI was meant to provide an image/video feed, a simple circular slider to set the spacecraft's attitude, and a comm log. At 9600 bps, transmitting live images is difficult. We worked for a while on a communication protocol (both on the phone and the ground control app), and achieved a few successful transmissions. This still needs some debugging and improvements, but works as a proof-of-concept.
Combining Node.js and webkit (see this repo) allows us to have a desktop application for ground control, but based on web technologies. This might allow, in the future, to have a cloud based ground control, enabling us, in a very simple manner, to control the satellite from anywhere with an internet connection.
Next steps and launch
The project clearly needs quite some development to arrive to a design that can actually fly. Cubesat projects tend to take a few months, but we believe we arrived at a good proof of concept during these 2 days. There are commercial launch opportunities that we should analyze to send this bird to LEO, but first we must continue with hardware and software development. The hardware requires a thorough check of the phone's circuits to ensure the environment in LEO doesn't kill the satellite immediately: electrolytic capacitors should be replaced and the satellite should be tested in a thermo-vacuum chamber. All external hardware could be placed on a custom PCB, that should be designed to fit the frame in a robust manner. The radio should obviously be replaced with something more powerful; always having the power budget in mind. An ideal solution would use a UART for communication in a similar way to how the XBEE is interfaced.
Software is in a very early stage, and we plan to use Satellogic's space-proven, open-source platform as an inspiration to continue developing.
We hope to accomplish these goals throughout this year. We don't know how much the design can change in the process, but we believe we will see our satellite fly.
License: MIT license (MIT)
Source Code/Project URL: https://github.com/pcarranzav/phonesat_control
Ground Control source code (node.js + webkit) - https://github.com/pcarranzav/phonesat_ground_control
Photos - https://www.dropbox.com/sh/oaq4przh4jo2fvj/9vMBjENrXp
Proposed control system - https://www.dropbox.com/s/a4ye5p5l208kvc0/phonesatcontrol.pdf