沈翠鳳
摘要摘要:以MCS-51單片機作為控制器,采用nRF905無線通訊模塊,設計了一種水產養(yǎng)殖無線鹽度檢測系統(tǒng)。采用電導率法測量鹽度,系統(tǒng)采集鹽度信息,采用無線數據傳輸,克服了傳統(tǒng)有線數據傳輸的缺陷。基于Visual Basic6.0開發(fā)了上位機監(jiān)控軟件,實時在線自動監(jiān)測鹽度,系統(tǒng)運行良好,可以滿足高效水產品養(yǎng)殖需要。
關鍵詞關鍵詞:單片機;無線通訊;鹽度檢測;水產養(yǎng)殖
DOIDOI:10.11907/rjdk.162185
中圖分類號:TP319文獻標識碼:A文章編號文章編號:16727800(2017)001004703
引言
隨著現代高效農業(yè)的不斷發(fā)展,農業(yè)自動化的作用顯得尤為重要,它極大地提高了勞動生產率,增加了勞動的舒適性以及可操作性。為進一步促進鹽城市智能農業(yè)發(fā)展,提高水產養(yǎng)殖效率,本文設計了一種基于單片機和無線通訊的水產養(yǎng)殖鹽度監(jiān)控系統(tǒng)。系統(tǒng)采用DJS-10鉑黑電導電極檢測鹽度[1],因為溫度對溶液的導電性能會產生較大影響,從而產生測量誤差,所以需要進行實時溫度補償,這里采用PT100鉑電阻檢測溫度。由于采用無線數據傳輸克服了有線網絡傳輸數據時布線麻煩、施工安裝不方便、維護困難的缺點,提高了系統(tǒng)的可靠性和實時性;并且,采用Visual Basic6.0開發(fā)了可視化的上位機監(jiān)控軟件,實現了養(yǎng)殖水體鹽度參數的遠程無線監(jiān)控。
1系統(tǒng)總體設計
以STC89C51單片機系統(tǒng)為核心的無線鹽度檢測系統(tǒng)總體結構如圖1所示。系統(tǒng)主要由水環(huán)境鹽度、溫度數據采集電路、模數轉換電路、無線數據傳輸電路、串口通訊電路等組成。水環(huán)境的鹽度與溫度兩路模擬信號被A/D轉換芯片分時采集,處理成數字量后送分控單片機進行綜合數據處理,處理后的鹽度數據打包后由無線模塊發(fā)送端發(fā)送,無線模塊接收端將接收的數據信息發(fā)送至主控單片機,通過數碼管顯示鹽度值,并采用RS232串口通信將鹽度數據發(fā)送至上位PC機,實時同步顯示鹽度值。
2系統(tǒng)硬件設計
系統(tǒng)硬件電路主要由鹽度檢測電路、溫度檢測電路、鹽度A/D轉換電路、無線通訊模塊、串口通訊電路等組成。
2.1鹽度檢測電路
鹽度檢測電路如圖2所示,主要由測量電源、測量電路和信號調理電路組成[2]。
2.1.1測量電源
采用DJS-10鉑黑電導電極作為鹽度傳感器,如果采用直流電橋法極易導致傳感器探頭的電解,故考慮使用一定頻率的交流電作為測量電源。本文采用100Hz低頻交流信號作為測量電源。因為是低頻信號,所以用RC橋式自激振蕩電路來產生所需要的交流正弦波信號。
為保證測量精度,需要穩(wěn)定的正弦波,且信號不能失真,因此需要對信號限幅,這里使用兩只反向并聯的二極管進行限幅。當到達R3端的電壓較小時,兩只二極管相當于開路,此時等效電阻即為3.6K;而當電壓增大到一定程度使得兩只二極管交替導通時,R3則被短路,此時增益AV=1+(R3+R4)/R5=1+R4/R5<3,不再滿足自激振蕩的條件,電壓會減小,直到二極管斷開,再次滿足振蕩條件,電壓再增大,如此循環(huán)往復即可保證輸出穩(wěn)定的正弦波信號。
2.1.2測量電路 采用線性分壓測量電路,圖2中R6為分壓電阻,RX為電極間的溶液電阻。設E為分壓電阻兩端的電壓,當RX>>R6時,有E=R6*VO/(R6+RX)≈R6*VO/RX=GXR6VO。由此可見,當R6、VO都是常數且RX>>R6時,E將正比于GX,即分壓電路輸出電壓和電導池的電導率之間為線性關系,這樣測出E就可計算出GX,也就能得到需要的鹽度值[34]。但當RX>>R6時,E的值會很小,后面的整流電路將很難處理,因此R6不能取得太小,這里取R6=0.1kΩ,由此造成的非線性誤差將通過軟件進行處理。
2.1.3信號調理電路
由于采用了100Hz低頻信號,在實際測量過程中很可能會引入高頻噪聲,因而最終送到A/D轉換端的信號必須濾去高頻干擾信號。圖2中的R7、R8、C3、C4和運放組成二階有源低通濾波電路,能有效濾去高頻成分。濾波后的交流信號還要經4個二極管組成的全橋整流電路以及電容濾波后變成直流電壓信號,這樣才能送A/D轉換及單片機處理。此時的直流信號是分壓電阻兩端的差分信號,此信號正比于被測溶液的電導率,即正比于溶液鹽度,最后經差分放大為ADC0809能處理的0~5v電壓信號。
2.2鹽度數據A/D轉換電路
采用DJS-10鉑黑電導電極作為鹽度傳感器對養(yǎng)殖水體鹽度信息進行采集;采集的鹽度數據經過模數轉換模塊ADC0809轉換后送單片機處理。
2.3無線通訊模塊
本系統(tǒng)的無線通訊模塊采用nRF905,其接口電路如圖4所示。單片機之間通過無線通訊進行數據傳輸。鹽度傳感器檢測到的數據經過模數轉換之后送分控單片機,然后通過無線通訊將數據發(fā)送給主控單片機[5]。
2.4串口通訊電路
本系統(tǒng)的串口通信電路采用RS-232C串行通信方式。要實現單片機和電腦RS-232C接口的通信,就必須進行電平轉換,將單片機的TTL電平轉換成計算機的RS-232C電平,或者將計算機的RS-232C電平轉換成單片機的TTL電平,這里采用MAX232電平轉換芯片。
3系統(tǒng)軟件設計
3.1下位機軟件設計
下位機包括發(fā)送單元和接收單元,分別由主控單片機和分控單片機控制。其中發(fā)送單元主要包括:ADC0809的2路采集程序、數據處理程序和nRF905發(fā)送程序;接收單元主要包括:nRF905接收程序和串口通訊程序。電導率和溫度數據處理都在發(fā)送單元的程序里進行,發(fā)送端主程序流程如圖6所示,接收端主程序流程如圖7所示。
3.2上位機軟件設計
Visual Basic是一種面向對象的可視化程序設計語言,可以方便地建立友好的人機交互界面。本系統(tǒng)基于Visual Basic6.0開發(fā),可以實時監(jiān)測水產養(yǎng)殖鹽度信息[67]。主控單片機系統(tǒng)上的數碼管與上位機同步顯示的鹽度測量值如圖8和圖9所示,兩者數值基本一致,實現了鹽度的現場監(jiān)測與遠程監(jiān)測。實時檢測的鹽度曲線如圖10所示,可直觀、方便地顯示鹽度測量值。
4結語
針對傳統(tǒng)水產養(yǎng)殖中人工巡塘成本高、效率低等缺點,本文設計了一種基于單片機和無線通訊的水產養(yǎng)殖鹽度監(jiān)控系統(tǒng),克服了有線網絡數據傳輸時布線麻煩、系統(tǒng)可靠性差等缺點,同時設計了基于Visual Basic的上位機實時監(jiān)控軟件。實際測試結果表明,系統(tǒng)測量精度高、實時性好、數據傳輸穩(wěn)定,且運行效果良好。
參考文獻:
[1]林華清,陳華章.數字式海水鹽度計的研制[J].廣東工業(yè)大學學報,2002,19(3):4549.
[2]閻石.電子技術基礎[M].北京:高等教育出版社,2008.
[3]蘭敬輝.溶液電導率測量方法的研究[D].大連理工大學,2002.
[4]閆瑞杰,李海香,郝瑞霞.多通道鹽度測量系統(tǒng)的設計及應用[J].太原理工大學學報,2013,44(6):749752.
[5]喻金錢,喻斌.短距離無線通信詳解——基于單片機控制[M].北京:北京航空航天大學出版社,2009.
[6]ZHAO YONG,LIAO YANBIAN.Monitoring technology of salinity in water with optical fiber sensor[J].Journal of Light Wave Technology,2003,21(5):13341338.
[7]Visual Basic數據采集與串口通信測控應用實踐[M].北京:人民郵電出版社,2010.
責任編輯(責任編輯:孫娟)
第1期 劉桂元,曾志遠,楊書新:基于Unity3d引擎的教育類游戲設計與實現軟 件 導 刊2017年標題