The homework for this class is open-ended, as a reflection of it being a graduate class. The expectation is that you will fill out some details and make the experience an interesting and educational one for yourself. To give you maximum flexibility, there is no specific assignment, but you should choose two of the items below and submit your work on that item by the end of the semester (precise due date TBD).
cFE/CFS Ping-Pong. Continue exploring cFE by writing a small demonstration program (that can execute under Linux) that consists of two "ping-pong" modules which send a message back and forth between them (like in a game of ping-pong) at a fixed rate such as once per second. The two modules should generate telemetry indicating when they send a message. See if you can observe this telemetry using the tools provided with cFE/CFS.
Publish/Subscribe server for CubedOS. Finish the implementation of the publish/subscribe server for CubedOS. This entails implementing support in package Cubedos.Publish_Subscribe.Messages for the messages defined in the API. Ideally your solution would be free of flow issues (as detected by SPARK) and free of runtime errors (as proved by SPARK). A working publish/subscribe server for CubedOS would directly benefit our work on Lunar IceCube.
Command Dictionaries. Imagine a simplistic spacecraft that includes a thrusting with three thrust settings (low, medium, and high). The thruster can also be turned on and off. The thruster is attached to a gimbal that allows it to be pointed with two degrees of freedom: with an angle of 0 to 15 degrees from the thrust axis and an angle of -180 to +180 degrees oriented relative to an (unspecified here) reference direction).
Using either XTCE or the AMPCS schema, write a command dictionary appropriate for this thruster. It should contain (at least) commands to turn the thruster on and off, set the thrust level, and set the thruster orientation.
AX-25. Implement a part (your choice) of the AX-25 protocol, used in our first CubeSat, in SPARK 2014.
STK (1). Design an STK scenario whereby a spacecraft launched from the Randolph campus (the latitude is significant) is moving in a low Earth orbit and then executes a maneuver to put it into a geostationary transfer ellipse.
STK (2). Design an STK scenario whereby a spacecraft launched from the Sea Launch platform on the equator is moving in a geostationary transfer ellipse with a perigee of 300 km, executes a maneuver to put it into an escape trajectory towards the Moon.
MATLAB. Use MATLAB to implement an interesting spacecraft related program (computing temperatures? computing link parameters? computing orbital velocities/energies?)
Last Revised: 2024-11-25
© Copyright 2024 by Peter Chapin <peter.chapin@vermontstate.edu>