摘要:塔式光熱發電站由于鏡場設備眾多且分布范圍較大,動輒成千上萬面定日鏡,單面定日鏡通常有上百個非實時數據和數十個實時數據需要有效管理和監控,這對于常規的分散控制系統很難滿足監控要求。提出以先進的通信技術、數據庫技術和Web技術為基礎,構建通信和數據管理服務器,在操作員站可通過瀏覽器來全局、成組和個別監控和操作設備,實時監控網絡狀態和有效管理設備參數等。
塔式光熱發電是太陽能利用的重要方式,具有更高的熱效率和聚光比等優點[1]。塔式太陽能熱電系統是一種適合大規模發電的新能源利用方式,發展前景廣闊,其中,由定日鏡場和其控制系統等關鍵設備組成的定日鏡場子系統是整個電站的前端,其性能和效率對電站的運行和發電產出都有很大影響[2]。在此以某塔式光熱發電廠的定日鏡場為研究對象,該定日鏡場有4400面定日鏡,其中每面定日鏡由一個S7-1200 PLC控制,有非實時參數150個,實時監控數據模擬量16個(其中有數十個開關量打包為模擬量)。為了有效地組織和管理這種大量的數據通信,本文在PLC中以開放式通信協議開發TCP通信客戶端,在服務器端以Java開發基于TOMCAT后臺Web服務,以Netty實現數據通信任務,以WebSocket實現后端數據向前端頁面的主動推送,以HTML5實現前端顯示與操作,以MySQL實現數據存儲功能,構成一套Web應用服務。可通過瀏覽器實現定日鏡場實時狀態的總體概覽與成組操作、單面定日鏡的詳細狀態顯示與操作。
1
關鍵技術
Netty是一款基于NIO(Nonblocking I/O,非阻塞IO)開發的網絡通信框架,基本模式設計為異步、事件驅動的模式,可用于快速開發高性能、高可靠性的網絡應用框架。HTML5標準融合了HTML、JavaScript、CSS、WebSocket等多種先進的頁面技術,使得頁面內容更豐富多彩,同時又有良好的實時性能和人機交互體驗。Jquery是一個快速、簡潔的JavaScript框架,它封裝JavaScript常用的功能代碼,提供一種簡便的JavaScript設計模式,優化HTML文檔操作、事件處理、動畫設計和Ajax交互[3]。
WebSocket是HTML5開始提供的一種在單個TCP連接上進行全雙工通信的協議,使客戶端和服務器之間的數據交換變得更加簡單,允許服務器主動向客戶端推送數據,能更好地節省服務器資源和帶寬,并且實時性能更好[4]。
2
系統結構
以Siemens PLC 1200作為分布式設備的控制器,通過光纖和路由器等連接至集中監控室。通過Siemens PLC 1200的開放式通信接口組態TCP連接客戶端。通信服務器開放端口監聽連接,有連接時建立連接接受并處理數據。Web服務器則將數據推送至Web頁面展示給用戶,用戶再根據各種工況在Web頁面上做出相應的操作,指令由Web頁面傳回Web服務器,然后服務器以TCP協議送給相應設備的控制器去執行任務,并反饋執行結果。
3
關鍵功能模塊
3.1基于Netty的TCP通信服務器
通信服務器負責與各PLC通信,收集各定日鏡的數據,并發送來自人機界面的指令與參數。通信服務器與各PLC間的通信由基于Netty的TCP服務器來實現。消息由長度、功能碼和數據組成,在服務器端通過實現消息解碼器來解決粘包/拆包問題,再根據功能碼做出相應的動作,如存檔、推送到前端頁面顯示等。對于從人機界面來的指令和數據以同樣的消息結構封裝后再發送給相應PLC。另外Netty中可以通過將IdleStateHangler類添加進Channel的PipeLine中,實現指定時間內沒有讀或寫時向對方發送心跳包。
3.2邏輯處理功能
系統需處理各種實時數據和用戶操作指令、自動聚焦散焦、數據存儲和參數管理等任務。
1)參數管理模塊的主要功能包括:批量上傳下載定日鏡參數表,并管理定日鏡參數表上傳下載變更記錄等。
2)歷史與報警模塊。
3)定日鏡校正模塊。定日鏡由于安裝或運行過程中會產生各種偏差而不能精準地把反射的光斑定位在集熱區,所以要定期校正偏差并管理。為了確保太陽能的高效利用和轉化,并降低運維成本,校正系統需要做到:全鏡場自動校正,無需值守,實時精確跟蹤太陽運動軌跡,自動檢查精度,自動重新校正,滿足長期跟蹤精度要求。該模塊動態計算當前太陽位置結合定日鏡參數,通過光斑計算模塊得出的光斑物理坐標計算出定日鏡方位角和俯仰角,與定日鏡當前方位角和俯仰角之差為定日鏡新的方位角校正值偏差和俯仰角校正值偏差,偏差加入原校正值作為新的校正值送給定日鏡。
4)定日鏡自動對焦與散焦模塊。該模塊需實現下述不同工況下整個定日鏡場的總體對焦與散焦功能如表1所示。實現定日鏡的隨機數(優先級)生成算法,結合排序算法來滿足定日鏡的隨機調度要求,實現定日鏡的排序算法,定日鏡可以按照其優先級進行排序,也可以按照特定的要求,比如其與某個特定點距離進行排序,局部云層遮蓋判斷等。
塔式光熱發電站由于鏡場設備眾多且分布范圍較大,動輒成千上萬面定日鏡,單面定日鏡通常有上百個非實時數據和數十個實時數據需要有效管理和監控,這對于常規的分散控制系統很難滿足監控要求。提出以先進的通信技術、數據庫技術和Web技術為基礎,構建通信和數據管理服務器,在操作員站可通過瀏覽器來全局、成組和個別監控和操作設備,實時監控網絡狀態和有效管理設備參數等。
表 1 各種工況的用途
3.3人機界面
人機界面根據功能主要有以下幾個主要視圖:定日鏡場總貌視圖、參數管理視圖、定日鏡場校正系統視圖、定日鏡場自動對焦系統視圖、網絡設備監控視圖、歷史與報警視圖。
以定日鏡場總貌視圖為例詳細介紹。定日鏡場總貌視圖如圖1所示,其中每個小方塊代表一面定日鏡,不同的顏色代表不同的狀態,如圖1右側列表所示,小方塊上綠色的斜線代表定日鏡處于就地狀態,小方塊上紅色的斜線代表定日鏡處于掛起狀態。當鼠標移入小方塊區域內時會顯示出該定日鏡的詳細信息。操作時應先選擇定日鏡,再發出相應操作指令。
圖 1 鏡場總貌視圖
有多種定日鏡選擇模式:單面、行、環、對焦面、散焦組、區和自由選擇,點擊小方塊時會根據不同的選擇模式選擇相應區域內的所有定日鏡,再次點擊時取消選擇。當選擇模式為單個時,僅有該定日鏡被選中,同時會在總貌視圖的右側顯示出單面定日鏡的詳細視圖與操作視圖,如圖2所示。也能根據圖2中的下拉列表選擇單面定日鏡并顯示出單面定日鏡的詳細視圖與操作視圖。定日鏡場主要參數顯示,顯示定日鏡場當前的天氣狀況、機組出力和定日鏡場定日鏡的狀態統計信息等。
圖 2 單面定日鏡詳細視圖與操作視圖
如圖2所示,圖中上部顯示該定日鏡的詳細信息與報警列表及報警確認、報警抑制操作,并以動畫形式顯示定日鏡當前的位置信息。圖中下部顯示的是該定日鏡的模式切換按鈕,運行人員可點擊相關按鈕進行定日鏡的模式切換操作。以黑色文本顯示當前生效指令。在OP Setpoint模式下,運行人員也可以直接在輸入框中輸入定日鏡位置的設定值。
4
結束語
基于Web的鏡場控制系統可通過瀏覽器實現定日鏡場實時狀態的總體概覽與成組操作、單面定日鏡的詳細狀態顯示與操作、參數管理、定日鏡校正、聚焦與散焦、歷史與報警等功能。
▏作者:劉志聲 西門子能源自動化(南京)有限公司
參考文獻
[1]楊敏林,楊曉西,林汝謀,等.太陽能熱發電技術與系統[J].熱能動力工程,2008,23(3):221-228,325
[2]李雅雯.塔式太陽能定日鏡場聚光系統控制策略研究[D].保定:華北電力大學,2019
[3]朱育發.jQuery與jQuery Mobile開發完全技術寶典[M].北京:中國鐵道出版社,2014
[4]石文濤.Html5中WebSocket協議關鍵技術的研究及基于WebSocket協議的實時Web通信系統的實現[D].南京:南京郵電大學,2014