KR101671320B1 - Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof - Google Patents

Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof Download PDF

Info

Publication number
KR101671320B1
KR101671320B1 KR1020140058530A KR20140058530A KR101671320B1 KR 101671320 B1 KR101671320 B1 KR 101671320B1 KR 1020140058530 A KR1020140058530 A KR 1020140058530A KR 20140058530 A KR20140058530 A KR 20140058530A KR 101671320 B1 KR101671320 B1 KR 101671320B1
Authority
KR
South Korea
Prior art keywords
training
virtual
trainee
motion
client
Prior art date
Application number
KR1020140058530A
Other languages
Korean (ko)
Other versions
KR20150132681A (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 KR1020140058530A priority Critical patent/KR101671320B1/en
Publication of KR20150132681A publication Critical patent/KR20150132681A/en
Application granted granted Critical
Publication of KR101671320B1 publication Critical patent/KR101671320B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education

Landscapes

  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Educational Administration (AREA)
  • Marketing (AREA)
  • Educational Technology (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 발명은 훈련 관리자에게 제공되어 훈련과정을 모니터링하도록 하는 마스터 시스템(300)과 연동하여, 각 훈련자에게 제공되고 클라이언트 HMD 장치 및 클라이언트 모션인식 장비와 연결되어 클라이언트 HMD 장치에 디스플레이되는 화면상의 가상공간인 가상작업공간에서 훈련을 수행하도록 하는 클라이언트 시스템의 가상훈련 처리장치(200)로, 클라이언트 HMD 장치 및 클라이언트 모션인식 장비를 초기화하고, 클라이언트 시스템 처리부(220)와 연계하여 각 기능을 설정하는 모션인식/디스플레이부(210); 마스터 시스템(300)과 네트워크 접속을 수행하며 3D 컨텐츠로 구성된 훈련 콘텐츠를 로딩하고, 클라이언트 모션인식 장비로부터 인식된 모션 데이터를 수신하여 처리하는 클라이언트 시스템 처리부(220); 3D 컨텐츠로 구성된 훈련 콘텐츠를 초기화하고 가상작업공간 내 훈련자의 캐릭터를 생성하여 로딩하며, 가상작업공간에서 훈련 내용인 작업이 진행되도록 제어하는 훈련 시나리오 처리부(230)를 포함하여 구성되는 것을 특징으로 한다. The present invention provides a virtual space on the screen displayed on the client HMD device, which is provided to each trainee and is connected to the client HMD device and the client motion recognition device, in cooperation with the master system 300 that is provided to the training manager to monitor the training process The client HMD apparatus and the client motion recognition apparatus are initialized to the virtual training processing apparatus 200 of the client system for performing the training in the virtual work space and the motion recognition / A display unit 210; A client system processing unit 220 for performing network connection with the master system 300 and loading training content composed of 3D contents, receiving and processing motion data recognized from the client motion recognition apparatus, And a training scenario processor 230 for initializing training contents composed of 3D contents, creating and loading a character of a trainee in the virtual work space, and controlling the operation of the training contents in the virtual work space to proceed .

Figure R1020140058530
Figure R1020140058530

Description

다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법.{Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof} A network virtual training processing apparatus constituting a client system of a immersive network virtual training system capable of recognizing individual virtual training spaces of multiple trainees through a multiple access and collectively and systematically collaborating in a shared virtual work space and a device using the same A virtual network training method is proposed. {Virtual network training processing unit included client system of immersive virtual training system that enables each virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using them}

본 발명은 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법에 관한 것으로, 구체적으로는 팀을 이루는 다수의 훈련자에 대한 집단적인 기술훈련이 요구되는 작업환경, 예컨대, 예상하지 못한 재난 대응 훈련 등의 수행을 위하여, 가상공간 교육에 참여하는 다수의 훈련자가 개인별로 다른 훈련자를 포함하는 가상훈련공간을 인식하는 것이 가능하고, 다른 훈련자 및 훈련 관리자 등 훈련 참여자와 커뮤니케이션이 가능하여, 훈련의 총책임자인 훈련 관리자가 교육의 내용을 감독하며 그 결과를 측정할 수 있는 집단적이고 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템에 관한 것으로, 조직적인 지시 및 통제와 행동이 필요한 작업환경 예컨대, 재난 발생 환경을 컴퓨터 그래픽 기술과 전산응용 기술을 융합하여 객체간 상호작용하는 가상환경(VR)으로 구현하여 가상훈련공간을 구성하고, 각 훈련 참여자들이 구성된 가상훈련공간을 공유하며 훈련 목적 및 내용을 포함하는 훈련 시나리오와 훈련 관리자의 지시에 의한 행동 지침에 따라 훈련을 수행하도록 하는 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법에 관한 것이다. The present invention relates to a network virtual training apparatus for constructing a client system of a virtual training system and a method for immersive network virtual training using the same, and more particularly, For example, it is possible for a plurality of trainers participating in virtual space education to recognize a virtual training space including individual trainees for performing unexpected disaster response training, The purpose of this study was to develop a system for training and supervising the immersive network virtual training system which enables the training manager to supervise the contents of the training and to measure the results. Work environments that require action, for example, (VR) to create a virtual training space by integrating computer graphics technology and computational application technology, and to share the virtual training space composed of each training participant, and training including training purpose and content Scenario and Training Manager Based on the behavioral guidelines, the multiple interactions allow multiple trainers to recognize the individual virtual training spaces and collectively organize collaborative training in a shared virtual training space. To a network virtual training processing apparatus constituting a client system of a training system, and to a immersive network virtual training method using the same.

현재 가상훈련 시스템 및 이를 통한 가상훈련 방법은, 다양한 산업(게임, 의료, 건축, 항공, 원자력)에서의 작업훈련에 활용되고 있으며, 특히, 정상적인 현실에서 경험할 수 없는 재난(인적재난과 자연재난)상황에서의 훈련 또는 기술보안이 요구되거나 위험한 산업현장에서의 작업훈련 등에 활용되어, 다양한 시나리오를 통하여 디지털 디스플레이를 통해 제공되는 가상훈련공간에서의 작업훈련을 통해, 각 확경 및 요구되는 작업을 체험하여, 훈련부족 및 경험 부족으로 발생할 수 있는 인적오류를 방지하고 이로 인한 막대한 경제적인 손실과 인명피해를 방지할 수 있는 효율적인 훈련방법으로 활용되고 있다.Currently, the virtual training system and the virtual training method through it are being used to train work in various industries (game, medical, architecture, aviation, nuclear power), and in particular, disaster (human disaster and natural disaster) Through various training scenarios, job training in a virtual training space, which is provided through a digital display, can be used for training in situations, training for technical security, or work in dangerous industrial sites. , Lack of training and lack of experience to prevent human errors that can occur, resulting in tremendous economic losses and loss of life is being used as an effective training method.

이러한 가상훈련 시스템은 2010년 이후 디스플레이 및 소프트웨어 시장의 발전으로, 가상훈련 시스템에 다양한 하드웨어 및 소프트웨어가 연동되고 있으며, 특히, 가상현실(VR) 장비로서 고가 장비였던, HMD(Head Mounted Display)가 보편화 단계에 이르고 있으며, 또한, 사람의 동작을 인식할 수 있는 모션인식 장비는 그 성능이 향상되고 가격도 저렴해져서, HMD(Head Mounted Display)와 모션인식 장비가 하드웨어로서 설치되어 연동되는 가상훈련 시스템의 상용화가 가능한 상황이다.This virtual training system has been linked with various hardware and software to the virtual training system due to the development of the display and software market since 2010. In particular, HMD (Head Mounted Display), which was expensive equipment as a virtual reality (VR) And the motion recognition device capable of recognizing the motion of the person has improved performance and the price is lowered so that the HMD (Head Mounted Display) and the virtual training system in which the motion recognition device is installed as hardware It can be commercialized.

한편, 현재 가상훈련 시스템은 그 하드웨어적 및 소프트웨어적인 발전에도 불구하고 주로 1인의 훈련자가 접속하여 혼자 체험 및 훈련하는 방식의 1 인형 가상훈련 시스템이 일반적이다.On the other hand, in spite of the hardware and software developments, the virtual training system is generally a one - person virtual training system in which one trainee connects and experiences and trains by himself.

반면, 실제로 산업현장의 인적오류로 인한 사고사항을 분석한 결과에 의하면 사건, 사고들 중 약 70%가 팀원들이 가용한 자원을 적절하게 이용하지 못한 것이 사고 발생에 직·간접적으로 영향을 준 것으로 나타나고 있으며, 재난 사고 역시 경험하지 않은 환경에서 서로 간의 부적절한 의사결정, 효과적이지 못한 커뮤니케이션 때문에 막대한 인명 피해와 경제적 손실을 가져왔다. 이러한 결과는 부적절한 리더십, 그리고 열악한 관리기술과 관련된 것으로 밝혀지면서 팀원들 간의 협력과 의사소통을 기반으로 각 팀원들의 자원관리 능력에 대한 훈련이 절실히 요구되고 있다.On the other hand, according to the results of analyzing the accident caused by the human error in the industrial field, about 70% of the incidents and accidents did not utilize the resources available to the team members directly or indirectly And in the unexperienced environment of disasters, it has caused enormous loss of life and economic loss due to improper decision making and ineffective communication between each other. These results have been found to be related to inadequate leadership and poor management skills, and there is a strong demand for training of team members' resource management skills based on cooperation and communication among team members.

따라서, 팀원인 다수의 접속자가 동시에 가상공간에서 동일한 작업환경 및 작업을 실시간 체험 및 훈련이 가능하며, 팀원들간의 가상작업공간을 자기시점에서 인식하고 공유하고, 팀원 간 및 팀 리더와 팀원 간의 커뮤니케이션의 훈련이 가능한 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 개발이 절실히 요구되고 있는 상황이다.Therefore, it is possible for a plurality of users who are team members to simultaneously experience and work on the same work environment and work in a virtual space, recognize and share the virtual work space among the team members at the same time, communicate with each other, It is urgently required to develop an immersive network virtual training system capable of recognizing individual virtual training spaces of a plurality of trainees through a plurality of trains capable of training and collective and systematic cooperative training in a shared virtual training space.

이에 따라 본 발명은 팀원인 다중 접속자가 동시에 가상작업공간에서 실시간 체험하는 훈련이 가능하며, 팀원들 간의 가상작업공간을 자기시점에서 인식하고 공유하여 팀원 간 및 팀 리더와 팀원 간의 커뮤니케이션의 훈련이 가능한, 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하는 것을 목적으로 한다.Accordingly, the present invention enables training of multiple users who are team members at the same time in real time in a virtual work space, training of communication between team members and between team members and team members by recognizing and sharing the virtual work space among team members at their own time , An immersive network virtual training system capable of recognizing individual virtual training spaces of a plurality of trainees through a multiple access and collective and systematic cooperative training in a shared virtual training space, and an immersive network virtual training method using the same The purpose.

또한, 위와 같은 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 각 훈련자의 클라이언트 시스템의 구성이 가능한 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하는 것을 목적으로 한다.In addition, through the above-mentioned multiple connection, it is possible to recognize the individual virtual training space of a plurality of trainees and to realize a network system capable of constituting a client system of each trainee in a immersive network virtual training system capable of collective and systematic cooperation training in a shared virtual training space A virtual training processing apparatus and an immersive network virtual training method using the same are provided.

나아가, 본 발명은 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하여, 저렴한 비용으로 설치 사용이 가능하고, 중앙서버 접속방식의 서버 과부하 및 이에 따른 접속과 프로그램 프로세싱의 지연을 방지하고 다양한 방식으로 네트워크 구성이 가능하여 다양한 협업훈련에 적용 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 통한 몰입식 네트워크 가상훈련 방법을 제공하는 것을 목적으로 한다.Furthermore, the present invention provides an immersive network virtual training system capable of collaborative training in a virtual work space based on multiple clients and a immersive network virtual training method using the same, thereby enabling installation and use at a low cost, It is an object of the present invention to provide a immersive network virtual training system capable of preventing overload of a server and thus delaying connection and program processing and capable of configuring a network in various ways so as to be applicable to various collaborative training and immersive network virtual training method .

상기 목적을 달성하기 위하여, 일 측면에서 본 발명은, 훈련 관리자에게 제공되어 훈련과정을 모니터링하도록 하는 마스터 시스템(300)과 연동하여, 각 훈련자에게 제공되고 클라이언트 HMD 장치 및 클라이언트 모션인식 장비와 연결되어 클라이언트 HMD 장치에 디스플레이되는 화면상의 가상공간인 가상작업공간에서 훈련을 수행하도록 하는 클라이언트 시스템의 가상훈련 처리장치(200)로, 클라이언트 HMD 장치 및 클라이언트 모션인식 장비를 초기화하고, 클라이언트 시스템 처리부(220)와 연계하여 각 기능을 설정하는 모션인식/디스플레이부(210), 마스터 시스템(300)과 네트워크 접속을 수행하며 3D 컨텐츠로 구성된 훈련 콘텐츠를 로딩하고, 클라이언트 모션인식 장비로부터 인식된 모션 데이터를 수신하여 처리하는 클라이언트 시스템 처리부(220), 3D 컨텐츠로 구성된 훈련 콘텐츠를 초기화하고 가상작업공간 내 훈련자의 캐릭터를 생성하여 로딩하며, 가상작업공간에서 훈련 내용인 작업이 진행되도록 제어하는 훈련 시나리오 처리부(230)를 포함하여, 상기 모션인식/디스플레이부(210)는, 클라이언트 HMD 장치의 HMD 트랙킹 모듈센서로부터 인식되는 훈련자의 머리의 움직임에 따른 데이터를 연산하여 훈련자 머리의 모션 데이터로 생성하는 클라이언트 HMD 트랙킹 모듈(212); 클라이언트 HMD 장치의 카메라 시야 디스플레이를 가상작업공간 내 위치한 훈련자의 캐릭터의 카메라에 링크시키는 클라이언트 HMD 카메라 링크 모듈(213); 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송하는 디스플레이 모듈(214); 클라인언트 모션인식 장비로부터 훈련자의 동작에 따른 데이터를 수신하여 훈련자의 모션 데이터를 추출하여 훈련자의 동작을 트랙킹하는 모션 트랙킹 모듈(216); 및 상기 훈련자의 모션 데이터를 가상작업공간의 훈련자의 캐릭터의 관절 데이터에 링크시키는 모션 링크 모듈(217)을 포함하고, 상기 클라이언트 시스템 처리부(220)는, 사전 설정된 훈련자에게 요구되는 작업의 동작과 모션 데이터로부터 인식되는 훈련자의 동작을 비교하여 모션의 일치 여부를 판단하는 모션 프로세스 모듈(224);을 포함하여, 판단된 모션의 일치 여부에 기초하여 훈련자의 동작에 대한 모션 정확도를 추출하며, 훈련 시나리오 처리부(230)는, 마스터 시스템(300)으로부터 임무에 관한 정보 및 작업 권한에 관한 데이터를 수신하는 훈련 데이터/메시지 수신 모듈(233);을 포함하여, 상기 훈련 데이터/메시지 수신모듈(233)을 통해 마스터 시스템(300)으로부터 작업 권한에 관한 데이터를 수신하며, 상기 훈련 데이터/메시지 수신 모듈(233)을 통해 마스터 시스템으로부터 수신된 작업 권한에 관한 데이터에 따라, 작업 권한을 부여받은 것으로 판단된 경우, 상기 모션 트랙킹 모듈(216)은 활성화되어 모션 트랙킹을 수행하여 트랙킹 된 모션 데이터 값을 모션 링크 모듈(217)로 전달하고, 작업 권한을 부여 받지 않은 것으로 판단된 경우, 가상작업공간에서 상기 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 작업 권한이 부여된 다른 훈련자의 캐릭터의 카메라에 렌더링되는 화면이 HMD 장치의 화면에 전송되고, 상기 모션 트랙킹 모듈(216)은 비활성화되어 모션 트랙킹을 수행하지 않으며, 다른 훈련자에게 전달할 메시지가 있는 경우 이를 입력받아 채팅 또는 음성통신을 통해 전송하며, 다른 훈련자 또는 훈련 관리자의 메시지를 채팅 또는 음성통신을 통해 수신하는 것을 특징으로 한다. In order to achieve the above object, in one aspect, the present invention is provided to a training system, which is provided to a training manager so as to monitor a training process, is provided to each trainee and connected to a client HMD apparatus and a client motion recognition apparatus The client HMD device and the client motion recognition device are initialized by the virtual training processing device 200 of the client system that performs training in the virtual work space which is a virtual space on the screen displayed on the client HMD device, A motion recognition / display unit 210 for setting each function in conjunction with the master system 300, a network connection with the master system 300, loading training content composed of 3D contents, receiving motion data recognized from the client motion recognition apparatus, A client system processing unit 220 for processing the 3D content, And a training scenario processing unit (230) for initializing the training contents composed of the training contents in the virtual work space and generating and loading the characters of the trainee in the virtual work space, 210) includes a client HMD tracking module (212) for computing data according to a movement of a trainee head recognized from an HMD tracking module sensor of a client HMD device and generating motion data of a trainee head; A client HMD camera link module (213) linking a camera view display of the client HMD device to a camera of a trainee character located in a virtual work space; A display module 214 for transmitting to the screen of the HMD device a screen to be rendered on the camera of the trainee character at the time and the time of the visual field seen by the trainee character in the virtual work space; A motion tracking module (216) for receiving data according to a movement of the trainee from the clinic motion recognition device and extracting motion data of the trainee and tracking the movement of the trainee; And a motion link module (217) for linking the motion data of the trainee to the joint data of the trainee character of the virtual work space, wherein the client system processing unit (220) And a motion process module (224) for comparing the motion of the trainee recognized from the data to determine whether the motion is matched, extracting motion accuracy for the motion of the trainee based on whether or not the determined motion is matched, The processing unit 230 includes a training data / message receiving module 233 for receiving information on the task and the task authority from the master system 300 so that the training data / message receiving module 233 Receives data relating to the task authorization from the master system 300 and via the training data / message receiving module 233 The motion tracking module 216 is activated and performs motion tracking to transmit the tracked motion data values to the motion link module 217. [ The screen of the character of the other trainee who is granted the task right at the viewpoint and time of the sight of the character of the trainee in the virtual work space is displayed on the screen of the HMD device The motion tracking module 216 is disabled and does not perform the motion tracking. If there is a message to be delivered to another trainee, the motion tracking module 216 receives the message and transmits the message through chat or voice communication. Through chat or voice communication.

삭제delete

삭제delete

삭제delete

삭제delete

바람직하게는, 훈련 시나리오 처리부(230)는, 가상 공간 내 훈련 콘텐츠를 초기화하는 훈련 콘텐츠 초기화 모듈(231); 마스터 시스템(300)으로부터 캐릭터를 부여받아 초기화된 가상작업공간 내 생성하는 훈련자 캐릭터 로딩 모듈(232);을 포함하여, 훈련자 캐릭터 로딩 모듈(232)은 마스터 시스템으로부터 전달된 훈련자에게 할당된 캐릭터 객체 및 상기 캐릭터 객체의 가상작업공간 내 위치정보에 따라 상기 캐릭터 객체를 가상작업공간 내 특정 위치에 표시되도록 로딩한다.Preferably, the training scenario processing unit 230 includes: a training content initialization module 231 for initializing the training content in the virtual space; And a trainee character loading module 232 for receiving characters from the master system 300 and creating the trainee character in the initialized virtual workspace. The trainee character loading module 232 includes a character object allocated to the trainee, And loads the character object to be displayed at a specific position in the virtual work space according to position information of the character object in the virtual work space.

삭제delete

또한, 훈련 시나리오 처리부(230)는, 모션 정확도와 및 작업 시간을 포함하여 훈련에 대한 결과를 데이터 형태로 생성하여 마스터 시스템에게 전달하는 훈련 결과 정보 생성 모듈(235)을 포함하는 것이 바람직하다.The training scenario processing unit 230 preferably includes a training result information generation module 235 for generating a training result including a motion accuracy and an operation time in the form of data and transmitting the data to the master system.

나아가, 바람직하게는 상기 가상작업공간은 작업주변환경, 작업캐릭터, 작업공구, 작업대상물에 대한 객체를 포함하여 구성된다.Further, preferably, the virtual workspace is configured to include objects for a work environment, a work character, a work tool, and a work object.

여기서, 상기 작업대상물에 대한 객체는 콜리더(Collider)가 세팅되는 것이 바람직하다.Here, it is preferable that an object for the work object is set as a collider.

다른 측면에서 본 발명은 다중 접속을 통하여 개별적인 공간인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 클라이언트 시스템의 가상훈련 처리장치를 포함하는 몰입식 네트워크 가상훈련 시스템을 이용한 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법으로, 클라이언트 HMD 장치 및 모션인식 장비를 초기화하여, 그 ID 를 수신 및 확인하여 연결을 설정하며, 가상작업공간의 접속을 위한 GUI 화면을 세팅하고 마스터 시스템(300)와 접속할 수 있는 GUI 화면을 제공하는 시스템 초기화 단계(S100); 상기 제공된 GUI을 통하여 클라이언트 시스템의 IP, 접속자 ID, 접속 방의 정보를 입력받고 입력되는 정보에 따라 마스터 서버(300)와의 네트워크 접속환경을 세팅하여 네트워크 접속하는 네트워크설정/접속 단계(S200); 3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하고, 로딩된 3D 객체를 사전 설정된 값으로 세팅하여 가상공간상에 배치하는 컨텐츠 초기화 단계(S300); 마스터 시스템으로부터 작업 권한에 관한 데이터를 수신하여 작업 권한을 부여받고 작업내용에 관한 메시지를 수신하여 훈련자에게 표시하며, 작업 권한을 부여 받은 것으로 판단된 경우, 해당 훈련자의 모션 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상작업공간을 구성하는 객체의 위치값, 회전값, 크기 값을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 훈련 이벤트 프로세싱 단계(S400); 훈련 데이터 및 최종 훈련 결과 정보를 마스터 시스템에게 송신하는 성과 데이터 송신/확인 단계(S500); 훈련이 종료된 훈련자에게 작업 권한이 부여되어 훈련이 진행중인 다른 훈련자의 가상작업환경을 제공하도록 훈련이 종료된 훈련자 클라이언트 시스템으로 화면 데이터를 생성하여 제공하는 작업관찰단계(S600);를 포함하여, 상기 훈련 이벤트 프로세싱 단계(S400)는, 작업 권한을 부여 받지 않은 것으로 판단된 경우, 상기 훈련자에 대하여 모션 인식을 진행하지 않고 가상작업공간에서 상기 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 작업 권한이 부여된 다른 훈련자의 캐릭터의 카메라에 렌더링되는 화면이 HMD 장치의 화면에 전송하며, 훈련 결과 정보 생성 과정을 포함하여, 작업시간, 이동 경로 이탈 여부, 훈련 제스쳐 동작 일치 여부의 훈련 데이터를 생성하고, 상기 성과 데이터 송신/확인 단계(S500)는 상기 훈련 데이터를 마스터 시스템으로 실시간 전송하며, 상기 작업관찰단계(S600)는, 상기 훈련이 종료된 훈련자에 대하여 모션 인식을 진행하지 않고, 상기 훈련이 종료된 훈련자의 지점 및 시각에서 작업 권한이 부여된 다른 훈련자의 캐릭터의 카메라에 렌더링되는 화면이 HMD 장치의 화면에 전송하여 디스플레이하며, 훈련이 종료된 훈련자가 다른 훈련자에게 전달할 메시지가 있는 경우 이를 입력받아 채팅 또는 음성통신을 통해 전송하며, 다른 훈련자 또는 훈련 관리자의 메시지를 채팅 또는 음성통신을 통해 수신하는 것을 특징으로 한다.In another aspect, the present invention provides a method and system for collaborating in a virtual space using a immersive network virtual training system including a virtual training processor of a client system capable of collective spatial recognition and collective and systematic cooperative training in a shared virtual workspace through multiple connections The client HMD device and the motion recognition device are initialized to receive and confirm the ID to establish a connection, set a GUI screen for connection to a virtual work space, and transmit the master system 300 A system initialization step (SlOO) for providing a GUI screen that can be connected to the GUI screen; A network setup / connection step (S200) of setting up a network connection environment with the master server (300) according to information inputted and inputting the IP of the client system, the connectioner ID and the connection room through the provided GUI, and connecting to the network; A content initialization step (S300) of loading training content composed of 3D contents, setting a loaded 3D object to a preset value, and placing the loaded 3D object on a virtual space; Receives the task authorization from the master system, receives the task authorization, receives a message related to the task content, and displays the task authorization message to the trainee. If it is determined that the task authorization is granted, A training event processing step (S400) of changing a position value, a rotation value, and a magnitude value of an object constituting a virtual work space of a trainee, which is recognized according to motion input and motion analysis, to each object of a virtual training environment of a trainee ); A performance data transmission / confirmation step (S500) of transmitting training data and final training result information to the master system; (S600) for generating and providing screen data to a trainee client system whose training has been terminated so as to provide a virtual work environment of another trainee who is given training authority to the trainee, In the training event processing step S400, when it is determined that the task authority is not granted, the task recognition is not performed for the trainee, but the task authority is set at the viewpoint and the time of the sight that the character of the trainee A training image data generation step of generating a training data including a work time, a movement path deviation, and a training gesture motion, The performance data transmission / confirmation step (S500) may transmit the training data to the master system The operation monitoring step S600 may include a step of not performing the motion recognition for the trainee who has finished the training but the operation of recognizing the character of the other trainee When the trainee has received a message to be transmitted to another trainee, the message is transmitted through chat or voice communication, and a message of another trainee or training manager is transmitted to the trainee Chat or voice communication.

삭제delete

바람직하게는, 상기 가상작업공간을 구성하는 객체는 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체를 포함한다.Preferably, the objects constituting the virtual work space include objects of a work surrounding environment, a work character, a work tool, and a work object.

여기서, 상기 컨텐츠 초기화 단계(S300)는, 상기 작업대상물객체에 콜리더(Collider)를 세팅하는 과정을 포함하여 수행되는 것이 바람직하다. Here, the content initialization step S300 may be performed by setting a call reader in the work object.

또한, 바람직하게는 상기 훈련 이벤트 프로세싱 단계(S400)는, 훈련 결과 정보 생성 과정을 포함하여, 작업시간, 이동 경로 이탈 여부, 훈련 제스쳐 동작 일치 여부의 데이터를 생성한다. Preferably, the training event processing step (S400) includes generating a training result information, and generating data on whether a work time, a movement path deviation, and a training gesture operation match.

삭제delete

본 발명에 의하면, 팀원인 다중 접속자가 동시에 가상작업공간에서 실시간 체험 및 훈련이 가능하며, 팀원들간의 가상작업공간을 자기시점에서 인식하고 공유하여 팀원 간 및 팀 리더와 팀원 간의 커뮤니케이션의 훈련이 가능한 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 통한 몰입식 네트워크 가상훈련 방법을 제공할 수 있게 되는 효과를 가져온다.According to the present invention, multiple users who are team members can experience real-time experience and training in a virtual work space at the same time, and can recognize the virtual work space among team members at the same time and can train communication between team members and between team leaders and team members It is possible to provide an immersive network virtual training system capable of collaborative training in a virtual work space through a multiple access and a immersive network virtual training method through the same.

또한, 본 발명에 의하면, 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하여, 중앙서버 접속방식의 서버 과부하 및 이에 따른 접속과 프로그램 프로세싱의 지연을 방지하며, 다양한 방식으로 네트워크 구성이 가능하여 다양한 협업훈련에 적용이 가능한 효과를 얻는다. According to the present invention, there is provided an immersive network virtual training system capable of cooperative training in a virtual work space based on multiple clients and a immersive network virtual training method using the same, It prevents the delay of program processing and can be applied to various collaborative training because network configuration is possible in various ways.

나아가, 본 발명 기술을 적용하여, 재난 훈련 교육 및 위험시설 안전 교육 시뮬레이션 등의 프로그램에 쉽게 접목 가능하며, 1인 교육으로 제작되어 있는 수많은 재난, 교육 안전 콘텐츠 등에 적용하여, 실질적인 훈련효과를 기대할 수 있는 다중 네트워크를 통하여 몰입식으로 고도화할 수 있는 기술을 제공하는 효과를 얻는다. Furthermore, by applying the technique of the present invention, it is possible to easily incorporate into programs such as disaster training training and hazardous facility safety education simulation, and it is possible to expect practical training effect by applying to disaster and educational safety contents produced by one person training It is possible to provide a technology that can be upgraded immersed through multiple networks.

도 1은 본 발명의 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 구성도.
도 2a는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)의 구성도.
도 2b는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)에서 인식되어 모션 매핑되는 각 관절명칭의 출력화면.
도 3은 본 발명의 일실시예에 따른 클라이언트 시스템 처리부(220)의 구성도.
도 4는 본 발명의 일실시예에 따른 훈련 시나리오 처리부(230)의 구성도.
도 5는 본 발명의 일실시예에 따른 마스터 시스템(300)의 구성도.
도 6은 본 발명의 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 실제 구현을 설명하기 위한 도면.
도 7은 본 발명의 일실시예에 따른 가상작업환경의 구현 화면.
도 8은 본 발명의 몰입시 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 흐름도.
도 9는 본 발명의 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 타임 테이블.
1 is a block diagram of an immersive network virtual training system capable of collaborative training in a virtual workspace through multiple connections of the present invention.
2A is a configuration diagram of a client motion recognition / display unit 210 according to an embodiment of the present invention.
2B is an output screen of each joint name recognized and motion-mapped by the client motion recognition / display unit 210 according to an embodiment of the present invention.
3 is a configuration diagram of a client system processing unit 220 according to an embodiment of the present invention.
4 is a configuration diagram of a training scenario processing unit 230 according to an embodiment of the present invention.
5 is a configuration diagram of a master system 300 according to an embodiment of the present invention.
FIG. 6 illustrates an actual implementation of an immersive network virtual training system capable of collaborative training in a virtual workspace based on multiple clients of the present invention; FIG.
FIG. 7 is an implementation screen of a virtual work environment according to an embodiment of the present invention; FIG.
8 is a flow diagram of a immersive network virtual training method using the immersive network virtual training system of the present invention.
9 is a time table of the immersive network virtual training method using the immersive network virtual training system of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시 예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는 적절하게 설명된다면 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구 항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다. The following detailed description of the invention refers to the accompanying drawings, which illustrate, by way of illustration, specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment. It is also to be understood that the position or arrangement of the individual components within each disclosed embodiment may be varied without departing from the spirit and scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is to be limited only by the appended claims, along with the full scope of equivalents to which the claims are entitled, if properly explained. In the drawings, like reference numerals refer to the same or similar functions throughout the several views.

