摘 要:對溫濕度的精確檢測和遠距離傳輸越來越受到人們的重視,針對這一情況,研制一種高精度、高穩(wěn)定性、低成本且實用的分布式環(huán)境溫濕度檢測控制系統(tǒng)顯得非常重要。而利用CAN總線實現(xiàn)遠距離節(jié)點間和PC機的實時通信,具有結構簡單、可靠性高、成本低、實時性好、安裝維護方便且便于功能擴展等優(yōu)點,提高了管理水平和工作效率,所以將CAN總線應用于溫濕度控制具有較好的前景。
關鍵詞:CAN總線;溫濕度;實時通信
1 前言
本文設計了一個基于CAN總線的溫濕度智能節(jié)點。該系統(tǒng)由單片機最小系統(tǒng)、濕度檢測電路、溫度檢測電路、A/D轉換電路、顯示電路、CAN控制器、CAN收發(fā)器構成。
2 系統(tǒng)總體設計
本設計是一個基于CAN總線的溫濕度檢測節(jié)點,節(jié)點采集溫濕度模擬信號經(jīng)A/D轉換送入主控制器,并將節(jié)點的主控制器連接在CAN總線上,可實現(xiàn)遠程通信和監(jiān)控。系統(tǒng)結構如下圖1所示。
3 硬件設計
3.1 單片機最小系統(tǒng)
單片機最小系統(tǒng)由單片機AT89C52、時鐘電路和復位電路構成[1]。
3.2 溫度檢測電路
本設計選用LM35為溫度傳感器,LM35溫度傳感器輸出電壓與攝氏溫標的線性度好,而且輸出模擬量信號適合遠距離傳輸,LM35輸出與溫度值對應的電壓信號經(jīng)放大10倍后變?yōu)闃藴市盘査屯鵄/D轉換電路。
3.3 A/D轉換電路
LM35輸出的電壓信號要轉換為對應的數(shù)字信號才可被單片機接收,本設計選取ADC0809作為A/D轉換器即可滿足要求,由于ADC0809的時鐘信號為500KHZ,故將單片機的ALE端接四分頻器后給轉換器作為時鐘。
3.4 濕度傳感器電路
本設計的濕度檢測電路由555多諧振蕩器來實現(xiàn),HS1101傳感器的電容值與溫室濕度成線性關系,空氣濕度通過555測量振蕩電路后,就轉變?yōu)榕c之呈反比例的頻率信號,后將頻率信號送單片機的計數(shù)器即可計算出濕度值。
3.5 顯示電路
由于智能節(jié)點的需要實時顯示室內(nèi)的溫濕度值和報警信息,數(shù)據(jù)較為復雜,故選擇LCD1602液晶顯示器,可以顯示16×2 個字符,具有顯示質量高、數(shù)字式接口、體積小、重量輕、功耗低等優(yōu)點,可以滿足設計的要求。
3.6 CAN接口電路
CAN接口電路主要由CAN控制器SJA1000、光電耦合器6N137和CAN驅動器PCA82C250構成。CAN總線控制器的地址/數(shù)據(jù)復用總線與單片機的P0口相連,并將中斷輸出到單片機中斷口,總線控制器串行數(shù)據(jù)輸出線(TX)和串行數(shù)據(jù)輸入線(RX)分別經(jīng)光電耦合電路連接至總線驅動器82C250,總線驅動器通過差分發(fā)送和接收功能的兩個總線端CANH和CANL連接至CAN總線電纜[2]。
⑴總線控制器。CAN總線控制器提供了與單片機控制器的數(shù)據(jù)線路接口,單片機通過對控制器編程設置其工作模式,控制其工作狀態(tài),啟動CAN報文的發(fā)送并對反饋報文接收予以響應,即CAN總線控制器實現(xiàn)了CAN協(xié)議中最復雜的數(shù)據(jù)鏈路功能。本設計的總線控制器選用SJA1000。
⑵光電耦合器。由于總線傳輸距離遠,現(xiàn)場環(huán)境干擾大,為了增強抗干擾能力,在SJA1000與PCA82C250間采用高速光耦6N137實現(xiàn)總線電氣隔離。為了有效隔離,6N137兩端的電源使用B0505S-1W隔離,而且可以減少CAN總線有效回路信號的傳輸延遲時間。
⑶CAN收發(fā)器。CAN總線收發(fā)器實現(xiàn)了物理層的功能,一方面將控制器發(fā)送信號轉化為符合CAN物理層標準的信號,進行放大、傳輸;另一方面將總線上收到的信號轉變?yōu)榭刂破魉芙邮盏碾娖叫盘?。其本質是提供了CAN控制器與物理總線之間的接口:即為總線提供差分信號的發(fā)送功能,為控制器提供差分信號的接收功能。本設計的CAN收發(fā)器選擇PCA82C250。
4 軟件設計
節(jié)點程序主要包括主程序、CAN控制器初始化程序、濕度檢測中斷程序、接收程序和發(fā)送程序。其中主程序主要完成中斷初始化、鍵盤掃描、溫度檢測和溫濕度顯示及報警等功能;CAN控制器初始化程序主要完成SJA1000的初始化設置;濕度檢測中斷程序完成濕度傳感器的脈沖計數(shù)及對應濕度的計算;接收程序由單片機的外部中斷完成,主要實現(xiàn)節(jié)點接收報文的處理;發(fā)送程序主要實現(xiàn)節(jié)點報文的發(fā)送。
[參考文獻]
[1]謝維成,楊加國,主編.<<單片機原理與應用及C51程序設計>>[M].北京:清華大學出版社,2006年.
[2]牛躍聽,周立功,方丹.<