maandag 24 juli 2017

Paving the way for our presence on the Moon

Reading the books and watching the TV series “the Expanse” awoken my old boyish-dreams of our presence on the Moon. Growing up with a dad that introduced me to the fantastic worlds of Larry Niven, Brian Aldiss, Isaac Asimov, Jack Vance, and Arthur C. Clark, gave me hope for the future and it motivated me to start my studies in Space Engineering. The science fiction became real-life science and engineering and I began to understand why the future was not yet achieved. We have made space engineering very complicated and expensive, which allowed only nations to perform this type of activities. But, I am living in the future of my old heroes of words and spaceflight has a permanent role in our daily life. 

And more and more young engineers want to participate, because space is not that complicated anymore. We evolve as humans, such that complicated problems in the past are simple issues in the future. James S. A. Corey (A.K.A. Daniel Abraham and Ty Franck) hints to this as well in the novels of "the Expanse”, where a 'simple’ mechanic makes nuclear fusion and complex astrodynamics calculations in the back of his mind. To make this reality, we need to educate our students with more ‘complicated’ techniques and tools than the guys from the Apollo program had at the time. In other words, if we want to go to the Moon again, we need to pave the way by educating our students in new and different theories and practises then we did before.

Artist's impression of project IRIS
And this is what I try to do in my role as lecture. Last month, ten of my students presented their Design Synthesis Exercise (DSE), this is their final project to complete the Bachelor of Aerospace Engineering at the TU Delft in the Netherlands. Staff members present an idea or problem for which students can prescribe and design a solution (some sort of aircraft or space vehicle). Thanks to "the Expanse” I was envisioning ways to bring humanity back to the Moon. A difficult problem, so how to do it? I thought of the French president de Gaulle, who decided to invest in the French highway infrastructure in a time of poverty (just after WWII), but ultimately this infrastructure boosted the French economy, tourisme, and mobility in ways that baffled de Gaulle’s critics.  

The Moon needs infrastructure! Infrastructure that facilitates surface research platforms, mining missions and other human presence on the Moon. Not for the few missions and proposals that we have now, but for Moon missions and applications we have not yet thought of. So, during the DSE my students had to design an infrastructure system around the Moon that was capable of enabling 24/7 communication on the Moon surface (the complete Moon surface, so also the far-side and the poles). They had to design the constellation, the satellites themselves, a deployment strategy and the transfer trajectory. And they had to do it cheap! Some found my idea too complicated for 3rd year undergrads, but the students really showed several innovative ideas and were capable to construct a feasible design.
Logo of project IRIS
Their first innovative design is the transfer trajectory. Instead of using a simple Hohmann transfer, they opted for a low-energy ballistic transfer trajectory, in which the rocket flies to the Sun-Earth L2 equilibrium point and falls back to a Moon orbit, without the need for a large insertion thrust at Moon orbit (as you do in a Hohmann transfer). I provided the students with some basic on three-body problem mechanics, some literature, and a simple Matlab script that was able to propagate objects in space. The figure below shows the designed trajectory they came up with:

The complete low energy transfer trajectory in Sun-centred rotating frame designed by the students
This choice of transfer trajectory reduces the amount of propellant needed, extra mass you need to launch into space. Of course, this comes with a price. Instead of the 2-day travel time you have with a direct transfer, these type of trajectories could take several months. However, if you have the time  (no humans onboard), why not? Furthermore, a ballistic transfer trajectory eliminates the need for a large complicated propulsion system onboard your spacecraft, because it does not need to slow down the spacecraft at the Moon orbit. This opens up a whole new type of satellites that could orbit the Moon.

