APP下载

大视场数字式太阳敏感器设计*

2011-05-06屠斌杰金仲和

传感技术学报 2011年3期
关键词:视场光斑角度

屠斌杰,韩 柯,王 昊,白 剑,金仲和

(浙江大学信息与电子工程学系,杭州310027)

太阳敏感器是卫星姿态确定系统中十分重要的测量器件。太阳敏感器通过测量太阳光线与卫星某一体坐标之间的夹角,从而确定太阳在敏感器本体坐标系中的位置,然后通过坐标矩阵变换得到太阳在卫星本体坐标系中的位置,最终在卫星的姿态系统中求得卫星的姿态,即卫星在空间的方位[1]。

随着卫星对姿态控制精度要求的日益提高以及小卫星、皮卫星等微小卫星的发展,太阳敏感器逐渐向着小型化、模块化、长寿命的方向发展[2]。目前,很多的太阳敏感器采用了APS面阵来代替CCD作为图像传感器,由于APS面阵在体积、功耗上的优势,使得太阳敏感器能有效地朝着上述方向发展。

由于受图像传感器像平面尺寸及掩膜安装位置限制,普通数字式太阳敏感器的视场范围一般在±60°左右,当初始姿态角度不在视场范围内时,此类太阳敏感器就无法正常工作。为了解决这一问题,国内外研究者提出了一些增大数字式太阳敏感器的方案。如将多个太阳敏感器组合成一个太阳敏感器,或者设计特殊的球状掩膜结构[3],这些设计上的改变虽然增大了敏感器的视场,却也同时带来一些问题,如系统体积、质量及功耗的增加,或者以牺牲敏感器的测量精度为代价。

针对这些不足,本文提出了一种基于全景环形光学镜头的大视场数字式太阳敏感器设计方法,其视场大小为120°×180°,与±60°的视场大小相比具有很大优势。同时该敏感器的质量、体积和功耗非常适合微小卫星发展要求,分别为250 g、55 mm×55 mm×50 mm和300 mW。敏感器的测量精度为0.02°,能满足普通定姿系统的精度要求。

1 系统设计

1.1 传统数字式太阳敏感器设计

目前常见的数字太阳敏感器工作原理如图1所示,主要是运用小孔成像原理对太阳进行成像,使其光斑投射在图像传感器上,然后信息处理电路用某种算法提取像光斑中心位置,并测算出太阳入射角[4]。由图1的几何关系,我们可以得出太阳光线和已知坐标轴之间的角度关系[5]:

其中α、β分别为太阳光线在坐标轴X、Z上的角度,Xs、Ys为太阳光线经小孔后在像平面上所成像的坐标值,h为掩膜与像平面之间的距离。

根据图1分析可知,要想增加角度测量范围,则必须增大图像传感器像平面的大小或减小h的值,前者不满足小型化要求,后者会降低测量精度。

在实际应用中,设计者会根据具体要求将掩膜上小孔个数和排列方式进行适当修改,此类修改能提高太阳敏感器的精度,但对增大其视场是没有帮助的。

图1 常见数字太阳敏感器工作原理图

1.2 全景环形光学镜头介绍

为了克服传统太阳敏感器视场小的缺点,本文设计了一种新型大视场太阳敏感器,光学系统由全景环形光学镜头和滤光膜组成。

全景环形光学镜头的工作原理如图2所示,为获得360°全景像,人们基于延展法的思想提出了平面圆柱透视法(Flat Cylinder Perspective:FCP),这种透视法将一个柱面视场投影到二维像平面[6]。在FCP映射中,所有的平行线汇聚到一点,能够成像部分是θ角的两条边绕轴旋转360°后得到的三维立体区域,这一区域被投影到二维像面上的圆环内,像面上每一个同心圆是与轴成同一角度的点的轨迹。环形透镜产生的环形像的高度对应与侧向视场的范围。2ψ角所代表的区域为盲区[7]。全景环形透镜(Panoramic Annular Lens:PAL)是基于FCP透视法的一种光学镜头,在天文观测、医用内窥检查等领域有着潜在的应用前景。

图2 FCP工作原理示意图

1.3 大视场数字式太阳敏感器设计

基于全景光学镜头,本文提出的大视场太阳敏感器如图3所示。由图1和图3比较可知:传统数字太阳敏感器成像对象是太阳光线经小孔后投射在像平面上的光斑,光斑的形状和大小与太阳无关,只取决于小孔形状及掩膜到像平面之间的距离。而本文研究的太阳敏感器成像对象则是太阳经PAL在像平面上的光斑,所以其大小和形状由太阳和PAL决定。

