陳敏捷,羊榮金,沈孟鋒
基于Android平臺的液壓虛擬實驗系統設計
陳敏捷,羊榮金,沈孟鋒
(杭州科技職業技術學院 機電工程學院,浙江 杭州 311402)
為提高“液壓傳動”課程實驗教學質量,借助UG與3ds Max建模軟件構建液壓零部件模型,并以Unity開發引擎搭建了基于Android平臺的液壓虛擬實驗系統。該系統具有實驗室漫游、實驗指導、知識點學習、液壓元件拆裝練習以及液壓回路與系統搭建、成果展示等功能。系統效果逼真、人機交互性強,且比桌面式應用更方便靈活,不受時空限制,能充分激發學生的學習興趣,提高學習質量。
液壓實驗;虛擬現實;實驗教學;Unity 3D
杭州科技職業技術學院將虛擬現實技術應用于液壓實驗教學環節,采用虛實結合的方式開展實驗教學,在提高學生學習興趣、培養學生實踐動手能力與創新意識等方面獲得了較好的效果[1]。由于電腦桌面式虛擬實驗系統受使用時間、場地的限制,故而開發了一套能在Android手機上運行的液壓虛擬實驗系統。該系統具有漫游、實驗指導、知識點學習、液壓元件拆裝練習以及液壓回路與系統搭建、成果展示等功能,方便學生在課堂、實驗室、自習室、宿舍等空間隨時進行持續性學習,為提高教學效率和效果提供有力支持[2]。
本系統定位為基于手機終端、配合信息化教學的虛擬現實互動平臺,能夠方便學生開展移動式、碎片化學習。系統開發的總體思路為:
(1)界面設計。界面友好、操作方便、環境真實、模型準確,能保證實驗的準確性,并讓學生從中體驗學習的樂趣。
(2)內容設計。原有PC版系統已有液壓回路與液壓系統搭建的內容,在此基礎上增加實驗室漫游、實驗指導、知識點學習、液壓元件拆裝練習以及成果展示等內容,既涉及液壓傳動課程理論教學的核心知識點,又涵蓋實驗教學的全部內容。在“成果展示”模塊展示相關競賽、科研的最新成果,是學生接觸最新液壓技術的窗口。
(3)人機交互。既可以全方位進行液壓元件的拆裝練習,又可以多角度地進行液壓回路與系統搭建、實驗數據采集等,沉浸感強。
(4)資源共享。可以通過校園網、精品課程、云課程平臺等途徑實現資源共享,使師生享受虛擬現實技術帶給教學的便利。
液壓虛擬實驗系統的總體框架結構如圖1所示。其中,元件部分涵蓋齒輪泵、葉片泵、柱塞泵、單桿活塞缸等14種液壓元件;回路部分涵蓋壓力調節回路、多級調壓回路、采用節流閥的節流調速回路等19種基本液壓回路;典型系統部分涵蓋YT4543型動力滑臺液壓系統等4種典型液壓系統[3]。

圖1 液壓虛擬實驗系統的總體框架結構
目前,手機系統平臺主要為Android、IOS系統,學生普遍使用的小米、OPPO、華為等手機均采用Android系統。本液壓虛擬實驗系統選擇Android系統作為運行平臺,技術方案如圖2所示。
通過建模軟件Solidworks創建液壓元件、實驗臺等裝配體模型,并將其導入3ds Max進行模型優化[4-5]。3ds Max可以賦予模型燈光和材質[6]。模型的貼圖和材質也可以利用Photoshop軟件處理。優化后的模型以Unity能夠識別的.fbx文件格式保存。模型和貼圖、材質等導入Unity,通過C#編寫與之功能相應的腳本程序,并設計系統界面,提供良好的人機交互功能[7]。

