KR20110125865A - Method and apparatus for controlling self-driving of mobile-robot - Google Patents

Method and apparatus for controlling self-driving of mobile-robot Download PDF

Info

Publication number
KR20110125865A
KR20110125865A KR1020100045479A KR20100045479A KR20110125865A KR 20110125865 A KR20110125865 A KR 20110125865A KR 1020100045479 A KR1020100045479 A KR 1020100045479A KR 20100045479 A KR20100045479 A KR 20100045479A KR 20110125865 A KR20110125865 A KR 20110125865A
Authority
KR
South Korea
Prior art keywords
lane
obstacle
information
mobile robot
vector
Prior art date
Application number
KR1020100045479A
Other languages
Korean (ko)
Other versions
KR101204086B1 (en
Inventor
고낙용
Original Assignee
조선대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 조선대학교산학협력단 filed Critical 조선대학교산학협력단
Priority to KR1020100045479A priority Critical patent/KR101204086B1/en
Publication of KR20110125865A publication Critical patent/KR20110125865A/en
Application granted granted Critical
Publication of KR101204086B1 publication Critical patent/KR101204086B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • B25J13/089Determining the position of the robot with reference to its environment
    • 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/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • 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
    • B25J9/1694Programme 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot

Abstract

PURPOSE: An autonomous driving method of a mobile robot and an autonomous driving device is provided to reduce the time for generating the movement control information of a mobile robot according to a lane by detecting a lane and analyzing the image of a specific section. CONSTITUTION: An autonomous driving method of a mobile robot(300) comprises the following steps. The front section of the mobile robot is recorded. The front image information is generated. The front image information is processed. The lane distribution information indicating distribution degree of lanes(r1, r2) in front of the mobile robot is generated. The information about repulsive force for lane transferring the mobile robot to the opposite direction of lane is generated using the lane distribution information. The straight forward speed command and the move control information including the speed of rotation command are generated based on the information about repulsive force for lane.

Description

이동 로봇의 자율 주행 방법 및 자율 주행 장치{Method and apparatus for controlling self-driving of mobile-robot} Autonomous driving method and autonomous driving device of mobile robot {Method and apparatus for controlling self-driving of mobile-robot}

본 발명은 이동 로봇의 자율 주행 방법 및 자율 주행 장치에 관한 것으로서, 상세하게는 영상 센서와 장애물 감지 센서를 이용하여 이동 로봇이 한 쌍의 차선 내에서 장애물을 회피하며 안전하게 자율적으로 주행할 수 있는 자율 주행 방법 및 자율 주행 장치에 관한 것이다.The present invention relates to an autonomous driving method and an autonomous driving device of a mobile robot, and more particularly, an autonomous autonomous vehicle capable of safely and autonomously traveling by avoiding obstacles in a pair of lanes by using an image sensor and an obstacle detecting sensor. A traveling method and an autonomous driving device.

이동 로봇이 정해진 영역 내에서 작업자의 지시에 따라 정확한 작업을 수행하기 위해서는, 이동 로봇의 진행 방향에 존재할 수 있는 장애물들을 회피할 수 있어야 한다. In order for the mobile robot to perform the correct work according to the operator's instructions within the predetermined area, it must be able to avoid obstacles that may exist in the moving direction of the mobile robot.

종래에는 이동 로봇이 정해진 영역 내에서 장애물들을 회피하며 자율적으로 진행하기 위해서, 이동 로봇은 정해진 영역을 감지하는 영역 센서와 카메라 센서를 탑재해야 한다. In the related art, in order for the mobile robot to autonomously proceed to avoid obstacles in the predetermined area, the mobile robot should be equipped with an area sensor and a camera sensor for detecting the predetermined area.

그러나 종래의 이동 로봇에서 사용되는 영역 센서는 고가의 부품이기 때문에 이동 로봇의 제작 가격이 상승할 수밖에 없어 이동 로봇의 대중화를 저해하는 문제점이 있다.However, since the area sensor used in the conventional mobile robot is an expensive component, the manufacturing cost of the mobile robot is inevitably increased, which hinders the popularization of the mobile robot.

또한, 카메라를 이용하여 장애물 및 영상에 대하여 처리하는 경우 카메라 영상 전체에 대하여 영상 분석을 수행해야 하므로 많은 시간이 소요된다. 이는 빠르게 이동하는 이동 로봇일 경우 영상에 대한 처리속도를 따라가지 못하는 문제점이 있다.In addition, when processing obstacles and images using a camera, it takes a lot of time because image analysis must be performed on the entire camera image. This is a fast moving mobile robot has a problem that can not follow the processing speed for the image.

본 발명이 해결하고자 하는 과제는, 영상 센서인 카메라를 통해 획득한 차선의 정보와, 저가의 장애물 감지 센서를 통해 획득한 차선 내에 존재하는 장애물에 대한 정보를 기초로 이동 로봇이 한 쌍의 차선 내에서 주행하는 동시에 이동 로봇의 이동 경로 상에 존재하는 장애물들을 회피하며 주행하는 이동 로봇의 자율 주행 방법 및 그 장치를 제공하는 것이다. The problem to be solved by the present invention, the mobile robot in a pair of lanes based on the information of the lanes obtained through the camera, which is an image sensor, and the information about the obstacles present in the lanes obtained through the low-cost obstacle detection sensor. The present invention provides a method and apparatus for autonomous driving of a mobile robot that travels at the same time and avoids obstacles existing on a moving path of the mobile robot.

본 발명은 차선을 이탈하지 않고 주행하는 이동 로봇의 자율 주행 방법으로서, 이동 로봇의 전방을 촬영하여 전방 영상 정보를 생성하는 단계; 전방 영상 정보를 처리하여 이동 로봇의 전방에 존재하는 차선의 분포 정도를 나타내는 차선 분포 정보를 생성하는 단계; 차선 분포 정보를 이용하여 이동 로봇을 차선의 반대 방향으로 미는 차선 척력 정보를 생성하는 단계; 및 차선 척력 정보에 기초하여 이동 로봇의 직진 속도 명령과 회전 속도 명령을 포함하는 이동 제어 정보를 생성하는 단계를 포함하는 이동 로봇의 자율 주행 방법을 제공하는 것을 특징으로 한다.The present invention provides an autonomous driving method of a mobile robot that travels without leaving a lane, the method comprising: generating front image information by photographing a front side of a mobile robot; Processing lane image information to generate lane distribution information indicating a degree of distribution of lanes in front of the mobile robot; Generating lane repulsion information that pushes the mobile robot in a direction opposite to the lane using the lane distribution information; And generating movement control information including a linear speed command and a rotational speed command of the mobile robot based on the lane repulsive force information.

바람직하게는, 상기 차선 분포 정보를 검출하는 단계는, 전방 영상 정보에서 동일한 폭과 높이를 가지는 복수의 분할 영상을 좌에서 우로 평행하게 선택하는 단계; 각각의 분할 영상으로부터 차선의 컬러와 동일한 컬러를 가지는 픽셀의 개수를 추출하여 차선 픽셀 수를 획득하는 단계; 및 각각의 분할 공간에 대응하는 차선 픽셀 수로부터 차선 분포 정보를 생성하는 단계를 포함할 수 있다.Preferably, the detecting of the lane distribution information comprises: selecting a plurality of divided images having the same width and height from the front image information in parallel from left to right; Extracting the number of pixels having the same color as the lane color from each of the divided images to obtain the number of lane pixels; And generating lane distribution information from the number of lane pixels corresponding to each division space.

바람직하게는, 상기 방법은, 이동 로봇의 전방에 존재하는 장애물을 감지하고, 이동 로봇에 대한 장애물의 방향 및 이동 로봇으로부터 장애물까지의 거리에 대한 정보를 포함하는 장애물 정보를 생성하는 단계; 및 상기 장애물 정보를 기초로, 이동 로봇을 장애물의 반대 방향으로 미는 장애물 척력 정보를 생성하는 단계를 더 포함하며, 이동 제어 정보는 장애물 척력 정보와 차선 척력 정보를 합성한 합성 척력 정보에 따라 생성될 수 있다.Preferably, the method comprises the steps of sensing an obstacle present in front of the mobile robot and generating obstacle information including information about the direction of the obstacle with respect to the mobile robot and the distance from the mobile robot to the obstacle; And generating obstacle repulsion information that pushes the mobile robot in a direction opposite to the obstacle, based on the obstacle information, wherein the movement control information is generated according to the synthesized repulsion information obtained by combining the obstacle repulsion information and the lane repulsion information. Can be.

한편, 본 발명은 상기 이동 로봇의 자율 주행 방법을 실현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.On the other hand, the present invention provides a computer-readable recording medium recording a program for realizing the autonomous driving method of the mobile robot.

본 발명에 의하면, 이동 로봇이 한 쌍의 차선 밖으로 이탈하는 것이 방지되는 동시에 이동 로봇이 이동 경로에 존재하는 장애물과 충돌하는 것이 방지될 수 있다. According to the present invention, the mobile robot can be prevented from escaping out of the pair of lanes and at the same time, the mobile robot can be prevented from colliding with an obstacle present in the movement path.

또한 본 발명에 의하면, 카메라로 획득된 전방 영상에서 특정 영역에 대한 영상만을 분석하여 차선을 검출하기 때문에 차선에 따른 이동 로봇의 이동 제어 정보를 생성하는 시간이 단축되어 실시간 처리가 가능하며, 저가의 장애물 감지 센서를 이용하므로 이동 로봇의 제작 단가를 줄일 수 있다.In addition, according to the present invention, since only the image of the specific area is detected from the front image obtained by the camera to detect the lane, the time for generating the movement control information of the mobile robot according to the lane is shortened, thereby real-time processing is possible. By using the obstacle detection sensor, the manufacturing cost of the mobile robot can be reduced.

도 1은 본 발명에 따른 이동 로봇의 자율 주행 장치를 예시한 도면.
도 2는 본 발명에 따른 이동 로봇의 자율 주행 장치를 설명한 블록도.
도 3은 장애물 감지 센서가 이동 로봇에 장착되는 배치예를 예시한 도면.
도 4는 차선 검출부를 상세히 나타낸 블록도.
도 5는 차선 분포 정보를 생성하는 과정을 설명하기 위한 도면.
도 6은 차선 척력 생성부를 상세하게 나타낸 블록도.
도 7은 장애물 척력 생성부를 상세하게 나타낸 블록도.
도 8은 도 5(c)의 차선 분포 정보를 기초로 차선 척력 정보를 생성하는 과정을 각각 설명한 도면.
도 9는 감지 신호를 기초로 장애물 척력 정보를 생성하는 과정을 각각 설명한 도면.
도 10은 합성 척력 정보를 생성하는 과정을 예시한 도면.
도 11은 합성 척력 벡터에 따라 제어되는 이동 로봇의 직진 속도 및 회전 속도를 예시한 도면.
도 12는 본 발명에 따른 이동 로봇의 자율 주행 방법을 설명한 흐름도.
도 13은 차선 분포 정보를 생성하는 과정을 상세히 설명한 흐름도.
도 14는 차선 척력 정보를 생성하는 과정을 상세히 설명한 흐름도.
도 15는 장애물 척력 정보를 생성하는 과정을 상세히 설명한 흐름도.
도 16은 이동 제어 정보를 생성하는 과정을 상세히 설명한 흐름도.
1 is a diagram illustrating an autonomous driving device of a mobile robot according to the present invention.
Figure 2 is a block diagram illustrating an autonomous running device of a mobile robot according to the present invention.
3 is a diagram illustrating an arrangement example in which an obstacle detecting sensor is mounted on a mobile robot.
4 is a block diagram illustrating in detail a lane detection unit;
5 is a view for explaining a process of generating lane distribution information.
Figure 6 is a block diagram showing in detail the lane repulsion force generation unit.
7 is a block diagram showing in detail the obstacle repulsive force generating unit.
FIG. 8 is a view for explaining a process of generating lane repulsion information based on the lane distribution information of FIG.
9 is a view for explaining the process of generating obstacle repulsion information based on the detection signal, respectively.
10 is a diagram illustrating a process of generating synthetic repulsive force information.
FIG. 11 is a diagram illustrating the straight and rotational speeds of the mobile robot controlled according to the synthetic repulsive force vector. FIG.
12 is a flow chart illustrating an autonomous driving method of a mobile robot according to the present invention.
13 is a flowchart illustrating a process of generating lane distribution information in detail.
14 is a flowchart illustrating a process of generating lane repulsion information in detail;
15 is a flowchart illustrating a process of generating obstacle repulsion information in detail.
16 is a flowchart illustrating a process of generating movement control information in detail.

이하에서 첨부된 도면을 참조하여, 본 발명의 바람직한 실시예를 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.

도 1은 본 발명에 따른 이동 로봇의 자율 주행 장치를 예시한 도면이다.1 is a diagram illustrating an autonomous driving device of a mobile robot according to the present invention.

본 발명에 따른 이동 로봇의 자율 주행 장치는 이동 로봇(300)에 장착되어 이동 로봇이 차선을 이탈하지 않고 자율적으로 주행하도록 제어하며, 추가로 이동 로봇이 주행하는 주행 방향의 전방에 장애물이 존재하는 경우 이동 로봇이 그 장애물을 회피하며 자율 주행하도록 제어한다.The autonomous driving device of the mobile robot according to the present invention is mounted on the mobile robot 300 to control the mobile robot to autonomously travel without leaving the lane, and furthermore, an obstacle exists in front of the driving direction in which the mobile robot travels. In this case, the mobile robot avoids the obstacle and controls the autonomous driving.

이동 로봇(300)에 장착되는 자율 주행 장치는 바퀴의 회전을 제어하여 이동 로봇이 한 쌍의 차선(r1, r2) 내에서 자율적으로 주행하도록 제어하는 동시에 자율 주행중에 주행 방향(x)에 존재할 수 있는 장애물(ob1, ob2)을 회피하며 직진, 후진, 회전, 및 정지를 제어하는 장치이다. 이동 로봇(300)에 장착되는 바퀴의 개수는 도면에 한정되지 않고 3개 또는 4개가 될 수 있으며, 이동 로봇의 자율 주행 장치는 바퀴의 개수에 따라 다양한 방식으로 바퀴의 회전을 제어할 수 있다.The autonomous driving device mounted on the mobile robot 300 controls the rotation of the wheels to control the mobile robot to autonomously travel in the pair of lanes r1 and r2 and may exist in the driving direction x during autonomous driving. It is a device that controls the forward, backward, rotation, and stop while avoiding obstacles ob1 and ob2. The number of wheels mounted on the mobile robot 300 may be three or four, not limited to the drawings, and the autonomous driving device of the mobile robot may control the rotation of the wheels in various ways according to the number of wheels.

한편 본 발명에 따른 이동 로봇의 자율 주행 장치는 이동 로봇이 주행하는 도중에 장애물을 감지하면 장애물을 회피하면서 차선을 따라 주행하도록 이동 로봇을 제어할 수도 있다.Meanwhile, the autonomous driving device of the mobile robot according to the present invention may control the mobile robot to travel along a lane while avoiding the obstacle when sensing the obstacle while the mobile robot is driving.

본 발명에 따른 이동 로봇의 자율 주행 장치는 영상 센서인 카메라부(111)를 통해 획득한 전방 영상을 이용하여 차선을 감지하고, 후술하겠지만 장애물은 장애물 감지 센서를 이용하여 전방에 존재하는 장애물을 감지할 수 있다.The autonomous driving device of the mobile robot according to the present invention detects a lane using a front image obtained through the camera unit 111 which is an image sensor, and as will be described later, an obstacle detects an obstacle present in the front using an obstacle detecting sensor. can do.

도 2는 본 발명에 따른 이동 로봇의 자율 주행 장치를 설명한 블록도이다. 2 is a block diagram illustrating an autonomous driving device of a mobile robot according to the present invention.

도 1을 참조하면, 본 발명에 따른 이동 로봇의 자율 주행 장치는 센서부(110), 차선 검출부(120), 차선 척력 생성부(130), 및 이동 제어부(140)를 포함하며, 추가로 장애물 검출부(150), 및 장애물 척력 생성부(160)를 더 포함할 수 있다.Referring to FIG. 1, the autonomous driving device of a mobile robot according to the present invention includes a sensor unit 110, a lane detecting unit 120, a lane repulsive force generating unit 130, and a movement control unit 140. The detector 150 may further include an obstacle repulsive force generating unit 160.

우선 센서부(110)는 이동 로봇(300)이 주행하는 주행 방향의 전방을 촬영하여 전방 영상을 생성하는 영상 센서인 카메라부(111)를 포함하며, 추가로 이동 로봇이 주행하는 주행 방향의 전방에 존재하는 장애물을 감지하고 감지된 장애물의 이동 로봇에 대한 방향과 이동 로봇에서 장애물까지의 거리에 대한 정보를 포함하는 장애물 정보를 생성하는 장애물 감지 센서(112)를 더 포함할 수 있다.First, the sensor unit 110 includes a camera unit 111 which is an image sensor which generates a front image by photographing the front of the driving direction in which the mobile robot 300 travels, and further, the front of the driving direction in which the mobile robot travels. It may further include an obstacle detection sensor 112 for detecting an obstacle present in the and generating obstacle information including information about the direction of the detected obstacle to the mobile robot and the distance from the mobile robot to the obstacle.

카메라부(111)는 이동 로봇(10)이 주행하는 주행 방향의 전방을 촬영하여 전방 영상에 대한 영상 정보를 생성하는 영상 센서이다. 카메라부(111)에 의해 획득된 전방 영상은 후술할 차선 검출부(120)로 제공된다.The camera unit 111 is an image sensor which photographs the front of the driving direction in which the mobile robot 10 travels to generate image information of the front image. The front image obtained by the camera unit 111 is provided to the lane detecting unit 120 to be described later.

장애물 감지 센서(112)는 이동 로봇이 주행하는 주행 방향의 전방에 존재하는 장애물을 감지한 감지 신호를 생성한다. 장애물 감지 센서(112)로서 저가의 적외선 센서가 이용될 수 있으며, 적외선 센서는 적외선 신호를 발신하고 장애물로부터 반사되어 돌아오는 신호를 감지 신호(적외선 신호)로서 수신한다. 한편, 초음파 신호를 이용하는 초음파 센서 또는 도플러 센서 등이 장애물을 감지하기 위한 장애물 감지 센서(112)로서 이용될 수 있다. 장애물 감지 센서(11)는 장애물을 감지하고, 이동 로봇에 대한 장애물의 방향 및 이동 로봇으로부터 장애물까지의 거리를 측정할 수 있는 센서이면 적외선 센서, 초음파 센서, 및 도플러 센서 중에서 어느 것이든 이용될 수 있다.The obstacle detecting sensor 112 generates a detection signal for detecting an obstacle existing in the front of the driving direction in which the mobile robot travels. An inexpensive infrared sensor may be used as the obstacle detecting sensor 112, and the infrared sensor transmits an infrared signal and receives a signal returned from the obstacle as a detection signal (infrared signal). Meanwhile, an ultrasonic sensor or a Doppler sensor using an ultrasonic signal may be used as the obstacle detecting sensor 112 for detecting an obstacle. The obstacle detecting sensor 11 may use any one of an infrared sensor, an ultrasonic sensor, and a Doppler sensor as long as it detects an obstacle and measures a direction of the obstacle with respect to the mobile robot and a distance from the mobile robot to the obstacle. have.

장애물 검출부(150)는 장애물에서 반사되어 돌아오는 감지 신호들을 수신하고 이를 분석함으로써, 이동 로봇의 전방에 존재할 수 있는 모든 장애물에 대하여 각 장애물(ob)의 방향(d) 및 이동 로봇(300)에서 각 장애물(ob)까지의 거리(l)에 대한 정보를 포함하는 장애물 정보를 생성한다.The obstacle detecting unit 150 receives and analyzes the detection signals reflected from the obstacle and returns the same, and thus, in the direction d of each obstacle ob and the moving robot 300 with respect to all obstacles that may exist in front of the mobile robot. Obstacle information including information on the distance l to each obstacle ob is generated.

장애물 감지 센서(112)는 이동 로봇(10)이 주행하는 주행 방향을 중심으로 180°내에 존재하는 장애물을 감지하기 위해, 이동 로봇(10)의 외부에 각도별로 다수 개가 설치될 수 있다. 장애물 감지 센서(112)는 이동 로봇이 주행하는 주행 방향의 전방에 존재하는 장애물들을 감지한 감지 신호들을 후술할 장애물 검출부(150)로 제공한다. Obstacle detection sensor 112 may be installed in a plurality of angles on the outside of the mobile robot 10 in order to detect the obstacle present within 180 ° with respect to the driving direction in which the mobile robot 10 travels. The obstacle detecting sensor 112 provides detection signals that detect obstacles in front of the driving direction in which the mobile robot travels to the obstacle detecting unit 150, which will be described later.

도 3은 장애물 감지 센서가 이동 로봇에 장착되는 배치예를 예시한 도면이다.3 is a diagram illustrating an arrangement example in which the obstacle detection sensor is mounted on the mobile robot.

도 3을 참조하면, 복수의 장애물 감지 센서(112_1~112_5)가 일정한 각도를 이루며 이동 로봇(10)의 외부에 배치된다. 장애물 감지 센서의 개수를 늘리면, 감지되는 장애물의 방향이 더욱 정밀하게 측정될 수 있다. 각 장애물 감지 센서는 자신이 측정할 수 있는 범위 내에 존재하는 장애물을 감지한 감지 신호를 생성할 수 있다.Referring to FIG. 3, the plurality of obstacle detection sensors 112_1 to 112_5 form a predetermined angle and are disposed outside the mobile robot 10. By increasing the number of obstacle detecting sensors, the direction of the detected obstacle may be measured more precisely. Each obstacle detection sensor may generate a detection signal that detects an obstacle existing within a range that can be measured.

장애물 검출부(150)는 장애물 감지 센서(112_1~112_5)에서 생성된 감지 신호들을 수집하고 이를 분석하여 이동 로봇의 전방에 존재할 수 있는 모든 장애물에 대한 장애물 정보를 생성한다. 장애물 정보는 이동 로봇(300)에 대한 모든 장애물들에 대하여 각 장애물(ob)의 방향(d) 및 이동 로봇(300)에서 각 장애물(ob)까지의 거리(l)에 대한 정보를 포함한다.The obstacle detecting unit 150 collects the detection signals generated by the obstacle detecting sensors 112_1 to 112_5 and analyzes them to generate obstacle information on all obstacles that may exist in front of the mobile robot. The obstacle information includes information about the direction d of each obstacle ob and the distance l from the mobile robot 300 to each obstacle ob with respect to all obstacles to the mobile robot 300.

도 3에서는 장애물 검출부(150)가 하나의 장애물(ob)에 대한 장애물 정보를 생성하는 것을 예시하였지만, 장애물 검출부(150)는 물론 복수의 장애물에 대한 장애물 정보를 생성할 수 있다. In FIG. 3, although the obstacle detector 150 generates obstacle information on one obstacle ob, the obstacle detector 150 may of course generate obstacle information on a plurality of obstacles.

전술한 것처럼 장애물 감지 센서의 개수는 다양하게 변경될 수 있으며, 장애물 감지 센서의 개수가 증가할수록, 이동 로봇에 대한 장애물의 방향이 좀 더 정밀하게 측정될 수 있다. 장애물 감지 센서(112)의 장애물 정보를 이용하여 장애물을 회피하는 과정에 대해서는 후술하도록 한다. As described above, the number of obstacle detection sensors may be variously changed, and as the number of obstacle detection sensors increases, the direction of the obstacle with respect to the mobile robot may be measured more precisely. A process of avoiding obstacles by using obstacle information of the obstacle detection sensor 112 will be described later.

도 2로 되돌아가 설명하도록 한다.2 will be described again.

차선 검출부(120)는 이동 로봇의 전방 영상을 처리하여, 이동 로봇의 주행 방향에 대하여 차선의 방향 및 차선의 분포 정도를 나타내는 차선 분포 정보를 생성한다.The lane detecting unit 120 processes the front image of the mobile robot to generate lane distribution information indicating the direction of the lane and the degree of distribution of the lane with respect to the traveling direction of the mobile robot.

도 4는 차선 검출부를 상세히 나타낸 블록도로서, 차선 검출부(120)는 영상 분할부(121) 및 픽셀 추출부(122)를 포함할 수 있다.4 is a detailed block diagram illustrating a lane detector, and the lane detector 120 may include an image divider 121 and a pixel extractor 122.

영상 분할부(121)는 카메라부(111)가 촬영한 전방 영상을 동일한 폭과 높이를 가지는 복수의 분할 영상으로 분할한다. 분할 영상은 전방 영상에서 좌에서 우로 평행하게 분할된 영상이다. The image dividing unit 121 divides the front image captured by the camera unit 111 into a plurality of divided images having the same width and height. The split image is an image divided in parallel from left to right in the front image.

픽셀 추출부(122)는 각각의 분할 영상을 분석하여 각각의 분할 영상 내에서 차선과 동일한 컬러를 가지는 픽셀인 차선 픽셀 및 차선 픽셀의 픽셀 수를 검출한다.The pixel extracting unit 122 analyzes each divided image and detects the number of the pixels including the lane pixels and the lane pixels that are pixels having the same color as the lane in each divided image.

차선 검출부(120)는 각각의 분할 영상에 대하여 차선 픽셀 수에 대한 정보를 포함하는 차선 분포 정보를 생성한다. 차선 분포 정보는 각 분할 영상에 대하여 그 분할 영상 내에 포함된 차선 픽셀 수에 대한 정보를 포함한다. 차선 분포 정보는 이동 로봇(10)이 주행하는 방향에 대하여 차선의 방향 및 차선의 분포 정도를 암시한다.The lane detector 120 generates lane distribution information including information on the number of lane pixels for each split image. The lane distribution information includes information on the number of lane pixels included in the divided image for each divided image. Lane distribution information implies the direction of the lane and the degree of distribution of the lane with respect to the direction in which the mobile robot 10 travels.

도 5는 차선 분포 정보를 생성하는 과정을 설명하기 위한 도면으로서, 도 5(a)는 전방 영상을 나타내고, 도 5(b)는 분할 영상을 나타내며, 도 5(c)는 각 분할 영상에 대하여 추출된 차선 픽셀 수를 나타내는 그래프이다.FIG. 5 is a diagram for describing a process of generating lane distribution information. FIG. 5 (a) shows a front image, FIG. 5 (b) shows a segmented image, and FIG. 5 (c) shows each segmented image. A graph showing the number of extracted lane pixels.

도 5(a)는 카메라부(111)가 촬영한 전방 영상(123)을 예시한 도면으로서, 전방 영상(123) 내에 한 쌍의 차선(r1, r2)이 촬영되어 있음을 볼 수 있다. 카메라부(111)가 촬영한 전방 영상(123)은 차선 검출부(120)로 제공된다.FIG. 5A illustrates a front image 123 taken by the camera unit 111, and it can be seen that a pair of lanes r1 and r2 are captured in the front image 123. The front image 123 captured by the camera unit 111 is provided to the lane detecting unit 120.

도 5(b)는 분할 영상을 나타낸 도면이다.5B is a diagram illustrating a divided image.

차선 검출부(120)의 영상 분할부(121)는 카메라부(111)가 촬영한 전방 영상(123)에서 동일한 폭과 높이를 가지는 복수의 분할 영상(im)을 선택한다. The image splitter 121 of the lane detector 120 selects a plurality of split images im having the same width and height from the front image 123 captured by the camera 111.

도 5(b)를 참조하면, 분할 영상(im)은 전방 영상(123)을 좌에서 우로 평행하게 분할한 영상들(im_1~im_17)로 이뤄진다. 각각의 분할 영상(im_1~im_17)은 전방 영상(123) 내에서 동일한 폭(w)과 높이(h)를 가진다.Referring to FIG. 5B, the split image im is composed of images im_1 to im_17 obtained by dividing the front image 123 in parallel from left to right. Each of the divided images im_1 to im_17 has the same width w and height h in the front image 123.

이러한 각각의 분할 영상(im_1~im_17)은 전방 영상의 특정 지점을 중심으로 동일한 폭과 높이를 가지도록 수평으로 분할되어 선택되며, 그 각 분할 영상의 폭(w)의 크기에 따라 분할 영상의 개수가 달라질 수 있다. 분할 영상이 선택되는 구역은 카메라부(111)의 설치 위치, 카메라부(11)의 촬영 각도, 카메라부(111)의 촬영 화각, 및 카메라부(111)의 초점 거리 등에 따라 적절하게 선택될 수 있다. 도 5(b)에서 영상 분할부(121)는 그 분할 영상의 개수가 17개가 되도록 분할 영상을 선택하였다. Each of the divided images (im_1 to im_17) is horizontally divided so as to have the same width and height with respect to a specific point of the front image, and the number of the divided images according to the size of the width (w) of each divided image. May vary. The area where the divided image is selected may be appropriately selected according to the installation position of the camera unit 111, the photographing angle of the camera unit 11, the photographing angle of the camera unit 111, the focal length of the camera unit 111, and the like. have. In FIG. 5B, the image divider 121 selects the divided images so that the number of the divided images is 17. In FIG.

한편 분할 영상(im_1~im_17)은 이동 로봇(300)의 전방을 촬영한 영상에 포함된 영상이므로, 카메라부(111)의 설치 위치 및 초점 거리를 바탕으로 이동 로봇(300)에서 각 분할 영상의 중심부까지의 거리는 쉽게 알 수 있다.Meanwhile, since the divided images im_1 to im_17 are images included in the image photographing the front of the mobile robot 300, the divided images im_1 to im_17 are based on the installation position and the focal length of the camera unit 111. The distance to the center is easy to see.

차선 검출부(120)의 픽셀 추출부(122)는 각각의 분할 영상(im_1~im_17)들에 대하여 2진화 영상 처리를 수행하여 각각의 분할 영상(im_1~im_17) 내에서 차선과 동일한 컬러를 가지는 픽셀인 차선 픽셀을 추출하고, 그 차선 픽셀의 개수인 차선 픽셀 수를 검출한다. The pixel extracting unit 122 of the lane detection unit 120 performs a binarization image processing on each of the divided images im_1 to im_17 to perform pixels of the same color as the lane in each of the divided images im_1 to im_17. Is extracted, and the number of lane pixels that is the number of the lane pixels is detected.

도 5(c)는 각 분할 영상에 대하여 추출된 차선 픽셀 수를 나타내는 그래프로서, x축은 분할 구역을 나타내고, y축은 차선 픽셀 수를 나타낸다.FIG. 5C is a graph showing the number of lane pixels extracted for each divided image, in which the x-axis represents the divided zone and the y-axis represents the number of lane pixels.

도 5(c)를 참조하면, 12번째의 분할 구역의 분할 영상(im_12)과 13번째의 분할 구역의 분할 영상(im_13)에서 차선 픽셀 수가 가장 큼을 알 수 있다. Referring to FIG. 5C, it can be seen that the number of lane pixels is largest in the divided image im_12 of the 12th divided area and the divided image im_13 of the 13th divided area.

차선 검출부(120)는 각각의 분할 영상에서의 차선 픽셀 수에 대한 정보인 차선 분포 정보를 생성하고, 생성된 차선 분포 정보를 차선 척력 생성부(130)로 제공한다. The lane detection unit 120 generates lane distribution information that is information on the number of lane pixels in each divided image, and provides the generated lane distribution information to the lane repulsive force generation unit 130.

한편, 카메라부(111)에서 생성된 이동 로봇의 전방 영상에는 차선과 동일한 컬러를 가지는 노이즈 픽셀이 포함될 수 있다. 따라서, 차선 검출부(120)는 소정의 기준값과 차선 픽셀 수를 비교하고, 차선 픽셀 수가 상기 기준값보다 큰 경우를 분할 구역에 차선이 존재하는 것으로 판단할 수 있다. 이를 위해 차선 검출부(120)는 차선 픽셀 수가 기준값보다 큰 분할 영상들에 대해서만 차선 분포 정보를 생성할 수 있다.Meanwhile, the front image of the mobile robot generated by the camera unit 111 may include a noise pixel having the same color as the lane. Accordingly, the lane detection unit 120 may compare the predetermined reference value with the number of lane pixels and determine that the lane exists in the divided area when the number of lane pixels is larger than the reference value. To this end, the lane detection unit 120 may generate lane distribution information only for the split images having the number of lane pixels greater than the reference value.

차선 척력 생성부(130)는 차선 분포 정보를 이용하여 차선 척력 정보를 생성하는 역할을 수행한다. 차선 척력 정보란 이동 로봇을 차선의 반대 방향으로 미는 척력에 대한 정보이다.The lane repulsive force generation unit 130 serves to generate lane repulsive force information by using lane distribution information. Lane repulsion information is information on the repulsive force pushing the mobile robot in the opposite direction of the lane.

도 6은 차선 척력 생성부를 상세하게 나타낸 블록도이다.6 is a block diagram illustrating in detail a lane repulsive force generation unit.

도 6을 참조하면, 차선 척력 생성부(130)는 차선 검출부(120)로부터 제공받은 차선 분포 정보를 바탕으로 차선 척력 정보를 생성하는 구성요소로서, 차선 벡터 생성부(131), 차선 벡터 합성부(132), 및 차선 척력 정보 생성부(133)를 포함한다.Referring to FIG. 6, the lane repulsive force generation unit 130 is a component that generates lane repulsive force information based on lane distribution information provided from the lane detection unit 120, and includes a lane vector generation unit 131 and a lane vector synthesis unit. 132, and the lane repulsion information generation unit 133.

차선 벡터 생성부(131)는 차선 검출부(120)로부터 제공받은 차선 분포 정보를 바탕으로 차선 벡터를 생성하고, 차선 벡터 합성부(132)는 차선 벡터들을 합성하여 합성 차선 벡터를 생성하며, 차선 척력 정보 생성부(133)는 합성 차선 벡터를 기초로 차선 척력 정보를 생성한다.The lane vector generating unit 131 generates a lane vector based on the lane distribution information provided from the lane detecting unit 120, and the lane vector synthesizing unit 132 synthesizes the lane vectors to generate a synthesized lane vector. The information generator 133 generates lane repulsion information based on the synthesized lane vector.

도 8은 도 5(c)의 차선 분포 정보를 기초로 차선 척력 정보를 생성하는 과정을 각각 설명한 도면으로서, 도 8(a)는 차선 벡터의 생성, 도 8(b)는 차선 벡터의 합성, 및 도 8(c)는 차선 척력 벡터의 생성을 각각 예시한 도면이다.FIG. 8 is a diagram illustrating a process of generating lane repulsion information based on the lane distribution information of FIG. 5 (c). FIG. 8 (a) shows the generation of a lane vector, FIG. 8 (b) shows the synthesis of a lane vector, And FIG. 8C is a diagram illustrating generation of lane repulsive force vectors, respectively.

도 8(a)를 참조하면, 차선 벡터 생성부(131)는 차선 벡터도에서 10번째 분할 영상(im10)에서 15번째 분할 영상(im15)에 대한 차선 벡터(10~15)들을 생성한다.Referring to FIG. 8A, the lane vector generation unit 131 generates lane vectors 10 to 15 of the fifteenth divided image im15 from the tenth divided image im10 in the lane vector diagram.

도 5(c)에서, 분할 영상은 17개의 분할 구역으로 구획되어 있음을 알 수 있다. 차선 벡터 생성부(131)는 차선 벡터도의 제1사분면과 제2사분면을 균등한 각도로 17개의 방향으로 분할하고 각 분할 영상에 대한 차선 벡터를 차선 벡터도에 도시한다. 따라서 도 8(a)의 차선 벡터도에서 음의 x축에는 제1 분할 영상(im1)의 벡터가 도시될 수 있으며, 양의 y축에는 제9 분할 영상(im9)에 따른 차선 벡터가 도시될 수 있으며, 양의 x축에는 제17 분할 영상(im17)에 대한 차선 벡터가 도시될 수 있다. 차선 벡터도에서 차선 벡터의 크기는 차선 픽셀 수와 비례하도록 생성된다. In FIG. 5C, it can be seen that the divided image is divided into 17 divided regions. The lane vector generation unit 131 divides the first quadrant and the second quadrant of the lane vector diagram in 17 directions at equal angles, and shows a lane vector for each divided image in the lane vector diagram. Accordingly, in the lane vector diagram of FIG. 8A, a vector of the first split image im1 may be shown on the negative x axis, and a lane vector according to the ninth split image im9 may be shown on the positive y axis. The lane vector of the seventeenth divided image im17 may be illustrated on the positive x-axis. In the lane vector diagram, the size of the lane vector is generated in proportion to the number of lane pixels.

한편, 전술한 것처럼 분할 영상의 개수는 영상 분할부(121)에 의해 조정될 수 있으며, 차선 벡터 생성부(131)는 차선 벡터도의 제1사분면과 제2사분면을 분할 영상의 개수에 따라 균등하게 나누고 그 나뉜 방향에 대하여 차선 벡터를 생성할 수 있다.Meanwhile, as described above, the number of split images may be adjusted by the image splitter 121, and the lane vector generation unit 131 may equalize the first and second quadrants of the lane vector diagram according to the number of split images. You can divide and generate lane vectors for the divided directions.

차선 벡터 각도는 차선 벡터와 양의 x축 간의 각도값을 의미하며, 이동 로봇의 중심에서 우측에 위치하는 양의 x축을 기준으로 양의 x축에서 차선 벡터까지 반시계 방향으로 측정된 각도값이다. 따라서 차선 벡터가 양의 x축 방향을 가지는 경우 차선 벡터 각도는 0°가 되고, 차선 벡터가 양의 y축 방향을 가지는 경우 차선 벡터 각도는 90°가 되며, 차선 벡터가 음의 x축 방향을 가지는 경우 차선 벡터 각도는 180°가 된다. 차선 벡터의 크기는 전술한 것처럼 차선 픽셀 수와 비례한다. Lane vector angle refers to the angle value between the lane vector and the positive x-axis and is measured counterclockwise from the positive x-axis to the lane vector with respect to the positive x-axis positioned to the right from the center of the mobile robot. . Therefore, if the lane vector has a positive x-axis direction, the lane vector angle is 0 °, if the lane vector has a positive y-axis direction, the lane vector angle is 90 °, and the lane vector has a negative x-axis direction. If so, the lane vector angle is 180 °. The size of the lane vector is proportional to the number of lane pixels as described above.

도 5(c)에서 기준값보다 큰 차선 픽셀 수를 가지는 분할 영상이 제1 분할 영상(im10) 내지 제15 분할 영상(im15)으로 가정하면, 결과적으로 차선 벡터 생성부(131)에 의해 도 8(c)처럼 차선 벡터들이 차선 벡터도에 생성될 수 있다. In FIG. 5C, when the divided image having the number of lane pixels larger than the reference value is the first divided image im10 to the fifteenth divided image im15, the lane vector generation unit 131 determines that the divided image is the same as FIG. Lane vectors can be generated in the lane vector diagram as in c).

