基于RS485總線(xiàn)的溫濕度監控系統設計
1 概述
本文引用地址:http://dyxdggzs.com/article/201612/341757.htm環(huán)境條件中的溫濕度指標是很多工作場(chǎng)合中的重要參數,不論是倉庫治理、圖書(shū)保存還是產(chǎn)業(yè)丈量與計量檢定,都需要符合操縱規定的溫濕度環(huán)境條件。而溫濕度也是最不輕易保障的指標,針對這一情況,研制可靠且實(shí)用的溫濕度監控系統顯得非常重要。監控系統以RS-485總線(xiàn)協(xié)議為基礎組成分布式網(wǎng)絡(luò )結構,采用PC機與單片機組成的多機系統完成丈量與控制任務(wù)。
2 系統硬件結構及工作原理
2.1網(wǎng)絡(luò )監控系統結構

圖1 系統結構原理圖
系統結構原理圖如圖1。系統采用兩級主從式總線(xiàn)型網(wǎng)絡(luò )拓撲結構。由1臺PC機(作為上位機)、若干臺AT89S52單片機(作為下位機)和RS-485總線(xiàn)通訊網(wǎng)絡(luò )組成。整個(gè)系統在監控系統治理軟件的控制下,同一協(xié)調工作,完成設計功能。
2.2 主從式通訊網(wǎng)絡(luò )
監控系統中網(wǎng)絡(luò )通訊采用RS-485串行總線(xiàn)連接,串行通訊具有傳輸間隔長(cháng)、連接簡(jiǎn)單、使用靈活方便、數據傳輸可靠性高的特點(diǎn),在產(chǎn)業(yè)監控、數據采集和實(shí)時(shí)控制系統中得到了廣泛應用。其中采用差分通訊方式進(jìn)行信號發(fā)送與接收的RS-485(EIA-485Standard)總線(xiàn)協(xié)議較RS-232C協(xié)議進(jìn)步了抗共模干擾能力和傳輸速率,擴大了傳輸間隔,更適合作為現場(chǎng)總線(xiàn)應用于復雜的環(huán)境中的產(chǎn)業(yè)控制和實(shí)時(shí)監控系統中[1]。
下位現場(chǎng)數據采集與控制單元掛接于同一條數據通訊總線(xiàn),總線(xiàn)為各現場(chǎng)單元共享,為避免總線(xiàn)通訊的競爭與沖突,系統網(wǎng)絡(luò )通訊采用主從式和廣播式通訊控制方法。由主控微機決定一次通訊過(guò)程的啟動(dòng)和終止,通過(guò)給需要通訊的現場(chǎng)單元分配總線(xiàn)通訊使用權的方法來(lái)實(shí)現與下位單片機與主控微機之間的網(wǎng)絡(luò )通訊。網(wǎng)絡(luò )中的下位單片機請求通訊時(shí)必須等待主控微機將總線(xiàn)使用權分配給它后才能收發(fā)數據[2]。采用主從通訊控制方法固然速度稍慢,但由于現場(chǎng)單片機與主控微機間的信息交換不是特別頻繁,因此對于本監控系統是適用的。
PC主控微機與各現場(chǎng)單元單片機之間所采用的通訊規約是自定義的、非標準的、比較簡(jiǎn)單的格式。主控PC微機通過(guò)RS-232C串口向總線(xiàn)通訊協(xié)議轉換控制器發(fā)送命令幀信息,總線(xiàn)控制器接口電路負責RS-232C電平和RS-485電平之間的相互轉換,轉發(fā)此通訊幀向RS-485總線(xiàn)網(wǎng)絡(luò )廣播。在通訊幀中包含主控微機所要求的下位現場(chǎng)單元編號,所有下位現場(chǎng)單元單片機都收聽(tīng)廣播,在收到廣播幀后,進(jìn)行編號對比操縱,各下位單片機把收到的編號與自己的編號進(jìn)行比較,編號相同的下位單片機控制器為被選中的下位機,對接收到的幀信息進(jìn)行處理,其余下位單片機控制器皆為未選中的下位機,需要丟棄收到的幀信息并繼續進(jìn)行網(wǎng)絡(luò )偵聽(tīng)工作[3]。同樣,下位現場(chǎng)單元單片機向主控微機發(fā)送信息幀時(shí),由總線(xiàn)通訊協(xié)議轉換控制器轉換為RS-232C通訊協(xié)議電平向主控微機轉發(fā)。在設計實(shí)驗中,監控系統在串行通訊波特率為9600bit/s,無(wú)奇偶校驗位,8位數據位,1位停止位的設置下通訊正常,沒(méi)有發(fā)生丟幀或錯幀的現象。
2.3 下位機數據采集與控制單元
下位機是一個(gè)以AT89S52單片機為核心的數據采集與控制單元。AT89S52是一個(gè)低功耗,高性能CMOS 8位單片機,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統及80C51引腳結構,功能強大的AT89S52可為很多嵌進(jìn)式控制應用系統提供高性?xún)r(jià)比的解決方案。AT89S52具有如下資源:40個(gè)引腳,8k Bytes Flash片內程序存儲(In system programmable可反復擦寫(xiě)1000次),256 bytes的隨機存取數據存儲器(RAM),32個(gè)外部雙向輸進(jìn)/輸出(I/O)口,5個(gè)中斷優(yōu)先級2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計數器,2個(gè)全雙工串行通訊口,看門(mén)狗(WDT)電路,片內時(shí)鐘振蕩器??赏ㄟ^(guò)軟件設置省電模式??臻e模式下,CPU暫停工作,而RAM定時(shí)計數器,串行口,外中斷系統可繼續工作,直至外中斷激活或硬件復位[4]。下位機分別接有8路溫度濕度傳感器,進(jìn)行溫度濕度檢測,并根據各路的均勻溫度和均勻濕度,控制除濕機、空調機或其他設施,以使環(huán)境溫度與濕度控制在特定的范圍內,并輪流顯示均勻溫度、濕度值。下位機還設有煙霧、火光和熱釋電紅外傳感器及其相關(guān)電路 ,組成防火、防盜報警系統。下位單片機通過(guò)TTL/RS-485通訊接口電路與總線(xiàn)網(wǎng)絡(luò )相連接構成半雙工主從式串行通訊網(wǎng)絡(luò ),實(shí)現下位機通過(guò)串行口與上位機交換數據。下位機是一個(gè)相對獨立的智能型區域數據丈量與控制子系統,當監控主機與下位單片機之間的通訊發(fā)生故障時(shí),各下位機仍可獨立完成相關(guān)區域的數據采集、告警和控制功能。
各溫度和濕度傳感器分別將檢測到的溫度和濕度物理量轉換成電信號,經(jīng)各自的低噪聲放大器放大、模數轉換器(A/ D)后,送到AT89S52單片機進(jìn)行數據分析處理。下位機可接受上位機的訪(fǎng)問(wèn),根據需要將溫度、濕度數據實(shí)時(shí)傳遞給上位機,由上位機對各倉庫的溫濕度數據進(jìn)行記錄并做相應處理。由于不同武器裝備對環(huán)境溫、濕度要求不同,用戶(hù)可通過(guò)外加鍵盤(pán),在所需要的范圍內隨意設置系統監控的溫、濕度指標,以便系統適應不同的需要。
3 軟件設計
3.1網(wǎng)絡(luò )監控系統軟件的設計與開(kāi)發(fā)
網(wǎng)絡(luò )監控系統軟件的設計與開(kāi)發(fā)采用基于面向對象程序設計思想和關(guān)系數據庫技術(shù),在Windows9x/2000/XP系統平臺上采用Borland C++ Builder編程語(yǔ)言開(kāi)發(fā)而成。監控系統軟件完成的主要任務(wù)和功能有:系統組態(tài)、串行通訊治理、圖形顯示治理、數據存儲、報表打印、統計分析、異常處理等。倉儲網(wǎng)絡(luò )監控系統的軟件設計功能較多而復雜,而且層次比較多。因此在設計上首先基于Windows的多任務(wù)處理機制,前臺完成命令響應、各模塊調用以及系統工作狀態(tài)的動(dòng)態(tài)實(shí)時(shí)圖形化顯示等,后臺負責實(shí)時(shí)監視接收各下位現場(chǎng)單元發(fā)送的數據、定時(shí)巡檢或隨機抽檢工作現場(chǎng)的單片機控制器、進(jìn)行異常處理和報警處理等;在編程技術(shù)上采用VCL組件開(kāi)發(fā)技術(shù),應用多線(xiàn)程技術(shù)進(jìn)行多任務(wù)處理;其次,采用模塊化程序設計,把一個(gè)大的程序劃分為若干個(gè)小的功能模塊,每個(gè)模塊之間既相互獨立又相互聯(lián)系,這樣可以進(jìn)步軟件的可維護性、可讀性、可靠性和高效性[2]。
3.2 下位機程序設計[5]
下位機主程序流程圖如圖2所示。包括對系統進(jìn)行初始化處理;判定中斷方式(含優(yōu)先級)設置;串行口工作方式設置;系統各種指標的裝進(jìn);鍵盤(pán)初始化;控制信號初始化以及建立數據指針、通道初值并啟動(dòng) A/ D轉換。

圖2 下位機主程序流程圖
以下僅給出下位機處理呼喚應答時(shí)的部分程序:
# define ADD0 x01
…
sbit tr=p1.3;
void service serial(void) interrupt4using1
{
uchar rs;
RI=0;
ES=0; //關(guān)串行中斷
tr=0;
rs=SBUF;
…
?。?/p>
if(rs!=ADD) //不是呼喚本機
{
ES=1;
if(P3.3=0 ) //A/D轉換請求中斷
…
Return;
?。?/p>
SM2 =0;
tr=1;
SBUF=ADD; //應答
While(TI=0);
TI=0;
tr=0; //執行通訊命令
…
4 結語(yǔ)
實(shí)踐證實(shí),基于RS-485總線(xiàn)協(xié)議的網(wǎng)絡(luò )監控系統依托集中治理、分散控制的現代控制技術(shù),組成監控系統的硬件和軟件采用標準化、模塊化和系統化的設計,系統的配置具有通用性強、系統組態(tài)靈活、控制功能完善以及系統安裝、調試和維修簡(jiǎn)便等特點(diǎn),并且還可以通過(guò)智能通訊接口或標準的通訊網(wǎng)絡(luò )協(xié)議和其它監控系統,如門(mén)禁治理子系統相交聯(lián)通訊,組成功能更完善的自動(dòng)化網(wǎng)絡(luò )治理系統。
參考文獻
[1] 邱公偉,趙祥元,巫淑萍.實(shí)時(shí)控制與智能儀表多微機系統的通訊技術(shù)[M].北京:清華大學(xué)出版社,1996
[2] 周海峰,趙春宇,陳大躍.基于RS-485的種子處理成套設備的網(wǎng)絡(luò )控制設計[J].測控技術(shù),2004,23(12):48-49
[3] 韓世進(jìn),張樂(lè )年.基于RS-485的多路數據采集系統[J].現代電子技術(shù),2003(11):14-15
[4] 孫育才,王榮興,孫華芳. ATMEL新型AT89S52系列單片機及其應用[M].北京:清華大學(xué)出版社,2005
[5] 李華,孫曉民,李紅青,等.MCS-51系列單片機實(shí)用接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1993
評論