摘要:鑒于目前基于RS-485通信的監控系統的一些問題,該文闡述了用單片機AT89S51和現場總線技術實現基于CAN總線的小區廚房監控系統,闡述了系統的硬件結構設計及軟件設計的程序流程。該系統可靠性高,通信速度快,抗干擾能力強,有著廣泛的應用前景。
關鍵詞:AT89S51單片機;CAN總線;小區廚房監控系系統
中圖分類號:TP399文獻標識碼:B文章編號:1009-3044(2008)35-2327-02
The Monitoring System of Community Kitchen Based on Microcontroller
LUO Gai-liang
(Center of Science and Technology Development Dapu County, Meizhou 514200, China)
Abstract: Since a number of problemin the monitoring system based on RS-485 communications , This paper describes the Implementation of monitor the Community Kitchen of the system,basedon CAN bus with AT89S51 microcontroller and Field Bus. The introduction of the design of hardware system's structuraland process flow of software design.The system has high reliability, faster communication, anti-interference capability and has a broad prospect.
Key words: AT89S51 microcontroller; CAN Bus; monitoring system of kitchen In the community
1 引言
廚房燃料燃燒時所產生的多種燃燒產物和烹調用食用油加熱后產生的含有多種有害化合物的油煙會造成廚房空氣污染,環境中空氣質量的好壞直接影響到下廚人員的健康。現代廚房一般都離不開煤氣灶和抽油煙機,一旦使用煤氣灶,則一定會產生油煙、水汽與乙烷等影響廚房空氣環境的混合氣體,為了健康的需要,往往用通風設備如抽油煙機來改善充滿油煙氣的廚房環境。普通吸油煙機雖然也可以起到凈化廚房空氣的作用,但存在很多的不足,如需要人工打開、人工調檔等。本文正是基于此,提出小區廚房監控系統,該系統能自動檢測油煙的大小,并根據油煙的大小自動切換油煙機的開關、調節風力大小進行吸油煙工作等。
2 監控系統構成
2.1監控系統簡介
利用AT89S51芯片的強大功能,實現從溫度采集到溫度在LCD上顯示,并可以設置溫度報警的范圍,當溫度超過設置的范圍時,通過蜂鳴器報警;利用AT89S51和SJA1000的結合,實現基于CAN總線的基本功能;通過CAN總線和其他在CAN總線上的的單片機或電腦控制端通訊;例如采集小區廚房里面的溫度,對采集到的溫度進行監控;同時加一些外圍電路,實現對油煙,煤氣等的監控,本文主要討論對廚房油煙和溫度的監控。
2.2 監控系統總體結構
系統中心控制器采用AT89S51單片機,該單片機廉價可靠,開發工具簡單,具有軟件在線升級能力。該系統由上位機,微處理器,CAN總線適配卡,CAN總線控制器,測溫芯片油煙氣體傳感器TGS2100,溫度傳感器HN36,LED,鍵盤,報警器組成。上位機為PC機,負責整個系統的管理和控制。單片機AT89S51是硬件電路的核心,其承擔CAN控制器的初始化、數據收發和控制等任務。CAN總線控制器用于同上位機進行遠程通訊,并獨立完成CAN總線上的數據接收和發送工作。CAN總線適配卡主要用于智能節點協議與總線協議之間的轉換,實現節點與總線之間的通訊。如圖1所示為監控系統的結構。
2.3 監控系統相關技術和硬件簡介
1)CAN總線
CAN總線是目前唯一具有國際標準的現場總線,它具有極高的可靠性和獨特的設計以及高速率、長距離傳輸性能,特別適應于干擾較嚴重的工業現場設備互連。其主要特點如下:多主站依據優先權進行總線訪問;無破壞性地基于優先權的仲裁;只需通過對報文的標志符濾波即可實現多種方式的數據傳送;直接通訊距離最遠可達10km,通訊速率最高可達IMbPs;報文采用短幀結構,傳輸時間短和受干擾概率低;將節點的暫時性錯誤和永久性作物區分開來,并且可以自動關閉CAN錯誤節點。SJA1000是一種獨立的CAN控制器,主要用于移動目標和一般工業環境中的區域網絡控制。它是Philips半導體公司PCA82C200 CAN控制器(BasicCAN)的替代產品,而且它增加了一種新的操作模式-PeliCAN,這種模式支持具有很多新特性的CAN 2.0B協議。
2)AT89S51單片機
AT89S51是一個低功耗,高性能CMOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌
嵌入式控制應用系統提供高性價比的解決方案。
3)溫度傳感器的選型--線性NTC溫度傳感器HN36
HN36型溫度傳感器體積小,重量輕,感溫靈敏,非常適合于火災報警,辦公場所使用,或直接焊接在電路板上。其具體指標如下:a)測溫范圍:-50-200C;b)線性度:±0.5%;c)基準電壓:690-710mv(出廠時具體標定);d)電壓溫度系數:-2mv/C;e)穩定度:0.05C/年;f)引線: Φ0.5×20/25mm銅鍍錫金屬線;可直接焊接在電路版上。溫控報警電路由傳感器電路、信號調理電路、A/D采樣電路、單片機系統、輸出控制電路、報警電路構成。電路基本工作原理:傳感器電路將感受到的溫度信號以電壓形式輸出到信號調理電路,信號經過調理后輸入到A/D采樣電路,由A/D轉換器將數字量值送給單片機系統,單片機系統根據設計的溫度要求判斷是否需要接通報警電路。本文設計時以0℃為判別依據,當溫度量值低于或等于0℃時,使報警電路接通。當溫度量值高于0℃時,報警電路停止工作。
4)油煙傳感器的選型——油煙氣體傳感器TGS2100
對空氣污染物的脫氧氣體具有高敏感度;長壽命,低功耗;小尺寸;應用范圍:抽油煙機,氣體清潔系統,通風控制系統,氣體質量監控。測量范圍:1-30ppm靈敏度(電阻比):0.2-0.6 加熱器電壓:5V±0.2V DC 電路電壓:5V±0.2V DC。油煙報警電路工作原理和溫控報警電路類似在此略過。
3 系統軟件設計
本系統的軟件主要由上位機控制軟件、通信轉換控制軟件、溫度信號檢測控制模塊這三大部分組成。上位機控制軟件,是用高級語言VC++編程,主要完成主機工作畫面編程,對信號進行分析處理,向單片機發控制命令和輸出數據分析結果以及通信接口初始化和通信協議編程。通信轉換控制軟件主要完成上位機接口與CAN總線接口的協議轉換。溫度信號檢測控制程序,主要完成CAN總線信號通訊,現場溫度信號采集與控制。
軟件設計的關鍵是CAN通信軟件的程序設計CAN通信軟件設計的三層結構模型為:網絡物理層,數據鏈路層和應用層。網絡物理層和數據鏈路層的功能由CAN接口器件完成,包括硬件電路和通信協議兩部分CAN通信協議規定了四種不同用處的網絡通信幀,即數據幀,遠程幀,錯誤指示幀和超載幀CAN通信協議的實現,包括各種通信幀的組織和發送,均是由集成在SJA1000通信控制器中的電路實現的, 限于篇幅,本文只給出系統軟件開發的重點,應用層軟件的設計,主要包括初始化,發送,接收三大部分程序。
3.1 初始化程序
初始化程序主要是通過對CAN控制器SJA1000控制段中的寄存器寫入控制字,進行初始化,從而確定SJA1000的工作方式其流程圖如圖2 所示。
3.2 發送程序
發送程序是把需要發送的信息幀送到SJA1000的發送緩沖區并且啟動發送命令,信息從SJA1000的發送緩沖區到CAN總線的過程則由自SJA1000完成程序流程如圖3 所示。
3.3 接收程序
接收程序是從SJA1000的接收緩沖區讀取要接收的信息,釋放接收緩沖區,并對接收的信息進行處理。信息從CAN總線到SJA1000接收緩沖區也是SJA1000控制器自動完成的程序流程如圖 4 所示。
3.4上位機管理軟件
上位機管理軟件采用Visual C++編寫,主要完成傳感器網絡各節點的狀態顯示,數據采集,向節點發送控制指令,顯示動態實時數據和歷史曲線圖,對歷史數據進行保存,打印報表,管理員身份驗證,系統電路監控和測試,報警處理等。
4 結束語
本系統以AT89S51單片機為核心,利用溫度傳感器和油煙傳感器分別檢測廚房加熱溫度和油煙信號。
1)系統檢測誤差較小,可靠性好,成本低,并且在檢測中具有較高的可重復性。
2)電路設計簡單,控制靈活,新型集成電路的應用也使系統的控制部分更為靈活方便。
3)系統具有更高的可擴展性。系統可以通過RS-232實現與計算機的串口通訊,從而利用軟件可以在計算機上生成溫度油煙點檢測值報表,以便進行記錄和查詢。
參考文獻:
[1] 袁瑩,孟利民,張江鑫.單片機在無線可視對講系統中的應用[J].計算機工程與應用,2004(27)188-191.
[2] 金衛民,神顯豪,鞏傳雷.基于CAN總線的DNC遠程診斷及監控系統[J].微計算機信息,2006,12(2):32-34.
[3] 徐麗香,鄭傳得,周世均,等.基于AT89S51單片機的監控與管理系統的設計[J].微計算機信息,2007,1(2):130-140.
[4] 蘭林俊,黃繼海,陳勝軍.基于GPRS的遠程家庭防盜監控系統設計[J].計算機安全,2008(03):65-68.
[5] 陳強.基于AT89S52型單片機的CAN總線智能通信節點設計[J].電腦知識與技術,2007(17):1234-1235.