2010年3月31日水曜日

ウィローガレージがロボゲーム2010に参加します!

米国西海岸時間 March 31, 2010

4月23日から25日までサンマテオで行われるロボゲーム2010にウィローガレージが参加します。会社からロボットを持ち出しますので、ぜひいらしてください。ロボゲームは私たちがいつも楽しみにしているイベントなのですが、今回はスポンサーとして関わることができるので、さらに楽しみです。去年はカウンターレボリューションがコンバットスタジアムで活躍したのですが、今年はインターン生がファイヤーファイティング(消火)競技に参加します。

ウィローガレージのブースでは、2008年のロボゲームポスターのアーティストJosh EllingsonによるPR2のポスター(8.5x11インチ)を配布します。ぜひ私たちのロボットを見にきてくださいね。

Joshの素晴らしい作品をもっと見てみたいという方は、今週末にサンフランシスコのWonderconに行ってみてください。JoshのFlickrにアップされているこのポスターの制作過程を見ることができます。

この作品のライセンスはCreative Commons (cc by-nc)に帰属します。どうぞ自由にダウンロードや印刷してお使いください。

テキサイのビデオモンタージュ







米国西海岸時間: March 30, 2010

たくさんのみなさんから、どうやったらテキサイのテストを手伝えるの?と質問を受けています。ここでご紹介しますので、しばしお待ちを!

ROSを使ったロボット その10: 自律走行車 Marvin (Austin Robot Technology/UTオースティン)

米国西海岸時間 March 30, 2010

Marvinはオースティン・ロボット・テクノロジー(訳者註: DARPAグランドチャレンジに参加するためボランティアによって結成されたチーム)とテキサス大学オースティン校のコンピュータサイエンス学部による自律走行車です。Isuzuの1999年型ビークロスを改造して2007年のDARPAアーバンチャレンジに参加し、合流、Uターン、交差点の通過、駐車など多くの難しい課題を完遂しました。

Playerプロジェクトなど、Marvinのチームメンバーによるオープンソースのロボット・ソフトウェアへの貢献には長い歴史があります。最近、Marvinのチームメンバーは、彼らのソフトをROSに移植しました。その一環として、オープンソースのコードのリポジトリであるutexas-art-ros-pkgを作成し、自律走行車のためのドライバーと高位ライブラリを提供しています。

アーバンチャレンジに参加したたくさんの自動車と同じように、MarvinはVelodyne社のHDL lidarとApplanix Position and Orientation System for Land Vehicles (POS-LV)を備えています。これらのドライバーはutexas-art-ros-pkgリポジトリ内のapplanixパッケージとvelodyneスタックにそれぞれ公開されています。velodyneスタックは障害物や運転できる地形を検出するためのライブラリと、rviz上で可視化する(ビジュアライズ)のためのツールが含まれています。

さらにMarvinチームはナビゲーションシステムなどMarvinを動かすためのライブラリを提供するart_vehicleスタックもリリースしています。彼らのStageを使ったシミュレーターも試すことができます。

marvin.JPG

コンピュータサイエンス学部のPeter Stone教授のグループはMarvinをマルチエージェントの研究に使ってきました。アーバンチャレンジに使われたアルゴリズムは、彼らの論文"Multiagent Interactions in Urban Driving"で紹介されています。また、より新しい研究としては、 "autonomous intersection management"に取り組んでいます。これは自律走行車が交差点を安全かつ効率的に走るためのマルチエージェントのフレームワークを調査するものです。上のビデオに出てくるように、自律走行車用の交差点は人間が運転する自動車のために設計された交差点よりもずっと多くの自動車を効率的に通過させることができます。より詳しくは、こちらのビデオやKurt DresnerとPeter Stoneによる論文"A Multiagent Approach to Autonomous Intersection Management"を参照してください。

たくさんの方がこれまでMarvinの開発に貢献してきています。ROSへの移植を含む現在のソフトウェア開発はPeter Stone教授の指導の下、Jack O'QuinとDr. Michael Quinlanが中心になって行っています。

原文

2010年3月30日火曜日

全米ロボット週間で会いましょう


米国西海岸時間: March 29, 2010

全米ロボット週間の一環として、ウィローガレージは4月14日にスタンフォード大学のPaul Brest Hallで行われるイベントに参加します。ウィローガレージはPR2とテキサイを持っていくので、この機会に私たちのロボットを見てくださいね。このイベントは午後12時から6時まで。誰でも無料で参加することができます。
その他の参加団体は以下のとおりです。
詳しい情報はこちらです。では会場でお会いしましょう!

原文

2010年3月26日金曜日

HARKをテキサイロボットに搭載



米国西海岸時間: March 25, 2010

人々が顔を合わせて話をするとき、カクテルパーティ効果を経験することがあります。カクテルパーティ効果とは、たとえ人がいっぱいで騒がしい部屋でも、私たちは両耳の聴覚を使ってある一人の話に集中し聞き取ることができるというものです。残念ながら現在のテレプレゼンス技術ではこの重要な能力を使うことができません。しかしありがたいことに、離れた場所にいる人々を効果的に橋渡しするための新しいツールをもたらしてくれている研究者達がすでにいたのです。

京都大学の奥乃博教授、高橋徹特任助教、ホンダ・リサーチ・インスティチュート・ジャパン(HRI-JP)シニア・リサーチャーの中臺一博さん、京都大学と東京工業大学の大学院生4人のみなさんがウィローガレージに1週間滞在し、テレプレゼンスロボットのテキサイにHARKを搭載しました。HARKとは、HRI-JPと京都大学が共同で研究開発しているロボット聴覚システム(Honda Research Institute-Japan Audition for Robots with Kyoto University)のことです。このロボット聴覚システムは、音源定位、音源分離、音声認識特徴量抽出、音声認識機能を備えています。

HARKシステムはROSとテキサイにうまく移植されました。テキサイは8つのマイクを装着した緑色のサラダボールをヘルメットのように頭にかぶせてもらい、ROS用のharkパッケージも用意されました。そして、HARKチームはテレプレゼンス技術の可能性を示す3つのデモをやり遂げました。

