KR101850410B1 - Simulation apparatus and method for teaching robot based on virtual reality - Google Patents
Simulation apparatus and method for teaching robot based on virtual reality Download PDFInfo
- Publication number
- KR101850410B1 KR101850410B1 KR1020160179358A KR20160179358A KR101850410B1 KR 101850410 B1 KR101850410 B1 KR 101850410B1 KR 1020160179358 A KR1020160179358 A KR 1020160179358A KR 20160179358 A KR20160179358 A KR 20160179358A KR 101850410 B1 KR101850410 B1 KR 101850410B1
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- information
- virtual reality
- unit
- teaching
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1671—Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
Description
본 발명은 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치 및 방법에 관한 것으로서, 더욱 상세히는 로봇의 실재 작업 환경을 3차원 모델링을 통해 가상 현실에 구현하고, 로봇의 작업 교시를 위한 사용자의 가상 현실 장비를 통해 제공되는 사용자의 동작정보에 따라 가상 현실상의 로봇 모델이 상호 작용하도록 지원하며, 가상 현실에 구현된 로봇 모델에 대한 작업 교시에 따른 작업이 충돌없이 수행되는 최적의 동작 경로를 산출하여 이를 실재 로봇에 반영할 수 있도록 제공하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치 및 방법에 관한 것이다.The present invention relates to a simulation apparatus and method for teaching a virtual reality-based robot, and more particularly, to a virtual reality system that realizes a real working environment of a robot in a virtual reality through three-dimensional modeling, The
현재 로봇 기술의 발전과 더불어 다양한 작업 환경에서 로봇을 이용한 자동 공정화가 진행되고 있으며, 이를 통해 공정의 작업 효율을 향상시키는 동시에 생산성을 높이고 있다.In addition to the development of robotic technology, there is an automatic process using robots in various work environments, thereby improving work efficiency and productivity of the process.
특정 작업 환경에서 로봇이 작업을 수행하기 위한 일련의 동작 시퀀스를 생성하는 프로그래밍 방법은 크게 두 가지로 구분할 수 있는데, 소프트웨어를 통한 OLP(Off-Line Programming) 방법과 현장에서 작업자의 교시(teaching) 방법이 이에 해당된다.A programming method for generating a series of motion sequences for a robot to perform a task in a specific work environment can be divided into two types. One is an OLP (off-line programming) method using software, the other is a teaching method This is the case.
상기 OLP 방법은 작업 현장에 대한 3차원 모델링 정보와 작업물의 CAD 정보 및 로봇의 정보를 기초로 로봇의 작업 동작 경로에 대한 작업 파일을 생성하는 방식으로, 작업 환경을 구현한 가상 현실상에서 소프트웨어적으로 작업 파일을 생성하므로 사용자가 의도하는 로봇의 동작이 사용자의 동작과 상호작용하도록 지원하는 것이 불가능하여 로봇의 작업 동작 설정에 상당한 시간이 요구될 뿐만 아니라 비효율적인 동작 경로가 로봇에 설정되는 경우가 빈번하게 발생하는 문제점이 있다.The OLP method generates a work file for a robot's work path based on three-dimensional modeling information about the work site, CAD information of the work, and information of the robot. It is impossible to support the operation of the robot intended by the user to interact with the operation of the user so that a considerable time is required to set the operation of the robot and an inefficient operation path is set in the robot frequently There is a problem.
더군다나, 상기 OLP 방법은 작업 환경과 해당 작업환경에서 동작 가능한 로봇의 동작 범위를 미리 설정하므로, 작업 환경 변경시 기존의 일반적인 렌더링 방식을 통해 작업 환경을 다시 모델링하고, 변경된 작업 환경에 따른 로봇의 정보를 다시 설정해야 하므로, 이와 같은 설정에 필요한 시간과 노력이 상당하여 고도로 정형화된 작업 환경이 아닌 곳에서는 활용이 어려운 문제가 있다. In addition, since the OLP method sets the operation range of the robot that can operate in the work environment and the work environment in advance, the work environment is re-modeled through the existing general rendering method when the work environment is changed, Therefore, there is a problem that it is difficult to utilize in a place that is not a highly standardized work environment because of the time and effort required for such setting.
따라서, 기존의 OLP 방법은 기업 경쟁력 확보를 위해 제품 다변화와 지속적인 신제품의 개발이 요구되어 작업 환경이 지속적으로 변환하는 최근 상황에 대처하기 어려운 방법이다.Therefore, the existing OLP method is required to diversify products and develop new products continuously in order to secure corporate competitiveness, and it is difficult to cope with the recent situation where the work environment continuously changes.
최근 기존의 OLP 방식에 따른 문제점을 개선하여, 티치 펜던트(Teach Pendant)에 의한 교시 방법이 이용되고 있으며, 이러한 교시 방법은 현장에서 일정 자유도 이하의 로봇에 대한 작업을 생성하는 데는 매우 유용하나 양팔 로봇과 같이 자유도가 높고 양팔의 작업공간이 겹쳐서 충돌이 일어나기 쉬운 조건에서는 작업자가 동작을 생성하기가 쉽지 않다.Recently, teaching method by Teach Pendant has been used to solve the problem according to the existing OLP method, and this teaching method is very useful for creating work for a robot having a certain degree of freedom in the field, It is not easy for the operator to generate motion in a condition where the degree of freedom is high like the robot and the working space of both arms is overlapped and the collision is likely to occur.
또한, 대부분의 로봇 관절이 회전 운동을 하므로 로봇의 충돌회피와 같은 동작을 생성할 때는 티치 펜던트의 제어명령과 로봇 동작을 사상(mapping)하기가 매우 어려우므로 경험이 많은 전문가만이 이를 수행할 수 있다.In addition, since most of the robot joints are rotating, it is very difficult to map the control commands and robot motion of the teach pendant when creating an action such as collision avoidance of the robot. have.
더군다나, 티치 펜던트를 로봇의 동작에 매핑시키는 과정에서 처리 시간이 상당하여 사용자가 로봇의 동작을 설정하는데 상당한 시간이 소요되므로, 사용자의 동작에 반응하는 로봇의 실시간성 및 반응성이 현저하게 떨어지며 이로 인해 로봇 교시에 대한 효율이 지나치게 저하되는 문제점이 발생한다.In addition, since the processing time is significant in the process of mapping the teach pendant to the operation of the robot, it takes a considerable time for the user to set the operation of the robot, so that the real-time performance and responsiveness of the robot in response to the user's operation is significantly lowered The efficiency of the robot teaching is deteriorated excessively.
또한, 이러한 티치 펜던트에 의한 교시 방법 역시 복잡하고 수시로 변화가 발생할 수 있는 동적 작업환경에서 작업 환경 변화시마다 전문가가 방문하여 로봇의 동작을 설정해야 하므로 로봇 동작의 설정에 상당한 시간이 소요될 뿐만 아니라 상술한 바와 같이 티치 펜던트의 제어 명령과 로봇 동작 사이의 매핑 오차에 따라 작업 환경에서 발생하는 로봇과 장애물 사이의 충돌이나 로봇의 자체적인 충돌을 용이하게 검출해내기 어려운 구성이므로, 로봇의 작업 환경에서 충돌을 회피하여 로봇의 효율적인 동작을 설정하는데 상당한 어려움을 겪고 있다.In addition, the teach-in method using the teach pendant is also complicated and requires a considerable amount of time to set up the robot operation because a specialist visits each time the work environment changes in a dynamic work environment in which a change may occur, As a result of the mapping error between the control command of the teach pendant and the robot operation, it is difficult to easily detect the collision between the robot and the obstacle occurring in the work environment or the robot's own collision, So that it is difficult to set up an efficient operation of the robot.
최근, 상술한 방법 이외에도, 작업자가 직접 로봇을 움직여 직관적으로 동작을 생성하는 직접교시 방법이 등장하고 있으며, 기존의 티치 펜던트를 이용한 방법의 문제점을 극복하여 비전문가도 쉽고 빠르게 로봇의 작업을 생성할 수 있는 장점이 있다.In recent years, in addition to the above-mentioned methods, a direct teaching method for generating an operation intuitively by moving an operator directly has appeared, and a non-expert can easily and quickly create a robot operation by overcoming the problems of the conventional method using the teach pendant There is an advantage.
그러나, 이와 같이 직접교시를 수행하기 위해서는 로봇이 인간의 외력에 반영하여 순응적으로 움직이는 기능이 반드시 요구되는데 기존 산업용 로봇은 대부분 이를 만족하지 않으므로 외부에 별도의 센서를 장착해야 하는 불편함이 있다.However, in order to perform the direct teaching in this way, the function of the robot to adaptively move by reflecting on the external force of the human being is necessarily required. However, since the conventional industrial robot does not satisfy most of them, there is an inconvenience to install a separate sensor on the outside.
또한, 직접 교시를 위해서 작업자는 반드시 로봇이 위치하는 실제 작업 현장에서 로봇 작업을 생성해야 하는데 로봇의 작업 현장이 인간의 접근이 힘든 경우에는 이 방법을 적용할 수 없게 되며 교시 과정에서도 로봇이 오동작을 일으키는 경우 작업자에게 매우 위험할 수 있다.In addition, for direct teaching, the worker must create a robot task at the actual work site where the robot is located. However, if the robot work site is not accessible to the human, this method can not be applied. It can be very dangerous to the operator if it raises.
상술한 문제점을 해결하기 위하여, 본 발명은 로봇의 실재 작업 환경을 3차원 모델링을 통해 가상 현실에 구현하고, 사용자가 로봇의 작업 교시를 위해 착용한 가상 현실 장비를 통해 제공되는 사용자의 동작정보에 따라 사용자의 동작에 상호 작용하도록 가상 현실에 구현된 가상 로봇 모델의 상기 작업 교시에 따른 작업이 충돌없이 수행되는 최적의 동작 경로를 산출하여 로봇에 설정할 수 있도록 제공함으로써, 사용자의 동작과 로봇 모델의 동작이 상호 작용하도록 지원하여 로봇의 동작 설정에 대한 편의성을 지원하고 가상 현실을 통해 로봇의 동작을 직관적으로 확인하는 동시에 전문가의 도움 없이 작업 설정을 위한 사용자의 교시에 대응되어 로봇의 최적화된 동작 경로를 자동 생성하여 설정할 수 있도록 지원하는데 그 목적이 있다.In order to solve the above-described problems, the present invention provides a method for realizing a real working environment of a robot in a virtual reality through three-dimensional modeling, Accordingly, it is possible to calculate the optimal operation path of the virtual robot model implemented in the virtual reality, which is performed without collision, and to set it in the robot so as to interact with the user's operation, It supports the convenience of the robot's operation setting by supporting the interaction of the robot, and intuitively confirms the robot's operation through the virtual reality. Also, it supports the robot's optimized operation path To be automatically generated and set up.
또한, 본 발명은 실재 작업 환경을 충돌 여부를 감지할 수 있는 수준으로 모델링하여 작업 환경의 모델링에 요구되는 연산시간과 부하를 획기적으로 감소시키는 동시에 로봇의 자세에 대한 배위 공간상에서 상기 작업 환경에 대한 모델을 기반으로 로봇과 작업 환경에 구성된 장애물 사이의 충돌이나 로봇의 자세 변경에 따라 로봇의 자체적인 충돌이 발생하는 자세를 용이하게 검출하여 상기 배위 공간상에 반영함으로써, 로봇이 사용자의 교시에 대응되어 충돌없이 안정적이며 정확한 로봇의 최적 동작 경로를 생성할 수 있도록 지원하는데 그 목적이 있다.In addition, the present invention models the actual work environment at a level that can detect collision, thereby dramatically reducing the computation time and load required for modeling the work environment, and at the same time, The posture in which the robot itself collides with the robot can be easily detected in accordance with the collision between the robot and the obstacle configured in the working environment or the posture of the robot on the basis of the model and reflected on the coordinate space so that the robot can respond to the user's teaching The purpose of this study is to support the robot to create an optimal motion path of the robots without collision.
더하여, 본 발명은 가상 현실에서 사용자의 교시에 대응되는 로봇의 작업 동작에 대한 제어정보를 생성하고 이를 편리하게 로봇에 설정할 수 있도록 지원하여 위험한 작업 현장에 위치하는 로봇에 대해서도 안정적으로 사용자의 교시에 대응되는 로봇의 작업 동작 설정이 이루어지도록 지원하는데 그 목적이 있다.In addition, the present invention generates control information for the robot's operation corresponding to the user's instruction in the virtual reality, and supports the robot to set it conveniently so that the robots located in dangerous work places can be reliably guided to the user's teaching And it is an object of the present invention to support the operation setting of the corresponding robot.
본 발명의 실시예에 따른 로봇의 교시를 위한 사용자의 가상현실 인터페이스 장치와 연동하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치는, 3차원 센서를 통해 작업 환경을 스캔하여 생성된 점군 정보를 수신하고, 상기 점군 정보에 따른 깊이 정보를 기반으로 얻어진 깊이 이미지의 좌표를 기준으로 클러스터링하여 평면 클러스터를 다각형이나 육면체로 모델링하여 용량이 축소된 작업 환경에 대한 환경 모델 정보를 생성하는 작업 환경 모델링부와, 상기 로봇의 개별 자세가 좌표로 설정된 미리 설정된 배위 공간을 포아송 디스크(Poisson disk) 샘플링 방식으로 임의 샘플로 채워 상기 로봇의 동작 경로 산출을 위한 트리 구조를 형성하는 로봇 동작 모델링부 및 상기 환경 모델 정보 및 상기 로봇에 대한 미리 설정된 로봇 모델 정보를 기초로 가상 현실 인터페이스에 대한 영상을 생성하여 상기 가상현실 인터페이스 장치를 통해 제공하며, 상기 가상현실 인터페이스 장치로부터 로봇 교시를 위한 사용자의 현재 자세와 목표 자세를 포함하는 교시정보를 수신하고, 상기 로봇 동작 모델링부 및 상기 작업 환경 모델링부와 연동하여 상기 환경 모델 정보 및 로봇 모델 정보를 기초로 충돌이 발생하는 로봇의 자세가 제외된 상기 트리 구조를 형성하며, 상기 트리 구조를 기초로 상기 로봇을 상기 현재 자세로부터 목표자세로 이동시키기 위한 최적 경로를 산출한 후 상기 최적 경로를 상기 로봇 모델 정보에 반영하여 생성한 영상을 제공하는 제어부를 포함할 수 있다.A simulation apparatus for teaching a virtual reality-based robot in cooperation with a user's virtual reality interface apparatus for teaching a robot according to an embodiment of the present invention includes a point-of- A work environment modeling unit for modeling plane clusters based on coordinates of depth images obtained on the basis of the depth information according to the point group information to generate plane model clusters based on polygons or hexahedrons to generate environment model information for a reduced work environment; A robot operation modeling unit that forms a tree structure for calculating the operation path of the robot by filling a predetermined coordinate space in which individual attitudes of the robot are set as coordinates with arbitrary samples by a Poisson disk sampling method, Based on the preset robot model information for the robot, A virtual reality interface device for generating an image of a real interface and receiving teaching information including a current position and a target posture of a user for robot teaching from the virtual reality interface device, Wherein the control unit forms the tree structure in which the posture of the robot in which the collision occurs is excluded based on the environment model information and the robot model information in cooperation with the work environment modeling unit, And a control unit for calculating an optimal path for moving the robot to the robot posture and providing the generated image by reflecting the optimal path to the robot model information.
본 발명과 관련된 일 예로서, 상기 작업 환경 모델링부는 상기 클러스터별로 평면 여부를 확인하며, 평면이 아닌 클러스터를 평면이 확인될 때까지 세분화하는 것을 특징으로 할 수 있다.As an example related to the present invention, the work environment modeling unit may check the planarity of each cluster, and may classify the non-planar cluster until the plane is confirmed.
본 발명과 관련된 일 예로서, 상기 작업 환경 모델링부는 로봇의 작업 환경을 스캔하여 생성된 상기 점군 정보를 수신하는 입력부와, 상기 점군 정보에 따른 깊이 정보를 기반으로 얻어지는 깊이 이미지의 좌표를 기준으로 클러스터링하는 클러스터링부와, 각 클러스터의 영상 좌표 영역에 속하는 점군의 데이터 행렬을 구성하고 해당 데이터 행렬의 랭크를 통해 평면 분포 여부를 확인하여 클러스터의 평면 여부를 판단하고 평면이 아닌 경우 클러스터를 세분화하여 재확인하는 평면 판단부 및 평면으로 판단된 클러스터를 평면 다각형이나 육면체로 모델링하여 데이터량을 줄이는 모델링부를 포함할 수 있다.According to an embodiment of the present invention, the work environment modeling unit may include an input unit for receiving the point cloud information generated by scanning the work environment of the robot, and an input unit for clustering based on the coordinates of the depth image obtained based on the depth information according to the point cloud information And a data matrix of a point group belonging to an image coordinate region of each cluster is constructed and it is determined whether or not the plane is a plane through the rank of the corresponding data matrix to judge whether the cluster is flat or not, And a modeling unit for modeling the planar determination unit and the clusters determined by the plane as planar polygons or hexahedrons to reduce the amount of data.
본 발명과 관련된 일 예로서, 상기 제어부는 상기 최적 경로 생성시 상기 로봇의 개별 자세가 매핑되며 상기 로봇을 모델링한 미리 설정된 로봇 모델 정보를 기초로 상기 교시 정보에 따른 사용자의 동작과 상호 작용하도록 상기 최적 경로에 따른 상기 로봇 모델 정보에 따른 로봇 모델의 동작을 영상으로 생성하여 상기 가상현실 인터페이스 장치로 전송하는 것을 특징으로 할 수 있다.In one embodiment of the present invention, the control unit maps the individual posture of the robot at the time of generating the optimal path, and controls the robot to interact with the operation of the user according to the teaching information based on preset robot model information modeled by the robot And an operation of the robot model according to the robot model information according to the optimal path is generated as an image and transmitted to the virtual reality interface device.
본 발명과 관련된 일 예로서, 상기 제어부는 상기 환경 모델 정보 및 로봇 모델 정보를 기초로 로봇의 개별 자세에 대하여 로봇과 상기 작업 환경 사이의 충돌이나 로봇의 자체적인 충돌 여부를 검출하고, 충돌이 검출되는 충돌 자세를 취합하여 상기 배위 공간에 상기 충돌 자세에 대응되는 제한 영역 또는 제한 공간을 설정하며, 상기 로봇 동작 모델링부는 상기 배위 공간에서 상기 제한 영역 또는 제한 공간을 제외한 나머지를 대상으로 상기 임의 샘플로 채우는 것을 특징으로 할 수 있다.As an example related to the present invention, the control unit detects a collision between the robot and the working environment or whether the robot itself collides with the individual pose of the robot based on the environment model information and the robot model information, Wherein the robot movement modeling unit sets the limited space or the limited space corresponding to the collision posture in the coordination space by collecting the collision postures to the arbitrary sample And the like.
본 발명과 관련된 일 예로서, 상기 제어부는 상기 최적 경로 연산시 미리 설정된 확률적 로드맵 방법(PRM, probabilistic roadmap method)을 기초로 상기 최적 경로를 연산하는 것을 특징으로 할 수 있다.In one embodiment of the present invention, the controller calculates the optimal path based on a predetermined probabilistic roadmap method (PRM) in the optimal path calculation.
본 발명과 관련된 일 예로서, 상기 로봇 동작 모델링부는 상기 배위 공간에서 임의로 선택되는 상기 임의 샘플을 상기 포아송 디스크(Poisson disk) 샘플링 방식으로 선택하며, 샘플링 과정을 반복하여 상기 배위 공간 전체에 대한 샘플을 선택하는 샘플링부 및 상기 선택된 샘플을 기준으로 트리 구조를 형성하는 트리 생성부를 포함할 수 있다.In one embodiment of the present invention, the robot operation modeling unit selects the arbitrary sample arbitrarily selected in the coordinate space by the Poisson disk sampling method, and repeats the sampling process to sample the entire coordinate space And a tree generating unit for forming a tree structure based on the selected sample.
본 발명과 관련된 일 예로서, 상기 제어부는 사용자의 교시에 대응되는 상기 최적 경로를 기초로 로봇의 동작을 제어하기 위한 제어 정보를 생성하는 것을 특징으로 할 수 있다.According to an embodiment of the present invention, the control unit may generate control information for controlling the operation of the robot on the basis of the optimum path corresponding to the user's teaching.
본 발명과 관련된 일 예로서, 상기 로봇과의 연결을 위한 통신부를 더 포함하며, 상기 제어부는 상기 제어 정보를 상기 통신부를 통해 상기 로봇에 전송하여 상기 제어 정보에 대응되는 상기 최적 경로에 따른 작업 동작이 상기 로봇에 설정되도록 하는 것을 특징으로 할 수 있다.The control unit may transmit the control information to the robot through the communication unit to perform a task operation corresponding to the optimum path corresponding to the control information, Is set in the robot.
본 발명의 실시예에 따른 로봇의 교시를 위한 사용자의 가상현실 인터페이스 장치와 연동하는 시뮬레이션 장치의 가상 현실 기반 로봇 교시를 위한 시뮬레이션 방법은, 3차원 센서를 통해 작업 환경을 스캔하여 생성된 점군 정보를 수신하고, 상기 점군 정보에 따른 깊이 정보를 기반으로 얻어진 깊이 이미지의 좌표를 기준으로 클러스터링하여 평면 클러스터를 다각형이나 육면체로 모델링하여 용량이 축소된 작업 환경에 대한 환경 모델 정보를 생성하는 단계와, 상기 로봇의 개별 자세가 좌표로 설정된 미리 설정된 배위 공간에서 상기 환경 모델 정보 및 로봇 모델 정보를 기초로 충돌이 발생하는 로봇의 자세가 제외한 나머지를 대상으로 포아송 디스크(Poisson disk) 샘플링 방식으로 임의 샘플로 채워 상기 로봇의 동작 경로 산출을 위한 트리 구조를 형성하는 단계와, 상기 환경 모델 정보 및 상기 로봇에 대한 미리 설정된 로봇 모델 정보를 기초로 가상 현실 인터페이스에 대한 영상을 생성하여 상기 가상현실 인터페이스 장치를 통해 제공하며, 상기 가상현실 인터페이스 장치로부터 로봇 교시를 위한 사용자의 현재 자세와 목표 자세를 포함하는 교시정보를 수신하는 단계 및 상기 교시정보 및 상기 트리 구조를 기초로 상기 로봇을 상기 현재 자세로부터 목표자세로 이동시키기 위한 최적 경로를 생성하고, 상기 최적 경로를 상기 로봇 모델 정보에 반영하여 생성한 영상을 제공하는 단계를 포함할 수 있다.The virtual reality-based robot teaching method of the simulation apparatus interlocked with the user's virtual reality interface apparatus for teaching the robot according to the embodiment of the present invention is characterized in that the point cloud information generated by scanning the work environment through the three- Generating environment model information for a reduced working environment by modeling plane clusters in a polygonal or hexahedron by clustering based on coordinates of depth images obtained based on the depth information according to the point group information, In the preset coordinate space in which the individual postures of the robots are set to coordinates, the rest of the robot except for the posture of the robot where the collision occurs is filled with a random sample by a Poisson disk sampling method on the basis of the environment model information and the robot model information A tree structure for calculating the operation path of the robot Generating an image for a virtual reality interface based on the environment model information and preset robot model information for the robot, providing the virtual reality interface through the virtual reality interface device, Generating an optimal path for moving the robot from the current posture to the target posture based on the teaching information and the tree structure, To the robot model information, and providing the generated image.
본 발명은 로봇과 로봇의 작업 환경을 가상 현실로 구현하여 가상 현실 영상을 제공하고, 해당 가상 현실상에서 사용자가 로봇의 작업 동작을 실시간으로 확인하면서 사용자의 동작과 상호 작용하는 로봇 모델을 통해 편리하게 교시할 수 있도록 지원하여 직관적인 직접 교시가 가능하도록 지원하는 동시에 로봇의 자세 중 작업 환경 내에 위치하는 장애물과의 충돌이 발생하는 자세와 로봇의 자체적인 충돌이 발생하는 자세를 자동 배제하여 사용자에 의한 로봇의 작업 동작에 대한 교시에 대응되어 충돌이 발생하지 않는 로봇의 최적 동작 경로를 산출하여 안정적이고 정확한 사용자의 교시에 대응되는 로봇의 작업 동작이 로봇에 설정될 수 있도록 지원함으로써 전문가의 도움 없이도 로봇 교시를 용이하게 수행할 수 있도록 지원하는 효과가 있다.The present invention provides a virtual reality image by implementing a working environment of a robot and a robot as a virtual reality and provides a virtual reality image through a robot model interacting with a user's operation while the user confirms the operation of the robot in real time on the virtual reality In addition to supporting the intuitive direct teaching by supporting the teaching, it is possible to automatically exclude the posture where the collision with the obstacle located in the working environment occurs and the self collision of the robot in the posture of the robot, It is possible to calculate the optimal operation path of the robot which does not cause the collision in correspondence with the teaching of the operation motion of the robot, so that the operation operation of the robot corresponding to the stable and accurate teaching of the user can be set in the robot, It is effective to support the instruction to be performed easily.
또한, 본 발명은 로봇의 작업 환경에 대한 모델링시 로봇과의 충돌 여부를 검출할 수 있는 수준으로 작업 환경을 스캔하여 생성한 점군 정보를 평면 여부의 판단을 통해 육면체나 다각형으로 압축하여 모델링함으로써, 작업 환경 모델의 데이터량을 크게 줄일 수 있어 작업 환경 내에서 로봇의 충돌 판단에 요구되는 부하와 연산 시간을 크게 감소시킬 수 있으며, 이를 통해 사용자의 교시에 대응되는 로봇의 최적 동작 경로를 실시간으로 제공하는 동시에 사용자의 동작에 대응되어 로봇 모델의 즉각적인 반응이 이루어지도록 보장할 수 있다.In addition, the present invention compresses the point cloud information generated by scanning the working environment to a level that can detect whether or not the robot is in conflict with the robot during the working environment of the robot by using a hexahedron or polygon, The amount of data of the work environment model can be greatly reduced, and the load and computation time required for judging the collision of the robot in the work environment can be greatly reduced. Thus, the optimal operation path of the robot corresponding to the user's teaching is provided in real time At the same time, it is possible to guarantee immediate response of the robot model in response to the user's operation.
더하여, 본 발명은 최적 동작 경로 연산시 확률적 로드맵 방법을 기초로 로봇의 자세를 좌표계로 구성한 배위 공간에서 로봇이 취할 수 있는 서로 다른 복수의 자세 각각을 샘플로서 선택하는 샘플링 과정에서 포아송 디스크 샘플링 방식을 적용하여 배위 공간에서 선택된 샘플을 균일하게 분포시킬 수 있어 로봇의 현재 자세로부터 사용자의 교시에 따라 설정된 최종적으로 로봇이 취하는 목표 자세로 움직이기 위한 다양한 로봇의 동작 경로 중 최적의 동작 경로를 자동 산출하여 로봇의 동작에 대한 효율성을 높일 수 있도록 지원하는 동시에, 샘플의 분포를 최적화하여 가장 적은 수의 샘플만으로 배위 공간을 채워 최적 동작 경로의 연산에 대한 연산 속도를 증가시킴으로써 사용자의 교시에 따른 로봇의 동작 설정에 필요한 시간을 단축하여 교시의 실시간성 및 해당 교시에 따른 로봇 모델의 반응성을 향상시킬 수 있도록 지원할 수 있다.In addition, according to the present invention, in the sampling process of selecting a plurality of different postures that can be taken by a robot in a coordinate space in which a posture of a robot is formed as a coordinate system based on a probabilistic roadmap method, The selected sample in the coordination space can be uniformly distributed. Therefore, the optimum motion path among the various robot motion paths is automatically calculated to move from the current posture of the robot to the target posture set by the user according to the teaching of the user Thereby increasing the efficiency of the operation of the robot and optimizing the distribution of the sample to fill the coordinate space with the smallest number of samples to increase the operation speed for the calculation of the optimum operation path, Shorten the time required to set the operation, Real - time performance and responsiveness of the robot model according to the instruction.
이외에도, 본 발명은 직관적인 직접 교시의 장점과 더불어 가상현실에서 직접 교시를 수행할 수 있도록 지원하여, 작업자가 직접 현장에 가지 않아도 되므로 공간의 물리적 한계를 극복하여 언제 어디서나 공간에 구애받지 않고 로봇의 작업을 바로 생성할 수 있을 뿐만 아니라 위험한 환경에서 작업자가 직접 작업할 필요가 없어 작업자의 안전을 보장하는 효과가 있다.In addition, the present invention provides an advantage of intuitive direct teaching and supports direct teaching in a virtual reality so that the operator does not have to go directly to the scene, thereby overcoming the physical limitations of the space, It is possible to directly create a work, and there is no need for a worker to directly work in a dangerous environment, thereby ensuring worker safety.
도 1은 본 발명의 실시예에 따른 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치에 대한 구성도.
도 2 및 도 3은 본 발명의 실시예에 따른 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치의 동작 구성도.
도 4는 본 발명의 실시예에 따른 작업 환경 모델링부의 클러스터링 과정에 대한 예시도.
도 5 및 도 6은 본 발명의 실시예에 따른 작업 환경 모델링부의 클러스터별 평면 여부 판단에 대한 동작 예시도.
도 7 및 도 8은 본 발명의 실시예에 따른 작업 환경 모델링부의 모델링 과정에 대한 동작 예시도.
도 9는 본 발명의 실시예에 따른 작업 환경 모델링부의 모델링을 통해 생성된 작업 환경 모델에 대한 예시도.
도 10 및 도 11은 본 발명의 실시예에 로봇 동작 모델링부의 샘플링 과정에 대한 예시도.
도 12는 본 발명의 실시예에 따른 로봇 동작 모델링부 및 제어부의 최적 동작 경로 산출에 대한 예시도.
도 13은 본 발명의 실시예에 따른 가상 현실 기반 로봇 교시를 위한 시뮬레이션 방법에 대한 순서도.1 is a block diagram of a simulation apparatus for teaching a virtual reality-based robot according to an embodiment of the present invention;
FIG. 2 and FIG. 3 are operation configuration diagrams of a simulation apparatus for teaching virtual reality-based robots according to an embodiment of the present invention;
FIG. 4 is an exemplary view illustrating a clustering process of a work environment modeling unit according to an embodiment of the present invention; FIG.
FIG. 5 and FIG. 6 are diagrams illustrating an operation example for determining whether or not the work environment modeling unit according to an embodiment of the present invention is planar.
FIG. 7 and FIG. 8 illustrate an operation example of a modeling process of a work environment modeling unit according to an embodiment of the present invention; FIG.
FIG. 9 is an exemplary view of a work environment model generated through modeling of a work environment modeling unit according to an embodiment of the present invention; FIG.
FIG. 10 and FIG. 11 are exemplary views of a sampling process of the robot operation modeling unit according to the embodiment of the present invention. FIG.
FIG. 12 is an exemplary diagram illustrating calculation of an optimal operation path of a robot operation modeling unit and a control unit according to an embodiment of the present invention; FIG.
13 is a flowchart illustrating a simulation method for teaching a virtual reality-based robot according to an embodiment of the present invention.
이하, 도면을 참고하여 본 발명의 상세 실시예를 설명한다.Hereinafter, detailed embodiments of the present invention will be described with reference to the drawings.
도 1은 본 발명의 실시예에 따른 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치(100)에 대한 구성도로서, 도시된 바와 같이 작업 환경 모델링부(110)와, 로봇 동작 모델링부(120) 및 제어부(130)를 포함할 수 있다.1 is a block diagram of a
또한, 상기 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치(이하, 시뮬레이션 장치)(100)는 사용자의 동작을 인식하여 동작 정보를 생성하는 가상현실 인터페이스 장치(20)(또는 가상 현실 장비)와 연동할 수 있으며, 상기 가상현실 인터페이스 장치(20)는 사용자가 착용하는 HMD(Head Mounted Display) 장치, 로봇(robot)의 교시(敎示)를 위한 사용자의 동작을 인식하는 컨트롤러 또는 티치 펜던트(Teach Pendant) 등을 포함할 수 있으며, 상기 가상현실 인터페이스 장치(20)는 영상을 제공(표시)하는 장치 및 사용자의 동작을 인식하는 장치와 같이 복수의 서로 다른 장치로 구성될 수도 있다.In addition, a simulation apparatus (hereinafter, a simulation apparatus) 100 for teaching virtual reality-based robots can interoperate with a virtual reality interface apparatus 20 (or a virtual reality apparatus) that recognizes a user's operation and generates operation information The virtual
이때, 상기 시뮬레이션 장치(100)는 상기 가상현실 인터페이스 장치(20)와 연결되는 별도의 인터페이스부 또는 통신부를 더 포함할 수 있다.The
또한, 상기 가상현실 인터페이스 장치(20)는 사용자의 조작에 따른 사용자의 동작에 대한 동작 정보를 생성하거나 사용자의 동작을 자동 인식하여 동작정보를 생성한 후 상기 시뮬레이션 장치(100)로 전송할 수 있다.In addition, the virtual
상술한 구성을 토대로, 이하 도면을 참고하여 상기 시뮬레이션 장치(100)의 상세 동작 구성을 도 2 및 도 3을 참고하여 설명한다.Based on the above-described configuration, the detailed operation of the
우선, 도 2에 도시된 바와 같이, 상기 작업 환경 모델링부(110)는 로봇의 작업 환경을 스캔(scan)하여 작업 환경에 대한 3차원 스캔정보를 생성하는 3차원 센서(30)로부터 해당 3차원 스캔정보를 수신할 수 있다.2, the work
이때, 상기 3차원 스캔정보는 작업 환경에 대한 3차원의 점군(Point-cloud) 정보(또는 점군 데이터)로 구성될 수 있으며, 상기 작업 환경 모델링부(110)는 상기 점군 정보에 포함된 깊이정보를 기반으로 깊이 이미지를 생성할 수 있으며, 상기 깊이 이미지에 미리 설정된 영상 좌표계를 적용할 수 있다.At this time, the 3D scan information may be composed of three-dimensional point-cloud information (or point cloud data) for the work environment, and the work
또한, 상기 작업 환경 모델링부(110)는 상기 깊이 이미지에 적용된 영상 좌표계에 따른 영상 좌표를 기준으로 상기 점군 정보를 블럭 형태로 클러스터링할 수 있으며, 이를 통해 복수의 서로 다른 클러스터를 생성할 수 있다.In addition, the work
이때, 상기 복수의 서로 다른 클러스터 상호 간은 동일한 크기를 가질 수 있다.At this time, the plurality of different clusters may have the same size.
이후, 상기 작업 환경 모델링부(110)는 상기 각 클러스터에 대하여 미리 설정된 알고리즘을 통해 상기 클러스터에 속한 점군 정보를 기초로 상기 클러스터의 평면 여부를 판단할 수 있으며, 평면으로 판단된 평면 클러스터에 속한 점군정보를 하나의 평면 다각형이나 평면 육면체로 압축하여 모델링(modeling)할 수 있다.The work
또한, 상기 작업 환경 모델링부(110)는 평면이 아닌 클러스터를 복수의 서로 다른 세부 클러스터로 분할하고, 분할된 클러스터에 대하여 상기 알고리즘에 따라 평면 여부를 판단하여 평면인 클러스터를 상술한 바와 같이 다각형이나 육면체로 압축하여 모델링하고, 평면이 아닌 상기 분할된 클러스터를 재차 분할하여 평면 여부를 판단한 후 상기 다각형이나 육면체로 압축하는 과정을 반복함으로써, 평면이 확인될 때까지 클러스터를 분할할 수 있다.In addition, the working
이를 통해, 상기 작업 환경 모델링부(110)는 작업 환경에 대응되는 각 클러스터에 속한 점군 정보를 다각형이나 육면체로 압축하여 모델링함으로써, 작업 환경에 대한 점군 정보를 기반으로 작업 환경의 모델링을 통해 생성된 환경 모델 정보의 데이터량을 감소시키는 동시에 작업 환경의 모델링에 소요되는 연산시간을 크게 감소시켜 작업 환경에 대한 신속한 모델링을 지원할 수 있다.Accordingly, the work
또한, 상기 작업 환경 모델링부(110)는 상기 작업 환경 정보를 상기 제어부(130)로 제공할 수 있다.In addition, the work
한편, 상기 제어부(130)에는 교시 대상인 로봇을 모델링한 로봇 모델 정보가 미리 저장될 수 있으며, 상기 로봇 모델 정보와 환경 모델 정보를 기초로 실재(實在)하는 작업 환경에서 작업하는 로봇과 작업 환경에 대한 가상 현실 인터페이스 관련 가상 현실 영상을 상기 사용자의 가상현실 인터페이스 장치(20)로 상기 인터페이스부 또는 통신부를 통해 전송할 수 있다.Meanwhile, the
이때, 상기 가상 현실 영상은 3차원 그래픽(graphic) 정보로 구성될 수도 있으며, 로봇 조작에 필요한 각종 인터페이스 관련 정보가 해당 가상 현실 영상에 포함될 수도 있다.At this time, the virtual reality image may be composed of three-dimensional graphic information, and various interface-related information necessary for the robot operation may be included in the corresponding virtual reality image.
또한, 상기 로봇 모델 정보는 상기 로봇의 개별 자세가 상기 로봇 모델에 매핑된 정보가 포함될 수 있다.In addition, the robot model information may include information that the individual posture of the robot is mapped to the robot model.
이를 통해, 사용자가 로봇과 로봇의 실재 작업 환경을 가상 현실을 통해 직관적으로 파악할 수 있도록 제공할 수 있다.Thus, the user can intuitively grasp the real working environment of the robot and the robot through the virtual reality.
한편, 상기 제어부(130)는 상기 사용자의 동작 인식 장치로부터 사용자가 의도하는 작업 동작으로 로봇을 동작시키기 위한 동작 정보를 수신할 수 있으며, 상기 동작 정보를 기초로 상기 로봇의 자세를 인식하여 상기 로봇 모델 정보에 따른 로봇 모델(가상 로봇)의 자세를 상기 사용자의 동작 자세와 상호 작용하도록 변경하고, 상기 동작 정보에 대응되는 로봇의 자세로 설정된 로봇 모델 정보와 상기 환경 모델 정보에 따라 상기 가상 현실 영상을 생성하여 상기 사용자의 가상현실 인터페이스 장치(20)에 실시간으로 제공할 수 있다.Meanwhile, the
이에 따라, 가상현실 인터페이스 장치(20)는 가상 현실 영상을 통해 사용자의 동작 자세에 대응되어 로봇 모델의 자세가 변경되도록 영상을 통해 표시하여, 사용자가 로봇의 움직임을 직관적으로 파악할 수 있는 동시에 사용자의 동작에 로봇의 동작이 상호 작용하도록 하여 로봇의 작업 내용 설정에 대한 편의성을 보장할 수 있다.Accordingly, the virtual
또한, 상기 제어부(130)는 상기 가상현실 인터페이스 장치(20)로부터 사용자의 시선 방향에 대한 시선 정보를 수신할 수 있으며, 상기 환경 모델 정보와 로봇 모델 정보를 기초로 상기 시선 정보에 따른 사용자의 시선 방향에 대응되는 작업 공간 및 장애물에 대한 환경 모델 정보와 로봇 모델 정보에 따른 로봇 모델의 일부를 상기 가상 현실 영상으로 생성하여 상기 가상현실 인터페이스 장치(20)로 제공할 수도 있다. 이때, 상기 시선정보는 상기 동작정보에 포함될 수 있다.In addition, the
상술한 구성을 통해, 상기 제어부(130)는 가상 현실에서 사용자의 동작에 상호 작용하는 로봇의 동작을 기초로 사용자가 의도하는 로봇의 작업 동작에 대한 제어 정보를 생성하여 이를 사용자의 로봇 교시에 따른 정보로서 생성할 수 있으나, 사용자가 가상 현실 인터페이스를 통해 작업 중 로봇과 작업 환경 내에 위치하는 장애물 사이의 충돌이나 로봇의 동작 과정에서 로봇의 양팔이 서로 충돌하는 것과 같은 로봇의 자체적인 충돌을 판단하기 어려우며, 이에 따라 사용자의 교시 과정에서 충돌이 발생하는 로봇의 자세가 포함된 상태로 제어 정보가 생성될 수 있다.The
따라서, 본 발명은 이러한 충돌을 회피하여 사용자가 의도하는 작업 동작에 대응되는 가장 효율적인 로봇의 작업 동작을 자동 생성할 수 있도록 지원할 수 있는데, 이를 도 1의 제어부(130)의 구성을 토대로 상세히 설명한다.Therefore, the present invention can avoid such a collision to automatically generate the most efficient robot operation operation corresponding to a work operation intended by the user, which will be described in detail based on the configuration of the
도시된 바와 같이, 상기 제어부(130)는 동작 인식부(131), 상호작용 검출부(132) 및 영상 생성부(133)를 포함할 수 있다.The
우선, 상기 가상현실 인터페이스 장치(20)는 사용자가 로봇에 대하여 작업 동작을 교시하기 위해 사용자 입력에 따라 사용자의 동작을 자동 인식하여 로봇의 작업 동작이 시작되는 자세인 현재 자세와 로봇의 작업 동작이 종료되는 자세인 목표 자세에 대한 교시 정보를 생성할 수 있으며, 이를 상기 시뮬레이션 장치(100)로 전송할 수 있다.First, the virtual
일례로, 가상현실 인터페이스 장치(20)는 사용자의 머리 및 양손에 대한 위치와 방향을 인식할 수 있으며, 머리의 위치와 방향정보는 가상현실에서의 시각화의 시점 제어에 활용되고 양손의 위치와 방향은 로봇과의 상호작용에 활용될 수 있으며, 이에 대한 정보가 상술한 교시정보 및 동작정보에 포함될 수 있다. 또한, 상기 가상현실 인터페이스 장치(20)는 상기 교시정보의 생성을 위해 사용자의 이벤트를 인식하는 버튼이 장착될 수 있다.For example, the virtual
상기 가상현실 인터페이스 장치(20)는 직접교시에서와 마찬가지로 가상 현실상에서 로봇 모델의 끝점을 이동하여 로봇을 움직이기 위해 사용자가 손을 이동하여 로봇의 작용점(end-effector)으로 다가간 후 버튼을 눌러 작용점을 구속하는 경우 상기 현재 자세에 대한 자세 정보를 생성하여 기억하고(저장하고), 이후 상기 현재 자세로부터 원하는 위치와 방향으로 손을 움직여 로봇의 작용점을 이동시킬 수 있다.The virtual
이때, 상기 가상현실 인터페이스 장치(20)는 작용점 구속시(이벤트 발생시) 사용자의 자세를 로봇의 교시가 시작되는 로봇의 현재 자세(또는 시작 자세)로 판단하고, 상기 현재 자세에 대한 자세정보를 생성할 수 있다.At this time, the virtual
또한, 가상현실 인터페이스 장치(20)는 사용자의 손의 위치와 로봇 모델의 작용점 간의 거리를 계산하고 유효거리 내에 있을 때 버튼 입력을 확인하여 사용자가 로봇 끝점을 구속하는지 등의 이벤트들을 검출하고 그에 따라 교시를 종료할 수 있다.In addition, the virtual
이때, 작업자는 가상 현실상에서 로봇 모델의 작용점을 움직일 수도 있지만 로봇 모델을 구성하는 각 관절의 움직임도 직접 제어할 수 있다.At this time, the worker can move the point of action of the robot model on the virtual reality, but also can directly control the motion of each joint constituting the robot model.
이를 통해, 가상현실 인터페이스 장치(20)는 교시 종료에 대응되는 이벤트가 검출되는 경우 해당 이벤트에 대응되어 교시가 종료되는 사용자의 자세에 대응되는 로봇 모델의 목표 자세에 대한 자세정보를 생성할 수 있다.Accordingly, when an event corresponding to the teaching end is detected, the virtual
이후, 상기 가상현실 인터페이스 장치(20)는 상기 현재 자세 및 목표 자세 각각에 대한 자세정보를 포함하는 교시 정보를 상기 시뮬레이션 장치(100)의 제어부(130)로 전송할 수 있다.Then, the virtual
이때, 상기 가상현실 인터페이스 장치(20)는 상기 현재 자세 및 목표 자세 각각에 대한 자세정보를 개별 교시정보로 생성하여 상기 시뮬레이션 장치(100)의 제어부(130)로 전송할 수도 있다. 다시 말해, 상기 가사현실 인터페이스 장치는 현재 자세에 대한 자세정보를 교시정보로 생성하여 상기 제어부(130)로 전송하고, 상기 목표 자세에 대한 자세 정보를 교시정보로 생성하여 상기 제어부(130)로 전송할 수 있다.At this time, the virtual
이에 따라, 상기 제어부(130)에 포함된 동작 인식부(131)는 상기 교시정보를 수신할 수 있으며, 상기 교시정보에 따른 로봇 모델의 현재 자세와 목표 자세를 인식할 수 있다. 또한, 상기 동작 인식부(131)는 해당 교시정보에 따른 현재 자세와 목표 자세에 대한 정보를 상기 제어부(130)에 포함된 상호작용 검출부(132)로 제공할 수 있다.Accordingly, the
이때, 상기 동작 인식부(131)는 상기 가상현실 인터페이스 장치(20)로부터 사용자의 동작에 대한 동작 정보와 상기 작용점을 구속하는 이벤트와 같은 입력정보를 수신할 수도 있으며, 해당 동작 정보와 입력정보를 기초로 상기 가상현실 인터페이스 장치(20) 대신 상기 현재 자세와 목표 자세에 대한 교시정보를 생성할 수도 있다.At this time, the
즉, 상기 가상 현실 영상이 상기 미리 설정된 로봇 모델 정보를 기반으로 생성되므로 상기 동작 인식부(131)는 상기 가상현실 인터페이스 관련 가상 현실 영상을 기반으로 생성되는 상기 동작 정보 및 입력정보에 따른 사용자가 입력한 자세에 매핑되는 로봇 모델의 자세를 상기 로봇 모델 정보로부터 용이하게 인식(검출)하고, 이를 기반으로 상기 교시정보를 생성할 수 있다.That is, since the virtual reality image is generated based on the preset robot model information, the
또한, 상기 가상현실 인터페이스 장치(20)는 현재 자세와 목표 자세 중 적어도 하나를 취소하고 재설정할 수도 있으며, 이에 대한 정보를 상기 시뮬레이션 장치(100)의 제어부(130)로 전송하면, 상기 제어부(130)는 취소가 발생한 자세에 대응되는 교시정보를 삭제하고 새로 수신된 교시정보에 따라 현재 자세와 목표 자세 중 적어도 하나를 재설정할 수도 있다.The virtual
한편, 상기 제어부(130)에 포함된 상호작용 검출부(132)는 상기 환경 모델 정보와 로봇 모델 정보를 기초로 상기 로봇 모델이 취할 수 있는 개별 자세에 대하여 상기 환경 모델 정보에 따른 환경 모델에 구성된 장애물과의 충돌이 발생하는 자세나 로봇의 양팔이 충돌하는 것과 같은 로봇의 자체적인 충돌이 발생할 수 있는 자세와 같은 충돌 자세를 검출할 수 있으며, 서로 다른 개별 충돌 자세를 취합하여 상기 로봇 동작 모델링부(120)로 충돌 자세 정보로 제공할 수 있다.Meanwhile, the
또한, 상기 상호작용 검출부(132)는 상기 동작 인식부(131)와 연동하여 상기 가상현실 인터페이스 장치(20)로부터 수신된 동작정보에 따른 자세가 상기 충돌 자세에 대응되는 경우 충돌 검출에 대한 알림 정보를 생성하여 상기 가상현실 인터페이스 장치(20)로 제공하고, 상기 가상현실 인터페이스 장치(20)는 해당 알림정보를 가상 현실 영상을 통해 표시할 수 있다.When the posture corresponding to the motion information received from the virtual
한편, 상기 로봇 동작 모델링부(120)는 확률적 로드맵 방법(PRM, probabilistic roadmap method)을 기초로 로봇의 개별 자세를 좌표로 표시 가능한(로봇의 개별 자세가 좌표로서 구성되는) 좌표계로 구성된 배위 공간(configuration space)에서 로봇이 취할 수 있는 서로 다른 복수의 자세 각각을 샘플(sample)로서 선택하고, 각 샘플을 트리 구조로 연결하여, 로봇의 현재 자세로부터 사용자의 교시(敎示)에 따른 로봇의 작업 동작에 따라 최종적으로 로봇이 취하는 목표 자세로 로봇이 움직이는 동작 경로에 대한 최단(최적) 경로를 자동 산출하여 시뮬레이션(simulation)할 수 있도록 지원할 수 있으며, 샘플의 분포를 최적화하여 가장 적은 수의 샘플만으로 배위 공간을 채워(커버(cover)하여) 로봇의 동작 관련 최단(최적) 경로(최적 동작 경로 또는 최단 동작 경로)의 연산에 대한 연산 속도를 증가시킴으로써 사용자의 교시에 따른 로봇의 동작 설정에 필요한 시간을 단축하여 교시의 실시간성 및 해당 교시에 따른 로봇의 반응성을 향상시킬 수 있도록 지원한다.On the other hand, the robot
여기서, 상기 확률적 로드맵 방법은 로봇의 현재 자세와 목표 자세 사이에서 충돌을 회피하면서 로봇의 동작 경로를 설정하기 위한 알고리즘으로서, 로봇에 구성된 서로 다른 복수의 구동축 각각이 좌표 축으로 설정되며 구동 축의 수에 따라 차원수가 결정되는 n 차원의 그래프인 배위 공간을 구성하고, 상기 배위 공간에서 로봇이 취할 수 있는 복수의 서로 다른 자세 각각을 샘플(또는 상기 배위공간 상의 좌표)로서 상기 배위 공간에 설정하여 충돌을 회피하면서 상기 현재 자세에 대응되는 샘플로부터 상기 목표 자세에 대응되는 샘플로 이동시키기 위한 로봇의 최적 동작 경로를 산출하는 널리 알려진 알고리즘이다.Here, the probabilistic roadmap method is an algorithm for setting an operation path of a robot while avoiding a collision between a current posture and a target posture of the robot, wherein each of the plurality of different drive axes configured in the robot is set as a coordinate axis, (Or co-ordinates on the coordinate space) in the coordinate space, and sets a plurality of different postures that the robot can take in the coordinate space in the coordinate space as the sample (or coordinate on the coordinate space) And moving the robot from the sample corresponding to the current attitude to the sample corresponding to the target attitude.
이에 따라, 상기 로봇 동작 모델링부(120)는 상기 제어부(130)로부터 제공되는 상기 충돌 자세 정보를 기초로 충돌이 발생하는 로봇의 자세를 로봇이 취할 수 없는 자세로서 배위 공간에서 제외시킬 수 있으며, 일례로 상기 배위 공간에서 상기 충돌 자세 정보에 따른 각 충돌 자세의 좌표를 제외 좌표(제외 대상 좌표)로서 식별하고, 상기 제외 좌표를 상기 배위 공간에 제한 영역 또는 제한 공간으로 설정할 수 있다.Accordingly, the robot
이때, 상기 제한 영역 또는 제한 공간은 하나 이상의 제외 좌표로 구성될 수 있다.At this time, the limited area or the limited space may be composed of one or more negative coordinates.
이에 따라, 상기 로봇 동작 모델링부(120)는 상기 배위 공간에서 제한 영역 또는 제한 공간을 제외한 나머지 공간을 대상으로 확률적 로드맵 방법을 이용하여 상기 로봇에 대응되어 미리 설정된 그래프 정보인 상기 배위 공간을 샘플링(sampling)하여 로봇이 취할 수 있는 서로 다른 복수의 자세 각각에 대응되는 복수의 서로 다른 샘플을 임의로(랜덤(random)하게) 선택할 수 있다.Accordingly, the robot
이때, 기존에는 확률적 로드맵 방법에 기초하여 배위 공간 상에서 샘플 선택시 유니폼(uniform)하게 배위 공간을 샘플링하여, 배위 공간에서 선택된 샘플의 분포가 균일하지 않고 특정 부분에 집중되어 선택되는 문제가 있었다.At this time, there has been a problem that the distribution of the samples selected in the coordination space is sampled uniformly at the time of sample selection on the coordinate space based on the probabilistic roadmap method, and is concentrated on a specific portion without being uniform.
이에 따라, 배위 공간을 커버하기 위해(채우기 위해) 샘플의 수를 불필요하게 증가시키게 되며, 이로 인해 로봇의 동작 경로 산출에 필요한 연산 시간이 증가하게 된다.This unnecessarily increases the number of samples to cover (fill) the coordinate space, thereby increasing the computation time required to calculate the motion path of the robot.
이를 해결하기 위해, 상기 로봇 동작 모델링부(120)는 포아송(Poisson) 샘플링 방식 중 샘플 영역을 고정 디스크 형상으로 정의하는 포아송 디스크(Poisson disk) 샘플링 방식을 로봇의 경로 산출을 위한 샘플 결정 방식에 적용하여 배위 공간의 샘플 밀도 균일성을 높임으로써 최소한의 샘플 수만으로 최적 경로를 산출할 수 있도록 지원할 수 있다.To solve this problem, the robot
일례로, 상기 로봇 동작 모델링부(120)는 미리 설정된 포아송 디스크 샘플링 방식에 따라 미리 설정된 그래프 정보인 배위 공간에서 랜덤하게 샘플을 선택하여 배위 공간 전체를 채울(커버할) 수 있으며, 상기 선택된 샘플은 일정한 영역이나 부피를 가지도록 디스크(disk) 반경을 가지는 구체(hard sphere)로 간주(설정)될 수 있다.For example, the robot
이에 따라, 상기 로봇 동작 모델링부(120)는 인접한 서로 다른 샘플 사이의 간격이 상기 디스크 반경에 의해 일정 이상을 유지한 상태로 샘플을 선택할 수 있으며, 이를 통해 배위 공간에서 샘플이 특정 영역에 밀집되지 않고 균일하게 분포하도록 복수의 샘플을 선택할 수 있는 동시에 배위 공간을 커버하기 위해 필요한 샘플의 수를 줄일 수 있어 추후 동작 경로 연산에 소요되는 시간을 기존에 비해 크게 단축시킬 수 있다.Accordingly, the robot
이때, 상기 로봇 동작 모델링부(120)는 배위 공간의 크기에 따라 상기 샘플의 수 및 포아송 디스크 방식에 따른 상기 샘플의 디스크 반경 중 어느 하나를 결정할 수 있으며, 이를 기반으로 상기 배위 공간을 채우기(커버하기) 위한 다른 하나를 결정할 수 있다. 또한, 상기 샘플의 수 및 디스크 반경은 상기 로봇 동작 모델링부(120)에 미리 설정될 수도 있다.At this time, the robot
한편, 도 3에 도시된 바와 같이 상기 로봇 동작 모델링부(120)는 상기 배위 공간에서 선택된 샘플을 상기 확률적 로드맵 방법을 기초로 트리 구조를 형성할 수 있으며, 상기 선택된 샘플에 따라 트리 구조가 형성된 배위 공간에 대한 정보를 상기 제어부(130)의 상호작용 검출부(132)로 제공할 수 있다.3, the robot
이에 따라, 상기 상호작용 검출부(132)는 상기 동작 인식부(131)로부터 인식된(생성된) 상기 교시정보에 따른 현재 자세와 목표 자세에 대한 정보를 수신하거나 상기 교시정보를 수신하고, 상기 로봇 동작 모델링부(120)로부터 상기 충돌 자세가 배제된 배위 공간 상의 개별 로봇 자세가 트리 구조로 형성된 배위 공간에 대한 정보를 수신할 수 있다.Accordingly, the
이후, 상기 상호작용 검출부(132)는 상기 배위 공간에서 상기 교시정보에 따른 현재 자세와 목표 자세 각각에 대응되는 샘플을 식별할 수 있으며, 상기 현재 자세에 대응되는 샘플로부터 상기 목표 자세에 대응되는 샘플로 이동하기 위한 최단 경로를 상기 확률적 로드맵 방법을 기초로 산출할 수 있다.Hereinafter, the
이때, 상기 상호작용 검출부(132)는 상기 배위 공간에서 상기 현재 자세 또는 목표 자세와 일치되는 샘플이 없는 경우 샘플이 없는 현재 자세 또는 목표 자세에 대응되는 배위 공간 상 좌표와 가장 인접한 샘플을 현재 자세 또는 목표 자세에 대응되는 샘플로서 식별할 수도 있다.If there is no sample matching the current posture or the target posture in the coordinate space, the
즉, 상기 상호작용 검출부(132)는 사용자의 교시에 따른 로봇의 현재 자세로부터 로봇의 목표 자세로 동작하기(이동하기) 위한 최적의 동작 경로를 상기 최단 경로로서 산출할 수 있으며, 상기 로봇 동작 모델링부(120)와 연동하여 상기 배위 공간에서 충돌 자세를 배제하여 충돌없이 안정적이며 정확하게 사용자가 교시한 작업 동작에 대응되는 로봇의 최적 동작 경로를 산출할 수 있다.That is, the
한편, 상기 상호작용 검출부(132)는 상기 최단 경로를 기초로 사용자의 교시에 대응되어 로봇을 제어하기 위한 제어정보를 생성할 수 있으며, 상기 제어 정보를 상기 시뮬레이션 장치(100)에 구성된 통신부를 통해 로봇(10)에 전송하여 상기 제어 정보가 로봇(10)에 설정되도록 할 수 있다.Meanwhile, the
이때, 상기 제어정보는 상기 로봇(10)이 상기 사용자의 교시에 따라 생성된 상기 최단 경로에 따라 동작되도록 하기 위한 작업 파일로 구성될 수 있다.At this time, the control information may be configured as a work file for allowing the
한편, 영상 생성부(133)는 상기 상호작용 검출부(132)와 연동하여 상기 최단 경로를 기초로 상기 사용자의 교시정보에 대응되어 산출된 상기 제어정보를 상기 로봇 모델 정보에 적용하고, 상기 로봇 모델이 상기 제어정보에 따라 동작하는 사용자의 교시와 관련된 로봇 모델의 동작 영상인 가상 현실 영상을 생성하여 상기 가상현실 인터페이스 장치(20)로 전송할 수 있다.Meanwhile, the
상술한 구성에서, 상기 상호작용 검출부(132)는 상기 동작 인식부(131)와 연동하여 가상 현실에서 로봇의 동작을 시뮬레이션(simulation)하는 기능을 수행하며 이를 위하여 일반적인 산업용 로봇의 기능과 유사한 모든 기능이 소프트웨어적으로 구현되어 있다. 이때, 상기 상호작용 검출부(132)의 로봇 동작에 대한 시뮬레이션에 있어서 사용자가 작용점을 움직여서 로봇의 동작을 프로그래밍할 때는 작업 환경에 따른 작업 공간(Task space)에서의 역기구학 제어가 수행될 수 있으며, 관절을 직접 움직일 때는 관절공간(Joint space)에서의 제어가 수행될 수 있다.In the above-described configuration, the
또한, 상기 영상 생성부(133)는 가상 현실(가상 공간)에서 사용자의 동작에 상호작용하기 위한 로봇 모델의 동작을 실시간으로 시뮬레이션하여 가상 현실 영상을 생성하고, 이를 사용자의 가상현실 인터페이스 장치(20) 중 영상 관련 기기로 전송하여 해당 로봇과 로봇의 작업 환경을 3차원으로 시각화하는 역할을 수행할 수 있다.Also, the
일례로, 상기 상호작용 검출부(132) 및 영상 생성부(133)는 상호 연동하여 작업자가 로봇의 작용점을 잡은 후 원하는 방향으로 손을 이동하면 그에 따른 로봇의 동작을 미리 설정된 시뮬레이터를 통하여 실시간으로 생성하고 이를 3차원으로 시각화하여 상기 가상현실 인터페이스 장치(20)를 통해 제공함으로써 작업자는 현실에서 직접교시를 통해 로봇을 프로그래밍하는 것과 같은 체험을 할 수 있다.For example, the
상술한 구성에 따라, 본 발명은 로봇과 로봇의 작업 환경을 가상 현실로 구현하여 가상 현실 영상을 제공하고, 해당 가상 현실 영상에 따른 가상 현실상에서 사용자가 로봇의 작업 동작을 실시간으로 확인하면서 편리하게 교시할 수 있도록 지원하여 직관적인 교시가 가능하도록 지원하는 동시에 로봇의 자세 중 작업 환경 내에 위치하는 장애물이나 로봇의 자체적인 충돌이 발생할 수 있는 자세를 자동 배제하여 사용자에 의한 로봇의 작업 동작에 대한 교시에 대응되어 충돌이 발생하지 않는 로봇의 최적 동작 경로를 산출하여 안정적이고 정확한 사용자의 교시에 대응되는 로봇의 작업 동작이 로봇에 설정될 수 있도록 지원함으로써 전문가의 도움 없이도 로봇 교시를 용이하게 수행할 수 있도록 지원할 수 있다.According to the above-described configuration, the present invention realizes a working environment of a robot and a robot as a virtual reality to provide a virtual reality image, and enables a user to conveniently check the operation of the robot in real time on the virtual reality according to the virtual reality image In addition to supporting the intuitive teaching by supporting the teaching, it is also possible to automatically exclude an obstacle that is located in the working environment of the robot or the self collision of the robot, It is possible to calculate the optimal operation path of the robot in which the collision does not occur so that the operation of the robot corresponding to the stable and accurate teaching of the user can be set in the robot, .
또한, 본 발명은 로봇의 작업 환경에 대한 모델링시 로봇과의 충돌 여부를 검출할 수 있는 수준으로 작업 환경을 스캔하여 생성한 점군 정보를 평면 여부의 판단을 통해 육면체나 다각형으로 압축하여 모델링함으로써, 작업 환경 모델의 데이터량을 크게 줄일 수 있어 작업 환경 내에서 로봇의 충돌 판단에 요구되는 부하와 연산 시간을 크게 감소시킬 수 있으며, 이를 통해 사용자의 교시에 대응되는 로봇의 최적 동작 경로를 실시간으로 제공하는 동시에 사용자의 동작에 대응되어 로봇 모델의 즉각적인 반응이 이루어지도록 보장할 수 있다.In addition, the present invention compresses the point cloud information generated by scanning the working environment to a level that can detect whether or not the robot is in conflict with the robot during the working environment of the robot by using a hexahedron or polygon, The amount of data of the work environment model can be greatly reduced, and the load and computation time required for judging the collision of the robot in the work environment can be greatly reduced. Thus, the optimal operation path of the robot corresponding to the user's teaching is provided in real time At the same time, it is possible to guarantee immediate response of the robot model in response to the user's operation.
더하여, 본 발명은 최적 동작 경로 연산시 확률적 로드맵 방법을 기초로 로봇의 자세를 좌표계로 구성한 배위 공간에서 로봇이 취할 수 있는 서로 다른 복수의 자세 각각을 샘플로서 선택하는 샘플링 과정에서 포아송 디스크 샘플링 방식을 적용하여 배위 공간에서 선택된 샘플을 균일하게 분포시킬 수 있어 로봇의 현재 자세로부터 사용자의 교시에 따라 설정된 최종적으로 로봇이 취하는 목표 자세로 움직이기 위한 다양한 로봇의 동작 경로 중 최적 동작 경로를 자동 산출하여 로봇의 동작에 대한 효율성을 높일 수 있도록 지원하는 동시에, 샘플의 분포를 최적화하여 가장 적은 수의 샘플만으로 배위 공간을 채워 최적 동작 경로의 연산에 대한 연산 속도를 증가시킴으로써 사용자의 교시에 따른 로봇의 동작 설정에 필요한 시간을 단축하여 교시의 실시간성 및 해당 교시에 따른 로봇 모델의 반응성을 향상시킬 수 있도록 지원할 수 있다.
In addition, according to the present invention, in a sampling process of selecting, as samples, a plurality of different postures that can be taken by a robot in a coordinate space in which a posture of a robot is formed as a coordinate system based on a probabilistic roadmap method in calculating an optimal operation path, , It is possible to uniformly distribute the selected samples in the coordination space. Therefore, the optimal motion path is automatically calculated from the robot's current posture to the target posture set by the user according to the user's teaching, It is possible to improve the efficiency of the robot operation and to optimize the distribution of the sample to fill the coordinate space with the smallest number of samples to increase the operation speed for the calculation of the optimum operation path, Shorten the time required for setting, Time and the responsiveness of the robot model according to the teachings.
한편, 상술한 구성에서, 상기 작업 환경 모델링부(110)의 상세 구성을 이하 도면을 통해 설명한다.In the above-described configuration, the detailed configuration of the working
도 1에 도시된 바와 같이, 상기 작업 환경 모델링부(110)는 입력부(111), 클러스터링부(112), 평면 판단부(113) 및 모델링부(114)를 포함할 수 있다.1, the work
우선, 상기 입력부(111)는 3차원 센서(30)를 통해 로봇(robot)의 작업 환경을 구성하는 작업 공간 및 장애물 등을 스캔하여 생성된 3차원의 점군(Point-cloud) 정보(또는 점군 데이터)를 입력으로 수신하고, 해당 점군 정보를 상기 클러스터링부(112)로 제공할 수 있다.First, the
이때, 상기 작업 환경 모델링부(110)는 상기 3차원 센서(30)를 포함하는 센서부를 더 포함하여 구성될 수도 있으며, 상기 센서부는 작업 환경을 스캔하여 상기 3차원의 점군 정보를 생성할 수 있다.The work
또한, 상기 작업 환경은 로봇의 작업 공간과 상기 작업 공간 중 일부 공간을 점유하고 있는 장애물 등을 포함할 수 있으며, 해당 장애물은 시설 설비 등을 포함할 수 있다.In addition, the working environment may include an obstacle occupying a part of the working space of the robot and the working space, and the obstacle may include facilities and the like.
한편, 도 4에 도시된 바와 같이 상기 클러스터링부(112)는 상기 점군 정보에 포함된 깊이정보를 기반으로 깊이 이미지를 생성할 수 있으며, 상기 깊이 이미지에 대하여 미리 설정된 영상 좌표계를 적용할 수 있다.Meanwhile, as shown in FIG. 4, the clustering unit 112 may generate a depth image based on the depth information included in the point cloud information, and may apply a predetermined image coordinate system to the depth image.
또한, 상기 클러스터링부(112)는 상기 깊이 이미지에 적용된 영상 좌표계에 따른 영상 좌표를 기준으로 상기 점군 정보를 블럭(block) 형태로 클러스터링(clustering)할 수 있으며, 이를 통해 복수의 서로 다른 클러스터(cluster)를 생성할 수 있다.In addition, the clustering unit 112 may clusters the point cloud information in a block form on the basis of image coordinates according to an image coordinate system applied to the depth image, Can be generated.
이때, 상기 클러스터링부(112)는 상기 클러스터의 크기를 다양하게 구성할 수 있으며, 일반적으로 상기 클러스터의 크기는 픽셀(pixel) 단위로 구성할 수 있다.At this time, the clustering unit 112 may configure the sizes of the clusters in various ways. In general, It can be configured in pixel units.
일례로, 상기 클러스터링부(112)는 상기 깊이 이미지에 좌표계를 적용하여 블럭 형태를 구성하는 서로 다른 복수의 영상 좌표를 클러스터링하여 상기 블럭 형태에 대응되는 클러스터를 생성할 수 있다.For example, the clustering unit 112 may generate a cluster corresponding to the block shape by clustering a plurality of different image coordinates constituting a block shape by applying a coordinate system to the depth image.
기존의 모델링 방법에서 점들의 3차원 위치정보를 이용하는 것에 비해 본 발명은 영상 좌표만을 이용하므로 간단하고 신속하게 점군 정보를 클러스터로 나눌 수 있다. In contrast to the conventional modeling method using three-dimensional position information of points, the present invention can divide the point cloud information into clusters easily and quickly because only the image coordinates are used.
한편, 상기 평면 판단부(113)는 상기 클러스터링부(112)와 연동하여 상기 복수의 서로 다른 클러스터 각각에 대한 평면 여부를 확인하고, 평면이 아닌 경우 상기 평면이 아닌 블럭 형태의 클러스터를 동일 크기를 가진 서로 다른 복수의 블럭으로 분할하여 평면 여부를 재확인함으로써, 평면이 완성될 때까지 클러스터를 분할하여 세분화하는 과정을 반복할 수 있다.The
이를 도 5 및 도 6을 참고로 상세히 설명하면, 상기 평면 판단부(113)는 상기 클러스터링부(112)로부터 상기 각 클러스터에 대한 정보를 수신할 수 있다.5 and 6, the
또한, 도 5에 도시된 바와 같이 상기 평면 판단부(113)는 특정 클러스트에 대하여 상기 특정 클러스터를 구성하는 영상 좌표 영역에 속한 점군 정보를 취합하여 데이터 행렬을 구성할 수 있다.As shown in FIG. 5, the
일례로, 상기 평면 판단부(113)는 상기 영상 좌표 영역에 속한 복수의 서로 다른 점()으로 구성된 점군 정보를 이용하여 하기의 수학식 1과 같은 데이터 행렬()을 생성할 수 있다.For example, the
상기 데이터 행렬은 도시된 바와 같이 클러스터의 영상 좌표 영역에 속한 M개의 점()으로 구성된 점군 정보를 이용하여 구성되며, 상기 x, y, z는 점군 정보에 따른 점의 좌표를 의미할 수 있다.As shown in the figure, the data matrix includes M points ( ), And x, y, and z may be coordinates of a point according to the point cloud information.
또한, 도 6(a)에 도시된 바와 같이 상기 평면 판단부(113)는 하기 수학식 2를 통해 상기 M개의 점(p)으로 구성된 상기 데이터 행렬()의 중심점()을 산출할 수 있다. 이때, 상기 p와 는 상호 동일할 수 있다.6 (a), the
이후, 도 6(b)에 도시된 바와 같이 상기 평면 판단부(113)는 특이값 분해를 위해 미리 설정된 특이값 분해 관련 좌표계의 원점을 상기 데이터 행렬()의 중심점()과 일치시키기 위하여 하기 수학식 3을 통해 상기 데이터 행렬()의 중심점()을 기준으로 상기 데이터 행렬을 구성하는 각 점()을 이동시켜 상기 원점과 중심점이 일치된 데이터 행렬()을 생성할 수 있다.6 (b), the
다시 말해, 상기 평면 판단부(113)는 상기 데이터 행렬()의 중심점()이 원점이 되도록 상기 중심점을 기준으로 상기 데이터 행렬()을 이동시켜 상기 원점과 중심점이 일치된 데이터 행렬()을 생성할 수 있다.In other words, the
이후, 도 6(c)에 도시된 바와 같이 상기 평면 판단부(113)는 상기 특정 클러스터에 대응되는 데이터 행렬의 중심점(중심 좌표)을 상기 특이값 분해 관련 좌표계의 원점으로 이동시켜 생성한 데이터 행렬()에 대하여 하기 수학식 4에 따른 미리 설정된 특이값 분해(SVD: Singular Value Decomposition)를 수행하여 상기 특정 클러스터에 대응되는 데이터 행렬의 랭크(rank)를 구할 수 있다.6 (c), the
이때, y=Ax라는 선형변환에서 A를 상기 수학식 4의 로 나타낼 수 있으며, 이에 따라 상기 S는 특이값 행렬로서 변환시 가감되는 이득을 대각행렬 형태로 나타낸 것이며, U는 출력측 특이벡터로서 특이값이 나오는 출력 y의 방향벡터를 나타낸 것이고, V는 입력측 특이벡터로서 특이값이 나오는 입력 x의 방향벡터를 나타낸 것이다.At this time, in the linear transformation y = Ax, Where S is a singular value matrix, and a gain in the diagonal matrix is represented by a diagonal matrix. U denotes a direction vector of an output y having a singular value as an output-side singular vector, and V denotes an input side singular vector And the direction vector of the input x having the singular value is shown.
일례로, 상기 평면 판단부(113)는 상기 특이값 분해를 통해 얻어지는 특이값의 수를 연산하고, 상기 특이값의 수를 통해 얻어진 데이터 행렬의 랭크(rank)를 판단하여 상기 특정 클러스터를 구성하는 점군에 속한 점들의 분포가 평면을 구성하는지 여부를 판단할 수 있다. For example, the
즉, 상기 데이터 행렬의 랭크는 데이터 분포의 차원을 나타내므로 1이라면 점군이 직선의 형태로 분포하고 있으며 랭크가 2이면 점군이 하나의 평면에 분포하고 있으며, 랭크가 3이면 3차원 공간에 분포하고 있음을 나타낸다.That is, since the rank of the data matrix indicates the dimension of the data distribution, the point cloud is distributed in the form of a straight line if the value is 1 and the point cloud is distributed in one plane if the rank is 2. If the rank is 3, .
이때, 데이터 행렬의 크기는 으로 최대 랭크는 3이며, 상기 평면 판단부(113)는 상기 데이터 행렬의 랭크를 0이 아닌(0을 제외한) 특이값의 수를 세어서 파악할 수 있다.At this time, the size of the data matrix is , The maximum rank is 3, and the
상술한 구성을 통해, 상기 평면 판단부(113)는 클러스터링된 서로 다른 복수의 클러스터 각각에 대응되는 복수의 서로 다른 점군 정보들에 대하여 하나의 평면에 분포하는지 여부를 판단할 수 있으며, 이를 통해 서로 다른 복수의 클러스터 각각에 대하여 상술한 바에 따라 평면 여부를 판단할 수 있다.Through the above-described configuration, the
또한, 상술한 구성을 통해 특정 클러스터에 속한 M개의 점으로 구성된 점군 정보가 하나의 평면에 분포하고 있다면 특정한 파라미터(예를 들면, 평면 방정식 및 꼭짓점 정보, 또는 면의 중심 좌표 및 변의 길이 등)로 표현할 수 있으므로 M이 클수록 점군 정보에 대한 압축효과가 커지게 된다.If the point group information composed of M points belonging to a specific cluster is distributed in one plane through the above-described configuration, the specific information (for example, the plane equation and the corner information, the center coordinates of the surface, The larger the M is, the larger the compression effect on the point cloud information becomes.
한편, 상술한 구성에서 작업 공간을 스캔하는 3차원 센서(30)의 정보는 잡음을 포함하고 있어 특이값이 정확하게 0이 되지 않을 수 있으므로, 상기 평면 판단부(113)는 미리 설정된 특정 임계치 이하의 값은 0이라고 판단할 수 있으며, 상기 임계치는 센서의 정확도 및 측정 잡음의 크기에 따라 상이하게 설정될 수 있다.Meanwhile, in the above-described configuration, the information of the three-
또한, 클러스터 내에 공간상 불연속되는 영역이 있을 때 점들의 분포가 한 평면에 분포하지 않더라도 랭크가 2로 나타나는 경우가 있어 점들이 한 평면에 적절하게 분포되는지 검사할 필요가 있다. 랭크가 2로 판별된 클러스터는 첫 번째 특이값()과 두 번째 특이값()의 비율을 확인함으로써 한 평면에 분포하는지 판별할 수 있다.Also, when there is a spatially discontinuous region in the cluster, the rank may be 2 even though the distribution of the points is not distributed in one plane, and it is necessary to check whether the points are appropriately distributed in one plane. The cluster with rank 2 is identified by the first singular value ( ) And the second singular value ( ), It is possible to discriminate whether or not they are distributed in one plane.
따라서, 상기 평면 판단부(113)는 하기 수학식 5와 같은 판단 기준으로 상기 특정 클러스터에 대응되는 데이터 행렬에 대한 특이값 분해를 통해 얻어진 파라미터가 하기 수학식 5를 만족하는지 여부에 따라 상기 특정 클러스터 내 점군의 분포가 평면으로 구성되는지 판단할 수 있으며, 이를 통해 상기 특정 클러스터의 평면 여부를 판단할 수 있다.Therefore, the
여기서, 수학식 4와 수학식 5의 , , 는 크기 순서대로 표현된 데이터 행렬의 특이값이며, ε는 랭크 판별을 위한 임계치이고, μ는 평면의 가로와 세로의 비율에 대한 임계치를 각각 나타낸다.In Equation (4) and Equation (5) , , Is a singular value of a data matrix expressed in magnitude order,? Is a threshold value for rank discrimination, and? Represents a threshold value for the ratio of the horizontal to vertical length of the plane, respectively.
상술한 구성을 통해, 상기 평면 판단부(113)는 서로 다른 복수의 클러스터 각각에 대하여 평면 여부를 판단할 수 있다.Through the above-described configuration, the
한편, 상기 평면 판단부(113)는 상기 특정 클러스터가 평면이 아닌 것으로 판명된 경우 미리 설정된 비율로 상기 특정 클러스터를 복수의 서로 다른 세부 클러스터로 분할할 수 있으며, 상기 각 세부 클러스터에 대하여 상술한 수학식 1 내지 5를 포함하는 상기 클러스터의 평면 여부 판단을 위한 과정을 적용하고, 평면이 아닌 세부 클러스터를 상기 평면이 아닌 클러스터와 마찬가지로 분할하는 상술한 과정을 적용할 수 있다.If the specific cluster is found not to be planar, the
이때, 상기 평면 판단부(113)는 특정 클러스터에서 서로 다른 복수의 세부 클러스터로 분할시 상기 특정 클러스터에서 분할되는 복수의 서로 다른 세부 클러스터가 상호 동일 크기를 가지도록 상기 특정 클러스터를 분할할 수 있다.At this time, the
또한, 상기 평면 판단부(113)는 평면이 아닌 것으로 판단된 특정 클러스터에 클러스터 정보를 상기 클러스터링부(112)로 제공하고, 상기 클러스터링부(112)에서 평면이 아닌 상기 특정 클러스터를 상술한 바와 같이 세부 클러스터로 분할하여 각 세부 클러스터에 대한 정보를 다시 평면 판단부(113)로 제공할 수도 있으며, 상기 클러스터링부(112)와 실시간 연동하여 상기 평면이 아닌 클러스터를 복수의 세부 클러스터로 분할할 수도 있다.The
더하여, 상기 평면 판단부(113)는 상기 세부 클러스터에 대하여 상술한 구성을 적용하여 평면 여부를 판단할 수 있으며, 상기 세부 클러스터가 평면이 아닌 경우 다시 해당 세부 클러스터를 미리 설정된 비율로 분할할 수 있으며, 상기 세부 클러스터에서 분할된 클러스터에 대해 평면 여부를 판단하고 평면이 아닌 경우 다시 분할된 클러스터를 재차 분할할 수 있다.In addition, the
즉, 상기 평면 판단부(113)는 평면이 나타날 때까지 클러스터를 반복하여 분할할 수 있다.That is, the
이에 따라, 상기 평면 판단부(113)는 특정 클러스터에 대하여 평면이 나타날 때까지 분할을 반복할 수 있으며, 이를 통해 평면만으로 구성된 복수의 서로 다른 클러스터(분할된 클러스터 포함)를 생성할 수 있다.Accordingly, the
이후, 상기 평면 판단부(113)는 평면으로 구성된 각 클러스트(분할된 클러스터 포함)에 대한 클러스터 정보를 상기 모델링부(114)로 제공할 수 있다.Then, the
이때, 상기 평면 판단부(113)는 클러스터의 최소 크기가 미리 설정될 수 있으며, 분할을 통해 생성된 세부 클러스터(또는 분할된 클러스터)가 상기 최소 크기에 해당되는 경우 평면 여부에 대한 판단 없이 최소 크기에 해당되는 클러스터에 대한 정보를 상기 모델링부(114)로 제공할 수도 있다.In this case, the minimum size of the cluster may be set in advance by the
한편, 상기 모델링부(114)는 평면으로 판단된 클러스터(분할된 클러스터 포함)에 대한 상기 클러스터 정보에 포함된 점군 정보를 기초로 상기 점군 정보를 육면체 또는 다각형으로 표시(모델링)할 수 있다.Meanwhile, the
일례로, 도 7에 도시된 바와 같이 상기 모델링부(114)는 미리 설정된 OBB(Oriented Bounding Box) 알고리즘을 기반으로 특정 클러스터에 대응되는 상기 점군 정보를 육면체로 모델링할 수 있다.For example, as shown in FIG. 7, the
상기 OBB는 물체의 표현을 육면체로 하며, OBB를 기반으로 생성된 서로 다른 객체 간 충돌을 빠르게 검출할 수 있어 게임과 같은 실시간 처리에 많이 활용되는 방법이다.The OBB uses a representation of an object as a hexahedron and can quickly detect collision between different objects generated on the basis of the OBB, thereby being widely used for real-time processing such as a game.
즉, 상기 모델링부(114)는 특정 클러스터에 대응되는 데이터 행렬의 특이값 분해를 통해 얻은 정보를 이용하여 육면체의 중심 위치, 넓이, 높이, 깊이에 대한 정보, 그리고 그(육면체의 넓이, 높이, 깊이)에 대한 방향 벡터로 표현된 OBB 정보를 생성할 수 있으며, 이를 통해 로봇의 작업 환경을 구성하는 작업 공간에 배치된 특정 장애물이나 작업공간의 구조를 구성하는 평면을 상기 OBB 정보를 기초로 입체적으로 구성할 수 있다.That is, the
이때, 상기 육면체의 중심 위치는 상기 수학식 2의 데이터 행렬의 중심점 정보()를 이용하여 산출되며, 육면체의 넓이, 높이, 깊이는 각각 특이값 , , 가 된다. At this time, the center position of the hexahedron is the center point information of the data matrix of Equation (2) ), And the width, height, and depth of the hexahedron are respectively calculated by using a specific value , , .
또한, 넓이, 높이, 깊이에 대한 방향 벡터는 특이값 분해를 통해 얻은 입력벡터 행렬 V의 열 벡터(column vector)가 되며, V = [ ]로 나타낼 수 있다.In addition, the direction vector for the width, height, and depth is a column vector of the input vector matrix V obtained by singular value decomposition, and V = [ ].
한편, 도 8에 도시된 바와 같이 상기 모델링부(114)는 평면을 구성하는 상기 클러스터 정보에 따른 점군정보를 다각형으로 모델링할 수도 있다.Meanwhile, as shown in FIG. 8, the
일례로, 상기 모델링부(114)는 삼각형과 사각형 중 어느 하나를 기반으로 다각형으로 모델링할 수 있는데, 삼각형으로 모델링하는 방법은 상기 평면으로 판단된 클러스터에 속한 점들 중 영상좌표에서의 모서리 정보에 해당하는 점을 삼각형의 꼭짓점으로 저장할 수 있다.For example, the
또한, 상기 모델링부(114)는 사각형으로 모델링하기 위해 클러스터에서 모서리 점의 3차원 정보를 평면에 다시 투영하여 이 정보를 사각형의 꼭짓점으로 저장할 수 있다.In addition, the
이때, 모서리의 점을 평면으로 다시 투영하는 이유는 점군 정보가 잡음을 포함하고 있어서 평면에 속하는 점군 정보가 일반적으로 추정된 평면에서 랜덤하게 떨어져서 분포하고 있을 수 있으며, 이로 인해 모서리의 점 관련 정보를 그대로 이용하면 꼭지점에 잡음이 같이 반영되어서 이를 제거하고자 평면에 다시 한번 투영함으로써 정확한 평면 위의 점으로 변환하여 모서리 정보로 활용하기 위함이다.In this case, the point of the corner is projected back to the plane because the point cloud information includes noise, so that the point cloud information belonging to the plane may be distributed at random in the estimated plane, and the point related information of the corner If it is used as it is, the noise is reflected in the vertex so that it is projected again on the plane in order to remove it, so that it is converted into a point on the exact plane and utilized as edge information.
이를 위하여, 상기 모델링부(114)는 하기 수학식 6과 같이 먼저 특이값 분해를 통해 얻은 입력 벡터의 방향을 나타내는 상기 V 행렬에서 세 번째 특이값에 해당되는 V의 열 벡터(column vector)와 클러스터의 중심 좌표(중심점)를 통해 평면방정식을 구한다.In order to do this, the
다음, 상기 모델링부(114)는 하기 수학식 7을 통해 클러스터의 모서리 점의 x, y 정보를 평면방정식에 넣어 z를 구하여 평면에 투영된 점에 대한 x, y, z를 점의 좌표로서 구하여 사각형의 꼭짓점 정보로 저장할 수 있다.Next, the
상술한 구성을 통해, 상기 모델링부(114)는 도 9에 도시된 바와 같이 로봇의 작업 환경을 구성하는 작업 공간 및 장애물에 대한 모델링을 통해 작업 환경 모델에 대한 모델 정보를 생성할 수 있으며, 도 9(a)는 OBB를 통해 생성한 작업 환경 모델에 대한 예시도이며, 도 9(b)는 다각형을 기반으로 모델링한 작업 환경 모델에 대한 예시도이다.
9, the
한편, 상기 로봇 동작 모델링부(120)의 상세 구성을 이하 도면을 통해 설명한다.The detailed configuration of the robot
우선, 도 1에 도시된 바와 같이, 상기 로봇 동작 모델링부(120)는 샘플링부(121) 및 트리 생성부(122)를 포함할 수 있다.First, as shown in FIG. 1, the robot
상기 로봇 동작 모델링부(120)는 확률적 로드맵 방법(PRM, probabilistic roadmap method)을 기초로 로봇의 개별 자세를 좌표로 표시 가능한 좌표계로 구성된 배위 공간(configuration space)에서 로봇이 취할 수 있는 서로 다른 복수의 자세 각각을 샘플(sample)로서 선택하여 선택된 샘플을 이용한 트리 구조를 형성함으로써, 로봇의 현재 자세로부터 사용자의 교시(敎示)에 따른 로봇의 작업 동작에 따라 최종적으로 로봇이 취하는 목표 자세로 로봇이 움직이는 동작 경로에 대한 최단(최적) 경로를 자동 산출하여 시뮬레이션(simulation)할 수 있도록 지원하는 동시에, 샘플의 분포를 최적화하여 가장 적은 수의 샘플만으로 배위 공간을 채워(커버(cover)하여) 최단 경로의 연산에 대한 연산 속도를 증가시킴으로써 사용자의 교시에 따른 로봇의 동작 설정에 필요한 시간을 단축하여 교시의 실시간성 및 해당 교시에 따른 로봇의 반응성을 향상시킬 수 있도록 지원한다.The robot
이때, 상기 확률적 로드맵 방법은 로봇의 현재 자세와 목표 자세 사이에서 충돌을 회피하면서 로봇의 동작 경로를 설정하기 위한 알고리즘으로서, 로봇에 구성된 서로 다른 복수의 구동축 각각이 좌표 축으로 설정되며 구동 축의 수에 따라 차원수가 결정되는 n 차원의 그래프인 배위 공간을 구성하고, 상기 배위 공간에서 로봇이 취할 수 있는 복수의 서로 다른 자세 각각을 샘플(또는 상기 배위공간 상의 좌표)로서 상기 배위 공간에 설정하여 충돌을 회피하면서 상기 현재 자세에 대응되는 샘플로부터 상기 목표 자세에 대응되는 샘플로 이동시키기 위한 로봇의 최적 동작 경로를 산출하는 널리 알려진 알고리즘이다.At this time, the probabilistic roadmap method is an algorithm for setting an operation path of a robot while avoiding a collision between a current posture and a target posture of the robot, wherein each of the plurality of different drive axes configured in the robot is set as a coordinate axis, (Or co-ordinates on the coordinate space) in the coordinate space, and sets a plurality of different postures that the robot can take in the coordinate space in the coordinate space as the sample (or coordinate on the coordinate space) And moving the robot from the sample corresponding to the current attitude to the sample corresponding to the target attitude.
상기 샘플링부(121)는 확률적 로드맵 방법을 이용하여 상기 로봇에 대응되어 미리 설정된 그래프 정보인 배위 공간을 샘플링(sampling)하여 로봇이 취할 수 있는 서로 다른 복수의 자세 각각에 대응되는 복수의 서로 다른 샘플을 임의로(랜덤(random)하게) 선택할 수 있다.The
이때, 도 10(a)에 도시된 바와 같이 기존에는 확률적 로드맵 방법에 기초하여 배위 공간 상에서 샘플 선택시 유니폼(uniform)하게 배위 공간을 샘플링하여, 배위 공간에서 선택된 샘플의 분포가 균일하지 않고 특정 부분에 집중되어 선택되는 문제가 있었다.In this case, as shown in FIG. 10 (a), a coordinate space is uniformly sampled when a sample is selected on a coordinate space based on a probabilistic roadmap method, so that distribution of samples selected in the coordinate space is not uniform There was a problem in that it was concentrated on the part.
이에 따라, 배위 공간을 커버하기 위해(채우기 위해) 샘플의 수를 불필요하게 증가시키게 되며, 이로 인해 로봇의 동작 경로 산출에 필요한 연산 시간이 증가하게 된다.This unnecessarily increases the number of samples to cover (fill) the coordinate space, thereby increasing the computation time required to calculate the motion path of the robot.
이를 해결하기 위해, 상기 샘플링부(121)는 포아송(Poisson) 샘플링 방식 중 샘플 영역을 고정 디스크 형상으로 정의하는 포아송 디스크(Poisson disk) 샘플링 방식을 로봇의 경로 산출을 위한 샘플 결정 방식에 적용하여 배위 공간의 샘플 밀도 균일성을 높임으로써 최소한의 샘플 수만으로 최적 경로를 산출할 수 있도록 지원할 수 있다.In order to solve this problem, the
일례로, 도 11에 도시된 바와 상기 샘플링부(121)는 미리 설정된 포아송 디스크 샘플링 방식에 따라 미리 설정된 그래프 정보인 배위 공간에서 랜덤하게 샘플을 선택할 수 있으며, 상기 선택된 샘플은 일정한 영역이나 부피를 가지도록 디스크 반경을 가지는 구체(hard sphere)로 간주(설정)될 수 있다.For example, as shown in FIG. 11, the
이에 따라, 상기 샘플링부(121)는 도 10(b)에 도시된 바와 같이 인접한 서로 다른 샘플 사이의 간격이 상기 디스크 반경에 의해 일정 이상을 유지한 상태로 샘플을 선택할 수 있으며, 이를 통해 배위 공간에서 샘플이 특정 영역에 밀집되지 않고 균일하게 분포하도록 복수의 샘플을 선택할 수 있는 동시에 배위 공간을 커버하기 위해 필요한 샘플의 수를 줄일 수 있어 추후 동작 경로 연산에 소요되는 시간을 기존에 비해 크게 단축시킬 수 있다.10 (b), the
이때, 상기 샘플링부(121)는 배위 공간의 크기에 따라 상기 샘플의 수 및 포아송 디스크 방식에 따른 상기 샘플의 디스크 반경 중 어느 하나를 결정하고, 이를 기반으로 상기 배위 공간을 채우기(커버하기) 위한 다른 하나를 결정할 수 있다. 또한, 상기 샘플의 수 및 디스크 반경 중 적어도 하나가 상기 샘플링부(121)에 미리 설정될 수도 있다.At this time, the
일례로, 상기 샘플링부(121)는 상기 샘플의 수를 결정하고, 결정된 샘플의 수에 따라 상기 배위 공간을 채우기 위해 필요한 상기 디스크 반경을 산출할 수 있다.In one example, the
이때, 상기 샘플링부(121)는 하기 수학식 8을 통해 상기 배위 공간에서 선택되는 샘플의 수를 결정할 수 있다.At this time, the
이때, N은 샘플 노드수(샘플의 수), 는 최적 구의 패킹 밀도(optimal sphere packing density), 는 디스크 반경(poisson disk sampling 반경), n은 상기 배위공간의 차원, Γ(x)는 감마함수, vol(Q)는 상기 배위 공간의 부피일 수 있다.At this time, N is the number of sample nodes (the number of samples) Is the optimal sphere packing density, (X) is a gamma function, and vol (Q) is a volume of the coordinate space.
또한, 상기 샘플링부(121)는 하기 수학식 9를 통해 포아송 디스크 방식을 통해 선택된 샘플의 디스크 반경을 결정할 수 있다.Also, the
이때, N은 샘플 노드수(샘플의 수), 는 최적 구의 패킹 밀도(optimal sphere packing density), 는 디스크 반경(poisson disk sampling 반경), n은 상기 배위공간의 차원, Γ(x)는 감마함수, vol(Q)는 상기 배위 공간의 부피일 수 있다.At this time, N is the number of sample nodes (the number of samples) Is the optimal sphere packing density, (X) is a gamma function, and vol (Q) is a volume of the coordinate space.
이에 따라, 상기 샘플링부(121)는 상술한 샘플링 과정을 반복하여 배위 공간 전체에 대하여 복수의 샘플을 선택할 수 있다.Accordingly, the
상술한 바와 같이, 상기 샘플링부(121)는 확률적 로드맵 방법에 따른 샘플링 과정에서 포아송 샘플링 알고리즘을 적용하여 기존의 유니폼 방식에 따른 샘플링보다 적은 수의 샘플로 배위 공간 전체를 커버할 수 있으며, 이를 통해 기존보다 더욱 최적화된 로봇의 동작 경로를 찾을 수 있도록 지원할 수 있다.As described above, the
한편, 도 12(a)에 도시된 바와 같이 상기 트리 생성부(122)는 상기 샘플링부(121)와 연동하여 상기 배위 공간에서 선택된 복수의 서로 다른 샘플 중 인접한 서로 다른 샘플 사이를 상기 확률적 로드맵 방법에 따라 상호 연결하여 트리(tree) 구조를 형성할 수 있다.12 (a), the
이때, 상술한 바와 같이, 상기 샘플링부는 상기 상호작용 검출부(132)로부터 상기 충돌 자세 정보를 수신하고, 상기 배위 공간에 작업 환경에 배치된 장애물이나 로봇의 구동 구조에 따라 상기 로봇이 취할 수 없는 자세(일례로, 장애물과의 충돌이 발생하는 자세 또는 로봇의 내부 구조에 따른 로봇 자체의 충돌이 발생하는 자세)에 대한 제한 영역 또는 제한 공간을 설정할 수 있다.At this time, as described above, the sampling unit receives the collision attitude information from the
이에 따라, 상기 샘플링부(121)는 상기 배위 공간 중 상기 제한 영역 또는 제한 공간을 제외한 나머지를 대상으로 상술한 바와 같이 샘플링하여 복수의 서로 다른 샘플을 임의 선택할 수 있다. 또한, 상기 트리 생성부(122)는 상기 확률적 로드맵 방법에 따라 상기 샘플링부(121)를 통해 선택된 샘플을 상호 연결하여 트리를 형성할 수 있다.Accordingly, the
한편, 상기 제어부(130)에 구성된 상호작용 검출부(132)는 도 12(a)에 도시된 바와 같이 상기 샘플링부(121) 및 상기 트리 생성부(122) 중 적어도 하나와 연동하여 상기 배위 공간에 분포된 복수의 샘플 중 상기 교시 정보에 따른 현재 자세(A) 및 목표 자세(B)에 각각 대응되는 서로 다른 복수의 샘플을 식별할 수 있다.12 (a), the
이때, 상기 교시정보는 상기 로봇의 현재 자세와 목표 자세 각각에 대한 자세정보를 포함할 수 있으며, 상기 로봇의 현재 자세는 로봇의 동작이 시작되는 시작 자세를 의미하고, 상기 로봇의 목표 자세는 상기 시작 자세로부터 동작하여 로봇의 동작이 종료되는 자세를 의미할 수 있다.Here, the teaching information may include attitude information about the current posture and the target posture of the robot, the current posture of the robot means a start posture at which the robot starts to move, It may mean an attitude that operates from the starting posture and ends the motion of the robot.
또한, 상기 상호작용 검출부(132)는 상기 배위 공간에서 트리 구조로 연결된 복수의 샘플을 기초로 상기 트리 구조를 이용하여 상기 현재 자세(A) 및 목표 자세(B) 각각에 대응되는 서로 다른 복수의 샘플 사이의 최단 경로(최단 동작 경로 또는 최적 동작 경로)를 산출할 수 있다.Also, the
상술한 구성에 따라, 본 발명은 도 12(a)와 같이 사용자의 교시에 따라 로봇이 현재 자세(A)로부터 목표 자세(B)로 이동하기 위한 최단 동작 경로를 제공할 수 있으며, 이를 통해 도 12(b)와 같이 기존의 샘플링 방식에 따라 산출되는 비효율적인 동작 경로를 배제하여 로봇의 동작 효율을 크게 향상시킬 수 있을 뿐만 아니라 최단 동작 경로의 산출에 필요한 샘플의 수를 최소화하여 최단 동작 경로의 산출에 요구되는 부하와 연산 시간을 크게 단축시킬 수 있다.According to the above-described configuration, the present invention can provide a shortest path for moving the robot from the current posture A to the target posture B according to the user's teaching as shown in Fig. 12 (a) 12 (b), it is possible to greatly improve the operation efficiency of the robot by excluding the inefficient operation path calculated according to the conventional sampling method, and to minimize the number of samples required for calculation of the shortest operation path, The load required for calculation and the calculation time can be greatly shortened.
이를 통해, 본 발명은 로봇의 효율적인 동작 경로에 산출시 요구되는 부하와 연산 시간을 감소시켜, 수시로 변화하는 작업 현장에 대해서도 용이하게 사용자의 교시에 즉각적으로 반응하여 로봇의 동작을 실시간으로 수정하거나 설정할 수 있도록 지원함으로써, 로봇의 동작 설정에 대한 실시간성 및 직접 반응성을 효과적으로 개선시킬 수 있다.
Accordingly, it is an object of the present invention to reduce the load and computation time required for calculating an efficient operation path of the robot, and to promptly change the operation of the robot in real time, So that the real-time performance and the direct reactivity to the robot operation setting can be effectively improved.
도 13은 본 발명의 실시예에 따른 로봇의 교시를 위한 사용자의 가상현실 인터페이스 장치(20)와 연동하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치(100)의 가상 현실 기반 로봇 교시를 위한 시뮬레이션 방법에 대한 순서도이다.13 is a simulation method for teaching a virtual reality-based robot of a
우선, 상기 시뮬레이션 장치(100)는 3차원 센서(30)를 통해 작업 환경을 스캔하여 생성된 점군 정보를 수신하고, 상기 점군 정보에 따른 깊이 정보를 기반으로 얻어진 깊이 이미지의 좌표를 기준으로 클러스터링하여 평면 클러스터를 다각형이나 육면체로 모델링하여 용량이 축소된 작업 환경에 대한 환경 모델 정보를 생성할 수 있다(S1).First, the
또한, 상기 시뮬레이션 장치(100)는 상기 로봇의 개별 자세가 좌표로 설정된 미리 설정된 배위 공간에서 상기 환경 모델 정보 및 로봇 모델 정보를 기초로 충돌이 발생하는 로봇의 자세를 제외한 나머지를 대상으로 포아송 디스크(Poisson disk) 샘플링 방식으로 임의 샘플로 채워 상기 로봇의 동작 경로 산출을 위한 트리 구조를 형성할 수 있다(S2).In addition, the
다음, 상기 시뮬레이션 장치(100)는 상기 환경 모델 정보 및 상기 로봇에 대한 미리 설정된 로봇 모델 정보를 기초로 가상 현실 인터페이스에 대한 영상을 생성하여 상기 가상현실 인터페이스 장치(20)를 통해 제공하며(S3), 상기 가상현실 인터페이스 장치(20)로부터 로봇 교시를 위한 사용자의 현재 자세와 목표 자세를 포함하는 교시정보를 수신할 수 있다(S4).Next, the
이후, 상기 시뮬레이션 장치(100)는 상기 교시정보 및 상기 트리 구조를 기초로 상기 로봇을 상기 현재 자세로부터 목표자세로 이동시키기 위한 최단 경로를 생성하고, 상기 최단 경로를 상기 로봇 모델 정보에 반영하여 생성한 영상을 제공할 수 있다(S5).
Thereafter, the
본 명세서에 기술된 다양한 장치 및 구성부는 하드웨어 회로(예를 들어, CMOS 기반 로직 회로), 펌웨어, 소프트웨어 또는 이들의 조합에 의해 구현될 수 있다. 예를 들어, 다양한 전기적 구조의 형태로 트랜지스터, 로직게이트 및 전자회로를 활용하여 구현될 수 있다.The various devices and components described herein may be implemented by hardware circuitry (e.g., CMOS-based logic circuitry), firmware, software, or a combination thereof. For example, it can be implemented utilizing transistors, logic gates, and electronic circuits in the form of various electrical structures.
전술된 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or essential characteristics thereof. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
100: 시뮬레이션 장치 110: 작업 환경 모델링부
111: 입력부 112: 클러스터링부
113: 평면 판단부 114: 모델링부
120: 로봇 동작 모델링부 121: 샘플링부
122: 트리 생성부 130: 제어부
131: 동작 인식부 132: 상호작용 검출부
133: 영상 생성부100: simulation apparatus 110: work environment modeling unit
111: input unit 112: clustering unit
113: plane determination unit 114: modeling unit
120: Robot motion modeling unit 121: Sampling unit
122: tree generating unit 130:
131: motion recognition unit 132: interaction detection unit
133:
Claims (10)
3차원 센서를 통해 작업 환경을 스캔하여 생성된 점군 정보를 수신하고, 상기 점군 정보에 따른 깊이 정보를 기반으로 얻어진 깊이 이미지의 좌표를 기준으로 상기 점군 정보를 블럭 형태로 클러스터링하여 평면 클러스터를 다각형이나 육면체로 모델링하여 용량이 축소된 작업 환경에 대한 환경 모델 정보를 생성하는 작업 환경 모델링부;
상기 로봇의 개별 자세가 좌표로 설정된 미리 설정된 배위 공간을 포아송 디스크(Poisson disk) 샘플링 방식으로 임의 샘플로 채워 상기 로봇의 동작 경로 산출을 위한 트리 구조를 형성하는 로봇 동작 모델링부; 및
상기 환경 모델 정보 및 상기 로봇에 대한 미리 설정된 로봇 모델 정보를 기초로 가상 현실 인터페이스에 대한 영상을 생성하여 상기 가상현실 인터페이스 장치를 통해 제공하며, 상기 가상현실 인터페이스 장치로부터 로봇 교시를 위한 사용자의 현재 자세와 목표 자세를 포함하는 교시정보를 수신하고, 상기 로봇 동작 모델링부 및 상기 작업 환경 모델링부와 연동하여 상기 환경 모델 정보 및 로봇 모델 정보를 기초로 충돌이 발생하는 로봇의 자세가 제외된 상기 트리 구조를 형성하며, 상기 트리 구조를 기초로 상기 로봇을 상기 현재 자세로부터 목표자세로 이동시키기 위한 최적 경로를 산출한 후 상기 최적 경로를 상기 로봇 모델 정보에 반영하여 생성한 영상을 제공하는 제어부
를 포함하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
1. A simulation apparatus for teaching a virtual reality-based robot interlocked with a user's virtual reality interface apparatus for teaching a robot,
The point cloud information is clustered on the basis of the coordinates of the depth image obtained on the basis of the depth information according to the point cloud information to form a plane cluster as a polygon A work environment modeling unit for modeling the work environment model to generate environment model information for a work environment reduced in capacity;
A robot operation modeling unit that forms a tree structure for calculating the operation path of the robot by filling a preset coordinate space in which the individual postures of the robot are set in coordinates with arbitrary samples by a Poisson disk sampling method; And
A virtual reality interface unit for generating an image of a virtual reality interface based on the environment model information and preset robot model information about the robot and providing the virtual reality interface through the virtual reality interface unit, And a robot controller for receiving the teaching information including the robot model information and the robot model information in cooperation with the robot modeling unit and the working environment modeling unit, And a controller for calculating an optimal path for moving the robot from the current posture to the target posture based on the tree structure and reflecting the optimal path to the robot model information to provide a generated image,
Based virtual reality robot.
상기 작업 환경 모델링부는 상기 클러스터별로 평면 여부를 확인하며, 평면이 아닌 클러스터를 평면이 확인될 때까지 세분화하는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method according to claim 1,
Wherein the work environment modeling unit verifies whether each of the clusters is planar, and classifies clusters that are not planar, until a plane is confirmed.
상기 작업 환경 모델링부는
로봇의 작업 환경을 스캔하여 생성된 상기 점군 정보를 수신하는 입력부;
상기 점군 정보에 따른 깊이 정보를 기반으로 얻어지는 깊이 이미지의 좌표를 기준으로 상기 점군 정보를 블럭 형태로 클러스터링하는 클러스터링부;
각 클러스터의 영상 좌표 영역에 속하는 점군의 데이터 행렬을 구성하고 해당 데이터 행렬의 랭크를 통해 평면 분포 여부를 확인하여 클러스터의 평면 여부를 판단하고 평면이 아닌 경우 클러스터를 세분화하여 재확인하는 평면 판단부; 및
평면으로 판단된 클러스터를 평면 다각형이나 육면체로 모델링하여 데이터량을 줄이는 모델링부
를 포함하는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method according to claim 1,
The work environment modeling unit
An input unit for receiving the point cloud information generated by scanning the working environment of the robot;
A clustering unit for clustering the point cloud information in a block form based on coordinates of a depth image obtained based on depth information according to the point cloud information;
A planar determination unit configured to construct a data matrix of a point group belonging to an image coordinate region of each cluster, determine whether the planar region is a plane through the rank of the data matrix, determine whether the planar region is planar, And
A modeling unit for modeling the clusters determined by the plane as a plane polygon or a hexahedron to reduce the amount of data
Wherein the virtual reality-based robot teaching system comprises:
상기 제어부는 상기 최적 경로 생성시 상기 로봇의 개별 자세가 매핑되며 상기 로봇을 모델링한 미리 설정된 로봇 모델 정보를 기초로 상기 교시 정보에 따른 사용자의 동작과 상호 작용하도록 상기 최적 경로에 따른 상기 로봇 모델 정보에 따른 로봇 모델의 동작을 영상으로 생성하여 상기 가상현실 인터페이스 장치로 전송하는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method according to claim 1,
Wherein the control unit maps the individual posture of the robot at the time of generating the optimal path and generates the robot model information corresponding to the optimal path so as to interact with the user's operation based on the preset robot model information modeled by the robot And transmits the generated motion image to the virtual reality interface device.
상기 제어부는 상기 환경 모델 정보 및 로봇 모델 정보를 기초로 로봇의 개별 자세에 대하여 로봇과 상기 작업 환경 사이의 충돌이나 로봇의 자체적인 충돌 여부를 검출하고, 충돌이 검출되는 충돌 자세를 취합하여 상기 배위 공간에 상기 충돌 자세에 대응되는 제한 영역 또는 제한 공간을 설정하며,
상기 로봇 동작 모델링부는 상기 배위 공간에서 상기 제한 영역 또는 제한 공간을 제외한 나머지를 대상으로 상기 임의 샘플로 채우는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method according to claim 1,
The control unit detects collision between the robot and the working environment or whether the robot itself collides with the individual posture of the robot based on the environment model information and the robot model information, collects the collision posture in which the collision is detected, Sets a restricted area or a limited space corresponding to the collision posture in the space,
Wherein the robot operation modeling unit fills the arbitrary sample with respect to the rest space excluding the limited area or the limited space in the coordinate space.
상기 제어부는 상기 최적 경로 연산시 미리 설정된 확률적 로드맵 방법(PRM, probabilistic roadmap method)을 기초로 상기 최적 경로를 연산하는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method according to claim 1,
Wherein the controller calculates the optimal path based on a preset probabilistic roadmap method (PRM) in the optimal path calculation.
상기 로봇 동작 모델링부는
상기 배위 공간에서 임의로 선택되는 상기 임의 샘플을 상기 포아송 디스크(Poisson disk) 샘플링 방식으로 선택하며, 샘플링 과정을 반복하여 상기 배위 공간 전체에 대한 샘플을 선택하는 샘플링부; 및
상기 선택된 샘플을 기준으로 트리 구조를 형성하는 트리 생성부
를 포함하는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method according to claim 1,
The robot motion modeling unit
A sampling unit for selecting the arbitrary sample arbitrarily selected in the coordinate space by the Poisson disk sampling method and repeating the sampling process to select a sample for the entire coordinate space; And
A tree generating unit for forming a tree structure based on the selected sample,
Wherein the virtual reality-based robot teaching system comprises:
상기 제어부는 사용자의 교시에 대응되는 상기 최적 경로를 기초로 로봇의 동작을 제어하기 위한 제어 정보를 생성하는 것을 특징으로 하는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method according to claim 1,
Wherein the control unit generates control information for controlling the operation of the robot on the basis of the optimum path corresponding to the user's teaching.
상기 로봇과의 연결을 위한 통신부를 더 포함하며,
상기 제어부는 상기 제어 정보를 상기 통신부를 통해 상기 로봇에 전송하여 상기 제어 정보에 대응되는 상기 최적 경로에 따른 작업 동작이 상기 로봇에 설정되도록 하는 것을 특징으로 하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치.
The method of claim 8,
And a communication unit for connection with the robot,
Wherein the control unit transmits the control information to the robot through the communication unit so that a work operation according to the optimum path corresponding to the control information is set in the robot.
3차원 센서를 통해 작업 환경을 스캔하여 생성된 점군 정보를 수신하고, 상기 점군 정보에 따른 깊이 정보를 기반으로 얻어진 깊이 이미지의 좌표를 기준으로 상기 점군 정보를 블럭 형태로 클러스터링하여 평면 클러스터를 다각형이나 육면체로 모델링하여 용량이 축소된 작업 환경에 대한 환경 모델 정보를 생성하는 단계;
상기 로봇의 개별 자세가 좌표로 설정된 미리 설정된 배위 공간에서 상기 환경 모델 정보 및 로봇 모델 정보를 기초로 충돌이 발생하는 로봇의 자세가 제외한 나머지를 대상으로 포아송 디스크(Poisson disk) 샘플링 방식으로 임의 샘플로 채워 상기 로봇의 동작 경로 산출을 위한 트리 구조를 형성하는 단계;
상기 환경 모델 정보 및 상기 로봇에 대한 미리 설정된 로봇 모델 정보를 기초로 가상 현실 인터페이스에 대한 영상을 생성하여 상기 가상현실 인터페이스 장치를 통해 제공하며, 상기 가상현실 인터페이스 장치로부터 로봇 교시를 위한 사용자의 현재 자세와 목표 자세를 포함하는 교시정보를 수신하는 단계; 및
상기 교시정보 및 상기 트리 구조를 기초로 상기 로봇을 상기 현재 자세로부터 목표자세로 이동시키기 위한 최적 경로를 생성하고, 상기 최적 경로를 상기 로봇 모델 정보에 반영하여 생성한 영상을 제공하는 단계
를 포함하는 가상 현실 기반 로봇 교시를 위한 시뮬레이션 방법.1. A simulation method for teaching a virtual reality-based robot of a simulation apparatus interlocked with a user's virtual reality interface apparatus for teaching a robot,
The point cloud information is clustered on the basis of the coordinates of the depth image obtained on the basis of the depth information according to the point cloud information to form a plane cluster as a polygon Generating environmental model information for a work environment having a reduced capacity by modeling the work environment with a hexahedron;
A Poisson disk sampling method is used to randomly sample the rest of the robot except for the posture of the robot where collision occurs based on the environment model information and the robot model information in a predetermined coordinate space in which the individual posture of the robot is set to coordinates Forming a tree structure for calculating an operation path of the robot;
A virtual reality interface unit for generating an image of a virtual reality interface based on the environment model information and preset robot model information about the robot and providing the virtual reality interface through the virtual reality interface unit, And a target posture; And
Generating an optimal path for moving the robot from the current posture to a target posture based on the teaching information and the tree structure, and providing an image generated by reflecting the optimal path to the robot model information
A method for simulating virtual reality based robot teaching.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160179358A KR101850410B1 (en) | 2016-12-26 | 2016-12-26 | Simulation apparatus and method for teaching robot based on virtual reality |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160179358A KR101850410B1 (en) | 2016-12-26 | 2016-12-26 | Simulation apparatus and method for teaching robot based on virtual reality |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101850410B1 true KR101850410B1 (en) | 2018-04-20 |
Family
ID=62088144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160179358A KR101850410B1 (en) | 2016-12-26 | 2016-12-26 | Simulation apparatus and method for teaching robot based on virtual reality |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101850410B1 (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108573631A (en) * | 2018-06-26 | 2018-09-25 | 江苏汇博机器人技术股份有限公司 | Robot Virtual practical operation platform |
CN109800864A (en) * | 2019-01-18 | 2019-05-24 | 中山大学 | A kind of robot Active Learning Method based on image input |
JP2019188531A (en) * | 2018-04-25 | 2019-10-31 | ファナック株式会社 | Simulation device of robot |
CN110434877A (en) * | 2019-08-14 | 2019-11-12 | 纳博特南京科技有限公司 | One kind being based on augmented reality and idiodynamic robot control method |
WO2020060157A1 (en) * | 2018-09-19 | 2020-03-26 | 주식회사 브이터치 | Method, system, and non-transitory computer-readable recording medium for supporting object control |
KR20200107461A (en) * | 2019-03-08 | 2020-09-16 | (주)아이로텍 | Collision avoidance simulation system: A method of displaying a guidance tool for robot routing to avoid collision |
KR20200112143A (en) | 2019-03-21 | 2020-10-05 | 두림야스카와(주) | Non-contact three-dimensional space coordinate measuring system |
WO2021016394A1 (en) * | 2019-07-23 | 2021-01-28 | Toyota Research Institute, Inc. | Visual teach and repeat mobile manipulation system |
CN113001548A (en) * | 2021-03-15 | 2021-06-22 | 安徽工程大学 | Robot teaching method and system based on virtual simulation experience |
CN114446121A (en) * | 2022-02-24 | 2022-05-06 | 汕头市快畅机器人科技有限公司 | Control method of life search cluster education robot |
US20230136502A1 (en) * | 2021-10-29 | 2023-05-04 | Foundation For Research And Business, Seoul Nationaluniversity Of Science And Technology | High density virtual content creation system and method |
KR20230062315A (en) | 2021-10-29 | 2023-05-09 | 서울과학기술대학교 산학협력단 | High density virtual content creation system and method |
US11673273B2 (en) * | 2019-06-07 | 2023-06-13 | Fanuc Corporation | Off-line programming apparatus, robot controller, and augmented reality system |
CN117444989A (en) * | 2023-12-25 | 2024-01-26 | 常州微亿智造科技有限公司 | Collision detection method and device for path planning |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009006410A (en) | 2007-06-26 | 2009-01-15 | Fuji Electric Systems Co Ltd | Remote operation support device and remote operation support program |
JP5742862B2 (en) | 2013-03-18 | 2015-07-01 | 株式会社安川電機 | Robot apparatus and workpiece manufacturing method |
-
2016
- 2016-12-26 KR KR1020160179358A patent/KR101850410B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009006410A (en) | 2007-06-26 | 2009-01-15 | Fuji Electric Systems Co Ltd | Remote operation support device and remote operation support program |
JP5742862B2 (en) | 2013-03-18 | 2015-07-01 | 株式会社安川電機 | Robot apparatus and workpiece manufacturing method |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019188531A (en) * | 2018-04-25 | 2019-10-31 | ファナック株式会社 | Simulation device of robot |
CN110394779A (en) * | 2018-04-25 | 2019-11-01 | 发那科株式会社 | The simulator of robot |
DE102019002928B4 (en) | 2018-04-25 | 2022-12-22 | Fanuc Corporation | Simulation device for robots |
US11192249B2 (en) | 2018-04-25 | 2021-12-07 | Fanuc Corporation | Simulation device for robot |
CN108573631A (en) * | 2018-06-26 | 2018-09-25 | 江苏汇博机器人技术股份有限公司 | Robot Virtual practical operation platform |
WO2020060157A1 (en) * | 2018-09-19 | 2020-03-26 | 주식회사 브이터치 | Method, system, and non-transitory computer-readable recording medium for supporting object control |
US11886167B2 (en) | 2018-09-19 | 2024-01-30 | VTouch Co., Ltd. | Method, system, and non-transitory computer-readable recording medium for supporting object control |
CN109800864A (en) * | 2019-01-18 | 2019-05-24 | 中山大学 | A kind of robot Active Learning Method based on image input |
KR20200107461A (en) * | 2019-03-08 | 2020-09-16 | (주)아이로텍 | Collision avoidance simulation system: A method of displaying a guidance tool for robot routing to avoid collision |
KR102190101B1 (en) * | 2019-03-08 | 2020-12-11 | (주)아이로텍 | Collision avoidance simulation system: A method of displaying a guidance tool for robot routing to avoid collision |
KR20200112143A (en) | 2019-03-21 | 2020-10-05 | 두림야스카와(주) | Non-contact three-dimensional space coordinate measuring system |
US11673273B2 (en) * | 2019-06-07 | 2023-06-13 | Fanuc Corporation | Off-line programming apparatus, robot controller, and augmented reality system |
WO2021016394A1 (en) * | 2019-07-23 | 2021-01-28 | Toyota Research Institute, Inc. | Visual teach and repeat mobile manipulation system |
CN110434877A (en) * | 2019-08-14 | 2019-11-12 | 纳博特南京科技有限公司 | One kind being based on augmented reality and idiodynamic robot control method |
CN113001548A (en) * | 2021-03-15 | 2021-06-22 | 安徽工程大学 | Robot teaching method and system based on virtual simulation experience |
KR20230062315A (en) | 2021-10-29 | 2023-05-09 | 서울과학기술대학교 산학협력단 | High density virtual content creation system and method |
US20230136502A1 (en) * | 2021-10-29 | 2023-05-04 | Foundation For Research And Business, Seoul Nationaluniversity Of Science And Technology | High density virtual content creation system and method |
CN114446121A (en) * | 2022-02-24 | 2022-05-06 | 汕头市快畅机器人科技有限公司 | Control method of life search cluster education robot |
CN114446121B (en) * | 2022-02-24 | 2024-03-05 | 汕头市快畅机器人科技有限公司 | Control method of life search cluster education robot |
CN117444989A (en) * | 2023-12-25 | 2024-01-26 | 常州微亿智造科技有限公司 | Collision detection method and device for path planning |
CN117444989B (en) * | 2023-12-25 | 2024-03-22 | 常州微亿智造科技有限公司 | Collision detection method and device for path planning |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101850410B1 (en) | Simulation apparatus and method for teaching robot based on virtual reality | |
EP3410246B1 (en) | Robot obstacle avoidance control system and method, robot, and storage medium | |
JP6598090B2 (en) | Storage medium, method for planning robot operation, hardware for planning robot operation, and robot | |
TWI620627B (en) | Robots and methods for localization of the robots | |
KR101993920B1 (en) | Method and apparatus for representing physical scene | |
US9569568B2 (en) | Robot simulation system which simulates takeout process of workpiece | |
US9827675B2 (en) | Collision avoidance method, control device, and program | |
JP6036662B2 (en) | Robot simulation apparatus, program, recording medium and method | |
JP5872077B2 (en) | Interference check device | |
KR101798132B1 (en) | Modeling apparatus and method of work environment for high-speed collision detection of robot | |
JP5113666B2 (en) | Robot teaching system and display method of robot operation simulation result | |
KR101864949B1 (en) | Method for building a grid map with mobile robot unit | |
CN110603122A (en) | Automated personalized feedback for interactive learning applications | |
KR100787952B1 (en) | Apparatus and method for haptic rendering using local occupancy map instance, and haptic system using them | |
US20240033907A1 (en) | Pixelwise predictions for grasp generation | |
WO2013116180A1 (en) | Semi-autonomous digital human posturing | |
CN110000793A (en) | A kind of motion planning and robot control method, apparatus, storage medium and robot | |
KR20100117931A (en) | Method of generating sweeping work path for mobile robot | |
JP6801243B2 (en) | Movement target determination device and movement target determination method | |
JP7450297B2 (en) | Configuration of robot operating environment including sensor placement | |
CN109518917A (en) | Leveling method and its leveling system, storage medium | |
KR101858108B1 (en) | Motion simulating apparatus and method for robot | |
JP2017122546A (en) | Layout estimation device, airflow control system and layout estimation method | |
EP4238721A1 (en) | Control device, control method, and program | |
JP7344699B2 (en) | Robot picking simulation device and robot picking simulation method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |