摘要:基于計(jì)算機(jī)視覺原理,以ARM微控制器為核心構(gòu)建嵌入式圖像處理平臺,實(shí)現(xiàn)了對太陽的實(shí)時(shí)跟蹤。系統(tǒng)采用CMOS圖像傳感器采集太陽圖像,通過微控制器計(jì)算太陽角度,通過串口控制轉(zhuǎn)臺,實(shí)現(xiàn)對太陽的高精度跟蹤。同時(shí),與視日運(yùn)動(dòng)規(guī)律相結(jié)合,保證系統(tǒng)的可靠性。試驗(yàn)表明,該系統(tǒng)在降低系統(tǒng)能耗的同時(shí),能可靠有效地跟蹤太陽運(yùn)動(dòng)。
關(guān)鍵詞:太陽跟蹤; ARM微控制器; 計(jì)算機(jī)視覺; CMOS圖像傳感器
中圖分類號:TN91934; TP36文獻(xiàn)標(biāo)識碼:A文章編號:1004373X(2012)04007104
Sun-tracking system based on ARM embedded image processing platform
CHEN Lijuan, ZHOU Xin
(Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China)
Abstract: Based on computer vision principle, the realtime tracking of sun was realized by taking ARM microcontroller as the core to construct the embedded image processing platform. The system collects images of sun through CMOS imaging sensor, and computes the sun angles relative to the tracking platform by a microcontroller. With the computed sun angles information, the system controls the turntable through a serial port to make the solar panel perpendicular to the sun radiations. Meanwhile, another tracking mode based on sun trajectory is integrated in the tracking strategy to insure the system reliability. The teat result indicates that the system can reduce the system energy consumption and effectively track sun.
Keywords: suntracking; ARM microcontroller; computer vision; CMOS image sensor
收稿日期:20110813
基金項(xiàng)目:國家自然科學(xué)基金資助項(xiàng)目(61102138);南京航空航天大學(xué)基本科研業(yè)務(wù)費(fèi)專項(xiàng)科研資助項(xiàng)目(V1090031)0引言
隨著社會(huì)的發(fā)展和進(jìn)步,環(huán)保節(jié)能已經(jīng)成為人類可持續(xù)發(fā)展的必要條件。目前,再生能源的開發(fā)和利用越來越受到人們的關(guān)注。太陽能由于其普遍、無害、無限、長久等特點(diǎn),成為最綠色、最理想、最可靠的替代能源[1]。但太陽能同時(shí)存在分散,不穩(wěn)定,效率低等特點(diǎn),太陽能光伏系統(tǒng)為解決這一問題提供了條件[23]。
就目前的太陽能光伏系統(tǒng)而言,如何最大限度提高太陽能的轉(zhuǎn)換率,仍是國內(nèi)外的研究熱點(diǎn)。有研究表明,和始終朝南的固定表面相比,與太陽輻射方向始終保持垂直的表面對太陽能的利用率提高約33%[4]。太陽跟蹤裝置可以保證太陽輻射方向始終垂直于太陽能電池板平面,使接收到的太陽輻射大大增加,提高了太陽能的接受率與利用率,因而得到廣泛的應(yīng)用。
太陽跟蹤裝置的分類方法有很多,按照跟蹤方法,主要可分為視日運(yùn)動(dòng)跟蹤和光電跟蹤,視日運(yùn)動(dòng)跟蹤又可分為單軸跟蹤和雙軸跟蹤[5]。光電跟蹤裝置有較高靈敏度,結(jié)構(gòu)簡單,能通過反饋消除累積誤差,具有較大優(yōu)勢,但受環(huán)境影響很大。其關(guān)鍵部件是光電傳感器,常用的是光敏電阻。由于光敏電阻安裝位置不連續(xù)和環(huán)境光散射等因素的影響,系統(tǒng)不能連續(xù)跟蹤太陽,精度有限[6]。視日運(yùn)動(dòng)跟蹤能夠全天候?qū)崟r(shí)跟蹤,但是存在累積誤差。其中,單軸跟蹤裝置結(jié)構(gòu)簡單,但跟蹤誤差大;雙軸跟蹤裝置算法復(fù)雜,跟蹤難度較大,但跟蹤精度較高[78]。
本文用基于32位ARM嵌入式微控制器S3C2440來構(gòu)建太陽跟蹤系統(tǒng),采用CMOS圖像傳感器來感知太陽方位,并通過微控制器計(jì)算獲取太陽跟蹤誤差,實(shí)現(xiàn)對太陽的高精度跟蹤。加入視日運(yùn)動(dòng)規(guī)律,在跟蹤目標(biāo)丟失時(shí),對系統(tǒng)進(jìn)行重新定位。同時(shí),該系統(tǒng)的結(jié)構(gòu)簡單輕便,功耗低,環(huán)境適應(yīng)能力強(qiáng),能應(yīng)用于各種太陽能設(shè)備。
1硬件設(shè)計(jì)
1.1系統(tǒng)硬件結(jié)構(gòu)
系統(tǒng)以ARM微控制器作為主控制器,采用CMOS圖像傳感器采集圖像,并利用雙軸轉(zhuǎn)臺來支撐太陽能電池板。其中雙軸轉(zhuǎn)臺集成了電機(jī)驅(qū)動(dòng)與控制部分,通過串口與主控制器進(jìn)行通信。
如圖1所示是太陽跟蹤系統(tǒng)的硬件結(jié)構(gòu)圖。在圖1中,CMOS圖像傳感器與太陽能電池板處在同一平面,并固連在雙軸轉(zhuǎn)臺上;ARM處理器與雙軸轉(zhuǎn)臺的電機(jī)驅(qū)動(dòng)部分采用串口通信方式;系統(tǒng)的供電均由蓄電池支持(包括ARM控制板和轉(zhuǎn)臺),因而形成了一個(gè)獨(dú)立系統(tǒng)。系統(tǒng)的基本工作原理是:根據(jù)視日運(yùn)動(dòng)規(guī)律或CMOS圖像傳感器采集的天空圖像,利用ARM處理器求取系統(tǒng)跟蹤控制參數(shù),并通過串口來控制雙軸轉(zhuǎn)臺的轉(zhuǎn)動(dòng)。
圖1太陽跟蹤系統(tǒng)的硬件結(jié)構(gòu)圖1.2硬件介紹
(1) ARM微控制器。從實(shí)用角度考慮,太陽跟蹤系統(tǒng)的低功耗設(shè)計(jì)顯得尤為重要,ARM微處理器在保證高性能的前提下能夠盡量降低功耗[9]。相對于PC機(jī),ARM微處理器占用空間較小,質(zhì)量輕,可靠性強(qiáng),硬件資源豐富,在簡化系統(tǒng)結(jié)構(gòu)的同時(shí)為系統(tǒng)功能擴(kuò)展提供了可能。系統(tǒng)選用32位ARM嵌入式微控制器S3C2440來構(gòu)建控制平臺。運(yùn)用ARM微控制器構(gòu)建的嵌入式圖像處理平臺大大提高了圖像的處理速度,同時(shí)有效降低了系統(tǒng)成本。圖像處理系統(tǒng)還具有拆裝方便,配置靈活等優(yōu)點(diǎn),安全性得到大大提高[10]。
(2) 雙軸轉(zhuǎn)臺。系統(tǒng)采用集成式雙軸轉(zhuǎn)臺,其結(jié)構(gòu)如圖2所示,工作電壓為24 V,可利用蓄電池供電。在圖2中,x向?yàn)樗椒较?,y向?yàn)榇怪狈较?。x向轉(zhuǎn)角對應(yīng)太陽方位角,y向轉(zhuǎn)角對應(yīng)太陽高度角。該雙軸轉(zhuǎn)臺x向轉(zhuǎn)動(dòng)范圍為-157°~+157°,y向轉(zhuǎn)動(dòng)范圍為0°~90°,集成了電機(jī)控制模塊,并提供串行接口,控制器可以利用串口通信來控制并驅(qū)動(dòng)轉(zhuǎn)臺在x向和y向上的轉(zhuǎn)動(dòng)。
(3) CMOS圖像傳感器。圖像傳感器產(chǎn)品主要有CCD,CMOS,CIS三種。其中CMOS圖像傳感器集成度高,價(jià)格低廉,而且可以實(shí)現(xiàn)數(shù)字化輸出,軟件可編程控制,提高了系統(tǒng)設(shè)計(jì)的靈活性,同時(shí)也具有較高的抗干擾性和穩(wěn)定性[11]。系統(tǒng)采用的圖像傳感器為OmniVision公司的OV 9650型COMS攝像頭,其功耗為30 μW,陣列大小為1 300×1 028 pixels,焦距為4.85 mm,像素大小為3.18 μm×3.18 μm,支持軟件可編程控制,輸出圖像格式包括YUV,RGB等。
圖2雙軸轉(zhuǎn)臺的結(jié)構(gòu)圖2軟件設(shè)計(jì)
2.1跟蹤控制策略
圖3所示是太陽跟蹤系統(tǒng)工作過程流程圖,系統(tǒng)采用的跟蹤控制策略如下:
(1) 系統(tǒng)可設(shè)置2種工作模式,早晨6:00喚醒跟蹤控制系統(tǒng),系統(tǒng)啟動(dòng)跟蹤控制,進(jìn)入跟蹤模式;下午18:00休眠系統(tǒng),系統(tǒng)關(guān)閉跟蹤控制,進(jìn)入待機(jī)模式。同時(shí)系統(tǒng)采用粗跟蹤和精跟蹤2種方式,粗跟蹤采用視日運(yùn)動(dòng)跟蹤方法,精跟蹤采用基于計(jì)算機(jī)視覺的跟蹤方法。粗跟蹤為精跟蹤提供初始工作條件,精跟蹤保證系統(tǒng)的跟蹤精度。
圖3太陽跟蹤系統(tǒng)工作過程流程圖(2) 喚醒跟蹤控制系統(tǒng)時(shí),采用視日運(yùn)動(dòng)開環(huán)計(jì)算方法進(jìn)行粗跟蹤。粗跟蹤的基本過程是:根據(jù)太陽運(yùn)行的天文規(guī)律計(jì)算,利用系統(tǒng)時(shí)間和給定的當(dāng)?shù)亟?jīng)緯度計(jì)算太陽高度角和太陽方位角,并根據(jù)計(jì)算結(jié)果來驅(qū)動(dòng)并控制步進(jìn)電機(jī),從而調(diào)整太陽能電池板的角位置。粗跟蹤的目的是為了讓太陽進(jìn)入圖像傳感器的視野范圍,主要用于首次定位和目標(biāo)丟失后的重新定位。
(3) 系統(tǒng)工作在跟蹤模式時(shí),周期性采集圖像,采用基于計(jì)算機(jī)視覺的閉環(huán)校正方法進(jìn)行精跟蹤。精跟蹤的基本過程是:通過對采集圖像進(jìn)行處理,獲取太陽角度偏差量。由太陽角度偏差量可得到轉(zhuǎn)臺應(yīng)轉(zhuǎn)過的角度,從而使太陽能電池板能正對太陽。精跟蹤的目的是為了保證系統(tǒng)跟蹤精度。
(4) 系統(tǒng)工作在跟蹤模式時(shí),由于陰天、雨天或其他原因,太陽光線很弱或基本看不見,導(dǎo)致CMOS圖像傳感器無法捕捉到太陽。此時(shí),太陽能電池板的工作效率很低,為了減小跟蹤系統(tǒng)能耗,不進(jìn)行電機(jī)動(dòng)作并保持當(dāng)前狀態(tài)。同時(shí)設(shè)置累計(jì)標(biāo)志S,它表示圖像傳感器在連續(xù)S個(gè)采樣周期內(nèi)沒有捕捉到太陽。當(dāng)S累計(jì)到設(shè)定值N時(shí),采用視日運(yùn)動(dòng)開環(huán)計(jì)算方法重新粗定位,并重置累計(jì)標(biāo)志S。這樣在降低系統(tǒng)能耗的同時(shí)可以提高系統(tǒng)可靠性。
2.2基于計(jì)算機(jī)視覺的跟蹤方法
基于計(jì)算機(jī)視覺的跟蹤方法,其基本過程如下:通過對采集圖像進(jìn)行處理,得到太陽位置偏差量。如果偏差在預(yù)設(shè)閾值范圍內(nèi),則保持當(dāng)前狀態(tài);如果偏差超出預(yù)設(shè)閾值F1的范圍,則根據(jù)偏差的方向和大小調(diào)整轉(zhuǎn)臺,使得通過圖像處理得到的偏差在預(yù)設(shè)閾值F2的范圍內(nèi)。其中閾值F1的范圍比閾值F2的范圍大,這樣可以減小電機(jī)動(dòng)作次數(shù),降低能耗。
(1) 圖像處理方法。圖像傳感器得到圖像后,首先進(jìn)行圖像的灰度化。使用屏蔽字和移位操作來得到R,G,B分量,再進(jìn)行比例轉(zhuǎn)換,得到灰度圖像。設(shè)置閾值,將圖像二值化,得到的圖像中的光斑即為太陽。找到太陽位置,計(jì)算光斑中心與圖像中心的偏差值,將該偏差值換算為太陽方位角和高度角的實(shí)際偏差值。
(2) 偏差角計(jì)算與轉(zhuǎn)臺控制。記CMOS圖像傳感器的焦距為f,像素大小為kx×ky。假設(shè)采集圖像上太陽位置偏離圖像中心的偏差為px×py,則可以計(jì)算太陽偏差角如下:
太陽方位偏差角:Δα=arctan(px×kx/f) ;
太陽高度偏差角:Δβ=arctan(py×ky/f) 。
根據(jù)太陽方位偏差角和高度偏差角,通過串口控制轉(zhuǎn)臺轉(zhuǎn)動(dòng),使太陽能電池板正對太陽。其中轉(zhuǎn)臺x軸應(yīng)轉(zhuǎn)過的角度為太陽方位偏差角,轉(zhuǎn)臺y軸應(yīng)轉(zhuǎn)過的角度為太陽高度偏差角。
2.3嵌入式處理平臺的實(shí)現(xiàn)
系統(tǒng)采用S3C2440作為主控制器。利用Linux內(nèi)核代碼,針對本處理器和本系統(tǒng)特點(diǎn),對內(nèi)核進(jìn)行相應(yīng)的配置和裁剪,編譯生成嵌入式內(nèi)核,并選用yaffs作為根文件系統(tǒng),將內(nèi)核映像文件和根文件系統(tǒng)燒寫到微控制器中,并編寫相應(yīng)驅(qū)動(dòng)程序。
程序在主機(jī)上設(shè)計(jì)完成后,需進(jìn)行交叉編譯,然后下載到處理器運(yùn)行。
首先在主機(jī)Linux系統(tǒng)下搭建交叉編譯環(huán)境,這里采用armlinuxgcc4.3.2 with EABI版本的交叉編譯器,并配置主機(jī)和目標(biāo)板的NFS和FTP網(wǎng)絡(luò),以實(shí)現(xiàn)主機(jī)到目標(biāo)板的文件下載和主機(jī)對微控制器的控制。程序編寫完成后,進(jìn)行交叉編譯,生成可執(zhí)行文件,下載到處理器運(yùn)行即可。
3實(shí)驗(yàn)結(jié)果
3.1基于計(jì)算機(jī)視覺方法的跟蹤實(shí)驗(yàn)
如圖4所示是某次精跟蹤過程的實(shí)驗(yàn)結(jié)果,其中(a)為CMOS圖像傳感器捕捉到的原始圖像;(b)為經(jīng)過灰度化、二值化后的結(jié)果,可以看出圖像中的太陽已經(jīng)被提取出來;(c)為精跟蹤一段時(shí)間后圖像傳感器得到的圖像,可以看出太陽處在圖像中心位置,此時(shí)太陽光線垂直照射太陽能電池板。
圖4視覺跟蹤試驗(yàn)結(jié)果3.2系統(tǒng)技術(shù)指標(biāo)
對本文提出的太陽跟蹤系統(tǒng)進(jìn)行了性能測試,通過分析測試結(jié)果,該系統(tǒng)的技術(shù)指標(biāo)如表1所示。
表1太陽跟蹤系統(tǒng)的技術(shù)指標(biāo)
方位角范圍-157°~+157°高度角范圍0°~90°跟蹤精度0.05°系統(tǒng)自重 /kg11工作溫度范圍 /℃-10~60噪音范圍 /dB≤70系統(tǒng)平均耗電量 /W≤5
4結(jié)語
本文中設(shè)計(jì)的太陽跟蹤系統(tǒng)采用視日運(yùn)動(dòng)跟蹤方法和基于計(jì)算機(jī)視覺的跟蹤方法相結(jié)合的方式,一方面采用視日運(yùn)動(dòng)跟蹤方法進(jìn)行初始粗定位和系統(tǒng)丟失目標(biāo)時(shí)的重新粗定位;另一方面采用基于計(jì)算機(jī)視覺的跟蹤方法進(jìn)行精確跟蹤?;谟?jì)算機(jī)視覺的跟蹤方法采用CMOS圖像傳感器采集太陽光斑,利用ARM微控制器處理采集到的圖像,實(shí)現(xiàn)對太陽的實(shí)時(shí)跟蹤。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)可以連續(xù)跟蹤太陽的角度變化,能夠達(dá)到較高的跟蹤精度;當(dāng)跟蹤目標(biāo)丟失時(shí),能夠利用視日運(yùn)動(dòng)跟蹤方法對系統(tǒng)重新定位,具有較好的環(huán)境適應(yīng)能力。該系統(tǒng)具有較低的日均功耗、較高的跟蹤精度和可靠性,結(jié)構(gòu)簡單輕便,可應(yīng)用于各種太陽能光伏系統(tǒng)。
參考文獻(xiàn)
[1]揚(yáng)帆,楊景常,鄭宇.向日葵型跟蹤太陽智能發(fā)電裝置的研制[J].西華大學(xué)學(xué)報(bào):自然科學(xué)版,2007,26(6):1820.
[2]苑瑋琦,金晶晶.基于圖像傳感器的太陽方位檢測系統(tǒng)研究[J].微計(jì)算機(jī)信息,2007,23(12):141143.
[3]HELWA N H.,BAHGAT A B G.,SHAFEEA M R E, et al. Maximum collectable solar energy by different solar tracking systems \\[J\\]. Energy Sources, 2000, 22 (1): 2334.
[4]GAY C F, YERKES J W, WILSON J H. Performance advantages of twoaxis tracking for large flatplate photovoltaic energy system \\[C\\]// Proceedings of 16th IEEE Photovoltaic Specialists Conference. \\[S.l.\\]: IEEE, 1982: 13681371.
[5]鄭小年,黃巧燕.太陽跟蹤方法[J].能源技術(shù),2003,24(4):149151.
[6]杜偉巍,鄒麗新,尤金正,等.基于CMOS圖像傳感器的太陽自動(dòng)跟蹤控制器設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009,32(11):150154.
[7]鄭小年,黃巧燕,張曉黎,等.太陽集熱器跟蹤臺的設(shè)計(jì)與控制[J].中國機(jī)械工程,2003,14(12):10071009.
[8]KALOGIROU S A. Design and construction of a oneaxis suntracking system \\[J\\]. So1ar Energy, 1996, 57 (6): 465469.
[9]周立功.ARM微控制器基礎(chǔ)與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2003.
[10]馬俊青,宋愛國,甘英俊.一種基于ARM的圖像處理系統(tǒng)的設(shè)計(jì)[J].電氣電子教學(xué)學(xué)報(bào),2009,31(4):6669.
[11]何小明.用CMOS芯片取代CCD[N].中國電子報(bào),2000915(5).
[12]孫夢宇,趙敏,吳毅杰,等.基于ARM的電子負(fù)載網(wǎng)絡(luò)監(jiān)控系統(tǒng)\\[J\\].電子科技,2010(3):4649.
[13]蔣昌軍,丁萬山.基于ARM和Linux的字符采集與識別系統(tǒng)\\[J\\].電子科技,2010(11):1113.
[14]施先旺.基于DSP/BIOS實(shí)現(xiàn)發(fā)動(dòng)機(jī)實(shí)時(shí)在線狀態(tài)監(jiān)測\\[J\\].火箭推進(jìn),2010,36(5):5458.