KR101664575B1 - Method to obstacle avoidance for wheeled mobile robots - Google Patents
Method to obstacle avoidance for wheeled mobile robots Download PDFInfo
- Publication number
- KR101664575B1 KR101664575B1 KR1020140154422A KR20140154422A KR101664575B1 KR 101664575 B1 KR101664575 B1 KR 101664575B1 KR 1020140154422 A KR1020140154422 A KR 1020140154422A KR 20140154422 A KR20140154422 A KR 20140154422A KR 101664575 B1 KR101664575 B1 KR 101664575B1
- Authority
- KR
- South Korea
- Prior art keywords
- mobile robot
- obstacle
- switching signal
- vector
- avoidance
- 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/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching 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
- B25J9/1666—Avoiding collision or forbidden zones
-
- 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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
-
- 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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4061—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40339—Avoid collision
Abstract
일 실시예에 따른 모바일 로봇의 장애물 회피 시스템은 목표 지점을 향하여 주행하는 모바일 로봇의 주위에 위치된 장애물을 감지하는 감지부; 상기 모바일 로봇, 장애물 및 상기 목표 지점의 위치 정보를 획득할 수 있는 위치 획득부; 상기 감지부에 의해 장애물이 감지되는 경우, 상기 모바일 로봇과 상기 장애물 사이의 거리 및 상대 각도를 고려하여 결정된 스위칭 신호를 발생시키는 신호 발생부; 상기 위치 획득부로부터 획득된 위치 정보를 통해, 상기 모바일 로봇과 상기 장애물 사이의 척력 벡터 및 상기 모바일 로봇과 상기 목표 지점 사이의 인력 벡터를 연산하는 벡터 연산부; 및 상기 회피 벡터, 상기 인력 벡터 및 상기 스위칭 신호를 이용하여 상기 모바일 로봇의 이동 경로를 결정하는 경로 결정부;를 포함하고, 상기 스위칭 신호에 의해 상기 모바일 로봇의 주행이 실시간으로 제어될 수 있다.According to an embodiment of the present invention, there is provided an obstacle avoidance system for a mobile robot, comprising: a sensing unit for sensing an obstacle located around a mobile robot traveling toward a target point; A position acquiring unit capable of acquiring position information of the mobile robot, an obstacle, and the target point; A signal generator for generating a switching signal in consideration of a distance between the mobile robot and the obstacle and a relative angle when the obstacle is detected by the sensing unit; A vector computing unit for computing a repulsive force vector between the mobile robot and the obstacle and a force vector between the mobile robot and the target point through position information obtained from the position obtaining unit; And a path determination unit for determining a movement path of the mobile robot using the avoidance vector, the attraction vector, and the switching signal, and the traveling of the mobile robot can be controlled in real time by the switching signal.
Description
본 발명은 모바일 로봇의 장애물 회피 방법에 관한 것으로서, 보다 상세하게는 실시간으로 스위칭 신호를 발생시킴으로써, 모바일 로봇이 안정적으로 장애물 회피할 수 있게 하는 모바일 로봇의 장애물 회피 방법에 관한 것이다.BACKGROUND OF THE
장애물회피는 오랜 기간 많은 연구자들에 의해 연구되어왔지만 여전히 활발한 연구되고 있는 분야이고, 산업적 실용화, 안전한 모션계획, 자율주행 등을 위한 모바일 로봇의 주된 이슈 중의 하나이다. 장애물 회피는 포텐션필드기법(artificial potential field (APF) approach), 로드맵 기법(road map approach) 행동기반기법(behavior based approach) 등의 연구가 오랫동안 진행되어 왔다. Obstacle avoidance has been studied by many researchers for a long time, but it is still active research area and it is one of the main issues of mobile robot for industrial practical use, safe motion planning and autonomous driving. The obstacle avoidance has been studied for a long time, such as the artificial potential field (APF) approach, the road map approach, and the behavior based approach.
상기 포텐셜필드기법은 빠르게 구현할 수 있으며 많은 상황에서 수용 가능한 결과의 데모를 보였다. The potential field technique is quick to implement and demonstrates acceptable results in many situations.
그러나, 포테셜필드기법은 목표점과 장애물들에 의해 생성되는 APF(artificial potential field)의 기울기(Gradient)를 낮추는 방향으로 로봇의 모션과 제어 입력이 기본적으로 결정됨으로 인해 로컬 미니멈(local minimum)의 결과를 초래할 수 있다. 게다가 로봇이 장애물에 근접하거나 길고 좁은 통로를 이동할 때 제어적인 측면에서 채터링과 오실레이션의 문제를 초래한다. 이러한 오실레이션을 극복하기 위해 로봇 제어기의 샘플링 주기를 낮추거나 로봇이 저속으로 움직여야 한다. 이에 의해 장애물 회피를 완수하기 위해 보다 긴 시간이 걸리게 될 수 있다.However, since the motion and control inputs of the robot are basically determined in the direction of lowering the gradient of the artificial potential field (APF) generated by the target points and obstacles, the result of the local minimum ≪ / RTI > Moreover, when the robot moves close to obstacles or long and narrow passages, it causes chattering and oscillation problems in terms of control. To overcome this oscillation, the sampling period of the robot controller must be lowered or the robot must move at a lower speed. This may take a longer time to complete the obstacle avoidance.
다른 하나의 잘 알려진 장애물회피기법은 로드맵기법이다. 로드맵은 자유형태공간(C-space)에 있는 장애물 서로간의 꼭지점들은 연결하지만 장애물은 관통하지 않는 모든 선분으로 구성된다. 이를 이용하여 자유형태공간을 모델링하는 여러 기법들이 연구되었다. Another well-known obstacle avoidance technique is the roadmap technique. The roadmap consists of all the segments in the free-form space (C-space) that connect the vertices of each other but not the obstacle. Several techniques for modeling freeform space have been studied.
예를 들어, 가시성(visibility) 그래프기법은 그 결과로 최소길이 경로 해법을 제공하지만, 보다 높은 차원의 공간에서는 최적 해법을 보장하지는 못한다. 그리고, 보로노이(voronoi) 다이어그램은 공간상의 경로와 장애물 사이의 자유공간을 최대화하여 안전한 경로를 생성되도록 한다. 이 기법은 대부분 사전에 전체공간정보를 알아야 하고 또한 상당한 컴퓨터 연산량 또는 시간을 필요로 한다.For example, the visibility graph technique provides a minimal length path solution as a result, but it does not guarantee an optimal solution in a higher dimension space. And the voronoi diagram maximizes the free space between the path in space and the obstacle, thus creating a safe path. Most of these techniques require knowing the entire spatial information in advance and also require considerable computational complexity or time.
마지막으로, 행동기반접근법은 장애물을 회피하거나 목표점으로 이동하는 등의 서로 다른 행동들의 융합을 기반으로 장애물 회피 문제를 푸는 기법이다. 행동기반접근법의 주된 이슈는 좋은 성능을 얻기 위해 서로 다른 타입의 행동들을 얼마나 효과적으로 융합하거나 중재하는 방법을 찾는 것이다.Finally, the behavior-based approach is a technique to solve the obstacle avoidance problem based on the convergence of different behaviors such as avoiding the obstacle or moving to the target point. The main issue of behavior-based approaches is how to effectively combine or mediate different types of behaviors in order to achieve good performance.
이와 같이 모바일 로봇의 장애물 회피 방법에 대하여 다양하게 연구되고 있으며, 예를 들어, 2012년 3월 19일에 출원된 선행문헌 제2012-0027794호에서는 '이동식 로봇의 장애물 회피 방법'에 대하여 개시된다.The obstacle avoiding method of the mobile robot has been studied in various ways. For example, in the prior art document 2012-0027794 filed on March 19, 2012, a method of avoiding obstacles of the mobile robot is disclosed.
일 실시예에 따른 목적은 장애물이 있는 상황과 장애물이 없는 상황을 별도로 고려하여, 두 상황 간의 안정적인 스위칭을 수행할 수 있으며, 모바일 로봇의 장애물 회피를 위한 실시간 안정적 시스템 스위칭 접근법(Stable Switched-System Approach)을 구현할 수 있는 모바일 로봇의 장애물 회피 시스템 및 방법을 제공하는 것이다.The object of the present invention is to provide a stable switched-system approach for obstacle avoidance of a mobile robot, which can perform stable switching between two situations by separately considering a situation in which there is an obstacle and a situation in which there is no obstacle The present invention also provides a system and method for avoiding obstacles of a mobile robot.
일 실시예에 따른 목적은 정적인 원형 또는 비원형 장애물을 회피하고, 로봇 간의 협조를 통하여 상호 충돌을 방지할 수 있는 모바일 로봇의 장애물 회피 시스템 및 방법을 제공하는 것이다.An object of the present invention is to provide a system and method for avoiding obstacles of a mobile robot that can avoid static circular or non-circular obstacles and prevent mutual collision through coordination between robots.
일 실시예에 따른 목적은 모바일 로봇의 자율적인 장애물 회피를 가능하게 하여, 산업적 실용화, 안전한 모션계획, 자율주행 등을 위한 모바일 로봇의 주된 이슈 중의 하나인 알고리즘의 강건함과 신뢰성을 획득할 수 있는 모바일 로봇의 장애물 회피 시스템 및 방법을 제공하는 것이다.An object of the present invention is to provide a mobile robot capable of avoiding autonomous obstacles of a mobile robot and capable of obtaining robustness and reliability of the algorithm, which is one of the main issues of a mobile robot for industrial practical use, safe motion planning, And an obstacle avoidance system and method for a mobile robot.
일 실시예에 따른 목적은 장애물의 형상에 따라 서로 다른 스위칭 신호를 발생시킬 수 있는 모바일 로봇의 장애물 회피 시스템 및 방법을 제공하는 것이다.An object of an embodiment is to provide a system and method for avoiding an obstacle of a mobile robot capable of generating different switching signals according to the shape of an obstacle.
일 실시예에 따른 목적은 모바일 로봇의 장애물 회피 시 발생될 수 있는 채터링 또는 오실레이션을 방지할 수 있으며, 장애물 회피를 위해 소요되는 시간을 단축시킬 수 있는 모바일 로봇의 장애물 회피 시스템 및 방법을 제공하는 것이다.An object of the present invention is to provide a system and a method for avoiding obstacles of a mobile robot that can prevent chattering or oscillation that may occur when an obstacle is avoided by a mobile robot and can shorten the time required for obstacle avoidance .
일 실시예에 따른 목적은 모바일 로봇 주위의 장애물 인식을 통해 비교적 간단한 방식으로 장애물 회피가 수행될 수 있는 모바일 로봇의 장애물 회피 시스템 및 방법을 제공하는 것이다.An object of an embodiment is to provide a system and method for avoiding obstacles of a mobile robot in which obstacle avoidance can be performed in a relatively simple manner through obstacle recognition around the mobile robot.
상기 목적을 달성하기 위한 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템은 목표 지점을 향하여 주행하는 모바일 로봇의 주위에 위치된 장애물을 감지하는 감지부; 상기 모바일 로봇, 장애물 및 상기 목표 지점의 위치 정보를 획득할 수 있는 위치 획득부; 상기 감지부에 의해 장애물이 감지되는 경우, 상기 모바일 로봇과 상기 장애물 사이의 거리 및 상대 각도를 고려하여 결정된 스위칭 신호를 발생시키는 신호 발생부; 상기 위치 획득부로부터 획득된 위치 정보를 통해, 상기 모바일 로봇과 상기 장애물 사이의 척력 벡터 및 상기 모바일 로봇과 상기 목표 지점 사이의 인력 벡터를 연산하는 벡터 연산부; 및 상기 인력 벡터 및 상기 스위칭 신호를 이용하여 상기 모바일 로봇의 이동 경로를 결정하는 경로 결정부;를 포함하고, 상기 스위칭 신호에 의해 상기 모바일 로봇의 주행이 실시간으로 제어될 수 있다.According to an aspect of the present invention, there is provided an obstacle avoidance system for a mobile robot, including: a sensing unit for sensing an obstacle located around a mobile robot traveling toward a target point; A position acquiring unit capable of acquiring position information of the mobile robot, an obstacle, and the target point; A signal generator for generating a switching signal in consideration of a distance between the mobile robot and the obstacle and a relative angle when the obstacle is detected by the sensing unit; A vector computing unit for computing a repulsive force vector between the mobile robot and the obstacle and a force vector between the mobile robot and the target point through position information obtained from the position obtaining unit; And a path determination unit for determining a movement path of the mobile robot using the attraction vector and the switching signal, wherein the traveling of the mobile robot can be controlled in real time by the switching signal.
일 측에 의하면, 상기 벡터 연산부에서는 상기 척력 벡터로부터 회피 벡터가 더 연산되고, 상기 회피 벡터는 상기 인력 벡터와의 내적이 0과 같거나 0보다 클 수 있다.According to one aspect of the present invention, in the vector operation unit, a avoidance vector is further calculated from the repulsive force vector, and the avoidance vector may have an inner product with the attracting vector equal to or greater than zero.
일 측에 의하면, 상기 경로 결정부에서는 상기 모바일 로봇이 상기 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터(unified velocity vector)가 연산되고, According to one aspect of the present invention, in the path determination unit, an unified velocity vector indicating a path through which the mobile robot is to be moved to avoid the obstacle is calculated,
상기 통합 속도 벡터는 아래의 식에 의해 연산되고,The integrated velocity vector is calculated by the following equation,
이때, 는 통합 속도 벡터이고, 는 스위칭 신호이고, 는 회피 벡터이고, 는 인력 벡터일 수 있다.At this time, Is an integrated velocity vector, Is a switching signal, Is an avoidance vector, May be a force vector.
일 측에 의하면, 상기 경로 결정부에서 상기 통합 속도 벡터와 상기 모바일 로봇의 위치 정보로부터 가상의 목표 지점이 연산되고, 상기 가상의 목표 지점으로부터 연산된 속도 정보는 보정될 수 있다.According to one aspect, a virtual target point is calculated from the integrated velocity vector and the position information of the mobile robot in the path determination unit, and the velocity information calculated from the virtual target point can be corrected.
일 측에 의하면, 상기 스위칭 신호는 원형 장애물 감지 시 발생되는 제1 스위칭 신호를 포함하고,According to one aspect of the present invention, the switching signal includes a first switching signal generated upon detection of a circular obstacle,
상기 제1 스위칭 신호는 아래와 같이 결정되며,The first switching signal is determined as follows,
이때, 는 제1 스위칭 신호이고, dro는 상기 모바일 로봇과 상기 장애물 사이의 거리이고, θ는 상기 모바일 로봇의 주행각도(heading angle)이며, At this time, D ro is a distance between the mobile robot and the obstacle, θ is a heading angle of the mobile robot,
상기 dm은 이고,The d m ego,
이때, R은 상기 감지부에 의한 감지 범위이고, r은 회피 범위이며, θro는 상기 모바일 로봇의 주행각도와 상기 장애물 방위각의 차이일 수 있다.In this case, R is the sensing range of the sensing unit, r is the avoidance range, and? Ro may be the difference between the traveling angle of the mobile robot and the obstacle azimuth angle.
일 측에 의하면, 상기 스위칭 신호는 상기 제1 스위칭 신호에 의한 상기 모바일 로봇의 작동을 보완하기 위한 제2 스위칭 신호는 아래와 같이 결정되며,According to one aspect of the present invention, the second switching signal for compensating the operation of the mobile robot by the first switching signal is determined as follows,
이때, 는 제2 스위칭 신호이고, 는 상기 모바일 로봇의 현재 스위칭 신호일 수 있다.At this time, Is a second switching signal, May be the current switching signal of the mobile robot.
일 측에 의하면, 상기 스위칭 신호는 비원형 장애물 감지 시 발생되는 제3 스위칭 신호를 포함하고,According to one aspect of the present invention, the switching signal includes a third switching signal generated upon detection of the non-circular obstacle,
상기 제3 스위칭 신호는 아래와 같이 결정되며,The third switching signal is determined as follows,
이때, 는 제3 스위칭 신호이고, 는 상기 모바일 로봇과 상기 목표 지점을 잇는 선이고, 는 상기 장애물 상의 모든 점의 집합일 수 있다.At this time, Is a third switching signal, Is a line connecting the mobile robot and the target point, May be a set of all points on the obstacle.
상기 목적을 달성하기 위한 일 실시예에 따른 모바일 로봇의 장애물 회피 방법은, 모바일 로봇의 초기 상태가 획득되는 단계; 상기 모바일 로봇의 주위 환경이 획득되는 단계; 상기 모바일 로봇의 주위에 위치된 장애물이 감지되는 단계; 상기 모바일 로봇 주위의 장애물의 위치 및 상기 모바일 로봇이 향하는 목표 지점의 위치가 획득되는 단계; 상기 모바일 로봇과 상기 장애물 사이의 거리 및 상대 각도를 고려하여 결정된 스위칭 신호가 발생되는 단계; 및 상기 모바일 로봇과 상기 장애물 사이의 척력 벡터, 상기 모바일 로봇과 상기 목표 지점 사이의 인력 벡터 및 상기 척력 벡터로부터 수직하게 형성되는 회피 벡터가 연산되는 단계;를 포함하고, 상기 스위칭 신호에 의해 상기 모바일 로봇의 주행이 실시간으로 제어될 수 있다.According to another aspect of the present invention, there is provided an obstacle avoidance method for a mobile robot, including: obtaining an initial state of a mobile robot; Obtaining an environment of the mobile robot; Detecting an obstacle located around the mobile robot; Obtaining a position of an obstacle around the mobile robot and a position of a target point toward the mobile robot; Generating a switching signal by considering a distance between the mobile robot and the obstacle and a relative angle; And calculating a repulsive vector formed vertically from the repulsive force vector and a repulsive force vector between the mobile robot and the obstacle, a attracting vector between the mobile robot and the target point, and the repulsive force vector, The running of the robot can be controlled in real time.
일 측에 의하면, 상기 모바일 로봇과 상기 장애물 사이의 척력 벡터, 상기 모바일 로봇과 상기 목표 지점 사이의 인력 벡터 및 상기 척력 벡터로부터 수직하게 형성되는 회피 벡터가 연산되는 단계 이후에, 상기 회피 벡터, 상기 인력 벡터 및 상기 스위칭 신호에 의해 상기 모바일 로봇이 상기 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터가 연산되는 단계가 더 포함될 수 있다.According to one aspect, after the step of calculating the repulsive vector formed vertically from the repulsive force vector between the mobile robot and the obstacle, the attracting vector between the mobile robot and the target point, and the repulsive force vector, An attraction vector, and an integrated velocity vector representing a path through which the mobile robot is to be moved by the switching signal in order to avoid the obstacle.
일 측에 의하면, 상기 회피 벡터, 상기 인력 벡터 및 상기 스위칭 신호에 의해 상기 모바일 로봇이 상기 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터가 연산되는 단계 이후에, 상기 통합 속도 벡터로부터 가상의 목표 지점 및 목표 방향이 연산되는 단계; 상기 가상의 목표 지점으로부터 목표 속도가 연산되는 단계; 상기 목표 속도가 보정되는 단계; 및 상기 보정된 목표 속도에 따라 상기 모바일 로봇이 이동되는 단계;가 더 포함될 수 있다.According to one aspect of the present invention, after the step of calculating the integrated velocity vector indicating the path by which the mobile robot is to be moved by the mobile robot in order to avoid the obstacle by the avoiding vector, the attraction vector and the switching signal, Calculating a target point and a target direction of the target point; Calculating a target speed from the virtual target point; Correcting the target speed; And moving the mobile robot according to the corrected target speed.
일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법에 의하면, 장애물이 있는 상황과 장애물이 없는 상황을 별도로 고려하여, 두 상황 간의 안정적인 스위칭을 수행할 수 있으며, 모바일 로봇의 장애물 회피를 위한 실시간 안정적 시스템 스위칭 접근법(Stable Switched-System Approach)을 구현할 수 있다.According to the obstacle avoidance system and method of the mobile robot according to the embodiment, it is possible to perform stable switching between the two situations by separately considering the obstacle-free situation and the obstacle free situation, A system-switched approach (Stable Switched-System Approach) can be implemented.
일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법에 의하면, 정적인 원형 또는 비원형 장애물을 회피하고, 로봇 간의 협조를 통하여 상호 충돌을 방지할 수 있다.According to the obstacle avoidance system and method of the mobile robot according to one embodiment, it is possible to avoid static circular or non-circular obstacles and to prevent mutual collision through cooperation between the robots.
일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법에 의하면, 모바일 로봇의 자율적인 장애물 회피를 가능하게 하여, 산업적 실용화, 안전한 모션계획, 자율주행 등을 위한 모바일 로봇의 주된 이슈 중의 하나인 알고리즘의 강건함과 신뢰성을 획득할 수 있다.According to the obstacle avoidance system and method of the mobile robot according to the embodiment, autonomous obstacle avoidance of the mobile robot is enabled, and the algorithm, which is one of the main issues of the mobile robot for industrial practical use, safe motion planning, Robustness and reliability can be obtained.
일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법에 의하면, 모바일 로봇의 장애물 회피 시 발생될 수 있는 채터링 또는 오실레이션을 방지할 수 있으며, 장애물 회피를 위해 소요되는 시간을 단축시킬 수 있다.According to the obstacle avoidance system and method of the mobile robot according to one embodiment, it is possible to prevent chattering or oscillation that may occur in obstacle avoidance of the mobile robot, and shorten the time required to avoid an obstacle.
일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법에 의하면, 모바일 로봇 주위의 장애물 인식을 통해 비교적 간단한 방식으로 장애물 회피가 수행될 수 있다.According to the obstacle avoidance system and method of the mobile robot according to the embodiment, the obstacle avoidance can be performed in a relatively simple manner through the recognition of the obstacle around the mobile robot.
도 1은 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템을 도시한다.
도 2는 모바일 로봇의 장애물 회피를 설명하기 위한 기하학을 도시한다.
도 3(a) 내지 (d)는 장애물 형태의 예시를 도시한다.
도 4는 모바일 로봇과 장애물 사이의 상대 각도와 거리에 따른 회피 영역을 도시한다.
도 5(a)은 모바일 로봇과 목표 지점 사이에 장애물이 없는 경우를 도시하고, 도 5(b)는 모바일 로봇과 목표 지점 사이에 원형 장애물이 있는 경우를 도시한다.
도 6은 일 실시예에 따른 모바일 로봇의 장애물 회피 방법을 도시한다.
도 7(a) 및 (b)는 영 공간 투사 방법을 기반으로 하여, 제1 및 제2 스위칭 신호와 제1 제어 법칙을 이용한 시뮬레이션 및 실험 결과를 도시하고, 도 7(c)는 일반적인 모바일 로봇의 장애물 회피 시뮬레이션 및 실험 결과를 도시한다.
도 8(a) 내지 (c)는 척력 벡터의 회전을 기반으로 하여, 제3 스위칭 신호 및 제1 제어 법칙을 이용한 시뮬레이션 및 실험 결과를 도시하고, 도 8(d) 내지 (f)는 척력 벡터의 회전을 기반으로 하여, 제1 스위칭 신호 및 제1 제어 법칙을 이용한 시뮬레이션 및 실험 결과를 도시하며, 도 8(g) 내지 (i)는 포텐셜 필드 접근에 기반하는 일반적인 모바일 로봇의 장애물 회피 시뮬레이션 및 실험 결과를 도시한다.
도 9(a) 내지 (d)는 다중 정적 장애물들을 회피하는 시뮬레이션 및 실험 결과를 도시한다.
도 10(a) 내지 (d)는 충돌 회피에 대한 시뮬레이션 및 실험 결과를 도시한다.1 shows an obstacle avoidance system of a mobile robot according to an embodiment.
2 shows a geometry for explaining an obstacle avoidance of the mobile robot.
Figures 3 (a) - (d) illustrate examples of obstacle types.
Fig. 4 shows a avoidance region according to the relative angle and distance between the mobile robot and the obstacle.
FIG. 5A shows a case where there is no obstacle between the mobile robot and the target point, and FIG. 5B shows a case where there is a circular obstacle between the mobile robot and the target point.
FIG. 6 illustrates a method of avoiding obstacles of a mobile robot according to an embodiment of the present invention.
7 (a) and 7 (b) show simulation and experimental results using the first and second switching signals and the first control law based on the zero-space projection method, and FIG. 7 (c) And the results of experiments are shown.
8 (a) to 8 (c) show simulation and experimental results using the third switching signal and the first control law based on the rotation of the repulsive force vector, and Figs. 8 (d) 8 (g) to 8 (i) show obstacle avoidance simulations of a general mobile robot based on a potential field approach, and FIGS. 8 The experimental results are shown.
Figures 9 (a) - (d) show simulation and experimental results to avoid multiple static obstacles.
Figures 10 (a) - (d) show simulation and experimental results for collision avoidance.
이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to or limited by the embodiments. Like reference symbols in the drawings denote like elements.
도 1은 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템을 도시하고, 도 2는 모바일 로봇의 장애물 회피를 설명하기 위한 기하학을 도시하고, 도 3(a) 내지 (d)는 장애물 형태의 예시를 도시하고, 도 4는 모바일 로봇과 장애물 사이의 상대 각도와 거리에 따른 회피 영역을 도시하고, 도 5(a)은 모바일 로봇과 목표 지점 사이에 장애물이 없는 경우를 도시하고, 도 5(b)는 모바일 로봇과 목표 지점 사이에 원형 장애물이 있는 경우를 도시한다.Fig. 1 shows an obstacle avoidance system of a mobile robot according to an embodiment, Fig. 2 shows a geometry for explaining obstacle avoidance of a mobile robot, Figs. 3 (a) to 3 (d) 5 (a) shows a case where there is no obstacle between the mobile robot and the target point, and FIG. 5 (b) shows a case where there is no obstacle between the mobile robot and the target point. Shows a case where there is a circular obstacle between the mobile robot and the target point.
도 1을 참조하여, 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템(10)은 감지부(100), 위치 획득부(200), 신호 발생부(300), 벡터 연산부(400), 및 경로 결정부(500)를 포함할 수 있다.1, an
우선, 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템(10)에서 적용되는 로봇 시스템에 대하여 설명하기로 한다.First, a robot system applied in the
상기 로봇 시스템은 비홀로노믹(nonholonomic) 모바일 로봇으로, 비홀로노믹 제약(nonholonomic constraint)에 의해 로봇의 옆으로 움직임이 제한될 수 있다.The robotic system is a nonholonomic mobile robot which can be restricted from moving sideways by a nonholonomic constraint.
상기 비홀로노믹 로봇의 기구학(kinematic) 수식은 다음과 같이 표현된다.The kinematic equation of the non-holonomic robot is expressed as follows.
여기서, 은 모바일 로봇의 상태이고, 는 모바일 로봇의 선속도와 각속도(linear and angular velocity)이다.here, Is the state of the mobile robot, Is the linear velocity and angular velocity of the mobile robot.
또한, 도 2를 참조하여, 본 발명에서 사용되는 기하학(geometry)은 다음과 같다.2, the geometry used in the present invention is as follows.
(1): 모바일 로봇을 나타내고,(One) : Indicates a mobile robot,
(2): 좌표계를 나타내고,(2) : Indicates a coordinate system,
(3) q: 모바일 로봇의 자세(pose)(3) q: The pose of the mobile robot
(4) p: 모바일 로봇의 위치(4) p: Position of mobile robot
(5) θ: 모바일 로봇의 주행 각도(heading angle)(5) [theta]: The heading angle of the mobile robot
(6) θo: 장애물에 대한 방위각(bearing angle)(6) θ o : Bearing angle for the obstacle
(7) θro: θ - θo (7) θ ro : θ - θ o
(8) Pg: 목표 지점의 위치(8) P g : Position of target point
(9) Po: 장애물의 위치(9) P o : Location of the obstacle
(10) Pd: 가상의 목표 지점(10) P d : virtual target point
(11) : 회피 벡터(11) : Avoidance vector
(12) : UVV(통합 속도 벡터)(12) : UVV (integrated speed vector)
(13) R: 센서 감지 영역(13) R: Sensor detection area
(14) r: 회피 영역(14) r: avoidance area
전술된 내용들을 참조하여, 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템(10)의 구성에 대하여 이하에서 상세히 설명된다.With reference to the above-mentioned contents, the configuration of the
상기 감지부(100)는 목표 지점을 향하여 주행하는 모바일 로봇의 주위에 위치된 장애물을 감지할 수 있다. 상기 감지부(100)는 직접적으로 장애물을 감지하거나, 간접적으로 모바일 로봇 주위의 환경 정보를 통해서 장애물을 감지하는 형태로 될 수 있다.The
상기 감지부(100)는 예를 들어 모바일 로봇에 장착된 온보드 센서(onboard sensor)로 마련될 수 있다. 그러나, 감지부(100)는 이에 국한되지 아니하며, 장애물을 감지할 수 있다면 어느 것이든지 가능하다.The
또한, 감지부(100)를 통해서 다양한 형태의 장애물이 감지될 수 있다.In addition, various types of obstacles can be detected through the
상기 장애물은 크게 정적 장애물(static obstacle) 및 동적 장애물(예를 들어, 로봇 간의 상호 충돌)로 분류될 수 있다.The obstacles can be largely classified into static obstacles and dynamic obstacles (for example, mutual collision between robots).
특히, 정적 장애물은 도 3(a) 내지 (d)를 참조하여, 원형(circular) 장애물과 비원형(large non-circular) 장애물로 나뉠 수 있다.In particular, the static obstacle can be divided into a circular obstacle and a large non-circular obstacle, with reference to Figs. 3 (a) to 3 (d).
도 3(a)의 경우는 한 개의 원형이거나 원형으로 모델링이 가능하거나, 원형에 의해 경계될 수 있을 만큼 충분히 작은 장애물이다. 그리고, 도 3(b) 내지 (c)의 경우는 비원형 장애물이며, 장애물의 표면에 여러 개의 연속적인 장애물이 있는 경우도 고려할 수 있다.In the case of Fig. 3 (a), it is an obstacle small enough to be able to be modeled as one circle or circle, or sufficiently small to be bounded by a circle. 3 (b) to 3 (c) are non-circular obstacles, and there may be a case where there are several continuous obstacles on the surface of the obstacle.
또한, 모바일 로봇 주위에 다른 모바일 로봇이 감지되는 경우, 다른 모바일 로봇을 원형으로 모델링할 수 있으며, 도 3(a)에 도시된 장애물을 동적 장애물로 고려할 수 있다.In addition, when another mobile robot is detected around the mobile robot, the other mobile robot can be modeled as a circle, and the obstacle shown in FIG. 3 (a) can be considered as a dynamic obstacle.
상기 감지부(100)에는 위치 획득부(200)가 연결될 수 있다.The
상기 위치 획득부(200)는 모바일 로봇, 장애물 및 목표 지점의 위치 정보를 획득할 수 있다.The
이때, 상기 모바일 로봇의 위치 정보는 모바일 로봇의 현재 상태를 가리키며, 상기 장애물의 위치 정보는 모바일 로봇에 대한 장애물의 현재 상태를 가리키고, 상기 목표 지점의 위치 정보는 모바일 로봇이 주행하여 도달하여야 하는 곳의 정보를 가리킨다.Here, the location information of the mobile robot indicates the current state of the mobile robot, the location information of the obstacle indicates the current state of the obstacle to the mobile robot, the location information of the target point is a location .
그러므로, 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템은 모바일 로봇의 전체 공간 정보를 사전에 획득할 필요가 없으며, 모바일 로봇이 주행하는 동안에 감지부(100)에 의해 장애물을 감지하고, 위치 획득부(200)를 통해 실시간으로 장애물 위치 정보를 획득할 수 있다.Therefore, the obstacle avoidance system of the mobile robot according to an embodiment does not need to acquire the entire spatial information of the mobile robot in advance, detects the obstacle by the
또한, 위치 획득부(200)에는 신호 발생부(300)가 연결될 수 있다.The
상기 신호 발생부(300)는 특히, 장애물의 위치 정보와 관련될 수 있으며, 모바일 로봇과 장애물 사이의 거리 및 상대 각도를 고려하여 결정된 스위칭 신호를 발생시킬 수 있다.The
상기 스위칭 신호에 의해서 장애물 회피 테스크(task)가 활성화될 수 있다.An obstacle avoidance task can be activated by the switching signal.
예를 들어, 장애물이 감지되면 스위칭 신호가 발생되어(on), 장애물 회피 테스크가 활성화될 수 있으나, 장애물이 감지되지 않으면 스위칭 신호가 발생되지 않아서(off), 장애물 회피 테스크가 불활성화될 수 있다.For example, if an obstacle is detected, a switching signal may be generated and the obstacle avoidance task may be activated, but if no obstacle is detected, no switching signal is generated and the obstacle avoidance task may be disabled .
이때, 스위칭 신호는 장애물의 유형에 따라 달리 적용될 수 있으며, 제1 스위칭 신호, 제2 스위칭 신호, 및 제3 스위칭 신호를 포함할 수 있다.At this time, the switching signal may be differently applied depending on the type of the obstacle, and may include a first switching signal, a second switching signal, and a third switching signal.
첫째, 원형 장애물의 경우, 제1 스위칭 신호가 다음과 같이 표현될 수 있다.First, in the case of a circular obstacle, the first switching signal can be expressed as follows.
(1) (One)
이때, 는 제1 스위칭 신호이고, dro는 상기 모바일 로봇과 상기 장애물 사이의 거리이고, θ는 상기 모바일 로봇의 주행 각도(heading angle)이며, At this time, D ro is a distance between the mobile robot and the obstacle, θ is a heading angle of the mobile robot,
상기 dm은 이고,The d m ego,
이때, R은 상기 감지부에 의한 감지 범위이고, r은 회피 범위이며, θro는 상기 모바일 로봇의 주행 각도와 상기 장애물 방위각의 차이, 즉 상대 각도가 될 수 있다.In this case, R is the sensing range of the sensing unit, r is the avoidance range, and? Ro can be the difference between the traveling angle of the mobile robot and the obstacle azimuth angle, that is, the relative angle.
또한, 상기 장애물의 방위각은 다음과 같이 표현될 수 있다.Further, the azimuth angle of the obstacle can be expressed as follows.
(2) (2)
그러므로 제1 스위칭 신호는 다음과 같이 될 수 있다.Therefore, the first switching signal may be as follows.
(3) (3)
(4) (4)
상기 제1 스위칭 신호가 0인 경우는, 모바일 로봇의 현재의 주행 방향을 향해 이동하게 되면 장애물과 부딪치지 않다는 것을 말해준다.When the first switching signal is 0, it means that the robot does not hit an obstacle when moving toward the current driving direction of the mobile robot.
도 4를 참조하여, 제1 스위칭 신호에 따른 회피 영역(avoidance region) 및 안전 영역(safe region)을 확인할 수 있다.Referring to FIG. 4, an avoidance region and a safe region according to the first switching signal can be confirmed.
예를 들어, 인 경우, 그리고 모바일 로봇과 장애물 사이의 거리가 감지 범위(detection range)보다 작다면, 이 될 수 있다. 즉, 제1 스위칭 신호는 불활성화될 수 있다.E.g, , And if the distance between the mobile robot and the obstacle is less than the detection range, . That is, the first switching signal may be inactivated.
더 나아가, θro가 0rad에서 rad까지 증가함에 따라, 회피 영역은 에서 로 감소된다. 그러나, 모바일 로봇과 장애물 간의 거리만 고려할 경우, 회피 영역은 항상 이다. 그리고 θro 절대치 값은 회피 영역에서 항상 증가한다.Further, when &thetas; ro is 0rad rad, the avoidance area is < RTI ID = 0.0 > in . However, when considering only the distance between the mobile robot and the obstacle, to be. And θ ro The absolute value is It always increases in the avoidance area.
이때, 후술하게 될 제어 법칙은 이 항상 증가하는 것을 담보하여, 상기 시스템이 스위칭 표면을 항상 회피하게 할 수 있다.At this time, the control law, which will be described later, Is always increased, so that the system can always avoid the switching surface.
둘째, 원형 장애물의 경우, 제1 스위칭 신호를 보완하기 위하여 제2 스위칭 신호가 발생될 수 있다.Second, in the case of a circular obstacle, a second switching signal may be generated to supplement the first switching signal.
상기 제1 스위칭 신호 하에서 모바일 로봇은 장애물을 회피할 수 있으나, 모바일 로봇의 이동 동안 채터링(chattering)이 발생할 수 있다. 다시 말해서 모바일 로봇이 종종 회피 영역과 안전 영역 사이에서 전환될 수 있다.Under the first switching signal, the mobile robot may avoid an obstacle, but chattering may occur during movement of the mobile robot. In other words, the mobile robot can often be switched between the avoidance zone and the safety zone.
이러한 채터링을 방지 또는 감소시키기 위해, 제2 스위칭 신호가 발생될 수 있다.To prevent or reduce such chattering, a second switching signal may be generated.
이때, 현재의 스위칭 신호를 피드 포워드하고 시스템이 무한대로 빠르게 전환되는 것을 막기 위해 구분적(piecewise) 연속적인 스위칭 신호를 발생시킬 수 있다.At this time, a piecewise continuous switching signal can be generated to feed forward the current switching signal and prevent the system from rapidly switching to infinity.
상기 제2 스위칭 신호는 다음과 같이 표현될 수 있다.The second switching signal may be expressed as follows.
(5) (5)
이때, 는 제2 스위칭 신호이고, 는 상기 모바일 로봇의 현재 스위칭 신호일 수 있다.At this time, Is a second switching signal, May be the current switching signal of the mobile robot.
셋째, 비원형 장애물의 경우, 제3 스위칭 신호가 발생될 수 있다.Third, in the case of a non-circular obstacle, a third switching signal may be generated.
이때, 비원형의 장애물은 크기가 최소한 로봇의 감지 범위(detection range)보다 클 수 있다. 구체적으로 제3 스위칭 신호가 발생될 수 있는 장애물의 형태는 도 3(b) 내지 (d)에 도시되어 있다.At this time, the non-circular obstacle may be at least larger than the detection range of the robot. Specifically, the form of the obstacle from which the third switching signal can be generated is shown in Figs. 3 (b) to 3 (d).
그러므로, 이하에서는 제3 스위칭 신호가 큰 비원형 장애물에 의해 발생되는 것으로 설명하기로 한다.Therefore, it will be described below that the third switching signal is generated by a large non-circular obstacle.
상기 제3 스위칭 신호는 다음과 같이 표현될 수 있다.The third switching signal may be expressed as follows.
(6) (6)
이때, 는 제3 스위칭 신호이고, 는 상기 모바일 로봇과 상기 목표 지점을 잇는 선이고, 는 상기 장애물 상의 모든 점의 집합이며, 보통 장애물의 윤곽(contour) 상의 모든 점의 집합을 말한다.At this time, Is a third switching signal, Is a line connecting the mobile robot and the target point, Is a set of all points on the obstacle, usually a set of all points on the contour of the obstacle.
상기 큰 비원형 장애물을 보다 효과적으로 다루기 위해, 제3 스위칭 신호가 업데이트하는 시간 차이(δt)를 고려할 때, 회피 벡터는 다음과 같은 조건을 만족시켜야 한다.In order to deal with the large non-circular obstacle more effectively, when considering the time difference (? T) updated by the third switching signal, the avoidance vector must satisfy the following condition.
(7) (7)
그리고 조건을 확인하기 위해서는 와 장애물의 윤곽이 교차점이 존재하는지를 확인하면 된다.And To check the condition And the outline of the obstacle intersect.
또한, 제3 스위칭 신호는 큰 비원형 장애물을 하나의 원형 장애물로 모델링하는 것이 어렵기 때문에 로봇의 방향(orientation) 정보는 고려하지 않고 오로지 모바일 로봇과 장애물 간의 거리 정보를 이용한다 . 그리고 모바일 로봇과 목표 지점을 연결한 선과 장애물 사이에 교차점이 있어야 한다 . 이 두 조건을 만족하는 경우, 제3 스위칭 신호는 1로 표시되고, 그렇지 아니한 경우에는 제3 스위칭 신호가 0으로 표시될 수 있다.Also, since it is difficult to model a large non-circular obstacle as a circular obstacle, the third switching signal only uses the distance information between the mobile robot and the obstacle without considering the orientation information of the robot . And there must be an intersection between the line connecting the mobile robot and the target point and the obstacle . When these two conditions are satisfied, the third switching signal is represented by 1, and if not, the third switching signal may be represented by 0.
게다가, 매 순간 모바일 로봇과 큰 비원형 장애물 사이에서 가장 가까운 거리 정보를 이용하고 이에 상응되는 점을 장애물로 고려할 수 있다. In addition, the closest distance information between the mobile robot and the large non-circular obstacle is used at each moment and the corresponding point can be considered as an obstacle.
이때, 주의할 점은 척력 벡터를 z 축을 기준으로 도로 회전시킬 때, 항상 같은 방향으로 회전시켜야 한다는 것이다. 예를 들면 항상 로 방향으로 회전을 시키거나, 항상 반대 방향으로 회전시키는 것이 바람직할 수 있다.In this case, note that the repulsive force vector is based on the z-axis When you turn the road, you always have to rotate in the same direction. For example, , Or it may be desirable to always rotate in the opposite direction.
또는, 영 공간 투사 방법을 이용할 경우, 동일하게 time t와 time t+1에 생성된 새 벡터와 같은 방향을 유지하도록 하여야 한다. 만약 time t와 time t+1에 생성된 벡터 방향이 서로 반대 방향이라면 time t+1의 새 벡터 방향을 time t의 벡터 방향과 일치시켜야 한다. 이때, time t+1의 새 벡터를 π도 회전시킴으로써 상시 벡터 방향들을 일치시킬 수 있다.Or, when using the zero space projection method, keep the same direction as the new vector generated at time t and
이와 같이 장애물의 형태에 따라서 스위칭 신호가 서로 다른 식들에 의해 결정될 수 있다.Thus, depending on the type of obstacle, the switching signal can be determined by different equations.
또한, 위치 획득부(200)에는 벡터 연산부(400)가 연결될 수 있다.In addition, a
상기 벡터 연산부(400)에서는 모바일 로봇과 장애물 사이의 척력 벡터, 모바일 로봇과 목표 지점 사이의 인력 벡터 및 척력 벡터로부터 수직하게 형성되는 회피 벡터를 연산할 수 있다.In the
예를 들어, 모바일 로봇의 원형 장애물 회피 문제에서, 도 5(a)에 도시된 바와 같이 장애물이 없는 경우와, 도 5(b)에 도시된 바와 같이 장애물이 있는 경우를 고려할 수 있다.For example, in the circular obstacle avoidance problem of the mobile robot, it is possible to consider a case where there is no obstacle as shown in Fig. 5 (a) and a case where there is an obstacle as shown in Fig. 5 (b).
각각의 경우에 대하여 테스크 펑션(task function)인 φ rg 및 φ ro가 있으며, 이에 상응하는 벡터를 인력(attractive) 벡터 및 척력(repulsive) 벡터라고 할 수 있다.For each case, there are task functions φ rg and φ ro , and the corresponding vector can be called an attractive vector and a repulsive vector.
도 5(a)에 도시된 바와 같이 장애물이 없는 경우, 목표 지점에 의해 모바일 로봇으로부터 인력 벡터가 생성되고, 모바일 로봇은 그 벡터 방향을 향해 이동하여 목표 지점에 도달될 수 있다.If there is no obstacle as shown in Fig. 5 (a), the attraction vector is generated from the mobile robot by the target point, and the mobile robot can move toward the vector direction to reach the target point.
반면, 도 5(b)에 도시된 바와 같이 장애물이 있는 경우, 모바일 로봇과 목표 지점 사이에 장애물이 감지되어, 장애물로부터 모바일 로봇 사이에 척력 벡터가 생성될 수 있다. 상기 척력 벡터는 모바일 로봇이 장애물에 부딪치지 않게 할 수 있다.On the other hand, if there is an obstacle as shown in FIG. 5 (b), an obstacle is detected between the mobile robot and the target point, and a repulsion vector may be generated between the mobile robot and the obstacle. The repulsive force vector may prevent the mobile robot from striking the obstacle.
이때, 모바일 로봇은 척력 벡터에 대하여 수직되는 방향으로 이동시키면서 목표 지점과 가까운 방향으로 이동시키는 것이 바람직할 수 있다.At this time, it may be preferable that the mobile robot moves in a direction perpendicular to the repulsive force vector and moves in a direction close to the target point.
다시 말해서, 척력 벡터에 수직되는 새로운 벡터는 다음과 같은 두 조건을 만족시켜야 한다. 척력 벡터()와 회피 벡터()의 내적이 0이 되어 두 벡터가 수직이어야 하며, 또한 인력 벡터()와 회피 벡터()의 내적은 0과 같거나 0보다 큰 값을 취하며 그 방향이 장애물에서 모바일 로봇으로 향하는 벡터이어야 한다.In other words, a new vector perpendicular to the repulsion vector must satisfy the following two conditions. The repulsion vector ( ) And the avoidance vector ) Must be zero so that the two vectors are perpendicular, and the excitation vector ( ) And the avoidance vector ) Should take a value equal to or greater than 0 and be a vector whose direction is from the obstacle to the mobile robot.
이를 수식으로 표현하면 다음과 같다.This can be expressed as follows.
(8) (8)
그리고 척력 벡터에 수직되는 새로운 벡터는 다음과 같은 두 방법을 통해 얻을 수 있다.Then, a new vector perpendicular to the repulsion vector can be obtained by the following two methods.
첫째, 영 공간 투사 접근(Null space projection approach)에 의하면 다음과 같다.First, according to the Null space projection approach,
(9) (9)
이때, At this time,
상기 영 공간 투사 접근은 척력 벡터의 좌측 영 공간 상에 인력 벡터를 투사하는 것이다. 이러한 접근은 P, Po, Pg가 동일 평면에 있을 때 회피 벡터()가 0이 되게 할 것이다. 이러한 국소 최소값(local minima)은 불안정하며, 장애물을 회피하기 위해 모바일 로봇을 약간 회전시킬 필요가 있다.The zero space projection approach is to project a force vector onto the left zero space of the repulsion vector. This approach, when the P, P o, P g is in the same plane avoidance vector ( ) To be zero. This local minima is unstable and requires a slight rotation of the mobile robot to avoid obstacles.
그런 다음, 작은 0이 아닌 값을 가지고 척력 벡터에 수직인, 회피 벡터는 국소 최소값으로부터 멀리 모바일 로봇을 이동시킬 수 있다. 인력 벡터를 향해 회전하는 것은 최선의 선택 사항일 수 있으나, 회전 방향은 상기 시스템의 안정성에 영향을 미치지 않을 수 있다.Then, the avoidance vector, which has a small nonzero value and is perpendicular to the repulsion vector, can move the mobile robot away from the local minimum. Turning towards the force vector may be the best option, but the direction of rotation may not affect the stability of the system.
둘째, 척력 벡터를 z-축에 대해 만큼 회전시키는 접근에 의하면 다음과 같다.Second, the repulsive force vector is calculated for the z-axis According to the approach of turning as follows.
(10) (10)
이때,At this time,
전술된 두 가지의 접근들은 모두 척력 벡터에 수직하고 동일한 방향을 가리키는 회피 벡터를 산출한다는 점에서 유사하나, 회피 벡터의 크기는 다를 수 있다. 그리고 두 가지의 접근들은 후술하게 될 제어 법칙(control law)에 대하여 다른 피드 포워드 텀(feed forward term)을 제공할 수 있다.Both of the approaches described above are similar in that they both yield an avoidance vector that is perpendicular to the repulsive force vector and pointing in the same direction, but the size of the avoidance vector may be different. And the two approaches may provide different feed forward terms for the control law that will be described later.
이와 같이 벡터 연산부(400)를 통해 인력 벡터, 척력 벡터 및 회피 벡터가 연산될 수 있다.As described above, the attraction vector, the repulsive force vector, and the avoidance vector can be calculated through the
전술된 신호 발생부에서 발생된 스위칭 신호와 벡터 연산부에서 연산된 인력 벡터 및 회피 벡터는 경로 결정부(500)에 전달될 수 있다.The switching signal generated in the signal generating unit and the attraction vector and the avoidance vector calculated in the vector calculating unit may be transmitted to the
상기 경로 결정부(500)에서는 회피 벡터, 인력 벡터 및 스위칭 신호를 이용하여 모바일 로봇의 이동 경로를 결정할 수 있다.The
이때, 경로 결정부(500)에서는 모바일 로봇이 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터(unified velocity vector; UVV)가 연산될 수 있다.At this time, in the
구체적으로 통합 속도 벡터는 다음과 같은 식에 의해 연산될 수 있다.Concretely, the integrated speed vector can be calculated by the following equation.
(11) (11)
이때, 는 통합 속도 벡터이고, 는 스위칭 신호이고, 는 회피 벡터이고, 는 인력 벡터이다.At this time, Is an integrated velocity vector, Is a switching signal, Is an avoidance vector, Is a force vector.
예를 들어, 스위칭 신호가 0(off)인 경우, 통합 속도 벡터는 인력 벡터의 영향을 받게 되고, 스위칭 신호가 1(on)인 경우, 통합 속도 벡터는 회피 벡터의 영향을 받게 될 수 있다.For example, when the switching signal is 0 (off), the integrated velocity vector is affected by the attraction vector, and when the switching signal is 1 (on), the integrated velocity vector may be affected by the avoidance vector.
다시 말해서, 모바일 로봇 주위에 장애물이 감지되지 않는다면, 모바일 로봇은 목표 지점을 향해서 계속 주행할 수 있고, 모바일 로봇 주위에 장애물이 감지된다면, 모바일 로봇은 척력 벡터로부터 수직하게 형성되는 회피 벡터의 방향으로 주행하게 될 수 있다.In other words, if an obstacle is not detected around the mobile robot, the mobile robot can continue running toward the target point, and if an obstacle is detected around the mobile robot, the mobile robot moves in the direction of the avoidance vector formed vertically from the repulsion vector Can be driven.
또한, 의 끝점이 가상의 목표 지점(virtual goal position; Pd)이 될 수 있다. 그러므로, 현재 모바일 로봇의 위치 정보에 통합 속도 벡터의 합을 통해 가상의 목표 지점이 연산될 수 있다.Also, May be the virtual goal position (P d ). Therefore, a virtual target point can be calculated through the sum of the integrated velocity vectors in the current position information of the mobile robot.
그리고, 가상의 목표 지점(Pd)으로부터 목표 속도(desired velocity; vd 및 wd)가 연산될 수 있다. 이때, 목표 속도는 후술하게 될 제어기에 입력되는 피드 포워드 텀(feed forward term)이 될 수 있다.Then, from the virtual target point P d , the target velocity v d And w d may be computed. At this time, the target speed may be a feed forward term input to the controller to be described later.
구체적으로 목표 속도는 다음과 같이 표현될 수 있다.Specifically, the target speed can be expressed as follows.
(12) (12)
(13) (13)
상기 식에서 표현되는 및 는 아래의 식들에 의해서 산출될 수 있으며, 영 공간 투사 접근 및 z-축에 대한 척력 벡터의 rad 회전 접근으로 될 수 있다.Gt; And Can be calculated by the following equations, and the zero-space projection approach and the repulsive vector of the z-axis rad rotation approach.
또한, 각각의 접근에 대하여 정적 장애물과 동적 장애물을 나눠서 고려해볼 수 있다.You can also consider static and dynamic obstacles for each approach.
상기 동적 장애물의 경우, 원형인 정적 장애물 회피의 연장으로 생각할 수 있다. 원형 정적 장애물 회피는 장애물의 위치가 변하지 않지만, 동적 장애물을 장애물 위치가 실시간으로 변한다. 따라서 척력(repulsive) 벡터는 모바일 로봇과 동적 장애물에 의해 결정될 수 있다. 동적 장애물의 위치는 정적 장애물에 비해 항상 변하므로, 제어기에 들어가는 피드 포워드 텀이 정적 장애물과 다르게 될 수 있다.In the case of the dynamic obstacle, it can be considered as an extension of the circular static obstacle avoidance. Circular static obstacle avoidance does not change the position of the obstacle, but dynamic obstacle position changes in real time. Therefore, the repulsive vector can be determined by the mobile robot and the dynamic obstacle. Since the position of the dynamic obstacle always changes relative to the static obstacle, the feedforward term entering the controller can be different from the static obstacle.
A. 영 공간 투사 접근A. Young Space Projection Approach
1) 정적 장애물1) static obstacle
장애물이 정적일 때, 통합 속도 벡터 식, 즉 식 (11)의 시간에 대한 미분 방정식은 다음과 같다.When the obstacle is stationary, the differential equation for the integrated velocity vector equation, ie, the time of equation (11), is:
(14) (14)
(15) (15)
2) 동적 장애물2) Dynamic obstacles
장애물이 동적일 때, 통합 속도 벡터 식, 즉 식 (11)의 시간에 대한 미분 방정식은 다음과 같다.When the obstacle is dynamic, the integrated velocity vector equation, ie, the differential equation for the time in equation (11) is:
(16) (16)
(17) (17)
B. z-축에 대한 척력 벡터의 rad 회전B. The repulsive force vector for the z-axis rad rotation
1) 정적 장애물1) static obstacle
장애물이 정적일 때, 식 (11)의 시간에 대한 미분 방정식은 다음과 같다.When the obstacle is static, the differential equation for the time in Eq. (11) is as follows.
(18) (18)
(19) (19)
2) 동적 장애물2) Dynamic obstacles
장애물이 동적일 때, 식 (11)의 시간에 대한 미분 방정식은 다음과 같다.When the obstacle is dynamic, the differential equation for the time in Eq. (11) is as follows.
(20) (20)
(21) (21)
이와 같이 식 (11)로부터 모바일 로봇의 목표 속도를 획득할 수 있다.Thus, the target speed of the mobile robot can be obtained from the equation (11).
또한, 식 (11)로부터 방향 정보(θd)가 연산될 수 있다.Further, the direction information? D can be calculated from the equation (11).
구체적으로 다음의 식에 의해 연산될 수 있다.Specifically, it can be calculated by the following equation.
(22) (22)
상기 경로 결정부(500)에는 상기 목표 속도 및 목표 방향이 입력될 수 있는 제어기가 구비될 수 있다.The
상기 제어기에서는 소위 제어 법칙(control law)에 의해서, 시스템의 안정화를 위하여, 상기 목표 속도가 보정 또는 제어될 수 있다.In the controller, the target velocity can be corrected or controlled by a so-called control law for stabilization of the system.
상기 제어 법칙은 제1 제어 법칙 및 제2 제어 법칙을 포함할 수 있다.The control law may include a first control law and a second control law.
상기 제1 제어 법칙은 모바일 로봇의 전진 및 후진 모션들을 허용하는 반면, 제2 제어 법칙은 모바일 로봇의 전진 모션만을 허용하는 경계된(bounded) 제어 입력(control input)을 제공한다.The first control law allows forward and backward motions of the mobile robot while the second control law provides a bounded control input that allows only the forward motion of the mobile robot.
일 실시예에 따른 모바일 로봇의 장애물 회피 시스템(10)은 신호 발생부(300)에서 발생된 스위칭 신호에 의해 장애물 회피 모드 및 장애물 없는 모드들 사이에서 작동이 전환될 수 있으므로, 하이브리드 스위칭 시스템(hybrid switching system)으로서 고려될 수 있다.The
상기 제1 제어 법칙 및 안정성 분석(stability analysis)은 다음과 같다.The first control law and the stability analysis are as follows.
통합 속도 벡터를 표현하기 위해 등가 오차(equivalent error; ε) 및 모바일 로봇의 로컬 좌표계에서 방향 오차(orientation error; θε)가 사용될 수 있다.An equivalent error (ε) to represent the integrated velocity vector and an orientation error (θ ε ) in the local coordinate system of the mobile robot can be used.
(23) (23)
게다가, 회전 행렬 은 가역적이므로, ⇔ 이다.In addition, Is reversible, ⇔ to be.
그런 다음, 피드 포워드 텀으로서 제어 입력값들 v 및 w를 선택할 수 있다.The control input values v and w can then be selected as the feed forward term.
(24) (24)
이때, kx, ky 및 kθ은 양의 스칼라 값이다.Where k x , k y, and k [theta] are positive scalar values.
식 (23)의 ε를 미분하고 비홀로노믹 제약들을 고려하여, 다음과 같이 오차 동역학(error dynamics)을 획득할 수 있다.By differentiating [epsilon] in Eq. (23) and considering non-holonomic constraints, the error dynamics can be obtained as follows.
(25) (25)
또한, 리아푸노프 캔디데이트 함수(Lyapunov candidate function)가 다음과 같이 제안될 수 있다.In addition, a Lyapunov candidate function can be proposed as follows.
(26) (26)
식 (26)의 미분은 다음과 같다.The derivative of equation (26) is as follows.
(27) (27)
그러므로, 제어 입력을 다음과 같이 다시 쓸 수 있다.Therefore, the control input can be rewritten as follows.
(28) (28)
이 식을 통해 이라는 것을 알 수 있으며, 시스템은 안정화 여부를 판단할 수 있다.Through this expression , And the system can judge whether or not it is stabilized.
식 (25)에 식 (24)를 대입하면 다음과 같다.Substituting Eq. (24) into Eq. (25) yields the following.
(29) (29)
이때, 간단한 가정을 통해서 다음과 같이 식 (29)가 단순화될 수 있다.At this time, equation (29) can be simplified as follows through a simple assumption.
(30) (30)
예를 들어, 식 (30)을 선형화하는 것에 의해 다음과 같이 될 수 있다.For example, by linearizing equation (30), it can be as follows.
(31) (31)
이때, 이고, 식 (31)의 고유 값이 양의 값이라는 것을 알 수 있으며, 는 불안정한 평형 상태이다. At this time, , And that the eigenvalue of equation (31) is a positive value, Is an unstable equilibrium state.
그러므로 평형 지점 주위의 임의의 지점들은 가장 큰 불변 집합(invariant set)에 수렴할 것이다.Therefore, any points around the equilibrium point will converge to the largest invariant set.
따라서, 라살의 불변 원칙(LaSalles invariant principle)에 따라, 평형 지점(0; 0; 2kπ)이 제어 입력을 통하여 점근적으로(asymptotically) 안정적이 될 수 있다는 것을 알 수 있다.Thus, it can be seen that according to LaSalle's invariant principle, the equilibrium point (0; 0; 2kπ) can be asymptotically stable through the control input.
게다가, 는 특별하고 컴팩트하며, 모든 서브 시스템들에 대하여 약간 안정적인 불변 집합이고, 식 (26)은 임의의 스위칭 신호 하에서 일반적인 리아푸노프 함수이다. Besides, (26) is a generic Riapunov function under any switching signal, and is a constant set that is special and compact, slightly stable for all subsystems.
그러므로, 전술된 스위칭 신호를 구비하는 스위칭 시스템은 바치오티의 이론(Bacciotiis theorem)에 따라서, 점근적으로 안정적이게 될 수 있으며, 모바일 로봇은 바람직한 자세(desired pose; qd)를 추적할 것이다.Therefore, the switching system with the switching signal described above can become asymptotically stable, according to the Bacciotii's theorem, and the mobile robot will track the desired pose (q d ).
결국, 모바일 로봇을 목표 지점으로 안내하면서 모바일 로봇의 바람직한 자세 오차(pose error)를 점근적으로 안정화시킬 수 있다.As a result, the desired pose error of the mobile robot can be asymptotically stabilized while guiding the mobile robot to the target point.
이때, 모바일 로봇이 장애물이 없는 영역 내에 있든 회피 영역 내에 있는지 통합 속도 벡터와 인력 벡터의 내적은 0과 같거나 0보다 커야 한다.In this case, the inner product of the integrated velocity vector and the attraction vector should be equal to or greater than 0, whether the mobile robot is in the obstacle-free area or the avoidance area.
두 벡터의 내적은 다음과 같다.The dot product of the two vectors is
(32) (32)
이와 같이 결국 제1 제어 법칙에 의해서 모바일 로봇은 최종적으로 목표 지점에 도달하게 될 수 있다.As a result, the mobile robot can eventually reach the target point by the first control law.
또한, 상기 제2 제어 법칙 및 안정성 분석은 다음과 같다.The second control law and stability analysis are as follows.
모바일 로봇의 방향 오차는 다음과 같다.The direction error of the mobile robot is as follows.
(33) (33)
이때, θd는 식(22)에서 정의된 바람직한 방향 정보이다.Here, θ d is the preferred direction information defined in equation (22).
상기 제2 제어 법칙은 다음과 같이 표현될 수 있다.The second control law can be expressed as follows.
(34) (34)
이때, k1 및 k2는 양의 스칼라 값이다. Where k 1 and k 2 are positive scalar values.
안정성을 분석하기 위해, 리아푸노프 캔디데이트 함수(Lyapunov candidate function)가 다음과 같이 제안될 수 있다.To analyze the stability, a Lyapunov candidate function can be proposed as follows.
(35) (35)
식 (35)를 시간에 대해 미분하면 다음과 같다. (35) can be differentiated with respect to time as follows.
(36) (36)
이때, 의 제2 텀(term)은 일 때마다 음수(negative)라는 것을 알 수 있다. 의 제1 텀(term) 또한 이고 m이 짝수일 때 음수(negative)이다.At this time, The second term of < RTI ID = 0.0 > It can be seen that each time it is negative. The first term of < RTI ID = 0.0 > And is negative when m is an even number.
그러므로, 시스템은 제2 제어 법칙에 의해 점근적으로 안정적이 될 수 있다. 증명의 나머지 부분은, 제1 제어 법칙의 것을 따르며, 임의의 스위칭 및 항상 목표 지점에 대한 양의 투사 하에서 안정성을 확립할 수 있다.Therefore, the system can be asymptotically stable by the second control law. The remainder of the proof follows the first control law and can establish stability under certain switching and always positive projections to the target point.
이와 같이 설계된 두 개의 제어 법칙에 의해서, 통합 속도 벡터로부터 산출된 목표 속도(vd 및 ωd)를 보정하여 보정된 목표 속도(v 및 ω)를 모바일 로봇에 전달할 수 있다.With the two control laws designed in this way, the corrected target velocities v and ω can be transmitted to the mobile robot by correcting the target velocities v d and ω d calculated from the integrated velocity vectors.
결국, 보정된 목표 속도에 의해서 모바일 로봇이 이동될 수 있으며, 이때 모바일 로봇의 상태를 로컬라이즈(localize)할 수 있다.As a result, the mobile robot can be moved by the corrected target speed, and at this time, the state of the mobile robot can be localized.
그러므로 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템은 장애물이 있는 상황과 장애물이 없는 상황을 별도로 고려하여, 두 상황 간의 안정적인 스위칭을 수행할 수 있으며, 모바일 로봇의 장애물 회피를 위한 실시간 안정적 시스템 스위칭 접근법(Stable Switched-System Approach)을 구현할 수 있다.Therefore, the obstacle avoidance system of the mobile robot according to the embodiment can perform the stable switching between the two situations by separately considering the situation in which the obstacle exists and the situation in which there is no obstacle, and the real time stable system switching approach (Stable Switched-System Approach).
도 6은 일 실시예에 따른 모바일 로봇의 장애물 회피 방법을 도시한다.FIG. 6 illustrates a method of avoiding obstacles of a mobile robot according to an embodiment of the present invention.
도 6을 참조하여, 일 실시예에 따른 모바일 로봇의 장애물 회피 방법이 수행될 수 있다.Referring to FIG. 6, an obstacle avoiding method of a mobile robot according to an embodiment can be performed.
이하에서는 정적 장애물이 감지된 경우를 예로 들어 설명하기로 한다.Hereinafter, a case where a static obstacle is detected will be described as an example.
그러나 동적 장애물이 감지된 경우 또한 유사한 방식으로 수행될 수 있으며, 단지, 목표 속도를 구하는 수식만이 다르게 적용될 수 있다.However, when a dynamic obstacle is detected, it can also be performed in a similar manner, but only the formula for obtaining the target velocity can be applied differently.
우선, 모바일 로봇의 초기 상태(Ri)가 획득된다(S10).First, the initial state is obtained (R i) of the mobile robot (S10).
상기 모바일 로봇의 초기 상태(Ri)는 위치 획득부를 통해 획득될 수 있다.The initial state (R i) of the mobile robot can be obtained through the pickup position.
그런 다음, 모바일 로봇 주위의 환경이 획득된다(S20).Then, the environment around the mobile robot is acquired (S20).
이때, 감지부에 의해서 모바일 로봇 주위에 위치된 장애물이 감지될 수 있다.At this time, the obstacle located around the mobile robot can be detected by the sensing unit.
장애물이 감지되면, 위치 획득부에 의해서 장애물의 위치(Po) 및 모바일 로봇이 향하는 목표 지점(Pg)의 위치가 획득된다(S30).When the obstacle is detected, the position (P o ) of the obstacle and the position of the target point (P g ) toward the mobile robot are obtained by the position obtaining unit (S30).
장애물의 위치 및 모바일 로봇이 향하는 목표 지점의 위치는 동시적으로 또는 순차적으로 위치 획득부에 의해 획득될 수 있다.The position of the obstacle and the position of the target point toward which the mobile robot is directed can be obtained simultaneously or sequentially by the position obtaining section.
그런 다음, 장애물이 정적 장애물인지 동적 장애물인지 판단하게 된다(S40). Then, it is determined whether the obstacle is a static obstacle or a dynamic obstacle (S40).
정적 장애물인 경우, 장애물이 원형 장애물인지 큰 비원형 장애물인지 판단하게 된다(S50).If the obstacle is a static obstacle, it is determined whether the obstacle is a circular obstacle or a large non-circular obstacle (S50).
그런 다음, 모바일 로봇과 상기 장애물 사이의 거리 및 상대 각도를 고려하여 결정된 스위칭 신호가 발생된다(S60).Then, a switching signal is generated in consideration of the distance between the mobile robot and the obstacle and the relative angle (S60).
이때, 장애물이 원형 장애물인지 큰 비원형 장애물인지에 따라서 다른 수식에 따라서 스위칭 신호(ζri)가 발생될 수 있다. 그리고 모바일 로봇의 주위에 장애물이 감지되지 않는다면, 스위칭 신호는 O으로 될 수 있다.At this time, depending on whether the obstacle is a circular obstacle or a large non-circular obstacle, the switching signal? Ri can be generated according to another equation. If no obstacle is detected around the mobile robot, the switching signal may be O.
또한, 스위칭 신호 발생과 동시적으로 또는 순차적으로, 모바일 로봇과 장애물 사이의 척력 벡터, 모바일 로봇과 목표 지점 사이의 인력 벡터 및 척력 벡터로부터 수직하게 형성되는 회피 벡터가 연산된다(S70).Simultaneously or sequentially with the generation of the switching signal, the avoidance vector formed vertically from the repulsive force vector between the mobile robot and the obstacle, the attracting force vector between the mobile robot and the target point, and the repulsion force vector is calculated (S70).
상기 척력 벡터는 모바일 로봇의 현재 상태와 장애물의 위치로부터 획득될 수 있고, 상기 인력 벡터는 모바일 로봇의 현재 상태와 목표 지점의 위치로부터 획득될 수 있다. 그리고, 회피 벡터는 척력 벡터와의 내적이 0과 동일하거나 0보다 크게 형성될 수 있다.The repulsive force vector can be obtained from the current state of the mobile robot and the position of the obstacle, and the attraction vector can be obtained from the current state of the mobile robot and the position of the target point. The avoidance vector may be formed such that the inner product with the repulsive force vector is equal to or greater than zero.
그런 다음, 상기 회피 벡터, 상기 인력 벡터 및 상기 스위칭 신호에 의해 상기 모바일 로봇이 상기 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터가 연산된다(S80).Then, an integrated velocity vector indicating a path through which the mobile robot is to be moved by the mobile robot in order to avoid the obstacle is calculated by the avoidance vector, the attraction vector, and the switching signal (S80).
이때, 모바일 로봇의 주위에 장애물이 감지되지 않아서 스위칭 신호가 O이 된다면, 통합 속도 벡터는 인력 벡터만의 식으로 표현될 수 있고, 모바일 로봇의 주위에 장애물이 감지되어 스위칭 신호가 1이 된다면, 통합 속도 벡터는 회피 벡터만의 식으로 표현될 수 있다.At this time, if an obstacle is not detected around the mobile robot and the switching signal is 0, the integrated velocity vector can be expressed by only the attraction vector, and if the obstacle is detected around the mobile robot and the switching signal becomes 1, The integrated velocity vector can be expressed by an expression of the avoidance vector only.
이어서, 통합 속도 벡터로부터 가상의 목표 지점 및 목표 방향이 연산된다(S90).Subsequently, a virtual target point and a target direction are calculated from the integrated velocity vector (S90).
또한, 가상의 목표 지점으로부터 목표 속도가 연산된다(S100).Further, the target speed is calculated from the virtual target point (S100).
그런 다음, 목표 속도가 보정된다(S110).Then, the target speed is corrected (S110).
구체적으로, 제어기에서 제1 제어 법칙 또는 제2 제어 법칙에 목표 속도 및 목표 방향이 입력되어, 피드 포워드 제어가 수행될 수 있다.Specifically, the target speed and the target direction are input to the first control law or the second control law in the controller, and the feedforward control can be performed.
결국 보정된 목표 속도에 따라 모바일 로봇이 이동하도록 보정된 목표 속도에 대한 명령어가 전달된다(S120).Finally, a command for the corrected target speed is transmitted to the mobile robot according to the corrected target speed (S120).
그런 다음, 모바일 로봇이 이동되고, 모바일 로봇의 상태가 로컬라이즈된다(S130).Then, the mobile robot is moved and the state of the mobile robot is localized (S130).
모바일 로봇의 상태가 로컬라이즈된 후에, 모바일 로봇의 현재 상태가 산출된다(S140).After the state of the mobile robot is localized, the current state of the mobile robot is calculated (S140).
그런 다음, 전술된 프로세스의 정지 여부가 결정된다(S150).Then, whether or not the above-described process is stopped is determined (S150).
예를 들어, 정지를 선택한다면, 전술된 프로세스는 종료될 수 있고, 정지를 선택하지 않는다면, 전술된 프로세스 중 상기 모바일 로봇의 주위 환경이 획득되는 단계로 복귀될 수 있다.For example, if the user selects to stop, the above-described process can be terminated, and if not selected to stop, the environment of the mobile robot during the above-described process can be recovered.
이상 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법에 대하여 설명되었으나, 이하에서는 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법을 통한 시뮬레이션 및 실제 실험 결과에 대하여 설명된다.Although the system and method for obstacle avoidance of the mobile robot according to one embodiment described above have been described, simulation and actual experimental results of the obstacle avoidance system and method of the mobile robot according to one embodiment will be described below.
도 7(a) 및 (b)는 제1 및 제2 스위칭 신호와 제1 제어 법칙을 구비하여 영 공간 투사 방법을 이용한 시뮬레이션 및 실험 결과를 도시하고, 도 7(c)는 일반적인 모바일 로봇의 장애물 회피 시뮬레이션 및 실험 결과를 도시한다.7 (a) and 7 (b) show simulation and experimental results using a zero-space projection method with first and second switching signals and a first control law, and Fig. 7 (c) Avoidance simulation, and experimental results.
이때, 파란색 원 및 녹색 점은 각각 장애물 및 목표 지점을 나타내며, 모바일 로봇의 초기 위치는 목표 지점(넘버 4)과 동일하다.In this case, the blue circle and the green point represent the obstacle and the target point, respectively, and the initial position of the mobile robot is the same as the target point (the number 4).
도 7(a) 내지 (c)를 참조하여, 모바일 로봇은 [1; 0; 0]T에서 시작하고 4개의 중간 지점들(waypoint)을 향해 반시계 방향으로 순차적으로 이동한다. 이때, 모든 2개의 중간 지점들 사이에 장애물을 놓았다. 이 시뮬레이션들 및 실험들에서의 결과는 모바일 로봇이 4개의 장애물들을 성공적으로 회피하고 4개의 중간 지점들에 도달한다는 것을 보여준다. Referring to Figs. 7 (a) to 7 (c), the mobile robot includes [1; 0; 0] T and sequentially move counterclockwise toward the four intermediate points (waypoints). At this time, an obstacle was placed between all two intermediate points. The results in these simulations and experiments show that the mobile robot successfully avoids four obstacles and reaches four intermediate points.
또한, 도 7(a) 내지 (c)를 비교했을 때, 제2 스위칭 신호를 이용하는 각속도가 다른 것들보다 채터링이 덜 발생한다는 것을 알 수 있다. 그러나, 도 7(a)에서 제1 스위칭 신호를 이용하는 추적 결과는 도 7(b)의 제2 스위칭 신호 및 도 7(c)의 일반적인 모바일 로봇의 장애물 회피 시뮬레이션 및 실험 결과보다 더 작은 회피 영역들을 가진다는 것을 알 수 있다.Also, when comparing Figs. 7A to 7C, it can be seen that angular velocity using the second switching signal is less chattering than others. However, the tracking result using the first switching signal in Fig. 7 (a) is smaller than the second switching signal in Fig. 7 (b) and the obstacle avoidance simulation and experimental results of the general mobile robot in Fig. It can be seen that it has.
제1 및 제2 스위칭 신호는 거리 및 방향을 모두 고려하므로 회피 영역이 에서 으로 감소할 것이다.Since the first and second switching signals consider both the distance and the direction, in .
일반적인 모바일 로봇의 장애물 회피의 경우 모바일 로봇과 장애물 사이의 거리만을 고려하므로, 회피 영역이 을 유지한다.In the case of obstacle avoidance of a general mobile robot, only the distance between the mobile robot and the obstacle is considered, Lt; / RTI >
게다가, 방향을 고려하는 것에 의해, 모바일 로봇의 모션들은 제1 및 제2 스위칭 신호를 이용하여 4개의 장애물들에 의해 영향을 받지 않았으나, 일반적인 모바일 로봇의 장애물 회피의 경우 4개의 장애물들에 의해 영향을 받았다.In addition, by considering the direction, the motions of the mobile robot are not affected by the four obstacles using the first and second switching signals, but in the case of the obstacle avoidance of a general mobile robot, .
도 8(a) 내지 (c)는 척력 벡터의 회전을 기반으로 하여, 제3 스위칭 신호 및 제1 제어 법칙을 이용한 시뮬레이션 및 실험 결과를 도시하고, 도 8(d) 내지 (f)는 척력 벡터의 회전을 기반으로 하여, 제1 스위칭 신호 및 제1 제어 법칙을 이용한 시뮬레이션 및 실험 결과를 도시하며, 도 8(g) 내지 (i)는 포텐셜 필드 접근에 기반하는 일반적인 모바일 로봇의 장애물 회피 시뮬레이션 및 실험 결과를 도시한다.8 (a) to 8 (c) show simulation and experimental results using the third switching signal and the first control law based on the rotation of the repulsive force vector, and Figs. 8 (d) 8 (g) to 8 (i) show obstacle avoidance simulations of a general mobile robot based on a potential field approach, and FIGS. 8 The experimental results are shown.
이 시뮬레이션 및 실험은 큰 비원형 장애물들을 구비하여 수행되었다. These simulations and experiments were performed with large non-circular obstructions.
또한 모든 시뮬레이션들 및 실험들은 제2 제어 법칙에 기초되었고, 제어 값(control gain)은 k1 = 0.5 및 k2 = 4이다. 모바일 로봇은 에서 시작하고 에 도달해야 한다. 이때, 모든 시뮬레이션들 및 실험들에는 비원형 장애물들이 구비된다.All simulations and experiments are also based on the second control law, and the control gains are k 1 = 0.5 and k 2 = 4. The mobile robot Start with . At this time, non-circular obstacles are included in all simulations and experiments.
도 8(a) 내지 (c)를 참조하여, 제3 스위칭 신호를 구비하는 척력 벡터의 회전은 장애물들을 효율적으로 다룰 수 있다.Referring to Figs. 8 (a) to 8 (c), the rotation of the repulsion vector including the third switching signal can efficiently deal with the obstacles.
그러나, 도 8(d) 내지 (f)에 도시된 바와 같이, 제1 스위칭 신호는 큰 비원형 장애물들을 다루는 데 어려울 수 있다.However, as shown in Figs. 8 (d) to 8 (f), the first switching signal can be difficult to deal with large non-circular obstacles.
또한, 도 8(g) 내지 (i)에 도시된 바와 같이 포텐셜 필드 접근은 장애물들을 회피하는 데 실패할 수 있고, 모바일 로봇이 로컬 미니마(local minima)에 빠질 수 있다.Further, as shown in Figs. 8 (g) to (i), the potential field approach may fail to avoid obstacles and the mobile robot may fall into the local minima.
도 9(a) 내지 (d)는 다중 정적 장애물들을 회피하는 시뮬레이션 및 실험 결과를 도시한다.Figures 9 (a) - (d) show simulation and experimental results to avoid multiple static obstacles.
이 시뮬레이션 및 실험에서, 척력 벡터를 z-축에 대해 만큼 회전시키는 것에 의해 통합 속도 벡터를 유도하고, 제2 제어 법칙을 이용하였으며, 모두 제1 스위칭 신호 및 제2 스위칭 신호를 이용하였다. In this simulation and experiment, the repulsive force vector is calculated for the z-axis And the second control law was used. Both the first switching signal and the second switching signal were used.
예를 들어, 라면, 척력 벡터는 z축에 대해 rad으로 회전될 것이고, 그렇지 않다면, 척력 벡터가 반대 방향으로 회전될 것이다. E.g, , The repulsive force vector is calculated for the z-axis rad, otherwise the repulsion vector will be rotated in the opposite direction.
전역 경로 평면(global path planar)을 이용해서는 다중 장애물 회피 시나리오를 해결할 수 없으므로, 개별적인 장애물 정보를 국부적으로 고려할 수 있다.Multiple obstacle avoidance scenarios can not be solved using the global path planar, so individual obstacle information can be considered locally.
만약 라면, 새로운(또는 다음) 장애물을 회피하도록 고려될 수 있다.if , Then it can be considered to avoid the new (or next) obstacle.
도 9(a) 및 (b)에 도시된 바와 같이, 모바일 로봇은 에서 시작하고, 예를 들어 20m x 30m이고 30개의 정적 장애물들로 덮인 회피 영역을 통과하여, 에서 도달할 필요가 있다.As shown in Figs. 9 (a) and 9 (b), the mobile robot For example, 20m x 30m and passes through the avoidance zone covered by 30 static obstacles, .
이후에, 도 9(c) 및 (d)에 도시된 바와 같이, 동일한 장애물 회피 영역 내에서, 모바일 로봇의 초기 위치 및 목표 지점의 위치들을 각각 및 으로 변경시켜 시뮬레이션 및 실험을 다시 수행할 수 있다.Thereafter, as shown in Figs. 9 (c) and 9 (d), within the same obstacle avoidance region, the positions of the initial position and the target position of the mobile robot are And The simulation and the experiment can be performed again.
도 10(a) 내지 (d)는 충돌 회피에 대한 시뮬레이션 및 실험 결과를 도시한다.Figures 10 (a) - (d) show simulation and experimental results for collision avoidance.
이 시뮬레이션 및 실험은 두 개의 로봇들이 서로를 향하고 그것들의 위치들을 교환한다. 이는 각각의 시뮬레이션 및 실험을 위해 로컬 미니마 형태를 구성한다. In this simulation and experiment, two robots point to each other and exchange their positions. This constitutes a local minima form for each simulation and experiment.
도 10(a) 및 (b)의 경우, 척력 벡터를 z-축에 대해 만큼 회전시키는 것에 의해 유도된 통합 속도 벡터와, 각각 제1 스위칭 신호 및 제2 스위칭 신호를 이용하는 것이다.10 (a) and 10 (b), the repulsive force vector is calculated for the z-axis And a first switching signal and a second switching signal, respectively.
반면, 도 10(c)는 일반적인 모바일 로봇의 장애물 회피 시뮬레이션 및 실험에서 척력 벡터를 z-축에 대해 만큼 회전시키는 것에 의해 유도된 통합 속도 벡터를 이용하는 것이고, 도 10(d)는 일반적인 모바일 로봇의 장애물 회피 시뮬레이션 및 실험에서 포텐셜 필드 기법을 이용하는 것이다.On the other hand, Fig. 10 (c) shows the obstacle avoidance simulation and experiment of a general mobile robot, Fig. 10 (d) illustrates the use of the potential field technique in the obstacle avoidance simulation and experiment of a general mobile robot.
두 개의 로봇들 사이의 거리 및 궤적들로부터, 도 10(a) 내지 (c)에 도시된 것과 같이 본 발명에서 제안된 접근을 구비하여 두 개의 로봇들이 서로 성공적으로 충돌을 회피한 것을 확인할 수 있으며, 도 10(d)에 도시된 것과 같이, 두 개의 로봇들은 포텐셜 필드를 이용할 경우 교착 상태(deadlock)에 이를 수 있다.From the distances and trajectories between the two robots, it is possible to confirm that the two robots have successfully avoided collision with each other with the approach proposed in the present invention as shown in Figs. 10 (a) to (c) , As shown in Fig. 10 (d), the two robots can reach a deadlock when using the potential field.
그러므로 일 실시예에 따른 모바일 로봇의 장애물 회피 시스템 및 방법은 정적인 원형 또는 비원형 장애물을 회피하고, 로봇 간의 협조를 통하여 상호 충돌을 방지할 수 있으며, 모바일 로봇의 자율적인 장애물 회피를 가능하게 하여, 산업적 실용화, 안전한 모션계획, 자율주행 등을 위한 모바일 로봇의 주된 이슈 중의 하나인 알고리즘의 강건함과 신뢰성을 획득할 수 있다. 게다가, 모바일 로봇의 장애물 회피 시 발생될 수 있는 채터링 또는 오실레이션을 방지할 수 있으며, 장애물 회피를 위해 소요되는 시간을 단축시킬 수 있으며, 모바일 로봇 주위의 장애물 인식을 통해 비교적 간단한 방식으로 장애물 회피가 수행될 수 있다.Therefore, the obstacle avoidance system and method of the mobile robot according to the embodiment can avoid static circular or non-circular obstacles, prevent collision between robots by cooperating with each other, and enable autonomous obstacle avoidance of the mobile robot , Robustness and reliability of algorithms, one of the main issues of mobile robots for industrial practical use, safe motion planning, autonomous driving, etc., can be obtained. In addition, it is possible to prevent chattering or oscillation that may occur in obstacle avoidance of the mobile robot, to shorten the time required for obstacle avoidance, and to avoid obstacles in a relatively simple manner by recognizing obstacles around the mobile robot Can be performed.
이상과 같이 본 발명의 실시예에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다. Although the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, And various modifications and changes may be made thereto without departing from the scope of the present invention. Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .
10: 모바일 로봇의 장애물 회피 시스템
100: 감지부
200: 위치 획득부
300: 신호 발생부
400: 벡터 연산부
500: 경로 결정부10: Mobile robot obstacle avoidance system
100:
200:
300: Signal generator
400: Vector operation unit
500: Path determining unit
Claims (10)
상기 모바일 로봇, 장애물 및 상기 목표 지점의 위치 정보를 획득할 수 있는 위치 획득부;
상기 감지부에 의해 장애물이 감지되는 경우, 상기 장애물의 형상, 상기 모바일 로봇과 상기 장애물 사이의 거리 및 상대 각도를 고려하여 결정된 스위칭 신호를 발생시키는 신호 발생부;
상기 위치 획득부로부터 획득된 위치 정보를 통해, 상기 모바일 로봇과 상기 장애물 사이의 척력 벡터 및 상기 모바일 로봇과 상기 목표 지점 사이의 인력 벡터를 연산하는 벡터 연산부; 및
상기 인력 벡터 및 상기 스위칭 신호를 이용하여 상기 모바일 로봇의 이동 경로를 결정하는 경로 결정부;
를 포함하고,
상기 스위칭 신호에 의해 상기 모바일 로봇의 주행이 실시간으로 제어될 수 있고,
상기 스위칭 신호는 원형 장애물 감지 시 발생되는 제1 스위칭 신호를 포함하고,
상기 제1 스위칭 신호는 아래와 같이 결정되며,
이때, 는 제1 스위칭 신호이고, dro는 상기 모바일 로봇과 상기 장애물 사이의 거리이고, θ는 상기 모바일 로봇의 주행각도(heading angle)이며,
상기 dm은 이고,
이때, R은 상기 감지부에 의한 감지 범위이고, r은 회피 범위이며, θro는 상기 모바일 로봇의 주행각도와 상기 장애물 방위각의 차이이며,
상기 스위칭 신호는 상기 제1 스위칭 신호에 의한 상기 모바일 로봇의 작동을 보완하기 위한 제2 스위칭 신호를 더 포함하고,
상기 제2 스위칭 신호는 아래와 같이 결정되며,
이때, 는 제2 스위칭 신호이고, 는 상기 모바일 로봇의 현재 스위칭 신호이고,
상기 제2 스위칭 신호는 상기 모바일 로봇과 상기 장애물 사이의 거리, 상대 각도 및 상기 모바일 로봇의 현재 스위칭 신호를 고려하여 실시간 결정되어, 상기 모바일 로봇의 회피 영역을 감소시키고 상기 모바일 로봇의 주행 중 채터링 현상을 방지하는 모바일 로봇의 장애물 회피 시스템.
A sensing unit for sensing an obstacle located around the mobile robot traveling toward the target point;
A position acquiring unit capable of acquiring position information of the mobile robot, an obstacle, and the target point;
A signal generator for generating a switching signal in consideration of a shape of the obstacle, a distance between the mobile robot and the obstacle, and a relative angle when the obstacle is detected by the sensing unit;
A vector computing unit for computing a repulsive force vector between the mobile robot and the obstacle and a force vector between the mobile robot and the target point through position information obtained from the position obtaining unit; And
A path determination unit for determining a travel path of the mobile robot using the attraction vector and the switching signal;
Lt; / RTI >
The traveling of the mobile robot can be controlled in real time by the switching signal,
Wherein the switching signal includes a first switching signal generated upon detection of a circular obstacle,
The first switching signal is determined as follows,
At this time, D ro is a distance between the mobile robot and the obstacle, θ is a heading angle of the mobile robot,
The d m ego,
Here, R is the sensing range of the sensing unit, r is the avoidance range,? Ro is the difference between the traveling angle of the mobile robot and the obstacle azimuth angle,
Wherein the switching signal further comprises a second switching signal for compensating for the operation of the mobile robot by the first switching signal,
The second switching signal is determined as follows,
At this time, Is a second switching signal, Is the current switching signal of the mobile robot,
The second switching signal is determined in real time considering the distance between the mobile robot and the obstacle, the relative angle, and the current switching signal of the mobile robot, thereby reducing the avoidance area of the mobile robot, Obstacle avoidance system of mobile robot to prevent the phenomenon.
상기 벡터 연산부에서는 상기 척력 벡터로부터 회피 벡터가 더 연산되고, 상기 회피 벡터는 상기 인력 벡터와의 내적이 0과 같거나 0보다 큰 모바일 로봇의 장애물 회피 시스템.
The method according to claim 1,
Wherein the avoidance vector is further calculated from the repulsive force vector in the vector operation unit, and the avoidance vector has an inner product with the attracting vector equal to or greater than zero.
상기 경로 결정부에서는 상기 모바일 로봇이 상기 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터(unified velocity vector)가 연산되고,
상기 통합 속도 벡터는 아래의 식에 의해 연산되고,
이때, 는 통합 속도 벡터이고, 는 스위칭 신호이고, 는 회피 벡터이고, 는 인력 벡터인 모바일 로봇의 장애물 회피 시스템.
3. The method of claim 2,
In the path determining unit, an unified velocity vector indicating a path to be moved by the mobile robot in order to avoid the obstacle is calculated,
The integrated velocity vector is calculated by the following equation,
At this time, Is an integrated velocity vector, Is a switching signal, Is an avoidance vector, Is a workforce vector.
상기 경로 결정부에서 상기 통합 속도 벡터와 상기 모바일 로봇의 위치 정보로부터 가상의 목표 지점이 연산되고, 상기 가상의 목표 지점으로부터 연산된 속도 정보는 보정될 수 있는 모바일 로봇의 장애물 회피 시스템.
The method of claim 3,
A virtual target point is calculated from the integrated velocity vector and the position information of the mobile robot in the path determination unit, and the velocity information calculated from the virtual target point can be corrected.
상기 스위칭 신호는 비원형 장애물 감지 시 발생되는 제3 스위칭 신호를 더 포함하고,
상기 제3 스위칭 신호는 아래와 같이 결정되며,
이때, 는 제3 스위칭 신호이고, 는 상기 모바일 로봇과 상기 목표 지점을 잇는 선이고, 는 상기 장애물 상의 모든 점의 집합인 모바일 로봇의 장애물 회피 시스템.
The method according to claim 1,
Wherein the switching signal further comprises a third switching signal generated upon detection of the non-circular obstacle,
The third switching signal is determined as follows,
At this time, Is a third switching signal, Is a line connecting the mobile robot and the target point, Wherein the obstacle avoidance system is a set of all points on the obstacle.
상기 모바일 로봇의 주위 환경이 획득되는 단계;
상기 모바일 로봇의 주위에 위치된 장애물이 감지되는 단계;
상기 모바일 로봇 주위의 장애물의 위치 및 상기 모바일 로봇이 향하는 목표 지점의 위치가 획득되는 단계;
상기 장애물의 형상, 상기 모바일 로봇과 상기 장애물 사이의 거리 및 상대 각도를 고려하여 결정된 스위칭 신호가 발생되는 단계; 및
상기 모바일 로봇과 상기 장애물 사이의 척력 벡터, 상기 모바일 로봇과 상기 목표 지점 사이의 인력 벡터 및 상기 척력 벡터로부터 수직하게 형성되는 회피 벡터가 연산되는 단계;
를 포함하고,
상기 스위칭 신호에 의해 상기 모바일 로봇의 주행이 실시간으로 제어될 수 있고,
상기 스위칭 신호는 원형 장애물 감지 시 발생되는 제1 스위칭 신호를 포함하고,
상기 제1 스위칭 신호는 아래와 같이 결정되며,
이때, 는 제1 스위칭 신호이고, dro는 상기 모바일 로봇과 상기 장애물 사이의 거리이고, θ는 상기 모바일 로봇의 주행각도(heading angle)이며,
상기 dm은 이고,
이때, R은 상기 감지부에 의한 감지 범위이고, r은 회피 범위이며, θro는 상기 모바일 로봇의 주행각도와 상기 장애물 방위각의 차이이며,
상기 스위칭 신호는 상기 제1 스위칭 신호에 의한 상기 모바일 로봇의 작동을 보완하기 위한 제2 스위칭 신호를 더 포함하고,
상기 제2 스위칭 신호는 아래와 같이 결정되며,
이때, 는 제2 스위칭 신호이고, 는 상기 모바일 로봇의 현재 스위칭 신호이고,
상기 제2 스위칭 신호는 상기 모바일 로봇과 상기 장애물 사이의 거리, 상대 각도 및 상기 모바일 로봇의 현재 스위칭 신호를 고려하여 실시간 결정되어, 상기 모바일 로봇의 회피 영역을 감소시키고 상기 모바일 로봇의 주행 중 채터링 현상을 방지하는 모바일 로봇의 장애물 회피 방법.
Obtaining an initial state of the mobile robot;
Obtaining an environment of the mobile robot;
Detecting an obstacle located around the mobile robot;
Obtaining a position of an obstacle around the mobile robot and a position of a target point toward the mobile robot;
Generating a switching signal based on a shape of the obstacle, a distance between the mobile robot and the obstacle, and a relative angle; And
Calculating a repulsive force vector between the mobile robot and the obstacle, a force vector between the mobile robot and the target point, and an avoidance vector formed vertically from the repulsive force vector;
Lt; / RTI >
The traveling of the mobile robot can be controlled in real time by the switching signal,
Wherein the switching signal includes a first switching signal generated upon detection of a circular obstacle,
The first switching signal is determined as follows,
At this time, D ro is a distance between the mobile robot and the obstacle, θ is a heading angle of the mobile robot,
The d m ego,
Here, R is the sensing range of the sensing unit, r is the avoidance range,? Ro is the difference between the traveling angle of the mobile robot and the obstacle azimuth angle,
Wherein the switching signal further comprises a second switching signal for compensating for the operation of the mobile robot by the first switching signal,
The second switching signal is determined as follows,
At this time, Is a second switching signal, Is the current switching signal of the mobile robot,
The second switching signal is determined in real time considering the distance between the mobile robot and the obstacle, the relative angle, and the current switching signal of the mobile robot, thereby reducing the avoidance area of the mobile robot, The obstacle avoiding method of the mobile robot prevents the phenomenon.
상기 모바일 로봇과 상기 장애물 사이의 척력 벡터, 상기 모바일 로봇과 상기 목표 지점 사이의 인력 벡터 및 상기 척력 벡터로부터 수직하게 형성되는 회피 벡터가 연산되는 단계 이후에,
상기 회피 벡터, 상기 인력 벡터 및 상기 스위칭 신호에 의해 상기 모바일 로봇이 상기 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터가 연산되는 단계가 더 포함되는 모바일 로봇의 장애물 회피 방법.
9. The method of claim 8,
After the step of calculating a repulsive vector formed vertically from the repulsive force vector and the repulsive force vector between the mobile robot and the obstacle, the attraction vector between the mobile robot and the target point,
Further comprising the step of calculating an integrated velocity vector indicating a path through which the mobile robot is to be moved by the mobile robot in accordance with the avoidance vector, the attraction vector, and the switching signal.
상기 회피 벡터, 상기 인력 벡터 및 상기 스위칭 신호에 의해 상기 모바일 로봇이 상기 장애물을 회피하기 위해 이동되어야 할 경로를 나타내는 통합 속도 벡터가 연산되는 단계 이후에,
상기 통합 속도 벡터로부터 가상의 목표 지점 및 목표 방향이 연산되는 단계;
상기 가상의 목표 지점으로부터 목표 속도가 연산되는 단계;
상기 목표 속도가 보정되는 단계; 및
상기 보정된 목표 속도에 따라 상기 모바일 로봇이 이동되는 단계;
가 더 포함되는 모바일 로봇의 장애물 회피 방법.10. The method of claim 9,
After the step of calculating the integrated speed vector indicating the route by which the mobile robot should be moved by the mobile robot in order to avoid the obstacle by the avoiding vector, the attracting vector, and the switching signal,
Calculating a virtual target point and a target direction from the integrated velocity vector;
Calculating a target speed from the virtual target point;
Correcting the target speed; And
Moving the mobile robot according to the corrected target speed;
The obstacle avoidance method of the mobile robot further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140154422A KR101664575B1 (en) | 2014-11-07 | 2014-11-07 | Method to obstacle avoidance for wheeled mobile robots |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140154422A KR101664575B1 (en) | 2014-11-07 | 2014-11-07 | Method to obstacle avoidance for wheeled mobile robots |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160054862A KR20160054862A (en) | 2016-05-17 |
KR101664575B1 true KR101664575B1 (en) | 2016-10-10 |
Family
ID=56109467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140154422A KR101664575B1 (en) | 2014-11-07 | 2014-11-07 | Method to obstacle avoidance for wheeled mobile robots |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101664575B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101987868B1 (en) | 2018-11-29 | 2019-06-11 | 주식회사 트위니 | Obstacle avoidance method in state-time space and recording medium storing program for executing the same, and computer program stored in recording medium for executing the same |
KR102049962B1 (en) | 2019-04-17 | 2019-11-28 | 주식회사 트위니 | Sampling based optimal tree planning method and recording medium storing program for executing the same, and computer program stored in recording medium for executing the same |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688342B (en) * | 2017-03-27 | 2019-05-10 | 平安科技(深圳)有限公司 | The obstruction-avoiding control system and method for robot |
CN107414825B (en) * | 2017-06-27 | 2019-06-11 | 中国科学技术大学 | Industrial robot smoothly grabs the motion planning system and method for mobile object |
KR102109004B1 (en) | 2018-01-10 | 2020-05-11 | 부산대학교 산학협력단 | Apparatus and Method for Avoiding Obstacle of Mobile Robot using Line Information |
CN108983785A (en) * | 2018-08-06 | 2018-12-11 | 上海电气集团股份有限公司 | The collision-proof method and system of healing robot |
CN110442139B (en) * | 2019-08-16 | 2022-04-15 | 重庆邮智机器人研究院有限公司 | Mobile robot hybrid obstacle avoidance control method based on switching signals |
KR20190111866A (en) | 2019-09-24 | 2019-10-02 | 부산대학교 산학협력단 | Apparatus and Method for Avoiding Obstacle of Mobile Robot using Line Information |
KR102486834B1 (en) | 2022-03-31 | 2023-01-11 | 주식회사 파이엇 | A running control management system for an autonomous mobile support service robot |
CN115268457A (en) * | 2022-08-10 | 2022-11-01 | 美的集团(上海)有限公司 | Obstacle avoidance robot, control method and device thereof, and readable storage medium |
CN115229772B (en) * | 2022-08-23 | 2023-07-18 | 深圳市越疆科技股份有限公司 | Robot, control method, control device, control equipment, storage medium and mechanical arm thereof |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101048098B1 (en) | 2008-09-03 | 2011-07-11 | 한국과학기술원 | Robot route planning device and method |
JP2014010797A (en) * | 2012-07-03 | 2014-01-20 | Murata Mach Ltd | Autonomous traveling device |
-
2014
- 2014-11-07 KR KR1020140154422A patent/KR101664575B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101048098B1 (en) | 2008-09-03 | 2011-07-11 | 한국과학기술원 | Robot route planning device and method |
JP2014010797A (en) * | 2012-07-03 | 2014-01-20 | Murata Mach Ltd | Autonomous traveling device |
Non-Patent Citations (2)
Title |
---|
한국자동차공학회논문집. 한국자동차공학회. 2011.07., 제19권, 제4호, (pp8-15)* |
한국항공우주학회지. 항국항공우주학회. 2004.09., 제32권, 제7호, (pp69-75)* |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101987868B1 (en) | 2018-11-29 | 2019-06-11 | 주식회사 트위니 | Obstacle avoidance method in state-time space and recording medium storing program for executing the same, and computer program stored in recording medium for executing the same |
US11340621B2 (en) | 2018-11-29 | 2022-05-24 | Twinny Co., Ltd. | Obstacle avoiding method in state-time space, recording medium storing program for executing same, and computer program stored in recording medium for executing same |
KR102049962B1 (en) | 2019-04-17 | 2019-11-28 | 주식회사 트위니 | Sampling based optimal tree planning method and recording medium storing program for executing the same, and computer program stored in recording medium for executing the same |
WO2020213829A1 (en) | 2019-04-17 | 2020-10-22 | 주식회사 트위니 | Path planning method using sampling-based optimal tree, recording medium storing program for implementing same, and computer program stored in medium to implement same |
Also Published As
Publication number | Publication date |
---|---|
KR20160054862A (en) | 2016-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101664575B1 (en) | Method to obstacle avoidance for wheeled mobile robots | |
JP5112666B2 (en) | Mobile device | |
Teimoori et al. | A biologically inspired method for robot navigation in a cluttered environment | |
US9969086B1 (en) | Achieving a target gait in a legged robot based on steering commands | |
JP4682973B2 (en) | Travel route creation method, autonomous mobile body, and autonomous mobile body control system | |
Song et al. | Navigation control design of a mobile robot by integrating obstacle avoidance and LiDAR SLAM | |
JP4670807B2 (en) | Travel route creation method, autonomous mobile body, and autonomous mobile body control system | |
Lidoris et al. | The autonomous city explorer (ACE) project—mobile robot navigation in highly populated urban environments | |
WO2019031168A1 (en) | Mobile body and method for control of mobile body | |
JP2008142841A (en) | Mobile robot | |
Wang et al. | Visibility-aware trajectory optimization with application to aerial tracking | |
Tanveer et al. | Analysis of path following and obstacle avoidance for multiple wheeled robots in a shared workspace | |
Spitzer et al. | Fast and agile vision-based flight with teleoperation and collision avoidance on a multirotor | |
CN112631269A (en) | Autonomous mobile robot and control program for autonomous mobile robot | |
Wu et al. | Vision-based target detection and tracking system for a quadcopter | |
Romadon et al. | Pose estimation on soccer robot using data fusion from encoders, inertial sensor, and image data | |
Sgorbissa et al. | Integrated obstacle avoidance and path following through a feedback control law | |
Kim et al. | Single 2D lidar based follow-me of mobile robot on hilly terrains | |
Kumagai et al. | Achievement of recognition guided teleoperation driving system for humanoid robots with vehicle path estimation | |
Toibero et al. | Switching visual servoing approach for stable corridor navigation | |
KR101465649B1 (en) | vehicle path estimation method and apparatus, and vehicle steering control method and apparatus | |
CN110442139B (en) | Mobile robot hybrid obstacle avoidance control method based on switching signals | |
Ahn et al. | Formation-based tracking method for human following robot | |
Tarmizi et al. | Latest trend in person following robot control algorithm: A review | |
Louro et al. | Motion control for autonomous tugger vehicles in dynamic factory floors shared with human operators |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190924 Year of fee payment: 4 |