로봇팔을 지닌 물류용 자율주행 전기차 플랫폼 개발
CopyrightⓒKROS
Abstract
In this paper, the development of an autonomous electric vehicle for logistics with a robotic arm is introduced. The manual driving electric vehicle was converted into an electric vehicle platform capable of autonomous driving. For autonomous driving, an encoder is installed on the driving wheels, and an electronic power steering system is applied for automatic steering. The electric vehicle is equipped with a lidar sensor, a depth camera, and an ultrasonic sensor to recognize the surrounding environment, create a map, and recognize the vehicle location. The odometry was calculated using the bicycle motion model, and the map was created using the SLAM algorithm. To estimate the location of the platform based on the generated map, AMCL algorithm using Lidar was applied. A user interface was developed to create and modify a waypoint in order to move a predetermined place according to the logistics process. An A-star-based global path was generated to move to the destination, and a DWA-based local path was generated to trace the global path. The autonomous electric vehicle developed in this paper was tested and its utility was verified in a warehouse.
Keywords:
Autonomous Driving, Unmanned Vehicle, Logistic Robot, Navigation, Robotic Arm1. 서 론
전자상거래 및 모바일 시장의 확대는 기존 물류의 수요를 기업에서 개인으로 이동시키며 기하급수적으로 증가시키고 있다. 특히, COVID-19가 전 세계적으로 유행하기 시작한 2020년 1월 이후 사회 구성원의 생활 패턴의 급변으로 인해 비접촉 구매에 대한 수요가 증가하였다. 대표적인 생활물류로 분류되는 택배화물은 2020년 기준 전년대비 21.1%가 상승하였으며 2021년은 전년대비 9.6% 증가하여 높은 수요가 발생하고 있음을 알 수 있다[1]. 특히, 익일배송, 새벽배송 등 빠른 배송을 지향하는 서비스가 증가함에 따라 물류 시스템의 자동화를 통한 효율성 향상에 대한 요구가 확대되고 있다. 국내의 경우 컨베이어 시스템이 적용된 영역에서의 물류 이송 및 분류 등의 자동화가 이루어져 있으나 이외의 공간에서는 제한적인 기능을 갖는다. 특히, 물류를 보관하는 창고 간 이동, 특정 위치에 설치된 로봇팔 등을 활용하는 경우 유연한 대응이 어려운 단점을 지닌다. 이에, 물류 자동화 시스템이 구축되지 않은 창고 간 물류 이송이나 물류의 상하역을 위한 로봇 시스템이 필요한 실정이다.
최근 다양한 분야에서 활용되고 있는 자율주행 물류 이송로봇의 경우 주행방식에 따라 AGV (Automatic Guided Vehicle)와 AMR (Autonomous Mobile Robot)로 구분된다[2]. AGV는 지상에 설치되거나 혹은 지하에 매립된 마그네틱 가이드라인이나 마커를 통해 주행하는 방식으로 시스템이 정해진 경로로만 이동할 수 있는 제약조건으로 인해 사용성에 한계가 있다. 이러한 단점을 극복하기 위해 최근 개발되고 있는 자율주행 플랫폼의 형태는 다양한 센서를 통해 환경을 인식하고 자신의 위치와 진행 경로를 판단하는 AMR 방식이 주로 사용되고 있다. AMR 방식의 자율주행 플랫폼의 경우 환경인식을 위해 카메라, Lidar, 초음파, 오도메터 등의 센서가 사용된다[3,4].
이에, 본 연구에서는 물류 산업 전반에 수요가 발생하고 있는 창고 간 물류 이송과 물류의 상하역의 자동화를 위해 고하중 6축 로봇 팔을 전기차 플랫폼에 적용하고 기존의 소형 전기차 플랫폼에 자율주행을 위한 센서 시스템을 적용함으로써 필요시 사용자가 직접 운전을 할 수도 있으며, 자율 주행을 통해 물류 이송을 및 상하역을 할 수 있는 로봇팔이 장착된 물류용 실내외 자율주행이 가능한 전기차 플랫폼을 개발하였다. 이러한 플랫폼은 친환경적인 운송 수단으로 기존의 모바일 매니퓰레이터보다 더 큰 하중을 이송할 수 있으며, 실내외를 자유롭게 이동 가능한 자율주행 시스템이다. 2장에서는 개발된 물류용 자율주행 전기차 플랫폼에 대해서 소개하고, 3장에서는 자율주행을 위해 개발된 기술에 대해서 설명하며, 4장에서는 개발된 플랫폼을 이용하여 실험한 결과를 보여준다.
2. 물류용 자율주행 전기차 플랫폼
2.1 자율주행 플랫폼 시스템 구성
물류의 상하차 및 창고 간 실내외 자율주행을 위한 로봇팔을 지닌 물류용 자율주행 전기차 플랫폼은 기존 개발된 전기차 플랫폼을 바탕으로 자율주행을 위한 센서 시스템과 로봇팔을 적용하여 개발하였다. 본 연구에 적용된 상용 전기차 플랫폼은 공차중량 580 kg, 적재중량 700 kg, 사용전압 48 V의 전기차 플랫폼(형제파트너社, HUT)을 기반으로 개조하였다. 로봇팔은 20 kg의 pay-load와 1700 mm의 동작 범위를 갖는 6 축 로봇팔(두산로보틱스社, H2017)을 적용하였다. [Fig. 1]은 로봇팔을 지닌 물류용 자율주행 전기차 플랫폼을 보여준다.
[Fig. 2]는 전기차 플랫폼에 적용된 자율주행을 위한 센서 시스템을 보여준다. 자율주행을 위한 센서 시스템은 플랫폼의 환경인식을 위한 센서와 주행보조 시스템으로 구분될 수 있다. 환경인식을 위한 센서는 depth 카메라, 라이다, 초음파를 적용하여 플랫폼의 자율주행 환경인식이 가능한 형태로 개조하였다. 플랫폼 전방에는 장애물 탐지 및 돌방상황 인지를 위해 각 1개의 depth 카메라 센서(Intel社, Realsense D455)와 라이다 센서(SLAMTEC社, rpLiDAR S1)를 적용하였다. 또한, 플랫폼 주행 시 측면 장애물 인지를 위한 초음파 센서(DFROBOT社, URM08)가 좌측과 우측 각 2개씩 적용되었다. 자율 주행 시스템은 플랫폼의 이동거리 및 속도를 측정하기 위한 엔코더와 전동 조향을 위한 EPS (Electric Power Steering) 로 구분된다. 플랫폼 이동 속도 측정을 위한 엔코더(AUTONICS社, E50S8)는 차량 후방에 위치한 모터에 직결한 형태로 설치되었으며, 전동 조향 및 조향각 측정을 위한 EPS (DECO社, EPS200)는 핸들 하부에 설치되었다. [Table 1]은 자율주행 플랫폼 구현을 위한 적용 센서 및 주행 보조 시스템을 나타낸다.
본 연구에서 개발된 로봇팔을 지는 자율주행 전기차 플랫폼은 사용자의 의도에 따라 자율주행을 수행하거나 혹은 수동 주행이 가능한 형태로 구성된다. 이때, 자율주행 기능을 수행하기 위해 모터 제어, EPS 제어, 센서 신호 취득을 위해 전방, 후방에 각각 제어기를 구축하고 이를 CAN, RS-485/232 통신을 통해 주 제어기로 전달하게 된다. 전방과 후방에 위치한 제어기와 EPS간의 통신은 CAN방식을 사용하며, 주 제어기와 전방컨트롤러는 RS-232를 사용하고 초음파 센서는 RS-485 통신 방식을 사용한다. 전방 제어기는 후방 제어기와 연결되어 구동부 제어 명령을 보내고 엔코더 정보를 받으며, EPS 제어 및 센서 시스템을 통해 취득되는 모든 정보를 주 제어기로 전달한다. [Fig. 3]은 자율주행 전기차 플랫폼에 적용된 전장부 시스템 구성을 보여준다.
3. 자율주행 알고리즘
3.1 주행기록 측정
자율주행을 위해서 가장 우선적으로 필요한 정보는 플랫폼의 위치이다. 본 논문에서 개발된 플랫폼의 위치는 기본적으로 주행기록측정(Odometry)를 이용하여 계산한다. 이를 위해 [Fig. 4]와 같이 전기차 플랫폼을 자전거 모델로 간소화하여 모델링하였다[5]. 이 그림에서 알 수 있듯이 플랫폼의 위치는 단위 시간당 이동 거리와 조향각도만 알면 구할 수 있다. 따라서, 다음 식은 이 플랫폼에 적용된 주행기록측정 계산식을 보여주고 있다.
(1) |
여기서 Δd는 샘플링 시간동안 이동한 거리이며 δt는 EPS로부터 계산된 조향 바퀴의 각도이다. EPS의 회전각과 조향 바퀴의 각의 관계식은 사전에 캘리브레이션을 통해 실제 조향 바퀴의 각도 오차를 최소화하도록 하였다.
3.2 지도 생성
자율주행을 위해서는 플랫폼의 위치를 알아야 한다. GPS와 같은 절대적인 위치를 알 수 있는 센서를 사용할 수 없는 환경에서는 대부분 지도를 기준으로 플랫폼의 위치를 추정하게 된다. 따라서 위치 인식을 위한 지도를 생성해야 하는데 대부분 SLAM (Simultaneous localization and mapping)[6]을 사용하고 있다. SLAM 기법 중에서 현재에 가장 널리 사용되고 있는 알고리즘은 ROS (Robot Operating System)[7] 기반의 gmapping[8]이다. 본 논문에서 개발된 플랫폼은 위에서 구한 주행기록 측정으로 추정한 위치와 2D 라이다 센서 데이터를 gmapping에 적용하여 지도를 생성하였다. [Fig. 5]는 개발된 플랫폼으로 어느 한 물류 창고에서 만든 지도를 보여주고 있다. 이 지도는 격자 형태로 구성되어 있으며 격자 한 칸의 크기는 5 cm × 5 cm이다. 그림에서 검은색은 장애물을 뜻하고 밝은 회색은 장애물이 없는 공간을 뜻한다. 그리고 진한 회색은 미지의 영역으로 센서가 탐지하지 못한 영역이다.
3.3 위치 추정
생성된 지도를 바탕으로 플랫폼의 위치를 추정하기 위해서 Particle filters기반의 AMCL[9] 알고리즘이 많이 사용되고 있다. 이 역시 ROS를 지원하며 오픈소스로 제공된다. 본 논문에서 개발된 플랫폼은 지도 생성과 동일하게 주행기록측정으로 추정한 위치와 2D라이다 센서 데이터를 AMCL에 적용하고 500개의 particle들을 이용하여 플랫폼의 위치를 추정하였다. [Fig. 6]은 위에서 생성된 지도를 바탕으로 플랫폼의 위치를 추정한 결과를 보여주고 있다. 이 그림에서 검은색은 지도상의 장애물이며 빨간색은 라이다 센서의 데이터를 보여준다. 녹색은 500개의 particle들의 분포를 보여주는데 최종적인 플랫폼의 위치는 이 particle들의 가중 평균 위치를 구해서 계산한다.
3.4 중간 경유지 생성
물류 흐름의 공정에 맞게 자율 주행 차량이 이동할 수 있도록 물건 상하역 장소에 순차적인 중간 경유지가 필요하다. 이런 경유지는 지도상에서 선택하여 생성할 수도 있지만 이렇게 경유지를 설정하면 실제 플랫폼이 경유지에 도착했을 때 예상했던 위치와 방향이 다른 경우가 자주 발생된다. 이는 전기차량 플랫폼이 기존의 모바일 로봇보다 상당히 크기 때문에 지도상에서 단순히 점으로 선택한 위치와 차이가 발생하는 것이다. 따라서 본 논문에서는 경유지를 쉽고 정확하게 생성하며 경유지 편집도 용이한 사용자 인터페이스 프로그램 개발하였다.
우선 경유지를 생성하는 방법은 원하는 목적지로 직접 차량을 이동시켜서 그 지점을 경유지로 설정하는 것이다. 개발된 자율주행 전기차량은 필요시 사람이 직접타서 수동으로 운전이 가능하기 때문에 사용자가 차량을 이동시키기에 용이한 플랫폼이다. 따라서 실제 차량을 운전해서 원하는 목적지로 이동시킨 후 실제 차량의 위치와 방향을 눈으로 확인 후 경유지 생성 버튼을 누르면 경유지가 저장된다. 이런 방식으로 물류의 흐름에 맞게 순차적으로 경유지를 생성하면 자율 주행 차량이 정해진 경로를 따라가면 된다.
모든 경유지가 설정된 이후 실제 차량으로 자율주행을 해보면 예상했던 위치와 형태가 아닌 경우도 종종 발생하는데 이런 경우를 위해서 경유지를 편리하게 이동/추가/삭제 할 수 있는 인터페이스도 추가로 개발하였다. 이때는 차량을 직접 이동시키거나 지도상에서도 선택할 수 있도록 구현하였다. [Fig. 7]은 지도상에 생성된 경유지들의 위치를 보여주고 있다. 특히, 좁은 길에 경유지를 설정할 때 실제 차량을 직접 이동시켜서 확인하면 보다 안전한 경유지를 설정 할 수 있다.
3.5 경로 생성 및 추종
차량이 자율로 주행하기 위해서 목적지가 주어지면 그 목적지까지 어떻게 이동할지 경로를 정해야 한다. 일반적으로 이러한 경로를 생성하는 작업을 전역 경로 계획이라고 한다. 대부분의 전역 경로 계획은 장애물을 피해서 목적지까지 최단 경로를 찾는다. 이러한 경로를 생성하기 위한 여러 가지 알고리즘이 있지만 그중에서 반복 재현성이 뛰어나고 비교적 빠른 A-star[10] 알고리즘을 개발된 차량에 적용하였다.
목적지까지 이동하기 위한 최적의 경로가 주어지면 이제 그 경로를 따라가면 된다. 이러한 경로를 생성하는 작업을 지역 경로 계획이라고 한다. 실제 차량의 위치에서 전역 경로를 추종하기 위한 최적의 방법을 찾는 것이다. 이런 작업을 수행하기 위한 다양한 알고리즘이 존재하는데 본 플랫폼에는 차량의 운동 특성을 반영할 수 있는 DWA (Dynamic Window Approach)[11] 알고리즘을 적용하였다. DWA는 플랫폼의 현재 운동 상태에서 경로를 추종하기 위한 최적의 움직임을 찾는 알고리즘이다. 이러한 경로 계획을 통해서 자율주행 차량은 현재 위치에서 목적지까지 이동할 수 있게 된다.
[Fig. 8]은 실제 자율 주행 차량이 물류 창고 내부를 이동할 때 생성된 전역 경로와 지역 경로를 보여주고 있다. 파란색 선은 전역 경로를 나타내는데 목적지까지 장애물을 회피하는 최단거리로 생성되어 경로가 부드럽지 않다. 반면에 빨간색 선은 지역 경로를 나타내는데 그 끝은 항상 전역 경로를 향하고 있으며 차량의 동특성을 반영하여 부드러운 곡선형태의 경로를 보이고 있다.
3.6 차량 제어
경로 계획 및 경로 추종을 통해서 자율주행 차량은 현재 위치에서 목적지까지 이동할 수 있게 되는데 이 과정에서 실시간으로 필요한 플랫폼의 주행 속도와 회전 속도를 얻게 된다. 여기서 얻은 필요 속도를 차량제어를 통해서 생성해주면 차량이 목적지까지 움직이게 되는 것이다. 주행 속도는 단순히 플랫폼의 주행 모터의 속도 제어를 통해서 생성하면 된다. 그리고 회전 속도는 [Fig. 4]와 같이 플랫폼의 주행 속도와 조향 바퀴의 각도에 의해서 생성되는데 조향 바퀴의 각도(δ)는 아래 식을 통해서 계산할 수 있다.
(2) |
여기서 ω는 주어진 플랫폼의 회전 속도이고, L은 앞바퀴와 뒷바퀴 사이의 거리이며, v는 주어진 플랫폼의 주행 속도이다. 여기에서 구한 조향 바퀴의 각도를 만들기 위해 EPS를 이용하여 핸들의 조향각을 제어하면 차량은 목적지까지 경로를 따라 이동하게 된다.
4. 실 험
개발된 자율 주행 전기차 플랫폼을 이용하여 본 논문에서 제안한 시스템과 알고리즘을 검증하기 위해 [Fig. 9]와 같이 40 m × 40 m 크기의 실제 물류 창고에서 자율 주행 실험을 수행하였다. [Fig. 5]와 같이 생성된 지도를 바탕으로 [Fig. 7]과 같은 경유지를 설정하여 반복적으로 경유지를 경유하면서 회전하는 주행 실험을 진행하였다. 지도에서 확인할 수 있듯이 실험 환경은 네모 모양의 길로 구성되어 있으며 통로가 좁은 곳도 존재한다.
이 창고 내부의 실험에서는 최고속도 0.7 m/s로 주행하였으며 10회 반복하여 회전하면서 주행 안전성을 실험하였다. 이번 실험을 진행하는 동안 단 한 번의 충돌도 없었으며, 좁은 길 뿐만 아니라 코너부분도 감속을 통해 안전하게 통과함을 확인하였다. 그리고 개발된 경유지 수정 프로그램을 이용하여 전기 차량 플랫폼의 경로도 쉽게 변경하여 운영할 수 있음을 알 수 있었다. 다만, 바닥의 햇빛 반사로 인해 depth 카메라가 낮은 높이의 장애물을 감지하지 못해서 그 장애물을 밟고 지나가는 일이 종종 발생하여서 보다 복잡한 환경에 대처하기 위한 센서도 추가해야 할 것으로 보인다.
5. 결 론
본 논문에서는 로봇팔을 지닌 물류용 자율주행 전기차의 개발에 대해서 소개하였다. 수동 운전만 가능한 전기차를 자율주행이 가능한 전기차 플랫폼으로 개조하였다. 자율주행을 위해 구동 바퀴에 엔코더를 장착하고, 자동 조향을 위해 전자식 파워스티어링 시스템을 적용하였다. 전기차에는 주변 환경 인식 및 지도생성, 차량 위치 인식을 위해서 라이다 센서, depth 카메라, 초음파 센서가 탑재되었다. 자전거 운동 모델을 이용하여 odometry를 계산하고 SLAM 알고리즘을 이용하여 지도를 생성하였다. 그리고 생성된 지도를 바탕으로 플랫폼의 위치를 추정하기 위해서 라이다를 이용한 AMCL 알고리즘을 적용하였다. 물류 공정에 맞게 정해진 장소를 이동시키기 위해 중간 경유지를 생성 및 수정하는 사용자 인터페이스를 개발하였으며, 목적지로 이동하기 위해 A-star 기반의 전역 경로를 생성하고 DWA 기반의 지역 경로를 생성하였다. 본 논문에서 개발된 자율 전기차는 현재 개발 초기 단계로 실증 현장에서 실험을 통해 그 활용성을 검증하고 있는 중이다. 앞으로 보다 복잡하고 다양한 환경에 있는 장애물들을 잘 인식할 수 있는 시스템과 알고리즘을 개발할 예정이며, 안전사고가 발생하지 않도록 주행 알고리즘 파라메타를 최적화하려고 한다. 그리고 마지막으로 로봇팔과의 연동을 통해 물류 상하역 완전 무인화 시스템을 개발하고자 한다.
Acknowledgments
This work was supported by Institute of Information & communications Technology Planning & Evaluation (IITP) grant funded by the Korea government (MSIT) (No. 171134144, Development of a self-driving electric vehicle platform that can be switched to the manned or unmanned for an integrated logistics robot)
References
- T. H. Lee, J. S. Huh, and J. H. Na, “Logistics Industry Outlook and Tasks in 2022,” Monthly KOTI Magazine on Transport, vol. 286, pp. 30-37, 2021, [Online], https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE11058301, .
- J. Toledo, J. D. Piñeiro, R. Arnay, D. Acosta, and L. Acosta, “Improving Odometric Accuracy for an Autonomous Electric Cart,” Sensors, vol. 18, no. 1, 2018. [https://doi.org/10.3390/s18010200]
- S. J. Park and T. Yang, “A Study on Design of Intelligent Mobile Robot based on Localization Sensor for Unmanned Transport Logistics,” Journal of KIIT, vol. 11, no. 9, pp. 7-13, 2013, [Online], https://www.kci.go.kr/kciportal/ci/sereArticleSearch/ciSereArtiView.kci?sereArticleSearchBean.artiId=ART001803226, . [https://doi.org/10.14801/kiitr.2013.11.9.7]
- S. H. Kim, J. M. Sim, Y. S. Park, and D. H. Jung, “LiDAR-Based Smart Logistics Robot,” Symposium of the Korean Institute of communications and Information Sciences, pp. 995-996, 2021, [Online], https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE11023013, .
- P. Polack, F. Altché, B. d’Andréa-Novel, and A. de La Fortelle, “The kinematic bicycle model: A consistent model for planning feasible trajectories for autonomous vehicles?,” IEEE Symposium on Intelligent Vehicle, Los Angeles, USA, 2017. [https://doi.org/10.1109/IVS.2017.7995816]
- H. Durrant-Whyte and T. Bailey, “Simultaneous localization and mapping (SLAM): Part I,” IEEE Robotics & Automation Magazine, vol. 13, no. 2, pp. 99-110, 2006. [https://doi.org/10.1109/MRA.2006.1638022]
- M. Quigley, K. Conley, B. P. Gerkey, and J. Faust, “ROS: an open-source Robot Operating System,” ICRA workshop on open source software, 2009, [Online], https://www.researchgate.net/publication/233881999_ROS_an_open-source_Robot_Operating_System, .
- B. L. E. A. Balasuriya, B. A. H. Chathuranga, B. H. M. D. Jayasundara, N. R. A. C. Napagoda, S. P. Kumarawadu, D. P. Chandima, and A. G. B. P. Jayasekara, “Outdoor robot navigation using Gmapping based SLAM algorithm,” Moratuwa Engineering Research Conference (MERCon), Moratuwa, Sri Lanka, 2016. [https://doi.org/10.1109/MERCon.2016.7480175]
- M.-A. Chung and C.-W. Lin, “An improved localization of mobile robotic system based on AMCL algorithm,” IEEE Sensors Journal, vol. 22, no.1, pp. 900-908, 2022. [https://doi.org/10.1109/JSEN.2021.3126605]
- F. Duchoň, A. Babinec, M. Kajan, P. Beňo, M. Florek, T. Fico, and L. Jurišica, “Path planning with modified a star algorithm for a mobile robot,” Procedia Engineering, vol. 96, pp. 59-69, 2014. [https://doi.org/10.1016/j.proeng.2014.12.098]
- M. Pittner, M. Hiller, F. Particke, L. Patino-Studencki, and J. Thielecke, “Systematic Analysis of Global and Local Planners for Optimal Trajectory Planning,” ISR 2018; 50th International Symposium on Robotics, Munich, Germany, 2018, [Online], https://ieeexplore.ieee.org/document/8470582, .
2013 한양대학교 전기전자제어계측학과(박사)
2014~2015 Carnegie Mellon University, The Robotics Institute, Postdoctoral Fellow
2015~현재 한국로봇융합연구원 책임연구원
관심분야: 모바일 로봇, 자율주행, 로봇 기구학, 객체 인식
2010 영남대학교 전자공학과(학사)
2010~현재 한국로봇융합연구원 선임연구원
관심분야: 회로설계, 임베디드 시스템, 로봇 메커니즘
2011 한밭대학교 기계설계공학과(학사)
2013 한밭대학교 기계설계공학과(석사)
2015~현재 한국로봇융합연구원 선임연구원
관심분야: 국방 로봇, 시스템 최적화, 경량화 설계, 군집 로봇
2013 고려대학교 제어계측공학과(학사)
2019 고려대학교 제어계측공학과(석사)
2021~현재 한국로봇융합연구원 주임연구원
관심분야: 로봇공학, 모바일로봇, 자율주행, 제어 알고리즘
1993 동아대학교 기계공학과(학사)
2002 경남대학교 기계설계학과(석사)
2017 한양대학교 자동차공학과(박사)
2016~현재 드라이브텍 주식회사 대표이사
관심분야: 로봇용구동모듈, 로봇주행시스템, 물류수송로봇, 모바일상하역로봇, 로봇관제시스템