OSAKA NDS Embedded Linux Cross Forum #3
ROS（Robot Operating System）の概要とイーソルの取り組み
イーソル株式会社
ソリューションエンジニアリング事業部
第四技術部 佃 明彦

Table of Contents• ロボット関連の動向• ROS（Robot Operating System）の概要• イーソルの取り組み

2

自己紹介
• イーソル入社 16年目
• ブルガリア研修 3期生（2000/8〜2001/7）• 主なエンジニア経験• イーソル製RTOS/Middleware関連• JavaVMなど 3rd Party製品の移植• 現在のミッション• 関⻄における受託ビジネスの拡⼤• ROS関連ビジネスの⽴ち上げ• ロボット工学は素人（勉強中）• 間違いはご指摘ください3Table of Contents• ロボット関連の動向• ROS（Robot Operating System）の概要• イーソルの取り組み

4注目されるロボット技術• 2013年12月 Googleがロボット関連企業を買収• 東⼤発ベンチャーSCHAFTが含まれていることが話題に• 2015年2月 政府がロボット新戦略を発表• ロボット社会を実現する為のアクションプランを設定• 2015年6月 ソフトバンクがPepperを一般販売• 2016年4月 ⽇⽴製作所がEMIEW 3を発表
• 2016年6月 ソニーがロボット事業に再参入を発表
5

ロボット市場の⾒通し 1/1• 2014年8月 ボストン・コンサ
ルティングの記事• The Rise of Robotics
https://www.bcgperspectives.com/content/articles/business_unit_str
ategy_innovation_rise_of_robotics/

2025年に670億ドル(6.7兆円)規模• 2010年4月 NEDOの予測• 2035年に向けたロボット産業の将来市場予測 (国内生産量)
http://www.nedo.go.jp/content/100080673.pdf

2025年に5.3兆円規模
急激な右肩上がりの予測絶対値としては⼤きい？小さい？

6ロボット市場の⾒通し 2/2

ここが大きく伸びるらしい

サービス分野が⼤きく伸びるという事は、人間に取って代わるヒューマノイドロボットの時代が到来？

7

ヒューマノイドロボット技術の現状• 2015年6月 DARPA Robotics Challenge Finals• 原発事故を想定した環境での競技会• 多くの失敗が研究者の間で共有された
https://www.youtube.com/watch?v=q_yfvlplJe0&feature=youtu.be
https://www.youtube.com/watch?v=g0TaYhjpOfo• 出場チーム（WPI-CMU）の振り返り• 自律性よりも操作性の向上を• 異常系を考慮すべし（オペレータのミス、バグ、故障）• AIや制御よりもセンサの追加と状態推定の強化を
http://www.cs.cmu.edu/~cga/drc/lessons.ppt

ヒューマノイドの研究レベルは高いが工業製品としての完成度はまだまだ普及までの道のりは遠い

8

生活支援ロボット技術の現状• 2014年2月 国際標準規格「ISO13482」が発⾏• 経産省とNEDOのプロジェクト成果を元にISOで規格化
http://www.nedo.go.jp/activities/EP_00270.html• サイバーダイン、パナソニック、ダイフク、ホンダなど国内企業が相次いで認証取得

https://www.jqa.jp/service_list/fs/action/clientele/

ロボットとしての機能は単純だが用途が明確
規格認証や臨床試験による導入プロセスもよく議論されており、早い普及が⾒込まれる

9

Table of Contents• ロボット関連の動向• ROS（Robot Operating System）の概要• イーソルの取り組み

10

ROSとは何か 1/3• OSSのロボット用ミドルウェア• 米国のWillow Garage社が中心となって開発。現在は非営利のOSRF(OpenSource Robotics Foundation)が維持運営している。パッケージの⼤部分はBSDライセンスで提供されている。
http://www.ros.org/• Ubuntuが標準環境。apt-getで簡単に環境が構築できる。2014年のIndigoからはLTS (Long Term Support)を導入し、⻑期の研究開発でも利用しやすい。
• OSRFの8周年ビデオでの事例紹介
11

ROSとは何か 2/3• 一般的な意味でのOperating Systemではない。
• ROS = Plumbing + Tools + Capabilities +Ecosystemと言われている。
•Plumbing

ノード同士の通信機能•Tools

シミュレーション・経路計画・可視化・ロギング等の開発ツール•

Capabilities

豊富なロボティクス向けライブラリ•

Ecosystem

ユーザコミュニティが支えるエコシステム

12

ROSとは何か 3/3• 分散システム指向• Publish/Subscribe型の通信が基本。
• 通信の型が合っていれば、ネットワーク上のどこにあっても良い。お互いの実装言語が違っても良い。

• 1ノード＝1プロセスが基本。従って

