基于DS18B20的MOA溫度遠程監(jiān)控系統(tǒng)設(shè)計
掃描二維碼
隨時隨地手機看文章
金屬氧化物避雷器(MOA) 是防止供電系統(tǒng)和用電設(shè)備免受雷電危害的主要設(shè)施, 一旦出現(xiàn)故障, 不但失去應(yīng)有的防雷作用, 且可能帶來供電事故。因而為確保MOA正常發(fā)揮作用, 需要在線監(jiān)測MOA的運行狀態(tài)。以MOA閥片溫度作為故障特征量, 設(shè)計了基于DS18B20和AT89S52單片機的實時溫度監(jiān)測系統(tǒng)。研究表明, 該系統(tǒng)結(jié)構(gòu)合理, 方法正確, 可滿足應(yīng)用需求, 大幅度減少了MOA維護成本。
避雷器監(jiān)測中, 幾乎所有需要測量的變量, 包括在正常電壓及過電壓下的能量吸收, 及由于老化和受潮產(chǎn)生的功耗, 都會影響MOA 閥片的溫度。溫度不僅是其實際工作狀況的間接檢測, 而且是避雷器本身的精確運行參數(shù)。MOA 的溫度是各種影響參數(shù)共同作用的結(jié)果, 避雷器的能量吸收能力是由溫度確定的。正常運行條件下, MOA吸收能量損耗, 溫度變化很小, 出現(xiàn)過電壓時, 溫度可能暫時會有所上升, 但會慢慢恢復(fù)。在MOA 老化或受潮時, 溫度會逐步上升,溫度不僅是其實際工作狀況的間接反映, 而且是各種影響參數(shù)共同作用的結(jié)果。在持續(xù)運行電壓下MOA過熱直接與能量損失相關(guān), 而與運行電壓的質(zhì)量及外界干擾等無直接關(guān)系。因此, MOA 閥片的溫度是判別其是否工作在(熱)穩(wěn)定狀態(tài)的重要特征量。有限元法對MOA的熱特性分析表明, MOA的接地端溫度能反映MOA閥片的熱量分布狀態(tài), 只要獲得MOA 的接地端溫度, 就可以判斷MOA 的當前工作狀態(tài)。
論文設(shè)計的MOA溫度在線監(jiān)測系統(tǒng), 以DS18B20為溫度傳感器, AT89S52單片機為控制單元, 同時通過RS- 485總線與PC 機進行通信, 具有遠程溫度監(jiān)測能力和遠程報警能力。
1 DS18B20簡介
1. 1 DS18B20
系統(tǒng)采用DALLAS半導(dǎo)體公司生產(chǎn)的單線數(shù)字式溫度傳感器DS18B20 監(jiān)測MOA 接地端溫度。
DS18B20 通過對其內(nèi)部溫度系統(tǒng)振蕩器輸出的脈沖信號計數(shù)來測量溫度, 并在芯片內(nèi)部把溫度信號轉(zhuǎn)換成串行數(shù)字信號供微處理器處理, 它具有體積小、抗干擾能力強、使用簡單等特點。芯片的測溫范圍為- 50 ~ 125 , 可精確到01625 ; 其工作電源既可以遠端引入, 也可以以寄生方式產(chǎn)生; 每個芯片都有自己單獨的識別編碼, 因而在一條總線上可掛接多個DS18B20 芯片; 由于它占用微處理器的端口少, 可節(jié)省大量的引線和邏輯電路, 適合于遠距離多點溫度檢測。
在進行多點測溫時, 由于傳感器與數(shù)據(jù)采集系統(tǒng)有一定的距離, 電磁干擾、信號衰減等問題會造成數(shù)據(jù)傳輸錯誤。DS18B20 內(nèi)部提供CRC 冗余校驗碼,傳輸過程中系統(tǒng)具有一定的容錯能力, 在糾錯范圍內(nèi), 就可以對錯誤的數(shù)據(jù)進行糾正, 提高抗干擾能力和加大傳輸距離; 當錯誤超出糾錯范圍時, 也可以識別出錯誤的數(shù)據(jù)進行重新采集, 從而提高采集數(shù)據(jù)的可信度。DSl8B20的內(nèi)部結(jié)構(gòu)圖如圖1所示。
圖1 DS l8B20內(nèi)部結(jié)構(gòu)圖
1. 2 單線( 1-W ire)技術(shù)
單總線( 1-Wire)技術(shù)是近年來由美國Da llas半導(dǎo)體公司研發(fā)的一種總線技術(shù)。與SPI、I2C 等多種標準串行數(shù)據(jù)通信方式不同, 它采用單根信號線傳輸時鐘和數(shù)據(jù), 以其具有的節(jié)約I/O 資源、結(jié)構(gòu)簡單、成本低廉、便于總線擴展和維護等優(yōu)點越來越多的被廣泛應(yīng)用于民用電器、工業(yè)控制領(lǐng)域。
單總線適用于單個主機(Master)控制一個或多個從機( Slave)設(shè)備的系統(tǒng)。當只有一個從機設(shè)備時, 系統(tǒng)可按單節(jié)點系統(tǒng)操作, 當有多個從機設(shè)備時, 系統(tǒng)可按多節(jié)點系統(tǒng)操作。與其它如并行、串行及專用總線相比, 單總線突出的特點是主機控制器件的地址線、數(shù)據(jù)線和控制線合成為一條信號線與從機設(shè)備進行雙向的數(shù)據(jù)交換。所以在有多路多個測控對象時, 系統(tǒng)的布線簡單、方便。但是較小的硬件開銷需要相對復(fù)雜的軟件設(shè)計進行補償。
經(jīng)過單線接口訪問單總線器件有嚴格的單總線命令序列如下:
每次訪問單總線器件, 都必須嚴格遵守這個命令序列。如果出現(xiàn)序列混亂, 則單總線器件不會響應(yīng)主機。
2 硬件電路設(shè)計
監(jiān)測系統(tǒng)采用分布式結(jié)構(gòu), 如圖2 所示。其中監(jiān)測站完成溫度的測量, 并通過RS- 485總線與PC機進行通信, 實現(xiàn)基于溫度的MOA 在線監(jiān)測。
圖2 MOA溫度監(jiān)測系統(tǒng)結(jié)構(gòu)圖
監(jiān)測站以AT89S52單片機作為控制器, 通過多個數(shù)字式溫度傳感器DSl8B20對三相MOA和環(huán)境溫度進行采樣, 送往單片機同時進行數(shù)據(jù)處理。此單片機通過RS- 485總線與PC 機進行通信, 實時傳送當前的三相MOA 溫差和工作狀態(tài)標志, 并按照要求發(fā)送或接收參數(shù)的設(shè)定值。本設(shè)計中四路溫度傳感器分別測量一組監(jiān)測站中三個MOA底部接地端子溫度和環(huán)境溫度。單片機對采集來的溫度數(shù)據(jù)進行處理判斷, 并將判斷的MOA 當前工作狀態(tài)存儲, 等待監(jiān)測計算機的讀取, 實現(xiàn)基于溫度的MOA 在線監(jiān)測。
監(jiān)測站溫度測量系統(tǒng)的結(jié)構(gòu)如圖3所示。
圖3 MOA溫度在線監(jiān)測站結(jié)構(gòu)框圖
2. 1 電源電路
電源部分電路如圖4 所示。電源輸入電壓為220 V交流電壓, 輸出為+ 5 V 電壓, 直接供給單片機使用, 圖3中的穩(wěn)壓管用于抑制雷電和操作過電壓干擾, FIT是交流干擾抑制濾波器, 用于進一步降低電源干擾, AC /DC 是開關(guān)型直流穩(wěn)壓電源, 為監(jiān)測站提供直流電源; 電容器具有濾波作用。
圖4 電源電路
2. 2 溫度測量電路
在多個器件串接在一線制總線上時, 為了區(qū)分每次操作是針對總線上哪個器件, DS18B20器件在內(nèi)部提供了每個器件獨有的64位ROM 序列號, 每一次操作都要首先在對DS18B20器件的ROM 序列號進行匹配后, 方可對其中的某一個器件進行測溫/讀取溫度值的操作。
當一線制總線上僅有一個DS18B20器件時, 可以用sk ip ROM 操作(即跳過ROM 匹配)命令來代替64位序列號的匹配過程, 省掉煩瑣的總線上器件序列號的查詢操作。在本設(shè)計中, 每個監(jiān)測站僅用4個DS18B20器件, 因此在硬件滿足要求的條件下可以設(shè)計成單片機的每個端口僅連接一個DS18B20, 即利用單片機的并行端口同時對多個DS18B20進行統(tǒng)一的操作。
圖5 DS l8B20的多點測溫電路原理圖
2. 3 串口通信電路
本設(shè)計選用的單片機AT89S52 具有一個全雙工的串行口, 可以通過編程設(shè)定為4種工作方式, 完全滿足系統(tǒng)的串口通信要求。由于實際的溫度測量系統(tǒng)離PC機的監(jiān)控地點較遠, 如采用常用的RS-232串行通信接口在傳輸距離短, 信號易受干擾等缺點, 因此本設(shè)計選用了RS- 485總線進行遠程通信。RS - 485是美國電氣工業(yè)聯(lián)合會制定的通信標準, 其采用差分信號進行傳輸, 最大傳輸距離約為1219 m, 最大的傳輸速率可達10Mbit/ s, 能夠滿足長距離和高速率的串行異步通信, 得到了廣泛的應(yīng)用。在系統(tǒng)實現(xiàn)中, 單片機端使用MAX485芯片將TTL 電平轉(zhuǎn)換成RS - 485的電平輸出, 并在PC端連接RS232 /485轉(zhuǎn)換器, 從而實現(xiàn)了遠程監(jiān)控。RS- 485總線接口電路如圖6所示。
圖6 RS- 485總線接口電路
2. 4 人機通信
監(jiān)測系統(tǒng)可采用數(shù)碼管和鍵盤作為人機交互界面, 通過鍵盤按鍵來顯示三相MOA 的當前工作溫度和與環(huán)境的溫差, 鍵盤設(shè)定或修改兩個回路的上下限溫度報警值, 且一經(jīng)設(shè)定完成后即用新的參數(shù)值進行監(jiān)控并發(fā)往PC 機更新數(shù)據(jù), 同時把新參數(shù)送入E2ROM中保存, 以防止系統(tǒng)掉電后參數(shù)的丟失。在溫度測量中, 系統(tǒng)用當前測量值與設(shè)定的上下溫限值比較, 從而控制是否需要聲光報警。當系統(tǒng)的運行發(fā)生了偏差, 可以通過復(fù)位按鍵使系統(tǒng)重新開始運作。
3 軟件編程設(shè)計
3. 1 DS18B20時序圖
由于DS18B20采用的是1-W ire總線協(xié)議方式,即用一根數(shù)據(jù)線實現(xiàn)數(shù)據(jù)的雙向傳輸, 單線通信功能是分時完成的, 有嚴格的時序概念, 因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進行。操作協(xié)議為: 初始化DS18B20(發(fā)復(fù)位脈沖)-發(fā)ROM 操作命令-發(fā)存儲器操作命令-處理數(shù)據(jù)。
DS18B20的復(fù)位、讀和寫時序圖如下。
所有時序都是將主機作為主設(shè)備, 單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機主動啟動寫時序開始, 如果要求單總線器件回送數(shù)據(jù), 在進行寫命令后, 主機需啟動讀時序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。
3. 2 監(jiān)測系統(tǒng)主程序流程圖
軟件部分主要包括主程序、RS - 485 通信、鍵盤掃描、溫度采集、溫度顯示等部分組成。其中RS -485通信模塊主要完成和PC 機的通信; 鍵盤掃描模塊用來輸入各溫度傳感器的溫度上下限; 溫度采集模塊定時的采集四個溫度傳感器的溫度值; 溫度顯示模塊用來循環(huán)的顯示三相MOA與環(huán)境的溫度差。
圖10 系統(tǒng)主程序流程圖
3. 3溫度轉(zhuǎn)換讀取程序流程圖
啟動溫度轉(zhuǎn)換及讀取溫度值流程圖如圖11所示。
跳讀ROM[命令字CCH]模塊: 單片機將要發(fā)出的啟動溫度轉(zhuǎn)換指令是對總線上所有的DS18B20, 而不論它的器件序號。啟動溫度轉(zhuǎn)換[命令字44H]: 總線上所有的DS18B20開始進行溫度轉(zhuǎn)換, 經(jīng)過200ms左右, DS18B20將轉(zhuǎn)換結(jié)果存于RAM的0號和1號字節(jié)中, 供單片機讀取。因為在單總線上只有一個DS18B20, 在讀溫度值時,只需要發(fā)出跳過ROM指令[CCH ], 然后讀取溫度數(shù)據(jù)即可。數(shù)據(jù)處理: DS18B20有嚴格的時序來保證數(shù)據(jù)的完整性。在單線DQ 上, 存在復(fù)位脈沖、應(yīng)答各脈沖、寫“ 0”、寫“1”、讀“0”和讀“1”幾種信號類型。
圖11 溫度轉(zhuǎn)換及讀取程序流程圖
4 結(jié)語
DS18B20溫度傳感器以其線路簡單, 硬件少, 成本低, 具有完善的單總線通信協(xié)議, 無需復(fù)雜煩瑣的布線,在實際生產(chǎn)和科學研究中有廣闊的前景。設(shè)計中采用的新型溫度傳感器DS18B20, 只需要一根單總線就可完成與單片機的通信, 避免了模擬傳感器帶來的共地干擾和線路干擾問題。由它們構(gòu)成的單總線傳感器網(wǎng)絡(luò)線纜少, 從而大大減少了現(xiàn)場線纜, 簡化了系統(tǒng)布線的復(fù)雜度, 系統(tǒng)可能發(fā)生故障的環(huán)節(jié)少, 便于維護, 提高了系統(tǒng)測量的準確程度和智能化程度, 并在一定程度上降低了系統(tǒng)成本。RS- 485現(xiàn)場總線將各采集器采集到的溫度數(shù)據(jù)傳送給監(jiān)測計算機, 并對傳輸數(shù)據(jù)進行校驗, 是數(shù)據(jù)在得以遠距離傳輸?shù)耐瑫r, 保持了較強的抗干擾性, 且實現(xiàn)了計算機與監(jiān)測站的實時在線監(jiān)測。