[go: up one dir, main page]

KR20240031628A - Virtual reality device, server and method for controlling drone swarm using immersive virtual reality - Google Patents

Virtual reality device, server and method for controlling drone swarm using immersive virtual reality Download PDF

Info

Publication number
KR20240031628A
KR20240031628A KR1020220110554A KR20220110554A KR20240031628A KR 20240031628 A KR20240031628 A KR 20240031628A KR 1020220110554 A KR1020220110554 A KR 1020220110554A KR 20220110554 A KR20220110554 A KR 20220110554A KR 20240031628 A KR20240031628 A KR 20240031628A
Authority
KR
South Korea
Prior art keywords
virtual reality
drone
interest
drone swarm
area
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
KR1020220110554A
Other languages
Korean (ko)
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 KR1020220110554A priority Critical patent/KR20240031628A/en
Priority to US18/089,219 priority patent/US20240077871A1/en
Publication of KR20240031628A publication Critical patent/KR20240031628A/en
Pending legal-status Critical Current

Links

Classifications

    • G08G5/0069
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft
    • G08G5/50Navigation or guidance aids
    • G08G5/56Navigation or guidance aids for two or more aircraft
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U10/00Type of UAV
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0027Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement involving a plurality of vehicles, e.g. fleet or convoy travelling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0044Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement by providing the operator with a computer generated representation of the environment of the vehicle, e.g. virtual reality, maps
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • G05D1/104Simultaneous control of position or course in three dimensions specially adapted for aircraft involving a plurality of aircrafts, e.g. formation flying
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/22Command input arrangements
    • G05D1/221Remote-control arrangements
    • G05D1/222Remote-control arrangements operated by humans
    • G05D1/224Output arrangements on the remote controller, e.g. displays, haptics or speakers
    • G05D1/2244Optic
    • G05D1/2245Optic providing the operator with a purely computer-generated representation of the environment of the vehicle, e.g. virtual reality
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/648Performing a task within a working area or space, e.g. cleaning
    • G05D1/6482Performing a task within a working area or space, e.g. cleaning by dividing the whole area or space in sectors to be processed separately
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/656Interaction with payloads or external entities
    • G05D1/689Pointing payloads towards fixed or moving targets
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/69Coordinated control of the position or course of two or more vehicles
    • G05D1/695Coordinated control of the position or course of two or more vehicles for maintaining a fixed relative position of the vehicles, e.g. for convoy travelling or formation flight
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • B64U2201/10UAVs characterised by their flight controls autonomous, i.e. by navigating independently from ground or air stations, e.g. by using inertial navigation systems [INS]
    • B64U2201/102UAVs characterised by their flight controls autonomous, i.e. by navigating independently from ground or air stations, e.g. by using inertial navigation systems [INS] adapted for flying in formations
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • B64U2201/20Remote controls
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2105/00Specific applications of the controlled vehicles
    • G05D2105/80Specific applications of the controlled vehicles for information gathering, e.g. for academic research
    • G05D2105/87Specific applications of the controlled vehicles for information gathering, e.g. for academic research for exploration, e.g. mapping of an area
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2109/00Types of controlled vehicles
    • G05D2109/20Aircraft, e.g. drones
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Mechanical Engineering (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Optics & Photonics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

A method for controlling a drone cluster based on virtual reality is disclosed. The method for controlling a drone cluster comprises the steps of: displaying, by a virtual reality headset of a virtual reality device, a three-dimensional terrain and a drone cluster projected on a virtual reality space according to a user operation; selecting, by a virtual reality controller of the virtual reality device, a small drone cluster inserted into a region of interest set on the three-dimensional terrain in the drone cluster according to the user operation; and dividing, by a server, the region of interest into a plurality of cells by using the region of interest and the small drone cluster as user input information, allocating the divided cells to drones included in the small drone cluster, respectively, and automatically generating a three-dimensional flight path of the drones allocated to each cell.

Description

가상 현실 장치, 서버 및 실감형 가상 현실 기반의 드론 군집 관제 방법{VIRTUAL REALITY DEVICE, SERVER AND METHOD FOR CONTROLLING DRONE SWARM USING IMMERSIVE VIRTUAL REALITY}Virtual reality device, server, and immersive virtual reality-based drone swarm control method {VIRTUAL REALITY DEVICE, SERVER AND METHOD FOR CONTROLLING DRONE SWARM USING IMMERSIVE VIRTUAL REALITY}

본 발명은 드론 군집 관제 기술에 관한 것으로, 더욱 상세하게는, 실감형 가상 현실(immersive virtual reality)을 이용하여 드론 군집(drone swarm)을 관제하는 기술에 관한 것이다.The present invention relates to drone swarm control technology, and more specifically, to technology for controlling a drone swarm using immersive virtual reality.

최근 고성능의 관측 장비 및 통신 장비가 드론에 탑재되고 있다. 이에, 드론은 다양한 목적의 관측 데이터를 저비용 및 고효율로 수집하기 위한 플랫폼에서 널리 사용되고 있다.Recently, high-performance observation and communication equipment has been installed on drones. Accordingly, drones are widely used as a platform for collecting observation data for various purposes at low cost and high efficiency.

드론은 넓은 영역을 관측할 수 있으므로, 다수의 드론들을 활용하는 경우, 더 넓은 영역의 관측이 가능하다. 이 경우, 넓은 영역을 복수의 영역들로 분할하고 다수의 드론들을 분할된 복수의 영역들에 각각 할당하고, 각 영역에 할당된 드론의 비행 경로를 설정하는 임무 계획 설정이 필요하다.Drones can observe a wide area, so when using multiple drones, a wider area can be observed. In this case, it is necessary to set up a mission plan that divides a large area into a plurality of areas, assigns multiple drones to each of the divided areas, and sets the flight path of the drones assigned to each area.

이러한 임무 계획을 설정하는 작업은 관제 인원이 키보드, 마우스, 화면 터치 등과 같은 전통적인 입력 인터페이스를 통해 수행되는데, 드론 개수가 늘어날수록 상기 전통적인 입력 인터페이스를 통한 임무 계획 설정 시간은 증가한다. 또한 전통적인 입력 인터페이스를 통한 임무 계획 설정은 숙련된 사용자일지라도 난이도가 높은 작업이다.The task of setting up such a mission plan is performed by control personnel through traditional input interfaces such as keyboard, mouse, and screen touch. As the number of drones increases, the time for setting up the mission plan through the traditional input interface increases. Additionally, setting up a mission plan through a traditional input interface is a difficult task even for experienced users.

상술한 문제점을 해결하기 위한 본 발명의 목적은, 드론 군집의 임무 계획을 설정하는데 소요되는 시간을 획기적으로 단축하기 위해 실감형 가상 현실(immersive virtual reality) 기술과 임무 계획 자동 설정 기술을 결합하여 드론 군집을 관제할 수 있는 가상 현실 장치, 서버 및 드론 군집 관제 방법을 제공하는데 있다.The purpose of the present invention to solve the above-described problems is to dramatically shorten the time required to set a mission plan for a drone swarm by combining immersive virtual reality technology and automatic mission plan setting technology The goal is to provide virtual reality devices, servers, and drone swarm control methods that can control swarms.

상술한 목적을 달성하기 위한 본 발명의 일면에 따른 드론 군집 관제 방법은, 가상 현실 장치의 가상 현실 헤드셋이, 사용자 조작에 따라, 가상 현실 공간에 투영된 3차원 지형과 드론 군집을 표시하는 단계, 상기 가상 현실 장치의 가상 현실 컨트롤러가, 상기 사용자 조작에 따라, 상기 3차원 지형 상에 설정된 관심 영역에 투입되는 소규모 드론 군집을 상기 드론 군집 내에서 선정하는 단계 및 서버가, 상기 관심 영역과 상기 소규모 드론 군집을 사용자 입력 정보로 이용하여, 상기 관심 영역을 복수의 셀들(cells)로 분할하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하고, 각 셀에 할당된 드론의 3차원 비행 경로를 자동으로 생성하는 단계를 포함할 수 있다.The drone swarm control method according to one aspect of the present invention for achieving the above-described object includes the steps of a virtual reality headset of a virtual reality device displaying a three-dimensional terrain and drone swarm projected in a virtual reality space according to user manipulation; A virtual reality controller of the virtual reality device selects, from within the drone swarm, a small-scale drone swarm to be inserted into a region of interest set on the three-dimensional terrain according to the user's operation, and the server selects the region of interest and the small-scale drone swarm. Using the drone swarm as user input information, the area of interest is divided into a plurality of cells and the divided cells are respectively assigned to the drones included in the small drone swarm, and 3 of the drones assigned to each cell The method may include automatically generating a dimensional flight path.

본 발명의 다른 일면에 따른 가상 현실 장치는, 사용자 조작에 따라, 가상 현실 공간에 투영된 3차원 지형과 드론 군집을 표시하는 가상 현실 헤드셋 및 상기 사용자 조작에 따라, 상기 3차원 지형 상에 관심 영역을 설정하고, 상기 설정된 관심 영역에 투입되는 소규모 드론 군집을 상기 드론 군집 내에서 선정하는 가상 현실 컨트롤러를 포함한다. 여기서, 상기 가상 현실 컨트롤러는, 상기 설정된 관심 영역과 상기 선정된 소규모 드론 군집을 사용자 입력 정보로 구성하여 상기 소규모 드론 군집의 임무 계획을 자동으로 설정하는 서버로 송신할 수 있다.A virtual reality device according to another aspect of the present invention includes a virtual reality headset that displays a 3D terrain and a drone cluster projected in a virtual reality space according to a user's manipulation, and a region of interest on the 3D terrain according to the user's manipulation. It includes a virtual reality controller that sets and selects a small drone swarm to be deployed in the set area of interest from within the drone swarm. Here, the virtual reality controller may configure the set area of interest and the selected small drone swarm with user input information and transmit it to a server that automatically sets a mission plan for the small drone swarm.

실시 예에서, 상기 가상 현실 헤드셋은, 서버로부터 가상 현실 정보를 수신하는 통신 인터페이스, 상기 가상 현실 정보를 처리하는 프로세서 및 상기 프로세서의 제어에 따라, 상기 가상 현실 정보에 포함된 가상 현실 공간, 상기 가상 현실 공간에 투영되는 상기 3차원 지형과 드론 군집을 표시하는 디스플레이 유닛을 포함할 수 있다.In an embodiment, the virtual reality headset includes a communication interface for receiving virtual reality information from a server, a processor for processing the virtual reality information, and, according to control of the processor, a virtual reality space included in the virtual reality information, and the virtual reality. It may include a display unit that displays the 3D terrain and drone cluster projected in real space.

실시 예에서, 상기 디스플레이 유닛은, 상기 가상 현실 컨트롤러에 의해 설정된 상기 관심 영역을 둘러싸는 선과 상기 관심 영역에 투입되는 상기 소규모 드론 군집에 포함된 드론들을 서로 다른 특정 형광색의 아웃라인으로 표시할 수 있다.In an embodiment, the display unit may display a line surrounding the area of interest set by the virtual reality controller and drones included in the small drone group deployed into the area of interest as outlines of different specific fluorescent colors. .

실시 예에서, 상기 가상 현실 컨트롤러는, 상기 가상 현실 컨트롤러의 움직임을 감지하는 센서, 상기 가상 현실 컨트롤러의 움직임에 따라 상기 가상 현실 공간에서 이동하는 가상 가이드 라인과 가상 포인터를 이용하여, 상기 3차원 지형 상에 관심 영역을 설정하고, 상기 설정된 관심 영역에 투입되는 소규모 드론 군집을 선정하고, 상기 설정된 관심 영역과 상기 선정된 소규모 드론 군집을 포함하는 사용자 입력 정보를 생성하는 프로세서 및 상기 사용자 입력 정보를 상기 서버로 송신하는 통신 인터페이스를 포함할 수 있다.In an embodiment, the virtual reality controller uses a sensor that detects movement of the virtual reality controller, a virtual guide line and a virtual pointer that moves in the virtual reality space according to the movement of the virtual reality controller, to create the three-dimensional terrain. A processor for setting an area of interest on the image, selecting a small drone swarm to be introduced into the set area of interest, and generating user input information including the set area of interest and the selected small drone swarm, and the user input information It may include a communication interface for transmitting to the server.

본 발명의 또 다른 일면에 따른 서버는, 가상 현실 장치로부터 가상 현실 공간에 투영된 3차원 지형 상에 설정된 관심 영역, 상기 관심 영역에 투입되는 소규모 드론 군집 및 상기 소규모 드론 군집에 포함된 드론들 각각의 임무 수행 고도를 포함하는 사용자 입력 정보를 수신하는 제1 통신 인터페이스(예, 도 4의 212), 상기 관심 영역을 복수의 셀들(cells)로 분할하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하고, 각 셀에 할당된 드론의 커버리지 경로와 상기 임무 수행 고도를 포함하는 3차원 비행 경로를 자동으로 계산하는 프로세서(도 4의 222: 222A, 222B 및 222C) 및 상기 3차원 비행 경로를 포함하는 임무 계획 정보를 상기 소규모 드론 군집에 포함된 드론들로 송신하는 제2 통신 인터페이스(예, 도 4의 238)를 포함할 수 있다.A server according to another aspect of the present invention includes an area of interest set on a three-dimensional terrain projected from a virtual reality device into a virtual reality space, a small drone group deployed in the area of interest, and each of the drones included in the small drone group. A first communication interface (e.g., 212 in FIG. 4) that receives user input information including the mission performance altitude, dividing the area of interest into a plurality of cells and including the divided cells in the small drone swarm. A processor (222 in FIG. 4: 222A, 222B and 222C) that allocates to each of the drones and automatically calculates a 3D flight path including the coverage path of the drone assigned to each cell and the mission performance altitude (222A, 222B and 222C in FIG. 4) and 3 It may include a second communication interface (eg, 238 in FIG. 4) that transmits mission planning information including a dimensional flight path to drones included in the small drone swarm.

실시 예에서, 상기 프로세서(도 4의 222)는, 상기 관심 영역을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 연산을 수행할 수 있다.In an embodiment, the processor (222 in FIG. 4) may perform an operation to divide the region of interest into a number of cells equal to the number of drones included in the small drone swarm.

실시 예에서, 상기 프로세서(도 4의 222)는, 작업 할당 알고리즘을 이용하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하는 연산을 수행할 수 있다.In an embodiment, the processor (222 in FIG. 4) may perform an operation to allocate the divided cells to drones included in the small drone swarm using a task allocation algorithm.

실시 예에서, 상기 프로세서(도 4의 222)는 경로 계획 알고리즘을 이용하여 각 셀에 할당된 드론의 3차원 비행 경로를 자동으로 계산할 수 있다.In an embodiment, the processor (222 in FIG. 4) may automatically calculate the 3D flight path of the drone assigned to each cell using a path planning algorithm.

본 발명에 따르면, 군집 임무 계획을 설정하기 위한 사용자 입력 정보를 VR 장치를 이용하여 생성함으로써, 사용자가 군집 임무 계획을 설정하는데 필요한 시간을 획기적으로 줄일 수 있다.According to the present invention, by generating user input information for setting a swarm mission plan using a VR device, the time required for a user to set up a swarm mission plan can be dramatically reduced.

기존 군집 관제에서는, 사용자가 제한된 2차원 모니터/디스플레이를 통해 현재 드론 군집의 상태 및 임무 상황을 파악하는 반면, 본 발명에서는 VR 장치를 이용하여 현재 드론 군집의 상태 및 임무 상황을 파악하기 때문에, 사용자가 드론 군집의 3차원적 분포 및 비행경로를 공간적 원근을 고려해 쉽고 빠르게 인지할 수 있다. 또한 산악지형, 도심환경 등과 같은 복잡한 지형을 VR 장치에서 표출하는 가상의 3차원 지형을 통해 빠르게 인식할 수 있다.In existing swarm control, the user grasps the current status and mission situation of the drone swarm through a limited two-dimensional monitor/display, whereas in the present invention, the current status and mission situation of the drone swarm is identified using a VR device, so the user The three-dimensional distribution and flight path of a drone colony can be recognized quickly and easily by considering spatial perspective. Additionally, complex terrain, such as mountainous terrain and urban environments, can be quickly recognized through the virtual 3D terrain displayed on the VR device.

또한, 기존 군집 관제에서는, 사용자가 각 드론별 임무 계획을 키보드, 마우스, 터치스크린 등과 같은 전통적인 입력 인터페이스를 이용하여 설정하지만, 본 발명에서는 VR 장치를 이용하여 직관적으로 입력할 수 있기 때문에, 한 명의 사용자가 드론 군집의 임무 계획을 설정할 수 있다. In addition, in existing swarm control, the user sets the mission plan for each drone using traditional input interfaces such as a keyboard, mouse, and touch screen, but in the present invention, input can be intuitively used using a VR device, so one person Users can set up mission plans for drone swarms.

또한, 본 발명에서 드론별 임무 계획을 생성하고, 이를 각 드론에게 업로드하는 일련과정들을 서버에서 자동으로 처리할 수 있다.Additionally, in the present invention, the serial process of creating a mission plan for each drone and uploading it to each drone can be automatically processed by the server.

도 1은 본 발명의 실시 예에 따른 실감형 VR 기반의 드론 군집 관제 시스템의 구성도이다.
도 2는 본 발명의 실시 예에 따른 VR 헤드셋의 디스플레이 장치를 통해 표출되는 가상 현실 정보를 설명하기 위한 도면이다.
도 3은 본 발명의 실시 예에 따른 VR 컨트롤러를 이용하여 관심 영역을 설정하는 과정과 드론 군집 내에서 상기 설정한 관심 영역에 대한 특정 임무를 부여할 소규모 드론 군집을 선정하는 과정을 설명하기 위한 도면이다.
도 4는 본 발명의 실시 예에 따른 서버의 구성도이다.
도 5는 본 발명의 실시 예에 따른 영역 분할 모듈에 의해 수행되는 영역 분할 과정을 설명하기 위한 도면이다.
도 6은 본 발명의 실시 예에 따른 경로 생성 모듈에 의해 수행되는 커버리지 경로 생성 과정을 설명하기 위한 도면이다.
도 7은 본 발명의 실시 예에 따른 경로 생성 모듈(222C)에 의해 생성된 3차원 비행 경로를 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시 예에 따른 VR 헤드셋과 VR 컨트롤러의 블록도이다.
도 9a 및 9b는 본 발명의 실시 예에 따른 군집 임무 계획을 시뮬레이션한 결과를 설명하기 위한 도면들이다.
도 10은 본 발명의 실시 예에 따른 실감형 가상 현실 기반으로 드론 군집의 관제 방법을 설명하기 위한 흐름도이다.
Figure 1 is a configuration diagram of an immersive VR-based drone swarm control system according to an embodiment of the present invention.
Figure 2 is a diagram for explaining virtual reality information displayed through a display device of a VR headset according to an embodiment of the present invention.
Figure 3 is a diagram illustrating the process of setting an area of interest using a VR controller according to an embodiment of the present invention and the process of selecting a small drone swarm to be assigned a specific task for the set area of interest within the drone swarm. am.
Figure 4 is a configuration diagram of a server according to an embodiment of the present invention.
Figure 5 is a diagram for explaining a region division process performed by a region division module according to an embodiment of the present invention.
Figure 6 is a diagram for explaining the coverage path creation process performed by the path creation module according to an embodiment of the present invention.
Figure 7 is a diagram for explaining a 3D flight path generated by the path creation module 222C according to an embodiment of the present invention.
Figure 8 is a block diagram of a VR headset and VR controller according to an embodiment of the present invention.
9A and 9B are diagrams to explain the results of simulating a swarm mission plan according to an embodiment of the present invention.
Figure 10 is a flowchart illustrating a method for controlling a drone swarm based on realistic virtual reality according to an embodiment of the present invention.

드론은 넓은 영역을 관측할 수 있으며, 다수의 드론들을 활용하는 경우, 더 넓은 영역의 관측이 가능하다. 이하, 더 넓은 영역을 관측하는데 활용되는 다수의 드론들을 드론 군집(drone swarm)이라 지칭한다.Drones can observe a wide area, and when multiple drones are used, a wider area can be observed. Hereinafter, a large number of drones used to observe a wider area are referred to as a drone swarm.

다수의 드론들(예, 10기 이상의 드론들)로 구성된 드론 군집을 신속하고 효과적으로 관제하고, 각 드론에게 적절한 비행 경로 및 임무 계획을 설정하는 것은 숙련된 관제 인원에게도 난이도가 높은 작업이다.Quickly and effectively controlling a drone swarm consisting of multiple drones (e.g., 10 or more drones) and setting appropriate flight paths and mission plans for each drone is a difficult task even for experienced control personnel.

특히 신속한 정보 수집이 필요한 재난 상황이나 전장 상황 등에서 드론 군 집을 활용하는 경우, 드론 군집이 매핑 될 임무 환경의 변화(예, 시설물 변형, 산불 전파, 하천 녹조/적조 확산 등)가 빈번하고, 드론 운용 목표(예, 현재 시점에서 관제 인원이 관심을 갖는 정찰 영역)는 수시로 바뀔 수 있다.In particular, when using drone swarms in disaster situations or battlefield situations that require rapid information collection, changes in the mission environment in which the drone swarm will be mapped (e.g., facility deformation, forest fire spread, green/red tide spread in rivers, etc.) are frequent, and drone operation Objectives (e.g., reconnaissance areas of interest to air traffic control personnel at the current time) may change at any time.

이러한 동적 임무 환경에서는, 드론 이륙 전에 각 드론에 업로드 한 사전 임무 계획을 임무 수행 중 신속하게 변경(임무 재계획)하는 기술이 필요하다. 하지만 드론 군집을 활용하는 시나리오에서는 이러한 임무 재계획(mission re-planning)을 위한 관제 인원(운용자)의 관제 부담이 급격히 증가한다. 이는 현재 드론 군집 관제를 위해 사용되는 대부분의 드론 관제 소프트웨어(예, QGroundControl, UGCS 등)는 키보드, 마우스, 화면터치 등과 같은 전통적인 입력 인터페이스를 제공하는 PC, 모바일, 태블릿 등에서 구동되므로 사용자의 실시간 반응성이 떨어지기 때문이다. In this dynamic mission environment, technology is needed to quickly change the pre-mission plan uploaded to each drone before takeoff (mission replanning) during mission performance. However, in a scenario using a drone swarm, the control burden on control personnel (operators) for mission re-planning increases rapidly. This is because most drone control software (e.g. QGroundControl, UGCS, etc.) currently used for drone swarm control runs on PCs, mobile devices, tablets, etc. that provide traditional input interfaces such as keyboard, mouse, screen touch, etc., so the user's real-time responsiveness is limited. Because it falls.

사용자는 2차원 모니터 또는 디스플레이 화면을 통해 해당 드론 관제 소프트웨어가 표시하는 드론 정보를 인식하고, 전통적인 입력 인터페이스를 통해 사용자가 의도하는 드론 임무 명령을 드론 관제 소프트웨어에 입력한다. 이 입력 과정에서 크게 다음과 같은 3가지 유형의 시간 지연이 발생할 수 있다. The user recognizes the drone information displayed by the drone control software through a two-dimensional monitor or display screen, and enters the drone mission command intended by the user into the drone control software through a traditional input interface. During this input process, the following three types of time delays may occur.

(A) 군집 상황 인식: 사용자가 2차원 모니터 또는 디스플레이 화면을 통해 드론 군집의 현재 상태 및 임무 상황을 정확히 인식하는데 걸리는 시간(A) Swarm situation awareness: The time it takes for the user to accurately recognize the current status and mission situation of the drone swarm through a two-dimensional monitor or display screen.

(B) 사용자 의사 결정: 사용자가 상황 변화에 적합한 임무 계획(드론 군집의 임무 계획)을 판단하고 설계하는데 필요한 시간(B) User decision-making: The time required for users to judge and design a mission plan (mission plan for a drone swarm) suitable for changing situations.

(C) 군집 명령 부여: 드론별 상세 임무계획을 관제 SW에 사용자가 키보드, 마우스, 화면 터치 등을 통해 입력하는 시간(C) Giving swarm command: Time for the user to input detailed mission plan for each drone into the control software using keyboard, mouse, screen touch, etc.

전통적인 드론 관제 소프트웨어는, 위의 (A), (B) 및 (C)에 따라 소요되는 시간을 단축하는데 있어 근본적인 한계가 있다. 더욱이 10기 이상의 드론 군집을 활용하는 경우, 각 단계별로 소요되는 시간은 기하급수적으로 증가한다. Traditional drone control software has fundamental limitations in shortening the time required according to (A), (B), and (C) above. Moreover, when using a swarm of 10 or more drones, the time required for each step increases exponentially.

이에, 본 발명은 드론 군집을 활용하는 시나리오에서 (A), (B) 및 (C) 각 단계별로 소요되는 시간, 즉, 드론 군집의 임무 계획을 설정하는데 소요되는 시간을 획기적으로 단축하기 위해 실감형 가상 현실(immersive virtual reality) 기술과 임무 계획 자동 설정 기술을 결합하여 드론 군집을 관제하는 시스템 및 방법을 제공한다. Accordingly, the present invention aims to dramatically shorten the time required for each step (A), (B), and (C) in a scenario utilizing a drone swarm, that is, the time required to set a mission plan for the drone swarm. Provides a system and method for controlling drone swarms by combining immersive virtual reality technology and automatic mission planning technology.

보다 구체적으로, 본 발명에서는 실감형 VR(Virtual Reality) 장치(VR device)를 통해 드론 군집을 관제하기 위한 인터페이스 기술, 드론 군집을 실감형 VR 헤드셋을 이용하여 모니터링하는 기술, VR 컨트롤러를 활용해 드론 군집에 대한 매핑 임무 정보를 직관적으로 정의하는 기술 및 드론 군집을 활용해 광범위한 영역에 대한 매핑 임무를 자동화하는 군집 임무 계획 기술 등을 제안한다.More specifically, the present invention provides an interface technology for controlling a drone swarm through a realistic VR (Virtual Reality) device, a technology for monitoring a drone swarm using a realistic VR headset, and a drone swarm using a VR controller. We propose technology that intuitively defines mapping mission information for swarms and swarm mission planning technology that automates mapping missions over a wide area using drone swarms.

이를 통해, 본 발명은 '군집 상황 인식' '사용자 의사 결정' 및 '군집 명령 부여' 전반에 걸친 소요 시간을 획기적으로 단축하고, 관제 인원의 운용 부담을 경감시킬 수 효과를 제공할 수 있다.Through this, the present invention can dramatically shorten the time required for 'swarm situation recognition', 'user decision-making', and 'swarm command giving', and can provide the effect of reducing the operational burden on control personnel.

이하, 첨부한 도면들을 참조하여, 본 발명의 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in more detail with reference to the attached drawings. In order to facilitate overall understanding when describing the present invention, the same reference numerals are used for the same components in the drawings, and duplicate descriptions for the same components are omitted.

본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used herein are only used to describe specific embodiments and are not intended to limit the invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person of ordinary skill in the technical field to which the present invention pertains. Terms defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and unless explicitly defined in the present application, should not be interpreted in an idealized or excessively formal sense. No.

도 1은 본 발명의 실시 예에 따른 실감형 VR 기반의 드론 군집 관제 시스템의 구성도이다.Figure 1 is a configuration diagram of an immersive VR-based drone swarm control system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시 예에 따른 실감형 VR 기반의 드론 군집 관제 시스템(500)은 VR(Virtual Reality) 장치(100), 서버(200) 및 드론 군집(300)을 포함하며, 이들(100, 200 및 300)의 통신 연결을 지원하는 제1 및 제2 네트워크(150 및 250)를 더 포함할 수 있다.Referring to FIG. 1, the realistic VR-based drone swarm control system 500 according to an embodiment of the present invention includes a VR (Virtual Reality) device 100, a server 200, and a drone swarm 300, It may further include first and second networks 150 and 250 that support communication connections between these 100, 200, and 300.

VR 장치(100)와 서버(200)는 제1 네트워크(150)를 통해 유선 또는 무선 통신 방식으로 명령, 데이터 또는 정보를 교환할 수 있다. 여기서, 제1 네트워크(150)는, 예를 들어, Wi-Fi 다이렉트, Bluetooth, LAN(local area network) 또는 WAN(wide area network)와 같은 컴퓨터 네트워크 또는 인터넷(internet)을 포함할 수 있다.The VR device 100 and the server 200 may exchange commands, data, or information through a wired or wireless communication method through the first network 150. Here, the first network 150 may include, for example, a computer network such as Wi-Fi Direct, Bluetooth, a local area network (LAN), or a wide area network (WAN), or the Internet.

서버(200)와 드론 군집(300)은 제2 네트워크(250)를 통해 무선 통신으로 명령, 데이터 또는 정보를 교환할 수 있다. 무선 통신은, 예를 들면, LTE, LTE-A(LTE Advance), 5G, CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 따라서, 제2 네트워크(250)는 이러한 무선 통신을 지원하기 위한 네트워크 또는 ad-hoc 및 이동형 기지국을 포함하는 독립망일 수 있다.The server 200 and the drone swarm 300 may exchange commands, data, or information through wireless communication through the second network 250. Wireless communications include, for example, LTE, LTE Advance (LTE-A), 5G, code division multiple access (CDMA), wideband CDMA (WCDMA), universal mobile telecommunications system (UMTS), Wireless Broadband (WiBro), or GSM. It may include cellular communication using at least one of (Global System for Mobile Communications), etc. Accordingly, the second network 250 may be a network supporting such wireless communication or an independent network including ad-hoc and mobile base stations.

본 문서에서는 제1 네트워크(150)와 제2 네트워크(250)를 구분하고 있으나, 구분할 필요는 없이, 하나의 네트워크로 설명될 수 있다. 이 경우, 무선 통신은, 예를 들면, LTE, LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. In this document, the first network 150 and the second network 250 are distinguished, but there is no need to distinguish them, and they can be described as one network. In this case, wireless communication is, for example, LTE, LTE Advance (LTE-A), code division multiple access (CDMA), wideband CDMA (WCDMA), universal mobile telecommunications system (UMTS), Wireless Broadband (WiBro), or It may include cellular communication using at least one of GSM (Global System for Mobile Communications), etc.

일 실시예에 따르면, 무선 통신은, 예를 들면, WiFi(wireless fidelity), 블루투스, 블루투스 저전력(BLE), 지그비 (Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(Magnetic Secure Transmission), 라디오 프리퀀시(RF), 또는 보디 에어리어 네트워크(BAN) 중 적어도 하나를 포함할 수 있다. According to one embodiment, wireless communication is, for example, WiFi (wireless fidelity), Bluetooth, Bluetooth Low Energy (BLE), Zigbee, near field communication (NFC), Magnetic Secure Transmission, radio. It may include at least one of frequency (RF) or body area network (BAN).

일 실시예에 따르면, 무선 통신은 GNSS일 수 있다. GNSS는, 예를 들면, GPS(Global Positioning System), Glonass(Global Navigation Satellite System), Beidou Navigation Satellite System(이하 “Beidou”) 또는 Galileo, the European global satellite-based navigation system일 수 있다. 본 문서에서는, “GPS”는 “GNSS”와 상호 호환적으로 사용될 수 있다.According to one embodiment, the wireless communication may be GNSS. GNSS may be, for example, Global Positioning System (GPS), Global Navigation Satellite System (Glonass), Beidou Navigation Satellite System (hereinafter “Beidou”), or Galileo, the European global satellite-based navigation system. In this document, “GPS” can be used interchangeably with “GNSS.”

본 문서에서 언급하는 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다.Wired communications referred to in this document include, for example, at least one of USB (universal serial bus), HDMI (high definition multimedia interface), RS-232 (recommended standard232), power line communications, or POTS (plain old telephone service). It can contain one.

VR 장치(100)는 실감형 사용자 경험(User Experience, UX)을 지원하기 위한 장치로서, 기본적으로 VR 헤드셋(110)과 VR 컨트롤러(또는 VR 모션 컨트롤러)(130)를 포함할 수 있다.The VR device 100 is a device to support a realistic user experience (UX), and may basically include a VR headset 110 and a VR controller (or VR motion controller) 130.

VR 헤드셋(110)은 사용자의 머리에 장착되는 웨어러블 장치의 일종으로서, 헤드 마운티드 디스플레이(Head Mounted Display: HMD) 장치(HMD device)일 수 있다. The VR headset 110 is a type of wearable device mounted on the user's head and may be a Head Mounted Display (HMD) device.

VR 헤드셋(110)은 제1 네트워크(150)를 통해 서버(200)로부터 수신된 VR 콘텐츠를 실행 또는 재생하여 2차원 또는 3차원의 가상 현실 공간을 출력한다. 본 문서에서는 VR 헤드셋(110)이 VR 콘텐츠를 실행 또는 재생하여 3차원 가상 현실 공간을 출력하는 것으로 설명하지만, 이에 한정하지 않고, AR(Augmented Reality, 증강현실) 콘텐츠, MR(Mixed Reality, 혼합 현실) 콘텐츠, ER(Extended Reality, 확장 현실) 콘텐츠 또는 SR(Substitutional Reality, 대체 현실) 콘텐츠를 실행 또는 재생하여 AR 공간, MR 공간, ER 공간 또는 SR 공간 등을 출력할 수도 있다.The VR headset 110 executes or plays VR content received from the server 200 through the first network 150 and outputs a two-dimensional or three-dimensional virtual reality space. In this document, the VR headset 110 is described as running or playing VR content to output a three-dimensional virtual reality space, but is not limited to this, and includes AR (Augmented Reality) content, MR (Mixed Reality) ) content, ER (Extended Reality) content, or SR (Substitutional Reality) content can be run or played to output AR space, MR space, ER space, or SR space.

가상 현실 공간은 VR 헤드셋(110)에 포함된 디스플레이 장치에 의해 표출되고, 사용자는 VR 헤드셋(110)을 머리에 장착한 상태에서 디스플레이 장치에 의해 표출되는 가상 현실 공간을 인식한다.The virtual reality space is displayed by a display device included in the VR headset 110, and the user recognizes the virtual reality space displayed by the display device while wearing the VR headset 110 on the head.

또한 사용자는 가상 현실 공간 및/또는 상기 가상 현실 공간에 투영된 가상 객체(예, 드론 군집)에 다양한 명령(예, 드론 군집 명령)을 입력할 수 있으며, 이러한 입력을 가능하게 하는 수단이 VR 컨트롤러(130)이다.Additionally, a user may input various commands (e.g., drone swarm command) to a virtual reality space and/or a virtual object (e.g., drone swarm) projected in the virtual reality space, and the means for enabling such input is a VR controller. It is (130).

VR 컨트롤러(130)는 가상 현실 공간에 다양한 명령을 입력하는 데 사용되는 장치로서, 사용자는 양손으로 VR 컨트롤러(130)를 잡은 상태에서 모션, 제스처, 그랩 등과 같은 팔 동작 및/또는 손 동작으로 가상 현실 공간에 다양한 명령을 입력할 수 있다.The VR controller 130 is a device used to input various commands into a virtual reality space. The user holds the VR controller 130 with both hands and uses arm movements and/or hand movements such as motions, gestures, grabs, etc. to create virtual reality. You can enter various commands in real space.

사용자의 팔 동작 및/또는 손 동작을 인식하기 위해, VR 컨트롤러(130)는 복수의 동작 인식 센서를 포함하도록 구성될 수 있다. 또한, VR 컨트롤러(130)는 조이스틱, 조이스틱 썸스틱, 트랙패드(trackpad), 버튼 등과 같은 아날로그 입력 수단을 더 포함할 수 있으며, 이러한 아날로그 입력 수단과 동작 인식 센서의 센싱 결과를 조합하여 다양한 입력 방식이 구현될 수 있다.In order to recognize the user's arm motion and/or hand motion, the VR controller 130 may be configured to include a plurality of motion recognition sensors. In addition, the VR controller 130 may further include analog input means such as a joystick, joystick thumbstick, trackpad, button, etc., and can provide various input methods by combining the sensing results of the analog input means and the motion recognition sensor. This can be implemented.

VR 컨트롤러(130)는 무선 통신(근거리 무선 통신) 방식에 따라 VR 헤드셋(110)과 페어링(pairing)될 수 있다. VR 컨트롤러(130)가 VR 헤드셋(110)과 페어링되면, VR 헤드셋(110)은 VR 컨트롤러(130)로부터 사용자의 팔 동작 및/또는 손 동작에 따른 VR 컨트롤러(130)의 움직임 정보를 수신할 수 있다.The VR controller 130 may be paired with the VR headset 110 according to a wireless communication (short-range wireless communication) method. When the VR controller 130 is paired with the VR headset 110, the VR headset 110 can receive movement information of the VR controller 130 according to the user's arm movements and/or hand movements from the VR controller 130. there is.

VR 헤드셋(110)은 VR 컨트롤러(130)의 움직임 정보에 따라 VR 컨트롤러(130)가 가리키는 포인터를 VR 헤드셋(110)에 내장된 디스플레이 장치에 의해 표시되는 가상 현실 공간에 표시할 수 있으며, 상기 포인터는 VR 컨트롤러(130)의 움직임 정보에 따라 가상 현실 공간에서 자유롭게 이동할 수 있다.The VR headset 110 can display the pointer pointed by the VR controller 130 according to the movement information of the VR controller 130 in the virtual reality space displayed by the display device built into the VR headset 110, and the pointer can move freely in the virtual reality space according to the movement information of the VR controller 130.

사용자는 상기 포인터를 이동시키는 조작을 통해 가상 현실 공간에 투영된 드론 군집(300)의 임무 계획을 설정할 수 있다. 사용자가 VR 헤드셋(110) 및/또는 VR 컨트롤러(130)를 이용하여 설정한 임무 계획은 제1 네트워크(150)를 통해 서버(200)로 송신된다. 이하, 사용자가 VR 헤드셋(110) 및/또는 VR 컨트롤러(130)를 이용하여 설정한 임무 계획을 "사용자 입력 정보"라 한다. The user can set a mission plan for the drone swarm 300 projected in the virtual reality space by moving the pointer. The mission plan set by the user using the VR headset 110 and/or VR controller 130 is transmitted to the server 200 through the first network 150. Hereinafter, the mission plan set by the user using the VR headset 110 and/or VR controller 130 is referred to as “user input information.”

이러한 사용자 입력 정보는 드론 군집(300)에 대한 임무 계획을 설정하기 위한 다양한 정보들을 포함할 수 있다. 예를 들면, 사용자 입력 정보는 "드론 정보(drone information)"와 "임무 정보(mission information)"를 포함할 수 있다.This user input information may include various information for setting a mission plan for the drone swarm 300. For example, user input information may include “drone information” and “mission information.”

드론 정보는 사용자가 VR 컨트롤러(130)를 이용하여 가상 현실 공간에서 설정한 관심 영역(또는 매핑 관심 임무 영역)에 투입되는 드론들(드론 군집에서 선정된 소규모 드론 군집(small-scale drones swarm)에 포함된 드론들의 개수 정보, 드론들의 이/착륙 고도, 드론들의 수평 이동 속도, 드론들의 상승 및 하강 속도, 드론들의 이/착륙 위치 정보 등을 포함한다. Drone information is provided to drones (small-scale drones swarm selected from the drone swarm) that are deployed in the area of interest (or mapping mission area of interest) set in the virtual reality space by the user using the VR controller 130. It includes information on the number of drones included, takeoff/landing altitude of the drones, horizontal movement speed of the drones, ascent and descent speed of the drones, and takeoff/landing location information of the drones.

임무 정보는 상기 관심 영역을 나타내는 위치 정보, 상기 관심 영역에 투입되는 드론들의 임무 수행 고도(mission altitude), 수평 이동 속도, 사진 촬영 간격 등을 포함할 수 있다. Mission information may include location information indicating the area of interest, mission altitude of drones deployed to the area of interest, horizontal movement speed, photo taking interval, etc.

이러한 드론 정보 및 임무 정보 중에서 속도, 시간 및 고도와 관련된 정보는Among these drone information and mission information, information related to speed, time and altitude is

사용자가 VR 컨트롤러(130)를 이용하여 가상 현실 공간에 투영되는 가상 메뉴창의 설정 항목을 통해 설정될 수 있다.Settings can be made through setting items in a virtual menu window projected in the virtual reality space by the user using the VR controller 130.

서버(200)는 제1 네트워크(150)를 통해 VR 장치(100)(VR 헤드셋(110) 또는 VR 컨트롤러(130))로부터 상기 임무 정보와 상기 드론 정보를 포함하는 상기 사용자 입력 정보를 수신한다. 그리고 서버(200)는 상기 수신한 사용자 입력 정보를 기반으로 드론 군집(300) 또는 드론 군집(300) 내에서 선정된 소규모 드론 군집의 임무 계획을 자동으로 설정한다. 서버(200)에 의해 수행되는 임무 계획 자동 설정 과정에 대해서는 아래에서 상세히 설명하기로 한다. The server 200 receives the user input information including the mission information and the drone information from the VR device 100 (VR headset 110 or VR controller 130) through the first network 150. And the server 200 automatically sets a mission plan for the drone swarm 300 or a small drone swarm selected within the drone swarm 300 based on the received user input information. The automatic mission plan setting process performed by the server 200 will be described in detail below.

드론 군집(300)은 다수의 드론들(드론 개체들)을 포함한다. 드론 군집(300)을 형성하는 드론의 개수는 10 내지 100 또는 그 이상일 수 있다. The drone swarm 300 includes multiple drones (drone entities). The number of drones forming the drone swarm 300 may be 10 to 100 or more.

드론 운용 지역에는 LTE망, 5G망 등과 같은 상용망 또는 이동형 기지국, ad-hoc 네트워크 등과 같은 독립망의 형태로 이루어진 가용 통신망이 구축될 수 있다.In the drone operation area, an available communication network can be established in the form of a commercial network such as an LTE network or 5G network, or an independent network such as a mobile base station or an ad-hoc network.

각 드론은 LTE 모뎀, 5G 모뎀 등과 같은 통신 모듈을 탑재하고 있으며, 상기 구축된 가용 통신망을 통해 상기 서버(200)와 통신할 수 있다. 또한 각 드론은 센싱 임무 장비(카메라 등), 임무 컴퓨터(mission computer, MC), 비행 제어 컴퓨터(flight controller computer, FC) 등을 탑재하고 있다. Each drone is equipped with a communication module such as an LTE modem, 5G modem, etc., and can communicate with the server 200 through the established available communication network. Additionally, each drone is equipped with sensing mission equipment (cameras, etc.), a mission computer (MC), and a flight controller computer (FC).

각 드론은 상기 통신 모듈을 이용하여 드론 관제를 위한 상용 프로토콜(예: Mavlink 프로토콜)을 기반으로 자신의 비행 상태 정보를 텔레메트리(TeleNetry: TM) 스트림으로 상기 서버(200)로 송신하고, 상기 서버(200)로부터 비행 제어 및 임무 계획을 정의하는 텔레커맨드(TeleCommand: TC)를 수신할 수 있다.Each drone uses the communication module to transmit its flight status information as a Telemetry (TM) stream to the server 200 based on a commercial protocol for drone control (e.g., Mavlink protocol), and A TeleCommand (TC) defining flight control and mission planning may be received from the server 200.

도 2는 본 발명의 실시 예에 따른 VR 헤드셋의 디스플레이 장치를 통해 표출되는 가상 현실 정보를 설명하기 위한 도면이다.Figure 2 is a diagram for explaining virtual reality information displayed through a display device of a VR headset according to an embodiment of the present invention.

도 2를 참조하면, 사용자(10)는 VR 헤드셋(110)을 머리에 착용한 상태에서 VR 헤드셋(110)의 디스플레이 화면을 통해 실감형 3차원 가상 현실 정보(또는 3차원 가상 현실 공간)를 시인할 수 있다.Referring to FIG. 2, the user 10 sees realistic 3D virtual reality information (or 3D virtual reality space) through the display screen of the VR headset 110 while wearing the VR headset 110 on the head. can do.

가상 현실 정보는 가상 평면(20)에 투영되는 정보로서, 가상의 3차원 지형 객체(21), 가상의 3차원 시설물 객체, 가상 드론 군집 객체(22), 드론 상태 정보(23) 등을 포함한다.Virtual reality information is information projected on the virtual plane 20 and includes a virtual 3D terrain object 21, a virtual 3D facility object, a virtual drone swarm object 22, and drone status information 23. .

도 2에서는 산악 지형을 나타내는 3차원 지형 객체(21)를 일예로 도시한 것이다.Figure 2 shows a 3D terrain object 21 representing mountainous terrain as an example.

가상 드론 군집 객체(22)는 다수의 가상 드론 객체들을 포함하며, 도 2에서는 13개의 가상 드론 객체들로 이루어진 가상 드론 군집 객체(22)를 일 예로 도시한 것이다.The virtual drone swarm object 22 includes a plurality of virtual drone objects, and FIG. 2 shows the virtual drone swarm object 22 consisting of 13 virtual drone objects as an example.

드론 상태 정보(23)는 가상 평면(20) 상에 텍스트 또는 숫자 형태로 투영될 수 있다. 드론 상태 정보는, 예를 들면, 각 드론의 위치, 경도 및 고도를 나타내는 위치 정보, 각 드론의 배터리 상태 정보, 각 드론의 통신 연결 상태 등을 포함할 수 있다. 배터리 상태 정보는 배터리 충전 상태를 나태는 정보일 수 있다. 드론 상태 정보는 가상 드론 객체의 주변에 투영될 수 있다.Drone status information 23 may be projected on the virtual plane 20 in the form of text or numbers. Drone status information may include, for example, location information indicating the location, longitude, and altitude of each drone, battery status information of each drone, and communication connection status of each drone. Battery status information may be information indicating the battery charging status. Drone status information may be projected around the virtual drone object.

가상 평면(20)의 임의의 영역에는 각 드론이 실제 촬영하여 획득한 사진 이미지 또는 비디오가 더 투영될 수 있다. Photographic images or videos obtained through actual shooting by each drone may be further projected on an arbitrary area of the virtual plane 20.

사용자는 VR 헤드셋(110)의 디스플레이 장치를 통해 다양한 관측자 시점을 갖는 3차원 가상 현실 정보를 시인할 수 있다. 관측자 시점은, 예를 들면, 가상 드론 군집 객체(22)를 위에서 바라본 시점, 가상 드론 군집 객체(22)를 아래에서 바라본 시점, 주요 임무 지점/주요 시설물을 중점적으로 바라보는 시점, 개별 가상 드론을 가까운 위치에서 바라보는 시점 등을 포함한다.The user can view 3D virtual reality information from various observer viewpoints through the display device of the VR headset 110. The observer viewpoint is, for example, a viewpoint looking at the virtual drone swarm object 22 from above, a viewpoint looking at the virtual drone swarm object 22 from below, a viewpoint focusing on the main mission point/main facility, and an individual virtual drone. This includes perspectives from a nearby location.

관측자 시점의 전환은, 예를 들면, 사용자의 머리 움직임에 따른 VR 헤드셋(110)의 움직임 및 VR 컨트롤러(130)의 물리적 입력 수단(예, 버튼, 조이스틱, 트랙패드 등) 조작을 통해 수행될 수 있다.Switching the observer's viewpoint may be performed, for example, through movement of the VR headset 110 according to the user's head movement and manipulation of physical input means (e.g., buttons, joystick, trackpad, etc.) of the VR controller 130. there is.

도 3은 본 발명의 실시 예에 따른 VR 컨트롤러를 이용하여 관심 영역을 설정하는 과정과 드론 군집 내에서 상기 설정한 관심 영역에 대한 특정 임무를 부여할 소규모 드론 군집을 선정하는 과정을 설명하기 위한 도면이다.Figure 3 is a diagram illustrating the process of setting an area of interest using a VR controller according to an embodiment of the present invention and the process of selecting a small drone swarm to be assigned a specific task for the set area of interest within the drone swarm. am.

도 3을 참조하면, 먼저, 정찰, 탐사, 관측과 같은 특정 임무를 수행하기 위한 관심 영역(35)은 VR 컨트롤러(130)에 의해 생성되는 가상 가이드 라인(30)과 가상 가이드 라인의 끝을 나타내는 포인터(32)에 의해 설정될 수 잇다.Referring to Figure 3, first, the area of interest 35 for performing a specific mission such as reconnaissance, exploration, and observation is a virtual guide line 30 generated by the VR controller 130 and an end of the virtual guide line. It can be set by the pointer 32.

가상 가이드 라인(30)은 VR 컨트롤러(130)가 향하는 방향으로 가상 현실 공간에서 표시된다. 가상 포인터(32)는 가상 가이드 라인(30)의 끝이 위치하는 가상 평면 상에 표시된다. The virtual guide line 30 is displayed in the virtual reality space in the direction in which the VR controller 130 is facing. The virtual pointer 32 is displayed on a virtual plane where the end of the virtual guide line 30 is located.

사용자는 VR 컨트롤러(130)에 의해 가상 현실 공간에서 생성되는 가상 가이드 라인(30)과 가상 포인터(32)를 이용하여 가상 평면(20) 상에 관심 영역(35)을 둘러싸는 선(34)을 그리는 제스처 및 드래그 동작 등을 통해 가상 평면(20) 상에 다각 형상의 관심 영역(35)을 설정할 수 있다. 설정된 관심 영역(35)을 둘러싸는 상기 선(34)은 특정 형광색(specific fluorescent color)의 아웃라인으로 표시될 수 있다. The user draws a line 34 surrounding the area of interest 35 on the virtual plane 20 using the virtual guide line 30 and the virtual pointer 32 generated in the virtual reality space by the VR controller 130. A polygonal area of interest 35 can be set on the virtual plane 20 through a drawing gesture or dragging operation. The line 34 surrounding the set region of interest 35 may be displayed as an outline of a specific fluorescent color.

또한, 사용자는 가상 가이드 라인(30)과 가상 포인터(32)를 이용하여 영역이 아니라 가상 평면(20) 상에 특정 임무 지점들(specific mission points)을 설정할 수도 있다. 이 경우 역시 설정된 특정 임무 지점들은 특정 형광색으로 표시될 수 있다.Additionally, the user may use the virtual guide line 30 and the virtual pointer 32 to set specific mission points on the virtual plane 20 rather than the area. In this case as well, specific set mission points may be displayed in a specific fluorescent color.

다각 형상의 관심 영역(35) 설정이 완료되면, 상기 설정한 관심 영역에 대한 특정 임무를 부여할 소규모 드론 군집(small-scale drones swarm)을 선정하는 과정이 수행되는데, 소규모 드론 군집 역시 VR 컨트롤러(130)에 의해 생성된 가상 가이드 라인(30)과 가상 포인터(32)를 이용하여 선정될 수 있다.Once the polygonal shape area of interest (35) is set, a process of selecting a small-scale drones swarm that will be assigned a specific mission for the set area of interest is performed. The small-scale drone swarm is also operated by a VR controller ( It can be selected using the virtual guide line 30 and the virtual pointer 32 created by 130).

사용자는, 가상 가이드 라인(30)과 가상 포인터(32)를 이용하여 드론 군집에 포함된 모든 드론들 중에서 임무를 부여할 드론들을 둘러싸는 선(36)을 가상 평면(20) 상에 그리는 제스처 및 드래그 동작 등을 통해 소규모 드론 군집을 선정할 수 있다. 도 3에서는 13개의 드론들 중에서 10개의 드론들로 구성된 소규모 드론 군집을 선정한 예를 도시한 것이다.The user uses the virtual guide line 30 and the virtual pointer 32 to draw a line 36 on the virtual plane 20 surrounding the drones to be assigned a mission among all the drones included in the drone swarm. Small drone swarms can be selected through dragging movements, etc. Figure 3 shows an example of selecting a small drone cluster consisting of 10 drones out of 13 drones.

상기 선정된 소규모 드론 군집은 상기 설정된 관심 영역(35)을 둘러싸는 상기 선(34)의 특정 형광색(specific fluorescent color)과는 다른 특정 형광색의 아웃라인으로 표시될 수 있다. 본 문서에서는 소규모 드론 군집을 선정하는 예를 들어 설명하지만 하나의 드론을 선정할 수도 있다. 선정된 소규모 드론 군집과 선정되지 않은 소규모 드론 군집은 서로 다른 형광색으로 구분하여 표시될 수 있다.The selected small drone group may be displayed as an outline of a specific fluorescent color different from the specific fluorescent color of the line 34 surrounding the set region of interest 35. This document uses the example of selecting a small drone swarm, but a single drone can also be selected. Selected small drone swarms and unselected small drone swarms can be distinguished and displayed with different fluorescent colors.

도 4는 본 발명의 실시 예에 따른 서버의 구성도이다.Figure 4 is a configuration diagram of a server according to an embodiment of the present invention.

도 4를 참조하면, 서버(200)는 VR 장치(100)와 드론 군집(300)을 연결하는 매개 장치일 수 있다. 서버(200)는 VR 장치(100)에 의해 표출되는 가상 현실을 구현하며, VR 장치(100)로부터 수신된 사용자 입력 정보(드론 정보와 임무 정보)를 기반으로 드론 군집, 드론 군집에 포함된 개별 드론 또는 상기 드론 군집 내에서 선정된 소규모 드론 군집의 임무 계획을 자동으로 설정할 수 있다.Referring to FIG. 4, the server 200 may be an intermediary device that connects the VR device 100 and the drone swarm 300. The server 200 implements virtual reality expressed by the VR device 100, and creates a drone swarm and individual members included in the drone swarm based on user input information (drone information and mission information) received from the VR device 100. The mission plan of a drone or a small drone group selected within the drone group can be automatically set.

서버(200)는 가상 현실(가상 현실 공간)을 구현하기 위해 실시간 그래픽 연산 및 정보 처리가 가능해야 하므로 고사양의 프로세서 및 메모리를 구비한 서버 장치들로 구성될 수 있다.The server 200 must be capable of real-time graphic calculation and information processing to implement virtual reality (virtual reality space), so it may be composed of server devices equipped with high-end processors and memory.

이를 위해, 서버(200)는 VR 서버(210), 임무 계획 자동 설정 서버(220) 및 드론 관제 서버(230)를 포함한다. 본 문서에서는 3개의 서버들을 예로 들어 설명하지만, 이를 한정하는 것은 아니다. 예를 들면, 3개의 서버들(210, 220 및 230) 중에서 어느 하나의 서버는 다른 2개의 서버들 중에서 어느 하나의 서버와 통합되거나 3개의 서버들(210, 220 및 230)은 하나의 서버로 통합될 수 있다.For this purpose, the server 200 includes a VR server 210, a mission plan automatic setting server 220, and a drone control server 230. This document uses three servers as an example, but is not limited to this. For example, one of the three servers (210, 220, and 230) is integrated with one of the other two servers, or the three servers (210, 220, and 230) are integrated into one server. can be integrated.

VR 서버(210)는 기본적으로 통신 인터페이스(212), 프로세서(214), 저장 매체(216) 및 메모리(218)를 포함할 수 있다.The VR server 210 may basically include a communication interface 212, a processor 214, a storage medium 216, and a memory 218.

통신 인터페이스(212)는 제1 네트워크(도 1의 150)를 통해 VR 장치(100)와 유선 또는 무선으로 통신할 수 있다. 통신 인터페이스(212)는 유선 또는 무선 통신을 지원하기 위한 공지의 하드웨어 부품들로 구성될 수 있다.The communication interface 212 may communicate with the VR device 100 wired or wirelessly through the first network (150 in FIG. 1). The communication interface 212 may be composed of known hardware components to support wired or wireless communication.

프로세서(214)는 주변 구성들(212, 126 및 218)의 동작을 제어 및 관리하는 하드웨어 부품으로서, 가상 현실 공간을 구현하기 위한 실시간 그래픽 연산 및 정보 처리를 수행한다. 이를 위해, 프로세서(214)는 적어도 하나의 CPU(Central Processing Unit), 적어도 하나의 GPU(Graphics Processing Unit), 적어도 하나의 MCU(Micro-Controller Unit, 마이크로-컨트롤러 유닛) 또는 이들의 조합으로 이루어질 수 있다.The processor 214 is a hardware component that controls and manages the operations of the peripheral components 212, 126, and 218, and performs real-time graphics calculations and information processing to implement a virtual reality space. To this end, the processor 214 may be comprised of at least one Central Processing Unit (CPU), at least one Graphics Processing Unit (GPU), at least one Micro-Controller Unit (MCU), or a combination thereof. there is.

저장 매체(216)는 비휘발성 저장 매체이다. 저장 매체(216)에는 Unreal Engine, Unity 등과 같은 VR(AR, MR, ER 또는 SR) 개발 엔진을 통해 구축된 VR 전용 프로그램이 저장될 수 있다. 또한 저장 매체(216)에는 드론의 비행 로그, 드론에 의해 촬영되어 획득된 비디오 및 이미지 등과 같은 드론 데이터가 더 저장될 수 있다.Storage medium 216 is a non-volatile storage medium. A VR-specific program built through a VR (AR, MR, ER, or SR) development engine such as Unreal Engine, Unity, etc. may be stored in the storage medium 216. Additionally, the storage medium 216 may further store drone data, such as drone flight logs, videos and images captured and acquired by the drone, etc.

메모리(218)는 휘발성 및/또는 비휘발성 메모리를 포함하는 하드웨어 부품으로서, VR 전용 프로그램과 관련된 명령어 및 데이터 등을 일시적으로 저장한다. 저장 매체(216)에 저장된 VR 전용 프로그램은 프로세서(214)의 제어에 따라 관련 명령어 및 데이터를 메모리(218)에 로딩됨으로써, 실행될 수 있다.The memory 218 is a hardware component including volatile and/or non-volatile memory, and temporarily stores instructions and data related to a VR-specific program. The VR-specific program stored in the storage medium 216 can be executed by loading related instructions and data into the memory 218 under the control of the processor 214.

VR 전용 프로그램은 프로세서(214)의 제어에 따라 3차원 가상 현실 정보(또는 3차원 가상 현실 공간)를 렌더링하고, 상기 렌더링된 3차원 가상 현실 정보는 통신 인터페이스(212) 및 제1 네트워크(150)를 통해 VR 장치(100)의 VR 헤드셋(110)으로 실시간으로 송신된다. The VR dedicated program renders 3D virtual reality information (or 3D virtual reality space) under the control of the processor 214, and the rendered 3D virtual reality information is connected to the communication interface 212 and the first network 150. It is transmitted in real time to the VR headset 110 of the VR device 100.

VR 헤드셋(110)은 VR 서버(210)로부터 수신된 상기 렌더링된 3차원 가상 현실 정보를 디스플레이 화면을 통해 표출함으로써, VR 헤드셋(110)을 착용한 사용자는 상기 렌더링된 3차원 가상 현실 정보에 대응하는 3차원 가상 현실 공간을 시인할 수 있게 된다.The VR headset 110 displays the rendered 3D virtual reality information received from the VR server 210 through a display screen, so that a user wearing the VR headset 110 can respond to the rendered 3D virtual reality information. It becomes possible to perceive a 3D virtual reality space.

프로세서(214)는 제1 네트워크(150) 및 통신 인터페이스(212)를 통해 VR 장치(100)로부터 수신한 사용자의 실감형 상호작용 데이터 (헤드셋 각도, 컨트롤러 위치, 각도, 버튼 입력 등)와 저장 매체(216)로부터 입력된 비행 로그, 이미지, 영상 등과 같은 드론 데이터를 기반으로 렌더링에 필요한 데이터(드론 현재 위치 등)를 3차원 가상 현실 공간에 투영한다. The processor 214 stores the user's realistic interaction data (headset angle, controller position, angle, button input, etc.) received from the VR device 100 through the first network 150 and the communication interface 212 and the storage medium. Based on the drone data such as flight logs, images, videos, etc. input from (216), the data required for rendering (drone current location, etc.) is projected into the 3D virtual reality space.

또한, 프로세서(214)는 제1 네트워크(150) 및 통신 인터페이스(212)를 통해 VR 장치(100)로부터 수신된 사용자 입력 정보(드론 정보와 임무 정보)를 임무 계획 자동 설정 서버(220)로 전달한다. 이때, 사용자 입력 정보는 VR 서버(210)를 경유하지 않고, 임무 계획 자동 설정 서버(220)로 직접 전달될 수 있으며, 이 경우, 임무 계획 자동 설정 서버(220)는 VR 장치(100)와 직접 통신하기 위한 통신 인터페이스를 포함할 수 있다.In addition, the processor 214 transmits user input information (drone information and mission information) received from the VR device 100 through the first network 150 and the communication interface 212 to the mission plan automatic setting server 220. do. At this time, the user input information may be directly transmitted to the mission plan automatic setting server 220 without going through the VR server 210. In this case, the mission plan automatic setting server 220 is directly connected to the VR device 100. It may include a communication interface for communication.

임무 계획 자동 설정 서버(220)는 VR 서버(210) 통해 전달된 사용자 입력 정보(드론 정보 및 임무 정보)를 기반으로 드론 군집 또는 드론 군집 내에서 선정된 소규모 드론 군집의 임무 계획을 자동으로 설정한다. 이를 위해, 임무 계획 자동 설정 서버(220)는 프로세서(222), 저장 매체(224) 및 메모리(226)를 포함하며, 사용자 입력 정보(드론 정보 및 임무 정보)를 VR 장치(100)로부터 직접 수신하는 경우, 도 4에서 도시하지는 않았으나, 통신 인터페이스를 더 포함할 수 있다.The mission plan automatic setting server 220 automatically sets the mission plan for the drone swarm or a small drone swarm selected within the drone swarm based on user input information (drone information and mission information) transmitted through the VR server 210. . To this end, the mission plan automatic setting server 220 includes a processor 222, a storage medium 224, and a memory 226, and directly receives user input information (drone information and mission information) from the VR device 100. In this case, although not shown in FIG. 4, a communication interface may be further included.

프로세서(222)는 주변 구성들(224 및 226)의 동작을 제어 및 관리하는 하드웨어 부품으로서, 드론 군집 또는 드론 군집 내에서 선정된 소규모 드론 군집의 임무 계획을 자동을 설정하기 위한 실시간 그래픽 연산 및 정보 처리를 수행한다. 이를 위해, 프로세서(222)는 적어도 하나의 CPU(Central Processing Unit), 적어도 하나의 GPU(Graphics Processing Unit), 적어도 하나의 MCU(Micro-Controller Unit, 마이크로-컨트롤러 유닛) 또는 이들의 조합으로 이루어질 수 있다.The processor 222 is a hardware component that controls and manages the operation of the surrounding components 224 and 226, and provides real-time graphic calculations and information to automatically set a mission plan for a drone swarm or a small drone swarm selected within a drone swarm. Perform processing. To this end, the processor 222 may be comprised of at least one Central Processing Unit (CPU), at least one Graphics Processing Unit (GPU), at least one Micro-Controller Unit (MCU), or a combination thereof. there is.

저장 매체(224)는 비휘발성 저장 매체로서, 드론 군집 또는 소규모 드론 군집의 임무 계획을 자동 설정하기 위해 프로세서(222)에 의해 실행 및 제어되는 소프트웨어 모듈이 저장된다. 여기서, 소프트웨어 모듈은 영역 분할 모듈(222A), 임무 할당 모듈(222B) 및 경로 생성 모듈(222C)을 포함한다. 또한 저장 매체(224)에는 드론 별 현재 위치 정보, 임무 수행 속도 및 고도 정보 등이 더 저장될 수 있다.The storage medium 224 is a non-volatile storage medium, and stores a software module that is executed and controlled by the processor 222 to automatically set a mission plan for a drone swarm or a small drone swarm. Here, the software module includes an area division module 222A, a mission assignment module 222B, and a path creation module 222C. Additionally, the storage medium 224 may further store current location information, mission performance speed, and altitude information for each drone.

메모리(226)는 휘발성 및/또는 비휘발성 메모리를 포함하는 하드웨어 부품으로서, 저장 매체(224)에 저장된 소프트웨어 모듈(222A, 222B 및 222C)의 실행 공간을 제공한다. 저장 매체(216)에 저장된 소프트웨어 모듈(222A, 222B 및 222C)은 프로세서(214)의 제어에 따라 메모리(218)에 로딩되어 실행된다.Memory 226 is a hardware component that includes volatile and/or non-volatile memory and provides execution space for software modules 222A, 222B, and 222C stored in storage medium 224. The software modules 222A, 222B, and 222C stored in the storage medium 216 are loaded into the memory 218 and executed under the control of the processor 214.

프로세서(214)에 의해 실행되는 영역 분할 모듈(222A)은 VR 장치(100: 110 및 130)로부터 수신된 사용자 입력 정보를 기반으로 사용자가 설정한 관심 영역(도 3의 35)을 복수의 셀(cells)로 분할한다. 이때, 사용자 입력 정보는 다각형의 관심 영역(도 3의 35)을 나타내는 정보(이하, 관심 영역 정보)와 사용자가 선정한 소규모 드론 집단에 포함된 드론들의 개수 정보를 포함한다. 상기 관심 영역 정보는 상기 관심 영역(도 3의 35)을 둘러싸는 가상 선(도 3의 34)의 좌표 정보 또는 상기 가상 선(도 3의 34)을 구성하는 포인트들의 좌표 정보(가상 픽셀 좌표들)일 수 있다.The region division module 222A executed by the processor 214 divides the region of interest (35 in FIG. 3) set by the user based on the user input information received from the VR device 100 (110 and 130) into a plurality of cells ( cells). At this time, the user input information includes information indicating a polygonal area of interest (35 in FIG. 3) (hereinafter referred to as area of interest information) and information on the number of drones included in the small drone group selected by the user. The region of interest information may be coordinate information of a virtual line (34 in FIG. 3) surrounding the region of interest (35 in FIG. 3) or coordinate information (virtual pixel coordinates) of points constituting the virtual line (34 in FIG. 3). ) can be.

영역 분할 모듈(222A)은 다각형의 관심 영역(도 3의 35)을 상기 소규모 드론 집단에 포함된 드론들의 개수와 동일한 개수의 셀들(cells)로 분할한다. 다각형의 관심 영역(도 3의 35)을 실시간으로 분할하기 위해, 무게중심 보로노이 테셀레이션(centroidal Voronoi tessellation) 기법과 같은 영역 분할 알고리즘이 이용될 수 있다. 이하, 도 5를 참조하여 상기 기법에 따른 영역 분할 과정에 대해 상세히 설명한다.The area division module 222A divides the polygonal area of interest (35 in FIG. 3) into cells equal to the number of drones included in the small drone group. To segment the polygon's region of interest (35 in FIG. 3) in real time, a region division algorithm such as centroidal Voronoi tessellation may be used. Hereinafter, the region division process according to the above technique will be described in detail with reference to FIG. 5.

도 5는 본 발명의 실시 예에 따른 영역 분할 모듈에 의해 수행되는 영역 분할 과정을 설명하기 위한 도면이다.Figure 5 is a diagram for explaining a region division process performed by a region division module according to an embodiment of the present invention.

도 5를 참조하면, S52에서, 다각형의 관심 영역(50)의 내부에 충분히 많은 랜덤 샘플링 포인트들(예: 10000개 이상)를 생성한 후, 이 포인트들을 k-means 알고리즘을 통해 상기 선정된 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 클러스터들로 군집화 하는 과정이 수행된다. Referring to FIG. 5, in S52, a sufficiently large number of random sampling points (e.g., 10,000 or more) are generated inside the polygonal region of interest 50, and then these points are selected through the k-means algorithm. A process of clustering into clusters equal to the number of drones included in the drone swarm is performed.

이어, S54에서, 각 클러스터 별 무게중심(centroid)(53)을 기준으로 다각형의 관심 영역(50)을 보로노이 분할(Voronoi Partitions) 방식으로 상기 선정된 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할한다.Next, in S54, the polygonal area of interest 50 is equal to the number of drones included in the selected small drone cluster using Voronoi Partitions based on the centroid 53 for each cluster. Divide into number of cells.

도 5에서는 상기 선정된 소규모 드론 군집에 포함된 드론들의 개수가 5개일 때, 다각형의 관심 영역(50)을 5개의 셀들로 분할한 예를 나타낸 것이다.Figure 5 shows an example of dividing the polygonal area of interest 50 into five cells when the number of drones included in the selected small drone cluster is five.

다시 도 4를 참조하면, 임무 할당 모듈(222B)은 영역 분할 모듈(222A)에 의해 분할된 각 셀을 상기 선정된 소규모 드론 군집에 포함된 각 드론에게 할당하는 연산을 수행한다. M개의 작업들(분할된 M개의 셀들)을 N개의 에이전트들(N개의 드론들)에 할당하는 수학적 문제를 풀기 위해 알려진 작업 할당(task assignment) 알고리즘이 이용될 수 있다. 작업 할당 알고리즘의 예로, 선형 합 할당(linear sum assignment) 알고리즘, 순차 탐욕 할당(sequential greedy assignment) 알고리즘, 헝가리안 알고리즘(Hungarian algorithm) 등이 있을 수 있다.Referring again to FIG. 4, the mission allocation module 222B performs an operation to allocate each cell divided by the area division module 222A to each drone included in the selected small drone swarm. A known task assignment algorithm can be used to solve the mathematical problem of assigning M tasks (M partitioned cells) to N agents (N drones). Examples of task allocation algorithms may include linear sum assignment algorithm, sequential greedy assignment algorithm, Hungarian algorithm, etc.

경로 생성 모듈(222C)은 각 드론이 할당된 셀의 전면적을 충분히 커버할 수 있는 커버리지 경로(coverage path)를 생성(계획)하는 연산을 수행한다. 커버리지 경로는 예를 들면, 셀 내부에서 지그재그로 어지는 경로일 수 있다.The path creation module 222C performs an operation to create (plan) a coverage path that can sufficiently cover the entire area of the cell to which each drone is assigned. The coverage path may be, for example, a zigzag path inside the cell.

도 6은 본 발명의 실시 예에 따른 경로 생성 모듈에 의해 수행되는 커버리지 경로 생성 과정을 설명하기 위한 도면이다.Figure 6 is a diagram for explaining the coverage path creation process performed by the path creation module according to an embodiment of the present invention.

도 6을 참조하면, 사용자가 VR 장치(100)를 이용하여 오각형의 관심 영역(60)을 설정한 것으로 가정할 때, 경로 생성 모듈(222C)은, 먼저, 오각형을 구성하는 선분들(line segments) 중에서 임의의 선분(61)을 선택하고, 상기 선택한 임의의 선분(61)의 버텍스(62)(vertex)에 가장 인접한 시작점(63)을 찾기 위한 연산을 수행한다. 여기서, 임의의 선분은 가장 긴 선분 또는 가장 짧은 선분일 수 있으며, 본 문서에서는 가장 긴 선분을 임의의 선분으로 가정한다. Referring to FIG. 6, assuming that the user has set a pentagonal region of interest 60 using the VR device 100, the path creation module 222C first creates line segments constituting the pentagon. ), a random line segment 61 is selected, and an operation is performed to find the starting point 63 closest to the vertex 62 of the selected random line segment 61. Here, the arbitrary line segment may be the longest line segment or the shortest line segment, and in this document, the longest line segment is assumed to be an arbitrary line segment.

