WO2023158075A1 - 장애물의 회피 이동이 가능한 자율 주행 로봇 - Google Patents

장애물의 회피 이동이 가능한 자율 주행 로봇 Download PDF

Info

Publication number
WO2023158075A1
WO2023158075A1 PCT/KR2022/020206 KR2022020206W WO2023158075A1 WO 2023158075 A1 WO2023158075 A1 WO 2023158075A1 KR 2022020206 W KR2022020206 W KR 2022020206W WO 2023158075 A1 WO2023158075 A1 WO 2023158075A1
Authority
WO
WIPO (PCT)
Prior art keywords
destination
trajectory
robot
avoidance
isolation
Prior art date
Application number
PCT/KR2022/020206
Other languages
English (en)
French (fr)
Inventor
김윤정
변용진
Original Assignee
주식회사 트위니
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 트위니 filed Critical 주식회사 트위니
Publication of WO2023158075A1 publication Critical patent/WO2023158075A1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/04Viewing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls

Definitions

  • the present invention relates to a robot, and more particularly, to an autonomous robot capable of moving without user intervention.
  • Autonomous driving means that mechanical devices such as cars, airplanes, and robots (hereinafter referred to as “robots, etc.”) travel freely by various sensors and computing systems installed on their own without borrowing external power. Aircraft and robot driving are representative examples.
  • Autonomous driving generally establishes a global route plan, which is a rough plan for the entire route from the starting point to the destination, when a destination is entered, and references various information sensed while moving according to the global route plan to determine the local route, which is a detailed route. It is carried out in such a way that actual movement is achieved by establishing a plan.
  • 'Patent Document 1' discloses a general concept of establishing such a global plan and regional plan, and in particular, a specific method for establishing a regional plan is shown.
  • 1 is a block diagram showing a configuration enabling autonomous driving of a robot.
  • an intermediate waypoint from the starting point to the destination is derived from the global route planning unit.
  • the line that sequentially connects the origin - the intermediate route point - the destination becomes the global route.
  • the self-driving robot moves autonomously while sequentially moving through local sections from the starting point - the first intermediate route point - the second intermediate route point - ... - to the destination. It is collected by sensors to recognize the local environment and reflected in the establishment of local route planning. Then, by controlling the robot according to the established regional route plan, autonomous driving is implemented to the destination by going through the local route.
  • FIG. 2 is a flowchart of the local planning method disclosed in Patent Document 1, which can be regarded as an example of the local route planning method.
  • the local planning method shown in FIG. 2 is an incremental (gradual) planning method, so that the robot selects an input that minimizes the specified cost function without colliding with an obstacle at each time step for planning a trajectory. By doing so, it is a method to create and move the best trajectory without modifying the global planning path as much as possible.
  • this method cannot create a trajectory without obstacles and collisions in the current time step due to the selection made in the previous time step, so the robot is isolated, or it can create an inefficient trajectory without collision, and it is possible to create an inefficient trajectory with an obstacle near the destination. In this case, there is a problem of falling into a state comparable to isolation by repeating unnecessary movements by performing repeated avoidance algorithms.
  • most of the local path planning methods including the conventional local path planning method, determine the state of the robot at the next time step by considering the state of the robot and the surrounding environment at every type step when creating one route, and move accordingly. Since the path is created, there is a problem that requires a lot of calculation time.
  • the present invention has been made to solve the above problems, and the problem to be solved by the present invention is to provide an autonomous robot capable of generating an optimal local path with a small amount of calculation and moving to avoid obstacles including robot isolation avoidance. is to do
  • An autonomous robot capable of moving to avoid an obstacle includes a motor; a motor driving board controlling the motor; battery; a power supply board controlling the battery; a vision device that acquires peripheral vision data; It consists of a PC that receives vision data from the vision device, sets a path, and generates an operation command to control the motor driving board and the power supply board.
  • the PC is composed of a state determination module and a trajectory generation module, After the determination module performs the robot state determination step of determining the position and direction of the robot, the arrival determination step of determining whether the robot is within a first threshold distance from the destination is performed, so that the robot is a first threshold distance from the destination.
  • the trajectory generation module performs a stop trajectory generating step to generate a stop trajectory in which the robot's speed decreases to 0 while approaching the destination.
  • An autonomous robot capable of moving to avoid obstacles according to the present invention can stop as close to a destination as possible without repetitive avoidance even when there are obstacles around the destination.
  • the robot can escape from the isolation state by setting an isolation avoidance destination and creating an avoidance trajectory.
  • 1 is a block diagram showing a configuration enabling autonomous driving of a robot
  • FIG. 3 is a configuration diagram of an autonomous robot capable of avoiding obstacles and moving according to the present invention
  • 6 is a sequence in which an autonomous robot capable of avoiding an obstacle creates a trajectory.
  • Figure 7 is an algorithm looking at the trajectories generated in Figure 6 from the point of view of collision occurrence
  • 9 and 10 are exemplary diagrams illustrating robots, destinations, and collision avoidance destination point candidate groups.
  • 11 shows the creation and setting of an isolation avoidance destination and the status algorithm of a robot related thereto
  • 13 is an example showing the setting of an isolation avoidance destination and the movement of the robot accordingly
  • An autonomous robot capable of moving to avoid obstacles according to the present invention includes a motor 110 that generates motion necessary for robot movement, such as wheels or tracks, a motor driving board 120 that controls the motor 110, and a battery 130. ), a power supply board 140 that controls a battery, a vision device 150 for acquiring peripheral vision data, receiving vision data from the vision device 150, setting a path, and generating an operation command to drive a motor. It consists of a PC 160 that controls the board 120 and the power supply board 140, and a sensor 170 such as an infrared sensor or an ultrasonic sensor and an MCU board 180 that collects data sensed by the sensor 170. It may be further included. Data and control commands may be transmitted and received between the PC 160, the motor driving board 120, and the MCU board 180 through RS232 or CAN communication.
  • the PC 160 recognizes an obstacle from the vision data, estimates the local position of the robot, derives a local trajectory, and controls the motor driving board 120 and the power supply board 140 to move the robot.
  • the derivation of the local trajectory can be performed by firmware or software.
  • firmware and software are not distinguished and modules (may be implemented in hardware or software, but they are the same in terms of technical thought, so this is also Do not distinguish) approach as a concept.
  • the PC 160 is composed of a state determination module 161 and a trajectory generating module 163.
  • the state determination module 161 is a component that determines the state of the robot, and determines the state of the robot as one of a moving state, a stationary state, an isolated state, and an arrival state.
  • the movement state is a state in which the robot's location movement is in progress, and the robot's speed is not 0.
  • the stationary state is a state in which the robot's location is not moved momentarily, and there is no trajectory that can move the robot forward or backward, or it is a destination. It is judged that the destination cannot be reached because there are obstacles around.
  • the isolated state is a case where the stationary state lasts for a predetermined time, for example, 2 to 3 seconds, and the arrival state is a state in which the robot has reached a predetermined distance near the destination.
  • the distinction between the stationary state and the isolated state may be performed based on a predetermined time. For example, if a robot is stationary for less than 2 seconds, it can be defined as a stationary state, and if it is stationary for more than 2 seconds, it can be defined as an isolated state.
  • FIG. 5 is a transition diagram of four states defined in the present invention.
  • the transition is made to the stationary state, and the stationary state is transitioned to the isolated state. If a trajectory that can go forward or backward is created before (when an obstacle moves, etc.), it can transition back to the moving state. If the stationary state lasts for a certain amount of time, the robot has nowhere to go, that is, transitions to an isolated state. there will be no At this time, if a means to escape from the isolated state can be found, it is possible to transition back to the moving state, and the core technical idea of the present invention is related to the separation from such an isolated state.
  • a 'first critical distance' usually given as a design variable
  • the movement according to the state transition of the robot is defined as a trajectory.
  • the destination trajectory is the entire trajectory from the current location of the robot to the destination, and is a trajectory that transitions to the arrival state through a combination of a moving state, a stationary state, and an isolated state. Then, by dividing the destination trajectory into two, the trajectory close to the robot is called the first trajectory, and the trajectory close to the destination is called the second trajectory. given as a design variable) at the intersection of the circle and the destination trajectory.
  • the stationary trajectory is the trajectory in the case of moving from the moving state to the arriving state. As the robot approaches the destination, the speed gradually decreases and eventually becomes zero at or around the destination.
  • An avoidance trajectory is defined as a trajectory that moves to a regional destination point by first searching for a local destination point where a collision does not occur when a destination trajectory does not exist.
  • FIG. 6 is a flowchart of generating a trajectory by an autonomous robot capable of moving to avoid obstacles
  • the robot state determination step (S10), arrival determination step (S20), backward determination step (S40), and avoidance determination step (S60) are the state Performed by the determination module 161, the stationary trajectory generating step (S30), the backward trajectory generating step (S50), the destination trajectory generating step (S70), and the avoidance trajectory generating step (S80) are performed by the trajectory generating module 163. performed by
  • the robot state determination step (S10) is a step of determining the position and direction of the robot, preferably including angular velocity and linear velocity.
  • the position and direction are directly related to trajectory generation, and the angular velocity and linear velocity of the robot Affects trajectory generation potential in relation to motor skills. For example, a trajectory that can be generated at a specific angular velocity or linear velocity may not be generated at a different angular velocity or linear velocity.
  • the arrival determination step (S20) is a step of determining whether the robot is within a first threshold distance or less from the destination. If it is less than the first threshold distance, even if it does not exactly match the destination, the trajectory generation module 163 is used to get as close as possible to the destination.
  • the stop trajectory generating step (S30) is performed to generate a stop trajectory and end the movement.
  • the backward determination step (S40) is a step for determining whether a destination trajectory is generated to the rear of the robot (90 to 270 ° when measuring the angle in a counterclockwise direction with the front of the robot viewed at 0 °). Since the robot usually moves forward, it is not common for a destination trajectory to be created backward, but if moving backward is advantageous, it is not necessary to exclude it, so the need for backward movement is determined first. If it is determined that backward movement is necessary, the trajectory generating module 163 generates a backward trajectory by performing a backward trajectory generating step (S50), and the robot moves according to the backward trajectory.
  • the avoidance determination step (S60) it is determined whether the destination trajectory cannot be created. If the destination trajectory cannot be created, that is, if there is no trajectory that can reach the destination without colliding with an obstacle, another intermediate point, a regional destination point, is created to avoid collision and determine whether the destination is reached again from the regional destination point. Therefore, if avoidance is not necessary, the trajectory generation module 163 performs the destination trajectory generation step (S70) to generate the destination trajectory, and the robot is moved accordingly. At this time, if the speed of the robot monotonically decreases, the destination trajectory becomes a stationary trajectory. If avoidance is required, the trajectory generating module 163 performs an avoidance trajectory generating step (S80) to set a local destination point and generate an avoidance trajectory that reaches the local destination point.
  • FIG. 7 shows an algorithm looking at the trajectories generated in FIG. 6 from the point of view of collision occurrence. If the distance to the destination is less than or equal to the first threshold distance (D_stop), only the second trajectory exists, and even if a collision occurs on the second trajectory, a stop trajectory is created to bring the robot as close to the destination as possible. and, if a collision does not occur on the second trajectory, a destination trajectory is created to move the robot to the destination. If the distance to the destination exceeds the third threshold distance (D_stop), a destination trajectory is generated and a second trajectory is distinguished from the destination trajectory. At this time, the first trajectory may or may not exist.
  • D_stop the first threshold distance
  • the first trajectory is not generated and the first trajectory If the end of is outside the circle having a first critical distance as a radius, a first trajectory is generated.
  • the case where there is no first trajectory is the same as the case where only the second trajectory exists.
  • a destination trajectory is generated if a collision does not occur on the first trajectory, and an avoidance trajectory is generated if a collision occurs. Accordingly, if a collision does not occur on the first trajectory, the robot can move up to the end point of the first trajectory, and even if a collision occurs, it is possible to move to at least the local destination point by the avoidance trajectory. Through this process, when there is an obstacle near the destination, it is possible to generate a stopping trajectory near the destination without repeatedly generating an avoidance trajectory near the destination.
  • the regional goal point can be divided into a collision avoidance goal point set to avoid collision with an obstacle and an isolation avoidance goal point to resolve the isolation state.
  • the collision avoidance target point will be described.
  • the collision avoidance destination point is generated by the trajectory generation module 163 in the avoidance trajectory generation step (S80) of FIG. 6, and the creation or setting of the collision avoidance destination point is performed when the robot is in a moving or stationary state.
  • Figure 8 shows the creation and setting of the collision avoidance destination and the state algorithm of the robot related thereto.
  • the movement of the robot may be by a destination trajectory or by an avoidance trajectory. If the collision avoidance destination point is set by the trajectory generation module 163 and there is no collision with an obstacle until the collision avoidance destination point, according to the generated trajectory You just have to keep moving.
  • a collision avoidance destination must be created. In this case, it is necessary to generate a plurality of candidates that can be collision avoidance destination points, select one of the destination points without collision until the double collision avoidance destination point, set the collision avoidance destination point, and maintain the moving state. If there is no destination point without collision until the collision avoidance destination point, the robot transitions to a stop state.
  • the selection of collision avoidance destination point candidates can be performed in the following way.
  • 9 and 10 are exemplary diagrams showing a robot, a destination, and a collision avoidance goal candidate group.
  • the collision avoidance goal candidate group is an angle obtained by subtracting ⁇ from the forward direction of the robot and subtracted ⁇ from the direction connecting the robot and the destination.
  • the larger of the angles obtained by adding the smaller value of the angle and ⁇ in the forward direction of the robot and the angle adding ⁇ in the direction where the robot and the destination are located are set as both end angles, N at predetermined intervals on a fan-shaped arc with a radius of d1. can be set.
  • the reason why such directionality is given to the selection of collision avoidance destination point candidates is that the possibility of adopting the optimal trajectory increases if there are collision avoidance destination points in the direction in which the robot proceeds and toward the destination.
  • collision avoidance target candidate groups C 1 to C N
  • the collision avoidance target points C k to C k+3 where the trajectory to the collision avoidance target point collides with an obstacle cannot be collision avoidance target points (as will be described below).
  • Collision Avoidance If a collision occurs from destination to destination, it is not excluded from the candidate or considered in the collision cost).
  • the cost of the trajectory passing through each collision avoidance destination point candidate is calculated, and the collision avoidance destination point candidate including the trajectory with the minimum cost is selected as the optimal collision avoidance destination point.
  • the cost function of the trajectory is whether or not it collides with an obstacle from the collision avoidance destination to the destination point (C C , 0 or 1), the minimum distance between the trajectory and the obstacle (C O ), and the curvature of the trajectory It can be calculated by multiplying the weight (W) by the sum (C cur ) of (measuring curvature at a plurality of points constituting the trajectory), the length (C d ) of the trajectory, and the like.
  • the isolation avoidance target is explained.
  • 11 illustrates the creation and setting of an isolation avoidance destination and a state algorithm of a robot related thereto.
  • the isolation avoidance goal point is created or set when the robot is in an isolated state.
  • the isolated avoidance target point is also generated in the avoidance trajectory generating step (S80) of FIG. 6 by the trajectory generating module 163.
  • the isolation avoidance destination point is divided into an isolation avoidance front destination point located in front of the robot and an isolation avoidance rear destination point located at the rear of the robot, and the isolation avoidance forward destination point is determined first because of the collision avoidance destination destination candidate group described above. Similar to the reason why this direction was given to the selection of , it is because considering the direction in which the robot proceeds first increases the possibility of adopting the optimal trajectory.
  • the isolation avoidance front destination point is already set by the trajectory generating module 163, if a collision does not occur to the isolation avoidance front destination point, the robot is in a moving state according to the trajectory to the isolation avoidance front destination point. If it is set but a collision occurs, the robot transitions to a stop state. If the isolation avoidance front destination point is not set and can be created, the isolation avoidance front destination point is created and set, and the robot moves along the trajectory.
  • the isolation avoidance rear destination point should be considered. In addition, if the isolation avoidance rear destination point is not set but can be created, the isolation avoidance rear destination point is created and set, and the robot can move along the trajectory. If the isolation avoidance rear destination point is neither set nor created, the robot is in a stationary state.
  • N candidates can be generated at predetermined intervals on a fan-shaped arc with a radius d2 and 180° ⁇ ⁇ as both end angles when the robot's rear, that is, the front of the robot is viewed as 0°. .
  • d2 smaller than or equal to the radius d1 of the sector considered in creating the collision avoidance destination point or the isolation avoidance front destination point, because it is preferable to choose this if isolation can be avoided with minimal backward movement.
  • the cost function for obtaining the optimal isolation avoidance backward destination point include the cost (C dir , 0 or 1) for the left and right backward directions as shown in [Equation 2] below. This is because, when the cost of direction is not taken into consideration, it is possible to prevent the robot from moving like a mirror image when the robot faces each other.
  • FIG. 12 shows a case where two robots face each other.
  • robot 1 and robot 2 face each other as shown in FIG.
  • FIG. 12 (b) they move to the right rear of each other, and when they go straight again as shown in FIG. 12 (c), they can move avoiding each other without facing each other.
  • FIG. 12 (c) If the cost of direction is not included, since the surrounding environment is similar, there is a high possibility that the two robots will encounter each other when they both go up or down and go straight again, which causes the robots to fall into a state similar to isolation.
  • the cost function for obtaining the optimum isolation avoidance rear destination point is calculated only from the robot to the isolation avoidance rear destination point, that is, not including the cost from the isolation avoidance rear destination point to the destination. This is because, since the setting of the isolation avoidance rear destination point is adopted as a last resort in the present invention, the purpose is to escape from the isolated state once without thinking about the after movement.
  • FIG. 13 is an exemplary diagram illustrating the setting of an isolation avoidance destination and the movement of the robot accordingly. If the robot is isolated by a box-shaped obstacle in front, there is no isolation avoidance forward destination point that can reach the destination without collision even if an isolation avoidance forward destination point candidate group is generated as shown in FIG. Isolation avoidance rear goal point is created. At this time, since the cost for the right rear is low, the robot escapes isolation to the right side of the obstacle as shown in FIG. can be avoided to reach the destination.
  • sensor 180 MCU board

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 사용자의 개입 없이 이동 가능한 자율 주행 로봇에 관한 것으로, 본 발명에 따른 장애물의 회피 이동이 가능한 자율 주행 로봇은 모터(110); 상기 모터(110)를 제어하는 모터 구동 보드(120); 배터리(130); 상기 배터리를 제어하는 전력 공급 보드(140); 주변의 비전 데이터를 획득하는 비전 장치(150); 상기 비전 장치(150)로부터 비전 데이터를 전송받아 경로를 설정하고 동작 명령을 생성하여 상기 모터 구동 보드(120)와 전력 공급 보드(140)를 제어하는 PC(160)로 구성된다.

