黃小東,習(xí)友寶
(電子科技大學(xué) 電子工程學(xué)院,成都 611731)
作為兩個比較重要的物理量,溫度和濕度在科學(xué)研究、工農(nóng)業(yè)生產(chǎn)、倉庫管理、日常生活等方面都需要進(jìn)行精確的測量。由于傳感器技術(shù)的發(fā)展,溫濕度測量技術(shù)也正朝著微型化、智能化、系統(tǒng)化的方向發(fā)展。Atmel公司推出的AT32UC3A0512是一款基于AVR32UC RISC處理器核的32位SoC微控制器,專注于低功耗、高代碼密度、高性能、低成本等方面的應(yīng)用。本檢測儀基于AT32U C3A0512微控制器,具有功耗低、便攜、使用方便等特點。
本檢測儀主要包括電源、主控制電路、溫濕度采集電路、LCD顯示電路、ZigBee發(fā)送電路等幾個部分,檢測儀硬件系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
圖1 檢測儀硬件系統(tǒng)結(jié)構(gòu)框圖
溫濕度采集電路采集環(huán)境的溫濕度數(shù)據(jù),并將數(shù)據(jù)送到主控制電路,AT32UC3A0512作為主控制電路的微控制器對數(shù)據(jù)進(jìn)行處理,AT32UC3A0512將處理后的數(shù)據(jù)送到LCD上進(jìn)行實時顯示,并可通過ZigBee發(fā)送電路發(fā)送數(shù)據(jù)。
本檢測儀的供電電源為7.2V的可充電電池,通過穩(wěn)壓芯片AMS1117-3.3轉(zhuǎn)換成3.3V電壓為檢測儀供電,電源電路如圖2所示。
圖2 電源電路
AT32UC3A0512是一款高性能、低功耗的32位SoC微控制器,在對性價比敏感的嵌入式應(yīng)用中具有明顯優(yōu)勢。其內(nèi)部集成了GPIO、多層次的總線系統(tǒng)、512KB高速Flash、64KB高速可全速單周期訪問的SRAM、USB 2.0控制器與接口、以太網(wǎng) MAC 10/100Mbps接口、同步串行協(xié)議控制器、通用同步/異步收發(fā)器(USART)、16位PWM控制器、10位高性能ADC、16位音頻比特流DAC等許多常用電路和模塊,大大簡化了外圍電路設(shè)計,性能也有較大提高。主控制電路以AT32UC3A0512為核心,其外圍電路主要有晶振電路和按鍵復(fù)位電路。晶振電路為AT32UC3A0512提供振蕩源,按鍵復(fù)位電路中當(dāng)按鍵被按下時進(jìn)行上電復(fù)位,AT32UC3A0512的工作頻率可達(dá)66MHz。
DHT11數(shù)字溫濕度傳感器含有已校準(zhǔn)的數(shù)字信號輸出,包括一個電阻式感濕元件和一個NTC測溫元件,具有功耗低、抗干擾能力強、穩(wěn)定性好、性價比高等特點,在醫(yī)療、消費電子、氣象、自動控制等領(lǐng)域有較廣泛的應(yīng)用。DHT11采用單總線技術(shù),與微控制器接口簡單,溫濕度采集電路如圖3所示。
DHT11溫濕度測量分辨率為8位,數(shù)據(jù)分為整數(shù)部分和小數(shù)部分,一次完整的數(shù)據(jù)傳輸為40位,具體數(shù)據(jù)格式為:
8位濕度整數(shù)數(shù)據(jù)+8位濕度小數(shù)數(shù)據(jù)+8位溫度整數(shù)數(shù)據(jù)+8位溫度小數(shù)數(shù)據(jù)+8位校驗數(shù)據(jù)
數(shù)據(jù)傳送正確時,校驗數(shù)據(jù)等于“8位濕度整數(shù)數(shù)據(jù)+8位濕度小數(shù)數(shù)據(jù)+8位溫度整數(shù)數(shù)據(jù)+8位溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。
圖3 溫濕度采集電路
本檢測儀采用圖形點陣液晶顯示器TG12864E進(jìn)行數(shù)據(jù)顯示,TG12864E主要由行/列驅(qū)動器和128×64全點陣液晶顯示器組成,可以進(jìn)行圖形顯示。進(jìn)行漢字顯示時,每個漢字為16×16點陣,可以顯示4行8列。為了減小功耗,采用串口接線工作方式,LCD顯示電路如圖4所示。
圖4 LCD顯示電路
AT86RF212是一款專為低成本的IEEE 802.15.4標(biāo)準(zhǔn)ZigBee技術(shù)、6LoWPAN技術(shù)與高數(shù)據(jù)傳輸速率的ISM應(yīng)用而設(shè)計的低功耗、低電壓700/800/900MHz頻段收發(fā)器,提供了天線和微控制器之間的完整無線電接口。
利用AT86RF212設(shè)計的ZigBee發(fā)送電路如圖5所示。平衡/不平衡轉(zhuǎn)換器0900BL18B100用于將50Ω單端RF輸入阻抗轉(zhuǎn)換成100ΩRF端口差分輸入阻抗,C1與C2提供RF輸入的交流耦合,微控制器通過SPI接口與其通信。數(shù)據(jù)先在微控制器中產(chǎn)生PHY字節(jié)頭(PHR)和PHY服務(wù)數(shù)據(jù)單元(PSDU),然后通過SPI接口傳輸?shù)紸T86RF212的數(shù)據(jù)緩沖區(qū)并自動加上同步頭SHR,接著使AT86RF212處于發(fā)送狀態(tài),最后通過天線將數(shù)據(jù)發(fā)送出去。SLP_TR引腳主要使AT86RF212芯片工作于睡眠、發(fā)送或接收狀態(tài);串行時鐘線SCLK引腳、主機輸入/從機輸出數(shù)據(jù)線MISO引腳、主機輸出/從機輸入數(shù)據(jù)線MOSI引腳、低電平有效的從機選擇引腳,這4個引腳為SPI接口;DVSS為數(shù)字接地端。
本檢測儀的軟件開發(fā)工具為AVR Studio 5,使用C語言進(jìn)行編程。AVR Studio 5是Atmel公司最新開發(fā)的針對AVR單片機的集成開發(fā)環(huán)境,在AVR Studio 4的基礎(chǔ)上增加了對32位微控制器軟件開發(fā)的支持,功能更強,操作簡單,使用方便。
進(jìn)行檢測儀軟件開發(fā)時,采用模塊化的編程方法,主要分為主程序、溫濕度采集子程序、LCD液晶顯示子程序、ZigBee發(fā)送子程序等幾個部分。溫濕度采集子程序是檢測儀軟件開發(fā)的關(guān)鍵部分,主要有DHT11初始化函數(shù)、DHT11與AT32UC3A0512通信函數(shù)、DHT11數(shù)據(jù)讀取函數(shù)等。由于接收到的數(shù)據(jù)的每一個字節(jié)的位為由低位到高位,每一個字節(jié)數(shù)據(jù)需要反序。DHT11與AT32UC3A0512通信函數(shù)、DHT11數(shù)據(jù)讀取函數(shù)的程序代碼如下:
圖5 ZigBee發(fā)送電路
本文介紹了一種基于AT32UC3A0512單片機的溫濕度檢測儀的設(shè)計與實現(xiàn),具有體積小、功耗低等特點,在實際使用時得到了較好的效果。在設(shè)計時主要考慮了低功耗和便攜的要求,采用3.3V低電壓供電,并對電源進(jìn)行了一定的管理。本檢測儀可以應(yīng)用于蠶室、病房、養(yǎng)殖廠等多種環(huán)境。
[1]張中華,王澤勇,高曉蓉,等.基于SHTl0的便攜式數(shù)顯溫濕度檢測儀的設(shè)計[J].現(xiàn)代電子技術(shù),2009(17):137-139.
[2]Atmel Corporation.AT32UC3A0512Datasheet[EB/OL].[2011-10].http://www.atmel.com/dyn/resources/prod_documents/doc32058.pdf.
[3]倪天龍.單總線傳感器DHT11在溫濕度測控中的應(yīng)用[J].單片機與嵌入式系統(tǒng)應(yīng)用,2010(6):60-62.
[4]Sensirion Company.DHT11Datasheet[EB/OL].[2011-10].http://www.sensirion.com.
[5]Tinsharp Industrial.TG12864EApplication Notes[EB/OL].[2011-10].http://www.Tinsharp.com.
[6]Atmel Corporation.AT86RF212Datasheet[EB/OL].[2011-10].http://www.atmel.com/dyn/rsources/prod_documents/doc8168.pdf.
[7]Atmel Corporation.AVRStudio5Introduction [EB/OL].[2011-10].http://www.atmel.com/dyn/.products/tools_Card.asp?source=cms&tool_id=17212.
[8]郭淵博,楊奎武,趙儉,等.ZigBee技術(shù)與應(yīng)用:CC2430設(shè)計、開發(fā)與實踐[M].北京:國防工業(yè)出版社,2010:1-30.
[9]張冬林,李鑫,戴梅,等.基于DHT11的低成本蠶室溫濕度自動控制系統(tǒng)的設(shè)計[J].現(xiàn)代農(nóng)業(yè)科技,2010(18):14-15.