图3 本文研究的太阳敏感器工作原理图

此外,与常规光学系统相比,PAL所成的像,其像高满足f-β的关系,即:

其中H为像高,f为PAL焦距,β为太阳光线与PAL光轴的夹角。

像高H可以通过计算光斑中心坐标到像平面中心的距离来获取,而焦距f则由PAL设计时给出,那么要获得角度β,只要计算出光斑的中心坐标即可。另一角度α的计算方法与传统太阳敏感器一致。

根据前面的分析及图3的几何关系,我们可以得到本文提出的太阳敏感器角度测量方法,如式(4)、式(5):

其中α、β分别为太阳光线在坐标轴X、Z上的角度,Xs、Ys为太阳光线经小孔成像后在像平面上所成像的坐标值,f为镜头焦距。

与传统数字式太阳敏感器相比,本文的设计具有如下优点:

1.视场范围大;

2.系统结构简单;

3.更新率高。

2 系统实现

本文研究的数字式太阳敏感器系统框图如图4所示。其中,光学系统由全景环形光学镜头和滤光膜组成,滤光膜主要用来削弱进入光学镜头的光强,防止CMOS图像传感器工作于饱和状态。设计中选用XILINX的spartan3A FPGA控制图像传感器行列时序,利用其内部的双口RAM对每一行图像数据进行缓冲,同时FPGA完成对光斑质心的求解。综合考虑传感器模型及标定算法的复杂程度,本设计选用C8051F340单片机实现质心坐标和角度信息之间的转换及对图像传感器的初始化。该单片机工作时钟可达48 MHz,能保证算法实现的实时性要求,同时,设计中我们采用单片机的串口作为该太阳敏感器的标准输出接口,用来传输太阳角度信息或者压缩后的图像数据。此外,C8051F340内部具有USB2.0的高速接口,为了调试方便,我们利用该接口来实现调试阶段的非压缩BMP图像数据传输。

图4 本文设计的太阳敏感器系统框图

2.1 光学系统

光学系统选用的是浙江大学现代光学仪器国家重点实验室设计的环形全景光学镜头,外形结构如图5所示。

图5 本文研究的全景环形光学镜头外观

光学系统中选用巴德膜作为滤光膜,实验证明,巴德膜配合光学镜头能够有效地减弱太阳光强,滤除其他杂光干扰,使得所成太阳光斑像清晰、规则且亮度均匀。成像效果如图6所示。

图6 滤光膜下太阳成像效果

2.2 图像传感器

图像传感器选用 OmniVision公司型号为OV2640的 CMOS图像传感器[8],OV2640 是一款高度集成的低电压CMOS图像传感器,最大分辨率为1 600×1 200,单个芯片内集成了图像传感器和图像处理器。OV2640提供了丰富的扩展功能,用户通过SCCB(Serial Camera Control Bus)接口可以对传感器进行配置,使其工作在不同模式。

OV2640支持多种图像输出格式,包括 RAW RGB、RGB、YUV等,同时,由于传感器内部图像压缩模块的存在,OV2640还支持JPEG格式压缩图像输出。

在本设计中,综合考虑太阳敏感器角度更新率和FPGA逻辑资源情况,我们将图像传感器配置在800×600分辨率的工作模式。

2.3 FPGA逻辑和单片机软件

FPGA主要实现对OV2640的行列时序控制及光斑中心计算。与一些数字式太阳敏感器不同,本设计在FPGA内部加入了亮度阈值自动判断模块,在对光斑中心求解的同时,计算出当前帧的亮度信息,作为下一帧的亮度阈值。这种设计方法可以减轻单片机软件工作量,使其工作方式简单化,并能有效提高敏感器的更新率。

为方便图像数据处理,在FPGA内部开辟两块大小为8×1 024 bit的双口ram,交替对每行图像数据进行缓冲。在利用缓冲区A进行图像数据缓冲的同时,质心求解模块和自动阈值计算模块对缓冲区B的数据进行处理,即常见的乒乓操作方式。

FPGA内部核心模块连接关系如图7所示。其中,cmos_ctrl模块实现对图像传感器行列控制,并缓冲图像数据;data_proc模块对cmos_ctrl缓冲区内的数据进行自动阈值判断和采用质心法[9-10]对质心求解,同时cmos_ctrl模块还完成与单片机之间的数据交互。

