月別アーカイブ: 2016年5月

IMG_20160529_180228

Pepper SDK for Android Studio 体験会


IMG_20160529_180228

5月29日にアトリエ秋葉原で Pepper SDK for Android Studio 体験会 が開催されました。
まだ、対応する実機がないということで、体験会というよりも説明会という感じでした。
私は 「Pepper SDK for Android Studio を試してみた」 という発表をしました。
参加者には、ステッカーが配布されました。
20160529_sdk_sticker

詳しいことは、ロボットスタートさんが記事を書かれています。
「Pepper SDK for Android Studio 体験会」に行ってきました

ソフトバンクの公式サイトでも紹介されました。
Pepper SDK for Android Studio 体験会

ソフトバンクロボティクスの縄田昇司さんから、今回の Android 対応に関する説明がありました。
ソフトバンクとしては、開発者の裾野を広げたい。
現在の Choregraphe の開発環境は、何でもかんでもゼロから作る必要があり、不十分だと考えている。
オープンなプラットホームを活用して、開発者が楽しく開発できる環境を作っていきたい。
Androidに対応したことにより、開発者のメリットは3つある。
(1) Android 開発と同じ UI/UX で、ロボアプリの開発ができる。
(2) バーチャルロボット環境にて、タブレットのエミュレーションが可能になった。
(3) 将来的に、Google Play を通じてロボアプリを配布・販売できる。盗撮アプリのようなものが、配布されないように、セキュリティなど諸問題について、Google と協議中です。

ソフトバンクロボティクスの猿田晋也さんから、Pepper SDK for Android Studio に関する説明がありました。
現在開発中であり、最終的な仕様は変更になるかもしれない。
対応OSは、Linux と Window 8.1以前の Windows OS です。
MAC も動作しますが、社内での検証が終わっていないので、サポート外となっています。
スライド Pepper SDK for Android Studio 体験会 – Softbank Robotics

現在の Pepper に対するバージョンアップの計画について、質問がありましたが。
時期や料金については検討中、という回答でした。

Pepper Cardboard のキャンペーン実施中です。
Qiita に「開発サンプル」や「やってみた体験」を投稿した方に進呈しますとのこと。
私は発表したお礼として頂きました。
20160529_sdk_cardboard

私の方から、「Pepper SDK for Android Studio を試してみた」という発表をしました。
関連して、Github を2つ作りました。
Pepper_Android_Tutorial ソフトバンクの公開している Tutorial に関するもの
Pepper_Android_SDK SDK を使った Android アプリ

5月30日にも体験会がありました。
富田篤さんが発表したスライド。
Pepper SDK for Android Studio を Macで動かしてみた

20160525_android_tablet

Android アプリを自作した


Pepper SDK for Android Studio の Amination Brawser に、動物のアニメーションが用意されています。
これを使って、Android アプリを作成しました。
20160525_android_animation_brawser

動物の画像と鳴き声は、ネットのフリー素材を使いました。
ソースコードは、Mimic the elephant をベースにしました。

タブレットに表示された動物の画像をタッチすると、ロボットビューにて、Pepper がその動物の真似をします。
20160525_android_tablet
20160525_android_robot_view

完成したソースコードは、Github で公開しました。

課題
・Animate#run したものは、どうやって止めるのかな

Tutorials の Display humans around distances を試す


Tutorials の Display humans around distances を試しました。

この例では、ロボットの周りの人の一覧を取得するために Interaction サービスを使用します。
フレームは、一人一人に関連付けられ、Actuation サービスもロボットのフレームを出力します。
これらの情報を用いて、ロボットと一人一人との間の距離を計算することができます。

プロジェクトの作り方は Say “Hello, world!” と同じです。

Github に Android Studio のプロジェクトを公開しました。

動作確認
残念ながら、何の動作もしません。
Interaction サービスを使っていますが、エミュレータではイベントがイベントが発生していないのでしょう。

Tutorials の Mimic the elephant を試す


Tutorials の Mimic the elephant を試しました。