詳説 ROSロボットプログラミング
http://irvs.github.io/rosbook_jp/

ハードウェアの構成に応じて並列化される。

Node A

Node B

Core0
シングルコアNode A

Node B

Node A

Node A

Core0

Core1

Core0

Core0

マルチコアマルチノード
13

ROSを活用したプロジェクトの例
プロジェクト概要

BMW GEN3

BMWが開発した自動運転システムとROSを統合し、遠隔駐⾞や衝突回避機能を追加
http://roscon.ros.org/2015/presentations/ROSConAutomated-Driving.pdf

Autoware名古屋⼤学が中心となりROSベースの自律⾛⾏機能を実装
ZMPのロボットカーで公道実証実験
http://www.pdsl.jp/fot/autoware/

ROS-I

産業用ロボットでROSを利用可能にするプロジェクト
ABB, Adept, Funac, Motoman, Universal Robot等が対応
http://rosindustrial.org/

ROS-TMS

九州⼤学がROSをベースにしたTown Management Systemを構築し、センサ等の環境情報でロボットの知覚を高度化する研究に利用
https://github.com/irvs/ros_tms/wiki

14

組み込みシステムから⾒たROSの課題• システム要件が大きい• PCクラスのハードウェアにUbuntu• リアルタイム性は考慮外

PC(x86)PC(x86)

開発環境

実⾏環境
ROSの標準構成• 実際はノードにぶら下がるマイコンやFPGAでリアルタイム性を確保• 疎結合だが意外とノード構成に依存• Subscriberが増えるとトピックの配信先が増えてPublisherの負荷が上がる問題• 品質保証の問題

OSRF ROSCON2015講演資料より抜粋「ROS2 on “small” embedded systems」• ネット上の情報は多いが最新のリポジトリでは動作しなかったり・・・• 研究過程で品質確保はあまり重要ではない？
15

Table of Contents• ロボット関連の動向• ROS（Robot Operating System）の概要• イーソルの取り組み

16

ET Westデモ• ET West2014• OpenRTM-aist x ROS• ET West2016• ROS on MCU

ET West2016
イーソルブース（B-16）で展示

MCUクラスのプロセッサでROSをサポート
17

自動運転ソフトウェアAutoware• ROS on eMCOSの開発• イーソル製のメニーコアOS上にROSを搭載• ROS上に自動運転システムAutowareを搭載• あいち ITSワールド 2015でデモ⾛⾏• NEDO事業で採択「一般道自動運転システム用メニーコアOSの研究開発」

商用リアルタイムOS上でROSをサポート
Embedded Multicore Consortium2015講演資料より抜粋

18

ROS関連の受託開発• ⾞載機器開発環境• CANドライバ対応• PointCloudの補正・フィルタ処理• ROSツール（rviz・rosbag）のカスタム• 産業用ロボット実験環境の構築• Windows PCとROSのブリッジ機能

User Apps

PC(x86)PC(x86)• ヒューマノイドロボット技術に関する調査• ROSとOpenRTMのシミュレータ連携

ROSを開発に利用したい顧客をサービスでサポート

19

今後の取り組み
まだ社内向けの説明もやってないので、今⽇は明確なプランを語れませんが・・・
商用製品へのロボット技術導入を、プロダクトとサービスの両面で支援していきたいと考えています。
ProductPrototype
ROS Tools

UserApps

PC(x86)PC(x86)

開発環境 &ROS MasterROS Node？
独自機器20まとめ• ロボット技術や市場に対する期待は高いが、現実とのギャップもある。ロボット技術を安心/安全に使えるものにするには、品質確保に向けた地道な取り組みが必要。
• ROSは分散システムの構築に適したOSSのソフトウェアフレームワーク。研究/試作では広く使われているが、組み込み製品に搭載するには課題あり。
• イーソルはロボット技術を安心して製品に導入できるようにサポートしていきたい。研究室にある良い技術を世の中に出していくのは我々の仕事！
21

余談：ロボットの開発をやってみて• 組み込みエンジニアも新しい言語を覚えよう• C++11/14、Boost、Python
C言語どっぷりのマイコン屋さんには少々難しい・・・• 数学も頑張らないと• 線形代数、確率理論
基礎がないと資料を読み解くのも辛い・・・• ROSの参考書• 詳説 ROSロボットプログラミング
GitHubから無償で入手可能。感謝。http://irvs.github.io/rosbook_jp/

22

宣伝：eSOL RTOS• Linuxではありませんが、イーソルのRTOSや開発環境もよろしくお願いします。

23

Thank you.
ET West2016にご来場予定の方はぜひ弊社ブース（B-16）にお⽴ち寄りください

本プレゼンに関するお問い合わせ先
E-mail : a-tsukuda@esol.co.jp