TW202329058A - Virtual reality system with an inspecting function of assembling and disassembling and inspection method thereof - Google Patents

Virtual reality system with an inspecting function of assembling and disassembling and inspection method thereof Download PDF

Info

Publication number
TW202329058A
TW202329058A TW111101604A TW111101604A TW202329058A TW 202329058 A TW202329058 A TW 202329058A TW 111101604 A TW111101604 A TW 111101604A TW 111101604 A TW111101604 A TW 111101604A TW 202329058 A TW202329058 A TW 202329058A
Authority
TW
Taiwan
Prior art keywords
virtual
disassembly
teaching
objects
learning
Prior art date
Application number
TW111101604A
Other languages
Chinese (zh)
Other versions
TWI853204B (en
Inventor
嚴堯瀚
羅文欣
柳于婷
劉冠志
Original Assignee
台達電子工業股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 台達電子工業股份有限公司 filed Critical 台達電子工業股份有限公司
Priority to TW111101604A priority Critical patent/TWI853204B/en
Priority claimed from TW111101604A external-priority patent/TWI853204B/en
Publication of TW202329058A publication Critical patent/TW202329058A/en
Application granted granted Critical
Publication of TWI853204B publication Critical patent/TWI853204B/en

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

A virtual reality system with an inspecting function of assembling and disassembling and an inspection method of assembling and disassembling based on virtual reality are presented. A learning-end acquires an inspection data and a teaching assembling disassembling record being set a plurality of checkpoints, plays the teaching assembling disassembling record, modifies a learning assembling disassembling status based on user operations of assembling or disassembling a plurality of virtual objects. The learning-end issues an assembling disassembling error reminder when the learnin gassembling and disassembling status is inconsistent with a teaching assembling disassembling status at any of the checkpoints.

Description

具有拆裝檢核功能的虛擬實境系統及其拆裝檢核方法Virtual Reality System with Disassembly and Inspection Function and Disassembly and Inspection Method

本發明係與一種虛擬實境系統有關,特別有關於一種具有拆裝檢核功能的虛擬實境系統與一種基於虛擬實境的拆裝檢核方法。The present invention is related to a virtual reality system, in particular to a virtual reality system with a disassembly inspection function and a virtual reality-based disassembly inspection method.

目前以虛擬實境教學系統來說,通常教師係透過操作虛擬實境裝置來於虛擬實境中進行教學演示(如拆裝機械設備、組裝模型、組裝傢俱等)。Currently, taking the virtual reality teaching system as an example, teachers usually conduct teaching demonstrations (such as disassembling and assembling mechanical equipment, assembling models, assembling furniture, etc.) in virtual reality by operating virtual reality devices.

並且,虛擬實境教學系統可對演示過程進行錄製來獲得並儲存演示過程的VR影片。接著,學生可於任何時間透過虛擬實境裝置播放VR影片,來於虛擬實境中重現演示過程,以進行學習。Moreover, the virtual reality teaching system can record the demonstration process to obtain and store the VR video of the demonstration process. Then, students can play the VR video through the virtual reality device at any time to reproduce the demonstration process in the virtual reality for learning.

然而,當學生跟隨播放中的VR影片進行練習(如拆裝機械設備、組裝模型、組裝傢俱等)時,在缺乏教師的即時監督下,學生無法即時確認練習成果是否正確,而大幅降低學習效率。因此,現有的虛擬實境教學系統僅能提供單向學習功能,無法對學生的即時學習狀態進行驗證。However, when students practice (such as disassembling and assembling mechanical equipment, assembling models, assembling furniture, etc.) following the playing VR videos, without the immediate supervision of teachers, students cannot immediately confirm whether the exercise results are correct, which greatly reduces learning efficiency . Therefore, the existing virtual reality teaching system can only provide a one-way learning function, and cannot verify the students' real-time learning status.

是以,現有的虛擬實境教學系統存在上述問題,而亟待更有效的方案被提出。Therefore, the existing virtual reality teaching system has the above-mentioned problems, and more effective solutions are urgently needed to be proposed.

本發明之主要目的,係在於提供一種具有拆裝檢核功能的虛擬實境系統與一種基於虛擬實境的拆裝檢核方法,可對學習端的拆裝狀態進行檢核。The main purpose of the present invention is to provide a virtual reality system with a disassembly inspection function and a disassembly inspection method based on virtual reality, which can check the disassembly state of the learning terminal.

於一實施例中,一種具有拆裝檢核功能的虛擬實境系統包含伺服器端及學習端。伺服器端用來提供教導拆裝記錄及檢核資料。檢核資料包含多個虛擬物件於各檢核點的教導拆裝狀態。學習端包含學習端模組及學習端虛擬實境裝置。學習端虛擬實境裝置用來播放教導拆裝記錄並接受操作。學習端模組用來基於操作對多個虛擬物件進行拆裝來改變多個虛擬物件的學習拆裝狀態,並於任一檢測點的教導拆裝狀態與學習拆裝狀態不符時,發出拆裝錯誤提示。In one embodiment, a virtual reality system with a disassembly and inspection function includes a server end and a learning end. The server side is used to provide teaching disassembly records and inspection data. The check data includes the taught disassembly status of multiple virtual objects at each check point. The learning terminal includes a learning terminal module and a learning terminal virtual reality device. The virtual reality device at the learning end is used to play teaching disassembly records and accept operations. The learning terminal module is used to disassemble multiple virtual objects based on operations to change the learning disassembly status of multiple virtual objects, and when the teaching disassembly status of any detection point does not match the learning disassembly status, a disassembly will be issued. Error message.

於一實施例中,一種基於虛擬實境的拆裝檢核方法,包含:a) 於一學習端取得設定有多個檢核點的一教導拆裝記錄及一檢核資料,其中檢核資料包括多個虛擬物件於各檢核點的一教導拆裝狀態;b) 於學習端播放教導拆裝記錄;c) 於學習端接受操作來對多個虛擬物件進行拆裝來改變多個虛擬物件的一學習拆裝狀態;及,d) 於任一檢測點的教導拆裝狀態與學習拆裝狀態不符時,發出一拆裝錯誤提示。In one embodiment, a virtual reality-based disassembly and inspection method includes: a) Obtaining a teaching disassembly record and a verification data set with a plurality of verification points at a learning terminal, wherein the verification data Including a teaching disassembly state of multiple virtual objects at each checkpoint; b) Play teaching disassembly records on the learning end; c) Accept operations on the learning end to disassemble and assemble multiple virtual objects to change multiple virtual objects and, d) when the teaching disassembly state at any detection point does not match the learning disassembly state, a disassembly error prompt is issued.

本發明可即時確認學習端的拆裝狀態是否正確,而可大幅提升學生的學習效率與正確性。The present invention can immediately confirm whether the disassembly state of the learning terminal is correct, and can greatly improve the learning efficiency and accuracy of students.

茲就本發明之一較佳實施例,配合圖式,詳細說明如後。A preferred embodiment of the present invention will be described in detail below in conjunction with the drawings.

為解決現有的虛擬實境教學系統無法對學生的即時拆裝狀態進行驗證的問題,本發明提出一種具有拆裝檢核功能的虛擬實境系統與一種基於虛擬實境的拆裝檢核方法,可於教師所錄製的教導拆裝記錄中設定多個檢核點來於重現時對學生的拆裝狀態即時進行驗證。In order to solve the problem that the existing virtual reality teaching system cannot verify the students' real-time disassembly and assembly status, the present invention proposes a virtual reality system with a disassembly and assembly inspection function and a disassembly and assembly inspection method based on virtual reality. Multiple checkpoints can be set in the teaching disassembly record recorded by the teacher to verify the student's disassembly status in real time when it is reproduced.

請參閱圖1A與圖1B,圖1A為本發明的教導端的操作示意圖,圖1B為本發明的學習端的操作示意圖。Please refer to FIG. 1A and FIG. 1B , FIG. 1A is a schematic diagram of the operation of the teaching terminal of the present invention, and FIG. 1B is a schematic diagram of the operation of the learning terminal of the present invention.

於開始錄製前,教師100可於虛擬實境系統先創建一堂拆裝課程(如機械手臂的拆裝教學),設定拆裝課程的基本資料(如課程名稱、說明、瀏覽權限等),並創建課程所需的多個虛擬物件112(如虛擬端效器、虛擬手臂、虛擬底座、虛擬固定件等)。Before starting recording, the teacher 100 can first create a disassembly course (such as disassembly and assembly teaching of a robotic arm) in the virtual reality system, set the basic information of the disassembly course (such as course name, description, browsing rights, etc.), and create A plurality of virtual objects 112 required for the course (such as virtual end effectors, virtual arms, virtual bases, virtual fixtures, etc.).

接著,如圖1A所示,教師100可穿戴教導端虛擬實境裝置111(包含顯示器與控制器)來開始錄製拆裝課程。Next, as shown in FIG. 1A , the teacher 100 can wear the teaching terminal virtual reality device 111 (including a display and a controller) to start recording the assembly and disassembly course.

具體而言,教師100可穿戴教導端虛擬實境裝置111來對多個虛擬物件112進行組裝或者拆解。Specifically, the teacher 100 can wear the teaching terminal virtual reality device 111 to assemble or disassemble a plurality of virtual objects 112 .

並且,虛擬實境系統可對教師100的上述拆裝流程進行錄製來產生可以虛擬實境方式重現的教導拆裝記錄。前述教導拆裝記錄可例如為VR影片。Moreover, the virtual reality system can record the above disassembly process of the teacher 100 to generate teaching disassembly records that can be reproduced in virtual reality. The aforementioned teaching disassembly record can be, for example, a VR video.

更進一步地,於錄製過程中或錄製完成後,教師100可對教導拆裝記錄的一或多個時間點或拆裝步驟設定檢核點。接著,虛擬實境系統會取得多個虛擬物件112於各檢核點的教導拆裝狀態並記錄為檢核資料。教導拆裝狀態可包含多個虛擬物件112的連結關係、位置、旋轉與朝向等)Furthermore, during the recording process or after the recording is completed, the teacher 100 can set checkpoints for one or more time points or disassembly steps of the teaching disassembly recording. Then, the virtual reality system will obtain the teaching and disassembly statuses of the plurality of virtual objects 112 at each check point and record them as check data. Teaching the state of disassembly and assembly may include the connection relationship, position, rotation and orientation of multiple virtual objects 112, etc.)

最後,虛擬實境系統可將設定有檢核點的教導拆裝記錄及其檢核資料儲存於課程儲存空間(如儲存伺服器、網路資料庫或雲端硬碟等)以供學生下載。Finally, the virtual reality system can store the teaching disassembly records with checkpoints and the check data in the course storage space (such as storage server, network database or cloud hard drive, etc.) for students to download.

接著,如圖1B所示,以僅透過觀看進行學習為例,學生120可下載前述教導拆裝記錄及檢核資料,透過教導端虛擬實境裝置121來以虛擬實境方式重現教師110的拆裝流程。Next, as shown in FIG. 1B , taking learning only by watching as an example, the student 120 can download the above-mentioned teaching disassembly record and inspection data, and use the virtual reality device 121 of the teaching terminal to reproduce the teacher 110 in virtual reality. Disassembly process.

此外,以透過非同步操作進行學習為例,學生130可透過教導端虛擬實境裝置131來以虛擬實境方式重現教導拆裝記錄中所需要使用的多個虛擬物件132。In addition, taking learning through asynchronous operation as an example, the student 130 can use the virtual reality device 131 of the teaching terminal to reproduce in virtual reality a plurality of virtual objects 132 that need to be used in teaching disassembly and assembly records.

接著,學生130可一邊觀看所重現的教師110的拆裝流程,一邊對多個虛擬物件132進行拆裝。Then, the student 130 can disassemble and assemble the plurality of virtual objects 132 while watching the reproduced disassembly and assembly process of the teacher 110 .

並且,當教導拆裝記錄播放至任一檢測點時,本發明的虛擬實境系統可自動比對學生130所做學習拆裝狀態是否與此檢核點的教導拆裝狀態相符,藉以即時驗證學生130是否正確學習拆裝流程。Moreover, when the teaching disassembly record is played to any inspection point, the virtual reality system of the present invention can automatically compare whether the learning disassembly status of the student 130 is consistent with the teaching disassembly status of the checkpoint, so as to verify in real time Whether the student 130 correctly learns the disassembly process.

請參閱圖2,圖2為本發明一實施例的虛擬實境系統的架構圖。Please refer to FIG. 2 . FIG. 2 is a structural diagram of a virtual reality system according to an embodiment of the present invention.

本實施例的虛擬實境系統2可包含透過網路連接的伺服器端20與學習端21。The virtual reality system 2 of this embodiment may include a server end 20 and a learning end 21 connected through a network.

伺服器端20由課程管理者所操作,可為伺服器、雲端運算平台等,但不以此限定。The server 20 is operated by the course administrator, and can be a server, a cloud computing platform, etc., but not limited thereto.

學習端21由學生所負責操作,可為個人電腦、筆記型電腦、平板電腦、遊戲機、行動裝置等,但不以此限定。The learning terminal 21 is operated by the student and can be a personal computer, a notebook computer, a tablet computer, a game console, a mobile device, etc., but not limited thereto.

伺服器端20用來提供教導拆裝記錄201及檢核資料202。前述教導拆裝記錄201可設定有一或多個檢核點。檢核資料200可包含教導拆裝記錄201所使用的多個虛擬物件於各檢核點的教導拆裝狀態。The server end 20 is used to provide teaching disassembly records 201 and inspection data 202 . The aforementioned teaching disassembly record 201 can be set with one or more checkpoints. The check data 200 may include the teaching disassembly status of the multiple virtual objects used in the teaching disassembly record 201 at each check point.

伺服器端20可包含伺服器端模組200。伺服器端模組200用來控制伺服器端20執行後續之資料傳輸、控制與處理。The server 20 can include a server module 200 . The server module 200 is used to control the server 20 to perform subsequent data transmission, control and processing.

學習端21可包括學習端虛擬實境裝置210與學習端模組211。The learning terminal 21 may include a learning terminal virtual reality device 210 and a learning terminal module 211 .

學習端虛擬實境裝置210用來播放教導拆裝記錄201以重現教師的拆裝流程,並可接受學生操作來對所顯示的虛擬物件進行拆裝。The virtual reality device 210 at the learning end is used to play the teaching disassembly record 201 to reproduce the teacher's disassembly process, and accept the operation of the students to disassemble the displayed virtual object.

學習端模組211用來控制學習端21執行後續之資料傳輸、控制與處理。The learning terminal module 211 is used to control the learning terminal 21 to perform subsequent data transmission, control and processing.

