Paper Review

Automatic Docking and Charging of Mobile Robot Based on Laser Measurement

TM 2021. 11. 1. 14:43

Automatic Docking and Charging of Mobile Robot Based on Laser Measurement

 

Xiaofan Zhang1,2 ,Xiuzhi Li1,2 ,Xiangyin Zhang1,2

Abstrat

본 논문은 서비스 로봇의 자율 자동 충전 및 도킹 성능을 향상하기 위해 라이다 센서 기반 자동 도킹 아키텍처를 제안한다. 첫 번째로 레이저 센서 기반으로 도킹스테이션의 특징을 식별하는 방법이 제안된다. 그런 다음 레이저 스캔 데이터 정보와 로봇 주행기록계 정보를 결합하여 로봇의 위치 추정을 수행한다. 위치 측정을 수행한 후에 로봇과 도킹스테이션 간의 상대적 좌표 관계를 결정한다. 여기서 상대적 좌표 관계란 로봇으로부터 현재 도킹스테이션의 위치를 의미한다. 마지막으로, 도킹스테이션에 대한 로봇의 각도 편차와 거리 편차에 따라 두 가지 상태로 나누고 현재 로봇의 상태에 대한 제어 법칙을 설계한 안정화된 로봇 제어 방법이 제안된다. 이 방법은 로봇이 도킹스테이션을 효율적이고 정확하게 도킹 할 수 있도록 로봇을 구동시킨다.

 

Introduction

경제의 지속적인 발전과 사회에서의 노동력 부족에 따라, 식당, 호텔, 은행과 같은 서비스 지향적인 장소에서의 로봇 적용은 더욱 확산되었다[1~3]. 자율 충전 능력은 로봇의 활동 범위 확대 및 로봇의 자율주행 서비스 시간 연장에 필수적이며 로봇 커뮤니티에서 화제가 되었다. 이 논문에서의 초점은 서비스 로봇을 제어하여 도킹스테이션을 식별하고 도킹 및 충전 작업을 완료하는 것을 목표로 한다. 섹션 2에서는 로봇 인식 및 도킹 충전 더미의 전반적인 간략한 프레임워크를 설명한다. 섹션 3은 레이저 센서를 기반으로 도킹스테이션 인식 알고리즘을 구성했다. 섹션 4 상태 안정화 컨트롤러를 기반으로 한 도킹 프로세스를 소개한다. 마지막으로, 섹션 5는 논문의 결론을 말한다.

 

FRAMEWORK 

본 연구에서는 라이다 센서 기반의 정보를 사용한 wheeled robot을 제어할 것을 제안한다. 이전 연구에서 SLAM 기법에 의해 생성된 실내 지도를 target driven navigation으로 사용할 수 있기 때문에 도킹스테이션이 본 실험에서 레이더 검출 범위 내에 있다고 가정한다. 전체적인 프레임워크는 아래와 같다.

 

 

처음에 수집된 레이저 데이터 정보를 바탕으로 직선 segmentation 절차를 진행한다. 그리고 생성된 직선 중 도킹스테이션의 특징 즉, 첫째, 도킹스테이션의 길이 둘째, 도킹스테이션의 두께 셋째, 도킹스테이션과 벽 사이의 평행 관계에 기초하여 어떤 직선이 위 세 가지 조건에 만족한다면 그 직선을 도킹스테이션으로 결정하고 계산하기 위한 인식 접근 방법이 개발된다. 파티클 필터를 사용하여 더 정확한 로봇의 현재 자세와 도킹스테이션으로 부터 각도 편차와 거리 편차를 결정한다. 마지막으로 도킹스테이션에서 현재 로봇의 위치 각도 편차와 거리 편차를 사용한 다중 상태 위치 안정화 모션 컨트롤 사용한다.

 

DOCKING STATION FEATURE RECOGNITION BASED ON LASER SENSOR 

1. Lidar Data information Processing

 

데이터 정보 처리의 목적은 라이다 센서를 통해 수집된 Raw data에서 선분 세그먼트 특징을 추출하는 것이다. 라이다 센서가 직접 측정한 데이터는 레이저 포인트의 거리정보이기 때문에 각도 정보를 계산 할 수 있다. 무엇보다 데이터를 추가적으로 처리하기 전에 극좌표를 데카르트 좌표로 변환해야 한다. 본 연구에서 사용한 라이다 UST-10LX의 데이터 시트 정보에 따르면 270° 범위에서 수집된 데이터 포인트의 수는 1080개이며, 데이터 포인트에 해당하는 극좌표계의 각도를 계산할 수 있다. i번째 데이터의 𝜃𝑖 각도 계산식은 아래 방정식(1)로 얻을 수 있다. 방정식을 풀어 보면 1080개의 데이터를 360도에 나눠 약 0.333도마다 데이터 1개를 얻을 수 있는데 레이저가 첫 시작점이 그림 2 각 좌표계에서 바라보면 –45도에서 시작하기 때문에 –45도를 빼주며 degree to radian을 하여 라디안 값을 가지는 레이저 각도를 얻을 수 있다. 또한, 데이터들의 좌표를 알아야 하는 추가 처리 작업을 위해서는 극좌표를 데카르트 좌표로 변환해야 한다. 극좌표를 데카르트 좌표로 변환하는 식은 아래 그림 2와 같다. 라이다의 회전 방향은 그림과 같이 반시계 방향이며 270도 범위에서 회전을 한다.

 

 

 

2. Docking Station Feature Recognition 

 

 

이전 실험 [9]에서 레이저 포인트들의 inlier 즉, 적절한 직선을 찾기 위해 일정한 간격을 갖는 레이저 포인트들의 집단을 만들고 각각의 집단에 최소자승법을 사용하여 그 집단들의 중심을 지나는 직선 세그먼트 작업을 이루어냈다. 이 실험에서도 위 방법과 동일하게 총 3가지의 직선을 세그먼트 하는데 평평한 도킹스테이션 l1 그리고 좌우 벽에 대해 l2, l3을 만들어 (위 그림3 참고) 이 3개의 직선을 바탕으로 도킹스테이션에 대한 특징을 추출해내었다. 

 

먼저 첫 번째로 논문에 기재된 방정식 4, 5에 의해 각 세그먼트 된 직선들의 중심에서 로봇의 위치까지의 직선 d, d1, d2을 만들고 각각의 직선의 정규벡터 θ를 구하는데 이때 적절한 threshold로 “3도 이내에 들어와야 서로 평행한 적절한 직선들이다”라고 판별을 한다.

 

 

두 번째 방법으로는 세그먼트 된 라인들로 가운데 있는 직선과 좌우에 있는 직선의 두께가 0.2m이고 기존에 구한 직선 d, d1, d2를 논문에 기재된 방정식 6, 7에 의해 두께 차이를 구한다. 이때 적절한 threshold로 “0.03m 이내에 들어와야 적절한 라인이다”라고 판별을 한다.

 

 

마지막으로 실제 도킹스테이션의 길이는 0.43m로 가운데 직선 세그먼트의 길이를 측정하여 실제 길이와의 차이가 “0.03m 이내에 들어와야 적절한 라인이다”라고 판별을 한다.

 

 

위 세 가지 기준의 특징은 실제 다양한 직선들 중에 도킹스테이션 직선을 찾을 때 강력한 차별성을 제공한다. 아래 그림은 ROS에서 제공하는 3D 시각화 인터페이스를 사용하여 나타낸 그림이다. 이 그림에서 레이저가 수집한 데이터들을 바탕으로 기하학적인 직선 세그먼트 작업이 끝난 결과이다. 그리고 초록색 점은 추출된 도킹스테이션의 중간점 좌표이며, 실험 결과에서 도킹스테이션 인식 알고리즘이 정확하게 식별하였음을 알 수 있었다.

 

 

