999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android的農機導航管理系統研究與設計

2019-12-22 08:25:10胡鴻彬李彥明唐小濤李志騰劉成良
農機化研究 2019年5期
關鍵詞:界面作業系統

胡鴻彬,李彥明,唐小濤,李志騰,劉成良,2

(1.上海交通大學 機械與動力工程學院,上海 200240;2.上海世達爾現代農機有限公司,上海 200245)

0 引言

基于高精度GNSS的農機自動導航技術作為精準農業的一個重要方向,被廣泛地應用于耕作、收割、播種、施肥等農業生產過程中,可以大大延長作業時間、提高作業精度和效率、減輕勞動者工作強度[1]。農機導航管理系統的作用是實現人機交互控制、實時導航作業監控、路徑規劃,以及歷史作業數據管理和查詢等,是農業機械裝備信息化和智能化的一個重要載體,是農機自動導航技術的研究重點之一。

國外發達國家(如美國)很早就開展了對農機自動駕駛技術的研究和應用。O’Conner 等人于1995年研發了一套4天線載波相位GPS系統成功應用于John Deere 7800拖拉機的直線行駛自動導航,橫向偏差精度控制在2.5cm以內[2]。長期的技術積累使得國外農業機械廠商已經成為全球精準農業的領導者。例如,美國Trimble(天寶)公司為農機自動駕駛提供了從高精度定位接收機、車載控制系統、導航管理終端、農業作業云數據平臺服務等一整套解決方案,其最新的導航管理終端TMX-2050基于Android平臺進行開發,提供了精致完善的農機自動導航的操作和管理功能。相比之下,國內的研究和應用起步較晚,從事精準農業的廠商的導航管理系統有些是直接引用國外的產品進行組合和二次開發。國內高校關于農機導航控制的研究大多處于實驗室階段,有關導航管理系統的研究較少。張亞嬌等人提出了一種基于WinCE的農機導航監控終端系統,并在旱田作業拖拉機上進行了測試,取得了一定的實用效果[3]。筆者在Android移動終端在工業中應用越來越廣泛的趨勢下[4],結合基于GPS技術的農機導航系統發展現狀[5],針對精準農業中的作業管理需求[6],設計了一套基于Android平臺的農機導航管理系統,提出了一種實用的路徑規劃算法,其具有豐富的功能模塊和良好的人機交互實踐效果。

1 系統整體框架

根據水稻田穴直播機的實際作業需求,導航管理系統的硬件包括拖拉機車載控制器、無線數傳電臺收發端、串口藍牙和小米平板,如圖1所示。車載控制器用于接入GPS定位數據、角度傳感器、陀螺儀傾角數據及精量播種等傳感輸入信息,并輸出控制信號控制轉向及油門和檔位系統的動作。

KYL-320H高速數傳電臺和串口藍牙構成遠程無線通信方案;小米平板是基于Android系統的終端設備。本文的重點是軟件系統的設計。從圖1中可以看到:其架構主要包含農機參數與作業參數管理、水田地理信息管理、農機作業路徑規劃、導航實時監控和交互界面和歷史作業數據管理5個模塊。系統的工作流程如圖2所示。工作時,安裝并初始化GPS接收機,啟動車載控制器,然后啟動Android終端程序打開藍牙連接建立通信。導航管理系統先加載包括地塊信息、車輛參數和作業行間距等在內的默認參數設置。系統初次運行時需要用戶對新添地塊進行標定,即沿著田塊輪廓行走一圈確定其拓撲邊界并保存到地塊信息數據庫中。配置好地塊和車輛后,用戶點擊進入導航實時監控頁面,加載規劃路徑,啟動自動導航,車載控制器開始控制執行機構進行實時路徑跟蹤作業,作業結束后可以通過歷史作業管理模塊查詢歷史作業數據。

圖1 系統功能模塊劃分

圖2 系統工作流程

2 基于Android的系統設計與實現

2.1 系統分層設計框架

Android系統已經占據移動端市場的80%以上,工業中也越來越多地使用Android代替傳統的嵌入式終端設備的軟件平臺。本文根據農機導航系統的功能需求和業務邏輯,將系統分為4個層次,在Android Studio集成開發環境下完成了導航軟件的設計與開發。系統設計框架分為交互界面層、業務邏輯層、算法工具層,以及數據訪問和通信層,如圖3所示。這些層之間垂直調用,共同完成系統功能。使用分層結構的好處是便于數據、模型和界面的解耦,實現程序的模塊化設計。

圖3 分層設計框架

2.2 交互界面層

交互界面層負責用戶與車載控制器的交互操作、作業參數和導航軌跡顯示等工作。Android系統程序每個界面對應一個Activity文件加一個XML布局文件。本系統中包含有啟動界面、設備連接管理界面、車輛參數添加界面、地塊添加界面、路徑規劃界面,以及導航實時監控界面等。另外,此層的工作還包括每個界面中的按鈕、控件、彈窗、自定義控件及其適配器和屬性動畫等編寫等。

