張宇思, 時維鐸, 徐 磊, 丁 銳
(南京林業(yè)大學 信息科學技術學院,江蘇 南京 210037)
隨著清潔能源不斷推廣,對于太陽能利用率的要求越來越高。雖然太陽能覆蓋范圍廣,但能量密度較低且具有間歇性,太陽能的利用率與接收太陽光的角度密切相關,使得固定式太陽能板對太陽能的利用率普遍較低。近年來,對于太陽能自動跟蹤系統(tǒng)的研究逐漸增多,有實驗證明,跟蹤系統(tǒng)比固定模式多吸收30 %的能量[1]。跟蹤系統(tǒng)主要特點為能夠實現(xiàn)對太陽自動跟蹤,使得太陽光與太陽能板保持垂直,以得到最大的能量利用率。
太陽能自動跟蹤系統(tǒng)根據(jù)信號采集方式分為視日運動軌跡跟蹤、光電跟蹤[2,3]。將二者結合的跟蹤方式使用較多,因為視日運動軌跡方式是通過算法估算太陽的位置,誤差較大,光電跟蹤受天氣與視角的影響較大[4,5],因此,將二者結合可以彌補各自缺陷。
本文將視日運動軌跡方式與光電跟蹤方式相結合,采用雙軸伺服閉環(huán)控制系統(tǒng),不僅可以大大提高太陽能的利用效率,且在控制精度、速度上有了很大的提高,不僅滿足民用企業(yè)的需要,對一些高精度的軍工產品具有重要意義。
本文以STM32F429為主控制器,由全球定位系統(tǒng)(global positioning system,GPS)模塊采集當前時間與經緯度信息。開機首先對各個模塊進行初始化,然后通過GPS獲取當前的時間信息,若為早晨6︰00以后則進行視日運動軌跡計算,通過數(shù)字式伺服電機調節(jié),再由攝像頭采集太陽圖像信息,經處理后得到視日運動軌跡的差值,根據(jù)差值進行細調,同時定時將時間與對應的俯仰角、方位角偏移量存入外部電可擦可編程只讀存儲器(electrically erasable programmable read-only memory,EEPROM)中,并顯示圖像與當前信息。若因為天氣等原因無法采集到圖像信息,則由保存的最近日期的相近時間的偏移量代替,達到繼續(xù)跟蹤的目的。當系統(tǒng)判斷處在18︰00~6︰00之間時,系統(tǒng)將自動進入休眠態(tài),系統(tǒng)結構框圖如圖1所示。
圖1 系統(tǒng)結構框圖
太陽的俯仰角和方位角與觀測地的地理位置和時間相關。時間采用協(xié)調世界時(coordinated universal time,UTC),當太陽時角為ω,俯仰角為αs,方位角為γs,觀測地緯度為l,太陽赤緯為δ時,太陽的俯仰角與方位角為
sinαs=sinlsinδ+coslcosδcosω
(1)
sinγs=cosδsinω/cosαs
(2)
再通過反正弦的方法,可以計算出當前太陽的方位角和俯仰角。
圖像處理的目的是為了尋找質心,通過質心可以更加精確地尋找到太陽位置,提高控制精度,涉及到圖像二值化處理、邊緣檢測與獲得質心[6,7]。
圖像二值化處理采用最大類間方差法,按圖像的灰度特性將圖像分為背景和目標兩部分。假設背景點數(shù)占圖像比例為w0,平均灰度為u0;前景點數(shù)占圖像比例為w1,平均灰度為u1,T為前景與背景的分割閾值,圖像總平均灰度u為
u=w0*u0+w1*u1
(3)
從最小灰度值到最大灰度值遍歷t,當g最大時,t即為分割的最佳閾值
g=w0*(u0-u)2+w1*(u1-u)2
(4)
邊緣檢測采用Kirsch算子,Kirsch算子采用8個3×3的模板對圖像進行卷積,8個模板代表8個方向,并取最大值作為圖像的邊緣輸出。設圖像P,模板為Mk,則在(x,y)處的邊緣強度為
E(x,y)=max{Mk*P},k=1,2,…,8
(5)
根據(jù)邊緣后的連通區(qū)域取平均值,從而得到質心坐標。
GPS模塊采用ATK—S1216F8—BD GPS/北斗模塊。ATK—S1216F8—BD GPS/北斗模塊是一種高性能GPS/北斗雙模定位模塊,該模塊體積小巧,定位精度高,可通過串口進行參數(shù)設置,兼容3.3V/5V電平,使用方便。
本文使用GPS模塊獲取時間與經緯度信息,通過天文算法得到太陽的俯仰角和方位角,ATK—S1216F8—BD模塊原理如圖2所示。
圖2 ATK—S1216F8—BD模塊原理
攝像頭模塊采用OV2640模塊,該傳感器體積小、工作電壓低,提供單片UXGA攝像頭和影像處理器的所有功能,UXGA圖像最高達到15幀/s,具有標準SCCB接口,原理如圖3所示。
圖3 OV2640驅動模塊原理
由于OV2640光傳感器在強光下很容易進入飽和值,所以,在實驗時采用星特朗天文望遠鏡目鏡太陽濾光片進行濾光,可以減小反射,采集到清晰的圖像。
數(shù)據(jù)存儲模塊采用AT24C02模塊,AT24C02是低工作電壓的2 kb串行電可擦除只讀存儲器。本文使用AT24C02模塊存儲視日運動軌跡追蹤的偏移量,以供陰天或無法識別圖像時的繼續(xù)追蹤功能。AT24C02模塊原理圖如圖4。
圖4 AT24C02模塊原理
系統(tǒng)采用2個高精度數(shù)字式伺服電機對太陽的俯仰角和方位角進行跟蹤控制,通過輸出脈沖信號與方向信號控制伺服電機運動控制2個電機轉到相應角度,通過控制電機輸出脈寬調制(pulse width modulation,PWM)波的頻率來控制電機轉動的速度,原理如圖5所示。
圖5 電機模塊原理
編碼器安裝在整個跟蹤系統(tǒng)的末端,通過編碼器時刻取得電機運轉的實際角度,不僅可以有效地消除由于渦輪、蝸桿造成的機械誤差,還給整個控制系統(tǒng)的提供閉環(huán)控制量,對控制系統(tǒng)精度的提高具有重要作用。
系統(tǒng)采用的絕對值編碼器GES38 HA08RDB模塊,具有14位分辨率,高精度全數(shù)字化,高速數(shù)字通信輸出,冗余的絕對值信號輸出,實現(xiàn)位置與速度控制的雙閉環(huán),并提供RS—485自由通信協(xié)議,使用方便、快捷。
系統(tǒng)軟件主要實現(xiàn)的功能有:采集處理GPS數(shù)據(jù)、攝像頭數(shù)據(jù)、編碼器數(shù)據(jù),存儲數(shù)據(jù)到外部EEPROM,輸出PWM與方向信號給伺服電機,顯示采集與處理后圖像與相關信息。軟件流程如圖6所示。
圖6 系統(tǒng)軟件流程
系統(tǒng)上電后,對各個模塊進行初始化,通過GPS模塊獲取當前的時間值和經緯度值,若時間在6︰00~18︰00之間時系統(tǒng)進行追蹤運動,否則通過檢測到的時間定時進入睡眠狀態(tài)[8]。進行追蹤運動時,首先根據(jù)視日運動軌跡算法取得方位角與俯仰角并控制電機運動,再采集攝像頭數(shù)據(jù),若視角中圖像可找到質心,則控制電機進行追蹤,否則取得存儲的最近日期的最近時間點的偏移量,根據(jù)存儲的偏移量控制電機運動,最后顯示當前信息[9]。
本設備于2017年11月11日在南京林業(yè)大學進行試驗,從8︰30~12︰00,進行連續(xù)4h的測試,系統(tǒng)可以實時跟蹤上太陽,當太陽光被擋時,系統(tǒng)可以通過內部存儲的誤差數(shù)據(jù)進行跟蹤,當太陽光恢復正常后,又可以恢復圖像跟蹤,系統(tǒng)測試界面如圖7所示。
圖7 系統(tǒng)測試界面
系統(tǒng)安裝之后,會因為定位不準造成誤差,經過零點校準之后,可以準確找到天文正北方向,找到零點。零點找準之后,通過連續(xù)測試,可以得出系統(tǒng)不同時刻(9︰30~12︰00)編碼器輸出的俯仰角和方位角通過與計算的理論值對比:系統(tǒng)俯仰角的最大絕對誤差為-0.057°,最小絕對誤差為0.000 7°,平均絕對誤差為-0.024 2,最大相對誤差為0.18 %,最小相對誤差為0.002 %,平均相對誤差為0.076 %;系統(tǒng)方位角的最大絕對誤差為-0.095 4,最小絕對誤差為-0.007 4,平均絕對誤差為-0.035,最大相對誤差為0.06 %,最小相對誤差為0.01 %,平均相對誤差為0.027 %。系統(tǒng)平均誤差均在0.1 %以下,控制精度完全滿足民品和大部分軍品的要求。
本文研究的高精度太陽跟蹤伺服閉環(huán)控制系統(tǒng),將視日運動和光電跟蹤相結合,不僅在控制精度和速度上有個很大的提高,在陰天或無法取得圖像信息時,系統(tǒng)可以通過內部存儲誤差的方法進行校準跟蹤。無論是在太陽能效率提高,還是在氣象氣候的研究方面,都具有實際應用價值。