陳 浩,陳 興,劉 芳,馬 朋
(1.揚(yáng)州大學(xué)電氣與能源動力工程學(xué)院,江蘇 揚(yáng)州225127;2.江蘇省水文水資源勘測局揚(yáng)州分局,江蘇 揚(yáng)州225009)
隨著世界經(jīng)濟(jì)快速平穩(wěn)發(fā)展,水資源緊缺問題一直是全球爭議不斷的熱點(diǎn),于是中國相繼出臺了節(jié)約用水的政策,改善工業(yè)用水,規(guī)范國民用水,保護(hù)淡水資源,興建水利泵站等措施,意在解決水資源瀕臨枯竭問題[1]。中國小型泵站建設(shè)起步較晚,小型泵站設(shè)施不夠完善,數(shù)字化建設(shè)的小型泵站還在研發(fā)中,并沒有大規(guī)模推廣。數(shù)字化建設(shè)旨在統(tǒng)一管理小型泵站,一般采用分層式集中管理,即在辦公室設(shè)有中央管理中心,采用電腦、4G網(wǎng)絡(luò)和傳感器相聯(lián)接,對灌區(qū)的各個(gè)小型泵站、灌排渠道等進(jìn)行集中監(jiān)控,以求達(dá)到對灌區(qū)綜合管理的目的[2]。數(shù)字化建設(shè)有助于小型泵站的智能一體化發(fā)展,它能及時(shí)調(diào)度小型泵站的灌溉,靈活地應(yīng)對干旱天氣所造成的農(nóng)作物大面積損失的情況,極大提高了泵站一體化水平,小型泵站所處的位置比較分散,便于實(shí)現(xiàn)數(shù)字化統(tǒng)一管理。
數(shù)字化建設(shè)主要依靠信息技術(shù)的發(fā)展,數(shù)字信息化結(jié)構(gòu)主要包括現(xiàn)場控制單元層、網(wǎng)絡(luò)傳輸層、云平臺層?,F(xiàn)場控制單元層是各類傳感器自動測量構(gòu)成,通過傳感器技術(shù)對農(nóng)田灌溉中產(chǎn)生影響的因素如泵站機(jī)房的溫度、泵站電機(jī)的電壓與電流、渠道液位與管道壓力等數(shù)據(jù)信息進(jìn)行采集,實(shí)現(xiàn)數(shù)字化灌溉。網(wǎng)絡(luò)傳輸層是將現(xiàn)場控制單元層中的傳感器采集的數(shù)據(jù)通過4G網(wǎng)絡(luò)與TCP協(xié)議相結(jié)合的4G模塊向互聯(lián)網(wǎng)傳輸。云平臺層是將采集到的數(shù)據(jù)在OneNET云平臺上直觀顯示,在OneNET云平臺中用戶可以了解泵站運(yùn)行的各類參數(shù),并做出正確的判斷,實(shí)現(xiàn)對泵站電機(jī)遠(yuǎn)程控制。
數(shù)字化小型泵站總體結(jié)構(gòu)主要包括現(xiàn)場控制單元層、網(wǎng)絡(luò)傳輸層、云平臺層[3]?;贠neNET的數(shù)字化小型泵站結(jié)構(gòu)如圖1所示。
圖1 數(shù)字化小型泵站結(jié)構(gòu)
現(xiàn)場控制單元硬件結(jié)構(gòu)主要圍繞3大類電路,主控板電路主要包括單片機(jī)STM32F103ZET6芯片及外圍電路(復(fù)位電路、晶振電路、仿真器下載電路、供電電路、溫度采集模塊電路、繼電器控制電路)[4];通訊電路主要由4G模塊供電電路構(gòu)成;泵站機(jī)組控制電路主要包含機(jī)組電氣控制電路(圖2)。
該結(jié)構(gòu)使用的是USR-LTE-7S4模塊來構(gòu)成通訊部分,4G模塊有23個(gè)引腳,其中主要有6號引腳UTXD1(串口發(fā)送腳)、7號引腳URXD1(串口接收腳)、12號引腳GND、13號引腳VCC,其余的分別為USIM卡接口、網(wǎng)絡(luò)狀態(tài)指示接口、模塊開關(guān)機(jī)接口等[5]。
圖2 現(xiàn)場控制單元硬件結(jié)構(gòu)框
傳輸協(xié)議選用TCP網(wǎng)絡(luò)透傳協(xié)議,應(yīng)用層向TCP傳輸層發(fā)送用于互聯(lián)網(wǎng)間傳輸?shù)摹⒂?位字節(jié)表示的數(shù)據(jù)流[6],然后TCP把數(shù)據(jù)流分區(qū)成適當(dāng)長度的報(bào)文段,最后TCP把結(jié)果包傳輸給IP層,由其來通過4G網(wǎng)絡(luò)將數(shù)據(jù)包傳送給接收端實(shí)體的TCP層。TCP為了保證不發(fā)生丟包現(xiàn)象,就給每個(gè)數(shù)據(jù)包一個(gè)序列號,同時(shí)序列號也保證了傳送層到接收端實(shí)體的數(shù)據(jù)包是按順序接收。
本結(jié)構(gòu)主要采用OneNET云平臺,OneNET云平臺是中國移動推出的免費(fèi)大眾化硬件終端的平臺。OneNET云平臺自身運(yùn)營體系十分完善,安全可靠,為開發(fā)人員提供設(shè)備端SDK,還有大量數(shù)據(jù)流存儲空間,而且對通信傳輸通道會有密碼保護(hù),這樣安全的保護(hù)措施,完全符合數(shù)字化建設(shè)的開發(fā)研究。
圖3 OneNET平臺的基本框架
OneNET平臺在應(yīng)用開發(fā)中,充當(dāng)著橋梁的作用。其定位于PaaS服務(wù),位于IaaS層與SaaS層之間。如圖3是OneNET平臺的基本框架。從圖3可以看出,OneNET平臺應(yīng)用范圍很廣,為能源、工業(yè)、農(nóng)業(yè)、車載、環(huán)境等各行業(yè)提供技術(shù)支持。在OneNET平臺上,用戶可以注冊惟一的賬號信息,每個(gè)用戶擁有最大資源集合,可以創(chuàng)建多個(gè)產(chǎn)品,產(chǎn)品下包括設(shè)備、數(shù)據(jù)流、數(shù)據(jù)觸發(fā)器、設(shè)備權(quán)限等許多應(yīng)用,產(chǎn)品又分為私有隱私產(chǎn)品和公開隱私產(chǎn)品2種。各個(gè)產(chǎn)品可以創(chuàng)建多個(gè)設(shè)備、觸發(fā)器、應(yīng)用和APIKey,每個(gè)設(shè)備又能創(chuàng)建多個(gè)數(shù)據(jù)流,用來存儲數(shù)據(jù),單個(gè)數(shù)據(jù)流用來存放同一屬性的數(shù)據(jù),如溫度、電壓、電流等。APIKey是調(diào)用API的密匙,當(dāng)用戶訪問對應(yīng)產(chǎn)品時(shí),必須通過相對應(yīng)的APIKey才能訪問[7]。
OneNET云平臺數(shù)據(jù)解析腳本主要是Lua腳本的編輯,編輯Lua腳本采用了Sublime Text 3編輯軟件,Sublime Text 3是一個(gè)代碼腳本生成編輯器,也是HTML和文本編輯器。Sublime Text是由程序員Jon Skinner于2008年1月開發(fā)出來,它最初被設(shè)計(jì)為一個(gè)具有豐富擴(kuò)展功能的Vim,Sublime Text 3是Sublime Text升級更新的第三代產(chǎn)品[8]。
Lua是廣泛應(yīng)用的腳本語言,Lua腳本的設(shè)計(jì)初衷就是為了嵌入在應(yīng)用程序中,它是一種輕巧的腳本語言,它的官方版本只有一個(gè)精簡的語言編輯器和最基本的庫[9]。使得Lua體積較小、啟動速度較快。它是用C語言編寫并且以源代碼形式開放,編譯后僅100 K大小,很方便嵌入到應(yīng)用程序中。Lua腳本很容易被C/C++程序調(diào)用,也可以反過來調(diào)用C/C++函數(shù)。圖4為Lua腳本在OneNET云平臺中解析數(shù)據(jù)流程。
圖4 Lua腳本在OneNET云平臺中解析數(shù)據(jù)流程
單片機(jī)STM32F103ZET6上傳字符串?dāng)?shù)據(jù)是將字符串?dāng)?shù)據(jù)拆開一個(gè)字符接著一個(gè)字符上傳,直到讀取到空格符,一個(gè)字符串?dāng)?shù)據(jù)才發(fā)送完畢。在單片機(jī)發(fā)送字符串?dāng)?shù)據(jù)同時(shí),Lua腳本進(jìn)行數(shù)據(jù)解析,待單片機(jī)將字符串?dāng)?shù)據(jù)上傳完畢,在Lua腳本中已經(jīng)組合了原來的字符串?dāng)?shù)據(jù),然后將數(shù)據(jù)保存在ta?ble中,將table序列轉(zhuǎn)化成JSON格式,最后生成一條數(shù)據(jù)流,在OneNET云平臺上顯示出來。圖5為部分Lua腳本解析數(shù)據(jù)程序。
圖5 部分Lua腳本解析數(shù)據(jù)程序
經(jīng)過Lua腳本數(shù)據(jù)解析后,用戶可以在數(shù)據(jù)流展示模塊上看到數(shù)據(jù)情況,該系統(tǒng)主要是溫度數(shù)據(jù)、泵站機(jī)組電壓與電流數(shù)據(jù)、渠道液位數(shù)據(jù)及管道液壓數(shù)據(jù)。圖6為溫度數(shù)據(jù)在OneNET平臺上顯示。圖7為OneNET云平臺控制繼電器的流程。OneNET云平臺在TCP協(xié)議模式下可以進(jìn)行字符數(shù)據(jù)下發(fā),4G模塊將OneNET云平臺下發(fā)的字符數(shù)據(jù)傳輸?shù)絾纹瑱C(jī)的串口上。單片機(jī)讀取到數(shù)據(jù)后進(jìn)入串口中斷程序,接收到‘1’時(shí),GPIO引腳輸出低電平,繼電器控制電路導(dǎo)通,1號繼電器產(chǎn)生動作,泵站機(jī)組控制電路導(dǎo)通,電機(jī)轉(zhuǎn)動。當(dāng)OneNET云平臺下發(fā)字符數(shù)據(jù)‘0’時(shí),單片機(jī)接收到數(shù)據(jù)后,GPIO引腳同樣輸出低電平,2號繼電器產(chǎn)生動作,泵站機(jī)組控制電路斷路,電機(jī)停止轉(zhuǎn)動。當(dāng)OneNET云平臺下發(fā)字符數(shù)據(jù)‘2’時(shí),單片機(jī)接收到數(shù)據(jù)后,GPIO引腳再次輸出低電平,2號繼電器產(chǎn)生動作,泵站機(jī)組控制電路導(dǎo)通,電機(jī)重新轉(zhuǎn)動。
圖6 溫度數(shù)據(jù)在OneNET平臺上顯示
管理中心客戶端為OneNET云平臺,用戶可以登錄OneNET云平臺實(shí)時(shí)查看泵站運(yùn)行狀況,圖8為用戶登錄OneNET云平臺的操作界面。
圖7 OneNET云平臺控制繼電器的流程
圖8 用戶登錄OneNET云平臺的操作界面
用戶登錄OneNET云平臺成功后,可以看到產(chǎn)品概況、產(chǎn)品ID、TCP透傳方式以及設(shè)備在線等信息界面,圖9為OneNET云平臺產(chǎn)品操作界面。
圖9 OneNET云平臺產(chǎn)品操作界面
在產(chǎn)品操作界面點(diǎn)擊設(shè)備列表,就可以看到用戶創(chuàng)建的泵房溫度、泵站電機(jī)電壓、泵站電機(jī)電流、渠道液位以及管道壓力等參數(shù)。圖10為小型泵站的參數(shù)設(shè)備。此外還可以看到泵站所在的位置,如圖11所示。
圖10 小型泵站的參數(shù)設(shè)備
圖11 小型泵站泵站所在的位置信息
以查看泵房溫度數(shù)據(jù)為例,用戶進(jìn)入設(shè)備界面后,點(diǎn)擊查看數(shù)據(jù)流信息,數(shù)據(jù)流自動展示在操作界面上(圖12)。
圖12 泵房溫度顯示界面
用戶通過OneNET云平臺下發(fā)控制指令,單片機(jī)接收到指令后,作出相應(yīng)的動作控制泵站電機(jī)的啟停。用戶通過OneNET云平臺下發(fā)指令操作界面如圖13所示。
數(shù)字化建設(shè)不再拘泥于傳統(tǒng)的小型泵站建設(shè),將物聯(lián)網(wǎng)技術(shù)應(yīng)用到小型泵站建設(shè)中,提高了泵站灌溉效率,節(jié)約用水,減少了農(nóng)業(yè)污染。數(shù)字化建設(shè)可以大規(guī)模調(diào)度本地區(qū)小型泵站,將分散的小型泵站統(tǒng)一管理,遠(yuǎn)程監(jiān)控本地區(qū)小型泵站運(yùn)行狀況,減少管理成本,極大促進(jìn)了現(xiàn)代農(nóng)業(yè)向智能化、一體化、高效率化發(fā)展。
圖13 OneNET云平臺下發(fā)指令操作界面