图7 FPGA核心模块关系图

单片机软件主要完成光斑中心坐标和太阳角度之间关系转换、与上位机数据通信和图像传感器的初始化工作。在敏感器开始工作时,先由单片机对OV2640进行初始化,初始化完毕后,由于FPGA负责亮度阈值信息的判断,单片机只需根据FPGA提供的过阈值亮点计数值来判断是否捕获到太阳位置,若捕获成功,则输出太阳角度信息有效。另外,我们还利用单片机自带的高速USB接口,进行图像传感器原始图像的传输,实现敏感器研制前期光学镜头安装位置粗调及软件算法的调试。

系统设计主要指标:

体积 55 mm×55 mm×50 mm;

质量 250 g;

功耗 300 mW;

最大更新率 30 Hz。

3 标定与测试

3.1 敏感器真实模型

敏感器模型本质上是一组描述太阳光斑中心坐标和太阳矢量之间关系的数学表达式。实际应用中的敏感器模型,与§1.3中介绍的敏感器成像原理相比,要更为复杂。式(4)、式(5)只是简单地建立了光斑中心坐标和太阳矢量之间的关系,此关系通常只在理想情况成立。在真实情况下,诸如光学镜头安装偏差、设计误差等因素都需要考虑。

在本文研究的太阳敏感器模型中,安装引起的偏差成为我们建立该模型主要考虑的因素[11-12],主要包括:

(1)光轴与像平面中心之间的偏差(x0,y0)。

图8 中心点偏差示意图

(2)像平面X轴与安装轴之间的角度偏差α0。

图9 坐标轴安装偏差示意图

(3)光轴与传感器安装平面法线的角度偏差 β0。

图10 光轴安装偏差示意图

(4)光学镜头的焦距设计偏差f0。

综合考虑以上4点,我们可以得到如下传感器模型:

在上述传感器模型中,存在5个参数需要确定,分别为 f0、α0、β0、x0和 y0。确定模型参数的方法在数据标定时比较常见,具体思路为:分别改变角度α和β,敏感器通过“质心法”计算得到光斑质心坐标的观测值(xo,yo),并通过串口将该坐标发送至PC端上位机软件。将角度信息(α,β)代入式(7)所描述的传感器模型可以得到光斑中心的坐标值(x,y)。假设角度(α,β)集合个数为N,则我们可以采集到N组光斑中心坐标观测值(xo,yo),并且根据模型可以计算得到N组光斑中心坐标(x,y)。

在采集完N组光斑坐标信息后,通过MATLAB等工具,寻求最优解,使得坐标集合(x,y)和(xo,yo)之间距离平方和最小,就可以确定模型中的5个参数。损失函数为:

确定传感器模型参数之后,可以根据式(9)计算太阳角度信息。

3.2 标定测试平台

实验平台的搭建是传感器精度标定的基础。本文设计的实验平台主要由LED光源、高精度双轴转台及精度标定软件组成。测试时,PC端软件通过串口控制双轴转台,使其转到设定的角度位置,待转台稳定后,软件通过与传感器之间通信获取光斑中心坐标信息,并将其存档。考虑到精度标定需要采集大量数据,因此我们在测试软件中添加了自动测试工作模式,即只要设置好两个轴的角度步进值后,软件即可自动完成所有实验,从而提高测试效率。实验平台实物图如图11所示。

图11 实验平台实物图

值得我们注意的是,如图12所示,转台绕X轴旋转后的角度β值与实际LED光源与传感器光轴之间的角度β'并不完全一致。两者之间存在如下关系:

图12 光源-传感器光轴角度偏差示意图

其中,h1、h2分别为LED光源和全景环形镜头到转台外框转轴的距离。在实际对太阳敏感器进行精度标定时,需用由式(10)转换后的 β’代入式(7)来计算光斑的中心坐标。

3.3 传感器模型参数确定及精度测试

传感器模型参数标定实验中,首先在传感器测量的两个角度上以一定间隔进行取点[13]。角度β在范围[-90°~ -30°]及[30°~90°]内,以 8°为间隔,角度 α 在范围[-90°~90°],以8°为间隔进行采样点选取,共取得约300个采样点。

