楊天宇,趙 力
(1.中煤科工集團沈陽研究院有限公司,遼寧 撫順 113122;2.國家煤礦安全技術重點實驗室,遼寧 撫順 113122)
智能化設備隨著互聯網技術的發展正持續更新換代,為了適應市場對設備功能的需求,眾多企業及個人持續增強對Android 系統的研究,基于Android 系統平臺尋找更多的移動APP 開發方式。在Android 平臺上以原有卡車調度系統功能為參照開發對應功能的移動APP,并通過平板及手機等移動設備應用于礦山中,從而達到能夠簡便、快捷地查看礦山運行情況。
卡車調度系統作為礦山信息化、智能化的綜合應用平臺,其主要應用都在PC 端,隨著互聯時代、信息時代的到來,PC 端遠不能滿足日常管理的需要。基于卡車調度的移動APP 是將卡車調度系統內與生產高度關聯的功能提煉出來,在移動端進行展示,最大限度地還原生產工藝與實時生產情況,通過對車鏟配比、生產過程中車輛的實時運行情況、產量情況、設備出動情況、設備故障情況進行匯總展示在移動APP 上,并根據上述信息形成當班效率分析以及單臺設備的效率分析,為生產管理者以及生產指揮參與者在生產決策過程中提供科學依據,打破時間與空間的限制,高度匹配礦山行業生產特性,滿足全方位實時管理的需求。并按照系統建設的需求,使整個系統有個清晰的規劃,再結合APP系統的特點,整理出總體設計思路,如系統功能架構見圖1。

圖1 卡車調度系統移動APP 功能架構
卡車調度系統由車載終端軟件、通訊端及調度中心軟件組成,車載終端軟件能夠收集卡車的駕駛員姓名、工號,卡車的實時定位信息,卡車的故障、延時和備用信息,卡車的裝卸車信息。數據通過網絡傳輸到卡車調度系統專屬服務器中并儲存在數據庫中。卡車調度系統應用于露天礦山,將卡車調度系統數據與云服務器進行通訊,設置網關對應參數后可自行組網,從而進行卡車調度系統的數據傳輸,通過網絡上傳至云服務器,卡車調度系統移動APP 可從云服務器獲取相應數據顯示。
安卓(Android)是一種基于Linux 內核(不包含GNU組件)的自由及開放源代碼的操作系統。已經有了成熟的開發技術,在現有開發技術的基礎上,企業需要根據自身實際發展情況及近年來在安卓平臺開發的軟件的經驗基礎下,開發屬于自己的開發技術。目前,開發技術的基礎是效率高且低成本的軟件快速開發框架[1]。圖2 所示為目前比較常用的Android 快速開發框架。