この例では、アニメーションのアクションを設定するためにActuation サービスを使用します。
トリガーされたサウンドをロボットのスピーカーで再生するためにメディアプレーヤを使用します。

Github に Android Studio のプロジェクトを公開しました。

プロジェクトの作成
Say “Hello, world!” と、ソースコードをコピペするところまでは同じです。
tutorial に elephant.animelephant_sound.wav があるので、ダウンロードします。
/res/raw/ フォルダを作って、elephant_sound.wav と elephant.anim を置きます。

動作確認
ロボットビューにて、象の鳴き声がして、象のモノマネをすれば、OKです。

Tutorials の Go to one meter forward を試す


Tutorials の Go to one meter forward を試しました。

プロジェクトの作り方は Say “Hello, world!” と同じです。

Github に Android Studio のプロジェクトを公開しました。

動作確認
残念ながら、logcat に下記のようなエラーが表示され、期待した動作はしませんでした。

ググってみたら、ROS絡みのエラーみたいです。
Error: Lookup would require extrapolation into the past.

20160520_say_11_emulator_begin

Tutorials の Say “Hello, world!” を試す


Tutorials の Say “Hello, world!” を試しました。

この例では、ロボットが何かを喋らせます。
Sayアクション を設定する Interactionサービス を使用します。

Github に Android Studio のプロジェクトを公開しました。

Choregraphe と Android に慣れているつもりでしたが、ちょっとまごつきました。
Tutorials はかなり不親切です。
ソースコードしか載っておらず、どういう動作をするのか、どうやって確認するのかが、書いていない。
何が正しいのか、しばし迷いました。
この記事では、その辺を書いておきました。