最初のデモでは、別のテキサイを介して参加した1人を含む4人がお互いに話し合っている間、HARKシステムを搭載したテキサイがそれぞれの声を分離しています。2つめのデモでは、音源の定位が行われ、音の方向とパワーをレーダーチャートに表示できることがわかります。最後のデモでは、これら2つのデモを1つにしたリモートユーザーのための強力な新しいインターフェースが紹介されています。それはテキサイのリモートユーザーが様々な音や声が聞こえてくる場所をまず特定して、その中からどの音に集中するかを選択できるというものです。そしてHARKシステムはリモートユーザーが望む音を周囲の雑音や余分な声などを除いた状態にして届けます。たとえ人で混み合った場所でも一対一の話ができるのです。

HARKはHRI-JPと京都大学との密接な連携による共同研究、そして奥乃教授のロボット(コンピューター)の聴覚を使って聴覚に障がいがある人を助けたいという情熱によって誕生したものです。HARKはオープンソースで提供されていて、研究目的には無料、商用目的にはライセンス供与も可能です。

2010年3月25日木曜日

Box Turtleの次に来るもの: Webインターフェース






米国西海岸時間: March 23, 2010

現在開発中のROSライブラリの一つに、普通のウェブブラウザからロボットや様々なアプリケーションを制御するためのWebインターフェースがあります。ウェブブラウザはどこからでも使えますし、特にスマートフォンの充実した機能を有効に使うと、ロボットのための強力なインターフェイスになります。

ROSのWebインターフェーススタックはWeb利用可能なROSのロボットに接続し、そのカメラを通して見たり、アプリケーションを立ち上げたりすることができます。その中身はROSメッセージの送受信やサービスの呼び出しができるJavaスクリプトで書かれたライブラリです。

どんなブラウザからでも少しクリックをするだけで、ロボットを起動したりキャリブレーションすることができます。ジョイスティックによる制御やPR2のアームをたたむなどの基本的な機能のためのアプリケーションを作りました。またより高度なアプリケーションも書いていて、あなたが地図上で電源アウトレットの位置を特定し、そこにPR2にプラグを差し込ませるよう指示することができます。今後このWebインターフェースを通じてもっとたくさんのアプリケーションを使えるようにして、ユーザーがWebに接続したどんなデバイスを使って、簡単に自分たちのロボットを制御できるようにしたいと願っています。

さらに現在、次のバージョンのFirefoxとChromeで利用可能なO3Dをベースにした三次元ビジュアライザーション(可視化)機能も開発中です。この三次元ビジュアライザーション環境は物体把持のためのユーザーインターフェースとしてテストされています。

これらの機能はすべてまだ開発中であり、今使うことはお薦めしませんが、今後のリリースにおいて有用なプラットフォームになることを願っています。

原文

2010年3月23日火曜日

ROS 1.1.1がリリースされました

ROS

米国西海岸時間: March 18, 2010

ROS 1.1.1がリリースされました。これはROS 1.2に向けてのテストと開発のための開発版であり安定版ではありません。昨日1.1がリリースされたすぐ後に、新しいサービスジェネレーターにおいてバグ修正が行われました。また他にもいろいろな変更点があります。

変更点リストはこちら

原文

ROS 1.1がリリースされました(開発版)

ROS_1.1_640w.png

米国西海岸時間: March 17, 2010

ROS 1.1がリリースされました。これはROS 1.2に向けて機能をテストし開発するための開発版であって、安定版ではありません。自己責任にてインストールをお願いします。(バージョンポリシーはこちら)

firebreak.jpg

大きな変更点:

  • C++: roscppに大きな変更があり、新しいメッセージのシリアル化API、カスタムアロケータのサポート、コールバック関数のサブスクリプション、非定常サブスクリプション、高速なプロセス間メッセージ通知が含まれています。これらの変更点は古いバージョンと互換性がありますが、さらなるテストとAPIの安定性が必要です。
  • Python: ROSのマスターが別々のパッケージに移動されましたが、rospyクライアントライブラリにはほとんど変更はありません。現在活発に開発が行われているスクリプティング環境roshをサポートするためにPythonのコードベースに内部APIの変更がたくさん行われました。

今後のROS 1.1版ブランチの開発予定についてはROSロードマップをごらんください。

変更点リストはこちら。

原文

2010年3月19日金曜日

ROSを使ったロボット その9: ボッシュ研究所のロボット

米国西海岸時間 March 18, 2010

