JOURACA_SP_2017
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Software Infrastructure<br />
for Cubesat<br />
Brent Greenwald<br />
This paper describes the development of the<br />
Command & Data Handling System<br />
(C&DH) for the "JAGSAT-1", a CubeSat<br />
created by the CubeSat Team at the University<br />
of South Alabama. The C&DH is designed<br />
to receive status messages from other<br />
components of the CubeSat, receive commands<br />
and code updates from ground control,<br />
and issue commands to components of<br />
the CubeSat in order to carry out the scientific<br />
mission and perform important housekeeping<br />
functions. Using a "software ecosystem,"<br />
which is being developed to enable<br />
multiple microprocessors to connect and<br />
communicate with each other each other,<br />
the C&DH will receive events, interpret<br />
them, then generate commands to issue back<br />
with the use of real-time queuing. Our team<br />
is creating a probe for measuring the frequency-dependent<br />
behavior of ionic plasma<br />
in the magnetosphere. The team successfully<br />
launched its first prototype in a suborbital<br />
mission in March 2016, and is still analyzing<br />
the data from the launch. Now moving<br />
on to stage two, we plan to create a complete<br />
satellite (called a "Cubesat") that will<br />
orbit the planet collecting measurements<br />
that we will receive throughout the mission's<br />
life span. The first step was to purchase<br />
two "Tower" development systems<br />
for the microprocessor that has been selected<br />
for most of the CubeSat boards. The<br />
processor is an NXP Kinetis processor,<br />
Department of Electrical and<br />
Computer Engineering<br />
Electrical and<br />
Computer Engineering<br />
Mentor: Dr. Samuel Russ<br />
which features low power consumption and<br />
a usable software development environment.<br />
After learning to use the environment,<br />
a simple "hello world" program was<br />
developed and tested using PuTTY (a serialport<br />
debugger). The next step was to get two<br />
development systems to communicate over<br />
a CAN interface. This was accomplished<br />
by, first, configuring the Kinetis processors<br />
to enable CAN pins for transmitting and<br />
receiving and, second, sending and receiving<br />
messages over CAN. In conclusion, we<br />
have developed a software environment for<br />
13