Engineering drawings of one of the designed cubesat communication satellite, showing some of the internal and external subsystems. The satellite used a parabolic and a phased-array antenna for communication, hence the large solar cell array.
This relates to the second innovative idea of my students, which is to use multiple small but identical satellites that operated in a Swarm-type of constellation. Small satellites (like Cubesats) are making their way to professional applications here around Earth. Think about a company like Planet (Labs, used to) that uses cubesats to observe the entire Earth with their goal being to generate a real-time Google Earth. The don’t need a few big complicated satellites, they need a lot of cheap, small, and simple sats with a camera and a communication system to send the data back to Earth. Other applications are Earthquake warning system (QuakeSat), global Wifi (project Outernet), or understanding our atmosphere (QB50). Cheap to manufacture and launch (small is light) and the system’s reliability could be reduced, because if one sat fails multiple others are still present to fulfil the mission. And let’s just be honest, multiple satellite deployment is just so cool to watch:


This DSE project showed that students are capable of creating innovative ideas and are able to think about realistic solutions in space engineering. A new age of space engineering is at our doorsteps and it might open up interplanetary space for humanity.

Note: all figures were obtained from my students DSE report: Information Relay InfraStructure for translunar communication. 

maandag 8 mei 2017

Delfi-C3 is feeling the power of Spring

All the trees have blossom, baby ducklings are rooming the ponds, and we get more Sun: we survived the winter! Spring is here to give us our much needed vitamine D. 
Spring on the campus of TU Delft
Not only on the surface of the Earth this is felt, but also in outer space. The Delfi-C3, now more than 9 years orbiting our Earth, notices that spring has arrived on the Northern Hemisphere. During winter, our ground station (DopTrack) only receives data during the morning and mid day (between 8:00 and 13:00 CET). Starting from April, we start receiving signal around 20:00 CET.
Fraction of a 24 hour day (UTC) at Time of Closest Approach (TCA) of the Delfi-C3 with DopTrack.
We saw this already last year, when in April the telemetry of Delfi-C3 started appearing in the evening. The Sun was already set on the ground, but at 560 km height light was still shinning on the solar cells of the satellite. The satellite is designed such that when sunlight hits the solar cells and enough power is received the onboard computer turns on and goes through its boot program. Equipment is turned on and the radio is transmitting telemetry back to Earth. The data is transmitted on a carrier frequency, that is recorded by the DopTrack at TCA, which we call Frequency at Closest Approach (FCA).
The complete dataset of DopTrack consisting of recordings of Delfi-C3's FCA for almost 2 years now. A clear distinction between mid-day and evening passes can be noticed.
We have recorded the radio transmissions of Delfi-C3 with our calibrated equipment, enabling us to accurately determining the received frequency. The mid-day passes seem more stable around an average 145888000 Hz, whereas the evening passes have a larger spread and higher averaged frequency. More analysis is needed, but we suspect that in the evening passes the thermal equilibrium is not yet obtained during recordings. Lets hope after this spring we can say more.

zaterdag 14 januari 2017

Interacting of the SDR with Matlab during my classroom tutorial

This year was the second time I gave my tutorial with an SDR dongle. The idea behind this tutorial is to simulate ground-station-to-satellite interaction in the radiowave spectrum. The ground station is replaced by the SDR dongle and the student's computer. For the satellite, I use a radio beacon designed and built by a colleague of mine. The device transmits an FSK modulated signal at a certain frequency. During the tutorial, the students learn to develope software that interacts with the SDR, such that they can process the digital stream observed by the SDR. I made a small video of the signal with GQRX software, such that you can see the signal in the frequency spectrum and listen to the FSK modulation.

Last year, I was using an open-source software package "gnuradio" for the signal processing part, but I found out that this introduced a lot of trouble-shouting in the first few hours, because of students having:
  • different operating systems and versions (every single student had different installation problems)
  • different level of experience with python, shell scripting, or other software language (the tutorial is part of our Space Minor, so we get a variety of students from different faculties and the learning curve of gnu radio is just to steep)
  • different level of understanding of signal processing theory
