ラベル ハッカソン の投稿を表示しています。 すべての投稿を表示
ラベル ハッカソン の投稿を表示しています。 すべての投稿を表示

2010年7月6日火曜日

ねえ、ロボット、ビール持ってきて!


米国西海岸時間 July 6, 2010

ウィローガレージでは、金曜日の夕方5時頃になると、多くの人が「あ〜、よく冷えたビール、すごくおいしいだろうな」と考え始めます。しかし、往々にして週末の前に片付けておかなければならない仕事で忙殺されているものです。こういうことがあまりに多いので、もしロボットがビールを持ってきてくれたら完璧なのに、と考えていました。ウィローガレージの夏のハッカソン第3弾の目的は、この夢を叶えることでした。夏のハッカソンでは、既にあるROSのツールとパッケージを使い、月曜日にプログラミングをスタートして金曜日の午後にデモを行ないます。その間睡眠をとるかどうかは、あくまで本人の自由です。

このハッカソンの目標は、しっかり安定した状態で、しかもユーザーフレンドリーにビールをとってきて渡すことでした。さらにロボットに、安全に、どこの部屋にでも届けさせたいと思いました。それには、アームを折り曲げた状態でのナビゲーションが要求されます。

ビールを安全に運ぶために、私たちはPR2のベース部分に”バーキーパー"を設置しました。ロボットのベース部分にあるナビゲーション用レーザーの後ろに、四角い発泡体に4つの穴をあけてビールホルダーを作り、取り付けたのです。3つの丸い穴は、移動する間ビール瓶を入れておくもので、4つめの穴には栓抜きが入っています。オフィスにあるごく標準的な冷蔵庫に傾斜をつけたセルフストッキング(1本取り出すと次のビールがスライドしてくる)のラックを備え付けることで、ロボットが人間の助けを借りなくても、多くの人のリクエストに応じてサービスできるようにしました。

スクリーンショット
ユーザーエクスペリエンス(使いやすさ)については、まず”Beer Me(ビール、頂戴)"という名のウェブアプリケーションに取り掛かりました。このウェブアプリケーションでは、ユーザーに、冷たいビールやサイダーのメニューと、届ける場所を選ぶためのプルダウンメニューが与えられます。誘われるような”Beer Me"ボタンをユーザーが押したら、マジックが実現するかどうかは、ロボットの仕事になります。ロボットは、自律的にナビゲートして冷蔵庫に移動し、ドアを認識。ドアを開くためにはどこの位置をつかむべきかを正確に決定するため、ハンドル部分の検出を行ないます。そしてハンドルをつかんで引っ張り、開いた冷蔵庫の扉が閉じてしまわないように、扉と冷蔵庫の間に移動します。

ロボットは物体認識を使用してどのビールがラックにあるかを判断し、もしユーザーが選んだものがなかったら、それをウェブアプリに報告します。もしあれば、注文されたビールをビールホルダーに入れ、ドアを閉じ、指定された部屋まで運びます。このパズルの最後の1ピースは、どのように手渡しするかでした。パーティで床にビールをこぼして顰蹙をかうようなことを絶対ロボットにさせたくなかったので、手渡しの動作に関しては顔検出機能を加えました。ロボットはビールを差し出し、近距離にある顔を検出するまで待ちます。そして一番近くにいる人を見て、ビール瓶が強く引っ張られたら、グリッパを緩めます。ロボットは、栓抜きを渡し、返してもらうまで待つこともします。また、ロボットに普通の栓抜きを使ってビール瓶を開けさせることにも成功しました。

ロボット研究者はこれまでこんな言葉を耳にしたものでした。「ロボットってクールだと思うけど、ビールは持ってこれるの?」と。PR2はできるようになりました。それどころか、瓶をあけてくれるかもしれませんよ。

RVIZ Beer classification

原文

2010年6月28日月曜日

第2のハッカソン PR2がカートを押して片付ける!

米国西海岸時間 June 28, 2010

整理整頓のお手本になりたいと思ってはいるのですが、自分たちで片付けるのをつい忘れてしまうこともあります。今月のハッカソンの2番目は、ロボットが自分でカートを押しながら動き回り、使用済みのカップやボウル、それからスパムの缶詰(ロボットの研究者の必需品なんです)などを集めてキッチンに運び、私たちの代わりに片付けてもらうというものでした。

”カート押し”はROSのナビゲーションスタックにとっていくつか新しい課題がありました。第一に、カートがロボットの前方のセンサーが感知する場所をふさいでしまいます。第二に、ロボットとカートが一緒になると縦長な形状になりますが、既存のプランニングのアルゴリズムはデフォルトでは、ほぼ円形のロボットで最適に作用するようになっているのです。ナビゲーションスタックはモジュラー化され、プラグイン可能な高位のアーキテクチャを有していますが、私たちは代替としてペンシルバニア大学の前方サーチプランナーsbplを使い、今回の条件にあわせたよりよいナビゲーションを実現することができました。

さらに、PR2は自分のいる環境でカップやビンを認識し、どれを片付けるべきか、また安全に運ぶために液体が入っていないのはどれなのかなどを決めなければなりません。これについては、ヒューマン・イン・ザ・ループ(人間が一部を担う)方法を取りました。ロボットは自分の視界の画像を人間(遠隔も可)に送り、人間が次に掴む物体を四角で囲んで指定します。ロボットは対応する物体の位置を三次元で理解し、把持用パイプライン(間もなくリリース予定)を使って物体をつかみあげカートに載せます。

PR2が今すぐにレストランで働くのはおそらく難しいです。しかし、カートや車椅子などの車輪がついた物を押せる能力は、パーソナルロボットにとって非常に有用であることは間違いありません。私たちは引き続き、この能力をさらに堅牢なものに向上させていきます。


2010年6月15日火曜日

PR2がビリヤード!

米国西海岸時間 June 15, 2010



(上のビデオは日本語字幕がついています。)

ほんの少人数の開発者によるチームの1週間の開発の成果として、PR2がビリヤードをできるようになりました!
「プールシャーク(映画ハスラーより命名)」チームは先週の月曜日に発足し、金曜日からPR2がショットを決められるようになりました。PR2がビリヤード場であなたを打ち負かすようなことすぐにはありません。しかし、金曜日には、(徹夜で疲れきった)チームが祝福のビールを飲もうと決めるまで、5つのショットを決めたんです。

プールシャークチームは先週1週間実に多くの課題に取り組みました。PR2がキューを握るための特殊グリップとブリッジの製作、ボールの検出と位置同定、テーブルの位置推定、ヴィジュアライゼーション(可視化)やインプット用のツール、ショット・セレクターなど他にも多くのものを創りあげました。

オープンソースのビリヤード用ライブラリFastFizを作ってくれたAlon Altmanに心から感謝します。FastFizはビリヤード用の規則や物理エンジンで、プールシャークチームはこれをPR2がどのショットを打つべきかに使いました。今回開発されたコードは早速ビリヤードスタックとして公開されています。

6月はハッカソンの月です。ウィローガレージでは、1週間のハッカソンがあと2つあります。PR2がカートを押しながら片付けることと、冷蔵庫から飲み物を取ってくるというものです。今1つ終わったところ。あと2つです!

これまで行われたハッカソンは