劉年霖,彭佑多
(湖南科技大學 機械設備健康維護省重點實驗室,湘潭 411201)
極端天氣下的大風對安裝在露天的碟式太陽能發電系統的危害很大:一是可能會引起太陽能發電系統的嚴重變形,甚至損壞性倒塌;二是大風會使網架變形,進而引起集熱鏡損壞[2]。為了避免以上危害的發生,需要設計一種合理、有效的預警系統來實現對大風風速的提前預測,使碟式太陽能發電系統中的聚光器在大風來到前調整到最佳角度,以最少迎風受力面躲避大風,從而保證碟式太陽能發電系統的安全。
目前,國內外大風預警系統所用預警策略可根據其采用的原理不同分為時間點預警、空間點預警和預警值預警。時間點預警方法可借助計算機實現整個建模和預測的過程,實用性強,但存在對突發大風預測精度不高的問題;空間點預警該方法操作實現簡單,只需構建軟件系統,然后利用氣象部門已有的硬件系統,實現大風預警,但是該方法預測精度不高,尤其對太陽能電站周圍的風速變化情況無法準確反映出來;預警值預警能很好實現漸變風速和突變大風的預警,但是增加了操作過程的麻煩程度,也縮短了預警時間。
根據太陽能電站的實際情況,大風預警系統采取以時間點預警為主,以預警值預警為輔的預警策略。既充分發揮時間點預警策略的優勢特點,又利用預警值預警來彌補時間點預警對于突變大風預測帶來的預測誤差。
為了滿足監控中心的指揮需要,對大風預警系統的性能提出如下要求:
(1)預測精度方面:風速的超前一步預測平均相對誤差MAPE≤10%。
(2)實時性方面:預測模型輸出結果的時間延時不超過超前預測時間的10%。
(3)模型計算方面:在保證預測精度的前提下,所建模型盡量簡單,建模計算量小,同時完成建模后能夠得到模型的具體方程。
碟式太陽能電站對日跟蹤系統采用雙軸驅動控制方案,雙軸驅動系統設計有確定的伺服電機、驅動機構及控制器硬件系統。因此,本文所述大風預警系統只需在雙軸驅動系統的基礎上增加風速傳感器和上位機。其工作原理為:風速傳感器將采集到風速數據輸入到運動控制器,運動控制器將風速數據以動畫形式呈現于上位機,上位機根據采集到的大量歷史風速數據運用預測數學算法實現對大風風速的提前預測,同時上位機利用組態王軟件實現對實時進行風速預警值監控,當預測得到的風速值大于8級風的風速值時或者預警風速短時間內持續大于7級風的風速值時,上位機命令運動控制器向伺服驅動器發出一定的脈沖數和脈沖頻率,以驅動方位角伺服電機停止動作,高度角伺服電機快速使聚光器到達水平位置,以最少迎風受力面等待大風的到來。大風預警控制系統結構如圖1所示。

