報名導航
最新文章
當前位置: 首頁 > 代寫碩士論文 >

基于WSN的電力信息流路由研究與軟件設計

發布日期:2019-03-16 瀏覽次數[] 文章來源:未知

摘要
隨著人類進入電力時代,電力持續穩定供應成為國民工業發展的重要保證,直接關系到國計民生,在這種背景下,國家電網公司對電力信息流路由研究軟件系統提出了很多標準,現在通用的是IEC61850標準,該標準實現了基于WSN的電力信息流路由軟件的的通信和建模,該標準為我國基于WSN的電力信息流路由軟件的系統的標準化做出了重大貢獻,通過查閱相關文獻資料和請教指導老師得知,國內外在電力信息流路由研究與軟件系統領域的研究還處于起步階段,而且對電力信息流的相關測試多表現在繼電保護和控制方面,雖然國內外相關專家學者也提出了一些方案,但是這些方案自動化程度低,測試流程隨意性大,缺乏相應的規范流程,已經不適應現代電力信息流的監測需求,基于此,本文結合實際應用,設計并實現了一種基于WSN的電力信息流路由軟件的系統。
本系統所做的主要工作簡單說就是把接入系統的電力信息流的各項測試指標通過無線通信實時性的進行監測,對各個在線監測功能模塊進行功能、性能以及通信協議測試一致性測試,保障系統的實時性和穩定性、準確性,本文通過查閱相關資料和請教指導老師,結合現有研究成果,提出了一種建立在UHF(特高頻法)和無線傳感器網絡、協議整體一致性等方法技術上的在線檢測系統,系統涉及的主要技術有無線傳感器網絡的構建、設備能效和建筑能效的考核及其檢測計算技術、無線通信技術、射頻技術和相關電力技術,本文合理整合這些技術,使這些技術融入到本系統,真正做到系統的監測穩定性、準確性和實時性。
本文所設計的系統采用模塊設計法,對硬件和軟件分別予以設計,對于每一個軟硬件功能模塊,先給出系統設計方案,然后給出實際運行截圖,對每一個模塊進行測試,最后進行系統總的測試,通過測試得知,系統運行穩定,可以實時在線采集電力信息流相關參數,綜上,本系統具有較大的應用價值,可以實際推廣使用。
關鍵字:路由研究;電力信息流;能效分析;無線傳感器網絡;無線通信技術
 
 
Radio and television launch with substation on-line monitoring and analysis of energy efficiency
Abstract
As humans into the era of power, steady power supply become the important guarantee of national industrial development, is directly related to national economy and people's livelihood, in this context, state grid corporation of substation on-line detection system put forward a lot of standards, is now universal IEC61850 standard, the standard implementation, the modeling of the on-line monitoring of transformer substation communication and the standard for the standardization of on-line monitoring system for substation in our country has made a significant contribution, through consulting relevant literatures and consult guidance teacher, for substation on-line detection system at home and abroad in the field of research is still in its infancy, and tests of the transformer substation performance in terms of relay protection and control, while the relevant experts and scholars at home and abroad are also put forward some solutions, but the low degree of automation, these solutions testing process optional the gender is big, the lack of corresponding specification process, is not to meet the needs of modern substation monitoring, based on this, combining with the practical application, designs and realizes a kind of radio and television launch with transformer on-line monitoring and analysis system of energy efficiency.
This system simply is to access the main work done by wireless communication system of substation in all kinds of test index of real-time monitoring, on-line monitoring function for each module function, performance, and communication protocol conformance testing, to ensure the real-time and stability of the system, accuracy, in this article, through access to relevant data and consult guidance teacher, combined with the existing research results, this paper puts forward a based on UHF method (UHF) and the overall uniformity of a wireless sensor network, protocol methods such as technical online examination system, the system has involved the construction of a wireless sensor network (WSN), equipment, energy efficiency and energy efficiency in buildings of examination and detection of computing technology, the Internet of things technology, radio frequency technology and related electric power technology, reasonable integration of these technologies, this paper makes the technology into this system, truly monitoring stability, accuracy and real-time performance of the system.
In this paper, the designed system adopts module design method, design of hardware and software separately, for each hardware and software function modules, system design scheme is given first, and then gives a practical operation screenshots, testing each module, and finally to the general test the system, and through the test, the system runs stably, can online real-time acquisition substation related parameters, in conclusion, this system has great application value, can be used for real.
Key words: online monitoring; Radio and television launch; Analysis of energy efficiency; Wireless sensor network (WSN); Wireless communication technology
 

 
目錄
摘要
Abstract
第一章   緒論
1.1 課題研究背景及其研究的目的
1.2 國內外在該領域的研究現狀
1.2.1 基于WSN的電力信息流路由軟件系統的國內研究現狀
1.2.2 基于WSN的電力信息流路由軟件的國外研究現狀
  1.3 本論文所做的主要工作和結構安排
第二章 系統的關鍵技術分析
  2.1設備能效和建筑能效的考核及其檢測計算技術
2.1.1 設備能效的考核及其監測計算技術
2.1.2 建筑能效的考核及其監測計算技術
  2.2 無線傳感網絡技術分析
  2.3 無線通信技術
2.3.1 ZigBee技術分析
2.3.2 ZigBee組網技術介紹
2.3.2 無線通信技術在本系統中的應用分析
  2.4 射頻技術和傳感技術分析介紹
  2.5 相關電力技術分析
2.6 本章小結
第三章 基于WSN的電力信息流路由軟件系統的總體設計
  3.1 基于WSN的電力信息流路由軟件的系統架構及其功能分析
3.1.1 電力信息流在線檢測系統架構分析
3.1.2 基于WSN的電力信息流路由軟件的系統功能分析
  3.2 基于WSN的電力信息流路由軟件的系統總體設計方案
3.2.1基于WSN的電力信息流路由軟件的系統測試方案
3.2.2基于WSN的電力信息流路由軟件的系統軟件自動化測試技術研究
3.2.3基于WSN的電力信息流路由軟件的系統硬件總體設計
  3.3 基于WSN的電力信息流路由軟件的能效分析系統總體設計方案
3.3.1 基于WSN的電力信息流路由軟件的能效分析系統分析方案
3.3.2 基于WSN的電力信息流路由軟件的能效分析系統軟件采集分析技術
3.3.3 基于WSN的電力信息流路由軟件的能效分析系統硬件總體設計
  3.4 本章小結
第四章 基于WSN的電力信息流路由軟件的系統詳細設計
  4.1 無線傳感器網絡的構建
  4.2 無線通信網絡的構建
4.2.1 ZigBee協議棧
4.2.2 ZigBee網絡節點類型
4.2.3 ZigBee網絡拓撲結構
  4.3設備能效和建筑能效的考核及其檢測計算技術的實現
4.3.1設備能效的考核及其監測計算技術的實現
4.3.2建筑能效的考核及其監測計算技術的實現
  4.4 本章小結
第五章 光電發射用基于WSN的電力信息流路由軟件的系統的軟件設計
  5.1 軟件需求分析
  5.2 軟件詳細設計
  5.3 軟件數據庫設計
  5.4 軟件實現
5.4.1 軟件技術支持
5.4.2 軟件功能實現
  5.5 本章小結
第六章 全文總結和前景展望
致謝
參考文獻
附錄
 

 
 
第一章         緒論
1.1   課題研究背景及其研究的目的
隨著電力時代的到來,電力系統的安全越來越成為國計民生的重要方面,隨著我國經濟的發展,電力需求不斷增加,現代電力系統也向著高電壓、大機組、超大容量等方向發展,對供電系統的要求越來越高,另外,隨著我國改革開放的不斷深入,科技發展不斷進步,在這個大環境下,電力系統智能化已經成為不可阻擋的趨勢,同時,我國人民的生活水平大幅度提高,人們對于數字化的供電系統的需求也不斷加大,可以說智能化、數字化、網絡化是當代電力系統的三大發展趨勢,通過查閱資料和請教指導老師得知,國家電網公司早在2009年就發布了智能電網白皮書,用簡單的語言概括就是,智能電網的基礎是集成的、高速雙向通信的網絡,涉及到的主要技術包括傳感器和測量技術、信息通信技術、分析決策技術、自動控制技術、能源電力技術、無線組網技術、能耗監測技術等,總之,智能電網的總體特點就是穩定好、魯棒性強、智能化高、實用性強、信息化到位,本文在這種背景下,順應智能電網的發展要求和趨勢,提出了一種基于WSN的電力信息流路由軟件的系統,本系統可以實時在線監測電力信息流的各種參數已經能效分析,可以在發電、變電、輸電、配電、調度、用電等電力全生命周期中發揮實時監測作用,本文所設計的系統集檢測、控制、調節、報警、自動保護為一體,可以實現電力系統清潔、高效、節能、安全、穩定可靠的運行,本系統經過實際檢驗,運行平穩、使用方便,值得實際推廣。
隨著電網的智能化水平不斷提高,電力系統的安全運行越來越引起人們的重視,影響電力運行安全的因素很多,經過實際調查分析可知,電力系統的自身安全問題是影響電力系統安全的一個重要因素,本文的研究重點是基于WSN的電力信息流路由軟件的的自身安全性分析與檢測,電力信息流作為銜接智能電網六大環節的核心節點,具有全局作用,也是電力系統中電力分配,接受和分配電能,控制電力的流向以及調整電壓的重要設備保障,核心功能是將各級電壓的電網聯系起來,在電力系統中起著電力樞紐的作用,總的來說,電力信息流的安全關乎電力設備整體安全,關乎整體和全局安全性,所以本文所設計的基于WSN的電力信息流路由軟件的系統具有十分重要的意義,總結來看,本系統的重要意義如下:
(1)替代了人工檢修技術,解放了人力:我國在上世紀50年代,開始設置電力信息流檢修工,推行以時間為周期的檢修制度,該制度在相對長的時間內發揮過重要作用,為電力設備的運行安全提供了制度保障,但是隨著電力系統的容量不斷提高,人工檢修方式收到了很大的限制(比如周期固定性,不能實時監測系統的安全,檢修經驗性,由于檢修工經驗論嚴重,有時可能不能發現并處理相關的故障),由于檢修工的水平不同,有時可能帶有主觀性,導致測量不準確,本系統的設計完全改變了這種模式,自動監測,實時監測,準確度高,靈活性好,適應性強。
(2)大大改進了傳統的監測工藝:傳統的監測工藝存在很多問題,比如站內可靠性低、由于檢修導致的停電次數過多、時間過長等,本系統在借鑒前人的研究成果基礎上,改進了監測工藝,實現了全自動化,新的監測工藝穩定性好、信號強度高、信號失真小、監測標準化、問題聯網解決等大大提高了檢測的效率和質量,在充分降低能效的基礎上,做到結果準確、保障有力。
(3)解決了各個供電公司各自為營的局面:傳統的檢測方式大部分是由本公司的技術人員自行制定,具有很大的差異性,這就導致各個供電公司不能在技術上充分合作,共同促進本領域的技術進步,本系統的實現解決了這個問題,本系統采用國家電網公司頒布的統一標準,采用統一通信協議、統一的器件部署,保證不同的電廠可以進行相關的交互,大大加強了本領域技術的交流與進步。
1.2 國內外在該領域的研究現狀
在本小節對國內外的在電力信息流檢測系統和能效分析系統領域的研究現狀做簡單的介紹,由于本系統有兩大功能模塊即基于WSN的電力信息流路由軟件的系統和電力信息流能效分析系統,為了使敘述清晰,本文把兩大功能模塊的國內外研究現狀分開論述。
1.2.1 基于WSN的電力信息流路由軟件系統的國外研究現狀
在現代化的電力設備中都不同程度的加入了檢測系統,這也充分說明檢測系統的重要意義,狀態監測在國內外都被視為一個重要的研究領域,一般來說,狀態監測大多數采用相關傳感器來采集信息,然后送入相關的處理器進行處理后送到相應的執行機構進行相應操作,系統一般涉及硬件和軟件方面,通過檢測系統可以實時的掌握系統的運行情況。
在歐美等發達國家,狀態監測在上世紀80年代就已經引起相關專家的重視,并且被視為非破壞性檢測的首要選擇檢測方式,在上世紀90年代之前,檢測系統應用較多的主要是北美和歐洲發達國家,當然,在在線監測領域美國是絕對領先的,早在1951年,美國西屋公司的約翰遜就發表了針對電機發熱而自損的現象,設計了一種內部監測系統,從而發現了電機運行時槽放電現象,這也成為人類歷史上第一款實用的檢測系統。到了上世紀70年代,美國電力科學院(EPRI)就發表了一系列相關論文,表明電力在線監測已經開始商業化,后來,加拿大等國家也后來居上,研制了一種電力信息流參數測量系統,并被應用到加拿大北部西斯達電力信息流實際使用,這也被公認為在線監測系統成功應用到電力信息流檢測的第一個成功案例,在亞洲,日本公司也做了很多工作,比如日本相關科學家開發了在線監測油壓測量儀、高分子膜透氣性檢測儀等各種設備,總之,由于國外研究較早,應用已經十分成熟,在美國等國家,已經把電力設備加入在線監測設備作為了一項國家標準,同時,在國外,在線檢測系統應用于電力信息流等領域,取得了很大的經濟效益,促進了本領域的技術進步和科學發展。
國內的研究起步時間晚,但是由于改革開放,科技進步,所以起點較高,國家有關部門對于在線監測系統的發展十分重視,并相繼有教育部牽頭,在華北電力大學、西安交通大學等國內高校成立科研攻關組,在在線監測領域投入了大量的人力和物力,并取得了一定的成績,我國自主知識產權的在線監測系統已經實際投入使用,國家電網公司也積極致力于電網智能化,監測在線化,經過國家相關部門和科研人員的不斷努力,在2010年,全國已經全面推廣電力設備在線檢測系統,全面提升設備的智能化水平,推廣應用智能化技術和設備,實現電網安全在線監測和預警功能,目前,國家電網在山東、北京、廣東等省已經全部實現電網監測在線化,預警監測提前化,大大提高了我國電網的智能化水平和安全等級,產生了巨大的經濟效益。
1.2.2 基于WSN的電力信息流路由軟件的國內研究現狀
在資源短缺的今天,能效一詞成為人們關注的熱點,能效分析就是在實現系統功能的前提下,盡量節約能源,結合本系統的實際情況,能效主要表現在建筑能耗、空調系統能耗、電力信息流設備自身能耗等幾方面。能耗分析在國外已經十分成熟,在相關國家,已經把能效分析作為一項國家強制標準,能效分析在美國發展最快,能效分析起步于美國,發展于歐洲發達國家,早在上世紀60年代,美國相關部門就提出了能耗最優化算法,并成立了專門的研究小組,該小組主要的研究領域有三個,也就是建筑能耗、設備能耗以及其它能耗,該小組最新的研究成果被稱為能耗算法,這是一個多因素最優算法,可以在考慮很多因素的前提下,通過不同因素的權重和相關篩選算法做出最佳選擇。歐洲發達國家也十分重視能耗的分析和優化,德國在1982年發布科技白皮書提到,要在20世紀前把德國建造成能耗節約型國家,并且在1990年由德國科學家開發出一種被稱為貝德的系統,可以對包括電力信息流能耗分析在內的各種情形進行能耗最優設計,該系統應用十分廣泛。
能耗分析在國內的發展也不算太晚,由于我國是人口大國,能源短缺已經成為制約我國可持續發展的大問題,為此,國家相關部門提出了能耗標準,限制超過標準的設備投入使用,國家也十分重視能耗分析檢測系統的設計,中國科學院早在1997年就提出了能耗最優化這一概念,經過幾十年的發展,我國大型企業都已經安裝了能耗監測設備或者采用相關算法進行能耗控制。通常來說,能耗監測與分析在國內一般步驟為:能耗信號監測、能耗信號采集、數據處理分析、分析診斷、最優化抉擇等,通過一系列的流程,確保最終采用的方法符合能耗最優化標準。
1.3   本論文所做的主要工作和結構安排
本文在查閱相關文獻資料的基礎上,請教指導老師,結合自身所學的知識,提出并實際設計實現了一款基于WSN的電力信息流路由軟件的系統,本系統可以實現在線實時監測電力信息流的相關參數和電力信息流能效分析最優化選擇,系統涉及到的關鍵理論和技術包括無線通信技術、無線傳感器網絡技術、信號放大與除雜技術、信號處理技術、UHF(特高頻法)在線監測技術、能效分析技術等,采用的無線技術是Zigbee技術、采用的相關協議以國家標準為準,總結來說,本文所做的主要工作就是設計了基于WSN的電力信息流路由軟件的系統的硬件系統和軟件系統,最后給出系統的實際運行截圖,最后對系統進行相關測試,對系統設計過程中遇到的困難和問題進行總結,對系統的前景進行展望。接下來簡單介紹下全文的行文結構:
第一章為緒論:主要介紹了課題的研究背景已經研究的目的和意義,對基于WSN的電力信息流路由軟件的系統在國內外的研究現狀做了較為詳細的闡述,最后介紹了本文所做的主要工作和全文的結構安排。
第二章為系統的關鍵技術分析:在本章詳細介紹了在系統設計開發過程中涉及到的相關技術,主要包括設備能效和建筑能效的考核及其監測計算技術,在本文分為兩個方面分別論述,還介紹了無線傳感器網絡技術、無線通信技術(包括無線技術ZigBee技術、ZigBee組網技術、以及分析了無線通信技術在本系統中的應用策略)、射頻技術和傳感技術,最后簡單論述了相關電力技術,并對本章進行了總結。
第三章為基于WSN的電力信息流路由軟件的系統的總體設計:在本章對系統進行總體設計,首先對基于WSN的電力信息流路由軟件的系統架構及其功能進行總體分析,然后給出系統的總體設計方案,并給出系統的總體測試方案,給出系統的總體硬件設計方案和總體軟件設計方案,最后給出系統能效分析總體設計方案,還是分模塊設計,分別給出系統的硬件和軟件設計方案。
第四章為基于WSN的電力信息流路由軟件的系統的詳細設計:在本章結合上章總體設計方案進行詳細設計,主要包括無線傳感器網絡的構建、無線通信網絡的構建(包括ZigBee協議棧、ZigBee網絡節點類型、ZigBee網絡拓撲結構)、設備能效和建筑能效的考核及其監測計算技術的實現等,最后對本章進行總結。
第五章為基于WSN的電力信息流路由軟件的系統的軟件設計:在本章對系統的軟件系統進行設計,主要包括軟件需求分析、軟件詳細設計、軟件數據庫設計、軟件實現(包括軟件技術支持、軟件功能實現),最后對本章進行總結。
第六章是全文總結和前景展望:在本章對系統設計過程中遇到的問題和困難進行總結,對自己走過的彎路進行分析,以啟迪后人,最后對系統的發展前景進行展望。
 
 
 
第二章   系統的關鍵技術分析
在本章將對系統設計過程中遇到的關鍵技術進行詳細介紹,以為下文的總體設計打下基礎,本章設計的主要技術包括設備能效和建筑能效的考核及其監測計算技術、無線傳感器網絡技術分析、無線通信技術(主要是無線技術ZigBee技術相關分析)、射頻技術和傳感技術、相關電力技術分析等,本文采用的主要方法就是先對技術進行介紹,然后分析該技術在本系統中的應用方式,最后,對本章進行總結。
2.1設備能效和建筑能效的考核及其檢測計算技術
本節對設備能效和建筑能效的考核及其檢測技術進行分析,分為兩方面介紹即設備能效的考核及其檢測計算技術和建筑能效的考核及其監測技術分析。
2.1.1 設備能效的考核及其監測計算技術
設備能效的考核及其監測計算技術是本系統的關鍵技術,結合本系統的實際應用場合,在這里主要對變壓器自身損耗、電容器損耗、站用損耗、變壓器經濟運行等方面分析設計,下面詳細介紹如下:
(1)    變壓器自身損耗
    電力信息流電能損耗主要包括變壓器電抗電容等元件損耗,及電力信息流站用電。其中最主要的是變壓器損耗和電抗器損耗。電力信息流用水主要為生活用水、消防用水。電力信息流能耗計算中變壓器電耗是電力信息流電耗的最重要組成部分,變壓器損耗主要包括變壓器鐵芯中的鐵損(固定損耗)和變壓器繞組電阻上的銅損(可變損耗)。變壓器鐵損是鐵芯的磁滯損耗和渦流損耗,變壓器只要通電即存在鐵損,與通過的功率無關,主要與變壓器的容量和電壓有關;變壓器銅損與電阻和通過電流有關變壓器能耗理論計算方法參照電力系統設計手冊計算。
變壓器空載損耗、負載損耗可依據設備型號與生產廠家確定,或采用同類型產品的相應參數。如在可行性研究階段、設計階段主變壓器未進行設備選型,則可根據三相配電變壓器能效限定值及節能評價值等規范進行取值。變壓器運行時間、最大負荷損耗小時數根據設計文件確定。變壓器負載率、電力信息流能耗與運行時間、負載運行時間、運行方式等因素關系密切。電力信息流老化會增加能耗。由于長時間運行,變壓器鐵心的磁滯損耗和渦流損耗,局部的渦流損耗、主磁通在結構部件的渦流損耗,以及變壓器的介質損耗都會不同程度增大,從而引起損耗增大。
(2) 電容器損耗
電容器的主要作用是為電力系統提供無功功率,提高電力系統運行的穩定性,達到節約電能的目的。 在遠距離輸電中利用電容器可明顯提高輸送容量電容器能耗理論計算方法參照電力系統設計手冊計算。
(3)    站用電耗
站用電指為站內設備正常工作保證電網安全可靠供電的電力信息流自身用電負荷,主要包括站內輔助生產設施及附屬生產設施耗電,分為生產系統、暖通系統、照明系統、給排水系統用電等,包括主變冷卻器、空調、照明燈、水泵、風機等設備。站用電水平主要與電力信息流電壓等級規模及自動化程度有關。
實際運行中,站用電需考慮設備實際運行時間、運行方式效率及運行環境等。 以設備的效率為例,對于水泵、風機等設備,需考慮設備效率;對于空調,則需考慮能效比。
(4) 變壓器經濟運行
變壓器經濟運行是在保障供電負荷的情況下,使變壓器功率損耗為最小的運行方式。變壓器經濟運行不需追加投資,只要加強供電用電管理,即可達到節點和提高功率因素的目的。根據理論計算公式,功率因數增大能提高主變效率,使損耗降低日常運行中應加強對主變運行的監控,提高功率因數,確保電壓無功的管理達到規定的范圍。
2.1.2 建筑能效的考核及其監測計算技術
建筑能效的考核及其監測計算技術也是系統的重要應用技術,結合本文的實際,建筑能效的考核及其監測計算技術主要應用在一下幾方面:建筑建筑環境系統(采暖、通風、空調、照明等),建筑公用設施(供電、通信、消防、給排水等),能耗比例最大的是采暖、通風、空調系統、照明系統、空調系統的能效計算技術等、設計負荷(即裝即冷熱量)的估算。運行負荷(即全年或整個空調季的冷熱量需求)的估算。建筑暖通空調系統裝機冷熱量和電力裝機量的估算(即最初步的能耗分析),可以采用1、負荷指標方法。2、考慮建筑和運行特點的負荷估算方法。3、用計算機模擬方法做建筑能耗分析  照明系統用電統計,將電站的電燈總功率,與平均使用時間做乘積運算。電臺發射機正常工作時,風機水泵冷卻系統隨之啟動運行。耗電量與發射機工作時間有關,由于本文的設計重點是基于WSN的電力信息流路由軟件的系統,所以對于建筑能效不做詳細介紹,想要詳細了解可以查閱相關文獻。
2.2 無線傳感器網絡技術分析
無線傳感器網絡技術的應用可以使本系統自行組建無線網絡,可以實現實時監測系統的各項參數,同時無線傳感器網絡也是無線通信技術的支撐基礎技術,無線傳感器網絡(WSN)現在作為一種新型的無線網絡越來越受到人們的關注,無線傳感器網絡也是一門綜合的技術,涉及的關鍵技術主要有傳感器技術、嵌入式計算機技術、現代網絡技術、無線通信技術、分布式信息處理技術等多項技術,通過構建無線傳感器網絡技術可以實現各類集成化的微型傳感器之間的協作,可以完成對各個節點完成監測、感知和采集各種環境信息或者被監測對象的相關信息,并對信息進行處理,最后通過組織無線通信網絡以射頻或者多跳中繼方式來感知相關節點的信息。一般來說,無線傳感器網絡的結構一般由四部分組成,即由傳感器節點、匯聚節點、聯網或者通信衛星設備、管理節點等組成,有時還會留出系統擴展接口,具體見圖2.1所示:


