山鋼集團(tuán)山信軟件萊蕪自動(dòng)化分公司,山東萊蕪 271104
近年來,隨著移動(dòng)網(wǎng)絡(luò)及通訊技術(shù)的發(fā)展,移動(dòng)終端的功能越來越強(qiáng)大,日漸成為互聯(lián)網(wǎng)終端的一種選擇,在移動(dòng)終端上運(yùn)行的工業(yè)App軟件也越來越多,為工業(yè)生產(chǎn)帶來極大的方便。
冶金企業(yè)設(shè)備點(diǎn)巡檢是冶金生產(chǎn)中必不可少的環(huán)節(jié),有效的設(shè)備點(diǎn)巡檢能將設(shè)備隱患消除在萌芽狀態(tài),降低因設(shè)備問題給生產(chǎn)帶來的損失,從而節(jié)約生產(chǎn)成本,提高企業(yè)競爭力。
本文基于Android操作系統(tǒng),結(jié)合工業(yè)現(xiàn)場現(xiàn)有的網(wǎng)絡(luò)架構(gòu)和工藝設(shè)備,開發(fā)了一款用于移動(dòng)終端的智能設(shè)備點(diǎn)巡檢系統(tǒng)App軟件。本系統(tǒng)主要分為服務(wù)器端和客戶端兩部分,客戶端是安裝在Android手機(jī)上的App,服務(wù)器端是裝有Webservice和Sql數(shù)據(jù)庫的電腦終端,點(diǎn)檢人員在點(diǎn)檢設(shè)備的同時(shí)將設(shè)備信息錄入手機(jī)App中,在點(diǎn)檢完成后通過手機(jī)App將設(shè)備的運(yùn)行狀態(tài)信息上傳到服務(wù)器端??蛻舳薃pp的是利用JAVA語言在Eclipse平臺(tái)開發(fā)完成,與服務(wù)器端通過Webservice方式進(jìn)行通訊,服務(wù)器端數(shù)據(jù)庫為Sql數(shù)據(jù)庫,管理頁面利用C#語言開發(fā)。系統(tǒng)運(yùn)行后設(shè)備管理人員可以通過電腦終端上的管理頁面對(duì)設(shè)備狀態(tài)進(jìn)行查看、管理,使設(shè)備點(diǎn)檢更加規(guī)范,使設(shè)備管理更加智能。
Android系統(tǒng)是一種基于Linux的自由及開放源代碼的操作系統(tǒng),是Google公司專門為移動(dòng)設(shè)備設(shè)計(jì)的軟件開發(fā)平臺(tái),體系架構(gòu)開放,具有良好的開發(fā)和調(diào)試環(huán)境,支持各種可擴(kuò)展的用戶體驗(yàn)[1]。目前Android系統(tǒng)訪問數(shù)據(jù)庫的主要方式分為JDBC直接式和Webservice間接式。本系統(tǒng)采用Webservice間接式。
Webservice是一種基于SOAP協(xié)議的遠(yuǎn)程調(diào)用標(biāo)準(zhǔn),通過Webservice可以整合不同的操作系統(tǒng)平臺(tái)、語言和技術(shù)。這種方式有著更強(qiáng)的擴(kuò)展性,且Webservice本身也是一個(gè)服務(wù)器,也可以進(jìn)行運(yùn)算,這樣大大緩解了手機(jī)端的運(yùn)算量,提高了手機(jī)工作效率,使用戶有著更好的體驗(yàn)。采用這種方式有效避免了大量數(shù)據(jù)上傳和下載過程中可能帶來的程序阻塞問題。
本系統(tǒng)針對(duì)現(xiàn)場實(shí)際需求設(shè)計(jì)兩種網(wǎng)絡(luò)訪問方式:一種是利用移動(dòng)4G網(wǎng)絡(luò),通過企業(yè)網(wǎng)關(guān)端口轉(zhuǎn)發(fā)訪問企業(yè)內(nèi)網(wǎng)服務(wù)器數(shù)據(jù)庫,如圖1所示;一種是在企業(yè)內(nèi)網(wǎng)wif i下,直接訪問服務(wù)器數(shù)據(jù)庫,如圖2。
第一種方式:手機(jī)通過移動(dòng)網(wǎng)絡(luò)訪問到企業(yè)網(wǎng)關(guān),利用企業(yè)網(wǎng)關(guān)的端口映射技術(shù)將手機(jī)端所要訪問的端口轉(zhuǎn)發(fā)到內(nèi)網(wǎng)的Webservice服務(wù)器,Webservice通過內(nèi)部以太網(wǎng)絡(luò)和Sql服務(wù)器進(jìn)行數(shù)據(jù)交換,最終實(shí)現(xiàn)外部網(wǎng)絡(luò)和企業(yè)內(nèi)網(wǎng)的互聯(lián)互通。
第二種方式:手機(jī)端直接通過無線路由器連接到企業(yè)內(nèi)網(wǎng)交換機(jī),通過企業(yè)內(nèi)部網(wǎng)絡(luò)訪問Webservice服務(wù)器,進(jìn)而與Sql服務(wù)器進(jìn)行數(shù)據(jù)互通。
JDK下載安裝:Java的JDK又稱Java SE,可以在Oracle公司官方網(wǎng)站下載,在下載過程中可根據(jù)電腦硬件和系統(tǒng)選擇適當(dāng)版本進(jìn)行下載。
在windows7系統(tǒng)中配置環(huán)境變量:計(jì)算機(jī)→屬性→高級(jí)系統(tǒng)設(shè)置→系統(tǒng)屬性→環(huán)境變量→新建系統(tǒng)變量→輸入變量名“JAVA_HOME”和變量值(JDK安裝路徑)。
JDK 安裝成功后必須確認(rèn)環(huán)境配置是否正確,在Windows系統(tǒng)中選擇“開始/運(yùn)行”命令,輸入“cmd”確定,在控制臺(tái)中輸入javac命令。如果顯示JDK的修改命令語法和參數(shù)選項(xiàng)等信息,說明JKD環(huán)境搭建成功。
本系統(tǒng)采用Eclipse IDE進(jìn)行安卓應(yīng)用開發(fā),依次安裝eclipse和Android開發(fā)插件ADT,安裝完ADT插件后需要配置Android SDK路徑,單擊Eclipse主菜單Window-Preferences菜單項(xiàng),彈出對(duì)話框填入Android 菜單項(xiàng)。
點(diǎn)檢人員在手機(jī)端輸入用戶名、密碼,點(diǎn)擊登錄,手機(jī)端將用戶名、密碼進(jìn)行加密后上傳到服務(wù)器進(jìn)行身份登錄驗(yàn)證,服務(wù)器端根據(jù)驗(yàn)證結(jié)果返回驗(yàn)證信息。當(dāng)用戶成功登錄后,手機(jī)端主動(dòng)向服務(wù)器端查詢符合當(dāng)前登錄用戶的信息和當(dāng)前時(shí)間的點(diǎn)檢計(jì)劃,若有符合的計(jì)劃會(huì)在手機(jī)端進(jìn)行顯示,點(diǎn)檢人員根據(jù)需求進(jìn)行相應(yīng)的計(jì)劃下載,計(jì)劃下載完成后根據(jù)計(jì)劃內(nèi)容組織點(diǎn)檢作業(yè)。軟件設(shè)計(jì)流程如圖3所示。
在JDK,Eclipse和ADT及Android SDK都安裝完成后進(jìn)行軟件開發(fā),在Eclipse IDE中建立Android工程,并利用JAVA語言開發(fā)與服務(wù)器之間的通訊類NetConectingHash,通過調(diào)用該類實(shí)現(xiàn)與服務(wù)器之間的數(shù)據(jù)互通,該類的代碼片段如下:
new AsyncTask為開辟一個(gè)新的線程進(jìn)行通訊,methodName為所要調(diào)用Webservice方法的名字,kvs中是方法所需要的參數(shù),result中是從服務(wù)器返回的結(jié)果,根據(jù)調(diào)用方法的不同獲得服務(wù)器端返回的相應(yīng)數(shù)據(jù)。
連接網(wǎng)絡(luò),打開軟件,在登錄界面如圖4,輸入用戶名和密碼,手機(jī)端與服務(wù)器建立通訊,將用戶名和密碼通過Webservice上傳到服務(wù)器,若驗(yàn)證成功,服務(wù)器返回成功代碼,手機(jī)端登錄成功。
手機(jī)端登錄成功后進(jìn)入首頁,如圖5,系統(tǒng)根據(jù)登錄用戶名自動(dòng)分配角色。手機(jī)端會(huì)主動(dòng)與服務(wù)器端進(jìn)行通訊,將用戶名和角色名上傳服務(wù)器進(jìn)行驗(yàn)證,服務(wù)器端驗(yàn)證完成后會(huì)將符合當(dāng)前用戶名和角色名的計(jì)劃下發(fā)給手機(jī)端。手機(jī)端點(diǎn)擊計(jì)劃列表會(huì)顯示出符合當(dāng)前時(shí)間、當(dāng)前用戶、當(dāng)前角色的所有計(jì)劃,巡檢員根據(jù)計(jì)劃情況可選擇進(jìn)行下載,也可一鍵下載全部計(jì)劃。當(dāng)計(jì)劃下載完成后點(diǎn)擊計(jì)劃,進(jìn)入?yún)^(qū)域列表界面,該界面列出所點(diǎn)計(jì)劃的所有區(qū)域,這樣用戶對(duì)該計(jì)劃可以有個(gè)總體了解,在該界面用戶可以根據(jù)實(shí)際情況選擇該區(qū)域是運(yùn)行、停用、檢修狀態(tài)。用戶選擇完成后手機(jī)端將該狀態(tài)存儲(chǔ)。在該界面有開始巡檢按鈕,當(dāng)巡檢人員到達(dá)指定區(qū)域后通過掃描NFC卡定位所要巡檢的區(qū)域。掃卡定位后將當(dāng)前區(qū)域顯示出來,巡檢人員此時(shí)根據(jù)巡檢區(qū)域?qū)?yīng)的設(shè)備、部位、內(nèi)容依次巡檢。
本系統(tǒng)開發(fā)完成后,在山鋼集團(tuán)萊蕪分公司某廠進(jìn)行推廣應(yīng)用,替代傳統(tǒng)的設(shè)備點(diǎn)巡檢,用智能手機(jī)錄入設(shè)備信息上傳到設(shè)備管理平臺(tái)的方式替代原有的人工現(xiàn)場查看進(jìn)行紙質(zhì)記錄再錄入計(jì)算機(jī)的方式,解決了傳統(tǒng)點(diǎn)檢方式浮于形式、設(shè)備忘檢、漏檢的問題,減少設(shè)備點(diǎn)檢人員的工作量,使設(shè)備管理更加智能化,提高了設(shè)備管理的信息化水平,降低了設(shè)備故障率,節(jié)約生產(chǎn)成本。