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