KR20130047455A - Apparatus and method for estimating the position of underwater robot - Google Patents

Apparatus and method for estimating the position of underwater robot Download PDF

Info

Publication number
KR20130047455A
KR20130047455A KR1020110112503A KR20110112503A KR20130047455A KR 20130047455 A KR20130047455 A KR 20130047455A KR 1020110112503 A KR1020110112503 A KR 1020110112503A KR 20110112503 A KR20110112503 A KR 20110112503A KR 20130047455 A KR20130047455 A KR 20130047455A
Authority
KR
South Korea
Prior art keywords
underwater robot
potential
unit
particles
sampling time
Prior art date
Application number
KR1020110112503A
Other languages
Korean (ko)
Other versions
KR101406176B1 (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 KR1020110112503A priority Critical patent/KR101406176B1/en
Publication of KR20130047455A publication Critical patent/KR20130047455A/en
Application granted granted Critical
Publication of KR101406176B1 publication Critical patent/KR101406176B1/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
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D3/00Control of position or direction
    • G05D3/12Control of position or direction using feedback

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

PURPOSE: A device and a method for estimating the position of an underwater robot are provided to accurately measuring a three-dimensional position of the underwater robot in water by solving problems regarding errors, difficulty of installing a sensor, and cost. CONSTITUTION: A device for estimating the position of an underwater robot comprises an inner sensor unit(110), an outer sensor unit(120), a potential position obtaining unit(130), a reliability obtaining unit(140), a potential position rearrangement unit(150), and a positioning unit(160). The reliability obtaining unit obtains the reliability for potential particles by allowing environmental information to a random variable at each sampling time. The potential position rearrangement unit rearranges the potential particles according to reliability. The determining unit calculates an average position of the potential particles rearranged at each sampling time and determines a calculated average position as a current position of the underwater robot. [Reference numerals] (110) Inner sensor unit; (120) Outer sensor unit; (130) Potential position obtaining unit; (131) Potential position generating unit; (132) Potential position update unit; (140) Reliability obtaining unit; (150) Potential position rearrangement unit; (160) Positioning unit; (AA) Speed information; (BB) Potential particle; (CC) Environment information; (DD) Reliability; (EE) Rearranged potential particle; (FF) Current position

Description

수중로봇의 위치 추정 장치 및 그 방법{Apparatus and Method for Estimating the Position of Underwater Robot}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an apparatus for estimating the position of an underwater robot,

본 발명은 수중로봇의 위치 추정 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는, 기존 방식의 단점인 오차 누적 문제를 해결함으로써 수중로봇의 수중에서의 3차원적 위치를 정확히 측정할 수 있는 수중로봇의 위치 추정 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and method for estimating the position of an underwater robot, and more particularly, to an apparatus and method for estimating the position of an underwater robot in an underwater robot, which can accurately measure three- And a method for estimating the position of the mobile terminal.

본 발명은 교육과학기술부 및 조선대학교 산학협력단의 지역기초연구활성화(지역혁신인력양성)의 일환으로 수행한 연구로부터 도출된 것이다.The present invention is derived from research carried out by the Ministry of Education, Science and Technology and the Chosun University Industry-Academy Collaboration Center as part of the revitalization of regional basic research (local innovation manpower training).

[과제고유번호: 1345135934, 연구과제명: 로봇의 자율주행 요소 기술 및 상용화 및 인력양성 사업, 연구기간: 2010-07.01~2013-04-30 (당해년도 연구기간:2011-05-01~2012-04-30)][Project number: 1345135934, Research title: Robot autonomic driving technology and commercialization and manpower development project, Research period: 2010-07.01 ~ 2013-04-30 (Study period: 2011-05-01 ~ 2012- 04-30)]

수중로봇은 수중연구와 해양지도 작성, 기후 변화, 해양서식지 모니터링 등과 같이 해양 생태계에 직면한 문제들에 접근하는데 다양하게 이용될 수 있다. Underwater robots can be used in a variety of ways to address issues facing marine ecosystems, such as underwater research and ocean mapping, climate change, and marine habitat monitoring.

수중로봇이 올바른 작업을 수행하기 위해서는 이동 중에 나타날 수 있는 장애물이나 기타 외부 환경에 대해, 주어진 경로를, 어느 정도의 위치에서, 어떤 방향으로, 얼마만큼 벗어난 상태인지 로봇 스스로가 판단하며 보정해야 한다. 그러나 정형화되지 않은 수중환경에서 위치추정과 네비게이션은 어려운 작업이다.In order for the underwater robot to perform the correct operation, the robot itself must judge and compensate for the obstacle or other external environment that may appear during the movement, the degree to which the given path is deviated to some extent, in which direction, and to what extent. However, position estimation and navigation in an unstructured underwater environment is a difficult task.

이처럼 수중로봇의 위치추정은 수중로봇의 자율 주행을 위해서는 필수적인 기능으로서, 종래에는 관성센서(INS)를 사용한 추측항법과 외부에 센서를 설치하여 위치를 추정하는 LBL, USBL, 그리고 SBL방법등이 있다. 그러나 종래의 방식중 관성센서를 이용한 방법은 로봇 동작 및 센서 정보의 불확실성으로 인하여 시간이 지남에 따라 위치 오차가 누적되는 문제점이 있다. 또한 이 방식은 로봇의 내부센서가 환경에 대한 상황을 감지하지 못한 상태에서 로봇을 다른 장소로 이동시킴으로써 로봇의 위치를 잃어버리는 로봇 유괴 현상이 자주 발생하는 문제점이 있다. 그리고 외부환경에 센서를 설치하여 로봇의 위치를 알아내는 기존의 방법은 관성센서를 이용한 추측항법에 비해 센서 오차 누적문제는 발생하지 않지만, 센서 설치의 어려움과 비용의 문제점이 있다.The estimation of the position of the underwater robot is indispensable function for autonomous navigation of the underwater robot. Conventionally, there are a speculative navigation using an inertial sensor (INS) and an LBL, USBL, and SBL methods for estimating a position by installing an external sensor . However, the conventional method using the inertial sensor has a problem that the position error is accumulated over time due to the uncertainty of robot operation and sensor information. In addition, this method has a problem in that a robot abortion phenomenon frequently occurs in which the robot's position is lost by moving the robot to another place while the internal sensor of the robot can not detect the environment. In addition, the existing method of locating the robot by installing the sensor in the external environment does not cause the sensor error accumulation problem as compared with the estimated navigation using the inertial sensor, but there is a problem of the difficulty of the sensor installation and the cost.

본 발명이 해결하고자 하는 과제는, 기존 위치 추정 방식의 단점인 오차 누적 문제를 해결함으로써 수중로봇의 수중에서의 3차원적 위치를 정확히 측정할 수 있는 수중로봇의 위치 추정 장치 및 그 방법을 제공하는 데 있다.An object of the present invention is to provide an apparatus for estimating the position of an underwater robot and a method thereof for accurately measuring the three-dimensional position of the underwater robot in the water by solving the error accumulation problem which is a disadvantage of the existing position estimation method There is.

상기한 과제를 해결하기 위해 본 발명은, 각 샘플링 시각마다 수중로봇의 자세, 이동방향, 및 이동속도에 대한 정보를 포함하는 속도정보를 획득하는 내부센서부; 각 샘플링 시각마다 상기 수중로봇의 이동에 따라 변화하는 외부환경을 센싱하여 환경정보를 획득하는 외부센서부; 각 샘플링 시각마다 상기 수중로봇이 위치할 가능성이 있는 잠재파티클들을 획득하는 잠재위치 획득부; 각 샘플링 시각마다 상기 환경정보를 확률변수로 하여 상기 획득한 잠재파티클들에 대한 신뢰도를 각각 획득하는 신뢰도 획득부; 각 샘플링 시각마다 상기 획득한 잠재파티클들을 상기 신뢰도에 따라 각각 재배치하는 잠재위치 재배치부; 및 각 샘플링 시각마다 상기 재배치된 잠재파티클들의 평균위치를 계산하고, 상기 계산된 평균위치를 각 샘플링 시각에서의 수중로봇의 현재위치로 결정하는 위치 결정부를 포함하는, 수중로봇의 위치 추정 장치를 제공하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a robot control method comprising: an internal sensor unit for acquiring velocity information including information on a posture, a moving direction, and a moving velocity of an underwater robot at each sampling time; An external sensor unit that senses an external environment that changes according to the movement of the underwater robot at each sampling time to acquire environment information; A potential position acquiring unit for acquiring potential particles that are likely to be positioned by the underwater robot at each sampling time; A reliability acquiring unit for acquiring reliability of the obtained potential particles by using the environmental information as a random variable at each sampling time; A latent location rearrangement unit for rearranging the obtained potential particles according to the reliability for each sampling time; And a position determiner for calculating an average position of the rearranged potential particles for each sampling time and determining the calculated average position as a current position of the underwater robot at each sampling time .

바람직하게는, 상기 속도정보는, 상기 수중로봇의 롤 각속도, 피치 각속도, 요 각속도, 서지 선속도, 스웨이 선속도, 및 히브 선속도에 대한 정보를 포함할 수 있다.Preferably, the velocity information may include information about a roll angular velocity, a pitch angular velocity, a yaw angular velocity, a surge linear velocity, a sweep linear velocity, and a Hebrew linear velocity of the underwater robot.

바람직하게는, 상기 잠재위치 획득부는, 초기에는 상기 수중로봇의 초기위치 및 상기 속도정보로부터 잠재파티클들을 생성하여 획득하되, 초기 이후에는 이전 샘플링 시각에 재배치된 잠재파티클을 현재 샘플링 시각의 속도정보에 따라 이동시켜 잠재파티클들을 획득할 수 있다.Preferably, the latent position acquiring unit initially generates latent particles from the initial position of the underwater robot and the speed information, and acquires the latent particles rearranged at the previous sampling time, So that the potential particles can be obtained.

또한, 상기한 과제를 해결하기 위해 본 발명은, ((a) 각 샘플링 시각마다 수중로봇의 자세, 이동방향, 및 이동속도에 대한 정보를 포함하는 속도정보를 획득하는 단계; (b) 상기 수중로봇의 이동에 따라 변화하는 외부환경을 센싱한 환경정보를 획득하는 단계; (c) 상기 수중로봇이 위치할 가능성이 있는 잠재파티클들을 획득하는 단계; (d) 상기 환경정보를 확률변수로 하여 상기 획득한 잠재파티클들에 대한 신뢰도를 각각 획득하는 단계; (e) 상기 획득한 잠재파티클들을 상기 신뢰도에 따라 각각 재배치하는 단계; 및 (f) 상기 재배치된 잠재파티클들의 평균위치를 계산하고, 상기 계산된 평균위치를 수중로봇의 현재위치로 결정하는 단계를 포함하며, 각 샘플링 시각마다 상기 (a) 내지 (e) 단계를 반복하여 상기 수중로봇의 위치를 실시간으로 추정하는 것을 특징으로 하는, 수중로봇의 위치 추정 방법을 제공한다.According to another aspect of the present invention, there is provided a robot control method for a robot, comprising the steps of: (a) acquiring velocity information including information about a posture, a moving direction, and a moving velocity of an underwater robot at each sampling time; (b) (C) acquiring potential particles that are likely to be located in the underwater robot, (d) acquiring the environment information by using the environment information as a random variable, (E) relocating each of the obtained potential particles according to the reliability, and (f) calculating an average position of the relocated potential particles, and calculating Determining the average position of the underwater robot as the current position of the underwater robot, and repeating the steps (a) to (e) for each sampling time to estimate the position of the underwater robot in real time And a method of estimating the position of the underwater robot.

본 발명에 따르면 기존 수중로봇 위치추정 방법의 단점인 오차 누적, 센서 설치의 어려움, 및 비용 문제를 해결함으로써 수중로봇의 수중에서의 3차원적 위치를 정확히 측정할 수 있다.According to the present invention, it is possible to accurately measure the three-dimensional position of the underwater robot in the water by solving the problems of error accumulation, difficulty of sensor installation, and cost, which are disadvantages of existing underwater robot position estimation methods.

도 1은 수중로봇의 위치 추정 과정을 예시한 도면이다.
도 2는 본 발명에 따른 수중로봇의 위치 추정 장치를 설명한 블록도이다.
도 3 및 도 4는 각각 자세정보 및 속도정보를 설명하는 도면이다.
도 5는 각각 요 각, 피치 각, 및 롤 각에 대한 자세 회전을 예시한 도면이다.
도 6 내지 도 8은 본 발명에 대한 시뮬레이션 결과를 나타낸 그래프이다.
도 9는 본 발명에 따른 수중로봇의 위치 추정 방법을 설명한 흐름도이다.
1 is a diagram illustrating a process of estimating a position of an underwater robot.
2 is a block diagram illustrating an apparatus for estimating a position of an underwater robot according to the present invention.
3 and 4 are views for explaining attitude information and velocity information, respectively.
Fig. 5 is a diagram illustrating the attitude rotation about the yaw angle, the pitch angle, and the roll angle, respectively.
6 to 8 are graphs showing simulation results of the present invention.
9 is a flowchart illustrating a method of estimating a position of an underwater robot according to the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예를 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and are herein described in detail. It should be understood, however, that the invention is not intended to be limited to the particular forms disclosed, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다. The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

본 출원에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, the terms "comprising" or "having ", and the like, are intended to specify the presence of stated features, integers, steps, operations, elements, parts, or combinations thereof, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.

일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the meaning in the context of the relevant art and are to be interpreted as ideal or overly formal in meaning unless explicitly defined in the present application Do not.

수중로봇은 해저 자원탐사, 침몰된 선박의 인양작업, 기름제거작업, 해저케이블 설치, 수중구조물의 수리 등에 이용된다. 수중로봇은 3차원인 수중에서 자유롭게 이동해야 하며, 이를 위해 수중로봇은 자세를 조정하기 위한 자세 제어 장치 및 3차원 각 방향으로의 이동을 제어하기 위한 이동 제어 장치를 가진다. 자세 제어 장치 및 이동 제어 장치는 프로펠러 등이 연결된 모터를 정밀하게 제어함으로써 수중로봇이 수중에서 자유롭게 이동할 수 있도록 한다.Underwater robots are used for exploring seabed resources, lifting sinking ships, removing oil, installing submarine cables, and repairing underwater structures. The underwater robot has to move freely in three dimensional water. To this end, the underwater robot has an attitude control device for adjusting the attitude and a movement control device for controlling the movement in the three dimensional direction. The posture control device and the movement control device precisely control the motor connected with the propeller or the like, so that the underwater robot can move freely in the water.

한편 수중로봇의 수중 자율 주행을 위해 수중로봇이 현재 수중의 어느 위치에 존재하고 있는지를 파악하는 것이 필수적이다.On the other hand, it is essential to understand where the underwater robot is present in the water for autonomous navigation of the underwater robot.

본 발명은 수중로봇의 내부 및 외부의 각종 정보를 바탕으로 수중로봇의 현재위치를 추정하는 장치 및 방법을 제공한다. 수중로봇은 본 발명에 의해 제공되는 현재위치를 바탕으로 자율 주행을 수행할 수 있다. The present invention provides an apparatus and method for estimating the current position of a submersible robot based on various information inside and outside the submersible robot. The underwater robot can perform autonomous travel based on the current position provided by the present invention.

도 1은 수중로봇의 위치 추정 과정을 예시한 도면이다.1 is a diagram illustrating a process of estimating a position of an underwater robot.

수중로봇은 수중에 들어가면 상위 시스템의 지시에 의하거나 자율적으로 수중을 이동한다. 도 1에서 Lt1은 수중로봇의 초기위치를 의미하며, 초기위치는 사용자에 의해 입력될 수 있다.When an underwater robot enters the water, the robot moves under water according to the instruction of the upper system or autonomously. In Fig. 1, L t1 denotes an initial position of the underwater robot, and the initial position can be input by the user.

시간의 흐름에 따라 수중로봇은 수중을 이동(Lt1-Lt2-Lt3)하게 되는데, 본 발명에 의한 수중로봇의 위치 추정 장치 및 방법은 각종 정보를 바탕으로 수중로봇의 현재위치를 실시간으로 추정하여, 수중로봇에 제공한다.With the passage of time underwater robots there is moved in the water (L -L t1 t2 t3 -L), the current position of the robot hand to the position estimating apparatus and method for a robot hand based on the various kinds of information according to the present invention in real time, And provides it to the underwater robot.

한편 수중로봇은 수중로봇에 내장된 각종 센서에서 획득한 위치 및 속도에 관한 정보뿐만 아니라 외부의 환경정보 제공장치(20)로부터 수신한 외부정보를 기초로 현재위치를 추정할 수 있다. 외부의 환경정보 제공장치(20)는 수중로봇의 현재위치를 추정하는데 도움을 주기 위해 환경정보 제공장치(20)의 위치정보 및 지도정보를 수중로봇에 제공하며, 필요한 경우 수면 또는 수중에서의 수온, 물의 흐름 등 다양한 정보를 제공할 수도 있다. Meanwhile, the underwater robot can estimate the current position based on the external information received from the external environment information providing apparatus 20 as well as the information about the position and speed acquired from various sensors built in the underwater robot. The external environment information providing apparatus 20 provides the underwater robot with the position information and the map information of the environment information providing apparatus 20 to help estimate the current position of the underwater robot, , Water flow, and so on.

도 2는 본 발명에 따른 수중로봇의 위치 추정 장치를 설명한 블록도이다.2 is a block diagram illustrating an apparatus for estimating a position of an underwater robot according to the present invention.

도 2를 참조하면, 본 발명에 따른 수중로봇의 위치 추정 장치(100)는 내부센서부(110), 외부센서부(120), 잠재위치 획득부(130), 신뢰도 획득부(140), 잠재위치 재배치부(150), 및 위치 결정부(160)를 포함한다.2, the apparatus 100 for estimating the position of an underwater robot according to the present invention includes an internal sensor unit 110, an external sensor unit 120, a latent position acquiring unit 130, a reliability acquiring unit 140, A location rearranging unit 150, and a positioning unit 160. [

내부센서부(110)는 수중로봇의 추진부(미도시)와 연결되어 수중로봇의 자세, 이동방향, 및 이동속도와 관련된 속도정보를 각 샘플링 시각마다 획득한다. 추진부란 수중로봇의 자세를 제어하는 자세 제어 장치 및 수중로봇의 이동방향과 이동속도를 제어하는 이동 제어 장치를 모두 의미한다.The internal sensor unit 110 is connected to the propulsion unit (not shown) of the underwater robot to acquire velocity information related to the posture, the moving direction, and the moving velocity of the underwater robot at each sampling time. The propulsion means both an attitude control device for controlling the attitude of the underwater robot and a motion control device for controlling the moving direction and the moving speed of the underwater robot.

내부센서부(110)는 수중로봇의 자세, 이동방향, 및 이동속도를 제어하는 추진부와 각각 연결된 각속도계 센서(자이로스코프) 및 엔코더 등의 센서로서, 수중로봇의 자세와 연관된 각속도정보를 획득하는 각속도 획득센서(미도시) 및 이동방향과 이동속도와 연관된 선속도정보를 획득하는 선속도 획득센서(미도시)를 포함한다. 이처럼 내부센서부(110)에서 각 샘플링 시각마다 획득된 속도정보는 수중로봇의 자세와 연관된 각속도정보 및 수중로봇의 이동방향과 이동속도와 연관된 선속도정보를 포함한다. The internal sensor unit 110 is a sensor such as an angular velocity sensor (gyroscope) and an encoder connected to a propulsion unit for controlling the attitude, movement direction, and movement speed of the underwater robot, and acquires angular velocity information related to the posture of the underwater robot And a linear velocity acquisition sensor (not shown) for acquiring linear velocity information associated with the movement direction and the movement velocity. The velocity information acquired at each sampling time in the internal sensor unit 110 includes angular velocity information related to the attitude of the underwater robot and linear velocity information related to the moving direction and the moving velocity of the underwater robot.

각속도정보는 전술한 것처럼 수중로봇의 자세에 대한 내용을 제공하는 정보로서, 수중로봇의 롤(roll) 각속도, 피치(pitch) 각속도 및 요(yaw) 각속도에 대한 정보를 포함한다. 그리고, 선속도정보는 수중로봇의 이동방향과 이동속도에 대한 내용을 제공하는 정보로서, 수중로봇의 서지(surge) 선속도, 스웨이(sway) 선속도 및 히브(heave) 선속도에 대한 정보를 포함한다. The angular velocity information includes information about the roll angular velocity, the pitch angular velocity, and the yaw angular velocity of the underwater robot, which provides information on the posture of the underwater robot as described above. The linear velocity information is information providing information on the moving direction and the moving velocity of the underwater robot. The linear velocity information includes information on the surge linear velocity, sway linear velocity and heave linear velocity of the underwater robot. .

도 3 및 도 4는 각각 각속도정보 및 선속도정보를 설명하는 도면이다.FIGS. 3 and 4 are views for explaining angular velocity information and linear velocity information, respectively.

도 3(a)는 롤(roll) 각속도를 나타내고, 도 3(b)는 피치(pitch) 각속도를 나타내며, 도 3(c)는 요(yaw) 각속도를 나타낸다.Fig. 3 (a) shows the roll angular velocity, Fig. 3 (b) shows the pitch angular velocity, and Fig. 3 (c) shows the yaw angular velocity.

그리고, 도 4a는 서지(surge) 선속도를 나타내고, 도 4b는 스웨이(sway) 선속도를 나타내며, 도 4c는 히브(heave) 선속도를 나타낸다.4A shows the surge linear velocity, FIG. 4B shows the sway linear velocity, and FIG. 4C shows the heave linear velocity.

다시 도 2로 되돌아가 설명하도록 한다.Returning to Fig. 2, description will be made again.

내부센서부(110)에 의해 획득된 속도정보는 후술할 잠재위치 획득부(130)로 제공된다.The velocity information obtained by the internal sensor unit 110 is provided to a potential position acquisition unit 130 to be described later.

한편 외부센서부(120)는 수중로봇의 동작에 따라 변화하는 외부환경을 센싱하여 각 샘플링 시각마다 환경정보를 획득하고, 획득한 환경정보를 잠재위치 획득부(130)로 제공한다.On the other hand, the external sensor unit 120 senses the external environment changing according to the operation of the underwater robot, acquires environment information for each sampling time, and provides the acquired environment information to the potential position acquisition unit 130.

외부센서부(120)는 수중로봇의 자세 변화 및 이동에 따라 변화하는 외부환경을 감지하기 위해 각종 센서, 예를 들어 거리센서, 자이로센서, 전자나침반, 관성센서, 및 위치센서 중의 적어도 하나를 포함하며, 또한 외부의 환경정보 제공장치(20)로부터 외부정보를 수신할 수도 있다. The external sensor unit 120 includes at least one of various sensors such as a distance sensor, a gyroscope, an electronic compass, an inertial sensor, and a position sensor to detect an external environment that changes according to a change and an attitude of the robot in the water And may receive external information from the external environmental information providing device 20. [

잠재위치 획득부(130)는 각 샘플링 시각마다 수중로봇이 위치할 가능성이 있는 잠재파티클들을 획득하는 역할을 수행한다. The potential position acquisition unit 130 acquires potential particles that are likely to be located in the underwater robot at each sampling time.

여기서 잠재파티클이란 수중로봇이 존재할 가능성이 있는 위치를 의미하는 정보로서, 수중로봇의 자세와 위치에 대한 정보(x,y,z,φ,θ,ψ)로 이루어져 있다. 다시 말해 잠재파티클이란 수중로봇의 확정적 위치를 의미하는 것이 아니라 수중로봇이 존재할 가능성이 있는 위치 및 그 위치에서의 자세를 의미하는 것으로서, x,y,z는 고정좌표계에서의 수중로봇의 위치를 의미하고, φ,θ,ψ는 고정좌표계에서의 수중로봇의 자세(롤 각, 피치 각, 요 각)를 각각 의미한다. Here, the latent particle is information indicating a position where a submersible robot may exist, and it is composed of information (x, y, z, φ, θ, ψ) about the attitude and position of the underwater robot. In other words, the potential particle does not mean the definite position of the underwater robot but the position where the underwater robot may exist and the attitude at the position, and x, y, z denote the position of the underwater robot in the fixed coordinate system And φ, θ, and ψ represent the attitude (roll angle, pitch angle, and yaw angle) of the robot in the fixed coordinate system, respectively.

잠재위치 획득부(130)는 잠재위치 생성부(131)와 잠재위치 갱신부(132)를 포함한다. 잠재위치 생성부(131)는 수중로봇이 최초에 존재하는 위치인 초기위치 및 이동을 시작할 때의 속도정보로부터 잠재파티클들을 생성하는 역할을 수행하고, 잠재위치 갱신부(132)는 후술할 잠재위치 재배치부(150)에 의해 재배치된 잠재파티클을 속도정보를 기초로 이동시킴으로써 이전 샘플링 시각의 잠재파티클을 현재 샘플링 시각의 잠재파티클로 갱신하는 역할을 수행한다. 즉, 잠재위치 갱신부(132)는 과거의 잠재파티클을 현재의 속도정보에 따라 이동시킴으로써 잠재파티클들이 실시간으로 계속 갱신되게 하는 역할을 수행한다. The potential position acquiring unit 130 includes a potential position generating unit 131 and a potential position updating unit 132. The latent position generating unit 131 generates latent particles from the initial position, which is the initial position of the underwater robot, and the speed information at the start of the movement, and the latent position update unit 132 updates the latent position And moves the potential particles rearranged by the rearrangement unit 150 based on the speed information, thereby updating the potential particles of the previous sampling time with the potential particles of the current sampling time. That is, the potential position update unit 132 moves the potential particles in the past according to the current velocity information, thereby causing the potential particles to continuously update in real time.

이하에서는 잠재위치 획득부(130)가 잠재파티클을 생성하고 이를 갱신하는 과정을 좀 더 상세히 설명하도록 한다.Hereinafter, the process of generating and updating the potential particles by the potential position acquisition unit 130 will be described in more detail.

본 발명에서는 수중로봇에 대한 잠재파티클을 계산하기 위해, 관성항법 시스템에서 사용되는 오일러각(Euler angle)을 이용한다.오일러각은 로봇에 고정되어 이동하는 로봇 좌표계에서의 각속도 값을 지구에 고정되어있는 고정좌표계에서의 각속도 값으로 변환한 행렬이다. 오일러각을 이용한 방법은 고정좌표계와 로봇좌표계 사이의 회전 각속도와 오일러각의 미분치 사이의 관계를 이용하여 좌표변환에 필요한 롤 각(roll, φ), 피치 각(pitch, θ) 그리고 요 각(yaw, ψ)을 계산하고, 이 세 각을 이용하여 좌표변환 행렬을 구성한다.In the present invention, the Euler angle used in the inertial navigation system is used to calculate the potential particles for a submersible robot. The Euler angles are values of the angular velocity in the moving robot coordinate system fixed to the robot, It is a matrix converted into the angular velocity value in the fixed coordinate system. The Euler angular method uses the relationship between the rotational angular velocity between the fixed coordinate system and the robot coordinate system and the derivative of the Euler angles to determine the roll angle (roll, φ), pitch angle (pitch, θ) yaw, ψ) are calculated, and the coordinate transformation matrix is constructed by using these three angles.

수중로봇의 좌표계를 지구의 고정좌표계로 표현하기 위해 사용되는 오일러각은 롤 각, 피치 각, 요 각으로 구성된다.The Euler angles used to represent the coordinate system of the underwater robot in the fixed coordinate system of the earth are composed of roll angle, pitch angle and yaw angle.

도 5는 각각 요 각, 피치 각, 및 롤 각에 대한 자세 회전을 예시한 도면이다.Fig. 5 is a diagram illustrating the attitude rotation about the yaw angle, the pitch angle, and the roll angle, respectively.

먼저 기준좌표계의 z축으로부터 요 각을 도 5(a)와 같이 회전하고, 회전된 y축에서의 피치 각을 도 5(b)와 같이 회전한다. 이 후 도 5(a) 및 도 5(b)에 의해 회전된 축을 기준으로 새로운 x축에서의 롤 각을 도 5(c)와 같이 회전시킨다.First, the yaw angle is rotated from the z-axis of the reference coordinate system as shown in Fig. 5 (a), and the pitch angle in the rotated y-axis is rotated as shown in Fig. 5 (b). 5 (a) and 5 (b), the roll angle in the new x axis is rotated as shown in Fig. 5 (c) based on the axis rotated.

도 2와 같은 자세 회전은 다음의 수학식과 같은 행렬식으로 정의될 수 있다.The posture rotation as shown in FIG. 2 can be defined by the following mathematical expression.

Figure pat00001
Figure pat00001

[수학식 1]의 첫번째 행렬은 요 각에 대한 회전 행렬식을 의미하고, [수학식 1]의 두번째 행렬은 피치 각에 대한 회전 행렬식을 의미하며, [수학식 1]의 세번째 행렬은 롤 각에 대한 회전 행렬식을 각각 의미한다. 여기서, N은 고정좌표계를, B는 로봇좌표계를, 그리고 Fn은 행렬식에 의해 변환된 좌표계를 의미한다.The first matrix of Equation (1) represents a rotation matrix for the yaw angle, the second matrix of Equation (1) represents a rotation matrix for the pitch angle, and the third matrix of Equation (1) Respectively. Here, N denotes a fixed coordinate system, B denotes a robot coordinate system, and Fn denotes a coordinate system converted by a determinant.

각각의 좌표 회전행렬식의 곱을 통해 로봇좌표계에 대한 수중로봇의 자세가 계산될 수 있다. 따라서 고정좌표계에서 로봇좌표계로 변환하는 변환행렬은 다음의 [수학식 2]처럼 정의될 수 있다.The attitude of the underwater robot with respect to the robot coordinate system can be calculated through the product of the respective coordinate rotation determinants. Therefore, the transformation matrix for transforming from the fixed coordinate system to the robot coordinate system can be defined as the following equation (2).

Figure pat00002
Figure pat00002

고정좌표계에 대한 수중로봇의 좌표를 구하기 위하여, [수학식 2]에서 로봇좌표계에 대한

Figure pat00003
로 변환하면 다음의 [수학식 3]에서처럼 고정좌표계의 변환행렬인
Figure pat00004
을 획득할 수 있다. In order to obtain the coordinates of the underwater robot with respect to the fixed coordinate system,
Figure pat00003
The transformation matrix of the fixed coordinate system as shown in the following equation (3)
Figure pat00004
Can be obtained.

Figure pat00005
Figure pat00005

[수학식 3]에서, c와 s는 각각 cos과 sin을 의미한다.In Equation (3), c and s mean cos and sin, respectively.

한편, 수중로봇의 좌표계에서 발생하는 수중로봇의 선속도정보를 이용하면, 고정좌표계에서의 수중로봇의 선속도정보는 다음처럼 표현된다.On the other hand, using the linear velocity information of the underwater robot occurring in the coordinate system of the underwater robot, the linear velocity information of the underwater robot in the fixed coordinate system is expressed as follows.

Figure pat00006
Figure pat00006

[수학식 4]에서, u, v, w는 로봇좌표계에서의 수중로봇의 선속도이고,

Figure pat00007
는 고정좌표계에서의 수중로봇의 선속도를 의미한다.In Equation (4), u, v, and w are the linear velocities of the underwater robot in the robot coordinate system,
Figure pat00007
Means the linear velocity of the underwater robot in the fixed coordinate system.

[수학식 4]의

Figure pat00008
는 다음의 [수학식 5]처럼 다시 표현될 수 있다,In Equation (4)
Figure pat00008
Can be re-expressed as: < EMI ID =

Figure pat00009
Figure pat00009

[수학식 5]에서, c와 s는 각각 cos과 sin을 의미한다.In Equation (5), c and s mean cos and sin, respectively.

한편 시간에 따른 각 축의 각속도와 오일러각과의 관계는 다음처럼 표현도리 수 있다.The relationship between the angular velocity of each axis and the Euler angle over time can be expressed as follows.

Figure pat00010
Figure pat00010

[수학식 6]에 [수학식 1-1]~[수학식 1-3]을 적용하여 전개하면 다음처럼 다시 표현될 수 있다.[Mathematical Expression 1-1] to [Mathematical Expression 1-3] to [Expression 6], the expression can be rewritten as follows.

Figure pat00011
Figure pat00011

[수학식 7]은 오일러각의 변화량을 각속도로 표현한 식이다. Equation (7) expresses the amount of change of the Euler angle as an angular velocity.

이를 롤 각, 피치 각, 및 요 각에 대한 식으로 나타내면 다음과 같다.The roll angles, pitch angles, and yaw angles are expressed by the following equations.

Figure pat00012
Figure pat00012

[수학식 4]에서 획득한

Figure pat00013
를 적분하면 고정좌표계에서의 수중로봇의 위치정보가 획득되며, [수학식 8]에서 획득한
Figure pat00014
를 적분하면 고정좌표계에서의 수중로봇의 자세정보가 획득될 수 있다.In Equation (4)
Figure pat00013
By integrating, the position information of the underwater robot in the fixed coordinate system is obtained.
Figure pat00014
The posture information of the underwater robot in the fixed coordinate system can be obtained.

한편 잠재위치 획득부(130)는 다음 [표 1]의 알고리즘을 이용하여 수중로봇의 속도정보에 따른 잠재파티클들의 위치를 예측하여 획득한다.On the other hand, the potential position acquiring unit 130 predicts and acquires positions of potential particles according to the velocity information of the underwater robot using the algorithm shown in [Table 1] below.

Figure pat00015
Figure pat00015

[표 1]의 알고리즘은 현재 수중로봇의 각속도 및 선속도에 대한 정보를 포함하는 속도정보에 대응하여 잠재파티클들이 이동하는 것을 모델링한 알고리즘으로서, 파라미터에 따라 각 잠재파티클의 불확실성을 추가하여 수중로봇의 동작을 표현한다. 즉, [표 2]의 알고리즘은 수중로봇의 속도정보(u,v,w,p,q,r) 및 αuu ~ αrr의 파라미터에 따라 각 잠재파티클의 이동에 대해 수학적으로 표현하는 알고리즘이다. The algorithm shown in [Table 1] is an algorithm that models the movement of potential particles corresponding to the velocity information including the information about the angular velocity and the linear velocity of the underwater robot, and adds the uncertainty of each potential particle according to the parameters, Lt; / RTI > That is, the algorithm of [Table 2] mathematically expresses the movement of each potential particle according to the parameters of the underwater robot's velocity information (u, v, w, p, q, r) and α uu to α rr .

[표 1]의 ut는 수중로봇의 속도정보를 의미하고, xt -1은 시각 t-1에서의 잠재파티클의 위치(x,y,z,φ,θ,ψ)를 의미한다. 여기서, v=w=p=0으로 가정한다.In Table 1, u t represents the velocity information of the underwater robot, and x t -1 represents the position (x, y, z, φ, θ, ψ) of the potential particle at time t-1. Here, it is assumed that v = w = p = 0.

서지(Surge) 속도 파라미터인 αuu, αuv, αuw, αup, αuq, αur는 서지 방향에 대한 잠재파티클의 분포를 결정한다. αuu, αuv, αuw, αuq, αuq, αur의 파라미터 값이 크면 클수록 서지 방향으로 잠재파티클들이 넓게 분포되고, 피치 각속도 파라미터인 αqu, αqv, αqw, αqp, αqq, αqr 또한 파라미터 값이 클수록 피치 방향으로 잠재 파티클이 넓게 분포된다. 요 각속도 파라미터 αru, αrv, αrw, αrp, αrq, αrr 역시 파리미터 값이 크면 클수록 요 방향으로 잠재파티클들이 넓게 분포된다.The surge velocity parameters α uu , α uv , α uw , α up , α uq , and α ur determine the distribution of potential particles in the surge direction. α uu, α uv, α uw, α uq, α uq, α ur of and are potential particles widely distributed in the direction Works higher the parameter value is larger, the pitch angle velocity parameter α qu, α qv, α qw, α qp, α qq , α qr The larger the parameter value, the wider the potential particles are distributed in the pitch direction. The angular velocity parameters α ru , α rv , α rw , α rp , α rq and α rr also show that the larger the parameter value, the wider the potential particles are in the yaw direction.

다음 [표 2]의 Sample Normal distribution 함수는 속도 명령 파라미터인 αuu ~ αrr, λxu ~ λψr대한 잠재파티클 동작의 불확실성을 추가하는 알고리즘이다.The sample normal distribution function in [Table 2] is an algorithm that adds the uncertainty of the potential particle motion for the velocity command parameters α uu to α rr and λ xu to λ ψ r .

Figure pat00016
Figure pat00016

잠재위치 획득부(130)는 내부센서부(110)로부터 수신한 속도정보를 기초로 상기 과정을 거쳐 고정좌표계에서 수중로봇이 위치할 가능성이 있는 잠재파티클들의 위치(x,y,z,φ,θ,ψ)를 획득하고, 획득된 잠재파티클들을 신뢰도 획득부(140)로 제공한다.The potential position acquiring unit 130 acquires the position (x, y, z,?,?,?) Of the potential particles, which are likely to be located in the underwater robot in the fixed coordinate system, based on the velocity information received from the internal sensor unit 110, θ, ψ), and provides the obtained potential particles to the reliability acquiring unit 140.

신뢰도 획득부(140)는 환경정보를 확률변수로 하여 잠재파티클들에 대한 신뢰도를 각각 추출한다.The reliability acquisition unit 140 extracts the reliability of the potential particles using the environmental information as a random variable.

신뢰도 획득부(140)가 신뢰도를 추출하는 과정에 대해서 좀 더 상세히 설명하도록 한다.The process in which the reliability obtaining unit 140 extracts the reliability will be described in more detail.

잠재위치 획득부(130)에 의해 획득된 잠재파티클들은 전술한 것처럼 불확실성을 포함하고 있다. 신뢰도 획득부(140)는 외부센서부(120)로부터 수신한 환경정보, 즉 외부환경으로부터 감지한 거리정보 및 각도 등을 바탕으로 잠재파티클의 신뢰도를 계산한다. The potential particles obtained by the potential position acquiring unit 130 include uncertainties as described above. The reliability acquisition unit 140 calculates the reliability of the potential particles based on the environment information received from the external sensor unit 120, i.e., the distance information and the angle detected from the external environment.

신뢰도는 측정 잡음(Measurement Noise), 의외 대상물(Unexpected Object), 감지 실패(Sensing Failure), 설명 불가능한 잡음(Unexplainable Measurment Noise)이라는 4 개의 상태에 대한 분포도를 포함할 수 있다..Reliability may include a distribution of four states: Measurement Noise, Unexpected Object, Sensing Failure, and Unexplainable Measuring Noise.

측정 잡음(Measurement Noise)은 다음처럼 잠재파티클과 센서 사이의 거리 및 각도를 중심으로 한 에러 분포로서 가우시안 확률분포로 표현된다.Measurement Noise is expressed as a Gaussian probability distribution as an error distribution around the distance and angle between the potential particle and the sensor as follows.

Figure pat00017
Figure pat00017

의외 대상물(Unexpected Object)은 다음처럼 주어진 지도환경 내에서 동적인 장애물이 존재할 수 있는 에러 분포로서 지수 확률분포로 표현될 수 있다.An Unexpected Object can be expressed as an exponential probability distribution as an error distribution in which a dynamic obstacle can exist in a given map environment as follows.

Figure pat00018
Figure pat00018

[수학식 11]은 감지 실패(Sensing Failure)를 나타낸 것으로 센서 데이터 감지 또는 동작하지 않을 때의 분포도이다.Equation (11) shows a sensing failure when the sensor data is detected or not operated.

Figure pat00019
Figure pat00019

설명 불가능한 잡음(Unexplainable Measurment Noise)는 벽의 반사나 혼선으로 인해 센서의 값이 올바르지 못한 확률분포를 나타낸 것으로 다음과 같다.Unexplainable Measuring Noise is the probability distribution of sensor values due to wall reflection or crosstalk.

Figure pat00020
Figure pat00020

상기 4개의 확률분포를다음과 같이 가중치 zhit, zlong, zmax, zrand 를 적용한 후 조합하여 잠재파티클에 대한 신뢰도를 구한다. After the above four probability distribution apply the hit weights z, z long, z max, z rand the following combination is obtained by the reliability of the potential of particles.

Figure pat00021
Figure pat00021

다음의 [표 3]은 [수학식 13]의 분포도를 이용하여 잠재파티클에 대한 신뢰도를 추출하는 알고리즘을 표현한 것이다. 신뢰도 획득부(140)는 [표 3]의 알고리즘처럼 외부센서부(120)로부터 수신한 환경정보를 확률 변수로 하여 잠재파티클들과 지도정보를 바탕으로 각 잠재파티클에 대한 신뢰도를 각각 추출한다. 추출된 신뢰도는 잠재위치 재배치부(150)로 제공된다.The following Table 3 represents an algorithm for extracting the reliability of the potential particles by using the distribution diagram of Equation (13). The reliability acquisition unit 140 extracts the reliability of each potential particle based on the potential particles and the map information, using the environment information received from the external sensor unit 120 as a random variable, as in the algorithm of Table 3. The extracted reliability is provided to the potential position rearrangement unit 150. [

Figure pat00022
Figure pat00022

잠재위치 재배치부(150)는 각 샘플링 시각마다 신뢰도 획득부(140)에서 획득한 각 잠재파티클의 신뢰도를 기초로 잠재위치 획득부(130)로부터 획득된 잠재파티클들을 각각 재배치한다. 잠재파티클들을 재배치하는 과정은 각 잠재파티클을 신뢰도에 따라 복제 및 제거하는 과정을 의미하며, 다음의 [표 4]는 각 잠재파티클의 신뢰도에 따라 각 잠재파티클을 복제하거나 제거하는 과정을 나타낸 알고리즘이다. 재배치된 잠재파티클은 잠재위치 획득부(130)의 잠재위치 갱신부(132)로 제공된다. 잠재위치 갱신부(132)는 재배치된 잠재파티클들을 현재의 속도정보에 따라 각각 이동시킴으로써 잠재파티클들을 각각 갱신한다.The potential position rearranging unit 150 rearranges the potential particles obtained from the potential position obtaining unit 130 based on the reliability of each potential particle obtained at the reliability acquiring unit 140 at each sampling time. The process of rearranging the latent particles implies the process of replicating and removing each latent particle according to the reliability. The following table 4 shows an algorithm for replicating or removing each latent particle according to the reliability of each latent particle . The rearranged potential particles are provided to the potential position update unit 132 of the potential position acquiring unit 130. The potential position update unit 132 updates the potential particles by moving the rearranged potential particles in accordance with the current velocity information, respectively.

Figure pat00023
Figure pat00023

위치 결정부(160)는 재배치된 잠재파티클들의 평균위치를 계산하고, 계산된 평균위치 값을 수중로봇의 현재위치로 결정한다. 위치 결정부(160)는 시간의 흐름에 따라 수중로봇의 현재위치를 계속 결정함으로써 시간의 흐름 및 수중로봇의 동작(이동)에 따라 수중로봇의 현재위치가 실시간으로 계속 결정될 수 있도록 한다.The positioning unit 160 calculates the average position of the rearranged potential particles and determines the calculated average position value to be the current position of the underwater robot. The position determination unit 160 determines the current position of the underwater robot in accordance with the passage of time so that the current position of the underwater robot can be continuously determined according to the flow of time and the motion (movement) of the underwater robot.

다음의 [표 5]는 수중로봇의 위치를 결정하는 위치결정 알고리즘이다.[Table 5] is a positioning algorithm for determining the position of a robot in the water.

Figure pat00024
Figure pat00024

한편 다음의 [표 6]은 전술한 모든 과정을 표현한 알고리즘이다. [Table 6] is an algorithm expressing all the processes described above.

Figure pat00025
Figure pat00025

[표 6]의 알고리즘에서, 3번째 라인의 Motion model은 이전 샘플링 시각에서 재배치된 각각의 잠재파티클을 현재의 속도정보에 따라 이동시킴으로써 현재 샘플링 시각에서의 각 잠재파티클을 예측하는 과정이다. Motion model은 잠재위치 획득부(130)의 잠재위치 갱신부(132)가 수행하는 알고리즘이다.In the algorithm of Table 6, the motion model of the third line is a process of estimating each potential particle at the current sampling time by moving each potential particle rearranged at the previous sampling time according to the current velocity information. The motion model is an algorithm performed by the potential position update unit 132 of the potential position acquisition unit 130.

그리고, 4번째 라인의 Sensor model은 신뢰도를 계산하는 부분으로서, 로봇의 현재위치에서 지도정보를 포함하는 환경정보를 기초로 센서정보의 불확실성에 대한 분포도를 만들어서 실제 수신된 센서정보를 분포도에 대응시킨 후 각 잠재파티클에 대한 신뢰도를 계산하는 과정이다. Sensor model은 신뢰도 획득부(140)가 수행하는 알고리즘이다.The sensor model of the 4th line is a part for calculating the reliability. The sensor model of the 4th line is a part for calculating the uncertainty of the sensor information based on the environmental information including the map information at the current position of the robot, And then calculating the reliability of each potential particle. The sensor model is an algorithm performed by the reliability obtaining unit 140.

그리고, 6번째~8번째 라인의 Resampling model은 잠재파티클들을 재배치 하는 부분으로서, Sensor model에서 계산된 신뢰도를 기반으로 잠재파티클들을 재선별하는 과정이다. Resampling model은 잠재위치 재배치부(150)가 수행하는 알고리즘이다.The resampling model of the 6th to 8th lines is a part to rearrange the potential particles, and it is a process of re-selecting the potential particles based on the reliability calculated in the sensor model. The resampling model is an algorithm performed by the potential position rearrangement unit 150.

그리고 9번째 라인의 Decision Robot Pose는 현재 수중로봇 위치를 결정하는 과정으로서, 매 샘플링마다 Resampling model에 의해 선별된 잠재파티클들의 평균위치를 계산한다. Desision Robot Pose는 위치 결정부(160)가 수행하는 알고리즘이다. And the Decision Robot Pose of the 9th line is the process of determining the position of the underwater robot, and calculates the average position of the potential particles selected by the resampling model every sampling. The Desision Robot Pose is an algorithm that the positioning unit 160 performs.

도 6 내지 도 8은 본 발명에 대한 시뮬레이션 결과를 나타낸 그래프이다.6 to 8 are graphs showing simulation results of the present invention.

시뮬레이션에서 이용된 센서는 거리 센서 2개, 깊이 센서 그리고 요 센서이다. 또한 시뮬레이션의 수중로봇에 주어진 명령은 u = 0.5m/s, q = r =0.05rad/s 이고 v = w = p = 0으로 제한하였다.The sensors used in the simulation are two distance sensors, a depth sensor and a yaw sensor. In addition, the commands given to the underwater robot in the simulation were limited to u = 0.5m / s, q = r = 0.05rad / s and v = w = p = 0.

도 6 내지 도 8은 위와 같은 명령을 주었을 때 X, Y, Z축에 대한 위치 추정 결과로서, Robot은 시뮬레이션한 수중로봇을 나타내고, PT Avg는 잠재파티클들의 평균값을 의미한다.FIGS. 6 to 8 show the result of positional estimation with respect to the X, Y, and Z axes when the above command is given. Robot denotes a simulated underwater robot, and PT Avg denotes an average value of potential particles.

도 6에서 점선으로 표시된 부분을 보면 초기에는 X좌표의 위치에 대하여 파티클들이 위치추정을 정확히 못하지만 시간이 지남에 따라 정확히 위치 추정을 하고 있다.In FIG. 6, when the portion indicated by the dotted line is initially found, the particles are not accurately positioned with respect to the position of the X coordinate, but the position is accurately estimated over time.

도 7은 Y좌표에 대한 로봇의 위치추정 결과이다. 알고리즘 실행 초기에는 잠재파티클들이 무작위로 퍼져있는 결과로 평균을 취하기 때문에 점선으로 표시된 부분과 같이 보인다. 하지만 수신되는 센서의 데이터로 위치할 확률이 높은 잠재파티클이 선별됨으로써 위치 추정이 가능함을 알 수 있다.Fig. 7 shows the position estimation result of the robot with respect to the Y coordinate. At the beginning of the algorithm execution, it looks like the dotted line part because the potential particles take an average as a result of random scattering. However, it can be seen that the position estimation is possible by selecting the potential particles having a high probability of being located in the data of the received sensor.

도 8은 Z좌표에 대한 수중로봇의 위치추정 결과이다. 점선으로 표시된 부분은 도 7에서 설명된 것과 같이 알고리즘 실행 초기에 무작위로 퍼져 있는 잠재파티클들의 평균을 취하기 때문이다.Fig. 8 shows the position estimation result of the underwater robot with respect to the Z coordinate. This is because the dotted line portion takes an average of the potential particles randomly distributed at the beginning of the algorithm execution as described in FIG.

본 발명에 따르면 기존 데드 레크닝 방법에 의한 위치 추정 방식의 단점인 오차 누적 문제를 해결함으로써 수중로봇의 수중에서의 3차원적 위치를 정확히 측정할 수 있다.According to the present invention, the three-dimensional position of the underwater robot in water can be accurately measured by solving the error accumulation problem which is a disadvantage of the position estimation method using the existing dead reckoning method.

이하에서는 본 발명에 따른 수중로봇의 위치 추정 방법을 설명하도록 한다. 본 발명에 따른 수중로봇의 위치 추정 방법은 본 발명에 따른 수중로봇의 위치 추정 장치와 본질적으로 동일하므로, 상세한 설명 및 중복되는 설명은 생략하도록 한다.Hereinafter, a method for estimating a position of an underwater robot according to the present invention will be described. The method for estimating the position of the underwater robot according to the present invention is essentially the same as the position estimating apparatus for the underwater robot according to the present invention, and thus a detailed description and a duplicate description will be omitted.

도 9는 본 발명에 따른 수중로봇의 위치 추정 방법을 설명한 흐름도이다.9 is a flowchart illustrating a method of estimating a position of an underwater robot according to the present invention.

우선, 잠재위치 획득부(130)는 내부센서부(110)로부터 수중로봇의 자세, 이동방향, 및 이동속도에 대한 정보를 포함하는 속도정보를 획득한다(S10). 여기서 속도정보는 수중로봇(10)의 자세, 이동방향, 및 이동속도를 나타내는 정보로서, 수중로봇의 롤 각속도, 피치 각속도, 요 각속도, 서지 선속도, 스웨이 선속도 및 히브 선속도에 대한 정보를 포함한다.First, the potential position acquiring unit 130 acquires velocity information including information on a posture, a moving direction, and a moving velocity of the underwater robot from the internal sensor unit 110 (S10). Here, the velocity information is information indicating the posture, the moving direction, and the moving velocity of the underwater robot 10, and information about the roll angular velocity, pitch angular velocity, yaw angular velocity, surge linear velocity, .

그리고 나서 잠재위치 획득부(130)는 초기, 즉 최초로 이동하는 경우에는 수중로봇(10)의 초기위치 및 속도정보로부터 잠재파티클들을 생성하고(S30), 초기 이후에는 이전 샘플링 시각에 재배치된 잠재파티클을 현재 샘플링 시각의 속도정보에 따라 이동시켜 잠재파티클들을 획득한다(S35).Then, the potential position acquiring unit 130 generates potential particles from the initial position and velocity information of the underwater robot 10 in the initial stage, that is, in the first movement (S30), and after the initial stage, Is moved according to the velocity information of the current sampling time to acquire potential particles (S35).

신뢰도 획득부(140)는 외부센서부(120)로부터 수중로봇의 이동에 따라 변화하는 외부환경을 센싱한 환경정보를 획득한다(S40). The reliability acquiring unit 140 acquires environment information from the external sensor unit 120, which senses an external environment that changes according to the movement of the underwater robot (S40).

신뢰도 획득부(140)는 획득한 환경정보를 확률변수로 하여 S30 단계 또는 S35 단계에서 획득한 잠재파티클들에 대한 신뢰도를 각각 획득한다(S40). 획득된 각 잠재파티클에 대한 신뢰도는 잠재위치 재배치부(150)로 제공된다.The reliability acquiring unit 140 acquires the reliability of the potential particles acquired in step S30 or step S35, respectively, using the obtained environment information as a random variable (S40). The obtained reliability of each potential particle is provided to the potential position rearrangement unit 150. [

잠재위치 재배치부(150)는 획득한 잠재파티클들을 S50 단계에서 획득한 신뢰도에 따라 각각 재배치한다(S60). The potential location rearranging unit 150 rearranges the obtained potential particles in accordance with the reliability acquired in step S50, respectively (S60).

S60 단계에서 재배치된 잠재파티클은 잠재위치 획득부(130)로 제공된다. The potential particles rearranged in step S60 are provided to the potential position acquiring unit 130. [

위치 결정부(160)는 재배치된 잠재파티클들의 평균위치를 계산하고, 계산된 평균위치를 수중로봇의 현재위치로 결정한다(S70).The positioning unit 160 calculates the average position of the rearranged potential particles and determines the calculated average position as the current position of the underwater robot (S70).

그리고 나서 위치 결정부(160)는 결정된 수중로봇의 현재위치를 상위 장치, 즉, 수중로봇의 자세 및 이동을 제어하는 장치로 전송한다(S80). Then, the positioning unit 160 transmits the determined current position of the underwater robot to the parent apparatus, that is, the apparatus for controlling the posture and movement of the underwater robot (S80).

한편, S60 단계에서 재배치된 잠재파티클은 잠재위치 획득부(130)로 제공되고, 잠재위치 획득부(130)는 S60 단계에서 재배치된 잠재파티클을 이전 샘플링 시각의 잠재파티클로 이용하여 현재 샘플링 시각의 잠재파티클을 획득한다.Meanwhile, the potential particles rearranged in step S60 are provided to the potential position acquiring unit 130, and the potential position acquiring unit 130 uses the potential particles rearranged in step S60 as potential particles of the previous sampling time, Obtain the potential particle.

각 샘플링 시각마다 상기 S10 단계~ S80 단계를 반복함으로써, 수중로봇의 위치 추정 장치는 수중로봇의 현재위치를 실시간으로 계속적으로 추정할 수 있다.By repeating steps S10 to S80 for each sampling time, the underwater robot's position estimation apparatus can continuously estimate the current position of the underwater robot in real time.

본 발명의 상기 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The method of the present invention can also be embodied as computer readable code on a computer readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses 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.

내부센서부, 110 외부센서부, 120
잠재위치 획득부, 130 신뢰도 획득부, 14
잠재위치 재배치부, 150 위치 결정부, 160
Internal sensor unit, 110 external sensor unit, 120
Potential position obtaining section, 130 reliability obtaining section, 14
Potential position rearranging unit, 150 positioning unit, 160

Claims (6)

각 샘플링 시각마다 수중로봇의 자세, 이동방향, 및 이동속도에 대한 정보를 포함하는 속도정보를 획득하는 내부센서부;
각 샘플링 시각마다 상기 수중로봇의 이동에 따라 변화하는 외부환경을 센싱하여 환경정보를 획득하는 외부센서부;
각 샘플링 시각마다 상기 수중로봇이 위치할 가능성이 있는 잠재파티클들을 획득하는 잠재위치 획득부;
각 샘플링 시각마다 상기 환경정보를 확률변수로 하여 상기 획득한 잠재파티클들에 대한 신뢰도를 각각 획득하는 신뢰도 획득부;
각 샘플링 시각마다 상기 획득한 잠재파티클들을 상기 신뢰도에 따라 각각 재배치하는 잠재위치 재배치부; 및
각 샘플링 시각마다 상기 재배치된 잠재파티클들의 평균위치를 계산하고, 상기 계산된 평균위치를 각 샘플링 시각에서의 수중로봇의 현재위치로 결정하는 위치 결정부를 포함하는, 수중로봇의 위치 추정 장치.
An internal sensor unit for acquiring velocity information including information on a posture, a moving direction, and a moving velocity of the underwater robot at each sampling time;
An external sensor unit which senses an external environment that changes according to the movement of the underwater robot at each sampling time to obtain environmental information;
A potential position acquisition unit for acquiring potential particles in which the underwater robot is likely to be located at each sampling time;
A reliability acquiring unit for acquiring reliability of the obtained potential particles by using the environmental information as a random variable at each sampling time;
A latent location rearrangement unit for rearranging the obtained potential particles according to the reliability for each sampling time; And
And a positioning unit for calculating an average position of the rearranged latent particles at each sampling time, and determining the calculated average position as a current position of the underwater robot at each sampling time.
제1항에 있어서, 상기 속도정보는
상기 수중로봇의 롤 각속도, 피치 각속도, 요 각속도, 서지 선속도, 스웨이 선속도, 및 히브 선속도에 대한 정보를 포함하는 것을 특징으로 하는, 수중로봇의 위치 추정 장치.
The method of claim 1, wherein the speed information is
And a roll angular velocity, pitch angular velocity, yaw angular velocity, surge linear velocity, sway linear velocity, and hive linear velocity of the underwater robot.
제1항에 있어서, 상기 잠재위치 획득부는,
초기에는 상기 수중로봇의 초기위치 및 상기 속도정보로부터 잠재파티클들을 생성하여 획득하되, 초기 이후에는 이전 샘플링 시각에 재배치된 잠재파티클을 현재 샘플링 시각의 속도정보에 따라 이동시켜 잠재파티클들을 획득하는 것을 특징으로 하는, 수중로봇의 위치 추정 장치.
The apparatus of claim 1,
In the initial stage, potential particles are generated and acquired from the initial position of the underwater robot and the velocity information. In the initial stage, potential particles rearranged at the previous sampling time are moved according to the velocity information of the current sampling time to acquire potential particles Of the robot.
(a) 각 샘플링 시각마다 수중로봇의 자세, 이동방향, 및 이동속도에 대한 정보를 포함하는 속도정보를 획득하는 단계;
(b) 상기 수중로봇의 이동에 따라 변화하는 외부환경을 센싱한 환경정보를 획득하는 단계;
(c) 상기 수중로봇이 위치할 가능성이 있는 잠재파티클들을 획득하는 단계;
(d) 상기 환경정보를 확률변수로 하여 상기 획득한 잠재파티클들에 대한 신뢰도를 각각 획득하는 단계; 및
(e) 상기 획득한 잠재파티클들을 상기 신뢰도에 따라 각각 재배치하는 단계; 및
(f) 상기 재배치된 잠재파티클들의 평균위치를 계산하고, 상기 계산된 평균위치를 수중로봇의 현재위치로 결정하는 단계를 포함하며,
각 샘플링 시각마다 상기 (a) 내지 (e) 단계를 반복하여 상기 수중로봇의 위치를 실시간으로 추정하는 것을 특징으로 하는, 수중로봇의 위치 추정 방법.
(a) acquiring velocity information including information on the attitude, movement direction, and movement speed of the underwater robot at each sampling time;
(b) obtaining environmental information sensing an external environment that changes according to the movement of the underwater robot;
(c) obtaining latent particles that are likely to be located in the underwater robot;
(d) acquiring reliability of the obtained potential particles by using the environmental information as a random variable; And
(e) relocating each of the obtained potential particles according to the reliability; And
(f) calculating an average position of the rearranged latent particles, and determining the calculated average position as the current position of the underwater robot,
Wherein the position of the underwater robot is estimated in real time by repeating the steps (a) to (e) for each sampling time.
제4항에 있어서, 상기 속도정보는
상기 수중로봇의 롤 각속도, 피치 각속도, 요 각속도, 서지 선속도, 스웨이 선속도, 및 히브 선속도에 대한 정보를 포함하는 것을 특징으로 하는, 수중로봇의 위치 추정 방법.
The method of claim 4, wherein the speed information is
And a roll angular velocity, pitch angular velocity, yaw angular velocity, surge linear velocity, sway linear velocity, and hive linear velocity of the underwater robot.
제4항에 있어서, 상기 (c) 단계는
(c1) 초기에는 상기 수중로봇의 초기위치 및 상기 속도정보로부터 잠재파티클들을 생성하여 획득하는 단계; 및
(c2) 초기 이후에는 이전 샘플링 시각에 재배치된 잠재파티클을 현재 샘플링 시각의 속도정보에 따라 이동시켜 잠재파티클들을 획득하는 단계를 포함하는 것을 특징으로 하는, 수중로봇의 위치 추정 방법.
The method of claim 4, wherein step (c)
(c1) initially generating and acquiring potential particles from the initial position of the underwater robot and the velocity information; And
and (c2) moving the potential particles rearranged at the previous sampling time according to the speed information of the current sampling time after the initial sampling to obtain the latent particles.
KR1020110112503A 2011-10-31 2011-10-31 Apparatus and Method for Estimating the Position of Underwater Robot KR101406176B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110112503A KR101406176B1 (en) 2011-10-31 2011-10-31 Apparatus and Method for Estimating the Position of Underwater Robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110112503A KR101406176B1 (en) 2011-10-31 2011-10-31 Apparatus and Method for Estimating the Position of Underwater Robot

Publications (2)

Publication Number Publication Date
KR20130047455A true KR20130047455A (en) 2013-05-08
KR101406176B1 KR101406176B1 (en) 2014-06-13

Family

ID=48658942

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110112503A KR101406176B1 (en) 2011-10-31 2011-10-31 Apparatus and Method for Estimating the Position of Underwater Robot

Country Status (1)

Country Link
KR (1) KR101406176B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101475020B1 (en) * 2013-06-14 2014-12-22 삼성중공업 주식회사 Method predicting vertical position of underwater robot
KR20150088636A (en) * 2014-01-24 2015-08-03 한화테크윈 주식회사 Apparatus and method for estimating position
CN109613871A (en) * 2018-12-18 2019-04-12 有份儿智慧科技股份有限公司 Physical terminal type digital intelligent terminal in a kind of water
KR102604252B1 (en) * 2022-10-28 2023-11-17 포항공과대학교 산학협력단 A method for correcting position information of an underwater robot capable of 3D scanning of an object underwater
KR102652885B1 (en) * 2023-07-31 2024-04-02 주식회사 칼만 Control method of an underwater robot equipped with a multi-degree-of-freedom robot arm

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100809352B1 (en) * 2006-11-16 2008-03-05 삼성전자주식회사 Method and apparatus of pose estimation in a mobile robot based on particle filter

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101475020B1 (en) * 2013-06-14 2014-12-22 삼성중공업 주식회사 Method predicting vertical position of underwater robot
KR20150088636A (en) * 2014-01-24 2015-08-03 한화테크윈 주식회사 Apparatus and method for estimating position
CN109613871A (en) * 2018-12-18 2019-04-12 有份儿智慧科技股份有限公司 Physical terminal type digital intelligent terminal in a kind of water
KR102604252B1 (en) * 2022-10-28 2023-11-17 포항공과대학교 산학협력단 A method for correcting position information of an underwater robot capable of 3D scanning of an object underwater
KR102652885B1 (en) * 2023-07-31 2024-04-02 주식회사 칼만 Control method of an underwater robot equipped with a multi-degree-of-freedom robot arm

Also Published As

Publication number Publication date
KR101406176B1 (en) 2014-06-13

Similar Documents

Publication Publication Date Title
Palomeras et al. Autonomous exploration of complex underwater environments using a probabilistic next-best-view planner
CN103592854B (en) A kind of synchronization virtual deduction device of underwater unmanned vehicle observation mission
KR101406176B1 (en) Apparatus and Method for Estimating the Position of Underwater Robot
CN111338383B (en) GAAS-based autonomous flight method and system, and storage medium
JP6954717B2 (en) Positioning classifier creation method, position measurement method, external factor noise identification method, and positioning classifier creation system
CN109558694B (en) Hydrodynamic analysis method for grabbing motion process of underwater robot and manipulator system
KR101406175B1 (en) Apparatus and Method for Localization and Map Building of a Mobile Robot
Chin et al. Rapid modeling and control systems prototyping of a marine robotic vehicle with model uncertainties using xPC Target system
JP2016173686A (en) Information processing apparatus
Maurelli et al. A particle filter approach for AUV localization
CN114692520B (en) Multi-scene-oriented unmanned ship virtual simulation test platform and test method
Tan et al. Drag coefficient estimation model to simulate dynamic control of autonomous underwater vehicle (AUV) motion
Schwertfeger et al. Using a fiducial map metric for assessing map quality in the context of robocup rescue
Tuohy et al. Map based navigation for autonomous underwater vehicles
Eichhorn A new concept for an obstacle avoidance system for the AUV “SLOCUM Glider” operation under ice
Xanthidis et al. Towards multi-robot shipwreck mapping
Holven Control system for rov minerva 2
Xie et al. AUV dead-reckoning navigation based on neural network using a single accelerometer
Gao et al. Increased autonomy and situation awareness for rov operations
Peng et al. Environment mapping, map constructing, and path planning for underwater navigation of a low-cost µAUV in a cluttered nuclear storage pond
CN105890589A (en) Underwater robot monocular vision positioning method
CN117709000B (en) Unmanned underwater vehicle simulation method, unmanned underwater vehicle simulation device, computer equipment and medium
Uno et al. Deep Inertial Underwater Odometry System.
Jacobi et al. A tool chain for AUV system testing
CN113009491B (en) Horizontal suspension array real-time array shape estimation method based on auxiliary sensor

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180521

Year of fee payment: 5