このサンプルでは、Pepper は動かず、“Hello, world!” と喋るだけです。
Pepper がピクともしないので、何か間違ったかと思いました。(^^;
エミュレータしかないので、最初のサンプルは Pepper が動くものにして欲しいですね。

プロジェクトの作成
プロジェクトを作るところは、普通の Android アプリと一緒です。
(1) Start a new Android Studio project をクリック
20160520_say_1_studio

(2) Apllication name をつける
20160520_say_2_new

(3) Minimum SDK を API 22: Android 5.1 (Lollipop) にする
20160520_say_3_target

(4) Empty Activity を選ぶ
20160520_say_4_add_activity

(5) Activity Name を Tutorial に合わせて SayActivity にする
20160520_say_5_actvity_name

(6) Project が開きます。
ここまでは、普通の Android アプリと一緒です。
20160520_say_6_project_begin

ここからは Pepper 独自です
(7) File -> New -> Robot Application を選択します
20160520_say_7_robot_application

(8) Select API で OK を押します。
20160520_say_8_api

(9) SayActivity.java を Tutorial からコピペします。
これで、プロジェクトは完成です。
20160520_say_9_java

エミュレータを起動します
(10) ツールバーの Emulator アイコンをクリックします
20160520_say_10_emulator_icon

(11) ロボットビューはすぐに起動しますが、タブレットのエミュレータは数分かかります。
20160520_say_11_emulator_begin

(12) タブレットが表示が、ロック画面になれば、OKです。
鍵のアイコンをスライドして、ロックを解除します。
20160520_say_12_emulator_lock

(13) Android のホーム画面になります。
これで、エミュレータの準備は終わりです。
20160520_say_13_home

アプリを起動します
(14) Run -> Robot App を選択します
20160520_say_14_run

(15) 下側にログ画面が表示されます。
20160520_say_15_log

(16) しばらくすると、Lauching applocation … が表示されます。
これでアプリが起動されました。
20160520_say_16_launching

動作確認
(17) タブレットに Hello World! と表示されれば、OKです。
20160520_say_17_tablet

(18) ロボットビューの下側の Dailog view を選択します。
Robot: Hello, world! と表示されれば、OKです。
これは、Pepper が Hello, world! と喋ったことを意味します。
20160520_say_18_dialog

logcat に下記のようなエラーが出ていましたが、動作には影響ないようです。

PS.
Pepper のエミュレータはよく出来ていると思ってますが。
喋りを確認するのに、Dailog を開くのは、今ひとつですね。
音声合成で発声して欲しいなぁ。

Pepper SDK for Android Studio


本日から Pepper SDK for Android Studio が無料配布されました。

Android Studio の環境設定は、ドキュメントとおりにやると出来ました。
Android SDK として、Android 5.1.1(API 22) と Android SDK Build-tools 22.0.1 を入れておきます。
ポイントは、プラグインで Pepper SDK を入れるところですね。
20160520_sdk_plugin

他にも、試してみた人たちがいます。
Pepper SDK for Android Studioが公開されたので使ってみた
Androidでアプリ開発!とりあえず開発環境構築

20160519_pepper_android_droid

人型ロボット「Pepper」がAndroid に対応


20160519_pepper_android_droid

5月19日にソフトバンク本社で Pepper に関する記者発表がありました。
ニュースリリース:人型ロボット「Pepper」がAndroid に対応

Pepper 本体に Android OS が組み込まれます。
Pepper にて Google Play にある Android アプリが実行できます。
Pepper が操作するような Android アプリも開発できます。
そのための Pepper SDK for Android Studio が無料配布されます。

なお、現状のモデルでは、対応できないそうです。
若干のハードの変更が必要とのこと。
それに対応したモデルは、7月から開発者向けに販売される予定です。

Pepper の Android アプリのデモがありました。
今のところ、象のモノマネをするものと、「今日は」としゃべるものの、2つだけでした。
20160519_pepper_android_app

ニュースリリースでは、下記にようになってます。
『Pepperの胸部ディスプレーをAndroid 搭載のものにし、NAOqiと連携させることで実現するものです。』

補足すると。
Pepper には2つのCPUが搭載されています。
本体の CPU では NAOqi が実行され、Pepper を制御しています。
胸のタブレットの CPU では Android が実行されています。
しかし、タブレットの Android の機能は制限されていました。
開発者も簡易的なWEBブラウザとしてしか使うことができませんでした。
今回の発表は、この制限を解除し、本来の Android タブレットとして使えるようにしたものと、推測されます。

従来のモデルでも、Android SDK があり、Android 端末から Pepper を操作することができました。
ワークショップ : Android アプリでPepperを喋らせてみる

今回の発表で、さらに Android 寄りに進めた感じです。

20160519_pepper_android_sticker

生活革命さんが少し踏み込んだ記事を書いています。
【速報】今「Pepperを買うか悩ましい」3つの理由。 Android対応は実質「新機種」の発表会だった! – 生活革命

メディア報道
【速報随時更新中】Pepperが世界展開に向けてAndroidのSDKに対応。7月にはAndoroid対応の新たな「Developerモデル」も販売開始 – ロボスタ
Android対応の「Pepper」、7月発売へ ソフトバンクロボティクスが発表 – ITmedia
PepperがAndroidに対応しました : ギズモード・ジャパン
「Pepper」がAndroidに対応–開発者数を100倍へ、Pepperなしでアプリ開発を可能に – cnet japan
PepperがAndroidに対応、ロボットアプリ開発SDKの無償提供を開始:ITpro
Pepper、Android対応に!開発者向けに7月発売 – RBB Today
「ロボアプリ開発者100倍増」狙い、PepperがAndroid対応 – MONOist
ペッパー君がアンドロイドで動く! 今年7月に対応版が発売 – ASAhIパソコン
PepperのAndroid対応は既定路線か – 日経テクノロジー
PepperのAndroid対応で生じるメリットと懸念 – IT Pro
Pepper the robot needs U.S. programmers – usatoday
Android now runs on androids – quartz

20160514_baterry_pepper_in_charger_zoom

充電ベースが届いた


充電ベースが届きました。
デベロッパー先行モデルに試供品として提供されたものです。
ちゃんと使うには、充電ベースを床に両面テープで固定する必要があります。
ひとまず、どんな感じになるのか、充電ベースに Pepper を入れてみました。

20160514_battery_and_pepper 20160514_baterry_pepper_in_charger
20160514_baterry_pepper_in_charger_zoom 20160514_baterry_charger
20160514_battery_case