Description

장애물의 회피 이동이 가능한 자율 주행 로봇
본 발명은 로봇에 관한 것으로, 더욱 상세하게는 사용자의 개입 없이 이동 가능한 자율 주행 로봇에 관한 것이다.
자율 주행이란 자동차, 비행기, 로봇 등 기계 장치(이하 '로봇 등 '이라 한다)가 외부의 힘을 빌리지 않고 자체 장착된 각종 센서와 컴퓨팅 시스템에 의하여 자유롭게 주행하는 것으로서, 운전자 없이 주행하는 무인 자동차나 무인 항공기, 로봇 주행 등이 대표적인 예이다.
자율 주행은 일반적으로 목적지가 입력되면 로봇 등이 출발지에서 목적지까지 전체 경로에 대한 대략적인 계획인 전역 경로 계획을 수립하고, 전역 경로 계획에 따라 이동하면서 센싱되는 각종 정보를 참조하여 세부 경로인 지역 경 로 계획을 수립하여 이에 의해 실제 이동이 이루어지는 방법으로 수행된다.
'특허문헌 1'에 이러한 전역 계획 및 지역 계획 수립의 개괄적인 개념이 개시되어 있고, 특히 지역 계획의 수립에 대한 구체적 방법이 나타나 있다. 도 1은 로봇의 자율 주행을 가능하게 하는 구성을 나타낸 블럭도이다.
자율 주행 로봇에 전체 지도가 구비되고, 사용자에 의해 목적지가 입력되면 전역 경로 계획부에서 출발지에서 목적지까지 중간 경로점(waypoint)을 도출한다. 즉, 출발지 - 중간 경로점 - 목적지를 순차적으로 이은 선이 전역 경로 가 된다. 다음으로 자율 주행 로봇은 출발지 - 첫번째 중간 경로점 - 두번째 중간 경로점 - ... - 목적지까지 순차적으로 지역 구간을 이동하면서 자율 주행을 하게 되는데, 이 과정에서 필요한 정보를 카메라, 라이다 등 환경 인식 센서에 의해 수 집하여 지역 환경을 인식하고 지역 경로 계획 수립에 반영하게 된다. 그리고 수립 된 지역 경로 계획에 의해 로봇을 제어하여 지역 경로를 경유함으로써 목적지까지 자율 주행을 구현한다.
본 발명이 주목하는 분야는 지역 경로 계획에 관한 것인데, 도 2는 특허문헌 1에 개시된 지역 계획 수립 방법의 순서도로서 지역 경로 계획 방법의 일례라 할 수 있다.
도 2에 도시된 지역 계획 수립 방법은 증분(점진적) 계획 방법 (Incremental planning method)으로서, 로봇이 궤적을 계획하는 타임 스텝마다 장 애물에 충돌하지 않으면서 정해진 비용함수가 최소가 되는 입력을 선택하도록 함으 로써, 전역 계획 경로를 최대한 수정하지 않고 최선의 궤적을 생성하여 이동하도록 하는 방법이다. 그런데 이러한 방법은 이전 타임 스텝에서 결정한 선택으로 인해 현재 타임 스템에서 장애물과 충돌이 없는 궤적을 생성할 수 없어 로봇이 고립되거나, 충돌이 없지만 비효율적인 궤적을 생성할 수 있고, 목적지 근처에 장애물이 있는 경우 반복되는 회피 알고리즘 수행으로 불필요한 움직임을 되풀이함으로써 고립과 다름없는 상태에 빠지는 문제가 있다.
그리고 로봇이 선택할 수 없는 입력값에 해당되는 상태값들을 계산에서 제외하고, 로봇이 실현 가능한 상태값들의 집합 중 일부를 샘플링하여 계산이 필요한 노드 수를 줄임으로써 실시간 경로 계획이 가능하도록한 샘플링 기반의 최적 트리를 이용한 지역 경로 계획 방법이 제안되어 있지만, 실제 구현에 있어서는 많은 계산 시간이 요구되고, 정해진 비용 함수에서 파라미터별 가중치를 변경하는 것만으로는 최적 궤적을 찾기 어려운 문제(local minima)가 있다.
또 종래의 지역 경로 계획 방법을 포함하여 대부분의 지역 경로 계획 방법은 하나의 경로를 생성할 때 매 타입 스텝마다 로봇의 상태와 주변 환경을 고려하여 다음 타임 스텝에서 로봇의 상태를 결정하고 이에 의해 이동 경로를 생성 하기 때문에 계산 시간이 많이 요구되는 문제가 있다.
특허문헌
-특허문헌1: KR 10-2049962 B1 (2019. 11. 22.)
본 발명은 위와 같은 문제점을 해결하기 위하여 안출된 것으로, 본 발명이 해결하고자 하는 과제는 적은 계산량으로 최적 지역 경로를 생성할 수 있고 로봇의 고립 회피를 포함한 장애물의 회피 이동이 가능한 자율 주행 로봇을 제공하는 것이다.
본 발명에 따른 장애물의 회피 이동이 가능한 자율 주행 로봇은 모터; 상기 모터를 제어하는 모터 구동 보드; 배터리; 상기 배터리를 제어하는 전력 공급 보드; 주변의 비전 데이터를 획득하는 비전 장치; 상기 비전 장치로부터 비전 데이터를 전송받아 경로를 설정하고 동작 명령을 생성하여 상기 모터 구동 보드와 전력 공급 보드를 제어하는 PC로 구성되고, 상기 PC가 상태 판단 모듈 및 궤적 생성 모듈로 구성되며, 상기 상태 판단 모듈이 로봇의 위치 및 방향을 결정하는 로봇 상태 결정 단계를 수행한 후, 상기 로봇이 목적지와 제1 임계 거리 이하에 있는지를 판단하는 도착 판단 단계를 수행하여 상기 로봇이 목적지와 제1 임계 거리 이하에 있는 경우 상기 궤적 생성 모듈이 정지 궤적 생성 단계를 수행하여 상기 로봇이 목적지에 접근하면서 속도가 줄어들어 0이 되는 정지 궤적을 생성하는 것을 기술적 특징으로 한다.
본 발명에 따른 장애물의 회피 이동이 가능한 자율 주행 로봇은 목적지 주변에 장애물이 있는 경우라도 반복적 회피 동작 없이 최대한 목적지에 가까이 정지할 수 있다.
또 장애물에 의해 목적지까지 궤적 형성이 불가능한 경우라도 충돌 회피 목적점을 설정하여 새로운 궤적 탐색의 가능성을 부여한다.
또 로봇이 고립된 경우 고립 회피 목적점을 설정하고 회피 궤적을 생성하여 고립 상태를 벗어날 수 있다.
도 1은 로봇의 자율 주행을 가능하게 하는 구성을 나타낸 블럭도
도 2는 지역 계획 수립 방법의 예시
도 3은 본 발명에 따른 장애물의 회피 이동이 가능한 자율 주행 로봇의 구성도
도 4는 PC에서 지역 궤적을 도출하는 모듈 집합체
도 5는 본 발명에서 정의하고 있는 4가지 상태의 천이도
도 6은 장애물의 회피 이동이 가능한 자율 주행 로봇이 궤적을 생성하는 순
서도
도 7은 도 6에서 생성되는 궤적들을 충돌 발생의 관점에서 바라본 알고리즘
도 8은 충돌 회피 목적점의 생성, 설정 및 이와 관련된 로봇의 상태 알고리즘
도 9 및 도 10은 로봇, 목적지, 충돌 회피 목적점 후보군을 도시한 예시도
도 11은 고립 회피 목적점의 생성, 설정 및 이와 관련된 로봇의 상태 알고리
도 12는 2대의 로봇이 마주하는 경우의 예시도
도 13은 고립 회피 목적점의 설정 및 이에 따른 로봇의 이동을 도시한 예시
이하에서는 본 발명에 따른 장애물의 회피 이동이 가능한 자율 주행 로봇을 첨부된 도면을 참조하여 상세히 설명한다.
도 3은 본 발명에 따른 장애물의 회피 이동이 가능한 자율 주행 로봇의 구성도이다. 본 발명에 따른 장애물의 회피 이동이 가능한 자율 주행 로봇은 바퀴나 무한궤도 등 로봇의 이동에 필요한 운동을 생성하는 모터(110), 모터(110) 를 제어하는 모터 구동 보드(120), 배터리(130), 배터리를 제어하는 전력 공급 보드(140), 주변의 비전 데이터를 획득하기 위한 비전 장치(150), 비전 장치(150)로 부터 비전 데이터를 전송받아 경로를 설정하고 동작 명령을 생성하여 모터 구동 보드(120)와 전력 공급 보드(140)를 제어하는 PC(160)로 구성되고, 적외선 센서, 초음파 센서 등 센서(170)와 센서(170)에서 센싱된 데이터를 수집하는 MCU 보드(180)를 더 포함하여 구성될 수 있다. PC(160)와 모터 구동 보드(120), MCU 보드(180) 사이는 RS232 또는 CAN 통신 등의 방법으로 데이터 및 제어 명령이 송수신될 수 있다.
PC(160)는 비전 데이터로부터 장애물을 인식하고 로봇의 지역 위치를 추정하여 지역 궤적을 도출한 후 모터 구동 보드(120), 전력 공급 보드(140) 등 을 제어하여 로봇을 이동시킨다. 지역 궤적의 도출은 펌웨어 또는 소프트웨어적으로 수행될 수 있는데, 본 발명에서는 펌웨어와 소프트웨어를 구분하지 않고 모듈 (하드웨어적으로 구현될 수도 있고 소프트웨어적으로 구현될 수도 있으나 기술 사상면에 있어서는 동일하므로 이 역시 구분하지 않는다) 개념으로 접근하도록 한다.
도 4는 PC에서 지역 궤적을 도출하는 모듈 집합체의 구성도로서, 본 발명에서 PC(160)는 상태 판단 모듈(161) 및 궤적 생성 모듈(163)로 구성된다.
상태 판단 모듈(161)은 로봇의 상태를 판단하는 구성요소로서, 로봇의 상태를 이동 상태, 정지 상태, 고립 상태, 도착 상태 중 어느 하나로 판단한다. 이동 상태는 로봇의 위치 이동이 진행 중인 상태로서 로봇의 속도가 0이 아닌 상태 이고, 정지 상태는 순간적으로 로봇의 위치 이동이 없는 상태로서 로봇의 전방 또는 후방으로 이동할 수 있는 궤적이 존재하지 않거나 목적지 주변에 장애물이 존재 하여 목적지에 도달할 수 없다고 판단된 상태이다. 고립 상태는 정지 상태가 소정 시간, 예를 들면 2 내지 3초가 지속된 경우이고, 도착 상태는 로봇이 목적지 근처의 소정 거리에 도달한 상태이다. 정지 상태와 고립 상태의 구분은 소정의 시간을 기준으로 수행될 수 있다. 예를 들면 로봇이 2초 이하로 정지해 있다면 정지 상태로, 2초 초과로 정지해 있다면 고립 상태로 정의될 수 있다.
도 5는 본 발명에서 정의하고 있는 4가지 상태의 천이도로서, 이동 상태에서 전방 또는 후방으로 갈 수 있는 궤적이 없거나 목적지에 도착할 수 없는 경우 정지 상태로 천이되고, 정지 상태에서 고립 상태로 천이하기 전에 전방 또는 후방으로 갈 수 있는 궤적이 생성되는 경우(장애물이 이동하는 등의 경우) 다시 이동 상태로 천이될 수 있다. 정지 상태가 소정 시간 지속되는 경우 로봇이 갈 곳이 없는, 즉 고립 상태로 천이되는데 고립 상태에서 이탈하는 수단을 찾지 못하면 장애물이 이동하는 등의 외부 조건 변화가 없이는 로봇이 한 지점에서 계속 머무를 수 밖에 없게 된다. 이때 고립 상태에서 이탈하는 수단을 찾을 수 있다면 다시 이동 상태로 천이할 수 있게 되고, 본 발명의 핵심적인 기술사상은 이러한 고립 상태에서 이탈과 관련이 있다. 로봇이 목적지와 소정 거리 이내(이하 '제1 임계 거리'라 한다, 보통 설계 변수로 주어짐)에 있는 것으로 판단되는 경우 이동 상태를 거쳐 도착 상태로 천이되고, 모든 천이가 종료된다.
이러한 로봇의 상태 천이에 따른 운동을 궤적으로 정의한다. 목적지 궤적은 현재 로봇의 위치에서 목적지까지 도달하는 전체 궤적으로서, 이동 상태, 정지 상태, 고립 상태의 조합을 거쳐 도착 상태로 천이하는 궤적이다. 그리고 목적지 궤적을 2분할하여 로봇에 가까운 궤적을 제1 궤적이라 하고, 목적지에 가까운 궤적을 제2 궤적이라 하고, 목적지 궤적의 2분할은 목적지에서 소정 반경(이하 '제2 임계거리'라 한다, 설계 변수로 주어짐)의 원과 목적지 궤적의 교점에서 이루어진다. 정지 궤적은 이동 상태에서 도착 상태로 이동하는 경우의 궤적인데, 로봇이 목적지에 접근하면서 속도가 점점 줄어들어 결국 목적지 또는 그 주변에서 0이 된다. 회피 궤적은 목적지 궤적이 존재하지 않는 경우 일단 충돌이 발생하지 않는 지역적 목적점을 탐색하여 지역적 목적점까지 이동하는 궤적으로 정의된다.
도 6은 장애물의 회피 이동이 가능한 자율 주행 로봇이 궤적을 생성하는 순서도로서, 로봇 상태 결정 단계(S10), 도착 판단 단계(S20), 후진 판단 단계(S40), 회피 판단 단계(S60)가 상태 판단 모듈(161)에 의해 수행되고, 정지 궤적 생성 단계(S30), 후진 궤적 생성 단계(S50), 목적지 궤적 생성 단계(S70), 회피 궤 적 생성 단계(S80)가 궤적 생성 모듈(163)에 의해 수행된다.
먼저 로봇 상태 결정 단계(S10)는 로봇의 위치 및 방향, 바람직하게는 각속도 및 선속도를 더 포함하여 결정하는 단계로서, 위치 및 방향은 궤적 생성에 직접적으로 관련되고, 각속도 및 선속도는 로봇의 운동 능력과 관련하여 궤적 생성 가능성에 영향을 준다. 예를 들면 특정 각속도나 선속도에서는 생성 가능한 궤적이 다른 각속도나 선속도에서는 생성 불가능할 수 있다.
도착 판단 단계(S20)는 로봇이 목적지와 제1 임계 거리 이하에 있는지를 판단하는 단계로서, 제1 임계 거리 이하라면 목적지에 정확하게 일치하지는 않는다 하더라도 목적지까지 최대한 근접할 수 있도록 궤적 생성 모듈(163)이 정지 궤적 생성 단계(S30)를 수행하여 정지 궤적을 생성하고 이동을 종료한다.
후진 판단 단계(S40)는 로봇의 후방(로봇의 정면을 0°로 보고 반시계방향으로 각을 잴 때, 90 ~ 270°)으로 목적지 궤적이 생성되는지를 판단하는 단계이다. 보통 로봇이 전방으로 이동하기 때문에 후방으로 목적지 궤적이 생성되는 경우가 흔하지 않지만 후방으로 이동하는 경우가 유리하다면 이를 배제할 필요가 없으므로 후진 필요성을 먼저 판단하는 것이다. 후진이 필요하다고 판단되는 경우 궤적 생성 모듈(163)은 후진 궤적 생성 단계(S50)를 수행하여 후진 궤적을 생성하고, 후진 궤적에 따라 로봇이 이동된다.
다음으로 회피 판단 단계(S60)는 목적지 궤적이 생성 불가능한지를 판단한다. 목적지 궤적이 생성될 수 없다면, 즉 목적지까지 장애물과 충돌 없이 도달 가능한 궤적이 없다면 다른 중간 지점인 지역적 목적점을 생성하여 충돌을 회피 하고 지역적 목적점에서 다시 목적지까지 도달 여부를 판단한다는 접근이다. 따라서 회피가 필요없다면 궤적 생성 모듈(163)은 목적지 궤적 생성 단계(S70)를 수행 하여 목적지 궤적 생성하고 이에 따라 로봇이 이동된다. 이때 로봇의 속력이 단조 감소한다면 목적지 궤적은 정지 궤적이 된다. 그리고 회피가 필요한 경우 궤적 생성 모듈(163)은 회피 궤적 생성 단계(S80)를 수행하여 지역적 목적점을 설정하고 지역적 목적점까지 이르는 회피 궤적을 생성하게 된다.
도 7은 도 6에서 생성되는 궤적들을 충돌 발생의 관점에서 바라본 알고리즘을 도시한 것이다. 목적지까지 거리가 제1 임계 거리보다 작거나 같은 소정의 제3 임계 거리(D_stop) 이하라면 제2 궤적만 존재하고, 제2 궤적에서 충돌이 발생하더라도 정지 궤적을 생성하여 최대한 로봇을 목적지에 근접하게 이동시키고, 만약 제2 궤적에 충돌이 발생하지 않는다면 목적지 궤적을 생성하여 로봇을 목적지에 이동시킨다. 만약 목적지까지 거리가 제3 임계 거리(D_stop)를 초과한다면 목적지 궤적을 생성하고, 목적지 궤적에서 제2 궤적을 구분한다. 이때 제1 궤적은 없을 수도 있고 있을 수도 있는데, 제1 궤적의 끝이 제3 임계 거리를 반경으로 하는 원과 제1 임계 거리를 반경으로 하는 원 사이에 있으면 제1 궤적이 생성되지 않고 제1 궤적의 끝이 제1 임계 거리를 반경으로 하는 원 바깥에 있으면 제1 궤적이 생성 된다. 제1 궤적이 없는 경우는 위의 제2 궤적만 존재하는 경우와 동일하다. 제1 궤적이 있는 경우는 제1 궤적에서 충돌이 발생하지 않는다면 목적지 궤적을 생성하고, 충돌이 발생한다면 회피 궤적을 생성한다. 이에 따라 제1 궤적에서 충돌이 발생하지 않는 경우라면 일단 제1 궤적의 끝점까지는 로봇의 이동이 가능하고, 충돌이 발생한다 하더라도 적어도 회피 궤적에 의한 지역적 목적점까지의 이동이 가능해진다. 이러한 과정을 통해 목적지 근처에 장애물이 있을 때 목적지 근처에서 반복적으로 회피 궤적을 생성하지 않고 목적지 근처에 정지하는 궤적을 생성할 수 있다.
다음으로 회피 궤적 생성을 위한 지역적 목적점에 대해 설명한다. 지역적 목적점은 장애물과 충돌을 회피하기 위하여 설정되는 충돌 회피 목적점과 고립 상태를 해소하기 위한 고립 회피 목적점으로 나눌 수 있다. 먼저 충돌 회피 목적점과 관련하여 설명한다.
충돌 회피 목적점은 궤적 생성 모듈(163)에 의해 도 6의 회피 궤적 생성 단계(S80)에서 생성되고, 충돌 회피 목적점의 생성 또는 설정은 로봇이 이동 또는 정지 상태일 때 수행된다. 도 8은 충돌 회피 목적점의 생성, 설정 및 이와 관 련된 로봇의 상태 알고리즘을 도시한 것이다. 로봇의 이동은 목적지 궤적에 의한 것일 수도 있고 회피 궤적에 의한 것일 수도 있는데, 충돌 회피 목적점이 궤적 생성 모듈(163)에 의해 설정되어 있는 경우 충돌 회피 목적점까지 장애물과 충돌이 없다면 생성된 궤적에 따라 이동 상태를 유지하면 된다. 만약 이러한 상황이 아니라면, 즉 충돌 회피 목적점이 설정되어 있으나 충돌 회피 목적점까지 장애물과 충돌이 예상되거나 충돌 회피 목적점이 설정되어 있지 않은 경우라면 충돌 회피 목적점을 생성해야 한다. 이 경우 충돌 회피 목적점이 될 수 있는 다수의 후보군을 생성하고 이중 충돌 회피 목적점까지 충돌이 없는 목적점 중 하나를 선정하여 충돌 회피 목적점을 설정하고 이동 상태를 유지해야 하는데, 만약 다수의 후보군 중 충돌 회피 목적점까지 충돌이 없는 목적점이 없다면 로봇은 정지 상태로 천이된다.
충돌 회피 목적점 후보군의 선정은 다음과 같은 방법으로 수행될 수 있다. 도 9 및 도 10은 로봇, 목적지, 충돌 회피 목적점 후보군을 도시한 예시도로서, 충돌 회피 목적점의 후보군은 로봇의 전방 방향에서 △θ를 뺀 각과 로봇과 목적지를 잇는 방향에서 △θ를 뺀 각 중 작은 값과 로봇의 전방 방향에서 △θ를 더 한 각과 로봇과 목적지를 있는 방향에서 △θ를 더한 각 중 큰 값을 양 끝각으로 하고, 반경이 d1인 부채꼴의 호 위에 소정 간격으로 N개 설정될 수 있다. 충돌 회피 목적점 후보군의 선정에 이러한 방향성을 부여하는 이유는 로봇이 진행하는 방향 및 목적지로 향하는 방향에 충돌 회피 목적점이 있는 것이 최적 궤적을 채택하 게 될 가능성을 높이기 때문이다.
충돌 회피 목적점 후보군(C1 ~ CN) 중 충돌 회피 목적점까지 궤적이 장애물과 충돌하는 충돌 회피 목적점(Ck ~ Ck+3)은 충돌 회피 목적점이 될 수 없다 (이하에서 설명하겠지만 충돌 회피 목적점에서 목적점까지의 충돌이 발생하는 경우 후보에서 제외하지 않거 충돌 비용에서 고려한다).
다음으로 최적 충돌 회피 목적점을 결정해야 하는데, 각 충돌 회피 목적점 후보를 경유하는 궤적의 비용(cost)을 계산하여 비용이 최소가 되는 궤적을 포함하는 충돌 회피 목적점 후보를 최적 충돌 회피 목적점으로 결정한다. 궤적의 비용 함수는 아래 [수학식 1]과 같이 충돌 회피 목적점에서 목적점까지 장애물과 충돌하는지 여부(CC, 0 또는 1), 궤적과 장애물 간 거리의 최솟값(CO), 궤적의 곡률 (궤적을 구성하는 복수 개의 지점에서 곡률을 측정함)의 합(Ccur), 궤적의 길이(Cd) 등에 가중치(W)를 곱하여 산출할 수 있다.
[수학식 1]
Figure PCTKR2022020206-appb-img-000001
다음으로 고립 회피 목적점에 대해 설명한다. 도 11은 고립 회피 목적점의 생성, 설정 및 이와 관련된 로봇의 상태 알고리즘을 도시한 것이다. 고립 회피 목적점은 용어 그대로 로봇이 고립 상태일 때 생성 또는 설정된다. 고립 회피 목적점도 궤적 생성 모듈(163)에 의해 도 6의 회피 궤적 생성 단계(S80)에서 생성 된다. 고립 회피 목적점은 로봇의 전방에 위치하는 고립 회피 전방 목적점과 로봇의 후방에 위치하는 고립 회피 후방 목적점으로 구분하고 고립 회피 전방 목적점에 대해 먼저 판단하는데 그 이유는 앞서 충돌 회피 목적점 후보군의 선정에 이러한 방향성을 부여한 이유와 유사하게 로봇이 진행하는 방향을 먼저 고려하는 것이 최적 궤적을 채택할 가능성을 높이기 때문이다. 고립 회피 전방 목적점이 궤적 생성 모듈(163)에 의해 이미 설정되어 있다면 고립 회피 전방 목적점까지 충돌이 발생하 지 않는 경우 고립 회피 전방 목적점까지 궤적에 따라 로봇이 이동 상태에 있게 된 다. 만약 설정되어 있으나 충돌이 발생한다면 로봇은 정지 상태로 천이된다. 고립 회피 전방 목적점이 설정되어 있지 않고 생성 가능하다면 고립 회피 전방 목적점을 생성 및 설정하고 그 궤적에 따라 로봇이 이동한다.
고립 회피 전방 목적점이 설정되어 있지도 않고 생성도 불가능하다면 고립 회피 후방 목적점을 고려해야 하는데, 고립 회피 후방 목적점이 설정되어 있다면 고립 회피 전방 목적점과 동일하게 처리가 가능하다. 그리고 고립 회피 후방 목적점이 설정되어 있지 않지만 생성이 가능한 경우라면 고립 회피 후방 목적점을 생성 및 설정하고 그 궤적에 따라 로봇이 이동할 수 있다. 만약 고립 회피 후방 목적점이 설정도 없고 생성도 불가능하다면 로봇은 정지 상태에 있게 된다.
고립 회피 전방 목적점의 경우 충돌 회피 목적점과 동일한 비용함수를 이용하여 구하는데, 단 충돌 회피 목적점의 경우와 다르게 그 후보군 선정 시 고립 회피 목적점에서 목적점까지 충돌이 발생하는 경우에는 후보군에서 제외한다.
고립 회피 후방 목적점의 경우 후보군은 로봇의 후방, 즉 로봇의 전방을 0°로 보았을 때 180°± △θ를 양 끝 각으로 하고 반경 d2인 부채꼴의 호 위에 소정 간격으로 N개로 생성될 수 있다. 이때 충돌 회피 목적점 또는 고립 회피 전방 목적점 생성에 고려했던 부채꼴의 반경 d1보다 d2가 작거나 같은 것이 좋은데, 최소한의 후진으로 고립을 회피할 수 있다면 이를 택하는 것이 바람직하기 때문이다.
최적 고립 회피 후방 목적점을 구하기 위한 비용 함수에는 아래 [수학식 2]와 같이 좌우 후진 방향에 대한 비용(Cdir, 0 또는 1)이 포함되는 것이 좋다. 왜냐하면, 방향에 대한 비용을 고려하지 않는 경우 로봇과 로봇이 마주했을 때 거울상과 같은 움직임을 하지 않도록 할 수 있기 때문이다.
[수학식 2]
Figure PCTKR2022020206-appb-img-000002
도 12는 2대의 로봇이 마주하는 경우를 도시한 것인데, 도 12(a)와 같이 로봇1과 로봇2과 마주하였을 때, 비용 함수에 우측 후방에 대한 비용이 낮게 설정되어 있다면 2대의 로봇이 모두 도 12(b)와 같이 각자의 우측 후방으로 이동하게 되고, 도 12(c)와 같이 다시 직진하였을 때 마주보지 않고 서로 회피하여 이동할 수 있게 된다. 만약 방향에 대한 비용이 포함되어 있지 않다면 주변 환경이 비슷하기 때문에 2개의 로봇이 모두 위로 가거나 모두 아래로 가 다시 직진하였을 때 마주할 가능성이 높고 이는 로봇들을 고립 상태나 마찬가지 상태에 빠지게 하기 때문이다.
그리고 최적 고립 회피 후방 목적점을 구하기 위한 비용 함수는 로봇에서 고립 회피 후방 목적점까지의 비용만, 즉 고립 회피 후방 목적점에서 목적지까지의 비용은 포함하지 않고 계산된다. 왜냐하면, 고립 회피 후방 목적점의 설정은 본 발명에서 최후의 수단으로 채택하는 것이기 때문에 이동 이후를 생각하지 않고 일단 고립 상태를 벗어나고자 하는 것을 목적으로 하기 때문이다.
도 13은 고립 회피 목적점의 설정 및 이에 따른 로봇의 이동을 도시한 예시도이다. 로봇이 전방의 상자형 장애물에 의해 고립되어 있다면 도 13(a)와 같이 고립 회피 전방 목적점 후보군을 생성하더라도 목적지에 충돌 없이 도달할 수 있는 고립 회피 전방 목적점이 없어, 도 13(b)와 같은 고립 회피 후방 목적점을 생성하게 된다. 이때 로봇은 우측 후방에 대한 비용이 낮기 때문에 도 13(c)와 같이 장애물의 우측으로 고립을 벗어나게 되고, 충돌 회피 목적점을 설정하거나 목적지 (정지) 궤적을 설정하여 도 13(d)와 같이 고립을 회피하여 목적지에 도달할 수 있게 된다.
부호의 설명
110: 모터 120: 모터 구동 보드
130: 배터리 140: 전력 공급 보드
150: 비전 장치 160: PC
161: 상태 판단 모듈 163: 궤적 생성 모듈
170: 센서 180: MCU 보드
S10: 로봇 상태 결정 단계 S20: 도착 판단 단계
S30: 정지 궤적 생성 단계 S40: 후진 판단 단계
S50: 후진 궤적 생성 단계 S60: 회피 판단 단계
S70: 목적지 궤적 생성 단계 S80: 회피 궤적 생성 단계

