于翰林 盧澤民 朱詠莉
摘要:水環(huán)境中的pH(酸堿度)值直接反映水環(huán)境中藻類的活力、二氧化碳的存在狀態(tài)等,對水產養(yǎng)殖具有重要的參考意義。為甲魚養(yǎng)殖環(huán)境設計了1種基于嵌入式服務器的pH值檢測系統(tǒng),以pH復合玻璃電極作為傳感節(jié)點;以ARM6開發(fā)板為核心構建系統(tǒng)的軟硬件平臺及Web服務器,同時作為硬件的采集終端和嵌入式網關核心。系統(tǒng)可以對甲魚養(yǎng)殖環(huán)境中的pH值及溫度等參數進行檢測,同時將數據接入互聯網,用戶可通過客戶端IE瀏覽器實現對檢測數據的遠程在線監(jiān)測。
關鍵詞:嵌入式Web服務器;酸堿度;瀏覽器;網關;甲魚
中圖分類號: TP274文獻標志碼: A文章編號:1002-1302(2015)01-0390-03
收稿日期:2014-02-28
基金項目:國家自然科學基金(編號:40901112)。
作者簡介:于翰林(1987—),男,山東聊城人,碩士研究生,主要從事農業(yè)電氣化與自動化研究。E-mail:yuhanlin_2008@163.com。
通信作者:盧澤民,博士,副教授,碩士生導師,主要從事農業(yè)工程裝備研究。E-mail:luzm@ujs.edu.cn。在工廠化水產養(yǎng)殖中,水質參數監(jiān)控是健康養(yǎng)殖的重要環(huán)節(jié),水質監(jiān)控可以掌握養(yǎng)殖水體的溫度、濁度、pH值、溶解氧等對水產品生長環(huán)境有重大影響的水質參數,其中pH值是池塘中水質的重要指標之一,不僅會直接影響甲魚的生理活動,而且會通過改變水產養(yǎng)殖環(huán)境中的微生物理化因子而間接作用于甲魚[1],pH值過高或過低都會對甲魚的生長造成危害。確保適宜的水體溫度、pH值、溶解氧等參數值,創(chuàng)造良好的養(yǎng)殖環(huán)境對甲魚生長至關重要。目前的檢測方法測得的pH值不夠精準,實時性不夠穩(wěn)定,因此,準確、方便、快速地測量水體中的pH值大小,為甲魚的正常生長繁殖提供一個穩(wěn)定、合理的生存環(huán)境在水產養(yǎng)殖中具有重要意義。本研究構建基于 ARM-Linux 的嵌入式服務器,系統(tǒng)中ARM6處理器既作為采集電路的核心又作為嵌入式網關的核心,通過編寫相應的應用層CGI程序,實現瀏覽器/服務器(B/S)通信[2-3],具有以下特點:(1)簡易的嵌入式服務器代碼和服務器端應用程序代碼,實現Web服務器的基本功能;(2)采用B/S通信架構,直接讀取遠程的檢測數據。本系統(tǒng)的開發(fā)簡單,操作方便,成本低,易于實現,反復測試證明系統(tǒng)的精確性和穩(wěn)定性均達要求。
1系統(tǒng)硬件平臺設計
1.1系統(tǒng)硬件整體結構
在硬件系統(tǒng)中,其整體設計主要包括2個部分:采集電路與嵌入式網關,詳見圖1。pH傳感器對水體水質中的pH值參數進行初步檢測,同時調理電路對傳感器采集來的模擬信號進行放大、濾波和穩(wěn)壓處理[4],被處理后的信號經過開發(fā)板的2路AD進行模數轉換和相應的結果計算,同時通過以太網網關跟以太網進行協議轉換和數據交換,最后在客戶端的瀏覽器中對檢測的數據進行實時讀取。
1.2采樣電路的設計
酸堿度傳感器采用E-201-C型pH復合玻璃電極,在25 ℃時,其電極輸出電壓與pH值的關系為59.16 mV/pH,即在氫離子活度變化10倍時,電動勢偏移59.16 mV。由于pH復合玻璃電極的內阻值較大,要求前置放大器具備高輸入阻抗值[5],因此選擇高輸入阻抗的運算放大器 CA3140來實現阻抗匹配、降低測量噪聲、提升系統(tǒng)穩(wěn)定性等[6],其余的普通運放選用運算放大器TL082,硬件電路如圖2所示。
在測量pH值之前要對其調理電路作調試,首先對運算放大器CA3140的調零端進行調零,調零時應將2個輸入端全部接地,小量程電壓表連接運放輸出端,調整P1,使得電壓表讀數接近零。而后對整個pH信號調理電路進行調試,其方法是:斷開pH電極輸入,使P2居中,之前接pH值信號輸入運放的輸入端接地,調節(jié)P3,使電路輸出電壓為700 mV,此時相當于輸出的pH值為7;之前接pH值信號輸入的運放輸入端接通-414.1 mV的輸入電壓,調節(jié)P2,使電路輸出電壓為1 400 mV,此時對應的是輸出pH值為14,pH信號調理電路板便可以正常工作。
1.3嵌入式網關構建
嵌入式網關硬件結構如圖3所示。在嵌入式網關的構建中,選用DM9000A作為以太網芯片的核心。DM9000A以太網芯片是功能異常強大的以太網控制器,產自Davicom公司,有1個10/100 M的自適應物理層與4 k雙字節(jié)的靜態(tài)隨機存儲器。此外,DM9000A控制器還提供了與介質無關的接口,該控制器支持8位、16位的接口來訪問內部的存儲器設備,從而支持不同模型的處理器[7-8]。
2系統(tǒng)軟件設計
2.1Web服務器在軟件平臺上的實現
本研究完成了1個簡易、低成本的Web服務器的設計,實現了Web服務器的基本功能,包括頁面的請求與響應、HTML 文件解析和數據傳送[9]。建立socket網絡連接是構建Web服務器的基礎,在Linux下,用戶通過socket接口進行網絡編程操作[10]。編寫Web服務器本質上就是建立起客戶端與服務器端的socket連接,服務器端讀取客戶端請求,并進行相應操作;客戶端首先讀取服務器端應答和請求,然后對其進行解析、繪圖并且加以運行[11]??蛻舳伺c服務器的交互主要包括客戶請求及服務器應答,請求和應答格式均在超文本傳輸協議(HTTP)中有明確定義。Web服務器工作流程如圖4所示??蛻舳撕蚖eb服務器交互的基本布局為:(1)客戶發(fā)送請求:GET filename HTTP/version;(2)服務器發(fā)送應答:HTTP/version status-code status-message。
用戶瀏覽器端與服務器端建立socket連接后,用戶通過在瀏覽器端單擊1個鏈接的形式獲取網頁,即發(fā)送1個命令請求,服務器端利用GET命令接受請求、讀取請求,并打印輸出相關數據信息。endprint
2.2應用層CGI程序設計
通用網關接口 (common gateway interface,CGI)表示一段程序,運行在Web服務器上,其主要功能是在Web的環(huán)境下,從客戶端向Web服務器傳達若干信息或命令,而后Web服務器啟動指定程序來完成特定工作[12]。在瀏覽器/服務器模式下,CGI是由瀏覽器的輸入命令進行觸發(fā)的。
首先,用戶在瀏覽器端的地址欄中輸入要訪問的地址并通過回車來觸發(fā)這個指令申請,同時瀏覽器將這個申請命令通過TCP協議發(fā)送到服務器端并被接收。Web服務器端在接收完這些申請之后,按照.htm或者.html的后綴來認識這個文件是否是HTML類型的文件。如果是HTML類型的文件,Web服務器會從當前的存儲中讀取到正確的HTML型文件,并將其以網頁的形式送回到瀏覽器端。Web瀏覽器、服務器以及CGI程序運行關系如圖5所示。
用戶瀏覽器端與服務器端建立socket連接后,用戶通過在瀏覽器端單擊1個鏈接的形式獲取網頁,即發(fā)送一個命令
請求,服務器端利用GET命令接受請求、讀取請求,并打印輸出相關數據信息。本研究設計的簡易Web服務器僅支持GET命令,僅接受請求行,而略過了其他復雜參數。主循環(huán)如下所示:
sock=make_server_socket(atoi(av[1]));//建立socket連接監(jiān)聽客戶端請求
if (sock=-1)
exit(2);
while(1)
{fd=accept(sock,NULL,NULL);//接受請求
fpin=fdopen(fd,“r”);
fgets(fpin,request,LEN); //讀取客戶端的請求
read_until_crnl(fpin); //跳過其他命令
process_rq(request,fd); //接收客戶端請求
Fclose(fpin);
}……3試驗測試
通過在不同的溫度下對pH值進行校正,完成pH值為400、6.86、9.18的標準溶液測量,然后通過最小二乘法對不同溫度下pH值直線進行擬合(pH值相對應溫度變化保持線性關系),寫入到檢測程序中,通過查詢相應直線就能得到不同溫度下測量的相對應pH值[13]。試驗測量數據如表1所示。
表1pH值標定數據
溫度
(℃)Ex(pH值=4.00)
(mV)Ex(pH值=6.86)
(mV)Ex(pH值=9.18)
(mV)254937669562649776695627492764957284937609572949276395530492762956注:Ex為標定電壓值。
考慮到溫度對pH值的影響,采用了常用的最小二乘法來擬合直線。
設定標曲線,也就是實際輸出與輸入的特性曲線是y=f(x);擬合直線的方程是Y=A+BX。按最小二乘法,擬合直線與定標曲線的響應點輸出量偏差平方和為最低[14]。
(A,B)=∑ni=1(yi-A-Bxi)2(1)
式中:xi是測試得到的輸入數據;yi是測試得到的輸出數據;n為測試數據組數目。
確定擬合直線方程中的A、B作為變量來求解,分別對A、B變量求偏導,且令其等于零得:
A=2∑ni=1(yi-A-Bxi)=0;
B=2∑ni=1(yi-A-Bxi)xi=0。
整理后得:
∑ni=1yi=nA+B∑ni=1xi
∑ni=1xiyi=A∑ni=1xi+B∑ni=1x2i。
經過計算∑xi、∑yi、∑xiyi、∑x2i數值,代入方程組,構成關于A、B的二元方程組,解得A、B值,即求得擬合直線方程。
在對試驗數據進行處理時,采用了最小二乘法擬合直線。本試驗選用pH值為6.86、9.18進行2點標定,具體擬合的直線參數如表2所示。其系數k=1/b,b=A。
表2不同溫度下擬合pH值曲線系數
溫度
(℃)pHx=k(Ex-b)bk≤24219.129 080.012 477 225~29193.606 420.012 036 730~34174.005 020.011 744 135~39174.374 180.011 779 8≥40182.629 240.011 999 3
同時,在嵌入式開發(fā)板上運行Web服務器,在上位機瀏覽器中輸入應用CGI程序的名稱,通過Web服務器執(zhí)行應用程序[15],在客戶端瀏覽器上實時讀取相應的pH值顯示信息,實現數據的遠程在線監(jiān)測。
4結論
在系統(tǒng)中,將ARM芯片既作為信號的采集終端又作為以太網網關的核心,有效利用了硬件資源。同時,在實時性、穩(wěn)定性較強的Linux操作系統(tǒng)上移植TCP/IP協議,構建Web服務器,編寫應用層通用網關接口程序,實現對水質中pH值的遠距離實時監(jiān)測,滿足了信息傳輸和對系統(tǒng)遠程控制的要求。經反復試驗證明,系統(tǒng)具備較強的實時性和穩(wěn)定性,達到了設計要求。
參考文獻:
[1]朱明瑞,曹廣斌,蔣樹義,等. 工廠化水產養(yǎng)殖水體的pH值在線自動控制系統(tǒng)[J]. 水產學報,2007,31(3):335-342.
[2]張文香,王志敏,張衛(wèi)國. 海水魚類工廠化養(yǎng)殖的現狀與發(fā)展趨勢[J]. 水產科學,2005,24(5):50-52.
[3]Bertocco M,Ferraris F,Offelli C,et al. A client-server architecture for distributed measurement systems[J]. Instrumentation and Measurement,IEEE Transactions on,1998,47(5):1143-1148.endprint
[4]顧相平,胡榮林,朱順五. 一種基于無線傳感器網絡的水質監(jiān)測pH值感知節(jié)點硬件設計[J]. 計算機與現代化,2011(9):49-52.
[5]劉星橋,曾毓楠,季峰. 基于SOC單片機的pH值檢測與控制[J]. 微計算機信息,2008,24(5):99-101.
[6]Alcaraz C,Roman R,Najera P,et al. Security of industrial sensor network-based remote substations in the context of the internet of things[J]. Ad Hoc Networks,2013,11(3):1091-1104.
[7]Drndarevic V,Bolic M. Gamma radiation monitoring with internet-based sensor network[J]. Instrumentation Science and Technology,2008,36(2):121-133.
[8]仲崇權,魯辛凱,李卓函,等. 基于嵌入式Web遠程監(jiān)控的研究與應用[J]. 儀器儀表學報,2006,27(增刊1):575-577.
[9]封相遠. 基于Linux操作系統(tǒng)的Web服務器的設計與實現[D]. 天津:天津大學,2007.
[10]馬新濤,李洪平. 基于ARM和Linux的嵌入式網關的設計與實現[J]. 中國新技術新產品,2010(7):49.
[11]魏計林,邱選兵,王青獅,等. 單芯片嵌入式網關在煤礦井下人員定位中的應用[J]. 現代電子技術,2008(21):143-145,149.
[12]魏丹. Web服務器性能與Web框架應用的研究[D]. 開封:河南大學,2006.
[13]李成春. 基于CC2430無線多參數傳感器檢測網絡的設計[D]. 鎮(zhèn)江:江蘇大學,2010.
[14]解同信. 最小二乘法求作擬合直線[J]. 北京工業(yè)職業(yè)技術學院學報,2006,5(3):5-7.
[15]黃偉偉. 基于嵌入式Web服務器的車載動中通遠程監(jiān)控系統(tǒng)的設計與實現[D]. 南京:南京郵電大學,2013.侯波,徐小華,胡曉飛. 基于LabVIEW和GSM的溫室大棚環(huán)境遠程監(jiān)控系統(tǒng)設計[J]. 江蘇農業(yè)科學,2015,43(1):393-395.endprint