MODULAR CMOS HORIZON SENSOR FOR SMALL SATELLITE …

Preview:

Citation preview

© 2004, ATSB Proprietary 1

MODULAR CMOS HORIZON SENSOR FOR SMALL SATELLITE ATTITUDE DETERMINATION AND

CONTROL SUBSYSTEMBy Mohamad Nazree Dol Bahar

© 2004, ATSB Proprietary 2

I. Introduction

II. Systems Description

III. Centroid Algorithm

IV. Calibration

V. Test Results

VI. Conclusion

CONTENTS

© 2004, ATSB Proprietary 3

INTRODUCTION

© 2004, ATSB Proprietary 4

• Horizon sensors are typically IR devices that sense and detect the contrast between the heat of Earth’s atmosphere and the cold of the deep space.

• The ATSBTM CMOS Horizon Sensor performs imaging in the visible light spectrum, detecting the horizon as the contrast between the sunlit lower atmosphere and the dark deep space background.

• This Horizon Sensor provides Earth-relative information directly for Earth-pointing satellite, thus simplify on-board processing.

INTRODUCTION

© 2004, ATSB Proprietary 5

SYSTEMS DESCRIPTION

© 2004, ATSB Proprietary 6

IntroductionHorizon sensor is used for satellite’s orientation control. The CMOS Imager will capture an image of the earth, followed by centroid calculation algorithm by the 8051 microprocessor.The point vector determined will be sent to ADCS OBC for orientation control.

© 2004, ATSB Proprietary 7

Tilt angle of the CMOS Horizon Sensor- The higher the altitude, the bigger the tilt angle

°=⎥⎦

⎤⎢⎣⎡

+= − 24cos 1

hrrθ

where θ = tilt angleh = spacecraft altitude = 600 kmr = Earth radius = 6378 km

© 2004, ATSB Proprietary 1

Characteristics:- Field of View (FOV): 90° cone- Operating temperature: -10° to 50°C- Mass: 560g- Power consumption: 550mW- Dimension: 63 x 95 x 121mm- Tilt angle: 24°- Imager Resolution: 1024 x 1024 pixels- Accuracy: < 0.1°

CMOS Horizon Sensor with mechanical:

Dimension = 82.9mm (height) x 95mm (width) x 126mm (length)

© 2004, ATSB Proprietary 2

Software Implementations:● Microprocessor C-firmware:

- to interface to the SRAM via the FPGA and control the imager- for communication with ADCS-OBC

● FPGA VHDL firmware: - interfaces between microprocessor, SRAM and imager

● External software for the Ground Support Equipment (GSE):- required when Horizon Sensor interfaces to the GSE

emulating the ADCS-OBC or performing debugging

● Calculate the centroid of the earth after taking an image of it● Communicate with ADCS-OBC of the satellite via the dual

redundant CAN communication bus to receive telecommandsand pass on telemetry

● Download an image to OBC

Functions:

© 2004, ATSB Proprietary 3

• Image format – size of the image sensor• Lens needs to cover an area equal to or larger than thesensor size

• This CMOS Horizon Sensor uses ½ Format Size

Image Format:

© 2004, ATSB Proprietary 4

where θ = field of view (FOV)D = diameter or diagonal of the exposed

imagef = focal length

FOV Calculation:

© 2004, ATSB Proprietary 5

CENTROID ALGORITHM

© 2004, ATSB Proprietary 6

● The Earth’s size is too large to fit into the FOV of the Horizon Sensor● The detection algorithm detects points that lie on the edge of the Earth

and the dark space.● From these points, the centroid of the Earth can be computed.● The algorithm can be divided into scanning part and circle part fit.

Centroid Algorithm:

© 2004, ATSB Proprietary 7

● The scanning loop detects the transitions from dark to light by makinguse of image gradients.

● The edge points will be detected if the image gradient at that point isbigger than the gradient threshold.

● Due to presence of noise, the image gradients are calculated usingSobel operators.

● The Sobel edge detecting kernels are:

Scanning Phase:

⎥⎥⎥

⎢⎢⎢

+−+−+−

=101202101

xG⎥⎥⎥

⎢⎢⎢

−−−

+++=

121000121

yG