Claims (5)

  1. 모터(110);
    상기 모터(110)를 제어하는 모터 구동 보드(120);
    배터리(130);
    상기 배터리를 제어하는 전력 공급 보드(140);
    주변의 비전 데이터를 획득하는 비전 장치(150);
    상기 비전 장치(150)로부터 비전 데이터를 전송받아 경로를 설정하고 동작 명령을 생성하여 상기 모터 구동 보드(120)와 전력 공급 보드(140)를 제어하는 PC(160)로 구성되고,
    상기 PC(160)가 상태 판단 모듈(161) 및 궤적 생성 모듈(163)로 구성되며,
    상기 상태 판단 모듈(161)이 로봇의 위치 및 방향을 결정하는 로봇 상태 결
    정 단계(S10)를 수행한 후, 상기 로봇이 목적지와 제1 임계 거리 이하에 있는지를 판단하는 도착 판단 단계(S20)를 수행하여 상기 로봇이 목적지와 제1 임계 거리 이 하에 있는 경우 상기 궤적 생성 모듈(163)이 정지 궤적 생성 단계(S30)를 수행하여 상기 로봇이 목적지에 접근하면서 속도가 줄어들어 0이 되는 정지 궤적을 생성하는 것을 특징으로 하는 장애물의 회피 이동이 가능한 자율 주행 로봇.
  2. 청구항 1에 있어서,
    상기 도착 판단 단계(S20)에서 상기 로봇이 목적지와 제1 임계 거리를 초과 하여 있는 경우, 상기 상태 판단 모듈(161)이 상기 로봇의 후방으로 목적지까지 목 적지 궤적이 생성되는지를 판단하는 후진 판단 단계(S40)를 수행하고, 목적지 궤적 이 생성되는 경우 상기 궤적 생성 모듈(163)이 후진 궤적 생성 단계(S50)를 수행하 여 후진 궤적을 생성하는 것을 특징으로 하는 장애물의 회피 이동이 가능한 자율 주행 로봇.
  3. 청구항 2에 있어서,
    상기 후진 판단 단계(S40)에서 목적지 궤적이 생성되지 않는 경우, 상기 상태 판단 모듈(161)이 회피 판단 단계(S60)를 수행하고, 목적지까지 장애물과 충돌 없이 도달 가능한 궤적이 없다면 상기 궤적 생성 모듈(163)이 회피 궤적 생성 단계(S80)를 수행하여 지역적 목적점을 설정하고 지역적 목적점까지 이르는 회피 궤적 을 생성하는 것을 특징으로 하는 장애물의 회피 이동이 가능한 자율 주행 로봇.
  4. 청구항 3에 있어서,
    상기 지역적 목적점 중 장애물과 충돌을 회피하기 위하여 설정되는 충돌 회피 목적점의 후보군이 상기 로봇의 전방 방향에서 △θ를 뺀 각과 로봇과 목적지를 있는 방향에서 △θ를 뺀 각 중 작은 값과 상기 로봇의 전방 방향에서 △θ를 더한 각과 로봇과 목적지를 있는 방향에서 △θ를 더한 각 중 큰 값을 양 끝각으로 하고, 반경이 d1인 부채꼴의 호 위에 N개 설정되는 것을 특징으로 하는 장애물의 회피 이동이 가능한 자율 주행 로봇.
  5. 청구항 3에 있어서,
    상기 지역적 목적점 중 로봇의 고립 상태를 해소하기 위한 고립 회피 목적점 이 고립 회피 전방 목적점 및 고립 회피 후방 목적점으로 구성되고, 상기 고립 회피 후방 목적점의 후보군 중 최적 고립 회피 후방 목적점을 구하기 위한 비용 함수에 좌우 후진 방향에 대한 비용이 포함되는 것을 특징으로 하는 장애물의 회피 이동이 가능한 자율 주행 로봇.
