2015年12月30日水曜日

お年玉で買いたいロボット2016

2015のクリスマスに向けて書こうと思っていましたが、全く間に合いませんでした。
しかしお年玉(みなさんむしろあげる方だと思いますが・・・)には間に合いました!

今回は私が今個人的に欲しいものを紹介しますので、みなさん自分へのお年玉として買って、私に紹介してください!

Deep Learning Robot


ほとんどTurtlebot2 (Kobuki + Xtion + ROS)なんですが、NVIDIAのTegra K1を積んでいて、すぐにDeep Learningの勉強が始められるようになっています。
このAutonomousという会社、最初商社かと思ったんですけど、HP見るとどうやらメーカーで、以前kickstarterで話題になったPersonal RobotをKickstarterで成功させた(かなり楽観的なビデオでどこまでできるか怪しく、まだ発送してないが)会社です。ちょっと心配。




スマホで操作できるBB8



スターウォーズ見ましたか?なかなかおもしろかったですね。個人的にはロボット・ドロイドがあまり出てこなかったのが残念でした。今作のヒロインであるBB8のおもちゃが出てます。
知っている方も多いと思いますが、ボール型ロボットのSphero製ですので我々には馴染み深いですね。





レゴ アイデア ウォーリー




Wall-Eのレゴはかなり前からユーザによって作られていたのですが、2015年にやっと公式から発売になりました。ロボット好きにはたまらない商品ではないでしょうか。私はめっちゃ欲しいです(が、ちょっと高い!(7,000円))。
公式のLEGO ideas というところでアイデアを募集しており、人気があると公式に発売されるという仕組みから生まれました。



Raspberry Pi Zero


これはもう持っていますが紹介します。脅威の$5という価格で発売されたARM搭載のLinuxが動くボードです。A+よりスペックはむしろ高いくらいで、コストパフォーマンスが半端ないです。
現在日本で入手するにはAdafruitのセットを買うのが良さそうです。私はそこから2つ買いましたが送料も相まって10,000円近くかかりました。
Raspberry Pi自体はROSも動くはずですが、情報がindigoで止まっています。Zeroでは動くのか、誰か試してみてはどうでしょうか?
(Raspberry Pi 2 B であればUbuntuほとんどそのまま動くので簡単ですが、Zeroはコンパイルが必要と思われます。)

UP BOX



UP Plus2の後継になる3Dプリンタです。
私はUP Plus2を最近買いました。今のところ順調に動いています。
これは民生用3Dプリンタ一般に言えることだと思いますが、メンテナンスや成功率、管理方法などまだまだ製品としてはかなりレベルが低く、ユーザのスキルが求められます。しかし熟練すると非常に便利ですね。とくにRapid Prototypingとして使うには最高です。
非商用&小規模スタートアップのみですが、完全フリーで使える簡単な3DCADもようやく出てきて(私はfusion360を使っています。)CADの習熟と3Dプリンタの習熟により、作りたいものが一晩で(設計は除く・製造のみ)出来上がる世界がやってきました。
このUP BOXはその上位機種で、欲しかったんですが値段が高すぎた(300,000円)ので諦めました。




これ全部買えば確実にロボット充な一年になると思います。では良いお年を〜。

2015年12月5日土曜日

ROS解説書無料公開

日本語の解説書が九大の倉爪先生のグループから無料公開されました!


http://irvs.github.io/rosbook_jp/

自律移動や、MoveItまで詳細に解説されていますので、私もぜひ読んでみたいです。

導入部分も私の本より詳細な解説がされていますので、私の本を読んで、もっと詳しく知りたいという人にはぜひオススメしたいです。パッケージの探し方を実際のROS wikiのキャプチャー画面を示しながら解説するのはとてもいいと思いました。

ROSの精神であるオープンソースでの教科書なので、情報も正確に保てるし、すばらしいです。

2015年8月20日木曜日

Gazeboの今更な紹介とMac OSX (10.10.4) にGazebo (Version 6) をインストール

gazebo_bigGazeboはROSを作っているOSRF(Open Source Robotics Foundation)が作っているオープンソースの汎用ロボットシミュレータです。ROSと連携しているので世界中のロボット研究者たちに使われています。