● The formulas for calculating the image gradient then become:

)1,1()1,1(),1(2),1(2

)1,1()1,1(),(

++++−−++−−

−++−−−=

yxiyxiyxiyxi

yxiyxiyxI x

K

K

)1,1()1,(2)1,1()1,1(

)1,(2)1,1(),(

++++++−+−+−

−−−−−=

yxiyxiyxiyxi

yxiyxiyxI y

K

K

where i(x,y) = image brightness(x,y)

© 2004, ATSB Proprietary 1

● Circle geometry method is used to compute the center coordinate ofthe circle.

● Any perpendicular bisector passed through the center of the circle.● The center of the circle can be determined by having a minimum of

two bisecting lines, which in turn requires a minimum of three edgepoints that lie on the circle.

● For better results, the final center coordinate of the circle is calculated by averaging the individually calculated intersectioncoordinates.

Circle Fit Phase:

© 2004, ATSB Proprietary 2

● The horizon edge detection algorithm produces the centroidcoordinate of the Earth.

● A pointing vector can be formed from the centroid coordinate:

⎥⎥⎥

⎢⎢⎢

⎡−−

=fyx

s

where f is the nominal focal length of the lens.

© 2004, ATSB Proprietary 3

CALIBRATION

© 2004, ATSB Proprietary 4

● The detected coordinates of the Horizon Sensors have to be corrected for lens distortion.

● Two steps of calibration:a) to make sure all coordinates are referenced to the optical axis

intersectionb) to determine the focal length error and the coordinates are

corrected for lens distortion

Calibration:

© 2004, ATSB Proprietary 5

● Optical axis intersection (oai) is the location on the CMOS sensor where theoptical axis intersects it.

● Optical axis is the axis passing through the optical center of the lens system.● Light rays traveling along the optical axis are not deflected or distorted.● All measured sensor coordinates are referenced to the optical axis intersection● If a point has a sensor coordinate of (x,y) then the oai referenced coordinate:

Optical Axis Intersection (oai):

oaixxx −='

oaiyyy −='

© 2004, ATSB Proprietary 6

● Focal length (obtained by measurement) is the effective distance from theoptical center of the lens to the CMOS sensor surface.

● A reference source such as light source is required at a known angle, θ from the optical axis.

● If the light rays coming from the source strike the CMOS sensor at coordinates (x’,y’):

Focal length

22 '' yxr +=

θtanrf =

● Focal length is used to construct a pointing vector, s and to determine the azimuth, α and elevation, ε:

⎥⎥⎥

⎢⎢⎢

⎡−−

=fyx

s ''

⎟⎟⎠

⎞⎜⎜⎝

⎛= −

fx'tan 1α ⎟⎟

⎞⎜⎜⎝

⎛= −

fy αε cos'tan 1

© 2004, ATSB Proprietary 7

● Light rays that do not coincide with the optical axis, are subject to distortion. ● Light rays are either deflected away from the optical axis or towards it,

depending on the nature of the distortion. ● The distortion is usually a function of the angle between the incident ray

and the optical axis, and is radially symmetric. ● To compensate for the distortion, a correction is applied to the measured

x and y coordinates. ● A correction is applied that scales both x and y coordinates according to the

deviation of the focal length from its nominal value, at that (x,y) location. ● Nominal focal length, fnom can be obtained by measuring at small incident

angles.● The difference between the nominal focal length and the value of f for that

point is the calibration value that is required. ● A light source that causes a point on the CMOS sensor at (x’,y’) has an

associated focal length of fx,y

Lens Distortion

yx

nomcorrected f

fxx

,

'' =yx

nomcorrected f

fyy

,

'' =

© 2004, ATSB Proprietary 1

TEST RESULTS

© 2004, ATSB Proprietary 2

● Below are the test patterns generated by the processor, written to SRAM, readback and then downloaded to a PC via RS232.

● The image illustrates 32 shades of grey indicating 32 pages in the SRAM.

Preliminary Test Results:

● The images below confirm that the data generated by the CMOS imager wasactually stored in the SRAM and downloaded to PC via microprocessor.

● The total size for Figure (a) is 0.26MB (512x512) and for Figure (b) is 1MB (1024x1024)

© 2004, ATSB Proprietary 3

● The first figure below is the graph of the measured focal length error.● The second figure below is the graph of surface fit of focal length error.

Calibration Results

© 2004, ATSB Proprietary 4

● The figure below is the bicubic surface fit correction.● The figure shows the significance of having surface fit of focal length error

in order to achieve measured positions as close as possible to the true positions.

Calibration Results:

© 2004, ATSB Proprietary 5

Calibration Values:

The average error (distance) between the projected expected positions and measured corrected positions is 4.6 pixels.

© 2004, ATSB Proprietary 6

CONCLUSION

© 2004, ATSB Proprietary 7

● The CMOS Horizon Sensor was designed and built for ATSBTM future Nano-satellitewith altitude around 600km.

● Average power consumption = 289mW

● Mass = 560g

● Standard interfacing = CAN or RS232/RS485

● Accuracy = 0.3°, not as expected because of mounting and pointing errors ofHorizon Sensor on the current Horizon Sensor Calibrator.

● The second calibration will be done by using a more accurate Horizon SensorCalibrator with a new improved calibration procedure.

● This CMOS Horizon Sensor can also capture images of the Earth or otherspace objects with a maximum resolution of 1 Mega Pixels.

Conclusion:

Recommended