於一實施例中,於播放教導拆裝記錄過程中,學習端模組211可基於學生的操作對多個虛擬物件進行拆裝來改變多個虛擬物件的學習拆裝狀態(如多個虛擬物件的相對位置、相對連接關係等),並可於任一檢測點的教導拆裝狀態與學習拆裝狀態不符時,發出拆裝錯誤提示來提醒學生目前所做拆裝流程錯誤。In one embodiment, in the process of playing teaching and disassembling records, the learning terminal module 211 can disassemble and disassemble multiple virtual objects based on the student's operation to change the learning disassembly status of multiple virtual objects (such as multiple virtual objects The relative position, relative connection relationship, etc.), and when the teaching disassembly status of any detection point does not match the learning disassembly status, a disassembly error prompt will be issued to remind students that the current disassembly process is wrong.

請參閱圖3,圖3為本發明一實施例的虛擬實境系統的架構圖。Please refer to FIG. 3 . FIG. 3 is a structural diagram of a virtual reality system according to an embodiment of the present invention.

於本實施例中,虛擬實境系統3可包含伺服器端20、學習端21、網路資料庫30與教導端31。In this embodiment, the virtual reality system 3 may include a server end 20 , a learning end 21 , a network database 30 and a teaching end 31 .

伺服器端20可透過網路(如內部網路或網際網路)連接網路資料庫30,並可透過網路連接學習端21與教導端31。The server end 20 can be connected to the network database 30 through a network (such as an internal network or the Internet), and can be connected to the learning end 21 and the teaching end 31 through the network.

網路資料庫30可儲存有教導拆裝記錄201、檢核資料202、帳戶資料203、學習拆裝記錄204與課程模板205。The network database 30 can store teaching and disassembly records 201 , verification data 202 , account information 203 , learning disassembly records 204 and course templates 205 .

於一實施例中,帳戶資料203可包含教導端31所使用的教師帳號資料與學習端21的學生帳號資料。帳號資料203可包含教師及/或學生的基本資料、帳號密碼、權限、課程記錄(如已上傳課程或已觀看課程)等,但不加以限定。In one embodiment, the account data 203 may include the teacher account data used by the teaching terminal 31 and the student account data of the learning terminal 21 . Account information 203 may include basic information of teachers and/or students, account passwords, permissions, course records (such as uploaded courses or watched courses), etc., but not limited thereto.

於一實施例中,學習拆裝記錄204是由學習端21所上傳,其內容為學生觀看教導拆裝記錄201後所做出的拆裝流程。In one embodiment, the learning disassembly record 204 is uploaded by the learning terminal 21 , and its content is the disassembly process made by the students after watching the teaching disassembly record 201 .

於一實施例中,多個課程模板205是用來供教導端31下載。多個課程模板205可分別對應不同類型的課程,並預先建置有相關的多個虛擬物件,藉以供教師快速創建課程。In one embodiment, a plurality of course templates 205 are used for downloading by the teaching terminal 31 . Multiple course templates 205 can respectively correspond to different types of courses, and a plurality of related virtual objects are pre-built for teachers to quickly create courses.

於一實施例中,學習端21可包含學習端虛擬實境裝置210、學習端模組211、處理單元212、通訊單元213、儲存單元214及人機介面215。In one embodiment, the learning terminal 21 may include a learning terminal virtual reality device 210 , a learning terminal module 211 , a processing unit 212 , a communication unit 213 , a storage unit 214 and a man-machine interface 215 .

於一實施例中,學習端虛擬實境裝置210可包含顯示器2100與控制器2101。In one embodiment, the learning terminal virtual reality device 210 may include a display 2100 and a controller 2101 .

教導端31可為與學習端21相似之電腦裝置,其差別僅在於由不同使用者操作。The teaching terminal 31 can be a computer device similar to the learning terminal 21, the only difference is that it is operated by different users.

於一實施例中,教導端可包含教導端虛擬實境裝置310、教導端模組311、處理單元312、通訊單元313、儲存單元314及人機介面315。In one embodiment, the teaching terminal may include a teaching terminal virtual reality device 310 , a teaching terminal module 311 , a processing unit 312 , a communication unit 313 , a storage unit 314 and a man-machine interface 315 .

於一實施例中,教導端虛擬實境裝置310可包含顯示器3100與控制器3101。In one embodiment, the teaching end virtual reality device 310 may include a display 3100 and a controller 3101 .

於一實施例中,學習端虛擬實境裝置210與教導端虛擬實境裝置310可為任何市面上現有的虛擬實境裝置,顯示器2100、3100是用來呈現虛擬實境畫面,控制器2101、3101(例如控制手把)是用來接收使用者操作來對虛擬實境進行操作。In one embodiment, the virtual reality device 210 at the learning end and the virtual reality device 310 at the teaching end can be any existing virtual reality devices on the market. The displays 2100 and 3100 are used to present virtual reality images. The controllers 2101, 3101 (such as a control handle) is used to receive user operations to operate the virtual reality.

於一實施例中,處理單元211、311可為處理器、微控制器等具有處理能力之電路。通訊單元213、214(如網路介面卡)用來連接網路,並透過網路進行資料傳輸。儲存單元214、314可包含揮發性記憶體(如RAM)與非揮發性記憶體(如ROM、EEPROM、固態硬碟、磁碟硬碟、快閃記憶體等),用來儲存資料。人機介面215、315,可包含輸入介面(如鍵盤、滑鼠、觸控板等)與輸出介面(如顯示器、揚聲器等),用來接受使用者操作。In one embodiment, the processing units 211 and 311 may be circuits with processing capabilities such as processors and microcontrollers. The communication units 213 and 214 (such as network interface cards) are used to connect to the network and transmit data through the network. The storage units 214 and 314 may include volatile memory (such as RAM) and non-volatile memory (such as ROM, EEPROM, solid state hard disk, magnetic disk hard disk, flash memory, etc.) for storing data. The man-machine interface 215, 315 may include an input interface (such as a keyboard, a mouse, a touch pad, etc.) and an output interface (such as a display, a speaker, etc.) for accepting user operations.

於一實施例中,本實施例的虛擬實境系統3可提供教材製作功能(由教導端31與伺服器端20來加以實現)與互動學習功能(由伺服器端20與學習端21來加以實現)。In one embodiment, the virtual reality system 3 of the present embodiment can provide a teaching material production function (realized by the teaching terminal 31 and the server terminal 20) and an interactive learning function (realized by the server terminal 20 and the learning terminal 21) accomplish).

教材製作功能所產生的資料(如教導拆裝記錄與檢核資料),可用於互動學習功能。並且,互動學習功能所產生的資料(如學習拆裝紀錄)可經過分析處理後被導入教材製作功能。藉此,本發明可形成有機的教材動態循環體系。The data generated by the teaching material production function (such as teaching disassembly records and inspection data) can be used in the interactive learning function. Moreover, the data generated by the interactive learning function (such as learning disassembly records) can be imported into the teaching material production function after being analyzed and processed. Thereby, the present invention can form an organic teaching material dynamic circulation system.

於前述的教材製作功能中,教師可操作教導端31來編輯課程資訊、上傳課程教材(如教導拆裝記錄201與檢核資料202,可包含文字資料、數值資料、影像資料及 3D 模型等)、及設定課程協作模式(可包含單人協作、多人協作、單人自主與多人同步等製作方式)。In the aforementioned teaching material production function, the teacher can operate the teaching terminal 31 to edit course information and upload course teaching materials (such as teaching disassembly record 201 and inspection data 202, which can include text data, numerical data, image data and 3D models, etc.) , and set the course collaboration mode (including single-person collaboration, multi-person collaboration, single-person autonomy and multi-person synchronization, etc.).

此外,教師可操作教導端31設定課程執行模式(如教師可依據強鷹架至弱鷹架的維度,來設定指導模式、引導模式、探索模式,並可依據測量目的設定測驗與評鑑等)、選擇課程模板205(如教師可依照系統推薦的結構段落,進行教學內容的安排以產出高教學成效的課程)、錄製教導拆裝記錄201(如記錄教師在虛擬環境中的聲音、所有行為動作,使用系統工具,進行 3D 空間的符號標記、畫筆註記、重點提示等,並可同時搭配課程教材進行教學)、及設定檢核點與檢核資料202(如系統於偵測到虛擬物件關係改變時自動產生檢核點,或由教師手動設定檢核點)。In addition, the teacher can operate the teaching terminal 31 to set the course execution mode (for example, the teacher can set the instruction mode, guidance mode, and exploration mode according to the dimensions of the strong scaffold to the weak scaffold, and can set tests and evaluations according to the measurement purpose, etc.) 1. Select the course template 205 (such as the teacher can arrange the teaching content according to the structural paragraphs recommended by the system to produce courses with high teaching effectiveness), record the teaching disassembly record 201 (such as recording the teacher’s voice in the virtual environment, all behaviors Actions, use system tools to mark symbols in 3D space, brush notes, key reminders, etc., and can be taught with course materials at the same time), and set check points and check data 202 (for example, the system detects the relationship between virtual objects Automatically generate checkpoints when changing, or set checkpoints manually by the teacher).

接著,於教導拆裝記錄201與檢核資料202製作完畢後,教導端31可透過伺服器端20上傳教導拆裝記錄201與檢核資料202至網路資料庫30,以完成課程的發布。Then, after the teaching disassembly record 201 and the verification data 202 are prepared, the teaching terminal 31 can upload the teaching disassembly record 201 and the verification data 202 to the network database 30 through the server 20 to complete the release of the course.

於前述的互動學習功能中,學生可操作學習端21來下載課程(教導拆裝記錄202與檢核資料),透過學習端虛擬實境裝置210播放教導拆裝記錄202來觀察教師的拆裝流程,並可同步或事後操作學習端虛擬實境裝置210來模仿拆裝流程。In the aforementioned interactive learning function, students can operate the learning terminal 21 to download courses (teaching and disassembly records 202 and check data), and play the teaching and disassembly records 202 through the virtual reality device 210 of the learning terminal to observe the teacher's disassembly process , and can operate the learning end virtual reality device 210 synchronously or afterwards to simulate the disassembly process.

於模仿拆裝流程過程中,學習端模組211可針對各檢核點的學習拆裝狀態進行自動檢核,並即時給予回饋(如通知動作正確或錯誤)。During the process of simulating the assembly and disassembly process, the learning terminal module 211 can automatically check the learning disassembly and assembly status of each check point, and give immediate feedback (such as notifying that the action is correct or wrong).

並且,整個模仿拆裝流程過程會被記錄為學習拆裝記錄204,並透過伺服器端20上傳至網路資料庫30,以供後續分析。Moreover, the entire imitation disassembly process will be recorded as a learning disassembly record 204 and uploaded to the network database 30 through the server 20 for subsequent analysis.

請參閱圖4,圖4為本發明一實施例的教導端模組、伺服器端模組及學習端模組的架構圖。Please refer to FIG. 4 . FIG. 4 is a structural diagram of a teaching terminal module, a server terminal module and a learning terminal module according to an embodiment of the present invention.

於一實施例中,教導端模組211可包含用以實現不同功能的課程創建模組400、教導端互動模組401、教導端錄製模組402、檢核設定模組403及教導端反饋模組404。In one embodiment, the teaching terminal module 211 may include a course creation module 400 for realizing different functions, a teaching terminal interaction module 401, a teaching terminal recording module 402, a check setting module 403 and a teaching terminal feedback module Group 404.

課程創建模組400被設定來創建課程,並設定課程資訊。The course creation module 400 is configured to create courses and set course information.

教導端互動模組401被設定來提供教師透過教導端虛擬實境裝置310與虛擬物件進行互動。The teaching-end interaction module 401 is configured to provide teachers to interact with virtual objects through the teaching-end virtual reality device 310 .

教導端錄製模組402被設定來錄製教師的拆裝流程以產生教導拆裝記錄201。The teaching end recording module 402 is set to record the teacher's disassembly process to generate the teaching disassembly record 201 .

檢核設定模組403被設定來於教導拆裝記錄201中設定檢核點,並產生檢核點的檢核資料202。The check setting module 403 is configured to set check points in the teaching disassembly record 201 and generate check data 202 of the check points.

教導端反饋模組404被設定來供教師提供反饋資訊(如所創建的虛擬物件、課程設定或操作意見等)給伺服器端20。The teaching end feedback module 404 is configured for the teacher to provide feedback information (such as created virtual objects, course settings or operating suggestions, etc.) to the server end 20 .

於一實施例中,伺服器端模組200可包含用以實現不同功能的帳號管理模組410、教學管理模組411及記錄管理模組412。In one embodiment, the server-side module 200 may include an account management module 410 , a teaching management module 411 and a record management module 412 for realizing different functions.

帳號管理模組410被設定來管理帳戶資料203,並對學習端21與教導端31的登入行為進行驗證。The account management module 410 is configured to manage the account information 203 and verify the login behavior of the learning terminal 21 and the teaching terminal 31 .

教學管理模組411被設定來管理教師的課程相關設定與學生的學習進度等。The teaching management module 411 is configured to manage the teacher's course-related settings and the learning progress of the students.

記錄管理模組412被設定來管理教導拆裝記錄201、檢核資料303及學習拆裝記錄204。The record management module 412 is configured to manage the teaching disassembly record 201 , the check data 303 and the learning disassembly record 204 .

於一實施例中,教導端模組211可包含用以實現不同功能的記錄回放模組420、學習端互動模組421、學習端錄製模組422、檢核執行模組423、學習端反饋模組424及同步學習模組425。In one embodiment, the teaching terminal module 211 may include a recording and playback module 420 for realizing different functions, a learning terminal interaction module 421, a learning terminal recording module 422, a verification execution module 423, and a learning terminal feedback module. group 424 and synchronous learning module 425 .

記錄回放模組420被設定來播放所下載的教導拆裝記錄201,亦可播放所錄製的學習拆裝記錄204。The record and playback module 420 is set to play the downloaded teaching and disassembly record 201 , and can also play the recorded learning and disassembly record 204 .

學習端互動模組421被設定來提供學生透過學習端虛擬實境裝置210與虛擬物件進行互動。前述互動可包含3D 標註、筆記、內容匯出、記錄學習內容、白板共享、資料共享等。The learning-end interaction module 421 is configured to provide students to interact with virtual objects through the learning-end virtual reality device 210 . The aforementioned interactions may include 3D annotation, notes, content export, recording learning content, whiteboard sharing, data sharing, etc.

學習端錄製模組422被設定來錄製學生的拆裝流程以產生學習拆裝記錄204。The learning end recording module 422 is set to record the disassembly process of the students to generate the learning disassembly record 204 .

