The lost scientist

Hello world!

Life as a programmer is pretty simple. You have a task, you do some diagrams, write the code and voila, everything is working. I think everyone who has done some programming will agree with me on this point except in most cases, it can be the complete opposite. Like a game of finding the needle in the haystack, where the needle represents a small mistake somewhere hidden in the code. My project leader Anna is overly-caffeinated and worried, and my team leader Nic and rest of the software team is waiting for you to find the mistake. I think to myself, how did I end up here? 

This takes us back to pre-summer 2017 when, the soon-to-be BESPIN team were still discussing different project ideas. My background as a space engineering student is towards atmospheric and space physics so I was hoping for a fun science part in this whole project. When Antara, a member of the mechanical team, came up with the brilliant idea to send up a balloon with a rocket and shoot it out to make it float everyone was sold. It was an intriguing idea but concerned me as there were no science part in this project. After some consideration I decided to join the software team even though I knew it will be a challenge and it will take about one and a half year to fully complete the project. The five-year long space engineer program at Luleå University of Technology provides some education in programming and working with microcontrollers but I couldn’t stop worrying if it would be enough for the difficult task at hand. In the end, and I think I speak for everyone in the team and the other teams of Rexus/Bexus campaign that we are here to learn and challenge our self with a real life problem after all these years of staring in the physics book. And come on, who would pass on the chance to send an experiment on a big rocket. An adventure was begun and I don’t regret my decision… yet. 

As a member of the outstanding BESPIN software team, my task is to make all the parts work together with help of a microcontroller, the mind of the experiment. After the rocket will ascend and the nose of the rocket will detach it’s up to our team to make the damn thing do something. The mechanical and electrical team have made all the parts and making sure everything should function properly and we should implement the brain. I can’t promise it will be a particular intelligent brain but it should be simple and reliable. Some things I have been working on during this first half year of the project can be seen here.
 
 
 
 
 
The first picture shows a mode diagram of the different modes we want to create. We need a test mode which might be self explanatory, simply the mode we will work in before the actual experiment is done. Then we can see the mode that will be activated when in this case a pin on the microcontroller is changed from 1 to 0 (Test=0). We can use a signal that comes from the rockets module that indicates that launch will occur and move from pre-launch to ascent. With a timer which will be pre-determined (how long it will take for the rocket to reach the highest altitude) the experiment will move into descent mode where it will shoot out from the rocket with a loaded spring and start falling. We mainly use a pressure sensor to determine when the experiment will float but this is an example of writing safe code: a timer is also used if the pressure sensor would fail for some reason. We use redundancy in our software to have a backup if something would not function properly.
 
 
 
Another example of our work in the software team is seen in figure two which is a class-diagram of the atmospheric pressure sensor. We have divided all devices and functions of the software in different classes. The different classes then have specific tasks that we will give them. This is all done to make the programming part much easier and hopefully not make me look for the damn needle in that haystack (I know that damn needle is waiting for me somewhere). Figure three shows all the devices and functions and how they are connected. This will eventually be the mind of our microcontroller which will guide our little balloon to safety and not smashed into the ground from 80 kilometers free fall.

We in the software team have a lot of work ahead of us this summer and as I knew before joining the project, it will be a challenge and really put my programming skills to a serious test. Despite this, I am confident in our team and I believe in the end, when we see our precious little balloon up there in sky, it will all be worth the sleepless nights and money spent on energy drinks.  

Thank you so much for reading and if you have any questions regarding the software part of the project me and my team members will try to answer them for you. 

Until next time,
Joar Marchner Brandt

Allmänt | |
Upp