The Smart Nano-satellite Attitude Propagator (SNAP) is a 6-DOF satellite attitude propagator implemented in MATLAB and Simulink that can be used to analyze the environmental torques affecting a satellite and to design and analyze passive attitude stabilization techniques, such as Passive Magnetic Stabilization and Gravity Gradient Stabilziation. The model includes models for:
- A simple two-body gravitational model for orbit propagation
- Gravity gradient torque
- Magnetic torque due to permanent magnets
- Magnetic Hysteresis torque and damping
- Advanced capabilities including aerodynamic torque and active magnetic control are available at the Space Systems Lab, but are not included in the release versions of SNAP. Contact the author regarding advanced capabilities and collaboration.
SNAP can be used to simulate the attitude and pointing dynamics in orbit for passive satellites. This is suitable for light-weight satellites (CubeSats, Nano-satellites, etc) whose attitude stability is largely affected by external environmental torques that are normally ignored in larger spacecraft design. SNAP was initially designed to simulate magnetic field tracking stabilization using permanent-magnets and hysteresis material for damping. It can also be used to simulate earth-pointing stabilization using a gravity gradient bias.
Since SNAP 2.0, users may augment the SNAP Simulink model with other sources of forces and torques. This allows the user community to build additional models, for example for active control schemes (reaction wheels, torque rods, momentum wheels, etc), solar models for power generation calculations (for a given attitude profile), and attitude determination sensor models to evaluate determination accuracy. Orbit propagation can also be studied with additional models for aerodynamic drag for orbit lifetime studies and thruster models for orbit maintenance.
The following video is a simulation of KySat-1. It is passive magnetically stabilized using a set of permanent magnets and hysteresis strips. SNAP simulates the attitude and produced an STK (Satellite Tool Kit by AGI) attitude file. The animation is done in STK, SNAP only produces the plots and is capable of outputting the attitude history.
References and More Information
The early versions of SNAP were based on the master’s thesis and the publications listed below. Later versions of SNAP include several improvements beyond the original work that are documented in the Advanced Information document.
-  Samir A. Rawashdeh, “Passive Attitude Stabilization for Small Satellites”, Master’s Thesis, University of Kentucky 2010, Lexington, KY (download)
-  Samir A. Rawashdeh, James E. Lumpp, Jr.,“Nano-Satellite Passive Attitude Stabilization Systems Design by Orbital Environment Modeling and Simulation”, AIAA Infotech@Aerospace Conference 2010, Atlanta, GA
-  Samir A. Rawashdeh, James E. Lumpp, Jr., “CubeSat Aerodynamic Stability at ISS Altitude and Inclination”, 26th Annual AIAA/USU Conference on Small Satellites, 2012, Logan, UT
-  S. A. Rawashdeh, J. E. Lumpp, “Aerodynamic Stability for CubeSats at ISS Orbit”, Journal of Small Satellites, vol. 2, no. 1 pp. 85-104, Jul 2013.
SNAP 2.0 Advanced Information: Model details, and guide for developers. This document applies to SNAP 2.64 (v2.64 is v2.0 with a bug fix and the added support for 64-bit machines).
- Release Notes
Please consult the Release Notes for information on running SNAP and the Minimum Requirements.
- MATLAB 2010b or newer.
- 32-bit or 64-bit Windows XP or newer.
- Please read Release Notes for more detailed requirements.