超速解説 ROS

単なる“ロボット用OS”ではない「ROS(Robot Operating System)」の概要と新世代の「ROS 2.0」(3/3 ページ)

研究のROSから実用のROS 2.0へ

 ちなみにこのROSと並行して、2015年から「ROS 2.0」の開発も進んでいる。最初のリリース(alpha 1)は2015年8月にあり、2016年12月にはbeta 1がリリース、現在は最新のbeta 3(2017年9月)が出ており、2017年12月にはbetaの付かない最初のオフィシャルリリースが予定されている。

 ROSとROS2の間に互換性はない(共存は可能)が、これには訳がある。1つは分散型通信システムの問題、1つはROSの使われ方の変化だ。

 ROSの開発当時、適切な分散型通信システムは存在していなかったので、ROSはこれを独自に開発した。ただその後、幾つかの分散型リアルタイム通信システムが普及を見せたこともあり、ROS 2.0ではその1つである「DDS(Data Distribution Service)」を採用している。DDSの採用によって、ROSとROS2に互換性は無くなっている。

 もう1つ、ROSのAPIそのものが、設計時の想定と実際の使われ方に距離が生まれてきたことも互換性が確保されなかった理由といえる。APIそのものを変更すれば実態に即したものとなるが、既存ソフトウェアは動作しなくなる。そのため、別のAPIを設計する方が適切と判断されたのだ。

 具体的にいえばROSはユースケースとして、「1体のロボットの制御」「ワークステーションクラスの制御ボードを使って管理」「リアルタイム性は特に求めない」「ネットワークが常につながっている」「主に研究などの目的」といったユースケースや要件を想定していた。

 登場時はこれで十分であったが、昨今はよりニーズが多様化している。これに向けてROS 2.0ではユースケースや要件として、「複数ロボットによる協調動作のサポート」「マイコンレベルのコントローラーを直接利用可能」「リアルタイム動作のサポート」「劣悪なネットワーク環境でも動作可能」「製品レベルでの利用」を挙げており、こうしたニーズには既存のROSを拡張するよりも、新しく開発したほうが良いと判断されたためだ。

 そんな訳でROSは主にロボットの形をした機器の制御に使われるが、実は分散型システムでは広くROSを利用する余地があり、意外なところでもROS(や今後はROS 2.0)が動いている、ということになるだろう。

ロボット開発」に関するさらに詳しい情報をお求めの方は、MONOistに掲載された記事を再編集した無料電子ブックレット『あのロボットが私のハードウェア予算を食っている!』をぜひご覧ください。「未知の地形を滑らかに歩かせる」を例に、エンベデッドシステム化するロボットについて考えます。 ⇒ダウンロードはこちら

印刷する
SNSでシェア

超速解説

製造業に携わる方ならば知っておきたい「トレンドキーワード」や「技術用語」について、用語辞典よりも少しだけ詳しく、かといって重たくなりすぎない程度に気軽に読める基礎解説シリーズです。

この連載の記事をもっと見る

この記事の著者

新着ホワイトペーパー PR

関連記事

こんなメディアも見られています

TechFactoryに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。

無料会員登録
最新情報をいち早くチェック!

製品カタログや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます(メディアごとに文章は変更)

いますぐ無料会員登録

特集

ホワイトペーパーランキング PR

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10

TechFactory SNS

X @techfactory_itmをフォロー

インフォメーション

TechFactoryをフォロー