도 8(b)는 도 8(a)의 차선 벡터들을 합성하여 합성 차선 벡터를 생성한 것을 예시한 것으로서, 차선 벡터 합성부(132)는 차선 벡터 생성부(131)에서 생성된 차선 벡터들을 모두 합하여 최종적으로 합성 차선 벡터를 생성한다. 8B illustrates an example of generating a synthesized lane vector by synthesizing the lane vectors of FIG. 8A. The lane vector synthesizing unit 132 may generate all of the lane vectors generated by the lane vector generation unit 131. And finally create a composite lane vector.

도 8(b)를 참조하면, 합성 차선 벡터는 이동 로봇에 대하여 α1 만큼의 합성 차선 각도를 가지며, 차선 벡터의 합력에 따른 소정의 크기를 가진다. 합성 차선 벡터가 양의 x축과 이루는 각도인 합성 차선 각도 및 합성 차선 벡터의 크기는 이동 로봇의 주행 방향에 대하여 차선이 어느 곳에 어느 정도(합성 차선 벡터의 크기)로 존재하는지를 암시한다. Referring to FIG. 8B, the composite lane vector has a composite lane angle of α 1 with respect to the mobile robot, and has a predetermined size according to the force of the lane vector. The combined lane angle and the size of the combined lane vector, which are angles formed by the combined lane vector with the positive x-axis, indicate where and how much (the size of the combined lane vector) the lane exists with respect to the traveling direction of the mobile robot.