2.3 業務邏輯層

業務邏輯層負責偵聽用戶的操作,把用戶的輸入事件收集起來回調給主線程,交給程序作進一步處理,同時負責從后臺接收消息和數據對主界面進行刷新。該層主要包括BroadcastReceiver(廣播接收器)、Service(后臺服務)、OnClickListener(事件偵聽器)及Handler(消息處理器)。廣播接收器用于藍牙設備連接時,系統硬件驅動層進行設備搜索,把結果廣播給導航管理控制應用程序;后臺服務用于后臺開啟和保持藍牙收發數據的通信線程。事件偵聽器在程序中大量使用,每個按鈕和自定義控件的點擊、長按等動作都會觸發該類,然后將動作回調給活動進行下一步處理;消息處理器(Handler)用于導航實時監控界面。Android應用是單線程模型,默認只有一個主界面線程,即UI線程,所有組件都是運行在這個線程中,所以這個線程不能進行實時刷新,如果在這個線程進行耗時的操作會阻塞UI線程,導致程序不響應甚至可能報錯[7]。導航管理系統的導航實時監控界面,需要不斷從車載終端讀取數據并刷新界面,這時需要另外開啟一個工作線程,該線程負責無線通信數據的收發。此時,子線程收到的數據就需要通過Handler對UI進行實時刷新。此外,需要特別注意的是,在應用中使用消息處理器的活動要配合使用弱引用方法(WeakReference)來避免內存泄漏問題[8]。

2.4 算法工具層

算法工具層負責連接數據和業務邏輯的功能,包括空間地理幾何算法類、作業路徑生成類、導航交互指令控制邏輯類、文件格式轉換工具類及通信數據解析工具類等。地理幾何算法類將幾個常用計算幾何算法封裝成了可以供其他類直接調用的方法,包括點線位置判斷、兩直線夾角、直線平移算法和判斷點是否在多邊形內部的PNPoly算法等[9]。作業路徑類封裝了水田自動導航常規作業路徑規算法。導航交互指令控制邏輯類用于處理終端和車載控制器的交互控制指令。這些指令包括農機導航的啟動、停止、運行檔位、油門控制、轉向指令、設置AB點、制動,以及懸掛的精量穴直播機的控制等若干指令。為了防止導航終端對車載控制器的控制指令因為網絡丟包、延遲等原因而未及時得到響應,指令交互控制的邏輯設計仿照TCP建立連接的“三次握手”的方式,Android終端每一個指令都會持續發送給車載控制器,直到車載控制器返回響應信號,終端才會切換發送指令。地圖格式轉換工具主要借助第三方開源工具包,將新添加的地塊地理信息數據以shape文件格式保存。擁有豐富的開源資源,這也是Android平臺應用開發的一大優勢。通信數據解析類的作用在于將藍牙通信建立的Socket流數據解包為一個個獨立的消息。

2.5 數據訪問和通信層

數據訪問和通信層主要包括應用數據的存取和通信數據的收發解決方案。本文的導航管理系統用到了Android系統數據持久化的4個方案中的3種:文件、SQLite數據庫和SharedPreferences。

文件用于永久保存一些訪問不是很頻繁的數據,如拖拉機車輛參數信息、農機掛載農具參數和水田地塊數字地圖等,同時可以作為這些數據的備份方案。SQLite是一種輕量型數據庫,其操作主要包括SQLiteOpenHelper和DatabaseManager類。本文設計的系統中的數據庫共建立了4個分表,即田塊地理信息表、車輛及農具參數表、作業AB線表即歷史作業數據表,且封裝好了這些數據表的增刪改查操作方法,有效地實現了農機導航過程中各種數據的持久化保存和快速讀取。SharedPreferences是Android系統的一種特有的使用“鍵值對”的方式把數據存儲在XML文件中的數據存取方案,用于保存用戶默認偏好設置。它在本系統中用于保存如默認車輛、默認地塊等的系統默認設置參數,下次程序啟動時如果用戶不進行修改則直接加載默認配置,節省了用戶操作時間。通信層的功能是負責藍牙連接管理和藍牙Socket的建立,這里需要用到Android多線程開發技術,需要單獨開啟一個通信線程負責終端和車載控制器的數據接收和發送。

3 基于地塊的作業路徑規劃算法

基于GPS的農機自動導航的作業方式一般采用AB線方式,農機在田塊一側設定基準A點,駕駛一段距離后設置基準B點,然后沿著AB線方向及其平行線完成整個地塊的自動駕駛[10]。這種方式缺點是每次作業都需要人工駕駛拖拉機在地塊表面上行走一段,不僅費力費時,且壓實了田地不利于播種。本文設計了一種既可以基于AB線方式生成規劃路徑又可以根據地塊輪廓自動生成規劃路徑的算法,流程如圖4所示。其主要過程為選擇地塊區域、選擇預設AB線(可以為空)、地頭寬度和作業行間距,先確定地頭區域和基準線,然后基于平行掃描和PNPoly幾何算法生成所需軌跡。其中,地頭區域寬度的確定由拖拉機最小拐彎半徑、作業方向等參數決定[11-12],作業行間距由農機具幅寬和結合線寬度決定。圖5展示了上面算法在實驗地塊上沒有AB線和有AB線的兩種作業路徑規劃的結果。

