2. 中国建筑材料科学研究总院, 北京 100024
2. China Building Materials Science Research Institute, Beijing 100024, China
引 言
太阳能是一种新兴的可再生能源,太阳能的利用有被动式利用(光热转换)和光电转换两种方式,通常也可以称作太阳能热发电和太阳能光发电(光伏发电)[ 1 ]。聚光型太阳热发电(CSP)和太阳光发电(PV)除了以太阳电磁波为能量源这一点之外,是完全不同的发电技术。二者相比,太阳热发电(CSP)具有许多太阳光发电(PV)无法比拟的特点,比如:发电成本相对较低,可与火力发电站并设并共用配管系统和涡轮机,可将白天用不完的热储存在熔融盐中用于夜间发电等优点。曲面反射镜是太阳能热发电(CSP)系统集热器的重要部件。如何快速、准确对曲面镜面进行质量检验是太阳光曲面反射镜大批量生产中所要解决的关键问题之一。
对曲面的性能进行测试,通常采用直接法和间接法两种方法。(1)直接法,即直接测试反射曲面的会聚性能,通常是采用将反射镜直接放置到阳光下照射的方式,通过观察光斑的大小对反射镜进行性能评估。这种方法需要在野外作业,操作者的劳动强度,尤其是在酷暑季节,同时受天气的影响较大,检测只能是定性而无法做到精确的定量。(2)间接法,通过精确测试曲面镜的曲面几何尺寸,并和理论值进行比较,对镜面的加工精度和会聚性能进行评估。间接法可采用各种高精度的几何尺寸检测方式,例如三坐标测量机和激光跟踪仪等,测试的精度比较高,但这些高精度的测试设备,价格十分昂贵,而且测量的速度比较慢。由于要进行世界坐标和工件坐标的复杂转换,后期处理工作也较为复杂,无法满足实时在线检测的要求。
本文构建了一个太阳能反射镜的快速检测系统,利用一组平行的激光头来模拟太阳光照射,通过反射光线在安装于焦点上的光靶成像来检测反射镜的偏差,进而对反射镜的状态进行实时快速评估。
1 系统总体方案
太阳能会聚镜快速检测系统逻辑框图如图 1所示,整个系统由摄像头、PC机、控制器、电机驱动器、电机等组成。摄像头所采集的图像被传输到PC机,PC机通过信号线与控制器相连,控制器通过驱动器带动驱动电机运动,控制器还控制激光管阵列各个激光头的亮灭,实现光点的扫描。基本的工作流程为:当接收到测试任务时,作为主控和图像处理的PC机先将启动指令下达给控制器,由它来控制驱动电机带动横梁运动。首先先回到最下面的起始点,完成归零,然后以匀速方式由下向上运动,直至到达上极限点(由限位开关控制),与此同时,PLC控制器控制激光管阵列中的激光管依次从左到右点亮,待最右边的光管点亮后再最左边的激光管起从左到右点亮,如此循环往复,由此完成对镜面区域的扫描。摄像头所拍摄的光靶所成的像,被转换成数字图像并被传输到PC机,PC机上运行的图像处理软件获取图像点的坐标,并存放于一个一维数组中。在测量结束后根据坐标算出每一个点与中心线的偏差值,针对这些数据进行统计处理,既可以根据总的统计结果来判断镜面反射率是否合格,也可以根据每一个值的偏差值来找出究竟是哪些测量点所测量出来的结果超差,超差了多少等等。
![]() | 图 1 控制逻辑框图 Fig. 1 Control logical diagram |
2 系统的具体实现
在具体实现中,将整个系统分为机械平台、控制器和图像处理子系统三部分。下面将对这几部分分别介绍。
2.1 机械平台太阳能反射镜快速检测系统的机械平台如图 2所示,待测反射镜面的母线与地面垂直放置,测量机构的机械机构主要由底座、龙门框架、横梁和光靶支架构成。底座垂直于龙门框架,在龙门框架的两侧安装有直线导轨,横梁的两端被固定在这两条直线导轨上,可由驱动电机驱动丝杠在龙门框架上做垂直上下运动。横梁上等间距平行安装了多个激光发射管,这些激光管的光轴与待测抛物面的对称轴平行,且与通过该抛物面对称轴的切平面垂直,以模拟太阳光入射到抛物面反射镜面的情形。在横梁的适当位置安装有光靶支架,该支架上安装有投射型光靶和CCD摄像头。光靶被安装在反射镜面的焦点上,CCD摄像头置于光靶的后面,可以获取镜面反射光在光靶上的像。 CCD摄像头的像被传输到安装于PC机的图像采集卡上,转换为数字视频,经过图像处理后就可获得反射光斑的位置。在理想状态下,所有光斑都应被反射到光靶的中心。但实际应用中反射镜可能出现局部畸变,使反射光斑偏离光靶中心。通过统计镜面上各点反射光斑在靶上的位置,可以评价反射镜曲面的聚光性能。
![]() | 图 2 反射镜检测系统结构原理图 Fig. 2 The mirror test system structure diagram |
2.2 控制子系统
控制器实现方案有几种,一种是采用PC机,另一种是采用嵌入式系统来实现,还有一种方案是采用PLC来实现。PC机的功能比较强大,但为了实现输入输出功能,需要配置多块外接板卡才能实现,成本比较高;采用基于ARM的嵌入式控制器,具有低成本,低功耗和高可靠性的特点,但是需要对软件和硬件都比较精通,开发的复杂度相对比较大。可编程控制器(programmable controller)是计算机家族中的一员,是为工业控制应用而设计制造的[ 2 ]。早期的可编程控制器称作可编程逻辑控制器(programmable logical controller,PLC)[ 3 ]。从本质上说PLC也是由嵌入式系统来实现的,但是与传统的嵌入式系统不同,PLC是为工业化应用而量身打造的专用系统,对输入输出通道已经采用了继电器或者是光隔,具有良好的光电隔离特性和较强的设备驱动能力,以及很强的抗干扰能力。另外,为了便于编程应用,采用了图形化的编程指令系统,如梯形图等使得开发流程得到了简化。
2.3 图像处理及人机交互子系统图像处理及人机交互子系统在一台运行Windows操作系统的PC机上实现。之所以这样考虑,主要是因为图像处理和友好的人机界面都需要有强大的计算能力以及丰富灵活的外部接口和存储空间作为支撑。在测量过程中,控制器与图像处理子系统需要按照一定的时序同步工作,需要运用某种通信机制来实现两者的协同。
图像处理模块,主要完成对所采集的光靶图像进行处理,测量出反射镜实际反射点与理想焦点位置的偏差。开放源代码的计算机视觉类库OpenCV是由Intel公司开发出来的[ 4 ],具有良好的独立性,包含了500多个C函数和C++函数类,不依赖于外部库函数,即可独立运行,也可以在运行的时候使用其他外部库。OpenCV具有良好的跨平台性,是由跨平台的中高层API构成,为程序员提供了能在很多平台上都适用的移植性好的算法,很好地支持Windows、Liunx,也可以在大多数的编译器下工作,具有丰富的图像处理函数。OpenCV中的算法都是基于封装于IPL的具有很高灵活性的动态数据结构,基于Intel处理器指令及开发的优化代码,所以处理速度相当快。OpenCV不论对商业还是非商业都是免费的,而且它的代码是公开的,研究者可以对他的源代码进行修改,也可以把自己研发的新类库加进去,这样自己的代码也可能被别人广泛使用,OpenCV的这一优点是其他的开发软件所不具有的。在具体实现中,采用VC2008来进行开发,通过调用OpenCV的函数来实现对采集到的光靶上的激光点坐标位置进行检测。
人机交互模块主要用于快速反射镜检测系统与操作者之间的人机交互,包括整个检测系统的启停控制,视频检测图像的实时显示,测量结果的实时显示及测量数据的存储和调出分析等工作。
2.4 实验平台的构建为了验证上述检测原理的正确性,搭建了一个50 cm×50 cm的运动平台,如图 3所示。5个激光管通过万向支架被安装在一个可上下移动的托架上,每个激光管的间距为12.5 cm。如果取垂直方向与水平方向的间距相同的话,垂直方向需要有5个停留位置,这样共需要采集5×5=25帧图像。托架通过同步带由直流伺服电机带动可以做上下运动。在支架的两端安装了两个限位开关用于上下限位;在托架上安装了一个接收光靶的组件,该组件由一个半透光靶和摄像头组成,安装在由遮光布和支架构成的腔体中,半透光靶正好位于反射镜的焦点上,外形尺寸为145 cm×109 cm,这样如果采集的图像分辨率为640×480,每个像素的分辨率可达0.23 mm。摄像头采用了Microsoft的1 080 p高清摄像头-Lifecam studio,分辨率达到500万像素,采样速度最快可达到30帧/s,并采用usb2.0接口,能方便的与PC机进行连接,体积非常小巧而且具有自动对焦功能,焦距较短。
![]() | 图 3 太阳能反射镜检测系统机械平台 Fig. 3 Solar reflectors detection system mechanical platform |
控制器由于要考虑利用PWM脉冲来驱动直流伺服电机运动,故采用了晶体管输出型的PLC,具体实现中选用了三菱的FX2N-30MT。为了与采用不同电平的主机、驱动器、传感器等匹配,设计了电平转换板。整个控制子系统安装在一个铝合金的机箱中,在机箱中安装有24 V和5 V开关电源、PLC及相应的电平转换接口电路以及激光管的驱动电路和电机驱动器等,通过航空插头与机械本体和PC机相连。
PC机和控制器的同步利用了PC机本身的并口与PLC的输入输出口来实现(由于电平不同,需要进行适当的电平转换)。
激光头的底座在设计时已经考虑了调节的需要。通过螺丝可调节俯仰角或让激光头绕Z轴旋转,横梁采用了标准铝合金型材来制作,激光座通过锁紧螺母固定于横梁的滑槽中。松开螺母后,底座可在滑槽中自由运动,这样便于调整激光头间的间距。
在一般的印象中,激光头的光束可以近似为一个非常细小的光点,一致性非常好,但是从实测的情况看,激光点其实是由一套透镜系统来进行聚焦的。而且在不同的工作电流下激光点的大小会有所变化,如果电流比较大光晕也会扩大,从而会影响到光电的识别及测量的精度。经过实际的实验比较,在激光点的光束可识别的前提下,优化了工作电流,使激光光点直径尽可能小。对于实际使用的高同心度精密激光头,额定的工作电压为3.3 V左右,当供电电压调节在2.1~2.2 V时可满足试验距离与光斑尺寸要求。
对于一种视频模式而言,摄像头的长宽方向的总像素数是固定的,例如对于640×480视频模式下,一个摄像头的水平方向上有640个点,垂直方向上有480个点。要想根据成像进行定量的分析,就必须计算出1个像素对应的距离。经过上述校准后,摄像头与靶面间已经能够保证摄像头的光轴与靶面垂直且交于靶面的中心点。在具体实施中,采用了Microsoft生产的高清摄像头,该摄像头具有自动对焦功能,调节摄像头与靶面的相对位置,使得摄像头的主光轴与靶面垂直,并且与靶面的中心点重合,且调整距离使得靶面的图像基本占据摄像头的整个视野,此时测得摄像头到靶面的距离为20 cm,由此计算出像素点距离当量为0.226 6 mm。
3 整个检测系统的基本流程
在太阳能检测系统原理样机中,横梁的最大行程是50 cm,对应直流伺服电机的脉冲数是13 000个脉冲。横梁共有5个激光头,分5行扫描,这样在进行前一行扫描后需要下移3 250个脉冲,再进行下一行扫描,直至5行扫描结束。整个系统需要激光头扫描和图像采集子系统的密切配合。太阳能会聚镜检测系统总体流程图如图 4所示(以5×5激光管阵列为例),整个流程可分为以下几步:
![]() | 图 4 太阳能反射镜检测系统的基本流程 Fig. 4 The basic process of solar reflector detection system |
(1)分别开启图像处理子系统和控制器的电源开关,待图像处理子系统所在的PC机操作系统启动后,运行该软件,系统开始运行,并最终显示图像处理子系统主界面,如图 5所示。图像处理子系统和系统控制子系统完成了一系列初始化工作,并进入等待状态。
![]() | 图 5 图像处理子系统的人机交互界面 Fig. 5 Image processing subsystem of the human-computer interaction interface |
(2)单击图像处理子系统的“开始”按钮。图像处理子系统先向控制器发出触发信号,然后进入等待状态;控制器在接收到触发信号后,首先驱动直流伺服电机通过同步带带动横梁完成回零动作,在横梁到达初始位置时,会触发上限位传感器,使横梁的向上运动停止,并同时向图像处理子系统发出同步信号。 (3)控制器以相同的时间间隔依次点亮5个激光管,完成一次水平扫描。图像处理子系统接收到同步信号后按照同样时间间隔进行采样。在实验系统中激光扫描和图像采集的时间间隔均为1 s,这样对每个激光点都进行一次采样。在采集到图像后,图像处理系统会计算相应的激光点中心坐标,以及距离中心点的半径距离,并将测量结果及统计信息动态显示在屏幕上。图像处理子系统进入等待状态,等待下一行扫描的开始。而控制系统的步数计数器加一,控制系统通过电机驱动横梁运行到下一行的测量位置。当总的步数<5,意味着整体扫描过程还没结束,这时系统重复步骤3。
(4)若总的步数≥5,说明整体的测量过程已经结束,控制器回到步骤2状态,等待图像处理系统发出新的“开始”信号,开始下一件样品的检测流程。
4 实验结果
如图 5所示为太阳能反射镜检测系统的图像处理子系统的人机交互界面图。检测员可以按动“开始”按钮用于启动一个测试流程。“停止”按钮用于停止测试过程,“退出”用于退出图像处理子系统。“清零”按钮用于将检测结果清零,重新开始进行计数。整个系统正常工作后,检验员等待系统完成整个检测过程,检验完成后,人机交互界面上会自动显示检验的结果,检测员可以直观地根据界面上激光点数目和所在的位置判定反射镜的质量。
在主框架中,除了按钮以外,界面包含三个显示区域,其中最右面的区域里是图像显示区,用于实时显示摄像头捕获的图像;中间的部分显示“步数”(当前扫描的激光点号),“物理坐标”显示当前激光点的中心点坐标,单位为毫米;左边的框中包含了很多项目,其中“总帧数”为当前的总点数,成功数为被正确识别的激光点的点数,失败数为没有被识别的激光点数,“0~5”、“5~10”、“10~15”……分别为经过激光点经过反射镜在靶上成像点与中心点距离的统计数,类似与打靶的环数,“轮数”为当前扫描的行数,“点数”为当前扫描的总点数,因目前程序设置每个光点只扫描一次,“点数”与“帧数”是相等的。
经过一轮测试后,图像窗口显示的是最后一次测量的图片。在统计信息栏可看到,总共采集了25个点,成功数为25,失败数为0。后面的统计数据表明数据距离中心点距离在10~15有6个,15~20的点有9个,20~25有5个,25~30有2个,30~35有3个,而轮数为5(相当于行数),点数为5。整个检测过程约需50 s。
5 结 论
通过上述实验证明,所介绍的太阳能会聚镜快速检测方法是切实可行的,机械平台在上下运动的过程中能够实现与图像处理子系统的同步。出于成本的考虑,该样机幅面仅为50 cm×50 cm,而生产实际中,RP3型的反射镜幅面约为170 cm×170 cm,如果还是按照间距为10 cm左右一个激光管的密度的话,需要安装18个激光管,整个过程需要扫描18×18=324个点,假设检测过程为3 min的话,去掉机械运动的试剂,每个光点的检测时间约为0.2 s,对应的图像处理速度为5帧/s,对windows平台下的OpenCV完全能够胜任。从精度上来说,如果采用和样机相同的光靶结构,像素分辨率为0.226 mm,由此可计算出该系统能分辨的角度约为0.004 533°(合0.079 mrad),说明该系统的精度完全可以满足对反射镜的测量要求。本文对太阳能反射镜的快速检测进行了研究,给出了一种对太阳能反射镜进行快速实时检测的方案,并设计了原理样机对基本方案进行了验证,通过理论分析与实际验证,证明该方案是可行的。
| [1] | 张春阳.太阳能热利用技术[M].杭州:浙江科学技术出版社,2009:267-268. |
| [2] | 李建行.可编程控制器应用技术[M].北京:机械工业出版社,2004. |
| [3] | 张万忠.可编程控制器入门与应用实例(西门子S7-200系列)[M].北京:中国电力出版社,2005. |
| [4] | 于仕琪.OpenCV教程基础篇[M].于仕琪,刘瑞祯,译.北京:北京航空航天大学出版社,2007. |
2014, Vol. 36
Issue (3): 267-272