도 8(c)는 도 8(b)의 합성 차선 벡터에 따라 생성된 차선 척력 벡터를 예시한 도면이다. FIG. 8C illustrates a lane repulsion vector generated according to the composite lane vector of FIG. 8B.

차선 척력 정보 생성부(133)는 차선 벡터 생성부(132)에서 생성된 합성 차선 벡터를 원점에 대하여 대칭 이동시켜 차선 척력 정보를 생성한다.The lane repulsion information generation unit 133 generates lane repulsion information by symmetrically moving the synthesized lane vector generated by the lane vector generation unit 132 with respect to the origin.

차선 척력 정보에서 차선 척력 벡터의 크기는 합성 차선 벡터의 크기와 동일하다. 차선 척력 정보에서 차선 척력 각도(α3 )는 차선 척력 벡터와 양의 x축 간의 각도값을 의미하며, 이동 로봇의 중심에서 우측에 위치하는 양의 x축을 기준으로 양의 x축에서 차선 척력 벡터까지 반시계 방향으로 측정된 각도값이다.In the lane repulsion information, the magnitude of the lane repulsion vector is the same as that of the synthesized lane vector. The lane repulsion angle (α 3 ) in the lane repulsion information is an angle value between the lane repulsion force vector and the positive x-axis, and the lane repulsion vector on the positive x-axis with respect to the positive x-axis positioned to the right from the center of the mobile robot. Is the angle value measured counterclockwise.

이동 로봇(300)의 진행 방향은 차선 척력 정보의 차선 척력 각도와 관련되어 있으며, 차선 척력 각도가 180°~ 270°인 경우(즉 차선 척력 벡터가 제3사분면에 존재하는 경우) 이동 로봇은 제2사분면을 향해 진행하도록 제어되고, 차선 척력 각도가 270°~ 360°(0°)인 경우(즉 차선 척력 벡터가 제4사분면에 존재하는 경우) 이동 로봇은 제1사분면을 향해 진행하도록 제어된다. 상세하게는, 차선 척력 각도가 180°~ 270°인 경우(즉 차선 척력 벡터가 제3사분면에 존재하는 경우) 이동 로봇은 차선 척력 각도에 -90°를 더한 방향을 향해 진행하도록 제어되고, 차선 척력 각도가 270°~ 360°인 경우(즉 차선 척력 벡터가 제4사분면에 존재하는 경우) 이동 로봇은 차선 척력 각도에 +90°를 더한 방향을 향해 진행하도록 제어된다.The moving direction of the mobile robot 300 is related to the lane repulsive angle of the lane repulsive information, and when the lane repulsive angle is 180 ° to 270 ° (that is, when the lane repulsive vector is present in the third quadrant) If the lane repulsion angle is 270 ° to 360 ° (0 °) (i.e. if the lane repulsion vector is present in the fourth quadrant), the mobile robot is controlled to proceed toward the first quadrant. . Specifically, when the lane repulsive angle is 180 ° to 270 ° (ie, when the lane repulsive force vector is present in the third quadrant), the mobile robot is controlled to proceed toward the direction of the lane repulsive angle plus -90 °, When the repulsive angle is between 270 ° and 360 ° (ie, when the lane repulsive force vector is in the fourth quadrant), the mobile robot is controlled to travel in the direction of the lane repulsive angle plus + 90 °.

도 7은 장애물 척력 생성부를 상세하게 나타낸 블록도이다.7 is a block diagram illustrating in detail the obstacle repulsive force generating unit.

도 7을 참조하면, 장애물 척력 생성부(160)는 장애물 감지 센서(112)로부터 제공받은 장애물 정보를 바탕으로 장애물 척력 정보를 생성하는 구성요소로서, 장애물 벡터 생성부(161), 장애물 벡터 합성부(162), 및 장애물 척력 정보 생성부(163)를 포함한다. 장애물 척력 정보란 이동 로봇을 장애물의 반대 방향으로 미는 척력에 대한 정보이다.Referring to FIG. 7, the obstacle repulsive force generating unit 160 is an element that generates obstacle repulsive force information based on the obstacle information provided from the obstacle detecting sensor 112. The obstacle vector generating unit 161 and the obstacle vector synthesizing unit may be used. 162, and the obstacle repulsion information generating unit 163. Obstacle repulsion information is information on the repulsive force pushing the mobile robot in the opposite direction of the obstacle.

장애물 벡터 생성부(161)는 장애물 감지 센서(112)로부터 제공받은 장애물 정보를 바탕으로 장애물 벡터를 생성하고, 장애물 벡터 합성부(162)는 장애물 벡터들을 합성하여 합성 장애물 벡터를 생성하며, 장애물 척력 정보 생성부(163)는 합성 장애물 벡터를 기초로 장애물 척력 정보를 생성한다.The obstacle vector generating unit 161 generates an obstacle vector based on the obstacle information provided from the obstacle detecting sensor 112, and the obstacle vector synthesizing unit 162 synthesizes the obstacle vectors to generate a composite obstacle vector, and obstacle repulsion force. The information generator 163 generates obstacle repulsion information based on the synthesized obstacle vector.

도 9는 감지 신호를 기초로 장애물 척력 정보를 생성하는 과정을 각각 설명한 도면으로서, 도 9(a)는 장애물 벡터의 생성, 및 도 9(b)는 장애물 벡터의 합성과 장애물 척력 벡터의 생성을 각각 예시한 도면이다.FIG. 9 is a diagram illustrating a process of generating obstacle repulsion information based on a detection signal. FIG. 9 (a) illustrates generation of an obstacle vector, and FIG. 9 (b) illustrates generation of an obstacle vector and generation of an obstacle repulsion vector. Each figure is illustrated.

장애물 벡터 생성부(161)는 장애물 감지 센서(112)로부터 제공받은 장애물 정보를 바탕으로 장애물 벡터도에서 장애물에 대한 장애물 벡터를 생성한다.The obstacle vector generator 161 generates an obstacle vector for the obstacle in the obstacle vector diagram based on the obstacle information provided from the obstacle sensor 112.

도 9(a)를 참조하면, 장애물 벡터 생성부(161)는 제1 장애물(ob1)에 대한 제1 장애물 벡터(S1)와 제2 장애물(ob2)에 대한 제2 장애물 벡터(S2)를 생성한다. 각각의 장애물 벡터는 양의 x축과 이루는 각도인 장애물 벡터 각도(β1, β2) 및 소정의 벡터 크기를 가진다. 장애물 벡터의 크기는 장애물까지의 거리에 반비례한다. 그리고, 장애물 벡터 각도는 장애물 벡터와 양의 x축 간의 각도값을 의미하며, 이동 로봇의 중심에서 우측에 위치하는 양의 x축을 기준으로 양의 x축에서 장애물 벡터까지 반시계 방향으로 측정된 각도값이다.Referring to FIG. 9A, the obstacle vector generator 161 generates a first obstacle vector S1 for the first obstacle ob1 and a second obstacle vector S2 for the second obstacle ob2. do. Each obstacle vector has an obstacle vector angle β 1 , β 2 , which is an angle with the positive x-axis, and a predetermined vector magnitude. The magnitude of the obstacle vector is inversely proportional to the distance to the obstacle. In addition, the obstacle vector angle means an angle value between the obstacle vector and the positive x axis, and the angle measured in the counterclockwise direction from the positive x axis to the obstacle vector based on the positive x axis positioned to the right from the center of the mobile robot. Value.

도 9(b)는 도 9(a)의 장애물 벡터들을 합성하여 합성 장애물 벡터를 생성한 것을 예시한 것으로서, 장애물 벡터 합성부(162)는 장애물 벡터 생성부(161)에서 생성된 차선 벡터들을 모두 합하여 최종적으로 합성 장애물 벡터를 생성한다. FIG. 9B illustrates an example of generating a composite obstacle vector by synthesizing the obstacle vectors of FIG. 9A, and the obstacle vector synthesizer 162 generates all of the lane vectors generated by the obstacle vector generator 161. Add up and finally create a composite obstacle vector.

도 9(b)를 참조하면, 합성 장애물 벡터는 β3 만큼의 합성 장애물 각도를 가지며, 각 장애물 벡터의 합력에 따른 소정의 크기를 가진다. 합성 장애물 각도(β3) 및 합성 장애물 벡터의 크기는 이동 로봇의 주행 방향에 대하여 장애물이 어느 방향에 어느 정도 가까이(합성 차선 벡터의 크기) 존재하는지를 암시한다. 합성 장애물 각도(β3)는 합성 장애물 벡터와 양의 x축 간의 각도값을 의미하며, 이동 로봇의 중심에서 우측에 위치하는 양의 x축을 기준으로 양의 x축에서 합성 장애물 벡터까지 반시계 방향으로 측정된 각도값이다.Referring to FIG. 9 (b), the composite obstacle vector has a composite obstacle angle of β 3 and has a predetermined size according to the force of each obstacle vector. The composite obstacle angle β 3 and the magnitude of the composite obstacle vector imply how close the obstacle is to the moving direction of the mobile robot (the size of the composite lane vector). The compound obstacle angle β 3 means an angle value between the compound obstacle vector and the positive x axis, and is counterclockwise from the positive x axis to the compound obstacle vector with respect to the positive x axis located to the right from the center of the mobile robot. The angle value measured by.

장애물 척력 정보 생성부(163)는 장애물 벡터 생성부(162)에서 생성된 합성 장애물 벡터를 원점에 대하여 대칭 이동시켜 장애물 척력 벡터를 획득하고, 장애물 척력 벡터에 대한 정보인 장애물 척력 정보를 생성한다.The obstacle repulsion information generating unit 163 obtains the obstacle repulsive force vector by symmetrically moving the synthesized obstacle vector generated by the obstacle vector generating unit 162 with respect to the origin, and generates obstacle repulsive force information which is information about the obstacle repulsive force vector.

장애물 척력 정보는 장애물 척력 벡터에 대한 정보로서, 장애물 척력 벡터의 크기는 합성 장애물 벡터의 크기와 동일하다. 그리고 장애물 척력 각도(β4)는 장애물 척력 벡터와 양의 x축 간의 각도값을 의미하며, 이동 로봇의 중심에서 우측에 위치하는 양의 x축을 기준으로 양의 x축에서 장애물 척력 벡터까지 반시계 방향으로 측정된 각도값이다.The obstacle repulsive force information is information on an obstacle repulsive force vector, and the size of the obstacle repulsive force vector is the same as that of the synthesized obstacle vector. And the obstacle repulsive angle (β 4 ) means the angle value between the obstacle repulsive force vector and the positive x-axis, and counterclockwise from the positive x-axis to the obstacle repulsion vector with respect to the positive x-axis located on the right side from the center of the mobile robot The angle value measured in the direction.

