Journal Search Engine
Search Advanced Search Adode Reader(link)
Download PDF Export Citaion korean bibliography PMC previewer translate in English
ISSN : 1975-6291(Print)
ISSN : 2287-3961(Online)
Journal of Korea Robotics Society Vol.11 No.2 pp.60-72
DOI : https://doi.org/10.7746/jkros.2016.11.2.060

Mobile Robots for the Concrete Crack Search and Sealing

Sung-Hun Jin1, Cheol-Joo Cho2, Kye-Young Lim†
1Robotics, Graduate School of energy, Korea Polytechnic University


2Electrical Engineering, Graduate School of energy, Korea Polytechnic University

Corresponding Author : Professor, Energy and Electrical Engineering, Korea Polytechnic University (kylim@kpu.ac.kr)
January 7, 2016 February 29, 2016 April 28, 2016

Abstract

This study proposes a multi-robot system, using multiple autonomous robots, to explore concrete structures and assist in their maintenance by sealing any cracks present in the structure. The proposed system employed a new self-localization method that is essential for autonomous robots, along with a visualization system to recognize the external environment and to detect and explore cracks efficiently. Moreover, more efficient crack search in an unknown environment became possible by arranging the robots into search areas divided depending on the surrounding situations. Operations with increased efficiency were also realized by overcoming the disadvantages of the infeasible logical behavioral model design with only six basic behavioral strategies based on distributed control-one of the methods to control swarm robots. Finally, this study investigated the efficiency of the proposed multi-robot system via basic sensor testing and simulation.


콘크리트 크랙 탐색 및 실링을 위한 다수의 자율주행로봇

진 성 훈1, 조 철 주2, 임 계 영†