PCT/KR2022/020206 2022-02-15 2022-12-13 장애물의 회피 이동이 가능한 자율 주행 로봇 WO2023158075A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2022-0019769 2022-02-15
KR1020220019769A KR102479619B1 (ko) 2022-02-15 2022-02-15 장애물의 회피 이동이 가능한 자율 주행 로봇

Publications (1)

Publication Number Publication Date
WO2023158075A1 true WO2023158075A1 (ko) 2023-08-24

Family

ID=84536908

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/020206 WO2023158075A1 (ko) 2022-02-15 2022-12-13 장애물의 회피 이동이 가능한 자율 주행 로봇

Country Status (2)

Country Link
KR (1) KR102479619B1 (ko)
WO (1) WO2023158075A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102572851B1 (ko) 2023-04-04 2023-08-31 주식회사 클로봇 목적지까지 이동하는 이동 로봇 장치 및 그의 동작 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100585680B1 (ko) * 2004-12-10 2006-06-07 엘지전자 주식회사 이동 로봇의 구동바퀴 속도지령치 생성방법
KR20060093964A (ko) * 2005-02-23 2006-08-28 엘지전자 주식회사 이동로봇의 정지제어방법
JP2010092279A (ja) * 2008-10-08 2010-04-22 Murata Machinery Ltd 自律移動体及び自律移動体の移動制御方法
KR20120054879A (ko) * 2010-11-22 2012-05-31 고려대학교 산학협력단 차량형 이동 로봇의 충돌 회피 경로 생성 방법 및 이를 이용한 주차 보조 시스템
KR20170043946A (ko) * 2015-10-14 2017-04-24 국방과학연구소 이동체의 경로계획 장치 및 그 계획 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102049962B1 (ko) 2019-04-17 2019-11-28 주식회사 트위니 샘플링기반의 최적 트리를 이용한 경로 계획 방법, 이를 구현하기 위한 프로그램이 저장된 기록매체 및 이를 구현하기 위해 매체에 저장된 컴퓨터프로그램

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100585680B1 (ko) * 2004-12-10 2006-06-07 엘지전자 주식회사 이동 로봇의 구동바퀴 속도지령치 생성방법
KR20060093964A (ko) * 2005-02-23 2006-08-28 엘지전자 주식회사 이동로봇의 정지제어방법
JP2010092279A (ja) * 2008-10-08 2010-04-22 Murata Machinery Ltd 自律移動体及び自律移動体の移動制御方法
KR20120054879A (ko) * 2010-11-22 2012-05-31 고려대학교 산학협력단 차량형 이동 로봇의 충돌 회피 경로 생성 방법 및 이를 이용한 주차 보조 시스템
KR20170043946A (ko) * 2015-10-14 2017-04-24 국방과학연구소 이동체의 경로계획 장치 및 그 계획 방법