이동 로봇(300)의 진행 방향은 장애물 척력 정보의 장애물 척력 각도(β4)와 관련되어 있으며, 장애물 척력 각도가 180°~ 270°인 경우(즉 장애물 척력 벡터가 제3사분면에 존재하는 경우) 이동 로봇은 제2사분면을 향해 진행하도록 제어되고, 장애물 척력 각도가 270°~ 360°인 경우(즉 장애물 척력 벡터가 제4사분면에 존재하는 경우) 이동 로봇은 제1사분면을 향해 진행하도록 제어된다. 상세하게는, 장애물 척력 각도가 180°~ 270°인 경우(즉 장애물 척력 벡터가 제3사분면에 존재하는 경우) 이동 로봇은 장애물 척력 각도에 -90°를 더한 방향을 향해 진행하도록 제어되고, 장애물 척력 각도가 270°~ 360°인 경우(즉 장애물 척력 벡터가 제4사분면에 존재하는 경우) 이동 로봇은 장애물 척력 각도에 +90°를 더한 방향을 향해 진행하도록 제어된다. 한편 장애물 벡터는 장애물까지의 거리에 반비례하도록 생성되므로, 장애물이 가까울수록 장애물 척력 벡터도 커지며, 그에 따라 이동 로봇이 장애물을 피하는 척력이 커진다.The moving direction of the mobile robot 300 is related to the obstacle repulsion angle (β 4 ) of the obstacle repulsion information, and when the obstacle repulsion angle is 180 ° to 270 ° (that is, when the obstacle repulsion vector is present in the third quadrant) The mobile robot is controlled to travel toward the second quadrant, and when the obstacle repulsive angle is 270 ° to 360 ° (ie, when the obstacle repulsion vector is present in the fourth quadrant), the mobile robot is controlled to travel toward the first quadrant. . Specifically, when the obstacle repulsive angle is 180 ° to 270 ° (ie, when the obstacle repulsive force vector is present in the third quadrant), the mobile robot is controlled to proceed toward the direction of the obstacle repulsive angle plus -90 °, and the obstacle When the repulsive angle is between 270 ° and 360 ° (ie, when the obstacle repulsive force vector is in the fourth quadrant), the mobile robot is controlled to travel in the direction of the obstacle repulsive angle plus + 90 °. On the other hand, since the obstacle vector is generated in inverse proportion to the distance to the obstacle, the closer the obstacle is, the greater the obstacle repulsion vector, and accordingly, the repulsive force that the mobile robot avoids the obstacle increases.

다시 도 2로 되돌아가 설명하도록 한다.2 will be described again.

차선 척력 생성부(130)에서 생성된 차선 척력 정보 및 장애물 척력 생성부(160)에서 생성된 장애물 척력 정보는 이동 제어부(140)로 제공된다.The lane repulsive force information generated by the lane repulsive force generation unit 130 and the obstacle repulsive force information generated by the obstacle repulsive force generation unit 160 are provided to the movement controller 140.

이동 제어부(140)는 차선 척력 정보와 장애물 척력 정보를 기초로 합성 척력 정보를 생성하고, 생성된 합성 척력 정보를 기초로 이동 로봇(300)의 구동부(200)를 제어하는 이동 제어 정보를 생성한다. 이를 위해 이동 제어부(140)는 차선 척력 정보와 장애물 척력 정보를 합성하여 합성 척력 정보를 생성하는 척력 합성부(141)를 포함한다.The movement controller 140 generates synthetic repulsive force information based on the lane repulsive force information and obstacle repulsive force information, and generates movement control information for controlling the driving unit 200 of the mobile robot 300 based on the generated synthetic repulsive force information. . To this end, the movement control unit 140 includes a repulsive force synthesizing unit 141 for synthesizing lane repulsive force information and obstacle repulsive force information to generate synthesized repulsive force information.

한편 전술한 것처럼 장애물 척력 정보를 생성하는 과정에서 장애물 척력 벡터의 크기는 이동 로봇에서 장애물까지의 거리에 반비례한다. 이와 동일하게 차선 척력 정보에서 차선 척력 벡터도 이동 로봇에서 차선까지의 거리에 반비례하도록 결정된다. 전방 영상에 있어서 이동 로봇에서 각 분할 영상의 중심까지의 실제 거리는 알 수 있다. 따라서, 장애물 척력 벡터와 차선 척력 벡터를 합성할 때 실제 거리를 기준으로 벡터의 크기를 결정함으로써, 두 벡터를 합성할 수 있다.Meanwhile, as described above, in the process of generating the obstacle repulsive force information, the size of the obstacle repulsive force vector is inversely proportional to the distance from the mobile robot to the obstacle. Similarly, the lane repulsive force vector in the lane repulsive force information is determined to be inversely proportional to the distance from the mobile robot to the lane. In the forward image, the actual distance from the mobile robot to the center of each segmented image can be known. Therefore, when combining the obstacle repulsive force vector and the lane repulsive force vector, the two vectors may be synthesized by determining the size of the vector based on the actual distance.

이동 로봇(300)의 구동부(200)는 이동 로봇(300)에 장착된 바퀴(310)를 회전하게 하는 구성 요소로서, 이동 제어 정보에 의하여 구동부(200)가 제어된다. 이동 제어 정보는 이동 로봇의 직진 속도 명령과 회전 속도 명령을 포함하며, 추가로 후진 속도 명령 및 정지 명령을 포함할 수 있다. 이동 제어 정보는 이동 로봇(300)의 구동부(200)를 제어함으로써 바퀴(310)를 직진, 후진, 정지, 회전하게 한다.The driving unit 200 of the mobile robot 300 is a component for rotating the wheel 310 mounted on the mobile robot 300, and the driving unit 200 is controlled by the movement control information. The movement control information includes a forward speed command and a rotation speed command of the mobile robot, and may further include a reverse speed command and a stop command. The movement control information controls the driving unit 200 of the mobile robot 300 to make the wheel 310 go straight, backward, stop, and rotate.

이동 제어부(140)는 합성 척력 정보를 기초로 생성된 이동 제어 정보를 이용하여 이동 로봇(300)의 구동부(200)를 제어함으로써, 이동 로봇(300)이 한 쌍의 차선 내에서 자율적으로 주행하는 동시에 장애물과 만나면 장애물을 회피하며 자율적으로 주행하도록 이동 로봇(300)의 구동부(200)를 제어한다.The movement controller 140 controls the driving unit 200 of the mobile robot 300 by using the movement control information generated based on the synthetic repulsive force information, so that the mobile robot 300 autonomously travels in a pair of lanes. At the same time, if the obstacle meets the obstacle and controls the driving unit 200 of the mobile robot 300 to autonomously travel.

도 10은 합성 척력 정보를 생성하는 과정을 예시한 도면이다.10 is a diagram illustrating a process of generating synthetic repulsive force information.

척력 합성부(141)는 차선 척력 정보에 따른 차선 척력 벡터와 장애물 척력 정보에 따른 장애물 척력 벡터를 획득하고, 합성 벡터도에서 차선 척력 벡터와 장애물 척력 벡터를 합하여 최종적으로 합성 척력 벡터를 획득하고 합성 척력 벡터에 대한 정보인 합성 척력 정보를 생성한다. The repulsive force synthesizing unit 141 obtains the lane repulsive force vector according to the lane repulsive force information and the obstacle repulsive force vector according to the obstacle repulsive force information, and finally obtains the synthesized repulsive force vector by combining the lane repulsive force vector and the obstacle repulsive force vector in the composite vector diagram. Synthetic repulsive force information, which is information about repulsive force vectors, is generated.

합성 척력 정보는 이동 로봇의 진행 방향, 회전 각도, 및 회전 속도와 관련되어 있다. 합성 척력 각도는 합성 척력 벡터와 양의 x축 간의 각도값을 의미하며, 이동 로봇의 중심에서 우측에 위치하는 양의 x축을 기준으로 양의 x축에서 합성 척력 벡터까지 반시계 방향으로 측정된 각도값이다.The synthetic repulsive force information is related to the traveling direction, rotation angle, and rotation speed of the mobile robot. Synthetic repulsive angle refers to the angle value between the synthetic repulsive force vector and the positive x axis, and is measured counterclockwise from the positive x axis to the synthetic repulsive vector with respect to the positive x axis located to the right from the center of the mobile robot. Value.

합성 척력 각도가 180°~ 270°인 경우(즉 합성 척력 벡터가 제3사분면에 존재하는 경우) 이동 로봇은 합성 척력 각도에 -90°를 더한 방향을 향해 진행하도록 제어되고, 합성 척력 각도가 270°~ 360°인 경우(즉 합성 척력 벡터가 제4사분면에 존재하는 경우) 이동 로봇은 합성 척력 각도에 +90°를 더한 방향을 향해 진행하도록 제어된다.If the synthetic repulsive angle is 180 ° to 270 ° (ie, the composite repulsive force vector is in the third quadrant), the mobile robot is controlled to proceed toward the direction of the composite repulsive angle plus -90 °, and the composite repulsive angle is 270 If the angle is 360 ° (i.e., when the synthetic repulsive force vector is in the fourth quadrant), the mobile robot is controlled to travel in the direction of + 90 ° plus the composite repulsive angle.

도 10에서는 합성 척력 벡터의 합성 척력 각도가 270°~ 360°의 범위에 존재하므로(즉, 합성 척력 벡터가 제4사분면에 존재), 이동 로봇은 합성 척력 벡터의 합성 척력 각도에 +90°를 더한 방향으로 진행하도록 제어된다. 이때 이동 로봇이 진행하는 방향은 진행 각도로서 표현될 수 있다. 진행 각도는 진행 방향의 각도를 의미하며, 양의 x축을 0°, 양의 y축을 90°, 음의 x 축을 180°로 설정하고, 양의 x축을 기준으로 양의 x축과 진행 방향 간의 각도값이다.In FIG. 10, since the synthetic repulsive angle of the synthetic repulsive force vector is in the range of 270 ° to 360 ° (that is, the synthetic repulsive force vector exists in the fourth quadrant), the mobile robot adds + 90 ° to the composite repulsive angle of the synthetic repulsive force vector. It is controlled to proceed in the plus direction. In this case, the moving direction of the mobile robot may be expressed as a traveling angle. The advancing angle means the angle in the advancing direction, and sets the positive x axis as 0 °, the positive y axis as 90 °, and the negative x axis as 180 °, and the angle between the positive x axis and the advancing direction based on the positive x axis Value.

도 11은 합성 척력 벡터에 따라 제어되는 이동 로봇의 직진 속도 및 회전 속도를 예시한 도면이다.FIG. 11 is a diagram illustrating a linear speed and a rotation speed of a mobile robot controlled according to the synthetic repulsive force vector. FIG.

도 11을 참조하면, 이동로봇의 진행 각도에 따라, 이동 로봇의 직진속도는 0~ 0.33 m/sec 범위에서 제어되고, 회전 속도는 -1 ~ 1 rad/sec 범위에서 제어되는 실시예를 예시하고 있다. 물론 이동 로봇의 직진 속도 및 회전 속도는 도 11에 한정되지 않고, 다양한 방식으로 제어될 수 있다.Referring to FIG. 11, according to the moving angle of the mobile robot, the moving speed of the moving robot is controlled in the range of 0 to 0.33 m / sec, and the rotating speed is controlled in the range of -1 to 1 rad / sec. have. Of course, the moving speed and the rotating speed of the mobile robot are not limited to FIG. 11 and may be controlled in various ways.