초록


    1서 론

    콘크리트는 다른 재료에 비해 경제적이며 내구성이 좋아 구조물 재료로 가장 많이 사용되지만 외기에 그대 로 노출된 콘크리트 구조물은 심각한 손상을 초래할 수 있다. 특히 균열은 발생하면 장기적 요인으로 작용하여 콘크리트 구조물의 내구성이나 안전성에 큰 악영향을 미치며, 균열에 대한 유지관리가 소홀한 경우 대형사고 로 이어져 인명피해는 물론 사회적으로 큰 손실을 가져 올 수 있다. 따라서 콘크리트 구조물의 안전과 유지관리 는 사회적· 국가적 문제이며 그 중요성이 크게 증가하고 있어 학계에서는 다양한 연구가 진행중이다[1,2].

    대부분 유지보수 작업은 어렵고 위험하여 로봇이나 자동화 기계를 통하여 수행하는 것이 실용성과 효율성 을 높이는 방법이다[3]. 유지보수를 위한 초기 단계로 영 상 처리를 통해 균열에 대한 정보를 자동으로 획득하는 다양한 연구들이 진행되었고[4-6], 대형 콘크리트나 교량 과 같은 균열 검사는 접근이 어려울 뿐만 아니라 안전상 의 문제, 작업자의 주관적인 판단 등 여러 가지 어려움이 있어 자동화 및 로봇시스템을 통한 해결 방법이 필수적 이며 이를 위한 연구도 많이 진행되었다[7-8]. 균열에 관한 정보를 바탕으로 실링 자동화에 대한 연구는 90년대 초 반부터 진행되었는데 아스팔트 도로면의 균열을 자동으 로 실링하기 위해 카메라를 장착한 2축 로봇을 이용한 자동화 시스템이 개발되었고[9], 차량에 일체화된 직교로 봇을 이용하여 도로면의 균열을 실링하는 시스템도 개 발되었다[10]. 도로면 균열을 실링하는 자동화 시스템에 관한 연구뿐만 아니라 교량 하부에 고정되어 균열을 보 수하는 로봇도 개발되었다[3]. 하지만 이러한 로봇들은 대부분 한 대의 로봇을 통해 작업하는 단일 로봇시스템 에 해당하며, 광범위한 환경의 탐사나 수색 등에서는 기 존의 단일 로봇시스템보다 여러 대를 이용하는 군집 로 봇시스템이 보다 높은 효율성을 보인다. 일부 로봇의 고 장이 발생해도 남은 로봇들로 작업이 가능한 장점이 있 으며 개미, 꿀벌 등과 같은 동물의 집단행동으로부터 표 출되는 무리 지능을 이용함으로써 집단수준의 과업 처 리에는 매우 효율적이어서 이에 관한 연구가 활발히 진 행되고 있다[11-12]. 최근 들어 콘크리트 균열 탐색을 위해 이동로봇을 이용하는 연구가 진행되고 있고[13], 건설 현 장에서 이동로봇으로 멀티로봇을 구성하여 자재 운반과 청소를 가상의 문제로 접근하는 연구도 있었지만[14] 아 직은 콘크리트 유지보수와 관련하여 구체적인 문제 해 결을 위한 연구는 거의 없는 실정이다.

    따라서 본 논문에서는 콘크리트 구조물의 유지보수와 관련하여 콘크리트 슬래브나 바닥과 같은 넓은 공간에 존재하는 0.2 mm 이하의 크랙을 탐색하고, 콘크리트 표 면 처리공법 중 실링공법으로 조기 보수하는 방법에 대 하여 연구하였다. 이를 위해 여러 대의 로봇을 이용하는 멀티로봇 시스템으로 효율적인 작업이 가능하도록 Fig. 1과 같이 프로토타입의 소형 모바일 로봇을 제작하였으 며, 자율주행 로봇에게 필수적으로 요구되는 새로운 자 기 위치 추정 방법을 적용하였다. 또한 시각 시스템을 통해 외부 환경을 인식함은 물론 크랙 검출과 탐색을 하며 주변 상황에 따라 탐색영역을 분할하여 로봇을 배 치하는 영역분할 방법으로 미지환경에서 보다 효율적인 크랙 탐색이 되도록 하였다. 마지막으로 군집로봇의 제 어 방식 중 확장성, 유연성, 강건성을 가지는 분산제어 방식에 기초한 6가지 기본행동 전략만으로 논리적인 행 동 모델 설계가 불가능한 단점을 극복하는 방법을 제안 하였다.

    2절에서는 RF와 초음파 센서를 이용한 군집로봇의 새 로운 자기위치 추정 방법에 대하여 설명하며 2차원 공간 에서 로봇이 효율적으로 크랙을 탐색하고 실링하기 위 해 필수적인 비전 시스템에 대하여 설명한다. 또한 미지 의 환경에서 효율적인 탐색을 위해 주변 상황에 따라 탐색영역을 분할하여 로봇을 배치하는 방법에 대하여 설명한다. 3절에서는 2절에서 제안한 방법들을 이용하 여 로봇들을 제어하기 위한 6가지 기본행동전략에 대하 여 설명한다. 4절에서는 제안된 방법과 알고리즘에 대한 타당성을 기초실험과 시뮬레이션을 통해 검증하며 마지 막으로 5절에서 결론을 맺는다.

    2자기위치 추정 및 비전 시스템

    2.1위치 추정

    이동로봇에서 필수 기능에 해당하는 위치 추정은 측 정거리, 측정 방법, 위치 추출 등 세 가지 영역으로 나눌 수 있다. 거리측정을 위한 다양한 센서 중 초음파센서는 간단한 구동원리, 저렴한 비용, 센티미터 단위 정확성 등 다양한 장점이 있고, 초음파 센서 기반 위치인식 시스 템을 구성할 경우 동시에 많은 이동 노드를 추적할 수 있어 일반적으로 많이 사용된다[15]. 센서를 통해 거리를 측정하는 다양한 방법 중 일반적으로 많이 사용하는 TOA (Time of Arrival)는 전파가 송신 측에서 출발하여 수신 측에 도달할 때까지 시간을 측정한 후 전파의 속도 를 곱하여 거리를 측정한다[16]. 이 방법은 신호원과 수신 기가 정확히 동기되어야 하며 전파 속도가 느릴수록 정 확도가 올라가므로 RF (Radio Frequency) 보다는 초음 파가 많이 사용된다. 음파는 온도의 영향을 받으므로 온 도보상을 고려한 측정 거리는 다음과 같다.

    r = υ × t T o F [ m ] , υ = 331.5 × 0.6 T [ m / s ]
    (1)

    • r: 측정거리, υ: 음파 속도, T: 섭씨 온도

    일반적으로 초음파 거리 측정은 비행 거리에 따라 초 음파의 속도가 상대적으로 변하고 펄스가 트리거 된 후 실제 송출되기까지도 일정한 시간 지연이 발생되며 음 원에서 반사판까지 거리를 고려해야 하므로 식 (2)와 같 이 변형한다.

    r = υ × t T o F + E [ m ]
    (2)

    • E: 펄스지연오차 + 거리와 반사판 사용에 따른 오차

    오차 E는 거리에 따라 거의 선형성을 가지므로 여러 번 실험을 통해 데이터를 얻을 수 있다. 이렇게 측정된 거리정보를 이용하여 위치를 추정하는 방법들 또한 다양 한데 지금까지의 일반적인 방법은 비컨에 해당하는 초 음파 송신기들을 천정에 고정하고 수신기를 장착한 로봇 들이 비컨까지 거리를 측정하면 삼변측량법(Trilateration) 을 이용해 위치인식을 한다. 이러한 방법은 장소가 협소 하여 고정 비컨들을 설치할 수 없는 문제와 넓은 영역에 서의 설치비용 문제가 있고, 확장성에 제한적이며 여전 히 적지 않은 오차가 존재한다. 이러한 문제를 해결하기 위해 움직이는 로봇이 비컨이면서 동시에 필요한 위치 를 획득할 수 있도록 하는 위치인식 비컨 시스템[17]이 제안됐지만 작업 공간 내에서 상대적인 위치를 인식하 며 위치인식을 할 때는 비컨 로봇이 정지한 상태에서 가능했다.

    따라서 본 논문에서는 시계가 확보된 넓은 공간에서 영역확장에 따른 확장성이 용이하며 멈추지 않고 자율 주행 중에 위치를 인식하여 공간을 탐색하고 작업을 할 수 있도록 멀티로봇의 새로운 위치인식 시스템을 제안 한다. Fig. 2는 새로운 위치인식 시스템의 개념도이다. 이 시스템은 Fig. 3과 같은 초음파-비컨 장치와 RF를 이 용한 거리측정 시스템을 로봇에 장착하고, 측정 로봇과 비컨 로봇이 역할을 교대로 수행하면서 로봇이 자율 주 행 중에 자기위치 인식이 가능한 시스템이다. 초음파-비 컨 장치의 반사판은 일정한 지향각을 갖고 수직 방향으 로 방사된 초음파를 수평 방향으로 전파시켜 모든 로봇 이 동시에 거리측정이 가능하도록 하고, 반사각에 따른 거리 값의 변화[18]를 방지하며 정반사 되도록 Fig. 4와 같이 설계하였다.

    새로운 위치인식 시스템에서 위치 추정을 할 때 모든 로봇의 초기 위치값은 알고 있으며, 모든 로봇의 위치 는 공유 가능하다고 가정한다. 로봇의 위치 추정 방법 을 예를 들어 설명하면 먼저 1번 로봇이 비컨이 되어 Fig. 5의 신호체계에 따라 모든 로봇에게 RF 동기 신호 를 보낸 후 응답 신호를 받으면 초음파 신호를 송신한다. 1번 로봇을 제외한 다른 모든 로봇은 응답 신호를 보낸 후 초음파 신호를 대기하면서 시간을 카운터하여 1번 로봇과의 거리 값을 계산하여 저장한다. 다음은 2번 로 봇이 비컨이 되어 모든 로봇에게 동기 신호와 초음파 신호를 송신하며 나머지 로봇들은 2번 로봇과의 거리 값을 계산하여 저장한다. 이런 방법으로 n번 로봇까지 진행하고 이것을 다시 반복 순환한다. 이 과정에서 모든 로봇은 다른 로봇과의 거리 값을 최신 정보로 업데이트 하고, 다른 로봇과의 거리정보가 세 개( r 1 , r 2 , r 3 ) 이상이 면 위치( p 1 , p 2 , p 3 )는 알고 있으므로 삼변측량법을 적용 하여 자기위치 측정이 가능하다.

    여기서 자신을 제외한 모든 로봇은 비컨으로서의 역 할이 가능하지만 반드시 모두가 가능한 것은 아니다. 본 논문에서는 고정 비컨이 아니라 비컨들이 자율 주행하 는 로봇이므로 가령 비컨들과 측정 로봇이 일직선상에 있을 때 거리측정 오차를 고려하면 만나는 점이 형성되 지 않아 측정이 불가능하다. 따라서 Fig. 6θD가 식 (3), (4)를 만족하는 로봇들을 선택한다.

    조건 1:  | r 1 r 2 | < D < | r 1 + r 2 |
    (3)

    조건  2 :  θ > θ T
    (4)

    이렇게 측정된 위치들은 식 (5)과 같이 일반화된 식으 로 나타낼 수 있다.

    x i n = x ^ i n ( r 1 , r 2 , r 3 ) + Δ x
    (5)

    • x i n : n번 로봇의 i번째 위치 추정 값

    • x ^ i n : n번 로봇의 i번째 위치의 위치 측정 값

    여기서 Δx는 측정 오차이며 칼만 필터를 통해 측정에 러를 감소시킨다. 칼만 필터를 이용한 위치 보정 방법은 예측단계에서 추정된 위치정보, 오차 공분산, 로봇의 속 도정보를 이용하여 로봇위치와 오차 공분산을 예측하고 측정값과 예측값으로 로봇의 위치를 추정한다[19]. 멀티 로봇의 위치 추정을 위한 선형 모델과 상태변수는 식 (6)과 같다.

    x k + 1 = A x k + w k , z k = H x k + υ k x k = [ p x p ˙ x p y p ˙ y ] T z k = [ p x p y ]
    (6)

    • xk: 상태변수(위치, 속도), zk: 측정값(로봇의 위치)

    • A: 상태전이행렬,    H: 측정값과 상태변수 관계

    2.2비전 시스템

    로봇이 주어진 임무를 수행하기 위해 스스로 주위 환 경 정보를 획득하는 것은 필수적이며, 본 논문에서는 2 차원 평면에 존재하는 크랙을 탐색하고 실링하는 방법 에 관한 연구가 목적이므로 비전 센서를 통해 보다 효율 적인 크랙 탐색과 검출 및 실링을 하도록 한다.

    2.2.1시각 시스템 모델링

    시각 시스템을 통해 외부환경을 인식하기 위해서는 실 좌표 중 적어도 하나의 좌표 정보를 알아야 하며 본 논문에서는 2차원의 평면 바닥에 존재하는 크랙을 탐색 하는 문제이므로 z에 대한 정보는 알 수 있다. 따라서 Fig. 7과 같은 시각 시스템 모델링을 통해 수학적으로 계산이 가능하다[20]. 식 (7)은 실 좌표를 영상 좌표로 변 환하는 식이며, 본 논문에서는 탐색 된 영상 좌표를 통해 실세계 좌표가 필요하므로 식 (8)과 같이 변환한다.

    c h = P C R G w h
    (7)

    w h = ( P C R G ) 1 c h
    (8)

    • R: 원근 변환, R: 회전 변환,   C: 짐벌-영상 변환

    • ch: 영상 좌표, wh: 실세계 좌표, G: 기준-짐벌 변환

    변환 행렬 (PCRG)-1 을 구하는 방법은 모델 식을 통해 구할 수도 있지만 카메라 경사각이 고정되어 있어 실 좌표를 알고 있는 여러 점을 이용하는 카메라 보정 방법 을 사용하여 추정하도록 한다. 바닥에 존재하는 크랙의 Z값은 0이므로 식 (9)와 같이 동차 좌표형태로 나타내고, 변환행렬의 미지수를 결정하기 위해 식 (10)을 풀어 정 리하면 식 (11)을 얻을 수 있으며 정확한 정보를 위해 여러 번의 데이터 획득을 통해 변환 행렬을 결정하도록 한다.

    w h = [ k X k Y k ] , c h [ x y 1 ] , P C R G 1 = [ a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ]
    (9)

    a 31 x X + a 32 y X + a 33 X a 11 x a 12 y a 13 = 0 a 31 x Y + a 32 y Y + a 33 Y a 21 x a 22 y a 23 = 0
    (10)

    2.2.2크랙 검출

    콘크리트 균열 검출과 관련한 많은 연구들이 진행되 었지만 전체적인 흐름에서 알고리즘들은 큰 차이가 없 으므로 본 논문에서는 이동로봇의 실시간 처리에 주안 점을 두어 알고리즘을 적용하였다. 먼저 처리 속도를 고 려하여 컬러 영상을 흑백으로 변환하고, 배경과 크랙의 밝기값 대비를 강조하여 효과적으로 크랙을 검출하도록 식 (11)과 같이 모폴로지 기법을 적용하였다[19].

    h = f + ( f ( f ° b ) ) ( ( f · b ) f )
    (11)

    • °: Opening 연산,  ∙: Closing 연산

    • f: 입력영상,   b: 구조요소

    영상 전처리 후 배경과 물체를 분리하는 일반적인 방 법은 이진화 기법이며, 본 논문에서는 이들 중 Otsu방법 을 적용하였다[21]. 이진화 처리 후 영상은 크랙뿐만 아니 라 많은 노이즈를 포함하고 있다. 일반적으로 노이즈는 연결되어 있지 않고 산포하기 때문에 labeling 기법을 통해 이들을 제거할 수 있다. 미소 잡음 제거 후 남은 물체는 잘못 인식된 작은 물체와 실링이 완성된 크랙, 그리고 검출하고자 하는 크랙 등 세 가지 정도가 있을 수 있다. 본 논문에서는 찾고자 하는 크랙만 검출하기 위해 물체의 특징을 나타낼 수 있는 형상분석 방법 중 Packing density를 적용하여 최종 크랙을 검출하였다[8]. Fig. 8의 (a)는 가지 형상의 크랙으로 일부 실링작업이 완료된 영상이고 Fig. 8의 (b), (c)는 검출 알고리즘에 따라 실링작업이 완료된 크랙과 작업 전 크랙을 분리하 여 검출한 영상을 보여준다.

    2.3탐색영역 분할

    주어진 2차원 평면 공간에서 주변 상황에 따라 탐색 영역을 분할하여 로봇을 배치함으로써 효율적인 탐색 작업이 되도록 하며, 영역분할을 위해 영상처리 기법과 보로노이 테셀레이션 방법[22]을 적용한다.

    2.3.1탐색공간 정의

    탐색공간은 일반적으로 사용하는 격자형태의 2차원 평면으로 가정하며, 위치인식 시스템의 오차를 고려해 한 셀의 크기는 30×30 cm, 전체공간은 600×400 cm이다.

    2.3.2영역 분할

    여러 대의 로봇을 이용하여 미지의 환경을 탐색할 때 작업효율이 낮은 로봇들을 미 탐색영역으로 배치하여 널리 퍼진 상태로 탐색하면 전체 영역의 Coverage를 확 보함과 동시에 목표물 탐색의 가능성을 높일 수 있다.

    따라서 본 논문에서는 로봇의 탐색영역 할당을 위해 처음부터 영역을 분할하지 않고 자신과 주변 상황에 따 라 탐색영역을 분할한다. 격자 공간에서 하나의 셀은 영 상에서의 픽셀로 가정하고 픽셀의 강도를 탐색량 Q ( x , y ) 로 대체하면 식 (12)과 같은 일반적인 영상 함수는 식 (13)과 같이 나타낼 수 있어 영상처리 기법을 적용할 수 있다.

    f ( x , y ) = i ( x , y ) r ( x , y )
    (12)

    f ( x , y ) = Q ( x , y )
    (13)

    여기서 i ( x , y ) 는 물체에 투사된 광원의 양이며, r ( x , y ) 은 반사된 광원의 양이다. 영역 분할을 위해 이진화 방법 을 사용하며, 이때 임계값 설정은 식 (14)과 같이 탐색량 의 평균을 구해 임계치 T를 설정하고, 탐색량이 많은 곳과 적은 곳을 분리하는 이진화 영상 g ( x , y ) 를 계산한 다. 이진화 처리 후 서로 같은 지역으로 묶을 수 있는 연결 알고리즘인 레이블링을 수행하여 영역 분할을 완 성한다.

    T = f ( x , y ) N , g ( x , y ) = { 1 , if  f ( x , y ) > T 0 , if  f ( x , y ) T
    (14)

    2.3.3세부영역 분할

    로봇들이 작업을 시작한 초기에 영역 분할을 하는 경 우 Fig. 9의 (a)와 같이 미 탐색지역이 아주 크게 분할되 고, 이 지역을 한 대의 로봇이 이동하여 탐색을 하는 것 은 비효율적이므로 일정 크기 이상의 큰 영역이라면 다 시 세부영역으로 분할하는 것이 합리적이다. 영역 분할 은 기하학 등에서 많이 사용하는 보로노이 테셀레이션 알고리즘을 사용한다. 식 (15)는 보로노이 셀 V(pi) 를 정의한다.

    V ( p i ) = { x | d i s t ( x , p i ) < d i s t ( x , p j )     for j=0, 1,  , n and  j i }
    (15)

    보로노이 테셀레이션을 실행하기 위해 보로노이 셀 이라는 생성자가 필요하며 면적 중심점을 이용하여 찾 는다. 식 (16)에서 A는 분할하고자 하는 영역의 면적이 며, x ¯ , y ¯ 는 1차 면적 모멘트에 해당하는 면적의 중심점 이다.

    A = i = 1 n j = 1 m f ( i , j ) x ¯ i = 1 n j = 1 m j f ( i , j ) A , y ¯ = i = 1 n j = 1 m f ( i , j ) A
    (16)

    면적 중심이 구해지면 중심에서 얼마나 산포하는 가 를 나타내는 분산값을 구하고, 면적 중심에서 이 분산값 을 반지름으로 하는 원을 그린다. 이 원주 상에 분포하는 셀들의 수를 분할하려는 수로 나누고, 등 간격에 분포한 셀들이 찾고자 하는 생성자가 된다. 획득한 생성자를 중 심으로 보로노이 테셀레이션을 수행하여 Fig. 9의 (b)와 같이 세부 영역 분할을 완성한다. Fig. 10의 (a) ~ (d)는 세부영역 분할의 단계를 설명하며, 완성된 세부 영역들 의 면적 중심점들은 새로운 목표 지점으로 모든 로봇에 게 통신을 통해 공유한다. 세부영역 분할의 수는 최대 작업 로봇의 수와 같으며 최소 20픽셀 이상일 때 세부영 역 분할을 한다.

    3기본 행동전략과 실링작업

    2차원 평면공간에서 작업을 시작하는 멀티로봇은 기 본적으로 탐색모드와 실링모드 두 가지로 나뉘며, 탐색 모드에서 충돌회피, 주변 탐색, 근거리 탐색, 전역 탐색, 임의 탐색 등 다섯 가지 행동을 통해 크랙을 탐색하고 크랙이 탐색되면 실링모드로 전환한다. 실링모드에서는 주변 상황에 따라 실링작업유도 행동을 통해 다른 로봇 을 크랙으로 유도하며 2대의 로봇이 협동하여 효율적인 실링작업이 되도록 한다.

    3.1충돌 회피

    로봇이 충돌을 회피하는 것은 기본적인 능력에 해당 하며 효율적인 충돌회피에 관한 다양한 방법들이 있지 만 여전히 충돌 위험성 문제와 과도한 경로 회피 문제를 가지고 있다. 따라서 본 논문에서는 작업의 효율성을 고 려해 다음과 같은 방법을 사용한다. 우선 모든 로봇은 현 작업 상태에 따라 Table 1과 같이 가상의 질량 가중값 을 가진다. 두 로봇이 충돌회피 영역 안에 있는 경우 질 량 가중값이 큰 로봇은 식 (18)을 사용하여 속도만 감속 하고 방향은 유지한다. 반면 다른 로봇은 Borenstein과 Koren이 제안한 포텐셜 필드 알고리즘에 따라 식 (17)의 포텐셜 필드 함수에 의해 결정된 방향과 속도로 충돌을 회피하는 방식이다[23,24]. 실링하는 두 로봇이 마주 보고 충돌하는 경우는 가중값이 적은 로봇이 임의 방향으로 회피하고, 만약 가중값이 같을 때는 실링량이 많은 로봇 이 임의 방향으로 회피한다.

    F t o t ( q ) = F a t t ( q ) + F r e p ( q )
    (17)

    υ c i = { ( 1 e d i j ) υ 0 , if  w m i > w m j η F t o t ( q ) , o t h e r w i s e
    (18)

    식에서 w m i i번째 로봇의 질량 가중치를 나타내고, diji번째 로봇과 j번째 로봇과의 거리를 나타내며, υ0 는 처음 속도, υ c i i번째 로봇의 현재 속도를 의미한다. η는 포텐셜 함수에 의해 구해진 전체 힘의 가중치를 나 타내는 상수이다.

    3.2주변 탐색

    작업공간에 있는 로봇은 항시 임의의 셀 안에 존재 하므로 현 셀을 포함한 주변 8개 셀의 탐색량을 평가 하고, 탐색이 필요한 경우 현 셀의 중앙으로 이동하여 회전하면서 영상으로 크랙을 탐색한다. 탐색 윈도우 영 역 안의 탐색량을 누적 계산하기 위해 셀들은 작은 셀들 로 세부 분할되며 회전하는 동안 주변 셀들의 누적 탐색 량이 일정 값(1800) 이상이 되면 주변 탐색을 완료한다. 식 (19)은 k셀의 누적 계산식을 나타낸다.

    Q k ( x , y ) = Σ q k ( i , j )
    (19)

    3.3근거리 탐색

    작업 초기 처음 영역 분할은 전체 탐색공간의 영역 분할로 볼 수 있으며, 처음 분할된 지역으로 이동하여 탐색하는 로봇은 현 지역에서 탐색과 작업을 완료한 후 다른 지역으로 이동하는 것이 효율적이다. 따라서 다음 조건을 만족하는 경우 현 위치에서 가장 가깝고 미탐색 된 공간으로 이동하여 탐색을 하도록 한다.

    • 조건1: 주변 탐색을 완료한 경우

    • 조건2: 현 지역의 탐색률이 임계값 이하인 경우

    • 조건3: 목표점 주변 다른 로봇이 없는 경우

    3.4전역 탐색

    주변 상황에 따라 탐색량이 적거나 미탐색된 지역으 로 이동하여 탐색하는 것은 로봇들을 전체 작업 영역으 로 분산시켜 로봇들 간의 충돌을 예방하고 주어진 임무 를 빠른 시간에 완성할 수 있는 적절한 방법이다. 따라서 다음 조건을 만족하는 경우 2절에서 제안한 영역 분할 방법을 통해 전역목표 지점으로 이동하여 전역 탐색을 수행한다.

    • 조건1: 주변 탐색을 완료한 경우

    • 조건2: 근거리 탐색을 할 수 없는 경우

    • 조건3: 목표점 주변 다른 로봇이 없는 경우

    • 조건4: 평가함수 μk의 최대값이 0보다 큰 경우

    μ k = { c e - Σ Q k ( x , y ) d k if  c e - Σ Q k ( x , y ) d k T 0 , o t h e r w i s e
    (20)

    영역 분할 방법을 통해 찾은 전역목표 지점들은 상황 에 따라 다르지만 여러 목표 지점들이 주어진다. 이때 로봇들은 식 (20)과 같이 평가함수를 통해 가장 높은 값 을 가지는 지점으로 이동하는 것이 합당하다. μk는 전역 목표 지점 k셀의 평가값이고, Σ Q k ( x , y ) k셀 주변 8 개를 포함하는 탐색량이며, dk는 현 로봇에서 k셀까지 거리를 나타낸다. c는 평가함수를 조절하기 위한 상수이 다. T는 평가 함수의 임계값으로 조건 없이 이동하는 경우 목표점 도착 전에 다른 로봇이 같은 지역으로 이동 할 수 있어 이를 방지한다.

    3.5임의 탐색

    임의 탐색 동작은 작업 마무리 단계에서 기본 여섯 가지 동작 중 충돌 회피, 주변 탐색, 실링작업유도, 근거 리 탐색 그리고 전역 탐색이 선택되지 않을 때이며, 작업 초기에 임의 탐색은 거의 이루어지지 않는다.

    3.6실링작업 유도

    2절에서 제안한 비전 시스템에 의해 크랙을 발견하는 경우 두 번의 단계를 통해 크랙에 도달한다. 첫 번째는 탐색 윈도우 안에 존재하는 크랙의 중간점을 계산하고 그 지점으로 이동을 시작한다. 두 번째는 이동 중 크랙과 일정 거리에서 다시 크랙을 탐색하고, 만약 크랙의 끝점 이 발견될 경우 끝점으로 이동하고, 아니면 다시 크랙의 중간점을 다시 계산해 이동한다. 이때 끝점 혹은 중간점, 그리고 다른 점과의 기울기를 계산해 실링 방향도 알 수 있다. Fig. 11의 (a), (b)는 단계별 크랙 접근방법을 보여준다. 크랙의 끝점을 발견했을 때는 현 로봇이 즉시 실링을 시작하고, 끝점이 아닌 경우 협동 작업을 위해 주위 로봇들에게 크랙 발견을 통신으로 알리고 실링작 업을 유도한다. 이때 실링작업 중이고, 목표점으로 이동 중인 로봇을 제외한 모든 로봇 중 가장 가까이 있는 로봇 을 유도하며, 일정 시간 동안만 유도신호를 보내고 유도 되는 로봇이 없을 때는 협동 없이 실링작업을 시작한다. 실링작업 중 가지 형상의 크랙을 발견하는 경우도 실링 작업 유도를 하게 된다.

    3.7실링작업

    발견된 크랙에 도착하면 실링작업 윈도우로 전환하고, 크랙 탐색 단계에서 구한 실링 방향으로 회전하여 실링 작업 준비를 완료한다. 본 논문에서는 영상 시스템을 이 용하여 크랙을 정밀하게 추적하면서 동시에 실링작업 을 해야 하므로 탐색작업에서 사용한 탐색 윈도우를 실 링작업 윈도우로 변경할 필요가 있다. 따라서 실링 작업 윈도우의 시각 시스템 변환행렬은 실링작업 윈도우 영 역으로 한정한 데이터를 통해 다시 계산된다. Fig. 11의 실링작업 윈도우는 로봇의 중앙에서 전방 150 mm, 실링 건에서 75 mm 지점에 위치하며, 크기는 300×50 mm이 다. 새로운 변환행렬을 사용한 실세계 좌표 계산 오차는 평균 ±0.3 mm 이내로 매우 적고, 실제 실링한 라인의 두께는 30 mm 정도 폭을 가지므로 정확한 실링 작업을 위해 충분함을 알 수 있다.

    4실험 및 시뮬레이션 고찰

    본 논문은 콘크리트 슬래브나 바닥과 같은 넓은 공간 에 존재하는 0.2 mm 이하 크랙을 탐색하고, 콘크리트 표면 처리 공법 중 실링공법을 통해 조기 보수하는 방법 에 관한 연구가 목적이므로 미지의 환경에서 자율 주행 하는 로봇은 주어진 임무를 완수하기 위해 자기위치 인 식은 물론 주변 환경을 인식할 수 있어야 한다.

    따라서 본 논문의 실험을 위해 제작한 로봇에 장착된 자기위치 추정 시스템과 비전 시스템에 대한 기초 실험 결과에 대하여 먼저 논하고, 이를 바탕으로 전체 알고리 즘의 효용성을 컴퓨터 시뮬레이션을 통해 검증하고자 한다.

    4.1자기위치 추정 시스템

    로봇이 자율 주행하면서 스스로 자기위치를 인식하는 시스템은 Nordic사의 nRF24L01 RF 모듈과 하기소닉사 의 HG-M40DC 송/수진 겸용 초음파모듈을 사용하여 구 성 하였다. 정지한 상태에서 거리측정 실험은 평균 0.76 cm 오차를 보이며, 위치측정 실험은 평균 1.1 cm 오차를 보였다. 이동 중인 로봇의 위치 인식은 처음 로봇들의 위치는 안다고 가정하고, 기초 실험으로 획득한 데이터 를 바탕으로 거리측정 시 거리 오차를 감안한 오차 평균 (0.1 cm)과 표준편차(0.92 cm)로 정규 분포를 따르는 거 리 오차를 발생시키며, 180 ms 단위로 로봇의 진행 방향 을 랜덤으로 변화시켜 진행하도록 하는 시뮬레이션 환 경에서 MATLAB으로 구현하였다. 측정된 위치 오차 보 정을 위해 칼만 필터에 적용된 파라미터는 샘플링 시간 (20 ms)과 위치와 속도관계를 고려하여 A, H를 설정하 고, 잡음에 대한 공분산을 나타내는 Q, R은 센서 오차에 대한 정보를 바탕으로 식 (23)과 같이 적절한 값을 선정 하였다.

    A = [ 1 0.02 0 0 0 1 0 0 0 0 1 0.02 0 0 0 1 ] , Q = [ 0.3 0 0 0 0 0.1 0 0 0 0 0.3 0 0 0 0 0.1 ] H = [ 1 0 0 0 0 0 1 0 ] , R = [ 5 0 0 5 ]
    (23)

    Fig. 12와 Fig. 13은 총 7대 중 2대에 대한 위치 추정 오차와 그에 따른 궤적 오차를 나타내고 있으며, 7.5 cm/s의 이동 속도로 60초 동안 연속적으로 움직여 실험 한 결과이다. 전체적으로 최대 30 cm 이내의 오차로 크 게 발산하지 않고 위치 추정이 됨을 알 수 있으며, 이 오차를 고려하여 탐색 공간의 격자 셀 기준을 30 cm×30 cm로 하였다. 실제 적용되는 환경에서 로봇은 주변 탐색 을 하는 동안 제자리에서 회전만 하여 이동과 정지 상태 를 반복하고, 실링 작업에서는 현실성을 고려하여 현재 속도보다 1/3 정도로 감속하므로 센서 샘플링 타임은 이 보다 줄어 위치 오차는 더 줄 것으로 판단하며, 시각 시 스템의 탐색 윈도우가 로봇의 중앙에서 전방으로 550 mm, 좌우로 최대 500 mm의 범위를 가지므로 최대 30 cm 위치 추정 오차는 충분히 크랙을 검출할 수 있는 오 차임을 알 수 있다.

    4.2비전 시스템

    시각 시스템 모델링을 통해 주변 환경을 인식하기 위 해 Point Gray사의 FFMV-03M2M 카메라 모델과 초점 거리 3.5 mm 렌즈를 사용하였고, Fig. 11과 같이 탐색 윈도우가 형성되도록 하였다. 카메라는 45도 아래로 고 정되어 있으므로 카메라 캘리브레이션을 통해 영상 중 심좌표(315, 251)와 Scale factor Sx=0.005488 (mm/pix), Sy=0.006816 (mm/pix)을 구했다. 영상 좌표를 실 좌표 로 변환하는 변환 행렬은 탐색 윈도우에서 사용되는 TA 와 실링작업 윈도우에서 사용하는 TB을 구별하여 적용 하며 각각의 변환행렬은 다음과 같다.

    T A = [ 0.0044 0.118 0.4938 0.0025 0.2082 0.7662 0.00001372 0.0005766 0.0026 ] T B = [ 0.0001 0.000456 0.00256 0.32985 0.09567 0.49556 0.033003 0.21585 00.7631 ]

    Fig. 14의 (a)는 탐색 윈도우 위치 오차를 나타내는 것으로 x축 중앙에서 벗어날수록 위치 오차가 크게 나타 나는 것을 볼 수 있고, 오른쪽 250 mm 지점, 전방 600 mm 지점에서는 렌즈 왜곡에 의해 오차가 거의 50 mm까 지 크게 발생하는 것을 볼 수 있다. 따라서 탐색 윈도우 영역을 전방 550 mm에서 좌우 500 mm로 하였다. 그리 고 Fig. 14의 (b)는 실링작업 윈도우의 위치 오차를 나타 내며 중앙에서 벗어날수록 오차는 거의 변화가 없고, 평 균 0.3 mm 정도로 아주 정밀하게 측정 되었다.

    4.3탐색 및 실링 시뮬레이션

    멀티로봇 시스템을 이용하여 콘크리트 슬래브나 바닥 에 존재하는 크랙을 탐색하고 실링하는 방법에 대한 효 율성을 검증하기 위해 MATLAB을 사용하여 시뮬레이 션하였다. 사용된 로봇의 대수는 최대 7대이고 로봇의 탐색 속도는 7.5 cm/s이며, 실링 작업할 때 실링 속도는 2.5 cm/s이다. 로봇의 크기는 지름 10 cm이며 탐색 영역 안의 크랙 구성과 배치는 Fig. 15와 같이 두 가지 형태로 구성하여 실험하였다. 출발은 한 곳에서 하지만 매번 실 험을 반복할 때마다 출발 위치를 달리하여 다양한 환경 에서 실험한 효과를 얻을 수 있도록 하였다. Fig. 16은 작업 시작 후 주변 상황에 따라 충돌 회피 경로와 전역 탐색 경로 및 행동의 변화를 나타내는 것으로 시뮬레이 션에서 파란색은 충돌 상태를 나타내며, 분홍색은 전역 탐색의 상태를 나타낸다. ③번 로봇은 시작점 주변 셀들 이 모두 탐색되어 전역 탐색 경로로 이동 중 ①번 로봇과 충돌이 예상되어 제안하는 충돌 회피 방법으로 회피하 여 목표 지점으로 이동하는 것을 보여준다. 그리고 ④번 로봇은 주변 셀들의 상황에 따라 전역 목표 지점으로 이동하는 것을 보여준다. Fig. 17은 주변 탐색, 근거리 탐색, 실링작업유도 등의 경로와 행동의 변화를 나타낸 다. ①번 로봇은 실링 작업을 완료한 후 주변 탐색을 하 고 있으며 황색으로 현재 작업 상태를 나타내고 있다. 주변 탐색을 완료하면 현재 지역에서 가장 가까운 지역 으로 이동하여 근거리 탐색을 하며 파란색 실선으로 표 시된 지역으로 이동한다. ④번 로봇은 크랙에 도착한 다 음 주변 로봇들에게 실링유도 신호를 보내 협동 작업을 유도하였고, 주변 탐색을 하고 있던 ②번 로봇이 유도되 는 것을 확인할 수 있다. 유도되는 로봇은 빨간색으로 현재의 작업 상태를 나타내고 있다. ⑥번 로봇도 크랙에 도착하여 유도 신호를 보내고 있으며 일정 시간이 지나 고 유도되는 로봇이 없다면 협동 없이 실링 작업을 진행 하게 된다.

    크랙 탐색과 실링하는 방법에 대한 효율성 검증은 제안 하는 방법(Proposed Method)과 계획된 경로 탐색(Planned Path Method)의 두 방법을 비교 실험하여 진행하였으며, 계획된 경로 탐색은 탐색영역의 크기를 정확하게 안다 고 가정하고 일정한 간격으로 배치하여 미리 계획된 경 로로 탐색하는 방법이다. 모든 실험 결과는 총 20번 실험 한 평균값을 적용하였다. Fig. 18은 로봇 수량을 달리해 비교 실험한 결과이며, 로봇 수량이 적을수록 큰 차이를 보이며 최대 100초 이상 차이가 나는 것을 알 수 있다. Table 2는 Environment 2에서 실험한 결과를 표로 정리 한 것이며 Environment 1과 비슷한 실험 결과를 보인다.

    모든 경우의 실험에서 제안하는 방법은 로봇 수량과 환경의 변화에 거의 일정한 작업 시간의 변화를 나타내 고 있는 데 반해 PPM 방법은 환경에 따라 작업 시간의 변화가 불규칙적이며, 로봇 수량 증가에 따라 작업효율 이 좋아져야 하지만 Table 2의 PPM 방법에서 5대와 6대 의 작업시간 차이는 거의 없는 경우도 발생한다. 이것은 제안하는 방법이 전역 탐색을 통해 로봇을 분산된 상태 로 효율적으로 탐색하고 있음을 증명한다. 한편, 로봇 수량이 적을 때와 달리 수량이 점점 증가하면서 두 방법 의 작업시간 격차가 점점 줄어드는 것은 제한된 영역에 서 일정 수 이상의 로봇이 투입되면 계획된 경로 탐색과 비교하여 상대적으로 분산효과가 크지 않아 나타나는 현상으로 판단된다. 하지만 실제 현장에 적용할 경우 탐 색 공간에 대한 정확한 정보를 알 수 없을 뿐만 아니라 미리 계획된 경로로 적용할 수 없는 경우가 훨씬 많으므 로 제안하는 방법을 적용하는 것이 현실적이며 효율적 이라고 판단된다.

    5결 론

    본 논문은 콘크리트 구조물의 안전성에 큰 영향을 미 치는 크랙을 효율적으로 탐색하고 실링하는 방법에 대 하여 연구하였다. 2차원 평면과 같은 넓은 지역에서 탐 색과 동시에 실링작업을 수행하기 위해 멀티로봇 시스 템을 적용하였고, 카메라를 통해 크랙 탐색과 검출 및 주변 환경을 인식하였으며, 자율주행 로봇에 필수적으 로 요구되는 자기위치 추정에 대한 새로운 방법을 제안 하였다. 마지막으로 군집로봇의 제어방식 중 분산제어 방식에 기초한 6가지 기본행동전략을 통해 효율적인 탐 색과 실링작업이 가능함을 기초 실험과 시뮬레이션을 통해 검증하였다. 추후에는 개발된 프로토 타입의 로봇 을 통해 제안한 방법들이 실제 적용 가능함을 연구할 계획이다.

    Figure

    JKROS-11-60_F1.gif

    Mobile robot prototype

    JKROS-11-60_F2.gif

    Localization system outline

    JKROS-11-60_F3.gif

    Ultrasonic-Beacon system

    JKROS-11-60_F4.gif

    Ultrasonic reflector

    JKROS-11-60_F5.gif

    Signal rule of localization system

    JKROS-11-60_F6.gif

    Requirement for application of trilateration

    JKROS-11-60_F7.gif

    Vision system modeling

    JKROS-11-60_F8.gif

    Crack detection

    JKROS-11-60_F9.gif

    Area saeparation for searching

    JKROS-11-60_F10.gif

    Area separation in detail

    JKROS-11-60_F11.gif

    Crack approach method

    JKROS-11-60_F12.gif

    Position estimation error

    JKROS-11-60_F13.gif

    Moving trace error of mobile robot

    JKROS-11-60_F14.gif

    Localization error of vision system

    JKROS-11-60_F15.gif

    Sample of environment

    JKROS-11-60_F16.gif

    Change of path and behavior depending on the circumstances (collision avoidance, global search)

    JKROS-11-60_F17.gif

    Change of path and behavior depending on the circumstances (neighbor, nearest search, attraction behavior)

    JKROS-11-60_F18.gif

    Result of simulation (Environment 1, N=4, 5, 6, 7)

    Table

    Weight Value depending on Working State

    Simulation results comparison (Environment 2)

    Reference

    1. Park JI , Bae SH , Yu JW , LEE KM (2010) “Factors Influencing the Service Life of Concrete Structures” , The Transactions of the Korea Concrete Institute, ; pp.21-22
    2. Lee JY , Cho BY , Kim YK , Oh SK (2005) “An Experimental Study about Characteristics of Penetracting Surface Protection” , The Transactions of the Korea Institute of Building Construction, Vol.5 ; pp.93-96
    3. Lim KY , Lee WW , Kim KT , Choi CJ (2008) “A concrete Repair Robot Under the Upper Plate of Bridge” , ICASS, ; pp.488-491
    4. Ito A , Aoki Y , Hashimoto S (2002) “Accurate Extraction and Measurement of Fine Cracks from Concrete Block Surface Image” , IEEE Industrial Electronics Society, Vol.3 ; pp.2202-2207
    5. Lee BY , Kim YY , Kim JK (2005) “Development of Image Processing for Concrete Surface Cracks by Employing Enhanced Binarization and Shape Analysis Technique” , journal of the Korea Concrete Institute, Vol.17 (3) ; pp.361-368
    6. Fujita Y , Mitani Y , Hamamoto Y (2006) “A Method for Crack Detection on a Concrete Structure” , ICPR ‘06, ; pp.901-904
    7. Oh JK , Choi YJ , Yi BJ , Yang HW , Lee JH , Moon YS (2008) “Robotic System for Searching Cracks beneath Bridge” , The 5th International Conference on URAI,
    8. Mohammad Salman , Vaidehi Baporikar (2015) “Autonomous Robot for Crack Detection and Mapping for Bridge Surface” , IRCCE, Vol.3 (7)
    9. Haas C , Hendrickson C , MeNeil S , Bullock D “A field prototype of a robotic pavement crack sealing system” , Proc. of 9th Int. Symp. Automation and Robotics in const, ISARC, ; pp.313-322
    10. Kim YS “Development and application of an automatic crack and joint sealing system” , J. of the Korean Society of Civil Engineers KSCE, Vol.2 (4) ; pp.407-417
    11. John A Sauter , Robert Matthews H , Van Dyke Parunak , Sven A Brueckner “Performance of Digital Pheromones for Swarming Vehicle Control” , AAMAS 05,
    12. Erik Kuiper , Simin Nadjm-Tehrani (2006) “Mobility Models for UAV Group Reconnaissance Applications” , IEEE,
    13. Yu SN , Jang JH , Han CS (2004) “Auto Inspection System using a Mobile Robot for Detecting Concrete Cracks in a Tunnel” , Automation in Construction, Vol.16 ; pp.718-725
    14. Kwok NM , Ha QP , Fang G (2007) “Motion Coordination for Construction Vehicles using Swarm Intelligence” , International J. of Advanced Robotic System, Vol.4 (4) ; pp.469-476
    15. Hakan Koyuncu , Shuang Hua Yang (2010) “A Survey of Indoor Positioning and Object Localization Systems” , International Journal of Computer Science and Network Security, Vol.10 (5)
    16. Nissanka B Priyantha , Anit Chakraborty , Hari Balakrishnan (2000) “The Crecket Location-Support system” , 6th ACM International Conference on Mobile Computing and Networking, ; pp.32-43
    17. Luis E Navarro-Serment , Christiaan J J Paredis , Pradeep K Khosla (1999) “A Beacon System for the Localization of Distributed Robotic Teams” , In Proceedings of the International Conference on Field and Service Robotics,
    18. Heo YR , Yun JH , Ryeom JD (2013) “Location Measurment method Depending on Reflection Characteristics of Ultrasonic Sensors for The Flat LED Lamp” , JIEIE, Vol.27 (12) ; pp.38-43
    19. Roumeliotis SI , Bekey GA (1997) “An extended Kalman filter for frequent local and infrequent global sensor data fusion” , Proc of the Sensor Fusion and Decentralized Control in Autonomous Robotic Systems(SPIE), ; pp.11-22
    20. Gonzalez RC , Woods RE (1992) “Digital Image Processing”, Addison Wesley,
    21. Otsu NA (1979) “Threshold Selection Method from Gray-Level Histogram” , IEEE Transactions on Systems Man and Cybernetics, Vol.SMC-9 (1) ; pp.62-66
    22. Wang G , Cao G , Porta TL (2004) “Movement-assisted Sensor Deployment” , IEEE INFOCOM 2004, Vol.4 ; pp.2469-2479
    23. Daily R , Bevly DM (2008) “Harmonic Potential field Path Planning for High Speed Vehicles” , American Control Conference, ; pp.4609-4614
    24. Khatib O (1990) “Real-time Obstacle Avoidance for Manipulators and Mobile Robots” , 1985 IEEE International Conference on Robotics and Automation, ; pp.500-505

    저자소개

    • 진 성 훈 (Sung-Hun Jin)
    • 1996 충남대학교 기술교육학과(공학사)
    • 2002 인하대학교 자동화공학과(공학석사)
    • 2008 ~ 현재 한국산업기술대학교 지식기반 에너지대학원로봇공학전공 박사과정
    • 관심분야: 군집로봇, 지능로봇제어, 퍼지제어

    • 조 철 주 (Cheol-Joo Cho)
    • 2004 한국산업기술대학교 전자공학과(공학사)
    • 2010 한국산업기술대학교 전기공학(공학석사)
    • 2010 ~ 현재 한국산업기술대학교 지식기반 에너지대학원전기공학전공 박사과정
    • 관심분야: 군집로봇, 지능로봇제어, 적응제어

    • 임 계 영 (Kye-Young Lim)
    • 1975 서울대학교 전기공학과(공학사)
    • 1983 미)뉴욕주립대 전기공학(공학석사)
    • 1985 미)뉴욕주립대 전기공학(공학박사)
    • 2006 ~ 현재 한국산업기술대학교 전기공학과 교수
    • 관심분야: 적응제어, 산업용 제어 시스템
    오늘하루 팝업창 안보기 닫기