이어, 경로 생성 모듈(222C)은 상기 가장 긴 선분(61)에 평행한 스캔 방향(scan direction)을 찾는 연산을 수행한다. Next, the path creation module 222C performs an operation to find a scan direction parallel to the longest line segment 61.

이어, 경로 생성 모듈(222C)은 상기 스캔 방향에 따라 형성되는 줄무늬들(stripes)(S1~S6)의 개수와 웨이포인트들(waypoints), 인접한 줄무늬들(S1~S6)의 사이의 거리(d)와 연속적인 웨이포인트들을 계산한다. 마지막으로 경로 생성 모듈(222C)은 시작점(63)과 마지막 줄무늬(S6)의 끝점(65)을 지정하여 커버리지 경로(coverage path)를 생성한다.Next, the path creation module 222C determines the number of stripes (S1 to S6) formed along the scan direction, waypoints, and the distance (d) between adjacent stripes (S1 to S6). ) and calculates consecutive waypoints. Finally, the path creation module 222C creates a coverage path by designating the start point 63 and the end point 65 of the last stripe S6.

커버리지 경로 생성 방법은 셀의 기하학적 복잡도에 따라 다양한 커버리지 경로 계획 알고리즘(a coverage path planning algorithm)이 사용될 수 있으며, 예를 들면, back-and-forth coverage path planning algorithm, 또는 차량 또는 로봇에서 활용되고 있는 자율 주행 알고리즘 등이 이용될 수 있다.The coverage path generation method may use a variety of coverage path planning algorithms depending on the geometric complexity of the cell, for example, a back-and-forth coverage path planning algorithm, or a coverage path planning algorithm used in vehicles or robots. Autonomous driving algorithms, etc. may be used.

또한, 경로 생성 모듈(222C)은 각 셀로 이동하는 드론 간 충돌 방지를 위해, 사용자 입력 정보에 포함된 드론별 임무 수행 고도 및/또는 드론별 이/착륙 고도를 커버리지 경로에 반영하여 드론 별 3차원 비행 경로를 최종적으로 확정할 수 있다.In addition, in order to prevent collisions between drones moving to each cell, the path creation module 222C reflects the mission performance altitude for each drone and/or the takeoff/landing altitude for each drone included in the user input information in the coverage path to create a 3D data for each drone. The flight path can be finally confirmed.

도 7은 본 발명의 실시 예에 따른 경로 생성 모듈(222C)에 의해 생성된 3차원 비행 경로를 설명하기 위한 도면이다.Figure 7 is a diagram for explaining a 3D flight path generated by the path creation module 222C according to an embodiment of the present invention.

도 7에서는 두대의 드론들(UAV1 및 VAV2)에 대한 3차원 비행 경로가 도시된다. 경로 생성 모듈(222C)에 의해 생성된 제1 드론(UAV1)의 3차원 비행 경로는 제1 이/착륙 고도(71), 제1 이/착륙 고도(71)에 따른 제1 투입 경로(72), 임무 수행 고도(73), 임무 수행 고도(73)에 따른 제1 커버리지 경로(74) 및 제1 이/착륙 고도(71)에 따른 제1 복귀 경로(75)를 포함한다.In Figure 7, the three-dimensional flight path for two drones (UAV1 and VAV2) is shown. The three-dimensional flight path of the first drone (UAV1) generated by the path creation module 222C includes a first takeoff/landing altitude 71 and a first input path 72 according to the first takeoff/landing altitude 71. , a mission altitude (73), a first coverage path (74) according to the mission altitude (73), and a first return path (75) according to the first takeoff/landing altitude (71).