圖4 路徑規劃流程圖

圖5 路徑規劃結果

4 田間試驗

將導航管理系統裝載在平板上,與拖拉機車載控制器建立好無線連接,使用平板操作農機自動導航作業,在上海市松江農機推廣站的試驗田上開展的多次試驗。圖6是一次導航實驗的實時監控界面;圖7是農機在水田的實際行走軌跡。在實驗過程中,平板系統界面簡潔易操作,始終能保持穩定的無線數據傳輸,幾乎沒有數據丟失;控制指令能夠快速下發給車載控制器并得到其響應,實時導航作業監控界面能夠實時顯示農機的行走軌跡,快速刷新農機運動參數;地塊信息、車輛信息數據庫能夠穩定工作,歷史作業數據可以很方便地查詢;導航界面上農機的行走軌跡真實地繪制了農機的實際軌跡。另外,可以看到導航界面上規劃的路徑幾乎完全被實際行走軌跡覆蓋,說明設計的農機車載控制器的跟蹤精度非常理想,后續開展的導航實驗橫向偏差數據分析也驗證了這一點。田間試驗結果表明:導航管理系統能夠很好地適應車載導航控制器的人機交互功能,體驗性能良好。

圖6 田間試驗導航實時監控界面

圖7 拖拉機實際行走軌跡

5 結論

設計了一種基于Android的水稻田農機自動導航管理系統,該系統包括農機參數管理、田地地理信息管理、路徑規劃、導航實時監控和歷史作業數據管理等幾個模塊,提出了一種實用的作業路徑規劃方法,采用分層設計模式完成了系統軟件設計,并開展了多次田間試驗。試驗結果表明:該系統能夠實現基于高精度GNSS的農機自動導航管理、監控和交互操作功能,運行穩定可靠,體驗性能良好,在農機自動導航中具有現實意義。

猜你喜歡
界面作業系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
快來寫作業
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
人機交互界面發展趨勢研究
作業
故事大王(2016年7期)2016-09-22 17:30:08
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 波多野结衣在线一区二区| 日韩av电影一区二区三区四区| 日本一区二区三区精品国产| 国产农村1级毛片| 日韩精品无码一级毛片免费| 天天做天天爱夜夜爽毛片毛片| 在线日本国产成人免费的| 熟女成人国产精品视频| 性色一区| 看av免费毛片手机播放| 亚洲人成电影在线播放| 国产噜噜噜视频在线观看| 69综合网| 91成人在线观看视频| 欧美精品v日韩精品v国产精品| 国模沟沟一区二区三区| 极品尤物av美乳在线观看| 老司机午夜精品视频你懂的| 最新国产精品第1页| 国产精品美乳| 欧美亚洲一区二区三区导航| 日韩无码视频专区| 国产爽歪歪免费视频在线观看| 色呦呦手机在线精品| 亚洲精品无码人妻无码| 国产精品密蕾丝视频| 99精品免费在线| 手机在线免费不卡一区二| 狠狠亚洲婷婷综合色香| 无码aⅴ精品一区二区三区| 网友自拍视频精品区| 欧美一级专区免费大片| 九九香蕉视频| 高清欧美性猛交XXXX黑人猛交| 国产福利影院在线观看| 欧美一级高清免费a| 国产十八禁在线观看免费| 亚洲国产在一区二区三区| 无码精品国产dvd在线观看9久| 国产色爱av资源综合区| 国产在线一区视频| 一区二区午夜| 国产网站一区二区三区| 亚洲综合片| 欧美性猛交一区二区三区| 亚洲视频a| 无码人中文字幕| 色老头综合网| 亚洲第一成年人网站| 玩两个丰满老熟女久久网| 小说 亚洲 无码 精品| 波多野结衣一区二区三区四区视频| 欧美在线网| 伊人激情综合网| 国产嫖妓91东北老熟女久久一| 国产一级裸网站| 国产 在线视频无码| 久草性视频| 日韩高清一区 | swag国产精品| 亚洲色图欧美激情| 美女高潮全身流白浆福利区| 国产一二视频| 精品91视频| 国产一级α片| 国产屁屁影院| 国产高清不卡视频| 欧美精品高清| 亚洲爱婷婷色69堂| 久久久波多野结衣av一区二区| 国产精品xxx| 国产靠逼视频| 在线看片中文字幕| 日韩欧美国产另类| 四虎永久免费地址在线网站| 国产午夜看片| 国产网站免费看| 国产乱子伦一区二区=| 在线观看精品自拍视频| 色哟哟色院91精品网站| 伊人国产无码高清视频| 国产丰满大乳无码免费播放|