Also Published As

Publication number Publication date
KR102479619B1 (ko) 2022-12-21

Similar Documents

Publication Publication Date Title
US5400244A (en) Running control system for mobile robot provided with multiple sensor information integration system
Das et al. A vision-based formation control framework
WO2023158075A1 (ko) 장애물의 회피 이동이 가능한 자율 주행 로봇
EP0346538A1 (en) Control method for an unmanned vehicle
WO2018128292A1 (ko) 공항용 로봇 및 그의 동작 방법
EP0367527A2 (en) A method for controlling movements of a mobile robot in a multiple node factory
JPS62216009A (ja) モ−タで操向を制御される多重ホイ−ル車両用のフエイルセ−フ制動装置
CN113110478A (zh) 一种多机器人运动规划的方法、系统及存储介质
Cosgun et al. Anticipatory robot path planning in human environments
Azarm et al. A decentralized approach for the conflict-free motion of multiple mobile robots
WO2020231080A1 (ko) 이동로봇의 센서 데이터를 활용한 교차점 패턴 인식모델 생성 방법 및 교차점 패턴 인식 시스템
CN115047878A (zh) 一种基于dm-dqn的移动机器人路径规划方法
CN116360457A (zh) 一种基于自适应栅格和改进a*-dwa融合算法的路径规划方法
Manz et al. A comparison of realtime obstacle avoidance methods for mobile robots
Kak et al. Experiments in the integration of world knowledge with sensory information for mobile robots
Kumaar et al. A scalable tree based path planning for a service robot
Takiguchi et al. Collision avoidance algorithm using deep learning type artificial intelligence for a mobile robot
Mai et al. Generic system architecture for behavior-based mobile robot control using fuzzy logic
WO2024112090A1 (ko) 주행 로봇의 특징 지도를 이용한 경로 계획 방법 및 이를 수행하는 프로그램이 기록된 컴퓨터 판독이 가능한 기록매체
WO2024085285A1 (ko) 컨텍스트 맵을 활용한 로봇 기반 최적 실내 배송경로 탐색 방법
WO2022114289A1 (ko) 자율주행 자동차의 지역 경로 생성/계획 방법 및 시스템
WO2023234763A1 (ko) 이동형 로봇의 도킹 시스템 및 그 방법
WO2024117451A1 (ko) 복수개의 로봇과 통신 가능한 클라우드 서버의 제어 방법
Adorni et al. Autonomous agents coordination through traffic signals and rules
WO2024075959A1 (ko) 로봇, 서버 및 그 제어 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22927471

Country of ref document: EP

Kind code of ref document: A1