제2 드론(UAV2)의 3차원 비행 경로는 상기 제1 이/착륙 고도(71)보다 높은 제2 이/착륙 고도(76), 제2 이/착륙 고도(76)에 따른 제2 투입 경로(77), 임무 수행 고도(73), 임무 수행 고도(73)에 따른 제2 커버리지 경로(78) 및 제2 이/착륙 고도(76)에 따른 제2 복귀 경로(79)를 포함한다.The three-dimensional flight path of the second drone (UAV2) includes a second takeoff/landing altitude (76) higher than the first takeoff/landing altitude (71), and a second input path according to the second takeoff/landing altitude (76) ( 77), a mission altitude 73, a second coverage path 78 according to the mission altitude 73, and a second return path 79 according to the second takeoff/landing altitude 76.

도 7에서는 두대의 드론들(UAV1 및 VAV2)의 임무 수행 고도(mission altitude)가 동일한 예를 도시한 것으로, 이에 한정하지 않고, 두대의 드론들(UAV1 및 VAV2)의 임무 수행 고도들은 서로 다를 수도 있다. Figure 7 shows an example where the mission altitude of two drones (UAV1 and VAV2) is the same, but is not limited to this, and the mission altitudes of the two drones (UAV1 and VAV2) may be different. there is.

다시 도 4를 참조하면, 드론 관제 서버(230)는 제2 네트워크(도 1의 250)를 통해 드론 군집 내의 모든 드론들에 대한 관제를 수행하고, 드론으로부터 수신한 모든 데이터 패킷(텔레메트리, 촬영이미지, 촬영영상 등)을 저장한다.Referring again to FIG. 4, the drone control server 230 performs control of all drones in the drone swarm through the second network (250 in FIG. 1), and all data packets (telemetry, Save captured images, captured videos, etc.)

