IT Solutions/IoT

차세대 IoT의 Thing 로봇! - 로봇 소프트웨어 플랫폼을 주목하라

2016.05.03 09:30



요즘 로봇과 인공 지능에 대한 관심이 점점 높아 지고 있습니다. 특히 올해 초에 있었던 구글 알파고와 이세돌 9단의 인간 대 컴퓨터의 세기의 대결 이후, 많은 언론을 통해서 인공 지능이 소개 되었는데요. 그 때마다 빠지지 않고 등장하는 동영상이나 이미지에는 휴머노이드 로봇이 등장하고 있습니다.


인공지능(AI)과 로봇은 밀접한 관계를 갖고 있고, 실제로 글로벌 IT 기업들은 두 분야에 관심을 갖고 투자를 하고 있습니다. 대표적인 예로 Google은 알파고를 개발한 AI 솔루션 개발 업체 구글 딥마이드와 오터퍼스, 봇앤드돌리, 홀롬니, 인터스트리얼퍼셉션, 레드우드, 메라로보틱스, 보스턴 다이나믹스, 샤프트 등 9개의 로봇 분야의 World top class의 업체를 보유하고 있는데요. 세계 최고의 로봇 기업은 일본의 혼다, 소니, 도시바, 화낙, 독일의 쿠카가 아니라 Google이라고 말하는 이유가 여기에 있기도 합니다.


l 구글 산하 로봇 업체 ‘Boston Dynamics’ Atlas (출처: www.bostondynamics.com)


현재 우리에게 가장 친숙한 휴머노이드 Pepper를 만든 Softbank는 IBM Watson 파트너쉽을 맺고 일본 내 지능형 로봇 사업을 진행하기로 한 것에 대해서는 이미 많은 언론을 통해 보도 되었습니다.


l Softbank pepper (좌), IBM WATSON(우) (출처: www.softbank.jp, www.ibm.com)


그러나 휴머노이드 로봇이 활성화 되어 스마트폰처럼 활성화된 생태계를 갖기 위해서는 시간이 더 필요하며, 현재로서는 어느 누가 주도권을 갖고 있다기 보다는 춘추 전국 시대의 모습을 띄고 있다고 보는 것이 맞을 것 같습니다.


현재 IoT에 적용되고 있는 사물들이 스마트TV, 스마트 Car 등으로 점점 확산되고 있으며, 전문가들 사이에서는 차기 사물은 바로 로봇이 될 것이라는 이야기가 나오고 있는데요. 그 시기를 앞당길 수 있는 것이 로봇 공학 분야의 로봇 소프트웨어 플랫폼이 아닐까 생각합니다. 


오늘은 차기 IoT의 사물로 주목 받는 지능형 로봇의 소프트웨어 플랫폼 현황에 대해서 알아보겠습니다.


 지능형 로봇이란?


로봇의 정의에 대해서 생각해 보신적 있나요? 어렴풋이 ‘이런 것이 로봇이구나!’ 라고 생각하시겠지만 간략히 정의를 하자면 ‘인간과 비슷한 모습을 하고, 인간이 하는 어떤 작업이나 조작을 자동으로 행하는 기계장치’로 정의할 수 있습니다.


그럼 지능형 로봇은 어떻게 정의할 수 있을까요? 지능형 로봇이란 ‘인간을 모방하여, 외부환경을 인식(Sense)하고, 상황을 판단(Think)하고, 자율적으로 동작(Act)하는 지능기계 시스템’이라고 정의할 수 있습니다.



지능형 로봇의 정의에서 볼 수 있듯이 지능형 로봇의 3대 핵심 기술은 지능 기술, 제어 기술, 부품 기술로 이루어져 있습니다. 이 중에서 지능 기술에는 외부 인식(Sensor), 인지 추론 그리고 소프트웨어 분야로 나누어 질 수 있는데요. 이번 글에서는 지능 기술의 한 부분인 소프트웨어 분야의 플랫폼에 대해서 이야기를 나누어볼까 합니다. 


 로봇 소프트웨어 플랫폼


앞서 언급한 것처럼 로봇 소프트웨어 플랫폼은 춘추 전국 시대라고 볼 수 있을 정도로 매우 활발하게 진행되고 있습니다.


그 중에서 가장 활발한 활동을 보이고 있는 미국의 ROS, 유럽의 iCub, OROCOS, 국내의 OPRoS, Microsoft社의 개발 플랫폼인 MRSRS 대해서 간략히 알아보도록 하겠습니다.


① ROS(Robot Operating System)


ROS는 로봇 응용프로그램을 개발할 때 필요한 하드웨어 추상화, 하위 디바이스 제어, 센싱, 인식, Map, Motion planning 등의 기능 구현, 메시지 전달, 패키지 관리, 개발 환경에 필요한 라이브러리와 다양한 개발•디버깅 도구를 제공하는 오픈 소스 기반의 로봇 소프트웨어 프레임워크입니다.


즉, ROS는 로봇을 위한 운영체제라기 보다는 Linux라는 General OS 위에서 동작하는 Meta-Operation system이라고 하는 것이 좀 더 정확한 표현입니다. 