檢核執行模組423被設定來於各檢核點將學生在虛擬實境中的動作、結果與虛擬數值與檢核資料進行比對,並提供操作回饋與建議。The check execution module 423 is set to compare the students' actions, results and virtual values in the virtual reality with the check data at each check point, and provide operation feedback and suggestions.

學習端反饋模組424被設定來供學生提供反饋資訊(如課程建議或操作意見等)給伺服器端20。The learning end feedback module 424 is configured for students to provide feedback information (such as course suggestions or operation opinions, etc.) to the server end 20 .

同步學習模組425被設定來實現多個學習端21之間或教導端31與學習端21之間的協同操作,以實現於虛擬環境中的線上多人互動。The synchronous learning module 425 is set to realize the collaborative operation between multiple learning terminals 21 or between the teaching terminal 31 and the learning terminal 21 to realize online multi-person interaction in the virtual environment.

值得一提的是,圖4所示的模組311、200、211之間、模組400-404之間、模組410-412之間、及模組420-425之間是彼此連接(可為電性連接或資訊連接),並可為硬體模組(如電子電路模組、積體電路模組、SoC等等)、軟體模組或軟硬體模組混搭,不加以限定。It is worth mentioning that the modules 311, 200, and 211 shown in FIG. 4, the modules 400-404, the modules 410-412, and the modules 420-425 are connected to each other (can be It is an electrical connection or an information connection), and it can be a hardware module (such as an electronic circuit module, an integrated circuit module, a SoC, etc.), a software module, or a mix of software and hardware modules, without limitation.

當前述模組為軟體模組(如韌體、作業系統或應用程式)時,對應的儲存單元(如伺服器端20的儲存器、學習端21的儲存單元214及教導端31的儲存單元314)可包含非暫態電腦可讀取記錄媒體,前述非暫態電腦可讀取記錄媒體儲存有電腦程式,電腦程式記錄有電腦可執行之程式碼,當處理器(如伺服器端20的處理器、學習端21的處理單元212及教導端31的處理單元312)執行前述程式碼後,可實現前述模組之控制功能。When the aforementioned modules are software modules (such as firmware, operating system or application program), the corresponding storage unit (such as the storage of the server terminal 20, the storage unit 214 of the learning terminal 21 and the storage unit 314 of the teaching terminal 31 ) may include a non-transitory computer-readable recording medium. The aforementioned non-transitory computer-readable recording medium stores a computer program, and the computer program records computer-executable codes. The controller, the processing unit 212 of the learning terminal 21 and the processing unit 312 of the teaching terminal 31) execute the aforementioned program codes to realize the control functions of the aforementioned modules.

請參閱圖5,圖5為本發明一實施例的拆裝檢核方法的流程圖。本發明各實施例的拆裝檢核方法可由任一實施例的虛擬實境系統來加以實現。Please refer to FIG. 5 . FIG. 5 is a flowchart of a disassembly and inspection method according to an embodiment of the present invention. The disassembly and inspection methods of each embodiment of the present invention can be implemented by the virtual reality system of any embodiment.

本實施例的拆裝檢核方法可包含步驟S10-S16。The disassembly and inspection method of this embodiment may include steps S10-S16.

於步驟S10中,學習端21透過伺服器端20取得教導拆裝記錄201及對應的檢核資料202。教導拆裝記錄201設定有一或多個檢核點,且檢核資料202包含教導拆裝記錄201中的多個虛擬物件於各檢核點的教導拆裝狀態。In step S10 , the learning terminal 21 obtains the teaching disassembly record 201 and the corresponding verification data 202 through the server terminal 20 . The teaching and disassembly record 201 is set with one or more checkpoints, and the check data 202 includes the teaching and disassembly status of multiple virtual objects in the teaching and disassembly record 201 at each checkpoint.

於步驟S11中,學生透過學習端虛擬實境裝置210開始對多個虛擬物件執行拆裝。In step S11 , the student starts to disassemble and assemble a plurality of virtual objects through the learning terminal virtual reality device 210 .

於一實施例中,學習端虛擬實境裝置210可播放教導拆裝記錄201,以供學生依據畫面進行拆裝流程。In one embodiment, the virtual reality device 210 at the learning end can play the teaching disassembly record 201 for students to perform the disassembly process according to the screen.

於步驟S12中,學習端21透過檢核執行模組423偵測即時的學習拆裝狀態。In step S12 , the learning terminal 21 detects the real-time learning disassembly status through the checking execution module 423 .

具體而言,當學生可透過學習端虛擬實境裝置210進行操作來對多個虛擬物件進行拆裝來改變多個虛擬物件的學習拆裝狀態時,學習端模組211可即時偵測前述變化來取得多個虛擬物件的最新的學習拆裝狀態。Specifically, when students can disassemble and disassemble multiple virtual objects through the virtual reality device 210 of the learning terminal to change the learning disassembly and assembly status of multiple virtual objects, the learning terminal module 211 can detect the aforementioned changes in real time To obtain the latest learning disassembly status of multiple virtual objects.

於執行步驟S12的同時,於步驟S13中,學習端21透過檢核執行模組423判斷是否目前播放進度是否到達教導拆裝記錄201的任一檢測點。While executing step S12, in step S13, the learning terminal 21 determines whether the current playback progress has reached any detection point of the teaching disassembly record 201 through the checking execution module 423.

若未偵測到檢測點,則學習端21執行步驟S16。If no detection point is detected, the learning terminal 21 executes step S16.

若偵測到檢測點,則學習端21執行步驟S14。於步驟S14中,學習端21透過檢核執行模組423取得檢核資料202於目前的檢測點的教導拆裝狀態,並比對此教導拆裝狀態與目前的學習拆裝狀態是否相符。If the detection point is detected, the learning terminal 21 executes step S14. In step S14 , the learning terminal 21 obtains the teaching disassembly status of the check data 202 at the current detection point through the check execution module 423 , and compares whether the teaching disassembly status is consistent with the current learning disassembly status.

若教導拆裝狀態與目前的學習拆裝狀態相符,則學習端21執行步驟S16。If the teaching disassembly state is consistent with the current learning disassembly state, the learning terminal 21 executes step S16.

若教導拆裝狀態與目前的學習拆裝狀態不符,則學習端21執行步驟S15。於步驟S15中,學習端21透過檢核執行模組423發出拆裝錯誤提示(如聲音提示、文字提示或影像提示等),以即時提示學生目前的拆裝流程有誤。If the teaching disassembly state does not match the current learning disassembly state, the learning terminal 21 executes step S15. In step S15 , the learning terminal 21 issues disassembly error prompts (such as voice prompts, text prompts, or video prompts, etc.) through the check execution module 423 to instantly remind students that the current disassembly process is wrong.

接著,執行步驟S16。於步驟S16中,學習端21判斷是否結束拆裝,如教導拆裝記錄201是否播放完畢或退出播放,學生是否關閉學習端虛擬實境裝置210等。Next, step S16 is executed. In step S16, the learning terminal 21 judges whether to end the disassembly, such as whether the teaching disassembly record 201 has been played or exited, whether the student has turned off the virtual reality device 210 of the learning terminal, and so on.

若學習端21判斷結束拆裝,則結束拆裝檢核方法。否則,學習端21再次執行步驟S12與步驟S13。If the learning terminal 21 judges that the assembly and disassembly is finished, then the assembly and disassembly inspection method ends. Otherwise, the learning terminal 21 performs step S12 and step S13 again.

本發明可即時確認學習端的拆裝狀態是否正確,而可大幅提升學生的學習效率與正確性。The present invention can immediately confirm whether the disassembly state of the learning terminal is correct, and can greatly improve the learning efficiency and accuracy of students.

請同時參閱圖5與圖6,圖6為本發明一實施例的拆裝檢核方法的部分流程圖。Please refer to FIG. 5 and FIG. 6 at the same time. FIG. 6 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

相較於圖5的拆裝檢核方法,本實施例的拆裝檢核方法於開始拆裝(步驟S12)前,包含步驟S20-S24。Compared with the disassembly and inspection method in FIG. 5 , the disassembly and inspection method of this embodiment includes steps S20-S24 before starting the disassembly (step S12).

於步驟S20中,學習端212透過學習端互動模組421定位虛擬手來決定虛擬手於虛擬實境空間中的位置。In step S20 , the learning terminal 212 determines the position of the virtual hand in the virtual reality space by positioning the virtual hand through the learning terminal interaction module 421 .

於一實施例中,學生可對學習端虛擬實境裝置210的控制器2101進行操作,來使學習端212基於學生(使用者)的操作(如於現實空間中移動控制器2101或操作控制器2101上的按鍵、旋鈕等輸入介面)來對應移動虛擬手於虛擬實境空間中的位置。In one embodiment, students can operate the controller 2101 of the learning terminal virtual reality device 210, so that the learning terminal 212 can operate based on the student's (user's) operation (such as moving the controller 2101 in the real space or operating the controller 2101) to correspond to the position of moving the virtual hand in the virtual reality space.

於步驟S21中,學習端212透過記錄回放模組420基於教導拆裝記錄201設定多個虛擬物件的物理屬性。In step S21 , the learning terminal 212 sets the physical attributes of a plurality of virtual objects based on the teaching disassembly record 201 through the record playback module 420 .

於步驟S22中,學習端212透過記錄回放模組420基於教導拆裝記錄201初始化渲染器組件,以完成於虛擬實境中渲染虛擬物件的準備工作。In step S22 , the learning terminal 212 initializes the renderer component based on the teaching disassembly record 201 through the recording and playback module 420 , so as to complete the preparation for rendering the virtual object in the virtual reality environment.

於步驟S23中,學習端212透過記錄回放模組420基於教導拆裝記錄201初始化碰撞器組件,以完成於虛擬實境中偵測物件碰撞的準備工作。In step S23 , the learning terminal 212 initializes the collider component based on the teaching disassembly record 201 through the record playback module 420 , so as to complete the preparation for detecting object collision in the virtual reality.

於步驟S24中,學習端212透過記錄回放模組420於學習端虛擬實境裝置210的顯示器2100播放教導拆裝記錄201,來重現教師的操作流程。In step S24 , the learning terminal 212 reproduces the teacher's operation process by playing the teaching disassembly record 201 on the display 2100 of the virtual reality device 210 of the learning terminal through the record playback module 420 .

藉此,本發明可自動重現教導拆裝記錄201,並自動建置用於學生的虛擬互動環境。In this way, the present invention can automatically reproduce the teaching disassembly record 201, and automatically build a virtual interactive environment for students.

請同時參閱圖5至圖7,圖7為本發明一實施例的拆裝檢核方法的部分流程圖。Please refer to FIG. 5 to FIG. 7 at the same time. FIG. 7 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

相較於圖5的拆裝檢核方法,本實施例的拆裝檢核方法的步驟S12可包含步驟S30-S33。Compared with the disassembly and inspection method in FIG. 5 , the step S12 of the disassembly and inspection method of this embodiment may include steps S30-S33.

於步驟S30中,學習端21透過學習端互動模組421建立邊界表。前述邊界表用來記錄各虛擬物件的邊界,透過偵測前述邊界是否發生交疊,可判斷各虛擬物件是否與其他虛擬物件發生接觸或碰撞。In step S30 , the learning terminal 21 creates a boundary table through the learning terminal interaction module 421 . The aforementioned boundary table is used to record the boundaries of each virtual object, and whether each virtual object contacts or collides with other virtual objects can be determined by detecting whether the aforementioned boundaries overlap.

於步驟S31中,學習端21透過學習端互動模組421對各虛擬物件分別設定碰撞偵測,藉以偵測虛擬物件之間是否發生碰撞或者虛擬手是否與虛擬物件發生碰撞(碰撞偵測結果)。In step S31, the learning terminal 21 sets collision detection for each virtual object through the learning terminal interaction module 421, so as to detect whether there is a collision between the virtual objects or whether the virtual hand collides with the virtual object (collision detection result) .

於一實施例中,虛擬物件可包含筆畫(如3D註記)、線段(如纜線)與常規物件(如各式組件)。In one embodiment, virtual objects may include strokes (such as 3D annotations), line segments (such as cables) and regular objects (such as various components).

本發明可透過步驟S310與S311來對不同類型的虛擬物件執行不同的碰撞偵測,以提升碰撞偵測的準確度與效能。The present invention can perform different collision detections for different types of virtual objects through steps S310 and S311, so as to improve the accuracy and efficiency of collision detection.

於步驟S310中,於虛擬物件為線段或筆畫時,學習端21透過學習端互動模組421透過線渲染器偵測線段或筆畫的碰撞,如基於線渲染器的渲染邊界決定線段或筆畫的邊界。In step S310, when the virtual object is a line segment or a stroke, the learning terminal 21 detects the collision of the line segment or stroke through the learning terminal interactive module 421 through the line renderer, such as determining the boundary of the line segment or stroke based on the rendering boundary of the line renderer .

於步驟S311中,於虛擬物件為常規物件時,學習端21透過學習端互動模組421透過網格渲染器計算常規物件的邊界,並基於邊界偵測常規物件的碰撞,如基於網格渲染器的渲染邊界決定常規物件的邊界。In step S311, when the virtual object is a normal object, the learning terminal 21 calculates the boundary of the normal object through the learning terminal interactive module 421 through the grid renderer, and detects the collision of the normal object based on the boundary, such as based on the grid renderer The rendering bounds of determine the bounds of regular objects.

於步驟S32中,學習端21透過學習端互動模組421步驟S31中偵測到的碰撞偵測結果抓取。In step S32, the learning terminal 21 captures the collision detection result detected in step S31 by the learning terminal interaction module 421.

於一實施例中,學習端21於虛擬手碰撞虛擬物件時,判定虛擬手抓取虛擬物件,並控制被抓取的虛擬物件隨著虛擬手移動。In one embodiment, when the virtual hand collides with the virtual object, the learning terminal 21 determines that the virtual hand grasps the virtual object, and controls the grasped virtual object to move along with the virtual hand.

於一實施例中,學習端21於虛擬手碰撞虛擬物件且抓取鍵被觸發時,判定虛擬手抓取虛擬物件,並控制被抓取的物件隨著虛擬手移動直到偵測到放下物件(如抓取鍵被釋放或被再次按下)。In one embodiment, when the virtual hand collides with the virtual object and the grab button is triggered, the learning terminal 21 determines that the virtual hand grabs the virtual object, and controls the grabbed object to move with the virtual hand until the object is detected ( if the grab key is released or pressed again).

於步驟S33中,學習端21透過學習端互動模組421基於步驟S31中偵測到的碰撞偵測結果執行組裝偵測。In step S33 , the learning terminal 21 performs assembly detection based on the collision detection result detected in step S31 through the learning terminal interaction module 421 .