根据式(8)及得到的采样点,我们利用MATLAB的lsqnonlin函数来对之前建立的这个非线性模型进行最小均方最优解求解,得到式(7)模型中的5个参数分别如下:

该组参数所对应的残差为0.24像素点,与此像素点等效的角度测量精度为0.4°左右,误差如图13。

图13 原始数据角度测量误差

图中实线部分是角度β测量误差,虚线部分是角度 α 测量误差,其数值分别为0.38°和0.43°。由图13我们可知,测量值存在较为明显的系统误差。我们发现,对于固定的入射角β,其角度测量误差会随着α值的改变而变化,并具有明显规律。经分析,我们得出此系统误差主要是由太阳敏感器未安装在转台中心引起的,仿真结果也很好验证了这一结论。为了直观得到本设计研制的太阳敏感器精度,我们对这一系统误差作了补偿。补偿后角度β和α的测量误差值都为0.02°,与补偿前相比有很大提高。同时,为了说明此补偿效果,我们对该太阳敏感器的测量稳定度进行了一组实验,即采集同位置下的角度信息,观察其输出波动。实验结果显示,该太阳敏感器的输出稳定度约为0.009°,与之前补偿后的输出误差较为接近,表明补偿效果理想,能真实反映敏感器的测量精度。图14为补偿后的角度测量误差。

图14 补偿数据角度测量误差

4 结论

测试结果表明,本文设计的太阳敏感器具有120°×180°的大视场,且在该视场范围内误差分布均匀,一致性较好,同时,采用本文提出的标定方法标定后,其测量精度达到0.02°,与普通单孔掩膜式数字太阳敏感器基本一致[11],符合设计要求。

该太阳敏感器可主要用于对视场要求高,精度要求一般的卫星姿态确定系统。同时,由于算法上的精简,使得该敏感器硬件结构简单,从而有效降低了系统功耗、减小了系统体积和质量,特别适合作为皮卫星等微小卫星的姿态确定传感器。

[1]贾传良.数字式太阳敏感器研究[D]:[硕士学位论文].哈尔滨:哈尔滨工业大学控制科学与工程系,2007.

[2]何丽,胡以华.太阳敏感器原理技术发展浅析[J].传感器世界,2006(1):12-14.

[3]陈凡胜.大视场高精度太阳敏感器的实现[J].红外,2004(9):10-15.

[4]樊巧云,江洁,张广军.小型CMOS太阳敏感器[J].光电工程,2007,34(2):133 -136.

[5]Chen F F,Feng J,Hong Z W.Digital Sun Sensor Based on the Vernier Measuring Principle[J].Measurement Science and Technology,Institute of Physics Publishing,2006(17):2494 -2498.

[6]程惠全,姚炜勇,杨国光,等.全景环形成像的转像系统设计[J].光电工程,2002,29(2):16 -19.

[7]侯惠杰.全景环形成像展开算法的研究[D]:[硕士学位论文].浙江:浙江大学信息学院,2006.

[8]李辉,张钰,杨牧,等.基于 CMOS图像传感器的皮卫星成像系统设计[J].传感技术学报,2010,23(1):62 -67.

[9]杨清珍,陈朝阳,沈绪榜,等.用FPGA实现星图目标的质心提取[J].计算机与数字工程,2005,33(10):63 -65.

[10]Chang Y K,Kang S J,Lee B H .High-Accuracy Image Centroiding Algorithm for CMOS-Based Digital Sun Sensors[J].IEEE Sensors,2007:329-336.

[11]Carl Christian Liebe,Sohrab Mobasser,Youngsam Bae,et al.Micro Sun Sensor[C]//IEEE Proceeding Aero Space Conference,Piscataway NJ IEEE,2002(5):2263 -2273.

[12]John P Enright.Design Optimization of a Digital Sun Sensor for Use With Parametric Processing[J].IEEE Transaction On Instrumentation and Measurement,2008,57(10):2188 -2195.

[13]John Enrighta,Doug Sinclairb,Chris Li.Embedded Algorithms for the SS-411 Digital Sun Sensor[J].Acta Astronautica,2009(64):906-924.

猜你喜欢

视场光斑角度
光斑
一种晶圆自动光学检测系统的混合路径规划算法
神奇的角度
一种基于基准视场扩散拼接的全景图像投影方法
有趣的光斑
有趣的光斑
医用内窥镜矩形视场下入瞳视场角的测试方法研究
一个涉及角度和的几何不等式链的改进
角度不同
人啊