ⓒ IEMEK J. Embed. Sys. Appl. 2018 June 13(3) 161-167 ISSN : 1975-5066
http://dx.doi.org/10.14372/IEMEK.2018.13.3.161
Ⅰ. 서 론
사회환경의 개선과 의술의 급속한 발달은 100세 시대를 가능하게 하고 있으며, 우리나라는 물론 상 당수의 국가가 빠르게 고령사회 혹은 초고령사회로 진입하고 있다. 고령은 곧 불편과 장애를 동반하게 되고, 이를 극복하기 위한 다양한 제도와 시스템이 개발, 보급되고 있다. 전동휠체어는 스스로의 힘으 로 이동하기 어려운 노인이나 장애인의 이동을 보 조하기 위하여 개발된 시스템이다. 전동휠체어는 수 동휠체어 조작이 곤란한 중증장애인에 의해 널리 사용되고 있으며, 배터리를 탑재하고 제어기의 조작 으로 조향이나 주행을 조정한다. 현재까지 대부분의 전동휠체어는 사용자의 세밀하고 정확한 수준의 제
어를 계속적으로 필요로 하기 때문에 감각 능력이 나 조작 능력의 손상을 입은 사람에게는 편안한 사 용이 어려운 실정이다. 이를 개선하기 위하여 다양 한 기능을 갖춘 진보된 지능형 전동휠체어가 개발 되고 있다.
진보된 기능을 가지는 전동휠체어는 기존의 조 이스틱을 사용한 단순한 피드백 제어기 대신에 학 습과 판단 등의 지능 알고리즘을 구현한 제어기가 적용되고 있다. 특히, 프로세서의 성능이 크게 향상 되면서 영상처리 기반의 알고리즘 등이 쉽게 구현 되고 있다.
Prassler 등은 행동이 제약된 사람들의 이동성 강화와 자율 및 독립성을 제공하는 로봇식 휠체어 를 소개하였다 [1]. 넓고 혼잡한 지역에서의 자율 주행을 지원하기 위해 WAN (Wide Area Navigation) 제어 구조를 가지고 있으며, 기본 제어 레벨, 전술 레벨, 전략 레벨로 구성된 계층적인 주 행 구조를 가지고 있다. Lankenau 등은 공유 제어 시스템으로 장애물 회피, 구동과 경로계획 등을 구 현하는 Bremen 자율주행 휠체어를 제시하였다 [2]. Kim 등은 노약자 및 장애인을 위한 지능형 휠 체어 시스템의 자율주행을 위한 효율적 실시간 제 어 소프트웨어 구조의 설계방안을 제시하였다 [3].
논문 2018-13-19
자기위치 인식 기반의
자율주행 전동휠체어 플랫폼 개발
(Design of Self-localization Based Autonomous Driving Platform for an Electric Wheelchair)
최 중 해, 최 병 재* (Jung-Hae Choi, Byung-Jae Choi)
Abstract : The improvement of the social environment and the rapid development of medicine are making possible the age of 100. So a great number of countries including Korea are rapidly becoming the aged society or the super aged society. The elderly are accompanied by discomfort and disability. A variety of systems are developed and distributed to overcome them.
The electric wheelchair is an electric motorized system for people who can not manipulate a manual wheelchair. In this paper, we propose an autonomous driving platform for an electric wheelchair. Here we use QR (Quick Response) code for self-localization. We also present real test results of the proposed system.
Keywords : Electronic wheelchair, Autonomous driving, Self-localization, QR code
*Corresponding Author ([email protected]) Received: Mar. 30 2018, Revised: June 1 2018, Accepted: June 5 2018
J.-H. Choi, B.-J. Choi: Daegu University
※ 본 연구는 산업통상자원부 '산업전문인력역량 강화사업'의 재원으로 한국산업기술진흥원 (KIAT) 의 지원을 받아 수행된 연구임 (2018년 재활산업 기술전문인력 양성사업, 과제번호 : N0001792).
Length × Width 1,168 [mm] × 650 [mm]
Battery 12 [V] / 62 [Ah]
Driving range 25 [km]
여기서는 모터제어, 위치 추정 및 장애물 인식이 실 시간으로 진행되었다. 그리고 Heo 등은 QR code 기반의 실내 경로 계획에 대한 향상된 방안을 제시 하였다 [4].
사물인터넷 (IoT), 머신비전, AGV (Automated Guide Vehicle) 등 로봇 및 산업현장에서 사용하는 자율주행 기술은 많은 연구가 이루어지고 있다. 이 러한 기술들을 적용시켜 GPS를 이용한 실외 자율 주행, 3D 카메라를 이용한 실내 맵 빌딩, 장애물 인 식, 최적 경로 설정 등의 기능을 적용한 휠체어 [5]
및 관련기술에 대한 연구도 널리 진행되고 있다. 그 러나 이러한 고성능의 기술들을 적용한 전동휠체어 는 기술적 수준, 완성도, 기능성 등은 매우 훌륭하 지만, 고가이며 유지 보수의 어려움 등으로 인하여 시장 형성 및 확대에는 긍정적이지 않은 실정이다.
본 논문에서는 전동휠체어의 향상된 기능성과 시장 확대 등의 여러 가지 현황을 고려하여 QR code를 이용한 자기위치 인식 기반의 자율주행 기 능을 가지는 전동휠체어 플랫폼의 설계를 제시한다.
제2장에서는 자율주행을 위한 시스템 구성에 대 하여 기술하고, 제3장에서 QR code 기반의 자기위 치 인식에 관하여 설명한다. 제4장에서는 자율 주행 을 위한 구현 알고리즘을 제시하고, 제5장과 제6장 은 각각 제안한 방법의 주행 성능 시험과 그 결과 그리고 제안한 시스템에 대한 효과 분석과 추후과 제 등을 제시한다.
Ⅱ. 자율 주행을 위한 시스템 구성
전동휠체어는 사용자의 손 등으로 동력을 제공 해야하는 수동식 휠체어와는 달리 전기 배터리의 전력으로 모터를 구동하여 이동할 수 있는 휠체어
그림 1. 시스템 구성도 Fig. 1 Configuration for autonomous
driving system
로, 스스로 조작이 곤란한 중증장애인 등에 의해 널 리 사용되고 있다. 전형적인 전동휠체어는 왼손 및 오른손 부분에 조이스틱 혹은 스틱 바가 준비되어 사용자의 간단한 조작에 의하여 조향, 속도 등을 쉽 게 조정할 수 있도록 구성된다. 본 논문에 적용할 전동휠체어의 사양은 표 1과 같다.
전동휠체어의 자율주행을 위한 플랫폼은 그림 1 과 같이 제어부, 구동부, 인식부로 구성하였다.
주제어부는 자율 주행을 위한 전체 시스템의 제 어를 담당하며, ST사의 STM32F107VCT6 Cortex-M3 마이크로프로세서를 사용하였다. 그리 고 주행, 위치 인식, 장애물 감지, 조이스틱을 이용 한 수동조작 등의 각 장치간 통신은 CAN 프로토콜 을 이용하였다. CAN 통신은 차동신호기반의 통신 으로 외부 잡음에 강하며, 멀티 마스터 또는 멀티 슬레이브 구성이 가능하다.
전동휠체어의 구동부는 BLDC 모터, 구동기, 제 어기, 엔코더 등으로 구성하였다. 특히 여기서는 모 터의 토크 향상을 위하여 바퀴를 직결하는 대신에 100:1 감속기를 적용하였다.
모터 구동기는 BLDC 모터를 구동할 수 있도록 3상 (U, V, W) 출력과 속도 제어를 위해 BLDC 모
그림 2. QR code 및 파인더 패턴 Fig. 2 QR code and its finder patterns
터 내부에 위치한 Hall 센서 신호를 입력받을 수 있 도록 하였다. 모터 제어부는 바퀴에 장착된 엔코더 로 부터 신호를 받아서 제어하도록 하였다.
인식부는 주행선, 장애물, 자기위치 인식을 위한 센서로 구성하였다. 주행선 인식을 위해 Hall 센서 를 사용하였으며, N/S극 모두 입력이 가능하다. 센 서 신호를 ADC를 이용하여 입력 받은 후 이를 2진 화한다. 주 제어기에서 2진화 데이터를 이용하여 주 행선의 방향을 인식하고 다음의 이동 방향을 결정 하도록 하였다.
주변의 장애물 감지를 위해 발판 아래의 좌우에 각 4개의 초음파 센서를 장착하였다.
Ⅲ. QR code 기반의 자기위치 인식
자기위치 인식을 위한 유용한 방법들이 널리 알 려져 있으나, 여기서는 카메라 기반의 영상처리 알 고리즘으로 구현한다. 카메라를 이용하여 자기 위치 를 인식하는 방법은 STARGAZER [6] 이용하여 랜 드마크를 인식하는 방법과 카메라로 QR code를 인 식하여 자기위치를 확인하는 방법으로 구분할 수 있다.
STARGAZER를 이용하는 방법은 카메라, 조명, 유용한 영상처리 알고리즘이 모두 내장되어 있어서 사용 및 유지보수가 편리하지만 천장 높이가 일정 수준 이상인 전시관 등에서는 사용하기 어렵고, 구 조적으로 벽면에 부착하는 등의 불편함이 있다.
대용량의 정보를 저장할 수 있는 QR code를 이 용하여 자기위치를 인식하는 방법이 많이 사용된다.
그림 3. 파인더 패턴을 이용한 방향 유도 Fig. 3 Direction derivation using finder pattern
QR code는 가로 배열의 20글자 정도의 정보만 저 장할 수 있는 바코드와 달리, 가로, 세로를 활용하 여 숫자는 최대 7,089자, 문자는 최대 4,296자 정 도를 저장할 수 있는 2차원적 구성이어서 긴 문장 의 인터넷 주소나 사진 및 동영상 정보, 지도 정보, 명함 정보 등을 모두 저장할 수 있다. 또한 훼손 등 에 강하기 때문에 데이터 복원력도 높다 [7].
본 논문에서는 QR code에 위치 정보 인식을 위 한 주요 위치 정보를 저장하였으며, 이를 이용하여 전동휠체어의 자기위치를 인식할 수 있도록 구성하 였다. 전동 휠체어가 자기 위치를 인식하는 절차는 다음과 같다: 영상획득 → 영상왜곡제거 → QR code 인식 → Finder Pattern 검출 → 회전 각도 계산 → 현재 위치 및 회전 계산
영상 획득은 Point Grey 카메라를 사용하여 Gigabit Ethernet과 Point Grey Library를 통해 영 상을 캡처하는 과정이고, 영상 왜곡 보정은 렌즈로 인해 발생하는 이미지 왜곡을 보정하는 과정이다.
QR code 인식은 그림 2와 같이 OpenCV library와 Zbar library를 사용한다. 파인더 패턴은 OpenCV 내 finderContours 함수를 이용하여 사각 형의 외곽선 검출을 통해 인식한다.
회전 각도는 먼저 finderContours를 이용하여 검출한 3개의 파인더 패턴과 각각의 좌표를 획득한 후 3개의 파인더 패턴 위치를 기준으로 현재 전동 휠체어가 얼마나 회전하였는지를 계산한다. 그림 3 과 같이 파인더 패턴 2개의 중심점을 지나는 선분 과 이미지의 수평선을 지나는 선분이 이루는 각으 로부터 계산된다. 즉 자기위치의 중심점에서 얻어지 는 수평선인 (a)와 두 중심점을 지나는 선분 (c), 그 리고 이 둘을 연결한 수직선 (b)로부터 직각삼각형 의 회전각을 얻을 수 있다.
즉, 전동휠체어의 현재 위치는 다음의 과정으로 결정된다. 먼저 QR code의 영상과 좌표를 획득한
그림 4. 주행선 인식 모듈
Fig. 4 Sensor module for guideline detection
후, OpenCV 내 finderContours 함수를 이용하여 파인더 패턴을 검출한다. 그리고 나서 QR code 영 상이 화면 중앙에 있는 경우를 기준으로 QR code 를 획득한 영상의 좌표와 중앙 좌표와의 차이를 계 산하여 현재 위치를 결정한다.
Ⅳ. 자율주행 알고리즘의 구현
자율 주행을 위한 알고리즘은 여러 가지가 있으 며, [8]에서는 전시장의 안내를 담당하는 로봇의 경로 탐색을 위한 보상 알고리즘을 제안하였고, [9]에서는 퍼지 추론을 이용하여 양 극성을 가지는 자기 안내 센서의 성능을 향상시키는 방안을 제시 하였다.
본 논문에서는 시스템의 구성을 간단하게 하고, 경로 인식 속도를 개선할 목적으로 바닥에 부착한 자기 테이프 라인을 인식하면서 주행하는 방법을 적용한다. 바닥에 부착된 유도선을 따라 주행하는 방식은 주로 무인운반차 시스템에서 많이 사용되고 있으며, 미리 정해진 경로를 따라 이동하기 때문에 안전성 측면이 우수하다. 그러나 바닥에 유도선을 설치해야 하고, 주기적으로 유지보수를 해야 하는 어려운 점이 있다.
유도선은 N/S극을 가지는 자기테이프를 사용하 며, 이를 인식하기 위해 Hall 센서를 가로로 배치한 모듈을 설계하여 적용한다.
주행선은 폭 50 [mm], 높이 2 [mm]의 N/S 극 성을 가지는 자기 테이프를 사용한다. 주행선은 10 [mm] 높이에서 측정 하였을 경우 N/S 극에서 각 각 100 [Guass]가 측정된다.
주행선 인식 모듈은 그림 4와 같으며, ±200 [Guass]를 측정 가능한 Hall 센서 16개를 가로로 배열한 모듈을 적용한다.
⋯
그림 5. 주행선 인식 예 Fig. 5 Driving pattern example
⋯ ∼
(1)
∼
⋯
⋯
주행선 인식 모듈로부터 얻은 ⋯ 값과 기준값인 ⋯ 값을 비교하여 전동 휠체어의 방향 와 각 바퀴의 회전속도 가 결정된다.
본 논문에서 사용한 주행선의 가로 폭은 50 [mm]이고 홀 센서는 10.16 [mm] 간격으로 배치 하였다. 따라서 정중앙 4개의 센서가 인식된 경우 좌우의 여유폭을 포함하여 50.8 [mm] 크기의 자 석테이프를 인식하게 된다. 이것을 기준값으로 설 정하였다.
그림 5 및 식 (2) 주행선 인식 예를 나타내고 있으며, 여기서는 주행선 인식 모듈과 기준값이 일 치하기 때문에 각 바퀴의 회전속도 이 동일 하게 되어 직선으로 주행한다.
그림 5와 달리 1개 이상의 비트가 차이나면 의 값이 값보다 커서 회전을 하게 된다. 만약 식 (2) ⋯ 의 값이 정보가 없거나, 3개 의 비트 이하가 들어오면 탈선으로 인지하고 주행 을 중지하도록 구성한다.
그림 6. 시험 환경 Fig. 6 Test environment
⋯
⋯ (2)
총 인식시간은 다음의 식 (3) 및 (4)에 의해 결 정된다.
(3)
(4)
는 주행선 인식 모듈에 사용된 ADC의 샘 플링 시간에 의해 결정되고, 는 사용된 MCU의 연산시간에 의해 결정된다. 따라서 주행선 인식 모 듈의 총 인식 시간은 120 [μs]가 된다.
적용된 전동휠체어의 속도는 식 (5)에 의해 결정 된다.
× (5)
여기서 D와 N은 각각 전동 휠체어의 바퀴 지름 과 바퀴의 분당 최대 회전수를 나타낸다.
제어부는 주행선 인식모듈, 자기위치, 장애물 인 식 결 과를 이 용 하여 전 동 휠체 어 의 이동 방 향 을
Trial No.
Description 1 2 3 4 5 AVG
Straight line [cm] 7 7 5 5 6 6.0
45° line [cm] 9 5 4 7 6 6.2
표 2. 10 [m] 왕복 주행 시험 결과 Table 2. Results of 10 [m] driving test
결정한다. 전동휠체어의 제어 및 총 연산 시간은 초 음파 센서 및 주행선 인식 센서 등의 반응시간 등 에 의해 결정되며, 본 시스템에서는 약 15.6 [ms]
이다.
전동 휠체어가 최대 속도로 이동하는 경우 초당 2.36 [m] 이동하며, 설계된 시스템은 초당 64번의 연산을 통해 전동휠체어를 제어한다.
Ⅴ. 성능 시험
제안한 전동휠체어의 성능 시험을 위하여 시작 점에서 종료지점까지 이동 한 후 다시 복귀하였을 때 오차를 측정하는 시험을 반복 수행하였다. 시험 환경은 직선 주행과 곡선 주행을 모두 포함하도록 그림 6과 같이 구성하였다.
성능 시험 결과는 표 2와 같다. 표 2는 10 [m]
거리에서 5회의 왕복 이동을 시험한 결과이다. 표 2로부터 알 수 있듯이 직선 및 45° 주행에서 평균 오차는 6 [cm]내외로 매우 작았다.
주행선을 이탈하는 경우에는 전동휠체어를 자동 정지하게 하였고, 자기위치인식을 통해 현재 위치를 인식하기 때문에 조작미숙에 따른 사고를 예방할 수 있다. 그리고 자기위치 및 주행선을 인식할 수 없는 환경일 때는 수동조작을 통해 쉽게 이동할 수 있도록 설계하였다.
현재는 1개의 주행선 인식 센서 모듈을 사용함 으로써 직선, 45°, 30°의 주행선만 인식 할 수 있도 록 설계하였으나, 추후 곡선, 원형 등 다양한 주행 선에 대한 빠른 인식과 탈선 방지 보장을 위한 추 가 연구가 필요하다. 또한 QR code 기반의 자기위 치 인식에 대한 추가적인 보완 연구 및 실험을 통 하여 전동휠체어의 자기위치에 대한 정밀한 실시간 인식이 요구된다.
References
[1] E. Prassler, J. Scholz, P. Fiorini, “A Robotics Wheelchair for Crowded Public Environments,”
IEEE Robotics & Automation Magazine, pp.
38-45, 2001.
[2] A. Lankenau, T. Röfer, “A Versatile and Safe Mobility Assistant,” IEEE Robotics &
Automation Magazine, pp.29-37, 2001.
[3] S.J. Kim, B.K. Kim, "Development of
Korean Institute of Intelligent Systems, Vol.
25, No. 2, pp. 97-98, 2013 (in Korean).
[5] L.K. Lee, S-Y. Oh, “Development of Smart Wheelchair System and Navigation Technology for Stable Driving Performance in Indoor-Outdoor Environments,” The Institute of Electronics and Information Engineers, Vol.
52, No. 7, pp. 153-161, 2015 (in Korean).
[6] http://www.hagisonic.com
[7] Y.W. Jung, “A Study of Types of QR Codes' and Their Effects on Advertising,” Archives of Design Research, Vol. 26, No. 1, pp.
174-165, 2013.
[8] M.K. Jung, D.M. Lee, “Location Tracking Compensation Algorithm for Route Searching of Docent Robot in Exhibition Hall," The Journal of The Korean Institute of Communication Sciences, Vol. 40, No. 4, pp.
723-730, 2015.
[9] M. Park, H. Cho, K. Kim, S. Kim,
“Improvement of Bipolar Magnetic Guidance Sensor Performance Using Fuzzy Inference System,” Journal of Korean Institute of Intelligent Systems, Vol. 24, No. 1, pp. 58-63, 2014.
JungHae Choi (최 중 해)
Jung-Hae Choi received his B.S. from the Department of Electronic Engineering, Daegu University, in 2012. Now he is a Master degree student at Daegu University. His research interests include robot navigation and embedded systems.
Email: [email protected]
ByungJae Choi (최 병 재)
Byung-Jae Choi is a professor in the School of Electronic and Electrical Engineering, Daegu University, He received the Ph. D.
degree in Electrical Engineering from KAIST Korea, Currently, his main research interests include intelligent control and systems.
Email: [email protected]