於一實施例中,學習端21於被抓取的虛擬物件碰撞其他虛擬物件時,對發生碰撞的虛擬物件進行組裝,並控制被抓取的虛擬物件固定於組裝位置。In one embodiment, when the grasped virtual object collides with other virtual objects, the learning terminal 21 assembles the collided virtual object and controls the grasped virtual object to be fixed at the assembly position.

於一實施例中,學習端21於被抓取的虛擬物件與其他虛擬物件從碰撞狀態變為分離狀態時,對發生碰撞的虛擬物件進行拆解,並控制被抓取的虛擬物件隨著虛擬手移動。In one embodiment, the learning terminal 21 disassembles the collided virtual object when the captured virtual object and other virtual objects change from a collision state to a separated state, and controls the captured virtual object hand moves.

於一實施例中,前述的組裝與拆解的判定,需要於組裝鍵或拆解鍵被同時觸發才會生效。In one embodiment, the aforementioned determination of assembly and disassembly takes effect only when the assembly button or the disassembly button is triggered simultaneously.

藉此,本發明可供使用者於虛擬實境中對虛擬物件進行組裝與拆解。Therefore, the present invention allows users to assemble and disassemble virtual objects in a virtual reality environment.

請參閱圖13,圖13為本發明一實施例的虛擬物件的資料結構。Please refer to FIG. 13 . FIG. 13 is a data structure of a virtual object according to an embodiment of the present invention.

於一實施例中,虛擬物件(尤其是常規物件)是具有圖13所示的資料結構,其中+為內部組件,-為外部組件。In one embodiment, a virtual object (especially a regular object) has a data structure as shown in FIG. 13 , where + is an internal component, and - is an external component.

圖13的虛擬物件的主類別(game object)具有剛體(rigid body)組件與可抓持(grabbable)組件,即賦予虛擬物件具有碰撞效果的剛體與可抓持兩種屬性。The main category (game object) of the virtual object in FIG. 13 has rigid body (rigid body) components and graspable (grabbable) components, that is, rigid body and graspable two attributes that endow virtual objects with collision effects.

圖13的虛擬物件還具有網格(mesh)子物件與碰撞器(collider)子物件。網格子物件用於表示渲染邊界,碰撞器子物件用於表示碰撞邊界。The virtual object in FIG. 13 also has a mesh sub-object and a collider sub-object. The mesh sub-object is used to represent the rendering boundary, and the collider sub-object is used to represent the collision boundary.

請參閱圖14A與圖14B,圖14A為本發明一實施例的虛擬手的示意圖,圖14B為本發明一實施例的虛擬手抓取虛擬物件的示意圖。Please refer to FIG. 14A and FIG. 14B , FIG. 14A is a schematic diagram of a virtual hand according to an embodiment of the present invention, and FIG. 14B is a schematic diagram of a virtual hand grasping a virtual object according to an embodiment of the present invention.

為了讓使用者可以在虛擬實境中隨意拿取和操作虛擬物件,本發明可於虛擬實境中設定虛擬手的定位點50,透過判斷定位點50是否進入虛擬物件51的邊界(如包圍盒510)內來判斷虛擬手是否抓取虛擬物件51。In order to allow users to freely pick up and operate virtual objects in the virtual reality, the present invention can set the anchor point 50 of the virtual hand in the virtual reality, by judging whether the anchor point 50 enters the boundary of the virtual object 51 (such as a bounding box) 510) to determine whether the virtual hand grabs the virtual object 51.

請參閱圖8與圖15A至圖15D,圖8為本發明一實施例的拆裝檢核方法的部分流程圖,圖15A為本發明一實施例的計算物件包圍盒的第一示意圖,圖15B為本發明一實施例的計算物件包圍盒的第二示意圖,圖15C為本發明一實施例的計算物件包圍盒的第三示意圖,圖15D為本發明一實施例的計算物件包圍盒的第四示意圖。Please refer to FIG. 8 and FIG. 15A to FIG. 15D. FIG. 8 is a partial flow chart of a disassembly and inspection method according to an embodiment of the present invention. FIG. 15A is a first schematic diagram of a calculation object bounding box according to an embodiment of the present invention. FIG. 15B FIG. 15C is a third schematic diagram of a computing object bounding box according to an embodiment of the present invention. FIG. 15D is a fourth schematic diagram of a computing object bounding box according to an embodiment of the present invention. schematic diagram.

如圖15A所示,於目前的3D邊界運算方法中,當虛擬物件52旋轉時,網格邊界(包圍盒520)會自動算出最大值,而使得包圍盒520與虛擬物件52的實際邊界存在明顯落差,而導致抓取事件不精準。As shown in Figure 15A, in the current 3D boundary calculation method, when the virtual object 52 rotates, the grid boundary (bounding box 520) will automatically calculate the maximum value, so that the actual boundary between the bounding box 520 and the virtual object 52 has obvious drop, resulting in inaccurate capture events.

對此,本發明提出一種3D邊界運算方法,可於每次拿取或旋轉虛擬物件52時,持續運算欲抓取的虛擬物件52的最小包圍盒,來大幅提昇抓取事件的精準度。In this regard, the present invention proposes a 3D boundary calculation method, which can continuously calculate the minimum bounding box of the virtual object 52 to be grasped each time the virtual object 52 is picked or rotated, so as to greatly improve the accuracy of the grasping event.

前述3D邊界運算方法可包含步驟S40-S43。The aforementioned 3D boundary computing method may include steps S40-S43.

於步驟S40中,教導端31或學習端21取得虛擬物件52(例如為常規物件)的物件姿態。前述物件姿態包含虛擬物件52的旋轉角度,旋轉角度可以尤拉角表示,但不以此限定。In step S40 , the teaching end 31 or the learning end 21 acquires the object pose of the virtual object 52 (eg, a normal object). The aforesaid object posture includes the rotation angle of the virtual object 52, and the rotation angle can be represented by a Euler angle, but not limited thereto.

於圖15A的例子中,虛擬物件52的位置為BP (0, 0, 0)、旋轉角度為BR(0, 0, 45)、尺寸為BS (2, 2, 2)。In the example of FIG. 15A, the position of the virtual object 52 is BP (0, 0, 0), the rotation angle is BR (0, 0, 45), and the size is BS (2, 2, 2).

於步驟S41中,教導端31或學習端21計算虛擬物件52於無旋轉狀態的包圍盒521。In step S41 , the teaching end 31 or the learning end 21 calculates the bounding box 521 of the virtual object 52 in the non-rotation state.

於圖15B的例子中,虛擬物件52的無旋轉狀態的包圍盒521可透過unity 3D的Quaternion.identity函式獲得,但不以此限定。In the example of FIG. 15B , the non-rotated bounding box 521 of the virtual object 52 can be obtained through the Quaternion.identity function of unity 3D, but it is not limited thereto.

於步驟S42中,教導端31或學習端21基於物件姿態旋轉包圍盒521來獲得旋轉後包圍盒521。In step S42 , the teaching end 31 or the learning end 21 rotates the bounding box 521 based on the object pose to obtain the rotated bounding box 521 .

於圖15C的例子中,教導端31或學習端21可計算包圍盒521的頂點P0-P7的向量,並以此向量旋轉包圍盒521來獲得如圖15D所示的旋轉後包圍盒521。In the example of FIG. 15C , the teaching end 31 or the learning end 21 can calculate the vector of the vertices P0-P7 of the bounding box 521, and rotate the bounding box 521 with the vector to obtain the rotated bounding box 521 as shown in FIG. 15D.

於步驟S43中,教導端31或學習端21以旋轉後包圍盒521作為虛擬物件(如常規物件)的物件包圍盒。前述物件包圍盒是作為虛擬物件52的碰撞邊界,並用來偵測虛擬物件52的碰撞事件。如於其他虛擬物件進入虛擬物件52的碰撞邊界時判定虛擬物件52與其他虛擬物件發生碰撞。In step S43 , the teaching end 31 or the learning end 21 uses the rotated bounding box 521 as the object bounding box of the virtual object (such as a regular object). The aforementioned object bounding box serves as the collision boundary of the virtual object 52 and is used to detect the collision event of the virtual object 52 . For example, when other virtual objects enter the collision boundary of the virtual object 52, it is determined that the virtual object 52 collides with other virtual objects.

舉例來說,如圖15C所示,當虛擬手的定位點PV進入虛擬物件52的物件包圍盒521時,可判定虛擬手與虛擬物件52發生碰撞。For example, as shown in FIG. 15C , when the positioning point PV of the virtual hand enters the object bounding box 521 of the virtual object 52 , it can be determined that the virtual hand collides with the virtual object 52 .

請參閱圖5至圖9,圖9為本發明一實施例的拆裝檢核方法的部分流程圖。Please refer to FIG. 5 to FIG. 9 . FIG. 9 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

相較於圖5的拆裝檢核方法,本實施例的拆裝檢核方法可包含用來實現組裝與拆解功能的步驟SS50-S54。Compared with the disassembly and inspection method shown in FIG. 5 , the disassembly and inspection method of this embodiment may include steps SS50 - S54 for realizing assembly and disassembly functions.

於步驟S50中,教導端31或學習端21可透過教導端虛擬實境裝置310或學習端虛擬實境裝置210接受使用者的搬移操作,來移動虛擬手抓取的虛擬物件。In step S50 , the teaching terminal 31 or the learning terminal 21 can accept the user's moving operation through the teaching terminal virtual reality device 310 or the learning terminal virtual reality device 210 to move the virtual object grasped by the virtual hand.

接著,教導端31或學習端21可執行步驟S51與步驟S53。Next, the teaching terminal 31 or the learning terminal 21 can execute step S51 and step S53.

於步驟S51中,教導端31或學習端21偵測預設的組裝條件是否滿足。In step S51 , the teaching end 31 or the learning end 21 detects whether the preset assembly conditions are satisfied.

於一實施例中,組裝條件包含虛擬手抓取的虛擬物件碰撞其他虛擬物件。In one embodiment, the assembling condition includes that the virtual object grasped by the virtual hand collides with other virtual objects.

於一實施例中,組裝條件更包含控制器3101或控制器2101的組裝鍵被按下。In one embodiment, the assembly condition further includes that the assembly key of the controller 3101 or the controller 2101 is pressed.

若組裝條件不滿足,則教導端31或學習端21結束本次偵測。If the assembling condition is not satisfied, the teaching end 31 or the learning end 21 ends the detection.

若組裝條件滿足,則教導端31或學習端21執行步驟S52。於步驟S52中,教導端31或學習端21執行群組處理來將發生碰撞的多個虛擬物件組裝為群組物件(第一群組物件)。If the assembling condition is satisfied, the teaching end 31 or the learning end 21 executes step S52. In step S52 , the teaching end 31 or the learning end 21 executes group processing to assemble a plurality of colliding virtual objects into a group object (first group object).

於一實施例中,群組處理可包含步驟S520-S521。In one embodiment, the group processing may include steps S520-S521.

於步驟S520中,教導端31或學習端21產生可抓取的群組物件,並設定發生碰撞的多個虛擬物件為此群組物件的多個子物件。In step S520 , the teaching end 31 or the learning end 21 generates a graspable group object, and sets a plurality of virtual objects that collide with as a plurality of sub-objects of the group object.

於步驟S521中,教導端31或學習端21設定群組物件的多個子物件為不可抓取的。In step S521 , the teaching terminal 31 or the learning terminal 21 sets multiple sub-objects of the group object as ungraspable.

請參閱圖16A至圖16B,圖16A為本發明一實施例的群組處理的第一示意圖,圖16B為本發明一實施例的群組處理後的資料結構。Please refer to FIG. 16A to FIG. 16B , FIG. 16A is a first schematic diagram of group processing according to an embodiment of the present invention, and FIG. 16B is a data structure after group processing according to an embodiment of the present invention.

如圖16A、16B所示,若虛擬實境中有三個虛擬物件A、B、C,使用者可依序進行組裝。As shown in FIGS. 16A and 16B , if there are three virtual objects A, B, and C in the virtual reality environment, the user can assemble them sequentially.

當虛擬物件A接觸虛擬物件B時,兩者的碰撞器物件產生碰撞偵測時(On Collision Enter),即會創造出一個新的虛擬物件,即群組物件AB。When virtual object A touches virtual object B, when the collider objects of the two generate collision detection (On Collision Enter), a new virtual object will be created, that is, group object AB.

新的群組物件AB會添加Grabbable(可抓取)組件,將虛擬物件A與虛擬物件B變成群組物件AB的子物件,並將虛擬物件A與虛擬物件B的Grabbable組件設定為無效,以防止繼續偵測。The new group object AB will add a Grabbable (grabable) component, make the virtual object A and virtual object B the sub-objects of the group object AB, and set the Grabbable components of virtual object A and virtual object B to be invalid, so that Prevent further detection.

接著,當群組物件AB接觸虛擬物件C,同樣是如上進行設定來獲得群組物件ABC。Next, when the group object AB touches the virtual object C, the above settings are also performed to obtain the group object ABC.

藉此,群組物件的樹狀圖將由下往上長,並且當新的群組物件被創造出來時,只有最頂端的節點(如虛擬物件ABC)的Grabbable組件會啟用。In this way, the tree view of group objects will grow from bottom to top, and when a new group object is created, only the Grabbable component of the topmost node (such as virtual object ABC) will be activated.

請參閱圖17A與圖17B,圖17A為本發明一實施例的群組處理的第二示意圖,圖17B為本發明一實施例的群組處理的第三示意圖。Please refer to FIG. 17A and FIG. 17B , FIG. 17A is a second schematic diagram of group processing according to an embodiment of the present invention, and FIG. 17B is a third schematic diagram of group processing according to an embodiment of the present invention.

如圖17A所示,常規物件都是網格(Mesh)物件與碰撞物件(Collider)所組成,當物件接觸時,即兩個物件(vfd5a5ms43ansaa_001 與 vfd5a5ms43ansaa_002)的碰撞範圍(白色格子區域)接觸時,即進行群組(Group)處理。As shown in Figure 17A, regular objects are composed of a Mesh object and a Collider. When the objects touch, that is, when the collision range (white grid area) of two objects (vfd5a5ms43ansaa_001 and vfd5a5ms43ansaa_002) touches, That is, group processing is performed.

圖17B所示,於群組判斷成立後,新增新的群組物件(vfd5a5ms43ansaa_001&vfd5a5ms43ansaa_002),並將兩物件(vfd5a5ms43ansaa_001 與 vfd5a5ms43ansaa_002)放置新的虛擬物件的子階層,取消兩物件之Grabbable 組件。As shown in Figure 17B, after the group judgment is established, a new group object (vfd5a5ms43ansaa_001&vfd5a5ms43ansaa_002) is added, and the two objects (vfd5a5ms43ansaa_001 and vfd5a5ms43ansaa_002) are placed in the sub-level of the new virtual object, and the Grabbable components of the two objects are canceled.

