高壓開關柜溫度在線監測系統_第1頁
高壓開關柜溫度在線監測系統_第2頁
高壓開關柜溫度在線監測系統_第3頁
高壓開關柜溫度在線監測系統_第4頁
高壓開關柜溫度在線監測系統_第5頁
已閱讀5頁,還剩45頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

高壓開關柜溫度在線監測系統

摘要開關柜是保證電力系統安全運行的重要設備之一,但是經常因為開關柜局部過熱,而引起事故,造成損失。在以往的開關柜過熱故障檢測中,采用人工巡檢,不僅費時、費力,而且不易及時發現事故。開關柜過熱故障在線監測系統不僅克服了開關柜內高溫、高壓、強磁場環境下溫度不易監測的難題,而且通過監控軟件實時顯示開關柜內測點的當前溫度值,并做出報警處理,節省了大量人力、物力,提高了事故預判的準確性、實時性。本文從硬件和軟件兩個方面介紹了監測系統的設計過程。硬件方面設計了兩種不同的溫度傳感系統:中壓開關柜過熱故障監測采用光纖式溫度傳感器,同時采用光纖傳輸數據;低壓開關柜采用單總線數字式溫度傳感器,數據采用無線傳輸。監測系統軟件主要實現了實時顯示測點溫度,并對溫度數據做出分析、報警、保存等功能。及時提醒工作人員對報警情況做出處理,避免事故的發生。關鍵詞:開關柜在線監測溫度傳感器實時監控軟件MFCADOAbstractAsthemostimportantequipment,Metal-cladswitchgearguaranteethesafeoperationofelectricpowersystem.Sometimes,thetemperatureofpartofMetal-cladswitchgearmaybeoverthelimitofsafeoperation,andthenarouseaccident,bringlosing.Inpast,workerscheckuptheMetal-cladswitchgearonschedule,whichtakestimeandhardsledding,cannotworkefficiencyandbetimes.On-linereal-timemonitoringfortemperatureovercomethedifficultiesofhightemperature,highvoltageandhighmagneticfield, tobeanewmethodofcheckinguptheMetal-cladswitchgear.Itcanshowthetemperatureofthespotofbeingmonitored,judgethetemperatureandgiveanalarm.Thesystemsaveslotsofresourceandimprovestheveracity.Thepaperpresentsthedetailabouttheprocedureofthedesignforthesystemfrombothhardwareandsoftwareaspects.Therearetwodefferentdesignofhardware:opticalfibertemperaturesensorisusedformiddle-voltageMetal-cladswitchgear,whichdataistransferredbyopticalfiber;anotheroneis1-WireDigitalThermometer,itisusedforlower-voltageMetal-cladswitchgear,andthedataistransferredbyunwired.ThesoftwareofOn-linereal-timemonitoringfortemperaturecanshowthetemperaturereal-time,analysethedata,gaveanalarm,savethedata,andsoon.Thesystemcanawoketheworkersaboutthealarmintime,avoidingtheaccident.Theresultoftheaxperimentindicatesthenewsystemworkswell,ithasaccomplishedthedesignaimsofanticipating,providingagoodguaranteeofthesafeoperationofMetal-cladswitchgearKeywords:Metal-cladswitchgear.Keywords:monitoringsoftwareon-linemonitoringMFCADO目錄錯誤!未指定書簽昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。錯誤!未指定書簽昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。課題背景和意義 開關柜溫用監測技術的研究 系統監測軟件的設計需求 課題主要任務