公式HPは

http://gazebosim.org/

です。



特徴としては
  • 複数のシミュレーションエンジンを切り替え可能(ODE, Bullet, Simbody, DART)
  • OGREを使ったきれいなレンダリング
  • センサ、ノイズをシミュレート
  • プラグイン方式
  • コマンドラインで操作できる
  • TCP/IP経由で操作できる
などがあります。

2015/07/27にVersion6がリリースされるなど、活発に開発が行われています。
Version6では
  • Windowsのサポート(Beta)
  • Oculus2サポート
などが取り込まれました。

その歴史は古く2002年から始まったようです。

同じOSRFなので、ROSとの連携もばっちりですが、先日リリースされたROS Jade Turtleでは Gazebo5.0が使われており、さっそくバージョンがひとつ前になってしまっています。

また、Indigoでは2.2が使われており、非常に古いです。Hydroに至っては1.9であり、すでにサポートは終了しています(ROS側もサポート終了しています)。

ROSと同じところが作っているのにGazeboは
  • ROSとは違うミドルウェア( Goolgeが作ったProtobufを利用)
  • ROSとは違うロボットモデル(SDF。ROSはURDF)
  • 独自のロボットライブラリIgnitionを持つ(http://ignitionrobotics.org/)
など、独立志向が強いのが面白いところです。

少し古くなってしまいましたが、日本語ではakioさんの資料が詳しいです。
http://www.slideshare.net/akio19937/1rosrosgazebo



ではMac OSX Yosemite(Macbook pro 13inch 2015)にインストールしてみます。

http://gazebosim.org/tutorials?tut=install_on_mac&ver=6.0&cat=install

1.howbrewのインストール

私はすでにインストールしてあるのでスキップしました。
以下のコマンドで入れられます。

  1. ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2. XQuartzのインストール

MacでXWindowを使うための環境であるXQuartzが必要です。
私はすでにいれてあるのでスキップしました。

3. brewでGazeboと必要なライブラリをインストール

brew tap osrf/simulation
brew install gazebo6
gazebo

これで完了です。
コンパイルするのでしばらく時間がかかります。待ちましょう。

brewなどに慣れている人にとっては結構簡単ですね。まあ、Linuxのほうが楽ですが。
すでにOSXにROSを入れているプロの方は、Version6を入れるといろいろバージョン違いでコンフリクトするので気をつけましょう。

ここまでやってみて、おとなしくJadeに合わせてVersion5を使うのがいいと思いました。

2015年7月16日木曜日

新しいToyota HSR発表

3年前に発表されたToyotaの生活支援ロボットHSR.

ついに新型が出ました。
http://newsroom.toyota.co.jp/jp/detail/8709536/

見た目はFetchやUBR-1に似ていますが、こっちのほうが初出は全然古いです。

今回もROSをサポートしているようで、gazeboでも使えるようです。


  • 全方位台車になった
  • アームが柔らかくなった
  • 電源ボタンがプリウスと同じでかっこいい
などなど、バージョンアップされています。
動画必見ですね。




合わせて2つ発表がありました。

  • コミュニティー発足
  • ハッカソン開催

HSRハッカソン開催

http://www.toyota.co.jp/jpn/tech/partner_robot/engineer.html#engineer_2

トヨタ自動車(株)では、「HSRハッカソン2015 in MEGA WEB」を8月31日(月)~9月2日(水)の日程で、メガウェブ(東京都江東区青海)にて開催します。本ハッカソンは、生活支援ロボットの技術開発を通じ、ロボット技術を早期に社会に提供することを目的に開催するものです。

ハッカソンは実はすでに行われたことがありますが、これは内々に開かれたもので、一般には公開されていませんでした。

TORKによる過去の記録:http://opensource-robotics.tokyo.jp/?p=480

今回はメガウェブでやるということで、なかなか楽しそうです。
しかし平日3日ということで、サラリーマンのみなさんにはちょっと厳しそう。
東京の学生が集まる感じになるんでしょうか?
もし公開でやるなら、本参加は無理でも冷やかしくらいにはいってみたいです。

締め切りは7月末なので、興味ある人は急ぎましょう!

コミュニティー発足

http://www.toyota.co.jp/jpn/tech/partner_robot/engineer.html#engineer_1

HSR貸与費用として、10万円/月程度、ご負担いただきます。
月10万も取るのかよ!
と、思いましたが、3年償却するとして、300万だと思えば非常に良心的な価格ですね。
ほぼ同等スペック?のFetchが1000万するので、安すぎです。
ただPepperの20万(笑)からすると、たけー、って感じがしますが、そういう勘違いはしないようにしましょう。

成果を上げれば補助金とかもらえるっぽいので、安いもんでしょう。

以下のリンクに詳細や目的が書かれています。
http://www.toyota.co.jp/jpn/tech/partner_robot/pdf/HSR-description.pdf

ソフトも公開されるといいですが、とりあえずはコミュニティーオンリーになりそうですね。

申し込み締め切りは、2015 年 9 月 30 日(水)必着!

2015年6月27日土曜日

ROSの日本語の本 (ROSではじめるロボットプログラミング) 出ました

ついに初の日本語のROSの本が出ました。
それだけROSも日本でメジャーになったということですね。

工学社さんから、著者は私です。


タイトルは「ROSではじめるロボットプログラミング」ということで、

「ロボットプログラミング」をこれから始める人向けに書きました。

書籍まるまる書くのは初めてで、なかなか要領をえなかったですが、なんとか出版されたようです。

このBlogができたのが2009/01なので、(他人ごとの感覚ですが)私にとってはやっと出たか、という感じです。

ROSの本はなかなか出なかったのにはいくつか理由があると思います。

・そもそも日本でROSが流行っていなかったこと
・そもそもロボットプログラミング人口が非常に少ない
・公式ドキュメント(ROS Wiki)が非常に出来がよいため書籍を必要としない

わたしは3番目が一番大きかったと思います。最近は日本語約も結構されているようですし。

このBlogの読者(特に更新されてすぐ最新記事を読んじゃうようなあなた)は、ROSを勉強する、というよりはもう教える立場になっている人が多いと勝手に想像しています。

ROSを教えて下さい!と言われたら、

「「wiki.ros.org」読めば分かるよ」

なんて言っておけば大体、こと足りたのではないでしょうか?

私も経験があります。そしてそれは大抵の場合正しいです。

この本は、「wiki.ros.org」読めば分かるよ、って言ってくれる人が周りにいない、もしくは、読んでも分からない、読み方がわからない、という人をターゲットに書きました。

プログラムの本って、書籍よりWebで読むほうがコピペしたり、ソフトダウンロードしたり、便利ですよね。まあ、普通そういうものはフリーで公開されていないので書籍を買うんだと思いますが、ROSの場合は完全フリーで提供され、内容も充実している。
その状況で本の利点って、

・完全に日本語で読める
・読む順序が決まっているので悩まない

ってあたりだと思うわけで、

・英語に慣れていない
・どこから調べていいかピンとこない

という人には書籍という形もありなのかなー、と思ってこういう企画にしました。

なので中身は

・前半はROS Wikiの焼き直し(より簡単に、より面白くしたつもり)
・後半の応用もそんなに深い内容じゃなく広く浅く

という感じです。
つまり、玄人のあなたがガチで読むためにはおすすめしません。
(もちろん初心者にはおすすめします)

一方で、玄人のあなたが、初心者(特に英語、ロボットにうとい人)に「教えて」と言われたときには、ROS Wikiよりもおすすめできるドキュメントだと思っています。

なので、どちらかというと、玄人のあなたは買わなくてもいい(もちろん買ってもいいです、いや、買ってください)ので、ぜひぜひ周りの新人さんにおすすめしていただけるとうれしいなぁと思っています。

また、本書では一切の実ロボットが出てきません。(シミュレータではもちろん出てきます)そのため、PCさえあれば誰でも楽しめちゃう内容です。なんだ、実ロボット出てこないんじゃ面白くない、と思う人も多いと思うのですが(私もどちらかというとそっちですが)、本書はそういう内容にすることで間口を限りなく広くしようとする挑戦です。
(ロボットプログラミング人口が増えないのはハードウェアを必須とするせいでもあると思うのです)

ということで、ここまで読んで、「なんだ、じゃあいらない」という人も正直多いかと思いますが、正直に書きました。(タイトルで大体想像つくとは思っているのですが念のため)

ご理解の上、ご検討をお願いします!

2015年6月11日木曜日

DARPA Robotics Challenge (DRC) Finals 2015観戦日記

DARPA Robotics Challenge Finals 2015観戦してきました!

いやー、めっちゃ楽しかったですね〜。
真面目な記事はたくさんあるので、どうでもいいくだらないことを中心にてきとーに記録書いておきます。(大したこと書いてないです)


最前線の座席に座ると↓のような感じで見ることができます。
競技を行うレーンは4つ並列なので、最前列にすわっちゃうと目の前のレーンしか見れなくなるので、他のレーンは中央のディスプレイで確認する感じになります。


一番右のレーンからのパノラマ画像



事前登録した人は各チームが控えるガレージに入るツアーに参加できました。

Aeroは二日目は砂に埋もれたときのためにダンボールをもって登場。
そこには「Desert Running Challenge ...」と書かれていました。車乗らないチームが4つあって、その4チームが2日とも朝同時出走だったので、そのチーム同士の友情がめばえた??


タータンレスキュースポンサーがいっぱい。FOXCONN、Amazon、Google、シェル石油?



左腕を骨折したJAXON1号機が飾ってありました。

ドイツのNimbRoが階段の練習をしていました。優勝すると思ったんだけどなー。

エキスポという展示会も外でやっていました。あまり本線に興味がない人も時間潰すことができそうでした。競技間のインターバルも45分あったので、結構ひまです。私はいろんな人としゃべったりしていたので、あまり時間なくてあまり回れませんでした。

BostonDynamicsのWildCart
なつかしき PetMan

CMUの自動運転カー
NASAの かっこいいロボ

他にも多数の普通の企業の展示がありました。

前日に行ったディズニーの乗り物でも軍隊が普通に出てきたり、アメリカでは軍事に対して結構ポジティブなんだなー、と思いました。

結果はスピード勝負になり、KAISTが勝ったわけですが、完成度、練習の成果かと思いました。DRCに集中できる環境を組織が用意できたか、に尽きるのではないでしょうか?
日本チームはさすがに準備時間が短かすぎでしたね〜。

2015年5月24日日曜日

ROS次期バージョンはKinetic Kameに決定

Jade Turtleがリリースされたので、次のバージョンKの開発が始まります。

Kの通称は

Kinetic Kame

に決定しました!やったー亀入りましたね!

通称"kinetic"になるようです。

ソース:
http://www.ros.org/news/2015/05/ros-jade-turtle-release.html

ROS Jade Turtleリリース

正式にROSの次期バージョンJade Turtle(翡翠の亀)がリリースされました。
http://www.ros.org/news/2015/05/ros-jade-turtle-release.html

wikiの説明等もデフォルトがJadeになっているので、Indigoを使いたいという人は要注意です。

リリースされてしばらくはライブラリ等も少ないので、しばらくはIndigoを使いたいシチュエーションも多いと思います。

これでHydroがDisconになったので、もうすぐアップデートされなくなります。
Hydroの人はあきらめてIndigoかJadeに移行しましょう。

変更点 (http://wiki.ros.org/jade/Migration)


・genuesがデフォルトで入った。これから世界中の人がEusLispのメッセージファイルをジェネレートすることになるんでしょうか?恐ろしいです。まあ、それくらいJSKの人のROSにおける立場が強いということですね。
・Gazeboのバージョンが2から5になった。まだ試してないですが、3つも上がればかなり良くなっているのでは?

今回は大きな変更はこれくらいのようです。JSKの人と、Gazebo5を使いたい人と、Ubuntu15.04を使いたい人用って感じですかね〜。

やはりROS全体の開発の失速感は否めないですが、安定期っていうことにしておきましょう。
Indigoは1700パッケージリリースされているようですが、Jadeもこれを超えるのでしょうか。

2015年5月23日土曜日

YosemiteにROS (Jade)をインストール

YosemiteにROS (Jade)をインストール 初心者が絶対やっちゃいけないMacへのROSのインストール。しかもベータ版であるJade。
死亡フラグビンビンですが、私は初心者じゃないのでやってみました。

参考

この参考の多さが嫌な予感しかさせないですね。

環境

OS :OSX 10.10.3 Yosemite
Machine:MacBook Pro (Retina, 13-inch, Early 2015)
ROS : Jade turtle

手順

まずはbrewのインストール。
ターミナルを開いて以下を実行。
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brewで必要なソフトのインストールをします。
$ brew update
$ brew install cmake theora
$ brew install boost --with-python
$ brew install opencv --with-qt --with-eigen --with-tbb
brew tapでインストール元をふやします。
$ brew tap ros/deps
$ brew tap osrf/simulation  # Gazebo, sdformat, and ogre
$ brew tap homebrew/versions # VTK5
$ brew tap homebrew/science  # others
rvizを実行するためにOgre-1.9をインストールする必要があり、2015/05/23現在、これだけはまだパッチが取り込まれていない。手元でパッチ作ったので以下のコマンドでインストール可能。
$ brew install https://raw.githubusercontent.com/OTL/homebrew-simulation/master/ogre1.9.rb --devel 
以下を.bashrcに追記
export PATH=/usr/local/bin:$PATH
source .bashrcしてから、
pipのインストール
$ sudo easy_install pip
$ pip install --upgrade pip
pipで必要なPythonツールをインストール。
$ sudo -H pip install -U wstool rosdep rosinstall rosinstall_generator rospkg catkin-pkg Distribute sphinx
rosdepの設定
$ sudo rosdep init
$ rosdep update
ワークスペースの作成と移動
$ mkdir ~/ros_catkin_ws
$ cd ~/ros_catkin_ws
wstoolでソースコードをワークスペースに展開。個人的にdesktop_fullはできる気がしないので、recommendedなdesktopを選択。
$ rosinstall_generator desktop --rosdistro jade --deps --wet-only --tar > jade-desktop-wet.rosinstall
$ wstool init -j8 src jade-desktop-wet.rosinstall
xquartzが必要なので、バイナリで入れる。
$  brew install Caskroom/cask/xquartz
rosdepで必要なbrewのパッケージをインストールする。
$ rosdep install --from-paths src --ignore-src --rosdistro jade -y --skip-keys ogre --skip-keys gazebo
(gazeboはdesktop-full用だが念のため)
brewで必要なものがインストールされるのでしばらく待つ。
sudoの有効時間が切れるとパスワードを聞かれるので、たまにターミナルを見てあげる必要あり。
#All required rosdeps installed successfully
と表示されればここまではOK.
これで準備はととのった。
以下のコマンドでビルドを開始。
$ ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release
数時間待つとビルド完了。
以下を.bashrcに追加
$ source ~/ros_catkin_ws/install_isolated/setup.bash
_roslz4の修正
$ install_name_tool -change /System/Library/Frameworks/Python.framework/Versions/2.7/Python /usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/Python ~/ros_catkin_ws/install_isolated/lib/python2.7/site-packages/roslz4/_roslz4.so
rviz含めて大体は動くようになった。
ROSがYosemiteで動いている風
やはり現在でもMacでROSを動かすのは大変なもよう。インストール時間もすごくかかるし、やっぱおすすめできない。
やっぱりUbuntuをおとなしく使いましょう。

2015年4月26日日曜日

ROS Jade TurtleとTシャツ

ROS の次のバージョンであるJade Turtleのリリース日が一応アナウンスされました。

5/23目標のようです。

当初の予定どおりリリースされるとは非常にめずらしいですね。1年というサイクルなら余裕なんでしょうか。

また、いつも通り、リリース記念Tシャツの販売をやっています。
最低必要枚数に到達しないと実際に作らないクラウドファンディング方式ですが、すでに到達しており、注文すれば届く状態になっています。

http://www.ros.org/news/2015/04/ros-jade-turtle-logo-and-release-t-shirt.html

2015年2月16日月曜日

MYOでPepperを動かしてみる

MYOがやっと届きました。注文したのが1年くらい前だったので、すっかり忘れていました。
MYOを知らない人は↓の動画を見てください。



ところが、このMYO、このビデオのようにいろんなジェスチャが認識できるわけじゃないです。
APIでサポートしてくれるのは

  • 手を開く
  • 手を閉じる
  • 手首右
  • 手首左
  • 指をダブルタップ
の5つだけです。IMU(姿勢角センサ)の性能もそこまで良くなく、ちょっと残念。
といえど、せっかく買ったので、同時期に届いたPepperと組み合わせてみました。

↓です。そのうち、顔出ししないでPepperだけで済むようにしたいですが、
今回のように筋電を取るようなデバイスだと人が出演せざるを得ないですね。


使ったのはMYOのジェスチャのうち、

  • 手を開く
  • 手を閉じる
  • 手首右(なんでやねん)
でした。あとはIMUの角度を使って、Pepperの右腕の肩2軸を制御しています。

ソースコードは↓においてあります。あまり整備されていないので参考程度に。

メインプログラムは60行くらいです。

MYOのROSノードはclearpathのものがapt-getで入りますが、Windowsが別途必要なようだったでやめました。
↓のものはLinux単体で使えるのでそっちにしました。

ジェスチャーやIMUのデータがPublishされます。
ROSを使えばビデオでちょっと出したように、可視化も簡単にできます。
(rqt_plot, rviz)
MYOをお持ちの方は試してみては。

2015年1月29日木曜日

Pepper is here!! PepperのROS化(k-okada先生/JSKの成果を使う)

いや~、やっと届きました。Pepper!

秋葉原に通って、一生懸命動かしてたのがいつのことか忘れるくらい待ちました。

やっぱ家に等身大ロボットが(買うだけで)手に入る世の中についになりましたね~!
SBすげー。
(先行で一部の人に公開したり、先に渡したり、やりかたがフェアじゃなくて、
むちゃくちゃイラつきますが、成果はすごいと思います)

もちろんROSで動かしましょう!

JSKのリポジトリが一番進んでそうです。

基本↓を参考にすると早いです。
https://github.com/jsk-ros-pkg/jsk_robot/tree/master/jsk_pepper_robot

そのままだとハマるので、私のやったことを書いておくので、チャレンジする人は参考に。
(中上級者向けメモになってしまいました。)

必要なものをインストール

sudo apt-get install ros-indigo-driver-base ros-indigo-octomap-msgs
sudo apt-get install ogre-1.9-tools

assimpがsegfailtするので、自前で用意

git clone https://github.com/assimp/assimp.git
cd assimp
mkdir build
cd build
cmake ..
make
sudo make install
export LD_LIBRARY_PATH=/usr/local/lib

catkinワークスペースの準備

mkdir -p catkin_ws/src
cd  catkin_ws
wstool init src
wstool merge -t src 
https://raw.githubusercontent.com/OTL/jsk_robot/master/jsk_pepper_robot/pepper.rosinstall
wstool update -t src

不要なパッケージをとりあえず削除

rm -rf src/jsk_robot/jsk_pr2_robot/ src/jsk_robot/jsk_baxter_robot/
依存関係とか大変そうだったので、行儀わるいですが。。。

SDKパスの指定

catkin_ws/src/jsk_robot/jsk_pepper_robot/pepper_description/CMakeLists.txtの_simulator_sdk_pathを編集。

ビルド

rosdep install -y -r --from-paths src --ignore-src
catkin_make
source devel/setup.bash

実行

roslaunch pepper_bringup pepper.launch force_python:=true nao_ip:=xxxx

xxxはペッパーのIPに置き換えてください。



rvizでモデル表示ができたり、cmd_velで動かせたり、Depth画像取れたり、と
大体、ROSで気兼ねなく動かせる状態になりました。さすが我らのJSK!!!万歳!