並且,新的群組物件上的Grabbable 組件將整合所有子物件身上的碰撞範圍制定為新的碰撞範圍(白色格子區域),抓取範圍(灰色格子區域)亦是相同作法。In addition, the Grabbable component on the new group object will integrate the collision range of all child objects into a new collision range (white grid area), and the grabbing range (gray grid area) is the same.

復請參閱圖9,於步驟S53中,教導端31或學習端21偵測預設的拆解條件是否滿足。Referring again to FIG. 9 , in step S53 , the teaching terminal 31 or the learning terminal 21 detects whether the preset disassembly condition is satisfied.

於一實施例中,拆解條件包含虛擬手抓取的虛擬物件離開其他虛擬物件。In one embodiment, the dismantling condition includes that the virtual object grasped by the virtual hand is separated from other virtual objects.

於一實施例中,拆解條件更包含控制器3101或2101的拆解鍵被按下。In one embodiment, the dismantling condition further includes that the dismantling key of the controller 3101 or 2101 is pressed.

若拆解條件不滿足,則教導端31或學習端21結束本次偵測。If the dismantling condition is not met, then the teaching end 31 or the learning end 21 ends this detection.

若拆解條件滿足,則教導端31或學習端21執行步驟S54。於步驟S54中,教導端31或學習端21執行解群組處理來將發生分離的群組物件(第二群組物件)分離為多個虛擬物件。If the dismantling condition is satisfied, the teaching terminal 31 or the learning terminal 21 executes step S54. In step S54 , the teaching end 31 or the learning end 21 performs ungrouping processing to separate the separated group objects (second group objects) into a plurality of virtual objects.

於一實施例中,解群組處理可包含步驟S540-S541。In one embodiment, the degrouping process may include steps S540-S541.

於步驟S540中,教導端31或學習端21刪除群組物件的多個子物件之間的多個連結,並刪除群組物件。In step S540 , the teaching terminal 31 or the learning terminal 21 deletes multiple links between multiple sub-objects of the group object, and deletes the group object.

於步驟S541中,教導端31或學習端21設定多個子物件為可抓取的多個虛擬物件。In step S541 , the teaching terminal 31 or the learning terminal 21 sets a plurality of child objects as multiple virtual objects that can be grasped.

請參閱圖18A至圖19,圖18A為本發明一實施例的解群組處理的第一示意圖,圖18B為本發明一實施例的解群組處理的第二示意圖,圖18C為本發明一實施例的解群組處理的第三示意圖,圖19為本發明一實施例的解群組處理的第五示意圖。Please refer to FIG. 18A to FIG. 19 , FIG. 18A is a first schematic diagram of degrouping processing according to an embodiment of the present invention, FIG. 18B is a second schematic diagram of degrouping processing according to an embodiment of the present invention, and FIG. 18C is a schematic diagram of degrouping processing according to an embodiment of the present invention. The third schematic diagram of the ungrouping process of the embodiment, FIG. 19 is the fifth schematic diagram of the ungrouping process of an embodiment of the present invention.

如圖18A-18C與圖19所示,當解除群組事件發生於群組物件ABC時,所有非原始物件(原始物件為虛擬物件A、虛擬物件B及虛擬物件C,非原始物件為群組物件AB與群組物件ABC)之Grabbable 組件將會被刪除,而原始物件則會解除父物件階層,並進入可點選狀態。As shown in Figures 18A-18C and Figure 19, when the ungroup event occurs on the group object ABC, all non-original objects (the original objects are virtual objects A, virtual objects B, and virtual objects C, and the non-original objects are group The Grabbable components of object AB and group object ABC) will be deleted, and the original object will release the parent object hierarchy and enter the clickable state.

前述可點選狀態是跳脫Grabbable 抓取功能,讓使用者可點取欲解除之物件,再進行拖拉解除群組。The aforementioned clickable state escapes the Grabbable capture function, allowing users to click on the object to be removed, and then drag to remove the group.

舉例來說,若使用者欲分離虛擬物件 C,當拆解條件滿足時,虛擬物件C確認分離,而虛擬物件A與虛擬物件B因為距離沒改變而再次群組為群組物件AB。For example, if the user wants to separate the virtual object C, when the dismantling condition is satisfied, the virtual object C is confirmed to be separated, and the virtual object A and the virtual object B are grouped into the group object AB again because the distance has not changed.

請參閱圖20A-20C,圖20A為本發明一實施例的解群組處理後的資料結構,圖20B為本發明一實施例的解群組處理的第六示意圖,圖20C為本發明一實施例的解群組處理的第七示意圖。Please refer to FIGS. 20A-20C , FIG. 20A is a data structure after degrouping processing according to an embodiment of the present invention, FIG. 20B is a sixth schematic diagram of degrouping processing according to an embodiment of the present invention, and FIG. 20C is an implementation of the present invention The seventh schematic diagram of the ungrouping process of the example.

如圖20A所示,當兩物件(vfd5a5ms43ansaa_001 與 vfd5a5ms43ansaa_002)進行組裝判斷時,將創建一新群組物件(vfd5a5ms43ansaa_001&vfd5a5ms43ansaa_002),並將其兩者放置至新物件之子物件。As shown in FIG. 20A, when two objects (vfd5a5ms43ansaa_001 and vfd5a5ms43ansaa_002) are assembled and judged, a new group of objects (vfd5a5ms43ansaa_001&vfd5a5ms43ansaa_002) will be created, and both of them will be placed as child objects of the new object.

若使用者要解除群組物件(vfd5a5ms43ansaa_001&vfd5a5ms43ansaa_002),可對群組物件進行點擊,系統將會解除兩虛擬物件的父物件階層,並刪除父物件(群組物件)。If the user wants to cancel the group object (vfd5a5ms43ansaa_001&vfd5a5ms43ansaa_002), he can click on the group object, and the system will cancel the parent object hierarchy of the two virtual objects and delete the parent object (group object).

接著,如圖20B所示,使用者可以再針對要解除的虛擬物件進行選擇並移出。Next, as shown in FIG. 20B , the user can select and remove the virtual object to be released.

最後,如圖20C所示,兩虛擬物件(vfd5a5ms43ansaa_001 與 vfd5a5ms43ansaa_002)恢復為群組前狀態。Finally, as shown in FIG. 20C, the two virtual objects (vfd5a5ms43ansaa_001 and vfd5a5ms43ansaa_002) are restored to the state before grouping.

本發明透過上述群組處理與解群組處理,可有效於虛擬境中實現虛擬物件的組裝與拆解。Through the above grouping and ungrouping processing, the present invention can effectively realize the assembly and disassembly of virtual objects in a virtual environment.

請參閱圖5至圖10,圖10為本發明一實施例的拆裝檢核方法的部分流程圖。Please refer to FIG. 5 to FIG. 10 . FIG. 10 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

相較於圖5的拆裝檢核方法,本實施例的拆裝檢核方法的步驟S14-S15可包含步驟S60-S67。Compared with the disassembly and inspection method in FIG. 5 , the steps S14-S15 of the disassembly and inspection method of this embodiment may include steps S60-S67.

於步驟S60中,學習端21透過檢核執行模組423偵測學生對虛擬物件的動作是否不正確。In step S60 , the learning terminal 21 detects whether the student's action on the virtual object is incorrect through the checking execution module 423 .

於一實施例中,檢核資料202可記錄有檢核點的對應動作類型,如為組裝動作或是拆解動作。學習端21可透過檢核執行模組423判斷目前的動作是否與檢核資料202相符。In one embodiment, the check data 202 may record the corresponding action type of the check point, such as an assembly action or a disassembly action. The learning terminal 21 can judge whether the current action is consistent with the verification data 202 through the verification execution module 423 .

若偵測動作正確,則學習端21執行步驟S62。If the detection action is correct, the learning terminal 21 executes step S62.

若偵測動作不正確,則學習端21執行步驟S61。於步驟S61中,學習端21透過檢核執行模組423發出動作錯誤提示。If the detection action is incorrect, the learning terminal 21 executes step S61. In step S61 , the learning terminal 21 issues an operation error prompt through the check execution module 423 .

於步驟S62中,學習端21透過檢核執行模組423偵測學生目前完成的虛擬物件的組成是否正確。In step S62 , the learning terminal 21 detects whether the composition of the virtual object currently completed by the student is correct through the checking execution module 423 .

於一實施例中,檢核資料可記錄有檢核點的各群組物件的結構樹(如圖16所示的樹狀結構)。學習端21可透過檢核執行模組423判斷目前的群組物件的組成是否與檢核資料202相符。In one embodiment, the check data can record the structure tree of each group object of the check point (the tree structure shown in FIG. 16 ). The learning terminal 21 can judge whether the composition of the current group object is consistent with the verification data 202 through the verification execution module 423 .

若偵測組成正確,則學習端21執行步驟S64。If the detected composition is correct, the learning terminal 21 executes step S64.

若偵測組成不正確,則學習端21執行步驟S63。於步驟S63中,學習端21透過檢核執行模組423發出組成錯誤提示。If the detected composition is incorrect, the learning terminal 21 executes step S63. In step S63 , the learning terminal 21 issues a composition error prompt through the checking execution module 423 .

於步驟S64中,學習端21透過檢核執行模組423於偵測是否任一虛擬物件的目前位置不正確。In step S64 , the learning terminal 21 detects whether the current position of any virtual object is incorrect through the checking execution module 423 .

於一實施例中,檢核資料202可記錄有檢核點的各虛擬物件的位置。學習端21可透過檢核執行模組423判斷目前的虛擬物件的位置是否與檢核資料202相符。In one embodiment, the check data 202 can record the position of each virtual object of the check point. The learning terminal 21 can judge whether the current position of the virtual object is consistent with the verification data 202 through the verification execution module 423 .

於一實施例中,本發明考量每位學生的組裝習慣不同,有人習慣先在右手邊將多個虛擬物件組裝為群組物件,再將群組物件裝設於正確位置,而有人習慣先在左手邊進行組裝。為排除上述組裝習慣不同可能造成的位置錯誤的誤判,本發明的一實施例是採用虛擬物件之間的相對位置來進行偵測。In one embodiment, the present invention considers that each student has different assembling habits. Some people are used to assemble multiple virtual objects into group objects on the right hand side first, and then install the group objects in the correct position, while others are used to first Assembly is done on the left hand side. In order to eliminate the misjudgment of position errors that may be caused by the above-mentioned different assembly habits, an embodiment of the present invention uses the relative positions of virtual objects for detection.

請參閱圖21-23,圖21為本發明一實施例的計算相對位置的示意圖,圖22為本發明一實施例的相對位置的資料結構,圖23為本發明一實施例的記錄群組事件、解群組事件與工具事件的示意圖。Please refer to FIGS. 21-23. FIG. 21 is a schematic diagram of calculating relative positions according to an embodiment of the present invention. FIG. 22 is a data structure of relative positions according to an embodiment of the present invention. FIG. 23 is a recording group event according to an embodiment of the present invention. , Schematic diagram of solving group events and tool events.

如圖21所示,為了取得虛擬物件A(object A)與虛擬物件B(point B)之間的相對位置,本發明可計算虛擬物件B之於虛擬物件A的相對位置。As shown in FIG. 21 , in order to obtain the relative position between the virtual object A (object A) and the virtual object B (point B), the present invention can calculate the relative position of the virtual object B to the virtual object A.

此外,由於虛擬物件A的位置、旋轉角度、物件大小均可能改變相對位置終值,故須一併考慮虛擬物件A的位置、旋轉角度、物件大小。In addition, since the position, rotation angle, and object size of the virtual object A may change the final value of the relative position, the position, rotation angle, and object size of the virtual object A must be considered together.

舉例來說,虛擬物件B的位置BP為(0,3,1),虛擬物件A的位置AP為(2,4,0),旋轉角度AR為(0,0,0),物件大小AS為(1,1,1)。前述相對位置可例如為相對位置座標(0,3,1)-(2,4,0)。For example, the position BP of virtual object B is (0,3,1), the position AP of virtual object A is (2,4,0), the rotation angle AR is (0,0,0), and the object size AS is (1,1,1). The aforementioned relative position can be, for example, relative position coordinates (0, 3, 1)-(2, 4, 0).

如圖22所示,本發明還提出一種組裝格式,可對兩虛擬物件相對位置座標進行記錄與儲存。As shown in FIG. 22 , the present invention also proposes an assembly format, which can record and store the relative position coordinates of two virtual objects.

如圖23所示,當群組事件發生時,如虛擬物件 A與虛擬物件B組裝成群組物件AB,本發明可先以虛擬物件A為主,計算虛擬物件B之於虛擬物件A的相對位置,再以虛擬物件B為主,判斷虛擬物件A之於虛擬物件B的相對位置座標,以此類推。As shown in Figure 23, when a group event occurs, such as virtual object A and virtual object B are assembled into a group object AB, the present invention can first focus on virtual object A, and calculate the relative relationship between virtual object B and virtual object A position, and then based on virtual object B, determine the relative position coordinates of virtual object A to virtual object B, and so on.

於另一例子中,對於群組物件ABC,本發明可先以虛擬物件A為主,計算虛擬物件B與虛擬物件C之於虛擬物件A的相對位置,以虛擬物件B為主,判斷虛擬物件A與虛擬物件C之於虛擬物件B的相對位置座標,最後以虛擬物件C為主,判斷虛擬物件A與虛擬物件B之於虛擬物件C的相對位置。In another example, for group objects ABC, the present invention can first focus on virtual object A, calculate the relative position of virtual object B and virtual object C to virtual object A, and use virtual object B as the main one to determine the virtual object The relative position coordinates of virtual object A and virtual object C to virtual object B, and finally virtual object C is the main point to determine the relative position of virtual object A and virtual object B to virtual object C.

當解群組事件發生時,如群組物件 ABC解群組為群組物件AB與虛擬物件C,本發明可刪除所有相對位置來使虛擬物件A、虛擬物件B與虛擬物件C為獨立的虛擬物件A與虛擬物件B,並對虛擬物件A與虛擬物件B執行群組事件來建立虛擬物件A與虛擬物件B的相對位置。When the ungroup event occurs, such as group object ABC ungrouped into group object AB and virtual object C, the present invention can delete all relative positions to make virtual object A, virtual object B, and virtual object C independent virtual objects object A and virtual object B, and execute a group event on virtual object A and virtual object B to establish the relative position of virtual object A and virtual object B.