2開關柜在線監測系統的總體設計 監測系統硬件結構 監測系統軟件功能設計 3監測系統的硬件設計 光纖式溫度監測系統設計 光纖式溫度傳感器 光纖溫度在線監測儀 Nsmart接口通信協議 單總線數字式溫度傳感器電心計 單總線數字式溫度計 溫度監測模塊的其他外圍元件 單總線溫度監測系統設計 兩種溫度監測硬件設計比較總結 4監測系統軟件設計 軟件開發平臺介紹 軟件總體設計 多線程的編程模式 線程間的通信 多線程編程設計要點 軟件功能模塊設計 溫度報警功能的實現 通信模塊編程 本章小結 5監測系統的運行及調試 5.1監測系統軟件的功能調試 6總結 參考文獻 翻譯部分 英文原文 錯誤!未指定書簽昔誤!未指定書簽。昔誤!未指定書簽。錯誤!未指定書簽昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。錯誤!未指定書簽錯誤!未指定書簽昔誤!未指定書簽。昔誤!未指定書簽。錯誤!未指定書簽昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。錯誤!未指定書簽昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。昔誤!未指定書簽。錯誤!未指定書簽-j曰/XIHAv.o錯誤!未指定書簽錯誤!未指定書簽錯誤!未指定書簽1緒論課題背景和意義“高低壓開關柜過熱故障在線監測系統”是為減輕人工巡檢的負擔,實現開光柜溫度實時監測、提前報警而合作開發的實時溫度監測系統。發電廠、變電站的中低壓開關柜是保證電力系統安全運行的重要設備之一。但在運行過程中,經常因為發熱引起設備燒毀或突然停電等事故,導致大量的經濟損失。現代電力系統對電能質量的要求越來越高,相應地對開關柜運行的可靠性也提出了更高的要求。同時,隨著傳感器技術、信號處理技術、計算機技術、人工智能技術的發展,使得對開關柜的運行狀態進行在線監測,及時發現故障隱患并對累計性故障做出預測成為可能。它對于保證開關柜的正常運行,減少維修次數,提高電力系統的運行可靠和自動化程度具有重要意義。在設備長期運行過程中,開關柜中的觸點和母線排連接處等部位因老化或接觸電阻過大而發熱,或母線與觸點在載流過大時經常出現溫升過高,使相鄰的絕緣部件性能劣化,而這些發熱部位的溫度無法監測,由此最終導致擊穿甚至火災而造成事故。電氣設備的外部熱故障主要指裸露接頭由于壓接不良等原因,在大電流作用下,接頭溫度升高,接觸電阻增大,惡性循環造成隱患,此類故障占外部熱故障的 90%以上。統計近幾年來檢測到的外部熱故障的幾千個數據,可以看到線夾和刀閘觸頭的熱故障占整個外部熱故障的 77%。電氣設備內部熱故障的特點是故障點密封在絕緣材料或金屬外殼中,如電纜。內部熱故障一般都發熱時間長而且較穩定,與故障點周圍導體或絕緣材料發生熱量傳遞,使局部溫度升高,因此可以通過檢測其周圍材料的溫升來診斷電氣設備的內部故障。根據電力事故分析,電氣設備過熱故障可引起火災導致大面積設備燒損,造成被迫停電,短時間內無法恢復生產,造成重大經濟損失。近年來,在發電廠和變電站已經發生多起開關柜過熱事故,造成火災和大面積的停電事故,解決開關柜局部過熱問題是杜絕此類事故發生的關鍵。因此,必須采取有效措施監控開關柜內母線與觸點等的溫度。為了提高供電可靠性,減少停電時間和次數,保證用戶長期、穩定、安全的用電,有必要設計能實時監測并記錄電力設備關鍵點的溫度變化的監測系統,預測可能引起火災或設備故障的局部過熱情況,為現場設備的安全運行提供可靠保證。同時又可以作為電氣設備故障的溫度記錄器,能在設備故障發生之前發出報警及檢修建議,讓管理人員及時發現故障前兆,提前采取防患措施,變“定期檢查”為“按狀態檢修”減少大量的人力物力。通過監測開關柜內觸點溫度的運行情況,可有效防止開關柜的火災發生,由于開關柜內高壓狹小的結構,很難進行人工巡查測溫,因此實現溫度在線監測是保證變電站開關柜安全運行的重要手段。開關柜溫度監測技術的研究由于開關柜觸頭及母線處于高電壓、高溫度、強磁場以及極強的電磁干擾環境中,要實現對它們的測溫,必須解決電子測量裝置在上述惡劣環境條件下的適應性,解決溫度傳感器的電位隔離、抗電磁干擾、小尺寸和便于安裝等問題。目前常用的溫度監測方法有下列幾種:1.熱敏電阻式測溫系統:熱敏電阻具有體積小、溫度響應快、產品成熟、成本低等優點,可以顯示溫度值,但由于每個熱敏電阻都需要獨立的接線、布線復雜且熱敏電阻易損壞、維護量大,傳感器不具備自檢功能,需要經常校驗,因此不常采用。2.紅外探頭測溫系統 :紅外測溫有著響應時間快、非接觸、使用安全及使用壽命長等優點。紅外測溫儀器主要有 3種類型:紅外熱像儀、紅外熱電視、紅外測溫儀(點溫儀)。非接觸紅外測溫儀包括:便攜式、在線式和掃描式三大系列,可以在線監測。但由于系統穩定性不高,體積較大,受安裝空間限制,外加受環境影響嚴重,誤報較多,也不常采用。3.示溫蠟片 /試溫蠟片溫:采用“示溫蠟片/試溫蠟片”存在一些問題,一是在粘貼時普遍采用清漆將“示溫蠟片/試溫蠟片”粘貼在電氣設備需要測試的部位,這樣粘貼牢固后,待測點溫度達到“示溫蠟片/試溫蠟片”相同溫度時,不能脫落下來,只有溫度超過很大程度才會脫落下來,這樣很容易給操作人員造成誤導,判斷不及時。二是 :“示溫蠟片/試溫蠟片”只能靠熔化現象表示發生了過熱,現象不直觀也不易發現。三是 :電氣設備的負荷是隨用戶需求量變化的,接點溫度也是隨之變化的,當被監視的電氣設備接點發生了不同程度的過熱,使用“示溫蠟片/試溫蠟片”不能隨之不同程度熔化或脫落下來。4.使用示溫記錄標簽 :“示溫記錄標簽”是以膠粘貼固定的,只要在測溫范圍內發生了過熱,就可以繼續保留在貼片接點部位。“示溫記錄標簽”表面涂一層隨溫度變化而改變顏色的發光材料,通過觀察其顏色變化來大致確定溫度范圍,這種方法準確度低、可讀性差,不能進行定量測量,因此也不能滿足現在系統監測的需要。其它還有:采用雙CC齒色CCDRNICCD成像技術,基于比色測溫原理,研制生產可以實現大范圍目標溫度全面實時測量的高溫測量電視系統。提高了測溫的靈敏度、線性度、檢測速度,而且大大地減少了檢測過程對目標物體發射率的依賴性,做到了不受檢測距離的影響,成功地解決了溫度場動態實時檢測的技術難題。但是這種方法成本太高,并不利于大面積推廣。或者采用新興ZigBee組網技術,研制、生產的ZBT1.0型無線測溫系統,實現對電力系統的高壓和超高壓母線、高壓開關接點(以2及人員無法接近的其他危險、惡劣環境 )的溫度進行實時在線檢測,經過與電力自動化系統連接,在中心監控室內就可以監視運行狀態,真正做到了遠距離遙測,當被測點溫度超過預先設定的閥值時,就發出報警信號及時提醒有關人員采取措施。國內ZigBee無線傳輸系統仍然處于實驗階段,技術并不成熟,而且對于單片機、無線發射模塊在高溫、高壓、高磁場的環境下的穩定運行并不能保證。根據以上分析,電力系統中需要一種高性能、穩定、低成本、安裝方便、不需外供電源的開關柜溫度監測設備,并組成相應監測系統。為實現上述溫度在線監測的功能,現有兩種不同的溫度傳感系統滿足需求。一種是分布式光纖溫度傳感系統。分布式光纖溫度傳感系統原理是同時利用光纖作為溫度傳感敏感元件和傳輸信號介質,采用先進的 OTDRK術,探測出沿著光纖不同位置的溫度和應變的變化,實現真正分布式的測量。溫度測量原理是基于Ramar?射效應的分布式溫度傳感系統,光纖光柵溫度在線監測系統采用布置在各個觸點的光柵傳感器將溫度信號通過光纖傳至網絡分析儀。由于利用了光纖光柵固有的絕緣性和抗電磁場干擾性能,并具有極高的可靠性和安全性,因此從根本上解決了開關柜內母線及觸點運行溫度及柜內環境溫度不易監測的難題。對于在線監測包括母線連接處的溫度及斷路器等觸頭溫度的另一種溫度傳感器,常用的還有單總線數字溫度傳感器、石英傳感器、光微薄硅溫度傳感器和吸收型光纖溫度傳感器,它們分別以石英晶體、硅片及玻璃構成的Fabryperot槽和GaAs晶體作為感溫元件,并對數據無線傳輸,這就有效地解決了電磁干擾問題。系統監測軟件的設計需求變電站中低壓開關柜過熱故障在線監測系統是基于分布式溫度測量、數據采集與傳輸、顯示及報警等部分組成的計算機實時溫度監測系統。此系統采用分布式、可組網、隔離性能良好的高精度溫度傳感器,對變電站中低壓開關柜內的母線、斷路器與隔離開關觸點、互感器 (包括電纜接頭)等這些易產生異常溫升的部件實現在線溫度測量與監控。利用溫度采集單元采集多路溫度信號并通過RS232或RS485總線上傳到監控主機,主機采用巡檢式(查詢式)工作方法,逐一巡檢每個測量點的溫度,并可統計、打印、報警,設定工作溫度范圍,顯示每個開關柜內測量點的溫度及歷史數據。系統軟件需要實現多種報警方式,當發生報警時,主監控計算機能自動彈出報警窗口,顯示出報警時間、報警測點名稱和安裝部位,同時發出聲、光報警并可以打印報警記錄,提醒運行人員檢查。所有的報警信息都被記錄數據庫中,以備查閱。系統能提供完善的分析功能,包括超溫分析、溫升趨勢分析、相間溫差分析,并能做出報警、對比、歷史記錄統計與分析等處理,保障工作人員在開關柜發生事故之前做出及時處理。測控軟件可以建立開關柜設備數據庫,幫助工作人員監測和分析開關柜內母線與觸點的過熱情況,預測出故障發生的部位,保證開關柜設備的安全運行。監測結果可通過本地數據庫進行存儲,監測結果和統計報表可通過屏幕和打印機與網絡等多種方式進行輸出。課題主要任務根據項目的要求,開關柜溫度監測系統的設計主要有以下幾個方面:溫度測量、信號隔離與傳輸對于中高壓開關柜的過熱故障監測采用光纖式溫度傳感器,用光纖進行高壓隔離和信號傳輸。利用光纖固有的絕緣性和抗電磁場干擾性能,從根本上解決了開關柜內母線與觸點溫度不易監測的難題。對于低壓開關柜的過熱故障監測采用單總線數字式溫度傳感器,數據傳輸采用無線傳輸方式,以實現高、低壓側的電隔離。溫度的數據采集光纖式溫度傳感器將母線與觸點的溫度值轉換為模擬量,通過數據采集變換器轉化為數字信號,通過通訊總線,上傳到控制計算機,實現溫度在線監側。系統采用完全的總線測量方式,使系統的擴展和與其它網絡互連變得很方便。單總線數字式溫度傳感器直接測量母線與觸點的溫度,通過無線傳輸到數據采集器,然后傳送到監控中心。多只數字式溫度傳感器可直接連接到一條總線電纜上,在擴展測點時不受布線的限制。軟件設計系統軟件有在線監測和實時分析兩個主要功能。軟件具有在線采集、監測、分析現場溫度的功能,實時分析則包括超溫分析、溫升趨勢分析、相間溫差分析等,并能做出報警、對比等處理,保障工作人員在母線或觸點發生事故之前做出處理。軟件還具有歷史記錄分析、查看等功能,實現對相應測點歷史運行狀態的查看,評估。本課題在完成以上研究的同時,要實現完整的系統調試。2開關柜在線監測系統的總體設計本設計方案中,變電站中低壓開關柜溫度監測系統以微型計算機作為監測核心,結合高精度的溫度傳感器、數據采集變換器及可靠的通訊技術,構成功能強大、操作簡便、工作安全可靠的在線溫度監測系統。在系統設計中,充分考慮系統的可操作性、可靠性等,使系統能夠應用于實踐并加以推廣。監測系統硬件結構整個監測系統的硬件由溫度傳感器、信號傳輸線纜 (光纖或者無線通信)、數據采集變換器、RS-485總線、RS-485/RS232轉換器以及監測中心構成,系統總體連接示意圖如2-1所示:圖2-1系統總體連接示意圖其中,系統設計要求每個開關柜有 6個溫度監測點,即每個溫度采集模塊連接6個溫度傳感器。系統采用兩種不同的溫度監測方式,分別利用不同的數據傳輸方式,并需要設計相對應的溫度采集模塊。在高溫、高壓以及強磁場的環境下,必須保證監測系統的正常工作,測溫和信號傳輸的準確性。各硬件模塊的選擇和功能如下:溫度傳感器:溫度傳感器是組成整個監測網絡底層的工作單位,保證傳感器長期、穩定的工作是系統運行的保證?;诰C合考慮,對于中高壓開關柜的過熱故障監測采用光纖式溫度傳感器,并采用光纖傳輸數據。對低壓開關柜的過熱故障監測采用單總線數字式溫度傳感器 DS1820監測數據采用無線傳輸。在監測系統中,傳感器通常緊貼需要監測的母線排、開關觸點等安裝。要求傳感器測溫精度不小于 100。溫度采集模塊每個開關柜設置一個溫度采集模塊,實現該開關柜內溫度監測數據的采集,并將數據傳送到監測中心。對于兩種不同的溫度傳感器,需要設計不同的溫度采集模塊光纖式數據采集器采用Nsmart光纖式溫度監測儀接收光纖信號,完成溫度數據的轉化。單總線數字式溫度傳感器 DS1820通過無線傳輸數據,需要無線接收模塊實現數據的接收與轉發。溫度采集模塊可安裝在開關柜面板,并需要外部提供24V直流電源供電。RS-485總線在溫度采集模塊和監測中心之間采用 RS-485電纜進行通訊連接,以保證信號可靠的傳輸,RS-485通信在1200m內可以保證可靠的通信質量,因此監測計算機與最遠的開關柜間距離應小于 1200m監測計算機一般采用工控機,而工控機只帶有RS-232接口,故RS-485總線末端需要用RS-485/RS-232轉換器進行信號轉化,方便系統軟件的數據采集。監測中心監測中心是由工業控制計算機構成(含不間斷電源UPS),保證對系統進行實時監測。監控中心通過系統軟件對接收到的溫度信號進行適當的處理,完成顯示、報警等功能。監測系統軟件功能設計軟件開發使用MicrosoftVisualC++6.0的基礎類庫MFC,MFC乍為大型的工程編程語言,已經大量的應用于實踐當中。它提供了大量預先編寫好的類及支持代碼,大大減少了工程開發的時間,提高了工作效率。系統軟件由在線監測和實時分析兩個主要部分組成。軟件具有在線采集、監測、分析現場溫度的功能,這些分析包括超溫分析、溫升趨勢分析和相間溫差分析,并能做出報警、預報警 (包括溫升預報警,三相相間溫差預報警等)、報警日志記錄等處理??梢栽跀祿熘斜A魵v史數據,作查看與分析使用。系統功能模塊可大致分為開關柜自檢模塊、溫度管理模塊、數據顯示與分析統計模塊、溫度報警模塊、日志記錄和系統安全模塊等組成。各模塊功能如下:自檢模塊為了使監測系統能夠可靠的工作,系統在第一次上電時對溫度采集模塊、傳感器等硬件設備進行自檢。同時在系統工作中,也可以通過比較采集到的數據,提示可能發生的故障:如采集器通信故障、光纖故障 (含溫度傳感器故障)等。自檢模塊通過在系統運行過程中的自檢,方便設備的檢查、維修工作,同時保證設備正常有效的工作。溫度管理模塊溫度管理模塊主要實現對溫度報警限值的設置。系統需要根據報警限值來對數據進行分析和報警。根據開關柜溫度監測的實際需求,溫度報警限值主要有三種:溫度上限報警值,溫升趨勢報警值和相間溫差報警值。溫度報警限值的設置需要用戶根據現場的實際情況,并且溫度報警限值的設置和修改需要具有管理員操作權限。數據顯示與分析統計模塊該模塊可對采集到的數據進行實時顯示與分析,各測點溫度的實時顯示可以用數碼管顯示框或溫度實時變化曲線來反映,同時也可以實時顯示溫升曲線;相間溫差也可用數碼管顯示框或溫差實時變化曲線圖來反映。此外該模塊可通過讀取保存在數據庫中的歷史數據,對所有測點溫度的數據和變化情況進行分析和統計。如可查看測點溫度的日平均值、最高值、最低值及對應的檢測時間;可查看各測溫點的溫度歷史曲線,溫升歷史曲線,相間溫差歷史曲線。溫度報警模塊系統通過對實時數據與報警限值的比較來做出報警判斷。系統報警時,對應數據顯示與報警狀態指示燈都會變成橙色,同時激活聲音報警系統,提示操作人員檢修。操作人員可以通過點擊實時溫度監測按鈕來查看報警傳感器,并可以通過點擊報警傳感器彈出報警對話框,查看報警測點的準確位置、測點名稱以及這次報警的詳細時間。報警對話框還可以顯示最近一個小時內的溫度變化曲線圖。由于系統能指示出故障發生的準確部位,因此能有效指導檢修工作。報警信息可被長期記錄。日志記錄模塊考慮到安全操作的需要,在系統開機后,所有與監測系統有關的操作都將被記錄,如什么時候開始登錄監測系統,何時執行了何種操作等。如果出現問題,操作人員就可以查看歷史日志,完成修復工作。系統安全模塊考慮到系統運行的安全問題,系統對操作做了分級控制,普通操作員一般只能進行常規操作 (如讀取數據并查看 ),而對報警的上下限、一些重要的參數等設置只能由系統管理員完成。上述對系統軟、硬件的大體設計。它的功能設計基本上滿足開關柜系統監測的需要,避免了開關柜內惡劣環境對溫度監測和數據傳輸的影響。系統監測軟件能夠很好的完成報警,分析,設置等功能,使工作人員不必再對開關柜執行巡檢,大大減少了工作量,提高溫度監測的自動化程度。3監測系統的硬件設計3.1光纖式溫度監測系統設計光信號,將其解碼為標準的攝氏溫度數值。圖3-1顯示了光纖測溫儀的結構組成:在開關柜溫度實時監測系統中,傳感器是底層的硬件設備。開關柜內部是高電壓、高溫度、以及強磁場的環境,在這種環境下實現對開關觸頭以及母線等的溫度測量,必須解決電子測量裝置在上述環境條件下的工作可靠性,解決溫度傳感器的電位隔離、抗電磁干擾、小尺寸和便于安裝等問題。光纖式溫度在線監測儀采用光纖進行高壓隔離和信號傳輸,利用光纖固有的絕緣性和抗電磁場千擾性能,從根本上解決了高壓開關柜內觸點溫度不易監測的難題。Nsmart光纖式溫度監測儀是北京安伏電子技術有限公司開發的,用于監測高溫,高壓設備的光纖溫度監測系統。采用先進的光纖和光電子技術,在溫度測點和測溫儀表之間使用光導纖維進行高壓隔離和信號傳輸,因此具有極強的抗干擾性能。溫度監測儀接受來自光纖傳感器的圖3-1Nsmart光纖測溫儀的結構組成Nsmart光纖式溫度監測儀單個單元裝置包括溫度傳感器、傳輸光纖、監測儀主機三個部分。測量電路轉換測溫點采集的溫度量為相應的電信號,經邏輯控制電路產生數字信號并傳給光調制器調制后由光纖傳給監測儀主機,由LCD屏顯示各測點溫度。監測儀主機可以將溫度數據通過 RS-485通訊總線傳到監控中心作進一步處理,實現開關柜溫度的集中監測、處理。3.1.1光纖式溫度傳感器1)光纖光柵溫度傳感器原理光纖光柵就是一段光纖。光纖光柵是利用光纖中的光敏性制成的。所謂光纖中的光敏性是指激光通過摻雜光纖時,光纖的折射率將隨光強的空間分布發生相應變化的特性。而在纖芯內形成的空間相位光柵,其作用的實質就是在纖芯內形成一個窄帶的(透射或反射 )濾波器或反射鏡。利用這一特性可制造出許多性能獨特的光纖器件。這些器件具有反射帶寬范圍大、附加損耗小、體積小,易與光纖禍合,可與其它光器件兼容成一體,不受環境塵埃影響等一系列優異性能。光纖光柵的種類很多,主要分兩大類:一是Bragg光柵(也稱為反射或短周期光柵);二是透射光柵(也稱為長周期光柵)。光纖光柵從結構上可分為周期性結構和非周期性結構,從功能上還可分為濾波型光柵和色散補償型光柵,色散補償型光柵是非周期光柵。光纖沿徑向從里向外分為纖芯、包層、涂覆層三部分,用特殊的紫外光照射工藝,光纖纖芯折射率受到永久的周期性微擾而形成一種光纖無源器件。它能將入射光中某一特定波長的光部分或全部反射。滿足布拉格條件的波長被光纖光柵反射,相關公式如下:b2n其中b是被反射的波長是光纖光柵的有效折射率為光柵周期通過拉伸和壓縮光纖光柵,或者改變溫度,可以改變光纖光柵的周期和有效折射率,從而達到改變光纖光柵的反射波長的目的。反射波長和應變、溫度、壓力物理量。溫度變化量根據這些特性,可將光纖光柵制作成應變、溫度、壓力、加速度等多種傳感器。光纖光柵傳感系統主要由光纖光柵解調系統、信號傳輸系統和傳感器三個主要部分組成。對光芯進行照射,使得光纖纖芯的一段區域折射率發生周期性變化,從而制成光纖光柵。光纖光柵傳感器獲取物理變化量。以光波長為載體,通過光纖傳輸系統傳至解調系統,由解調系繞對光信號進行處理分析,獲取物理變化量數據。2)Optic-3000光纖式溫度傳感器光纖式溫度傳感器用于測量帶電物體表面的溫度,如高壓開關柜內的裸露觸點和母線連接處的運行溫度。Optic-3000光纖式溫度傳感器,如圖3-2所示,探頭體積小巧,耐壓高,工作范圍大,不受磁場干擾,可以直接安裝在開關柜測溫點測量溫度。它由測溫點、光纖調制器和光纖接口(ST接口)3部分組成。測溫點采用感溫石英晶體材料,直徑通常4mm測溫點與光纖調制器封裝成一體化結構,由后者的一個側面檢測溫度,其工作電源為一節3.6V鋰電池,應用時間達到兩年以上,能夠滿足開關柜監測需要,可結合設備檢修適時更換。圖3-2Optic-3000型光纖溫度傳感器Optic-3000光纖式溫度傳感器利用光纖作為傳感敏感元件和傳輸信號介質,有效地解決了在高電壓,高溫度,強磁場的環境中,溫度難以監測得難題。Optic-3000光纖式溫度傳感器的主要性能指標為:測溫范圍:-55C~+100C測量誤差:小于0.5C(全量程范圍)測溫分辨率:士0.1C光纖長度:小于50m接口方式:標準ST接口外觀尺寸:6.0(長)cm*3.2(寬)cm*2.2(高)cm該光纖式溫度傳感器有一個測面是感溫面,傳感器測得的溫度就是該感溫面的溫度,若傳感器放置在空氣中,則測到的就是環境溫度。為了準確測量物體表面的溫度,應保證傳感器的感溫面與被測物體的表面緊密接觸。安裝光纖傳感器之前,首先要找到傳感器的測溫面,每一個Optic-3000光纖式溫度傳感器的光纖接口都有一個定位缺口, 和定位缺口相反的一面就是傳感器的感溫面。傳感器的傳感頭與光纖設計為可拆卸的結構,即通過標準ST光纖接口與多模光纖連接。Nsmart光纖式在線溫度監測儀組成溫度監測系統網絡的節點, 實現對傳感器溫度數據的采集,并通過RS-485總線將數據傳送到監控中心。檢測儀安裝可以直接嵌入到開關柜的前柜門上,也可以放置在其他易于觀察的地方。在方便安裝的同時,可以現場觀察溫度數據。它的系統指標如下:光纖通道:6ch(支持1到6個光纖式溫度傳感器 );光纖接口 :標準ST光纖接口 ;光纖類型 :多模光纖;巡檢周期:小于60s/6光纖通道(典型值:45s);溫度顯示:LCD液晶顯示器,帶背光;報警輸出:1個(無源接點 )250Vac,0.6A或24Vdc,5A;網絡接口:隔離RS485工業總線接口;TOC\o"1-5"\h\z工作電壓:直流10-30V或交流220V(外接電源適配器 );工作溫度 :-10 ℃— +80℃;存儲溫度 :-40 ℃— +85℃;安裝方式 :掛裝或嵌入式盤裝。主要功能為:溫度顯示功能監測儀具有 6個ST光纖接口,能夠同時支持 6個光纖溫度傳感器,實現最多6通道的溫度測量。帶背光的LCD顯示屏能夠同時顯示6個通道的溫度數值,并具有溫度報警和溫度測點故障指示等功能。運行狀態指示當Nsmart光纖溫度監測儀運行時,可以通過儀表的LCD顯示屏了解當前的運行情況。在儀表LCD顯示屏上,有一個運行狀態指示(run),該指示在顯示屏的右上角。運行狀態指示是一個可以旋轉的狀態棒,每測到一個通道的溫度值時,該狀態棒即旋轉 450。報警功能Nsmart光纖溫度監測儀具有多種報警功能,每個光纖測溫通道都可以設置獨立的定溫報警值和溫升報警值,報警值可以通過 RS-485通訊接口下載。當發生超溫報警時,報警狀態在 LCD液晶屏上指示,一個繼電器型的報警輸出,可以控制外部設備動作或用于報警指示。RS-485網絡接口Nsmart光纖溫度監測儀具有一個RS-485接口,該接口用于與上位計算機的通信,接口可以支持 64個Nsmart光纖溫度監測儀聯網運行,使用網絡驅動器可以增加聯網的光纖溫度測量儀的數量,整個網絡最多可連接 254臺光纖溫度測量儀。光纖溫度監測儀采用可插拔接線端子,方便儀表的電氣連接。這是一個8位端子,可以帶電插拔,它包括電源供電、通訊接口和報警輸出,其功能定義如表3-1所示:

