鄭晨曦 吳次南
摘要:當(dāng)前常見(jiàn)的溫濕度采集設(shè)備普遍較大,使用比較麻煩。因此,針對(duì)一些特定環(huán)境對(duì)溫濕度采集設(shè)備小型化、精度要求高、使用方便的需要,設(shè)計(jì)了一種使用單片機(jī)為控制芯片,具有高精度的溫濕度采集方案,并在Protues軟件中進(jìn)行了功能仿真。本文從整體設(shè)計(jì)、單片機(jī)、溫濕度傳感器等方面進(jìn)行了闡述。
關(guān)鍵詞:溫濕度;采集;小型;設(shè)計(jì);仿真
中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)08-0262-03
溫濕度是環(huán)境中最基本的參數(shù)變量,與人們生產(chǎn)生活息息相關(guān)。一款小型的溫濕度的采集設(shè)備,可以準(zhǔn)確又方便地獲知溫濕度數(shù)據(jù)具有一定現(xiàn)實(shí)意義。國(guó)外的溫濕度監(jiān)控系統(tǒng)相對(duì)比較先進(jìn),無(wú)論是傳感器的測(cè)量精度、反應(yīng)速度、穩(wěn)定性、功能多樣性,還是使用環(huán)境方面技術(shù)都比較領(lǐng)先。普通的溫濕度采集系統(tǒng)中的溫濕度測(cè)量均采納熱敏電阻與濕敏電容,這種傳統(tǒng)的模擬式溫濕度傳感器一般都必須設(shè)計(jì)信號(hào)調(diào)理電路并通過(guò)繁瑣的校準(zhǔn)和標(biāo)定過(guò)程,因而測(cè)量精度很難確保,且在線性度、重復(fù)性、互換性等方面也存在問(wèn)題。
環(huán)境的監(jiān)測(cè)應(yīng)用廣泛,在當(dāng)今使用最廣泛的MCU就是單片機(jī)了,AT89C51使用廣泛,價(jià)格低廉,在常見(jiàn)的儀器、工業(yè)控制等領(lǐng)域的發(fā)揮著極其重要的作用,用其作為溫濕度檢測(cè)控制系統(tǒng)的實(shí)例也很多。使用A T89C51作為溫濕度采集設(shè)備的處理單元可以對(duì)環(huán)境的溫度金額濕度進(jìn)行自動(dòng)檢測(cè),而且AT89C51單片機(jī)目前使用多,專注于51單片機(jī)的研究人員多,具有相對(duì)較多的文獻(xiàn)資料參考,對(duì)于本設(shè)計(jì)來(lái)說(shuō)AT89C51單片機(jī)有超小尺寸的封裝,適合做成小型的溫濕度采集設(shè)備。使用該型號(hào)單片機(jī)設(shè)的系統(tǒng),可以及時(shí)、精確的反映環(huán)境內(nèi)溫度以及濕度的變化趨勢(shì),結(jié)果直觀。在軟件設(shè)計(jì)過(guò)程中也可以設(shè)置到一定溫度范圍內(nèi)報(bào)警提示,在濕度控制方面也是如此。將此系統(tǒng)應(yīng)用到對(duì)溫濕度有要求的環(huán)境中無(wú)疑可以節(jié)省不少人力物力。
系統(tǒng)實(shí)現(xiàn)的功能主要有對(duì)環(huán)境溫濕度進(jìn)行循環(huán)檢測(cè),通過(guò)采集的溫濕度與設(shè)定值作對(duì)比,及時(shí)通過(guò)報(bào)警裝置進(jìn)行報(bào)警。
1系統(tǒng)總體設(shè)計(jì)
采用溫濕度測(cè)量、控制技術(shù)等技術(shù),使用應(yīng)用廣泛的單片機(jī)作為控制核心,用傳感器測(cè)量外界溫濕度,構(gòu)成溫濕度測(cè)量監(jiān)控系統(tǒng)。系統(tǒng)硬件方面主要有測(cè)量電路、顯示模塊、報(bào)警電路。根據(jù)系統(tǒng)要求選用的器件主要有:AT89C51單片機(jī)、溫濕度傳感器SHT11、AMPIRE128x64顯示模塊、報(bào)警裝置蜂鳴器等。
在系統(tǒng)工作時(shí),SHT11溫濕度傳感器采集的環(huán)境溫濕度數(shù)字信號(hào)會(huì)在芯片內(nèi)部直接轉(zhuǎn)換成數(shù)字信號(hào),該信號(hào)直接傳輸給單片機(jī)經(jīng)由單片機(jī)進(jìn)行處理,再把處理過(guò)的數(shù)據(jù)顯示在LCD上;當(dāng)單片機(jī)得到的數(shù)值符合設(shè)定的范圍時(shí),蜂鳴報(bào)警器發(fā)出報(bào)警聲,單片機(jī)編程語(yǔ)言很多,C語(yǔ)言被大部分研發(fā)人員所采用。
本系統(tǒng)的核心為溫濕度數(shù)據(jù)的采集,單片機(jī)作為控制裝置,負(fù)責(zé)中心運(yùn)算和控制,協(xié)調(diào)系統(tǒng)各個(gè)模塊的工作。
2系統(tǒng)硬件設(shè)計(jì)
2.1溫濕度傳感器
SHT11是瑞士Sensirion公司生產(chǎn)的數(shù)字式溫濕度傳感器,其中溫度傳感器由能隙材料制成的溫度敏感元件,濕度傳感器采用電容性聚合體濕度敏感元件。傳感器的校準(zhǔn)系數(shù)存儲(chǔ)在芯片內(nèi)部的OTP內(nèi)存中。經(jīng)校準(zhǔn)的相對(duì)溫濕度傳感器與一個(gè)14位的高精度ADC相連接,可直接將處理過(guò)的數(shù)字溫濕度二進(jìn)制信號(hào)送給,2c總線器件,最后將信號(hào)轉(zhuǎn)換為滿足12C總線協(xié)議的串行數(shù)字信號(hào)。
因?yàn)閭鞲衅髋c電路結(jié)合在一起,因而該傳感器具備比其他類型的濕度傳感器更為優(yōu)越的性能。一個(gè)是傳感器信號(hào)的強(qiáng)度增加,這會(huì)增大了傳感器的抗干擾性,保證了傳感器的長(zhǎng)期穩(wěn)定工作,而A/D數(shù)模轉(zhuǎn)換的同時(shí)完成,降低了傳感器對(duì)干擾噪聲信號(hào)的敏感度。傳感器可直接通過(guò)12C總線與A T89C51單片機(jī)系統(tǒng)連接。
SHT11需要2.4-5.5V范圍內(nèi)的電壓供電以保證正常運(yùn)行,所以在本設(shè)計(jì)中采用容易得到的3.3V供電電壓。為了得到一個(gè)純凈且幅度相對(duì)穩(wěn)定的電源,在VDD與GND引腳之間接一個(gè)100nF的電容,用來(lái)去耦濾波。SHT11的串行接口在很多方面做了處理和優(yōu)化,在傳感器信號(hào)讀取和電源損耗方面表現(xiàn)突出。SHT11與微處理器的連接見(jiàn)圖1。
SCK用于微處理器控制SHT11的工作頻率。DATA引腳為三態(tài)結(jié)構(gòu),用于單片機(jī)和SHT11之間數(shù)據(jù)的傳輸。當(dāng)傳感器接收到相關(guān)指令后時(shí),SCK上升沿時(shí)DATA有效,DATA在SCK下降沿之后改變田,在SCK高電平時(shí)一直保持穩(wěn)定。
2.2AT89C51單片機(jī)
AT89C51可通過(guò)編程設(shè)置成省電模式。比如在空閑模式下,MCU暫停工作,定時(shí)計(jì)數(shù)器、RAM、串行口、中斷系統(tǒng)則繼續(xù)工作。在掉電模式時(shí)凍結(jié)振蕩器從而保存只讀存儲(chǔ)器的數(shù)據(jù),停止芯片其他功能直至外中斷激活或硬件復(fù)位,以保證數(shù)據(jù)不會(huì)丟失。本系統(tǒng)中選用價(jià)格較低、工作穩(wěn)定、使用廣泛的AT89C51單片機(jī)作為整個(gè)系統(tǒng)的控制器,并且還可以做小采集設(shè)備的尺寸,使用中方便。
時(shí)鐘電路是給單片機(jī)工作時(shí)提供所必須的時(shí)鐘方波信號(hào),其實(shí)單片機(jī)的本身就是一個(gè)復(fù)雜的時(shí)序電路。為實(shí)現(xiàn)各種工作方式,A T89C51在CLK信號(hào)的控制下嚴(yán)格地按時(shí)序執(zhí)行指令進(jìn)行工作,時(shí)鐘信號(hào)的質(zhì)量能嚴(yán)重影響系統(tǒng)的工作穩(wěn)定性。因?yàn)闀r(shí)鐘頻率負(fù)責(zé)控制單片機(jī)的運(yùn)行秩序,所以單片機(jī)速度也在一定程度上受時(shí)鐘信號(hào)影響。設(shè)計(jì)一個(gè)穩(wěn)定的時(shí)鐘電路對(duì)系統(tǒng)的正常穩(wěn)定運(yùn)行至關(guān)重要。A T89C51單片機(jī)XTAL1引腳與XTAL2引腳的內(nèi)部有一個(gè)用于構(gòu)成振蕩的高增益反相放大器。這兩個(gè)引腳跨接石英振蕩器和微調(diào)電容可以構(gòu)成一個(gè)穩(wěn)定的振蕩器。外部提供時(shí)鐘的工作時(shí),外部時(shí)鐘源直接接到XTAL1接口,而XTAL2端直接懸空即可,本設(shè)計(jì)采用在XTAL1與XTAL2之間跨接石英振蕩器的方式提供時(shí)鐘信號(hào)(如圖2)。
電路中C1、C2電容值為30PF,電容值若太小直接影響振蕩頻率的穩(wěn)定和快速性。晶振頻率一般選擇2MHZ到12MHZ,在一定范圍內(nèi)晶振頻率越高單片機(jī)的速度就越快,但同時(shí)對(duì)存儲(chǔ)器速度也就提出了更高的要求。從系統(tǒng)穩(wěn)定性方面考慮,采用穩(wěn)定性相對(duì)更好的NPO電容,晶振頻率為12MHZ。
單片機(jī)的初始化操作就是復(fù)位,在給單片機(jī)的RST引腳(復(fù)位引腳)上加大于2個(gè)機(jī)器周期或者24個(gè)振蕩周期的高電平信號(hào)就可使51單片機(jī)復(fù)位。在一般的設(shè)計(jì)中復(fù)位電路有采用自動(dòng)復(fù)位或者按鈕復(fù)位兩種方式。上電復(fù)位是通過(guò)外部電路給電容充放電的原理給RST引腳一個(gè)短的高電平信號(hào)(如圖3所示),次信號(hào)隨著電源對(duì)1uF的電容進(jìn)行充電而逐漸從高電平回落,實(shí)際上電容的充電時(shí)間決定RST引腳上高電平持續(xù)的時(shí)間。為保證單片機(jī)能可靠地復(fù)位,RST引腳上的高電平必須維持足夠長(zhǎng)的時(shí)間,也就是選擇一個(gè)相對(duì)容量較大的電容。
2.3液晶顯示模塊設(shè)計(jì)
本設(shè)計(jì)是利用AT89C51單片機(jī)的串行口與顯示器I/O接口相連。LCD的顯示原理是利用液晶通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制的物理特性,有電壓的區(qū)域就顯示,而通過(guò)控制通斷電就可以顯示出不同的圖形或者字符。AMPIRE128*64顯示器整個(gè)屏幕分左、右兩個(gè)屏,每個(gè)半屏右8頁(yè),每頁(yè)有8行,數(shù)據(jù)是豎行排列。顯示一個(gè)字要16*16點(diǎn),全屏有128*64個(gè)點(diǎn),故可顯示32個(gè)中文漢字。每?jī)身?yè)顯示一行漢字,可顯示4行漢字,每行8個(gè)漢字,共32個(gè)漢字。而顯示數(shù)據(jù)則要16*8個(gè)點(diǎn),顯示數(shù)據(jù)是漢字的兩倍。顯示電路的連接如圖3-7所示。也即單片機(jī)的P0.0,P0.1,P0.2,P0.3,P0.4,P0.5,P0.6,P0.7,P2.0,P2.1,P2.2,P2.3,P2.4,分別與顯示器的DB0,DB1,DB2,DB3,DB4,DBS,DB6,DB7,CS2,CS1,EN,RVV,RS端口連接(如圖4所示)。
2.4報(bào)警電路
在一些特殊的應(yīng)用場(chǎng)景,對(duì)溫濕度有一定的要求,本設(shè)計(jì)是為在溫濕度監(jiān)測(cè)過(guò)程中如果溫濕度的超出設(shè)定值的范圍而提示報(bào)警,蜂鳴器與單片機(jī)的P1.5口相連,通過(guò)控制P1.5口的電平高低實(shí)現(xiàn)報(bào)警。比如溫濕度過(guò)限時(shí),P1.5口被置1,報(bào)警系統(tǒng)開(kāi)始工作;相反若P1.5口處于低電位,則蜂鳴器不工作也就是不報(bào)警。
3軟件設(shè)計(jì)
系統(tǒng)軟件部分主要有系統(tǒng)初始化模塊,傳感器監(jiān)測(cè)模塊,LCD顯示模塊,報(bào)警模塊,報(bào)警值判斷與控制模塊幾個(gè)部分組成。
單片機(jī)主程序的設(shè)計(jì)過(guò)程中應(yīng)該重視如下幾個(gè)問(wèn)題:1)溫濕度顯示;2)溫濕度值轉(zhuǎn)換;3)越限報(bào)警和處理。
SHT11傳感器的轉(zhuǎn)換公式如下:
溫度轉(zhuǎn)換公式:T=d1+d2*SOt
公式中的參數(shù)dl=-40,d2=0.01
相對(duì)濕度轉(zhuǎn)換公式:
RHline=C1+C2*SOrh+C3*SOrh*SOrhr(檢測(cè)數(shù)據(jù)的線性化SOrh為單片機(jī)接收到的數(shù)據(jù))
RHtrue=(T-25)*(tl+t2*SOrh)+RHline
公式中的參數(shù):C1=-4,C2=0,0405,C3=-0.0000028,t1=0.01,t2=0.00008(適用于12位測(cè)量精度)
4系統(tǒng)仿真
PROTUES是單片機(jī)設(shè)計(jì)中使用非常廣泛的EDA工具(仿真軟件),由英國(guó)的Labcenter公司開(kāi)發(fā)。PRO-TUES軟件在做單片機(jī)設(shè)計(jì)中使用方便,它可以滿足從原理圖布置、單片機(jī)代碼調(diào)試、外圍電路協(xié)同仿真等過(guò)程直接切換到PCB設(shè)計(jì),做到了從概念設(shè)計(jì)到仿真驗(yàn)證再到實(shí)物電路設(shè)計(jì)的一鍵切換。PROTUES軟件中包含有混合模式的仿真器以及VSM嵌入式仿真器,提供了許多的仿真設(shè)備和一些經(jīng)常使用的大量元器件,其內(nèi)部有各種型號(hào)單片機(jī)、各種邏輯電路、調(diào)試工具,比如各種電子測(cè)試儀器:邏輯分析儀、串口終端、示波器、信號(hào)發(fā)生器等。以及各種顯示設(shè)備,如模擬儀表、數(shù)字儀表、噪聲與失真信號(hào)顯示器等,另外還有各種調(diào)試信號(hào),直流、交流、脈沖及各種變化信號(hào),它使得PROTUES可以同時(shí)仿真模擬數(shù)字電路多種系列單片機(jī)。
系統(tǒng)仿真使用C語(yǔ)言編程,在PROTUES仿真軟件設(shè)置關(guān)聯(lián)程序,能在虛擬的LCD準(zhǔn)確顯示溫度和濕度值如圖5,在溫濕度超過(guò)設(shè)定值能實(shí)時(shí)報(bào)警。
5結(jié)束語(yǔ)
為順應(yīng)當(dāng)今溫濕度數(shù)據(jù)采集設(shè)備小型化、功能簡(jiǎn)單、性能可靠的趨勢(shì),使用51單片機(jī)和成熟的SHT11溫濕度傳感器芯片設(shè)計(jì)一種可以小型化的溫濕度數(shù)據(jù)采集設(shè)備,用C語(yǔ)言編程通過(guò)PROTUES軟件仿真,實(shí)現(xiàn)了溫濕度數(shù)據(jù)采集的功能。51單片機(jī)價(jià)格低廉、應(yīng)用廣泛,因此該設(shè)計(jì)方案具有明顯優(yōu)勢(shì),在實(shí)際應(yīng)用中具有良好的參考和應(yīng)用價(jià)值。