MOBILE ROBOT DOCKING CONTROL 

1. Design of Stabilizing Controller in Stages 

 

도킹 프로세스에서 단계별 상태 컨트롤러가 두 개 도입된다. 상태 컨트롤러는 도킹스테이션의 각도 편차와 거리 편차에 따라 서로 구분되는데 이를 rotation controller, position tracking controller로 구분 짓는다. 컨트롤러를 두 개로 나눈 이유는 실험에 사용된 로봇이 two wheeled 기반의 서비스 로봇이기 때문에 컨트롤러가 두 개로 나눠진 이유이다. 현재 로봇의 상태에 따라 컨트롤러를 선택하도록 설계되어 서비스 로봇의 모션 제어 효율성을 개선하고 도킹 시간을 절약할 수 있다. 

 

먼저 rotation controller 방정식(11)은 𝑑𝜃를 0에 가깝게 만들어준다. 여기서 𝑑𝜃 는 도킹스테이션으로 부터 현재 로봇의 회전각도 에러를 의미한다. 회전각도 에러란 도킹 스테이션으로부터 현재 로봇이 얼마나 벌어져있는가를 의미한다. 아래 방정식에서 v는 robot의 linear velocity를 의미하고, 𝑘𝜔 는 gain 값인데 0 이상의 값을 넣어주어야 하며 본 연구 실험 결과에서는 0.3~0.5 사이의 값을 집어넣었다. 

 

 

아래 그림7에서 t0에서 현재 도킹스테이션과 로봇의 회전각도 에러를 계산한 다음 에러를 0에 수렴하게 rotation velocity만 주고 0에 수렴하였으면 t1처럼 더 이상의 회전을 멈춘다.

 

 

그 다음 rotation matrix 방정식(12)은 현재 world coordinate 로봇의 위치에서 부터 현재 world coordinate 도킹스테이션의 위치를 회전 행렬에 곱해줘서 도킹스테이션의 상대적인 위치인 position error를 구한다. 그리고 position tracking control 방정식(13)는 현재 position에서 도킹스테이션까지 40cm 떨어진 위치까지의 𝑑𝑑를 0으로 수렴시킨다. 

 

 

아래 position tracking control 방정식 (13)에서 kv  gain 값인데 0 이상의 값을 넣어주어야 하며 본 연구 실험 결과에서는 4.0 값을 집어넣었다. 위 그림 7에서 t2부터 t3, t4까지는 rotation controller 방정식과 position tracking control 방정식 두 개를 적절히 사용하면 위와 같이 이동하는 것을 볼 수 있다. t4에서 𝑑𝑑를 0으로 수렴시켰으면 로봇의 충전단자가 로봇 후면에 위치해서 제자리 회전 180도를 시킨 후 도킹스테이션을 향해 후진한다.

 

 

2.  Stabilization Control Simulation Experiment in Stages 

 

이 논문은 단계별 컨트롤러의 효과를 검증하기 위해 MATLAB을 사용하여 수치 시뮬레이션 실험을 수행한다. 서비스 로봇의 시작점이 (−3.0m, −0.8m, − 𝜋⁄4 𝑟𝑎𝑑)이고, target 위치가 (−1.0𝑚, 0𝑚, −𝜋𝑟𝑎𝑑)이다. 첫 stage에서 순수하게 회전만 하는 pure rotation parameter 𝑘𝑤 = 3.0 이고, 𝑑𝜃 ≤ 0.04𝑟𝑎𝑑 일 때 첫 state control은 멈춘다. 그다음 stage에서는 𝑘𝑣 = 4.0 이고, 𝑑𝑑 ≤ 0.03𝑚일 때 state control은 멈춘다. 이렇게 첫 번째 두 번째 stage를 반복하다 보면 로봇이 도킹스테이션에 접촉한 후 전체 도킹 프로세스가 종료된다.

 

 

