文/羅清堯 薛夫光 呂堅(jiān)強(qiáng)
近年來,隨著嵌入式技術(shù)、無線通信技術(shù)的發(fā)展,加之硬件性能的不斷提高,智能移動(dòng)終端得到廣泛普及,已成為人們生活中不可缺少的一部分,智能移動(dòng)終端在各行各業(yè)的移動(dòng)應(yīng)用越來越普遍。移動(dòng)終端上全球定位系統(tǒng)(Global Posioton System, GPS)等定位技術(shù)的廣泛應(yīng)用,使得地理位置的獲取也變得更加容易:如通過GPS、WIFI、無限蜂窩網(wǎng)等。基于位置的服務(wù)(Location Based Service,LBS)由此得到了迅猛的發(fā)揮和普及。基于地理位置信息的移動(dòng)終端主要包括安卓、蘋果系統(tǒng)的環(huán)境信息或物聯(lián)網(wǎng)信息采集系統(tǒng)、農(nóng)業(yè)信息服務(wù)等技術(shù)都已應(yīng)用到現(xiàn)代農(nóng)業(yè)之中。
飼料采樣,即從待測(cè)飼料原料或產(chǎn)品中獲取一定數(shù)量、具有代表性樣品的過程。不同類別的飼料都有相應(yīng)的采樣操作規(guī)范,規(guī)范的采樣過程是獲取代表性樣品、高質(zhì)量分析數(shù)據(jù)的基礎(chǔ)和保障。飼料化學(xué)分析結(jié)果的可靠性,不僅取決于化學(xué)分析方法本身的準(zhǔn)確性,更重要的還取決于飼料樣本的采集與制備。
在采樣過程中,需要登記飼料樣品采樣登記表。為了實(shí)現(xiàn)采樣活動(dòng)中位置、圖像等現(xiàn)場(chǎng)信息采集便捷、及時(shí)、有效的現(xiàn)實(shí)需求,實(shí)時(shí)收集飼料樣品采樣地理位置信息,及時(shí)掌握采樣進(jìn)度,利用移動(dòng)設(shè)備自動(dòng)獲取采樣位置信息和圖像信息作為登記表補(bǔ)充,減少人為干擾因素,開發(fā)配套的智能移動(dòng)設(shè)備終端位置信息采集軟件十分必要??紤]到移動(dòng)終端特征,系統(tǒng)只選取飼料樣品采樣作業(yè)過程中幾個(gè)參數(shù),主要包括樣品標(biāo)識(shí)(條碼)、位置信息(東經(jīng)和北緯)、采樣地點(diǎn)、現(xiàn)場(chǎng)圖像和時(shí)間。系統(tǒng)實(shí)現(xiàn)這些信息的現(xiàn)場(chǎng)收集和上傳,實(shí)現(xiàn)即時(shí)性上傳到項(xiàng)目管理的數(shù)據(jù)庫,方便項(xiàng)目及時(shí)掌握進(jìn)度和統(tǒng)一管理。
本系統(tǒng)包括移動(dòng)端APP和服務(wù)器端網(wǎng)站兩部分,開發(fā)環(huán)境包括移動(dòng)終端APP應(yīng)用的開發(fā)環(huán)境和服務(wù)器端數(shù)據(jù)庫管理及網(wǎng)站開發(fā)環(huán)境。
移動(dòng)端軟件開發(fā)環(huán)境包括Java開發(fā)工 具 包JDK ( Java SE Development Kit,1.8.0_45),Java運(yùn)行環(huán)境JRE(Java Runtime Environment,1.8.0_45 ) ,Android 軟 件 開發(fā)工具包Android SDK,插件ADT(Android Development Tools),Android運(yùn)行的虛擬設(shè)備AVD(Android Virtual Device)。
移動(dòng)端開發(fā)采用HBuilder為開發(fā)工具實(shí)現(xiàn)軟件代碼開發(fā)。HBuilder是DCloud(數(shù)字天堂)推出的一款支持HTML5的Web開發(fā)IDE。HBuilder的 編 寫 用 到 了Java、C、Web和Ruby。HBuilder本身主體是由Java編寫,它基于Eclipse,兼容了Eclipse的插件。HBuilder本身是一款功能豐富、集成開發(fā)環(huán)境、多平臺(tái)開發(fā)的一款易學(xué)易用的開發(fā)工具,實(shí)現(xiàn)了emmet、sass、less自動(dòng)編譯,完整的代碼提示、自動(dòng)補(bǔ)全,是邊改邊看實(shí)時(shí)查看效果、代碼塊減少重復(fù)工作量、使用CSS選擇器快速開發(fā)HTML和CSS(支持Emmet)、強(qiáng)大的JS解析引擎,是一款前端IDE,可做前端開發(fā),最大的亮點(diǎn)是開發(fā)App,利用Html5+技術(shù),結(jié)合mui+nativejs可以打包出Android和IOS的APP。本系統(tǒng)只開發(fā)打包了Android版本的APP系統(tǒng),可使用在Android系統(tǒng)的移動(dòng)終端上。
服務(wù)器操作系統(tǒng)為Microsoft Windows Server 2008 R2 Enterprise,數(shù)據(jù)庫采用Microsoft SQL Server2010數(shù)據(jù)庫管理系統(tǒng),網(wǎng)站發(fā)布使用的Apache-tomcat服務(wù)器。Java網(wǎng)站開發(fā)工具主要是MyEclipse 10,其他相關(guān)需要安裝配置的軟件包括Java 開發(fā)工具包JDK( Java SE Development Kit,1.8.0_45),運(yùn) 行 環(huán)境JRE(Java Runtime Environment,1.8.0_45 ) 和Apache-tomcat(7.0.4) 。
本系統(tǒng)包括移動(dòng)端APP和服務(wù)器端網(wǎng)站兩部分,其中,移動(dòng)終端APP系統(tǒng)主要包括現(xiàn)場(chǎng)樣品采集模塊、異地樣品采集信息采集模塊、樣品信息查詢模塊;服務(wù)器端系統(tǒng)主要包括與移動(dòng)終端數(shù)據(jù)交互接口程序Java Servlet模塊3個(gè)、飼料樣品標(biāo)識(shí)管理(核心是二維碼)模塊1個(gè)。
圖1:系統(tǒng)主要功能模塊組成
數(shù)據(jù)庫采用SQL Server 2010,系統(tǒng)應(yīng)用主要涉及的數(shù)據(jù)表4個(gè),包括飼料原料代碼表、區(qū)縣行政代碼表、飼料樣品條碼明細(xì)表、飼料樣品采樣信息記錄表。如圖1所示。
為探尋提高雜質(zhì)鉛脫除較為合理、有效的工藝控制條件和解決辦法,首先對(duì)閃速吹煉工藝中鉛的分布進(jìn)行了系統(tǒng)分析。中原冶煉廠銅閃速吹煉過程雜質(zhì)鉛的走向與分布見表2。
樣品標(biāo)簽由文字、數(shù)字及二維碼三部分內(nèi)容組成,如圖2所示。
樣品標(biāo)識(shí)二維碼數(shù)字組成由三部分,飼料原料代碼(2位),行政區(qū)劃代碼(6位),同一飼料樣品的順序編碼(4位),共14位。其中,飼料原料共40個(gè),對(duì)應(yīng)代碼為01至40;區(qū)縣行政代碼使用國(guó)家標(biāo)準(zhǔn)《中華人民共和國(guó)行政區(qū)劃代碼》(GB/T2260-2007) 中6位行政區(qū)劃代碼。行政區(qū)劃代碼,也稱行政代碼,它是國(guó)家行政機(jī)關(guān)的識(shí)別符號(hào),其中第一、二位表示省(自治區(qū)、直轄市)、第三、四位表示市(地區(qū)、自治州)、第五、六位表示縣(市轄區(qū)、縣級(jí)市)。樣品標(biāo)識(shí)的編碼數(shù)字及二維碼數(shù)字時(shí)相同的,二維碼由編碼數(shù)據(jù)為基礎(chǔ)產(chǎn)生,在三段數(shù)字之間插入1-2位符號(hào)(不可見,默認(rèn)為空格),作為對(duì)系統(tǒng)移動(dòng)終APP端識(shí)別二維碼時(shí)數(shù)據(jù)處理的特有標(biāo)記。
系統(tǒng)每個(gè)樣品標(biāo)識(shí)打印4份,每個(gè)標(biāo)識(shí)之間留一個(gè)空白標(biāo)簽。樣品標(biāo)識(shí)(標(biāo)簽)顯示有飼料原料名稱、省市名稱、標(biāo)識(shí)的編碼數(shù)字(原料代碼、行政區(qū)劃代碼、樣品順序號(hào))及二維碼圖片。標(biāo)簽紙選擇的是防水、防油、不可撕破、耐高溫的PET標(biāo)簽紙,標(biāo)簽大小規(guī)格為30mm×45mm。
樣品標(biāo)簽打印使用斑馬標(biāo)簽打印機(jī)(ZEBRA ZT 210),打印機(jī)條碼字體設(shè)置為默認(rèn)的Code128,標(biāo)簽紙張類型設(shè)置為熱敏。
本系統(tǒng)設(shè)計(jì)中,Android客戶端和Web服務(wù)器端的文本數(shù)據(jù)交互是通過HTTP協(xié)議和JSON數(shù)據(jù)格式實(shí)現(xiàn)。服務(wù)器端通過3個(gè)Java Servlet程序?qū)崿F(xiàn)服務(wù)器端與移動(dòng)端的數(shù)據(jù)交互。
圖2:飼料樣品標(biāo)識(shí)管理及樣品標(biāo)簽
圖3:飼料樣品采集APP操作界面
對(duì)應(yīng)移動(dòng)端APP現(xiàn)場(chǎng)及異地樣品采樣信息模塊的樣品采集信息數(shù)據(jù),首先根據(jù)移動(dòng)端APP提供的樣品二維碼進(jìn)行飼料樣品標(biāo)識(shí)數(shù)據(jù)合法性驗(yàn)證,然后接受數(shù)據(jù)并將數(shù)據(jù)寫入SQL數(shù)據(jù)庫中,并向移動(dòng)端APP返回?cái)?shù)據(jù)處理完成結(jié)果。
對(duì)于樣品圖像查詢模塊,首先根據(jù)移動(dòng)端APP提供的樣品二維碼進(jìn)行飼料樣品標(biāo)識(shí)數(shù)據(jù)合法性驗(yàn)證,然后根據(jù)飼料樣品標(biāo)識(shí)條碼進(jìn)行數(shù)據(jù)檢索查詢,并返回所有查詢到的飼料樣品對(duì)應(yīng)的圖像文件信息給請(qǐng)求的移動(dòng)端APP。如圖2所示。
移動(dòng)終端APP共包括3個(gè)界面如圖3所示,實(shí)現(xiàn)了飼料樣品二維碼掃描識(shí)別,通過手機(jī)安裝的位置信息定位軟件獲取手機(jī)所處的地理位置(東經(jīng)、北緯),使用手機(jī)相機(jī)拍攝采樣場(chǎng)景等圖像,提供用戶輸入采樣或上傳地點(diǎn)等簡(jiǎn)化信息。系統(tǒng)為了保證數(shù)據(jù)能夠狗正常上傳,在數(shù)據(jù)上傳前根據(jù)相機(jī)圖像大小進(jìn)行適當(dāng)程度的大小處理。
本系統(tǒng)在2017年至2018年各省市飼料樣品采集過程中,有效完成了項(xiàng)目計(jì)劃4000個(gè)飼料樣品的現(xiàn)場(chǎng)采集中采樣信息的收集上傳工作,完成了項(xiàng)目的實(shí)時(shí)數(shù)據(jù)收集,提高了項(xiàng)目的管理工作效率。
異地飼料樣品采集模塊是為沒有網(wǎng)絡(luò)信號(hào)的偏遠(yuǎn)采樣地區(qū)設(shè)置的替代方案,是現(xiàn)場(chǎng)飼料樣品采樣信息收集的有效補(bǔ)充。
在使用過程中,需要注意移動(dòng)終端安全和權(quán)限設(shè)置中,賦予該系統(tǒng)對(duì)位置軟件和相機(jī)的訪問權(quán)限,否則,無法獲取地理位置的東經(jīng)和北緯數(shù)據(jù),也不能正常打開相機(jī)進(jìn)行照相。