최적화 솔루션 신속 증명이 핵심
로봇공학은 삶의 질을 향상시킬 수 있는 기회를 제공하고 있다. 로봇이 수술을 하고, 집안일을 대신하며, 자동차가 스스로 움직이는 등 편리한 삶을 영위할 수 있게 될 것이다. 이렇게 복잡한 일들을 수행하기 위해서는 수많은 센서와 액추에이터는 물론, 이를 통합하기 위한 새로운 임베디드 시스템과 더욱 복잡한 기능을 구현할 수 있는 알고리즘이 필요하다. 따라서 엔지니어들은 로봇이 조금 더 복잡한 역할을 수행할 수 있는 여러 가지 방법을 구상하고 있다.
그 중 한 가지는 초기 개발 단계에서 프로토타입을 만드는 것이다. 본격적인 로봇 개발에 앞서 제품에 대한 아이디어를 구현함으로써, 위험이 될만한 요소를 사전에 파악하며, 고객이나 투자자들의 의견을 수렴하고 개발에 긍정적인 효과로 작용할 수 있다. 이러한 새로운 로봇 시스템의 프로토타입 단계에서 도움이 될만한 팁 5가지를 지금부터 소개한다.
1. 아이디어만으로는 가치를 증명할 수 없다
인터넷의 발달로 인해 우리는 언제 어디서나 각자의 생각을 공유할 수 있다. 유튜브, 트위터, 페이스북 등과 같은 SNS를 통해서 각자의 생각을 표현하고, 다른 사람의 생각을 들여다본다. 새로운 로봇 시스템을 개발하기 위해서는 아이디어도 중요하지만, 그 아이디어가 경제적으로 어떤 가치를 가질 수 있는지에 대한 검증이 필요하다. 따라서 로봇의 프로토타입을 만들어야 하고 이를 잠재 고객과 투자자들에게 보여줌으로써, 전문가들의 피드백과 시장에서의 실현 가능성을 확인할 수 있다.
그림 1은 Nexans사가 NI CompactRIO 임베디드 플랫폼을 사용해 제작한 해저 오일/가스 탐사용 스파이더 로봇이다. 로봇을 이용해 수심 1,000m에서 노르웨이 서쪽 바다부터 영국까지 약 1,200km에 이르는 거리의 해저 바닥을 탐사했다. 이는 사람이 할 수 없는 일을 로봇을 통해 실천한 결과다.
[그림 1. 해저 오일 및 가스 탐사용 스파이더 로봇]
2. 개발비용 때문에 시기를 놓치지 마라
엔지니어들은 최적의 결과와 효율적인 솔루션을 목표로 다양한 시도를 한다. 이러한 시도는 고객에게 최종 솔루션을 전달하기 위해서 필수적이다. 흔히 전기/기계적인 시스템의 프로토타입 단계에서는 개발 비용의 제한으로 프로세서, 메모리, 센서, 모터 등 어떠한 제품이 효율적인지 고민하게 된다. 이러한 고민은 소프트웨어 엔지니어들이 코드를 수정하고 최적화하는 시간을 낭비하게 해, 결과적으로는 프로젝트를 마감기한 내에 완성하지 못하기도 한다. 프로젝트가 실현 가능한지 경제적으로 가치가 있는지를 검증하기 위해서 가장 중요한 것은 시간이다. 그러나 대부분의 프로젝트에서 엔지니어들이 개발한 결과물을 보여주기 전에 시간과 돈을 소모하는 경우가 발생한다.
비용도 중요한 요소지만, 프로토타입의 목표는 최대한의 수익성을 낼 수 있는 플랫폼을 만드는 것이기 때문에 로봇이 제공하는 가치를 보여줄 수 있는 시스템을 만드는데 집중해야 한다. 가치에 집중해 프로젝트를 진행할 때 비로소 신기술을 적절한 시기에 공개할 수 있다. 고객들과 투자자들에게 결과물을 보여준 후 관심과 협조를 얻을 수 있다면, 효율성을 극대화시킬 수 있는 방안에 대해서 집중하면 된다.
3. 재구성 가능한 I/O(Reconfigurable I/O)
로봇은 여러 센서와 액추에이터를 통해서 명령대로 움직인다. 이 때문에 센서와 액추에이터는 전체 시스템 설계에 있어서 가장 중요한 부품이다. 그러나 디자인의 시작단계에서 센서 및 액추에이터와 연결될 입출력 채널 개수, 전압 레벨, 샘플링 속도 등의 정보를 정확하게 파악하기는 쉽지 않다. 따라서 프로토타입에 사용할 임베디드 플랫폼을 선택할 경우에는, 채널에 대한 확장성과 유연성을 제공하는 플랫폼을 선택하는 것이 중요하다.
NI RIO(Reconfigurable I/O) 기술은 기성품의 장점과 사용자 레벨의 시스템 제작의 장점을 결합한 기술이다. 다시 말하자면, 임베디드 컨트롤러와 섀시는 그림 2와 같이 기본 구성으로 이뤄져 있지만, 개발자가 원하는 시스템에 맞게 사용하고자 하는 모듈들을 선택해 사용할 수 있다. 또한, 이더넷 통신을 통해서 섀시 확장이 가능하며, 스마트 카메라 및 IP 카메라와의 연동도 가능하다. 그리고 섀시에 꽂아서 사용하는 모듈들은 아날로그 입/출력, 디지털 입/출력, 카운터, 모션, 산업용 통신 등으로 다양하게 구성돼 개발자의 선택폭을 넓혀준다.
[그림 2. NI RIO 기술을 사용한 로봇]
4. 코드 재사용
EETimes가 2012년에 실시한 설문 조사에 따르면, 임베디드 시스템 개발자 중에 약 80% 정도가 새로운 시스템을 개발할 때 기존 시스템에 사용했던 코드를 재사용한다고 응답했다. 다시 말하면, 아무리 기발한 아이디어를 토대로 시스템을 개발한다고 하더라도 대부분의 경우에는 기존 시스템을 토대로 개발하게 된다는 것이다. 따라서 프로토타입을 위한 툴을 선택할 때 소프트웨어 엔지니어들에게는 기존에 사용했던 알고리즘을 모듈화시켜서 얼마나 쉽게 사용할 수 있느냐가 중요한 요소가 된다. NI의 그래픽 기반 프로그래밍 언어인 LabVIEW는 각각의 함수들이 아이콘으로 구성돼 있으며, 자주 사용하는 기능들을 함축해 하나의 함수로 만드는 모듈화 기능이 용이하다. 또한 텍스트 기반의 언어와는 달리, 사용하고자 하는 함수를 와이어로 연결해 빠른 시간 안에 원하는 기능을 구현할 수 있다는 장점이 있다. 이러한 이점은 프로토타입 단계에서 보다 신속한 개발이 가능하게 한다.
5. 프로토타입을 쉽게 보여줘라
로봇의 프로토타입은 잠재 고객과 투자자들에게 첫인상으로 작용할 수 있으므로, 간결하면서도 쉬워야 한다. 보는 사람이 이해하기 쉽게 만들어야 긍정적인 반응을 이끌어 낼 수 있기 때문이다. 더불어, 프로토타입을 신속히 보여주는 것도 중요하다. 빠른 프로토타입을 위해서 용이한 툴을 사용하고, 아이디어가 떠올랐을 때 가능성을 보여줄 수 있는 데모를 빠르게 만들 수 있어야 한다. 하나의 인상적인 데모가 여러 장의 슬라이드보다 더 효과적이다.
프로토타이핑의 중요성
혁신적인 아이디어를 구현시키기 위해서 프로토타입은 필수적이다. 프로토타입 과정을 통해서 아이어가 기술적으로 실현이 가능한지, 경제적으로 가치가 있는지 판단할 수 있으며, 이를 통해서 개발팀의 능력을 테스트하는 척도가 될 수 있기 때문이다. 또한, 아이디어의 개발이 진행되는 동안 발생할 수 있는 잠재적 위험들을 미리 확인할 수도 있다. 궁극적으로 프로토타이핑은 팀과 회사의 성공을 결정지을 수 있는 중요한 과정이므로, 최적화된 솔루션을 신속히 증명하는 것이 핵심이 될 것이다.