ROS는 2007년 5월에 미국 스탠퍼드 대학 인공지능 연구소가 진행하던 STAIR(Stanford AI Robot) 프로젝트를 위해 Switchyard라는 시스템에서 시작되었습니다. 이후 2007년 11월에 Willow Garage 가 이어 받아 ROS라는 이름으로 개발을 시작하여 현재는 OSRF(Open Source Robotics Foundation)이 ROS 프로젝트를 이끌고 있습니다. 


현재 20개가 넘는 기관과 협력하여 개발이 진행이 되고 있으며, BSD 라이선스(Berkeley Software Distribution License)로 공개되어 오픈 소스로 제공되고 있습니다. 


ROS는 로봇 관련 학회를 통해서 알려지기 시작했는데요. 특히 ROSDay와 ROSCon이라는 개발자와 사용자를 대상으로 하는 콘퍼런스가 열리고 있으며 ROS Meetup이라는 이름으로 다양한 커뮤니티 모임을 갖고 있습니다.


또한 ROS를 적용한 로봇 개발도 활발히 진행이 되고 있는데요. Personal Robot이라는 Willow Garage의 PR2, Turtlebot이 대표적인 예라고 할 수 있습니다.


l ROS기반 Robot PR2(좌), TurtleBot(우) (출처: www.ros.org)


ROS의 주요 목표는 로봇의 연구 개발에 쓰인 코드의 재 사용을 지원하는 것인데요. ROS의 코드는 다른 로봇 소프트웨어 프레임워크와 통합할 수 있는데 3D Simulator인 Gazebo, 영상 처리 오픈소스인 OpenCV, 인지 오픈 소스인 PCL(Point Cloud Library), Motion planning library인 MoveIt등과 통합할 수 있어 로봇 개발자들의 많은 참여를 이끌고 있습니다.


ROS는 이와 같이 활발한 개발 생태계를 확장해 가면서 현재 가장 주목 받고 있는 로봇 소프트웨어 프레임워크로 성장하고 있습니다.


② iCub


l CoDyCo - Project (출처: www.icub.org)


유럽 연합에 대표적인 공개형 휴머노이드 프로젝트로는 iCub가 있는데요. iCub는 이탈리아의 IIT(istituto italiano di tecnologia)에서 개발한 휴머노이드 로봇으로 현재 전세계적으로 20개 이상의 연구소에 iCub를 채택하여 연구를 진행하고 있습니다. 이 프로젝트는 전자회로도, 하드웨어 설계도, 소프트웨어 및 관련 자료까지 공개하기로 유명한데요. 소프트웨어는 GPL(General Public License) 기반으로 공개되고 있다고 합니다. 


iCub 로봇은 head, arms & hands, waist 그리고 leg를 움직일 수 있는 53개의 모터로 구성되어 있습니다. 


l iCub 참여 연구소 (출처: www.icub.org)


iCub는 2~3세의 아이를 모티브로 개발이 진행이 되고 있으며, 어린 아이가 인지를 통한 다른 사람과의 상호 작용을 통해 학습을 하는 것과 같이 다양한 센서 시스템을 통해 아이와 같은 인지 능력을 가질 수 있다는 가설을 기반으로 설계 되었습니다.


iCub의 경우 여러 국가, 소속의 연구실이 공동 연구로 진행이 되고 있으며, 정해진 기간 내에 Output을 내는 것이 아니라 지속적인 연구 개발이 가능한 구조로 연구가 진행이 되고 있다는 것이 특징입니다.


③ OROCOS (Open Robot Control Software)


OROCOS는 EU와 벨기에(K.U.Leuven), 프랑스(LAAS Toulouse), 스웨덴(KTH Stockholm)이 협력하여 진행하고 있는 실시간 제어 중심의 플랫폼 개발 프로젝트인데요. 2001년 9월부터 본격적으로 개발을 시작해 2002년 여름에 첫 번째 버전이 발표되었습니다. OROCOS는 Open Robot Control Software의 약자로 범용적인 무료 소프트웨어를 개발하고 로봇과 머신 제어를 위한 로봇 플랫폼에 독립적인 소프트웨어 프레임워크 개발을 목표로 하고 있습니다. 


OROCOS는 어플리케이션 개발을 위한 Real-Time Toolkit, Kinematics, Dynamics Library, Bayesian Filtering Library 와 같은 4개의 C++ 라이브러리를 지원하며 사용 가능한 라이브러리 구축이 프로젝트의 중요한 축이 됩니다.


l OROCOS Libraries (출처: www.orocos.org)


OROCOS Real-Time Toolkit을 제공하고 있는데요. 이를 통해 이전에 사용했던 컴포넌트 또는 타인에 의해 제공되는 컴포넌트들을 선택해 사용할 수 있는 재 사용성의 장점이 있습니다.


그 예로, 2007년 Urban Grand Challenge Competition에서 베를린 레이싱 팀은 OROCOS의 Real-Time Toolkit을 적용한 차로 대회에 참가하였습니다. 또한 2011년 4월 스웨덴에서 개최한 euRoboticsForum에서 참가자들에게 KUKA YouBot을 선보이기도 했습니다.