도 1은 본 발명의 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 구성도이다. 1 is a block diagram of an immersive network virtual training system capable of collaborative training in a virtual workspace through multiple connections of the present invention.

도 1을 참조하면, 본 발명의 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템은 각각 클라이언트 HMD(Head Mounted Display)장치와 클라이언트 모션장비를 포함하는 다수의 훈련자 클라이언트 시스템(100)(클라이언트 시스템1, 클라이언트 시스템2...클라이언트 시스템n), 네트워크 가상훈련 처리장치(200), 및 마스터 시스템(300)으로 구성된다.Referring to FIG. 1, the immersive network virtual training system capable of cooperative training in a virtual work space through multiple accesses of the present invention includes a plurality of trainer client systems including a client HMD (Head Mounted Display) device and a client motion device 100) (client system 1, client system 2 ... client system n), network virtual training processing device 200, and master system 300.

각 훈련자 클라이언트 시스템(100)은 클라이언트 HMD 장치 및 클라이언트 모션인식 장비와 연결되는 클라이언트 단말(미도시)을 포함하여 구성되며, 클라이언트 모션인식 장비는 접촉식 모션인식 장치(또는 접촉식 모션인식 컨트롤러)와 비접촉식 모션인식 장치(또는 접촉식 모션인식 컨트롤러)를 포함하여 구성된다.Each of the trainer client systems 100 includes a client terminal (not shown) connected to the client HMD device and the client motion recognition device. The client motion recognition device includes a contact type motion recognition device (or a contact type motion recognition controller) And a non-contact motion recognition device (or contact type motion recognition controller).

네트워크 가상훈련 처리장치(200)는 각 훈련자 클라이언트 시스템(클라이언트 시스템1, 클라이언트 시스템2...클라이언트 시스템n)을 구성하며 각각의 클라이언트 단말 내에서 구동되는 프로그램의 형태로 포함되어 각 훈련자의 클라이언트 단말(미도시)에서 구동된다. 이 경우 클라이언트 프로그램으로 통칭한다.The network virtual training processing apparatus 200 includes the trainee client systems (client system 1, client system 2, ..., client system n), and is included in the form of a program driven in each client terminal, (Not shown). In this case, it is collectively referred to as a client program.

마스터 시스템(300)은 각 클라이언트 시스템의 클라이언트 단말과 네트워크를 통하여 다중 접속되어, 각 클라이언트 시스템에 접속된 훈련자가 동일한 가상작업공간에서 훈련을 체험할 수 있도록 각 클라이언트 시스템의 가상훈련 처리장치(200)를 동기화하고 훈련에 필요한 명령을 입력받아 전달하고 훈련 관리자에게 필요한 훈련정보를 출력하기 위한 UI 및 필요 기능을 제공하는 목적으로 서버(미도시)에 설치된다. The master system 300 is connected to the client terminals of the respective client systems through a network so that the trainer connected to each client system can experience the training in the same virtual work space. (Not shown) for the purpose of providing a UI and a necessary function for synchronizing and transmitting commands necessary for training and outputting necessary training information to the training manager.

클라이언트 HMD 장치는 X,Y,Z축의 헤드 트랙킹(Head Traking)이 가능하며, HMD의 헤드 트랙킹 방법은 선택된 하드웨어 장치의 구성에 따라 달라질 수 있다. 통상은 X축 회전은 Pitch값으로 머리의 상하 회전 값을 체크하며, Y축 회전은 Yaw 회전으로 카메라의 좌우 회전값을 체크하고 z값은 Roll 회전 값으로 고개를 좌우로 치우칠 때 나타나는 회전 값을 체크하여, 착용자의 머리의 움직임 및 상태를 X,Y,Z 값의 형태로 출력한다. 이를 위하여, 클라이언트 HMD 장치에는 HMD 트랙킹 모듈센서, 예컨대 자이로센서, 중력센서 등이 내장된다. X,Y,Z 값은 X,Y,Z 축 회전값으로, HMD 기기의 자이로 센서를 통해 Pitch(X축 회전값), Yaw(y축 회전값), Roll(z축 회전값)의 3가지 데이터를 의미한다.The client HMD device is capable of head tracing in the X, Y, and Z axes, and the head tracking method of the HMD may vary depending on the configuration of the selected hardware device. Normally, X-axis rotation checks the up / down rotation value of the head with the Pitch value. Y-axis rotation checks the camera's left / right rotation value by Yaw rotation and z value is the rotation value when the head is shifted to the left / And outputs the movement and state of the wearer's head in the form of X, Y, Z values. To this end, HMD tracking module sensors such as a gyro sensor, a gravity sensor, and the like are built in the client HMD device. The X, Y, and Z values are X, Y, and Z axis rotation values, and three values of Pitch (X axis rotation value), Yaw (y axis rotation value), and Roll Data.

클라이언트 모션인식 장비는 사용자의 움직임을 인식/추적하는 모션 트랙킹 장치로, 접촉식 모션인식 컨트롤러(예컨대, Virtuix Omni, Cyberith Virtualizer, PrioVR 등)와 비접촉식 모션인식 컨트롤러(예컨대, Kinect SDK 등) 중 하나 또는 2가지 모두가 선택되어 사용되며, 본 실시예의 경우 접촉식 컨트롤러 및 비접촉식 컨트롤러 모두가 클라이언트 모션인식 장비로 사용된다. The client motion recognition device is a motion tracking device for recognizing / tracking the movement of a user. The motion tracking device includes one of a contact type motion recognition controller (e.g., Virtuix Omni, Cyberith Virtualizer, PrioVR and the like) and a contactless motion recognition controller Both of which are selected and used. In this embodiment, both the contact controller and the contactless controller are used as the client motion recognition device.

접촉식 모션인식 컨트롤러는 훈련자의 이동과 회전을 인식하며, 접촉식 모션인식 컨트롤러를 통해 인식된 훈련자의 이동과 회전은 가상작업공간의 캐릭터의 이동 및 좌우 회전으로 매핑된다.The contact type motion recognition controller recognizes the movement and rotation of the trainee, and the movement and rotation of the trainee recognized through the contact type motion recognition controller are mapped to the movement and rotation of the character in the virtual work space.

본 발명에서는 접촉식 컨트롤러로서 상용화된 모션인식 컨트롤러 즉, Virtuix Omni or Cyberith Virtualizer등의 모션 컨트롤러를 사용될 수 있으며, 이는 통상 발판의 센서와 훈련자의 허리 부근에 위치하는 센서를 포함하여, 훈련자가 발을 사용하여 발판을 구르게 되면, 발판의 센서를 통해 신호를 수신하고, 접촉식 컨트롤러는 이를 특정 훈련자의 행동 중 전진 이동에 대한 모션 데이터로 출력한다. 상기 모션 데이터에 따라 가상작업공간 내에서 훈련자의 캐릭터가 이동 동작을 수행하게 된다. In the present invention, a motion controller such as a Virtuix Omni or Cyberith Virtualizer, which is commercially available as a contact type controller, can be used, which includes a sensor of a foot plate and a sensor located near the waist of a trainee, When a footstool is rolled, it receives a signal through the sensor of the footstep, and the contact controller outputs it as motion data for the forward movement during the behavior of the particular trainer. The trainee character performs a movement operation in the virtual work space according to the motion data.

한편, 허리에 위치한 회전 센서는 훈련자가 몸을 좌우로 비틀 때마다 Y축 각도를 인식하여, 이를 모션 데이터로 출력하며, 이러한 회전값은 화면 속 훈련자의 캐릭터에게 실시간으로 매핑되어 가상작업공간인 화면 안에 있는 캐릭터의 상체 및/또는 하체가 Y축으로 회전하게 된다.On the other hand, the rotation sensor located at the waist recognizes the Y axis angle every time the trainee twists the body to the left and right, and outputs it as motion data. The rotation value is mapped in real time to the character of the trainer in the screen, The upper body and / or the lower body of the character inside is rotated in the Y axis.

비접촉식 컨트롤러는 캐릭터의 훈련 행동을 인식 및 분석하는 역할을 담당하며, 훈련 행동은 훈련자의 손 및 팔의 동작으로, 크게 2가지 동작 내지 모션을 인식하여 모션 데이터로 출력한다. The contactless controller is responsible for recognizing and analyzing the training behavior of the character, and the training action is the movement of the hands and arms of the trainee, recognizing two motions or motions and outputting them as motion data.