This made last year's tutorial interesting and a lot of fun, but also very chaotic. This year, I decided to streamline it a bit more. Luckily at out university, most staff and students use Matlab for programming in their education (which runs on any operating system), therefore by converting the tutorial to Matlab would solve the first two evaluation points. Furthermore, gnuradio has a lot of possibilities, but this overwelms the more beginner-experienced students. Matlab has all the basics (needed for this tutorials), but does not have large libraries where you could drown in coding. Thanks to Mathworks new toolbox "RTL-SDR Support from Communications System Toolbox", communicating to the SDR is now very simple. 

Students would get an SDR dongle to connect to their laptop via an USB port (I discussed this SDR in a previous post). They need to develop software that can process the data from the ground station. So, to replicate this I let them record the QI signal that is observed by their mini-ground station and they need to plot the corresponding waterfall plot (as is seen in the video). 

The radio transmitter built by my colleague that is used in the ground station tutorial. It transmits a call sign with an FSK modulation. Left is the transmitter and right is an GPS antenna to calibrate the oscillator of the device
The code to record the QI signal coming from the SDR dongle is listed below. I modified an m-file from the SDR Toolbox tutorial (sdrrSpectrumAnalyzer.m). 

clear;
clc;
close all;
 
% Set initial parameters (these settings can be changed according to the user needs)
T                  = 60;            % Length of recorded signal (sec)
fc                 = 28.126125e6;   % Center frequency (Hz)
FrontEndSampleRate = 250e3;         % Samples per second (Hz)
 
% Do not change the following settings
n = 1;                              % multiple of the Framelength
FrameLength        = n*256;         % samples per counted frame
dt = FrameLength/FrontEndSampleRate;% length of sample
count = ceil(T/dt);                 % number of counts
 
% Create receiver and spectrum analyzer System objects
hSDRrRx = comm.SDRRTLReceiver(...
    'CenterFrequency', fc, ...
    'EnableTunerAGC',  true, ...
    'SampleRate',      FrontEndSampleRate, ...
    'SamplesPerFrame', FrameLength, ...
    'OutputDataType',  'double');
 
% Open file to write data
fid = fopen('Test_data_GPS_250kHz_minus.32fc','wb');

%% Stream processing
if ~isempty(sdrinfo(hSDRrRx.RadioAddress))
    for count = 1 : count
        % get data from SDR
        [data, ~] = step(hSDRrRx);  % no 'len' output needed for blocking operation
        data = data - mean(data);   % remove DC component
        
        % Construct the QI signal in a vector
        D = zeros(size(data,1),2);
        D(:,1) = real(data);
        D(:,2) = imag(data);
        
        % write the QI signal to a file
        fwrite(fid,D','float');
    end
else
    warning(message('SDR:sysobjdemos:MainLoop'))
end
 
fclose(fid);
% Release all System objects
release(hSDRrRx);

This code will generate a file that is similar to the recording-data files our ground station is generating. So, if the students are able to post process their own recorded data, the ground station data files should easily be processed as well. How to plot a waterfall plot, was already discussed here. Since then, I have improved my coding, but the basics are kept the same. When following these instructions, I obtained the following waterfall plot of the FSK-modulated radio signal transmitted during class.
Waterfall plot of the recording with the SDR dongle during class. 
The radio signal is visible in the spectrogram (or waterfall plot). No characteristic S-curve is seen, because in class the transmitter is not moving with respect to the antenna's of the students. The carrier frequency is kept at the same value, because the relative velocity of the receiver and transmitter is zero. The FSK modulations is seen when we zoom in on the signal.
Zoomed in version of the waterfall plot, such that the signal can be better inspected.
Here, (not so clear as in the video) can be seen that the frequency jumps between four different values, such that it is able to communicate data. In the video this can be heard as four different tones of the signal. Note the reflections of the signal to the left and right of the zoomed in spectrogram. A good filter should be able to remove these, but I have kept it simple.

I found the interface of Matlab with the SDR very simple to use, which made it ideal to be used for my course on satellite communication and tracking.