그러나 OROCOS는 C++클래스 구조만 제공하며 개발 도구나 컴포넌트 등은 제공하지 않고, Real-Time Toolkit 위주의 컴포넌트 실행에 초점이 맞춰져, 멀티미디어와 같은 비 실시간 서비스에 대해서는 적합하지 않은 구조를 갖고 있습니다.


④ OPRoS(Open Platform for Robotic Services)


2007년 한국로봇산업협회를 중심으로 지능형 로봇 개발을 위한 공통기반 플랫폼 기술개발의 과제로 시작된 OPRoS(Open Platform for Robotic Services)는 컴포넌트 기반의 플랫폼을 만들어 재사용성을 높이고 Past Implementation을 가능하도록 하는 것을 목적으로 한 국내 오픈소스 프로젝트입니다.


l OPRoS 개발 및 Community 사이트(출처: www.opros.or.kr)


OPRoS 라이선스는 LGPL과 개별 상용 라이선스로 나누어서 배포되고 있는데요. LGPL은 변경한 소스 코드를 공개하면 상용으로 활용할 수 있으며, 개별 사용 라이선스는 관련 내용을 기술 이전과 라이선스 계약을 하면 소스 코드는 공개하지 않아도 됩니다.


OPRoS는 연구 개발된 결과물을 소스 공개 사이트를 통해 제공하고 있는데요. 무료교육행사 및 경진대회를 통해 OPRoS의 확산시키기 위한 기획•운영하고 있으나 아직까지 보급화가 ROS만큼 이루어지지 않은 상황입니다.


⑤ MRSRS(Microsoft Robotics Studio)


MRSRS는 Microsoft Robotics Studio의 약자로 로봇 분야에 관심이 있는 사람들이 프로그래밍에 대한 기본적인 지식만 가지고 있으면, 다양한 로봇 하드웨어 상에서 필요로 하는 다양한 로봇 어플리케이션을 개발할 수 있도록 지원하기 위한 목적으로 개발된 개발 툴 및 환경입니다.


2006년 말에 출시되어 VPL(Visual Programming Language)라는 Tool을 제공하고 고급 개발자들의 경우 C#을 이용한 서비스나 시뮬레이션 프로그래밍을 할 수 있도록 지원하고 있습니다.


l Microsoft Visual Programming Tool(출처: www.microsoft.com)


MRSRS의 특징은 실제 로봇 하드웨어 없이 3D 물리엔진 기반의 시뮬레이션 환경을 이용해 개발된 프로그램을 테스트 할 수 있다는 점입니다. 참고로 실제 로봇을 정교하게 제어하기 위해서는 다양한 물리적 요소를 감안한 프로그래밍이 필요한데요. 실제 로봇 없이도 이를 가능하게 해 주는 것이 물리엔진 기반의 시뮬레이터이며, 고급 로봇 프로그램을 위해서는 중요한 요소라고 할 수 있습니다.


이외에 일본의 OpenRTM(AIST), NAOqi OS(Softbank), ERSP(Evolution Robotics) 등의 다양한 로봇 소프트웨어 플랫폼 개발이 진행되고 있습니다. 


 로봇 산업 전망


지금까지 로봇 소프트웨어 플랫폼에 대해서 알아보았는데요. 그럼 왜 로봇 소프트웨어가 중요한 것일까요? 현재 국내 로봇 산업은 아직까지는 산업용, 국방, 의료 그리고 재난용 로봇 위주로 개발 및 성장이 되었지만 향후에는 서비스용 로봇이 성장이 증가할 것으로 예상이 됩니다. 글로벌 로봇 시장 규모가 2020년에는 70조원에 달할 것으로 전문가들은 전망을 하고 있습니다.


l 로봇 분야별 성장 현황 (출처: 한국로봇산업협회)


로봇 시장의 증가는 로봇 분야의 생태계의 증가를 의미하는 것인데요. 이를 위한 가장 중요한 요소가 로봇 소프트웨어 플랫폼일 것이며, 이를 통해 새로운 IoT 서비스가 탄생하게 될 것입니다. 


즉, 지능형 로봇이 스마트폰처럼 우리의 삶의 일부분이 되는 날이 온다면 엄청난 수의 로봇과 관련된 서비스가 생겨날 것이고, 이것을 가능하게 하는 것이 바로 소프트웨어 플랫폼이 아닐까 생각합니다. 앞으로 다가올 로봇 시대에서는 인간의 삶이 더 풍요롭고 행복해질 것이라 기대해 봅니다. 


글 l LG CNS IoT사업담당



* 해당 콘텐츠는 저작권법에 의하여 보호받는 저작물로 LG CNS 블로그에 저작권이 있습니다.

* 해당 콘텐츠는 사전 동의없이 2차 가공 및 영리적인 이용을 금하고 있습니다.


저작자 표시 비영리 변경 금지
신고
Posted by IT로 만드는 새로운 미래를 열어갑니다 LG CNS
위로