실제 로봇이 각 control stage를 거치면서 자세 조정(x, y, th)이 큰 오류 없이 잘 수렴하고 있음을 그림 9를 통해 알 수 있었다. 그리고 그림 10에서 해당 각도 또는 거리 조정이 이루어지고 난 후 거리(𝑑𝑑)와 각도(𝑑𝜃) 오류 값이 이전에 설정한 임계값(gain) (𝑑𝜃 ≤ 0.04𝑟𝑎𝑑, 𝑑𝑑 ≤ 0.03𝑚) 에 가깝다는 것을 알 수 있었다. 

 

EXPERIMENTAL RESULTS 

본 실험에서는 실험실에서 자체 개발한 모바일 로봇 플랫폼을 사용하여 진행하였다. 레이저 센서 기반 도킹스테이션 인식 알고리즘과 로봇 모션 컨트롤 방법은 효과적이었다. 아래 표 2는 다양한 위치에서 실험 결과에 대한 결과지 표지이며, 이 결과지는 첫 Initial postion에서부터 End position에 도착했을 때의 robot의 position 편차를 측정한 값이다. 최대 y축 에러는 2cm보다 낮게 나왔고 angle 에러는 3도 이내의 값을 볼 수 있었다.

 

CONCLUSIONS 

본 논문에서는 로봇 다양한 환경에서의 확장성을 위해 로봇 재충전을 위한 도킹스테이션 식별에 초점을 두고 있으며, ROS 프레임워크를 통하여 실시간 및 높은 효율성을 제공한다. 그리고 복잡한 환경에서 도킹스테이션과 모바일 로봇 사이의 좌표 관계를 정확하게 얻기 위해 레이저 센서 기반으로 도킹 스테이션의 특성을 식별하기 위한 도킹스테이션 인식 알고리즘이 제안된다. 로봇은 도킹스테이션에 도킹할 때 단계적으로 안정화 제어 방식으로 사용되며, 마지막으로 다양한 시작 위치에서 도킹 실험 결과에 따라 단계별 안정화 제어 방식에 따라 도킹스테이션과의 도킹을 정확하게 할 수 있다.

 

REFERENCE

[1] Sun Y, Guan L, Chang Z, et al. Design of a Low-Cost Indoor Navigation System for Food Delivery Robot Based on Multi- Sensor Information Fusion[J]. Sensors, 2019, 19(22): 4980. 

[2] Lin R, Huang H, Li M. An automated guided logistics robot for pallet transportation[J]. Assembly Automation, 2020. 

[3] Fan Z, Chen W, Zhu G, et al. Collaborative Robot Transport System Based on Edge Computing[C]//2019 IEEE 9th Annual International Conference on CYBER Technology in Automation, Control, and Intelligent Systems (CYBER). IEEE, 2019: 1320- 1326. 

[4] W. Grey Walter, “The Living Brain,” W. W. Norton, New York, 1953. 

1. Automatic Docking and Recharging System forAutonomous Security Robot

[5] Luo R C, Liao C T, Su K L, et al. Automatic docking and recharging system for autonomous security robot[C]//2005 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2005: 2953-2958. 

[6] Wu Y C, Teng M C, Tsai Y J. Robot docking station for automatic battery exchanging and charging[C]//2008 IEEE International Conference on Robotics and Biomimetics. IEEE, 2009: 1043-1046. 

[7] Xiang L, Ren Z, Ni M, et al. Robust graph SLAM in dynamic environments with moving landmarks[C]//2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2015: 2543-2549. 

[8] Yuta S, Hada Y. Long term activity of the autonomous robot- Proposal of a bench-mark problem for the autonomy[C]//Proceedings. 1998 IEEE/RSJ International Conference on Intelligent Robots and Systems. Innovations in Theory, Practice and Applications (Cat. No. 98CH36190). IEEE, 1998, 3: 1871-1878. 

[9]  Jia S, Yang H, Li X, et al. LRF-based data processing algorithm for map building of mobile robot[C]//The 2010 IEEE International Conference on Information and Automation. IEEE, 2010: 1924- 1929.