도 11의 속도 제어 실시예에서, 이동 제어부(140)는 도 10에서 획득된 이동 로봇(300)의 진행 각도에 의해 이동 로봇(300)의 직진 속도와 회전 속도 명령을 포함하는 이동 제어 정보를 생성함으로써 이동 로봇(300)의 자율주행을 가능하게 한다. In the speed control embodiment of FIG. 11, the movement control unit 140 generates movement control information including a straight speed and a rotational speed command of the mobile robot 300 by the traveling angle of the mobile robot 300 obtained in FIG. 10. This enables autonomous driving of the mobile robot 300.

이하에서는 본 발명에 따른 이동 로봇의 자율 주행 방법을 설명하도록 한다.Hereinafter, the autonomous driving method of the mobile robot according to the present invention will be described.

본 발명에 따른 이동 로봇의 자율 주행 방법은 전술한 이동 로봇의 자율 주행 장치에 따른 방법으로서, 이동 로봇의 자율 주행 장치와 본질적으로 동일한 기능을 수행하므로 중복되는 설명은 생략하도록 한다.The autonomous driving method of the mobile robot according to the present invention is a method according to the above autonomous driving device of the mobile robot, and performs the same function as the autonomous driving device of the mobile robot, so that duplicate description thereof will be omitted.

도 12는 본 발명에 따른 이동 로봇의 자율 주행 방법을 설명한 흐름도이다.12 is a flowchart illustrating an autonomous driving method of a mobile robot according to the present invention.

우선 센서부(110)의 카메라부(111)는 이동 로봇(300)이 주행하는 주행 방향의 전방을 촬영하여 전방 영상에 대한 영상 정보를 생성한다(S10).First, the camera unit 111 of the sensor unit 110 generates the image information on the front image by photographing the front of the driving direction in which the mobile robot 300 travels (S10).

차선 검출부(120)는 영상 정보를 기초로 차선 분포 정보를 생성하고(S20), 차선 척력 생성부(S30)는 차선 분포 정보를 기초로 차선 척력 정보를 생성한다(S30).The lane detector 120 generates lane distribution information based on the image information (S20), and the lane repulsion force generation unit S30 generates lane repulsion information based on the lane distribution information (S30).

한편 카메라부(111)가 이동 로봇(300)의 전방을 촬영하는 동시에, 장애물 감지 센서(112)는 이동 로봇(300)의 전방에 존재하는 장애물을 검출하여 장애물 정보를 생성하고(S30), 장애물 척력 생성부(160)는 장애물 정보에 기초하여 장애물 척력 정보를 생성한다.Meanwhile, while the camera unit 111 photographs the front of the mobile robot 300, the obstacle detecting sensor 112 detects an obstacle existing in front of the mobile robot 300 and generates obstacle information (S30). The repulsive force generation unit 160 generates obstacle repulsive information based on the obstacle information.

차선 척력 정보와 장애물 척력 정보는 이동 제어부(140)로 제공되며, 이동 제어부(140)는 차선 척력 정보와 장애물 척력 정보를 기초로 합성 척력을 생성하고, 생성된 합성 척력을 기초로 이동 제어 정보를 생성한다(S40). 생성된 이동 제어 정보는 이동 로봇(300)의 구동부(200)로 제공되어, 이동 로봇(300)의 구동부(200)가 한 쌍의 차선 내에서 장애물들을 회피하면 자율적으로 주행하도록 한다.The lane repulsive force information and the obstacle repulsive force information are provided to the movement controller 140, and the movement controller 140 generates the synthetic repulsive force based on the lane repulsive force information and the obstacle repulsive force information, and generates the movement control information based on the generated synthetic repulsive force. It generates (S40). The generated movement control information is provided to the driving unit 200 of the mobile robot 300 so that the driving unit 200 of the mobile robot 300 may autonomously drive when obstacles are avoided in a pair of lanes.

도 13은 차선 분포 정보를 생성하는 과정을 상세히 설명한 흐름도이다,.13 is a flowchart illustrating a process of generating lane distribution information in detail.

차선 검출부(120)의 영상 분할부(121)는 카메라부(111)가 촬영한 전방 영상(123)에서 동일한 폭과 높이를 가지는 복수의 분할 영상을 선택한다(S21). The image divider 121 of the lane detector 120 selects a plurality of divided images having the same width and height from the front image 123 captured by the camera 111 (S21).

차선 검출부(120)의 픽셀 추출부(122)는 선택된 분할 영상 각각에 대하여 2진화 영상 처리를 수행하고(S22), 각각의 분할 영상 내에서 차선과 동일한 컬러를 가지는 픽셀인 차선 픽셀을 추출하여 그 차선 픽셀의 개수인 차선 픽셀 수를 검출한다(S23). 차선 검출부(120)는 각 분할 영상에 대한 차선 픽셀 수에 대한 정보를 포함하는 차선 분포 정보를 생성하고, 생성된 차선 분포 정보는 차선 척력 생성부(130)로 제공된다.The pixel extraction unit 122 of the lane detection unit 120 performs binarization image processing on each of the selected divided images (S22), and extracts a lane pixel that is a pixel having the same color as the lane in each divided image. The number of lane pixels, which is the number of lane pixels, is detected (S23). The lane detection unit 120 generates lane distribution information including information on the number of lane pixels for each split image, and the generated lane distribution information is provided to the lane repulsive force generation unit 130.

도 14는 차선 척력 정보를 생성하는 과정을 상세히 설명한 흐름도이다.14 is a flowchart illustrating a process of generating lane repulsion information in detail.

전술한 것처럼 전방 영상에는 차선과 동일한 컬러를 가지는 노이즈 픽셀이 포함될 수 있으므로, 상기 노이즈 픽셀을 제거하는 과정이 S30 단계에 더 포함될 수 있다.As described above, since the front image may include noise pixels having the same color as the lane, the process of removing the noise pixels may be further included in step S30.

상기의 노이즈 픽셀을 제거하기 위하여, 차선 검출부(120)는 각 분할 영상에 대하여 차선 분포 정보를 분석할 수 있다(S31).In order to remove the noise pixel, the lane detector 120 may analyze lane distribution information on each divided image (S31).

차선 검출부(120)는 소정의 기준값과 차선 픽셀 수를 비교하여 차선 픽셀 수가 상기 기준값보다 큰 경우를 분할 구역에 차선이 존재하는 것으로 판단한다(S32).The lane detecting unit 120 compares a predetermined reference value with the number of lane pixels and determines that a lane exists in the divided area when the number of lane pixels is larger than the reference value (S32).

차선 벡터 생성부(131)는 차선 픽셀 수가 상기 기준값보다 큰 분할 영상에 대한 차선 분포 정보를 바탕으로 차선 벡터들을 생성한다(S33). The lane vector generation unit 131 generates lane vectors based on the lane distribution information for the divided image having a larger number of lane pixels than the reference value (S33).

차선 벡터 합성부(132)는 차선 벡터들을 합성하여 합성 차선 벡터를 생성하며(S34), 차선 척력 정보 생성부(133)는 합성 차선 벡터를 기초로 차선 척력 정보를 생성한다(S35). 생성된 차선 척력 정보는 이동 제어부(140)로 제공된다.The lane vector synthesizer 132 synthesizes the lane vectors to generate a synthesized lane vector (S34), and the lane repulsion information generation unit 133 generates lane repulsive information based on the synthesized lane vector (S35). The generated lane repulsion information is provided to the movement controller 140.

도 15는 장애물 척력 정보를 생성하는 과정을 상세히 설명한 흐름도이다.15 is a flowchart illustrating a process of generating obstacle repulsion information in detail.

우선 장애물 벡터 생성부(161)는 장애물 감지 센서(112)로부터 제공받은 장애물 정보를 바탕으로 장애물 벡터를 생성하고(S61), 장애물 벡터 합성부(162)는 장애물 벡터들을 합성하여 합성 장애물 벡터를 생성한다(S62). 최종적으로 장애물 척력 정보 생성부(163)는 합성 장애물 벡터를 기초로 장애물 척력 정보를 생성한다(S64).First, the obstacle vector generator 161 generates an obstacle vector based on the obstacle information provided from the obstacle sensor 112 (S61), and the obstacle vector synthesizer 162 synthesizes the obstacle vectors to generate a synthesized obstacle vector. (S62). Finally, the obstacle repulsion information generation unit 163 generates obstacle repulsion information based on the synthesized obstacle vector (S64).

도 16은 이동 제어 정보를 생성하는 과정을 상세히 설명한 흐름도이다.16 is a flowchart illustrating a process of generating movement control information in detail.

우선 이동 제어부(140)는 실시간으로 계속하여 차선 척력 정보와 장애물 척력 정보를 수신하고, 차선 척력 정보 및 장애물 척력 정보의 존재 여부를 감시한다(S41, S42, S46).First, the movement control unit 140 continuously receives the lane repulsion information and the obstacle repulsion information in real time, and monitors the existence of the lane repulsion information and the obstacle repulsion information (S41, S42, S46).

차선 척력 정보와 장애물 척력 정보가 모두 존재하는 경우(S41, S42), 이동 제어부(140)는 차선 척력 정보와 장애물 척력 정보를 합성하여 합성 척력 정보를 생성하고(S43), 생성된 합성 척력 정보에 따른 이동 제어 정보를 생성한다(S44).If both lane repulsive force information and obstacle repulsive force information exist (S41 and S42), the movement control unit 140 synthesizes lane repulsive force information and obstacle repulsive force information to generate synthetic repulsive force information (S43), and generates the synthesized repulsive force information. The movement control information is generated (S44).

차선 척력 정보만 존재하고 장애물 척력 정보는 존재하지 않는 경우(S41, S42), 이동 제어부(140)는 차선 척력 정보에 따른 이동 제어 정보를 생성한다(S45).When only lane repulsion information exists and obstacle repulsion information does not exist (S41 and S42), the movement controller 140 generates movement control information according to the lane repulsion information (S45).

차선 척력 정보가 존재하지 않고 장애물 척력 정보만 존재하는 경우(S41, S46), 이동 제어부(140)는 장애물 척력 정보에 따른 이동 제어 정보를 생성한다(S47).If there is no lane repulsion information and only obstacle repulsion information exists (S41 and S46), the movement controller 140 generates movement control information according to the obstacle repulsion information (S47).

차선 척력 정보와 장애물 척력 정보가 모두 존재하지 않는 경우(S41, S46), 이동 제어부(140)는 이동 로봇의 현재 진행 방향 및 현재 진행 속도를 계속 유지하도록 이동 제어 정보를 생성한다.When neither lane repulsion information nor obstacle repulsion information exists (S41 and S46), the movement controller 140 generates movement control information to maintain the current traveling direction and the current traveling speed of the mobile robot.

