由AT89C51/55構(gòu)成的溫濕度自動檢測系統(tǒng)
系統(tǒng)結(jié)構(gòu)如圖1所示,采用ATMEL公司生產(chǎn)的51系列單片機(jī)AT89C55和AT89C51為核心,其中主機(jī)采用AT89C55、從機(jī)采用AT89C51。從機(jī)負(fù)責(zé)64點(diǎn)的數(shù)據(jù)檢測,各檢測點(diǎn)的溫度和濕度經(jīng)過溫、濕度傳感器及其轉(zhuǎn)換電路轉(zhuǎn)變?yōu)殡妷盒盘枺唤?jīng)過矩陣網(wǎng)絡(luò)進(jìn)行信號選擇,所得信號送到相應(yīng)的信號放大整理電路放大,再進(jìn)入A/D轉(zhuǎn)換器,進(jìn)行模數(shù)轉(zhuǎn)換,將數(shù)字量送入從機(jī),再經(jīng)從機(jī)的數(shù)據(jù)處理,送給LED進(jìn)行顯示,同時定時傳送給主機(jī)AT89C55;主機(jī)負(fù)責(zé)收集各糧倉內(nèi)的數(shù)據(jù)(可監(jiān)測50~100個糧倉),實(shí)現(xiàn)數(shù)據(jù)的保存、打印以及調(diào)用歷史數(shù)據(jù),并可巡回顯示各糧倉的及時溫濕度及報警狀態(tài)。
AT89C55/51芯片是由ATMEL公司推出的51系列8位單片機(jī),AT89C55片內(nèi)主要有20KB Flash存儲器、256字節(jié)片內(nèi)RAM,4個8位的雙向可尋址I/O口,1個全雙工UART(通用異步接收發(fā)送器)的串行接口、3個16位的定時器/計(jì)數(shù)器、多個優(yōu)先級的嵌套中斷結(jié)構(gòu),以及一個片內(nèi)振蕩器和時鐘電路。
本系統(tǒng)中主機(jī)利用了AT89C55豐富的20KB閃存資源永久保存實(shí)時的測量信息、歷史的測量數(shù)據(jù)等關(guān)鍵結(jié)果,從機(jī)完成數(shù)據(jù)采集、傳送。主機(jī)位于監(jiān)控室,從機(jī)位于各糧倉內(nèi),主從機(jī)之間有一定的距離,信號的傳輸采用串行異步通信方式,AT89C55/51單片機(jī)內(nèi)部集成的UART模塊,適合于同其他計(jì)算機(jī)系統(tǒng)以及單片機(jī)外擴(kuò)的外設(shè)芯片進(jìn)行通信,可實(shí)現(xiàn)全雙工異步、半雙工同步主控和半雙工同步從控三種工作方式。本系統(tǒng)中利用其UART模塊工作于全雙工異步通信方式,其中TX為發(fā)送線、RC為接收線,利用RS-422驅(qū)動器和接收器,如MC3487和MC3486芯片,實(shí)現(xiàn)信號的穩(wěn)定傳輸。
?
2傳感器與矩陣測試網(wǎng)絡(luò)的設(shè)計(jì)
測量電路由傳感器、矩陣測量網(wǎng)絡(luò)、多路模擬開關(guān)及放大電路的組成。測溫范圍:-45~+45℃,±0.5℃;測濕范圍:0~99%RH,±0.8%RH。溫度傳感器選用集成溫度傳感器AD590M,其特點(diǎn)為線性電流輸出1μA/K;溫度范圍-55~150℃;電壓輸入/電流輸出;激光修正到±0.5℃校準(zhǔn)精度(AD590M),線性度可達(dá)±0.3℃/FS。使用時可將AD590M插入糧倉堆內(nèi)。針對濕度測量范圍及精度要求,濕度傳感器選用濕敏集成傳感器IH-3602。這是一種電容式濕敏傳感器,內(nèi)含調(diào)理電路和溫度補(bǔ)償電路,輸出為0.8~4V的直流電壓,可經(jīng)多路開關(guān)直接輸入A/D轉(zhuǎn)換器。
矩陣測量網(wǎng)絡(luò)由多路模擬開關(guān)CD4051、CD4052和溫度傳感器AD590、濕度傳感器IH-3602組成,其連接方式如圖2所示。測溫(測濕)矩陣由CD4051的8個模擬開關(guān),CD4052的4個模擬開關(guān)和32個AD590,(32個IH-36021)組成。各個測量元件的選通由地址碼控制,其中由CD4051、CD4052,AD590、IH-3602組成的矩陣網(wǎng)絡(luò)中,兩片CD4052的4輸入線A、B及CD4051的3輸入線A、B、C共7位地址碼由AT89C51的P0口提供,CD4052的INH直接接高電平,而CD4051的INH由P2口提供,溫度和濕度輸出信號即CD4052的OUT分別接溫濕度放大電路。
?
3系統(tǒng)軟件設(shè)計(jì)
該多路溫濕度監(jiān)測系統(tǒng)的軟件采用模塊化方法設(shè)計(jì),主要包括主機(jī)程序、從機(jī)程序兩大部分。從機(jī)程序設(shè)計(jì)通常先進(jìn)行初始化,如設(shè)置中斷、定時器、串行口、外部可編程器件的初始化等,然后循環(huán)執(zhí)行主要功能,如定時、數(shù)據(jù)采集、數(shù)字濾波、顯示以及定時將數(shù)據(jù)傳遞給主機(jī)。主機(jī)定時接收從機(jī)發(fā)送的采集信號,保存并實(shí)時顯示,其流程如圖3所示。上電復(fù)位后顯示不同糧倉位號、溫濕度值及其測量時間,并調(diào)用鍵盤管理程序模塊及接收程序模塊。為防止程序跑飛,主從機(jī)分別設(shè)計(jì)看門狗電路以保證AT89C55和AT89C51正常工作。
4結(jié)束語
本設(shè)計(jì)中由于采用了AT89C51/55單片機(jī),性能可靠電路簡單,適于批量生產(chǎn);而且,系統(tǒng)中還可充分利用AT8951/55中未用到的軟件硬件資源,系統(tǒng)有再開發(fā)性。
參考文獻(xiàn)
[1]余永權(quán).ATMEL89系列單片機(jī)應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2002.
[2]孫傳有.測控系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2002.