當工具事件發生時,僅需記錄虛擬工具D的位置即可。When a tool event occurs, it is only necessary to record the position of the virtual tool D.

若偵測位置正確,則學習端21執行步驟S66。If the detected position is correct, the learning terminal 21 executes step S66.

若偵測位置不正確,則學習端21執行步驟S65。於步驟S65中,學習端21透過檢核執行模組423發出位置錯誤提示。If the detected position is incorrect, the learning terminal 21 executes step S65. In step S65 , the learning terminal 21 issues a position error prompt through the checking execution module 423 .

於步驟S66中,學習端21透過檢核執行模組423偵測是否任一虛擬物件的組裝順序不正確。In step S66 , the learning terminal 21 detects whether the assembly sequence of any virtual object is incorrect through the checking execution module 423 .

於一實施例中,檢核資料可記錄有檢核點的各虛擬物件的組裝順序。學習端21可透過檢核執行模組423判斷目前的虛擬物件的組裝順序是否與檢核資料相符。In one embodiment, the check data can record the assembly sequence of each virtual object with check points. The learning terminal 21 can judge whether the assembly sequence of the current virtual object is consistent with the verification data through the verification execution module 423 .

若偵測順序正確,則學習端21結束偵測。If the detection sequence is correct, the learning terminal 21 ends the detection.

若偵測順序不正確,則學習端21執行步驟S67。於步驟S67中,學習端21透過檢核執行模組423發出順序錯誤提示。If the detection sequence is incorrect, the learning terminal 21 executes step S67. In step S67 , the learning terminal 21 issues a sequence error prompt through the check execution module 423 .

值得一提的是,本實施例提出的步驟S60-S61的動作檢核、步驟S62-S63的組成檢核、步驟S64-S65的位置檢核、以及步驟S66-S67的順序檢核,四種檢核之間並沒有絕對順序,本發明所屬技術領域中具有通常知識者可依需求任意變更檢核順序或檢核內容(如刪除組成檢核)。It is worth mentioning that there are four types of action checks in steps S60-S61, composition checks in steps S62-S63, position checks in steps S64-S65, and sequence checks in steps S66-S67 proposed in this embodiment. There is no absolute order between checks, and those skilled in the technical field of the present invention can change the check order or check content arbitrarily according to requirements (such as deleting component checks).

請參閱圖5至圖11,圖11為本發明一實施例的拆裝檢核方法的部分流程圖。Please refer to FIG. 5 to FIG. 11 . FIG. 11 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

相較於圖5的拆裝檢核方法,本實施例的拆裝檢核方法更包含用來於教導端31產生教導拆裝記錄201的步驟S70-S74。Compared with the disassembly and inspection method in FIG. 5 , the disassembly and inspection method of this embodiment further includes steps S70 - S74 for generating a teaching disassembly record 201 on the teaching terminal 31 .

於步驟S70中,教導端31執行初始化處理。In step S70 , the teaching terminal 31 executes an initialization process.

於一實施例中,初始化處理可例如為與圖6之步驟S20-S23相同或相似的處理。In one embodiment, the initialization processing may be, for example, the same or similar processing as steps S20 - S23 in FIG. 6 .

於步驟S71中,教導端31透過教導端虛擬實境裝置310接受教師操作,並基於操作創建一或多個虛擬物件與線段。In step S71 , the teaching terminal 31 accepts the teacher's operation through the virtual reality device 310 of the teaching terminal, and creates one or more virtual objects and line segments based on the operation.

於一實施例中,教師可輸入創建物件操作,來創建一或多個虛擬物件。In one embodiment, the teacher can input an object creation operation to create one or more virtual objects.

於一實施例中,教師可輸入線段創建操作,來創建連結多個虛擬物件的線段。In one embodiment, the teacher can input a line segment creation operation to create a line segment connecting multiple virtual objects.

舉例來說,當多個虛擬物件為虛擬電子設備時,教師可多個虛擬物件之間創建線段,來模擬連接多台虛擬電子設備。For example, when the multiple virtual objects are virtual electronic devices, the teacher can create line segments between the multiple virtual objects to simulate connecting multiple virtual electronic devices.

於步驟S72中,教導端31透過教導端虛擬實境裝置310接受教師操作,並基於教導拆裝操作來改變多個虛擬物件的教導拆裝狀態。In step S72 , the teaching terminal 31 accepts the teacher's operation through the virtual reality device 310 of the teaching terminal, and changes the teaching detachment status of a plurality of virtual objects based on the teaching detachment operation.

具體而言,於創建虛擬物件與線段後,教師可操作教導端虛擬實境裝置310來演示拆裝流程。Specifically, after creating the virtual objects and line segments, the teacher can operate the teaching terminal virtual reality device 310 to demonstrate the assembly and disassembly process.

並且,於拆裝流程的演示過程中,多個虛擬物件的教導拆裝狀態會不斷改變,教導端31則可持續記錄教導拆裝狀態的變化。Moreover, during the demonstration of the disassembly process, the teaching and disassembly states of multiple virtual objects will change continuously, and the teaching terminal 31 can continuously record the changes of the teaching and disassembly states.

於步驟S73中,教導端31設定檢核點並記錄各檢核點的教導拆裝狀態。In step S73 , the teaching terminal 31 sets checkpoints and records the teaching and dismounting status of each checkpoint.

於步驟S74中,於拆裝流程的演示完成後,教導端31產生教導拆裝記錄,並可進一步發佈至伺服器端20。In step S74 , after the demonstration of the disassembly process is completed, the teaching end 31 generates a teaching disassembly record, which can be further released to the server end 20 .

藉此,本發明可供教師快速產生教導拆裝記錄。In this way, the present invention allows teachers to quickly generate teaching disassembly records.

請參閱圖5至圖12,圖12為本發明一實施例的拆裝檢核方法的部分流程圖。Please refer to FIG. 5 to FIG. 12 . FIG. 12 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

相較於圖11的拆裝檢核方法,本實施例的拆裝檢核方法的步驟S71更包含用來產生虛擬的線段的步驟S80-S82。Compared with the disassembly and inspection method in FIG. 11 , step S71 of the disassembly and inspection method of this embodiment further includes steps S80 - S82 for generating virtual line segments.

於步驟S80中,教師可輸入線段創建操作,教導端31基於線段創建操作的頭節點數量、身節點數量及尾節點數量創建具有相符節點的線段。In step S80 , the teacher may input a line segment creation operation, and the teaching end 31 creates a line segment with matching nodes based on the head node number, body node number, and tail node number of the line segment creation operation.

於一實施例中,前述線段創建操作包括設定頭節點數量、身節點數量及尾節點數量。In one embodiment, the aforementioned line segment creation operation includes setting the number of head nodes, the number of body nodes and the number of tail nodes.

於一實施例中,上述線段頭節點與尾節點是用來連接虛擬物件,並用來滿足佈線需求。In one embodiment, the head node and the tail node of the above-mentioned line segment are used to connect virtual objects, and are used to meet wiring requirements.

請參閱圖24,圖24為本發明一實施例的多個線段類型的示意圖。Please refer to FIG. 24 . FIG. 24 is a schematic diagram of multiple line segment types according to an embodiment of the present invention.

於本實施例中,線段可以為一對一(頭節點數量為1,尾節點數量為1)、一對多(頭節點數量為1,尾節點數量為2以上)、多對一(頭節點數量為2以上,尾節點數量為1)、或多對多(頭節點數量與尾節點數量接為2以上)。In this embodiment, the line segments can be one-to-one (the number of head nodes is 1, and the number of tail nodes is 1), one-to-many (the number of head nodes is 1, and the number of tail nodes is more than 2), many-to-one (head nodes The number is more than 2, and the number of tail nodes is 1), or many-to-many (the number of head nodes and the number of tail nodes are connected to be more than 2).

請參閱圖25,圖25為本發明一實施例的線段的資料結構。Please refer to FIG. 25 . FIG. 25 is a data structure of a line segment according to an embodiment of the present invention.

於本實施例中,原始線段包含兩個端點(Node)與一條線(Wire)。In this embodiment, the original line segment includes two endpoints (Node) and a line (Wire).

為了使線段的端點變為可抓取的,本實施例是將線段組合以Grabbable組件取代原始線段端點(Node),以達到可佈線功能。In order to make the endpoints of the line segments graspable, in this embodiment, the Grabbable component is used to replace the original line segment endpoints (Nodes) in the combination of line segments, so as to achieve the routing function.

復請參閱圖12,於步驟S81中,教導端31設定線段的線束關係來轉換多個身節點為線束。Referring again to FIG. 12 , in step S81 , the teaching end 31 sets the harness relationship of the line segment to convert multiple body nodes into a harness.

請參閱圖26,圖26為本發明一實施例的多對多線段的示意圖。Please refer to FIG. 26 . FIG. 26 is a schematic diagram of a many-to-many line segment according to an embodiment of the present invention.

由於所有線段都不會有環形狀態,對此,本實施例可供使用者直接輸入(頭節點數量, 身節點數量, 尾節點數量) = (2, 1, 2),來快速產生對應線段。Since all line segments will not have a ring state, this embodiment allows the user to directly input (number of head nodes, number of body nodes, number of tail nodes) = (2, 1, 2) to quickly generate corresponding line segments.

請參閱圖27,圖27為本發明一實施例的線束的資料結構。Please refer to FIG. 27 . FIG. 27 is a data structure of a wire harness according to an embodiment of the present invention.

本實施例考量實際配線中可能會發生線束(Bundle)的情形,提出一組線束類別,以於線束階層下創造線段。This embodiment considers the situation that a bundle may occur in actual wiring, and proposes a set of bundle categories to create line segments under the bundle level.

請參閱圖26-28,圖28為本發明一實施例的產生的多對多線段的架構圖。Please refer to FIGS. 26-28 . FIG. 28 is a structure diagram of a generated many-to-many line segment according to an embodiment of the present invention.

當使用者輸入(頭節點數量, 身節點數量, 尾節點數量) = (2, 1, 2)時,教導端31可將每一個線束都設定為兩線段。When the user inputs (the number of head nodes, the number of body nodes, the number of tail nodes) = (2, 1, 2), the teaching end 31 can set each wire bundle as two line segments.

復請參閱圖12,於步驟S82中,教導端31設定線段的各節點座標。Referring again to FIG. 12 , in step S82 , the teaching end 31 sets the coordinates of each node of the line segment.

請參閱圖28-30,圖29為本發明一實施例的產生的多對多線段的資料結構,圖30為本發明一實施例的產生多對多線段的示意圖。Please refer to FIGS. 28-30 . FIG. 29 is a data structure of a many-to-many line segment generated according to an embodiment of the present invention, and FIG. 30 is a schematic diagram of a many-to-many line segment generated according to an embodiment of the present invention.

如圖30所示,初創建的線段,其各節點如同一般虛擬物件,而可供虛擬抓取。As shown in FIG. 30 , each node of the initially created line segment is like a general virtual object, and can be virtual grabbed.

如圖29所示為圖28的資料結構,初創建的各線段都會跟隨一節點座標,以達到佈線之效果。Figure 29 shows the data structure in Figure 28. Each line segment initially created will follow a node coordinate to achieve the effect of wiring.

請參閱圖31-33,圖31為本發明一實施例的錄製的多對多線段的架構圖,圖32為本發明一實施例的錄製的多對多線段的資料結構,圖33為本發明一實施例的錄製的多對多線段的示意圖。Please refer to Figures 31-33, Figure 31 is a structure diagram of a recorded many-to-many line segment according to an embodiment of the present invention, Figure 32 is a data structure of a recorded many-to-many line segment according to an embodiment of the present invention, and Figure 33 is a structure diagram of the recorded many-to-many line segment according to an embodiment of the present invention. A schematic diagram of a recorded many-to-many line segment of an embodiment.

如圖所示,當進行錄製時,線段模組所創之物件可將其中可抓取的節點物件進行拆解,並創建替補之空物件來記錄座標,以確保回放時不會發生錯誤。As shown in the figure, when recording, the objects created by the line segment module can disassemble the graspable node objects, and create a substitute empty object to record the coordinates, so as to ensure that there will be no errors during playback.

請參閱圖34-36,圖34為本發明一實施例的回放的多對多線段的架構圖,圖35為本發明一實施例的回放的多對多線段的資料結構,圖36為本發明一實施例的回放的多對多線段的示意圖。Please refer to FIGS. 34-36. FIG. 34 is a structure diagram of a many-to-many line segment played back in an embodiment of the present invention. FIG. 35 is a data structure of a many-to-many line segment played back in an embodiment of the present invention. FIG. A schematic diagram of a many-to-many line segment for playback according to an embodiment.

如圖36所示,當進行回放時,其結構與圖33完全一致。As shown in Figure 36, when playing back, its structure is exactly the same as that of Figure 33.

並且,比對圖34-35與圖31-32,線段模組的連接關係與位置不會改變,即不會發生錯誤。Moreover, comparing Figures 34-35 with Figures 31-32, the connection relationship and position of the line module will not change, that is, no error will occur.

本發明透過制定線段模組於錄製與回放時的嚴格物件結構,可確保線段模組錄製回放之功能正確。The present invention can ensure correct recording and playback functions of the line segment module by formulating the strict object structure of the line segment module during recording and playback.

以上所述僅為本發明之較佳具體實例,非因此即侷限本發明之申請專利範圍,故舉凡運用本發明內容所為之等效變化,均同理皆包含於本發明之範圍內,合予陳明。The above descriptions are only preferred specific examples of the present invention, and are not intended to limit the patent scope of the present invention. Therefore, all equivalent changes made by using the content of the present invention are all included in the scope of the present invention in the same way. Chen Ming.

