主頁(yè)(http://www.130131.com):基于AT89S52單片機(jī)的以太網(wǎng)遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計(jì)(2)
(5)告警電路 本設(shè)計(jì)采用蜂鳴器告警電路,它由晶體管和蜂鳴器組成。由單片機(jī)I/O口輸出信號(hào)控制晶體管的導(dǎo)通或截止,晶體管導(dǎo)通,則蜂鳴器告警。 4 溫度監(jiān)控的實(shí)現(xiàn) 系統(tǒng)工作時(shí)先由使用者設(shè)定預(yù)期達(dá)到的兩位溫度值(該值為十進(jìn)制,單位為攝氏度,范圍35℃~80℃),溫度值輸入后,打開(kāi)電源,單片機(jī)自動(dòng)復(fù)位,進(jìn)行初始化,這時(shí)LED顯示器顯示設(shè)定溫度,以便操作人員核對(duì)設(shè)定溫度,然后溫度檢測(cè)電路將測(cè)點(diǎn)的溫度輸入單片機(jī),經(jīng)軟件濾波后作為實(shí)測(cè)溫度,此后顯示器將一直顯示實(shí)測(cè)溫度。本系統(tǒng)的溫度設(shè)置也可通過(guò)遠(yuǎn)程監(jiān)控端的上位PC機(jī)設(shè)定,上位PC機(jī)通過(guò)ZNE一100T模塊,將給定量和各設(shè)定參數(shù)傳遞給AT89S52單片機(jī),DSl8820溫度傳感器也將現(xiàn)場(chǎng)實(shí)時(shí)檢測(cè)得到的電阻爐的溫度傳遞給AT89S52單片機(jī),AT89S52單片機(jī)獲得DSl8820溫度傳感器傳送的溫度后經(jīng)主程序分析,并把它與設(shè)定值比較,若實(shí)測(cè)溫度高于設(shè)定溫度時(shí),則通過(guò)驅(qū)動(dòng)電路關(guān)上加熱器并告警;若實(shí)測(cè)溫度低于設(shè)定溫度時(shí),則通過(guò)驅(qū)動(dòng)電路打開(kāi)加熱器并告警;若在設(shè)定溫度范圍內(nèi),則加熱器狀態(tài)不變。 5 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)采用AT89S52作為核心處理器件,把經(jīng)過(guò)DSl8820現(xiàn)場(chǎng)實(shí)時(shí)采集到的溫度數(shù)據(jù),存入AT89S52的內(nèi)部數(shù)據(jù)存儲(chǔ)器,送液晶顯示,并與預(yù)先設(shè)定值進(jìn)行比較,然后由單片機(jī)輸出信號(hào)去控制加熱器。進(jìn)行溫度控制程序的設(shè)計(jì)應(yīng)考慮如下幾個(gè)問(wèn)題:?實(shí)時(shí)采集溫度;?溫度顯示;?與上位PC機(jī)通信程序;?越限告警和處理。軟件設(shè)計(jì)主要有:主程序、初值設(shè)定子程序、溫度讀取子程序、液晶顯示子程序和輸出控制子程序等。初值設(shè)定子程序完成對(duì)溫度初值的設(shè)定及數(shù)據(jù)保存;溫度讀取子程序完成對(duì)溫度傳感器數(shù)據(jù)的讀取,并通過(guò)液晶顯示子程序顯示溫度值;輸出控制子程序則根據(jù)溫度的數(shù)值完成對(duì)輸出口的控制。AT89S52的具體軟件主程序和串口通信中斷程序分別如圖3和圖4所示。 
在以太網(wǎng)通信中,PC機(jī)為主機(jī),單片機(jī)為從機(jī)。單片機(jī)與ZNE-100T模塊之間采用RS-232串行接口,通信波特率為9600b/s,數(shù)據(jù)幀格式為l位起始位,8位數(shù)據(jù)位,1位停止位,無(wú)奇偶校驗(yàn)位。
6 遠(yuǎn)程監(jiān)控端的軟件設(shè)計(jì) 遠(yuǎn)程監(jiān)控端的管理軟件是采用Visual Basic 6.0V為開(kāi)發(fā)設(shè)計(jì)語(yǔ)言,進(jìn)行程序編寫(xiě),以Microsoft Access數(shù)據(jù)庫(kù)格式存儲(chǔ)數(shù)據(jù)。該系統(tǒng)可運(yùn)行于Windows操作系統(tǒng)平臺(tái)上,方便以后的修改和使用。主要由通信控制部分、串口參數(shù)設(shè)定部分、采集數(shù)據(jù)寫(xiě)入數(shù)據(jù)庫(kù)部分、采集數(shù)據(jù)顯示及告警顯示部分和數(shù)據(jù)庫(kù)維護(hù)部分等組成。遠(yuǎn)程監(jiān)控端數(shù)據(jù)庫(kù)是由Access軟件生成的,包括三個(gè)表:表1是保存采集數(shù)據(jù)表,表2是保存操作人員及密碼表,表3是保存各監(jiān)測(cè)地址。遠(yuǎn)程監(jiān)控端的應(yīng)用軟件提供了一個(gè)良好的界面,使維護(hù)人員能通過(guò)界面上的數(shù)據(jù)表方便地觀測(cè)各遠(yuǎn)程監(jiān)測(cè)點(diǎn)的工作狀態(tài),通過(guò)菜單對(duì)全系統(tǒng)進(jìn)行有效的維護(hù),其組成框圖如圖5所示。 
遠(yuǎn)程監(jiān)控端的部分軟件功能如下: (1)通信控制部分軟件主要負(fù)責(zé)監(jiān)視串口,接收來(lái)自單片機(jī)的字符或向單片機(jī)發(fā)送字符。 (2)采集溫度顯示及告警顯示部分軟件主要是在主界面上顯示接收的監(jiān)視溫度數(shù)據(jù)。當(dāng)監(jiān)視現(xiàn)場(chǎng)的采集溫度超過(guò)告警界限時(shí),在主界面告警面板上顯示告警地點(diǎn)及告警內(nèi)容。 (3)采集溫度寫(xiě)入數(shù)據(jù)庫(kù)部分軟件負(fù)責(zé)將接收的信息字符解碼,提取出時(shí)間、地點(diǎn)及采集的溫度數(shù)據(jù),并分析上述數(shù)據(jù)的合法性,如果合法則存入數(shù)據(jù)庫(kù)的表。 (4)串口參數(shù)設(shè)定部分軟件負(fù)責(zé)設(shè)定使用哪個(gè)串口,串口的波特率、校驗(yàn)位、停止位。 7 結(jié)語(yǔ) 本文以AT89S52單片機(jī)為核心,利用ZNE-100T以太網(wǎng)模塊,設(shè)計(jì)了一個(gè)簡(jiǎn)單實(shí)用的以太網(wǎng)遠(yuǎn)程監(jiān)控系統(tǒng),經(jīng)實(shí)驗(yàn)驗(yàn)證,數(shù)據(jù)通信正常,檢測(cè)數(shù)據(jù)完全符合系統(tǒng)設(shè)計(jì)的要求。由于該系統(tǒng),硬件簡(jiǎn)單、成本低、集成度高、穩(wěn)定性好、調(diào)試方便以及抗干擾能力強(qiáng),并且能實(shí)現(xiàn)溫度的遠(yuǎn)程自動(dòng)控制,具有一定的實(shí)用價(jià)值。
(中國(guó)集群通信網(wǎng) | 責(zé)任編輯:陳曉亮) |