본 발명의 상기 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The method of the present invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and may be implemented in the form of a carrier wave (for example, transmission via the Internet) . The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상에서는 도면에 도시된 구체적인 실시예를 참고하여 본 발명을 설명하였으나 이는 예시적인 것에 불과하므로, 본 발명이 속하는 기술 분야에서 통상의 기술을 가진 자라면 이로부터 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명의 보호 범위는 후술하는 특허청구범위에 의하여 해석되어야 하고, 그와 동등 및 균등한 범위 내에 있는 모든 기술적 사상은 본 발명의 보호 범위에 포함되는 것으로 해석되어야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the invention. Accordingly, the scope of protection of the present invention should be construed in accordance with the following claims, and all technical ideas within the scope of equivalents and equivalents thereof should be construed as being covered by the scope of the present invention.

이동 로봇,300 구동부,200 센서부,100
카메라부,111 장애물 감지 센서,112 차선 검출부,120
차선 척력 생성부,130 이동 제어부,140 척력 합성부,141 장애물 검출부,150 장애물 척력 생성부,160 장애물,ob
차선,r
Mobile Robot, 300 Driver, 200 Sensor, 100
Camera unit, 111 obstacle detection sensor, 112 lane detection unit, 120
Lane repulsive force generation unit, 130 movement control unit, 140 repulsive force synthesis unit, 141 obstacle detection unit, 150 obstacle repulsive force generation unit, 160 obstacle, ob
Lane, r

Claims (5)

차선을 이탈하지 않고 주행하는 이동 로봇의 자율 주행 방법으로서,
이동 로봇의 전방을 촬영하여 전방 영상 정보를 생성하는 단계;
상기 전방 영상 정보를 처리하여 상기 이동 로봇의 전방에 존재하는 차선의 분포 정도를 나타내는 차선 분포 정보를 생성하는 단계;
상기 차선 분포 정보를 이용하여 상기 이동 로봇을 차선의 반대 방향으로 미는 차선 척력 정보를 생성하는 단계; 및
상기 차선 척력 정보에 기초하여 이동 로봇의 직진 속도 명령과 회전 속도 명령을 포함하는 이동 제어 정보를 생성하는 단계를 포함하는 이동 로봇의 자율 주행 방법.
As an autonomous driving method of a mobile robot that travels without leaving a lane,
Photographing the front of the mobile robot to generate forward image information;
Generating lane distribution information indicating a distribution degree of a lane existing in front of the mobile robot by processing the front image information;
Generating lane repulsion information for pushing the mobile robot in a direction opposite to the lane using the lane distribution information; And
And generating movement control information including a linear speed command and a rotational speed command of the mobile robot based on the lane repulsive force information.
제1항에 있어서, 상기 차선 분포 정보를 검출하는 단계는,
상기 전방 영상 정보에서 동일한 폭과 높이를 가지는 복수의 분할 영상을 좌에서 우로 평행하게 선택하는 단계;
상기 각각의 분할 영상으로부터 차선의 컬러와 동일한 컬러를 가지는 픽셀의 개수를 추출하여 차선 픽셀 수를 획득하는 단계; 및
상기 각각의 분할 공간에 대응하는 차선 픽셀 수로부터 상기 차선 분포 정보를 생성하는 단계를 포함하는, 이동 로봇의 자율 주행 방법.
The method of claim 1, wherein the detecting of the lane distribution information comprises:
Selecting a plurality of divided images having the same width and height from the front image information in parallel from left to right;
Extracting the number of pixels having the same color as the lane color from each of the divided images to obtain the number of lane pixels; And
And generating the lane distribution information from the number of lane pixels corresponding to each of the divided spaces.
제2항에 있어서, 상기 차선 척력 정보를 생성하는 단계는,
상기 차선 분포 정보를 기초로 상기 각각의 분할 영상에 대응하는 방향을 가지고 상기 차선 픽셀 수와 비례하는 크기를 가지는 차선 벡터들을 생성하는 단계;
상기 차선 벡터들의 합력을 생성하는 단계; 및
상기 차선 벡터들의 합력을 원점에 대해 대칭 이동한 벡터인 차선 척력 벡터에 기초하여 차선 척력 정보를 생성하는 단계를 포함하는, 이동 로봇의 자율 주행 방법.
The method of claim 2, wherein the generating of the lane repulsive force information comprises:
Generating lane vectors having a direction corresponding to each of the divided images and having a size proportional to the number of lane pixels based on the lane distribution information;
Generating a force of the lane vectors; And
And generating lane repulsive force information based on a lane repulsive force vector which is a vector in which the force of the lane vectors is symmetrically moved with respect to an origin.
제1항에 있어서, 상기 방법은
이동 로봇의 전방에 존재하는 장애물을 감지하고, 상기 이동 로봇에 대한 상기 장애물의 방향 및 상기 이동 로봇으로부터 상기 장애물까지의 거리에 대한 정보를 포함하는 장애물 정보를 생성하는 단계; 및
상기 장애물 정보를 기초로, 상기 이동 로봇을 상기 장애물의 반대 방향으로 미는 장애물 척력 정보를 생성하는 단계를 더 포함하며,
상기 이동 제어 정보는 상기 장애물 척력 정보와 상기 차선 척력 정보를 합성한 합성 척력 정보에 따라 생성되는 것을 특징으로 하는, 이동 로봇의 자율 주행 방법.
The method of claim 1 wherein the method is
Detecting an obstacle present in front of the mobile robot and generating obstacle information including information about a direction of the obstacle with respect to the mobile robot and a distance from the mobile robot to the obstacle; And
Generating obstacle repulsion information that pushes the mobile robot in a direction opposite to the obstacle, based on the obstacle information;
The movement control information is generated according to synthesized repulsive force information obtained by combining the obstacle repulsive force information and the lane repulsive force information.
제4항에 있어서, 상기 장애물 척력 정보를 생성하는 단계는,
상기 장애물 정보를 기초로 상기 이동 로봇에 대한 상기 장애물의 방향과 동일한 방향을 가지고 상기 이동 로봇으로부터 장애물까지의 거리에 반비례하는 크기를 가지는 장애물 벡터를 생성하는 단계;
상기 장애물 벡터가 복수인 경우 장애물 벡터들의 합력을 생성하는 단계; 및
상기 장애물 벡터들의 합력을 원점에 대해 대칭 이동한 벡터인 장애물 척력 벡터에 기초하여 장애물 척력 정보를 생성하는 단계를 포함하는, 이동 로봇의 자율 주행 방법.
The method of claim 4, wherein generating the obstacle repulsion information comprises:
Generating an obstacle vector having the same direction as that of the obstacle with respect to the mobile robot based on the obstacle information and having an inverse proportion to the distance from the mobile robot to the obstacle;
Generating a sum of obstacle vectors when the obstacle vectors are plural; And
And generating obstacle repulsion information based on an obstacle repulsion vector, which is a vector obtained by flipping the sum of the obstacle vectors with respect to an origin.
KR1020100045479A 2010-05-14 2010-05-14 Method and apparatus for controlling self-driving of mobile-robot KR101204086B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100045479A KR101204086B1 (en) 2010-05-14 2010-05-14 Method and apparatus for controlling self-driving of mobile-robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100045479A KR101204086B1 (en) 2010-05-14 2010-05-14 Method and apparatus for controlling self-driving of mobile-robot

Publications (2)

Publication Number Publication Date
KR20110125865A true KR20110125865A (en) 2011-11-22
KR101204086B1 KR101204086B1 (en) 2012-11-22

Family

ID=45395179

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100045479A KR101204086B1 (en) 2010-05-14 2010-05-14 Method and apparatus for controlling self-driving of mobile-robot

Country Status (1)

Country Link
KR (1) KR101204086B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9393690B2 (en) 2013-10-01 2016-07-19 Electronics And Telecommunications Research Institute Apparatus for inputting teaching data and apparatus and method for generating teaching command for robot

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160000162A (en) 2014-06-24 2016-01-04 주식회사 네오텍 Self moving method of service robot
US20240000018A1 (en) * 2022-06-29 2024-01-04 Techtronic Cordless Gp Controlling movement of a robotic garden tool with respect to one or more detected objects

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9393690B2 (en) 2013-10-01 2016-07-19 Electronics And Telecommunications Research Institute Apparatus for inputting teaching data and apparatus and method for generating teaching command for robot

Also Published As

Publication number Publication date
KR101204086B1 (en) 2012-11-22

Similar Documents

Publication Publication Date Title
EP3466764B1 (en) Method for monitoring blind spot of monitoring vehicle and blind spot monitor using the same
US5473364A (en) Video technique for indicating moving objects from a movable platform
KR101539270B1 (en) sensor fusion based hybrid reactive motion planning method for collision avoidance and autonomous navigation, recording medium and mobile robot for performing the method
US20150339825A1 (en) Stereo Camera Apparatus
US10129521B2 (en) Depth sensing method and system for autonomous vehicles
US9330472B2 (en) System and method for distorted camera image correction
US9950667B2 (en) Vehicle system for detecting object and operation method thereof
JP2010198552A (en) Driving state monitoring device
JP6769477B2 (en) Image processing device, imaging device, mobile device control system, image processing method, and program
EP3803790B1 (en) Motion segmentation in video from non-stationary cameras
CN113096151B (en) Method and apparatus for detecting motion information of object, device and medium
WO1998020398A1 (en) Obstacle collision preventive apparatus of mobile object
WO2017159056A1 (en) Image processing device, image pickup device, mobile-body apparatus control system, image processing method, and program
KR101204086B1 (en) Method and apparatus for controlling self-driving of mobile-robot
US11753002B2 (en) Vehicular control system
US11567497B1 (en) Systems and methods for perceiving a field around a device
JP6763198B2 (en) Image processing equipment, imaging equipment, mobile device control systems, image processing methods, and programs
US11010916B2 (en) Method of configuring camera position suitable for localization and robot implementing same
JP3429194B2 (en) Automatic tracking device
JP4575315B2 (en) Object detection apparatus and method
JP6972798B2 (en) Information processing device, image pickup device, device control system, mobile body, information processing method, and program
JP6174884B2 (en) Outside environment recognition device and outside environment recognition method
Schamm et al. Obstacle detection with a Photonic Mixing Device-camera in autonomous vehicles
JP4897539B2 (en) Obstacle detection device
US7899212B2 (en) Image processing apparatus and image processing method

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: 20151021

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161021

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181210

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191115

Year of fee payment: 8