劉信宏 解魯旭 趙祺?

摘 要:文中基于RS 485總線設(shè)計的溫濕度傳感器,具有對土壤溫濕度進行監(jiān)測的功能,它由溫濕度傳感芯片、單片機和RS 485通信模塊組成,其中溫濕度傳感芯片負(fù)責(zé)溫濕度的采集,并將采集到的數(shù)據(jù)傳輸?shù)絾纹瑱C,單片機接收后對數(shù)據(jù)進行處理并輸送到RS 485總線。傳感器將溫濕度傳感芯片、單片機和通信模塊集成為一個模塊,使其能夠?qū)貪穸葌鞲行酒敵龅男盘柦?jīng)單片機的處理,輸出用RS 485總線傳輸?shù)耐ㄓ眯盘枴?/p>
關(guān)鍵詞:RS 485總線;土壤溫濕度;集成模塊
1 傳感器整體結(jié)構(gòu)
傳感器集成了溫濕度傳感器芯片、單片機和通信模塊,采用四線制結(jié)構(gòu),分別為電源線VCC、地線GND和兩個數(shù)據(jù)線A,B。其中溫濕度傳感器芯片采用SHT10,單片機采用STC15W204S,RS 485通信。該傳感器用于采集環(huán)境的溫濕度,可應(yīng)用到支持RS 485通信的系統(tǒng)中,作為前段數(shù)據(jù)采集模塊使用,具有良好的可移植性。
該傳感器是一種智能傳感控制器,它相對傳統(tǒng)普通傳感器的優(yōu)勢在于不僅能夠做到單純的測量,而且能在內(nèi)部對信號進行處理和轉(zhuǎn)換。傳感器內(nèi)部結(jié)構(gòu)如圖1所示。
1.1 技術(shù)參數(shù)傳感器技術(shù)參數(shù)見表1所列。
本傳感器采用STC15W202S單片機,其內(nèi)部集成有高可靠復(fù)位電路,ISP編程時16級復(fù)位門檻電壓可選,且其內(nèi)部集成高精度R/C時鐘(+/-0.3%),+/-1%溫飄(-40~+85 ℃),常溫下溫飄為+/-0.6%(-20~+65 ℃),5~35 MHz可設(shè)置,因此無需外部晶振和外部復(fù)位電路。STC15W202S單片機需要連接電源引腳和接地引腳,單片機的P33口接收測溫元件輸出的數(shù)據(jù),P32口向測溫元件輸出時鐘信號,P31和P30口向MAX13487輸出信號。STC15W202S連線如圖3所示。
2.2 傳感器電路設(shè)計溫濕度檢測選用SHT10溫濕度傳感器,SHT10與單片機通過引腳DATA通信,將2號引腳DATA接到單片機P33口,1號引腳接5 V電源,3號引腳接單片機P32口,4號引腳接地,連線如圖4所示。
2.3 RS 485通信電路設(shè)計本方案采用的MAX13487芯片是用于RS 485通信的低功耗收發(fā)器,每個器件均含一路驅(qū)動器和一路接收器,具有熱插拔功能,可消除上電或熱插入時總線上的故障瞬變信號,同時具有Maxim自動方向控制功能MAX13487的2,3引腳為接收器輸出使能和關(guān)斷控制,在此設(shè)計中兩引腳始終處于使能狀態(tài),因此兩引腳均接高電平。
1,4兩引腳為接收器輸入和驅(qū)動器輸入,接收來自單片機的信號,因此與單片機STC15W202S的信號輸出口P3.0和P3.1相連,如圖5,圖6所示。
2.4 各模塊間連接單片機STC15W202S的P33口接收測溫元件輸出的數(shù)據(jù),P32口向測溫元件輸出時鐘信號,P31和P30口向MAX13487輸出信號。
SHT10與單片機通過引腳DATA通信,將2號引腳DATA接到單片機PC33口。
2.5 護套的選擇土壤溫濕度傳感器需做雙防水處理,防凝露損壞。即使埋在土里該傳感器仍舊測量土壤中空氣的相對濕度,而非土壤濕度。護套采用PE材料,防水透氣,水分子能夠進入護套,水滴由于表面張力而無法進入護套。
2.6 電路板的灌封本傳感器采用有機硅灌封膠灌封。有機硅灌封膠具有防潮、防塵、防腐蝕、防震等作用,可提高傳感器使用性能和穩(wěn)定參數(shù),其在硫化前是液體,便于灌注,使用方便。應(yīng)用有機硅凝膠進行灌封時,無應(yīng)力收縮,可深層硫化,無任何腐蝕,透明硅膠在硫化后變成透明彈性體,膠層封裝的元器件清晰可見,可以用針逐個測量元件參數(shù),便于檢測與返修。
3 溫濕度傳感器軟件設(shè)計
3.1 原理傳感器軟件設(shè)計原理如圖7所示。
3.2 溫濕度傳感器與單片機通信方式DATA用于微處理器與SHT10之間的通信和同步,采用單總線數(shù)據(jù)格式,一次通信時間約4 ms,數(shù)據(jù)分為小數(shù)部分和整數(shù)部分。
一次完整的數(shù)據(jù)傳輸為40 bit,高位先出。
數(shù)據(jù)格式:8 bit濕度整數(shù)數(shù)據(jù)+8 bit濕度小數(shù)數(shù)據(jù)+
8 bit溫度整數(shù)數(shù)據(jù)+8 bit溫度小數(shù)數(shù)據(jù)+8 bit校驗和。
數(shù)據(jù)傳送正確時校驗和數(shù)據(jù)等于“8 bit濕度整數(shù)數(shù)據(jù)+
8 bit濕度小數(shù)數(shù)據(jù)+8 bit溫度整數(shù)數(shù)據(jù)+8 bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。
3.2.1 發(fā)送指令用一組“啟動傳輸”時序來完成數(shù)據(jù)傳輸?shù)某跏蓟?dāng)SCK 時鐘高電平時DATA翻轉(zhuǎn)為低電平,之后SCK變?yōu)榈碗娖剑?dāng)SCK時鐘高電平時DATA翻轉(zhuǎn)為高電平。“啟動傳輸”時序如圖8所示。
3.2.2 溫濕度檢測發(fā)布一組測量命令(‘00000101表示相對濕度RH,‘00000011表示溫度T)后,控制器要等待測量結(jié)束,該過程需要約20/80/320 ms,分別對應(yīng)8/12/14 bit測量。確切時間隨內(nèi)部晶振速度變化,變化范圍為30%。SHT1x通過下拉DATA至低電平并進入空閑模式,表示測量結(jié)束。控制器再次觸發(fā)SCK時鐘前,必須等待“數(shù)據(jù)備妥”信號以讀出數(shù)據(jù)。檢測數(shù)據(jù)提前存儲,方便控制器繼續(xù)執(zhí)行其他任務(wù)時讀取數(shù)據(jù)。之后傳輸2 B的測量數(shù)據(jù)和1 B的CRC奇偶校驗。uC需通過下拉DATA為低電平以確認(rèn)每個字節(jié),所有數(shù)據(jù)從MSB開始,右值有效,在收到CRC確認(rèn)位后,表明通信結(jié)束。
3.2.3 通信復(fù)位時序如果與SHT1x通信中斷,可通過下列信號時序復(fù)位:當(dāng)DATA保持高電平時,觸發(fā)SCK時鐘9次或更多。接著發(fā)送一個“傳輸啟動”時序,這些時序只復(fù)位串口,狀態(tài)寄存器內(nèi)容仍然保留。復(fù)位時序如圖9所示。
4 本裝置的主要創(chuàng)新點
(1)邏輯判斷,統(tǒng)計處理功能。本傳感器能分析、統(tǒng)計和修正監(jiān)測數(shù)據(jù),進行非線性、溫度、噪聲、響應(yīng)時間、交叉感應(yīng)及緩慢漂移等誤差補償。根據(jù)系統(tǒng)工作情況決策各部分供電和向上位計算機傳送數(shù)據(jù)的速率,使系統(tǒng)工作在最低功耗狀態(tài)和傳送效率優(yōu)化狀態(tài)。
(2)本系統(tǒng)設(shè)計的防水型土壤參數(shù)傳感器為智能傳感控制器,將傳感器與單片機集成為單獨的模塊,使其能夠?qū)貪穸葌鞲行酒琒HD10輸出的信號經(jīng)單片機的處理,變換為可用RS 485總線傳輸?shù)耐ㄓ眯盘枴4伺e不僅提高了檢測原件的精度,免除了傳輸過程中由信號衰減產(chǎn)生的誤差,另一方面提高了設(shè)備的通用性,克服了傳感器引線不標(biāo)準(zhǔn)的缺陷,具有更好的經(jīng)濟與實用價值。