Home Magazines Editors-in-Chief FAQs Contact Us

Development of a high-accuracy low-cost sun sensor for CubeSat application

Aeronautics and Aerospace Open Access Journal
Josh O’Neill, Nadja Bressan, Grant McSorley, Nicholas Krouglicof

PDF Full Text


Sun sensors are commonly employed to determine the attitude of a spacecraft by defining the unit sun vector, which points from the center of the spacecraft’s local reference frame toward the center of the sun. That information can then be used to satisfy the pointing requirements of an attitude control system, such as the one to be implemented on the SpudNik-1 CubeSat; this system requires knowledge of attitude to within 0.13 degrees, making high-accuracy sun sensors a necessity. However, like most off-the-shelf space hardware, commercially available high-accuracy sun sensors are expensive, making it difficult for teams working on space projects to both meet their pointing requirements and comply with their financial constraints. The purpose of this research is to assess the concept of using a simple pin-hole camera as a low-cost high-accuracy sun sensor for CubeSat application. To do so, an off-the-shelf camera module, which employs an OV7670 image sensor, was modified to replace the lens with a small hole before fixing it to the base of a robotic arm. The robotic arm was then programmed to point a laser attachment toward the hole while changing the angle of incidence in 1 degree increments. Due to the high intensity of the laser, the image sensor needed a brief period of about 5 seconds to reach steady-state after each movement. As a result, a series of images were taken for each position and images were only selected for further processing once their visible change with respect to time was minimal. Once the data was gathered, a MATLAB script was written to process the images and determine the laser’s angle of incidence based on the sensor’s geometry. Provided that the sensor is used within its region of operation, which is limited by its fieldof-view of about 8 degrees, the results from this test show that a maximum error of 0.09 degrees was achieved when compared to the angle input given to the robotic arm; note that the robotic arm has an expected error of about 0.003 degrees. Otherwise, when the sensor is used outside its region of operation, data gets lost as the laser begins to leave the active area of the sensor; this causes the accuracy to decline gradually until the laser cannot be detected at all. These results show that the mock-up pinhole camera can meet the stringent accuracy requirement for attitude knowledge on the SpudNik-1 CubeSat. Further research is to be conducted into enhancing this design.


sun sensors, CubeSat, MATLAB, centroid, robotic arm, pin-hole camera