100:教師 111:教導端虛擬實境裝置 112:虛擬物件 120:學生 121:學習端虛擬實境裝置 130:學生 131:學習端虛擬實境裝置 132:虛擬物件 2:虛擬實境系統 20:伺服器端 200:伺服器端模組 201:教導拆裝記錄 202:檢核資料 203:帳戶資料 204:學習拆裝記錄 205:課程模板 21:學習端 210:學習端虛擬實境裝置 2100:顯示器 2101:控制器 211:學習端模組 212:處理單元 213:儲存單元 214:通訊單元 215:人機介面 3:虛擬實境系統 30:網路資料庫 31:教導端 310:教導端虛擬實境裝置 3100:顯示器 3101:控制器 311:教導端模組 312:處理單元 313:通訊單元 314:儲存單元 315:人機介面 400:課程創建模組 401:教導端互動模組 402:教導端錄製模組 403:檢核設定模組 404:教導端反饋模組 410:帳號管理模組 411:教學管理模組 412:記錄管理模組 420:記錄回放模組 421:學習端互動模組 422:學習端錄製模組 423:檢核執行模組 424:學習端反饋模組 425:同步學習模組 50:定位點 51:虛擬物件 510:包圍盒 52:虛擬物件 520:包圍盒 521:包圍盒 P0-P7:頂點 PV:定位點 S10-S16:拆裝檢核步驟 S20-S24:初始化與播放步驟 S30-S33:虛擬拆裝步驟 S310-311:碰撞偵測步驟 S40-S43:計算邊界步驟 S50-S54:虛擬拆裝步驟 S520-S521:組裝步驟 S540-S541:拆解步驟 S60-S67:檢核步驟 S70-S74:教導步驟 S80-S82:創建線段步驟 100: Teacher 111: Teaching end virtual reality device 112: Virtual objects 120: Student 121: Learning terminal virtual reality device 130: Student 131: Learning terminal virtual reality device 132: Virtual objects 2: Virtual reality system 20: Server side 200: Server side modules 201: Teach disassembly record 202: Check data 203: Account Information 204: Learning Disassembly Records 205: Course Templates 21: Learning end 210: Learning terminal virtual reality device 2100: display 2101: Controller 211: Learning terminal module 212: processing unit 213: storage unit 214: Communication unit 215: Man-machine interface 3: Virtual reality system 30: Network Database 31: teaching end 310: Teaching end virtual reality device 3100: display 3101: Controller 311: teaching end module 312: processing unit 313: Communication unit 314: storage unit 315: Human-machine interface 400: Course Creation Module 401: Teaching terminal interactive module 402: teaching end recording module 403: Check the setting module 404: Teaching end feedback module 410: Account Management Module 411: Teaching Management Module 412: Record Management Module 420: Record playback module 421: Learning Terminal Interactive Module 422: Learning terminal recording module 423: Check execution module 424: Learning End Feedback Module 425: Synchronous Learning Module 50: anchor point 51: Virtual objects 510: Bounding box 52: Virtual objects 520: Bounding box 521: Bounding box P0-P7: vertices PV: anchor point S10-S16: Disassembly and inspection steps S20-S24: initialization and playback steps S30-S33: virtual disassembly steps S310-311: Collision detection steps S40-S43: Calculating Boundary Steps S50-S54: virtual disassembly steps S520-S521: Assembly steps S540-S541: Disassembly steps S60-S67: Checking steps S70-S74: Teaching steps S80-S82: Create line segment steps

圖1A為本發明的教導端的操作示意圖。FIG. 1A is a schematic diagram of the operation of the teaching end of the present invention.

圖1B為本發明的學習端的操作示意圖。FIG. 1B is a schematic diagram of the operation of the learning terminal of the present invention.

圖2為本發明一實施例的虛擬實境系統的架構圖。FIG. 2 is a structural diagram of a virtual reality system according to an embodiment of the present invention.

圖3為本發明一實施例的虛擬實境系統的架構圖。FIG. 3 is a structural diagram of a virtual reality system according to an embodiment of the present invention.

圖4為本發明一實施例的教導端模組、伺服器端模組及學習端模組的架構圖。FIG. 4 is a structural diagram of a teaching terminal module, a server terminal module and a learning terminal module according to an embodiment of the present invention.

圖5為本發明一實施例的拆裝檢核方法的流程圖。FIG. 5 is a flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖6為本發明一實施例的拆裝檢核方法的部分流程圖。FIG. 6 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖7為本發明一實施例的拆裝檢核方法的部分流程圖。FIG. 7 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖8為本發明一實施例的拆裝檢核方法的部分流程圖。FIG. 8 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖9為本發明一實施例的拆裝檢核方法的部分流程圖。FIG. 9 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖10為本發明一實施例的拆裝檢核方法的部分流程圖。FIG. 10 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖11為本發明一實施例的拆裝檢核方法的部分流程圖。Fig. 11 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖12為本發明一實施例的拆裝檢核方法的部分流程圖。Fig. 12 is a partial flowchart of a disassembly and inspection method according to an embodiment of the present invention.

圖13為本發明一實施例的虛擬物件的資料結構。FIG. 13 is a data structure of a virtual object according to an embodiment of the present invention.

圖14A為本發明一實施例的虛擬手的示意圖。FIG. 14A is a schematic diagram of a virtual hand according to an embodiment of the present invention.

圖14B為本發明一實施例的虛擬手抓取虛擬物件的示意圖。FIG. 14B is a schematic diagram of a virtual hand grabbing a virtual object according to an embodiment of the present invention.

圖15A為本發明一實施例的計算物件包圍盒的第一示意圖。FIG. 15A is a first schematic diagram of computing object bounding boxes according to an embodiment of the present invention.

圖15B為本發明一實施例的計算物件包圍盒的第二示意圖。FIG. 15B is a second schematic diagram of computing object bounding boxes according to an embodiment of the present invention.

圖15C為本發明一實施例的計算物件包圍盒的第三示意圖。FIG. 15C is a third schematic diagram of computing object bounding boxes according to an embodiment of the present invention.

圖15D為本發明一實施例的計算物件包圍盒的第四示意圖。FIG. 15D is a fourth schematic diagram of computing object bounding boxes according to an embodiment of the present invention.

圖16A為本發明一實施例的群組處理的第一示意圖。FIG. 16A is a first schematic diagram of group processing according to an embodiment of the present invention.

圖16B為本發明一實施例的群組處理後的資料結構。FIG. 16B is a data structure after group processing according to an embodiment of the present invention.

圖17A為本發明一實施例的群組處理的第二示意圖。FIG. 17A is a second schematic diagram of group processing according to an embodiment of the present invention.

圖17B為本發明一實施例的群組處理的第三示意圖。FIG. 17B is a third schematic diagram of group processing according to an embodiment of the present invention.

圖18A為本發明一實施例的解群組處理的第一示意圖。FIG. 18A is a first schematic diagram of a degrouping process according to an embodiment of the present invention.

圖18B為本發明一實施例的解群組處理的第二示意圖。FIG. 18B is a second schematic diagram of the degrouping process according to an embodiment of the present invention.

圖18C為本發明一實施例的解群組處理的第三示意圖。FIG. 18C is a third schematic diagram of the degrouping process according to an embodiment of the present invention.

圖19為本發明一實施例的解群組處理的第五示意圖。FIG. 19 is a fifth schematic diagram of degrouping processing according to an embodiment of the present invention.

圖20A為本發明一實施例的解群組處理後的資料結構。FIG. 20A is a data structure after ungrouping processing according to an embodiment of the present invention.

圖20B為本發明一實施例的解群組處理的第六示意圖。FIG. 20B is a sixth schematic diagram of the degrouping process according to an embodiment of the present invention.

圖20C為本發明一實施例的解群組處理的第七示意圖。FIG. 20C is a seventh schematic diagram of the degrouping process according to an embodiment of the present invention.

圖21為本發明一實施例的計算相對位置的示意圖。FIG. 21 is a schematic diagram of calculating relative positions according to an embodiment of the present invention.

圖22為本發明一實施例的相對位置的資料結構。FIG. 22 is a data structure of relative positions according to an embodiment of the present invention.

圖23為本發明一實施例的記錄群組事件、解群組事件與工具事件的示意圖。FIG. 23 is a schematic diagram of recording group events, ungroup events and tool events according to an embodiment of the present invention.

圖24為本發明一實施例的多個線段類型的示意圖。Fig. 24 is a schematic diagram of multiple line segment types according to an embodiment of the present invention.

圖25為本發明一實施例的線段的資料結構。Fig. 25 is a data structure of a line segment according to an embodiment of the present invention.

圖26為本發明一實施例的多對多線段的示意圖。Fig. 26 is a schematic diagram of a many-to-many line segment according to an embodiment of the present invention.

圖27為本發明一實施例的線束的資料結構。Fig. 27 is a data structure of a wire harness according to an embodiment of the present invention.

圖28為本發明一實施例的產生的多對多線段的架構圖。FIG. 28 is a structural diagram of a generated many-to-many line segment according to an embodiment of the present invention.

圖29為本發明一實施例的產生的多對多線段的資料結構。Fig. 29 is a data structure of many-to-many line segments generated according to an embodiment of the present invention.

圖30為本發明一實施例的產生多對多線段的示意圖。FIG. 30 is a schematic diagram of generating many-to-many line segments according to an embodiment of the present invention.

圖31為本發明一實施例的錄製的多對多線段的架構圖。Fig. 31 is a structure diagram of a recorded many-to-many line segment according to an embodiment of the present invention.

圖32為本發明一實施例的錄製的多對多線段的資料結構。Fig. 32 is a data structure of recorded many-to-many line segments according to an embodiment of the present invention.

圖33為本發明一實施例的錄製的多對多線段的示意圖。Fig. 33 is a schematic diagram of recorded many-to-many line segments according to an embodiment of the present invention.

圖34為本發明一實施例的回放的多對多線段的架構圖。FIG. 34 is a structural diagram of a many-to-many line segment playback according to an embodiment of the present invention.

圖35為本發明一實施例的回放的多對多線段的資料結構。Fig. 35 is a data structure of many-to-many line segments played back according to an embodiment of the present invention.

圖36為本發明一實施例的回放的多對多線段的示意圖。Fig. 36 is a schematic diagram of a many-to-many line segment played back according to an embodiment of the present invention.

S10-S16:拆裝檢核步驟 S10-S16: Disassembly and inspection steps

Claims (20)

一種具有拆裝檢核功能的虛擬實境系統,包括: 一伺服器端,用來提供一教導拆裝記錄及一檢核資料,其中該檢核資料包括多個虛擬物件於各檢核點的一教導拆裝狀態;及 一學習端,包括一學習端模組及一學習端虛擬實境裝置,該學習端虛擬實境裝置用來播放該教導拆裝記錄並接受操作,該學習端模組用來基於操作對該多個虛擬物件進行拆裝來改變該多個虛擬物件的一學習拆裝狀態,並於任一該檢測點的該教導拆裝狀態與該學習拆裝狀態不符時,發出一拆裝錯誤提示。 A virtual reality system with a disassembly and inspection function, comprising: A server end is used to provide a teaching disassembly record and a check data, wherein the check data includes a teaching disassembly status of a plurality of virtual objects at each check point; and A learning terminal includes a learning terminal module and a learning terminal virtual reality device. The learning terminal virtual reality device is used to play the teaching disassembly record and accept operations. A virtual object is disassembled to change a learning disassembly state of the plurality of virtual objects, and when the teaching disassembly state of any of the detection points is inconsistent with the learning disassembly state, a disassembly error prompt is issued. 如請求項1所述之虛擬實境系統,其中該學習端模組包括: 一記錄回放模組,用來透過該學習端虛擬實境裝置播放該教導拆裝記錄,並用來設定該多個虛擬物件的物理屬性,初始化渲染器組件,並初始化碰撞器組件; 一學習端互動模組,用來定位一虛擬手,並基於使用者對該學習端虛擬實境裝置的操作來移動該虛擬手;及 一檢核執行模組,用來於各該檢測點偵測該教導拆裝狀態與該學習拆裝狀態是否相符。 The virtual reality system as described in claim 1, wherein the learning terminal module includes: A record playback module, which is used to play the teaching disassembly record through the learning terminal virtual reality device, and is used to set the physical properties of the plurality of virtual objects, initialize the renderer component, and initialize the collider component; A learning terminal interaction module, used to position a virtual hand and move the virtual hand based on the user's operation of the learning terminal virtual reality device; and A check execution module is used to detect whether the teaching disassembly state is consistent with the learning disassembly state at each detection point. 如請求項1所述之虛擬實境系統,其中該學習端模組被設定來建立用來記錄各該虛擬物件的一邊界的一邊界表; 其中,該學習端模組被設定來於任一該虛擬物件為一線段或一筆畫時,透過一線渲染器偵測該線段或該筆畫的一碰撞; 其中,該學習端模組被設定來於任一該虛擬物件為一常規物件時,透過一網格渲染器計算該常規物件的該邊界,並基於該邊界偵測該常規物件的一碰撞; 其中,該學習端模組被設定來基於碰撞偵測結果執行一抓取偵測及一組裝偵測。 The virtual reality system as described in claim 1, wherein the learning terminal module is configured to create a boundary table for recording a boundary of each virtual object; Wherein, the learning terminal module is set to detect a collision of the line segment or the stroke through the line renderer when any of the virtual objects is a line segment or a stroke; Wherein, the learning terminal module is configured to calculate the boundary of the normal object through a grid renderer when any of the virtual objects is a normal object, and detect a collision of the normal object based on the boundary; Wherein, the learning terminal module is set to perform a grasping detection and an assembly detection based on the collision detection result. 如請求項3所述之虛擬實境系統,其中該學習端模組被設定來取得該常規物件的一物件姿態,計算該虛擬物件於一無旋轉狀態的一包圍盒,基於該物件姿態旋轉該包圍盒來獲得一旋轉後包圍盒,並以該旋轉後包圍盒作為該常規物件的一物件包圍盒; 其中,該物件包圍盒是作為該常規物件的一碰撞邊界,並用來偵測該常規物件的該碰撞。 The virtual reality system as described in claim 3, wherein the learning terminal module is configured to obtain an object pose of the normal object, calculate a bounding box of the virtual object in a non-rotation state, and rotate the virtual object based on the object pose bounding box to obtain a rotated bounding box, and use the rotated bounding box as an object bounding box of the regular object; Wherein, the object bounding box is used as a collision boundary of the normal object, and is used to detect the collision of the normal object. 如請求項1所述之虛擬實境系統,其中該學習端模組被設定來透過該學習端虛擬實境裝置接受一搬移操作,並基於該搬移操作來移動該多個虛擬物件的至少其中之一; 其中,該學習端模組被設定來於一組裝條件滿足時,執行一群組處理,來將發生碰撞的該多個虛擬物件組裝為一第一群組物件;及 其中,該學習端模組被設定來於一拆解條件滿足時,執行一解群組處理,來將發生分離的一第二群組物件分離為該多個虛擬物件。 The virtual reality system as described in Claim 1, wherein the learning terminal module is configured to accept a moving operation through the learning terminal virtual reality device, and move at least one of the plurality of virtual objects based on the moving operation one; Wherein, the learning terminal module is set to execute a group process when an assembly condition is satisfied, so as to assemble the plurality of virtual objects that collide into a first group object; and Wherein, the learning terminal module is set to perform a degrouping process when a disassembly condition is met, so as to separate a second group of objects that has been separated into the plurality of virtual objects. 如請求項5所述之虛擬實境系統,其中該學習端模組被設定來產生可抓取的該第一群組物件,設定發生碰撞的該多個虛擬物件為該第一群組物件的多個子物件,並設定該第一群組物件的該多個子物件為不可抓取的。The virtual reality system as described in claim 5, wherein the learning terminal module is configured to generate the first group of objects that can be grasped, and the plurality of virtual objects that collide are set as objects of the first group of objects multiple sub-objects, and set the multiple sub-objects of the first group of objects to be ungraspable. 如請求項5所述之虛擬實境系統,其中該學習端模組被設定來刪除該第二群組物件的多個子物件之間的多個連結,刪除該第二群組物件,並設定該多個子物件為可抓取的該多個虛擬物件。The virtual reality system as described in claim 5, wherein the learning terminal module is configured to delete multiple links between multiple sub-objects of the second group object, delete the second group object, and set the The sub-objects are the virtual objects that can be grasped. 如請求項1所述之虛擬實境系統,其中該學習端模組被設定來於偵測對任一該虛擬物件的一動作不正確時發出一動作錯誤提示、於偵測任一虛擬物件的組成不正確時,發出一組成錯誤提示、於偵測任一該虛擬物件的一位置不正確時發出一位置錯誤提示、或者於偵測任一該虛擬物件的一組裝順序不正確時發出一順序錯誤提示。The virtual reality system as described in Claim 1, wherein the learning terminal module is set to issue an action error prompt when detecting an incorrect action on any virtual object, and to send out an action error prompt when detecting any virtual object When the composition is incorrect, issue a composition error prompt, issue a position error prompt when detecting an incorrect position of any of the virtual objects, or issue a sequence when detecting an incorrect assembly sequence of any of the virtual objects Error message. 如請求項1所述之虛擬實境系統,更包括一教導端; 其中,該教導端包括一教導端模組及一教導端虛擬實境裝置; 其中,該教導端虛擬實境裝置用來顯示該多個虛擬物件並接受操作; 其中,該教導端模組用來執行一初始化處理,基於一創建物件操作來創建該多個虛擬物件,基於一線段創建操作來創建連結該多個虛擬物件的一線段,基於一教導拆裝操作來改變該多個虛擬物件的該教導拆裝狀態,設定該檢核點並記錄該檢核點的該教導拆裝狀態,並產生該教導拆裝記錄。 The virtual reality system as described in claim 1, further comprising a teaching terminal; Wherein, the teaching terminal includes a teaching terminal module and a teaching terminal virtual reality device; Wherein, the teaching end virtual reality device is used to display the plurality of virtual objects and accept operations; Wherein, the teaching terminal module is used to perform an initialization process, create the plurality of virtual objects based on an object creation operation, create a line segment connecting the plurality of virtual objects based on a segment creation operation, and create a line segment connecting the plurality of virtual objects based on a teaching disassembly operation to change the teaching disassembly state of the plurality of virtual objects, set the checkpoint and record the teaching disassembly state of the checkpoint, and generate the teaching disassembly record. 如請求項9所述之虛擬實境系統,其中該線段創建操作包括設定一頭節點數量、一身節點數量及一尾節點數量; 其中,該教導端模組用來基於該頭節點數量、該身節點數量及該尾節點數量創建該線段,設定該線段的一線束關係來轉換多個身節點為一線束,並設定該線段的多個節點座標; 其中,該線段的至少一頭節點與至少一尾節點分別連接該多個虛擬物件。 The virtual reality system as described in claim item 9, wherein the line segment creation operation includes setting the number of a head node, the number of body nodes and the number of a tail node; Wherein, the teaching terminal module is used to create the line segment based on the number of the head node, the number of the body node and the number of the tail node, set a bundle relationship of the line segment to convert multiple body nodes into a bundle, and set the Multiple node coordinates; Wherein, at least one head node and at least one tail node of the line segment are respectively connected to the plurality of virtual objects. 一種基於虛擬實境的拆裝檢核方法,包括: a) 於一學習端取得設定有多個檢核點的一教導拆裝記錄及一檢核資料,其中該檢核資料包括多個虛擬物件於各檢核點的一教導拆裝狀態; b) 於該學習端播放該教導拆裝記錄; c) 於該學習端接受操作來對該多個虛擬物件進行拆裝來改變該多個虛擬物件的一學習拆裝狀態;及 d) 於任一該檢測點的該教導拆裝狀態與該學習拆裝狀態不符時,發出一拆裝錯誤提示。 A disassembly and assembly inspection method based on virtual reality, comprising: a) Obtain a teaching disassembly record with multiple check points and a check data on a learning terminal, wherein the check data includes a teaching disassembly state of multiple virtual objects at each check point; b) Play the teaching disassembly record on the learning terminal; c) Accepting operations on the learning terminal to disassemble the plurality of virtual objects to change a learning disassembly state of the plurality of virtual objects; and d) When the teaching disassembly status of any of the detection points is inconsistent with the learning disassembly status, a disassembly error prompt is issued. 如請求項11所述之拆裝檢核方法,其中於該步驟c)之前更包括: e1) 定位一虛擬手; e2) 設定該多個虛擬物件的物理屬性; e3) 初始化渲染器組件;及 e4) 初始化碰撞器組件。 The disassembly and inspection method as described in claim 11, which further includes before the step c): e1) positioning a virtual hand; e2) Setting physical attributes of the plurality of virtual objects; e3) Initialize the renderer component; and e4) Initialize the collider component. 如請求項11所述之拆裝檢核方法,其中該步驟c)包括: c11) 建立一邊界表,其中該邊界表用來記錄各該虛擬物件的一邊界; c12) 於任一該虛擬物件為一線段或一筆畫時,透過一線渲染器偵測該線段或該筆畫的一碰撞; c13) 於任一該虛擬物件為一常規物件時,透過一網格渲染器計算該常規物件的該邊界,並基於該邊界偵測該常規物件的一碰撞;及 c14) 基於碰撞偵測結果執行一抓取偵測及一組裝偵測。 The disassembly inspection method as described in claim 11, wherein the step c) includes: c11) establishing a boundary table, wherein the boundary table is used to record a boundary of each virtual object; c12) When any of the virtual objects is a line segment or a stroke, detect a collision of the line segment or the stroke through a line renderer; c13) when any of the virtual objects is a regular object, calculating the boundary of the regular object by a mesh renderer, and detecting a collision of the regular object based on the boundary; and c14) Perform a grasp detection and an assembly detection based on the collision detection results. 如請求項13所述之拆裝檢核方法,其中計算該常規物件的該邊界更包括 c131) 取得該常規物件的一物件姿態; c132) 計算該虛擬物件於一無旋轉狀態的一包圍盒; c133) 基於該物件姿態旋轉該包圍盒來獲得一旋轉後包圍盒;及 c134) 以該旋轉後包圍盒作為該常規物件的一物件包圍盒,其中該物件包圍盒是作為該常規物件的一碰撞邊界,並用來偵測該常規物件的該碰撞。 The disassembly and inspection method as described in claim 13, wherein calculating the boundary of the conventional object further includes c131) Get an object pose of the regular object; c132) Compute a bounding box of the virtual object in a non-rotated state; c133) rotating the bounding box based on the object pose to obtain a rotated bounding box; and c134) Using the rotated bounding box as an object bounding box of the regular object, wherein the object bounding box is used as a collision boundary of the regular object, and is used to detect the collision of the regular object. 如請求項11所述之拆裝檢核方法,其中該步驟c)包括: c21) 基於一搬移操作來移動該多個虛擬物件的至少其中之一; c22) 於一組裝條件滿足時,執行一群組處理,來將發生碰撞的該多個虛擬物件組裝為一第一群組物件;及 c23) 於一拆解條件滿足時,執行一解群組處理,來將發生分離的一第二群組物件分離為該多個虛擬物件。 The disassembly inspection method as described in claim 11, wherein the step c) includes: c21) moving at least one of the plurality of virtual objects based on a move operation; c22) when an assembly condition is satisfied, perform a group process to assemble the plurality of virtual objects that collide into a first group object; and c23) When a disassembly condition is satisfied, perform a degrouping process to separate a second group of objects that has been separated into the plurality of virtual objects. 如請求項15所述之拆裝檢核方法,其中該群組處理包括 c221) 產生可抓取的該第一群組物件,並設定發生碰撞的該多個虛擬物件為該第一群組物件的多個子物件;及 c222) 設定該第一群組物件的該多個子物件為不可抓取的。 The disassembly and inspection method as described in claim 15, wherein the group processing includes c221) Generate the first group of objects that can be grabbed, and set the plurality of virtual objects that collide as the plurality of child objects of the first group of objects; and c222) Setting the plurality of child objects of the first group of objects to be ungraspable. 如請求項15所述之拆裝檢核方法,其中該解群組處理包括: c231) 刪除該第二群組物件的多個子物件之間的多個連結,並刪除該第二群組物件;及 c232) 設定該多個子物件為可抓取的該多個虛擬物件。 The disassembly and inspection method as described in claim 15, wherein the ungrouping process includes: c231) delete links between child objects of the second group of objects, and delete the second group of objects; and c232) Set the multiple child objects as the multiple virtual objects that can be grabbed. 如請求項11所述之拆裝檢核方法,其中該步驟d)包括以下至少其中之一: d1) 於偵測對任一該虛擬物件的一動作不正確時,發出一動作錯誤提示; d2) 於偵測任一虛擬物件的組成不正確時,發出一組成錯誤提示; d3) 於偵測任一該虛擬物件的一位置不正確時,發出一位置錯誤提示;及 d4) 於偵測任一該虛擬物件的一組裝順序不正確時,發出一順序錯誤提示。 The disassembly and inspection method as described in Claim 11, wherein the step d) includes at least one of the following: d1) When an incorrect action on any virtual object is detected, an action error prompt is issued; d2) When detecting that the composition of any virtual object is incorrect, issue a composition error prompt; d3) When an incorrect position of any virtual object is detected, a position error prompt is issued; and d4) When it is detected that an assembly sequence of any of the virtual objects is incorrect, a sequence error prompt is issued. 如請求項11所述之拆裝檢核方法,其中於該步驟a)之前更包括: f1) 於一教導端執行一初始化處理; f2) 基於一創建物件操作來創建該多個虛擬物件; f3) 基於一線段創建操作來創建連結該多個虛擬物件的一線段; f4) 基於一教導拆裝操作來改變該多個虛擬物件的該教導拆裝狀態; f5) 設定該檢核點並記錄該檢核點的該教導拆裝狀態;及 f6) 產生該教導拆裝記錄。 The disassembly and inspection method as described in claim 11, which further includes before the step a): f1) performing an initialization process on a teaching end; f2) creating the plurality of virtual objects based on an object creation operation; f3) Create a segment connecting the plurality of virtual objects based on a segment creation operation; f4) changing the teaching detachment state of the plurality of virtual objects based on a teaching detachment operation; f5) Set the checkpoint and record the teaching disassembly status of the checkpoint; and f6) Generate the teaching disassembly record. 如請求項19所述之拆裝檢核方法,其中該線段創建操作包括設定一頭節點數量、一身節點數量及一尾節點數量; 該步驟f3)包括: f31) 基於該頭節點數量、該身節點數量及該尾節點數量創建該線段,其中該線段的至少一頭節點與至少一尾節點分別連接該多個虛擬物件;及 f32) 設定該線段的一線束關係來轉換多個身節點為一線束;及 f33) 設定該線段的多個節點座標。 The disassembly and inspection method as described in claim 19, wherein the line segment creation operation includes setting the number of a head node, the number of body nodes and the number of a tail node; This step f3) comprises: f31) creating the line segment based on the number of head nodes, the number of body nodes and the number of tail nodes, wherein at least one head node and at least one tail node of the line segment are respectively connected to the plurality of virtual objects; and f32) Set a bundle relationship of the line segment to convert multiple body nodes into a bundle; and f33) Set multiple node coordinates of the line segment.
TW111101604A 2022-01-14 Virtual reality system with an inspecting function of assembling and disassembling and inspection method thereof TWI853204B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW111101604A TWI853204B (en) 2022-01-14 Virtual reality system with an inspecting function of assembling and disassembling and inspection method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW111101604A TWI853204B (en) 2022-01-14 Virtual reality system with an inspecting function of assembling and disassembling and inspection method thereof

Publications (2)

Publication Number Publication Date
TW202329058A true TW202329058A (en) 2023-07-16
TWI853204B TWI853204B (en) 2024-08-21

Family

ID=

Similar Documents

Publication Publication Date Title
Huang et al. Code3: A system for end-to-end programming of mobile manipulator robots for novices and experts
US10360729B2 (en) Methods and apparatus for augmented reality applications
US20230247282A1 (en) Interactive application adapted for use by multiple users via a distributed computer-based system
CN108492661A (en) A kind of virtual experiment training system
US11823587B2 (en) Virtual reality system with inspecting function of assembling and disassembling and inspection method thereof
AU2019201980B2 (en) A collaborative virtual environment
CN110210012B (en) Interactive courseware manufacturing method based on virtual reality technology
Ferrise et al. Multimodal training and tele-assistance systems for the maintenance of industrial products: This paper presents a multimodal and remote training system for improvement of maintenance quality in the case study of washing machine
Jiang et al. A new constraint-based virtual environment for haptic assembly training
CN110827605A (en) Training method and device based on virtual reality
Nebeling XR tools and where they are taking us: characterizing the evolving research on augmented, virtual, and mixed reality prototyping and development tools
JP6050849B2 (en) GAME EDITING DEVICE AND ITS CONTROL METHOD, GAME DEVICE AND ITS CONTROL METHOD, AND COMPUTER PROGRAM
Verlinden et al. Recording augmented reality experiences to capture design reviews
Manou et al. Understanding industrial robot programming by aid of a virtual reality environment
CN110942519B (en) Computer assembly virtual experiment system and implementation method thereof
TW202329058A (en) Virtual reality system with an inspecting function of assembling and disassembling and inspection method thereof
Wang et al. Augmented Reality and Quick Response Code Technology in Engineering Drawing Course
Osorio-Gómez et al. An augmented reality tool to validate the assembly sequence of a discrete product
Kirakosian et al. Immersive simulation and training of person-to-3d character dance in real-time
WO2020067204A1 (en) Learning data creation method, machine learning model generation method, learning data creation device, and program
Pratama Immersive Virtual Reality Prototype for Evaluating 4D CAD Model
Teshima et al. Development of WebXR-based Environment for Engineering Experiments
Cannavò Interfaces for human-centered production and use of computer graphics assets.
Murnane et al. Learning from human-robot interactions in modeled scenes
De Vries et al. The tangible interface: Experiments as an integral part of a research strategy