表3-1Nsmart光纖式溫度監測儀接線端子功能定義名稱功能說明1NCstate報警輸出的無源接點,常閉接點2Com.報警輸出的公共端子3Nostate報警輸出的無源接點,常開接點4Noused未使用5Rs485(一)Rs485訊訊接口正端子()6RS485(+)Rs485通訊接口正端子(+)7Power(—)直流供電電源正端子()8Power(+)直流供電電源正端子(+)3.1.2Nsmart接口通信協議Nsmart光纖溫度在線監測儀作為光纖溫度傳感器的接入設備,通過RS-485網絡接口與上位機進行數據傳輸。Nsmart在線監測儀設備的RS-485通信接口采用標準異步串行通信方式,格式由1個起始位,8個數據位和1個停止位組成,無校驗位。位格式如圖3-3所示。每個Nsmart設備都具有一個唯一的設備地址號,這個設備地址號用于nsmart可用地址nsmart可用地址主機與設備通訊時使用,它可以由用戶自己設定。每個設備地址由一個字節組成,這表明設備地址的整個分布空間為 256個地址可供使用,但對于Nsmart又有不同的限制,其設備地址分配表如圖 3-4圖3-4Nsmart設備地址空間分布為使Nsmart設備能與主機通信,它們應該設定相同的通信速率,即波特率。這樣運行在主機上的軟件才能采集到 Nsmart設備中的溫度數據。Nsmart設備RS-485通訊接口的波特率可以由用戶設定,其波特率可以選擇為以下四種:1200bps,2400bps,4800bps,9600bpsoNsmart設備RS-485通訊接口初始波特率為2400bps。多臺Nsmart設備通過RS-485接口構成總線網絡,網絡采用主從通信方式,Nsmart設備作為網絡中的從設備工作,主設備(可以為上位機)發出命令幀,與其相匹配的Nsmart設備會響應該命令幀,并發出響應幀。響應幀是由網絡中的Nsmart設備響應主設備的命令幀的數據時, 用于傳輸Nsmart設備測量到的溫度數據。每個響應幀由41個字節構成,結構如下圖3-5所示。圖3-5命令幀結構Nsmart光纖式溫度監測儀已經通過中國電力科學研究院高壓所的測試實驗,能夠滿足高溫、高壓和強磁場環境下的溫度監測功能。實驗結果如表3-2所示:氣象條件b=100.2kPa,ta=25.5C,tw=210C電壓等級KV光纖長度mm規定電壓KV校正值KV試驗電壓KV耐受時問min實驗結果61002525251通過10125353535 11 1通過[352508586861通過665001401411411通過1108502002022021通過122020003603623621通過50045006806836831通過表3-2光纖式溫度在線監測儀工頻耐受電壓試驗結果3.2單總線數字式溫度傳感器電路設計對于低壓開關柜的過熱故障檢測我們采用單總線數字式溫度傳感器, 數據傳輸采用紅外線傳輸方式,以實現高、低壓側的電隔離。由 DALL隊司生產的DS1820溫度傳感器就是常用的一種單總線 1W/工RE數字溫度傳感器,可以廣泛用于工業、民用、軍事等領域的溫度測量及控制儀器、測控系統和大型設備中。DS1820溫度傳感器DS182激字溫度計提供9位溫度讀數,指示器件的溫度。信息經過單線接口送入DS1820或從DS1820送出,因此從中央處理器到DS1820I需連接一條線(地線也需要連接 )。讀寫和完成溫度變換所需的電源可以由數據線本身提供,而不需要外部電源。每一個 DS1820都有唯一的系列號(siliconserialnumber),因此多個DS1820可以存在于同一條單線總線上。這允許在許多不同的地方放置溫度靈敏器件。此特性的應用范圍包括 HVA斗境控制,建筑物、設備或機械內的溫度檢測,以及過程監視和控制中的溫度檢測。其主要特性有 :獨特的單總線接口方式:DS1820與總線連接時,只需1個接口引腳即可實現雙向通信 ;多點Multidrop能力使分布式溫度檢測應用得以簡化;在使用中不需要任何外部元件可以用正常供電,也可以使用IO寄生供電方式工作,電壓范圍:+3.0V—+5.5V.測量范圍從 -55℃至+125℃,增量值為0.5C,等效的華氏溫度范圍是-670F至2570F,增量值為0.90F;以9位數字的方式讀出溫度 ;在1秒(典型值)內把溫度變換為數字 ;用戶可以自設定EEPROM報警上下限值;告警搜索命令識別和尋址溫度超過報警上下限值之外的器件(溫度告警情況);支持多點組網功能,多個DS182cM以并聯在一起工作,實現多點測溫 ;負壓特性,電源極性接反時,溫度計不會因發熱而燒毀,但不能正常工作。DS182?度傳感器具有體積小,接口方便,傳輸距離遠等特點。DS1820有三個主要的數據部件 :1)64位激光ROM,2)溫度靈敏元件, 3)非易失性溫度告警觸發器TH和TL。器件從單線的通信取得其電源,在信號線為高電平的時間周期內,把能量貯存在內部的電容器中,在單信號線為低電平的時間期內斷開此電源,直到信號線變為高電平重新接上寄生電容電源為止。作為另一種可供選擇的方法,DS182他可用外部5V電源供電。與DS1820的通信經過一個單線接口,可以將單片機串行輸出口與DS182S專感器DC8I腳相連接。在單線接口情況下,在ROMM乍約定未建立之前不能使用存貯器和控制操作。如果在單線上有許多器件那么可以挑選出一個特定的器件并給總線上的主機指示存在多少器件及其類型。一個控制操作命令指示 DS1820完成溫度測量。該測量的結果將放入DS1820的高速暫存(便箋式)存貯器(Scratchpadmemory),通過發出讀暫存存儲器內容的存儲器操作命令可以讀出此結果。每一溫度告警觸發器 TH和TL構成一個字節的EEPROM如果不對DS1820施加告警搜索命令,這些寄存器可用作通用用戶存儲器。使用存儲器操作命令可以寫TH和TLo對這些寄存器的讀訪問通過便箋存儲器,所有數據均以最低有效位在前的方式被讀寫。DS1820的電源與通信DS1820的電源供電主要有兩種方式,一種是外部5V電源供電,將電源接在VD/I腳即可。第二種是器件從單線的通信總線取得電源,即寄生電源。為了使DS1820能完成準確的溫度變換,當溫度變換發生時,I/O線上必須提供足夠的功率。因為DS1820的工作電流高達1mA寄生電源供電將使I/O線沒有足夠的驅動能力,如果幾個DS1820ft同一條I/O線上而且企圖同時變換,那么這一問題將變得特別尖銳。解決問題的方法是通過使用連接到VDDSI腳的外部電源供電。這種方法的優點是在I/O線上不要求強的上拉,總線上主機不需要上拉引腳以便在溫度變換期間使線保持高電平。這就允許在變換時間內其它數據在單線上傳送,此外在單線總線上可以放置任何數目的DS1820而且如果它們都使用外部電源,那么通過發出跳過(SkipROM)命令和接著發出變換(Convert)T命令可以同時完成溫度變換。需要注意的只是外部電源處于工作狀態, GN刖引腳不可懸空。我們在系統設計中就采用外部電源供電。圖3-664位激光ROM8位CR編碼48位序列號8位系列產品編碼MSB LSBMSB LSBMSB LSB最高有效位 最低有效位每一個DS1820包括一個唯一的64位長的ROMS碼,如圖3-8.64位ROMSROMM乍控制部分允許DS1820乍為一個單線器件工作,并遵循單線總線系統的單線協議,直到ROM操作協議被滿足,DS1820控制部分的功能是不可訪問的。總線上的主機根據64位ROM勺前56位計算CRC勺值并把它與存儲在DS1820內的值進行比較以決定ROM勺數據是否已被主機正確地接收。CRC勺等效多項式函數為:CRC==X8+Xs+X4+1DS1820ft使用CRO確認數據傳送的每一種情況中,總線主機必須使用上面給出的多項式函數計算CRC的值并把計算所得的值與存儲在64位ROM部分中的8位CRCfi(ROMW數),或者與DS1820中計算彳#到的8位CRCS(在讀暫存存儲器中時,它作為第九個字節被讀出),進行比較。當存儲在DS1820內或由DS1820計算得到的CRCfi與總線主機產生的值不相符合時,在DS1820內設有電路來阻止命令序列的繼續執行。校驗碼CRCM以使用如圖3-7所示,由一個移位寄存器和“異或"(XOR)門組成的多項式產生器來產生。移位寄存器的所有位被初始化為零,然后從產品系列編碼的最低有效位開始,每次移入一位,接著移入序列號。在序列號的第48位進入之后,移位寄存器便包含了CRCfi。移入CRC的8位應該DS1820的報警功能DS18201過使用在板((on-board)溫度測量專利技術來測量溫度。溫度測量電路的方框圖見圖所示。DS182C?過門開通期間內低溫度系數振蕩器經歷的時鐘周期個數計數來測量溫度,而門開通期由高溫度系數振蕩器決定。同時計數器用斜率累加器電路所決定的值進行預置。 為了對遵循拋物線規律的振蕩器溫度特性進行補償,這種電路是必需的。斜率累加器用于補償振蕩器溫度特性的非線性,以產生高分辨率的溫度測量。通過改變溫度每升高一度,計數器必須經歷的計數個數來實行補償。此計算在DS1820內部完成以提供0.5攝氏度的分辨率。溫度讀數以16位、符號擴展的二進制補碼讀數形式提供。 DS1820以0.5攝氏度的增量值,在-55攝氏度至++125攝氏度的范圍內測量溫度。對于應用華氏溫度的場合,則需要使用查找表或變換系數。注意,在DS1820中,溫度以1/2攝氏度LSCB俄低有效位)形式表示時,產生以下9位格式,見下圖3-8:圖3-8DS1820內數據表示格式

