張軍 王天波 劉忠臣 呂美
摘 要:液態(tài)料飼喂因其采食量大、營養(yǎng)吸收好已經(jīng)成為養(yǎng)豬行業(yè)流行的飼喂方式,文中基于物聯(lián)網(wǎng)技術(shù)開發(fā)了液態(tài)飼喂遠(yuǎn)程監(jiān)控系統(tǒng)。通過PLC控制器和基于ARM Cortext-M3的嵌入式采集終端實現(xiàn)了現(xiàn)場飼喂設(shè)備的控制和飼喂數(shù)據(jù)上傳,通過GPRS無線技術(shù)實現(xiàn)了現(xiàn)場設(shè)備與數(shù)據(jù)服務(wù)器的無縫連接??蛻舳瞬捎肂/S(瀏覽器/服務(wù)器)模式通過瀏覽器實現(xiàn)對設(shè)備運(yùn)行的實時監(jiān)控。系統(tǒng)實現(xiàn)了瀏覽器、數(shù)據(jù)服務(wù)器、采集終端、PLC控制器、飼喂設(shè)備之間的控制鏈。試驗結(jié)果表明,該系統(tǒng)性能穩(wěn)定,信息無線采集、設(shè)備自動飼喂及遠(yuǎn)程調(diào)控飼喂均符合實際需求,液態(tài)料飼喂自動化管理可應(yīng)用于自動化、智能化的牲畜養(yǎng)殖中。
關(guān)鍵詞:液態(tài)飼喂;物聯(lián)網(wǎng);遠(yuǎn)程監(jiān)控;瀏覽器/服務(wù)器模式;PLC;ARM Cortext-M3
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2019)05-0-03
0 引 言
隨著我國養(yǎng)豬行業(yè)向工廠化、集約化生產(chǎn)模式的快速轉(zhuǎn)變,我國傳統(tǒng)農(nóng)戶采用的干飼料飼喂模式已經(jīng)不適合現(xiàn)代化養(yǎng)豬行業(yè)。目前,丹麥、德國等國家約有30%的養(yǎng)殖場已經(jīng)開始采用液態(tài)料飼喂模式來養(yǎng)豬,由于豬對液態(tài)料的采食量大且營養(yǎng)吸收好,未來液態(tài)飼喂模式將成為全球養(yǎng)豬行業(yè)的主流飼喂方式[1]。液態(tài)料線飼喂系統(tǒng)通過計算機(jī)控制設(shè)備將固體料或液體料按照配方自動配料并攪拌均勻,再按照飼喂曲線精準(zhǔn)控制每一頭豬的飼喂量。系統(tǒng)自動化程度高,降低了勞動成本,且液態(tài)料采用管道運(yùn)輸,降低了豬舍內(nèi)的粉塵含量和飼料的浪費(fèi)[2-3]。
目前,液態(tài)飼喂系統(tǒng)研究已經(jīng)有了突破性進(jìn)展。高巖[4]等深入分析了液態(tài)飼喂系統(tǒng)在生產(chǎn)中的優(yōu)勢并對液態(tài)飼喂系統(tǒng)設(shè)計和工作原理做了深入分析。徐峰[5]等設(shè)計了基于Profibus總線的全自動液體飼喂系統(tǒng),通過PLC分散控制系統(tǒng)實現(xiàn)液態(tài)飼喂的精準(zhǔn)控制。但這些系統(tǒng)都是直接架設(shè)在豬場本地,受地理位置限制較大,因此本文在前人研究的基礎(chǔ)上,提出了一種基于物聯(lián)網(wǎng)技術(shù)的液態(tài)料飼喂遠(yuǎn)程監(jiān)控系統(tǒng)。系統(tǒng)將物聯(lián)網(wǎng)相關(guān)技術(shù)與液態(tài)飼喂系統(tǒng)相結(jié)合[6-8],突破了液態(tài)飼喂系統(tǒng)受豬舍位置的限制,用戶可以通過網(wǎng)絡(luò)實現(xiàn)對飼喂現(xiàn)場的實時監(jiān)測和精準(zhǔn)化、智能化調(diào)控。
1 系統(tǒng)總體設(shè)計方案
本系統(tǒng)按照功能可分為現(xiàn)場控制系統(tǒng)、數(shù)據(jù)平臺系統(tǒng)和用戶交互平臺系統(tǒng)[9-11]。系統(tǒng)的總體設(shè)計框圖如圖1所示?,F(xiàn)場控制系統(tǒng)主要實現(xiàn)對飼喂流程的自動化控制以及飼喂數(shù)據(jù)的采集和上傳,采用PLC控制器作為核心控制系統(tǒng),其附加的ARM Cortex-M3嵌入式數(shù)據(jù)采集終端通過RS 232串口按照Modbus協(xié)議與PLC通信,采集PLC上的飼喂數(shù)據(jù),再通過GPRS無線網(wǎng)絡(luò)連接到數(shù)據(jù)平臺系統(tǒng),將數(shù)據(jù)上傳至服務(wù)器并從服務(wù)器中接收控制指令。
數(shù)據(jù)平臺系統(tǒng)作為物聯(lián)網(wǎng)系統(tǒng)的核心,其主要功能包括終端接入、數(shù)據(jù)解析處理、將核心數(shù)據(jù)存儲到數(shù)據(jù)庫、控制流處理以及數(shù)據(jù)服務(wù)接口的提供。用戶交互平臺系統(tǒng)允許用戶通過瀏覽器或者手機(jī)APP來監(jiān)控現(xiàn)場設(shè)備的運(yùn)行狀態(tài)以及查詢分析歷史飼喂數(shù)據(jù)。
2 方法及實現(xiàn)
2.1 現(xiàn)場控制系統(tǒng)的設(shè)計
2.1.1 基于PLC的現(xiàn)場飼喂控制模塊
PLC是一種可編程控制器,具有可靠性強(qiáng)、抗干擾能力強(qiáng)、便于安裝和拓展的特點(diǎn),非常適合豬場復(fù)雜的分布格局和惡劣的環(huán)境[12-13]。液態(tài)飼喂流程分為加水、加料、攪拌、充管、分送、清管、洗灌、回槽、噴淋、返水共10個步驟,其可操作運(yùn)行界面如圖2所示。
設(shè)備的控制模式分為手動控制和自動控制兩種,默認(rèn)采用自動控制模式,適合無人監(jiān)控的環(huán)境。而手動控制模式下方便管理人員或?qū)<彝ㄟ^Web頁面監(jiān)控現(xiàn)場,并依據(jù)專家經(jīng)驗對不同豬舍的個性化要求進(jìn)行調(diào)控,設(shè)備維護(hù)人員也可以通過該模式遠(yuǎn)程調(diào)試設(shè)備,排查故障發(fā)生的原因,降低設(shè)備的維護(hù)成本。
2.1.2 基于ARM Cortext-M3的數(shù)據(jù)采集終端
STM32單片機(jī)是ST公司在業(yè)界最先推出的基于ARM Cortex-M3內(nèi)核的,專為高性能、低功耗、低成本嵌入式應(yīng)用設(shè)計的32 bit微控制產(chǎn)品[14-15]。其內(nèi)部集成多路USART控制器、PWM控制器、SPI控制器、CAN控制器、DMA控制器、USB控制器、以太網(wǎng)控制器等,有利于簡化控制系統(tǒng)外圍電路設(shè)計,可靠性更高。采集終端以STM32微處理器作為控制單元,外部集成了GPS/BD定位模塊、GPRS通信模塊以及RS 232,RS 485串口通信模塊。終端工作流程如圖3所示。
采集終端在完成初始化并連接到數(shù)據(jù)處理服務(wù)器后,開始采集數(shù)據(jù)及監(jiān)聽服務(wù)器發(fā)來的控制指令。對于需要實時監(jiān)測的數(shù)據(jù)則及時上傳,每隔6 s進(jìn)行一次數(shù)據(jù)讀取與上傳,需要實時上傳的數(shù)據(jù)包括設(shè)備報警信息、設(shè)備各閥門的開關(guān)狀態(tài)、設(shè)備內(nèi)各系統(tǒng)的運(yùn)行狀態(tài)。當(dāng)天的飼喂量、給水量、配方和飼喂曲線數(shù)據(jù)在每天11:30飼喂結(jié)束后一次性采集上傳。控制指令分為修改參數(shù)指令和開關(guān)控制指令,修改參數(shù)需要修改PLC控制器內(nèi)對應(yīng)內(nèi)存地址的數(shù)據(jù),開關(guān)控制指令則需要將PLC對應(yīng)開關(guān)的內(nèi)存從0置為1或從1置為0來產(chǎn)生脈沖,控制繼電器打開或關(guān)閉對應(yīng)閥門。
2.2 數(shù)據(jù)平臺系統(tǒng)的設(shè)計
數(shù)據(jù)平臺系統(tǒng)分為基于Socket的網(wǎng)絡(luò)通信模塊、數(shù)據(jù)解析處理模塊、控制指令和數(shù)據(jù)請求處理模塊。系統(tǒng)內(nèi)部設(shè)計如圖4所示。
2.2.1 基于Socket的網(wǎng)絡(luò)通信模塊設(shè)計
該模塊借鑒新浪FastSocket開源通信框架,在模塊內(nèi)部實現(xiàn)了一個動態(tài)連接庫libfsocket.so來攔截socket,bind,listen等并進(jìn)行處理,實現(xiàn)了多進(jìn)程擁有多個accept隊列的模式,適用于系統(tǒng)自身TCP短連接較多的情況。當(dāng)通信模塊監(jiān)聽到終端連接時會通過終端的Token編號來校驗終端的合法性,如果合法則將該連接維護(hù)到連接列表中并開始接收終端上傳的數(shù)據(jù),再將接收的數(shù)據(jù)傳入數(shù)據(jù)解析處理模塊進(jìn)行處理。
2.2.2 數(shù)據(jù)解析處理模塊
終端數(shù)據(jù)格式如圖5所示。數(shù)據(jù)分為Header(數(shù)據(jù)頭)和Data(數(shù)據(jù)區(qū))兩部分。Header包含了本條數(shù)據(jù)的標(biāo)識信息,其中終端編號作為終端唯一標(biāo)識,mType標(biāo)識出本條數(shù)據(jù)的類型,crcCheck是將數(shù)據(jù)區(qū)按照CRC校驗算法(Cyclic Redundancy Check,CRC)產(chǎn)生的CRC校驗碼,CRC是數(shù)據(jù)通信領(lǐng)域中一種常用的查錯校驗碼,用來保證數(shù)據(jù)的完整性和正確性[16]。Data則包含了數(shù)據(jù)的具體內(nèi)容。
數(shù)據(jù)解析完成后將根據(jù)數(shù)據(jù)類型的不同將歷史數(shù)據(jù)存入數(shù)據(jù)庫,實時數(shù)據(jù)存入系統(tǒng)內(nèi)存中方便調(diào)用,控制結(jié)果數(shù)據(jù)直接交由控制指令處理模塊處理。
2.2.3 控制指令和數(shù)據(jù)請求處理模塊
該模塊主要負(fù)責(zé)處理用戶在對設(shè)備進(jìn)行監(jiān)控時發(fā)送到服務(wù)器的實時數(shù)據(jù)請求和控制指令,考慮到這些需求對實時性要求比較高,處理模塊與用戶端之間采用WebSocket通信協(xié)議。WebSocket協(xié)議在瀏覽器與服務(wù)器“握手”成功后允許服務(wù)器向瀏覽器推送數(shù)據(jù),實現(xiàn)二者的雙工通信,與傳統(tǒng)的長連接和多輪詢方式相比效率更高、實時性更好[17-18]。模塊處理流程如圖6所示。
服務(wù)器啟動后根據(jù)配置文件開始監(jiān)聽指定端口的用戶請求,如果是請求設(shè)備實時數(shù)據(jù),則直接從服務(wù)器內(nèi)存讀取對應(yīng)的數(shù)據(jù)并返回給該用戶。如果是控制指令則交給設(shè)備連接模塊,連接模塊從其維護(hù)的所有設(shè)備連接中找到對應(yīng)設(shè)備并發(fā)送該控制指令。模塊內(nèi)部設(shè)有超時機(jī)制,如果設(shè)備長時間未回復(fù)執(zhí)行結(jié)果則重新發(fā)送控制指令,如果重復(fù)次數(shù)超過最大次數(shù)則回復(fù)用戶設(shè)備執(zhí)行指令超時并記錄到系統(tǒng)日志中。
3 應(yīng)用效果及討論
3.1 用戶交互平臺系統(tǒng)
用戶交互平臺系統(tǒng)主要包括PC端和APP端兩部分。PC端包含了平臺全部功能,適合工作人員遠(yuǎn)程監(jiān)控管理所有豬場。APP端得益于移動終端便于攜帶的特點(diǎn),適合操作人員在現(xiàn)場作業(yè)時使用移動終端操作飼喂設(shè)備。PC端系統(tǒng)界面如圖7所示。
PC端核心業(yè)務(wù)包括設(shè)備運(yùn)行狀態(tài)的實時監(jiān)控、所有下料口飼喂量調(diào)整、各階段豬的飼喂曲線的調(diào)整、不同豬舍飼喂配方的調(diào)整、設(shè)備報警信息統(tǒng)計以及設(shè)備飼喂量的統(tǒng)計[19-20]。Browser端采用目前流行的HTML5,CSS3技術(shù)和流式布局技術(shù),能夠自動適應(yīng)PC,Pad,手機(jī)等顯示器的大小,方便用戶使用。
3.2 遠(yuǎn)程手動控制實驗
本文以登封一豬場作為實驗地點(diǎn),該豬場的面積約為720 m2,共5棟豬舍,約100個下料口,1 200頭豬?,F(xiàn)場設(shè)備部署完成后,試驗了在手動控制模式下,通過無線遠(yuǎn)程方式來控制設(shè)備的運(yùn)行。
試驗方法:使用一臺電腦的瀏覽器登錄液態(tài)料線監(jiān)測平臺,通過點(diǎn)擊實際運(yùn)行中最常用的點(diǎn)控按鈕來控制設(shè)備運(yùn)行。
實驗完成后,在數(shù)據(jù)平臺系統(tǒng)的后臺輸出界面輸出信息,如圖8所示。本次測試共點(diǎn)擊了10次點(diǎn)控按鈕,從輸出信息可以看出,在現(xiàn)場網(wǎng)絡(luò)信號良好的情況下,從控制指令發(fā)出到設(shè)備回復(fù)用時均可控制在2 s以內(nèi),且指令都能夠成功執(zhí)行。可見,瀏覽器、數(shù)據(jù)服務(wù)器、采集終端、PLC控制器、飼喂設(shè)備的控制鏈可靠性強(qiáng)且實時性好,達(dá)到了預(yù)期效果。
4 結(jié) 語
本文簡要介紹了基于物聯(lián)網(wǎng)技術(shù)的液態(tài)料飼喂遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計方法和系統(tǒng)開發(fā)的主要流程,然后檢測實際應(yīng)用效果。通過研究和應(yīng)用表明,該系統(tǒng)通過使用物聯(lián)網(wǎng)技術(shù),實現(xiàn)了飼喂設(shè)備與嵌入式采集終端之間、終端與數(shù)據(jù)服務(wù)器之間、服務(wù)器與用戶之間的信息交換和通信,實現(xiàn)了豬舍液態(tài)飼喂的自動化、飼喂信息的精準(zhǔn)調(diào)控和遠(yuǎn)程實時監(jiān)控[21]。該系統(tǒng)的功能還可以拓展到對豬舍環(huán)境的自動監(jiān)控,實現(xiàn)讓豬舍長期保持最適宜生長環(huán)境的目標(biāo),在農(nóng)牧領(lǐng)域具有很好的應(yīng)用發(fā)展前景。
參 考 文 獻(xiàn)
[1]黃利軍,于洋.豬場液態(tài)料智能飼喂設(shè)備與工藝的應(yīng)用技術(shù)[J].今日養(yǎng)豬業(yè),2017,14(4):44-48
[2]宋忠旭,李良華,嚴(yán)榮華.規(guī)?;i場液態(tài)料智能化飼喂系統(tǒng)的應(yīng)用與實踐[J].養(yǎng)豬,2007,22(6):30-32.
[3]郗偉斌,顏卉,關(guān)貴巖.豬液態(tài)飼喂理論與實踐[J].養(yǎng)豬,2004,19(2):9-10.
[4]高巖.液態(tài)料系統(tǒng)在國內(nèi)的應(yīng)用前景和挑戰(zhàn)[J].今日養(yǎng)豬業(yè),2017,14(4):40-42.
[5]許峰,沈國強(qiáng),倪敬,等.基于Profibus總線的全自動液體飼喂系統(tǒng)[J].機(jī)電工程,2010,17(12):71-73.
[6]王建強(qiáng),吳辰文,李曉軍.車聯(lián)網(wǎng)架構(gòu)與關(guān)鍵技術(shù)研究[J].微計算機(jī)信息,2011,28(4):156-158.
[7]李靜林,劉志晗,楊放春.車聯(lián)網(wǎng)體系結(jié)構(gòu)及其關(guān)鍵技術(shù)[J].北京郵電大學(xué)學(xué)報,2014,52(6):95-100.
[8]謝楊,張潔.基于云計算的現(xiàn)代農(nóng)業(yè)物聯(lián)網(wǎng)監(jiān)控系統(tǒng)[D].成都:西南交通大學(xué),2015.
[9] CHEN HM, CUI L.Design and model checking of service oriented software architecture for internet of things: a survey[J].Chinese journal of computers,2016,39(5):254-269.
[10]鄭紀(jì)業(yè),阮懷軍,封文杰,等.農(nóng)業(yè)物聯(lián)網(wǎng)體系結(jié)構(gòu)與應(yīng)用領(lǐng)域研究進(jìn)展[J].中國農(nóng)業(yè)科學(xué),2017,50(4):657-668.
[11] Electronics and Telecommunication Research Institute(ETRI) of the Republic of Korea. Requirements from support of USN applications and services in NGN environment[C]// Proceedings of the ITU NGN Global Standards Initiative(NGN-GSI) Rapporteur Group Meeting.Geneva,Switzerland,2007:11-21.
[12]周敏,韓宇光,王軍安,等.基于西門子PLC的智能溫室控制系統(tǒng)設(shè)計[J].實驗室研究與探索,2014,33(12):99-101.
[13]李立峰,武佩,麻碩士,等.基于組態(tài)軟件和模糊控制的分娩母豬舍環(huán)境監(jiān)控系統(tǒng)[J].農(nóng)業(yè)工程學(xué)報,2011,27(6):231-236.
[14]彭剛,秦志強(qiáng).基于ARM Cortex-M3的STM32系列嵌入式控制器應(yīng)用實踐[M].北京:電子工業(yè)出版社,2011.
[15]趙慶松,蘇敏.基于ARM的直流電機(jī)調(diào)速系統(tǒng)的設(shè)計與實現(xiàn)[J].微計算機(jī)信息,2007,24(2):173-175.
[16]馬吉明,程立輝,張素智.字節(jié)型CRC算法分析與實現(xiàn)[J].微計算機(jī)信息,2006,23(9):234-236.
[17]花奇.物聯(lián)網(wǎng)后端Web Service的研究[D].武漢:湖北工業(yè)大學(xué),2015.
[18] David Gourley.HTTP 權(quán)威指南[M].北京:人民郵電出版社,2012.
[19]李采.數(shù)據(jù)采集物聯(lián)網(wǎng)前端的軟件設(shè)計[D].武漢:湖北工業(yè)大學(xué),2015.
[20]張麗偉.面向ERP的商務(wù)智能應(yīng)用研究[D].成都:成都理工大學(xué),2013.
[21]朱偉興,戴陳云,黃鵬.基于物聯(lián)網(wǎng)的保育豬舍環(huán)境監(jiān)控系統(tǒng)[J].農(nóng)業(yè)工程學(xué)報,2012,28(11):177-182.