基于智能傳感器的溫/濕度監(jiān)控系統(tǒng)設(shè)計(jì)
4系統(tǒng)的程序設(shè)計(jì)
系統(tǒng)軟件采用MCS一51匯編語言編寫.采用模塊化的程序設(shè)計(jì)方法.主要包括初始化模塊、數(shù)據(jù)采集、數(shù)據(jù)處理、顯示、報(bào)警、打印等模塊。系統(tǒng)的程序框圖如圖4所示。
由于SHTl5中含有存儲(chǔ)器,所以設(shè)置初始化程序主要是對(duì)單片機(jī)和SHTl5的存儲(chǔ)器中的一些數(shù)據(jù)置初值,同時(shí)對(duì)單片機(jī)的初態(tài)進(jìn)行初始化。該系統(tǒng)是多通道的測(cè)量系統(tǒng).SHTl5上電后經(jīng)過10ms時(shí)間就進(jìn)入休眠狀態(tài),只有當(dāng)單片機(jī)發(fā)出測(cè)量命令后,SHTl5才被“喚醒”而進(jìn)行工作,所以.單片機(jī)循環(huán)對(duì)各個(gè)傳感器發(fā)出溫,濕度測(cè)量命令,實(shí)現(xiàn)多通道的溫,濕度測(cè)量。SHTl5的命令集如表2所列。
由于SHT15輸出的數(shù)據(jù)與被測(cè)值呈非線性關(guān)系,因而,為了獲得準(zhǔn)確的數(shù)據(jù),必須對(duì)讀數(shù)值進(jìn)行非線性補(bǔ)償。對(duì)濕度進(jìn)行非線性補(bǔ)償,8位數(shù)據(jù)通常采用下式進(jìn)行補(bǔ)償:
RH=(1.43N一5.127),256(0≤Ⅳ≤107)(1)
RH=(1.11N一28.93)/256(108≤N≤255)(2)
對(duì)于溫度傳感器,通常采用下式進(jìn)行非線性補(bǔ)償:
T=d+d2M(3)
式中的N和M分別為相對(duì)濕度傳感器與溫度傳感器的輸出值,d1和d2為常數(shù),根據(jù)電源電壓和溫度數(shù)據(jù)位數(shù)來確定。
每次測(cè)得的數(shù)據(jù)要和規(guī)定值進(jìn)行比較,如果在允許的范圍內(nèi),則程序進(jìn)行下一步操作,如果不滿足要求.則應(yīng)報(bào)警并將此刻的數(shù)據(jù)值顯示出來,在每次循環(huán)結(jié)束后。要經(jīng)過1個(gè)小時(shí)(可以靈活選用)的延時(shí).這主要是因?yàn)閺椝巶}(cāng)庫(kù)里有很多木制結(jié)構(gòu),揮發(fā)和吸收水分都有一個(gè)過程,經(jīng)過一定延時(shí)再進(jìn)行測(cè)量.可以避免傳感器長(zhǎng)時(shí)間的工作和執(zhí)行機(jī)構(gòu)的反復(fù)啟停,節(jié)約資源,同時(shí)可以延長(zhǎng)系統(tǒng)的使用壽命。每經(jīng)過3次(根據(jù)需要可以適當(dāng)選擇)循環(huán)測(cè)量后,單片機(jī)控制打印機(jī)將3次測(cè)量的溫/濕度數(shù)據(jù)打印出來,便于報(bào)表和存檔。
5結(jié)束語
筆者設(shè)計(jì)的彈藥倉(cāng)庫(kù)溫,濕度監(jiān)控系統(tǒng)是基于SHTl5型智能傳感器完成的,SHT15是全新的智能傳感器設(shè)計(jì)理念的新型傳感器,實(shí)現(xiàn)了溫,濕度傳感器的數(shù)字式輸出,且具有免調(diào)試、免標(biāo)定、無外圍電路等特點(diǎn),極大地方便了在嵌入式測(cè)控領(lǐng)域的應(yīng)用.它是今后傳感器發(fā)展的方向。系統(tǒng)的結(jié)構(gòu)比較簡(jiǎn)單.體積比較小,精度高,克服了傳統(tǒng)彈藥倉(cāng)庫(kù)溫/濕度測(cè)量系統(tǒng)的不足。
評(píng)論