첫째는 물체에 대한 손으로 쥐는 동작 즉, 그립 모션 인식으로, 화면상에 공구 등 장비가 있을 경우 훈련자가 손을 펴고 있다가 손을 움켜쥐었을 때, 가상작업공간에 매핑된 훈련자 캐릭터의 손의 위치와 공구 등 장비의 위치가 일치하면, 가상작업공간에서 손으로 공구 등 장비를 잡은 것으로 인식하도록 한다. 이는 가상작업공간의 화면상에서의 마우스 컨트롤과 같다. 즉, 화면에 마우스 포인터는 동작인식의 오른쪽 손의 움직임에 매핑된다. 모든 물체를 잡을 수 있는 것은 아니며, 훈련 시나리오상 필요한 객체 예컨대, 작업공구만을 잡는 물체로 인식한다(예, 드라이버, 펜치, 망치 등의 공구류). The first is the gripping motion of the object, that is, the grip motion recognition. When there is equipment such as a tool on the screen, when the trainer stretches his hand and grasps the hand, the hand of the trainer character mapped in the virtual workspace If the position of the tool matches the position of the tool, the virtual workspace should be recognized as having the tool held by the hand. This is like a mouse control on the screen of a virtual workspace. That is, the mouse pointer on the screen is mapped to the motion of the right hand of the motion recognition. Not all objects can be caught, but are recognized as objects that are needed only in the training scenarios, such as those that only capture the working tools (eg, tools such as drivers, pliers, and hammer).

둘째는 훈련자의 팔의 동작 관련 모션 인식이다. 훈련 시나리오에 따라 훈련자는 동작을 따라해야 한다. 망치질의 경우 훈련자가 팔을 앞뒤로 흔드는 동작을 수행함으로써, 가상작업공간의 훈련자의 캐릭터가 망치질을 한다고 인식하여 가상작업공간의 화면상에서 망치질을 수행하는 동작을 수행한다. 이런 모션들은 훈련 시나리오에 필요한 동작이 사전 설정되고, 동작 내지 모션 트래킹된 동작과의 일치 여부를 판단하는 방식으로 수행된다. The second is motion recognition of motion of the trainer's arm. Depending on the training scenario, the trainer must follow the action. In the case of hammering, the trainer performs an operation of shaking his / her arm back and forth, thereby recognizing that the character of the trainee in the virtual work space is hammered, and performing an operation of hammering on the screen of the virtual work space. These motions are performed in such a manner that the operations necessary for the training scenarios are preset, and whether they are in agreement with the motion or motion-tracked motion.

도 1을 참조하면, 본 발명의 네트워크 가상훈련 처리장치(200)는 클라이언트 모션인식/디스플레이부(210), 클라이언트 시스템 처리부(220), 훈련 시나리오 처리부(230)를 포함하여 구성된다.Referring to FIG. 1, the network virtual training apparatus 200 of the present invention includes a client motion recognition / display unit 210, a client system processing unit 220, and a training scenario processing unit 230.

도 2a는 본 발명의 클라이언트 모션인식 및 디스플레이부의 실시예의 구성도이다.2A is a configuration diagram of an embodiment of the client motion recognition and display unit of the present invention.

도 2a를 참조하면, 클라이언트 모션인식/디스플레이부(210)는 클라이언트 시스템에 연결된 클라이언트 HMD 장치 및 각 모션인식 컨트롤러를 초기화하고, 클라이언트 시스템 처리부(220)와 연계하여 각 기능을 설정하며, 클라이언트 HMD 초기화 모듈(211), 클라이언트 HMD 트랙킹 모듈(212), 클라이언트 HMD 카메라 링크 모듈(213), 디스플레이 모듈(214), 모션인식 컨트롤러 초기화 모듈(215), 모션 트랙킹 모듈(216), 모션 링크 모듈(217)로 구성된다. 2A, the client motion recognition / display unit 210 initializes a client HMD device connected to a client system and each motion recognition controller, sets each function in association with the client system processing unit 220, Module 211, a client HMD tracking module 212, a client HMD camera link module 213, a display module 214, a motion recognition controller initialization module 215, a motion tracking module 216, a motion link module 217, .

클라이언트 HMD 초기화 모듈(211)은 클라이언트 HMD 장치의 초기화를 진행한다. 클라이언트 HMD 초기화 모듈(211)은 각 클라이언트 단말에 연결된 클라이언트 HMD 장치의 연결 상태를 확인하며, 연결된 클라이언트 HMD 장치의 ID를 추출하여 해당 클라이언트 시스템의 클라이언트 HMD 장치의 ID를 클라이언트 시스템 처리부(220)로 전달한다. The client HMD initialization module 211 proceeds to initialize the client HMD device. The client HMD initialization module 211 checks the connection status of the client HMD device connected to each client terminal, extracts the ID of the connected client HMD device, and transmits the ID of the client HMD device of the client system to the client system processing module 220 do.

상기 ID값은 클라이언트 HMD 장치의 하드웨어 고유 번호로써 String(문자열) Data 형태로 클라이언트 시스템 처리부(220)로 전달된다. The ID value is transmitted to the client system processing unit 220 in the form of String data as a hardware unique number of the client HMD device.

클라이언트 시스템 처리부(220)에서는 전달된 클라이언트 HMD 장치 ID를 확인 및 저장하며, 사전 저장된 클라이언트 HMD 장치 ID 목록과 대비하여 해당 ID가 존재하지 않는 경우 또는 이를 전달 받지 못한 경우에는 디바이스의 연결이 올바르지 않은 것으로 판단하여, 경고 문자열(Alert String)을 메시지로서 디스플레이 모듈로 전달하여 훈련자가 장비 연결 여부를 다시 확인하도록 한다. The client system processing unit 220 confirms and stores the transmitted client HMD device ID, and if the corresponding ID does not exist or is not received in comparison with the pre-stored client HMD device ID list, the connection of the device is incorrect And sends a warning string (Alert String) as a message to the display module so that the trainee can check again whether the equipment is connected or not.

클라이언트 시스템 처리부(220)에서 클라이언트 HMD 장치 ID를 확인하여 연결 상태가 확인되면, 디스플레이되는 가상작업공간의 카메라의 시야각(float 형 실수값)을 세팅한다. 보통 시야각은 사람의 시야각과 유사한 90~110도의 시야각으로 세팅한다. 또한 HMD 장치의 특성에 따라, 가상작업공간 내 캐릭터마다 카메라가 두 개가 세팅되어 지며(왼쪽 눈, 오른쪽 눈) 이 경우 두 개의 카메라 간 거리값이 float형 실수값 형태로 세팅된다. 카메라 간 거리값은 사람 눈의 거리와 동일하며, 일반적으로 3~6cm 거리값으로 세팅된다. 이어 카메라의 세팅이 완료되면, 클라이언트 HMD 트랙킹 모듈(212)이 활성화되어 트랙킹(Tracking)을 준비한다. 클라이언트 시스템 처리부(220)가 이에 응답하여 연결 상태가 확인되며, 클라이언트 시스템 처리부(220)로부터 현재 가상작업공간이 디스플레이 되는 스크린 사이즈 정보 및 디스플레이될 시야각에 관한 정보를 전달 받아 Screen Size를 추출하여 저장하고, 디스플레이될 Display될 시야각을 세팅한다. 또한, HMD 장치의 왼쪽 렌즈와 오른쪽 렌즈의 사이값, 확대 값 등을 조절한다, 바람직하게는 시야각은 90도~110도의 값을 가지도록 HMD 장치를 세팅하며 세팅이 완료되면, 클라이언트 HMD 트랙킹 모듈(212)을 활성화하여 트랙킹(Tracking)을 준비한다.The client system processing unit 220 checks the client HMD device ID and sets the viewing angle (float-type real number value) of the camera in the displayed virtual work space when the connection status is confirmed. Normally, the viewing angle is set to a viewing angle of 90 to 110 degrees, which is similar to a human viewing angle. In addition, according to the characteristics of the HMD device, two cameras are set for each character in the virtual work space (left eye, right eye). In this case, the distance between two cameras is set as a float type real value. The distance between the cameras is the same as the distance of the human eye and is usually set to a distance of 3 to 6 cm. When the setting of the camera is completed, the client HMD tracking module 212 is activated and prepares for tracking. In response, the client system processing unit 220 confirms the connection status, receives screen size information for displaying the current virtual work space from the client system processing unit 220, and information on the viewing angle to be displayed, extracts and stores the screen size , The viewing angle to be displayed is set. In addition, the value between the left lens and the right lens of the HMD device, the magnification value, and the like are adjusted. Preferably, the HMD device is set to have a viewing angle of 90 degrees to 110 degrees. 212 are activated to prepare for tracking.

클라이언트 HMD 트랙킹 모듈(212)은 클라이언트 HMD 장치의 HMD 트랙킹 모듈센서로부터 인식되는 훈련자의 머리의 움직임에 따른 데이터를 연산하여 훈련자 머리의 모션 데이터로 생성하며, HMD 트랙킹 모듈센서, 예컨대 자이로센서, 중력센서 등이 내장된, HMD 장치에서 HMD 트랙킹 모듈센서로부터 이를 착용한 훈련자의 머리의 움직임 데이터 즉 X,Y,Z 축의 회전 정보(X,Y,Z 축 회전값)를 연산하여 훈련자 머리의 모션 데이터로 생성하여, 클라이언트 처리부(220)로 전달한다. The client HMD tracking module 212 computes data on the head movement of the trainee, which is recognized from the HMD tracking module sensor of the client HMD, and generates HMD tracking module sensors such as a gyro sensor, a gravity sensor (X, Y, Z axis rotation values) of the head of the trainee wearing the HMD tracking module sensor in the HMD device having the built-in HMD device, And transmits it to the client processing unit 220.

여기서 X,Y,Z 축 회전값이란, HMD 기기의 자이로 센서를 통해 Pitch(X축 회전값), Yaw(y축 회전값), Roll(z축 회전값)의 3가지 데이터를 실시간 체크하여 HMD 트랙킹 모듈(212)에서 계산되어진 값이다. 이 계산된 값은 카메라 링크 모듈(213)로 전달되고, 카메라 링크 모듈(213)에서는 3가지 회전 데이터를 카메라의 Rotation값(회전값)으로 세팅한다. 전달되는 X,Y,Z 축 회전값은 Float형 실수로 각각 -1~1 범위 값이며, 전달받은 값은 가상작업공간에서 각도 값으로 변환되어 세팅된다 즉, -1은 -180도 , +1 은 180도를 의미한다. Here, the X, Y and Z axis rotation values are obtained by real-time checking three data of Pitch (X axis rotation value), Yaw (y axis rotation value) and Roll (z axis rotation value) through the gyro sensor of the HMD device, Is a value calculated by the tracking module 212. The calculated value is transmitted to the camera link module 213, and the camera link module 213 sets the three rotation data to the rotation value (rotation value) of the camera. The transmitted X, Y, Z axis rotation values are values in the range of -1 to 1, respectively, as Float type real numbers, and the received values are converted into angular values in the virtual work space, Means 180 degrees.

클라이언트 HMD 카메라 링크 모듈(213)은 클라이언트 HMD 장치의 카메라 시야 디스플레이를 가상작업공간 내 위치한 훈련자의 캐릭터의 카메라에 링크시킨다.The client HMD camera link module 213 links the camera field of view display of the client HMD device to the camera of the trainee character located within the virtual workspace.

이러한 링크는 HMD 트랙킹 모듈(212)로부터 전달받은 X,Y,Z 축 회전값을 가상작업공간 내 훈련자 자신의 캐릭터 세팅되어져 있는 양쪽 카메라(왼쪽눈,오른쪽눈)의 Rotation값 (회전값)으로 전달하여 실시간 처리(매핑)하는 방식으로 수행된다. These links transmit the X, Y, and Z axis rotation values received from the HMD tracking module 212 to the rotation values (rotation values) of both cameras (left eye and right eye) set in the trainee's own character in the virtual work space And performs real-time processing (mapping).

이를 위하여, 클라이언트 HMD 카메라 링크 모듈(213)은 실시간으로 클라이언트 HMD 장치의 X,Y,Z 축 회전값 데이터를 전달받으며, 이 값을 통해 가상작업공간 내 카메라의 회전값(Rotation값)으로 변환하며, 가상작업공간 내 카메라의 회전값(Rotation값)에 따라 가상작업공간 내 카메라가 회전되며 이러한 카메라의 회전에 따라 디스플레이되는 화면이 실시간으로 변경된다. 캐릭터가 양쪽 카메라(눈)로 보는 시야의 화면은 디스플레이 모듈(214)로 전달되며, 3D 랜더링 엔진에 의해 디스플레이처리된다. To this end, the client HMD camera link module 213 receives the X, Y, and Z axis rotation value data of the client HMD device in real time, and converts the X, Y, and Z axis rotation value data into a rotation value (rotation value) , The camera in the virtual work space is rotated according to the rotation value (rotation value) of the camera in the virtual work space, and the screen displayed in accordance with the rotation of the camera is changed in real time. The field of view of the character viewed by both cameras (eyes) is transmitted to the display module 214 and displayed by the 3D rendering engine.

이에 따라, 가상 공간 캐릭터의 카메라 두 대가 바라보는 3D 환경은 클라이언트 HMD 장치의 두 개의 렌즈(왼쪽,오른쪽)에 디스플레이된다. 즉, 가상 공간 내 캐릭터 카메라의 x,y,z 축 회전값은 HMD 의 자이로 센서 x,y,z 축 회전값을 실시간으로 링크되어 훈련자가 HMD 장치를 착용하여 고개를 회전하면, 그 회전 값이 가상작업공간 훈련자 자신의 캐릭터의 카메라에 매핑. 캐릭터의 카메라는 두 개가 세팅된다. 하나는 HMD 장치의 왼쪽 렌즈 역할, 또 하나는 오른쪽 렌즈의 역할을 담당하게 된다. Accordingly, the 3D environment in which two cameras of the virtual space character are viewed is displayed on the two lenses (left and right) of the client HMD device. That is, if the x, y and z axis rotation values of the character camera in the virtual space are linked with the gyro sensor x, y and z axis rotation values of the HMD in real time and the trainer rotates the head by wearing the HMD device, A virtual workspace trainer maps to his character's camera. The character's camera is set to two. One serving as the left lens of the HMD device and the other as the right lens.

디스플레이 모듈(214)은 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송하여, 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자가 HMD 장치의 화면을 통하여 볼 수 있도록 한다. 3D 엔진에서 처리된 가상작업공간의 랜더링 화면이 HMD 렌즈에 디스플레이되며, 가상 공간의 캐릭터 내 카메라 2대(왼쪽, 오른쪽)의 시점 및 시각이 HMD 장치의 좌측 렌즈 및 우측 렌즈에 전송되어 디스플레이된다. The display module 214 transmits a screen rendered on the camera of the trainee character to the screen of the HMD device at the time and the time of the visual field viewed by the trainee character in the virtual work space, So that the trainer can view the trainee through the screen of the HMD device at the viewpoint and the viewpoint of the view. A rendering screen of the virtual work space processed by the 3D engine is displayed on the HMD lens, and the viewpoints and times of the two cameras (left and right) in the character in the virtual space are transmitted to the left lens and the right lens of the HMD device and displayed.

모션인식 컨트롤러 초기화 모듈(215)은 클라인언트 모션인식 장비 즉, 접촉식식 모션인식 컨트롤러와 비접촉식 모션인식 컨트롤러를 초기화하는 기능을 수행한다. 접촉식 모션인식 컨트롤러 및 비접촉식 모션인식 컨트롤러의 연결 상태를 확인하여, 연결된 모션 컨트롤러의 ID를 추출하여, 클라이언트 시스템 처리부(220)에 전달한다. 모션인식 컨트롤러 초기화 모듈(214)은 장비 고유 ID(string 문자열)를 모션인식 장비의 하드웨어로부터 전달받아 클라이언트 시스템 처리부(220)에 전달하며, 모션인식 SDK(Software Development kit)가 시스템에 설치되어 있는지 여부를 검출하여, 클라이언트 시스템 처리부(220)에게 전달한다. 클라이언트 시스템 처리부(220)는 하드웨어 연결이 올바르지 않거나(하드웨어 ID추출 불가), 시스템 내 모션인식 SDK설치가 안되어 있을 경우에는 디스플레이 모듈에 연결상태가 올바르지 않다는 경고 문자열(Alert String)을 메시지로서 디스플레이 모듈로 전달하여 훈련자가 장비 연결 여부를 다시 확인하도록 한다. 여기서, 모션인식 SDK(Software Development kit)는 각 하드웨어 제조사에서 제공하는 SDK (Window Kinect, Omni Device 등의 SDK)가 사용된다. 연결 상태가 확인되면 접촉식 모션인식 컨트롤러의 센서와 비접촉식 컨트롤러의 센서를 작동을 개시한다. The motion recognition controller initialization module 215 initializes the kinesthetic motion recognition device, that is, the contact type motion recognition controller and the noncontact motion recognition controller. Contact type motion recognition controller and the non-contact type motion recognition controller, extracts the ID of the connected motion controller, and transmits the extracted ID to the client system processing unit 220. The motion recognition controller initialization module 214 receives the device unique ID (string string) from the hardware of the motion recognition device and transfers it to the client system processing unit 220. Whether the motion recognition SDK (software development kit) And transmits it to the client system processing unit 220. If the hardware connection is not correct (the hardware ID can not be extracted) or the motion recognition SDK is not installed in the system, the client system processing unit 220 transmits a warning string (Alert String) to the display module The trainer should check whether the equipment is connected again. Here, an SDK (Window Kinect, Omni Device SDK, etc.) provided by each hardware manufacturer is used for a motion recognition SDK (software development kit). When the connection is confirmed, the sensor of the contact type motion recognition controller and the sensor of the non-contact type controller are activated.

모션 트랙킹 모듈(216)은 클라인언트 모션인식 장비로부터 훈련자의 동작에 따른 데이터를 수신하여 훈련자의 모션 데이터를 추출하여 훈련자의 동작을 트랙킹한다. 각 클라이언트 시스템에 세팅된 클라이언트 모션인식 장비들의 SDK를 통해 얻어지는 모션 데이터 즉, 각 관절의 회전값 및 위치값 등을 추출하여 훈련자의 동작 내지 모션을 트랙킹하여 모션인식을 수행한다. The motion tracking module 216 receives data according to the motion of the trainee from the kinetic motion recognition device, extracts the motion data of the trainee, and tracks the motion of the trainee. Motion data obtained through the SDK of the client motion recognition devices set in each client system, that is, the rotation value and the position value of each joint are extracted and tracked by the trainee's motion or motion to perform motion recognition.

