魏麗君
(湖南鐵道職業(yè)技術(shù)學院,湖南 株洲 412001)
中國是農(nóng)業(yè)大國,擁有廣闊的適種土地,土壤的水分是農(nóng)作物生長的重要供給,因此土壤水分的準確測量對于農(nóng)作物的生長至關重要,水分過少會導致土地硬化,農(nóng)作物不能充分吸收水分和養(yǎng)分,影響作物生長;水分含量過多時,會導致水分滲透,肥料流失,還可能對土壤造成污染。我國的農(nóng)業(yè)用水的利用率不高,因此,開發(fā)高精密的土壤水分測試儀能有效的解決土壤水分參數(shù)的測量,指導農(nóng)作物生長,實施合理灌溉,提高農(nóng)作物的產(chǎn)量,同時能緩解因農(nóng)業(yè)用水帶來的淡水資源危機。
常用的土壤含水率測量方法主要為傳統(tǒng)測量方法和現(xiàn)代測量方法:傳統(tǒng)方式主要通過物理或化學方法將土壤中的水分從土壤樣本中分離,進而確定其含量的方法,比如烘干法、射線法、阻抗法等;現(xiàn)代測量方法主要借助試驗儀,利用土壤水分的電化學特性進行土壤含水率的測定,比如時域反射儀等,但物理或化學方法測試復雜,費時且不宜現(xiàn)場測量,而時域反射儀等價格昂貴,因此,該設計擬基于理想半無限空間熱脈沖傳導理論,設計一款高精密的土壤體積含水量測量裝置。
均質(zhì)各向同性半無限空間勻速熱傳導基本方程(Carslaw & Jaeger 1959, p13)如下:
(1)
其中:α是熱擴散系數(shù)(m2/s);U是流速(m/s)。當半無限空間一無限長線熱源加熱有限時間,即產(chǎn)生一熱脈沖,其理論解如下(Carslaw & Jaeger 1959, p258):
(2)
其中:Q是熱量(m2℃),Q=q/ρc;q輸入線強度(J/m);ρc是體積比容。當傳感器距離熱源位置rm溫度升到最大ΔTm時,對公式(2)求導數(shù)可得:
(3)
Campbell等(1991)給出土的體積比容ρc與最大溫升有關,即:
(4)
其中:ρw是水的密度;cw是水的比熱;θ是土的體積含水量;ρb是土的總密度;cm是土顆粒的比熱。給定熱脈沖q=I2Rt;I是加熱電流;R是加熱模塊電阻;t是加熱時間,實測最大溫升ΔTm和傳感器距離熱源的位置rm之后,就公式(4)可以計算出土的體積含水量θ,如公式(5)所示。
(5)
該設計采用STM32作為硬件平臺,硬件電路主要包含溫濕度傳感器模塊、A/D轉(zhuǎn)換模塊、PTC加熱模塊、液晶顯示模塊、通訊模塊、按鍵輸入模塊以及聲光報警模塊等。溫濕度傳感器模塊采集信號后,經(jīng)過AD轉(zhuǎn)換,送給STM32進行處理。PTC加熱模塊與土壤測試模塊在一起,測試到的信號通過串口進行通信。輔助有顯示和報警模塊,具體的硬件設計框圖如圖1所示。
圖1 系統(tǒng)硬件框圖
該設計使用的HS3001實物和電路設計原理圖如圖2所示。該傳感器具有如下特點:相對濕度測量精度為±1.5%RH,正常工作范圍為10~90%RH,14位轉(zhuǎn)換精度,溫度測量為±0.2 ℃, 正常工作范圍為-10~+80 ℃,14位轉(zhuǎn)換精度,寬工作電壓為2.3~5.5 V,低能耗,標準IIC數(shù)據(jù)接口。
圖2 HS3001傳感器實物和電路設計圖
設計采用的加熱傳感器模塊如圖3所示。它具有體積小,電阻值10 Ω,最大恒溫50 ℃。將2個HS3001與加熱模塊捆綁連接,然后置于被測土壤中,通過施加60~120 s左右熱脈沖,觀測土壤升降溫情況,以便換算土壤體積含水量。
圖3 PTC恒溫發(fā)熱模塊
AD7705包括5個串行數(shù)據(jù)接口,其中數(shù)據(jù)輸入端D_IN,串行時鐘輸入端S_CLK,轉(zhuǎn)換數(shù)據(jù)輸出端D_OUT,芯片選擇輸入端CS用于傳輸數(shù)據(jù),狀態(tài)信號輸出DRDY端用于指示輸出數(shù)據(jù)寄存器數(shù)據(jù)是否準備就緒。當DRDY 端電平置低時,轉(zhuǎn)換的數(shù)據(jù)可用;當DRDY端電平置高時,輸出更新數(shù)據(jù),無法讀取。根據(jù)設定的數(shù)據(jù)輸出進行速率更新A/D轉(zhuǎn)換處理。具體的電路設計圖如圖5所示。
圖4 土壤加熱測試模塊設計圖
圖5 AD轉(zhuǎn)換電路原理圖
串口通訊采用485通訊方式,可靠性好,精確度高。其設計的電路原理圖如圖6所示。
DE和RE端口均是高電平有效,其中R74是保護電阻,用于GPIO復用,R2R3R4三個電阻缺省,應用時可根據(jù)需要進行設置。
圖6 串口通訊電路原理圖
采用T0定時器進行1 s精確定時。首先進行串口T1和T0定時器初始化,程序如下:
/*---------串口初始化函數(shù)------*/
void init_uart()
{
TMOD=0x21;
TL1=0xfd;//實現(xiàn)波特率9600(系統(tǒng)時鐘11.0592MHZ)
TH1=0xfd;
TL0=T1MS; //initial timer0 low byte
TH0=T1MS>>8;//initial timer0 low byte
SCON=0x50;
PT0=1;
PS=0;//串口中斷優(yōu)先級設置;
TRO=1;TR1=1;ET0=1;ES=1;EA=1;//開中斷允許;
}
T0定時中斷程序如下,其中為了彌補計數(shù)誤差,TL0每次修正了2個計數(shù),即TL0 += 0x69。
/*---------定時器中斷服務程序----------*/
void tm0_isr()interrupt 1 using 1
{
TL0=Ox69;
TH0=0xfc;
If(count--==0)
{
count=1000;
second++;
if(second==3600)
{
second=0;
Hour++;
}
}
}
論文中緊對溫濕度的信號采集與處理部分做一個設計說明,具體的代碼設計如下,部分的信息都在后續(xù)部分做了相應的注釋。
void Convert_HS3001(void)
{
unsigned char TEMP1[7]; //用于記錄溫度
unsigned char HUMI1[7]; //用于記錄濕度
unsigned char j;
unsigned long tem1,hum1;
float tem,hum;
tem=165.0f*(float)((BUFt[0]<<8)|BUFt[1])/16383.0f/4.0f-40.0f; //攝氏度
hum=100.0f*(float)((BUFh[0]<<8)|BUFh[1])/16383.0f;
BUFt[0]=0;
BUFt[1]=0;
BUFh[0]=0;
BUFh[1]=0;
tem1=(unsigned long)(tem*10); //攝氏度
hum1=(unsigned long)(hum*10);
if(tem1<0)TEMP1[0]=0x2D;//溫度小于零,則數(shù)值前面加‘-’負號
else TEMP1[0]=0x20;//溫度大于等于零,則數(shù)值前面加空格
TEMP1[1]=tem1/1000+'0'; //溫度百位
if (TEMP1[1]==0x30) TEMP1[1]=0x20;
TEMP1[2]=tem1%1000/100+'0'; //溫度十位
if (TEMP1[2]==0x30 && TEMP1[1]!=0x30) TEMP1[2]=0x20;
TEMP1[3]=tem1%100/10+'0';//溫度個位
TEMP1[4]=0x2e;//小數(shù)點
TEMP1[5]=tem1%10+'0';//溫度小數(shù)點后第一位
TEMP1[6]=0x20;//最后一位為空格
for(j=0;j<7;j++)
}
將傳感器模塊埋入重力含水量10.4%的細砂中10 cm,分別施加120 s和60 s熱脈沖,傳感器升降溫曲線如圖6所示。從圖中可以看出微量熱脈沖對土體擾動小,升溫曲線有很好的一致性。
圖6 w=10.4%濕砂熱脈沖溫度升降曲線
再將傳感器模塊埋入重力含水量0.13%的細砂中10 cm,分別施加240 s和120 s熱脈沖,傳感器升降溫曲線如圖7所示。從圖中可以看出微量熱脈沖對土體擾動小,升溫曲線有很好的一致性。濕砂和干砂升降溫曲線比較如圖8所示,顯示升降溫曲線斜率有較大差別。
圖7 w=0.13%濕砂熱脈沖溫度升降曲線
圖8 濕砂和干砂熱脈沖溫度升降曲線比較
部分實測濕砂溫度升降原始數(shù)據(jù)如表1所示。
表1 實測濕砂溫度升降原始數(shù)據(jù)表
該文在充分分析當前土壤水分測量方面存在的問題出發(fā),提出了一種基于熱脈沖的土壤水分測試系統(tǒng)的設計,經(jīng)過軟硬件的設計和實驗測試,該裝置利用熱脈沖可以間接測量土壤體積含水量,熱脈沖時間控制在1~2 min,測量周期約300 s,具有短時連續(xù)監(jiān)測的優(yōu)勢;同時在非加熱模式下,可以直接獲取土壤溫濕度,經(jīng)過濕細砂熱脈沖溫度升降試驗,該裝置測量精度高,準確度達到99%,同時在降雨入滲和水位變化時可以直接監(jiān)測濕度變化;此外加熱模塊還可以為溫濕度傳感器升溫除濕,以增強深埋土壤高濕度環(huán)境下長期工作性能。