드론 관제 서버(230)는 드론 관제 프로토콜(예: Mavlink 프로토콜)을 통해 드론 상태 정보를 텔레메트리(telemetry, TM) 형태로 수신한다. 드론 관제 서버(230)는 임무 계획 자동 설정 서버(220)로부터 전달된 임무 계획(예, 3차원 비행 경로)에 따른 비행 제어 정보를 드론 관제 프로토콜(Mavlink 등)에서 정의하는 텔레커맨드(telecommand, TC)로 변환하여, 각 드론에게 송신한다.The drone control server 230 receives drone status information in the form of telemetry (TM) through a drone control protocol (e.g., Mavlink protocol). The drone control server 230 uses a telecommand (TC) defined in the drone control protocol (Mavlink, etc.) to provide flight control information according to the mission plan (e.g., 3D flight path) transmitted from the mission plan automatic setting server 220. ) and transmit it to each drone.

이러한 드론 관제 서버(230)는 프로세서(232), 저장 매체(234), 메모리(236) 및 통신 인터페이스(238)을 포함한다.This drone control server 230 includes a processor 232, a storage medium 234, a memory 236, and a communication interface 238.

프로세서(232)는 주변 구성들(234, 236 및 226)의 동작을 제어 및 관리하는 하드웨어 부품으로서, 저장 매체(234)에 저장된 드론 관제 프로그램을 메모리(236)에 로딩하여 실행하며, 실행된 프로그램에 의해 생성된 중간 데이터 및 결과 데이터를 가공 및 처리한다.The processor 232 is a hardware component that controls and manages the operations of the peripheral components 234, 236, and 226. The processor 232 loads and executes the drone control program stored in the storage medium 234 into the memory 236, and executes the executed program. Process and process the intermediate data and result data generated by.

