基于AT89S52單片機的以太網(wǎng)遠程監(jiān)控系統(tǒng)的設計
本系統(tǒng)是以爐溫作為溫度檢測對象,電阻爐的溫度變化范圍為30℃~150℃。系統(tǒng)設定溫度為35℃~80℃,溫度越限時產(chǎn)生告警。由于溫度變化慣性大,因此,系統(tǒng)選用固態(tài)繼電器作為溫控元件。固態(tài)繼電器是由固體元件組成的無觸點開關元件,利用電子元件的開關特點來控制電路的斷開與接通,工作可靠、壽命長,開關速度快,能實現(xiàn)較為理想的控溫較果。系統(tǒng)采用的固態(tài)繼電器是TOSHIBA的TSSl6J4lS。系統(tǒng)選用了PID調節(jié)器。當電阻爐的溫度一旦越限,PID調節(jié)器使固態(tài)繼電器TSSl6J4lS接通或斷開,從而實現(xiàn)控制加熱器,使電阻爐溫度被控制在設定的溫度范圍內(nèi)。
(3)以太網(wǎng)接口電路設計
系統(tǒng)的以太網(wǎng)功能是通過ZNE-100T模塊實現(xiàn)的。ZNE-100T是周立功公司開發(fā)的一款嵌入式以太網(wǎng)轉串口模塊,它內(nèi)部集成了TCP/IP協(xié)議,配有32位ARM7CPU、16KB RAM、128KB FLASH和10M以太網(wǎng)接口,支持RS-232和RS-485接口,支持動態(tài)或靜態(tài)獲取IP地址,有TCP Server,TCP Client,UDP,Real COM driver,Group Mode等多種工作方式,可使用網(wǎng)頁瀏覽器進行配置,提供通用配置函數(shù)庫,方便用戶使用VC、VB、Delphi和C++Builder開發(fā)應用程序。由于ZNE一100T以太網(wǎng)模塊能夠實現(xiàn)串口設備和以太網(wǎng)設備之間數(shù)據(jù)的透明傳輸,利用它可以輕松完成嵌入式設備的網(wǎng)絡功能。ZNE-100T以太網(wǎng)模塊的波特率、開始位、停止位以及工作方式通過配置軟件來設計。在本系統(tǒng)中,設置其波特率為9600b/s,開始位為1位,停止位為1位,工作方式為TCP Sever。
由于AT89S52單片機本身提供了一組全雙工串行傳輸口,由TXD引腳來傳送串行數(shù)據(jù),而由RXD引腳來接收數(shù)據(jù),可是其工作邏輯電平皆為TTL電平(0V,5V)。而ZNE-100T模塊配置的是RS-232標準串行接口,電平為(+12V,-12V),二者的電氣規(guī)范不一致,因此要完成單片機與PC機的數(shù)據(jù)通信,必須對單片機輸出的TTL電平進行電平轉換。本系統(tǒng)采用MAXIM公司生產(chǎn)的MAX232電平轉換芯片來實現(xiàn)RS-232標準接口通信。
(4)控制電路
驅動電路采用繼電器驅動方式。通過控制繼電器在控制周期內(nèi)通斷的時間,實現(xiàn)對加熱器的開關控制。從而實現(xiàn)控制溫度。由單片機I/O口輸出的控制信號,經(jīng)NPN晶體管放大,驅動繼電器工作。
(5)告警電路
本設計采用蜂鳴器告警電路,它由晶體管和蜂鳴器組成。由單片機I/O口輸出信號控制晶體管的導通或截止,晶體管導通,則蜂鳴器告警。
4 溫度監(jiān)控的實現(xiàn)
系統(tǒng)工作時先由使用者設定預期達到的兩位溫度值(該值為十進制,單位為攝氏度,范圍35℃~80℃),溫度值輸入后,打開電源,單片機自動復位,進行初始化,這時LED顯示器顯示設定溫度,以便操作人員核對設定溫度,然后溫度檢測電路將測點的溫度輸入單片機,經(jīng)軟件濾波后作為實測溫度,此后顯示器將一直顯示實測溫度。本系統(tǒng)的溫度設置也可通過遠程監(jiān)控端的上位PC機設定,上位PC機通過ZNE一100T模塊,將給定量和各設定參數(shù)傳遞給AT89S52單片機,DSl8820溫度傳感器也將現(xiàn)場實時檢測得到的電阻爐的溫度傳遞給AT89S52單片機,AT89S52單片機獲得DSl8820溫度傳感器傳送的溫度后經(jīng)主程序分析,并把它與設定值比較,若實測溫度高于設定溫度時,則通過驅動電路關上加熱器并告警;若實測溫度低于設定溫度時,則通過驅動電路打開加熱器并告警;若在設定溫度范圍內(nèi),則加熱器狀態(tài)不變。
5 系統(tǒng)軟件設計
系統(tǒng)采用AT89S52作為核心處理器件,把經(jīng)過DSl8820現(xiàn)場實時采集到的溫度數(shù)據(jù),存入AT89S52的內(nèi)部數(shù)據(jù)存儲器,送液晶顯示,并與預先設定值進行比較,然后由單片機輸出信號去控制加熱器。進行溫度控制程序的設計應考慮如下幾個問題:?實時采集溫度;?溫度顯示;?與上位PC機通信程序;?越限告警和處理。軟件設計主要有:主程序、初值設定子程序、溫度讀取子程序、液晶顯示子程序和輸出控制子程序等。初值設定子程序完成對溫度初值的設定及數(shù)據(jù)保存;溫度讀取子程序完成對溫度傳感器數(shù)據(jù)的讀取,并通過液晶顯示子程序顯示溫度值;輸出控制子程序則根據(jù)溫度的數(shù)值完成對輸出口的控制。AT89S52的具體軟件主程序和串口通信中斷程序分別如圖3和圖4所示。
評論