KR102051558B1 - Vr 훈련 시스템 및 방법 - Google Patents

Vr 훈련 시스템 및 방법 Download PDF

Info

Publication number
KR102051558B1
KR102051558B1 KR1020190124086A KR20190124086A KR102051558B1 KR 102051558 B1 KR102051558 B1 KR 102051558B1 KR 1020190124086 A KR1020190124086 A KR 1020190124086A KR 20190124086 A KR20190124086 A KR 20190124086A KR 102051558 B1 KR102051558 B1 KR 102051558B1
Authority
KR
South Korea
Prior art keywords
content
data
state
agent
management server
Prior art date
Application number
KR1020190124086A
Other languages
English (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 KR1020190124086A priority Critical patent/KR102051558B1/ko
Priority to US17/254,109 priority patent/US20230316946A1/en
Priority to PCT/KR2019/013238 priority patent/WO2021070984A1/ko
Application granted granted Critical
Publication of KR102051558B1 publication Critical patent/KR102051558B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B9/00Simulators for teaching or training purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass

Abstract

VR 훈련 시스템 및 방법이 제공된다. 예시적인 실시예에 따른 VR 훈련 시스템은, 설정된 각 가상 오브젝트들의 데이터 포인트 간의 스테이트(state) 기반 논리 관계에 따라 각 데이터 포인트들의 현재 스테이트(present state)에 따른 다음 스테이트(next state)를 결정하는 스테이트 머신(state machine); 사용자로부터 요청된 VR 컨텐츠에 대응되는 컨텐츠 데이터를 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시키고, 상기 스테이트 머신으로부터 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 전달 받는 VR 에이전트; 및 상기 VR 에이전트로부터 상기 초기 스테이트를 수신하고, 디스플레이 기기를 통해 상기 초기 스테이트에 따른 출력 데이터를 가시화하고, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 수집되는 사용자의 인터랙션 데이터(interaction data)에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 상기 VR 에이전트에 전달하는 VR 컨텐츠 단말을 포함하며, 상기 스테이트 머신은, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우 상기 논리 관계에 따른 다음 스테이트를 상기 VR 에이전트로 전달하고, 상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영한다.

Description

VR 훈련 시스템 및 방법{SYSTEM AND METHOD FOR VR TRAINING}
예시적인 실시예들은 VR 컨텐츠를 활용한 직무 훈련 기술에 관한 것이다.
최근, VR(Virtual Reality) 기술이 발전함에 따라 산업현장에서 VR 기술을 접목시키는 사례가 증가하고 있다. 일 예시로서, 산업현장에서 VR 기술을 활용하여 안전교육 체험을 실시하거나, VR 기술을 활용하여 산업현장의 설비를 조작해보는 체험을 실시하는 등 산업현장에서의 VR 기술의 활용도가 점차 증가하고 있다.
그러나, 기존 산업현장에서의 VR 기술은 사용자가 미리 정해진 단일 시나리오의 VR 컨텐츠를 단순 체험하는 데 그쳐 산업현장에서의 다양한 상황 및 특성을 반영하는 데 한계가 있었으며, 이에 따라 실제 현장상황이나 복합적인 위험상황을 구현하는 데 어려움이 있었다.
한국공개특허공보 제10-2019-0004088호(2019.01.11)
예시적인 실시예들은 VR 컨텐츠를 활용한 직무 훈련을 실시하는 과정에서 스테이트 머신(state machine)과 연동하여 산업현장에서의 다양한 상황 및 특성을 반영하고 직무 훈련의 효율을 향상시키기 위한 것이다.
예시적인 실시예에 따르면, 설정된 각 가상 오브젝트들의 데이터 포인트 간의 스테이트(state) 기반 논리 관계에 따라 각 데이터 포인트들의 현재 스테이트(present state)에 따른 다음 스테이트(next state)를 결정하는 스테이트 머신(state machine); 사용자로부터 요청된 VR 컨텐츠에 대응되는 컨텐츠 데이터를 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시키고, 상기 스테이트 머신으로부터 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 전달 받는 VR 에이전트; 및 상기 VR 에이전트로부터 상기 초기 스테이트를 수신하고, 디스플레이 기기를 통해 상기 초기 스테이트에 따른 출력 데이터를 가시화하고, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 수집되는 사용자의 인터랙션 데이터(interaction data)에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 상기 VR 에이전트에 전달하는 VR 컨텐츠 단말을 포함하며, 상기 스테이트 머신은, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 것으로 판단되는 경우 상기 VR 컨텐츠의 변경 요청 메시지를 상기 VR 에이전트로 전달하고, 상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 VR 컨텐츠의 변경 요청 메시지를 수신하여 상기 교육 관리 서버로 전달하며, 상기 교육 관리 서버로부터 변경된 VR 컨텐츠의 리소스를 전달 받아 상기 변경된 VR 컨텐츠를 동적으로 로딩하는, VR 훈련 시스템이 제공된다.
상기 교육 관리 서버는, 다수의 VR 컨텐츠를 관리하며, 상기 VR 에이전트는, 상기 사용자의 로그인시 상기 사용자가 접근 가능한 VR 컨텐츠의 리스트를 상기 교육 관리 서버로부터 수신하고, 상기 사용자로부터 상기 VR 컨텐츠의 리스트에 있는 VR 컨텐츠 중 하나를 입력 받는 경우 입력된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 상기 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시킬 수 있다.
상기 각 VR 컨텐츠는, 서로 다른 종류의 직무 훈련을 위한 VR 컨텐츠일 수 있다.
상기 직무 훈련은, 설정된 EOP(Emergency Operations Plan) 또는 SOP(Standard Operating Procedure) 기반의 직무 절차를 포함할 수 있다.
상기 VR 컨텐츠 단말은, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 상기 VR 컨텐츠의 진행 데이터를 상기 VR 에이전트로 전달하고, 상기 스테이트 머신은, 상기 VR 에이전트로부터 상기 진행 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 수신하고, 상기 논리 관계에 기초하여 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 상기 VR 에이전트로 전달하고, 상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영할 수 있다.
상기 VR 에이전트는, 상기 VR 컨텐츠의 실행이 종료되는 경우 상기 VR 컨텐츠 단말로부터 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 수신하고, 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 상기 교육 관리 서버로 전달할 수 있다.
상기 교육 관리 서버는, 각 사용자별 진도 데이터를 관리하고, 인공지능(AI : Artificial Intelligence)을 기초로 상기 각 사용자별 진도 데이터를 분석하여 상기 VR 컨텐츠의 개선사항을 도출할 수 있다.
상기 교육 관리 서버는, 상기 개선사항을 시뮬레이션하기 위한 개선 데이터를 상기 스테이트 머신으로 전달하고, 상기 스테이트 머신은, 상기 개선 데이터를 토대로 상기 논리 관계를 변경하고, 변경된 상기 논리 관계에 따른 변경 데이터를 상기 교육 관리 서버로 전달하며, 상기 교육 관리 서버는, 상기 변경 데이터를 토대로 상기 VR 컨텐츠를 변경할 수 있다.
상기 교육 관리 서버는, 상기 VR 컨텐츠 내의 내용이나 직무절차를 변경할 수 있다.
상기 스테이트 머신은, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우 상기 논리 관계에 따른 다음 스테이트를 상기 VR 에이전트로 전달하고, 상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영할 수 있다.
다른 예시적인 실시예에 따르면, 설정된 각 가상 오브젝트들의 데이터 포인트 간의 스테이트(state) 기반 논리 로직에 따라 각 데이터 포인트들의 현재 스테이트에 따른 출력 데이터를 생성하는 스테이트 머신(state machine)을 이용한, VR 훈련 방법으로서, VR 에이전트에서, 사용자로부터 요청된 VR 컨텐츠에 대응되는 컨텐츠 데이터를 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시키는 단계; 상기 VR 에이전트에서, 상기 스테이트 머신으로부터 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 전달 받는 단계; VR 컨텐츠 단말에서, 상기 VR 에이전트로부터 상기 초기 스테이트를 수신하는 단계; 상기 VR 컨텐츠 단말에서, 디스플레이 기기를 통해 상기 초기 스테이트에 따른 출력 데이터를 가시화하는 단계; 상기 VR 컨텐츠 단말에서, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 수집되는 사용자의 인터랙션 데이터(interaction data)에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 상기 VR 에이전트에 전달하는 단계; 상기 스테이트 머신에서, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 것으로 판단되는 경우 상기 VR 컨텐츠의 변경 요청 메시지를 상기 VR 에이전트로 전달하는 단계; 상기 VR 컨텐츠 단말에서, 상기 VR 에이전트로부터 상기 VR 컨텐츠의 변경 요청 메시지를 수신하여 상기 교육 관리 서버로 전달하는 단계; 및 상기 VR 컨텐츠 단말에서, 상기 교육 관리 서버로부터 변경된 VR 컨텐츠의 리소스를 전달 받아 상기 변경된 VR 컨텐츠를 동적으로 로딩하는 단계를 포함하는, VR 훈련 방법이 제공된다.
상기 교육 관리 서버는, 다수의 VR 컨텐츠를 관리하며, 상기 VR 컨텐츠를 실행시키는 단계는, 상기 사용자의 로그인시 상기 사용자가 접근 가능한 VR 컨텐츠의 리스트를 상기 교육 관리 서버로부터 수신하고, 상기 사용자로부터 상기 VR 컨텐츠의 리스트에 있는 VR 컨텐츠 중 하나를 입력 받는 경우 입력된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 상기 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시킬 수 있다.
상기 각 VR 컨텐츠는, 서로 다른 종류의 직무 훈련을 위한 VR 컨텐츠일 수 있다.
상기 직무 훈련은, 설정된 EOP(Emergency Operations Plan) 또는 SOP(Standard Operating Procedure) 기반의 직무 절차를 포함할 수 있다.
상기 VR 훈련 방법은, 상기 출력 데이터를 가시화하는 단계 이후에, 상기 VR 컨텐츠 단말에서, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 상기 VR 컨텐츠의 진행 데이터를 상기 VR 에이전트로 전달하는 단계; 상기 스테이트 머신에서, 상기 VR 에이전트로부터 상기 진행 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 수신하는 단계; 상기 스테이트 머신에서, 상기 논리 관계에 기초하여 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 상기 VR 에이전트로 전달하는 단계; 및 상기 VR 컨텐츠 단말에서, 상기 VR 에이전트로부터 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영하는 단계를 더 포함할 수 있다.
상기 VR 훈련 방법은, 상기 VR 에이전트에서, 상기 VR 컨텐츠의 실행이 종료되는 경우 상기 VR 컨텐츠 단말로부터 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 수신하는 단계; 상기 VR 에이전트에서, 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 상기 교육 관리 서버로 전달하는 단계; 및 상기 교육 관리 서버에서, 각 사용자별 진도 데이터를 관리하는 단계를 더 포함할 수 있다.
상기 VR 훈련 방법은, 상기 각 사용자별 진도 데이터를 관리하는 단계 이후, 상기 교육 관리 서버에서, 각 사용자별 진도 데이터를 관리하고, 인공지능(AI : Artificial Intelligence)을 기초로 상기 각 사용자별 진도 데이터를 분석하여 상기 VR 컨텐츠의 개선사항을 도출하는 단계를 더 포함할 수 있다.
상기 VR 훈련 방법은, 상기 VR 컨텐츠의 개선사항을 도출하는 단계 이후, 상기 교육 관리 서버에서, 상기 개선사항을 시뮬레이션하기 위한 개선 데이터를 상기 스테이트 머신으로 전달하는 단계; 상기 스테이트 머신에서, 상기 개선 데이터를 토대로 상기 논리 관계를 변경하는 단계; 상기 스테이트 머신에서, 변경된 상기 논리 관계에 따른 변경 데이터를 상기 교육 관리 서버로 전달하는 단계; 및 상기 교육 관리 서버에서, 상기 변경 데이터를 토대로 상기 VR 컨텐츠를 변경하는 단계를 더 포함할 수 있다.
상기 VR 컨텐츠를 변경하는 단계는, 상기 VR 컨텐츠 내의 내용이나 직무절차를 변경할 수 있다.
상기 VR 훈련 방법은, 상기 인터랙션 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 상기 VR 에이전트에 전달하는 단계 이후, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우 상기 논리 관계에 따른 다음 스테이트를 상기 VR 에이전트로 전달하는 단계; 및 상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영하는 단계를 더 포함할 수 있다.
예시적인 실시예에 따르면, VR 컨텐츠를 활용한 직무 훈련을 실시하는 과정에서 VR 컨텐츠가 미리 정해진 단일의 직무절차대로 플레이되는 대신, VR 컨텐츠의 내용 및 직무절차를 상황에 맞게 동적으로 변화시킴으로써 보다 다양하고 복잡한 실제 산업현장의 특성을 반영하여 직무 훈련의 효과를 극대화시킬 수 있다.
또한, 예시적인 실시예에 따르면, 직무 훈련 과정에서의 에러 발생을 판단하고 에러 발생시 VR 컨텐츠를 실시간으로 변경함으로써, 보다 다양한 훈련 상황을 구현하고 직무 훈련의 내용을 좀 더 풍부하게 할 수 있다.
또한, 예시적인 실시예에 따르면, 각 사용자별 진도 데이터 및 에러 발생 이력을 빅데이터 분석하여 VR 컨텐츠의 내용 및 직무절차에 대한 개선사항을 도출하고, 이에 따라 VR 컨텐츠를 변경하여 직무 훈련의 효율을 향상시킬 수 있다.
도 1은 예시적인 실시예에 따른 VR 훈련 시스템의 상세 구성도
도 2는 예시적인 실시예에 따른 훈련장의 예시
도 3은 예시적인 실시예에 따른 VR 컨텐츠의 예시
도 4는 예시적인 실시예에 따른 VR 컨텐츠를 최초로 실행하는 과정을 설명하기 위한 흐름도
도 5는 예시적인 실시예에 따른 VR 컨텐츠가 미리 정해진 직무절차에 따라 진행되는 과정을 설명하기 위한 흐름도
도 6은 예시적인 실시예에 따른 VR 컨텐츠가 사용자 인터랙션에 따라 진행되는 과정을 설명하기 위한 흐름도
도 7은 예시적인 실시예에 따른 VR 컨텐츠가 종료되는 과정을 설명하기 위한 흐름도
도 8은 예시적인 실시예에 따라 직무 훈련 과정에서의 에러 발생을 판단하고 에러 발생시 VR 컨텐츠를 실시간으로 변경하는 과정을 설명하기 위한 흐름도
도 9는 예시적인 실시예에 따라 VR 컨텐츠의 내용 및 직무절차에 대한 개선사항을 도출하고, 이에 따라 VR 컨텐츠를 변경하는 과정을 설명하기 위한 흐름도
도 10은 예시적인 실시예에 따른 VR 컨텐츠가 동적으로 변화하는 예시
도 11은 예시적인 실시예에 따른 사용자가 복수 명 존재하는 경우 VR 에이전트와 스테이트 머신 간의 데이터 흐름을 설명하기 위한 도면
도 12는 예시적인 실시예에 따른 EOP(Emergency Operations Plan)의 예시
도 13은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 예시적인 실시예에 따른 VR 훈련 시스템(100)의 상세 구성도이다. 예시적인 실시예에 따른 VR 훈련 시스템(100)은 VR 기술을 활용하여 직무 훈련을 실시하기 위한 시스템으로서, 예를 들어 산업현장에서 비상운영계획서(EOP : Emergency Operations Plan) 또는 표준작업절차서(SOP : Standard Operating Procedure)에 따른 직무 훈련의 실시를 지원할 수 있다.
여기서, VR 기술을 활용한 직무 훈련은 산업현장의 공간, 산업현장에서의 각종 설비들 또는 환경들을 디지털 변환(digital transformation)하여 실제 산업현장과 유사한 형태의 가상환경을 구축하고, 사용자가 상기 가상환경에서 각종 인터랙션(interaction)을 수행하면서 직무 관련 작업 절차를 가상으로 훈련하는 행위를 의미한다. 사용자는 HMD(Head Mounted Display)를 통해 직무 훈련을 위한 VR 컨텐츠를 응시하면서 각종 인터랙션을 수행할 수 있다.
이때, 산업현장은 예를 들어, 발전소, 광산, 공장, 건설현장 등이 될 수 있다. 또한, 직무 훈련은 예를 들어, 발전소에서의 발전기 정비 작업, 건설현장에서의 전기설비 작업 등이 될 수 있으나, 직무 훈련의 종류가 특별히 한정되는 것은 아니다. 또한, 직무 훈련이 반드시 산업현장에 국한될 필요는 없으며, 특정 분야에서 작업자, 교육생 등을 대상으로 순차적인 작업 절차를 훈련, 교육시키는 모든 행위가 상술한 직무 훈련에 포함될 수 있다.
한편, 상술한 바와 같이 기존 산업현장에서의 VR 기술은 사용자가 미리 정해진 단일 시나리오의 VR 컨텐츠를 단순 체험하는 데 그쳐 산업현장에서의 다양한 상황 및 특성을 반영하는 데 한계가 있었다. 이에, 예시적인 실시예들은 VR 컨텐츠를 활용한 직무 훈련을 실시하는 과정에서 스테이트 머신(state machine)과 연동하여 산업현장에서의 다양한 상황 및 특성을 반영하고 직무 훈련의 효율을 향상시킬 수 있도록 하였다. 이하에서는, 도 1을 참조하여 이에 대해 보다 자세히 설명하기로 한다.
도 1을 참조하면, VR 훈련 시스템(100)은 스테이트 머신(102), 제1 데이터베이스(104), VR 컨텐츠 단말(106), VR 에이전트(108), 제2 데이터베이스(110), 디스플레이 기기(112), 인터랙션 수집장치(114), 교육 관리 서버(116) 및 제3 데이터베이스(118)를 포함한다.
스테이트 머신(102, state machine)은 설정된 각 가상 오브젝트들의 데이터 포인트 간의 스테이트(state) 기반 논리 관계에 따라 각 데이터 포인트들의 현재 스테이트(present state)에 따른 다음 스테이트(next state)를 결정하여 출력한다. 즉, 스테이트 머신(102)은 외부의 데이터 입력에 따른 데이터 포인트들의 스테이트 변화를 외부로 출력해주는 논리 머신으로서, 시뮬레이션이 가능하도록 데이터 포인트들의 스테이트 및 이에 따라 미래에 발생될 상황을 정의, 관리하는 장치이다. 여기서, 가상 오브젝트는 현실세계, 즉 산업현장을 구성하는 각종 설비, 장비, 부품, 또는 환경에 대응되는 VR 컨텐츠 내 객체로서, 예를 들어 VR 컨텐츠 내에서 액츄에이터, 밸브, 펌프 등을 나타내는 객체일 수 있다. 또한, 데이터 포인트는 양립 불가능한 둘 이상의 서로 다른 스테이트(state)를 가질 수 있는 최소 단위의 객체로서, 가상 오브젝트 그 자체가 될 수도 있고 가상 오브젝트를 구성하는 일 구성요소가 될 수도 있다. 일 예시로서, 밸브는 가상 오브젝트이면서 잠금/풀림 두 개의 스테이트를 갖는 데이터 포인트일 수 있다. 다른 예시로서, 액츄에이터는 가상 오브젝트이며, 액츄에이터를 구성하는 모터는 온(on)/오프(off) 두 개의 스테이트를 갖는 데이터 포인트일 수 있다.
VR 컨텐츠는 다수의 가상 오브젝트 및 다수의 데이터 포인트를 포함할 수 있으며, 데이터 포인트들은 자신의 현재 스테이트에 따라 다른 데이터포인트에 영향을 줄 수 있다. 또한, 데이터 포인트들의 스테이트가 변화하는 경우, 스테이트 변화에 따른 다양한 상황이 발생될 수 있다. 이러한 데이터 포인트들의 스테이트를 기반으로 각 데이터 포인터 간의 논리 관계가 관리자에 의해 미리 정의될 수 있으며, 이러한 논리 관계는 후술할 제1 데이터베이스(104)에 저장될 수 있다. 여기서, 논리 관계는 데이터 포인트 각각을 일 노드(node)라 칭하였을 때 각 노드의 스테이트에 따른 입출력 관계 또는 로직(logic)을 의미한다.
후술할 바와 같이, 스테이트 머신(102)은 VR 컨텐츠의 실행을 위해 VR 에이전트(108)로부터 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 요청 받고, 이에 따라 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 VR 에이전트(108)로 전달할 수 있다.
또한, 스테이트 머신(102)은 VR 컨텐츠의 진행을 위해 VR 에이전트(108)로부터 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 수신하고, 상기 논리 관계에 따른 다음 스테이트를 VR 에이전트(108)로 전달할 수 있다.
또한, 스테이트 머신(102)은 VR 컨텐츠가 실행되는 동안 사용자의 인터랙션이 이루어진 경우 VR 에이전트(108)로부터 상기 인터랙션에 따른 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 수신하고, 수신된 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인지의 여부를 판단한다. 스테이트 머신(102)은 예를 들어, 제1 데이터베이스(104)에 저장된 각 데이터 포인트의 스테이트와 상기 인터랙션에 따른 각 데이터 포인트의 현재 스테이트를 서로 비교하여 상기 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인지의 여부를 판단할 수 있다.
만약, 수신된 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우, 스테이트 머신(102)은 상기 논리 관계에 따른 다음 스테이트를 VR 에이전트(108)로 전달할 수 있다.
만약, 수신된 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 것으로 판단되는 경우, 스테이트 머신(102)은 현재 에러 상태를 기록하고 상기 VR 컨텐츠의 변경 요청 메시지를 VR 에이전트(108)로 전달할 수 있다.
또한, 스테이트 머신(102)은 VR 컨텐츠의 실행이 종료된 이후 교육 관리 서버(116)로부터 VR 컨텐츠의 개선사항을 시뮬레이션하기 위한 개선 데이터를 수신하고, 상기 개선 데이터를 토대로 시뮬레이션을 수행할 수 있다. 시뮬레이션 결과 개선사항이 적절한 것으로 판단되는 경우, 스테이트 머신(102)은 상기 개선 데이터를 토대로 상기 논리 관계를 변경하고, 변경된 상기 논리 관계에 따른 변경 데이터를 교육 관리 서버(116)로 전달할 수 있다.
제1 데이터베이스(104)는 각 데이터 포인트들의 정보 및 상기 각 데이터 포인트 간 스테이트 기반 논리 관계가 저장되는 저장소이다. 스테이트 머신(102)은 제1 데이터베이스(104)를 참조하여 각 데이터 포인트들의 현재 스테이트에 따른 다음 스테이트를 결정할 수 있다.
VR 컨텐츠 단말(106)은 VR 에이전트(108)가 설치되는 단말로서, 예를 들어 데스크톱, 노트북, 태플릿 PC 등이 될 수 있다. VR 컨텐츠 단말(106)은 스테이트 머신(102), 교육 관리 서버(116), 디스플레이 기기(112) 및 인터랙션 수집장치(114)와 네트워크를 통해 상호 연결될 수 있다.
VR 에이전트(108)는 VR 컨텐츠와 관련된 각종 데이터를 처리하는 소프트웨어, 또는 상기 소프트웨어가 탑재된 컴퓨터 판독 가능 저장 매체로서, VR 컨텐츠 단말(106)에 탑재될 수 있다. VR 에이전트(108)는 VR 컨텐츠의 실행 관리, 사용자의 접근 권한 관리, 인증 및 로그 수집, VR 컨텐츠와 관련된 데이터 중계, VR 컨텐츠의 진도 관리, 각 사용자(훈련자)의 교육 점수 관리 등의 기능을 수행할 수 있다.
먼저, VR 에이전트(108)는 VR 컨텐츠의 실행 및 사용자의 접근 권한을 관리한다. 이를 위해, VR 에이전트(108)는 사용자 로그인을 위한 사용자 인터페이스(UI : User Interface)를 제공할 수 있다. 사용자는 상기 UI를 통해 로그인을 수행할 수 있다. VR 에이전트(108)는 상기 사용자의 로그인시 상기 사용자의 정보, 즉 로그인 정보를 교육 관리 서버(116)로 전달하고, 교육 관리 서버(116)로부터 상기 사용자가 접근 가능한 VR 컨텐츠의 리스트를 전달 받아 화면에 디스플레이할 수 있다. 일 예시로서, A 사용자가 a ~ d 컨텐츠에 대한 접근 권한을 갖고 있다고 가정할 경우, VR 에이전트(108)는 A 사용자가 로그인한 경우 a ~ d 컨텐츠에 대한 리스트를 교육 관리 서버(116)로부터 수신하여 화면에 디스플레이할 수 있다. 사용자는 상기 리스트에 있는 VR 컨텐츠 중 하나를 선택할 수 있다. VR 에이전트(108)는 선택된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 교육 관리 서버(116)로 요청하고, 교육 관리 서버(116)로부터 상기 컨텐츠 데이터를 수신할 수 있다. 여기서, 컨텐츠 데이터는 선택된 상기 VR 컨텐츠의 종류, 이름, 식별번호 등이 될 수 있다. VR 에이전트(108)는 VR 컨텐츠 단말(106)을 통해 VR 컨텐츠를 실행시키고, 이에 따라 VR 컨텐츠 단말(106)로부터 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 요청 받는다. VR 에이전트(108)는 스테이트 머신(102)에 상기 초기 스테이트를 요청하고, 스테이트 머신(102)으로부터 상기 초기 스테이트를 수신하여 VR 컨텐츠 단말(106)로 전달할 수 있다. 이후, VR 컨텐츠 단말(106)은 디스플레이 기기(112)를 통해 상기 초기 스테이트에 따른 출력 데이터를 가시화하고, 이에 따라 VR 컨텐츠가 디스플레이 기기(112)에서 디스플레이될 수 있다.
또한, VR 에이전트(108)는 VR 컨텐츠가 실행된 이후 VR 컨텐츠 단말(106)로부터 VR 컨텐츠의 진행 데이터를 실시간으로 수신하여 스테이트 머신(102)으로 전달한다. 여기서, VR 컨텐츠의 진행 데이터는 VR 컨텐츠가 실행된 이후 현재 어느 단계까지 진행되었는지, 각 데이터 포인트들의 현재 스테이트가 어떠한지를 나타내는 데이터이다. 스테이트 머신(102)은 상기 진행 데이터에 포함된 각 데이터 포인트들의 현재 스테이트를 기반으로 다음 스테이트를 결정한 후 해당 값을 VR 에이전트(108)로 전달할 수 있다. VR 에이전트(108)는 상기 다음 스테이트를 VR 컨텐츠 단말(106)로 전달하고, VR 컨텐츠 단말(106)은 이를 VR 컨텐츠에 반영할 수 있다. VR 컨텐츠 단말(106)은 디스플레이 기기(112)를 통해 상기 다음 스테이트에 따른 출력 데이터를 가시화하고, 이에 따라 다음 스테이트에 대응되는 VR 컨텐츠가 디스플레이 기기(112)에서 디스플레이될 수 있다.
또한, VR 에이전트(108)는 VR 컨텐츠가 실행되는 동안 사용자의 인터랙션이 이루어진 경우 VR 컨텐츠 단말(106)로부터 사용자의 인터랙션 데이터를 수신하여 스테이트 머신(102)으로 전달한다. 여기서, 인터랙션 데이터는 예를 들어, 사용자의 음성, 터치, 클릭, 제스처, 조작도구(미도시)의 조작, 움직임, 시선 등과 같은 인터랙션에 의해 입력되는 데이터로서, 상기 인터랙션에 따른 각 데이터 포인트들의 현재 스테이트를 포함할 수 있다. 스테이트 머신(102)은 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인지의 여부를 판단할 수 있다.
만약, 수신된 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우, VR 에이전트(108)는 스테이트 머신(102)으로부터 상기 논리 관계에 따른 다음 스테이트를 수신할 수 있다.
만약, 수신된 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 것으로 판단되는 경우, VR 에이전트(108)는 스테이트 머신(102)으로부터 상기 VR 컨텐츠의 변경 요청 메시지를 수신할 수 있다. 이 경우, VR 에이전트(108)는 상기 VR 컨텐츠의 변경 요청 메시지를 교육 관리 서버(116)와 VR 컨텐츠 단말(106)에 각각 전달할 수 있다.
또한, VR 에이전트(108)는 상기 VR 컨텐츠의 실행이 종료되는 경우 VR 컨텐츠 단말(106)로부터 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 수신하고, 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 교육 관리 서버(116)로 전달한다. 후술할 바와 같이, 교육 관리 서버(116)는 각 사용자별 진도 데이터를 관리하고, 이를 기초로 VR 컨텐츠의 개선사항을 도출할 수 있다.
제2 데이터베이스(110)는 사용자의 로그인 정보(아이디, 패스워드 등), VR 컨텐츠에 대한 각 사용자의 실행 및 접근 권한, 과금 정보 등이 저장되는 저장소이다.
디스플레이 기기(112)는 VR 컨텐츠가 디스플레이되는 장치로서, 예를 들어 HMD(Head Mounted Display)일 수 있다. 다만, 디스플레이 기기(112)의 종류가 특별히 이에 한정되는 것은 아니다.
인터랙션 수집장치(114)는 VR 컨텐츠가 실행되는 동안 사용자의 인터랙션 데이터를 수집한다. 여기서, 인터랙션은 사용자가 직무 훈련을 위해 VR 컨텐츠에 어떠한 입력을 주면 VR 컨텐츠에서 이에 대응되는 출력을 해주는 과정을 의미한다. 인터랙션 수집장치(114)는 예를 들어, 센서, 조작도구, 카메라 등이 될 수 있으며, 훈련장 내 설정된 지점에 위치하거나 디스플레이 기기(112)에 부착되는 등 다양한 위치에 배치될 수 있다.
교육 관리 서버(116)는 VR 컨텐츠, VR 컨텐츠의 내용(즉, 컨텐츠 자체) 및 직무절차, 사용자 정보 등을 관리하는 장치이다. 교육 관리 서버(116)는 저작도구(미도시)를 구비할 수 있으며, 상기 저작도구를 통해 VR 컨텐츠를 생성할 수 있다. 또한, 교육 관리 서버(116)는 컨텐츠 제공자(미도시)로부터 VR 컨텐츠를 제공 받을 수도 있다. 제3 데이터베이스(118)에는 VR 컨텐츠, 사용자 정보 등이 저장될 수 있으며, 교육 관리 서버(116)는 제3 데이터베이스(118)와 연동하여 VR 컨텐츠, 사용자 정보 등을 관리할 수 있다.
상술한 바와 같이, 교육 관리 서버(116)는 사용자의 로그인시 VR 에이전트(108)로부터 상기 사용자의 로그인 정보를 수신하고, 상기 사용자가 접근 가능한 VR 컨텐츠의 리스트를 VR 에이전트(108)로 전달할 수 있다. 교육 관리 서버(116)는 다수의 VR 컨텐츠를 관리할 수 있으며, 교육 관리 서버(116)에서 관리하는 각 VR 컨텐츠는 서로 다른 종류의 직무 훈련을 위한 VR 컨텐츠일 수 있다. 일 예시로서, 상기 각 VR 컨텐츠는, 예를 들어 발전소에서의 발전기 정비 작업을 훈련하기 위한 VR 컨텐츠, 건설현장에서의 전기설비 작업을 훈련하기 위한 VR 컨텐츠 등이 될 수 있다. 이때, 상기 직무 훈련은 설정된 EOP 또는 SOP 기반의 직무 절차를 포함할 수 있다. VR 에이전트(108)가 상기 사용자로부터 상기 VR 컨텐츠의 리스트에 있는 VR 컨텐츠 중 하나를 입력 받는 경우, 교육 관리 서버(116)는 입력된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 VR 에이전트(108)로 전달할 수 있다.
또한, 교육 관리 서버(116)는 사용자별 상기 각 VR 컨텐츠의 진도 데이터를 관리할 수 있다. 교육 관리 서버(116)는 상기 VR 컨텐츠의 실행이 종료되는 경우 VR 에이전트(108)로부터 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 수신하고, 이를 제3 데이터베이스(118)에 저장할 수 있다. 이후, 상기 사용자에 의해 상기 VR 컨텐츠의 실행이 재요청되는 경우, 교육 관리 서버(116)는 상기 진도 데이터를 VR 에이전트(108)로 전달할 수 있다. 이 경우, 사용자는 상기 VR 컨텐츠가 종료된 시점에 대응되는 부분부터 다시 참여할 수 있게 된다.
또한, 교육 관리 서버(116)는 인공지능(AI : Artificial Intelligence)을 기초로 상기 각 사용자별 진도 데이터를 분석하여 상기 VR 컨텐츠의 개선사항을 도출할 수 있다. 상기 진도 데이터는 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠의 진행 단계, 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트, 에러 발생 이력 등을 포함할 수 있다. 교육 관리 서버(116)는 빅데이터 분석기법을 통해 상기 VR 컨텐츠의 개선사항을 도출할 수 있다.
일 예시로서, 사용자가 직무 훈련을 수행하는 작업 환경에서 추락 위험에 대한 안내 표지판이 없어 사용자가 특정 지점에서 반복적으로 추락하여 에러가 발생되는 경우, 교육 관리 서버(116)는 해당 작업 환경의 특정 지점에 안내 표지판을 추가하는 내용의 개선사항을 도출할 수 있다. 다른 예시로서, 사용자가 직무 훈련을 수행하는 작업 환경에서 사용자를 위한 경로표시 안내가 잘못되어 사용자가 잘못된 경로로 계속 지나감으로써 에러가 발생되는 경우, 교육 관리 서버(116)는 해당 작업 환경의 특정 지점에 위치한 경로표시 안내를 수정하는 내용의 개선사항을 도출할 수 있다. 다른 예시로서, 다수의 사용자가 멀티훈련을 진행할 때 1번 사용자는 3번 사용자가 위치한 지점에 가서 특정 테스크(task)를 수행하고 이와 동시에 3번 사용자는 1번 사용자가 위치한 지점에 가서 특정 테스크를 수행하여야 하는데 1번 사용자와 3번 사용자가 달려가는 시간이 서로 달라 테스크 수행이 동시에 이루어지지 않는 경우, 교육 관리 서버(116)는 VR 컨텐츠 내 직무절차를 아예 바꾸는 내용의 개선사항을 도출할 수 있다. 이와 같이, 교육 관리 서버(116)는 빅데이터 분석기법을 통해 VR 컨텐츠 내의 내용이나 직무절차를 변경하는 내용의 개선사항을 도출할 수 있다.
이후, 교육 관리 서버(116)는 상기 개선사항을 시뮬레이션하기 위한 개선 데이터를 스테이트 머신(102)으로 전달할 수 있다. 스테이트 머신(102)은 상기 개선 데이터를 토대로 시뮬레이션을 수행할 수 있다. 시뮬레이션 결과 개선사항이 적절한 것으로 판단되는 경우, 스테이트 머신(102)은 상기 개선 데이터를 토대로 상기 논리 관계를 변경하고, 변경된 상기 논리 관계에 따른 변경 데이터를 교육 관리 서버(116)로 전달할 수 있다.
제3 데이터베이스(118)는 VR 컨텐츠와 관련된 데이터가 저장되는 저장소이다. 제3 데이터베이스(118)에는 VR 컨텐츠, 사용자 정보, VR 컨텐츠의 진도 정보 등이 저장될 수 있다. 또한, 제3 데이터베이스(118)에는 VR 컨텐츠를 구성하는 3차원 디지털 자산(예를 들어, 가상 오브젝트, 데이터 포인트 등), 비상운영계획서(EOP), 표준작업절차서(SOP) 등이 저장될 수 있다.
도 2는 예시적인 실시예에 따른 훈련장의 예시이다.
도 2를 참조하면, 훈련장 내에는 VR 컨텐츠 단말(106), 디스플레이 기기(112) 및 인터랙션 수집장치(114)가 배치될 수 있다. 이때, 사용자(즉, 훈련자)는 디스플레이 기기(112)를 통해 VR 컨텐츠를 응시하면서 직무 훈련을 수행할 수 있다. 또한, VR 컨텐츠 단말(106)은 VR 에이전트(미도시)를 구비하며, 상기 VR 에이전트를 통해 VR 컨텐츠의 실행을 위한 UI를 제공할 수 있다. 이때, 복수의 사용자가 하나의 VR 컨텐츠에 대한 직무 훈련을 동시에 수행할 수 있으며, 이 경우 VR 에이전트가 각 사용자별로 존재하게 된다. 이러한 멀티유저 훈련 환경에서 각 사용자는 가상 공간에서 직무 훈련을 위한 인터랙션을 수행할 수 있으며, 인터랙션 수집장치(114)에서 상기 각 사용자의 인터랙션 데이터가 수집된다. 여기서, 인터랙션 수집장치(114)는 예를 들어, 훈련장의 바닥에 부착된 움직임 감지 센서, 사용자가 손에 쥐면서 가상 공간의 설비 등을 조작하는 데 사용되는 조작 도구, 훈련장 내에서 각 사용자의 영상을 촬영하는 카메라, 디스플레이 기기(112)에서 사용자의 시선을 추적하기 위한 안구 추적 장치 등이 될 수 있다.
또한, 도 2에 도시된 바와 같이, 훈련장 내에는 각 사용자들의 직무 훈련을 보조하기 위한 훈련 도우미가 배치될 수 있다. 훈련 도우미는 관리자 단말을 통해 VR 컨텐츠 및 상기 VR 컨텐츠 상에서의 각 사용자의 인터랙션, 현재 플레이되고 있는 VR 컨텐츠의 진도 등을 실시간으로 모니터링할 수 있다. 이때, 동일한 VR 컨텐츠라도 각 사용자별로 현재 보고 있는 지점이 상이할 수 있으며, 훈련 도우미는 관리자 단말을 통해 각 사용자 시점별 VR 컨텐츠의 장면(scene)을 실시간으로 모니터링할 수 있다.
도 3은 예시적인 실시예에 따른 VR 컨텐츠의 예시이다.
도 3을 참조하면, 사용자는 HMD를 착용한 채 VR 컨텐츠를 응시하거나 상기 VR 컨텐츠 상에서 각종 인터랙션을 수행할 수 있다. 상기 VR 컨텐츠는 산업현장의 공간, 산업현장에서의 각종 설비들 또는 환경들이 디지털 변환됨으로써 실제 산업현장과 유사한 형태로 구현된 가상환경으로서, 사용자와의 인터랙션을 위한 UI를 구비할 수 있다. 사용자는 VR 컨텐츠를 보면서 직무 훈련을 위한 각종 인터랙션(예를 들어, 제스쳐, 클릭, 터치 등)을 수행할 수 있다. 일 예시로서, 사용자는 VR 컨텐츠 내 밸브(즉, 가상 오브젝트)를 터치하거나 별도 조작도구를 조작함으로써 상기 밸브를 잠글 수 있다.
도 4는 예시적인 실시예에 따른 VR 컨텐츠를 최초로 실행하는 과정을 설명하기 위한 흐름도이다. 이하의 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
S102 단계에서, VR 에이전트(108)는 사용자로부터 로그인 요청을 입력 받는다. VR 에이전트(108)는 사용자로부터 로그인을 위한 아이디, 패스워드 등을 입력 받고, 이를 이용하여 사용자의 로그인 절차를 수행한다.
S104 단계에서, VR 에이전트(108)는 사용자의 로그인이 완료된 경우 로그인 정보(즉, 사용자 정보)를 교육 관리 서버(116)로 전달한다.
S106 단계에서, 교육 관리 서버(116)는 상기 로그인 정보를 기반으로 상기 사용자가 접근 가능한 VR 컨텐츠의 리스트를 선별한다.
S108 단계에서, 교육 관리 서버(116)는 상기 VR 컨텐츠의 리스트를 VR 에이전트(108)로 전달한다.
S110 단계에서, VR 에이전트(108)는 상기 사용자로부터 상기 VR 컨텐츠의 리스트에 있는 VR 컨텐츠 중 하나를 입력 받는다.
S112 단계에서, VR 에이전트(108)는 입력된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 교육 관리 서버(116)로 요청한다.
S114 단계에서, 교육 관리 서버(116)는 입력된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 VR 에이전트(108)로 전달한다.
S116 단계에서, VR 에이전트(108)는 VR 컨텐츠 단말(106)을 통해 VR 컨텐츠를 실행시킨다.
S118 단계에서, VR 컨텐츠 단말(106)은 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 VR 에이전트(108)로 요청한다.
S120 단계에서, VR 에이전트(108)는 상기 초기 스테이트를 스테이트 머신(102)으로 요청한다.
S122 단계에서, 스테이트 머신(102)은 상기 초기 스테이트를 VR 에이전트(108)로 전달한다.
S124 단계에서, VR 에이전트(108)는 상기 초기 스테이트를 VR 컨텐츠 단말(106)로 전달한다.
S126 단계에서, VR 컨텐츠 단말(106)은 상기 초기 스테이트에 따른 출력 데이터를 가시화하기 위해 디스플레이 기기(112)를 제어한다.
S128 단계에서, 디스플레이 기기(112)는 상기 출력 데이터에 따라 상기 VR 컨텐츠를 디스플레이한다.
도 5는 예시적인 실시예에 따른 VR 컨텐츠가 미리 정해진 직무절차에 따라 진행되는 과정을 설명하기 위한 흐름도이다.
S202 단계에서, VR 컨텐츠 단말(106)은 도 4의 S128 단계 이후 VR 컨텐츠를 계속적으로 진행(즉, VR 컨텐츠의 실행을 유지)시킨다.
S204 단계에서, VR 컨텐츠 단말(106)은 상기 VR 컨텐츠가 실행되는 동안 상기 VR 컨텐츠의 진행 데이터를 VR 에이전트(108)로 전달한다.
S206 단계에서, VR 에이전트(108)는 상기 진행 데이터에 포함된 각 데이터 포인트들의 현재 스테이트를 스테이트 머신(102)으로 전달한다.
S208 단계에서, 스테이트 머신(102)은 기 정의된 논리 관계에 따라 상기 각 데이터 포인트들의 현재 스테이트에 따른 다음 스테이트를 결정하고, 상기 다음 스테이트를 VR 에이전트(108)로 전달한다.
S210 단계에서, VR 에이전트(108)는 상기 다음 스테이트를 VR 컨텐츠 단말(106)로 전달한다.
S212 단계에서, VR 컨텐츠 단말(106)은 상기 다음 스테이트를 현재 실행되고 있는 VR 컨텐츠에 반영한다.
S214 단계에서, VR 컨텐츠 단말(106)은 상기 다음 스테이트에 따른 출력 데이터를 가시화하기 위해 디스플레이 기기(112)를 제어한다.
S216 단계에서, 디스플레이 기기(112)는 상기 출력 데이터에 따라 상기 VR 컨텐츠를 디스플레이한다.
도 6은 예시적인 실시예에 따른 VR 컨텐츠가 사용자 인터랙션에 따라 진행되는 과정을 설명하기 위한 흐름도이다.
S302 단계에서, 인터랙션 수집장치(114)는 상기 VR 컨텐츠가 실행되는 동안 사용자의 인터랙션 데이터를 수집하고, 이를 VR 컨텐츠 단말(106)로 전달한다.
S304 단계에서, VR 컨텐츠 단말(106)은 상기 인터랙션 데이터를 VR 에이전트(108)로 전달한다.
S306 단계에서, VR 에이전트(108)는 상기 인터랙션 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 스테이트 머신(102)에 전달한다.
S308 단계에서, 스테이트 머신(102)은 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인지의 여부를 판단한다.
S310 단계에서, 스테이트 머신(102)은 상기 S308 단계에서의 판단 결과 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 경우 상기 논리 관계에 따른 다음 스테이트를 VR 에이전트(108)로 전달한다.
S312 단계에서, VR 에이전트(108)는 상기 다음 스테이트를 VR 컨텐츠 단말(106)로 전달한다.
S314 단계에서, VR 컨텐츠 단말(106)은 상기 다음 스테이트를 현재 실행되고 있는 VR 컨텐츠에 반영한다.
S316 단계에서, VR 컨텐츠 단말(106)은 상기 다음 스테이트에 따른 출력 데이터를 가시화하기 위해 디스플레이 기기(112)를 제어한다.
S318 단계에서, 디스플레이 기기(112)는 상기 출력 데이터에 따라 상기 VR 컨텐츠를 디스플레이한다.
도 7은 예시적인 실시예에 따른 VR 컨텐츠가 종료되는 과정을 설명하기 위한 흐름도이다.
S402 단계에서, 인터랙션 수집장치(114)는 사용자로부터 상기 VR 컨텐츠의 종료 요청을 수집하고, 이를 VR 컨텐츠 단말(106)로 전달한다. 상기 VR 컨텐츠의 종료 요청은 앞서 설명한 인터랙션의 일종으로서, 예를 들어, 사용자의 음성, 터치, 클릭, 제스처, 조작도구(미도시)의 조작, 움직임, 시선 등에 의해 입력될 수 있다.
S404 단계에서, VR 컨텐츠 단말(106)은 상기 VR 컨텐츠의 종료 요청을 VR 에이전트(108)로 전달한다.
S406 단계에서, VR 컨텐츠 단말(106)은 상기 VR 컨텐츠의 종료 요청에 따라 상기 VR 컨텐츠의 실행을 종료시킨다.
S408 단계에서, VR 에이전트(108)은 상기 VR 컨텐츠의 종료 요청을 수신함에 따라 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 교육 관리 서버(116)로 전달한다.
S410 단계에서, 교육 관리 서버(116)는 각 사용자별 진도 데이터를 저장한다.
도 8은 예시적인 실시예에 따라 직무 훈련 과정에서의 에러 발생을 판단하고 에러 발생시 VR 컨텐츠를 실시간으로 변경하는 과정을 설명하기 위한 흐름도이다.
S502 단계에서, 인터랙션 수집장치(114)는 상기 VR 컨텐츠가 실행되는 동안 사용자의 인터랙션 데이터를 수집하고, 이를 VR 컨텐츠 단말(106)로 전달한다.
S504 단계에서, VR 컨텐츠 단말(106)은 상기 인터랙션 데이터를 VR 에이전트(108)로 전달한다.
S506 단계에서, VR 에이전트(108)는 상기 인터랙션 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 스테이트 머신(102)에 전달한다.
S508 단계에서, 스테이트 머신(102)은 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인지의 여부를 판단한다.
S510 단계에서, 스테이트 머신(102)은 상기 S808 단계에서의 판단 결과 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 경우 현재 에러 상태를 기록한다. 여기서, 현재 에러 상태는 에러가 발생된 시점에서의 VR 컨텐츠의 단계, 각 데이터 포인트들의 현재 상태 등을 포함할 수 있다.
S512 단계에서, 스테이트 머신(102)은 상기 VR 컨텐츠의 변경 요청 메시지를 VR 에이전트(108)로 전달한다.
S514 단계에서, VR 에이전트(108)는 상기 VR 컨텐츠의 변경 요청 메시지를 교육 관리 서버(116)로 전달한다.
S516 단계에서, 교육 관리 서버(116)는 VR 컨텐츠의 개선사항을 기록하고, 제3 데이터베이스(118)를 참조하여 VR 컨텐츠를 변경한다. 예를 들어, VR 컨텐츠 내 직무절차가 ①→②→③ 으로 진행될 때 S510 단계에서 에러 발생이 기록되는 경우, 교육 관리 서버(116)는 S514 단계에서 상기 VR 컨텐츠의 변경 요청 메시지를 VR 에이전트(108)로부터 수신함에 따라 VR 컨텐츠 내 직무절차를 A→B→C 로 변경할 수 있다. 이에 따라, VR 컨텐츠 내 직무절차는 아래와 같이 실시간으로 변경된다.
변경 전 : ①→②→③
변경 후 : A→B→C
이와 같은 변경 내용은 제3 데이터베이스(118)에 미리 저장되어 있을 수 있다. 예를 들어, 제3 데이터베이스(118)에는 각 단계별 발생 에러에 따라 변경되어야 할 VR 컨텐츠의 내용, 직무절차 등이 미리 저장되어 있을 수 있다. 또한, 이와 같이 변경되어야 할 VR 컨텐츠의 내용, 직무절차 등은 상술한 빅데이터 분석기법을 통해 정해질 수 있다. 이에 대해서는 도 9를 참조하여 후술하기로 한다.
S518 단계에서, VR 에이전트(108)는 상기 VR 컨텐츠의 변경 요청 메시지를 VR 컨텐츠 단말(106)로 전달한다.
S520 단계에서, VR 컨텐츠 단말(106)은 VR 컨텐츠의 변경을 위한 리소스를 교육 관리 서버(116)로 요청한다.
S522 단계에서, 교육 관리 서버(116)는 변경되어야 할 VR 컨텐츠에 대한 리소스를 VR 컨텐츠 단말(106)로 전달한다. 위 예시를 참조하면, 교육 관리 서버(116)는 직무절차 A→B→C 에 대한 VR 컨텐츠의 리소스를 VR 컨텐츠 단말(106)로 전달할 수 있다.
S524 단계에서, VR 컨텐츠 단말(106)은 교육 관리 서버(116)로부터 수신된 리소스를 이용하여 변경된 VR 컨텐츠를 동적으로 로딩한다.
S526 단계에서, VR 컨텐츠 단말(106)은 상기 변경된 VR 컨텐츠의 출력 데이터를 가시화하기 위해 디스플레이 기기(112)를 제어한다.
S528 단계에서, 디스플레이 기기(112)는 상기 출력 데이터에 따라 상기 VR 컨텐츠를 디스플레이한다.
도 9는 예시적인 실시예에 따라 VR 컨텐츠의 내용 및 직무절차에 대한 개선사항을 도출하고, 이에 따라 VR 컨텐츠를 변경하는 과정을 설명하기 위한 흐름도이다.
S602 단계에서, VR 에이전트(108)는 상기 VR 컨텐츠의 실행이 종료되는 경우 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 교육 관리 서버(116)로 전달한다.
S604 단계에서, 교육 관리 서버(116)는 각 사용자별 진도 데이터를 제3 데이터베이스(118)에 저장한다.
S606 단계에서, 교육 관리 서버(116)는 인공지능을 기초로 상기 각 사용자별 진도 데이터를 분석하여 상기 VR 컨텐츠의 개선사항을 도출한다.
S608 단계에서, 교육 관리 서버(116)는 상기 개선사항을 시뮬레이션하기 위한 개선 데이터를 스테이트 머신(102)으로 전달한다.
S610 단계에서, 스테이트 머신(102)은 상기 개선 데이터를 토대로 시뮬레이션을 수행한다.
S612 단계에서, 스테이트 머신(102)은 S610 단계에서의 시뮬레이션 결과 개선사항이 적절한 것으로 판단되는 경우 개선 데이터에 따라 변경되어야 할 논리 관계에 대한 변경 데이터를 교육 관리 서버(116)로 전달한다.
S614 단계에서, 교육 관리 서버(116)는 상기 변경 데이터를 기초로 VR 컨텐츠를 변경한다. 교육 관리 서버(116)는 상기 변경 데이터를 기초로 상기 VR 컨텐츠 내의 내용이나 직무절차를 변경할 수 있다. 이와 같이 변경된 VR 컨텐츠는 다음 VR 훈련에서 적용될 수 있으며, 또한 VR 컨텐츠가 실행되는 동안에 앞선 S516 단계에서 실시간으로 적용될 수도 있다.
S616 단계에서, 스테이트 머신(102)은 상기 개선 데이터를 토대로 상기 논리 관계를 변경한다.
도 10은 예시적인 실시예에 따른 VR 컨텐츠가 동적으로 변화하는 예시이다.
도 10을 참조하면, VR 컨텐츠의 실행시 각 데이터 포인트의 초기 스테이트가 아래와 같다고 가정한다.
A 설비 온도 : HIGH
B 설비 동작여부 : OFF
C 설비 동작여부 : ON
또한, VR 컨텐츠 내 직무절차에서 최초로 수행되어야 할 직무가 task #1인 경우, 훈련자는 예를 들어 task #1의 수행을 위해 가상환경에서 C 설비를 OFF 조작할 수 있다. 이와 같은 인터랙션으로 인해, 각 데이터 포인트의 스테이트가 변화하고, 이에 따라 다음으로 수행되어야 할 직무가 task #2로 결정된다. 만약, 훈련자가 task #1의 수행을 위해 A 설비의 온도를 내리거나 B 설비를 OFF 조작하는 경우 다음으로 수행되어야 할 직무가 task #2가 아닌 다른 task(예를 들어, task #5)로 변화할 수 있다. 또한, task #3에서 훈련자가 C 설비를 ON 조작해야 함에도 불구하고 이를 수행하지 않은 경우, 다음으로 수행되어야 할 직무로서 task #3이 그대로 유지될 수 있다.
즉, 사용자의 인터랙션에 따라 VR 컨텐츠 내 직무절차가 task #1 → task #2 → task #3 → task #3 으로 변화할 수 있다. 이러한 직무절차의 변화는 사용자의 인터랙션에 따라 달라지며, 만약 도 6에서와 다른 형태의 인터랙션이 이루어지는 경우 직무절차가 task #1 → task #5 → task #4 → task #3 으로 변할 수도 있다. 이러한 직무절차의 동적 변화는 스테이트 머신(102)과의 실시간 연동을 통해 이루어지며, 이에 따라 상황에 따른 맞춤형 직무절차가 사용자에게 제공될 수 있다.
도 11은 예시적인 실시예에 따른 사용자가 복수 명 존재하는 경우 VR 에이전트(108)와 스테이트 머신(102) 간의 데이터 흐름을 설명하기 위한 도면이다. 상술한 바와 같이, 복수의 사용자가 하나의 VR 컨텐츠에 대한 직무 훈련을 동시에 수행할 수 있으며, 이 경우 VR 에이전트가 각 사용자별로 존재하게 된다.
일 예시로서, 제1 사용자를 위한 제1 VR 에이전트(108-1), 제2 사용자를 위한 제2 VR 에이전트(108-2), 제3 사용자를 위한 제3 VR 에이전트(108-3)가 각각 구비될 수 있으며, 각 VR 에이전트(108-1, 108-2, 108-3)는 하나의 스테이트 머신(102)에 모두 연결된다. 각 VR 에이전트(108-1, 108-2, 108-3)는 각 사용자의 인터랙션 데이터를 스테이트 머신(102)으로 전달하고, 스테이트 머신(102)은 각 사용자의 인터랙션 데이터를 조합하여 VR 컨텐츠에 따른 직무 훈련이 정상적으로 이루어지고 있는지 판단할 수 있다. 예를 들어, 스테이트 머신(102)은 제1 데이터베이스(104)에 저장된 각 데이터 포인트의 스테이트와 인터랙션 데이터들에 포함된 각 데이터 포인트의 현재 스테이트를 비교하여 각 데이터 포인트의 현재 스테이트가 미리 정의된 논리 관계에 따른 정상적인 스테이트인것인지의 여부를 판단할 수 있다.
만약, 상기 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우, 스테이트 머신(102)은 상기 논리 관계에 따른 다음 스테이트를 VR 에이전트(108)로 전달할 수 있다.
만약, 상기 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 것으로 판단되는 경우, 스테이트 머신(102)은 현재 에러 상태를 기록하고 상기 VR 컨텐츠의 변경 요청 메시지를 VR 에이전트(108)로 전달할 수 있다.
도 12는 예시적인 실시예에 따른 EOP(Emergency Operations Plan)의 예시이다. 도 12를 참조하면, EOP는 예를 들어, 긴급상황 발생시 발전기 내 CO2 를 공급하는 절차를 기술한 절차서일 수 있다. 도 12에 도시된 바와 같이, EOP는 순차적인 직무 절차를 포함할 수 있다.
도 13은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되지 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 VR 훈련 시스템(100), 또는 VR 훈련 시스템(100)에 포함되는 하나 이상의 컴포넌트일 수 있다.
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 전술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
10 : 컴퓨팅 환경
12 : 컴퓨팅 장치
14 : 프로세서
16 : 컴퓨터 판독 가능 저장 매체
18 : 통신 버스
20 : 프로그램
22 : 입출력 인터페이스
24 : 입출력 장치
26 : 네트워크 통신 인터페이스
100 : 직무절차 동적 생성 시스템
102 : 스테이트 머신
104 : 제1 데이터베이스
106 : VR 컨텐츠 단말
108 : VR 에이전트
110 : 제2 데이터베이스
112 : 디스플레이 기기
114 : 인터랙션 수집장치
116 : 교육 관리 서버
118 : 제3 데이터베이스

Claims (20)

  1. 설정된 각 가상 오브젝트들의 데이터 포인트 간의 스테이트(state) 기반 논리 관계에 따라 각 데이터 포인트들의 현재 스테이트(present state)에 따른 다음 스테이트(next state)를 결정하는 스테이트 머신(state machine);
    사용자로부터 요청된 VR 컨텐츠에 대응되는 컨텐츠 데이터를 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시키고, 상기 스테이트 머신으로부터 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 전달 받는 VR 에이전트; 및
    상기 VR 에이전트로부터 상기 초기 스테이트를 수신하고, 디스플레이 기기를 통해 상기 초기 스테이트에 따른 출력 데이터를 가시화하고, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 수집되는 사용자의 인터랙션 데이터(interaction data)에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 상기 VR 에이전트에 전달하는 VR 컨텐츠 단말을 포함하며,
    상기 스테이트 머신은, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 것으로 판단되는 경우 상기 VR 컨텐츠의 변경 요청 메시지를 상기 VR 에이전트로 전달하고,
    상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 VR 컨텐츠의 변경 요청 메시지를 수신하여 상기 교육 관리 서버로 전달하며, 상기 교육 관리 서버로부터 변경된 VR 컨텐츠의 리소스를 전달 받아 상기 변경된 VR 컨텐츠를 동적으로 로딩하는, VR 훈련 시스템.
  2. 청구항 1에 있어서,
    상기 교육 관리 서버는, 다수의 VR 컨텐츠를 관리하며,
    상기 VR 에이전트는, 상기 사용자의 로그인시 상기 사용자가 접근 가능한 VR 컨텐츠의 리스트를 상기 교육 관리 서버로부터 수신하고, 상기 사용자로부터 상기 VR 컨텐츠의 리스트에 있는 VR 컨텐츠 중 하나를 입력 받는 경우 입력된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 상기 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시키는, VR 훈련 시스템.
  3. 청구항 2에 있어서,
    상기 각 VR 컨텐츠는, 서로 다른 종류의 직무 훈련을 위한 VR 컨텐츠인, VR 훈련 시스템.
  4. 청구항 3에 있어서,
    상기 직무 훈련은, 설정된 EOP(Emergency Operations Plan) 또는 SOP(Standard Operating Procedure) 기반의 직무 절차를 포함하는, VR 훈련 시스템.
  5. 청구항 1에 있어서,
    상기 VR 컨텐츠 단말은, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 상기 VR 컨텐츠의 진행 데이터를 상기 VR 에이전트로 전달하고,
    상기 스테이트 머신은, 상기 VR 에이전트로부터 상기 진행 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 수신하고, 상기 논리 관계에 기초하여 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 상기 VR 에이전트로 전달하고,
    상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영하는, VR 훈련 시스템.
  6. 청구항 1에 있어서,
    상기 VR 에이전트는, 상기 VR 컨텐츠의 실행이 종료되는 경우 상기 VR 컨텐츠 단말로부터 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 수신하고, 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 상기 교육 관리 서버로 전달하는, VR 훈련 시스템.
  7. 청구항 6에 있어서,
    상기 교육 관리 서버는, 각 사용자별 진도 데이터를 관리하고, 인공지능(AI : Artificial Intelligence)을 기초로 상기 각 사용자별 진도 데이터를 분석하여 상기 VR 컨텐츠의 개선사항을 도출하는, VR 훈련 시스템.
  8. 청구항 7에 있어서,
    상기 교육 관리 서버는, 상기 개선사항을 시뮬레이션하기 위한 개선 데이터를 상기 스테이트 머신으로 전달하고,
    상기 스테이트 머신은, 상기 개선 데이터를 토대로 상기 논리 관계를 변경하고, 변경된 상기 논리 관계에 따른 변경 데이터를 상기 교육 관리 서버로 전달하며,
    상기 교육 관리 서버는, 상기 변경 데이터를 토대로 상기 VR 컨텐츠를 변경하는, VR 훈련 시스템.
  9. 청구항 8에 있어서,
    상기 교육 관리 서버는, 상기 VR 컨텐츠 내의 내용이나 직무절차를 변경하는, VR 훈련 시스템.
  10. 청구항 1에 있어서,
    상기 스테이트 머신은, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우 상기 논리 관계에 따른 다음 스테이트를 상기 VR 에이전트로 전달하고,
    상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영하는, VR 훈련 시스템.
  11. 설정된 각 가상 오브젝트들의 데이터 포인트 간의 스테이트(state) 기반 논리 로직에 따라 각 데이터 포인트들의 현재 스테이트에 따른 출력 데이터를 생성하는 스테이트 머신(state machine)을 이용한, VR 훈련 방법으로서,
    VR 에이전트에서, 사용자로부터 요청된 VR 컨텐츠에 대응되는 컨텐츠 데이터를 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시키는 단계;
    상기 VR 에이전트에서, 상기 스테이트 머신으로부터 상기 VR 컨텐츠 내 데이터 포인터들의 초기 스테이트를 전달 받는 단계;
    VR 컨텐츠 단말에서, 상기 VR 에이전트로부터 상기 초기 스테이트를 수신하는 단계;
    상기 VR 컨텐츠 단말에서, 디스플레이 기기를 통해 상기 초기 스테이트에 따른 출력 데이터를 가시화하는 단계;
    상기 VR 컨텐츠 단말에서, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 수집되는 사용자의 인터랙션 데이터(interaction data)에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 상기 VR 에이전트에 전달하는 단계;
    상기 스테이트 머신에서, 상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 맞지 않는 비정상적인 스테이트인 것으로 판단되는 경우 상기 VR 컨텐츠의 변경 요청 메시지를 상기 VR 에이전트로 전달하는 단계;
    상기 VR 컨텐츠 단말에서, 상기 VR 에이전트로부터 상기 VR 컨텐츠의 변경 요청 메시지를 수신하여 상기 교육 관리 서버로 전달하는 단계; 및
    상기 VR 컨텐츠 단말에서, 상기 교육 관리 서버로부터 변경된 VR 컨텐츠의 리소스를 전달 받아 상기 변경된 VR 컨텐츠를 동적으로 로딩하는 단계를 포함하는, VR 훈련 방법.
  12. 청구항 11에 있어서,
    상기 교육 관리 서버는, 다수의 VR 컨텐츠를 관리하며,
    상기 VR 컨텐츠를 실행시키는 단계는, 상기 사용자의 로그인시 상기 사용자가 접근 가능한 VR 컨텐츠의 리스트를 상기 교육 관리 서버로부터 수신하고, 상기 사용자로부터 상기 VR 컨텐츠의 리스트에 있는 VR 컨텐츠 중 하나를 입력 받는 경우 입력된 상기 VR 컨텐츠에 대응되는 컨텐츠 데이터를 상기 교육 관리 서버로부터 수신함에 따라 상기 VR 컨텐츠를 실행시키는, VR 훈련 방법.
  13. 청구항 12에 있어서,
    상기 각 VR 컨텐츠는, 서로 다른 종류의 직무 훈련을 위한 VR 컨텐츠인, VR 훈련 방법.
  14. 청구항 13에 있어서,
    상기 직무 훈련은, 설정된 EOP(Emergency Operations Plan) 또는 SOP(Standard Operating Procedure) 기반의 직무 절차를 포함하는, VR 훈련 방법.
  15. 청구항 11에 있어서,
    상기 출력 데이터를 가시화하는 단계 이후에,
    상기 VR 컨텐츠 단말에서, 상기 출력 데이터에 따라 상기 VR 컨텐츠가 실행되는 동안 상기 VR 컨텐츠의 진행 데이터를 상기 VR 에이전트로 전달하는 단계;
    상기 스테이트 머신에서, 상기 VR 에이전트로부터 상기 진행 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 수신하는 단계;
    상기 스테이트 머신에서, 상기 논리 관계에 기초하여 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 상기 VR 에이전트로 전달하는 단계; 및
    상기 VR 컨텐츠 단말에서, 상기 VR 에이전트로부터 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트에 따른 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영하는 단계를 더 포함하는, VR 훈련 방법.
  16. 청구항 11에 있어서,
    상기 VR 에이전트에서, 상기 VR 컨텐츠의 실행이 종료되는 경우 상기 VR 컨텐츠 단말로부터 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 수신하는 단계;
    상기 VR 에이전트에서, 상기 VR 컨텐츠의 실행이 종료된 시점에서의 상기 VR 컨텐츠 내 데이터 포인터들의 스테이트를 포함하는 진도 데이터를 상기 교육 관리 서버로 전달하는 단계; 및
    상기 교육 관리 서버에서, 각 사용자별 진도 데이터를 관리하는 단계를 더 포함하는, VR 훈련 방법.
  17. 청구항 16에 있어서,
    상기 각 사용자별 진도 데이터를 관리하는 단계 이후,
    상기 교육 관리 서버에서, 인공지능(AI : Artificial Intelligence)을 기초로 상기 각 사용자별 진도 데이터를 분석하여 상기 VR 컨텐츠의 개선사항을 도출하는 단계를 더 포함하는, VR 훈련 방법.
  18. 청구항 17에 있어서,
    상기 VR 컨텐츠의 개선사항을 도출하는 단계 이후,
    상기 교육 관리 서버에서, 상기 개선사항을 시뮬레이션하기 위한 개선 데이터를 상기 스테이트 머신으로 전달하는 단계;
    상기 스테이트 머신에서, 상기 개선 데이터를 토대로 상기 논리 관계를 변경하는 단계;
    상기 스테이트 머신에서, 변경된 상기 논리 관계에 따른 변경 데이터를 상기 교육 관리 서버로 전달하는 단계; 및
    상기 교육 관리 서버에서, 상기 변경 데이터를 토대로 상기 VR 컨텐츠를 변경하는 단계를 더 포함하는, VR 훈련 방법.
  19. 청구항 18에 있어서,
    상기 VR 컨텐츠를 변경하는 단계는, 상기 VR 컨텐츠 내의 내용이나 직무절차를 변경하는, VR 훈련 방법.
  20. 청구항 11에 있어서,
    상기 인터랙션 데이터에 대응되는 상기 VR 컨텐츠 내 데이터 포인터들의 현재 스테이트를 상기 VR 에이전트에 전달하는 단계 이후,
    상기 인터랙션 데이터에 대응되는 현재 스테이트가 상기 논리 관계에 따른 정상적인 스테이트인 것으로 판단되는 경우 상기 논리 관계에 따른 다음 스테이트를 상기 VR 에이전트로 전달하는 단계; 및
    상기 VR 컨텐츠 단말은, 상기 VR 에이전트로부터 상기 다음 스테이트를 수신하여 현재 실행되고 있는 상기 VR 컨텐츠에 반영하는 단계를 더 포함하는, VR 훈련 방법.
KR1020190124086A 2019-10-07 2019-10-07 Vr 훈련 시스템 및 방법 KR102051558B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020190124086A KR102051558B1 (ko) 2019-10-07 2019-10-07 Vr 훈련 시스템 및 방법
US17/254,109 US20230316946A1 (en) 2019-10-07 2019-10-08 System and method for vr training
PCT/KR2019/013238 WO2021070984A1 (ko) 2019-10-07 2019-10-08 Vr 훈련 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190124086A KR102051558B1 (ko) 2019-10-07 2019-10-07 Vr 훈련 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102051558B1 true KR102051558B1 (ko) 2019-12-05

Family

ID=69002409

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190124086A KR102051558B1 (ko) 2019-10-07 2019-10-07 Vr 훈련 시스템 및 방법

Country Status (3)

Country Link
US (1) US20230316946A1 (ko)
KR (1) KR102051558B1 (ko)
WO (1) WO2021070984A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111210200A (zh) * 2020-01-05 2020-05-29 湖南翰坤实业有限公司 一种基于vr技术的建筑安全教育多人在线培训系统
CN111739352A (zh) * 2020-06-03 2020-10-02 长沙理工大学 一种中央空调虚拟维修训练系统的仿真方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113554911A (zh) * 2021-06-29 2021-10-26 广州市高速公路有限公司 一种建筑施工安全教学系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11153940A (ja) * 1997-11-20 1999-06-08 Kubota Corp プラント運転訓練シミュレーションシステム
KR20160041879A (ko) * 2016-03-30 2016-04-18 리치앤타임(주) 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법.
KR101780949B1 (ko) * 2016-12-30 2017-09-21 비즈 주식회사 가상현실을 활용한 방사능 방재 훈련 시스템
JP2018159949A (ja) * 2013-03-11 2018-10-11 リンカーン グローバル,インコーポレイテッド 仮想現実オービタルパイプ溶接シミュレータ及びセットアップ
KR20190004088A (ko) 2017-07-03 2019-01-11 포항공과대학교 산학협력단 생체신호연동 가상현실 교육 시스템 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101390383B1 (ko) * 2010-11-16 2014-04-29 한국전자통신연구원 가상현실 기반 훈련 시뮬레이터를 위한 가변형 플랫폼 관리 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11153940A (ja) * 1997-11-20 1999-06-08 Kubota Corp プラント運転訓練シミュレーションシステム
JP2018159949A (ja) * 2013-03-11 2018-10-11 リンカーン グローバル,インコーポレイテッド 仮想現実オービタルパイプ溶接シミュレータ及びセットアップ
KR20160041879A (ko) * 2016-03-30 2016-04-18 리치앤타임(주) 다중 접속을 통하여 다수의 훈련자의 개별적인 가상훈련공간의 인식과 공유된 가상작업공간에서 집단적이며 조직적인 협력훈련이 가능한 몰입식 네트워크 가상훈련 시스템의 클라이언트 시스템을 구성하는 네트워크 가상훈련 처리장치 및 이를 이용한 몰입식 네트워크 가상훈련 방법.
KR101780949B1 (ko) * 2016-12-30 2017-09-21 비즈 주식회사 가상현실을 활용한 방사능 방재 훈련 시스템
KR20190004088A (ko) 2017-07-03 2019-01-11 포항공과대학교 산학협력단 생체신호연동 가상현실 교육 시스템 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111210200A (zh) * 2020-01-05 2020-05-29 湖南翰坤实业有限公司 一种基于vr技术的建筑安全教育多人在线培训系统
CN111739352A (zh) * 2020-06-03 2020-10-02 长沙理工大学 一种中央空调虚拟维修训练系统的仿真方法

Also Published As

Publication number Publication date
WO2021070984A1 (ko) 2021-04-15
US20230316946A1 (en) 2023-10-05

Similar Documents

Publication Publication Date Title
KR102051543B1 (ko) Vr 훈련 시스템 및 방법
KR102051568B1 (ko) Vr 훈련 시스템 및 방법
KR102051558B1 (ko) Vr 훈련 시스템 및 방법
US7853669B2 (en) Mesh-managing data across a distributed set of devices
KR101994296B1 (ko) 메신저를 이용한 결재 방법 및 시스템
US11087053B1 (en) Method, electronic device, and computer program product for information display
US11055619B2 (en) Systems and methods for energy expert collaboration features
US20060174200A1 (en) Method and system to layout topology objects
US20200357294A1 (en) Simulation server capable of interacting with a plurality of simulators to perform a plurality of simulations
US11281435B2 (en) Application development environment providing system, application development environment provision method, terminal device, and application display method
JP6094593B2 (ja) 情報システム構築装置、情報システム構築方法および情報システム構築プログラム
KR20180113812A (ko) 메시지와 대응되는 태스크를 생성, 처리, 관리하는 컴퓨터 프로그램 및 전자 기기
CN114116102A (zh) 一种机器人流程自动化管理系统
WO2022100075A1 (zh) 性能检测方法、装置、电子设备和计算机可读介质
KR20170015789A (ko) 사용자 정의기반의 다차원 데이터를 시각화하는 방법 및 시스템
JP2022078129A (ja) データラベリング方法、装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム
EP3694178A1 (en) Computer systems for regulating access to electronic content using usage telemetry data
US11822863B2 (en) Model based system for virtual device simulation
Zhen et al. A real-time simulation grid for collaborative virtual assembly of complex products
JP2012226653A (ja) 監視制御システム
US20220294827A1 (en) Virtual reality gamification-based security need simulation and configuration in any smart surrounding
CN112291329B (zh) 信息显示方法、装置及设备
US20230351914A1 (en) Virtual reality simulations for training
Li et al. User-Oriented Augmented Reality Content Delivery and Management for Ubiquitous Manufacturing
Fu et al. An Integrated Visualization Framework to Enhance Human–Robot Collaboration in Facility Management

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant