KR20150132681A - 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. - Google Patents
다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. Download PDFInfo
- Publication number
- KR20150132681A KR20150132681A KR1020140058530A KR20140058530A KR20150132681A KR 20150132681 A KR20150132681 A KR 20150132681A KR 1020140058530 A KR1020140058530 A KR 1020140058530A KR 20140058530 A KR20140058530 A KR 20140058530A KR 20150132681 A KR20150132681 A KR 20150132681A
- Authority
- KR
- South Korea
- Prior art keywords
- training
- virtual
- trainee
- motion
- client
- Prior art date
Links
- 238000012549 training Methods 0.000 title claims abstract description 254
- 238000000034 method Methods 0.000 title claims abstract description 86
- 238000012545 processing Methods 0.000 title claims abstract description 86
- 230000033001 locomotion Effects 0.000 claims abstract description 271
- 230000008569 process Effects 0.000 claims abstract description 45
- 230000005540 biological transmission Effects 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 8
- 238000012790 confirmation Methods 0.000 claims description 6
- 230000009897 systematic effect Effects 0.000 claims description 6
- 230000000007 visual effect Effects 0.000 claims description 4
- 210000003128 head Anatomy 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 230000009471 action Effects 0.000 description 7
- 210000001624 hip Anatomy 0.000 description 6
- 230000018109 developmental process Effects 0.000 description 5
- 238000009877 rendering Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013024 troubleshooting Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 235000012813 breadcrumbs Nutrition 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003155 kinesthetic effect Effects 0.000 description 1
- 210000004197 pelvis Anatomy 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012144 step-by-step procedure Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
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)를 포함하여 구성되는 것을 특징으로 한다.
Description
본 발명은 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법에 관한 것으로, 구체적으로는 팀을 이루는 다수의 훈련자에 대한 집단적인 기술훈련이 요구되는 작업환경, 예컨대, 예상하지 못한 재난 대응 훈련 등의 수행을 위하여, 가상공간 교육에 참여하는 다수의 훈련자가 개인별로 타 훈련자를 포함하는 가상훈련공간을 인식하는 것이 가능하고, 타 훈련자 및 훈련 관리자 등 훈련 참여자와 커뮤니케이션이 가능하여, 훈련의 총책임자인 훈련 관리자가 교육의 내용을 감독하며 그 결과를 측정할 수 있는 집단적이고 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템에 관한 것으로, 조직적인 지시 및 통제와 행동이 필요한 작업환경 예컨대, 재난 발생 환경을 컴퓨터 그래픽 기술과 전산응용 기술을 융합하여 객체간 상호작용하는 가상환경(VR)으로 구현하여 가상훈련공간을 구성하고, 각 훈련 참여자들이 구성된 가상훈련공간을 공유하며 훈련 목적 및 내용을 포함하는 훈련 시나리오와 훈련 관리자의 지시에 의한 행동 지침에 따라 훈련을 수행하도록 하는 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법에 관한 것이다.
현재 가상훈련 시스템 및 이를 통한 가상훈련 방법은, 다양한 산업(게임, 의료, 건축, 항공, 원자력)에서의 작업훈련에 활용되고 있으며, 특히, 정상적인 현실에서 경험할 수 없는 재난(인적재난과 자연재난)상황에서의 훈련 또는 기술보안이 요구되거나 위험한 산업현장에서의 작업훈련 등에 활용되어, 다양한 시나리오를 통하여 디지털 디스플레이를 통해 제공되는 가상훈련공간에서의 작업훈련을 통해, 각 확경 및 요구되는 작업을 체험하여, 훈련부족 및 경험 부족으로 발생할 수 있는 인적오류를 방지하고 이로 인한 막대한 경제적인 손실과 인명피해를 방지할 수 있는 효율적인 훈련방법으로 활용되고 있다.
이러한 가상훈련 시스템은 2010년 이후 디스플레이 및 소프트웨어 시장의 발전으로, 가상훈련 시스템에 다양한 하드웨어 및 소프트웨어가 연동되고 있으며, 특히, 가상현실(VR) 장비로서 고가 장비였던, HMD(Head Mounted Display)가 보편화 단계에 이르고 있으며, 또한, 사람의 동작을 인식할 수 있는 모션인식 장비는 그 성능이 향상되고 가격도 저렴해져서, HMD(Head Mounted Display)와 모션인식 장비가 하드웨어로서 설치되어 연동되는 가상훈련 시스템의 상용화가 가능한 상황이다.
한편, 현재 가상훈련 시스템은 그 하드웨어적 및 소프트웨어적인 발전에도 불구하고 주로 1인의 훈련자가 접속하여 혼자 체험 및 훈련하는 방식의 1 인형 가상훈련 시스템이 일반적이다.
반면, 실제로 산업현장의 인적오류로 인한 사고사항을 분석한 결과에 의하면 사건, 사고들 중 약 70%가 팀원들이 가용한 자원을 적절하게 이용하지 못한 것이 사고 발생에 직·간접적으로 영향을 준 것으로 나타나고 있으며, 재난 사고 역시 경험하지 않은 환경에서 서로 간의 부적절한 의사결정, 효과적이지 못한 커뮤니케이션 때문에 막대한 인명 피해와 경제적 손실을 가져왔다. 이러한 결과는 부적절한 리더십, 그리고 열악한 관리기술과 관련된 것으로 밝혀지면서 팀원들 간의 협력과 의사소통을 기반으로 각 팀원들의 자원관리 능력에 대한 훈련이 절실히 요구되고 있다.
따라서, 팀원인 다수의 접속자가 동시에 가상공간에서 동일한 작업환경 및 작업을 실시간 체험 및 훈련이 가능하며, 팀원들간의 가상작업공간을 자기시점에서 인식하고 공유하고, 팀원 간 및 팀 리더와 팀원 간의 커뮤니케이션의 훈련이 가능한 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 개발이 절실히 요구되고 있는 상황이다.
이에 따라 본 발명은 팀원인 다중 접속자가 동시에 가상작업공간에서 실시간 체험하는 훈련이 가능하며, 팀원들 간의 가상작업공간을 자기시점에서 인식하고 공유하여 팀원 간 및 팀 리더와 팀원 간의 커뮤니케이션의 훈련이 가능한, 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하는 것을 목적으로 한다.
또한, 위와 같은 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상훈련공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 각 훈련자의 클라이언트 시스템의 구성이 가능한 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하는 것을 목적으로 한다.
나아가, 본 발명은 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하여, 저렴한 비용으로 설치 사용이 가능하고, 중앙서버 접속방식의 서버 과부하 및 이에 따른 접속과 프로그램 프로세싱의 지연을 방지하고 다양한 방식으로 네트워크 구성이 가능하여 다양한 협업훈련에 적용 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 통한 몰입식 네트워크 가상훈련 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위하여, 일 측면에서 본 발명은, 훈련 관리자에게 제공되어 훈련과정을 모니터링하도록 하는 마스터 시스템(300)과 연동하여, 각 훈련자에게 제공되고 클라이언트 HMD 장치 및 클라이언트 모션인식 장비와 연결되어 클라이언트 HMD 장치에 디스플레이되는 화면상의 가상공간인 가상작업공간에서 훈련을 수행하도록 하는 클라이언트 시스템의 가상훈련 처리장치(200)로, 클라이언트 HMD 장치 및 클라이언트 모션인식 장비를 초기화하고, 클라이언트 시스템 처리부(220)와 연계하여 각 기능을 설정하는 모션인식/디스플레이부(210); 마스터 시스템(300)과 네트워크 접속을 수행하며 3D 컨텐츠로 구성된 훈련 콘텐츠를 로딩하고, 클라이언트 모션인식 장비로부터 인식된 모션 데이터를 수신하여 처리하는 클라이언트 시스템 처리부(220); 3D 컨텐츠로 구성된 훈련 콘텐츠를 초기화하고 가상작업공간 내 훈련자의 캐릭터를 생성하여 로딩하며, 가상작업공간에서 훈련 내용인 작업이 진행되도록 제어하는 훈련 시나리오 처리부(230)를 포함하여 구성되는 것을 특징으로 한다.
바람직하게는, 상기 모션인식/디스플레이부(210)는, 클라인언트 모션인식 장비를 초기화하는 모션인식 컨트롤러 초기화 모듈(215); 클라인언트 모션인식 장비로부터 훈련자의 동작에 따른 데이터를 수신하여 훈련자의 모션 데이터를 추출하여 훈련자의 동작을 트랙킹하는 모션 트랙킹 모듈(216); 상기 훈련자의 모션 데이터를 가상작업공간의 훈련자의 캐릭터의 관절 데이터에 링크시키는 모션 링크 모듈(217)을 포함하여, 모션 트랙킹 모듈(216)은 마스터 시스템으로부터 수신된 훈련 권한에 관한 데이터에 따라, 작업 권한을 부여받은 것으로 판단된 경우 활성화되어 모션 트랙킹을 수행한다.
여기서, 상기 모션인식/디스플레이부(210)는, 클라이언트 HMD 장치의 초기화를 진행하는 클라이언트 HMD 초기화 모듈(211); 클라이언트 HMD 장치의 HMD 트랙킹 모듈센서로부터 인식되는 훈련자의 머리의 움직임에 따른 데이터를 연산하여 훈련자 머리의 모션 데이터로 생성하는 클라이언트 HMD 트랙킹 모듈(212); 클라이언트 HMD 장치의 카메라 시야 디스플레이를 가상작업공간 내 위치한 훈련자의 캐릭터의 카메라에 링크시키는 클라이언트 HMD 카메라 링크 모듈(213); 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송하는 디스플레이 모듈(214);을 포함하여, 마스터 시스템(300)으로부터 훈련 권한에 관한 데이터에 따라, 작업 권한을 부여받지 않은 것으로 판단된 경우, 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송되며, 모션 트랙킹 모듈(216)은 비활성화되어 모션 트랙킹을 수행하지 않는 것이 바람직하다.
또한, 바람직하게는, 상기 클라이언트 시스템 처리부(220)는, 3D 엔진 및 필요 프로그램을 초기화하는 시스템 초기화 모듈(221); 훈련자로부터 입력된 정보에 따라 네트워크 접속 환경을 세팅하고 이에 따라 네트워크 접속을 진행하는 네트워크 세팅 모듈(222); 3D 가상훈련 콘텐츠를 로딩하는 3D 콘텐츠 로딩 모듈(223); 사전 설정된 훈련자에게 요구되는 작업의 동작과 모션 데이터로부터 인식되는 훈련자의 동작을 비교하여 모션의 일치 여부를 판단하는 모션 프로세스 모듈(224);을 포함한다.
여기서, 모션 프로세스 모듈(224)은 판단된 모션의 일치 여부에 기초하여 훈련자의 동작에 대한 모션 정확도를 추출하는 것이 바람직하다.
나아가 바람직하게는, 훈련 시나리오 처리부(230)는, 가상 공간 내 훈련 콘텐츠를 초기화하는 훈련 콘텐츠 초기화 모듈(231); 마스터 시스템(300)으로부터 캐릭터를 부여받아 초기화된 가상작업공간 내 생성하는 훈련자 캐릭터 로딩 모듈(232);을 포함하여, 훈련자 캐릭터 로딩 모듈(232)은 마스터 시스템으로부터 전달된 훈련자에게 할당된 캐릭터 객체 및 상기 캐릭터 객체의 가상작업공간 내 위치정보에 따라 상기 캐릭터 객체를 가상작업공간 내 특정 위치에 표시되도록 로딩한다.
여기서, 훈련 시나리오 처리부(230)는, 마스터 시스템으로부터 임무에 관한 정보 및 작업 권한을 수신하는 훈련 데이터/메시지 수신 모듈(233)을 포함하는 것이 바람직하다.
또한, 훈련 시나리오 처리부(230)는, 모션 정확도와 및 작업 시간을 포함하여 훈련에 대한 결과를 데이터 형태로 생성하여 마스터 시스템에게 전달하는 훈련 결과 정보 생성 모듈(235)을 포함하는 것이 바람직하다.
나아가, 바람직하게는 상기 가상작업공간은 작업주변환경, 작업캐릭터, 작업공구, 작업대상물에 대한 객체를 포함하여 구성된다.
여기서, 상기 작업대상물에 대한 객체는 콜리더(Collider)가 세팅되는 것이 바람직하다.
다른 측면에서 본 발명은 다중 접속을 통하여 개별적인 공간인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템을 이용한 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법으로, 클라이언트 HMD 장치 및 모션인식 장비를 초기화하여, 그 ID 를 수신 및 확인하여 연결을 설정하며, 가상작업공간의 접속을 위한 GUI 화면을 세팅하고 마스터 시스템(300)와 접속할 수 있는 GUI 화면을 제공하는 시스템 초기화 단계(S100);
상기 제공된 GUI을 통하여 클라이언트 시스템의 IP, 접속자 ID, 접속 방의 정보를 입력받고 입력되는 정보에 따라 마스터 서버(300)와의 네트워크 접속환경을 세팅하여 네트워크 접속하는 네트워크설정/접속 단계(S200); 3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하고, 로딩된 3D 객체를 사전 설정된 값으로 세팅하여 가상공간상에 배치하는 컨텐츠 초기화 단계(S300); 마스터 시스템으로부터 동작 권한에 관한 플레이 턴 데이터를 수신하여 동작 권한을 부여받고 작업내용에 관한 메시지를 수신하여 훈련자에게 표시하며, 해당 훈련자의 모션을 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상작업공간을 구성하는 객체의 위치값, 회전값, 크기 값 등을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 훈련 이벤트 프로세싱 단계(S400); 훈련 데이터 및 최종 훈련 결과 정보를 마스터 시스템에게 송신하는 성과 데이터 송신/확인 단계(S500); 훈련이 종료된 훈련자에게 작업 권한이 부여되어 훈련이 진행중인 타 훈련자의 가상작업환경을 제공하도록 훈련이 종료된 훈련자 클라이언트 시스템으로 화면 데이터를 생성하여 제공하는 작업관찰단계(S600);를 포함하여 수행되는 것을 특징으로 한다.
바람직하게는, 상기 가상작업공간을 구성하는 객체는 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체를 포함한다.
여기서, 상기 컨텐츠 초기화 단계(S300)는, 상기 작업대상물객체에 콜리더(Collider)를 세팅하는 과정을 포함하여 수행되는 것이 바람직하다.
또한, 바람직하게는 상기 훈련 이벤트 프로세싱 단계(S400)는, 훈련 결과 정보 생성 과정을 포함하여, 작업시간, 이동 경로 이탈 여부, 훈련 제스쳐 동작 일치 여부의 데이터를 생성한다.
나아가, 바람직하게는 훈련 이벤트 프로세싱 단계(S400)는 훈련이 종료된 훈련자에 대하여 수행되지 않는 것을 특징으로 한다.
본 발명에 의하면, 팀원인 다중 접속자가 동시에 가상작업공간에서 실시간 체험 및 훈련이 가능하며, 팀원들간의 가상작업공간을 자기시점에서 인식하고 공유하여 팀원 간 및 팀 리더와 팀원 간의 커뮤니케이션의 훈련이 가능한 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 통한 몰입식 네트워크 가상훈련 방법을 제공할 수 있게 되는 효과를 가져온다.
또한, 본 발명에 의하면, 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템 및 이를 이용한 몰입식 네트워크 가상훈련 방법을 제공하여, 중앙서버 접속방식의 서버 과부하 및 이에 따른 접속과 프로그램 프로세싱의 지연을 방지하며, 다양한 방식으로 네트워크 구성이 가능하여 다양한 협업훈련에 적용이 가능한 효과를 얻는다.
나아가, 본 발명 기술을 적용하여, 재난 훈련 교육 및 위험시설 안전 교육 시뮬레이션 등의 프로그램에 쉽게 접목 가능하며, 1인 교육으로 제작되어 있는 수많은 재난, 교육 안전 콘텐츠 등에 적용하여, 실질적인 훈련효과를 기대할 수 있는 다중 네트워크를 통하여 몰입식으로 고도화할 수 있는 기술을 제공하는 효과를 얻는다.
도 1은 본 발명의 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 구성도.
도 2a는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)의 구성도.
도 2b는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)에서 인식되어 모션 매핑되는 각 관절명칭의 출력화면.
도 3은 본 발명의 일실시예에 따른 클라이언트 시스템 처리부(220)의 구성도.
도 4는 본 발명의 일실시예에 따른 훈련 시나리오 처리부(230)의 구성도.
도 5는 본 발명의 일실시예에 따른 마스터 시스템(300)의 구성도.
도 6은 본 발명의 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 실제 구현을 설명하기 위한 도면.
도 7은 본 발명의 일실시예에 따른 가상작업환경의 구현 화면.
도 8은 본 발명의 몰입시 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 흐름도.
도 9는 본 발명의 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 타임 테이블.
도 2a는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)의 구성도.
도 2b는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)에서 인식되어 모션 매핑되는 각 관절명칭의 출력화면.
도 3은 본 발명의 일실시예에 따른 클라이언트 시스템 처리부(220)의 구성도.
도 4는 본 발명의 일실시예에 따른 훈련 시나리오 처리부(230)의 구성도.
도 5는 본 발명의 일실시예에 따른 마스터 시스템(300)의 구성도.
도 6은 본 발명의 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 실제 구현을 설명하기 위한 도면.
도 7은 본 발명의 일실시예에 따른 가상작업환경의 구현 화면.
도 8은 본 발명의 몰입시 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 흐름도.
도 9는 본 발명의 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 타임 테이블.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시 예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는 적절하게 설명된다면 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구 항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
도 1은 본 발명의 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 구성도이다.
도 1을 참조하면, 본 발명의 다중접속을 통하여 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템은 각각 클라이언트 HMD(Head Mounted Display)장치와 클라이언트 모션장비를 포함하는 다수의 훈련자 클라이언트 시스템(100)(클라이언트 시스템1, 클라이언트 시스템2...클라이언트 시스템n), 네트워크 가상훈련 처리장치(200), 및 마스터 시스템(300)으로 구성된다.
각 훈련자 클라이언트 시스템(100)은 클라이언트 HMD 장치 및 클라이언트 모션인식 장비와 연결되는 클라이언트 단말(미도시)을 포함하여 구성되며, 클라이언트 모션인식 장비는 접촉식 모션인식 장치(또는 접촉식 모션인식 컨트롤러)와 비접촉식 모션인식 장치(또는 접촉식 모션인식 컨트롤러)를 포함하여 구성된다.
네트워크 가상훈련 처리장치(200)는 각 훈련자 클라이언트 시스템(클라이언트 시스템1, 클라이언트 시스템2...클라이언트 시스템n)을 구성하며 각각의 클라이언트 단말 내에서 구동되는 프로그램의 형태로 포함되어 각 훈련자의 클라이언트 단말(미도시)에서 구동된다. 이 경우 클라이언트 프로그램으로 통칭한다.
마스터 시스템(300)은 각 클라이언트 시스템의 클라이언트 단말과 네트워크를 통하여 다중 접속되어, 각 클라이언트 시스템에 접속된 훈련자가 동일한 가상작업공간에서 훈련을 체험할 수 있도록 각 클라이언트 시스템의 가상훈련 처리장치(200)를 동기화하고 훈련에 필요한 명령을 입력받아 전달하고 훈련 관리자에게 필요한 훈련정보를 출력하기 위한 UI 및 필요 기능을 제공하는 목적으로 서버(미도시)에 설치된다.
클라이언트 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가지 데이터를 의미한다.
클라이언트 모션인식 장비는 사용자의 움직임을 인식/추적하는 모션 트랙킹 장치로, 접촉식 모션인식 컨트롤러(예컨대, Virtuix Omni, Cyberith Virtualizer, PrioVR 등)와 비접촉식 모션인식 컨트롤러(예컨대, Kinect SDK 등) 중 하나 또는 2가지 모두가 선택되어 사용되며, 본 실시예의 경우 접촉식 컨트롤러 및 비접촉식 컨트롤러 모두가 클라이언트 모션인식 장비로 사용된다.
접촉식 모션인식 컨트롤러는 훈련자의 이동과 회전을 인식하며, 접촉식 모션인식 컨트롤러를 통해 인식된 훈련자의 이동과 회전은 가상작업공간의 캐릭터의 이동 및 좌우 회전으로 매핑된다.
본 발명에서는 접촉식 컨트롤러로서 상용화된 모션인식 컨트롤러 즉, Virtuix Omni or Cyberith Virtualizer등의 모션 컨트롤러를 사용될 수 있으며, 이는 통상 발판의 센서와 훈련자의 허리 부근에 위치하는 센서를 포함하여, 훈련자가 발을 사용하여 발판을 구르게 되면, 발판의 센서를 통해 신호를 수신하고, 접촉식 컨트롤러는 이를 특정 훈련자의 행동 중 전진 이동에 대한 모션 데이터으로 출력한다. 상기 모션 데이터에 따라 가상작업공간 내에서 훈련자의 캐릭터가 이동 동작을 수행하게 된다.
한편, 허리에 위치한 회전 센서는 훈련자가 몸을 좌우로 비틀 때마다 Y축 각도를 인식하여, 이를 모션 데이터로 출력하며, 이러한 회전값은 화면 속 작업자의 캐릭터에게 실시간으로 매핑되어 가상작업공간인 화면 안에 있는 캐릭터의 상체 및/또는 하체가 Y축으로 회전하게 된다.
비접촉식 컨트롤러는 캐릭터의 훈련 행동을 인식 및 분석하는 역할을 담당하며, 훈련 행동은 훈련자의 손 및 팔의 동작으로, 크게 2가지 동작 내지 모션을 인식하여 모션 데이터로 출력한다.
첫째는 물체에 대한 손으로 쥐는 동작 즉, 그립 모션 인식으로, 화면상에 공구 등 장비가 있을 경우 훈련자가 손을 펴고 있다가 손을 움켜쥐었을 때, 가상작업공간에 매핑된 훈련자 캐릭터의 손의 위치와 공구 등 장비의 위치가 일치하면, 가상작업공간에서 손으로 공구 등 장비를 잡은 것으로 인식하도록 한다. 이는 가상작업공간의 화면상에서의 마우스 컨트롤과 같다. 즉, 화면에 마우스 포인터는 동작인식의 오른쪽 손의 움직임에 매핑된다. 모든 물체를 잡을 수 있는 것은 아니며, 훈련 시나리오상 필요한 객체 예컨대, 작업공구만을 잡는 물체로 인식한다(예, 드라이버, 펜치, 망치 등의 공구류).
둘째는 훈련자의 팔의 동작 관련 모션 인식이다. 훈련 시나리오에 따라 작업자는 동작을 따라해야 한다. 망치질의 경우 훈련자가 팔을 앞뒤로 흔드는 동작을 수행함으로써, 가상작업공간의 훈련자의 캐릭터가 망치질을 한다고 인식하여 가상작업공간의 화면상에서 망치질을 수행하는 동작을 수행한다. 이런 모션들은 훈련 시나리오에 필요한 동작이 사전 설정되고, 동작 내지 모션 트래킹된 동작과의 일치 여부를 판단하는 방식으로 수행된다.
도 1을 참조하면, 본 발명의 네트워크 가상훈련 처리장치(200)는 클라이언트 모션인식/디스플레이부(210), 클라이언트 시스템 처리부(220), 훈련 시나리오 처리부(230)를 포함하여 구성된다.
도 2a는 본 발명의 클라이언트 모션인식 및 디스플레이부의 실시예의 구성도이다.
도 2a를 참조하면, 클라이언트 모션인식/디스플레이부(210)는 클라이언트 시스템에 연결된 클라이언트 HMD 장치 및 각 모션인식 컨트롤러를 초기화하고, 클라이언트 시스템 처리부(220)와 연계하여 각 기능을 설정하며, 클라이언트 HMD 초기화 모듈(211), 클라이언트 HMD 트랙킹 모듈(212), 클라이언트 HMD 카메라 링크 모듈(213), 디스플레이 모듈(214), 모션인식 컨트롤러 초기화 모듈(215), 모션 트랙킹 모듈(216), 모션 링크 모듈(217)로 구성된다.
클라이언트 HMD 초기화 모듈(211)은 클라이언트 HMD 장치의 초기화를 진행한다. 클라이언트 HMD 초기화 모듈(211)은 각 클라이언트 단말에 연결된 클라이언트 HMD 장치의 연결 상태를 확인하며, 연결된 클라이언트 HMD 장치의 ID를 추출하여 해당 클라이언트 시스템의 클라이언트 HMD 장치의 ID를 클라이언트 시스템 처리부(220)로 전달한다.
상기 ID값은 클라이언트 HMD 장치의 하드웨어 고유 번호로써 String(문자열) Data 형태로 클라이언트 시스템 처리부(220)로 전달된다.
클라이언트 시스템 처리부(220)에서는 전달된 클라이언트 HMD 장치 ID를 확인 및 저장하며, 사전 저장된 클라이언트 HMD 장치 ID 목록과 대비하여 해당 ID가 존재하지 않는 경우 또는 이를 전달 받지 못한 경우에는 디바이스의 연결이 올바르지 않은 것으로 판단하여, 경고 문자열(Alert String)을 메시지로서 디스플레이 모듈로 전달하여 훈련자가 장비 연결 여부를 다시 확인하도록 한다.
클라이언트 시스템 처리부(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)을 준비한다.
클라이언트 HMD 트랙킹 모듈(212)은 클라이언트 HMD 장치의 HMD 트랙킹 모듈센서로부터 인식되는 훈련자의 머리의 움직임에 따른 데이터를 연산하여 훈련자 머리의 모션 데이터로 생성하며, HMD 트랙킹 모듈센서, 예컨대 자이로센서, 중력센서 등이 내장된, HMD 장치에서 HMD 트랙킹 모듈센서로부터 이를 착용한 작업자의 머리의 움직임 데이터 즉 X,Y,Z 축의 회전 정보(X,Y,Z 축 회전값)를 연산하여 모션 데이터로 생성하여, 클라이언트 처리부(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도를 의미한다.
클라이언트 HMD 카메라 링크 모듈(213)은 클라이언트 HMD 장치의 카메라 시야 디스플레이를 가상작업공간 내 위치한 훈련자의 캐릭터의 카메라에 링크시킨다.
이러한 링크는 HMD 트랙킹 모듈(212)로부터 전달받은 X,Y,Z 축 회전값을 가상작업공간 내 훈련자 자신의 캐릭터 세팅되어져 있는 양쪽 카메라(왼쪽눈,오른쪽눈)의 Rotation값 (회전값)으로 전달하여 실시간 처리(매핑)하는 방식으로 수행된다.
이를 위하여, 클라이언트 HMD 카메라 링크 모듈(213)은 실시간으로 클라이언트 HMD 장치의 X,Y,Z 축 회전값 데이터를 전달받으며, 이 값을 통해 가상작업공간 내 카메라의 회전값(Rotation값)으로 변환하며, 가상작업공간 내 카메라의 회전값(Rotation값)에 따라 가상작업공간 내 카메라가 회전되며 이러한 카메라의 회전에 따라 디스플레이되는 화면이 실시간으로 변경된다. 캐릭터가 양쪽 카메라(눈)로 보는 시야의 화면은 디스플레이 모듈(214)로 전달되며, 3D 랜더링 엔진에 의해 디스플레이처리된다.
이에 따라, 가상 공간 캐릭터의 카메라 두 대가 바라보는 3D 환경은 클라이언트 HMD 장치의 두 개의 렌즈(왼쪽,오른쪽)에 디스플레이된다. 즉, 가상 공간 내 캐릭터 카메라의 x,y,z 축 회전값은 HMD 의 자이로 센서 x,y,z 축 회전값을 실시간으로 링크되어 훈련자가 HMD 장치를 착용하여 고개를 회전하면, 그 회전 값이 가상작업공간 훈련자 자신의 캐릭터의 카메라에 매핑. 캐릭터의 카메라는 두 개가 세팅된다. 하나는 HMD 장치의 왼쪽 렌즈 역할, 또 하나는 오른쪽 렌즈의 역할을 담당하게 된다.
디스플레이 모듈(214)은 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송하여, 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자가 HMD 장치의 화면을 통하여 볼 수 있도록 한다. 3D 엔진에서 처리된 가상작업공간의 랜더링 화면이 HMD 렌즈에 디스플레이되며, 가상 공간의 캐릭터 내 카메라 2대(왼쪽, 오른쪽)의 시점 및 시각이 HMD 장치의 좌측 렌즈 및 우측 렌즈에 전송되어 디스플레이된다.
모션인식 컨트롤러 초기화 모듈(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)가 사용된다. 연결 상태가 확인되면 접촉식 모션인식 컨트롤러의 센서와 비접촉식 컨트롤러의 센서를 작동을 개시한다.
모션 트랙킹 모듈(216)은 클라인언트 모션인식 장비로부터 훈련자의 동작에 따른 데이터를 수신하여 훈련자의 모션 데이터를 추출하여 훈련자의 동작을 트랙킹한다. 각 클라이언트 시스템에 세팅된 클라이언트 모션인식 장비들의 SDK를 통해 얻어지는 모션 데이터 즉, 각 관절의 회전값 및 위치값 등을 추출하여 훈련자의 동작 내지 모션을 트랙킹하게 된다.
도 2b는 본 발명의 일실시예에 따른 클라이언트 모션인식/디스플레이부(210)에서 인식되어 모션 매핑되는 각 관절명칭의 출력화면으로 도 2를 참조하면, 본 실시예에 있어서, 가상작업공간 캐릭터의 23개의 관절의 위치값 및 회전값을 추적하여 사용한다. 각 관절의 위치값은 x위치,y위치,z위치의 float형 실수 3개가 합쳐져 Vector3의 랜더링 엔진에서 처리되는 데이터 타입으로 전달된다. 회전값 또한 x회전값, y축회전값, z축 회전값의 float형 실수 3개가 합쳐진 Vector3 타입으로 전달된다. 한편, 모션 트래킹 모듈(216)은 항상 동작하는 것은 아니며, 마스터 시스템(300)으로부터 작업 권한을 받은 상태에서만 모션 트래킹 모듈(216)은 실행된다. 즉, 작업 권한은 훈련데이터/메시지 수신모듈(233)로부터 전달받으며, 훈련 도중 마스터 시스템(300)으로부터 작업 권한을 받게 된 경우에 모션 트래킹 모듈(216)의 모션 트래킹이 진행되고, 트래킹된 모션 데이터 값은 모션 링크 모듈(217)로 전달된다.
모션 링크 모듈(217)은 모션인식 장비의 모션인식에 의하여 얻어진 모션 데이터 즉, 관절 데이터와 가상작업공간 캐릭터의 관절 데이터에 링크시키는 기능을 수행한다. 모션 트랙킹 모듈(216)에서 추적된 훈련자의 모션 데이터 즉, 23개의 관절 모션 데이터는 가상작업공간 해당 작업자의 캐릭터의 bone(biped Animation)의 회전값(Vector3)과 위치값(Vector3)에 매핑된다. 즉, 가상작업공간 캐릭터의 관절 데이터에 연결해주는 작업을 진행되어, 이에 따라 훈련자의 움직임이 실시간으로 가상작업공간의 훈련자의 캐릭터에 매핑된다. 이를 위하여 모션 링크 모듈(217)은 모션인식 컨트롤러 본 실시예의 경우 비접촉식 모션인식 컨트롤러의 센서를 통해 훈련자의 동작 내지 모션인식을 통하여 얻어진 모션 데이터 즉, 각 관절의 회전 값 및 위치값을 클라이언트 시스템 처리부(220)로 전달하며, 훈련도중 모션을 비교해야 될 상황이 발생되면, 클라이언트 시스템 처리부(220)에서 모션 링크 모듈(216)로 받은 모션 데이터를 활용하여, 사전 설정되어 저장된 동작 내지 이를 표시하는 동작 데이터와의 일치/불일치 여부를 판단하게 된다.
도 3은 본 발명의 일실시예에 따른 클라이언트 시스템 처리부(220)의 구성도이다.
도 3을 참조하면, 클라이언트 시스템 처리부(220)는 마스터 시스템(300)과 네트워크 접속을 수행하며 3D 컨텐츠로 구성된 훈련 콘텐츠를 로딩하고, 클라이언트 모션인식 장비로부터 인식된 모션 데이터를 수신하여 처리한다. 즉, 모션 링크 모듈(217) 및 HMD 카메라 링크 모듈(213)로부터 전달받은 비접촉식 모션 컨트롤러와 접촉식 컨트롤러로부터 인식된 모션 데이터를 수신하여 처리하며, 클라이언트 시스템에 내장된 3D 가상환경 로딩 및 훈련 시스템의 준비/처리 작업, 마스터 시스템과의 네트워크 연결 수행을 담당한다.
즉. 클라이언트 시스템 처리부(220)는 클라이언트의 전반적인 프로세스 흐름을 관리/제어하는 역할을 수행하게 된다. 마스터 시스템과의 네트워크 연결이 완료되면, 마스터 시스템(300)과의 데이터 통신(Data 수신, Data 송신)을 담당한다.
마스터 시스템(300)과 송/수신하는 데이터로는 작업 턴 가능 변수 데이터(Bool Type), 채팅 메시지 데이터(String Type), 작업 시간(float Type) 데이터, 훈련 결과 데이터(Array Type)등이 포함된다.
도 3을 참조하면,클라이언트 시스템 처리부(220)은 시스템 초기화 모듈(221), 네트워크 세팅 모듈(222), 시스템 초기화 모듈(221), 네트워크 세팅 모듈(222), 3D 콘텐츠 로딩 모듈(223), 모션 프로세스 모듈(224), 종료 모듈(225)로 구성된다.
시스템 초기화 모듈(221)은 각 클라이언트 시스템에서 3D 엔진 및 필요 프로그램을 초기화하며, 가상훈련 시스템의 필요 프로그램 중 3D 엔진 초기화 및 클라이언트 프로그램의 초기화 즉, 클라이언트 시스템(100)을 구성하는 프로그램 형태의 본 발명의 네트워크 가상훈련 처리장치(200)의 초기화를 진행한다.
시스템 초기화 모듈(221)은 프로그램의 초기화로서 3D 엔진 구동에 필요한 그래픽 드라이버를 윈도우 시스템으로부터 전달받아, 프로그램 구동에 필요한 3D 엔진(Engine) 초기화 작업이 진행하며, 그래픽 드라이버가 없거나 시스템 불안정한 상태에서 프로그램이 구동할 수 없을 경우 경고창을 제공하여, 사용자에게 오류 메시지를 전달한다. 3D 엔진(Engine) 초기화 과정은 Vertex를 통한 Mesh 데이터 초기화, 입출력 시스템 준비, 랜더링 엔진 초기화 등의 과정을 포함하여 수행되며, 3D 엔진 초기화 과정을 거쳐 클라이언트 프로그램이 구동되면, 클라이언트 시스템에 연결되어 있는 하드웨어 장비(클라이언트 HMD 장치 및 클라이언트 모션인식장비)의 ID를 확인하고 연결한다. 하드웨어 장비의 ID는 각각, 클라이언트 HMD 초기화 모듈(211), 모션인식 컨트롤러 초기화 모듈(214)로부터 수신한다.
네트워크 세팅 모듈(222)은 훈련자로부터 입력된 정보에 따라 네트워크 접속 환경을 세팅하고 이에 따라 네트워크 접속을 진행하며, 네트워크 접속의 시작/완료를 담당한다. 네트워크의 접속을 위한 세팅은 훈련자에게 이를 위한 GUI 화면을 제공하여 정보를 입력받는 방식으로 수행된다.
훈련자는 GUI 화면을 통해 접속할 IP, 접속 Port, 사용자 ID 의 데이터를 입력하여, 입력 버튼UI 예컨대, "Join" 버튼을 누르면 네트워크 접속을 시도하고, 해당 데이터를 마스터 시스템에게 전송한다. 접속할 IP, 접속 Port번호로 마스터 시스템(300)이 구동된 상태인 경우 접속에 성공하게 되고, 3D 콘텐츠 로딩 모듈(233)이 활성화되어 3D 콘텐츠 로딩이 진행된다. 입력한 IP 및 Port번호가 서버 즉, 마스터 시스템(300)에서 응답이 없을 경우, 일정시간 예컨대 30초 정도 대기 후 접속을 중지하고, 사용자로부터 재입력을 요구한다. 마스터 시스템(300)에서 설정한 접속 가능 인원에 따라, 훈련자의 마스터 시스템(300)으로의 접근이 제한될 수 있다.
3D 콘텐츠 로딩 모듈(223)은 클라이언트 프로그램 내 탑재된 3D 가상훈련 콘텐츠를 로딩하는 모듈이다. 3D 가상훈련 콘텐츠는 각 클라이언트 시스템(100)의 클라이언트 프로그램 내에 데이터베이스(미도시) 형태로 구성되어 저장된다.
네트워크 세팅 모듈(223)을 통해 마스터 시스템(300)으로 접속이 성공하게 되면, 클라이언트 프로그램 내 구성되어 있는 3D 콘텐츠가 로딩된다. 3D 콘텐츠는 3D 형상물. 자세하게는 작업주변환경, 작업공구, 작업 대상물 등으로 구성되어 있으며. GUI환경 예컨대, 버튼UI, 채팅창UI, 작업턴 관리UI, Timer UI, 모션 표시UI 등으로 구성되어 있다. 또한, 3D 콘텐츠 안에는 훈련시나리오를 진행하기 위해 필요한 시나리오 구성(이벤트 스크립트 , 충돌처리 스크립트, 입출력 스크립트)을 포함한다. 이 가상작업공간은 훈련 시나리오를 탑재하고 있어, 캐릭터가 훈련을 진행할 때마다 반응하는 인터렉션 구조로 되어 있다. 훈련 내용 중 훈련 과정에 대한 부분은 훈련 시나리오 처리부(230)과 관련하여 상세히 설명한다.
모션 프로세스 모듈(224)은 사전 설정된 훈련자에게 요구되는 작업의 동작과 모션 데이터로부터 인식되는 훈련자의 동작을 비교하여 모션의 일치 여부를 판단하며, 각 클라이언트 시스템에 연결되어 있는 모션 링크 모듈(217)로부터 모션 데이터를 수신하여, 훈련 시나리오에 필요한 모션을 비교/처리하는 기능을 수행한다.
모션 프로세스 모듈(224)은 판단된 모션의 일치 여부에 기초하여 훈련자의 동작에 대한 모션 정확도를 추출한다, 구체적으로는 클라이언트마다 연결되어 있는 비접촉식 모션 컨트롤러와 접촉식 컨트롤러로부터 각 관절의 회전값, 위치값 Data를 전달받는다. 또한 훈련시나리오에서 동작 요청이 오면 해당 동작과 전달받는 Data와의 비교작업을 통해 모션의 일치 여부를 해당 모듈에서 판단/처리한다. 모션의 일치/불일치 정확도 계산 과정은 아래와 같다.
작업자가 훈련 과정 중 필요한 모션은 클라이언트 프로그램 내 Animation 형태로 미리 제작되어 있다. 훈련 시스템 진행 중 모션 입력 단계에서 프로그램 내 이미 제작되어 있는 Animation 모션 데이터와 모션링크모듈(217)로부터 실시간 전달받는 모션 데이터를 비교하게 된다. 트래킹되는 관절의 위치값과 회전값을 미리 제작되어진 Animation의 위치값과 회전값을 비교하며 정확도를 측정한다. Kinect 모션인식의 경우, 빛이나 각도에 따라 오차범위가 발생할 수 있다. 따라서 정확한 위치값 계산이 아닌 큰 동작의 범위를 인식하는 형태로 계산한다. 오차 범위는 20cm 이내로 한다. 모션 비교를 통해 진행한 시간(float type), 모션 정확도(percent type) 등 훈련에 대한 결과를 데이터 형태로 추출하게 되고, 추출된 데이터는 훈련 결과 정보 생성 모듈(235)을 통해 훈련 결과 정보에 포함되어 마스터 시스템(300)에게 전달된다.
종료 모듈(225)은 훈련 과정의 완료시 네트워크 접속을 해제하고, 로딩된 콘텐츠를 메모리에서 지운 후, 프로그램을 종료하는 기능을 수행한다.
도 4는 본 발명의 일실시예에 따른 훈련 시나리오 처리부(230)의 구성도이다.
도 4를 참조하면, 훈련 시나리오 처리부(230)는 3D 컨텐츠로 구성된 훈련 콘텐츠를 초기화하고 가상작업공간 내 훈련자의 캐릭터를 생성하여 로딩하며, 가상작업공간에서 훈련 내용인 작업이 진행되도록 제어하며, 작업자가 진행해야 될 훈련과정의 일련의 프로세스화된 모듈로써, 3D콘텐츠 로딩 모듈(223)로부터 로딩되어 생성된 3D 가상 콘텐츠를 훈련진행에 필요한 순서로 초기화하고, 마스터 시스템(300)으로부터 훈련자의 가상작업공간 내의 캐릭터를 전달받으며, 훈련 진행을 관장/제어/처리하는 작업을 한다. 훈련 콘텐츠 초기화 모듈(231), 훈련자 캐릭터 로딩 모듈(232), 훈련 데이터/메시지 수신 모듈(233), 이벤트 프로세싱 모듈(234), 훈련 결과 정보 생성 모듈(235)로 구성된다.
훈련 콘텐츠 초기화 모듈(231)은 가상 공간 내 3D 객체 모음으로 이루어진 훈련 콘텐츠를 초기화하는 모듈이다. 훈련 콘텐츠는 3D로 구현된 가상의 공간이며, 그 안에 작업대상물, 작업공구 등 3D로 모델링된 객체들이 구성된다. (배치시 상세설명) 훈련 컨텐츠의 초기화로서, 훈련 콘텐츠 초기화 모듈(231)은 3D 콘텐츠 로딩 모듈(223)로부터 로딩되어 생성된 3D 가상 콘텐츠에 Light 객체를 세팅하여, 질감(텍스쳐)를 랜더링 될 수 있도록 준비하며, 훈련 과정에 필요한 충돌처리 객체에 콜리더(Collider)를 세팅한다. 여기서, 콜리더는 훈련 중 작업자가 이동경로의 범위를 벗어나 이동하는 경우, 작업 대상이 아닌 객체를 터치하는 경우 등 이를 불가능 하도록 충돌처리를 수행하는 Unity3d에서 제공하는 보이지 않는 객체(오브젝트)이다. 또한 캐릭터가 바닥을 뚫고 내려가지 않고 이동할 수 있도록 바닥 객체에 콜리더를 세팅한다. 훈련중 움직이는 애니메이션이 필요한 객체의 경우, 훈련 콘텐츠 초기화 모듈(231)에서 필요 애니메이션을 세팅하는 작업도 진행된다.
훈련자 캐릭터 로딩 모듈(232)은 초기화 모듈(231)에서 초기화된 가상작업공간 내 마스터 시스템(300)으로부터 캐릭터를 부여받아 생성하는 모듈이다. 이를 위해 통해 마스터 시스템(300)은 훈련자에게 할당된 캐릭터 객체 및 가상공간내 위치정보를 전송하며, 훈련자 캐릭터 로딩 모듈(232)은 마스터 시스템으로부터 전달된 훈련자에게 할당된 캐릭터 객체 및 상기 캐릭터 객체의 가상작업공간 내 위치정보에 따라 상기 캐릭터 객체를 가상작업공간 내 특정 위치에 표시되도록 로딩한다.
구체적으로, 마스터 시스템(300)과 네트워크 접속이 클라이언트 시스템 처리부를 통하여 이루어지면, 마스터 시스템(300)에서의 훈련 관리자의 선택입력에 따라, 훈련자에게 할당되는 캐릭터와 가상작업공간에서의 위치가 설정되어 그 위치값이 클라이언트 시스템으로 전송하며, 로딩되는 가상작업공간 내 캐릭터 위치는 마스터 시스템(300)에서 설정된 위치값(Vector3 type)으로 초기 설정된다. 이는 마스터 시스템(300)에서 훈련 관리자가 정해진 각 훈련자의 훈련 역할에 따라 그 초기 위치를 설정해야되기 때문이며, 캐릭터는 초기 위치를 마스터 시스템에서 정한 위치로 로딩된다. 훈련자의 캐릭터가 생성되는 위치는 주로 작업대상물 주위 위치로 설정된다. 훈련자의 캐릭터는 앞서 살핀바와 같이 실제 사람과 동일한 관절 구조로 되어 있으며, 3D Max의 Biped Animation 구조로 설계되어진 모델 형상 및 애니메이션을 가지고 있다. 캐릭터의 애니메이션은 외부 장비(HMD, Kinect, Omni)등의 모션 컨트롤러와 연동이 가능한 23개의 관절 구조로 제작되어져 있다.
훈련 데이터/메시지 수신 모듈(233)은 마스터 시스템으로부터 임무에 관한 정보 및 작업 권한을 수신한다, 훈련자가 훈련 작업환경에 들어와 마스터 시스템으로부터 임무를 지시받고 작업 권한을 수신하게 된다.
임무에 대한 수신은 채팅창을 통한 문자열(string text)을 메시지 형태로 제공받으며, 작업권한은 true 또는 false 값을 포함하는 마스터 시스템으로부터 권한 데이터(bool type)로서 수신한다. true 값을 수신하였을 때, 해당 훈련자가 작업 권한을 가진 것으로 판단한다. 마스터 시스템(300)으로부터 작업권한 값을 true로 수신하게 되면, 이벤트 프로세싱 모듈(234)이 활성화되어 진행된다. 작업 권한이 false 인 상태에서는 다른 훈련자가 이벤트 프로세싱 모듈(234)의 활성화를 통해 작업을 진행하는 것을, 자신의 HDM 디스플레이를 통해 모니터링하도록 한다. 즉, 각 클라이언트 시스템에 있어서, 수신된 작업 권한이 true일 경우는 모션 트래킹과 HMD 트래킹이 동시에 가능하며, 수신된 작업 권한이 false 일 경우는 HMD 트랙킹만 가능하게 설정된다.
이벤트 프로세싱 모듈(234)은 가상작업공간에서 훈련자가 훈련 내용인 작업을 진행하도록 하는 모듈로, 훈련 데이터/메시지 수신모듈(233)에서 마스터 시스템(300)으로부터 작업 권한 데이터 true 값을 받게 되면 진행되는 모듈이다. 훈련 작업의 시작은 훈련자의 이동부터 시작하며, 훈련자는 바닥의 이동경로를 따라 이동하게 된다. 이동은 접촉식 컨트롤러를 사용하여, 바닥을 발로 구르게 되고, 접촉식 모션 컨트롤러의 허리 밴드를 사용하여, 좌우로 캐릭터를 회전하게 된다. 이때 보이는 가상작업공간의 작업환경은 HMD의 카메라 렌즈를 통해 실시간으로 랜더링 처리되어 보여지도록 한다. 훈련 지역에 도착하게 되면, 사용자는 공구를 사용할 수 있으며, 공구는 가상작업공간 내 작업 대상물 주위에 존재하며, 작업공구의 획득은 쥐는 동작 즉, 손의 그립 모션인식을 통해 수행한다. 그립 모션인식은 화면상에 공구가 있을 경우 손을 펴고 있다가 손을 움켜졌을 때 손의 위치와 장비의 위치가 일치하면(x,y축의 2D 좌표계비교) 손에 장비를 잡은 것으로 인식하는 방식으로 수행된다. 공구가 그립되면, 공구의 위치좌표 데이터는 훈련자의 캐릭터의 손의 자식 객체로 세팅되어, 캐릭터 손이 움직일 때마다 같이 움직이게 된다. 공구 획득을 하면, 훈련자가 가상작업공간에서 필요한 훈련 제스쳐를 마스터 시스템으로부터 수신되는 메시지 형태로 제시받게 된다. 훈련 제스쳐는 도 7d 왼쪽 하단의 2D 애니메이션으로 형태로 표현되며, 작업자는 작업 대상물 앞에서 제시된 훈련 제스쳐와 동일한 형태로 작업을 진행한다. 모션인식 처리는 클라이언트 시스템의 모션 프로세스 모듈(234)를 통해 계산되어 진다.
훈련 결과 정보 생성 모듈(235)은 훈련에 대한 결과를 데이터 형태로 생성하여 마스터 시스템에게 전달하는 기능을 수행하며, 모션 정확도와 및 작업 시간을 포함하여 훈련에 대한 결과를 데이터 형태로 생성한다. 모션 프로세스 모듈(224)로부터 생성된 훈련에 대한 결과를 데이터 즉, 진행한 시간, 모션 정확도 데이터는 마스터 시스템에게 전달된다. 전송이 완료되면 서버 시스템으로부터 작업 권한 false 값을 전달 받게 되어, 다음 작업자가 이벤트 프로세싱 모듈(234)을 진행하는 것을 지켜본다.
도 5는 본 발명의 일실시예에 따른 마스터 시스템(300)의 구성도이다.
도 5를 참조하면, 마스터 시스템(300)은 사용자 클라이언트가 다중접속을 통하여 가상작업공간에서 협력훈련이 가능하도록 운용하는 서버의 역할을 수행한다. 훈련의 시작과 끝을 정의하며, 작업에 대한 업무 지시 및 작업 권한을 컨트롤하며, 훈련이 진행되는 훈련상황을 모니터링하고, 모니터링된 훈련 과정을 통해 훈련자의 가상작업공간에서의 훈련 내지 작업에 대한 평가를 진행하도록 하는 역할을 수행한다.
한편,본 발명에서의 네트워크 구성은 턴제 방식의 네트워크를 기본으로 수형된다. 즉, 한 명의 훈련자(Client)가 작업에 대한 권한을 가지고 있을 경우, 다른 훈련자는 권한을 가지고 있는 훈련자가 수행하는 작업을 모니터링만 하게 된다. 즉 사용 권한이 있는 훈련자만 인터렉티브 작업을 진행할 수 있다. 이러한 네트워크 구성은 위험한 작업의 시나리오일 경우, 동시 작업보다 개인별 단계식 절차가 중요하기 때문에 필요하다. 이를 위하여, 접속된 훈련자의 클라이언트 시스템으로 플레이 턴 데이터(true/false)를 전송하여, 각 클라이언트 시스템의 이벤트 프로세싱 모듈(234)에서 이에 따라 작업의 진행 또는 모니터링하도록 훈련자의 턴을 분배하는 기능을 수행한다. 또한, 마스터 시스템(300)은 각 단계별 훈련 진행시 훈련 관리자(Master)가 훈련자(Client)가 작업하는 동안 평가표에 점수를 입력할 수 있는 기능을 제공하며, 작업 상황을 실시간 모니터링할 수 있도록 한다. 평가는 작업자가 진행하는 동작, 절차, 시간의 적정성을 판단하도록 하여 진행한다. 또한, 채팅시스템 또는 음성통신을 통해 각 클라이언트에게 상황전달, 명령 등의 메시지 형태로 전달할 수 있도록 메시지 또는 음성을 훈련 관리자로부터 입력받는 기능을 수행하도록 구성될 수 있다.
이를 위하여, 마스터 시스템(300)은 훈련 환경 초기화/설정부(310), 훈련 제어 데이터 전송부(320), 훈련 성과 수신/평가부(330)를 포함하여 구성된다.
훈련 환경 초기화/설정부(310)는 마스터 시스템(300)(또는 마스터 시스템이 설치되는 서버)의 IP 및 Port 번호를 세팅하여, 훈련자 클라이언트 시스템의 접속을 대기하며, 접속 완료 시 가상작업공간 내 작업자 캐릭터를 배분/위치시켜주는 역할을 수행한다. 특정 훈련자가 자신의 클라이언트 시스템의 네트워크 가상훈련 처리장치(200)를 통하여 마스터 시스템에서 설정해놓은 IP 및 Port 번호로 접속하게 되면, 훈련 환경 초기화/설정부(310)에서 해당 훈련자의 가상작업공간 내 위치값을 해당 훈련자의 클라이언트 시스템의 훈련자 캐릭터 로딩 모듈(232)로 전송하게 된다. 상기 위치값은 Vector3의 type으로 가상 공간안의 x,y,z의 위치 값으로 구성되어 있으며, 훈련 내용에 따라 미리저장되어 자동 설정되거나 또는 훈련 관리자의 선택입력에 따라 설정될 수 있다.
또한 훈련 환경 초기화/설정부(310)는 클라이언트의 캐릭터 로딩 모듈(232)로 마스터 시스템 내 미리 제작되어 저장된 캐릭터 객체(3DObject type)를 전송하며, 훈련 내용에 따라 미리저장되어 자동 설정되거나 또는 훈련 관리자의 선택입력에 따라 선택될 수 있다.
아울러, 훈련 환경 초기화/설정부(310)는 캐릭터의 위치값과 캐릭터를 전달받은 클라이언트 시스템의 훈련데이터/메시지 수신 모듈(233)로 작업 임무를 송신하는 역할을 수행한다. 작업 임무는 기본적으로 채팅시스템(text 형태)을 통해 전달하며, 자세한 설명이 필요시 이미지(2DImage type) 형태로 전송될 수도 있다.
훈련 제어 데이터 전송부(320)는 훈련 관리자의 입력을 수신하여 접속된 훈련자의 클라이언트 시스템의 네트워크 가상훈련 처리장치(200)로 가상작업공간 내 훈련시 필요한 훈련 데이터 및 메시지를 전송하는 기능을 수행하며, 작업 간 플레이턴을 배분해주는 기능을 수행한다. 작업자에게 플레이 턴 데이터(true/false)를 전송하여, 이벤트 프로세싱 모듈(234)를 진행/관찰 하도록 턴 분배 기능을 수행한다. 실시간 채팅 및 음성 대화 시스템 또한 해당 모듈에서 송신/수신 처리한다.
훈련 성과 수신/평가부(330)는 접속한 훈련자의 클라이언트 시스템의 네트워크 가상훈련 처리장치(200)의 훈련 결과 정보 생성 모듈(235)로부터 해당 훈련자가 부여된 작업을, 진행한 시간, 모션 정확도 등 훈련 결과 데이터를 전달받아 저장하며, 작업자들이 작업하는 가상작업공간의 화면 데이터를 수신하여 디스플레이 하도록 함으로써 훈련 관리자가 작업 상황을 화면을 통하여 실시간으로 모니터링하도록 한다.
이하, 본 발명의 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 실제 구현 및 사용되는 가상환경을 보충 설명한다.
도 6은 본 발명의 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 실제 구현을 설명하기 위한 도면이다.
클라이언트 HMD 장치를 통해 훈련자의 머리의 움직임이 인식되고, 클라이언트 모션인식장비를 통해 훈련자의 전후 이동동작, 허리의 회전, 팔의 움직임, 손의 움직임 등을 훈련자의 가상적인 이동 및 동작이 인식되어, 인식된 모션 데이터를 기초로 가상작업공간 내 훈련자의 캐릭터의 머리의 움직임,이동 및 동작으로 매핑되고, 이러한 가상작업공간 내 훈련자의 캐릭터의 머리의 움직임,이동 및 동작에 따라 변화하는 가상작업공간 내 화면이 클라이언트 HMD 장치의 디스플레이를 통해 훈련자에게 시각적으로 제공되는 몰입식 가상훈련 시스템으로 구현된다.
도 7a를 참조하면, 본 실시예에 있어서, 가상작업환경은 작업주변환경, 작업캐릭터, 작업공구, 작업대상물로 정의되어 구성된다. 모든 구성물은 3D 객체(3ds max, maya 등에서 제작된 3D결과물)로 구성되며, Unity3D(VR&게임 개발 엔진)로 Import되고, 환경이 세팅된다. 즉 Unity3D 엔진을 통해 훈련 시나리오가 제작되며, 키넥트 등 비접촉식 모션인식 장치 및 접촉식 모션인식 장치와 HMD 장치도 Unity3D 환경에 세팅되게 된다.
도 7a는 본 발명이 일실시예의 가상주변환경의 구성화면이다.
작업주변환경은 가상의 아바타가 작업할 진행할 공간이다. 작업 주변 환경 구성은, 실내공간을 3D 모델링(3ds max, maya 등 모델링 툴에서 제작된 3D 결과물)하여, 구성된다. 가상 주변환경의 필수 구성요소로 작업자의 이동 경로 표시, 작업자의 작업 환경 이탈을 방지하기 위한 벽, 작업 환경에 어울리는 기타 객체 들로 구성된다. 이동경로 표시는 사용자들로 하여금, 자신이 작업 대상물까지 어떻게 이동해야 되는지 알려주는 이미지로 바닥면에 표시된다. 벽은 작업 대상물 주위로 둘러싸고 있으며, 작업자가 작업환경을 벗어나지 못하게 충돌처리한다. 작업 주변 환경은, 이러한 객체 이외에도 공간 안에 색을 표현해주는 라이트, 일정 영역을 보여주는 카메라 등의 객체도 설정된다. 카메라 객체는 아바타 객체마다 하나씩 세팅된다.
도 7b는 본 발명의 일실시예에서 사용되는 작업공구의 예시 이미지이다.
도 7c는 본 발명의 일실시예의 다중 사용자가 접속하여 가상작업환경 내 캐릭터로서 표시된 화면이다.
① 번은 훈련 대상물로 실제 접하기 어렵고, 위험한 대상물을 3D 형태로 구현하여 표현한다. ②번은 작업자이며, 1인칭 시점에서 봤을 때, 다중 작업자가 접속해 있는 상태이다. 작업자의 위치값은 시나리오상 훈련자에게 맞는 위치값이 지정되어 있으며, 작업자가 접속시 지정해 놓은 위치값에 작업자가 생성된다. 작업자가 생성되면, 1인칭 뷰로 화면이 보이며, 작업 턴이 아닐 경우, 다른 작업자가 진행하는 모습을 지켜보기만 하며, 동시 작업은 불가능하다.③번은 각 작업자 마다 필요한 공구류를 가지고 있다. 공구류는 작업자 시나리오마다 달라질 수 있으며, 필수 사항은 아니다.
도 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개의 하드웨어 장비를 통해, 가상작업공간 캐릭터의 시야, 동작, 이동 등이 매핑되어, 표현된다.
작업공구는 가상작업공간에서 훈련자가 훈련 작업을 진행할 때 필요한 도구 객체이다. 예를 들어 작업자가 작업 대상물의 분해 작업을 진행해야 할 경우, 나사를 풀어주는 작업이 필요하다. 이때 필요한 도구가 스캐너 같은 작업 공구이다. 이렇게 시나리오상 필요한 작업 공구들을 미리 작업 환경 내에 배치하여 구성한다. 공간상의 작업공구는 3D 객체로 구성되어 있으며, 공간상의 위치값을 가지고 있다. 작업 공구의 취득행위는 가상 공간 캐릭터가 작업 공구 주변으로 이동하여 캐릭터 손에 위치하면, 모션 인식으로 손의 위치값을 체크하고, 손을 움켜지는 동작을 취하면 캐릭터는 작업 공구를 취득(잡음)하게 된다. 도 7b에서와 같이 다양한 작업공구 객체가 사전 생성되어 사용되며, 작업공구는 훈련자에게 부여된 작업의 내용 등 콘텐츠의 시나리오에 따라서 변동될 수 있다.작업대상물은 작업 대상물은 작업자들이 가상에서 공동으로 작업하는 대상 객체이다. 보편적으로 실생활에서 접하기 위험하고, 어려운 대상을 3D로 제작하여, 가상작업공간 내 구현한다. 작업 대상물은 교육 시나리오에 따라서 다양한 종류가 될 수 있다. 대부분 산업현장에서의 작업 대상물의 작업은 절차상 과정이 존재한다. 즉, 순서에 맞게 대상물을 분해/조립을 할 수 있고, 위험을 대비한 트러블 슈팅이 될 수도 있다.
작업 대상물은 통상 작업환경의 가상작업공간의 중앙에 위치되며, 위치값은 (0,0,0)에 위치하며, 실제 사이즈(실생활에서 존재하는 사이즈)를 동일하게 가상작업공간에 구현한다. 작업 대상물은 이벤트가 발생하는 부분과 이벤트가 발생하지 않는 부분으로 구분된다. 이벤트가 발생하는 부분은 Collider가 존재하여, 작업자와 충돌을 감지한다. 이 충돌 여부는 작업자 공구의 Collider와 작업 대상물의 Collider가 가상작업공간에서 충돌 시 OnTriggerEnter 함수로 호출된다. 충돌이 판별되면, 작업 대상물에서 이벤트(애니메이션 플레이 or 이동, 회전 등의 미리 정해놓은 이벤트)가 발생한다. 작업 대상물의 이벤트가 필요 없는 객체는 위치, 회전값이 변하지 않도록 세팅한다. 캐릭터가 작업 대상물을 뚫고가는 현상을 방지하기 위해, 하기 [작업대상물 클래스 샘플]에서와 같이, 충돌 Collider가 세팅된다.
[작업대상물 클래스 샘플]
*Collider : Unity3D의 Physics 엔진에서 제공하는 충돌 클래스 객체 *OnTriggerEnter : Collider를 가진 객체가 서로 충돌 시 발생하는 함수.
이하, 도 8 및 도 9를 참조하여 본 발명에 따른 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법을 상세히 설명한다.
도 8은 본 발명의 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 흐름도이다.
도 8을 참조하면, 몰입식 네트워크 가상훈련 방법은 본 발명의 몰입식 네트워크 가상훈련 시스템의 상기 마스터 시스템와 연동하여 특정 클라이언트 시스템에서 수행되는 방법으로, 시스템 초기화 단계(S100), 네트워크설정/접속 단계(S200), 훈련 컨텐츠 초기화 단계(S300), 이벤트 프로세싱 단계(S400), 훈련 성과 데이터 송신/확인 단계(S500), 작업관찰 단계(S600)의 일련의 단계를 포함하여 수행된다.
시스템 초기화 단계(S100)는 클라이언트 시스템(100)에서 설치된 훈련 프로그램 형태의 네트워크 가상훈련 처리장치(200)의 시작에 따라, 연결된 클라이언트 HMD (Head Mounted Display)장치 및 모션인식 장비를 초기화하고, 그 ID 를 수신 및 확인하여 연결을 설정하며, 특정 가상작업공간 예컨대 훈련 작업 방의 접속을 위한 GUI 화면을 세팅하고 마스터 시스템(300)과 접속할 수 있는 GUI 화면을 제공하는 과정이다. 상술한 네트워크 가상훈련 처리장치(200)의 클라이언트 HMD 초기화 모듈(211), 모션인식 컨트롤러 초기화 모듈(214), 시스템 초기화 모듈(221)에 의하여 수행된다.
네트워크설정/접속 단계(S200)는 상기 제공된 GUI 화면을 통하여 클라이언트 시스템의 IP, 접속자 ID, 및 훈련자가 입력한 접속할 사용자 이름, 방 이름 및 접속 방 정보 등을 입력받아, 입력된 정보에 따라 마스터 시스템(300)과의 네트워크 접속환경을 세팅되어 마스터 시스템에 네트워크 접속하는 과정으로, 상술한 네트워크 가상훈련 처리장치(200)의 네트워크 세팅 모듈(222)에 의하여 수행된다.
컨텐츠 초기화 단계(S300)는 3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하고, 로딩된 3D 객체를 사전 설정된 값으로 세팅하여 가상작업공간상에 배치하는 과정이다. 훈련 내용인 훈련 시나리오를 구성하는 3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하는 과정이 수행된 뒤, 로딩된 3D 객체 즉, 작업주변환경, 작업캐릭터, 작업공구, 작업대상물들의 위치값, 회전값, 크기 값 등을 사전 설정된 값으로 세팅하여 가상작업공간상에 배치한다. 작업 캐릭터 로딩 과정과 마스터 시스템(300)으로부터 임무에 대한 설명 및 자신의 작업순서인 플레이 턴을 표시하는 데이터 또는 메시지를 수신하여 표시하는 훈련 데이터/메시지 수신과정을 포함하여 수행된다.
컨텐츠 초기화 단계(S300)는 상술한 네트워크 가상훈련 처리장치(200)의 3D 콘텐츠 로딩 모듈(223), 훈련 콘텐츠 초기화 모듈(231), 훈련자 캐릭터 로딩 모듈(232), 훈련 데이터/메시지 수신 모듈(233)이 마스터 시스템(300)과 연동되어 수행된다.
작업 캐릭터 로딩 과정은, 가상작업환경의 가상작업공간내에 해당 훈련자의 캐릭터를 생성하는 과정으로, 마스터 시스템(300)와 네크워크 접속이 클라이언트 시스템 처리부를 통하여 이루어지면, 훈련자 캐릭터 로딩 모듈(232)이 마스터 시스템(300)으로부터 수신되는 캐릭터 및 상기 캐릭터의 위치값을 기초로 가상 훈련 콘텐츠 내 캐릭터를 생성하여 로딩한다. 훈련자의 캐릭터가 생성되는 위치는 작업대상물 주위 위치로 설정된다. 훈련자의 캐릭터는 실제 사람과 동일한 관절 구조로 되어 있으며, 3D Max의 Biped Animation 구조로 설계되어진 모델 형상 및 애니메이션을 가지고 있다. 캐릭터의 애니메이션은 외부 장비(HMD, Kinect, Omni)등의 모션 컨트롤러와 연동되어, 관절의 회전값이 표현된다.
훈련 데이터/메시지 수신 과정은 훈련자가 훈련 작업환경에 들어와 마스터 서버(Master Server)로부터 지시받는 임무에 대한 설명 및 자신의 작업순서인 플레이 턴을 표시하는 데이터 또는 메시지를 수신하는 과정으로, GUI 즉, 채팅창과 2D 이미지 등을 사용하여, 훈련자에게 전달하는 과정이다. 이에 따라, 훈련자는 메시지를 통해 임무를 숙지하고, 가상작업공간 내에서 대기하고 자신의 작업순서가 되면 작업을 수행하게 된다. 훈련 데이터/메시지 수신 모듈(233)과 마스터 시스템(300)이 연동되어 수행된다.
아울러, 컨텐츠 초기화 단계(S300)에는 가상작업공간에서 객체에 색을 나타내 줄 수 있는 Light 객체를 세팅하는 과정, 충돌처리가 이뤄지는 객체의 콜리더(Collider)를 세팅하는 과정, 즉, 충돌시 이벤트 발생 예컨대 작업자가 이동경로의 범위를 벗어나 이동하는 경우, 작업대상이 아닌 객체를 터치하는 경우 등 이를 불가능하도록 하는 출동처리를 수행하고, 이에 따른 경고 메시지 등을 출력하도록 준비하는 과정이 포함되어 수행된다.
훈련 이벤트 프로세싱 단계(S400)는 훈련 데이터/메시지 수신 과정을 통해 마스터 시스템로부터 동작 권한에 관한 플레이 턴 데이터를 수신하여 동작 권한을 부여받고 작업내용에 관한 메시지를 수신하여 훈련자에게 표시하며, 해당 훈련자의 모션을 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상훈련환경의 각 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체의 위치값, 회전값, 크기 값 등을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 과정으로, 목적지이동, 공구획득, 훈련제스처 입력, 정보전달 및 훈련종료의 훈련의 일련의 과정이 수행되며, 일련의 과정에서 변화하는 가상작업공간의 가상훈련환경은 HMD 장치의 카메라 렌즈를 통해 실시간으로 랜더링 처리되어 훈련자에게 보여지도록 한다. 또한, 훈련 이벤트 프로세싱 단계(S400)는 훈련 결과 정보 생성 과정을 포함하여, 작업시간, 이동 경로 이탈 여부, 훈련 제스쳐 동작 일치 여부의 데이터를 생성한다. 상술한 네트워크 가상훈련 처리장치(200)의 이벤트 프로세싱 모듈(234)이 중심이 되어 수행된다.
훈련 이벤트 프로세싱(S400)을 도 7d의 훈련 이벤트 프로세싱 단계에서의 HMD 장치 디스플레이 화면을 참조하여 설명하면, 특정 훈련자 클라이언트에 마스터 시스템로부터 동작 권한에 관한 플레이 턴 데이터가 수신되면, 해당 훈련자의 디스플레이 화면에 ①번 항목과 같이 자신의 플레이 턴을 표시하는 녹색으로 불이 표시된다. 녹색불이 들어오면, 해당 훈련자는 자신의 훈련 턴 임을 확인하여, 클라이언트 HMD 장치 및 클라이언트 모션 장비를 통한 가상훈련환경에서의 조작이 가능해진다. 가상훈련환경에서 카메라 시점은 항상 1인칭 시점으로 제공되며, 클라이언트 HMD 장치 및 클라이언트 모션 장비와 연동되어 자신의 캐릭터에 대한 모션 트래킹이 가능하다. 훈련자는 가상작업공간에서 작업대상물이 있는 정해진 위치까지 이동하기 위한 모션을 수행하며, 이동 경로 이탈 여부 데이터가 생성되어 훈련 결과 정보에 포함된다. 훈련자가 정해진 작업위치에 도달하면 ② 번 항목은 해당 훈련자가 작업해야 될 동작 즉, 작업 시나리오에서 요구하는 동작을 2차원 애니메이션 형태로 표시한다. 훈련자는 ②번에 나오는 모션을 따라, 클라이언트 HMD 장치 및 클라이언트 모션 장비를 통하여 자신의 모션을 입력하게 된다. 입력된 모션은 측정된 모션 데이터에 의하여 훈련자의 모션이 인식되고 인식된 훈련자의 모션과 작업 시나리오에서 요구하는 동작의 일치여부를 판단하게 되며, 이는 훈련 제스쳐 동작 일치 여부 데이터로 생성되어 훈련 결과 정보에 포함된다. 한편, 모든 훈련 상황이 모션입력으로만 이뤄지는 것은 아니며, 실시예에 따라서는 버튼클릭 및 객체 터치 등의 단순 입력으로 작업 시나리오의 특정 작업이 진행될 수 있다.
한편, 작업이 시작되면, ④ 번 항목과 같이 작업시간이 측정되어 디스플레이되며, 작업시간은 초 단위로 계산되어, 작업 완료 후 훈련 결과 정보로서 마스터 서버의 훈련 감독자에게 전달된다. 또한, ⑤ 번 항목과 같이 커뮤니케이션 기능으로 모든 작업자 간 커뮤니케이션은 채팅 또는 음성통신을 통해 실시간 확인할 수 있으며, 이를 통해 작업에 대한 확인 및 진행사항, 커뮤니케이션 등을 채팅을 통해 주고 받을 수 있다. 클라이언트는 모션 작업 중 채팅 입력이 어려움으로, 작업의 시작전과 끝난 후에 주로 사용하며, 다른 지켜보고 있는 사용자나, 훈련 감독자의 지시가 메시지의 형태로 수신되어 표시되어 작업중인 훈련자가 확인하는 형태로 구현된다.
작업이 완료되면 자동적으로 해당 훈련자의 훈련을 종료하거나, 훈련자 또는 훈련 감독자의 종료 버튼의 입력에 따라 해당 훈련이 종료된다.
훈련 성과 데이터 송신/확인 단계(S500)는, 훈련 데이터 및 최종 훈련 결과 정보를 마스터 서버에게 송신하는 과정으로, 훈련 이벤트 프로세싱(S400)을 과정에서 생성되는 훈련데이터를 실시간으로 마스터 서버에게 송신하며, 훈련의 종료시에는 최종 훈련 결과 정보로서 마스터 서버에게 송신하는 과정으로, 훈련 종료 과정은 최종 훈련 결과 정보로서 마스터 서버에게 송신하는 과정의 진행 이후로 설정될 수 있다.
작업관찰단계(S600)는 훈련이 종료된 훈련자에게 작업 권한이 부여되어 훈련이 진행중인 타 훈련자의 가상작업환경을 제공하도록 훈련이 종료된 훈련자 클라이언트 시스템으로 화면 데이터를 생성하여 제공 과정으로 해당 훈련자의 모션을 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상훈련환경의 각 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체의 위치값, 회전값, 크기 값 등을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 과정으로 모션인식 등의 기능은 활성화되지 않으며, 관찰자의 지점 및 시각에서 타 훈련자의 가상작업환경을 HMD의 카메라 렌즈를 통해 실시간으로 랜더링 처리되어 보여지도록 하는 과정으로, 상술한 바와 같이, 커뮤니케이션 기능은 활성화되어, 작업관찰단계의 훈련자가 채팅 또는 음성통신을 통해 타 훈련자에게 전달할 메시지가 있는 경우 이를 입력받아 전송하며, 또한 타 훈련자 또는 훈련 관리자 의 메시지를 수신하는 기능을 수행한다.
도 9는 본 발명의 몰입식 네트워크 가상훈련 시스템을 이용한 몰입식 네트워크 가상훈련 방법의 일실시예의 타임 테이블로서, 본 발명의 몰입식 네트워크 가상훈련 방법은 다중 클라이언트 기반으로 가상작업공간에서 협력훈련이 가능하도록 마스터 시스템과 다수의 훈련자 클라이언트 시스템으로 구성되어, 네트워크로 마스터 시스템과 연결된 클라이언트 시스템이 턴 방식으로 마스터 서버를 통해 훈련 관리자가 지정하는 순서로 상술한 몰입식 네트워크 가상훈련 방법을 수행하도록 구현되어 진행된다.
100: 클라이언트 시스템 200: 네트워크 가상훈련 처리장치
300: 마스터 시스템
210: 클라이언트 모션인식/디스플레이부 220: 클라이언트 시스템 처리부
230: 훈련 시나리오 처리부 310: 훈련 환경 초기화/설정부
320: 훈련 제어 데이터 전송부 320: 훈련 성과 수신/평가부
300: 마스터 시스템
210: 클라이언트 모션인식/디스플레이부 220: 클라이언트 시스템 처리부
230: 훈련 시나리오 처리부 310: 훈련 환경 초기화/설정부
320: 훈련 제어 데이터 전송부 320: 훈련 성과 수신/평가부
Claims (15)
- 훈련 관리자에게 제공되어 훈련과정을 모니터링하도록 하는 마스터 시스템(300)과 연동하여, 각 훈련자에게 제공되고 클라이언트 HMD 장치 및 클라이언트 모션인식 장비와 연결되어 클라이언트 HMD 장치에 디스플레이되는 화면상의 가상공간인 가상작업공간에서 훈련을 수행하도록 하는 클라이언트 시스템의 가상훈련 처리장치(200)에 있어서,
클라이언트 HMD 장치 및 클라이언트 모션인식 장비를 초기화하고, 클라이언트 시스템 처리부(220)와 연계하여 각 기능을 설정하는 모션인식/디스플레이부(210),
마스터 시스템(300)과 네트워크 접속을 수행하며 3D 컨텐츠로 구성된 훈련 콘텐츠를 로딩하고, 클라이언트 모션인식 장비로부터 인식된 모션 데이터를 수신하여 처리하는 클라이언트 시스템 처리부(220),
3D 컨텐츠로 구성된 훈련 콘텐츠를 초기화하고 가상작업공간 내 훈련자의 캐릭터를 생성하여 로딩하며, 가상작업공간에서 훈련 내용인 작업이 진행되도록 제어하는 훈련 시나리오 처리부(230)를 포함하여 구성되는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 1항에 있어서,
상기 모션인식/디스플레이부(210)는,
클라인언트 모션인식 장비를 초기화하는 모션인식 컨트롤러 초기화 모듈(215);
클라인언트 모션인식 장비로부터 훈련자의 동작에 따른 데이터를 수신하여 훈련자의 모션 데이터를 추출하여 훈련자의 동작을 트랙킹하는 모션 트랙킹 모듈(216);
상기 훈련자의 모션 데이터를 가상작업공간의 훈련자의 캐릭터의 관절 데이터에 링크시키는 모션 링크 모듈(217)을 포함하여, 모션 트랙킹 모듈(216)은, 마스터 시스템으로부터 수신된 훈련 권한에 관한 데이터에 따라, 작업 권한을 부여받은 것으로 판단된 경우 활성화되어 모션 트랙킹을 수행하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 2항에 있어서,
상기 모션인식/디스플레이부(210)는,
클라이언트 HMD 장치의 초기화를 진행하는 클라이언트 HMD 초기화 모듈(211);
클라이언트 HMD 장치의 HMD 트랙킹 모듈센서로부터 인식되는 훈련자의 머리의 움직임에 따른 데이터를 연산하여 훈련자 머리의 모션 데이터로 생성하는 클라이언트 HMD 트랙킹 모듈(212);
클라이언트 HMD 장치의 카메라 시야 디스플레이를 가상작업공간 내 위치한 훈련자의 캐릭터의 카메라에 링크시키는 클라이언트 HMD 카메라 링크 모듈(213);
가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송하는 디스플레이 모듈(214);을 포함하여, 마스터 시스템(300)으로부터 훈련 권한에 관한 데이터에 따라, 작업 권한을 부여받지 않은 것으로 판단된 경우, 가상작업공간에서 훈련자의 캐릭터가 보고 있는 시야의 시점과 시각으로 훈련자의 캐릭터의 카메라에 렌더링되는 화면을 HMD 장치의 화면에 전송되며, 모션 트랙킹 모듈(216)은 비활성화되어 모션 트랙킹을 수행하지 않는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 1항에 있어서,
상기 클라이언트 시스템 처리부(220)는,
3D 엔진 및 필요 프로그램을 초기화하는 시스템 초기화 모듈(221);
훈련자로부터 입력된 정보에 따라 네트워크 접속 환경을 세팅하고 이에 따라 네트워크 접속을 진행하는 네트워크 세팅 모듈(222);
3D 가상훈련 콘텐츠를 로딩하는 3D 콘텐츠 로딩 모듈(223);
사전 설정된 훈련자에게 요구되는 작업의 동작과 모션 데이터로부터 인식되는 훈련자의 동작을 비교하여 모션의 일치 여부를 판단하는 모션 프로세스 모듈(224);을 포함하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 4항에 있어서,
모션 프로세스 모듈(224)은 판단된 모션의 일치 여부에 기초하여 훈련자의 동작에 대한 모션 정확도를 추출하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 1항에 있어서,
훈련 시나리오 처리부(230)는,
가상 공간 내 훈련 콘텐츠를 초기화하는 훈련 콘텐츠 초기화 모듈(231);
마스터 시스템(300)으로부터 캐릭터를 부여받아 초기화된 가상작업공간 내 생성하는 훈련자 캐릭터 로딩 모듈(232);을 포함하여, 훈련자 캐릭터 로딩 모듈(232)은 마스터 시스템으로부터 전달된 훈련자에게 할당된 캐릭터 객체 및 상기 캐릭터 객체의 가상작업공간 내 위치정보에 따라 상기 캐릭터 객체를 가상작업공간 내 특정 위치에 표시되도록 로딩하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 6항에 있어서,
훈련 시나리오 처리부(230)는,
마스터 시스템으로부터 임무에 관한 정보 및 작업 권한을 수신하는 훈련 데이터/메시지 수신 모듈(233)을 포함하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 7항에 있어서,
훈련 시나리오 처리부(230)는,
모션 정확도와 및 작업 시간을 포함하여 훈련에 대한 결과를 데이터 형태로 생성하여 마스터 시스템에게 전달하는 훈련 결과 정보 생성 모듈(235)을 포함하는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 1항에 있어서,
상기 가상작업공간은 작업주변환경, 작업캐릭터, 작업공구, 작업대상물에 대한 객체를 포함하여 구성되는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 제 9항에 있어서,
상기 작업대상물에 대한 객체는 콜리더(Collider)가 세팅되는 것을 특징으로 하는 클라이언트 시스템의 가상훈련 처리장치. - 다중 접속을 통하여 개별적인 공간인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템을 이용한 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법에 있어서,
클라이언트 HMD 장치 및 모션인식 장비를 초기화하여, 그 ID 를 수신 및 확인하여 연결을 설정하며, 가상작업공간의 접속을 위한 GUI 화면을 세팅하고 마스터 시스템(300)와 접속할 수 있는 GUI 화면을 제공하는 시스템 초기화 단계(S100);
상기 제공된 GUI을 통하여 클라이언트 시스템의 IP, 접속자 ID, 접속 방의 정보를 입력받고 입력되는 정보에 따라 마스터 서버(300)와의 네트워크 접속환경을 세팅하여 네트워크 접속하는 네트워크설정/접속 단계(S200);
3D 콘텐츠로 구성되는 훈련 컨텐츠를 로딩하고, 로딩된 3D 객체를 사전 설정된 값으로 세팅하여 가상공간상에 배치하는 컨텐츠 초기화 단계(S300);
마스터 시스템으로부터 동작 권한에 관한 플레이 턴 데이터를 수신하여 동작 권한을 부여받고 작업내용에 관한 메시지를 수신하여 훈련자에게 표시하며, 해당 훈련자의 모션을 인식을 개시하고, 훈련자의 모션입력 및 모션분석에 따라 인식되는 훈련자의 가상작업공간을 구성하는 객체의 위치값, 회전값, 크기 값 등을 변경하여 가상 공간인 훈련자의 가상훈련환경의 각 객체로 매핑하는 훈련 이벤트 프로세싱 단계(S400);
훈련 데이터 및 최종 훈련 결과 정보를 마스터 시스템에게 송신하는 성과 데이터 송신/확인 단계(S500);
훈련이 종료된 훈련자에게 작업 권한이 부여되어 훈련이 진행중인 타 훈련자의 가상작업환경을 제공하도록 훈련이 종료된 훈련자 클라이언트 시스템으로 화면 데이터를 생성하여 제공하는 작업관찰단계(S600);를 포함하여 수행되는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법. - 제 11항에 있어서,
상기 가상작업공간을 구성하는 객체는 작업주변환경, 작업캐릭터, 작업공구, 작업대상물의 객체를 포함하는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법. - 제 12항에 있어서,
상기 컨텐츠 초기화 단계(S300)는,
상기 작업대상물객체에 콜리더(Collider)를 세팅하는 과정을 포함하여 수행되는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법. - 제 11항에 있어서,
상기 훈련 이벤트 프로세싱 단계(S400)는,
훈련 결과 정보 생성 과정을 포함하여, 작업시간, 이동 경로 이탈 여부, 훈련 제스쳐 동작 일치 여부의 데이터를 생성하는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법. - 제 14항에 있어서,
훈련 이벤트 프로세싱 단계(S400)는 훈련이 종료된 훈련자에 대하여 수행되지 않는 것을 특징으로 하는 가상공간에서 협력훈련이 가능한 몰입식 네트워크 가상훈련 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140058530A KR101671320B1 (ko) | 2014-05-15 | 2014-05-15 | 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140058530A KR101671320B1 (ko) | 2014-05-15 | 2014-05-15 | 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160038764A Division KR101839113B1 (ko) | 2016-03-30 | 2016-03-30 | 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150132681A true KR20150132681A (ko) | 2015-11-26 |
KR101671320B1 KR101671320B1 (ko) | 2016-11-02 |
Family
ID=54847268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140058530A KR101671320B1 (ko) | 2014-05-15 | 2014-05-15 | 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101671320B1 (ko) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170083807A (ko) * | 2016-01-11 | 2017-07-19 | 전자부품연구원 | 원격 다중 훈련자 참여형 파이프 분해조립 가상 훈련 시스템 |
KR20180069170A (ko) * | 2016-12-14 | 2018-06-25 | 주식회사 리얼햅틱스 | 집단 물리 상호작용을 위한 미들웨어 장치 및 시스템 |
KR20180069510A (ko) * | 2016-12-15 | 2018-06-25 | 고등기술연구원연구조합 | 가상현실 기반 조업자의 안전훈련 시스템 |
KR20180087643A (ko) * | 2017-01-25 | 2018-08-02 | 삼성전자주식회사 | 전자 장치 및 전자 장치 제어 방법 |
KR20180128148A (ko) * | 2017-05-23 | 2018-12-03 | 이영선 | 네트워크를 통한 유아 보육 훈련 서비스 제공 방법 및 이에 사용되는 관리 서버 |
KR20190031805A (ko) * | 2017-09-18 | 2019-03-27 | 한국과학기술연구원 | 가상 현실 콘텐츠에 참여하고 있는 사용자에 대한 코칭 시스템 |
KR101990790B1 (ko) * | 2018-12-12 | 2019-06-19 | 사단법인 한국선급 | 가상현실 기반의 선박용 집단 협업훈련 시스템 |
KR20190084936A (ko) * | 2019-07-10 | 2019-07-17 | 한국과학기술연구원 | 가상 현실 콘텐츠에 참여하고 있는 사용자에 대한 코칭 시스템 |
KR102011063B1 (ko) * | 2018-04-18 | 2019-08-14 | 안용재 | 퀘스트 기반의 게임을 이용한 국민안전교육 서비스 제공 방법 |
KR20190095849A (ko) * | 2018-02-07 | 2019-08-16 | 임진국 | 복합현실 장치를 이용한 동시 다지역 원격 교차제어 시스템 및 그 제어방법 |
KR20200002228A (ko) * | 2018-06-29 | 2020-01-08 | 한국전력공사 | 가상현실 서비스 장치 및 그 방법 |
WO2020122439A1 (ko) * | 2018-12-10 | 2020-06-18 | 연세대학교 산학협력단 | 인지 과제 생성 방법 및 장치 |
WO2020138671A1 (ko) * | 2018-12-27 | 2020-07-02 | 주식회사 홀로웍스 | 가상현실 기반 이비인후과 및 신경외과 시뮬레이터의 수술 평가 시스템 |
KR102164371B1 (ko) * | 2019-11-29 | 2020-10-12 | 주식회사 아이브이알시스템즈 | 가상정비훈련을 위한 가상객체와의 상호작용 구현 방법 |
KR102234995B1 (ko) * | 2020-12-31 | 2021-04-01 | 주식회사 델바인 | 가상 객체 모델을 이용한 인지기능 재활훈련 방법, 장치 및 시스템 |
KR20210086207A (ko) * | 2019-12-31 | 2021-07-08 | 주식회사 버넥트 | 증강현실 기반 작업 공정 모니터링 및 작업 숙련도 평가방법 |
KR20210131830A (ko) * | 2020-04-26 | 2021-11-03 | 계명대학교 산학협력단 | 강의를 위한 가상현실 모델의 효과적인 공유 시스템 및 방법 |
KR20230087891A (ko) * | 2021-12-10 | 2023-06-19 | 인하대학교 산학협력단 | 개인 맞춤형 가상 실험실 생성 알고리즘 및 소프트웨어 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101917434B1 (ko) * | 2016-12-05 | 2018-11-09 | 주식회사 포스코 | 고로 공정 가상 현실 교육 시스템 |
KR101907181B1 (ko) * | 2016-12-30 | 2018-10-12 | 서울대학교산학협력단 | 가상 모델을 이용하는 시각 자극 생성 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 |
KR20240101152A (ko) | 2022-12-23 | 2024-07-02 | 율시스템(주) | 작업 안전관리 교육시스템 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010010696A (ko) * | 1999-07-22 | 2001-02-15 | 정명식 | 가상현실시스템에서 영혼-메타포어를 통해서 동작정보를 전달하는 상호작용 방법 |
KR20120044461A (ko) * | 2010-10-28 | 2012-05-08 | (주)브이엔에스텍 | 융합 현실을 이용한 가상 훈련 장치 및 방법 |
KR101333147B1 (ko) * | 2012-06-19 | 2013-11-26 | 에이알비전 (주) | 융합 현실을 이용한 실내 집단훈련 지원시스템 |
-
2014
- 2014-05-15 KR KR1020140058530A patent/KR101671320B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010010696A (ko) * | 1999-07-22 | 2001-02-15 | 정명식 | 가상현실시스템에서 영혼-메타포어를 통해서 동작정보를 전달하는 상호작용 방법 |
KR20120044461A (ko) * | 2010-10-28 | 2012-05-08 | (주)브이엔에스텍 | 융합 현실을 이용한 가상 훈련 장치 및 방법 |
KR101333147B1 (ko) * | 2012-06-19 | 2013-11-26 | 에이알비전 (주) | 융합 현실을 이용한 실내 집단훈련 지원시스템 |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170083807A (ko) * | 2016-01-11 | 2017-07-19 | 전자부품연구원 | 원격 다중 훈련자 참여형 파이프 분해조립 가상 훈련 시스템 |
WO2017122944A1 (ko) * | 2016-01-11 | 2017-07-20 | 전자부품연구원 | 원격 다중 훈련자 참여형 파이프 분해조립 가상 훈련 시스템 |
KR20180069170A (ko) * | 2016-12-14 | 2018-06-25 | 주식회사 리얼햅틱스 | 집단 물리 상호작용을 위한 미들웨어 장치 및 시스템 |
KR20180069510A (ko) * | 2016-12-15 | 2018-06-25 | 고등기술연구원연구조합 | 가상현실 기반 조업자의 안전훈련 시스템 |
KR20180087643A (ko) * | 2017-01-25 | 2018-08-02 | 삼성전자주식회사 | 전자 장치 및 전자 장치 제어 방법 |
KR20180128148A (ko) * | 2017-05-23 | 2018-12-03 | 이영선 | 네트워크를 통한 유아 보육 훈련 서비스 제공 방법 및 이에 사용되는 관리 서버 |
KR20190031805A (ko) * | 2017-09-18 | 2019-03-27 | 한국과학기술연구원 | 가상 현실 콘텐츠에 참여하고 있는 사용자에 대한 코칭 시스템 |
KR20190095849A (ko) * | 2018-02-07 | 2019-08-16 | 임진국 | 복합현실 장치를 이용한 동시 다지역 원격 교차제어 시스템 및 그 제어방법 |
KR102011063B1 (ko) * | 2018-04-18 | 2019-08-14 | 안용재 | 퀘스트 기반의 게임을 이용한 국민안전교육 서비스 제공 방법 |
KR20200002228A (ko) * | 2018-06-29 | 2020-01-08 | 한국전력공사 | 가상현실 서비스 장치 및 그 방법 |
KR20200070927A (ko) * | 2018-12-10 | 2020-06-18 | 연세대학교 산학협력단 | 인지 과제 생성 방법 및 장치 |
WO2020122439A1 (ko) * | 2018-12-10 | 2020-06-18 | 연세대학교 산학협력단 | 인지 과제 생성 방법 및 장치 |
KR101990790B1 (ko) * | 2018-12-12 | 2019-06-19 | 사단법인 한국선급 | 가상현실 기반의 선박용 집단 협업훈련 시스템 |
WO2020138671A1 (ko) * | 2018-12-27 | 2020-07-02 | 주식회사 홀로웍스 | 가상현실 기반 이비인후과 및 신경외과 시뮬레이터의 수술 평가 시스템 |
KR20190084936A (ko) * | 2019-07-10 | 2019-07-17 | 한국과학기술연구원 | 가상 현실 콘텐츠에 참여하고 있는 사용자에 대한 코칭 시스템 |
KR102164371B1 (ko) * | 2019-11-29 | 2020-10-12 | 주식회사 아이브이알시스템즈 | 가상정비훈련을 위한 가상객체와의 상호작용 구현 방법 |
KR20210086207A (ko) * | 2019-12-31 | 2021-07-08 | 주식회사 버넥트 | 증강현실 기반 작업 공정 모니터링 및 작업 숙련도 평가방법 |
KR20210131830A (ko) * | 2020-04-26 | 2021-11-03 | 계명대학교 산학협력단 | 강의를 위한 가상현실 모델의 효과적인 공유 시스템 및 방법 |
KR102234995B1 (ko) * | 2020-12-31 | 2021-04-01 | 주식회사 델바인 | 가상 객체 모델을 이용한 인지기능 재활훈련 방법, 장치 및 시스템 |
WO2022145690A1 (ko) * | 2020-12-31 | 2022-07-07 | 주식회사 델바인 | 가상 객체 모델을 이용한 인지기능 재활훈련 방법, 장치 및 시스템 |
KR20230087891A (ko) * | 2021-12-10 | 2023-06-19 | 인하대학교 산학협력단 | 개인 맞춤형 가상 실험실 생성 알고리즘 및 소프트웨어 |
Also Published As
Publication number | Publication date |
---|---|
KR101671320B1 (ko) | 2016-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101671320B1 (ko) | 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. | |
KR101839113B1 (ko) | 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법. | |
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 | |
Solanes et al. | Teleoperation of industrial robot manipulators based on augmented reality | |
CN110610547B (zh) | 基于虚拟现实的座舱实训方法、系统及存储介质 | |
CN106530887B (zh) | 模拟火灾现场逃生方法及装置 | |
KR102001214B1 (ko) | 가상 현실 기반 양팔로봇 교시 장치 및 방법 | |
CN105425955A (zh) | 多用户沉浸式全互动虚拟现实工程培训系统 | |
CN110682291B (zh) | 一种基于vr的机器人遥操作系统及其遥操作方法 | |
CN107257946B (zh) | 用于虚拟调试的系统 | |
KR20160020136A (ko) | 가상현실과 rpg을 활용한 재난상황 대처 교육 시스템 | |
JP2019008623A (ja) | 情報処理装置、及び、情報処理装置の制御方法、コンピュータプログラム、記憶媒体 | |
CN111716365A (zh) | 基于自然行走的沉浸式远程交互系统及方法 | |
KR102687406B1 (ko) | 복합현실 장치를 이용한 동시 다지역 원격 교차제어 시스템 및 그 제어방법 | |
CN107145222A (zh) | 基于Unity三维引擎和VR设备的工具自动绑定系统和方法 | |
Fang et al. | A multi-user virtual 3D training environment to advance collaboration among crane operator and ground personnel in blind lifts | |
KR102259762B1 (ko) | 안전 사고 예방을 위한 가상 현실을 활용한 크레인 협동 작업 훈련 시스템 | |
US20230135138A1 (en) | Vr training system for aircraft, vr training method for aircraft, and vr training program for aircraft | |
KR100756345B1 (ko) | 네트워크를 이용한 로봇 시뮬레이션 시스템 | |
CN207937787U (zh) | 扩增实境仿真系统 | |
Zhang et al. | Virtual workspace positioning techniques during teleportation for co-located collaboration in virtual reality using hmds | |
CN108803862B (zh) | 用于虚拟现实场景中的账号关系建立方法及装置 | |
Mizuchi et al. | Evaluation of human behavior difference with restricted field of view in real and VR environments | |
US20230126008A1 (en) | Aircraft vr training system, aircraft vr training method, and aircraft vr training program |
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 |