圖2.1 無線傳感器網絡結構圖
從圖中可以看出,本系統在監測區域內通過布置大量的傳感器節點來形成分布式的監測系統,根據實際情況,布設的傳感器的節點可能達到幾千個甚至上萬個,通過相關的統一的的通信協議,可以自組織小型傳感器網絡,然后通過相關無線通信技術再把各個小型傳感器網絡連接起來,最后通過專用的傳輸網絡把大量的傳感器節點采集到的大量狀態信息傳輸到匯聚節點,然后通過無線網絡或者互聯網把相關信息傳輸到遠程服務器或者客戶應用終端。通過查閱相關資料和請教指導老師得知,傳感器節點具有感知物理環境數據和處理數據的能力,但是傳感器網絡的存儲能力、通信能力、和信心數據處理能力相對較差,此外,現在無線傳感器網絡大部分采用鋰電池供電,電力有限,但是本系統要求傳感器網絡具有很強的處理能力,所以為了彌補無線傳感器網絡的不足,本系統在匯聚節點端加入了一款低功耗的DSP芯片,可以大大加強傳感器網絡的信息處理能力和相關的存儲能力。
匯聚節點是本系統的核心中樞環節,起著聯系信息采集端和客戶終端的作用,也就是無線傳感器網絡與遠程計算機聯網的網關設備,可以實現無線傳感器網絡和計算機網絡之間的協議轉換,就其功能來看,匯聚節點應該具有很強的信號處理能力和大容量數據存儲能力,可以彌補無線傳感器網絡的不足之處,當然,匯聚節點沒有信息處理能力,鑒于匯聚節點的關鍵作用,為了保證系統正常運行,一般在匯聚節點設置穩定的電源供應,一般采用開關電源。
管理節點一般是一臺具有很強信息處理能力的計算機,他可以從總體上管理系統的下屬節點運行,及時掌握設備故障,一般認為管理節點充當無線傳感器網絡的服務器的角色,用于從上層動態的管理和監控整個無線傳感器網絡,采用的主要手段就是通過與匯聚節點進行雙向通信來達到上下層交互的目的,通過匯聚節點來傳遞無線傳感器網絡相關狀態信息。
2.3 無線通信技術
無線通信技術是一種新型的技術,短短十幾年來,無線通信技術已經廣泛應用到國民經濟生活的各個領域,可以說,無線通信技術是當前最活躍的技術領域,一般對于無線通信的定義有很多種,其中一種比較權威的是根據其英文名稱“The Internet Of Things”來定義無線通信技術,通俗的的說,無線通信技術就是物物相連的互聯網,從其定義可以看出,無線通信技術的核心有兩層意思,第一,無線通信技術的核心技術仍然是互聯網,無線通信技術是在互聯網的基礎上擴展而來的技術。第二,無線通信技術把聯網的范圍擴展到了任何物體之間的信息交換和通信,綜上所述,無線通信的精確定義為:通過射頻識別、紅外感應器、全球定位系統、激光掃描器、等信息傳感器設備,按照通用的或者約定好的協議,把任何物體與互聯網連接起來,進行相關的信息交互與通信,通過物體聯網技術可以實現對物體的跟蹤定位、智能化識別、監控和管理為一體的新型網絡呢,隨著傳感器網絡技術和無線通信網絡技術的不斷發展進步,無線通信的內涵和定義還將不斷變化,以適應科技不斷進步的當下形勢。根據本系統的實際情況,在本節將主要介紹ZigBee技術,下面做詳細分析。
2.3.1 ZigBee技術分析
本文通過比較和查閱相關資料以及請教指導老師,最終選擇ZigBee作為系統的無線通信技術,ZigBee技術是當下比較火爆的無線技術之一,也是一種公認的、優秀的短距離無線通信技術,主要特點就是通信距離短、數據傳輸速率低、功耗低、成本低等,此外,ZigBee技術還可以構建不同形狀的網絡結構,可以支持星形、樹形或者網狀的無線網絡,為構建異形網絡打下了基礎,ZigBee技術還有一個很重要的優勢就是可以通過多級級聯的方式來擴大檢測范圍和形成規模網絡,特別適合數據信息的采集與傳輸,是目前無線自組網領域應用最多的技術,在自動化和智能化監測領域已經被認為是事實上的標準。
2.3.2 ZigBee組網技術介紹
ZigBee組網技術是本系統無線網絡構建的核心技術,下面做詳細的介紹分析,在上文中已經介紹過,ZigBee技術具有強大的組網能力,可以構建星形、樹形以及網狀的無線網絡,為系統構建異形網絡打下了基礎,通過構建ZigBee網絡拓撲結構,可以大大擴大ZigBee終端的通信距離和加大無線網絡覆蓋范圍,下面介紹ZigBee技術常用的幾種網絡拓撲結構。
(1)  星形拓撲結構
星形拓撲結構是最簡單的網絡拓撲結構,在組成上分為兩級,也就是有中心協調器節點和分布式的網絡采集節點組成,在設計之處,為了方便,每一個終端節點只能與中心協調器進行單向通信,如果兩個不同的終端節點想要通信,就必須通過中心協調器的轉發,總的來說,星形網絡拓撲結構簡單、價格低廉,但是由于通信路徑固定,所以中心節點可能成為制約整個系統發展的瓶頸,星形網絡拓撲結構如圖2.2所示:

圖2.2 星形網絡拓撲結構
(2)  樹形網絡拓撲結構
樹形網絡拓撲結構一般有三層組成,即由一個中心協調器和一系列的路由器節點和終端節點組成,原理就是由中心協調器連接相關的路由器節點,再由路由器節點連接終端節點,同時路由節點可以分出很多子路由器,子路由器也可以連接終端節點,通過這種模式,可以連接多個終端,從而可以實現多層級的網絡拓撲構建,樹形拓撲結構圖如圖2.3所示:

圖2.3 樹形拓撲結構示意圖
(3)  網狀網絡拓撲結構
通過分析可以知道,星形拓撲結構和樹形拓撲結構有一個共同的缺點,就是路由路徑固定且唯一,為了更靈活的選擇路由路徑,網狀網絡拓撲結構應運而生,網狀網絡拓撲結構是一個相互連接的大型網絡結構,當某個路由路徑出現問題時,信息可以自主選擇路由信息進行傳輸,這就大大減少了信息的丟失率,經過分析得知,網狀網絡拓撲結構也是一個三層的網絡結構,這種拓撲結構靈活性強,適應大型網絡拓撲結構,網狀網絡拓撲結構示意圖如圖2.4所示:

圖2.4 網狀網絡拓撲結構示意圖
2.3.3 無線通信技術在本系統中的應用分析
本系統的關鍵任務就是構建一款可以實時監測電力信息流參數和系統,系統的功能決定了無線通信技術在系統中的重要作用,先從無線通信的特點介紹,總結來看,無線通信有以下三大特點:
(1)它廣泛的應用了傳感器技術,傳感器技術是無線通信技術的基礎,無線通信技術在各個節點上布置了大量的不同類型的傳感器,把傳感器作為信息采集源,傳感器獲得的數據具有實時性和真實性,可以按照一定的環境周期采集相關信息,不斷的更新信息,建立系統穩定的數據庫。
(2)無線通信以互聯網為基礎,在上文中已經提到過,網聯網技術的核心還是互聯網技術,是對互聯網技術的擴展和延伸,基本特點就是把各種無線和有線網絡融合,可以實現把數據實時的發送出去,并具有一定的數據處理和存儲能力。
(3)無線通信技術不僅僅是一種網絡技術,其本身也帶有智能化的處理能力和相對強的數據存儲能力,可以在一定程度上作為智能數據處理器來處理系統的相關情況,現代化的無線通信技術要求本身帶有數據篩選能力,可以在大量傳感器采集到的不同類型的信息中選擇合適的信息加以保護并放大,可以減少信息存儲容量,降低成本,另外無線通信系統還應該具有處理不同類別的信息能力,可以滿足不同客戶的需求。總之,無線通信技術應用于本系統,可以使系統變的智能化、實時性采集信息的能力大大加強,為系統打下了良好的技術基礎。
2.4 射頻技術和傳感技術分析介紹
在本系統中,根據實際情況,要用到射頻技術和傳感技術,總體來說,射頻技術和傳感技術與上文提到的無線傳感器網絡有密切的關系,現在對射頻技術和傳感技術簡單介紹如下。
(1)  射頻技術
射頻技術(RF)是一種現在應用很多的無線識別技術,現在在國內提的比較多的有無線射頻識別技術,一般具體的應用手段就是無線射頻卡,其實無線射頻識別技術在我們的生活中應用十分廣泛,大學學生使用的校園卡、停車場收費站自動識別系統等都是應用了無線射頻技術,在生活中常常被稱為電子卡、電子標簽、電子條碼等。無線射頻的原理相對較簡單,一般有兩部分組成,一個是發射器,還有一部分就是接收器,通常在正常工作時由掃描器或者發射器發射一定的能量給接收器,接收器把唯一的代碼發射出去,此時根據唯一的識別碼來識別身份,該系統的優點就是可以實現無接觸、免電源、無損耗等,由于晶體識別碼在全世界是唯一的,而且無法復制,所以安全性非常高,壽命也很長,目前無線射頻技術應用十分廣泛,主要應用在動物晶片十分識別器、汽車智能晶片識別器,門禁系統、停車場系統、生產自動化管理、在線檢測系統等,在本系統中由于為了保護電力信息流的安全,所以在電力信息流核心監測區域,需要設置類似門禁的系統,需要應用到射頻技術。
(2)  傳感技術
傳感技術也是當今應用比較多的一門技術,也被認為是無線通信技術的基礎技術,傳感技術與計算機技術以及通信技術被公認為信息技術的三大支柱產業,通過查閱相關資料和請教指導老師得知,從無線通信角度來看,傳感技術也是衡量一個國家信息化水平高低的一個重要標準,從原理角度來說,傳感技術就是從自然信源獲取信息,并根據實際應用需要對所獲取到的信息進行處理與變換,最終目的就是把抽象的信號轉換為可以度量的信號,同時傳感技術也是一門多學科交叉的現代工程技術,涉及到的關鍵技術主要有傳感器技術、信息處理與變換技術、信號的優化與改善等。同時,傳感技術也是本系統的關鍵技術,系統的核心功能就是在線監測與能效分析,這就需要系統可以實時采集電力信息流各個方面的信號,所以傳感技術是信號采集的基礎,從這個角度看,傳感技術是系統的關鍵技術。
2.5 相關電力技術分析
由于本系統所針對的對象是基于WSN的電力信息流路由軟件的的在線監測,所以在本系統的設計過程中還需要用到一些電力技術,根據實際情況,本系統涉及到的站內一次設備主要有變壓器、斷路器、隔離開關、避雷器、容性設備等,下面對這些設備的狀態監測系統做簡單的介紹,一般來說,狀態監測的一般原理就是通過傳感器將采集到的能反映設備狀況的信息參量送入計算機進行相關處理,最后輸出表征設備狀態的參數,以此來監測設備是否正常,再利用計算機強大的信息處理能力,把大量的參數做成狀態檢測表,然后設置一定的閾值,如果超過閾值就可以判斷設備出現故障,需要檢修, 音樂教學論文,通過這種方式,大大解放了人力,帶來了巨大的經濟效益。
(1)  變壓器
變壓器是電力信息流的核心設備,對變壓器進行在線監測,及時發現故障,對整個電力信息流的正常運行具有十分重要的作用,一般來說對變壓器的在線監測主要包括色譜分析、局部放電在線監測、溫度監測、絕緣監測等,限于論文篇幅,具體的監測方法可以查閱相關文獻資料,在這里不再累述。
(2)  斷路器
斷路器故障導致電力信息流癱瘓也十分常見,所以斷路器的狀態監測也十分重要,根據實際調研發現,斷路器故障主要表現在斷路器拒分、拒合,合閘誤閉鎖、分閘誤閉鎖,斷路器偷跳或誤跳等外在表現。其誘因主要是雷電沖擊、傳動機構失靈或外電路短路電流等因素導致的設備絕緣水平降低或氣密性降低等機械類原因和各種線圈、繼電器燒壞,控制回路或同步回路短路等電氣類兩種原因,具體的監測方法可以查閱相關文件,在這里不再累述。
(3)  隔離開關
    電力信息流內的隔離開關和開關柜設備運行中承載著較大電流,其接頭、接觸面
發熱是生產中的難題,發熱嚴重時可能導致接頭溶斷,產生突發性故障。狀態監
測能夠及時發現隱患,防止超高溫燒毀和導致絕緣老化擊穿引發的短路事故,實
現溫度遠程監控和異常報警,提高供電可靠率,便于實現狀態監測和配網自動化。
(4)  避雷器
    容性設備及避雷器部分的故障主要表現在容性設備擊穿、相對介損降低以及避雷器設備外部爆裂、絕緣特性降低、對地電流過大等。需要在線監測的信息有:
(1)CT 電流互感器的三相泄漏電流、介質損耗、等值電容:通過上述監測
信息確定 CT 電流互感器的絕緣特性;
(2)CVT 電壓互感器的三相泄漏電流、介質損耗、等值電容:通過上述監
測量確定 CVT 電壓互感器的絕緣特性;
(3)OY 耦合電容器的三相泄漏電流、介質損耗、等值電容:通過上述監
測的數據確定 OY 耦合電容器的絕緣特性;
(4)避雷器漏電流、容性電流、阻性電流、計數器動作次數、雷擊次數:
通過上述電流及雷擊次數等確定避雷器的絕緣特性,從而實現避雷器絕緣狀態的
在線監測。
(5)  容性設備
容性設備是指其物理性質呈容性,有時由于靜電和電磁作用,容性設備也需要監測,具體方法可以查閱相關文獻。
2.6 本章小結
本章主要介紹分析了在系統的設計過程中涉及到的關鍵技術,本章首先介紹了設備能效和建筑能效的考核及其監測計算技術,本章給出了常用的計算技術并結合系統實際給出了適合系統的方案,接下來分析了系統的核心應用技術即無線傳感器網絡技術,本文先給出了無線傳感器網絡的架構和層次介紹,結合本系統的實際給出了本系統的無線傳感器網絡的設計方案,由于系統需要用到無線通信技術,系統經過對比選擇了ZigBee技術, 班級管理論文,主要從ZigBee技術分析、ZigBee組網技術介紹、無線通信技術在本系統中的應用等三方面介紹了本系統的無線通信技術,最后簡單介紹了射頻和傳感技術,結合系統實際應用場合,介紹了相關的電力技術,本章為下一章系統的總體設計打下了基礎。
 
 
 
第三章 基于WSN的電力信息流路由軟件的系統總體設計
本章主要對系統進行總體設計,系統采用模塊設計法,對系統的功能模塊進行硬件和軟件的總體設計,本文主要從基于WSN的電力信息流路由軟件的系統架構及其功能分析、基于WSN的電力信息流路由軟件的系統總體設計方案、基于WSN的電力信息流路由軟件的能效分析系統總體設計方案等三大方案對系統進行總體設計,本章采用的方法是先給出實際總體設計方案,給出硬件電路圖和軟件總體流程圖,總后對系統的總體設計方案可行性進行論述。
3.1 基于WSN的電力信息流路由軟件的系統架構及其功能分析
本小節主要論述基于WSN的電力信息流路由軟件的系統的架構和功能,通過查閱相關資料和請教指導老師,經過比較對比,基于WSN的電力信息流路由軟件的系統采用總線式的分布式分層架構,下面分系統總體架構分析和系統總體功能設計兩方面來介紹。
3.1.1 電力信息流路由軟件系統的架構分析
本文借鑒現在已經廣泛使用的電力信息流整體通信結構,系統的整體架構分為過程層、間隔層、站控層等三層,系統的整體架構如圖3.1所示:

 
 
 

圖3.1 系統總體架構圖
    下面簡單介紹各層的功能,過程層一般安裝變壓器等一次設備的在線監測裝置,采用 Modbus、IEC  61850等不同協議與間隔層裝置通信,用于采集變電設備的狀態信息并將一次設備的模擬信號轉換為數字信號。對于不符合 IEC  61850 的在線監測裝置,在接入到間隔層的綜合監測單元時需要進行規約轉換。
間隔層中按照一次設備類別,設置對應的綜合監測單元,通過協議轉換功能匯集過程層中采用不同通信規約的在線監測裝置,并按照 IEC  61850 標準構建一次設備的統一監測數據模型,實現與站控層裝置的標準通信以及監測數據加工、閾值比較和監測預警等功能。如果監測裝置都符合 IEC 61850 通信標準,則不用設置綜合監測單元,監測裝置直接與站端監測單元通信。 站控層中設置站端監測單元,與過程層中符合 IEC  61850 標準的在線監測裝置及間隔層中的各綜合監測單元通信,實現整個在線監測系統的數據采集和運行控制。同時,站端監測單元整理采集的在線監測數據,并參照 Q/GDW 534標準中給出的變電設備在線監測數據接入規范進行存儲,實現整個電力信息流的監測預警、數據展示、綜合分析和故障診斷,并通過 CAC 實現與網省端的數據通信。
3.1.2 基于WSN的電力信息流路由軟件的系統功能分析
綜合系統的需求分析和相關技術文檔,確定基于WSN的電力信息流路由軟件的系統的功能模塊,本文把系統分為四大功能模塊即上位機控制模塊、信息采集群模塊、無線傳感器網絡模塊、設備能效和建筑能效分析模塊,系統總體功能模塊示意圖如圖3.2所示:

 
 

圖3.2 系統總體功能示意圖
其中信息采集群模塊是系統的核心功能模塊,該模塊最重要的單元就是綜合檢測單元,綜合檢測單元是在線監測裝置和站端監測單元的數據交互和控制節點,其主要的功能簡介如下:
(1)匯聚在線檢測裝置發送的數據,結合 IEC 61850 監測數據模型生成站端監測單元可以直接利用的標準化數據,并通過抽象通信服務接口(ACSI)提供模型訪問、數據獲取和設置服務,完成數據的接入和下裝。
(2)支持監測數據告警和周期性上傳。對于告警類數據,使用緩存方式,對于測量類數據,采用非緩存方式。該功能主要通過 ACSI 提供的報告服務實現,通過設置報告控制塊的參數控制監測數據上傳功能。
(3)下發站端監測單元的控制、參數設置、數據總召和對時的操作命令, 這些功能通過 ACSI 提供的控制服務、定值服務、報告服務和時間同步服務來實現。 站端監測單元在電力信息流內負責在線監測系統的全局運行控制及監測數據采集,同時與網省端的數據采集裝置通信完成數據上傳,具備以下功能:
(1)注冊和管理在線監測裝置和綜合監測單元,對其參數進行配置;
(2)使用召喚和定時輪詢的方式采集在線監測數據;
(3)按照在線監測數據接入規范建立數據庫,將采集的監測數據轉換存儲到數據庫中,實現監測數據的集中管理以及圖形化展示;
(4)提供 CAC 功能與網省平臺通信,同時提供與站內信息一體化平臺的交互接口; 
(5)實現變電設備監測數據綜合分析、故障診斷及預警功能。
3.2 基于WSN的電力信息流路由軟件的系統總體設計方案
本節給出基于WSN的電力信息流路由軟件的系統總體設計方案,本文從基于WSN的電力信息流路由軟件的系統測試方案、基于WSN的電力信息流路由軟件的系統軟件自動化測試技術研究、基于WSN的電力信息流路由軟件的系統硬件總體設計等三個方面給出系統的總體設計方案,下面做詳細介紹。
3.2.1基于WSN的電力信息流路由軟件的系統測試方案
通過查閱相關文獻資料和請教指導老師后得知現階段對于在線監測系統的測試主要依據IEC 61850-10 規范,本文借用商用的或者自主研發的客戶端對系統通信性能進行模擬測試,IED 通信模擬器、配置工具和協議分析工具構建測試仿真系統完成對電力信息流通信的一致性測試。上述方案將IEC 61850-10服務器或者客戶端作為被測設備,通信模擬器作為客戶端或服務器,向被測裝置發送符合IEC 61850-10標準的通信請求并記錄響應結果,使用協議分析儀采集以太網上的協議數據包來監控在通信過程中出現的錯誤。使用配置工具完成IED 配置文件、系統配置文件的編輯、導出、導入、傳送等功能,并根據 IEC 61850標準對配置文件進行校驗。為了進行在線監測系統的測試,需要建立一個最小測試環境,對站端監測單元、綜合監測單元進行一致性和功能測試。
3.2.2基于WSN的電力信息流路由軟件的系統軟件自動化測試技術研究
本小節對系統軟件自動化測試技術進行分析研究,對系統進行一致性測試,可以分為靜態一致性測試和動態一致性測試,詳細介紹如下:
1)靜態一致性測試
靜態一致性測試驗證制造商提供的說明文件是否與被測監測單元的硬件和軟件版本相符;檢驗監測單元的模型文件是否符合 SCL 的 XML 模式;檢驗監測單元模型的正確性,主要包括 LN 的必備對象是否存在、有條件的對象是否存在以及對象的數據類型以及來自設備的數據屬性值是否在規定范圍內。
2)動態一致性測試
主要進行 ACSI 服務的實現程度測試,使用 IEC 61850 客戶端通信模擬器生成請求報文,接收和分析綜合監測單元的響應報文,對比與監測單元的配置文件中給出的功能是否一致。測試用例包括肯定測試用例和否定測試用例,肯定測試用例表示正常條件下的驗證,否定測試用例表示異常條件下的測試。下文主要給出了模型訪問和數據查詢以及監測數據的告警、召喚和周期上傳的測試用例描述,如表 3-1和表3-2所示。
表3-1 模型訪問和數據查詢測試用例
 
 
表3-2 數據的告警、召喚和周期上傳

3.2.3基于WSN的電力信息流路由軟件的系統硬件總體設計
本小節對系統的硬件進行總體設計,結合系統的四大功能模塊,為了清晰,本文分別設計系統的四大功能模塊的硬件電路,具體方法為給出器件選擇和原因,最后給出各個模塊的電路圖。由于系統對精確性和實時性要求很高,所以系統在硬件器件的選擇上必須考慮器件的延遲時間和精確度,鑒于硬件系統對系統的重要作用,本小節最為全文的重點章節論述,詳細介紹如下。
(1)  上位機控制模塊硬件設計
    顧名思義,上位機就是可以與人直接交互的高級視覺系統,本系統核心功能就是可以在線實時監測基于WSN的電力信息流路由軟件的的各項參數和能效分析,本文經過分析對比后選擇STM32作為系統的主控芯片,對于STM32簡單介紹如下:由于本系統采用的是意法半導體的STM32F103系列的產品。在這里選用的芯片為STM32F103,該芯片是意法半導體的增強型為芯片,該芯片是基于Cortex-M3 CPU內核開發的,芯片自帶512K的FLASH,豐富的GPIO資源,其復用引腳功能有USB、CAN、IIC、SPI、11個定時器、3個ADC和13個通信接口[9]
本次設計用到了GPIO、IIC、SPI、定時器、ADC這幾個功能。最小系統板的原理圖如圖3.3所示:

圖3.3 控制系統最小系統圖
一個好的在線監測系統除了自身結構設計等原因外,還有一個重要的原因就是采用了恰當的電源技術,不但增加了電源供應時間,而且使檢測器輕巧,減輕了重量。下面對其論證如下
方案一:采用傳統的LM7805進行三端穩壓電路設計,該方案很經典,而且應用很廣泛,7805內部有防止過熱,過流及調整管的保護電路,使用過程中非常省心和方便,采用7805構成的三端穩壓電源,外圍電路很少,只需要一個電橋即可,是小功率變壓穩壓的最佳選擇。但是在線監測系統在檢測過程中功率較大,容易燒毀7805三端穩壓電源。
方案二:采用開關電源LM2596開關電源模塊,該模塊是美國TI公司主打的穩壓芯片,它內含兩個振蕩器即固定頻率振蕩器和基準頻率振蕩器。具有很完善的功能,如保護斷流,過壓保護,自動屏蔽無線電等功能。在該芯片的基礎上,添加很少的輔助器件就可以構成穩定,使用的穩壓電源,可以提供5V,3.3V,12N,等電壓,其最大的亮點為可以連續調節所需要的電壓,調節準確,范圍廣。效率高,是打算實現長時間在線監測的最佳選擇。
方案三:采用AMS1117作為穩壓器件,該系列芯片具有固定式和可調式幾種,該芯片的壓差最多不超過1.3V,其設計電路較為復雜,而且只能提供很低的電壓,所以該芯片所提供的電源較低,但是穩定,絕度不會出現偏差,但是,在大電流的情況下芯片會發熱,該芯片不適合做在線監測系統的供電芯片,功率較低,使檢測試卷時間縮短。
綜上所述,經過考慮,本論文選擇方案二。
(2)    信息采集群模塊
信息采集群模塊是系統檢測信號的來源,本系統主要實現基于WSN的電力信息流路由軟件的系統,結合電力信息流實際,系統需要采集的信號類型主要有靜電信號、干擾信號、屏蔽信號以及溫度信號等,本文主要通過各類傳感器采集信息,然后通過無線傳感器網絡傳輸信號到上位機端進行處理后顯示在系統面板上,系統的電路圖如圖3.4所示:

圖3.4 溫度傳感器電路圖
(3) 無線傳感器網絡模塊
無線傳感器網絡模塊是系統的通信模塊,對于把傳感器采集到的信號穩定的傳到系統的信號處理單元具有重要作用,下面給出系統的無線傳感器網絡模塊的硬件原理圖,如圖3.5所示:

圖3.5 系統無線傳感器網絡拓撲圖
(4)設備能效和建筑能效模塊
本模塊是系統的兩大主要功能之一,限于論文篇幅,本功能不作為系統的重點論述,下面僅簡單介紹如下:設備能效和建筑能效的分析主要包括變壓器損耗、站內損耗已經建筑損耗、空調損耗等,下面僅給出變壓器損耗的分析拓撲圖,如圖3.6所示:

圖3.6 變壓器損耗監測原理圖
3.3 基于WSN的電力信息流路由軟件的能效分析系統總體設計方案
本節進行基于WSN的電力信息流路由軟件的能效分析系統的總體方案設計,主要內容包括在分析研究國內外能效分析系統的研究現狀和常用方法的基礎上,結合實際情況給出系統的能效分析方案、然后給出能效分析系統的軟件設計總體方案和硬件總體設計方案,下面詳細介紹。
3.3.1 基于WSN的電力信息流路由軟件的能效分析系統分析方案
通過查閱相關資料和請教指導老師得知,現在國內外在能效分析領域常用的方法主要有設備能效比較法、前后能源消耗比較法、產品單耗比較法、模擬分析法等,國內用的比較多的主要有前兩種,其中設備能效比較法和產品單耗比較法是電力信息流能效分析領域最常用的兩種方法,本文結合系統實際情況,經過對比分析,提出了一種綜合性的電力信息流能效分析系統的測試方案,該方法涉及數學建模、最優化函數確立、多參數整合等多種技術和理論,基本思路就是把系統能效所涉及到的多個參數經過預處理后輸入多參數比較器,通過比較器的篩選,最后給出最優化方法,實際證明,本方法理論基礎扎實、實用性好、結果準確。
3.3.2 基于WSN的電力信息流路由軟件的能效分析系統軟件采集分析技術
本小節給出本文所采用的綜合能效分析法所對應的軟件設計,在這里利用JAVA語言編寫,實際代碼如下:
  public class Communication
    {
        public static Socket socket;
        private Thread receiveThread;
        private Thread receiveTextThread;
 
        public event EventHandler<MessageNotifyEventArgs> MessageNotify;
        //   public delegate void MessageNotifyEventArgs(object sender, MessageNotifyEventArgs e);
 
        private bool connected;
        public bool Connected
        {
            get { return connected; }
        }
 
        private bool initialized = false;
 
        //多參數輸入
        public void Connect(string server, int port)
        {
            if (!connected)
            {
                socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                socket.Connect(new IPEndPoint(IPAddress.Parse(server), port));
 
                this.connected = true;
            }
        }
 
        //給出參數比較標準
        private static ServerSendInfo ui;
        public static ServerSendInfo Ui
        {
            get { return ui; }
            set { ui = value; }
        }
 
        private static string userLName;
        public static string UserLName
        {
            get { return userLName; }
            set { userLName = value; }
        }
 
        public void Authorizate(UserInfo message)
        {
            if (connected)
            {
                SendMessage(message);
                string rece = ReceiveMessage();
                if (rece.Substring(0, 2) == "ON")
                {
                    throw new Exception("經過比較,能效最優方法為:");
                }
                else if (rece.Substring(0, 2) == "OK")
                {
                    this.initialized = true;
                    this.StartReceiveMessage();
                    XmlSerializer xs = new XmlSerializer(typeof(ServerSendInfo));
                    using (StringReader reader = new StringReader(rece.Substring(2)))
                    {
                        ui = (ServerSendInfo)xs.Deserialize(reader);
                        userLName = ui.UserRealName;
                    }
                }
                else if (rece.Substring(0, 2) == "RE")
                {
                    throw new Exception("增加參數或者改變標準!");
 
                }
            }
 
        }
3.3.3 基于WSN的電力信息流路由軟件的能效分析系統硬件總體設計
本小節給出基于WSN的電力信息流路由軟件的能效分析系統的總體硬件設計,為了做到準確,系統以10KV高壓配電系統圖為分析實例,給出能效分析系統的總體硬件設計,分析實例涉及到的配電圖如圖3.7所示:

 

圖3.7 系統分析實例配電圖
系統結合實例用配電圖,給出基于WSN的電力信息流路由軟件的系統的總體硬件設計方案,限于論文篇幅,在這里僅給出系統的硬件電路圖,系統硬件電路圖如圖3.8所示:
 
 
 

圖3.8 系統能效分析總體硬件圖
3.4 本章小結
本章是全文的重點章節,主要給出了系統的總體設計方案,涉及到主要內容主要有基于WSN的電力信息流路由軟件的系統架構及其功能分析、基于WSN的電力信息流路由軟件的系統的總體設計方案(包括在線監測系統的軟件總體設計和硬件總體設計以及系統總體測試方案)、基于WSN的電力信息流路由軟件的能效分析系統總體設計方案(包括能效分析系統軟件總體設計方案和能效分析系統硬件總體設計方案以及總體測試方案),本章采用的研究方法是在分析前人研究成果的基礎上,綜合本系統實際,給出本系統的總體設計方案,并對系統可行性進行論證分析,本章為下一章系統的詳細設計打下了理論基礎。
 

 
第四章 基于WSN的電力信息流路由軟件的系統詳細設計
本章在上章總體設計的基礎上對系統的功能模塊進行詳細設計,主要對無線傳感器網絡的構建、無線通信網絡的構建(包括ZigBee協議棧、ZigBee網絡節點類型、ZigBee網絡拓撲結構)、設備能效和建筑能效的考核及其監測計算技術的實現,接下來對以上功能模塊做詳細設計。
4.1 無線傳感器網絡的構建
本系統經過比較得知,利用無線通信技術可以使系統變的智能化,總體來說,本系統采用傳感器對設備狀態經行監測,利用無線傳感器網絡進行通信和交互,根據實際調研得知,現代電力信息流都是通過有線方式進行通信和連接,有線連接有其自身的優點,但是缺點也是明顯的,比如會造成舊電力信息流升級改造時網絡安裝、升級、擴展帶來了很大的不便,就目前電力信息流的規模和容量以及電力信息流的發展趨勢來看,傳統的有線連接方式已經不適應當今的發展需求,在這種背景下,無線傳感器網絡是現在應用很多的一種新興的通信技術,與傳統的有線通信方式有很多優勢,主要表現在以下幾點:
(1)組網十分方便,限制很小:無線傳感器網絡在安裝時避免了電纜布線、鋪設等繁瑣工作,大大減輕了施工工作量,由于數據通過無線通信方式進行傳輸,避免了電纜的使用,大大減少了監測成本。
(2)部署靈活。沒有有線介質的限制可以使通信終端設備在監測區域內自
由地布置或移動。
(3)覆蓋范圍廣。無線傳感器網絡可以在不易進行布線的地方進行數據通
信,并可以通過構建樹形、網狀等拓撲結構來延長通信距離和擴大網絡覆蓋范圍,
這使得網絡能夠遍及有線通信所到達的區域。
(4)可擴展性。
當網絡中增加新的無線傳感器節點時,也不需要其它外界條件,原有的無線
傳感器網絡可以有效地融納新增節點,使新增節點快速融入網絡,參與全局工作。
這有效的解決了電力信息流使用有線介質通信所遇到的監測布線不方便、成本高、不
易擴展等問題。
除了上述的四個優點外,本文選用 ZigBee 作為主要應用的無線傳感器網絡
技術,采用 IEEE 802.15.4 標準作為底層協議,提供了數據的完整性檢查功能可以有效降低數據傳輸的誤碼率。ZigBee 提供了基于循環冗余校驗(CRC)的數據包完整性檢查功能,支持鑒權和認證,采用了 AES-128 的加密算法,各個應用可以靈活確定其安全屬性。ZigBee 采取了碰撞避免策略,同時為需要固定帶寬的通信業務預留了專用時隙,避開了發送數據的競爭和沖突。最重要的是 ZigBee
無線傳感器網絡本身具有很強的健壯性,當某些節點出現通信故障時其他節點可
以重新選擇其他節點路徑進行數據的傳輸,這避免了由于某單個節點的故障而造
成整個網絡的癱瘓,大大提高了網絡通信的可靠性。
4.2 無線通信網絡的構建
無線通信網絡是保證系統信號穩定傳輸,確保基于WSN的電力信息流路由軟件的系統系統檢測信號實時獲取和顯示提供了一種有效的通信方式,詳細介紹如下:
監測系統的整體結構應符合智能化的要求,采取分層分布式結構,采用IEC61850 標準進行建模和通信,提供靈活的傳感器及軟件接口模式。因此,將智能電力信息流一次設備狀態監測系統的站內部分劃分為三層結構,分別為釆集層、匯聚層和站控層。三層之間通過兩個網絡進行通信,其中站控層與匯聚層由站控層網絡連接,主要通過站內現有的光纖以太網,匯聚層與采集層之間通過無線傳感器網絡連接。電力信息流設備監測系統總體可分為以下三個部分:
(1)基于傳感器終端節點的無線數據采集部分,主要是選取適用的傳感器
終端節點對電力信息流設備的各狀態信息量進行采集。
(2)基于 ZigBee 技術的無線傳感器網絡數據通信部分,這部分主要是實現將終端節點將采集到的數據通過無線通信方式傳送到協調器節點,再由協調器節點將數據匯聚后通過串口發送至主機以達到監測的目的,并且可以通過布設路由器節點來擴展通信距離,從而擴大無線傳感器網絡的覆蓋范圍。
(3)基于軟件的監測界面部分,這部分功能主要是將通過串口接收的網絡傳送的設備狀態數據,在界面中直觀的顯示出來,監測界面中提供了對實時數據的展示,歷史數據查詢,設備狀態評價,設備狀態告警等功能,使工作人員可以在站控層及時掌握設備的運行狀態。無線通信網絡示意圖如圖4.1所示:

圖4.1 無線通信網絡示意圖
經過實際比較,結合系統實際,系統最終選擇ZigBee技術作為系統無線通信的技術,接下來從ZigBee協議棧、ZigBee網絡節點類型、ZigBee網絡拓撲結構等三個方面對ZigBee技術進行介紹。
4.2.1 ZigBee協議棧
    ZigBee堆棧是在IEEE 802.15.4標準基礎上建立的,定義了協議的MAC和PHY層。ZigBee設備應該包括IEEE802.15.4(該標準定義了RF射頻以及與相鄰設備之間的通信)的PHY和MAC層,以及ZigBee堆棧層:網絡層(NWK)、應用層和安全服務提供層。圖4.2給出了這些組件的概況。每個ZigBee設備都與一個特定模板有關,可能是公共模板或私有模板。這些模板定義了設備的應用環境、設備類型以及用于設備間通信的簇。公共模板可以確保不同供應商的設備在相同應用領域中的互操作性。設備是由模板定義的,并以應用對象(Application Objects)的形式實現(見圖4.2)。每個應用對象通過一個端點連接到ZigBee堆棧的余下部分,它們都是器件中可尋址的組件 圖4.2zigbe堆棧框架從應用角度看,通信的本質就是端點到端點的連接(例如,一個帶開關組件的設備與帶一個或多個燈組件的遠端設備進行通信,目的是將這些燈點亮)。端點之間的通信是通過稱之為簇的數據結構實現的。這些簇是應用對象之間共享信息所需的全部屬性的容器,在特殊應用中使用的簇在模板中有定義。每個接口都能接收(用于輸入)或發送(用于輸出)簇格式的數據。一共有二個特殊的端點,即端點0和端點255。端點0用于整個ZigBee設備的配置和管理。應用程序可以通過端點0與ZigBee堆棧的其它層通信,從而實現對這些層的初始化和配置。附屬在端點0的對象被稱為ZigBee設備對象(ZD0)。端點255用于向所有端點的廣播。端點241到254是保留端點。所有端點都使用應用支持子層(APS)提供的服務。APS通過網絡層和安全服務提供層與端點相接,并為數據傳送、安全和綁定提供服務,因此能夠適配不同但兼容的設備,比如帶燈的開關。APS使用網絡層(NWK)提供的服務。NWK負責設備到設備的通信,并負責網絡中設備初始化所包含的活動、消息路由和網絡發現。應用層可以通過ZigBee設備對象(ZD0)對網絡層參數進行配置和訪問。
IEEE 802.15.4標準為低速率無線個人域網(LR-WPAN)定義了OSI模型開始的兩層。PHY層定義了無線射頻應該具備的特征,它支持二種不同的射頻信號,分別位于2450MHz波段和868/915MHz波段。2450MHz波段射頻可以提供250kbps的數據速率和16個不同的信道。868/915MHz波段中,868MHz支持1個數據速率為20kbps的信道,915MHz支持10個數據速率為40kbps的信道。MAC層負責相鄰設備間的單跳數據通信。它負責建立與網絡的同步,支持關聯和去關聯以及MAC層安全:它能提供二個設備之間的可靠鏈接。ZigBee堆棧的不同層802.15.4 MAC通過服務接入點(SAP)進行通信。SAP是某一特定層提供的服務與上層之間的接口。ZigBee堆棧的大多數層有兩個接口:數據實體接口和管理實體接口。數據實體接口的目標是向上層提供所需的常規數據服務。管理實體接口的目標是向上層提供訪問內部層參數、配置和管理數據的機制。安全機制由安全服務提供層提供。然而值得注意的是,系統的整體安全性是在模板級定義的,這意味著模板應該定義某一特定網絡中應該實現何種類型的安全。每一層(MAC、網絡或應用層)都能被保護,為了降低存儲要求,它們可以分享安全鑰匙。SSP是通過ZD0進行初始化和配置的,要求實現高級加密標準(AES)。ZigBee規范定義了信任中心的用途。信任中心是在網絡中分配安全鑰匙的一種令人信任的設備。根據ZigBee堆棧規定的所有功能和支持,我們很容易推測ZigBee堆棧實現需要用到設備中的大量存儲器資源。 不過ZigBee規范定義了三種類型的設備,每種都有自己的功能要求:ZigBee協調器是啟動和配置網絡的一種設備。協調器可以保持間接尋址用的綁定表格,支持關聯,同時還能設計信任中心和執行其它活動。一個ZigBee網絡只允許有一個ZigBee協調器。
ZigBee路由器是一種支持關聯的設備,能夠將消息轉發到其它設備。ZigBee網格或樹型網絡可以有多個ZigBee路由器。ZigBee星型網絡不支持ZigBee路由器。ZigBee端終設備可以執行它的相關功能,并使用ZigBee網絡到達其它需要與其通信的設備。它的存儲器容量要求最少。然而需要特別注意的是,網絡的特定架構會戲劇性地影響設備所需的資源。NWK支持的網絡拓撲有星型、樹型和網格型。在這幾種網絡拓撲中,星型網絡對資源的要求最低。ZigBee堆棧應該可以提供ZigBee規范要求的所有功能,因此制造商的重點工作是開發實際的應用。為了更加容易實現,如果制造商使用某種公共模板,那么可用大多數現成的配置。如果沒有合適的公共模板,則可以充分利用其它模板已經做過的工作創建自己的模板。ZigBee協議棧體系包含一系列的層元件,其中有IEEE802.15.4 2003標準中的MAC層和PHY層,當然也包括ZigBee組織設計的NWK層。每個層的元件有其特定的服務功能。本說明描述內容涉及ZigBee協議棧的各層元件,但側重于描述最具實際和理論探討性的APL應用層和NWK網絡層。圖4.2為ZigBee棧結構框圖。

圖4.2 ZigBee棧結構框圖
4.2.2 ZigBee無線網絡結構
    ZigBee 無線網絡通常主要由一個協調器節點、若干個路由器節點和終端節
點組成,大量的傳感器節點根據要求部署在監測區域內部,并通過自組織的方式
構成無線網絡。傳感器節點采集到的數據沿著路由器節點逐跳地進行傳輸,在傳
輸過程中監測數據經過一到多個節點處理后,經過多跳傳輸至協調器節點,最后
通過串口到達主機。操作人員通過站控層的監測界面收集監測數據并分析設
備運行狀態。 根據電力信息流內一次設備分布的狀況,結合無線傳感器網絡的基本結構和監測系統的設計需求,對監測系統進行如下設計,其中無線傳感器網絡部分由終端節點、路由器節點和數據傳輸基站構成。終端節點和路由節點的數量根據實際監測的需要確定,監測網絡采用網狀拓撲結構,通過在監測區域部署終端節點來完成各一次設備運行狀態數據的采集,各節點以自組織方式構成無線網絡,如圖所示為系統總體結構。其中無線傳感器網絡終端節點負責電力信息流設備運行狀態數據的采集,并將采集的數據發送到數據傳輸基站,路由器節點主要起到轉發其它終端節點數據的功能,使終端節點采集到的數據能夠通過路由器節點完成多跳式的傳輸,從而擴大通信距離以及無線傳感器網絡的覆蓋范圍。各傳感器終端節點收集到的數據通過無線網絡傳輸至數據傳輸基站,經數據傳輸基站匯聚后通過串口將數據發送到控制主機,再傳送至平臺服務器進行存儲和顯示,供操作人員觀測、查看與分析,從而完成了對電力信息流內給設備運行狀態狀況的實時監測。監測平臺利用軟件編寫,負責接收、顯示和存儲協調器節點通過 RS232 串行總線發給主機的電力信息流一次設備運行狀態的各個數據信息。結構圖如圖4.3所示:

圖4.3 ZigBee無線網絡結構圖
4.2.3 ZigBee網絡拓撲結構
監測裝置一般布置于被監測設備本體或周圍。每臺變壓器配置 1 臺油色譜監測裝置、1 個鐵芯接地監測裝置;每只避雷器配置 1 個避雷器絕緣監測裝置;HGIS的 SF6 微水密度監測裝置則按氣室進行配置,每個氣室配置 1 個;環境溫濕度傳感器只需全站配置 1 只即可。傳感器一端直接與 ZigBee 的終端節點通過電路相連,另一端嵌入安裝在變壓器的箱體內或與相應監測部位的變壓器箱體相連接,根據實際檢測的需要針對不同的應用來配置不同類型的傳感器。 無線數據傳輸基站用于收集各類傳感器的無線信號,并通過數據通信總線將采集數據傳送給控制主機。無線數據傳輸基站由 2.4GHz 數字射頻(Radio Frequency,RF)收發器、寬輸入 DC/DC 直流穩壓電源和高增益定向天線等組成。高增益定向天線可保證與射頻功率為 0dbm 的傳感器節點,在開闊地的通信距離大于 300m,通信距離的擴大可大幅度減少數據傳輸基站的數量,降低系統總成本,有利于無線傳感器網絡的普及與推廣。2.4  GHz  RF 收發模塊接收傳感器節點發來的數據,并產生中斷信號,微處理機控制單元(Microprocessor  Control Unit,MCU)立即讀取該數據,進行分類處理、并保存到內存和 FLASH  ROM中。一個無線數據傳輸基站可管理多達 65536 個傳感器。主機通過串行通信總線查詢傳輸數據傳輸基站,將數據傳輸基站收集的各節點傳感器信息發送到主機,進行進一步處理。
在搭建網絡之前,應根據監測需求,進行詳細的網絡規劃。根據電力信息流主接線圖確定傳感器網絡的拓撲結構,應實現一次設備和終端節點一一對應,并將對應關系錄入后臺數據庫中,這樣一旦哪個節點檢測出的狀態數據與正常值偏離過多,馬上就能定位到具體設備。這種預先規劃完全避開了傳統無線傳感器網絡節點隨機播撒造成的定位困難,既簡潔又高效,符合實際應用的要求。在路由節點開始加入網絡前,應該已經通過廠商設置取得了網絡認證所需密鑰。路由設備形成簇樹狀網絡的過程如下:
a)待加入路由節點持續掃描網絡中的可用信道,直到成功收到網關節點發出的信標;
b)待加入路由節點選擇信標發出設備作為臨時父設備,使用信標中的時間信息完成時間同步;
c)待加入路由設備向臨時父設備發出加入請求,臨時父設備將此加入請求轉發到網絡管理者;
d)待加入路由節點收到臨時父設備轉發來的確認信息,如果確認信息是負響應,待加入路由設備將重新開始加入過程。如果確認信息是正響應,加入過程成功結束;
e)已加入網絡的路由節點開始廣播信標。 終端節點加入過程如下: 在終端節點開始加入網絡前,應該己經通過廠商設置取得了網絡認證所需密明,將網絡地址燒錄到 ROM 中,注冊到某一個路由節點或網關節點之上。終端節點加入族的過程如下:
a)終端節點依次監聽網絡內的可用信道,直到成功收到路由節點或網關節點發出的信標;
b)終端節點選擇與自己父節點匹配的節點作為簇首,根據信標內的時間信息完成時間同步;
c)終端節點向選定的簇首發出加入請求;
d)收到加入請求后,簇首根據自身的通信資源情況向終端節點發出響應;
e)終端節點收到簇首發出的響應后加入網絡;
f ) 終 端 節 點 加 入 網 絡 后 , 網 絡 管 理 者 預 分 配 給 現 場 設備 一 個Publisher/Subscriber 類型的 VCR,用于組態等應用信息的寫入。ZigBee網絡拓撲結構如圖4.4所示:

圖4.4 ZigBee網絡拓撲結構示意圖
4.3設備能效和建筑能效的考核及其檢測計算技術的實現
本小節主要介紹設備能效和建筑能效的考核及其監測計算技術的實現方法,為了使介紹清晰,本文分別介紹設備能效的考核及其監測計算技術的實現和建筑能效的考核及其監測計算技術的實現,檢測技術在上文已經介紹過,所以本節主要介紹設備能效和建筑能效的考核技術和標準,接下來詳細介紹。
4.3.1設備能效的考核及其監測計算技術的實現
設備能效的檢測技術在上文中已經詳細介紹過,在這里不再累述,本小節主要介紹設備能效的考核技術和標準,結合國家電網頒布的標準,結合本系統的實際介紹如下:
(1)  基本要求
1.1 除空載損耗和負載損耗外,油浸式配電變壓器其他參數應符合GB 1094.1和GB/T 6451的有關規定,油浸式非晶合金鐵心變壓器還應符合GB/T 25446的有關規定,立體卷鐵心配電變壓器還應符合GB/T 25438的有關規定。
1.2除空載損耗和負載損耗外,干式變壓器其他參數應符合GB 1094.11和GB/T 10228的有關規定,干式非晶合金鐵心變壓器還應符合GB/T 22072的有關規定。
1.3 按照配電變壓器鐵心材質的不同,變壓器能效參數按電工鋼帶和非晶合金分類。
1.4年貼現率通常高于銀行現行貸款利率(至少不低于貸款利率)。年貼現率可根據投資者對投資回報的期望進行取值,包括對未來通貨膨脹的綜合考慮;也可參照國家發布的行業基準年貼現率取值,宜采用現時零風險利率作為年貼現率。
1.5油浸式配電變壓器(電工鋼帶)能效限定值應滿足表4.1規定,油浸式配電變壓器(非晶合金)能效限定值應滿足表4.2規定。
 
表4.1  油浸式變壓器能效限定值(電工鋼帶)

額定容量
kVA
空載損耗
W
負載損耗
W
短路阻抗
%
Dyn11
Yzn11
Yyn0
30 80 630 600 4.0
50 100 910 870
63 110 1090 1040
80 130 1310 1250
100 150 1580 1500
125 170 1890 1800
160 200 2310 2200
200 240 2730 2600
250 290 3200 3050
315 340 3830 3650
400 410 4520 4300
500 480 5410 5150
630 570 6200 4.5
800 700 7500
1000 830 10300
1250 970 12000
1600 1170 14500
 
 

表4.2油浸式變壓器能效限定值(非晶合金)
額定容量
kVA
空載損耗
W
負載損耗
W
短路阻抗
%
Dyn11
Yzn11
Yyn0
30 33 630 600 4.0
50 43 910 870
63 50 1090 1040
80 60 1310 1250
100 75 1580 1500
125 85 1890 1800
160 100 2310 2200
200 120 2730 2600
250 140 3200 3050
315 170 3830 3650
400 200 4520 4300
500 240 5410 5150
630 320 6200 4.5
800 380 7500
1000 450 10300
1250 530 12000
1600 630 14500
 
4.3.2建筑能效的考核及其監測計算技術的實現
建筑能效的檢測技術在上文中已經詳細介紹過,在這里不再累述,本小節主要介紹建筑能效的考核技術和標準,結合國家相關部門頒布的標準,結合本系統的實際介紹如下:國外一些國家較早開展了建筑節能工作,取得了顯著的成效。根據經驗,推動建筑節能除了要在規劃、設計、施工、產品等技術層面做工作,還應從政策、法規、標準、機制等管理層面進行創新。建筑能效標識制度是近年來發展起來的一種基于市場的建筑節能管理方式,其廣泛應用促進了建筑節能工作的進展。我國在2004年正式啟動了能效標識制度,但僅局限于少數家用電器產品,而建筑領域的能效標識制度還未建立。在當前嚴峻的節能減排形勢下,有必要開展建筑能效標識制度的研究,探索建筑能效評估與標識的技術、方法和標準,通過機制創新來推動我國建筑節能工作的深入開展。既有建筑能效評估技術目前國內還沒有建立完整的建筑能效標識制度,需要首先從建筑能效評估技術入手,建立起建筑能效標識基礎。
建筑能效標識制度是推動建筑節能工作深入開展的一項非常有效的創新機制和管理模式,而建筑能效評估則是保證建筑能效標識順利實施的基礎和依據。我國的建筑能效標識工作尚處于探索試點階段,還未形成完善的能效評估體系。本文以既有建筑為主要對象,初步建立了上海地區既有建筑能效評估方法,該方法將現場實測與計算機模擬技術相結合,以無量綱的相對能耗值作為評估依據,以簡潔、直觀的“能效指數”和“能效等級”作為評估指標,可以為既有建筑的能效標識提供量化依據,通過上述介紹我們從大體上總結出建筑能效的考核標準,也就是環境友好化、能耗降低化、效率提高化。
4.4 本章小結
本章主要在上一章基于WSN的電力信息流路由軟件的系統總體設計的基礎上,本章對基于WSN的電力信息流路由軟件的系統進行了詳細設計,本章主要涉及無線傳感器網絡的構建、無線通信網絡的構建(包括ZigBee協議棧、ZigBee網絡節點類型、ZigBee網絡拓撲結構)、設備能效和建筑能效的考核及其監測計算技術的實現等幾個方面對系統進行了詳細設計,本章的完成意味著系統總體設計方案和詳細設計方案以及系統硬件的設計取得了預期效果,為下一章基于WSN的電力信息流路由軟件的系統的軟件設計打下了基礎。
 
 
 
 
 
第五章 基于WSN的電力信息流路由軟件系統的軟件設計
本章在上文提到的總體設計和詳細設計的基礎上,結合系統實際,討論系統的軟件系統設計,本文主要從系統的軟件需求分析、系統的軟件詳細設計、系統的軟件數據庫設計、系統的軟件實現等幾個方面對系統的軟件設計做較為全面的分析介紹。
5.1 軟件需求分析
   變電設備狀態監測與故障診斷系統是智能電網建設的重要內容,變電設備狀態監測技術是實現智能電力信息流建設的關鍵支撐技術,是智能電力信息流建設的核心內容。站控層的變電設備狀態監測與評估系統要能夠依據獲得的電力設備狀態信息,采用基于多信息融合技術的綜合評估模型,結合設備的結構特性和參數、運行歷史狀態記錄以及環境因素,對電力設備工作狀態和剩余壽命作出評估;對已經發生、正在發生或可能發生的故障進行分析、判斷和預報,明確故障的性質、類型、程度、原因,指出故障發生和發展的趨勢及其后果,提出控制故障發展和消除故障的有效對策,達到避免電力設備事故發生、保證設備安全、可靠、正常運行的目的。
站控層的軟件系統要為智能電力信息流提供在線監測的整體解決方案。系統可對
變壓器溫度及負荷、油中溶解氣體、油中微水、套管絕緣、鐵芯接地電流、局部
放電、輔助設備(冷卻風扇、油泵、瓦斯繼電器、有載分接開關等)、斷路器及
GIS 中 SF6 氣體密度及微水、GIS 局部放電、斷路器動作特性、GIS室內 SF6 氣
體泄露、電流互感器及容性電壓互感器絕緣、耦合電容器絕緣和避雷器絕緣等信
息進行綜合監測。
5.2 軟件詳細設計
    根據站控層軟件系統的需求分析,根據歷史查詢顯示。設備狀態評估如果異
常應能直接實時推送到系統界面,通知站控層工作人員設備運行異常。軟件系統
的詳細設計如圖 5.1所示。

圖5.1 軟件詳細設計圖
系統的流程圖如圖5.2所示。
                                                
圖5.2 系統的軟件流程圖
5.3 軟件數據庫設計
系統的總體 E-R 圖設計如圖5.3所示。
 
圖5.3 系統的數據庫E-R圖
根據系統總體 ER 圖,可以對數據庫表進行設計,電力信息流設備個監測單元
的數據庫表的設計如表5.1和表5.2所示。
表5.1變壓器局部放電接入數據規范

表5.2斷路器局部放電接入數據規范

5.4 軟件實現
5.4.1 軟件技術支持
(1)SSH 框架
SSH 框架的系統從職責上分為四層,分別為:表示層、業務邏輯層、數據持
久層和域模塊層。系統分層有助于開發人員在短期內構建結構清晰、可復用性好、
維護方便的 Web  應用程序。其中將 Struts2 框架作為系統的整體基礎架構,負責MVC 的分離。在 Struts2 框架的模型部分,利用 Hibernate 框架提供對持久層的支持,利用 Spring 提供對業務層的支持。具體做法是:用面向對象的分析方法根據需求設計模型,將這些模型實現為基本的 Java 對象,并編寫基本的 DAO 接口,用 Hibernate 框架實現 DAO,利用 Hibernate 架構實現的 DAO 類進行 Java類與數據庫之間的轉換與訪問,最后由 Spring  完成業務邏輯。SSH 集成框架與技術結構如圖5.4所示。

圖5.4 SSH集成框架與技術結構圖
SSH 框架主要有以下幾點優勢,一是基于 MVC 的設計模式,構建清晰的結構體系,減輕了開發人員的負擔,提高了開發效率;二是由于 SSH 框架是目前
最流行的 Java EE 輕量級開發框架,擁有強大的技術保障,這也使得在未來不會因為技術問題阻礙了系統的擴展性;三是 SSH 框架使得系統具有更高的可維護性,它的分層架構體系將各個層級之間合理的分離,有效地降低了系統層級間的耦合度,降低了將來系統重構以及需求修改的實施風險,并且提高了系統構建的速率。四是,SSH 框架具有良好的解耦性,四層架構之間只需要通過接口進行耦合,具體的實現過程都彼此隔離開來,部分的業務邏輯發生改變不會影響到其他部分。綜上所述,SSH 框架是一種高效的,合理的開發框架。
(2)服務器推送技術
服務器推送技術是 Web 技術中較為流行的一個術語,也是繼 Ajax 之后備受關注的又一項 Web 技術。它保持瀏覽器和服務器建立的 Http 長連接,當有新事件到達服務器或服務器端的數據發生了變化時,不需要客戶端再次向服務器端發送請求,服務器會主動將新事件或數據“推送”到客戶端。當服務器發送一批數據時,瀏覽器顯示數據并保持連接,以后服務器仍可以通過這個連接向客戶端批量發送數據,這樣可以大大節省建立連接和關閉連接的時間。這種低延時特性的技術特別適合用在實時性強的系統中。 在電力信息流設備監測軟件系統中,設備的告警信息要求在第一時間通知工作人員。因此告警信息的傳送對實時性要求很高。由于服務器推送技術能保證數據傳送的實時性,因此十分適用于系統軟件設備告警的應用當中。由于系統的平臺是基于 Java 開發,選用的服務器推送的具體技術是 Pushlet。Pushlet 是 Java  技術、動態網頁技術、Ajax 技術、Java Servlets 技術等多種 Web 技術相互融合共同發展的成果,是實現服務器推送技術的一個開源框架。
(3)設備狀態診斷方法
在線監測的最終目的即是故障診斷,因此設備狀態診斷是綜合性平臺的核心功能。如何通過利用設備監測數據獲得設備運行狀態是該功能的關鍵所在。計算機技術和人工智能技術的發展,為設備診斷技術開拓了新的途徑。人們將專家經驗和標準規則轉化成機器可以理解的知識庫,伴隨時間的推移,不斷完善和更新知識庫,并結合先進的推理過程,就可以得到理想的診斷結果,進而提高了設備診斷的效率和準確性。 系統軟件采用的設備診斷的基本方法是專家系統和神經網絡的結合。專家系統是以邏輯推理為基礎模擬人類思維的符號主義人工智能方法。設計一個專家系統需要經歷知識獲取、知識表示、推理機設計、知識庫和數據庫維護等階段,需要較長時間。神經網絡是以連接結構為基礎,通過模擬人類大腦結構來模擬人類形象思維的一種非邏輯、非語言的人工智能途徑。它能夠從捕獲的大量事件中,迅速做出所容許的精確響應。專家系統和神經網絡各具特點,把二者結合起來可以更好地發揮彼此的特長,揚長避短。基于該方法建造的設備診斷系統也是一個功能更完善、更實用的人工智能應用系統。
5.4.2 軟件功能實現
(1)系統登錄界面
出于信息安全的考慮,電力信息流設備監測系統平臺只能由內部工作人員查看,在系統登錄頁面,工作人員輸入自己的用戶名和密碼即可登錄系統平臺,查看電力信息流設備在線監測的相關信息。如圖5.5所示為系統用戶登錄界面。

圖5.5 系統登錄界面
(2)電力信息流主界面
用戶登錄后,進入系統的主界面。界面左側為電力信息流設備的樹形列表,界面右側為電力信息流一次接線圖。用戶可以通過點擊左側樹形列表的變電設備節點,或者點擊右側電力信息流一次接線圖中的電力信息流設備圖標,查看設備的詳細信息10KV電力信息流系統主界面如圖5.6所示。
 

圖5.6 系統主界面
(3)變壓器監測系統界面
在系統主界面,選擇設備可以查看設備的詳細監測信息。以變壓器為例,如
圖5.7所示為變壓器監測系統界面。在界面中,展示了變壓器的監測類型,監測類型的具體參數,圖標標示各參數的狀態,以及設備整體的運行狀態。其中各監測類型參數的狀態圖標,綠色代表安全,黃色代表預警,紅色代表告警。

圖5.7 變壓器監測系統
5.5 本章小結
    本章針對基于WSN的電力信息流路由研究系統的設計與實現要求,分析了監測系統軟件的功能。并對設計的10KV電力信息流路由研究系統的功能進行了具體的介紹,本文先給出了軟件的需求分析,接下來給出軟件的詳細設計以及數據庫設計,最后給出了軟件的實際實現過程。
 
 
第六章 全文總價和前景展望
    本文介紹了基于WSN的電力信息流路由軟件系統的設計過程,為實現國家電網公司提出的設備狀態監測的目標,設計并實現了基于無線傳感器網絡的電力信息流設備在線監測系統。無線傳感器網絡具有無需布線、施工簡單、易擴展等特點在電力信息流中具有廣泛的應用前景。但目前無線傳感器網絡在電力信息流內的應用較少主要是因為電力信息流內復雜的電磁環境對無線通信的影響的研究還相對缺失,這也是本課題的研究難點。本文的主要工作點如下:
(1)分析電力信息流設備在線監測現狀,結合目前比較先進的無線通信技術完成了基于無線通信的電力信息流設備在線監測系統的需求分析。
(2)電力信息流內設備環境復雜,方案在實際應用中如何避免電力信息流內的干擾因素是關鍵。本文分析了干擾來源并給出了相應措施的網絡結構設計來避免干擾。
(3)通過上述前期工作完成系統詳細設計,包括功能設計圖、系統流程圖、數據庫規范等工作。
(4)編程實現了基于無線傳感器網絡的智能基于WSN的電力信息流路由軟件的系統,經過系統上線運行,效果良好。盡管目前對基于無線傳感器網絡的電力信息流設備在線監測有一定的研究,但在實際應用中還面臨著諸多困難,沒有得到實際應用。下一步的研究工作需要通過在電力信息流內的實際運行,充分考慮電力信息流內電磁信號的干擾,進行抗干擾設計。還要進行軟件界面的優化,使功能得到進一步的擴展。

 
參考文獻
[1]  朱利君, 邵劍峰, 李萼青等. 智能電力信息流設備建模與組態配置 [J]. 華東電網, 2012(6) :0967-0969.
[2]  國家電網公司. 變電設備在線監測系統技術導則 [S].北京:國家電網公司, 2011.
[3]  李九虎,  鄭玉平,  古世東.  電子式互感器在數字化電力信息流的應用[J].  電力系統自動化, 2007(7): 94-98.
[4]  馮祎鑫 . 電子式互感器及其在智能電力信息流中的應用 [J].  科技創新導報 , 2012(10):87-88.
[5]  譚文恕.電力信息流通信網絡和系統協議 IEC61850 介紹  [J].  電網技術,  2001, 25(9):8-15.
[6]  張慎明,卜凡強,  姚建國等.遵循 IEC61970 標準的實時數據庫管理系統  [J].電力系統自動化. 2002(24):26-30.
[7]  孫才新 .輸變電設備在線監測與診斷技術現狀和前景 [J].中國電力 ,  2005, 38(2):1-7.
[8]  鄭爽.  基于無線傳感器網絡的變壓器運行狀態監測系統  [D].天津:河北工業大學,2012.
[9]  魏本剛,  黃華,  周建國等.  智能化基于WSN的電力信息流路由軟件的系統集成測試技術  [J].華東電力,2012.40(6):0987-0989.
[10]李曉峰,  劉娟,  覃紹先等.  基于 IEC61850 的輸變電設備在線監測中心的關鍵技術  [J].高電壓技術,2010,36(12):3041-3046.
[11]Farhangi H. The path of the smart grid [J]. Power and Energy Magazine, IEEE, 2009,8(1):18-28.
[12]王德文,  王艷,  邸劍.  智能電力信息流狀態檢測系統的設計方案  [J].  電力系統自動化, 2011,35(18):51-56.
[13]王德文.  變電設備在線監測系統中 IEC 61850 的一致性測試  [J].  電力系統自動化, 2012,36(17):1-7.
[14]JENNIFER Y, BISWANATH M, DIPAK G. Wireless sensor networks survey [J].
Computer Networks, 2008.52:2292-2330.
[15]Eric  Bogatin.  Essential  Principles  of  Signal  Integrity  [J],  IEEE  microwave, 2011,12(5):34-36.
[16]黃凌沾.高壓斷路器狀態監測與故障診斷方法的研究  [D].  北京交通大學, 2007:22-27.
[17] Niyato, D,  Hossairu  E,  Rashid.  M.M.  Wireless  sensor  networks  with  energy harvesting  technologies:  a  game-theoretic  approach  to  optimal  energy managenient [J]. IEEE Wireless Communications, 2007, 14(4):90-96.
 
 
致謝
在本次畢業設計中,我得到了很多人的幫助,其中既有同學,也有在一個實驗室的朋友,當然幫助最多還是我的指導老師某某,某老師不管在生活上還是學習上都對我很關心,特別在撰寫論文階段,某老師不止一次的關心鼓勵我,使我在科研的征途上越戰越勇,最終完成本文的寫作。這里特別想對某老師說一聲,老師,您辛苦了。
不知不覺,三年已經過去了,留下的只有回憶,在這三年中,我要感謝的人太多了,我要感謝某某老師把我帶進創新實驗室,正是因為有了創新實驗室的平臺,我才能參加很多比賽并獲獎,才讓更多的人認識了我,才使我從一個對相關知識一無所知的研一學生,一步一步的認識軟件,走進軟件的世界,正是有了軟件設計和電子才使我獲得了自信,有了人生的目標。我還要感謝我的輔導員老師,某老師平時對我嚴格要求,讓我養成了很好的生活習慣,我還要感謝我的女朋友,在我做畢業設計的日子里對我的照顧。
最后,感謝某某大學,感謝我的母校,感謝母校給了我一個難忘的三年。使我從一個無知的少年蛻變成了一個有責任,有技能的社會主義接班人。
 
 
 
 
附錄
系統的核心測試代碼:
#include "OSAL.h"
#include "ZGlobals.h"
#include "AF.h"
#include "aps_groups.h"
#include "ZDApp.h"
 
#include "SampleApp.h"
#include "SampleAppHw.h"
 
#include "OnBoard.h"
 
/* HAL */
#include "hal_lcd.h"
#include "hal_led.h"
#include "hal_key.h"
 
/*********************************************************************
 * MACROS
 */
 
/*********************************************************************
 * CONSTANTS
 */
 
/*********************************************************************
 * TYPEDEFS
 */
 
/*********************************************************************
 * GLOBAL VARIABLES
 */
 
// This list should be filled with Application specific Cluster IDs.
const cId_t SampleApp_ClusterList[SAMPLEAPP_MAX_CLUSTERS] =
{
  SAMPLEAPP_PERIODIC_CLUSTERID,
  SAMPLEAPP_FLASH_CLUSTERID
};
 
const SimpleDescriptionFormat_t SampleApp_SimpleDesc =
{
  SAMPLEAPP_ENDPOINT,              //  int Endpoint;
  SAMPLEAPP_PROFID,                //  uint16 AppProfId[2];
  SAMPLEAPP_DEVICEID,              //  uint16 AppDeviceId[2];
  SAMPLEAPP_DEVICE_VERSION,        //  int   AppDevVer:4;
  SAMPLEAPP_FLAGS,                 //  int   AppFlags:4;
  SAMPLEAPP_MAX_CLUSTERS,          //  uint8  AppNumInClusters;
  (cId_t *)SampleApp_ClusterList,  //  uint8 *pAppInClusterList;
  SAMPLEAPP_MAX_CLUSTERS,          //  uint8  AppNumInClusters;
  (cId_t *)SampleApp_ClusterList   //  uint8 *pAppInClusterList;
};
 
// This is the Endpoint/Interface description.  It is defined here, but
// filled-in in SampleApp_Init().  Another way to go would be to fill
// in the structure here and make it a "const" (in code space).  The
// way it's defined in this sample app it is define in RAM.
endPointDesc_t SampleApp_epDesc;
 
/*********************************************************************
 * EXTERNAL VARIABLES
 */
 
/*********************************************************************
 * EXTERNAL FUNCTIONS
 */
 
/*********************************************************************
 * LOCAL VARIABLES
 */
uint8 SampleApp_TaskID;   // Task ID for internal task/event processing
                          // This variable will be received when
                          // SampleApp_Init() is called.
devStates_t SampleApp_NwkState;
 
uint8 SampleApp_TransID;  // This is the unique message ID (counter)
 
afAddrType_t SampleApp_Periodic_DstAddr;
afAddrType_t SampleApp_Flash_DstAddr;
 
aps_Group_t SampleApp_Group;
 
uint8 SampleAppPeriodicCounter = 0;
uint8 SampleAppFlashCounter = 0;
 
/*********************************************************************
 * LOCAL FUNCTIONS
 */
void SampleApp_HandleKeys( uint8 shift, uint8 keys );
void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pckt );
void SampleApp_SendPeriodicMessage( void );
void SampleApp_SendFlashMessage( uint16 flashTime );
 
/*********************************************************************
 * NETWORK LAYER CALLBACKS
 */
 
/*********************************************************************
 * PUBLIC FUNCTIONS
 */
 
/*********************************************************************
 * @fn      SampleApp_Init
 *
 * @brief   Initialization function for the Generic App Task.
 *          This is called during initialization and should contain
 *          any application specific initialization (ie. hardware
 *          initialization/setup, table initialization, power up
 *          notificaiton ... ).
 *
 * @param   task_id - the ID assigned by OSAL.  This ID should be
 *                    used to send messages and set timers.
 *
 * @return  none
 */
void SampleApp_Init( uint8 task_id )
{
  SampleApp_TaskID = task_id;
  SampleApp_NwkState = DEV_INIT;
  SampleApp_TransID = 0;
 
  // Device hardware initialization can be added here or in main() (Zmain.c).
  // If the hardware is application specific - add it here.
  // If the hardware is other parts of the device add it in main().
 
 #if defined ( SOFT_START )
  // The "Demo" target is setup to have SOFT_START and HOLD_AUTO_START
  // SOFT_START is a compile option that allows the device to start
  //  as a coordinator if one isn't found.
  // We are looking at a jumper (defined in SampleAppHw.c) to be jumpered
  // together - if they are - we will start up a coordinator. Otherwise,
  // the device will start as a router.
  if ( readCoordinatorJumper() )
    zgDeviceLogicalType = ZG_DEVICETYPE_COORDINATOR;
  else
    zgDeviceLogicalType = ZG_DEVICETYPE_ROUTER;
#endif // SOFT_START
 
#if defined ( HOLD_AUTO_START )
  // HOLD_AUTO_START is a compile option that will surpress ZDApp
  //  from starting the device and wait for the application to
  //  start the device.
  ZDOInitDevice(0);
#endif
 
  // Setup for the periodic message's destination address
  // Broadcast to everyone
  SampleApp_Periodic_DstAddr.addrMode = (afAddrMode_t)AddrBroadcast;
  SampleApp_Periodic_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
  SampleApp_Periodic_DstAddr.addr.shortAddr = 0xFFFF;
 
  // Setup for the flash command's destination address - Group 1
  SampleApp_Flash_DstAddr.addrMode = (afAddrMode_t)afAddrGroup;
  SampleApp_Flash_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
  SampleApp_Flash_DstAddr.addr.shortAddr = SAMPLEAPP_FLASH_GROUP;
 
  // Fill out the endpoint description.
  SampleApp_epDesc.endPoint = SAMPLEAPP_ENDPOINT;
  SampleApp_epDesc.task_id = &SampleApp_TaskID;
  SampleApp_epDesc.simpleDesc
            = (SimpleDescriptionFormat_t *)&SampleApp_SimpleDesc;
  SampleApp_epDesc.latencyReq = noLatencyReqs;
 
  // Register the endpoint description with the AF
  afRegister( &SampleApp_epDesc );
 
  // Register for all key events - This app will handle all key events
  RegisterForKeys( SampleApp_TaskID );
 
  // By default, all devices start out in Group 1 
  SampleApp_Group.ID = 0x0001;
  osal_memcpy( SampleApp_Group.name, "Group 1", 7  );
  aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group );
 
#if defined ( LCD_SUPPORTED )
  HalLcdWriteString( "SampleApp", HAL_LCD_LINE_1 );
#endif
}
 
/*********************************************************************
 * @fn      SampleApp_ProcessEvent
 *
 * @brief   Generic Application Task event processor.  This function
 *          is called to process all events for the task.  Events
 *          include timers, messages and any other user defined events.
 *
 * @param   task_id  - The OSAL assigned task ID.
 * @param   events - events to process.  This is a bit map and can
 *                   contain more than one event.
 *
 * @return  none
 */
uint16 SampleApp_ProcessEvent( uint8 task_id, uint16 events )
{
  afIncomingMSGPacket_t *MSGpkt;
 
  if ( events & SYS_EVENT_MSG )
  {
    MSGpkt = (afIncomingMSGPacket_t *)osal_msg_receive( SampleApp_TaskID );
    while ( MSGpkt )
    {
      switch ( MSGpkt->hdr.event )
      {
        // Received when a key is pressed
        case KEY_CHANGE:
          SampleApp_HandleKeys( ((keyChange_t *)MSGpkt)->state, ((keyChange_t *)MSGpkt)->keys );
          break;
 
        // Received when a messages is received (OTA) for this endpoint
        case AF_INCOMING_MSG_CMD:
          SampleApp_MessageMSGCB( MSGpkt );
          break;
 
        // Received whenever the device changes state in the network
        case ZDO_STATE_CHANGE:
          SampleApp_NwkState = (devStates_t)(MSGpkt->hdr.status);
          if ( (SampleApp_NwkState == DEV_ZB_COORD)
              || (SampleApp_NwkState == DEV_ROUTER)
              || (SampleApp_NwkState == DEV_END_DEVICE) )
          {
            // Start sending the periodic message in a regular interval.
            osal_start_timerEx( SampleApp_TaskID,
                              SAMPLEAPP_SEND_PERIODIC_MSG_EVT,
                              SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT );
          }
          else
          {
            // Device is no longer in the network
          }
          break;
 
        default:
          break;
      }
 
      // Release the memory
      osal_msg_deallocate( (uint8 *)MSGpkt );
 
      // Next - if one is available
      MSGpkt = (afIncomingMSGPacket_t *)osal_msg_receive( SampleApp_TaskID );
    }
 
    // return unprocessed events
    return (events ^ SYS_EVENT_MSG);
  }
 
  // Send a message out - This event is generated by a timer
  //  (setup in SampleApp_Init()).
  if ( events & SAMPLEAPP_SEND_PERIODIC_MSG_EVT )
  {
    // Send the periodic message
    SampleApp_SendPeriodicMessage();
 
    // Setup to send message again in normal period (+ a little jitter)
    osal_start_timerEx( SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT,
        (SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT + (osal_rand() & 0x00FF)) );
 
    // return unprocessed events
    return (events ^ SAMPLEAPP_SEND_PERIODIC_MSG_EVT);
  }
 
  // Discard unknown events
  return 0;
}
 
/*********************************************************************
 * Event Generation Functions
 */
/*********************************************************************
 * @fn      SampleApp_HandleKeys
 *
 * @brief   Handles all key events for this device.
 *
 * @param   shift - true if in shift/alt.
 * @param   keys - bit field for key events. Valid entries:
 *                 HAL_KEY_SW_2
 *                 HAL_KEY_SW_1
 *
 * @return  none
 */
void SampleApp_HandleKeys( uint8 shift, uint8 keys )
{
  if ( keys & HAL_KEY_SW_1 )
  {
    /* This key sends the Flash Command is sent to Group 1.
     * This device will not receive the Flash Command from this
     * device (even if it belongs to group 1).
     */
    SampleApp_SendFlashMessage( SAMPLEAPP_FLASH_DURATION );
  }
 
  if ( keys & HAL_KEY_SW_2 )
  {
    /* The Flashr Command is sent to Group 1.
     * This key toggles this device in and out of group 1.
     * If this device doesn't belong to group 1, this application
     * will not receive the Flash command sent to group 1.
     */
    aps_Group_t *grp;
    grp = aps_FindGroup( SAMPLEAPP_ENDPOINT, SAMPLEAPP_FLASH_GROUP );
    if ( grp )
    {
      // Remove from the group
      aps_RemoveGroup( SAMPLEAPP_ENDPOINT, SAMPLEAPP_FLASH_GROUP );
    }
    else
    {
      // Add to the flash group
      aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group );
    }
  }
}
 
/*********************************************************************
 * LOCAL FUNCTIONS
 */
 
/*********************************************************************
 * @fn      SampleApp_MessageMSGCB
 *
 * @brief   Data message processor callback.  This function processes
 *          any incoming data - probably from other devices.  So, based
 *          on cluster ID, perform the intended action.
 *
 * @param   none
 *
 * @return  none
 */
void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )
{
  uint16 flashTime;
 
  switch ( pkt->clusterId )
  {
    case SAMPLEAPP_PERIODIC_CLUSTERID:
      break;
     
    case SAMPLEAPP_FLASH_CLUSTERID:
      flashTime = BUILD_UINT16(pkt->cmd.Data[1], pkt->cmd.Data[2] );
      HalLedBlink( HAL_LED_4, 4, 50, (flashTime / 4) );
      break; 
  }
}
 
/*********************************************************************
 * @fn      SampleApp_SendPeriodicMessage
 *
 * @brief   Send the periodic message.
 *
 * @param   none
 *
 * @return  none
 */
void SampleApp_SendPeriodicMessage( void )
{
  if ( AF_DataRequest( &SampleApp_Periodic_DstAddr, &SampleApp_epDesc,
                       SAMPLEAPP_PERIODIC_CLUSTERID,
                       1,
                       (uint8*)&SampleAppPeriodicCounter,
                       &SampleApp_TransID,
                       AF_DISCV_ROUTE,
                       AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
  {
  }
  else
  {
    // Error occurred in request to send.
  }
}
 
/*********************************************************************
 * @fn      SampleApp_SendFlashMessage
 *
 * @brief   Send the flash message to group 1.
 *
 * @param   flashTime - in milliseconds
 *
 * @return  none
 */
void SampleApp_SendFlashMessage( uint16 flashTime )
{
  uint8 buffer[3];
  buffer[0] = (uint8)(SampleAppFlashCounter++);
  buffer[1] = LO_UINT16( flashTime );
  buffer[2] = HI_UINT16( flashTime );
 
  if ( AF_DataRequest( &SampleApp_Flash_DstAddr, &SampleApp_epDesc,
                       SAMPLEAPP_FLASH_CLUSTERID,
                       3,
                       buffer,
                       &SampleApp_TransID,
                       AF_DISCV_ROUTE,
                       AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
  {
  }
  else
  {
    // Error occurred in request to send.
  }
}

上一篇:淺談網站設計與制作的應用 下一篇:嬰兒接種卡介苗后的不良反應及護理措施

相關推薦

收縮
  • 身邊的論文專家
cp9传奇电子 2015年上证指数最高点 7a私募股票推荐 海王星炒股软件下载 今天a股大盘上证指数 短线股票推荐网 股票涨跌幅计算软件 如何开通股票融资费用 海通证券股票行情 大智慧股票软件 3月15日股票推荐