





摘要:為改善目前國內養殖水質監測的現狀,利用GSM在無線通信領域的技術優勢,設計了一種養殖水質監測系統,實現了對養殖水質pH和溫度的無線動態監測。系統以STC89C52單片機為主控器,利用溶液pH傳感器和溫度傳感器模塊收集養殖水質pH和水溫數據,實現數據的實時采集與處理,并提供了數據的實時顯示、存儲、分析以及預警功能;采用SIM900A短信收發模塊,實現水質監測無線監管。結果表明,該系統運行穩定,數據傳輸正常,能夠完成水產養殖水質參數的監測。
關鍵詞:STC89C52;pH傳感器;SIM900A;水質監測
中圖分類號:TN713 文獻標識碼:A 文章編號:0439-8114(2016)14-3749-04
DOI:10.14088/j.cnki.issn0439-8114.2016.14.053
Abstract: In order to improve the situation of domestic aquaculture water quality monitoring,a kind of aquaculture water quality monitoring system was designed by using wireless communication technology GSM,which realized the wireless dynamic monitoring of pH and temperature in aquaculture water. STC89C52 microcontroller was as the main controller,which realized data acquisition and processing of pH and temperature of aquaculture water by the pH value detection sensor and temperature sensor,and the system provided real-time display,storage,analysis and pre-warning function. The SIM900A was adopted to receive and send text messages to gain wireless transmission and dynamic monitoring functions. The experimental results showed that the system is stable,the data transmission is normal,and the monitoring of the water quality parameters can be completed.
Key words: STC89C52; pH sensor; SIM900A; water quality monitoring
中國部分地方養殖水質監測水平相對較低, 多數采取經驗法或化學試劑分析法[1]。pH是養殖水體最重要的水質指標之一[2],中國漁業水質標準GB11607-89規定養殖水體魚類生長的pH安全范圍為6.5~8.5,pH過高或過低均對魚類有直接損害,甚至致魚死亡。因此,在養殖生產過程中要監測水體的pH[3],及時了解水質狀況,采取相應的調節措施改善水體環境,保證養殖魚類的正常生長。測量pH的常用方法有化學分析法、試紙分析法和電位分析法。化學分析法、試紙分析法不能實現pH實時在線測量,而電位檢測法一般采用玻璃電極傳感器,檢測儀器體積小巧,便于攜帶和使用,其測量的數據準確、可靠,但需要人工記錄數據,費力耗時,不能實現pH動態變化的實時監測。近年來,不少工程人員已開始設計實現無線網絡系統對水質進行遠程監控[4,5]。本系統設計了水產養殖水體pH和水溫無線實時監測系統,以便養殖人員實時了解水體pH和水溫狀況,從而及時采取有效的措施調控水質。該系統對保證水產養殖的安全生產、減輕工人的勞動強度、提高養殖業生產效率具有重要的現實意義。
1 系統設計
整個系統由傳感器模塊、數據處理器模塊、無線通信模塊、電源模塊和顯示模塊組成。其中,pH傳感器模塊包括pH傳感器和信號調理電路,信號調理電路對傳感器輸出的微弱信號進行調理放大,以滿足處理器A/D轉換要求;無線模塊采用SIM900A作為主芯片,主要負責收發短信,以便數據遠程交互;顯示模塊主要顯示采集到的pH、養殖水溫度和補償后標定溫度[6,7];電源模塊負責給系統提供所需要的電壓,保證系統正常運行。
2 硬件設計
系統工作時,由溶液pH檢測傳感器和溫度檢測傳感器對養殖水質的指標進行監測,由信號調理電路放大調整后傳送到處理器模塊進行數據處理,最后由無線通信模塊發送至監控人員,以便工作人員及時了解水質狀況。
2.1 pH信號調理電路設計
系統采用的是Arduino pH傳感器和溫度傳感器補償模塊C5B1,模塊自帶信號調理電路。傳感器探頭檢測到微弱的電壓信號傳給信號調理電路,然后將放大處理后的信號傳送出來。其中傳感器模塊的加熱電壓為5.0±0.2 V、工作電流為5~10 mA,pH傳感器檢測范圍為0.00~14.00,分辨率為0.01、檢測溫度為0~100 ℃、響應時間小于5 s,以模擬電壓信號輸出和數字信號輸出,pH信號調理電路如圖2所示。
pH傳感器電極輸出的信號為信號電極pH+和參比電極的相對電壓pH-。選用的傳感器參比電極為氯化鉀溶液。pH+經同相比例放大電路放大后輸出。另外,通過穩壓電路和電壓跟隨器在pH-上施加一個恒定的電壓。選用氯化鉀溶液做參比溶液,pH-電壓值為350 mV,可以保證信號電極為正值。pH+電極輸出為mV級電壓信號,具體范圍在120~450 mV之間,且內阻很高。在調理電路的設計中,采用自動校準運算放大器TLC4502構成信號調理電路。TLC4502是一種新型的高精密運算放大器,具有低輸入失調電壓漂移和高輸出驅動能力,并可在上電后失調電壓自動校準為零。經過調理放大11倍后,信號調整為2.5~5.0 V以滿足單片機A/D轉換器輸入范圍。
2.2 A/D轉換電路
系統采用的A/D轉換器為PCF8591芯片。通道CH2連接調理后的pH信號,CH3連接溫度傳感器信號輸入,該系統中只用到單個芯片,因此將A0、A1和A2都選擇接地。A/D轉換器PCF8591利用數據線SDL和時鐘線SCL與CPU聯系。由軟件決定水溫及水質pH和溫度數據的采集時間和數據的存儲以及顯示。PCF8591芯片引腳連線如圖3所示。
2.3 顯示電路設計
溫度傳感器補償模塊采用DS18B20溫度傳感器進行水質溫度檢測。溫度數據和水質pH由傳感器采集信號,經過單片機處理存儲,通過LCD12864顯示,以便人們可以現場實時了解水質情況。
2.4 GSM短信模塊設計
GSM短信模塊采用SIM900A,它主要用于語音或數據通訊,SIM900A擴展的TCP/IP—AT命令使用戶在做數據傳輸方面應用時非常有用[8,9]。SIM卡的接口電源由短信模塊內部的電壓穩壓器提供,正常電壓值為2.8 V或1.8 V。為了保護SIM卡,本設計使用SMF05C來做靜電保護,SIM900A電路具體連接如圖4所示。
系統采用單片機STC89C52控制SIM900A電路,將單片機的TXD連接到SIM900A的TXD_0上,將RXD連接到SIM900A的RXD_1上,通過單片機發送和接受控制命令來完成與SIM900A的通信。NETLED信號用來驅動網絡狀態燈,通過網絡狀態燈的閃爍可以判斷當前的網絡狀態(熄滅,關機;64 ms亮/800 ms熄滅,未注冊到網絡;64 ms亮/3 000 ms熄滅,注冊到網絡;64 ms亮/300 ms熄滅,GPRS通訊)。當短信模塊開機時,用戶可以拉低PWRKEY引腳1 s以上后釋放此引腳來開機,此引腳在模塊內部已被拉至3 V。當收到短消息時,RI腳將變為低電平,保持低電平120 ms,然后再變成高電平。當模塊作主叫方時,RI保持高電平。
3 系統軟件設計
3.1 系統程序的總體設計
系統具體工作流程圖如圖5所示。系統工作時,首先對各個設備進行初始化,以保證各模塊正常運行。當主控制器判斷各個模塊完成初始工作且與無線通信入網成功后,傳感器開始采集電壓信號,并將采集到的微弱信號放大處理后送入處理器進行處理,并且通過液晶顯示屏顯示處理后的信號數據。與此同時,處理器還定時將數據通過無線模塊SIM900A發送到工作人員的設備上,以便工作人員及時了解現場情況。最后,由工作人員對采集的數據進行分析對比,如果顯示正常,則系統保持連續動態監測狀態;如果水質超標或者不符合養殖要求時,能一鍵撥號通知工作人員及時做出調整。
3.2 無線通信相關程序設計
在程序中定義了大量的變量來控制短信程序執行的走向(flag_rec_message,接收到短信標志位;Buffer_Uart0_Rec[],Uart0中斷接收數組;rec_data_len_uart,標記Buffer_Uart0_Rec接收數組的長度;flag_rec_message_data=0,開始接收短信數據;flag_start_rec_message,開始處理短信數據標志位;temp_rec_data_uart0,定義暫時存取接收數據的變量),接短信與打電話流程(A是接收短信的總流程,B是A中接收短消息極其相關數據的詳細過程,C是撥打電話的過程)具體流程如圖6所示。
4 數據處理
4.1 溫度測量部分試驗數據
溫度測量部分選用pH探頭和DS18B20溫度傳感器,溫度變化引起阻值的變化,呈線性關系。采用平衡電橋電路將阻值的變化轉換為電壓的變化[10]。測得溫度與電壓的數據關系如表1所示。
對溫度模擬電壓與溫度關系進行線性擬合,并給出溫度標定公式:
T=231.86U-187.77 (1)
其中,U代表電壓,T代表溫度。將此公式寫入FLASH,即可得到傳感器模塊溫度標定值。
4.2 pH測量部分試驗數據
在不同溫度下,用pH已知的標準溶液對參數進行標定,常用的標準溶液為鄰苯二甲酸氫鉀(pH=4.00)、混合磷酸鹽(pH=6.86)、四硼酸鈉(pH=9.18)。根據被測溶液pH的變化范圍,選擇其中兩種標準溶液,通過試驗得出以下數據,測得pH與電壓值的數據關系如表2所示。
由數據分析可得,溫度小范圍的波動對電壓值的影響不大,原因是傳感器模塊中加入了溫度補償以便得到更準確的數據。對pH與溫度關系進行線性擬合,并給出pH標定公式:
pH=-5.23U+25.06 (2)
其中,U代表電壓,將關系式存入FLASH,即可在液晶屏上顯示pH。
5 結論
系統以STC89C52單片機為核心,采用溶液pH檢測傳感器和溫度檢測傳感器模塊采集pH和水溫數據,實現了現場數據的采集、處理和顯示;除此之外,以SIM900A為無線通信模塊,定時通過無線模塊將水質信息發送給工作人員,當水質超標或者不符合養殖要求時,通過一鍵撥號進行提醒。結果表明,該系統運行穩定,數據傳輸正常,能夠完成水產養殖水質參數的監測。對于保證水產養殖的安全生產、減輕工人的勞動強度、提高養殖業生產效率具有重要的現實意義。如果系統增加無線監測節點和中轉節點,還可構成一個規模較大的、距離較遠的無線監測網絡。
參考文獻:
[1] 武靜濤,馬長寶,劉永波.水質監測無線傳感器網絡節點的設計[J].計算機測量與控制,2009,17(12):2575-2578.
[2] 趙小強,馮 勛.基于ZigBee的水質pH值在線監測系統[J].西安郵電大學學報,2014,19(6):71-75.
[3] 袁 琦,黃建清,符 新,等.基于神經網絡的水產養殖水質預測模型研究[J].湖北農業科學,2013,52(1):143-146.
[4] 汪學清,楊永田,孫 亭.無線傳感器網絡中基于網格的覆蓋問題研究[J].計算機科學,2006,33(11):38-39,78.
[5] 仲元昌,郭開林,徐寶桂,等.面向三峽庫區水環境監測的混合網絡構建[J].世界科技研究與發展,2010,32(6):737-740.
[6] 羅勇鋼,劉冠軍,鄒 君.一種一體式pH傳感器的研制[J].傳感器與微系統,2014,33(12):54-56.
[7] 胡月明,黃建清,王衛星,等.水產養殖水質pH值無線監測系統設計[J].傳感器與微系統,2014,33(11):113-114.
[8] 劉向華.智能家居中無線傳輸系統的設計與實現[D].天津:天津大學,2006.
[9] 李海生.基于GSM短消息的遠程檢測系統[D].河北秦皇島:燕山大學,2005.
[10] 董 華.基于MSP430單片機的pH計的設計[D].長春:吉林大學,2006.