또한, 프로세서(232)는 드론으로부터 수신된 모든 데이터 패킷(텔레메트리, 비행 로그(위치, 각도, 배터리 상태 등), 촬영 이미지, 촬영 영상 등)을 가공 및 처리하여 저장 매체(234)에 저장하거나, VR 서버(210)로 전달할 수 있다. VR 서버(210)는 프로세서(232)에 의해 가공 및 처리된 정보를 사용자가 가상 현실 공간에서 인식할 수 있도록 가상 현실 정보로 구성하여 VR 장치(100)로 송신한다.In addition, the processor 232 processes and stores all data packets (telemetry, flight log (position, angle, battery status, etc.), captured images, captured videos, etc.) received from the drone in the storage medium 234. Alternatively, it can be transmitted to the VR server 210. The VR server 210 configures the information processed and processed by the processor 232 into virtual reality information so that the user can recognize it in the virtual reality space and transmits it to the VR device 100.

프로세서(232)는 적어도 하나의 CPU(Central Processing Unit), 적어도 하나의 GPU(Graphics Processing Unit), 적어도 하나의 MCU(Micro-Controller Unit, 마이크로-컨트롤러 유닛) 또는 이들의 조합으로 이루어질 수 있다. 저장 매체(234)는 비휘발성 저장 매체이고, 메모리(236)는 휘발성 및 비휘발성 메모리를 포함한다. 통신 인터페이스(238)는 드론 군집과 드론 관제 프로토콜(Mavlink 등) 기반의 무선 통신을 수행한다.The processor 232 may include at least one Central Processing Unit (CPU), at least one Graphics Processing Unit (GPU), at least one Micro-Controller Unit (MCU), or a combination thereof. Storage medium 234 is a non-volatile storage medium, and memory 236 includes volatile and non-volatile memory. The communication interface 238 performs wireless communication with the drone swarm based on a drone control protocol (Mavlink, etc.).

도 8은 본 발명의 일 실시 예에 따른 VR 헤드셋과 VR 컨트롤러의 블록도이다.Figure 8 is a block diagram of a VR headset and VR controller according to an embodiment of the present invention.

도 8을 참조하면, VR 헤드셋(110)은 프로세서(111), 메모리(112), 제1 통신 인터페이스(113), 디스플레이 유닛(114), VR 헤드셋(110)의 움직임을 감지하기 위한 적어도 하나의 센서(115) 및 제2 통신 인터페이스(116)를 포함할 수 있다.Referring to FIG. 8, the VR headset 110 includes a processor 111, a memory 112, a first communication interface 113, a display unit 114, and at least one device for detecting movement of the VR headset 110. It may include a sensor 115 and a second communication interface 116.

프로세서(111)는 메모리(112), 제1 통신 인터페이스(113), 디스플레이 유닛(114), 적어도 하나의 센서(115) 및 제2 통신 인터페이스(116)의 동작을 제어 및 관리할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. The processor 111 can control and manage the operations of the memory 112, the first communication interface 113, the display unit 114, at least one sensor 115, and the second communication interface 116, and various Data processing and calculations can be performed.

프로세서(111)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 프로세서(111)는 적어도 하나의 CPU 및/또는 적어도 하나의 GPU를 더 포함할 수 있다. 프로세서(111)는 다른 구성 요소들(예, 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로딩하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.The processor 111 may be implemented, for example, as a system on chip (SoC). The processor 111 may further include at least one CPU and/or at least one GPU. The processor 111 may load commands or data received from at least one of the other components (eg, non-volatile memory) into the volatile memory, process the commands, and store the resulting data in the non-volatile memory.

메모리(112)는 프로세서(111)가 제2 통신 인터페이스(116)를 통해 서버(200)로부터 수신한 가상 현실 정보를 처리하기 위한 명령어 및 프로그램을 저장하고 실행하기 위한 실행 공간을 제공하는 하드웨어 부품으로서, 내장 메모리 도는 외장 메모리를 포함할 수 있다. 내장 메모리는, 예를 들면, 휘발성 메모리(예: DRAM, SRAM, 또는 SDRAM 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, 플래시 메모리, 하드 드라이브, 또는 솔리드 스테이트 드라이브(SSD) 중 적어도 하나를 포함할 수 있다. 외장 메모리는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱 등을 포함할 수 있다. 외장 메모리는 다양한 인터페이스를 통하여 VR 헤드셋(110)과 물리적으로 연결될 수 있다.The memory 112 is a hardware component that provides an execution space for storing and executing instructions and programs for processing virtual reality information received by the processor 111 from the server 200 through the second communication interface 116. , may include internal memory or external memory. Built-in memory includes, for example, volatile memory (such as DRAM, SRAM, or SDRAM), non-volatile memory (such as one time programmable ROM (OTPROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, flash memory, etc. , a hard drive, or a solid state drive (SSD). The external memory may include a flash drive, for example, compact flash (CF), secure digital (SD), Micro-SD, It may include Mini-SD, xD (extreme digital), MMC (multi-media card), memory stick, etc. The external memory may be physically connected to the VR headset 110 through various interfaces.

제1 통신 인터페이스(113)는 블루투스, 와이파이 등가 같은 근거리 무선 통신으로 VR 컨트롤러(130)와 다양한 정보를 교환하도록 통신할 수 있다. 제1 통신 인터페이스(113)는 WiFi 모듈, 블루투스 모듈 등을 포함할 수 있다.The first communication interface 113 can communicate with the VR controller 130 to exchange various information through short-distance wireless communication such as Bluetooth or Wi-Fi. The first communication interface 113 may include a WiFi module, a Bluetooth module, etc.

디스플레이 유닛(114)은 프로세서(111)의 제어에 따라 제2 통신 인터페이스(116)를 통해 서버(200)로부터 수신한 가상 현실 정보에 따른 가상 현실 공간에 투영되는 3차원 지형 정보 및 그 3차원 지형 정보에 중첩되는 드론 군집(예, 가상의 드론 군집)을 표시할 수 있다. 또한 디스플레이 유닛(114)은 프로세서(111)에 의해 다양한 시점으로 전환된 3차원 지형 정보 및 드론 군집을 표시할 수 있다.The display unit 114 displays three-dimensional terrain information projected into a virtual reality space according to virtual reality information received from the server 200 through the second communication interface 116 under the control of the processor 111 and the three-dimensional terrain. Drone clusters (e.g., virtual drone clusters) overlapping with information can be displayed. Additionally, the display unit 114 can display 3D terrain information and drone clusters converted to various viewpoints by the processor 111.

센서(115)는 VR 헤드셋(110)의 움직임 및 VR 헤드셋(110)이 바라보는 시점 등을 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서(115)는, 예를 들면, 제스처 센서, 자이로 센서, 가속도 센서, 안구 추적 센서 등을 포함할 수 있다.The sensor 115 can detect the movement of the VR headset 110 and the viewpoint from which the VR headset 110 is viewed, and convert the measured or sensed information into an electrical signal. The sensor 115 may include, for example, a gesture sensor, a gyro sensor, an acceleration sensor, an eye tracking sensor, etc.

제2 통신 인터페이스(116)는 제1 네트워크(150)를 통해 서버(200)와 다양한 정보를 교환하도록 통신할 수 있다. 제2 통신 인터페이스(116)는, 예를 들면, 셀룰러 모듈, WiFi 모듈, 블루투스 모듈, GNSS 모듈, NFC 모듈 및 RF 모듈을 포함할 수 있다. 셀룰러 모듈, WiFi 모듈, 블루투스 모듈, GNSS 모듈 또는 NFC 모듈 중 적어도 일부(예: 두 개 이상)는 하나의 integrated chip(IC) 또는 IC 패키지 내에 포함될 수 있다. RF 모듈은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(229)은, 예를 들면, 트랜시버, PAM(power amp module), 주파수 필터, LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다.The second communication interface 116 may communicate with the server 200 through the first network 150 to exchange various information. The second communication interface 116 may include, for example, a cellular module, a WiFi module, a Bluetooth module, a GNSS module, an NFC module, and an RF module. At least some (e.g., two or more) of the cellular module, WiFi module, Bluetooth module, GNSS module, or NFC module may be included in one integrated chip (IC) or IC package. For example, the RF module may transmit and receive communication signals (e.g., RF signals). The RF module 229 may include, for example, a transceiver, a power amp module (PAM), a frequency filter, a low noise amplifier (LNA), or an antenna.

VR 컨트롤 장치(130)는 프로세서(131), 메모리(132), 제1 통신 인터페이스 (133), 컨트롤 장치(130)의 움직임을 감지하기 위한 센서(134) 및 제2 통신 인터페이스(135)를 포함할 수 있다. The VR control device 130 includes a processor 131, a memory 132, a first communication interface 133, a sensor 134 for detecting the movement of the control device 130, and a second communication interface 135. can do.

프로세서(131)는 메모리(132), 제1 통신 인터페이스 (133), 컨트롤 장치(130)의 움직임을 감지하기 위한 센서(134) 및 제2 통신 인터페이스(135)의 동작을 제어 및 관리하고, 데이터 처리 및 연산을 수행할 수 있다. 프로세서(131)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 프로세서(131)는 적어도 하나의 CPU 및/또는 적어도 하나의 GPU를 더 포함할 수 있다.The processor 131 controls and manages the operation of the memory 132, the first communication interface 133, the sensor 134 for detecting the movement of the control device 130, and the second communication interface 135, and data Processing and calculations can be performed. The processor 131 may be implemented, for example, as a system on chip (SoC). The processor 131 may further include at least one CPU and/or at least one GPU.

프로세서(131)는 VR 컨트롤러(130)의 움직임에 따라 가상 현실 공간 상에 투영되는 3차원 지형 내에서 설정된 관심 영역 정보, 상기 관심 영역에 투입되는 소규모 드론 군집에 대한 정보(예, 소규모 드론 군집에 포함된 드론들의 개수 정보) 및 기타 정보(소규모 드론 군집에 포함된 드론들의 임무 수행 고도) 등을 포함하도록 구성된 사용자 입력 정보를 생성하고, 이를 제2 통신 인터페이스(135)를 통해 서버(200)로 송신할 수 있다.The processor 131 provides information on the area of interest set within the three-dimensional terrain projected on the virtual reality space according to the movement of the VR controller 130, information on the small drone swarm to be input into the area of interest (e.g., information on the small drone swarm) Generates user input information configured to include information on the number of drones included) and other information (mission altitude of drones included in a small drone swarm), and sends it to the server 200 through the second communication interface 135. Can be sent.

메모리(132)는 VR 헤드셋(110)에 의해 표시되는 가상 현실 공간을 처리하기 위한 명령어 및 프로그램을 저장하고 실행하기 위한 실행 공간을 제공하는 하드웨어 부품으로서, 내장 메모리 도는 외장 메모리를 포함할 수 있다.The memory 132 is a hardware component that provides an execution space for storing and executing instructions and programs for processing the virtual reality space displayed by the VR headset 110, and may include internal memory or external memory.

제1 통신 인터페이스(133)는 VR 헤드셋(113)의 제1 통신 인터페이스(113)와 유선 또는 무선으로 통신할 수 있다. 유선 또는 무선 통신에 의해 제1 통신 인터페이스(133)와 제1 통신 인터페이스(113)는 페어링될 수 있다.The first communication interface 133 may communicate with the first communication interface 113 of the VR headset 113 by wire or wirelessly. The first communication interface 133 and the first communication interface 113 may be paired through wired or wireless communication.

센서(134)는 VR 컨트롤러(130)의 움직임 및 VR 컨트롤러(130)가 가리키는 방향을 등을 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다. 센서(134)는, 예를 들면, 제스처 센서, 자이로 센서, 가속도 센서 등을 포함할 수 있다.The sensor 134 can detect the movement of the VR controller 130 and the direction the VR controller 130 is pointing, and convert the measured or sensed information into an electrical signal. The sensor 134 may include, for example, a gesture sensor, a gyro sensor, an acceleration sensor, etc.

제2 통신 인터페이스(135)는 제1 네트워크(150)를 통해 서버(200)와 다양한 정보를 교환하도록 통신할 수 있다. 제2 통신 인터페이스(135)는, 예를 들면, 셀룰러 모듈, WiFi 모듈, 블루투스 모듈, GNSS 모듈, NFC 모듈 및 RF 모듈을 포함할 수 있다. 셀룰러 모듈, WiFi 모듈, 블루투스 모듈, GNSS 모듈 또는 NFC 모듈 중 적어도 일부(예: 두 개 이상)는 하나의 integrated chip(IC) 또는 IC 패키지 내에 포함될 수 있다. RF 모듈은, 예를 들면, 통신 신호(예: RF 신호)를 송수신할 수 있다. RF 모듈(229)은, 예를 들면, 트랜시버, PAM(power amp module), 주파수 필터, LNA(low noise amplifier), 또는 안테나 등을 포함할 수 있다.The second communication interface 135 may communicate with the server 200 through the first network 150 to exchange various information. The second communication interface 135 may include, for example, a cellular module, a WiFi module, a Bluetooth module, a GNSS module, an NFC module, and an RF module. At least some (e.g., two or more) of the cellular module, WiFi module, Bluetooth module, GNSS module, or NFC module may be included in one integrated chip (IC) or IC package. For example, the RF module may transmit and receive communication signals (e.g., RF signals). The RF module 229 may include, for example, a transceiver, a power amp module (PAM), a frequency filter, a low noise amplifier (LNA), or an antenna.

VR 헤드셋(110)은 서버(200)로부터의 가상 현실 정보를 실행 또는 재생하여 가상 현실 공간 상에 투영되는 3차원 지형과 드론 군집을 디스플레이 유닛(114)을 통하여 출력할 수 있다.The VR headset 110 can execute or reproduce virtual reality information from the server 200 and output 3D terrain and drone clusters projected on the virtual reality space through the display unit 114.

또한, VR 헤드셋(110)은 실제 촬영된 실제 지형 이미지 또는 실제 지형 비디오를 표시할 수 있다. VR 헤드셋(110)은 실제 지형 이미지 또는 실제 지형 비디오에 렌더링 된 가상 드론 군집을 함께 표시할 수 있다. VR 헤드셋(110)은 가상 현실 공간에 대한 사용자 액션을 시뮬레이션 할 수 있다.Additionally, the VR headset 110 may display a real terrain image or a real terrain video that was actually captured. The VR headset 110 can display a virtual drone swarm rendered on a real terrain image or a real terrain video. The VR headset 110 can simulate user actions in a virtual reality space.

VR 헤드셋(110)은 VR 컨트롤러(130)가 가리키는 방향을 나타내는 가상 가이드 라인과 그 가상 가이드 라인의 끝점인 가상 포인터를 가상 현실 공간 상에서 표시할 수 있다. 상기 포인터는 VR 컨트롤러(130)의 움직임에 따라 3차원 지형 상에서 이동될 수 있다.The VR headset 110 can display a virtual guide line indicating the direction pointed by the VR controller 130 and a virtual pointer that is the end point of the virtual guide line in the virtual reality space. The pointer may move on the three-dimensional terrain according to the movement of the VR controller 130.

도 9a 및 9b는 본 발명의 실시 예에 따른 군집 임무 계획을 시뮬레이션한 결과를 설명하기 위한 도면들이다.9A and 9B are diagrams to explain the results of simulating a swarm mission plan according to an embodiment of the present invention.

도 9a를 참조하면, 5개의 셀들로 분할된 관심 영역에 5개의 드론들을 5개의 셀들에 각각 할당한 경우에서 사용자는 도 9a에 도시된 바와 같은 군집 임무 계획의 시뮬레이션 결과를 확인할 수 있다.Referring to FIG. 9A, when 5 drones are assigned to each of the 5 cells in an area of interest divided into 5 cells, the user can check the simulation results of the swarm mission plan as shown in FIG. 9A.

시뮬레이션 결과(90)는 5개의 셀들에 설정된 커버리지 경로를 위에서 바라본 시점을 나타낸 것으로, 서버(200)로부터 VR 헤드셋(110)으로 송신될 수 있으며, VR 헤드셋(110)은 시뮬레이션 결과(90)를 가상 현실 공간에 투영하여 사용자에게 제공함으로써, 사용자는 자신이 의도한 군집 임무 계획이 적절한지 여부를 VR 헤드셋(110)통해 시각적으로 확인할 수 있다.The simulation result 90 shows the coverage path set in the five cells as viewed from above, and can be transmitted from the server 200 to the VR headset 110, and the VR headset 110 displays the simulation result 90 as a virtual By projecting it into real space and providing it to the user, the user can visually check whether his/her intended swarm mission plan is appropriate through the VR headset 110.

또한, 사용자는 도 9b에 도시된 바와 같이 3차원 좌표계에서 표현되는 시뮬레이션 결과(91)를 확인할 수도 있다. 시뮬레이션 결과(91)는 5개의 셀들에 설정된 커버리지 경로 및 임무 수행 고도를 3차원 좌표계로 나타낸 것으로, 사용자는 자신이 의도한 임무 수행 고도를 반영한 군집 임무 계획이 적절한지 여부를 VR 헤드셋(110)통해 시각적으로 확인할 수 있다.Additionally, the user can check the simulation result 91 expressed in a three-dimensional coordinate system as shown in FIG. 9B. The simulation result (91) shows the coverage path and mission performance altitude set for the five cells in a three-dimensional coordinate system, and the user can check whether the swarm mission plan reflecting the user's intended mission performance altitude is appropriate through the VR headset (110). You can check it visually.

도 10은 본 발명의 실시 예에 따른 실감형 가상 현실 기반으로 드론 군집의 관제 방법을 설명하기 위한 흐름도이다.Figure 10 is a flowchart illustrating a method for controlling a drone swarm based on realistic virtual reality according to an embodiment of the present invention.

도 10을 참조하면, 먼저, S1010에서, 가상 현실 장치(100)의 가상 현실 헤드셋(110)에서, 사용자 조작에 따라, 가상 현실 공간에 투영된 3차원 지형과 드론 군집을 표시하는 과정이 수행된다.Referring to FIG. 10, first, in S1010, a process of displaying the three-dimensional terrain and drone cluster projected in the virtual reality space is performed in the virtual reality headset 110 of the virtual reality device 100 according to user manipulation. .

이어, S1020에서, 가상 현실 컨트롤러(130)에서, 상기 사용자 조작에 따라, 상기 드론 군집 내에서 상기 3차원 지형 상에 설정된 관심 영역에 투입되는 소규모 드론 군집을 선정하는 과정이 수행된다.Next, in S1020, the virtual reality controller 130 performs a process of selecting a small group of drones to be inserted into the area of interest set on the three-dimensional terrain within the drone group according to the user's operation.

이어, 서버(200)에서, 상기 관심 영역과 상기 소규모 드론 군집을 사용자 입력 정보로 이용하여, 상기 관심 영역을 복수의 셀들(cells)로 분할하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하고, 각 셀에 할당된 드론의 3차원 비행 경로를 자동으로 생성하는 과정이 수행된다.Next, the server 200 uses the area of interest and the small drone cluster as user input information, divides the area of interest into a plurality of cells, and divides the divided cells into drones included in the small drone cluster. The process of assigning each cell to each cell and automatically generating the 3D flight path of the drone assigned to each cell is performed.

실시 예에서, 상기 S1010는 상기 가상 현실 컨트롤러가 가리키는 방향을 나타내는 가상 가이드 라인과 상기 가상 가이드 라인의 끝점을 나타내는 가상 포인터를 이용하여 상기 3차원 지형 상에서 상기 관심 영역을 둘러싸는 선을 그리는 상기 사용자 조작에 따라 다각형의 관심 영역을 설정하는 과정을 포함할 수 있다. 여기서, 상기 선은 특정 형광색의 아웃라인으로 표시될 수 있다.In an embodiment, S1010 is the user's manipulation of drawing a line surrounding the area of interest on the three-dimensional terrain using a virtual guide line indicating a direction pointed by the virtual reality controller and a virtual pointer indicating an end point of the virtual guide line. It may include the process of setting the area of interest of the polygon. Here, the line may be displayed as an outline of a specific fluorescent color.

실시 예에서, 상기 S1010는 상기 가상 현실 컨트롤러가 가리키는 방향을 나타내는 가상 가이드 라인과 상기 가상 가이드 라인의 끝점을 나타내는 가상 포인터를 이용하여 상기 드론 군집에 포함된 모든 드론들 중에서 상기 관심 영역에 투입될 드론들을 둘러싸는 선을 그리는 상기 사용자 조작에 따라 상기 관심 영역에 투입될 드론들을 포함하는 상기 소규모 드론 군집을 선정하는 과정을 포함할 수 있다. 여기서, 상기 소규모 드론 군집에 포함된 상기 드론들은 특정 형광색의 아웃라인으로 표시될 수 있다.In an embodiment, S1010 uses a virtual guide line indicating the direction pointed by the virtual reality controller and a virtual pointer indicating the end point of the virtual guide line to determine which drone to be deployed to the area of interest among all drones included in the drone swarm. It may include a process of selecting the small drone group including drones to be deployed in the area of interest according to the user's manipulation of drawing a line surrounding the fields. Here, the drones included in the small drone swarm may be displayed as outlines in a specific fluorescent color.

실시 예에서, 상기 S1010는 상기 관심 영역을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 과정, 작업 할당 알고리즘을 이용하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하는 과정 및 경로 계획 알고리즘을 이용하여 각 셀에 할당된 드론의 3차원 비행 경로를 자동으로 생성하는 과정을 포함할 수 있다.In an embodiment, S1010 is a process of dividing the region of interest into cells with the same number of cells as the number of drones included in the small drone swarm, and dividing the divided cells into drones included in the small drone swarm using a task allocation algorithm. It may include a process of assigning each cell to each cell and automatically generating a 3D flight path of the drone assigned to each cell using a path planning algorithm.

실시 예에서, 상기 관심 영역을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 과정은, 상기 관심 영역의 내부에 복수의 랜덤 샘플링 포인트들을 생성하는 과정, 군집화 알고리즘을 이용하여 상기 랜덤 샘플링 포인트들을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 클러스터들로 군집화 하는 과정 및 각 클러스터 별 무게중심(centroid)을 기준으로 상기 관심 영역을 보로노이 분할(Voronoi Partitions) 방식에 따라 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 과정을 포함할 수 있다.In an embodiment, the process of dividing the region of interest into a number of cells equal to the number of drones included in the small drone swarm includes generating a plurality of random sampling points inside the region of interest, using a clustering algorithm. A process of clustering the random sampling points into clusters equal to the number of drones included in the small drone swarm and dividing the area of interest based on the centroid of each cluster using the Voronoi Partitions method. Accordingly, a process of dividing into cells equal to the number of drones included in the small drone swarm may be included.

실시 예에서, 상기 작업 할당 알고리즘은, 선형 합 할당(linear sum assignment) 알고리즘, 순차 탐욕 할당(sequential greedy assignment) 알고리즘, 헝가리안 알고리즘(Hungarian algorithm) 및 이들을 조합한 알고리즘 중에서 어느 하나일 수 있다.In an embodiment, the task allocation algorithm may be any one of a linear sum assignment algorithm, a sequential greedy assignment algorithm, a Hungarian algorithm, and a combination thereof.

실시 예에서, 상기 3차원 비행 경로를 자동으로 생성하는 과정은 상기 관심 영역이 다각형으로 설정되는 경우, 상기 다각형을 구성하는 선분들 중에서 선택된 임의의 선분의 버텍스(vertex)에 가장 인접한 시작점을 설정하는 과정, 상기 임의의 선분에 평행한 스캔 방향을 설정하는 과정, 상기 스캔 방향에 따라 형성되는 줄 무늬들 개수와 인접한 줄 무늬들 사이의 거리를 설정하는 과정 및 상기 설정된 줄 무늬들 개수와 인접한 줄 무늬들 사이의 거리를 기반으로 지그재그 형상으로 생성된 커버리지 경로를 포함하는 상기 3차원 비행 경로를 생성하는 과정을 포함할 수 있다.In an embodiment, the process of automatically generating the 3D flight path includes, when the area of interest is set as a polygon, setting a starting point closest to the vertex of a random line segment selected from among the line segments constituting the polygon. A process of setting a scan direction parallel to the arbitrary line segment, a process of setting the number of stripes formed according to the scan direction and the distance between adjacent stripes, and the set number of stripes and adjacent stripes. It may include a process of generating the three-dimensional flight path including a coverage path generated in a zigzag shape based on the distance between them.

실시 예에서, 상기 3차원 비행 경로를 자동으로 생성하는 과정은 상기 사용자 입력 정보에 포함된 드론별 임무 수행 고도를 포함하는 상기 3차원 비행 경로를 자동으로 생성하는 과정을 포함할 수 있다. 여기서, 상기 드론별 임무 수행 고도는, 상기 가상 현실 컨트롤러가, 상기 사용자 조작에 따라, 가상 현실 공간에 투영되는 가상 메뉴창의 설정 항목을 통해 설정될 수 있다.In an embodiment, the process of automatically generating the 3D flight path may include automatically generating the 3D flight path including the mission performance altitude for each drone included in the user input information. Here, the mission performance altitude for each drone may be set by the virtual reality controller through setting items in a virtual menu window projected in the virtual reality space according to the user's manipulation.

이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리 범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리 범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements can be made by those skilled in the art using the basic concept of the present invention defined in the following claims. It falls within the scope of rights.

Claims (19)

가상 현실 헤드셋이, 사용자 조작에 따라, 가상 현실 공간에 투영된 3차원 지형과 드론 군집을 표시하는 단계;
가상 현실 컨트롤러가, 상기 사용자 조작에 따라, 상기 3차원 지형 상에 설정된 관심 영역에 투입되는 소규모 드론 군집을 상기 드론 군집 내에서 선정하는 단계; 및
서버가, 상기 관심 영역과 상기 소규모 드론 군집을 나타내는 사용자 입력 정보를 기반으로 상기 관심 영역을 복수의 셀들(cells)로 분할하고, 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당한 후, 각 셀에 할당된 드론의 3차원 비행 경로를 자동으로 생성하는 단계
를 포함하는 드론 군집 관제 방법.
the virtual reality headset displaying a projected three-dimensional terrain and drone swarm in the virtual reality space according to user operations;
selecting, by a virtual reality controller, a small drone swarm within the drone swarm to be inserted into a region of interest set on the three-dimensional terrain according to the user's manipulation; and
The server divides the area of interest into a plurality of cells based on user input information indicating the area of interest and the small drone swarm, and allocates the divided cells to drones included in the small drone swarm. After that, the step of automatically generating the 3D flight path of the drone assigned to each cell.
Drone swarm control method including.
제1항에서,
상기 선정하는 단계는,
상기 가상 현실 컨트롤러가 가리키는 방향을 나타내는 가상 가이드 라인과 상기 가상 가이드 라인의 끝점을 나타내는 가상 포인터를 이용하여 상기 3차원 지형 상에서 상기 관심 영역을 둘러싸는 선을 그리는 상기 사용자 조작에 따라 다각형의 관심 영역을 설정하는 단계를 포함하는 드론 군집 관제 방법.
In paragraph 1:
The selection step is,
A polygonal area of interest is created according to the user's manipulation of drawing a line surrounding the area of interest on the three-dimensional terrain using a virtual guide line indicating the direction pointed by the virtual reality controller and a virtual pointer indicating the end point of the virtual guide line. Drone swarm control method including setting steps.
제2항에서,
상기 선은 특정 형광색의 아웃라인으로 표시되는 것인 드론 군집 관제 방법.
In paragraph 2,
A drone swarm control method in which the line is displayed as an outline in a specific fluorescent color.
제1항에서,
상기 선정하는 단계는,
상기 가상 현실 컨트롤러가 가리키는 방향을 나타내는 가상 가이드 라인과 상기 가상 가이드 라인의 끝점을 나타내는 가상 포인터를 이용하여 상기 드론 군집에 포함된 모든 드론들 중에서 상기 관심 영역에 투입될 드론들을 둘러싸는 선을 그리는 상기 사용자 조작에 따라 상기 관심 영역에 투입될 드론들을 포함하는 상기 소규모 드론 군집을 선정하는 단계
를 포함하는 드론 군집 관제 방법.
In paragraph 1:
The selection step is,
Drawing a line surrounding drones to be deployed in the area of interest among all drones included in the drone swarm using a virtual guide line indicating the direction pointed by the virtual reality controller and a virtual pointer indicating the end point of the virtual guide line. Selecting the small drone group including drones to be deployed to the area of interest according to user operation
Drone swarm control method including.
제4항에서,
상기 소규모 드론 군집에 포함된 상기 드론들은 특정 형광색의 아웃라인으로 표시되는 것인 드론 군집 관제 방법.
In paragraph 4,
A drone swarm control method wherein the drones included in the small drone swarm are displayed as outlines in a specific fluorescent color.
제1항에서,
상기 생성하는 단계는,
상기 관심 영역을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 단계;
작업 할당 알고리즘을 이용하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하는 단계; 및
경로 계획 알고리즘을 이용하여 각 셀에 할당된 드론의 3차원 비행 경로를 자동으로 생성하는 단계
를 포함하는 드론 군집 관제 방법.
In paragraph 1:
The generating step is,
Dividing the area of interest into a number of cells equal to the number of drones included in the small drone swarm;
Allocating the divided cells to drones included in the small drone swarm using a task allocation algorithm; and
Step of automatically generating the 3D flight path of the drone assigned to each cell using a path planning algorithm
Drone swarm control method including.
제6항에서,
상기 관심 영역을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 단계는,
상기 관심 영역의 내부에 복수의 랜덤 샘플링 포인트들을 생성하는 단계;
군집화 알고리즘을 이용하여 상기 랜덤 샘플링 포인트들을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 클러스터들로 군집화 하는 단계; 및
각 클러스터 별 무게중심(centroid)을 기준으로 상기 관심 영역을 보로노이 분할(Voronoi Partitions) 방식에 따라 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 단계
를 포함하는 드론 군집 관제 방법.
In paragraph 6:
The step of dividing the area of interest into a number of cells equal to the number of drones included in the small drone swarm,
generating a plurality of random sampling points inside the region of interest;
Clustering the random sampling points into clusters with a number equal to the number of drones included in the small drone swarm using a clustering algorithm; and
Dividing the region of interest into cells equal to the number of drones included in the small drone cluster according to the Voronoi Partitions method based on the centroid of each cluster.
Drone swarm control method including.
제6항에서,
상기 작업 할당 알고리즘은,
선형 합 할당(linear sum assignment) 알고리즘, 순차 탐욕 할당(sequential greedy assignment) 알고리즘, 헝가리안 알고리즘(Hungarian algorithm) 및 이들을 조합한 알고리즘 중에서 어느 하나인 것인 드론 군집 관제 방법.
In paragraph 6:
The task allocation algorithm is,
A drone swarm control method that is any one of a linear sum assignment algorithm, a sequential greedy assignment algorithm, a Hungarian algorithm, and a combination of these algorithms.
제6항에서,
상기 3차원 비행 경로를 자동으로 생성하는 단계는,
상기 관심 영역이 다각형으로 설정되는 경우, 상기 다각형을 구성하는 선분들 중에서 선택된 임의의 선분의 버텍스(vertex)에 가장 인접한 시작점을 설정하는 단계;
상기 임의의 선분에 평행한 스캔 방향을 설정하는 단계;
상기 스캔 방향에 따라 형성되는 줄 무늬들 개수와 인접한 줄 무늬들 사이의 거리를 설정하는 단계 및
상기 설정된 줄 무늬들 개수와 인접한 줄 무늬들 사이의 거리를 기반으로 지그재그 형상으로 생성된 커버리지 경로를 포함하는 상기 3차원 비행 경로를 생성하는 단계
를 포함하는 드론 군집 관제 방법.
In paragraph 6:
The step of automatically generating the 3D flight path is,
When the region of interest is set as a polygon, setting a starting point closest to a vertex of an arbitrary line segment selected from among the line segments constituting the polygon;
setting a scan direction parallel to the arbitrary line segment;
Setting the number of stripes formed according to the scanning direction and the distance between adjacent stripes, and
Generating the three-dimensional flight path including a coverage path generated in a zigzag shape based on the set number of stripes and the distance between adjacent stripes.
Drone swarm control method including.
제6항에서,
상기 3차원 비행 경로를 자동으로 생성하는 단계는,
상기 사용자 입력 정보에 포함된 드론별 임무 수행 고도를 포함하는 상기 3차원 비행 경로를 자동으로 생성하는 단계를 포함하는 드론 군집 관제 방법.
In paragraph 6:
The step of automatically generating the 3D flight path is,
A drone swarm control method comprising automatically generating the 3D flight path including the mission performance altitude for each drone included in the user input information.
제10항에서,
상기 드론별 임무 수행 고도는,
상기 가상 현실 컨트롤러가, 상기 사용자 조작에 따라, 가상 현실 공간에 투영되는 가상 메뉴창의 설정 항목을 통해 설정되는 것인 드론 군집 관제 방법.
In paragraph 10:
The mission performance altitude for each drone is,
A drone swarm control method in which the virtual reality controller is set through setting items in a virtual menu window projected in a virtual reality space according to the user's manipulation.
사용자 조작에 따라, 가상 현실 공간에 투영된 3차원 지형과 드론 군집을 표시하는 가상 현실 헤드셋; 및
상기 사용자 조작에 따라, 상기 3차원 지형 상에 관심 영역을 설정하고, 상기 설정된 관심 영역에 투입되는 소규모 드론 군집을 상기 드론 군집 내에서 선정하는 가상 현실 컨트롤러를 포함하고,
상기 가상 현실 컨트롤러는,
상기 설정된 관심 영역과 상기 선정된 소규모 드론 군집을 사용자 입력 정보로 구성하여 상기 소규모 드론 군집의 임무 계획을 자동으로 설정하는 서버로 송신하는 것을 특징으로 하는 가상 현실 장치.
A virtual reality headset that displays three-dimensional terrain and drone swarms projected in virtual reality space, depending on user operations; and
A virtual reality controller that sets an area of interest on the three-dimensional terrain according to the user's operation and selects a small drone swarm to be inserted into the set area of interest from within the drone swarm,
The virtual reality controller is,
A virtual reality device that configures the set area of interest and the selected small drone swarm with user input information and transmits it to a server that automatically sets a mission plan for the small drone swarm.
제12항에서
상기 가상 현실 헤드셋은,
서버로부터 가상 현실 정보를 수신하는 통신 인터페이스;
상기 가상 현실 정보를 처리하는 프로세서; 및
상기 프로세서의 제어에 따라, 상기 가상 현실 정보에 포함된 가상 현실 공간, 상기 가상 현실 공간에 투영되는 상기 3차원 지형과 드론 군집을 표시하는 디스플레이 유닛
을 포함하는 가상 현실 장치.
In paragraph 12
The virtual reality headset is,
a communication interface for receiving virtual reality information from a server;
a processor that processes the virtual reality information; and
A display unit that displays the virtual reality space included in the virtual reality information, the three-dimensional terrain and the drone cluster projected into the virtual reality space, under the control of the processor.
A virtual reality device comprising:
제13항에서,
상기 디스플레이 유닛은,
상기 프로세서의 제어에 따라 상기 가상 현실 컨트롤러에 의해 설정된 상기 관심 영역을 둘러싸는 선과 상기 관심 영역에 투입되는 상기 소규모 드론 군집에 포함된 드론들을 서로 다른 특정 형광색의 아웃라인으로 표시하는 가상 현실 장치.
In paragraph 13:
The display unit is,
A virtual reality device that displays, under control of the processor, a line surrounding the area of interest set by the virtual reality controller and an outline of drones included in the small group of drones introduced into the area of interest as outlines of different specific fluorescent colors.
제13항에서,
상기 가상 현실 컨트롤러는,
상기 가상 현실 컨트롤러의 움직임을 감지하는 센서;
상기 가상 현실 컨트롤러의 움직임에 따라 상기 가상 현실 공간에서 이동하는 가상 가이드 라인과 가상 포인터를 이용하여, 상기 3차원 지형 상에 관심 영역을 설정하고, 상기 설정된 관심 영역에 투입되는 소규모 드론 군집을 선정하고, 상기 설정된 관심 영역과 상기 선정된 소규모 드론 군집을 포함하는 사용자 입력 정보를 생성하는 프로세서; 및
상기 사용자 입력 정보를 상기 서버로 송신하는 통신 인터페이스
를 포함하는 가상 현실 장치.
In paragraph 13:
The virtual reality controller is,
A sensor that detects movement of the virtual reality controller;
Using virtual guidelines and virtual pointers that move in the virtual reality space according to the movement of the virtual reality controller, an area of interest is set on the three-dimensional terrain, and a small group of drones to be introduced into the set area of interest are selected, , a processor that generates user input information including the set area of interest and the selected small drone group; and
Communication interface for transmitting the user input information to the server
A virtual reality device including a.
가상 현실 장치로부터 가상 현실 공간에 투영된 3차원 지형 상에 설정된 관심 영역, 상기 관심 영역에 투입되는 소규모 드론 군집 및 상기 소규모 드론 군집에 포함된 드론들 각각의 임무 수행 고도를 포함하는 사용자 입력 정보를 수신하는 제1 통신 인터페이스;
상기 관심 영역을 복수의 셀들(cells)로 분할하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하고, 각 셀에 할당된 드론의 커버리지 경로와 상기 임무 수행 고도를 포함하는 3차원 비행 경로를 자동으로 계산하는 프로세서; 및
상기 3차원 비행 경로를 포함하는 임무 계획 정보를 상기 소규모 드론 군집에 포함된 드론들로 송신하는 제2 통신 인터페이스
를 포함하는 서버.
User input information including an area of interest set on a three-dimensional terrain projected from a virtual reality device into a virtual reality space, a small drone swarm to be deployed in the area of interest, and the mission performance altitude of each drone included in the small drone swarm. a first receiving communication interface;
Dividing the area of interest into a plurality of cells and assigning the divided cells to drones included in the small drone swarm, respectively, 3 including the coverage path of the drone assigned to each cell and the mission performance altitude A processor that automatically calculates dimensional flight paths; and
A second communication interface for transmitting mission planning information including the 3D flight path to drones included in the small drone swarm.
Server containing .
제16항에서,
상기 프로세서는,
상기 관심 영역을 상기 소규모 드론 군집에 포함된 드론들의 개수와 동일한 개수의 셀들로 분할하는 연산을 수행하는 서버.
In paragraph 16:
The processor,
A server that performs an operation to divide the area of interest into a number of cells equal to the number of drones included in the small drone swarm.
제16항에서,
상기 프로세서는,
작업 할당 알고리즘을 이용하여 상기 분할된 셀들을 상기 소규모 드론 군집에 포함된 드론들에게 각각 할당하는 연산을 수행하는 서버.
In paragraph 16:
The processor,
A server that performs an operation to allocate the divided cells to drones included in the small drone swarm using a task allocation algorithm.
제16항에서,
상기 프로세서는,
경로 계획 알고리즘을 이용하여 각 셀에 할당된 드론의 3차원 비행 경로를 자동으로 계산하는 서버.
In paragraph 16:
The processor,
A server that automatically calculates the 3D flight path of the drone assigned to each cell using a path planning algorithm.
KR1020220110554A 2022-09-01 2022-09-01 Virtual reality device, server and method for controlling drone swarm using immersive virtual reality Pending KR20240031628A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220110554A KR20240031628A (en) 2022-09-01 2022-09-01 Virtual reality device, server and method for controlling drone swarm using immersive virtual reality
US18/089,219 US20240077871A1 (en) 2022-09-01 2022-12-27 Virtual reality device, server, and method of controlling drone swarm based on immersive virtual reality

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220110554A KR20240031628A (en) 2022-09-01 2022-09-01 Virtual reality device, server and method for controlling drone swarm using immersive virtual reality

Publications (1)

Publication Number Publication Date
KR20240031628A true KR20240031628A (en) 2024-03-08

Family

ID=90060690

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220110554A Pending KR20240031628A (en) 2022-09-01 2022-09-01 Virtual reality device, server and method for controlling drone swarm using immersive virtual reality

Country Status (2)

Country Link
US (1) US20240077871A1 (en)
KR (1) KR20240031628A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102751774B1 (en) * 2024-05-07 2025-01-10 국방과학연구소 Method of operating flying agent and electronic apparatus therefor

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12210361B1 (en) * 2024-05-22 2025-01-28 King Saud University Method of managing unmanned aerial vehicle patrols
CN119165875B (en) * 2024-11-13 2025-03-18 北京航空航天大学 Mixed reality device and drone cluster interaction method, device, equipment and medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140018979A1 (en) * 2012-07-13 2014-01-16 Honeywell International Inc. Autonomous airspace flight planning and virtual airspace containment system
CN109002052A (en) * 2014-07-31 2018-12-14 深圳市大疆创新科技有限公司 The virtual tours system and method realized using unmanned vehicle
SG10201406357QA (en) * 2014-10-03 2016-05-30 Infinium Robotics Pte Ltd System for performing tasks in an operating region and method of controlling autonomous agents for performing tasks in the operating region
US9792567B2 (en) * 2016-03-11 2017-10-17 Route4Me, Inc. Methods and systems for managing large asset fleets through a virtual reality interface
KR20180074325A (en) * 2016-12-23 2018-07-03 삼성전자주식회사 Electronic apparatus for controlling a plurality of drones and method for controlling thereof
US11074827B2 (en) * 2017-08-25 2021-07-27 Aurora Flight Sciences Corporation Virtual reality system for aerial vehicle
CN108919832A (en) * 2018-07-23 2018-11-30 京东方科技集团股份有限公司 Unmanned machine operation flight course planning method, unmanned plane application method and device
US20220113720A1 (en) * 2020-10-08 2022-04-14 Xtend Reality Expansion Ltd. System and method to facilitate remote and accurate maneuvering of unmanned aerial vehicle under communication latency

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102751774B1 (en) * 2024-05-07 2025-01-10 국방과학연구소 Method of operating flying agent and electronic apparatus therefor

Also Published As

Publication number Publication date
US20240077871A1 (en) 2024-03-07

Similar Documents

Publication Publication Date Title
KR20240031628A (en) Virtual reality device, server and method for controlling drone swarm using immersive virtual reality
US11321929B2 (en) System and method for spatially registering multiple augmented reality devices
CN106909215B (en) Fire fighting three-dimensional visual command system based on accurate positioning and augmented reality
US20210072745A1 (en) Systems and methods for uav flight control
US10754422B1 (en) Systems and methods for providing interaction with elements in a virtual architectural visualization
JP2023018097A (en) Augmented reality adjustment of interaction between human and robot
CN105573330B (en) Aircraft control method based on intelligent terminal
CN109671118A (en) A kind of more people's exchange methods of virtual reality, apparatus and system
CN110765620B (en) Aircraft visual simulation method, system, server and storage medium
CN106406345A (en) Indoor multi-unmanned aerial vehicle formation control system based on Qt
US20190049945A1 (en) Unmanned aerial vehicle swarm photography
KR102384543B1 (en) System and method for managing and controlling disaster situation using drone
CN109685909A (en) Display methods, device, storage medium and the electronic device of image
CN114594792A (en) Apparatus and method for controlling movable objects
WO2011109186A1 (en) Systems and methods for generating real-time three-dimensional graphics of an area of interest
WO2019168886A1 (en) System and method for spatially mapping smart objects within augmented reality scenes
KR102364614B1 (en) Method and apparatus for determining group flight route for group flying unmanned air vehicles and controlling unmanned air vehicles
KR102571086B1 (en) Method and system for supporting collaboration among multiple users using virtual space
JP2021162572A (en) Position calculation method and information processing system
CN111569414A (en) Flight display method and device of virtual aircraft, electronic equipment and storage medium
CN106707267A (en) Space positioning method and system based on wireless signals and VR (virtual reality) equipment
WO2025083335A1 (en) Visualizing area covered by drone camera
KR20210103414A (en) Method and system for providing augmented reality displays
WO2021075307A1 (en) Information processing device, information processing method, and information processing program
JP2022531788A (en) Innovative systems and methods for collecting, exploring, and visualizing sensor signals in extended reality

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20220901

PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20221205

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20220901

Comment text: Patent Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20250305

Patent event code: PE09021S01D