最高有效(符號)位被復制到存儲器內兩字節的溫度寄存器中較高的 MSB的所有位,這種“符號擴展”產生了如表3-3所示的16位溫度讀數。溫度數字輸出(二進制)安息字輸出(十六進制)+125C00FAh+25C00000000001100100032h+1/2C00000000000000010032h+0C00000000000000000032h-1/2C0032h-25C0032h-55C0032h表3-3溫度/數據對應表=-25攝氏度11=-25攝氏度11001110LSBg低有效位在DS1820完成溫度變換之后,溫度值與貯存在TH和TL內的觸發值相比較。TH或TL的最高有效位直接對應于16位溫度寄存器的符號位,如果溫度測量的結果高于TH或低于TL,那么器件內告警標志將置位。每次溫度測量更新此標志。只要告警標志置位,DS182CB對告警搜索命令做出響應。這允許并聯連接許多DS1820同時進行溫度測量。如果某處溫度超過極限,那么可以識別出正在告警的器件并立即將其讀出,而不必讀出非告警的器件。CC1000射頻芯片的應用在單總線數字式溫度傳感系統的設計中,數據采用無線傳輸方式。為了避免強磁場對數據傳輸的影響,最好采用高頻波段傳輸。為此我們采用了CC100味實現這個功能。CC100Q1Chipcon公司推出的單片可編程RF收發芯片,它基于ChipconISSmartRF技術,是一種高性能、低損耗、高靈敏度的射頻芯片。CC100北用于低功率和低電壓類無線電產品,并且很容易通過編程使其工作頻率在300-1000MHz范圍內,完全滿足設計的需求。CC1000的結構示圖見圖3-9:圖3-9CC1000簡化模塊圖CC1000I勺主要工作參數可由三個串行接口(PDATA,PCLKF口PALE編程設定來控制CC100眥于發送或接收模式。CC1000ft一個電路中只能在一種模式下工作。芯片提供信號接口DIO和DCLK用于收發數據。DIO是雙向數據線,dclKI供數據發送和數據接收的同步時鐘。在接收模式下,CC1000可看成是一個傳統的超外差接收器。射頻(RF)輸入信號經低噪聲放大器(LNA)放大后翻轉進入混頻器,通過混頻器混頻產生中頻(IF)信號。在中頻處理階段,該信號在送入解調器之前被放大和濾波。可選的RSSI信號和IF信號也可通過混頻產生于引腳RSSI/IF。解調后,CC1000從引腳DIO輸出解調數字信號,解調信號的同步性由芯片上的 PCLK提供的時鐘信號完成。在發送模式下,壓控振蕩器(VCO購出的信號直接送入功率放大器(PA)。射頻輸出是通過加在DIO腳上的數據進行控制的,稱為移頻鍵控(FSK)0這種內部T/R切換電路使天線的連接和匹配設計更容易。當調制數據時,CC1000能被設置成三種不同的數據形式,分別為同步NRZ模式、同步曼徹斯特碼模式、異步傳輸(DART濮式。為了滿足電池供電情況下嚴格的電源損耗要求,CC100眥供了十分方便的電源管理方法。通過MAIN寄存器控制低電平模式,有單獨的位控制接收部分、發射部分、頻率合成以及晶振。這種獨立控制可用來優化在某個應用中最低可能達到的電流損耗。CC100OE片的其他外圍元件較少,且對精度要求不高,所以 CC100叫一個微控制器和少數幾個外接元件便可組成一個完整的 RF收發系統.圖3-10RS485傳輸模塊的選擇我們通過RS-485通訊標準組成設備網絡??晒┻x擇RS-485芯片是很多的,我們選用了Maxim公司生產比較成熟的MAX48駿口芯片。MAX485R口芯片采用單一電源+5V工作,額定電流為300p.A,采用半雙工通訊方式。它完成將TTL電平轉換為RS-485電平的功能。其引腳結構圖如圖3-13所示。從圖中可以看出,MAX485K片的結構和引腳都非常簡單,內部含有一個驅動器和接收器。RO和DI端分別為接收器的輸出和驅動器的輸入端,與單片機連接時只需分別與單片機的RXDffiTO相連即可;EF和DE引腳分別為接收和發送的使能端,當EF為邏輯0時,器件處于接收狀態;當DE為邏輯1時,器件處于發送狀態,因為MAX485r作在半雙工狀態,所以只需用單片機的一個管腳控制這兩個引腳即可^和B引腳分別為接收和發送的差分信號端,當A引腳的電平高于B時,代表發送的數據為1;當A的電平低于B端時,代表發送的數據為 0。在與單片機連接時接線非常簡單。只需要一個信號控制MAX485勺接收和發送即可。同時將A和B端之間加匹配電阻,一般可選1000的電阻。我們采用ATME公司生產的AT89C205仰片機與DS1820ffl成母線溫度測量系統。數據傳輸采用CCl000無線傳輸,這樣就實現了高低壓側的電壓隔離。整個溫度監測系統分為兩個部分 :溫度監測模塊和數據接收轉發模塊。溫度監測模塊實現對母線溫度的測量,并將測量溫度通過 CCl000無線傳輸模塊發送出去。數據接收模塊接收溫度監測模塊傳送過來的溫度數據,并將數據通過RS-485總線送到監控中心。它同樣使用CC1000實現數據的接收AT89C205俾片機是一個帶有2K字節EEPROM讀存儲器的低壓、高性能8位CMO微型計算機,電路設計中除了供給5V電源外,不再需要增加其他外圍電路。而CC1000除了與AT89C2051連接外,還需要單獨提供14MHz的晶振和工作在接收、發射模式下的輸入/輸出配置電路。AT89C205俾片機的P1口是8位雙向I/0口,口引腳 P1.0,Pl.1,Pl.2連接到CC1000的三個串行接口(PDATA,PCLKf口PALE),完成對CC10oOl勺工作模式編程。CCl000發送模式下,采用同步曼徹斯特碼模式,弓唧DIO接AT89C2051的串行輸出引腳TXD同步時鐘信號由AT89C2051的引腳P3.2接DCLKI供。同樣,在接受工作模式下,DCLKI供同步接收時鐘,DIO輸出數據。DS1820專感器封裝類似于普通三極管,見圖3-14中CON配件。在溫度監測模塊設計中,DS182(fi接采用5V電源供電,數據引腳DQ接AT89C2051串行輸入引腳(RXD),這樣需要連接多只DS1820#感器,組成單總線溫度監測網絡時,只要將DS1820的電源引腳VDM數據引腳DQ分別并接在5V電源和串行輸入引腳(RXD)上即可。這兩個模塊組成了實時溫度監測系統的硬件網絡設備。我們在系統安裝調試中,可以擴展多個DS1820傳感器,共用一個數據接受轉發模塊。由于擴展DS1820傳感器時,數據信號線容易受到電壓、磁場等外部干擾,易使溫度傳輸出錯,實際應用有一定的局限性。它的實際工作性能和抗干擾能力還需要在工作環境下來驗證。3.3兩種溫度監測硬件設計比較總結開關柜溫度監測的硬件電路主要采用了上述兩種方式 :光纖式溫度傳感系統和單總線數字式溫度測量系統。兩種檢測方式分別對應于不同的電壓環境,各有自己的優缺點。對于中壓開關柜的溫度測量,采用光纖式溫度傳感系統,保證了系統運行的可靠性與安全性。而且溫度測量準確,抗干擾性,耐壓性好。但是開關柜內大量的光纖走線,可能影響開關柜的正常應用。單總線數字式溫度測量系統只能在低壓環境下工作,但是抗干擾性好,容易組成大范圍的監測網絡。利用CC1000組成監測網絡時,需要編寫大量的網絡協議,來實現對溫度監測模塊的識別,這樣就形成了ZigBee無線傳感網絡的簡單模型,增加了工作難度。我們在設計中,采用溫度監測模塊和數據接收轉發模塊一一對應的模式,降低了開發難度。單總線數字式溫度測量系統成本低廉,安裝簡單,是光纖式溫度傳感器不具備的優勢。4監測系統軟件設計軟件開發平臺介紹開關柜溫度監測系統軟件是整個系統與工作人員溝通的平臺,系統需要長期地運行,并強調系統運行的可靠性,穩定性和易操作性。我們采用MicrosoftWindows2000作為監測系統軟件的開發平臺。Windows2000在易使用程度、易管理性、可擴展性、可靠性、靈活性等方面都有相當突出的表現。Windows2000通過三種途徑來確保最大的可靠性和可用性 :統一處理硬件和軟件系統錯誤 ;保護用戶程序不會相互干擾和系統干擾 ;提供數據和系統的恢復機制。至今,Windows2000仍然得到相當廣泛的應用,充分說明了Windows2000是一個高性能的操作系統。軟件開發使用MicrosoftVisualC++6.0.MicrosoftVisualC++的核心是Microsoft的基礎類庫 (MicrosoftFoundationClassLibrary,MFC)oMFG目當徹底白封裝了Win32軟件開發工具包(SDK)中的功能和結構,提供了大量預先編寫好的類及支持代碼,用于處理多數標準的Windows編程任務。它為應用程序開發者提供了一個應用程序框架 (ApplicationFramework),這使得可以完全使用面向對象的方法來開發Windows應用程序。軟件總體設計對于企業應用于安全性領域的系統軟件,不僅需要應對各種突發性情況,還要考慮到用戶的可操作性,最重要的是軟件在運行中的穩定性與可靠性。溫度監測系統軟件是個多任務操作軟件,例如通過 RS-232串行總線實現對監測網絡硬件設備的控制與通信 ;實時數據的存儲 ;以曲線形式實時顯示測試數據 ;歷史數據的查詢、曲線顯示以及操作記錄等。為了在完成這些任務的同時,主控制界面能夠實時的處理用戶的輸入,始終保持工作狀態,一種比較好的方法就是采用多線程的編程模式。Q啟動輔助線程i*結束輔助線程啟動輔助線程3保存日志相關操作:數據庫查詢Q啟動輔助線程i*結束輔助線程啟動輔助線程3保存日志相關操作:數據庫查詢Windows2000是一個多任務的操作系統,它支持多線程的應用程序。進程總是以一個線程(稱為主線程)作為開始。如果需要,進程可以產生更多的線程,讓CPUS同一時間執行不同段落的彳t碼。當然,在只有一個CPU勺情況下,不可能真正有多任務同時執行的情況發生。多個線程同時工作主要是靠調度程序來完成的,它在不同的線程之間做快速的切換操作。當然,線程并不是越多越好,線程的切換需要耗費大量的系統資源。相對于單線程來說,單線程只能順序的執行程序代碼,同時只能對一個任務進行處理,這樣對多啟動輔助線程2數據庫歷史曲線斷開串口斷開數據庫任務的實時操作系統來說,單線程就不能滿足系統的需要,只能采用多線程編程。圖4-1主線程的流程圖Windows提供了兩種類型的線程:一種是用戶界面線程;另一種是工作線程,也稱為輔助線程。這兩種線程均為 MF暖庫所支持。用戶界面線程的特點是擁有單獨的消息隊列,可以具有自己的窗口界面,能夠對用戶輸入和事件做出響應。在應用程序中,根據用戶界面線程具有消息隊列這一特點,可以使之循環等待某一事件發生后在進行處理。 由于Windows200O是優先多任務的操作系統,即使一個線程因等待某事件而阻塞,其他線程仍然可以繼續執行。工作線程常用于處理后臺任務,執行這些后臺任務并不會耽擱用戶對應用程序的使用,即用戶操作無需等待后臺任務的完成。在監測系統軟件設計過程中,主線程(用戶界面線程 )處于中樞地位,其執行流程如圖,此外還有3個輔助線程,用于處理后臺任務,響應用戶的操作命令。執行流程如圖4-2所示,當程序運行后,首先啟動主線程。用戶登錄成功后,主線程啟動主控制界面,完成相關的初始化工作,并啟動輔助線程 1。輔助線程 1在程序的運行過程中一直都在循環執行,它根據需要監測開關柜數目的不同,執行一次的時間也不同,為(60/(開關柜數目)))So輔助線程1每執行一次,只監測一個開關柜的溫度數據,所有開關柜監測的循環時間為 60S。輔助線程1采用循環執行的方式,上位機從 RS-232串口讀取數據,進行數據分析并存儲后,主動放棄剩余時間片,跳出線程,等待下一次監測循環的開始。線程3、I開始)串口初始化

成功T初始化列表數據波形顯示查詢數據記

錄計算當日最高最低溫度串口初始化

成功T初始化列表數據波形顯示查詢數據記

錄計算當日最高最低溫度圖4-2輔助線程流程圖輔助線程2和輔助線程3都是通過用戶操作來啟動的。這兩個線程都用于用戶對存儲于工控機中的數據進行查看。 當通過軟件對數據庫中的大量數據進行讀取時,會耗費大量的系統資源。如果采用主線程操作,用戶必須等待讀取數據后臺操作完成后,才能進行其它操作,因為大量數據的讀取是很慢的。采用輔助線程后,用戶可以在等待數據讀取的時間內做其它的操作。跟輔助線程1不同,輔助線程2和輔助線程3采用順序執行的方式,數據讀取完畢后,向主線程發送一個表示結束的信息,輔助線程結束。主線程收到這個結束消息后,5秒鐘之后可以再次啟動輔助線程2或3進行數據庫操作。當操作人員關閉程序的時候,主線程需要完成保存數據、關閉設備、釋放占有的資源等操作,確保進程安全結束。通過對軟件的多線程編程,一個重要的問題就是線程之間的相互通信。VisualC++6.0MFCft接支持三種通信方式:使用全局變量;使用用戶自定義消息:使用事件對象。在本次軟件設計中主要采用了前兩種,下面依次介紹之。一、采用全局變量通信最簡單、最有效的方法就是采用全局變量,因為所有的線程都在它們的進程地址空間中執行代碼,故都可以訪問所有的全局變量。在程序的設計中,主線程向輔助線程的通信的采用了全局變量 volatileintkgg(當前監測的全部開關柜的數量 )。在程序運行的過程中,所監測的開關柜的數目是一定的,在程序的安裝過程中就已經設置好的變量。主線程開啟輔助線程 1以后,需要按照開關柜的數目kgg依次訪問開關柜的溫度采集模塊,并在主窗口循環顯示當前正在監測的開關柜以及采集回來的溫度值。輔助線程1是循環執行的,kgg設置好后,輔助線程每執行一次的時間就被定在(60/kgg)S。如果輔助線程在循環執行某個任務,而主線程需要向輔助線程傳遞某些信息時,全局變量是最簡單、最有效的。需要注意的是,用于通信的全局變量應該聲明為volatile,它告訴編譯器不要對該變量作任何優化,并且總是重新加載來自該變量的內存單元的值。如果輔助線程要向主線程傳遞某些信息時,最好的方式應該是采用Windows消息。二、用戶自定義消息通信方式Windows消息是輔助線程與主線程通信的首選方法,因為主線程總是有消息循環。主線程應該有一個窗口(可見或者不可見 )。為了向主線程發送消息,輔助線程必須獲得指向該窗口的句柄。如何獲得該窗口的句柄、怎樣發送和發送什么類型的消息,是最重要的問題。在主線程中可以通過調用AfxBeginThread函數來啟動輔助線程,并向輔助線程傳遞窗口句柄。在此次程序設計中,輔助線程 1是在主線程的定時器函數中,通過調用函數AfxBeginThread(ThreadFuccom,GetSafeHwnd() ,THREA 幾PRIORITY-ABOVE-NORMAL);來啟動。AfxBeginThread函數的第一個參數是函數指針,它指向輔助線程1所要執行的函數。該函數是用戶自定義的,以輔助線程形式調用,用于實現后臺服務的。它相當于C/C十+程序中的主函數,且應該是全局函數或者是C+談的靜態(static) 成員函數。定義成如下的形式:DINTThreadFuccom(LPVOIDpParam){//pParam參數是一個 32位的指向不確定類型的指針變量,它可以用來傳遞刀任何信息。…//完成對溫度采集模塊的訪問工作,采集數據并進行分析、顯示、報警、存儲Return0}第二個參數通過 GetSafeHwnd()函數獲取主控界面的窗口句柄并將其傳遞給線程函數,第三個參數是線程的優先級代碼。 Windows將根據線程的優先級來分配時間。輔助線程1啟動后,需要通過Windows消息來跟主線程通信。在開關柜監測軟件程序設計中,調用::PostMessage((HWND)pParam,WM-THREADCOM,0,0)函數來發送消息。PostMessage函數的第一個參數是目標窗口的句柄,第二個參數是消息類型,在一般的應用中,這個消息為用戶的自定義的消息。第三個和第四個參數是該消息的附帶信息。在這里,消息傳遞沒有附加任何信息,故設置為0。輔助線程消息發送后,目標窗口自動調用用戶自定義的消息響應函數。輔助線程2,3與主線程的通信方式與上述方式類似。結合此次開關柜溫度監測軟件的設計過程,在采用多線程的編程模式時,應當注意如下問題。一、線程的優先級設置在Windows2000下,CPUM度單位是線程。如果所有的線程都具有相同的優先級,那么每個線程被CPU“照顧”的時間(即所謂的時間片)是20ms實際上線程的優先級是不同的。調度程序根據線程優先級的高低,決定下一個獲得CPU時間的線程。我們在開關柜程序設計中主要應用了 4個線程,如上文所介紹的,其中主線程作為用戶界面線程,擁有比輔助線程更高的優先級0當它調用GetMessage函數而其消息隊列是空的時候,進入暫停狀態(也稱為不可調度狀態 )。此時盡管它的優先級很高,但調度程序不會給它分配CPU時間。當主線程中有輸入消息等待處理時,調度系統會暫時提高它的優先級,故在其他 3個輔助線程運行的同時,主線程能及時地處理用戶的輸入請求。輔助線程 1需要不停的對硬件監控網絡發送和接收數據,實時產生報警信號,所以將它的優先級設置為比正常優先級高一個等級。輔助線程 2,3主要用于從數據中讀取數據、并顯示,實時性要求不高,故將其優先級設置為正常的優先級。Windows2000是一個搶占式的操作系統,高優先級的線程會搶在低優先級進程之前運行。因此只要在輔助線程 1中不調用Sleep函數進入不可調度狀態,這個線程就會一直運行。只有當輔助線程 1進入不可調度狀態后,輔助線程2和3才有機會被調度運行。這樣的優先級設置確保了應用程序在實時處理外部輸入,完成后臺任務的同時,能夠及時響應用戶的輸入。二、線程的同步線程的執行是異步的,我們無法預期線程的執行次序,正是由于這種不可預期性造成了所謂的競爭條件 (racecondition)。如果有兩個線程同時讀寫一個全局變量,就有可能產生競爭條件。另一個可能產生的問題就是死鎖(deadlock)。死鎖就是兩個線程相互占有對方需要的資源,而互相等待對方釋放資源,結果造成線程不能得到資源而停止運行。為了解決這些問題,必須采用相應的措施協調各個線程的執行次序。 Windows提供了四種同步機制,他們分別是臨界區,互斥體,信號量和事件。臨界區只能在某一個進程的內部實現訪問控制。如果需要在不同的進程之間控制數據的訪問,那么就需要互斥體或信號量。事件是Windows的一種內核對象,它通過發信號表示某一操作己經完成。使用事件同步線程的時候,首先要創立一個事件,然后調用等待函數來等待另一個線程完成某一操作。當另一個線程執行完某一操作后,此線程必須通過設置事件的信號位來通知等待線程。事件同步可以設置最長等待時間,這就不會出現因為系統異常而導致死鎖。在本次的程序設計中,把程序中使用的全局變量放入臨界區,實現線程對全局資源的同步訪問。MFO供的CCriticalSection類實現了臨界區的功能,其用法如下 :CCriticalSectiong_cs.Lock();g_cs;//全局的CCriticalSection類對象//要保護的全局變量g_cs.Unlock();當有一個線程正在訪問全局變量時,其余需要訪問此全局變量的線程會阻塞在Lock)的調用上,直到訪問全局變量的線程調用Unlock()函數。這就實現了“以原子操作方式”使用共享資源的一種方法。使用臨界區要注意以下兩點:第一,不要把長時間運行的代碼放入臨界區中,這樣會使一些線程長期處于等待狀態,影響應用程序的性能。第二,盡量為每一個共享資源使用CCriticalSection對三、輔助線程不要涉及圖形設備接口 (GDI)對象GDI(GraphicsDeviceInterface)是Windows操作系統的核心部分,管理Windows程序的所有圖形輸出。 Windows使用GDI繪制用戶界面元素,諸如窗口、菜單和對話框等。輔助線程不能涉及 GDI對象意味著不可以查詢、設置控件的狀態,不能創建對話框等。要完成這些任務,唯一的方法就是向主線程發送消息。在這里,輔助線程 1,2,3只完成一些后臺的工作,數據顯示等與GDI相關的操作由主線程負責。四、確保在進程結束之前,終止所有的輔助線程,終止輔助線程最好的方法就是讓線程函數返回,即執行到return0,這是確保線程所占有的資源被正確清除的唯一辦法。在應用程序結束之前釋放其占有的資源是一種良好的編程風格。如果線程函數能夠返回,就可以確保下列事項的實現:在線程函數中創建的所有C++寸象均可通過它們的結構函數被正確;操作系統將正確釋放線程堆棧使用的內存;操作系統將線程的退出代碼 (在線程內核對象中維護)設置為線程函數的返回值;操作系統將遞減線程內核對象的使用計數。如果使用計數降為 0,線程的內核對象就會被撤銷。在程序運行過程中,輔助線程 1一直在循環運行,如果不采取措施,線程函數不會返回。在線程結束之前,主線程會采取措施迫使輔助線程 1跳出循環,使線程函數返回。輔助線程 2,3順序執行,在進程結束之前,在主線程中可以調用等待函數 ::WaitForSingleObject(hThread,5000) ,確保輔助線程終止運行。該函數的第一個參數是輔助線程的句柄,第二個參數是要等待的時間,這里要等待 5秒。此時主線程進入等待狀態,直到輔助線程終止運行。輔助線程 2,3終止運行后主線程繼續運行,完成相關操作后,程序執行完畢。軟件功能模塊設計以上從宏觀方面分析了開關柜溫度監測軟件的總體結構和線程的執行過程,下面我們從功能上來對軟件進行介紹,更加細致的分析軟件的設計。根據委托方的要求,為了方便開關柜溫度監測系統的推廣和應用,監測軟件可以通過設置,監測3-6個開關柜。操作人員只需要在第一次安裝軟件時,設置好需要監測的開關柜即可,以后軟件的運行將不需要重新設置。開關柜監測數目設計窗口如圖4-3所示。溫度監測軟件對于不同的開關柜監測數目,對應不同的操作界面與系統功能,我們以監測三個開關柜為例介紹系統的功能模塊,監測4,5,6個開關柜時系統設計類似。圖4-3開關柜監測數目設置開關柜溫度監測系統軟件可以分為溫度顯示控制、溫度報警、開關柜溫度管理、RS-232通信、數據庫操作5大功能模塊。各個模塊雖然功能不同,但是模塊之間并非獨立運行的,它們是相互配合的整體,相互通信,相互依存。這些模塊和相應的接口共同完成開關柜溫度監測的任務。溫度顯示,控制模塊圖4-4溫度顯示控制模塊功能圖溫度顯示控制模塊,溫度顯示控制模塊組成了開關柜溫度監測軟件的主界面,也是整個系統的核心。在程序設計中,它對應于C+鐵的CMyDlg,CMyDlg類派生于CDialogoCDialog類是在屏幕上顯示的對話框基類。當程序開始運行的時候,第一個實例化的類就是CMyDlg類,它的功能如圖4-4所示:溫度顯示控制模塊的主要功能是創建程序主窗口,但在主窗口初始化之前,為了程序操作的安全性,需要先進行操作人員身份驗證,見圖4-5。如圖圖4-5輸入用戶名和密碼后,系統自動根據用戶名從數據庫中讀取匹配的用戶名和對應密碼,如果用戶不存在,系統會自動提示用戶輸入錯誤。用戶登錄成功后,系統會從數據庫中讀取用戶的操作權限,普通登錄用戶(normal)的功能操作會受到限制。每次程序運行,都有三次登陸機會,如果登陸不成功,軟件需要重新運行。靜態文本顯示(類CFontStatic實現此功能)、功能按鈕(此功能由類CTrackLookBut七。n實現)、狀態燈(由類CLight實現)。按照功能可以將主界面劃分為系統功能、開關柜溫度顯示、報警檢測三個主要區域。系統功能由六個功能按鈕組成,其中系統模塊檢測功能在系統運行后,自動對溫度采集硬件模塊進行通信檢測。開關柜溫度監測軟件會依次向下位機發送命令幀數據,通過能否接收到響應幀數據來判斷是否硬件通信出錯。如果出錯,會彈出錯誤報警窗口,提示工作人員進行檢查。系統對下位機通信檢測一遍后,按鈕提示變為模塊停止檢測,即系統停止檢測,如果需要重新檢測,只需要重新按下按鈕即可。開關柜溫度顯示功能有兩種方式來實現。在主控制界面上,開關柜溫度顯示區域循環顯示所有正在監測開關柜的溫度數據。循環的時間周期為 60S,每個開關柜監測溫度的顯示時間為60/kgg(監測開關柜的數目)S,溫度顯示標題會對應開關柜自動改變

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論