連載
» 2015年04月27日 19時00分 公開

ROS(Robot Operating System)概論(2):ロボットに使われる分散処理、なぜ「ROS」が好まれるのか (2/3)

[大原雄介,MONOist]

多く存在するロボットOS、ROSのメリット

 ただこのままだと、実際にロボットの制御を行えるようにするまでの手間が掛かりすぎるのも事実だ。ロボット制御のアルゴリズムを組み込む以前に、全てのコントローラー間のI/Fを自分できちんと定義して、相互に通信が行えるようにするための環境を構築するのに結構な作業量が必要になるからだ。そこで、もう少しロボットの様な分散処理環境に適したソフトウェア環境を作ろう、という動きが1990年代後半から立ち上がってきた。

 日本に関して言えば、この分野での先駆者は電子技術総合研究所(現在の産業技術総合研究所:産総研)で1998年から開発が始まった「ART-Linux」であろう。もともとx86用のLinux 2.0 Kernelに対応したリアルタイムOSとして実装されたが、その後、Kernel 2.2/2.4/2.6に対応する形でバージョンアップされており、さらにx86以外(SH-4など)への移植も行われている。またAMP/SMP環境での利用も可能だ。

photo 産業技術総合研究所と川田工業が開発した「HRP-4」(2010年9月発表)

 実際、国内では「HRP-2 PROMET」や「HRP-3/4」などを初め、100以上のロボットでの採用実績があるとされる。最終的には2013年3月末で産総研における開発・保守は終了している。ART-Linux開発者の1人である加賀美聡博士は、その後もART-Linuxを用いての研究を続けたが、こちらも2014年3月をもって終了している。ただし現在でもオープンソースの形で公開されれているので、誰でもこれを入手してシステム構築できるのは大きなメリットである。

 その他のものだと、最近ではPepperに搭載可能な「V-Sido OS」が非常に有名であるが、こちらに関してはMONOistでも既に多くの記事が掲載されているので割愛する。ちなみにPepperの開発元であるALDEBARANは「NAOqi」という、V-Sido OSとは別のOSをリリースしており、こちらもいくつかのPepperなどの採用例がある。

 産業向けとしては、日本ロボット工業会が2002年に提唱した「ORiN(Open Robot/Resource interface for the Network)」が、その後はORiN協議会によってメンテナンスされている。

 OSではないが、RT-middleware(Robot Technology middleware)と呼ばれるロボット制御用ミドルウェアの規格も提唱され、これはOMGにより標準規格化もなされている(Documents associated with Robotic Technology Component (RTC), Version 1.0)

 RT-middlewareは産総研によるOpenRTM-aisの他、リアルタイムソフトウェアの開発提供を行うセックが.NET Framework上で動作させるOpenRTM.NETやAndroidに対応したRTM on Androidなど各種のプラットフォームにRTMを移植している(OpenRTM.NET:セック)。海外でも、仏GostaiがGostai RTCとして実装するなど、こちらもそれなりに普及している。

 その他にも、OSというよりはミドルウェアという感じではあるが、ロボット制御に必要なものがまとまったライブラリ群+αとして「YARP(Yet Another Robot Platform)」「The Orocos Project」などがあり、OSとしては「DialogOS」やArduinoでロボット制御を行うための「ROBOTC」などもある。

 このように、ロボットに使われることを前提とした分散処理式のソフトウェア環境として、さまざまなものが登場している。ただ、そうした中で一番有名なのがROS(Robot Operating System)である。

関連キーワード

ロボット開発 | ロボット | Pepper | MPU | RTOS | V-Sido


Copyright © ITmedia, Inc. All Rights Reserved.