Repository logo




Journal Title

Journal ISSN

Volume Title




Degree Level



Attitude determination systems using stellar images and star catalogs are used to obtain accurate pointing directions of rockets, satellites and other spacecraft. The task is to match image stars to reference stars in a star catalog. The reference stars have known positions (right ascension and declination). If the image stars match a minimum of three reference stars, the positions are used to calculate the pointing direction of the spacecraft. The focus of this research is to develop an attitude determination algorithm and to investigate implementation on a microprocessor for rockets and micro-satellites. Rockets and micro-satellites have relatively small budgets compared to spacecraft missions and therefore this research is directed towards a low cost, reliable solution. Many algorithms have been developed to match the image stars to reference stars, some requiring initial attitude information and others which are fully autonomous. Fully autonomous systems are highly desirable because they are not susceptible to the failure of secondary instrumentation and are of lower cost. None of the previous methods provide an ideal solution to the problem. Therefore, the goal is to develop an algorithm for determining the attitude of a rocket or micro-satellite by using some of the 'best' concepts of the previous methods. This thesis develops a fully autonomous algorithm to determine the positions of stars within an image, attempts to match those image stars and if successful, calculates the pointing direction of the image using a minimum of three stars. The technique used to match the stars is the angular separation method along with the geometry of the triad. The algorithm has been tested on several images from two different cameras. The testing included processing and comparison of results for actual rocket image data from the OEDIPUS-C Sounding Rocket. The initial development of the algorithm was performed using Microsoft VisualC++ on a personal computer running Microsoft Windows NT 4.0 with floating-point calculation capability. While floating-point calculations are easy to work with, it is more likely that an integer arithmetic microprocessor would be flown aboard a rocket or micro-satellite. Therefore, the floating-point calculations were converted to fixed-point calculations in order to use integer calculations. The algorithm was tested both on a Pentium Il processor and the Motorola MC68360 microprocessor. The algorithm tested on the Motorola MC68360 microprocessor was compiled using the GNU C compiler on a personal computer running Linux.





Master of Science (M.Sc.)


Electrical and Computer Engineering


Electrical Engineering



Part Of