查文庫>論文> 太陽能電池環境監測系統研究論文

太陽能電池環境監測系統研究論文

太陽能電池環境監測系統研究論文

  摘要:根據太陽能電池環境監測具有分散、靈活、偏遠等特點以及傳統有線網路佈線繁瑣、維護困難等問題,本設計提出一種基於CC2530-Zigbee的由太陽能電池進行供電的無線網路電池環境監測系統。本系統由資料採集終端節點和上位機實時監測平臺組成,兩個資料採集節點均採用太陽能電池和鋰電池組合供電的方式,可以實時監測和記錄溫度、太陽能電池電壓等引數資訊,並可將採集到的資料經Zigbee網路無線傳輸到監測平臺,實現資料的即時顯示和儲存功能。

  【關鍵詞】ZigbeeCC2530;溫度;太陽能電池;無線網路

  1引言

  太陽能電池在其執行和操作過程中可能會因部分遮陰和老化而出現熱斑現象,從而可能會嚴重影響太陽能電池的發電供電能力,又或者太陽能電池可能在某種情況下失去供電能力而在遠處的使用者又不能知曉。為了確保太陽能電池供電系統能夠正常的執行和工作,以及為了瞭解太陽能電池的周邊環境,使人們能夠更加高效地利用太陽能,我們需要對太陽能電池供電系統的各項周邊環境引數和太陽能電池的實時供電電量進行測量和監控。早在2003年,美國國家自然科學基金委員會就開始了一系列的無線感測器網路研究計劃的實施,並聯合一些大學開展了嵌入式智慧感測器專案的研究,旨在構建一個關於太陽能電池無線動態的監測系統。而國內的一些大學如武漢理工大學、湖南大學和華中科技大學等高校也陸續開始了對類似問題的研究,分別提出有線和無線的太陽能發電監測系統。上訴研究雖然對太陽能電池環境方面作出了詳細的研究,但是很多關鍵細節往往不公開而且這些系統往往存在成本高、功耗大的缺陷。所以有必要設計一款基於成本比較低、功耗比較少的Zigbee無線感測器技術、GPRS技術的太陽能電池環境監測系統。本次研究結合公眾需求,基於無線網路、聯合感測器,從而進行對資料的實時監測,這次實驗具有一定的實際意義,也可滿足公眾對環境監測方面的要求。

  2Zigbee無線技術的發展現狀

  無線感測器網路技術源於20世紀70年代,這種技術最早是應用於軍事科技領域,但是由於技術能力限制,該網路只能獲取單一資料訊號,兩個節點之間只能進行簡單的點對點的資料通訊,並不能實現廣播和組播。無線網路技術可以分為WPAN、WLAN、WMAN和WWAN四種。Zigbee通訊技術從2002年的Zigbee聯盟成立到2006年該聯盟推出了一種比較成熟協議—Zigbee-2006標準協議已走過了多個年頭,而Zigbee技術也得到了快速的發展。Zigbee通訊技術有良好的應用前景,比如智慧家居、智慧商業大樓、智慧儀表控制。在智慧的商業大樓中可以使用Zigbee完成智慧裝置的自動控制,其大樓管理人員可以對於燈光、空調、火災系統等各項重要開關進行遠端智慧控制,以此實現減少能源費用,降低人力資源管理成本的'目的。對於消費者來說,若家中安裝有Zigbee管理系統,可以遠端地監控家裡各種開關、水利電力、煤氣是否洩漏、是否有外來人進入等安全隱患,如若監測到異樣可自動對戶主發出警報訊號。作為全球經濟總量排名第二的中國市場,Zigbee產品鏈的應用有良好的發展前景,雖然本土的晶片供應商的參與度有限,但是Zigbee應用的成熟不需要很長時間。

  3總體設計

  傳統的太陽能環境監測系統是以微控制器和射頻技術模組組合設計而成的,其特點是程式設計簡單、容易實現和移植,但功耗比較高,成本也相對比較高,實用性較差;另外,用到的元器件比較多,不易於系統的長時間的執行且不能進行休眠或休眠的功能不容易實現。因此本設計採用Zigbee無線通訊技術進行開發和研究,透過採集子節點和協調器的通訊實現資料在兩個節點之間的通訊。位於PC的上位機能實時顯示各項資料的情況,且增加高溫、高壓預警功能,保護系統的正常執行工作,在滿足大眾需求的情況下符合人性化、價效比比較高、功能容易實現。本設計主要分為兩部分製作:硬體設計和軟體設計。硬體設計方面:採用現成Zigbee核心板和底板結合溫溼度感測器和AD模組實現溫溼度和電量的測量;軟體設計方面:利用IAR整合開發環境進行軟體程式的編輯、編譯和採用C#程式語言在VS2012開發環境下進行上位機程式的編寫,系統總體框圖如圖1所示。

  4硬體設計

  本設計主要分為四個部分:第一部分是由Zigbee晶片和感測器模組構成的資料採集子節點;第二部分是由Zigbee晶片和GPRS模組構成協調器模組;第三部分為太陽能電池供電模組;第四部分為資訊收集模組。

  4.1CC2530Zigbee晶片Zigbee

  通訊技術要應用於功耗比較低、成本比較低以及執行速率要求的低的監控系統中。本設計採用的主控晶片為CC2530-Zigbee。CC2530晶片結合了強大的RF技術,以及業界標準的增強型8051CPU。CC2530晶片有四種不同的快閃記憶體版本:CC2530F32/64/128/256,分別具有32/64/128/256KB的快閃記憶體。本設計採用的是CC2530F256,其具有幾種不同的執行模式,使得它可以適應超低功耗要求的系統,非常適合用作以環境監測系統的主控晶片。同時,CC2530F256結合了業界領先的黃金單元Z-Stack協議棧,提供了一個強大而完整的Zigbee解決方案。同時為了便於裝置的維護以及日後的拓展使用,將Zigbee晶片的硬體分為兩部分,即是CC2530核心板和底板。核心板集射頻收發及MCU控制功能於一體,也集成了CC2530晶片正常工作的所有外部電路,滿足監測系統開發的需要。同時模組引出CC2530所有IO口,便於功能評估與二次開發。CC2530底板連線著CH340G晶片,該信晶片與串列埠0相接,方便使用USB線進行除錯。同時,底板有CC_Debugger介面,可與模擬器連線直接下載或除錯程式。由於CC2530晶片是3.3V供電的,所以底板連線著AMS1117-3.3晶片,實現5V到3.3V的轉變。

  4.2Zigbee協議棧

  由於傳統的無線感測器網路協議很難適應某些系統對低成本、低功耗、低容錯性的要求,而無線感測器網路節點之間進行資料資訊傳輸又以無線網路通訊協議為基礎,於是就出現了以IEEE802.15.4協議為基礎的Zigbee協議來支援於Zigbee技術的發展。Zigbee協議棧由物理層、介質接入控制層、應用層、網路層構成。其中Zigbee應用層包括應用支援子層APS、應用框架AF、Zigbee裝置象ZDO等。其中裝置之間的繫結是在協議棧的APS層實現的,應用支援子層APS在NWK層和APL層之間,並提供了兩個介面:APSDE-SAP、APSME-SAP,兩個介面的功能如下:前者提供在無線感測器網路內兩個或多個節點之間的資料通訊;後者提供多種服務給應用物件ZDO。IEEE802.15.4標準規定了物理層和MAC層的協議規範,而Zigbee聯盟中的Zigbee標準定義了NWK層以及APL層的協議標準,讓使用者可在這個應用層上開發實現自己應用的開發,其中Zigbee無線網路協議如圖2所示。太陽能電池模組是太陽能發電系統中價值最高的部分,其作用是將太陽能轉化為電能,或送往電池中儲存起來,或推動負載工作。在矽晶類的太陽能電池板中,當吸收了太陽光中0.4μm~1.1μm波長的光時,就能把光能轉化為電能輸出。本設計採用的是9V3W的單晶太陽能板,其開路電壓可達到10.5V、短路電流可達400MA,並且該電池板可以直接加在6.4V的鋰電池上而不需要新增穩壓模組。本設計配備一個發光二極體,可知道電池板是否正常。本設計溫溼度測量採用的模組是DHT11,DHT11感測器模組是一款在市面上應用很廣泛的數字溫溼度感測器。溼度測量範圍為20%-95%RH測量誤差為±5%RH;溫度測量範圍為0℃-50℃和測量誤差為±2℃。DHT11感測器模組採用一根匯流排通訊的方式,也就是說資料的傳輸和控制都是透過一根匯流排完成的,這在一定程度上節省了微控制器IO埠的使用,同時該感測的整體的體積很小、功耗也很低,使其受到了很多使用者的青睞,因此適合本設計中對太陽能環境中溫溼度的測量,它的單匯流排通訊過程流程圖如圖3所示。本設計電池電壓的測量方案採用的是內部ADC功能實現的,其主要步驟如下:首先是確定ADC用要幾位進製表示,它的最大數值是多少。例如一個8位的ADC,最大值是0xFF,就是255。本設計中Zigbee的IO口ADC是12位的,故最大值是4095。然後確定最大值對應的參考電壓。一般而言最大值對應的參考電壓是加在晶片上的電壓,為3.3V。接著計算IO電壓值。就是把你ADC數值除以剛才確定的最大數值再乘以參考電壓。最後計算實際的電壓。因為IO口最大的輸入電壓不超過3.3V,故需要電阻分壓測量。本設計採用了兩個電阻:502歐姆和2K歐姆的電阻。故輸入電壓不超過3V,符合ADC電壓輸入的要求,所以電壓計算如式1所示。(1)其中Va表示AD轉換的值,V表示最終的電壓值。本設計使用到GPRS模組的功能是傳送短訊息,故採用的是模組是果雲GA6mini。該模組的供電電壓為5V,並支援GSM/GPRS的四個頻段,包括850、900、1800和1900MHZ。正常的工作溫度範圍是-30℃-+80℃,並且支援移動和聯通2G,支援GSM07.10協議,使用的AT指令支援標準AT指令集。該模組具有尺寸較小、功耗較低和寬工位溫度範圍的特點,適合環境監測系統的要求。當發生高溫、高壓警報時,由協調器和GPRS模組通訊傳送警報簡訊到預設的手機號碼。簡訊資訊包括:節點序號和何種預警訊號,其流程圖如圖4所示。

  5系統工作流程

  在協調器主控程式中,首先進行了裝置的初始化,當無線網路建好後開始等待終端裝置的加入。當裝置加入網路後開始向協調器傳送資料,協調器收到資料後,透過串列埠0把收到的資料傳送到PC上位機顯示。若協調器接收的資料為警報資料,協調器會判斷是哪個節點發出的何種警報,然後呼叫警報函式透過GPRS模組把警報簡訊傳送到預設的手機號碼上。若協調器收到上位機發送的資料,則會把資料廣播到終端子節點上,其流程圖如圖5所示。在終端節點主控程式中,首先進行裝置的初始化,然後根據Zigbee協議棧搜尋附近的無線網路並請求加入,加入網路後會根據設定定時採集溫溼度和電壓資料並判斷是否超過預設值,然後把資料傳送到協調器。若該終端收到了協調器傳送出來的資料,則會判斷資料的型別,然後根據資料作出修改,修改後返回成功標誌,其流程圖如圖6所示。

  6上位機設計

  本設計採用C#語言來編寫上位機軟體程式。該語言是一門穩定、簡單、安全的,是由C語言和C++語言衍變出來的程式語言,故其很好地繼承了C與C++語言的強大功能,同時又剔除了C與C++語言的一些特性。其視覺化的介面、高執行效率、便捷的面向元件程式設計的支援受到了許多使用者的青睞。上位機的功能是與協調器進行通訊,完成溫溼度、電壓資料的實時顯示、儲存等功能,並且使用者可在上位機上進行操作,例如改變資料的定時傳送的時間、獲取節點的實時資料以及停止/開始節點的資料採集功能,方便使用者對資料的分析和處理,其中上位機效果圖如圖7所示。本文設計的系統採集實時資料效果圖如圖8所示,電壓警報的效果圖如圖9所示,上位機高溫高壓警報如圖10所示。

  7結語

  本設計是基於Zigbee技術的一項應用,透過終端、協調器和上位機之間的通訊,形成一個功能強大的太陽能電池環境監測系統,系統不僅可以採集各個節點的溫溼度、電池電壓資料,也可以透過控制GPRS模組實現遠端簡訊報警。同時位於PC端的上位機可以改變終端節點的狀態,以實現更加智慧化的效果。這類監測系統應用前景是很廣泛的,比如太陽能路燈、共享單車供電系統、森林、海島、沙漠供電系統中都使用了大量的太陽能電池板,而Zigbee無線網路傳輸技術功耗低、製作成本低、資料傳輸效能好,故太陽能電池環境監測系統很適合應用於這些場合。

  作者:徐國保 黃清文