亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android的聯(lián)合收割機(jī)遠(yuǎn)程故障監(jiān)測(cè)終端系統(tǒng)

        2022-02-28 06:49:08楊光友陳學(xué)海
        關(guān)鍵詞:數(shù)據(jù)庫故障模型

        楊光友, 謝 旺, 陳學(xué)海

        (1 湖北工業(yè)大學(xué)農(nóng)業(yè)機(jī)械工程研究設(shè)計(jì)院,湖北 武漢 430068;2 湖北省農(nóng)機(jī)裝備智能化工程技術(shù)研究中心,湖北 武漢 430068)

        由于聯(lián)合收割機(jī)[1-3]結(jié)構(gòu)復(fù)雜,工作環(huán)境惡劣,其工作過程中的故障多樣化。常見的故障監(jiān)測(cè)和診斷系統(tǒng)大多運(yùn)行在PC端,雖然實(shí)現(xiàn)了遠(yuǎn)程故障監(jiān)測(cè),減輕了故障診斷的工作量和難度,但不易攜帶,難以滿足實(shí)際需要[4]。隨著移動(dòng)互聯(lián)網(wǎng)和移動(dòng)設(shè)備的不斷發(fā)展[5],如能將聯(lián)合收割機(jī)的故障通過移動(dòng)端顯示或發(fā)出預(yù)警信息,則對(duì)聯(lián)合收割機(jī)的運(yùn)維具有重要意義。目前,有關(guān)移動(dòng)端故障監(jiān)測(cè)和診斷系統(tǒng)的研究已經(jīng)在飛機(jī)航電系統(tǒng)[6]、汽車[7-9]和工業(yè)設(shè)備[10]等領(lǐng)域展開。本文以聯(lián)合收割機(jī)故障監(jiān)測(cè)為背景,開展基于Android移動(dòng)設(shè)備的聯(lián)合收割機(jī)遠(yuǎn)程故障監(jiān)測(cè)終端系統(tǒng)研究,為聯(lián)合收割機(jī)故障監(jiān)測(cè)和診斷提供解決方法,提高運(yùn)維效率。

        1 系統(tǒng)總體結(jié)構(gòu)

        基于Android的聯(lián)合收割機(jī)遠(yuǎn)程監(jiān)測(cè)系統(tǒng)主要由車載數(shù)據(jù)采集端、云服務(wù)器端和Android移動(dòng)端組成(圖1)。

        圖 1 總體框架

        1.1 車載數(shù)據(jù)采集端

        以雷沃RG50型聯(lián)合收割機(jī)為試驗(yàn)樣機(jī),根據(jù)收割機(jī)工作情況,在收割機(jī)工作時(shí)易發(fā)生故障的部位安裝速度傳感器,以監(jiān)測(cè)風(fēng)機(jī)轉(zhuǎn)速、脫粒滾筒轉(zhuǎn)速、輸送鏈耙轉(zhuǎn)速、喂入攪龍轉(zhuǎn)速、雜余攪龍轉(zhuǎn)速、籽粒攪龍轉(zhuǎn)速、逐稿器和割刀往復(fù)頻率等。車載數(shù)據(jù)采集端通過數(shù)據(jù)采集模塊將這些傳感器數(shù)據(jù)利用4G通信模塊上傳至云服務(wù)器端。

        1.2 云服務(wù)器端

        作為整個(gè)系統(tǒng)的核心樞紐,云服務(wù)器端負(fù)責(zé)調(diào)用故障模型進(jìn)行故障預(yù)警和故障模型的更新:云服務(wù)器端接受車載端上傳的數(shù)據(jù)并解析保存到數(shù)據(jù)庫—調(diào)用這些數(shù)據(jù)進(jìn)行故障預(yù)警—得到預(yù)警結(jié)果實(shí)時(shí)發(fā)送到Android移動(dòng)端。同時(shí),云服務(wù)器端獲取Android移動(dòng)端人工反饋的實(shí)際故障結(jié)果,并與遠(yuǎn)程數(shù)據(jù)庫中模型預(yù)警的故障狀態(tài)進(jìn)行一致性判斷,以此結(jié)果作為模型是否需要更新的重要條件之一。

        1.3 Android移動(dòng)端

        Android移動(dòng)端軟件采用TCP/IP協(xié)議與云服務(wù)器端建立socket通信,實(shí)時(shí)接收云服務(wù)器端發(fā)送的監(jiān)測(cè)模型預(yù)警結(jié)果。當(dāng)其結(jié)果是故障狀態(tài)時(shí),即斷開移動(dòng)端與云服務(wù)器的連接,由操作員判斷是否與實(shí)際故障相符,同時(shí)上傳同一時(shí)刻操作員判斷給出的故障狀態(tài),以便服務(wù)器端計(jì)算故障預(yù)警模型的準(zhǔn)確率。通過連接訪問遠(yuǎn)程數(shù)據(jù)庫,操作員根據(jù)不同故障類型查詢相應(yīng)故障原因以及解決方案,實(shí)現(xiàn)故障快速定位和排除。

        2 Android移動(dòng)端開發(fā)平臺(tái)

        2.1 硬件系統(tǒng)結(jié)構(gòu)

        考慮到系統(tǒng)開發(fā)的軟件運(yùn)行在Android移動(dòng)端,選用ARMv8-A架構(gòu)的Cortex-A53的四核處理器,以滿足Android6.0系統(tǒng)的運(yùn)行需求。Android移動(dòng)端需要與服務(wù)器通信,連接訪問遠(yuǎn)程數(shù)據(jù)庫。開發(fā)平臺(tái)選用廣泛應(yīng)用于各種工業(yè)監(jiān)控場(chǎng)合的4G無線傳輸模塊ME3630[11]。4G無線傳輸模塊ME3630可以提供50 Mbps上行速率,以及150 Mbps的下行速率,并支持回退到3G或2G網(wǎng)絡(luò)。該模組也支持GPS定位功能,完全符合系統(tǒng)功能要求。Android移動(dòng)端開發(fā)平臺(tái)帶有OTG接口,便于軟件開發(fā)的調(diào)試。

        Android移動(dòng)端開發(fā)平臺(tái)硬件系統(tǒng)(圖2)主要由CPU處理器、觸控顯示屏、OTG接口,4G模塊,12V/2A主電源輸入接口、藍(lán)牙模塊和WIFI模塊等組成。

        圖 2 移動(dòng)端開發(fā)平臺(tái)硬件系統(tǒng)結(jié)構(gòu)

        開發(fā)平臺(tái)硬件系統(tǒng)實(shí)物如圖3所示。

        圖 3 開發(fā)平臺(tái)硬件系統(tǒng)實(shí)物

        2.2 軟件開發(fā)工具

        Android Studio是谷歌專門為AndroidAPP開發(fā)設(shè)計(jì)的IDE工具。該工具基于IDEA設(shè)計(jì),引進(jìn)了新的項(xiàng)目構(gòu)建工具Gradle,優(yōu)化了模擬器運(yùn)行慢、內(nèi)存大的問題,提供了更好的開發(fā)和調(diào)試環(huán)境。本文選用Android Studio 3.4.2作為Android移動(dòng)端的軟件開發(fā)工具。

        3 Android移動(dòng)端軟件開發(fā)

        Android作為一個(gè)以Linux為基礎(chǔ)完全開源的移動(dòng)設(shè)備操作系統(tǒng),提供了豐富的開發(fā)資源。Android移動(dòng)端軟件基于Android平臺(tái)開發(fā),該平臺(tái)支持GUI開發(fā),能夠提供良好的交互體驗(yàn),同時(shí)還支持輕量級(jí)的SQLite數(shù)據(jù)庫,可用作結(jié)構(gòu)化的數(shù)據(jù)存儲(chǔ)。Android移動(dòng)端軟件的功能模塊如圖4所示。

        圖 4 Android移動(dòng)端軟件功能模塊

        3.1 Android移動(dòng)端軟件開發(fā)關(guān)鍵技術(shù)

        3.1.1遠(yuǎn)程數(shù)據(jù)庫連接JDBC(Java Database Connectivity)是Java語言中用來訪問遠(yuǎn)程數(shù)據(jù)庫的應(yīng)用程序接口,提供一種與平臺(tái)無關(guān)的用于執(zhí)行SQL語句的標(biāo)準(zhǔn)javaAPI,方便實(shí)現(xiàn)多種關(guān)系型數(shù)據(jù)庫的統(tǒng)一操作[12]。Android平臺(tái)基于Java語言開發(fā),可以通過添加第三方依賴庫調(diào)用JDBC驅(qū)動(dòng),實(shí)現(xiàn)對(duì)遠(yuǎn)程數(shù)據(jù)的操作。本文選用Mysql數(shù)據(jù)庫測(cè)試。

        導(dǎo)入連接Mysql數(shù)據(jù)庫的依賴包mysql-connector-java-5.1.48-bin.jar后,調(diào)用Class.for.Name(com.mysql.jdbc.Driver)程序語句初始化驅(qū)動(dòng)類,調(diào)用DriverManager類的getConnection()與遠(yuǎn)程數(shù)據(jù)庫建立連接。最后,通過調(diào)用SQL語句對(duì)數(shù)據(jù)庫進(jìn)行操作。該功能的具體流程如圖5所示。

        圖 5 遠(yuǎn)程數(shù)據(jù)庫連接流程

        3.1.2故障查詢遠(yuǎn)程服務(wù)端利用Navicat Premium數(shù)據(jù)庫可視化管理工具,根據(jù)故障信息特點(diǎn)搭建故障數(shù)據(jù)庫。創(chuàng)建的數(shù)據(jù)庫包括有以下幾列: 編號(hào)id、故障位置 error_location、故障類型error_type、故障原因 error_reason、解決方案 error_solution。其中分為發(fā)動(dòng)機(jī)、電氣系統(tǒng)、割臺(tái)裝置、進(jìn)料裝置、脫粒裝置、清選裝置、集糧裝置等7個(gè)部位。故障查詢數(shù)據(jù)表結(jié)構(gòu)如圖6所示。

        圖 6 故障查詢數(shù)據(jù)庫

        Android移動(dòng)端通過JDBC技術(shù)連接遠(yuǎn)程數(shù)據(jù)庫,根據(jù)預(yù)警故障或反饋結(jié)果確定故障類型,通過該故障類型即可查詢相應(yīng)的故障原因以及解決方案。故障查詢流程如圖7所示。

        圖 7 故障查詢流程

        3.1.3故障反饋接收到云服務(wù)端的預(yù)警結(jié)果為故障后,Android移動(dòng)端會(huì)提示操作員進(jìn)行反饋。操作員需要根據(jù)實(shí)際情況進(jìn)行判斷,確定實(shí)際故障之后會(huì)將反饋結(jié)果和完成反饋的時(shí)刻一起記錄保存。然后將故障Id、故障數(shù)據(jù)的上傳時(shí)間、故障數(shù)據(jù)的預(yù)警碼、反饋結(jié)果和完成反饋的時(shí)刻一起轉(zhuǎn)化成JSON字符串。通過連接Redis數(shù)據(jù)庫,調(diào)用rpush()方法存入Redis列表。云服務(wù)端通過該Redis列表獲取Android移動(dòng)端的反饋值。該功能實(shí)現(xiàn)流程如圖8所示。

        圖 8 故障反饋流程

        3.1.4LitePal開源數(shù)據(jù)庫框架LitePal是一款開源的Android數(shù)據(jù)庫框架。它采用了對(duì)象關(guān)系映射(ORM)的模式,并將我們平時(shí)開發(fā)最常用到的一些數(shù)據(jù)庫功能進(jìn)行了封裝,使得不用編寫一行SQL語句就可以完成各種建表和增刪改查的操作[13]。LitePal很“輕”,jar包不到100 kb,而且基本上零配置。使用LitePal開源框架可以讓操作數(shù)據(jù)庫更簡(jiǎn)單。LitePal的使用方法如下。

        1)引入jar包:打開app/build.gradle文件,在dependencies閉包中添加如下代碼:

        implementation 'org.litepal.android:core:2.0.0'

        2)配置litepal.xml文件:在app/src/main目錄下新建文件夾assets,然后在assets文件夾中新建litepal.xml文件。配置文件內(nèi)容如下:

        標(biāo)簽用于指定數(shù)據(jù)庫名稱;用于指定數(shù)據(jù)庫版本號(hào),當(dāng)新添加了表要更新數(shù)據(jù)庫時(shí),將version中的value值加1即可;標(biāo)簽用于指定所有的映射模型;每個(gè)映射模型用標(biāo)簽聲明,class指定映射模型類名(完整類名),User為一個(gè)模型類的名字,類中定義的變量對(duì)應(yīng)著數(shù)據(jù)庫表中的列。

        3)配置LitePalApplication:操作數(shù)據(jù)庫需要用到Context,LitePal通過在AndroidManifest.xml中配置LitePalApplication,簡(jiǎn)化了Context參數(shù),使用數(shù)據(jù)庫操作時(shí)就無需再傳Context。如以下代碼所示:

        android:name="org.litepal.LitePalApplication"

        android:allowBackup="true"

        android:icon="@mipmap/ic_launcher"

        android:label="@string/app_name"

        android:roundIcon="@mipmap/ic_launcher_round"

        android:supportsRtl="true"

        android:theme="@style/AppTheme">

        4)初始化和操作數(shù)據(jù)庫:每個(gè)Activity需要應(yīng)用LitePal時(shí),調(diào)用一次LitePal.getDatabase()即可進(jìn)行初始化。根據(jù)對(duì)象關(guān)系映射模式的理論,新建一個(gè)User模型類,類中元素對(duì)應(yīng)數(shù)據(jù)庫的數(shù)據(jù)表User中的列數(shù)據(jù)編號(hào)id、賬號(hào)user、密碼password和用戶姓名username。操作User數(shù)據(jù)表只需要分別調(diào)動(dòng)模型類User對(duì)象的user.save()和user.delete()方法即可實(shí)現(xiàn)數(shù)據(jù)表的保存和刪除操作。這樣就可以應(yīng)用LitePal框架對(duì)Android數(shù)據(jù)庫進(jìn)行賬號(hào)信息的添加和刪除,實(shí)現(xiàn)用戶注冊(cè)和用戶注銷功能。SQLite數(shù)據(jù)表的結(jié)構(gòu)模型如圖9所示。

        圖 9 數(shù)據(jù)表結(jié)構(gòu)示意圖

        3.2 軟件功能界面程序設(shè)計(jì)

        Android移動(dòng)端的軟件基于Android平臺(tái)開發(fā),利用Android平臺(tái)強(qiáng)大的UI開發(fā)功能為軟件各功能模塊設(shè)計(jì)界面,實(shí)現(xiàn)良好的人機(jī)交互。

        3.2.1Intent技術(shù)Intent技術(shù)作為Android開發(fā)的核心技術(shù)之一,用來協(xié)助各應(yīng)用的交互和通訊。Intent負(fù)責(zé)對(duì)應(yīng)用中一次操作的動(dòng)作、動(dòng)作涉及數(shù)據(jù)、附加數(shù)據(jù)進(jìn)行描述。根據(jù)Intent的描述,Android負(fù)責(zé)找到對(duì)應(yīng)的組件,將Intent傳遞給調(diào)用的組件,并完成組件的調(diào)用。Intent不僅可用于應(yīng)用程序之間,也可以開啟一個(gè)activity、發(fā)送廣播消息和開啟Service服務(wù)。調(diào)用startActivity()方法跳轉(zhuǎn)到指定Activity,可以實(shí)現(xiàn)登錄界面到注冊(cè)界面和功能界面的跳轉(zhuǎn)。還可以調(diào)用putExtra()方法實(shí)現(xiàn)Activity間的數(shù)據(jù)傳遞,將LoginActivity獲取的操作員信息傳遞到MainActivity。

        3.2.2Button控件Button是進(jìn)行UI開發(fā)時(shí)用于與用戶交互的重要控件。其中Button的點(diǎn)擊事件功能是實(shí)現(xiàn)交互的關(guān)鍵,設(shè)置點(diǎn)擊相應(yīng)事件有實(shí)現(xiàn)OnClickListener接口、匿名內(nèi)部類和定義內(nèi)部類三種方法,用戶根據(jù)需求點(diǎn)擊相應(yīng)的Button。登錄界面設(shè)置登錄和注冊(cè)兩個(gè)Button觸發(fā)Activity跳轉(zhuǎn)事件。

        3.2.3Spinner控件Spinner控件是一個(gè)列表下拉框,在用戶點(diǎn)擊之后彈出一個(gè)數(shù)據(jù)列表供用戶選擇。對(duì)于Spinner列表顯示的數(shù)據(jù)源,有兩種方法進(jìn)行設(shè)定:一是通過Adapter設(shè)置,調(diào)用xml資源文件獲取數(shù)據(jù)源通過Adapter綁定到Spinner控件顯示,xml資源文件結(jié)構(gòu)如圖10所示;二是通過布局文件在Spinner控件的設(shè)置中添加android:entries="@array/error_data"代碼直接調(diào)用xml文件顯示到界面。但是通過布局文件設(shè)置的Spinner不能對(duì)選擇事件響應(yīng),不利于用戶交互。軟件界面利用Adapter設(shè)置Spinner,調(diào)用AdapterView.OnItemSelectedListener()方法實(shí)現(xiàn)列表項(xiàng)被選擇時(shí)觸發(fā)響應(yīng)事件。

        圖10 xml文件結(jié)構(gòu)

        3.2.4ScrollView控件ScrollView是一種特殊類型的FrameLayout。它可以使用戶滾動(dòng)顯示一個(gè)占據(jù)的空間大于物理顯示的視圖列表。ScrollView只能包含一個(gè)子視圖或視圖組,通常包含的是一個(gè)垂直的LinearLayout。在Activity中添加ScrollView控件將整個(gè)頁面轉(zhuǎn)化成滾動(dòng)視圖,以便于瀏覽數(shù)據(jù)。

        利用Android平臺(tái)中的相關(guān)關(guān)鍵技術(shù)和UI控件進(jìn)行軟件界面設(shè)計(jì),相關(guān)界面如圖11所示。

        圖11 軟件界面

        4 結(jié)束語

        通過Android技術(shù)實(shí)現(xiàn)了移動(dòng)端與遠(yuǎn)程服務(wù)器的交互,實(shí)時(shí)獲取云服務(wù)器端的故障預(yù)警結(jié)果,并由操作員結(jié)合實(shí)際判斷預(yù)警結(jié)果是否準(zhǔn)確,實(shí)時(shí)將反饋結(jié)果上傳至遠(yuǎn)程數(shù)據(jù)庫,為服務(wù)器端的模型更新提供準(zhǔn)確的數(shù)據(jù)標(biāo)簽。利用云服務(wù)器端的故障數(shù)據(jù)庫,終端系統(tǒng)可根據(jù)故障類型查詢相應(yīng)的故障原因和故障解決方案。該終端系統(tǒng)的應(yīng)用可以移植于多種Android移動(dòng)設(shè)備,比如Android智能手機(jī)和Android智能平板等,減少了傳統(tǒng)PC端遠(yuǎn)程監(jiān)測(cè)的局限性,提高了戶外操作員故障監(jiān)測(cè)和排除故障的實(shí)時(shí)性和便利性,具有很好的應(yīng)用前景。

        猜你喜歡
        數(shù)據(jù)庫故障模型
        一半模型
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        故障一點(diǎn)通
        數(shù)據(jù)庫
        3D打印中的模型分割與打包
        奔馳R320車ABS、ESP故障燈異常點(diǎn)亮
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        手机在线免费av资源网| 天堂在线观看av一区二区三区 | 亚洲av激情一区二区| 免费国产在线精品一区| 无码精品a∨在线观看十八禁 | 久久午夜无码鲁丝片午夜精品| 亚洲日韩乱码中文无码蜜桃臀| 美女裸体无遮挡免费视频国产| 久久国产精品色av免费看| 亚洲精品欧美精品日韩精品| 免费xxx在线观看| 999久久久免费精品国产牛牛| 亚洲一区二区三区色偷偷| 亚洲乱码中文字幕久久孕妇黑人| 大伊香蕉在线精品视频75| 欧洲亚洲色一区二区色99| 成人免费播放视频影院| 国内精品久久久人妻中文字幕| 亚洲综合av在线在线播放| 亚洲在线一区二区三区四区 | 亚洲成在人线视av| 精品人妻少妇一区二区三区不卡| 国产精品亚洲午夜不卡| 日本国产精品高清在线| 日韩极品免费在线观看| 日本一区二区精品高清| 精品日产卡一卡二卡国色天香 | 欧美四房播播| 色丁香色婷婷| 少妇高潮太爽了免费网站| 18禁裸体动漫美女无遮挡网站| 亚洲精品v欧洲精品v日韩精品| a级毛片无码久久精品免费| 亚洲另类国产综合第一| 新久久久高清黄色国产| 一本久道高清视频在线观看| 肥臀熟女一区二区三区| 亚洲成av人片无码不卡播放器| 成年男女免费视频网站点播| 日日摸日日碰人妻无码| 抽插丰满内射高潮视频|