カリフォルニアにある独ボッシュ社の研究機関ボッシュ研究開発センター(Bosch's Research and Technology Center/RTC)は、過去一年間、セグウェイRMPをベースにしたロボットにROSを使い、探検(exploration)、三次元マッピング、テレプレゼンスの研究を行っています。最近彼らのexplorationスタックのバージョン0.1がbosch-ros-pkgリポジトリにリリースされました。これはROSのnavigationスタックと統合され、2次元の探検(exploration)を可能にするものです。bosch_demosスタックを使うと、この機能をシミュレーション上で試すことができます。


segway_rtc.640w.jpgこのロボットは以下のものを使用しています。

  • Mac Mini 1台
  • SICK スキャナー 2台
  • Nikon D90 1台
  • SCHUNK/Amtec Powercube パン・チルトユニット 1台
  • タッチスクリーンモニター 2台
  • Logitech ウェブカメラ 1台
  • Bosch ジャイロ 1台
  • Bosch 3軸 アクセラレーター 1台

ただし、研究用ロボットですので、頻繁に構成が変更になります。最近視覚情報による自己位置推定研究のためにMac mini、FLEA(カメラ)、Videreのステレオカメラが追加されました。

ボッシュ研究所はリポジトリbosch-ros-pkgに、ドライバー とライブラリをリリースしています。彼らはマッピングとテクスチャ情報の復元に関する手法をICRA2010で発表します。その際にコードも公開されることを期待しています。この手法はレーザーの情報から三次元環境を生成し、そのモデルに表面をマッチングさせ、さらにその表面にカメラ情報をのせて地図を作成するものです。

ボッシュ研究所はROSの初期からのコントリビューターです。bosch-ros-pkgはボッシュが初めてオープンソースのプロジェクトに貢献した、記念すべきリポジトリです。彼らはROS Box Turtleに入っているSLAMの機能を向上させるためのros-pkgリポジトリにも尽力してくれました。そして現在研究中の視覚オドメトリライブラリの改善にも貢献してくれています。

原文

2010年3月18日木曜日

ROSを使ったロボット その8: ジョージア工科大介助ロボット


米国西海岸時間: March 17, 2010

ヘルスケアロボティックスラボ(HRL)はヘルスケアを向上させるためのロボットマニピュレーションと人間とロボットのインタラクションの研究に焦点をしぼっています。 HRLの研究者はROSをEL-EとCodyという2つ介助ロボット上で使ってきました。また彼らは開発したソースコードを開発しgt-ros-pkgに公開しています。

HRLは最初、"物理的、知覚的、意味的タグ"の研究のためEL-EでROSを使い始めました(論文)。EL-Eは様々なセンサーとKatanaアームをVidere社の移動ベースERRATICの上に搭載しています。下のビデオでは、ロボットが相互作用する現実の世界にある物体を、人々がレーザーポインターを使って選択できるレーザーポインターインターフェースを含めEL-Eのたくさんの機能をごらんいただけます。

HRLは多くの研究をPythonを使って行っていますので、北陽電機製のUTMレーザーレンジファインダー用、Thing Magic製のM5e RFIDアンテナ用、リニアアクチュエーターZenither用などを含むEL-Eのたくさんのハードウェア用のPythonラッパーを見つけることができます。またCAD図表や自分で北陽製の三次元スキャナーの角度を変化させるソフトを構築するためのソースコードもあります。

下のビデオでは、HRLの新しいロボットCodyもごらんになれます。

エンドイフェクターとコントローラーについては論文"Pulling Open Novel Doors and Drawers with Equilibrium Point Control" (Humanoids 2009)で説明されています。また彼らはエンドイフェクターのCADモデルも開発していて、そのソースコードはROSパッケージ2009_humanoids_epc_pullに公開されています。

一般的に使われているハードウェアのためのオープンソースのドライバー、彼らのCADモデル実験用のハードウェアのモデル、彼らの論文に沿ったソースコードの提供といったように、HRLは彼らの研究をオープンにしています。より詳しくは、こちらをごらんください。

原文

Box Turtleの次に来るもの: アームナビゲーション

arm_navigation.png

米国西海岸時間: March 16, 2010

前にご紹介した移動ベースのためのナビゲーションスタックに類似したアームのためのナビゲーションスタックの開発に取り組んでいます。 これには、ロボットマニピュレーターための衝突検出、軌道フィルタリング、動作計画とPR2ロボットのための特別な運動学の実装に使われる幅広いライブラリが含まれています。

私たちは、この取り組みの一環として初めてアームの動作計画のための研究用スタック一式のリリースを発表できることを嬉しく思います。これらのスタックには、高位のアームナビゲーションスタックとともに、動作計画動作計画(共通)動作計画(環境)動作計画(可視化)運動学衝突(環境)軌道フィルターと呼ばれる汎用スタックが含まれています。またPR2専用のスタックもあります。これらのスタックはすべてBox Turtle上にインストールができます。

インストールについて

これらのスタック一式を開発するにあたり、以下の共同研究者やインターンの方々が過去2年間に渡り重要な貢献をしてくれました。
  • Ioan Şucan(ライス大学 Lydia Kavraki研究室)は、ウィローガレージでの2008年と2009年の夏期インターン中にこのフレームワークの最初のバージョンを開発し、それ以降も重要な貢献をし続けています。Lydia Kavraki研究室で何年もかけて開発された様々な確率的計画法を含むOMPL計画ライブラリも彼の貢献の一つにあげられます。

  • ペンシルバニア大学 Maxim Likhachevのグループ (ウィローガレージ2009年夏期インターンBen Cohenもその一人)は研究段階のものとしては最新手法の動作計画を組み込んだ計画ライブラリSBPLに貢献しました。

  • USC(南カリフォルニア大学)のMrinal Kalakrishnanは、ウィローガレージでの2009年のインターン中に動作計画ライブラリCHOMPを開発しました。このライブラリはNathan Ratliff、Matthew Zucker、J. Andrew Bagnell、Siddhartha Srinivasaらの研究成果を土台にしています。
彼らの他にも、ウィローガレージのRadu RusuMatei CiocarleiKaijen HsiaoとCMU(カーネギーメロン大学)のRosen Diankovからも貢献がありました。

これらのスタックは現在は安定したAPIを持たず変更が予想されるため、研究用スタックに分類されています。私たちは、主要なライブラリをできるだけ早く成熟させ、安定したソフトとしてリリースしたいと思っています。一方他のスタックも世界中のロボット開発コミュニティからの最新の動作計画研究を取り込み続けていきます。コミュニティのみなさん、ぜひこれらを試してフィードバックと貢献をしてください。最初は、arm_navigationのウィキページから始めるとよいと思います。また、チュートリアルのリストも増え続けています。

これらのスタックを利用したデモを紹介したブログ記事
  1. 東京大学JSKによるデモpr2_kinematics

  2. プラグ差し込みの向上pr2_kinematics

  3. 階層的計画OMPLmove_arm

  4. ハノイの塔move_arm

  5. テーブル上の物体の検出move_arm
下のビデオで、Ben Cohen、Mrinal Kalakrishnan、Ioan Şucanの研究成果をごらんください。

個々のスタックやパッケージのWikiページで現在の開発状況が説明されています。ほとんどのパッケージでROS APIのレビューが終わりましたが、C++のAPIはまだレビューされていません。
ROS APIをぜひ使っていただきたいと思います。このAPIが安定し続けるように最善の努力をしていきます。C++のAPIはまだ活発に開発が行われていますが(より詳しくは各Wikiページの"Roadmap(開発計画)"をごらんください)、次のリリースではそのうちいくつかを安定化させたいと願っています。

バグの指摘、機能のリクエスト、どうすればもっとよくなるかなど、意見やアドバイスを気軽にお寄せください。特に動作計画の開発者のみなさんには、ぜひ自分の動作計画手法とこれらの統合を考察していただきたいと思います。私たちは、コミュニティで開発されたコンポーネントが簡単にプラグインできるようにこのシステムのアーキテクチャのモジュラー化を試みています。またこれらのスタックを他のロボットに使っている研究者のみなさんには、ぜひ経験をフィードバックしてくださるようお願いします。

それでは。

アームナビゲーションの開発チームより

Sachin Chitta、 Gil Jones (ウィローガレージ)
Ioan Sucan (ライス大学)
Ben Cohen (ペンシルバニア大学)
Mrinal Kalakrishnan (南カリフォルニア大学)


ビデオ


Ioan ŞucanによるOMPLブログ記事


Ben CohenによるSBPLブログ記事

Mrinal KalakrishnanによるCHOMPブログ記事

2010年3月16日火曜日

Box Turtleの次に来るもの: PR2キャリブレーション


米国西海岸時間: March 15, 2010

最近の投稿で、ROS Box Turtleに含まれるたくさんの有用なライブラリやツールの中から三次元ビジュアライザー(可視化ツール)rvizナビゲーションスタックを紹介しました。これからは私たちが今後のリリースのために開発中のものにもスポットを当てたいと思います。

初回は、PR2キャリブレーションスタックです。PR2は2台のステレオカメラ、2台の前腕部カメラ、1台の高解像度カメラ、そして頭部にはチルトするものとベースには固定のレーザーレンジファインダーを搭載しています。ロボットの動きと組み合わせるためのセンサーのデータは膨大な量になります。

PR2キャリブレーションスタックは、最近プラグ差し込みのコードを改良する時に、私たちをとても楽にしてくれました。8ヶ月前はPR2の運動学とセンサーの間に正確なキャリブレーションがなく、最初のプラグ差し込みのコードは、電源アウトレットの位置を決めるために螺旋状に動いてアプローチするという強引な方法をとっていました。この新しいキャリブレーション機能は、一気にプラグをアウトレットに差し込めるという新たな能力をPR2に与えてくれました。

上のビデオは、研究者が簡単に自動化されたプロセスでキャリブレーションを行えるようになるために、私たちがどう取り組んでいるかをご紹介しています。PR2は、センサーの前のいろんな位置で小さな市松模様のボードを動かすことで、多くのセンサーを自動的にキャリブレーションすることができます。ランチに行く前にプロセスを始めれば、戻ってくるまでにロボットのキャリブレーションはすっかり出来上がってるんです。さらに私たちは、各々のセンサーがいかによくキャリブレーションされたかが研究者にわかりやすくなるようなツールも開発しています。

PR2キャリブレーションスタックは現在まだ開発中ですが、Box TurtleでPR2を使っている人には使用が可能です。今後は幅広いハードウェアをサポートできるROSライブラリとして成熟していくことを願っています。

ROSを使ったロボット その7: 東大JSKのHRP2-V

米国西海岸時間: March 15, 2010

HRP-2Vは、川田工業製HRP-2プロメテを改造したロボットです。HRP-2の上半身、アーム、頭部センサーを使っていますが、それらはヒューマノイドの脚ではなく全方位移動のベースの上に搭載されています。東京大学JSK研究室はこのプラットフォームをハードウェアとソフトウェアの研究に使っています。

JSKとウィローガレージのコラボレーションとして、2009年5月に行われたICRA2009でROSナビゲーションスタックがHRP-2V上に短時間で統合されました。その少し前、JSKチームはウィローガレージに1週間滞在して、彼らのソフトウェアをROSとPR2へ統合しました。
ICRA2009は神戸で行われ、ウィローガレージもブースを出しました。ブースの横にラップトップとHRP-2Vを準備し、JSKとウィローガレージはHRP-2VへのROSナビゲーションスタック搭載に取り組みました。カンファレンスが終わるまでに、HRP-2Vは地図を作成し会場をナビゲーションできるようになりました。


2010年3月13日土曜日

ROSを使ったロボット その6: プレーリードッグ(Correllラボ)

米国西海岸時間: March 11, 2010

アルデバランのNaoと同じく、コロラド大学Correll研究室のプラットフォーム、「プレーリードッグ」もお互いの研究成果を活用しながら形成されていくROSコミュニティの一例になっています。何よりいいのは、あなたも自分で作れるという点です。

プレーリードッグはiRobot Createの上に作られた教育、研究用の統合プラットフォームです。移動、運動学、センシング、位置同定など主要なトピックの他、協調などマルチロボット独自の課題を教育研究するコロラド大学のマルチロボットシステムコースで使用されています。地図作成と位置同定を含むプレーリードッグのソースコードはROSリポジトリprairiedog-ros-pkgの一部として利用が可能です。

プレーリードッグは、市販されている様々なハードウェア、例えばiRobot Create ベース、CrustCrawlerの4自由度アーム AX-12北陽電気レーザレンジファイダ URG-04LXHAGIZONICの室内用位置認識システム スターゲイザーLogitechのウェブカメラ QuickCam 3000を使っています。Correll研究室は、brown-ros-pkgのirobot_create、robotis等のROSパッケージを活用して自分たちのprairiedog-ros-pkgを作り公開することができました。またプレーリードッグは、モーションプランニング環境のライブラリであるOpenRAVEと統合されています。

2010年秋からRoadNarrows Roboticsが、すべての市販部品の他、予備ナットやボトルが入ったプレーリードッグのキットを販売します。価格はまだ発表されていませんが、ネットブックを含む基本的な部分はたぶん3500ドルぐらいになるのではと思います。

さらに詳しくは
をごらんください。

(写真は、家族連れに囲まれ忙しく地図作成するプレーリードッグ)

2010年3月12日金曜日

Box Turtleの中身 その3: rosbagによるロギングとプレイバック


米国西海岸時間: March 11, 2010

ロギングとプレイバック(ログデータ記録と再生)は、ロボットのソフトウェア開発にとって最も重要な機能の一つです。エンジニアがハードウェア診断用のデータを記録したり、研究者がデータセットを収集したり、開発者がアルゴリズムをテストしたりしますが、そのどれにおいても、ロボットから得たデータを記録し、それを再生できるというのは、極めて重要なことなのです。ROSはこれらのニーズを"バッグファイル"とrosbagrxbagといったツールで支援します。

rosbagは、単純なテキストデータであろうが画像などの大量のセンサデータであろうが、どんなROSデータソースからのデータもバッグファイルの中に記録できます。またこのツールは、複数のコンピュータのプログラムからのデータも記録できます。そしてrosbagは記録されたとおりにデータを再生することができるので、まるでそっくり同じように見えます。これはソフトウェアをテストするために、実際のロボットから記録したデータを使ってバーチャルなロボットを作ることができるということを意味しています。適切なバッグファイルがあれば、自分のロボットを持つことすら必要なくなります。

あなたが蓄積したデータの管理を助けるツールもいろいろあります。たとえば、データのフィルタリングやデータフォーマットの更新のためのツールです。研究用データセットのラベリングのためにバッグファイルをAmazon Mechanical Turkに送る作業を管理するツールもあります。データのビジュアライゼーション(可視化)用には、多用途のツールrxbagがあります。rxbagは動画編集ソフトのようにカメラのデータをスキャンしたり、数値データを表示したり、生のメッセージデータを見ることができます。あなたのデータのタイプに合わせてビューアを指定するためのプラグインを書くこともできます。

rosbagとrxbagを実際に使っている様子をビデオでごらんください。このツールは両方共ROS Box Turtleに含まれていて、ROS.orgからダウンロードが可能です。

テキサイが小学校にやってきた!


米国西海岸時間: March 11, 2010

先週の金曜日は、カリフォルニア州クパティーノ市のWilliam Regnart小学校でディカバリーデーがありました。子どもたちにいろんな職業を知ってもらおうというイベントですが、医師、消防士、看護師、犬の調教師に混ざって、テキサイ(テキサスロボットの新しい呼び名)の姿がありました。インディアナ州シーモアで働いているウィローガレージの電気技師であるDallas Goeckerと、小学校の近くにあるウィローガレージオフィスで働いているソフトウェアエンジニアのRob Wheelerが彼らの仕事とテレプレゼンスロボットのテキサイについて紹介しました。もちろんDallasはテキサイを介しての参加です。

Dallasは4年生の教室で子どもたちや机のまわりを動き回り、テキサイでどんなことができるのか実際に見てもらうことができました。校庭でワイヤレスが届かなかった時は少しからかわれてしまいましたが、DallasとRobは感謝状をいただき、今でも誇らしげにテキサイに張られています。

2010年3月11日木曜日

ROSを使ったロボット その5: Care-O-bot 3 (フラウンホーファーIPA)


米国西海岸時間 March 10, 2010

Care-O-bot 3は独フラウンホーファーIPA(生産技術・オートメーション研究所)によって設計された移動マニピュレーションロボットで、 商用のバトラー(使用人)ロボットとしても、研究用プラットフォームとしても利用することができます。Care-O-botのソフトは最近、短期間のうちにROSに統合され、すでに低位のデバイスドライバーからGazeboでのシミュレーションまでサポートされています。

このロボットでは、片側でマニピュレーション、もう片側ではインタラクションが可能になっています。マニピュレーションを行う側には、物体を把持するためのSDHグリッパがついたSCHUNK製のLightweight Arm 3(軽量アーム3)が備わっています。またインタラクションを行う側には、インプットだけでなく「アウトプット」もできるタッチスクリーン付きのトレイがついています。人々は、タッチスクリーンを使って飲み物を注文するなどのタスクを選ぶこと(インプット)ができ、トレイは注文された飲み物などの物体をのせてその人のところまで運ぶこと(アウトプット)ができます。

Care-O-botの研究のゴールは、

  • このハードウェアのためのオープンソースのリポジトリを提供する
  • コンポーネントのシミュレーションモデルを提供する
  • Care-O-bot 3へのリモートアクセスを可能にする

の3点です。

最初の2つのゴールは、オープンソースのROSレポジトリであるcare-o-botとしてすでに行われていて、ドライバーやシミュレーション、基本的なアプリケーションなどが公開され利用可能となってています。ソースコードをダウンロードしベースを操縦したり腕を動かしたり、といった様々なタスクをシミュレーションすることが簡単にできます。そしてこれらのことが、彼らのウェブポータルを使ってCare-O-Botの実機にリモートアクセスするという3つ目の目標を可能にします。

cob3_tech_specs.640w.jpg

センシングに関しては、Care-O-botはSICK製のS300レーザースキャナーを2つと北陽製のURG-04LXレーザースキャナーを1つ、Pike製のfirewireカメラF-145をステレオビジョン用に2つと、Swissranger製のSR3000とSR4000を備えています。 cob3_driverスタックにはROSとこれらのセンサーを統合するsick_s300cob3_camera_sensorscob3_hokuyoといったパッケージが提供されています。

Care-O-botはSCHUNK製のLWA3アーム、SDHグリッパと、人や環境と相互作用するためにPRL 100につけられたトレイを備え、CANインターフェースによって動きます。さらにSCHUNK製のパン・チルト可能なユニットPW 90とPW 70 panを備えているので、発砲体でできた胴体がおじぎすることができます。このCANインターフェースはCare-O-bot向けROSパッケージであるcob_generic_cancob_canopen_motorlibpcanlibntcan用のラッパーなどによってサポートされていて、SCHUNK製のコンポーネントはsdhpowercube_chainlibm5apiパッケージによってサポートされています。

下のビデオではCare-O-botが動いている様子をごらんになれます。(注: Care-O-botのソースコードはまだROSに統合中で、このビデオに出てくる機能はまだROSリポジトリには入っていません。)

原文

ROSを使ったロボット その4: スタンフォード自律走行車 Junior


米国西海岸時間: March 9, 2010

Juniorはスタンフォードレーシングチームの自律走行車です。DARPAアーバンチャレンジで僅差2位となったことで有名です。市街地(軍事基地跡)でのレースは、交通ルール、駐車、追い越しなど、現実の運転で必要な多くの課題に従わなくてはならない難しい環境ですが、見事ナビゲーションを成功させました。

Juniorをよく知る人はおそらく「JuniorはROSを使ってない。IPCを使ってるんだ」と言うでしょう。

確かにそれはほとんど正解なのですが、最近研究者たちはJuniorの障害物分類システムにROSの知覚ライブラリーを使い始めたんです。

ROSを始めた時からのゴールの一つは、ライブラリーを小さく分けて作るのを守っていくことでした。それによってROSを少しだけでもたくさんでも、自分の使いたい分だけ使うことができます。小さなi-SOBOTの場合、開発者はROSのPS3コントローラー用ドライバーだけを使えました。もし構造が大きくなりすぎると、他のシステムとの統合が難しくなってしまいます。

Juniorの場合、Alex Teichmanは彼が去年ウィローガレージでの夏期インターン中に開発に取り組んだROSのイメージ・ディスクリプターをJuniorに実装することができました。彼はJuniorの障害物分類システムの開発のために、このライブラリをROSのポイントクラウドライブラリーと一緒に使っています。チームの他の開発者も、今後適切なプログラムがあればROSを選ぶことが許されます。

Alexのイメージ・ディスクリプターについて、詳しくはros.org/wiki/descriptors_2dで。

2010年3月9日火曜日

ROSを使ったロボット その3: Nao


米国西海岸時間: March 8, 2010

アルデバランロボティクスのNaoは、研究や教育用に販売されている身長約60cmのロボットです。Naoは小型ですが、4つのマイク、2つのVGAカメラ、頭上のタッチセンサー、赤外線センサーなど、たくさんのものを備えています。

コードのオープンソース化によって、共通のハードウェアでのコミュニティの協力がいかに迅速に行われるようになるか、ROSで動くNaoを使うことで実証されてきています。

ROS用の最初のNaoドライバーは、2009年11月にブラウン大学RLABによってリリースされました。このリリースには頭部コントロール、テキストの音声変換、基本的ナビゲーション、前面カメラへのアクセスが含まれていました。そのたった2、3日後にフライブルク大学(ドイツ)のヒューマノイド・ロボット研究室がブラウン大学のNaoドライバーを使って、走行距離測定、ジョイスティックでの遠隔操作を含む新しい機能を開発したんです。しかも開発はそこでは終わりませんでした。同12月、ヒューマノイド・ロボット研究室は、IMU(Inertial Measurement Unit 慣性計測装置)情報、URDF形式モデル、rvizでのデータ可視化など多くを加えて、Nao用の完全なROSスタックを作り上げたのです。

Naoのソフトウェア開発キットには、オープンソースであるOpenCVライブラリのサポートもすでに組み込まれています。フリーで使用できる何百種類ものROSパッケージにつながることで、今後、Naoにどんな機能が加わっていくのか楽しみです。

ブラウン大学では、オープンソースとROSを研究過程にも活用しています。
「ROSコードを書き公開することは、今や論文と同じくらい、私たちの研究を広く知らしめるために欠かせなくなりました。
ROSは、ロボット研究者がその研究成果を発表し、最先端の研究をさらに加速させることができる最良の方法なのです。」(ブラウン大学 Chad Jenkins教授) 

フライブルク大学のNaoスタックはalufr-ros-pkg、ブラウン大学のNaoドライバーは、iRobot Create用ドライバーとGstreamベースのウェブカム用ドライバーと一緒にbrown-ros-pkgにあります。

Box Turtleの中身 その2: 3D可視化ツール rviz 


米国西海岸時間: March 7, 2010

ROS Box Turtleには、ナビゲーションなどの主要なライブラリに加えて、ロボットのアルゴリズムやアプリケーション開発のために有用な様々なツールも含まれています。中でも最も使われているのがROSビジュアライゼーション・スタックの一部である、三次元環境の可視化(ビジュアライゼーション)ツール、rvizです。

rvizは、三次元のポイントクラウド、カメラデータ、マップ、姿勢、任意の可視化マーカー等の情報をカスタマイズして見ることができます。rvizは実際の物理的世界とロボットがどう見ているかの違いを示すことができ、ロボットが何をしようと計画しているかをユーザーに表示することができます。

ROSのrvizツールで何かできるか、詳しくは上のビデオをごらんください。ドキュメンテーションまたはソースコードのダウンロードはros.org/wiki/rvizからどうぞ。

東大JSK - 今回はPR2で部屋をお片付け


米国西海岸時間: March 8, 2010

東京大学情報システム工学研究室(JSK)の3人の研究者(花井亮さん、山崎公俊さん、矢口裕明さん)が2週間の春休みを利用して、PR2ベータロボットとROS 1.0を体験しにやってきました。東京大学JSK研究室のウィローガレージへの訪問はこれが2度目ですが、PR2を初めてさわる研究者がどのように使うのか、私たちは楽しみにしていました。

訪問前にROSチュートリアルを少し勉強してきただけでしたが、彼らはすぐに三次元認識、ナビゲーション、コントローラーなどのROSライブラリの使い方を習得し、2週間の滞在で、PR2に様々な片付けをさせる4つのデモを行いました。
その1つめは、テーブルの上に置かれた小物を検出し、トレイにのせ、部屋を横切って他の場所にに運ぶというものです。2つめと3つめは、PR2が皿と衣類を掴み上げて持ち運び、片付けます。最後のデモは2つの似たもの(本と箱)を見分けるための画像処理を使っています。

これらのデモでは、認識のためのさまざまなアプローチが要求されました。彼らは、模様のない皿には円形検出機能、衣類にはシャツのシワを使い認識させました。本と箱については、まずPR2は各々のアイテムを自分でカメラの近くまで引き寄せた上で、SURFを使って判別しました。
きれい好きになったPR2のおかげで、もうすぐ私たちはオフィスの整理整頓をしなくてすむようになるかもしれませんね。

コミュニティによるROSドキュメンテーションの日本語化が始まったばかりであるにもかかわらず、このチームが達成したことに、私たちは非常に感動しました。上のビデオでは、JSKのチームのデモとともに、彼らのウィローガレージについての生の声を聞くことができます。また去年6月に私たちが日本にいって、ナビゲーションスタックをJSKの川田工業製HRP2-Vロボットに実装した時のビデオもご覧ください。

2010年3月5日金曜日

ROSを使ったロボット その2: i-SOBOT


米国西海岸時間: March 4, 2010

ROSは日本でも、初期に導入してくれた献身的な方々や翻訳に取り組んでくださっているコミュニティの方々のおかげで、勢いが増しはじめています。昨年、ROSナビゲーションスタックが東京大学の川田工業製HRP2-Vに実装されました。そして今同じように、ホビーロボットでも使われています。

ROSライブラリは、小さくバラバラに使うことが簡単にできるよう設計されています。この場合、ROSを少し使うことが「最小のヒューマノイドロボットをROSでコントロールする」という要求につながったと言えます。このビデオが説明しているように、ROSはロボットの上を走っていません。i-SOBOTはArduinoにつながっていて、それがPCでROSにつながり、PS3のコントローラーで動かせるようになっているのです。

ROSナビゲーションスタックのような大きなものであれ、PS3コントローラドライバのような小さなものであれ、私たちはコードが再利用されるのを見ていつも興奮しています。

このデモビデオは、ROSに関する日本語ブログ「ROS勉強記録」の筆者oguttiさんがアップしたものです。つい最近、彼はCare-O-bot 3のシミュレーションについても書いていました。

oguttiさんの日本語ROSブログに加えて、ros.org/wiki/jaでROSドキュメントの日本語訳の進行をごらんいただくことができます。

原文 Robots Using ROS: i-Sobot (ROS.orgより)

ROSを使ったロボット その1: STAIR 1

米国西海岸時間: March 3, 2010

ROSライブラリには、非常に多くのリポジトリが公開されています。そこでこれからROSが使われている様々なロボットにスポットを当ててみたいと思います。最初に取り上げるのにふさわしいのは、やはりROSの発祥地、STAIR1(スタンフォード人工知能ロボット1)でしょう。Morgan Quigleyは、彼らの移動マニピュレーションプラットフォームにロボットフレームワークを提供するために、スイッチヤードフレームワークを作成しました。ソフトウエアの構築は、移動マニピュレーションロボットの課題を明らかにするレッスンになり、そこからROSが誕生したのです。

移動マニピュレーション空間における問題は、1つのグループが解決するには大きすぎます。認識、ナビゲーション、視覚、把持という別々の課題に取り組むには複数のチームが必要なのです。STAIR1はこうした課題を明らかにするために作られた研究用ロボットであり、NeuronicsのKatanaアーム、セグウェイのベース、変幻自在なセンサアレイ、他にもカスタムレーザラインスキャナ、北陽のレーザレンジファインダ、AxisのPTZカメラなどからできています。研究環境でこのプラットフォームのための開発を行った経験が、小さなコンポーネント、シンプルな再構成、軽量なカップリング、簡単なデバッグ、拡張性など、ROSにも非常に役立っています。

STAIR 1は、口頭によるコマンドを受け取ってホチキスを見つけることから、ドアを開け、エレベータを操作するなど、様々な研究課題に取り組んでいます。下のビデオではSTAIR 1がエレベータを操作しています。

STAIRプログラムに関して、より詳しく知りたい方は、stair.stanford.eduでビデオをごらんください。Morgan QuigleyがIROS2009のワークショップで使ったROSとSTAIRに関するスライドも見ることができます。

ROSへの多大な貢献とSTAIR特有のライブラリがsail-ros-pkg.sourceforge.net/ にあります。エレベータ操作に使われたコードも含まれています。


原文 Robots Using ROS: STAIR 1 (ROS.orgより)

Box Turtleの中身 その1: ROSナビゲーション


米国西海岸時間: March 3, 2010

ROSディストリビューション「Box Turtle」がリリースされたので、その主要な機能の紹介と次のリリースに向けて現在取り組んでいる機能をいくつかご紹介したいと思います。

第1回めは、おそらくROSライブラリの中でも最も広く使われているであろうナビゲーションスタックです。このナビゲーションスタックは、ROSコミュニティのいたるところで使用されていて、大きなものから小さなものまでロボットを動かしています。スタンフォード大学、Bosch、ジョージア工科大学、東京大学を含む多くの研究機関が、自分たちのロボットにこのライブラリを実装してきています。

ROSナビゲーションスタックは堅牢で、オフィス室内という環境で数日間をかけてマラソン距離(42キロ)の自律走行を達成しました。ロボットがオフィスにころがっているスクーターを避けたり、角に隠れて見えないところを走行するときなど、このナビゲーションスタックはロボットに雑然とした現実的な環境で動くための機能を提供します。

ROSナビゲーションスタックでどんなことができるのかについて、より詳しくは上のビデオや ros.org/wiki/navigation からソースコードをダウンロードしたり、ドキュメントをご覧ください。

2010年3月4日木曜日

ROSディストリビューション「Box Turtle」リリース!


米国西海岸時間: March 1, 2010

はじめてのROSディストリビューション「Box Turtle」がダウンロード可能になりました!ディストリビューションの定期的なリリースによって、安定性が向上することとROSの導入が促進されることを願っています。

ROSディストリビューションはLinuxディストリビューションと同様、テスト済み、リリース済みの幅広いライブラリを一緒に提供します。Box Turtleには最近リリースされたたくさんの1.0(安定版)ライブラリが含まれています。これらBox Turtleの1.0ライブラリは安定したAPIを搭載しているので、バグの修正時のみアップデートされます。また次の「C Turtle」のリリース時に、古いバージョンとの互換性を保つよう努力を続けていきます。

ディストリビューションのリリースには、たくさんの利点があります。あなたが一貫性のあるROSライブラリのセットを使って試しに開発してみようと考えている開発者であれ、ロボット研究の教材を開発するために安定性のあるプラットフォームを必要としているインストラクターであれ、共有インストールをしようとしている管理者であれ、誰にとってもディストリビューションによって、ROSをインストールしたりリリースしたりするプロセスが単純化されます。またBox Turtleにより、新しい機能は古いバージョンとの互換性を保てるだろうかと心配することなく、簡単にバグの修正ができるようになります。

Box Turtleのリリースによって、Ubuntu debianへのROSのインストールは非常に簡単になり利便性が向上しました。"apt-get install"を使ってROSとたくさんのライブラリをインストールできるんです。私たちはこの機能をウィローガレージのすべてのロボットへのROSのインストールに使ってきています。PR2のブラグ差し込みチームは、Box Turtleのライブラリを利用して改良コードを書けたので、時間の節約と高い安定性を得ることができました。

Box Turtleには、ROSのみのインストールの他に「base」と「pr2」の2種類があります。「base」はナビゲーションやビジュアライゼーション(可視化)など主要な機能やツールを含むもので、「pr2」にはPR2の共有インストールで使うライブラリやシミュレーション上でPR2を動かすのに必要なライブラリなどが含まれています。ロボットはパーソナルコンピューターよりも種類が様々なので、次のバージョンでは他のロボットのハードウェアもカバーしたものをリリースできれば、と思っています。

Box Turtleのための新しいインストール手順を作成しました。ぜひ試してみてご意見を聞かせてください。

2010年3月2日火曜日

ディレクター、PR2ベータプログラムを語る


米国西海岸時間: March 1, 2010

今年の初め、PR2ベータの無償提供先の募集を開始し、120もの応募意思表明をいただきました。
今日3月1日はいよいよプロジェクトの最終提案書の締切り日です。このプログラムに興味をもってくださったすべての方々、プロジェクト案取りまとめにご尽力くださった方々に、心から感謝いたします。最終提案書を読ませていただくのがとても楽しみです。

上は、PR2、ROS、PR2ベータプログラムについてのビデオです。ぜひごらんください。

(以下はビデオの内容です。)

「PR2ベータプログラムについて」

今やパーソナルコンピュータが、私たちの生活に不可欠なものとなったように、パーソナルロボットにも同じような未来が待っています。まだ先は長いですが、確実に前に進んでいます。

これまでは、移動用の車輪の製作など本来のロボット研究開発以外の部分に多くの時間を費やさなければなりませんでした。PR2+ROSというプラットフォームを提供することによって、研究者はプラットフォームに悩まされることなく開発に専念でき、リソースの共有が効果的に行われるようになります。

PR2ベータプログラムでは約10台のPR2ロボットを、大学、企業、ハッカー(コード開発者)コミュニティなどに無償で提供します。PR2がウィローガレージの外でも使われるようになれば、開発コミュティ全体が育ちますし、お互いに開発の成果を公開し、活用しあうことで、開発が促進されます。

「ソフトウェア開発者のためのロボット」

PR2ROSは、より良い環境でソフトウェア開発を行えるよう、細部にこだわって作られています。例えばロボットの力を最大限に発揮するためのコンピュータ。PR2は最先端の高性能なコンピュータ(8コアi7 Xeonシステム、24GBのRAM、2TBのハードディスク)2基を搭載しています。ログ用ハードディスクは取り外し可能なので、膨大な量のログを迅速に得ることができます。またPR2は開発用プラットフォームですので、堅牢性を重視しています。

「ロボットを使って開発する」

ソフトウエア開発者は、ロボットを使って実験する必要があります。失敗をおそれず開発できるというのはイノベーションにとって非常に重要なことです。
PR2がドアを開ける実験に使ったドアは、ペンキがはがれたり、ひっかき傷などが残っています。
何度も失敗するのは当たり前です。ロボットにもドアにもダメージがあることはわかっていますが、失敗しても繰り返し実験できるというのは開発には必要なことです。そのためにPR2があるのです。


「すぐに開発にとりかかれる」

ROSはソフトウェア開発プラットフォームです。たくさんのライブラリ、ツールがあり、最初から高レベルの開発が可能です。低レベルのハードウェアドライバに関するライブラリから始めて、ナビゲーション、二次元、三次元認識と進めていくこともできます。また開発ツールセットを使うと、データロギング、プレイバック、キャリブレーションや他の研究所とのコードシェアなどができます。
ライブラリもツールもオープンソースなので、自由に使用でき、必要にあわせて新しい機能の開発、成果の共有が簡単にできます。

「ROSでロボットを動かす」

ROSが素晴らしいのは、誰もが使える、ということです。ベータプログラムの参加者でなくても、ROSを使って開発したり、あなたのロボットを動かすことができます。
すでに10数か所の企業や大学の研究機関がオープンソースコードをROSでリリースしています。ROS開発コミュニティはほんとにすごい。PR2ベータプログラムでどんなことが行われていくのか非常にわくわくしています。
多くの開発者が、ロボットをROSで動かしてみて、その開発環境やツールがいいので、とても喜んでくれています。ROSコミュニティに開発者が集うことで、同じ研究を重複して行うような無駄を省き、他の開発者の成果を生かして自分のやりたい開発を行えるので、ロボットの研究開発は飛躍的に進歩していきます。より迅速に、より効率的に、そして、どんな研究機関や個人が単独で行うよりも、大きな成果をももたらすことができるでしょう。