圖1 大風預警控制系統結構Fig.1 Gale warning and control system structure
目前,風速預測算法[10]有很多種,時間序列法憑借其原理簡單、建模方便而運用最為廣泛,但它卻存在預測精度低和預測延時的不足。卡爾曼濾波法能根據最新測量數據修正模型參數,獲得較高的預測精度,同時彌補了預測延時的問題,而利用卡爾曼濾波法實現預測的前提是根據預測對象推導出卡爾曼濾波法對應的狀態方程和測量方程,考慮到時間序列法的建模優勢,可利用時間序列法的模型參數推導出卡爾曼濾波法的狀態方程和測量方程,以此來實現對風速的超前預測。
大風預警系統主要由風速采集裝置、雙軸驅動機構和上位機組成。風速采集部分主要由風速傳感器、PLC和PLC配套的模擬量輸入模塊組成。風速傳感器與模擬量輸入模塊連接,系統由PLC接收經模擬量輸入模塊轉化后得到的風速信號,獲取風速值,PLC根據上位機的要求,控制雙軸驅動機構。雙軸驅動機構主要由伺服驅動器、伺服電機、高度角運動裝置和方位角運動裝置組成。伺服驅動器接收PLC的輸出脈沖,根據輸出脈沖的個數和脈沖頻率來控制伺服電機的轉動角度和轉速,從而通過伺服電機來驅動高度角運動裝置和方位角運動裝置調整聚光器的位置。Matlab軟件和組態王軟件組成上位機系統,Matlab根據采集到的風速數據運用數學預測算法得到預測風速值,運用DDE通信技術將預測風速值傳給組態王,組態王根據實時監控的風速情況和接收到的預測風速值情況,控制PLC實現需要的操作。根據大風預警系統的控制功能要求,系統需要開關量輸入點4個,開關量輸出點4個。
大風預警系統的硬件接線圖如圖2所示,風速傳感器有紅、黃、綠三根線,紅線為風速傳感器的電源線,與DC24V+連接;黃線為信號輸出線,輸出4~20mA的電流信號,接A/D轉換模塊的V+,同時必須將A/D轉換模塊上的V+和I+接口并聯起來,綠線則同時與DC24V-和VI-相連。伺服驅動器10號引腳ServoEn為伺服使能端子,與外接24 V電源的負極相連,當它為ON時,伺服驅動器工作;為OFF時,伺服驅動器停止工作。18號引腳VCCCOM與外接24V電源的正極相連,用來驅動輸入端子的光電耦合器。32號引腳PulseInv+和33號引腳PulseInv-為脈沖信號輸入端,接收PLC輸出的脈沖數,實現對伺服交流電機轉動角度的控制。34號引腳SingInv+和35號引腳SingInv-為方向信號輸入端,接收方向信號,實現對伺服交流電機轉動方向的控制。

圖2 大風預警系統硬件接線圖Fig.2 Hardware w iring diagram of the gale warning system
首先,運行組態王軟件,新建一個名為“基于組態王和Matlab大風預警系統”的工程,并設為當前工程;進入工程瀏覽界面,在組態王中定義與所用PLC相對應的邏輯設備,根據“設備配置向導”完成;完成后,點擊左側目錄樹中的“COM1”,選擇波特率為9600、數據位為7、校驗方式為偶校驗、停止位為1、通信方式為RS422。其次,需要構造數據庫,在左側的目錄樹中,選擇“數據詞典”,點擊新建;按照I/O分配表新建對應的變量,運行組態王時就可以從PLC上采集到這些數據。最后,在組態王開發系統中,利用其提供的圖庫和各種控件完成畫面的設計,通過與數據詞典中各變量連接,完成了組態王的程序設計[3-5]。設計的主畫面如圖3所示。

圖3 組態王監控主界面Fig.3 Main interface of Kingview
Matlab程序設計包括卡爾曼濾波法算法程序設計、Matlab與組態王通信程序設計和基于Matlab的GUI大風預警界面設計。
(1)由于很難得到風速與氣溫、氣象等風速影響因素之間的函數關系方程來推導出卡爾曼濾波法對應的狀態方程和測量方程,為了解決這個問題,通過研究發現可以利用時間序列法的模型參數來推導卡爾曼濾波法對應的狀態方程和測量方程。時間序列法的求參過程包括風速序列的非平穩性檢驗與預處理、自相關函數與偏相關函數的計算、根據AIC準則定階和運用矩估計實現模型參數的確立等諸多工作,根據求得的模型參數就能推導出卡爾曼濾波法的狀態方程和測量方程,從而實現對風速的超前預測。以上這些工作均可通過Matlab編程來實現。
(2)Matlab軟件與組態王軟件間的數據通信是采用DDE來實現。在Windows環境下,DDE是不同程序之間共享數據的一個協議。DDE對話發生在客戶應用程序和服務器應用程序之間,數據交換雙方互做服務器和客戶。此程序需要實現將采集的風速數據送入組態王進行動態顯示,并送到Matlab進行復雜的運算處理,將運算得到的結果返回組態王以顯示。
在組態王中DDE的建立步驟如下:工程瀏覽器-系統-設備-DDE-新建-設備配置向導-指導連接對象名Matlab-服務程序名Matlab-話題名tagname-標準的Windows項目交換。設備新建完成后需要在數據詞典中定義允許DDE訪問的I/O變量,且變量與PLC存儲區關聯,這些變量用于與Matlab進行數據交換,并在完成畫面制作后對畫面和變量間進行關聯[6]。
Matlab的DDE客戶函數有7個,它們完全可以滿足組態王軟件不斷將采集到的數據送到Matlab程序中,Matlab計算完成后將結果返回主程序的任務。在使用過程中發現,由于需要的風速歷史數據比較大,自己實時從組態王傳輸給Matlab程序比較耗費時間,且在傳輸過程中Matlab無法進行其他操作,因此,這里改用一種更為簡單和方便的數據交換方式,即組態王將歷史風速數據以Excel文件導入到Matlab中,Matlab將計算后的結果通過DDE傳入到組態王進行顯示[7-9]。
(3)根據前文完成的卡爾曼濾波算法程序設計和Matlab與組態王通信程序設計,同時為了更直觀、更方便的實現人機化操作,使用Matlab中的GUI工具箱完成了大風預測操作界面的設計。大風預測操作界面如圖4和圖5所示[1]。