圖2 Android 快速開發框架
Afinal 是一個Android 的sqlite orm 和ioc 框架,并且其中包含了http 框架,使其更加簡單易用。xUtils 是在Afinal 框架的基礎上進行了大量重構,使得xUtils 擁有更加靈活的ORM,支持大文件上傳。ThinkAndroid 是遵循Apache2 開源協議的Android 快速開發框架,主要是為了進行快速、簡單的Android 應用程序的開發。AndBase 是為Android 開發者量身打造的一款開源類庫產品。dhroid是基于Android 平臺,極速開發框架,其核心設計目標是開發迅速、代碼量少、學習簡單、功能強大、輕量級、易擴展,使你更快、更好地開發商業級別應用。KJFrame-ForAndroid 又叫KJLibrary,是一個Android 的orm 和ioc框架,并在其中封裝了Android 的http 與Bitmap 的框架。
Android 平臺的移動APP 開發想要從6 種快速開發框架中選擇不同框架完成自身開發技術的升華,就必須找出對自身APP 功能以及應用最適合的框架,并剔除其他多余框架,建立屬于自己的快速框架系統。
(1)利用HTML5 Application Cache 技術在APP 中使用Application Cache 功能來減少發送接收請求的數量,并將數據在緩存中呈現HTML 模版的同時儲存在本地存儲中,使得程序可以脫機運行。利用HTML5 開發APP,數據傳輸快,實現迅速,交互體驗流暢。
(2)在HTML5 中,通過設備適配功能可以識別不同設備的型號與屏幕,根據屏幕的大小選擇性地執行CSS來適應屏幕的指定需求,實現自適應顯示[2]。
移動終端的定位技術主要指移動終端通過計算得出自己所處位置的地理坐標。這種技術主要有GPS、A-GPS和E-OTD 等幾種。
3.3.1 GPS
全球衛星定位系統是美國第二代衛星導航系統。通過覆蓋全球的24 顆衛星來進行定位,在地面任何一個位置,只要能夠接收到不少于4 顆衛星的信號就可以通過衛星信號獲得該位置的經緯度、高程等數據。GPS 衛星發射的原始數據可以由終端進行處理,也可以由網絡服務器進行處理,該數據可用于車輛導航和手持設備。
3.3.2 A-GPS
A-GPS 即輔助GPS 技術,它可以提高GPS 衛星定位系統的性能。它是一種結合了網基站信息及GPS 信息對網內移動設備終端進行定位的技術,普遍適用于室外等空曠地區。該技術優點為:首次獲取GPS 信號時間為幾秒鐘,速度較快,并且在存在不規則建筑物、樹木等可以干擾正常GPS 信號定位的情況下,通過基站網絡也可以實現快速定位。
3.3.3 E-OTD
E-OTD 定位方法是移動終端通過接收周圍至少三個基站的測量數據,通過獲取不同基站信號傳輸到移動終端的時間差和基站與移動終端之間的距離通過公式計算得出的移動終端所處的位置坐標。當用E-OTD 功能的移動終端和定位單元接收至少來自于三個基站發出的信號時,每個基站信號到達移動終端和定位單元的時間差可以計算出來,根據這些時間差值可以得到多組交叉雙曲線,從而獲得移動端的近似位置[3]。
數據同步又分為三種情況:
(1)間接同步:用于無網絡連接環境中的同步方法。
(2)直接同步:通過連接到局域網的移動設備之間進行數據同步的方法。
(3)網絡同步:通過互聯網將數據先同步到服務器上,然后再通過服務器同步給移動設備的同步方法[4]。
在將卡車調度系統數據庫數據同步到云端服務器數據庫后,將同步到云端服務器的數據與原有卡車調度系統數據庫的數據進行比對,在比對存在不一致情況時再次進行同步數據操作,直至數據對比無誤。
當軟件APP 啟動時,該模塊的功能主要是接收從車載終端發送過來的數據包,并對數據包進行解析獲取其中的車輛數據信息,同時將解析后的數據存入云端服務器的數據庫中,數據傳輸過程中使用的網絡協議是UDP協議,UDP 協議是一種非連接的、不可靠的通信協議[5]。UDP 協議只要有客戶端的請求,服務端就會將所需數據一次性全部發送給客戶端,所以UDP 協議適合少量數據的傳輸,并且UDP 協議傳輸速度快、延遲低、實時性更好,被廣泛應用于網絡和通訊。
通過Android 平臺開發導航地圖過程中,主要采用Android 提供的MapView 和EditView 兩個類實現。通過MapView 來實現地圖的移動和縮放功能。通過EditView實現地理資料以及位置的呈現。
根據客戶需求設計合理的數據庫結構,并建立數據庫。為了更好地對數據進行保存與管理,將數據存儲到數據庫中。數據庫設計遵循一對一設計原則進行數據庫的設計及維護,來避免數據大且數據雜的情況出現。數據庫設計遵循獨特命名原則,從而減少數據冗雜,維護數據一致性。數據庫設計遵循雙向使用原則,索引功能原則和事物使用原則,索引功能原則的運用能夠提高數據查找效率靈活地排列數據,事物使用原則的運用可以提高數據資源的更新和獲取速度。
由于云服務器中數據庫是以原有卡車調度系統數據庫為依據建立的數據庫,在原有數據庫的基礎上新增移動APP 所需的表并刪除其他不需要的表。
根據現場實際需要,提供延時、故障、作業統計分析,設備可用、實動等數據計算對比。
建立一套快速、完整、準確的生產信息查詢系統,以圖表、曲線的形式展示設備的產量、里程、時間等信息,為管理者決策提供數據支持。
界面展示是利用HTML5 相關的Web 技術進行實現的。該技術可對不同內容提供豐富的、互動性強的界面交互展示,使得內容的呈現更精美,并且數據提取速度快。客戶端界面如圖3 所示。

圖3 界面顯示
卡車調度系統的移動APP 系統上線運行至今,解決了許多生產管理中相關的問題,如現場出現緊急情況需要在對現場進行了解后方可做決定時,可在移動設備上使用APP 軟件對現場生產情況進行查看,這樣既減少了由于不及時處理而導致的隱患,又提高了辦事效率。并且根據現場不同的管理人員給出不同的軟件使用權限,便于現場人員簡便了解實際的設備運行情況。
技術的不斷進步,人們生活更加便捷,對移動設備更加依賴,移動設備APP 的設計為了滿足人們的使用習慣也在不斷完善。因此,移動終端的APP 相關工作都有著較大發展空間。基于卡車調度系統開發的移動APP 將會被廣泛應用于露天礦,提高生產工作效率的同時也對礦山智能化發展奠定了基礎。