圖2 液壓虛擬實驗系統的技術方案
為Unity搭建Android開發環境JDK(Java development kit)、SDK(software development kit)和Eclipse,生成apk安裝包,實現Android平臺的手機應用[8]。
液壓虛擬實驗系統的關鍵技術是人機交互。人機交互是指用戶通過鍵盤、鼠標和一些外部輸入設備控制和操縱虛擬場景中的動作。PC端系統主要通過鼠標與鍵盤實現交互,而手機的輸入設備是觸摸屏。因此,需要將對鼠標的操作映射到指尖對觸摸屏的相關操作上,才能適配。
本系統的登錄或退出、實驗的選擇、教學資源的點擊播放等通過UI界面的Button元素實現;元件的控制(移動、旋轉、縮放等)、元件的虛擬拆裝以及回路與系統的虛擬搭建通過與元件模型的交互操作來實現。
通過指尖觸摸的方式對液壓虛擬實驗系統的元件模型進行操作,其原理是從指尖觸摸的位置發射一條射線,并檢測射線與元件模型的碰撞體Collider是否接觸。在對每個元件模型添加Box Collider后,增加FingerTouch腳本,使之支持指尖觸摸操作。對于界面上存在的大量UI按鈕等,必須防止點擊到UI時觸發移動、旋轉與縮放。FingerTouch腳本中,單點長按1 s后平行滑動實現元件移動,單點滑動實現元件旋轉,多點觸摸實現元件縮放。腳本核心代碼如下:
//計算老的兩點距離和新的兩點間距離,變大要放大模型,變小要縮放模型
float oldDistance = Vector2.Distance(oldTouch1. position, oldTouch2.position);
float newDistance = Vector2.Distance(newTouch1. position, newTouch2.position);
//兩個距離之差,為正表示放大手勢,為負表示縮小手勢
float offset = newDistance - oldDistance;
//放大因子,一個像素按 0.01倍來算(100可調整)
float scaleFactor = offset / 100f;
Vector3 localScale = transform.localScale;
Vector3 scale = new Vector3(localScale.x + scaleFactor,
localScale.y + scaleFactor,
localScale.z + scaleFactor);
回路與系統的虛擬搭建是通過從UI拖拽生成元件模型實體的方式實現的。當開始拖拽時,即生成元件的模型實體;拖拽過程中,檢測射線擊中場景中的點并把該點的坐標賦值給生成的元件模型實體。最終,拖拽生成的元件模型實體放置在賦值的坐標點處。腳本核心代碼如下:
if (go!=null)
{
Ray ray = Camera.main.ScreenPoint ToRay (Input.fingerPosition);
RaycastHit hit;
Vector3 screenSpace;
if (Physics.Raycast(ray, out hit))
{
go.transform.position = hit.point;
}
else
{
Vector3 pos = Camera.main.ScreenToWorldPoint (Input.fingerPosition);
go.transform.position = pos;
}
}
系統開發完成后,經過測試,在小米、OPPO、華為、VIVO等多個品牌手機的多個版本Android系統平臺運行順暢,能夠達到預期效果。本文以“動力元件虛擬實驗”與“差動控制回路虛擬實驗”為例進行實驗演示。終端設備為華為暢享8plus智能手機,CPU主頻2.36 GHz,運行內存為4.0 GB,屏幕分辨率為2160×1080,操作系統為Android8.0.0版本。
在手機上安裝液壓虛擬實驗系統,在登錄界面輸入用戶名、密碼進入系統主界面。在系統主界面可以選擇要進行的虛擬實驗。
在系統主界面單擊“動力元件”按鈕,進入“動力元件虛擬實驗”界面。界面上方設有選項卡,可以進行動力元件虛擬實驗類型的選擇。動力元件包括齒輪泵、葉片泵、柱塞泵和螺桿泵,如圖3(a)所示。圖中選中齒輪泵為實驗對象。
界面中心區域為齒輪泵三維模型,針對齒輪泵元件的學習包括3部分內容。
(1)知識點學習。通過單擊“元件介紹”“工作原理”“爆炸圖”按鈕分別進入相應界面進行學習,界面圖文并茂,爆炸圖界面采用視頻文件進行元件爆炸視圖展示。
(2)元件結構的全方位展示。單點觸摸實現模型移動或旋轉,多點觸摸實現模型縮放;單擊某一部分元件結構,可提示該部分元件結構名稱;單擊元件結構后可繼續選擇“元件隱藏”或“元件恢復”進行元件結構的隱藏或恢復。通過觸摸操作,可以實現全方位、多角度的元件觀察,極具現場感與真實感。圖3(b)為齒輪泵經過縮放、移動、旋轉并隱藏了前泵蓋的效果,單擊元件的某結構(例如泵體),顯示屏將提示該部分結構名稱(例如“泵體”)。
(3)元件的虛擬拆裝。在虛擬拆裝環境,使用者能按照正確的流程逐步完成拆裝過程。點擊圖3(a)中“虛擬拆裝”按鈕,系統切換至齒輪泵虛擬拆裝界面。在圖3(c)所示界面下,用戶單擊“拆裝介紹”按鈕即可查看拆裝方法介紹,單擊按鈕“上一步”和“下一步”進行拆卸與裝配實驗。

圖3 動力元件虛擬實驗
在系統主界面單擊“基本回路”按鈕,進入如圖4所示的基本回路選擇界面。本實驗系統包括19個基本回路實驗。如圖5所示,在選擇進入“差動控制回路”虛擬實驗界面后,單擊桌面上的“實驗目的”“實驗原理”和“實驗流程”按鈕,可以了解實驗并做好實驗前的準備。
4.2.1 實驗臺的搭建與元件的操作
(1)元件搭建。如圖6所示,點擊左側“元件庫”,選擇實驗所需用的元件,拖動到原理圖相應的位置,待出現一個紅色識別區后,釋放元件。如果選擇元件正確即可完成元件安裝。在實驗臺搭建過程中,仍然可以通過指尖觸摸的方式在界面上進行元件與實驗臺的移動、旋轉與縮放。

圖4 基本回路選擇界面

圖5 差動控制回路虛擬實驗界面

圖6 液壓實驗臺的搭建
(2)管路連接。所有元件安裝到位后,點擊左側連管按鈕,完成管路連接。管路的透明程度可以通過管路透明調節滑塊調節,方便觀察液壓油的流動情況。
(3)元件的操作。通過元件的操作按鈕,例如電源按鈕、壓泵按鈕、電磁閥線圈按鈕、閥門上的轉向箭頭等,即可打開或關閉相應的元件。
4.2.2 信息提示和數據采集
提示和報警:在實驗過程中,會出現實驗操作步驟的提示,如果實驗錯誤,會出現報警。
實驗數據:點擊“實驗數據”按鈕,可以查看實驗過程中壓力、流量等實時數據。
以“差動控制回路”虛擬實驗為例,當三位四通電磁閥處于左位和中位時,可以觀察到液壓缸伸出速度的變化,幫助學生直觀理解差動回路的控制原理;可以讀取壓力表的壓力值,觀察系統的壓力變化。
我校在“液壓傳動”課程的教學中,通過混合式教學法,將“液壓虛擬實驗系統”引入理論教學環節。2017級近200名學生使用該移動式、智能化的實驗教學平臺進行學習,表現出很高的學習熱情[9-10]。該液壓虛擬實驗系統作為“液壓傳動”課程學習的有效工具,比桌面應用軟件更具靈活性。該軟件因具有創新性與實用性,已經獲得相關軟件著作權。基于移動學習模式的巨大發展空間,后續將在人機交互、系統功能等方面繼續完善系統,在“液壓傳動”課程教學中不斷創新,取得更好的教學效果。
[1] 陳敏捷,羊榮金,沈孟鋒. 虛擬現實技術在液壓傳動實驗教學中的應用研究[J]. 實驗技術與管理,2018, 35(4): 136–139.
[2] 邱龍輝. 基于Android平臺的工程圖學助教助學系統研究與實現[J]. 圖學學報,2016, 37(6): 831–835.
[3] 王積偉. 液壓傳動[M]. 3版. 北京:機械工業出版社,2018.
[4] 劉杰宇,單奇. 基于VR技術的液壓多路閥虛擬裝配系統研究[J]. 中國測試,2014, 40(增刊1): 121–125.
[5] 何昌偉,賈小平,劉大偉,等. 增強現實技術在船舶液壓領域中的應用[J]. 中國航海,2014, 37(2): 24–26, 52.
[6] 梁峙. 中文版3ds Max2014實用教程[M]. 北京:人民郵電出版社,2016.
[7] 吳雁濤. Unity3D平臺AR與VR開發快速上手[M]. 北京:清華大學出版社,2017.
[8] 豐生強. Android 軟件安全權威指南[M]. 北京:電子工業出版社,2019.
[9] 呂明珠. 虛擬仿真技術在液壓與氣動實驗教學中的應用[J]. 實驗技術與管理,2015, 32(4): 144–146.
[10] 趙雷,楊奕,張利國,等. 基于混合式教學的“液壓與氣壓傳動”在線開放課程設計[J]. 實驗技術與管理,2018, 35(5): 159–162.
Design of hydraulic virtual experiment system based on Android platform
CHEN Minjie, YANG Rongjin, SHEN Mengfeng
(School of Mechanical and Electrical Engineering, Hangzhou Polytechnic, Hangzhou 311402, China)
In order to improve the experimental teaching quality of the“Hydraulic drive” course, the model of hydraulic components is built by UG and 3ds Max modeling software, and a hydraulic virtual experiment system based on Android platform is built by Unity development engine. This system has the functions of laboratory roaming, experimental guidance, knowledge point learning, hydraulic component disassembly and assembly exercises, hydraulic circuit and system construction, achievement display, etc. This system has vivid effect, strong human-computer interaction, and is more convenient and flexible than desktop application, which is not limited by time and space and can fully stimulate students’ interest in learning and improve the quality of learning.
hydraumatic experiment; virtual reality; experimental teaching; Unity 3D
G642
A
1002-4956(2019)11-0117-04
10.16791/j.cnki.sjg.2019.11.029
2019-04-28
浙江省教科規劃2018年度研究課題(2018SCG010);2017年浙江省教育廳一般科研項目(Y201737277);杭州科技職業技術學院2018年校級重點科研課題(HKZYZD-2018-2)
陳敏捷(1986—),女,浙江溫州,碩士,講師,主要從事液壓虛擬仿真教學科研工作。E-mail: 1692326544@qq.com