圖4 風速數據預處理界面Fig.4 W ind speed data preprocessing interface

圖5 風速預測結果顯示界面Fig.5 Wind speed forecasting results disp lay interface
通過組態王軟件采集250個實測風速數據(每分鐘采樣1點,相隔5個數據進行平均化處理),前200個數據用于預測模型的建立,后50個數據用于驗證模型的準確度和對系統性能進行分析。從圖5中可以看出預測曲線能體現風速變化趨勢,擬合風速基本接近實測風速,算得其平均相對誤差為3.54%,預測精度較高,滿足預測精度要求,具有實用價值。同時按下“數據傳入組態王”按鈕,預測數據將傳入組態王中顯示,并自動與設定的8級風速值比較,實現大風的預警,整個預警過程大約花費時間為10 s,遠遠小于30 s的最大允許值。同時為了得到預測模型的具體方程,利用了時間序列分析法的模型參數來推導卡爾曼濾波法對應的狀態方程和測量方程,由于時間序列分析法的求參過程相對容易,因此,整個模型計算難度不大,計算量小,可通過Matlab軟件編程實現,使其具有很好的工程實用性。
本文將Matlab強大的數學計算能力和組態王強大的人機界面和通信功能有效結合起來,設計了一種以PLC為核心的大風預警系統。根據大風預警系統的性能要求,完成了硬件結構和軟件的設計,針對風速進行超前預測,該系統具有通用性、實用性和可擴展性的特點,可以根據現場的情況,實現穩定、有效的通信。
[1] 陳垚光,毛濤濤,王正林,等.精通MATLAB GUI設計[M].北京:電子工業出版社,2011.
[2] 劉年霖,彭佑多,王旻輝,等.大功率碟式太陽能電站大風預警系統設計與研究[J].機械工程與自動化,2013(3):126-128.
[3] 徐建國,鐘偉明,童旻,等.基于Matlab7.0和組態王的先進過程控制算法實測平臺[J].儀器儀表學報,2006,27(6):542-544.
[4] 胡大斌,胡錦暉,吳峰.基于組態王與MATLAB的監控軟件實現[J].武漢理工大學學報:交通科學與工程版,2005,29(2):234-237.
[5] 朱培逸,王引佳,高玨,等.基于PLC和組態王的水果品質分級系統設計[J].農機化研究,2013(10):103-106.
[6] 鄭華,呂偉珍.基于組態王和Matlab的雙容水箱液位控制[J].中國農機化,2012(2):155-157.
[7] 崔紅,龐中華,劉軍.基于組態王6.0和MATLAB的實時監控系統[J].青島科技大學學報,2005,26(2):173-176.
[8] 黃衛華,方康玲,章政.基于組態王和MATLAB的溫度監控系統[J].武漢科技大學學報:自然科學版,2006,29(5):490-492.
[9] 陳艷紅,付海鴻,趙媛媛,等.基于Matlab與Excel的實驗數據自動處理[J].計算機工程,2007,33(23):279-280.
[10]潘迪夫,劉輝,李燕飛.風電場風速短期多步預測改進算法[J].中國電機工程學報,2008,28(26):87-91. ■