도 2b는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)에서 인식되어 모션 매핑되는 각 관절명칭의 출력화면으로 도 2를 참조하면, 본 실시예에 있어서, 가상작업공간 캐릭터의 23개의 관절의 위치값 및 회전값을 추적하여 사용한다. 각 관절의 위치값은 x위치,y위치,z위치의 float형 실수 3개가 합쳐져 Vector3의 랜더링 엔진에서 처리되는 데이터 타입으로 전달된다. 회전값 또한 x회전값, y축회전값, z축 회전값의 float형 실수 3개가 합쳐진 Vector3 타입으로 전달된다. 한편, 모션 트래킹 모듈(216)은 항상 동작하는 것은 아니며, 마스터 시스템(300)으로부터 작업 권한을 받은 상태에서만 모션 트래킹 모듈(216)은 실행된다. 즉, 작업 권한은 훈련 데이터/메시지 수신모듈(233)로부터 전달받으며, 훈련 도중 마스터 시스템(300)으로부터 작업 권한을 받게 된 경우에 모션 트래킹 모듈(216)의 모션 트래킹이 진행되고, 트래킹된 모션 데이터 값은 모션 링크 모듈(217)로 전달된다.FIG. 2B is an output view of each joint name recognized and motion-mapped by the client motion recognition / display unit 210 according to an exemplary embodiment of the present invention. Referring to FIG. 2, The position and rotation values of 23 joints are tracked and used. The position value of each joint is the sum of three float-type real numbers at x position, y position, and z position, and is transferred to the data type processed by Vector3's rendering engine. The rotation value is also transmitted as a Vector3 type in which three float-type real numbers of the x rotation value, the y-axis rotation value, and the z-axis rotation value are combined. On the other hand, the motion tracking module 216 does not always operate, and the motion tracking module 216 is executed only when the task authorization is received from the master system 300. That is, the task right is received from the training data / message receiving module 233, and when the task right is received from the master system 300 during training, the motion tracking of the motion tracking module 216 proceeds, The value is passed to the motion link module 217.

모션 링크 모듈(217)은 모션인식 장비의 모션인식에 의하여 얻어진 모션 데이터 즉, 관절 데이터와 가상작업공간 캐릭터의 관절 데이터에 링크시키는 기능을 수행한다. 모션 트랙킹 모듈(216)에서 추적된 훈련자의 모션 데이터 즉, 23개의 관절 모션 데이터는 가상작업공간 해당 훈련자의 캐릭터의 bone(biped Animation)의 회전값(Vector3)과 위치값(Vector3)에 매핑된다. 즉, 가상작업공간 캐릭터의 관절 데이터에 연결해주는 작업을 진행되어, 이에 따라 훈련자의 움직임이 실시간으로 가상작업공간의 훈련자의 캐릭터에 매핑된다. 이를 위하여 모션 링크 모듈(217)은 모션인식 컨트롤러 본 실시예의 경우 비접촉식 모션인식 컨트롤러의 센서를 통해 훈련자의 동작 내지 모션인식을 통하여 얻어진 모션 데이터 즉, 각 관절의 회전 값 및 위치값을 클라이언트 시스템 처리부(220)로 전달하며, 훈련도중 모션을 비교해야 될 상황이 발생되면, 클라이언트 시스템 처리부(220)에서 모션 링크 모듈(216)로 받은 모션 데이터를 활용하여, 사전 설정되어 저장된 동작 내지 이를 표시하는 동작 데이터와의 일치/불일치 여부를 판단하게 된다. The motion link module 217 links the motion data obtained by the motion recognition of the motion recognition device, that is, the joint data, with the joint data of the virtual workspace character. The motion data of the trainee traced in the motion tracking module 216, that is, the 23 joint motion data, is mapped to the rotation value (Vector3) and the position value (Vector3) of the bone of the character of the virtual work space corresponding trainee. That is, work is performed to connect the joint work data of the virtual work space character so that the movement of the trainee is mapped in real time to the trainee character of the virtual work space. For this, the motion link module 217 receives the motion data obtained through the motion or motion recognition of the trainee through the sensor of the non-contact type motion recognition controller in the case of the motion recognition controller in this embodiment, that is, the rotation value and the position value of each joint, 220, and when a situation in which the motion is to be compared during the training occurs, the client system processing unit 220 uses the motion data received from the motion link module 216, / RTI > < RTI ID = 0.0 > and / or < / RTI >

도 3은 본 발명의 일실시예에 따른 클라이언트 시스템 처리부(220)의 구성도이다.3 is a configuration diagram of a client system processing unit 220 according to an embodiment of the present invention.

도 3을 참조하면, 클라이언트 시스템 처리부(220)는 마스터 시스템(300)과 네트워크 접속을 수행하며 3D 컨텐츠로 구성된 훈련 콘텐츠를 로딩하고, 클라이언트 모션인식 장비로부터 인식된 모션 데이터를 수신하여 처리한다. 즉, 모션 링크 모듈(217) 및 HMD 카메라 링크 모듈(213)로부터 전달받은 비접촉식 모션 컨트롤러와 접촉식 컨트롤러로부터 인식된 모션 데이터를 수신하여 처리하며, 클라이언트 시스템에 내장된 3D 가상환경 로딩 및 훈련 시스템의 준비/처리 작업, 마스터 시스템과의 네트워크 연결 수행을 담당한다. Referring to FIG. 3, the client system processing unit 220 performs network connection with the master system 300, loads training content composed of 3D contents, and receives and processes motion data recognized from the client motion recognition apparatus. That is, the non-contact type motion controller received from the motion link module 217 and the HMD camera link module 213 receives and processes the motion data recognized from the contact type controller, and the 3D virtual environment loading and training system Preparation / processing tasks, and network connection with the master system.

즉. 클라이언트 시스템 처리부(220)는 클라이언트의 전반적인 프로세스 흐름을 관리/제어하는 역할을 수행하게 된다. 마스터 시스템과의 네트워크 연결이 완료되면, 마스터 시스템(300)과의 데이터 통신(Data 수신, Data 송신)을 담당한다. In other words. The client system processing unit 220 manages / controls the overall process flow of the client. (Data reception, data transmission) with the master system 300 when the network connection with the master system is completed.

마스터 시스템(300)과 송/수신하는 데이터로는 작업 턴 가능 변수 데이터(Bool Type), 채팅 메시지 데이터(String Type), 작업 시간(float Type) 데이터, 훈련 결과 데이터(Array Type)등이 포함된다. Data to be transmitted / received to / from the master system 300 includes work turnable variable data (Bool Type), chat message data (String Type), work time float type data, and training result data (Array Type) .

도 3을 참조하면,클라이언트 시스템 처리부(220)은 시스템 초기화 모듈(221), 네트워크 세팅 모듈(222), 시스템 초기화 모듈(221), 네트워크 세팅 모듈(222), 3D 콘텐츠 로딩 모듈(223), 모션 프로세스 모듈(224), 종료 모듈(225)로 구성된다.3, the client system processing unit 220 includes a system initialization module 221, a network setting module 222, a system initialization module 221, a network setting module 222, a 3D content loading module 223, A process module 224, and a termination module 225.

시스템 초기화 모듈(221)은 각 클라이언트 시스템에서 3D 엔진 및 필요 프로그램을 초기화하며, 가상훈련 시스템의 필요 프로그램 중 3D 엔진 초기화 및 클라이언트 프로그램의 초기화 즉, 클라이언트 시스템(100)을 구성하는 프로그램 형태의 본 발명의 네트워크 가상훈련 처리장치(200)의 초기화를 진행한다. The system initialization module 221 initializes the 3D engine and the necessary program in each client system, initializes the 3D engine among the necessary programs of the virtual training system and initializes the client program, that is, The network virtual training apparatus 200 of FIG.

시스템 초기화 모듈(221)은 프로그램의 초기화로서 3D 엔진 구동에 필요한 그래픽 드라이버를 윈도우 시스템으로부터 전달받아, 프로그램 구동에 필요한 3D 엔진(Engine) 초기화 작업이 진행하며, 그래픽 드라이버가 없거나 시스템 불안정한 상태에서 프로그램이 구동할 수 없을 경우 경고창을 제공하여, 사용자에게 오류 메시지를 전달한다. 3D 엔진(Engine) 초기화 과정은 Vertex를 통한 Mesh 데이터 초기화, 입출력 시스템 준비, 랜더링 엔진 초기화 등의 과정을 포함하여 수행되며, 3D 엔진 초기화 과정을 거쳐 클라이언트 프로그램이 구동되면, 클라이언트 시스템에 연결되어 있는 하드웨어 장비(클라이언트 HMD 장치 및 클라이언트 모션인식장비)의 ID를 확인하고 연결한다. 하드웨어 장비의 ID는 각각, 클라이언트 HMD 초기화 모듈(211), 모션인식 컨트롤러 초기화 모듈(214)로부터 수신한다. The system initialization module 221 receives the graphic driver necessary for driving the 3D engine from the window system as the initialization of the program and proceeds with the 3D engine initialization operation necessary for the program operation. If there is no graphics driver or the system is unstable, Provides an alert window when it can not run, and sends an error message to the user. The initialization process of the 3D engine is performed by including the process of initializing the mesh data through the vertex, preparing the input / output system, and initializing the rendering engine. When the client program is activated through the 3D engine initialization process, Confirm the ID of the device (client HMD device and client motion recognition device) and connect. The IDs of the hardware devices are received from the client HMD initialization module 211 and the motion recognition controller initialization module 214, respectively.

네트워크 세팅 모듈(222)은 훈련자로부터 입력된 정보에 따라 네트워크 접속 환경을 세팅하고 이에 따라 네트워크 접속을 진행하며, 네트워크 접속의 시작/완료를 담당한다. 네트워크의 접속을 위한 세팅은 훈련자에게 이를 위한 GUI 화면을 제공하여 정보를 입력받는 방식으로 수행된다. The network setting module 222 sets the network connection environment in accordance with the information input from the trainee, thereby performing the network connection, and is responsible for starting / completing the network connection. The setting for connection to the network is performed in a manner that a trainee provides a GUI screen for inputting information.

훈련자는 GUI 화면을 통해 접속할 IP, 접속 Port, 사용자 ID 의 데이터를 입력하여, 입력 버튼UI 예컨대, "Join" 버튼을 누르면 네트워크 접속을 시도하고, 해당 데이터를 마스터 시스템에게 전송한다. 접속할 IP, 접속 Port번호로 마스터 시스템(300)이 구동된 상태인 경우 접속에 성공하게 되고, 3D 콘텐츠 로딩 모듈(233)이 활성화되어 3D 콘텐츠 로딩이 진행된다. 입력한 IP 및 Port번호가 서버 즉, 마스터 시스템(300)에서 응답이 없을 경우, 일정시간 예컨대 30초 정도 대기 후 접속을 중지하고, 사용자로부터 재입력을 요구한다. 마스터 시스템(300)에서 설정한 접속 가능 인원에 따라, 훈련자의 마스터 시스템(300)으로의 접근이 제한될 수 있다. The trainer inputs data of the IP, connection port and user ID to be connected through the GUI screen and tries to connect to the network by pressing the input button UI, for example, "Join" button, and transmits the data to the master system. When the master system 300 is driven by the IP to be connected and the connection port number, the connection is successful and the 3D content loading module 233 is activated and the 3D content is loaded. If there is no response from the server (i.e., the master system 300), the input IP and port number are waited for a predetermined time, for example, about 30 seconds, and then the connection is stopped and the user is requested to re-input. Access to the master system 300 of the trainee may be restricted depending on the number of connectable persons set by the master system 300. [

3D 콘텐츠 로딩 모듈(223)은 클라이언트 프로그램 내 탑재된 3D 가상훈련 콘텐츠를 로딩하는 모듈이다. 3D 가상훈련 콘텐츠는 각 클라이언트 시스템(100)의 클라이언트 프로그램 내에 데이터베이스(미도시) 형태로 구성되어 저장된다. The 3D content loading module 223 is a module for loading 3D virtual training content loaded in the client program. The 3D virtual training contents are configured and stored in a database (not shown) in the client program of each client system 100.

네트워크 세팅 모듈(223)을 통해 마스터 시스템(300)으로 접속이 성공하게 되면, 클라이언트 프로그램 내 구성되어 있는 3D 콘텐츠가 로딩된다. 3D 콘텐츠는 3D 형상물. 자세하게는 작업주변환경, 작업공구, 작업 대상물 등으로 구성되어 있으며. GUI환경 예컨대, 버튼UI, 채팅창UI, 작업턴 관리UI, Timer UI, 모션 표시UI 등으로 구성되어 있다. 또한, 3D 콘텐츠 안에는 훈련시나리오를 진행하기 위해 필요한 시나리오 구성(이벤트 스크립트 , 충돌처리 스크립트, 입출력 스크립트)을 포함한다. 이 가상작업공간은 훈련 시나리오를 탑재하고 있어, 캐릭터가 훈련을 진행할 때마다 반응하는 인터렉션 구조로 되어 있다. 훈련 내용 중 훈련 과정에 대한 부분은 훈련 시나리오 처리부(230)과 관련하여 상세히 설명한다. When the connection to the master system 300 is successful through the network setting module 223, the 3D content configured in the client program is loaded. 3D contents are 3D objects. In detail, it consists of work environment, working tools, work objects and so on. GUI environment such as a button UI, a chat window UI, a work turn management UI, a Timer UI, and a motion display UI. In addition, the 3D content includes a scenario configuration (an event script, a conflict processing script, and an input / output script) necessary for proceeding with a training scenario. This virtual workspace is equipped with training scenarios, and it has an interaction structure that responds whenever the character performs training. The portion of the training course, which is related to the training course, is described in detail with respect to the training scenario processing unit 230.

모션 프로세스 모듈(224)은 사전 설정된 훈련자에게 요구되는 작업의 동작과 모션 데이터로부터 인식되는 훈련자의 동작을 비교하여 모션의 일치 여부를 판단하며, 각 클라이언트 시스템에 연결되어 있는 모션 링크 모듈(217)로부터 모션 데이터를 수신하여, 훈련 시나리오에 필요한 모션을 비교/처리하는 기능을 수행한다. The motion process module 224 compares motion of the trainee, which is recognized by the motion data, with motion of the motion requested by the predetermined trainee, Receives the motion data, and performs a function of comparing / processing the motion required for the training scenario.

모션 프로세스 모듈(224)은 판단된 모션의 일치 여부에 기초하여 훈련자의 동작에 대한 모션 정확도를 추출한다, 구체적으로는 클라이언트마다 연결되어 있는 비접촉식 모션 컨트롤러와 접촉식 컨트롤러로부터 각 관절의 회전값, 위치값 Data를 전달받는다. 또한 훈련시나리오에서 동작 요청이 오면 해당 동작과 전달받는 Data와의 비교작업을 통해 모션의 일치 여부를 해당 모듈에서 판단/처리한다. 모션의 일치/불일치 정확도 계산 과정은 아래와 같다. The motion process module 224 extracts the motion accuracy of the trainee's motion based on whether or not the determined motion is matched. Specifically, the motion process module 224 extracts the motion accuracy of each joint from the non-contact motion controller and the contact- Value data is received. Also, when an operation request is received in the training scenario, the corresponding module judges / processes whether or not the motion is matched by comparing the operation with the data to be received. The process of calculating the motion / mismatch accuracy of the motion is as follows.

훈련자가 훈련 과정 중 필요한 모션은 클라이언트 프로그램 내 Animation 형태로 미리 제작되어 있다. 훈련 시스템 진행 중 모션 입력 단계에서 프로그램 내 이미 제작되어 있는 Animation 모션 데이터와 모션링크모듈(217)로부터 실시간 전달받는 모션 데이터를 비교하게 된다. 트래킹되는 관절의 위치값과 회전값을 미리 제작되어진 Animation의 위치값과 회전값을 비교하며 정확도를 측정한다. Kinect 모션인식의 경우, 빛이나 각도에 따라 오차범위가 발생할 수 있다. 따라서 정확한 위치값 계산이 아닌 큰 동작의 범위를 인식하는 형태로 계산한다. 오차 범위는 20cm 이내로 한다. 모션 비교를 통해 진행한 시간(float type), 모션 정확도(percent type) 등 훈련에 대한 결과를 데이터 형태로 추출하게 되고, 추출된 데이터는 훈련 결과 정보 생성 모듈(235)을 통해 훈련 결과 정보에 포함되어 마스터 시스템(300)에게 전달된다. The required motion during the trainer training process is preformed in animation form in the client program. In the motion input step during the training system, the animation motion data already prepared in the program is compared with the motion data received from the motion link module 217 in real time. The position and rotation values of the joint to be tracked are compared with the position and rotation values of the previously created animation and the accuracy is measured. In case of Kinect motion recognition, error range may occur depending on light or angle. Therefore, it is calculated in a form that recognizes the range of large motion, not the accurate position value calculation. The error range should be within 20cm. The result of training such as a float type, a percent type, and the like, which is performed through a motion comparison, is extracted in data form, and the extracted data is included in the training result information through the training result information generation module 235 And transmitted to the master system 300.

종료 모듈(225)은 훈련 과정의 완료시 네트워크 접속을 해제하고, 로딩된 콘텐츠를 메모리에서 지운 후, 프로그램을 종료하는 기능을 수행한다.The termination module 225 terminates the network connection upon completion of the training process, clears the loaded content from the memory, and then terminates the program.

도 4는 본 발명의 일실시예에 따른 훈련 시나리오 처리부(230)의 구성도이다.4 is a configuration diagram of a training scenario processing unit 230 according to an embodiment of the present invention.

도 4를 참조하면, 훈련 시나리오 처리부(230)는 3D 컨텐츠로 구성된 훈련 콘텐츠를 초기화하고 가상작업공간 내 훈련자의 캐릭터를 생성하여 로딩하며, 가상작업공간에서 훈련 내용인 작업이 진행되도록 제어하며, 훈련자가 진행해야 될 훈련과정의 일련의 프로세스화된 모듈로써, 3D콘텐츠 로딩 모듈(223)로부터 로딩되어 생성된 3D 가상 콘텐츠를 훈련진행에 필요한 순서로 초기화하고, 마스터 시스템(300)으로부터 훈련자의 가상작업공간 내의 캐릭터를 전달받으며, 훈련 진행을 관장/제어/처리하는 작업을 한다. 훈련 콘텐츠 초기화 모듈(231), 훈련자 캐릭터 로딩 모듈(232), 훈련 데이터/메시지 수신 모듈(233), 이벤트 프로세싱 모듈(234), 훈련 결과 정보 생성 모듈(235)로 구성된다. Referring to FIG. 4, the training scenario processing unit 230 initializes training contents composed of 3D contents, creates and loads a character of a trainee in a virtual work space, controls work to be performed as a training content in a virtual work space, The 3D virtual content loaded from the 3D content loading module 223 is initialized in the order necessary for the training progress and the virtual virtual content is loaded from the master system 300 to the virtual work It receives characters in space, and supervises / controls / processes the progress of the training. A training content initialization module 231, a trainer character loading module 232, a training data / message receiving module 233, an event processing module 234, and a training result information generating module 235.

훈련 콘텐츠 초기화 모듈(231)은 가상 공간 내 3D 객체 모음으로 이루어진 훈련 콘텐츠를 초기화하는 모듈이다. 훈련 콘텐츠는 3D로 구현된 가상의 공간이며, 그 안에 작업대상물, 작업공구 등 3D로 모델링된 객체들이 구성된다. (배치시 상세설명) 훈련 컨텐츠의 초기화로서, 훈련 콘텐츠 초기화 모듈(231)은 3D 콘텐츠 로딩 모듈(223)로부터 로딩되어 생성된 3D 가상 콘텐츠에 Light 객체를 세팅하여, 질감(텍스쳐)를 랜더링 될 수 있도록 준비하며, 훈련 과정에 필요한 충돌처리 객체에 콜리더(Collider)를 세팅한다. 여기서, 콜리더는 훈련 중 훈련자가 이동경로의 범위를 벗어나 이동하는 경우, 작업 대상이 아닌 객체를 터치하는 경우 등 이를 불가능 하도록 충돌처리를 수행하는 Unity3d에서 제공하는 보이지 않는 객체(오브젝트)이다. 또한 캐릭터가 바닥을 뚫고 내려가지 않고 이동할 수 있도록 바닥 객체에 콜리더를 세팅한다. 훈련중 움직이는 애니메이션이 필요한 객체의 경우, 훈련 콘텐츠 초기화 모듈(231)에서 필요 애니메이션을 세팅하는 작업도 진행된다. The training content initialization module 231 is a module for initializing training content composed of a collection of 3D objects in a virtual space. The training content is a virtual space implemented in 3D, and objects modeled in 3D such as work objects and work tools are constructed therein. (Details in Layout) As the initialization of the training content, the training content initialization module 231 sets the Light object to the 3D virtual content generated by loading from the 3D content loading module 223, so that the texture can be rendered , And sets a call reader (Collider) on the collision processing object necessary for the training process. Here, the call reader is an invisible object (object) provided by Unity3d that performs collision processing such that, when a trainee moves beyond the range of movement during training, touches an object that is not a work object, and so on. Also set a call reader on the floor object so that the character can move without going down the floor. In the case of an object requiring moving animation during training, setting of necessary animation is also performed in the training content initialization module 231. [

훈련자 캐릭터 로딩 모듈(232)은 초기화 모듈(231)에서 초기화된 가상작업공간 내 마스터 시스템(300)으로부터 캐릭터를 부여받아 생성하는 모듈이다. 이를 위해 통해 마스터 시스템(300)은 훈련자에게 할당된 캐릭터 객체 및 가상공간내 위치정보를 전송하며, 훈련자 캐릭터 로딩 모듈(232)은 마스터 시스템으로부터 전달된 훈련자에게 할당된 캐릭터 객체 및 상기 캐릭터 객체의 가상작업공간 내 위치정보에 따라 상기 캐릭터 객체를 가상작업공간 내 특정 위치에 표시되도록 로딩한다.The trainer character loading module 232 is a module for receiving a character from the master system 300 in the virtual work space initialized in the initialization module 231 and generating the character. For this, the master system 300 transmits the character object allocated to the trainee and the position information in the virtual space, and the trainer character loading module 232 transmits the character object allocated to the trainee transmitted from the master system and the virtual And loads the character object so as to be displayed at a specific position in the virtual work space according to position information in the work space.

구체적으로, 마스터 시스템(300)과 네트워크 접속이 클라이언트 시스템 처리부를 통하여 이루어지면, 마스터 시스템(300)에서의 훈련 관리자의 선택입력에 따라, 훈련자에게 할당되는 캐릭터와 가상작업공간에서의 위치가 설정되어 그 위치값이 클라이언트 시스템으로 전송하며, 로딩되는 가상작업공간 내 캐릭터 위치는 마스터 시스템(300)에서 설정된 위치값(Vector3 type)으로 초기 설정된다. 이는 마스터 시스템(300)에서 훈련 관리자가 정해진 각 훈련자의 훈련 역할에 따라 그 초기 위치를 설정해야되기 때문이며, 캐릭터는 초기 위치를 마스터 시스템에서 정한 위치로 로딩된다. 훈련자의 캐릭터가 생성되는 위치는 주로 작업대상물 주위 위치로 설정된다. 훈련자의 캐릭터는 앞서 살핀바와 같이 실제 사람과 동일한 관절 구조로 되어 있으며, 3D Max의 Biped Animation 구조로 설계되어진 모델 형상 및 애니메이션을 가지고 있다. 캐릭터의 애니메이션은 외부 장비(HMD, Kinect, Omni)등의 모션 컨트롤러와 연동이 가능한 23개의 관절 구조로 제작되어져 있다.Specifically, when the network connection with the master system 300 is performed through the client system processing unit, the character assigned to the trainee and the position in the virtual work space are set according to the selection input of the training manager in the master system 300 The position value is transmitted to the client system, and the character position in the loaded virtual workspace is initially set to the position value (Vector3 type) set in the master system 300. [ This is because, in the master system 300, the training manager has to set its initial position according to the training role of each trainee, and the character is loaded to the position determined in the master system by the initial position. The position where the character of the trainee is generated is mainly set to a position around the workpiece. The trainer's character has the same joint structure as the actual person, as we have already seen, and has the model shape and animation designed with 3D Max Biped Animation structure. The animation of the character is made up of 23 joints that can be linked with motion controllers such as external equipment (HMD, Kinect, Omni).

훈련 데이터/메시지 수신 모듈(233)은 마스터 시스템으로부터 임무에 관한 정보 및 작업 권한에 관한 데이터를 수신한다, 훈련자가 훈련 작업환경에 들어와 마스터 시스템으로부터 임무를 지시받고 작업 권한에 관한 데이터를 수신하게 된다. The training data / message receiving module 233 receives information on tasks and data on task privileges from the master system. The trainer enters the training work environment and is instructed by the master system to receive tasks and receive data regarding task privileges .

임무에 관한 정보의 수신은 채팅창을 통하여 문자열(string text)의 메시지 형태로 제공받으며, 작업 권한은 true 또는 false값을 포함하는 마스터 시스템으로부터 작업 권한에 관한 데이터(bool type)로서 수신한다. true 값을 수신하였을 때, 해당 훈련자가 작업 권한을 가진 것으로 판단한다. 마스터 시스템(300)으로부터 작업 권한 에 관한 데이터로 true를 수신하게 되면, 이벤트 프로세싱 모듈(234)이 활성화되어 진행된다. 작업 권한에 관한 데이터로 false를 수신한 상태에서는 다른 훈련자가 이벤트 프로세싱 모듈(234)의 활성화를 통해 작업을 진행하는 것을, 자신의 HDM 디스플레이를 통해 모니터링하도록 한다. 즉, 각 클라이언트 시스템에 있어서, 수신된 작업 권한에 관한 데이터가 true일 경우는 모션 트래킹과 HMD 트래킹이 동시에 가능하며, 수신된 작업 권한에 관한 데이터가 false일 경우는 HMD 트랙킹만 가능하게 설정된다.The task information is received as a string text message through the chat window, and the task right is received as data (bool type) about the task authorization from the master system including true or false values. When a value of true is received, it is determined that the corresponding trainee has authority to work. When true is received from the master system 300 regarding the task authorization, the event processing module 234 is activated and proceeds. In the case of receiving false as the data regarding the task authority, the other trainee monitors through the HDM display that the task proceeds through the activation of the event processing module 234. That is, in each client system, motion tracking and HMD tracking can be performed at the same time when the data regarding the received task right is true, and only HMD tracking is set to be possible when the data regarding the received task right is false.

이벤트 프로세싱 모듈(234)은 가상작업공간에서 훈련자가 훈련 내용인 작업을 진행하도록 하는 모듈로, 훈련 데이터/메시지 수신모듈(233)에서 마스터 시스템(300)으로부터 작업 권한에 데이터로 true값을 받게 되면 진행되는 모듈이다. 훈련 작업의 시작은 훈련자의 이동부터 시작하며, 훈련자는 바닥의 이동경로를 따라 이동하게 된다. 이동은 접촉식 컨트롤러를 사용하여, 바닥을 발로 구르게 되고, 접촉식 모션 컨트롤러의 허리 밴드를 사용하여, 좌우로 캐릭터를 회전하게 된다. 이때 보이는 가상작업공간의 작업환경은 HMD의 카메라 렌즈를 통해 실시간으로 랜더링 처리되어 보여지도록 한다. 훈련 지역에 도착하게 되면, 사용자는 공구를 사용할 수 있으며, 공구는 가상작업공간 내 작업 대상물 주위에 존재하며, 작업공구의 획득은 쥐는 동작 즉, 손의 그립 모션인식을 통해 수행한다. 그립 모션인식은 화면상에 공구가 있을 경우 손을 펴고 있다가 손을 움켜졌을 때 손의 위치와 장비의 위치가 일치하면(x,y축의 2D 좌표계비교) 손에 장비를 잡은 것으로 인식하는 방식으로 수행된다. 공구가 그립되면, 공구의 위치좌표 데이터는 훈련자의 캐릭터의 손의 자식 객체로 세팅되어, 캐릭터 손이 움직일 때마다 같이 움직이게 된다. 공구 획득을 하면, 훈련자가 가상작업공간에서 필요한 훈련 제스쳐를 마스터 시스템으로부터 수신되는 메시지 형태로 제시받게 된다. 훈련 제스쳐는 도 7d 왼쪽 하단의 2D 애니메이션으로 형태로 표현되며, 훈련자는 작업 대상물 앞에서 제시된 훈련 제스쳐와 동일한 형태로 작업을 진행한다. 모션인식 처리는 클라이언트 시스템의 모션 프로세스 모듈(234)를 통해 계산되어 진다.The event processing module 234 is a module for allowing a trainee to perform a task in a virtual work space. When the training data / message receiving module 233 receives a true value as data from the master system 300 This is the module in progress. The start of the training work starts with the movement of the trainee, and the trainee moves along the movement path of the floor. The movement is made by using the contact-type controller to roll the floor, and the character is rotated to the left and right using the waistband of the contact-type motion controller. At this time, the working environment of the virtual workspace is rendered in real time through the camera lens of the HMD. Upon reaching the training area, the user can use the tool, the tool is present around the workpiece in the virtual workspace, and the acquisition of the work tool is performed by grasping motion, i.e., gripping motion recognition of the hand. Grip motion recognition means that when the hand is extended when the tool is on the screen, when the position of the hand matches the position of the equipment (2D coordinate system of the x and y axes) when the hand is grasped, . When the tool is gripped, the tool's position coordinate data is set as the child object of the trainee's character's hand, and moves as the character's hand moves. Once the tool is acquired, the trainee will be presented with the required training gesture in the virtual workspace in the form of a message received from the master system. The training gesture is represented in the form of a 2D animation at the bottom left of Figure 7d, and the trainer performs the task in the same manner as the training gesture presented before the workpiece. The motion recognition process is calculated through the motion process module 234 of the client system.

훈련 결과 정보 생성 모듈(235)은 훈련에 대한 결과를 데이터 형태로 생성하여 마스터 시스템에게 전달하는 기능을 수행하며, 모션 정확도와 및 작업 시간을 포함하여 훈련에 대한 결과를 데이터 형태로 생성한다. 모션 프로세스 모듈(224)로부터 생성된 훈련에 대한 결과를 데이터 즉, 진행한 시간, 모션 정확도 데이터는 마스터 시스템에게 전달된다. 전송이 완료되면 서버 시스템으로부터 작업 권한에 관한 데이터로 false 값을 전달받게 되어, 다음 훈련자가 이벤트 프로세싱 모듈(234)을 진행하는 것을 지켜본다. The training result information generation module 235 generates data in the form of data for training and transmits the data to the master system. The training result information generation module 235 generates data for the training results including the motion accuracy and the working time. Data on the result of the training generated from the motion process module 224, that is, the time that has elapsed, and the motion accuracy data are transmitted to the master system. Upon completion of the transfer, a false value is received from the server system as data regarding the task authority, and the next trainee watches the event processing module 234 to proceed.

도 5는 본 발명의 일실시예에 따른 마스터 시스템(300)의 구성도이다.5 is a block diagram of a master system 300 according to an embodiment of the present invention.

도 5를 참조하면, 마스터 시스템(300)은 사용자 클라이언트가 다중접속을 통하여 가상작업공간에서 협력훈련이 가능하도록 운용하는 서버의 역할을 수행한다. 훈련의 시작과 끝을 정의하며, 작업에 대한 업무 지시 및 작업 권한을 컨트롤하며, 훈련이 진행되는 훈련상황을 모니터링하고, 모니터링된 훈련 과정을 통해 훈련자의 가상작업공간에서의 훈련 내지 작업에 대한 평가를 진행하도록 하는 역할을 수행한다.Referring to FIG. 5, the master system 300 serves as a server for allowing a user client to perform cooperative training in a virtual work space through multiple connections. It defines the beginning and end of training, controlling the work order and work authority for the work, monitoring the training situation in which the training is conducted, and evaluating the training or work in the virtual work space of the trainee through the monitored training course And the like.

한편,본 발명에서의 네트워크 구성은 턴제 방식의 네트워크를 기본으로 수형된다. 즉, 한 명의 훈련자(Client)가 작업에 대한 권한을 가지고 있을 경우, 다른 훈련자는 권한을 가지고 있는 훈련자가 수행하는 작업을 모니터링만 하게 된다. 즉 사용 권한이 있는 훈련자만 인터렉티브 작업을 진행할 수 있다. 이러한 네트워크 구성은 위험한 작업의 시나리오일 경우, 동시 작업보다 개인별 단계식 절차가 중요하기 때문에 필요하다. 이를 위하여, 접속된 훈련자의 클라이언트 시스템으로 작업 권한에 관한 데이터인 플레이 턴 데이터(true/false)를 전송하여, 각 클라이언트 시스템의 이벤트 프로세싱 모듈(234)에서 이에 따라 작업의 진행 또는 모니터링하도록 훈련자의 턴을 분배하는 기능을 수행한다. 또한, 마스터 시스템(300)은 각 단계별 훈련 진행시 훈련 관리자(Master)가 훈련자(Client)가 작업하는 동안 평가표에 점수를 입력할 수 있는 기능을 제공하며, 작업 상황을 실시간 모니터링할 수 있도록 한다. 평가는 훈련자가 진행하는 동작, 절차, 시간의 적정성을 판단하도록 하여 진행한다. 또한, 채팅시스템 또는 음성통신을 통해 각 클라이언트에게 상황전달, 명령 등의 메시지 형태로 전달할 수 있도록 메시지 또는 음성을 훈련 관리자로부터 입력받는 기능을 수행하도록 구성될 수 있다.On the other hand, the network configuration in the present invention is based on a turn-based network. In other words, if one client is authorized to work, the other trainee only monitors the work performed by the trained trainee. In other words, only the trainee who has the use authority can proceed the interactive work. This network configuration is necessary because it is more important for individual step-by-step procedures than for concurrent work if it is a risky task scenario. To this end, it is necessary to transmit playtone data (true / false), which is data relating to the task authority, to the client system of the connected trainee so that the event processing module 234 of each client system As shown in FIG. In addition, the master system 300 provides a function for the master to input a score into the evaluation table while the client is working, and enables the monitoring of the work situation in real time. The evaluation is conducted by judging the appropriateness of the actions, procedures, and time that the trainee is going through. In addition, it may be configured to perform a function of receiving a message or voice from a training manager so that the message can be delivered to each client through a chat system or voice communication in the form of a message such as a status delivery command.

이를 위하여, 마스터 시스템(300)은 훈련 환경 초기화/설정부(310), 훈련 제어 데이터 전송부(320), 훈련 성과 수신/평가부(330)를 포함하여 구성된다. For this, the master system 300 includes a training environment initialization / setting unit 310, a training control data transmitting unit 320, and a training performance receiving / evaluating unit 330.

훈련 환경 초기화/설정부(310)는 마스터 시스템(300)(또는 마스터 시스템이 설치되는 서버)의 IP 및 Port 번호를 세팅하여, 훈련자 클라이언트 시스템의 접속을 대기하며, 접속 완료 시 가상작업공간 내 훈련자 캐릭터를 배분/위치시켜주는 역할을 수행한다. 특정 훈련자가 자신의 클라이언트 시스템의 네트워크 가상훈련 처리장치(200)를 통하여 마스터 시스템에서 설정해놓은 IP 및 Port 번호로 접속하게 되면, 훈련 환경 초기화/설정부(310)에서 해당 훈련자의 가상작업공간 내 위치값을 해당 훈련자의 클라이언트 시스템의 훈련자 캐릭터 로딩 모듈(232)로 전송하게 된다. 상기 위치값은 Vector3의 type으로 가상 공간안의 x,y,z의 위치 값으로 구성되어 있으며, 훈련 내용에 따라 미리저장되어 자동 설정되거나 또는 훈련 관리자의 선택입력에 따라 설정될 수 있다. The training environment initialization / setting unit 310 sets the IP and port number of the master system 300 (or the server on which the master system is installed), waits for the connection of the trainee client system, It distributes / positions character. When a specific trainer accesses the IP network and the port number set in the master system through the network virtual training processing apparatus 200 of his client system, the training environment initialization / setting unit 310 sets the position Value to the trainee character loading module 232 of the client system of the corresponding trainee. The position value is composed of position values of x, y, and z in the virtual space as a type of Vector 3, and may be stored in advance according to the contents of the training, or may be automatically set or set according to the selection input of the training manager.

또한 훈련 환경 초기화/설정부(310)는 클라이언트의 캐릭터 로딩 모듈(232)로 마스터 시스템 내 미리 제작되어 저장된 캐릭터 객체(3DObject type)를 전송하며, 훈련 내용에 따라 미리저장되어 자동 설정되거나 또는 훈련 관리자의 선택입력에 따라 선택될 수 있다. Also, the training environment initialization / setting unit 310 transmits a character object (3DObject type) prepared and stored in advance in the master system to the character loading module 232 of the client, As shown in FIG.

아울러, 훈련 환경 초기화/설정부(310)는 캐릭터의 위치값과 캐릭터를 전달받은 클라이언트 시스템의 훈련 데이터/메시지 수신 모듈(233)로 작업 임무를 송신하는 역할을 수행한다. 작업 임무는 기본적으로 채팅시스템(text 형태)을 통해 전달하며, 자세한 설명이 필요시 이미지(2DImage type) 형태로 전송될 수도 있다. In addition, the training environment initialization / setting unit 310 transmits a work task to the training data / message receiving module 233 of the client system that receives the character position value and the character. Work tasks are basically delivered via a chat system (text format), and can be sent in the form of a 2DImage type if necessary.

훈련 제어 데이터 전송부(320)는 훈련 관리자의 입력을 수신하여 접속된 훈련자의 클라이언트 시스템의 네트워크 가상훈련 처리장치(200)로 가상작업공간 내 훈련시 필요한 훈련 데이터 및 메시지를 전송하는 기능을 수행하며, 작업 간 플레이턴을 배분해주는 기능을 수행한다. 훈련자에게 작업 권한에 관한 데이터인 플레이 턴 데이터(true/false)를 전송하여, 이벤트 프로세싱 모듈(234)를 진행/관찰 하도록 턴 분배 기능을 수행한다. 실시간 채팅 및 음성 대화 시스템 또한 해당 모듈에서 송신/수신 처리한다. The training control data transmitting unit 320 receives the input of the training manager and transmits the training data and messages required for training in the virtual work space to the network virtual training processing apparatus 200 of the client system of the connected trainee , And distributes a play turn among the operations. And transmits play data (true / false), which is data on the task authority, to the trainee to perform a turn distribution function to advance / observe the event processing module 234. The real-time chatting and voice chatting system also performs transmission / reception processing in the corresponding module.

훈련 성과 수신/평가부(330)는 접속한 훈련자의 클라이언트 시스템의 네트워크 가상훈련 처리장치(200)의 훈련 결과 정보 생성 모듈(235)로부터 해당 훈련자가 부여된 작업을, 진행한 시간, 모션 정확도 등 훈련 결과 데이터를 전달받아 저장하며, 훈련자들이 작업하는 가상작업공간의 화면 데이터를 수신하여 디스플레이 하도록 함으로써 훈련 관리자가 작업 상황을 화면을 통하여 실시간으로 모니터링하도록 한다. The training performance receiving / evaluating unit 330 receives from the training result information generating module 235 of the network virtual training processing apparatus 200 of the client system of the connected trainee the task given the trainee the time, the motion accuracy, etc. The training result data is received and stored, and the training manager receives and displays the screen data of the virtual work space on which the trainees work, thereby allowing the training manager to monitor the work situation on the screen in real time.

이하, 본 발명의 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 실제 구현 및 사용되는 가상환경을 보충 설명한다. Hereinafter, an actual implementation of a immersive network virtual training system capable of collaborative training in a virtual work space based on the multi-client of the present invention, and a virtual environment used are supplemented.

도 6은 본 발명의 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 실제 구현을 설명하기 위한 도면이다.FIG. 6 is a diagram for explaining an actual implementation of an immersive network virtual training system capable of collaborative training in a virtual work space based on the multi-client of the present invention.

클라이언트 HMD 장치를 통해 훈련자의 머리의 움직임이 인식되고, 클라이언트 모션인식장비를 통해 훈련자의 전후 이동동작, 허리의 회전, 팔의 움직임, 손의 움직임 등을 훈련자의 가상적인 이동 및 동작이 인식되어, 인식된 모션 데이터를 기초로 가상작업공간 내 훈련자의 캐릭터의 머리의 움직임,이동 및 동작으로 매핑되고, 이러한 가상작업공간 내 훈련자의 캐릭터의 머리의 움직임,이동 및 동작에 따라 변화하는 가상작업공간 내 화면이 클라이언트 HMD 장치의 디스플레이를 통해 훈련자에게 시각적으로 제공되는 몰입식 가상훈련 시스템으로 구현된다. The movement of the trainee's head is recognized through the client HMD device, and the virtual movement and movement of the trainee are recognized through the client motion recognition device such as trainee's back and forth movement, waist rotation, arm movement, Movement and movement of the head of the trainee's character in the virtual work space based on the recognized motion data, and the movement of the head of the trainee's character in the virtual work space The screen is implemented as an immersive virtual training system that is visually presented to the trainee through the display of the client HMD device.

도 7a를 참조하면, 본 실시예에 있어서, 가상작업환경은 작업주변환경, 작업캐릭터, 작업공구, 작업대상물로 정의되어 구성된다. 모든 구성물은 3D 객체(3ds max, maya 등에서 제작된 3D결과물)로 구성되며, Unity3D(VR&게임 개발 엔진)로 Import되고, 환경이 세팅된다. 즉 Unity3D 엔진을 통해 훈련 시나리오가 제작되며, 키넥트 등 비접촉식 모션인식 장치 및 접촉식 모션인식 장치와 HMD 장치도 Unity3D 환경에 세팅되게 된다. Referring to FIG. 7A, in this embodiment, a virtual work environment is defined and defined as a work environment, a work character, a work tool, and a work object. All components are composed of 3D objects (3D products produced by 3ds max, maya etc.), imported into Unity3D (VR & game development engine), and environment is set. In other words, training scenarios are created through the Unity3D engine, and non-contact motion recognition devices such as Kinect and contact motion recognition devices and HMD devices will also be set up in the Unity3D environment.

도 7a는 본 발명이 일실시예의 가상주변환경의 구성화면이다.FIG. 7A is a configuration screen of the virtual environment of the embodiment of the present invention.

작업주변환경은 가상의 아바타가 작업할 진행할 공간이다. 작업 주변 환경 구성은, 실내공간을 3D 모델링(3ds max, maya 등 모델링 툴에서 제작된 3D 결과물)하여, 구성된다. 가상 주변환경의 필수 구성요소로 훈련자의 이동 경로 표시, 훈련자의 작업 환경 이탈을 방지하기 위한 벽, 작업 환경에 어울리는 기타 객체 들로 구성된다. 이동경로 표시는 사용자들로 하여금, 자신이 작업 대상물까지 어떻게 이동해야 되는지 알려주는 이미지로 바닥면에 표시된다. 벽은 작업 대상물 주위로 둘러싸고 있으며, 훈련자가 작업환경을 벗어나지 못하게 충돌처리한다. 작업 주변 환경은, 이러한 객체 이외에도 공간 안에 색을 표현해주는 라이트, 일정 영역을 보여주는 카메라 등의 객체도 설정된다. 카메라 객체는 아바타 객체마다 하나씩 세팅된다. The work environment is the space in which the virtual avatar will work. The work environment configuration is configured by 3D modeling of the indoor space (3D results produced by modeling tools such as 3ds max and maya). It is an essential component of the virtual environment. It is composed of trainee 's movement path, wall to prevent trainee' s deviation from work environment, and other objects suitable for work environment. The breadcrumb display is displayed on the floor as an image that tells users how to move to the workpiece. The wall surrounds the workpiece, and the trainee collides against the work environment. In addition to these objects, the surrounding environment also sets objects such as a camera that displays a certain area and a light that expresses color in a space. Camera objects are set one by one for each avatar object.

도 7b는 본 발명의 일실시예에서 사용되는 작업공구의 예시 이미지이다.7B is an exemplary image of a working tool used in an embodiment of the present invention.

도 7c는 본 발명의 일실시예의 다중 사용자가 접속하여 가상작업환경 내 캐릭터로서 표시된 화면이다. 7C is a screen displayed as a character in a virtual work environment when multiple users of the embodiment of the present invention are connected.

① 번은 훈련 대상물로 실제 접하기 어렵고, 위험한 대상물을 3D 형태로 구현하여 표현한다. ②번은 훈련자이며, 1인칭 시점에서 봤을 때, 다중 훈련자가 접속해 있는 상태이다. 훈련자의 위치값은 시나리오상 훈련자에게 맞는 위치값이 지정되어 있으며, 훈련자가 접속시 지정해 놓은 위치값에 훈련자가 생성된다. 훈련자가 생성되면, 1인칭 뷰로 화면이 보이며, 작업 턴이 아닐 경우, 다른 훈련자가 진행하는 모습을 지켜보기만 하며, 동시 작업은 불가능하다.③번은 각 훈련자 마다 필요한 공구류를 가지고 있다. 공구류는 훈련자 시나리오마다 달라질 수 있으며, 필수 사항은 아니다. ① No. is difficult to contact with training objects and express dangerous objects in 3D form. ② The trainee is a trainee, and from the first person point of view, multiple trainees are connected. The position value of the trainee is assigned a position value suitable for the trainee in the scenario, and the trainer is created at the position value designated by the trainee at the connection. When the trainer is created, the first person view is shown, and if it is not a work turn, the other trainer will only watch the progress of the trainer, and simultaneous work is impossible. Tools may vary from one trainer scenario to another and are not required.

도 7c를 참조하면, 작업캐릭터는 가상작업환경 공간 내에 작업을 진행할 훈련자 자신과 매핑되는 객체이다. 훈련자 자신의 움직임이 동작인식 센서 및, HMD(Head Mounted Display)장치에 의해 캐릭터에 매핑되고, 움직임이 제어된다. 작업 캐릭터는 작업 공간 내 위치되어야 할 Position 값을 가지고 있으며, 캐릭터 1당, 1개의 카메라(시야 담당)를 가지고 있다. 작업 캐릭터는 크게 3가지의 외부 디바이스 정보값에 의해 가상작업공간에서 값이 표현된다. 첫째, 머리부분은 HMD 장치에 의해 캐릭터의 머리부분의 회전과, 디스플레이 출력 기능이 담당된다. HMD 장치는 자이로 센서가 있는 좌표축 트래킹이 가능한 장비를 사용한다. 즉 사용자가 HMD 장치를 착용하고, 고개를 상화,좌우로 돌리게 되면, 가상 공간내 캐릭터에 적용된 왼쪽, 오른쪽의 카메라도 동일하게, 움직이게 되고, 캐릭터의 카메라가 바라보는 가상 공간을 사용자도 똑같이 보여지게 된다. HMD 장치를 착용한 사람 머리의 Y축 회전은 Yaw 회전으로 카메라의 좌우 회전값을 체크한다. X축 회전은 Pitch 값으로 머리의 상하 회전 값을 체크한다. z 회전 값은 Roll 회전 값으로 고개를 좌우로 치우칠 때 회전 값을 체크한다. 이렇게 회전 입력값은 작업 캐릭터에 매핑이 된다. 매핑될 때의 자료 구조는 Vector3 Type으로 x,y,z 축의 Float 실수형 3개값이 모여서 하나의 자료형으로 표현된다. 즉 yaw, pitch, roll의 3개의 Float 값이 하나의 Vector3형으로 캐릭터가 받게 되고, 입력된 값으로 캐릭터의 머리 회전값이 가상작업공간 내 캐릭터의 카메라에 Display 된다 둘째, 캐릭터의 몸에 매핑될 입력 장치는 Kinect SDK(Microsoft사 제공)의 모션 인식 컨트롤러를 사용한다. Kinect는 비 접촉식 컨트롤러이며, 두 개의 카메라를 사용하여, 사람의 관절과 Depth 값을 인식하여 값을 넘겨준다. 인식 받는 관절은 머리, 몸, 팔(3개관절), 다리(3개관절), 골반등으로 구성된다. 모션의 인식은 각 관절의 위치값과 회전값을 입력 받는다. 위치값과 회전값은 Kinect로부터 Vector3 자료형으로 입력받게 되고, 캐릭터의 각 관절에 대입하면, 가상작업공간 안에서 나의 모션이 캐릭터로 표현된다. 셋째, 캐릭터의 이동에 관한 사항은 접촉식 컨트롤러를 사용한다. 접촉식 컨트롤러는 상용화된 Virtuix Omni or Cyberith Virtualizer 하드웨어를 사용한다. 접촉식 컨트롤러는 크게 두가지를 입력받게 된다. 하나는 발판에서의 캐릭터가 발을 구를 때, 속도값, 하나는 허리 밴드의 회전값. 두가지를 입력받게 된다. 사람이 발판을 구를 경우, 구르는 속도에 따라서 캐릭터가 Z 방향으로 이동하게 된다. 발을 구르는 속도에 따라, 가상 공간 내 캐릭터가 움직이는 속도 또한 달라지게 된다. 허리에 있는 밴드는 어떤 방향으로 캐릭터를 움직이는 캐릭터의 방향을 결정한다. 허리를 좌측으로 돌리면, Y축 왼쪽회전이 되어, 방향이 좌측으로 캐릭터가 회전하며, 허리를 오른쪽으로 움직일 시 Y축 오른쪽 회전이 되어, 방향이 오른쪽으로 캐릭터가 회전한다. 발판의 속도값은 Float형(실수값)으로 전달되며, 허리 밴드는 Vecotr3의 회전값으로 전달된다. 위와 같이, 3개의 하드웨어 장비를 통해, 가상작업공간 캐릭터의 시야, 동작, 이동 등이 매핑되어, 표현된다.Referring to FIG. 7C, the work character is an object that is mapped to the trainee himself / herself to perform work in the virtual work environment space. The trainer's own motion is mapped to the character by the motion recognition sensor and the HMD (Head Mounted Display) device, and the motion is controlled. The work character has a position value to be positioned in the work space, and has one camera (visual field charge) per character. The work character is largely represented in the virtual work space by three external device information values. First, the head part is rotated by the HMD device and the display output function. The HMD device uses a coordinate tracking device with a gyro sensor. In other words, if the user wears the HMD device and turns his or her head to the left or right, the left and right cameras applied to the character in the virtual space move in the same manner, and the virtual space in which the character's camera looks is also displayed do. The Y-axis rotation of the head of the person wearing the HMD device checks the rotation value of the camera with the Yaw rotation. The X-axis rotation checks the vertical rotation value of the head with the Pitch value. z Rotation value is the roll rotation value, and the rotation value is checked when the head is shifted left and right. This rotation input value is mapped to the work character. The data structure when mapped is Vector3 Type, which is represented by a single data type, in which three floating-point floating-point values of x, y, and z axes are gathered. In other words, three Float values of yaw, pitch, and roll are received as a Vector3 type, and the head rotation value of the character is displayed on the character's camera in the virtual workspace with the input value. Second, The input device uses a motion recognition controller of the Kinect SDK (Microsoft Corporation). Kinect is a non-contact controller that uses two cameras to recognize human joints and Depth values and pass them on. Recognized joints consist of head, body, arms (3 joints), legs (3 joints), and pelvis. Motion recognition is performed by inputting position and rotation values of each joint. The position value and the rotation value are input from the Kinect to the Vector3 data type, and when I assign to each joint of the character, my motion is expressed as a character in the virtual work space. Third, the matter of moving the character uses the contact controller. The contact controller uses the commercially available Virtuix Omni or Cyberith Virtualizer hardware. There are two types of contact type controllers. One is the velocity value when the character in the footstep squeezes the foot, and one is the rotation value of the waistband. You will receive two input. When a person holds a footstool, the character moves in the Z direction according to the speed of the roll. The speed at which the character moves in the virtual space also changes depending on the speed at which the foot is rolled. The band at the waist determines the direction of the character that moves the character in what direction. When the waist is turned to the left, the character rotates in the left direction of the Y axis, and the character rotates in the Y axis in the right direction when the waist is moved to the right. The velocity value of the footplate is transmitted as a float (real value), and the waistband is transmitted as the rotation value of Vecotr3. As described above, the view, action, and movement of the virtual workspace character are mapped and represented through the three hardware devices.

작업공구는 가상작업공간에서 훈련자가 훈련 작업을 진행할 때 필요한 도구 객체이다. 예를 들어 훈련자가 작업 대상물의 분해 작업을 진행해야 할 경우, 나사를 풀어주는 작업이 필요하다. 이때 필요한 도구가 스캐너 같은 작업 공구이다. 이렇게 시나리오상 필요한 작업 공구들을 미리 작업 환경 내에 배치하여 구성한다. 공간상의 작업공구는 3D 객체로 구성되어 있으며, 공간상의 위치값을 가지고 있다. 작업 공구의 취득행위는 가상 공간 캐릭터가 작업 공구 주변으로 이동하여 캐릭터 손에 위치하면, 모션 인식으로 손의 위치값을 체크하고, 손을 움켜지는 동작을 취하면 캐릭터는 작업 공구를 취득(잡음)하게 된다. 도 7b에서와 같이 다양한 작업공구 객체가 사전 생성되어 사용되며, 작업공구는 훈련자에게 부여된 작업의 내용 등 콘텐츠의 시나리오에 따라서 변동될 수 있다.작업대상물은 작업 대상물은 훈련자들이 가상에서 공동으로 작업하는 대상 객체이다. 보편적으로 실생활에서 접하기 위험하고, 어려운 대상을 3D로 제작하여, 가상작업공간 내 구현한다. 작업 대상물은 교육 시나리오에 따라서 다양한 종류가 될 수 있다. 대부분 산업현장에서의 작업 대상물의 작업은 절차상 과정이 존재한다. 즉, 순서에 맞게 대상물을 분해/조립을 할 수 있고, 위험을 대비한 트러블 슈팅이 될 수도 있다. A work tool is a tool object that is needed when a trainer performs a training task in a virtual workspace. For example, if the trainee needs to proceed with disassembly of the workpiece, it is necessary to unscrew the workpiece. At this time, the necessary tools are work tools such as scanners. In this scenario, necessary work tools are arranged and configured in advance in the work environment. Work tools in space are made up of 3D objects and have position values in space. When the virtual space character moves around the work tool and is positioned in the character's hand, the acquisition of the work tool is performed by checking the position value of the hand with the motion recognition and taking the action of grabbing the hand, . As shown in FIG. 7B, various work tool objects are pre-created and used, and the work tools can be changed according to the scenario of the content such as the contents of the work assigned to the trainee. It is the target object. Generate 3D objects in dangerous and difficult objects that are universally encountered in real life, and implement them in a virtual workspace. Work objects can be of various types, depending on the training scenario. There is a procedural process for the work of work objects in most industrial settings. In other words, the object can be disassembled / assembled according to the order, and it can be a trouble-shooting trouble shooting.

작업 대상물은 통상 작업환경의 가상작업공간의 중앙에 위치되며, 위치값은 (0,0,0)에 위치하며, 실제 사이즈(실생활에서 존재하는 사이즈)를 동일하게 가상작업공간에 구현한다. 작업 대상물은 이벤트가 발생하는 부분과 이벤트가 발생하지 않는 부분으로 구분된다. 이벤트가 발생하는 부분은 Collider가 존재하여, 훈련자와 충돌을 감지한다. 이 충돌 여부는 훈련자 공구의 Collider와 작업 대상물의 Collider가 가상작업공간에서 충돌 시 OnTriggerEnter 함수로 호출된다. 충돌이 판별되면, 작업 대상물에서 이벤트(애니메이션 플레이 or 이동, 회전 등의 미리 정해놓은 이벤트)가 발생한다. 작업 대상물의 이벤트가 필요 없는 객체는 위치, 회전값이 변하지 않도록 세팅한다. 캐릭터가 작업 대상물을 뚫고가는 현상을 방지하기 위해, 하기 [작업대상물 클래스 샘플]에서와 같이, 충돌 Collider가 세팅된다.The workpiece is normally located at the center of the virtual workspace of the work environment, the position value is located at (0, 0, 0), and the actual size (size existing in real life) is equally implemented in the virtual workspace. The work object is divided into a portion where an event occurs and a portion where an event does not occur. Collider exists in the part where the event occurs, and collision with the trainee is detected. This collision is called with the OnTriggerEnter function when the Collider of the trainer tool and the Collider of the workpiece collide in the virtual workspace. When a collision is determined, an event (a predetermined event such as an animation play, a movement, or a rotation) is generated in the workpiece. Objects that do not require an object in the work object are set so that the position and rotation values do not change. In order to prevent the character from penetrating the workpiece, the collider collider is set, as in [workpiece object class sample] below.

[작업대상물 클래스 샘플][Workpiece object class sample]

Figure 112014045837400-pat00001
Figure 112014045837400-pat00001

*Collider : Unity3D의 Physics 엔진에서 제공하는 충돌 클래스 객체 *OnTriggerEnter : Collider를 가진 객체가 서로 충돌 시 발생하는 함수.
* Collider: Collision class object provided by Unity3D's Physics engine. * OnTriggerEnter: Function that occurs when objects with Collider collide with each other.

이하, 도 8 및 도 9를 참조하여 본 발명에 따른 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법을 상세히 설명한다.Hereinafter, the immersive network virtual training method using the immersive network virtual training system according to the present invention will be described in detail with reference to FIG. 8 and FIG.

도 8은 본 발명의 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 흐름도이다.Figure 8 is a flow diagram of an immersive network virtual training method using the immersive network virtual training system of the present invention.

도 8을 참조하면, 몰입식 네트워크 가상훈련 방법은 본 발명의 몰입식 네트워크 가상훈련 시스템의 상기 마스터 시스템와 연동하여 특정 클라이언트 시스템에서 수행되는 방법으로, 시스템 초기화 단계(S100), 네트워크설정/접속 단계(S200), 훈련 컨텐츠 초기화 단계(S300), 이벤트 프로세싱 단계(S400), 훈련 성과 데이터 송신/확인 단계(S500), 작업관찰 단계(S600)의 일련의 단계를 포함하여 수행된다.8, the immersive network virtual training method is a method performed in a specific client system in conjunction with the master system of the immersive network virtual training system of the present invention. The system initialization step S100, the network setting / S200, training content initialization step S300, event processing step S400, training performance data transmission / confirmation step S500, and task observation step S600.

시스템 초기화 단계(S100)는 클라이언트 시스템(100)에서 설치된 훈련 프로그램 형태의 네트워크 가상훈련 처리장치(200)의 시작에 따라, 연결된 클라이언트 HMD (Head Mounted Display)장치 및 모션인식 장비를 초기화하고, 그 ID 를 수신 및 확인하여 연결을 설정하며, 특정 가상작업공간 예컨대 훈련 작업 방의 접속을 위한 GUI 화면을 세팅하고 마스터 시스템(300)과 접속할 수 있는 GUI 화면을 제공하는 과정이다. 상술한 네트워크 가상훈련 처리장치(200)의 클라이언트 HMD 초기화 모듈(211), 모션인식 컨트롤러 초기화 모듈(214), 시스템 초기화 모듈(221)에 의하여 수행된다.The system initialization step S100 initializes the connected client HMD (Head Mounted Display) device and the motion recognition device at the start of the network virtual training device 200 in the form of a training program installed in the client system 100, And establishes a connection, sets a GUI screen for connection to a specific virtual workspace, for example, a training work room, and provides a GUI screen that can be connected to the master system 300. [ Is performed by the client HMD initialization module 211, the motion recognition controller initialization module 214, and the system initialization module 221 of the network virtual training apparatus 200 described above.

네트워크설정/접속 단계(S200)는 상기 제공된 GUI 화면을 통하여 클라이언트 시스템의 IP, 접속자 ID, 및 훈련자가 입력한 접속할 사용자 이름, 방 이름 및 접속 방 정보 등을 입력받아, 입력된 정보에 따라 마스터 시스템(300)과의 네트워크 접속환경을 세팅되어 마스터 시스템에 네트워크 접속하는 과정으로, 상술한 네트워크 가상훈련 처리장치(200)의 네트워크 세팅 모듈(222)에 의하여 수행된다.The network setting / connection step (S200) receives the IP of the client system, the contact person ID, and the user name, room name, and access room information to be accessed by the trainee through the provided GUI screen, And setting up a network connection environment with the network 300, and connecting the network to the master system, is performed by the network setting module 222 of the network virtual training apparatus 200 described above.

컨텐츠 초기화 단계(S300)는 3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하고, 로딩된 3D 객체를 사전 설정된 값으로 세팅하여 가상작업공간상에 배치하는 과정이다. 훈련 내용인 훈련 시나리오를 구성하는 3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하는 과정이 수행된 뒤, 로딩된 3D 객체 즉, 작업주변환경, 작업캐릭터, 작업공구, 작업대상물들의 위치값, 회전값, 크기 값 등을 사전 설정된 값으로 세팅하여 가상작업공간상에 배치한다. 작업 캐릭터 로딩 과정과 마스터 시스템(300)으로부터 임무에 대한 설명 및 자신의 작업순서인 플레이 턴을 표시하는 데이터 또는 메시지를 수신하여 표시하는 훈련 데이터/메시지 수신과정을 포함하여 수행된다. The content initialization step S300 is a process of loading training content composed of 3D contents, setting a loaded 3D object to a preset value, and placing the 3D object on a virtual work space. After the process of loading the training content composed of the 3D contents constituting the training scenario, which is the training content, is performed, the loaded 3D object, that is, the position value of the work environment, the work character, the work tool, Values and the like are set to predetermined values and placed in the virtual work space. And a training data / message receiving process for receiving and displaying a task character loading process and a data or message indicating a task as a description of a task and a play turn as a task sequence from the master system 300.

컨텐츠 초기화 단계(S300)는 상술한 네트워크 가상훈련 처리장치(200)의 3D 콘텐츠 로딩 모듈(223), 훈련 콘텐츠 초기화 모듈(231), 훈련자 캐릭터 로딩 모듈(232), 훈련 데이터/메시지 수신 모듈(233)이 마스터 시스템(300)과 연동되어 수행된다.The content initialization step S300 includes a 3D content loading module 223, a training content initialization module 231, a trainee character loading module 232, a training data / message receiving module 233 of the network virtual training processing device 200 ) Is performed in conjunction with the master system 300.

작업 캐릭터 로딩 과정은, 가상작업환경의 가상작업공간내에 해당 훈련자의 캐릭터를 생성하는 과정으로, 마스터 시스템(300)와 네크워크 접속이 클라이언트 시스템 처리부를 통하여 이루어지면, 훈련자 캐릭터 로딩 모듈(232)이 마스터 시스템(300)으로부터 수신되는 캐릭터 및 상기 캐릭터의 위치값을 기초로 가상 훈련 콘텐츠 내 캐릭터를 생성하여 로딩한다. 훈련자의 캐릭터가 생성되는 위치는 작업대상물 주위 위치로 설정된다. 훈련자의 캐릭터는 실제 사람과 동일한 관절 구조로 되어 있으며, 3D Max의 Biped Animation 구조로 설계되어진 모델 형상 및 애니메이션을 가지고 있다. 캐릭터의 애니메이션은 외부 장비(HMD, Kinect, Omni)등의 모션 컨트롤러와 연동되어, 관절의 회전값이 표현된다. The work character loading process is a process of creating a character of the trainee in the virtual work space of the virtual work environment. When the network connection with the master system 300 is performed through the client system processing unit, the trainee character loading module 232 reads the master A character in the virtual training content is created and loaded based on the character received from the system 300 and the position value of the character. The position where the trainee character is created is set to the position around the workpiece. The trainee's character has the same joint structure as the real person, and has the model shape and animation designed with 3D Max Biped Animation structure. The animation of the character is linked with the motion controller of the external equipment (HMD, Kinect, Omni), and the rotation value of the joint is expressed.

훈련 데이터/메시지 수신 과정은 훈련자가 훈련 작업환경에 들어와 마스터 서버(Master Server)로부터 지시받는 임무에 대한 설명 및 자신의 작업순서인 플레이 턴을 표시하는 데이터 또는 메시지를 수신하는 과정으로, GUI 즉, 채팅창과 2D 이미지 등을 사용하여, 훈련자에게 전달하는 과정이다. 이에 따라, 훈련자는 메시지를 통해 임무를 숙지하고, 가상작업공간 내에서 대기하고 자신의 작업순서가 되면 작업을 수행하게 된다. 훈련 데이터/메시지 수신 모듈(233)이 마스터 시스템(300)과 연동되어 수행한다.The process of receiving the training data / message is a process in which the trainer enters a training work environment and receives data or a message indicating a task, which is a description of a task to be instructed from the master server and a play turn, It is a process of delivering to a trainee using a chat window and a 2D image. As a result, the trainer learns the task through the message, waits in the virtual workspace, and performs the task when it comes to his / her work order. And a training data / message receiving module 233 is interlocked with the master system 300.

아울러, 컨텐츠 초기화 단계(S300)에는 가상작업공간에서 객체에 색을 나타내 줄 수 있는 Light 객체를 세팅하는 과정, 충돌처리가 이뤄지는 객체의 콜리더(Collider)를 세팅하는 과정, 즉, 충돌시 이벤트 발생 예컨대 훈련자가 이동경로의 범위를 벗어나 이동하는 경우, 작업대상이 아닌 객체를 터치하는 경우 등 이를 불가능하도록 하는 출동처리를 수행하고, 이에 따른 경고 메시지 등을 출력하도록 준비하는 과정이 포함되어 수행된다.In the content initialization step S300, a light object capable of displaying a color to an object in a virtual work space is set. A process of setting a collider of an object on which conflict processing is performed, that is, For example, when the trainer moves beyond the range of the movement path, it performs a dispatch process for disabling the object, such as touching an object that is not a work object, and preparing a warning message or the like to be output.

훈련 이벤트 프로세싱 단계(S400)는 훈련 데이터/메시지 수신 과정을 통해 마스터 시스템로부터 작업 권한에 관한 데이터인 플레이 턴 데이터를 수신하여 작업 권한을 부여받고 작업내용에 관한 메시지를 수신하여 훈련자에게 표시하며, 해당 훈련자의 모션을 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상훈련환경의 각 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체의 위치값, 회전값, 크기 값 등을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 과정으로, 목적지이동, 공구획득, 훈련제스처 입력, 정보전달 및 훈련종료의 훈련의 일련의 과정이 수행되며, 일련의 과정에서 변화하는 가상작업공간의 가상훈련환경은 HMD 장치의 카메라 렌즈를 통해 실시간으로 랜더링 처리되어 훈련자에게 보여지도록 한다. 또한, 훈련 이벤트 프로세싱 단계(S400)는 훈련 결과 정보 생성 과정을 포함하여, 작업시간, 이동 경로 이탈 여부, 훈련 제스쳐 동작 일치 여부의 데이터를 훈련 데이터로 생성한다. 상술한 네트워크 가상훈련 처리장치(200)의 이벤트 프로세싱 모듈(234)이 중심이 되어 수행된다.In the training event processing step (S400), the plaintone data, which is data related to the task authority, is received from the master system through the training data / message receiving process, the task authority is granted, the message regarding the task content is received and displayed to the trainee, A positional value, a rotation value, a magnitude value of an object in a work environment, a work character, a work tool, and an object of a workpiece in a virtual training environment of a trainee recognized by a trainee's motion input and motion analysis Etc., and maps them to objects of a virtual training environment of a trainee, which is a virtual space. A series of processes of destination movement, tool acquisition, training gesture input, information transmission and training termination are performed, The virtual training environment of the changing virtual workspace is rendered in real time through the camera lens of the HMD device, So it should show. In addition, the training event processing step S400 includes generating the training result information, and generating training data as data on the operation time, the deviation of the movement path, and the training gesture operation. The event processing module 234 of the above-described network virtual training processing device 200 is mainly performed.

훈련 이벤트 프로세싱(S400)을 도 7d의 훈련 이벤트 프로세싱 단계에서의 HMD 장치 디스플레이 화면을 참조하여 설명하면, 특정 훈련자 클라이언트에 마스터 시스템로부터 작업 권한에 관한 데이터인 플레이 턴 데이터가 수신되면, 해당 훈련자의 디스플레이 화면에 ①번 항목과 같이 자신의 플레이 턴을 표시하는 녹색으로 불이 표시된다. 녹색불이 들어오면, 해당 훈련자는 자신의 훈련 턴 임을 확인하여, 클라이언트 HMD 장치 및 클라이언트 모션 장비를 통한 가상훈련환경에서의 조작이 가능해진다. 가상훈련환경에서 카메라 시점은 항상 1인칭 시점으로 제공되며, 클라이언트 HMD 장치 및 클라이언트 모션 장비와 연동되어 자신의 캐릭터에 대한 모션 트래킹이 가능하다. 훈련자는 가상작업공간에서 작업대상물이 있는 정해진 위치까지 이동하기 위한 모션을 수행하며, 이동 경로 이탈 여부 데이터가 생성되어 훈련 결과 정보에 포함된다. 훈련자가 정해진 작업위치에 도달하면 ② 번 항목은 해당 훈련자가 작업해야 될 동작 즉, 작업 시나리오에서 요구하는 동작을 2차원 애니메이션 형태로 표시한다. 훈련자는 ②번에 나오는 모션을 따라, 클라이언트 HMD 장치 및 클라이언트 모션 장비를 통하여 자신의 모션을 입력하게 된다. 입력된 모션은 측정된 모션 데이터에 의하여 훈련자의 모션이 인식되고 인식된 훈련자의 모션과 작업 시나리오에서 요구하는 동작의 일치여부를 판단하게 되며, 이는 훈련 제스쳐 동작 일치 여부 데이터인 훈련 데이터로 생성되어 훈련 결과 정보에 포함된다. 한편, 모든 훈련 상황이 모션입력으로만 이뤄지는 것은 아니며, 실시예에 따라서는 버튼클릭 및 객체 터치 등의 단순 입력으로 작업 시나리오의 특정 작업이 진행될 수 있다. The training event processing (S400) will be described with reference to the HMD device display screen in the training event processing step of FIG. 7D. When playturn data, which is data on the task authority, is received from the master system by the specific trainee client, As shown in item ① of the screen, green is displayed to indicate the play turn. When the green light comes on, the trainee confirms his training turn, allowing manipulation in the virtual training environment through the client HMD device and the client motion device. In the virtual training environment, the camera viewpoint is always provided as the first person viewpoint, and it is possible to perform motion tracking with respect to the character of the client in association with the client HMD device and the client motion device. The trainer performs a motion for moving from the virtual work space to a predetermined position where the workpiece is located, and data on whether or not the movement path is deviated is generated and included in the training result information. When the trainer reaches the designated work position, the item (2) displays the action required by the trainee, that is, the action required in the task scenario, in the form of a two-dimensional animation. The trainer inputs his motion through the client HMD device and the client motion device according to the motion shown in ②. In the input motion, the trainee's motion is recognized based on the measured motion data, and the motion of the recognized trainee is matched with the motion required in the task scenario. The input motion is generated as training data, which is training gesture motion matching data, Included in the result information. On the other hand, all the training situations are not limited to the motion input, and according to the embodiment, the specific task of the task scenario can be performed by simple input such as button click and object touch.

한편, 작업이 시작되면, ④ 번 항목과 같이 작업시간이 측정되어 디스플레이되며, 작업시간은 초 단위로 계산되어, 작업 완료 후 훈련 결과 정보로서 마스터 서버의 훈련 감독자에게 전달된다. 또한, ⑤ 번 항목과 같이 커뮤니케이션 기능으로 모든 훈련자 간 커뮤니케이션은 채팅 또는 음성통신을 통해 실시간 확인할 수 있으며, 이를 통해 작업에 대한 확인 및 진행사항, 커뮤니케이션 등을 채팅을 통해 주고 받을 수 있다. 클라이언트는 모션 작업 중 채팅 입력이 어려움으로, 작업의 시작전과 끝난 후에 주로 사용하며, 지켜보고 있는 다른 사용자나 훈련 감독자의 지시가 메시지의 형태로 수신되어 표시되어 작업중인 훈련자가 확인하는 형태로 구현된다. On the other hand, when the work is started, the work time is measured and displayed as in item ④, the work time is calculated in seconds, and is transmitted to the training supervisor of the master server as the training result information after completion of the work. In addition, as in item ⑤, communication between all trainees can be confirmed in real time through chat or voice communication by using the communication function. Through this, it is possible to exchange confirmation of work, progress, and communication through chat. The client is mainly used before and after the start of the work because it is difficult to input a chat during the motion work, and the instruction of another user or the training supervisor is received and displayed in the form of a message, .

작업이 완료되면 자동적으로 해당 훈련자의 훈련을 종료하거나, 훈련자 또는 훈련 감독자의 종료 버튼의 입력에 따라 해당 훈련이 종료된다. When the work is completed, the training of the corresponding trainee is automatically terminated or the training is terminated according to the input of the termination button of the trainee or the training supervisor.

훈련 성과 데이터 송신/확인 단계(S500)는, 훈련 데이터 및 최종 훈련 결과 정보를 마스터 서버에게 송신하는 과정으로, 훈련 이벤트 프로세싱(S400)을 과정에서 생성되는 훈련 데이터를 실시간으로 마스터 서버에게 송신하며, 훈련의 종료시에는 최종 훈련 결과 정보로서 마스터 서버에게 송신하는 과정으로, 훈련 종료 과정은 최종 훈련 결과 정보로서 마스터 서버에게 송신하는 과정의 진행 이후로 설정될 수 있다. The training performance data transmission / confirmation step (S500) is a process of transmitting training data and final training result information to a master server. The training data transmission / confirmation step transmits training data generated in the course of training event processing (S400) At the end of the training, it is transmitted to the master server as the final training result information, and the training ending process can be set after the process of transmitting to the master server as the final training result information.

작업관찰단계(S600)는 훈련이 종료된 훈련자에게 작업 권한이 부여되어 훈련이 진행중인 다른 훈련자의 가상작업환경을 제공하도록 훈련이 종료된 훈련자 클라이언트 시스템으로 화면 데이터를 생성하여 제공 과정으로 해당 훈련자의 모션 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상훈련환경의 각 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체의 위치값, 회전값, 크기 값 등을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 과정으로, 관찰자인 훈련이 종료된 훈련자에 대한 모션 인식 등의 기능은 활성화되지 않으며, 관찰자인 훈련이 종료된 훈련자의 지점 및 시각에서 다른 훈련자의 가상작업환경을 HMD의 카메라 렌즈를 통해 실시간으로 랜더링 처리되어 보여지도록 하는 과정이다. 상술한 바와 같이, 커뮤니케이션 기능은 활성화되어, 작업관찰단계의 훈련이 종료된 훈련자가 다른 훈련자에게 전달할 메시지가 있는 경우 이를 입력받아 채팅 또는 음성통신을 통해 전송하며, 다른 훈련자 또는 훈련 관리자의 메시지를 채팅 또는 음성통신을 통해 수신한다.In the job observation step S600, the training data is generated by the trainee client system whose training has been terminated so as to provide the virtual work environment of the other trainee who is given training authority to the trainee whose training is completed, And changes the position values, the rotation values, the magnitude values, and the like of each work environment, the work character, the work tool, and the object of the workpiece in the virtual training environment of the trainee recognized by the trainee's motion input and motion analysis This is a process of mapping to each object of the virtual training environment of the trainee, which is a virtual space, so that the function of motion recognition and the like for the trainee who has been trained as an observer is not activated, The virtual work environment of the HMD is displayed in real time through the camera lens of the HMD. All. As described above, the communication function is activated, and when a trainee whose training in the task observation step has been completed has a message to be delivered to another trainee, the message is transmitted through chat or voice communication, and the message of another trainee Or via voice communication.

도 9는 본 발명의 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 일실시예의 타임 테이블로서, 본 발명의 몰입식 네트워크 가상훈련 방법은 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능하도록 마스터 시스템과 다수의 훈련자 클라이언트 시스템으로 구성되어, 네트워크로 마스터 시스템과 연결된 클라이언트 시스템이 턴 방식으로 마스터 서버를 통해 훈련 관리자가 지정하는 순서로 상술한 몰입식 네트워크 가상훈련 방법을 수행하도록 구현되어 진행된다. FIG. 9 is a time table of an embodiment of the immersive network virtual training method using the immersive network virtual training system of the present invention. The immersive network virtual training method of the present invention is capable of cooperative training in a virtual work space on the basis of multiple clients And the client system connected to the master system through the network is configured to perform the above-described immersive network virtual training method in the order designated by the training manager via the master server in the turn mode do.

100: 클라이언트 시스템 200: 네트워크 가상훈련 처리장치
300: 마스터 시스템
210: 클라이언트 모션인식/디스플레이부 220: 클라이언트 시스템 처리부
230: 훈련 시나리오 처리부 310: 훈련 환경 초기화/설정부
320: 훈련 제어 데이터 전송부 320: 훈련 성과 수신/평가부
100: client system 200: network virtual training processing device
300: master system
210: client motion recognition / display unit 220: client system processing unit
230: training scenario processing unit 310: training environment initialization / setting unit
320: training control data transmission unit 320: training performance receiving /

Claims (15)

훈련 관리자에게 제공되어 훈련과정을 모니터링하도록 하는 마스터 시스템(300)과 연동하여, 각 훈련자에게 제공되고 클라이언트 HMD 장치 및 클라이언트 모션인식 장비와 연결되어 클라이언트 HMD 장치에 디스플레이되는 화면상의 가상공간인 가상작업공간에서 훈련을 수행하도록 하는 클라이언트 시스템의 가상훈련 처리장치(200)에 있어서,
클라이언트 HMD 장치 및 클라이언트 모션인식 장비를 초기화하고, 클라이언트 시스템 처리부(220)와 연계하여 각 기능을 설정하는 모션인식/디스플레이부(210),
마스터 시스템(300)과 네트워크 접속을 수행하며 3D 컨텐츠로 구성된 훈련 콘텐츠를 로딩하고, 클라이언트 모션인식 장비로부터 인식된 모션 데이터를 수신하여 처리하는 클라이언트 시스템 처리부(220),
3D 컨텐츠로 구성된 훈련 콘텐츠를 초기화하고 가상작업공간 내 훈련자의 캐릭터를 생성하여 로딩하며, 가상작업공간에서 훈련 내용인 작업이 진행되도록 제어하는 훈련 시나리오 처리부(230)를 포함하여,
상기 모션인식/디스플레이부(210)는,
클라이언트 HMD 장치의 HMD 트랙킹 모듈센서로부터 인식되는 훈련자의 머리의 움직임에 따른 데이터를 연산하여 훈련자 머리의 모션 데이터로 생성하는 클라이언트 HMD 트랙킹 모듈(212); 클라이언트 HMD 장치의 카메라 시야 디스플레이를 가상작업공간 내 위치한 훈련자의 캐릭터의 카메라에 링크시키는 클라이언트 HMD 카메라 링크 모듈(213); 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송하는 디스플레이 모듈(214); 클라인언트 모션인식 장비로부터 훈련자의 동작에 따른 데이터를 수신하여 훈련자의 모션 데이터를 추출하여 훈련자의 동작을 트랙킹하는 모션 트랙킹 모듈(216); 및 상기 훈련자의 모션 데이터를 가상작업공간의 훈련자의 캐릭터의 관절 데이터에 링크시키는 모션 링크 모듈(217)을 포함하고
상기 클라이언트 시스템 처리부(220)는,
사전 설정된 훈련자에게 요구되는 작업의 동작과 모션 데이터로부터 인식되는 훈련자의 동작을 비교하여 모션의 일치 여부를 판단하는 모션 프로세스 모듈(224);을 포함하여, 판단된 모션의 일치 여부에 기초하여 훈련자의 동작에 대한 모션 정확도를 추출하며,
훈련 시나리오 처리부(230)는,
마스터 시스템(300)으로부터 임무에 관한 정보 및 작업 권한에 관한 데이터를 수신하는 훈련 데이터/메시지 수신 모듈(233);을 포함하여,
상기 훈련 데이터/메시지 수신모듈(233)을 통해 마스터 시스템(300)으로부터 작업 권한에 관한 데이터를 수신하며, 상기 훈련 데이터/메시지 수신 모듈(233)을 통해 마스터 시스템으로부터 수신된 작업 권한에 관한 데이터에 따라, 작업 권한을 부여받은 것으로 판단된 경우, 상기 모션 트랙킹 모듈(216)은 활성화되어 모션 트랙킹을 수행하여 트랙킹 된 모션 데이터 값을 모션 링크 모듈(217)로 전달하고, 작업 권한을 부여 받지 않은 것으로 판단된 경우, 가상작업공간에서 상기 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 작업 권한이 부여된 다른 훈련자의 캐릭터의 카메라에 렌더링되는 화면이 HMD 장치의 화면에 전송되고, 상기 모션 트랙킹 모듈(216)은 비활성화되어 모션 트랙킹을 수행하지 않으며, 다른 훈련자에게 전달할 메시지가 있는 경우 이를 입력받아 채팅 또는 음성통신을 통해 전송하며, 다른 훈련자 또는 훈련 관리자의 메시지를 채팅 또는 음성통신을 통해 수신하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치.
The virtual HMM device is provided to each trainee and is connected to the client HMD device and the client motion recognition device in cooperation with the master system 300 that is provided to the training manager to monitor the training process. A virtual training processing apparatus (200) of a client system for performing training in a virtual training machine (200)
A motion recognition / display unit 210 for initializing the client HMD apparatus and the client motion recognition apparatus and setting each function in association with the client system processing unit 220,
A client system processing unit 220 for performing network connection with the master system 300 and loading training content composed of 3D contents, receiving and processing motion data recognized from the client motion recognition apparatus,
A training scenario processing unit (230) for initializing training contents composed of 3D contents, creating and loading characters of a trainee in a virtual work space, and controlling the operation of training contents in a virtual work space to proceed,
The motion recognition / display unit 210,
A client HMD tracking module 212 for calculating data according to the movement of the head of the trainee recognized from the HMD tracking module sensor of the client HMD device to generate motion data of the head of the trainee; A client HMD camera link module (213) linking a camera view display of the client HMD device to a camera of a trainee character located in a virtual work space; A display module 214 for transmitting to the screen of the HMD device a screen to be rendered on the camera of the trainee character at the time and the time of the visual field seen by the trainee character in the virtual work space; A motion tracking module (216) for receiving data according to a movement of the trainee from the clinic motion recognition device and extracting motion data of the trainee and tracking the movement of the trainee; And a motion link module (217) linking the trainee's motion data to the joint data of the trainee's character in the virtual workspace
The client system processing unit 220,
And a motion process module (224) for comparing the motion of the work required by the preset trainee with the motion of the trainee recognized from the motion data to determine whether the motion is matched or not, Extract the motion accuracy for the motion,
The training scenario processing unit 230,
And a training data / message receiving module (233) for receiving, from the master system (300), information relating to the task and data relating to the task entitlement,
Receives data relating to task privilege from the master system 300 through the training data / message receiving module 233, and receives data regarding task privilege received from the master system through the training data / message receiving module 233 Accordingly, when it is determined that the task authority is granted, the motion tracking module 216 activates and performs motion tracking to transfer the tracked motion data values to the motion link module 217, A scene to be rendered on the camera of the character of another trainee to which the task right is given is transmitted to the screen of the HMD device at the viewpoint and the viewpoint of the trainee's character in the virtual work space, 216 are deactivated and do not perform motion tracking, and if there is a message to be delivered to other trainees Receives the message through chat or voice communication, and receives a message from another trainer or training manager through chat or voice communication.
삭제delete 삭제delete 삭제delete 삭제delete 제 1항에 있어서,
훈련 시나리오 처리부(230)는,
가상 공간 내 훈련 콘텐츠를 초기화하는 훈련 콘텐츠 초기화 모듈(231);
마스터 시스템(300)으로부터 캐릭터를 부여받아 초기화된 가상작업공간 내 생성하는 훈련자 캐릭터 로딩 모듈(232);을 포함하여, 훈련자 캐릭터 로딩 모듈(232)은 마스터 시스템으로부터 전달된 훈련자에게 할당된 캐릭터 객체 및 상기 캐릭터 객체의 가상작업공간 내 위치정보에 따라 상기 캐릭터 객체를 가상작업공간 내 특정 위치에 표시되도록 로딩하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치.
The method according to claim 1,
The training scenario processing unit 230,
A training content initialization module (231) for initializing the training content in the virtual space;
And a trainee character loading module 232 for receiving characters from the master system 300 and creating the trainee character in the initialized virtual workspace. The trainee character loading module 232 includes a character object allocated to the trainee, And the character object is loaded so as to be displayed at a specific position in a virtual work space according to position information in the virtual work space of the character object.
삭제delete 제 6항에 있어서,
훈련 시나리오 처리부(230)는,
모션 정확도와 및 작업 시간을 포함하여 훈련에 대한 결과를 데이터 형태로 생성하여 마스터 시스템에게 전달하는 훈련 결과 정보 생성 모듈(235)을 포함하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치.
The method according to claim 6,
The training scenario processing unit 230,
And a training result information generation module (235) for generating a result of the training, including the motion accuracy and the working time, in a data form and transmitting the data to the master system.
제 1항에 있어서,
상기 가상작업공간은 작업주변환경, 작업캐릭터, 작업공구, 작업대상물에 대한 객체를 포함하여 구성되는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치.
The method according to claim 1,
Wherein the virtual workspace includes objects for a work environment, a work character, a work tool, and a work object.
제 9항에 있어서,
상기 작업대상물에 대한 객체는 콜리더(Collider)가 세팅되는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치.
10. The method of claim 9,
Wherein the object for the work object is a call reader (Collider).
다중 접속을 통하여 개별적인 공간인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 클라이언트 시스템의 가상훈련 처리장치를 포함하는 몰입식 네트워크 가상훈련 시스템을 이용한 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법에 있어서,
클라이언트 HMD 장치 및 모션인식 장비를 초기화하여, 그 ID 를 수신 및 확인하여 연결을 설정하며, 가상작업공간의 접속을 위한 GUI 화면을 세팅하고 마스터 시스템(300)와 접속할 수 있는 GUI 화면을 제공하는 시스템 초기화 단계(S100);
상기 제공된 GUI을 통하여 클라이언트 시스템의 IP, 접속자 ID, 접속 방의 정보를 입력받고 입력되는 정보에 따라 마스터 서버(300)와의 네트워크 접속환경을 세팅하여 네트워크 접속하는 네트워크설정/접속 단계(S200);
3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하고, 로딩된 3D 객체를 사전 설정된 값으로 세팅하여 가상공간상에 배치하는 컨텐츠 초기화 단계(S300);
마스터 시스템으로부터 작업 권한에 관한 데이터를 수신하여 작업 권한을 부여받고 작업내용에 관한 메시지를 수신하여 훈련자에게 표시하며, 작업 권한을 부여 받은 것으로 판단된 경우, 해당 훈련자의 모션 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상작업공간을 구성하는 객체의 위치값, 회전값, 크기 값을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 훈련 이벤트 프로세싱 단계(S400);
훈련 데이터 및 최종 훈련 결과 정보를 마스터 시스템에게 송신하는 성과 데이터 송신/확인 단계(S500);
훈련이 종료된 훈련자에게 작업 권한이 부여되어 훈련이 진행중인 다른 훈련자의 가상작업환경을 제공하도록 훈련이 종료된 훈련자 클라이언트 시스템으로 화면 데이터를 생성하여 제공하는 작업관찰단계(S600);를 포함하여,
상기 훈련 이벤트 프로세싱 단계(S400)는, 작업 권한을 부여 받지 않은 것으로 판단된 경우, 상기 훈련자에 대하여 모션 인식을 진행하지 않고 가상작업공간에서 상기 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 작업 권한이 부여된 다른 훈련자의 캐릭터의 카메라에 렌더링되는 화면이 HMD 장치의 화면에 전송하며, 훈련 결과 정보 생성 과정을 포함하여, 작업시간, 이동 경로 이탈 여부, 훈련 제스쳐 동작 일치 여부의 훈련 데이터를 생성하고,
상기 성과 데이터 송신/확인 단계(S500)는 상기 훈련 데이터를 마스터 시스템으로 실시간 전송하며,
상기 작업관찰단계(S600)는, 상기 훈련이 종료된 훈련자에 대하여 모션 인식을 진행하지 않고, 상기 훈련이 종료된 훈련자의 지점 및 시각에서 작업 권한이 부여된 다른 훈련자의 캐릭터의 카메라에 렌더링되는 화면이 HMD 장치의 화면에 전송하여 디스플레이하며, 훈련이 종료된 훈련자가 다른 훈련자에게 전달할 메시지가 있는 경우 이를 입력받아 채팅 또는 음성통신을 통해 전송하며, 다른 훈련자 또는 훈련 관리자의 메시지를 채팅 또는 음성통신을 통해 수신하는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법.
An immersive network capable of collaborative training in a virtual space using immersive network virtual training system that includes a virtual training processor of a client system capable of collective and systematic cooperation training in a shared virtual workspace through multiple accesses In the virtual training method,
A system for initializing a client HMD device and a motion recognition device, receiving and confirming the ID to establish a connection, setting a GUI screen for connection to a virtual work space, and providing a GUI screen capable of accessing the master system 300 Initialization step S100;
A network setup / connection step (S200) of setting up a network connection environment with the master server (300) according to information inputted and inputting the IP of the client system, the connectioner ID and the connection room through the provided GUI, and connecting to the network;
A content initialization step (S300) of loading training content composed of 3D contents, setting a loaded 3D object to a preset value, and placing the loaded 3D object on a virtual space;
Receives the task authorization from the master system, receives the task authorization, receives a message related to the task content, and displays the task authorization message to the trainee. If it is determined that the task authorization is granted, A training event processing step (S400) of changing a position value, a rotation value, and a magnitude value of an object constituting a virtual work space of a trainee, which is recognized according to motion input and motion analysis, to each object of a virtual training environment of a trainee );
A performance data transmission / confirmation step (S500) of transmitting training data and final training result information to the master system;
(S600) for generating and providing screen data to a trainee client system whose training has been terminated so as to provide a virtual work environment of another trainee who is given training authority to a trainee who is given training authority,
In the training event processing step S400, if it is determined that the task right is not granted, the motion recognition is not performed on the trainee, And the training result information generation process is performed to generate training data on whether the operation time, the movement path deviation, and the training gesture motion match are satisfied ,
The performance data transmission / confirmation step (S500) transmits the training data to the master system in real time,
The operation observation step S600 may include a step of performing a motion recognition on the trainee who has finished the training and a scene in which the trainee is trained on the camera of another trainee And transmits the message to another HMD device when the trainee has finished sending the message to the other trainee. If there is a message to be transmitted to the other trainee, the message is transmitted through chat or voice communication. The method of claim 1, wherein the virtual training is a virtual training.
제 11항에 있어서,
상기 가상작업공간을 구성하는 객체는 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체를 포함하는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법.
12. The method of claim 11,
Wherein the virtual work space comprises an object of a work environment, a work character, a work tool, and an object of a work object.
제 12항에 있어서,
상기 컨텐츠 초기화 단계(S300)는,
상기 작업대상물객체에 콜리더(Collider)를 세팅하는 과정을 포함하여 수행되는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법.
13. The method of claim 12,
In the content initialization step S300,
And setting a call reader in the work object. The method of claim 1, wherein the virtual object is a virtual object.
삭제delete 삭제delete
KR1020140058530A 2014-05-15 2014-05-15 Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof KR101671320B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140058530A KR101671320B1 (en) 2014-05-15 2014-05-15 Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140058530A KR101671320B1 (en) 2014-05-15 2014-05-15 Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020160038764A Division KR101839113B1 (en) 2016-03-30 2016-03-30 Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof

Publications (2)

Publication Number Publication Date
KR20150132681A KR20150132681A (en) 2015-11-26
KR101671320B1 true KR101671320B1 (en) 2016-11-02

Family

ID=54847268

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140058530A KR101671320B1 (en) 2014-05-15 2014-05-15 Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof

Country Status (1)

Country Link
KR (1) KR101671320B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180064153A (en) * 2016-12-05 2018-06-14 주식회사 포스코 Furnace process virtual reality training system
KR20180078619A (en) * 2016-12-30 2018-07-10 서울대학교산학협력단 Method, system and readable recording medium of creating visual stimulation using virtual model

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102113997B1 (en) * 2016-01-11 2020-05-22 전자부품연구원 Virtual training system for disassemble and assemble a pipe
KR101872806B1 (en) * 2016-12-15 2018-06-29 고등기술연구원연구조합 Safety training system of operator based virtual reality
KR102132952B1 (en) * 2017-05-23 2020-07-10 이영선 Method for Providing Child Care Training Service in Network, and Managing Server Used Threrein
KR102152595B1 (en) * 2017-09-18 2020-09-08 한국과학기술연구원 Coaching system for users participating in virtual reality contents
KR102011063B1 (en) * 2018-04-18 2019-08-14 안용재 Method for providing safty education service using quest based game
KR102633289B1 (en) * 2018-06-29 2024-02-06 한국전력공사 Virtual reality service apparatus and method thereof
KR102309048B1 (en) * 2018-12-10 2021-10-05 연세대학교 산학협력단 Method for generating cognitive tasks and apparatus using the same
KR101990790B1 (en) * 2018-12-12 2019-06-19 사단법인 한국선급 System for collective collaboration training of ship based virtual reality
KR102143784B1 (en) * 2018-12-27 2020-08-12 가톨릭대학교 산학협력단 System for estimating otorhinolaryngology and neurosurgery surgery based on simulator of virtual reality
KR102221193B1 (en) * 2019-07-10 2021-03-03 한국과학기술연구원 Coaching system for users participating in virtual reality contents
KR102164371B1 (en) * 2019-11-29 2020-10-12 주식회사 아이브이알시스템즈 Interaction implementing method of virtual object for virtual maintenance training
KR102418994B1 (en) * 2019-12-31 2022-07-11 주식회사 버넥트 Method for providng work guide based augmented reality and evaluating work proficiency according to the work guide
KR102458109B1 (en) * 2020-04-26 2022-10-25 계명대학교 산학협력단 Effective data sharing system and method of virtual reality model for lecture
KR102234995B1 (en) * 2020-12-31 2021-04-01 주식회사 델바인 Method, device and system for performing rehabilitation training of cognitive function using virtual object model

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101333147B1 (en) * 2012-06-19 2013-11-26 에이알비전 (주) Support system for group training of indoor using mixed reality

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100345319B1 (en) * 1999-07-22 2002-07-22 학교법인 포항공과대학교 Interaction method for transmitting movement information in virtual reality system
KR20120044461A (en) * 2010-10-28 2012-05-08 (주)브이엔에스텍 The simulated training apparatus and method using mixed reality

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101333147B1 (en) * 2012-06-19 2013-11-26 에이알비전 (주) Support system for group training of indoor using mixed reality

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180064153A (en) * 2016-12-05 2018-06-14 주식회사 포스코 Furnace process virtual reality training system
KR101917434B1 (en) * 2016-12-05 2018-11-09 주식회사 포스코 Furnace process virtual reality training system
KR20180078619A (en) * 2016-12-30 2018-07-10 서울대학교산학협력단 Method, system and readable recording medium of creating visual stimulation using virtual model
KR101907181B1 (en) 2016-12-30 2018-10-12 서울대학교산학협력단 Method, system and readable recording medium of creating visual stimulation using virtual model

Also Published As

Publication number Publication date
KR20150132681A (en) 2015-11-26

Similar Documents

Publication Publication Date Title
KR101839113B1 (en) Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof
KR101671320B1 (en) Virtual network training processing unit included client system of immersive virtual training system that enables recognition of respective virtual training space and collective and organizational cooperative training in shared virtual workspace of number of trainees through multiple access and immersive virtual training method using thereof
Krupke et al. Comparison of multimodal heading and pointing gestures for co-located mixed reality human-robot interaction
US11850755B2 (en) Visualization and modification of operational bounding zones using augmented reality
CN110610547B (en) Cabin practical training method, system and storage medium based on virtual reality
Solanes et al. Teleoperation of industrial robot manipulators based on augmented reality
CN110335359B (en) Distribution board fire accident emergency drilling simulation method based on virtual reality technology
CN106530887B (en) Fire scene simulating escape method and device
CN105425955A (en) Multi-user immersive full-interactive virtual reality engineering training system
KR102001214B1 (en) Apparatus and method for dual-arm robot teaching based on virtual reality
CN107257946B (en) System for virtual debugging
CN111716365B (en) Immersive remote interaction system and method based on natural walking
CN110682291B (en) Robot teleoperation system based on VR and teleoperation method thereof
KR20160020136A (en) Training system for treating disaster using virtual reality and role playing game
JP2019008623A (en) Information processing apparatus, information processing apparatus control method, computer program, and storage medium
Almeida et al. Be the robot: Human embodiment in tele-operation driving tasks
Hrimech et al. How 3D interaction metaphors affect user experience in collaborative virtual environment
Fang et al. A multi-user virtual 3D training environment to advance collaboration among crane operator and ground personnel in blind lifts
Su et al. Development of an effective 3D VR-based manipulation system for industrial robot manipulators
KR100756345B1 (en) Robot simulation system using the network
KR20190095849A (en) Real time and multi local cross remote control system and method using Mixed Reality Device
Betancourt et al. Exocentric control scheme for robot applications: An immersive virtual reality approach
Mizuchi et al. Evaluation of human behavior difference with restricted Field of view in real and VR environments
CN108803862B (en) Account relation establishing method and device used in virtual reality scene
KR102259762B1 (en) Cooperation Training System for Crane using Virtual Reality

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant