月別アーカイブ: 2015年1月

Pepper, HTML5 Conference に登場


20150125_pepper_1

1月25日に東京電機大学で HTML5 Conference が開催されました。
私は参加していないですけど (^^;

Pepper も参加していたみたいですね。
ヤマハの音楽作成アプリや、とのさまラボの忍者ゲームなどが、展示されたようです。
20150125_pepper_2 20150125_pepper_3

参考
html5j: Pepper x HTML5 HTML+JavaScriptでロボットが動く、歌う、魅せる!
Peper Facebook
HTML5 Conference 2015に参加、pepperくん大人気!
Pepperもいた!HTML5 Conferenceに参加してきました

20150119_club_board

Pepper Pioneer Club Meetup


20150119_club_audience

1月19日に六本木の FreakOut で行われた Pepper Pioneer Club Meetup に参加しました。
Pioneer Club は、Pepper の購入者を対象とした会員限定の会合です。
今回は、歓談がメインでしたが、Pepper に関する発表や、デモ展示などもありました。
20150119_club_demo 20150119_club_demo_2

発表では、岡田慧 さんのロボットプラットフォームが興味深かったです。
日本のロボット研究者は、1200人くらいとのこと。
研究レベルでは、1台数億円するようなロボットも使われているが、高価なので一部の研究者に留まっている。
一方、Pepper は現在200体あり、それだけで研究室のロボットの台数よりも多いかもしれない。
近年、ロボットOSはオープンソース化が進んでいる。
1つの研究室で開発された技術を、世界中の研究室で使うことが可能になってきている。
Pepper のような安価なロボットが普及すると、100体のロボットを使うような新しい分野の研究も可能になってくる。
研究レベルの技術が、Pepper で利用可能になるのも、そう遠くないのでは。
20150119_club_okada_1 20150119_club_okada_2

Pepper が発表のタイムキーパーを担当してました。
ドラを鳴らすところまでやってくれると、完璧ですね。
20150119_club_kepper 20150119_club_board

当日は、Pioneer Club の会員証も交付されましたが。私は購入手続きが完了していないため、貰えず (^^;

会員証が貰えず、ガックリする Pepper (ではなく、デモが終了したあと)
20150119_club_close

参考
Pepper Pioneer Club Meetup
「第1回 Pepper Pioneer Club Meetup」参加レポート
Pepper Pioneer Club Meetupに行ってきました

20150202_camera_tablet

撮影した写真をタブレットに表示する


アトリエ秋葉原から公開されている チュートリアル を試してみます。
今回は 画像を撮影してタブレットに画像表示 です。

カメラで撮影するのは Take Picture ボックスを使います。
デフォルトでは、撮影した画像ファイルは ホームディレクトリ配下の/recordings/cameras/ ディレクトリに保存されます。
タブレットに画像を表示するのは Show Image ボックスを使います。
画像はアプリケーション配下の html ディレクトリを参照します。

設定
フローダイヤグラムに、Take Picture ボックスと Show Image ボックスを配置します。
20150202_camera_flowdiagram

Take Picture ボックスの保存先を、Show Image ボックスから参照できるように変更します。
Take Picture ボックスのコードを、下記のように変更します。

タブレットを使う で少し触れたように、Show Image ボックスには パスの問題 が存在します。
Show Image ボックスのコードを、下記のように変更します。

Take Picture ボックスと Show Image ボックスの両方に、画像ファイル名を設定します。
このとき、Show Image ボックスのは拡張子あり(例 test.jpg) とし、Take Picture ボックスは拡張子なし(例 test)とします。
20150202_camera_show_image 20150202_camera_take_picture

タブレットを使う と同じように、
画像の保存先となる html ディレクトリを作成します。
html ディレクトリにダミーの画像ファイルを置きます。
20150202_camera_project

動作確認
「再生」ボタンを押すと、Pepper のカメラが撮影した画像がタブレットに表示されます。
20150202_camera_take 20150202_camera_tablet

タブレットのキャッシュの回避
タブレットのWebブラウザは画像をキャッシュします。
そのため、アプリを実行しても、2回目以降は最初の画像を表示します。
キャッシュを回避するには、画像の名称は同じでも、異なる画像のように見せかけます。
よく使われる手法は、画像のパス名に実行したときの時間を付加する方法です。
Show Image ボックスのコードを、下記のように変更します。

20150113_web_myrobot

Pepper に WEBブラウザ から接続する


Pepper は、本体に WEBサーバ を内蔵しています。
このWEBサーバにWEBブラウザから http で接続します。

下記のように IPアドレス を指定します。
IPアドレスの確認方法は Pepper に ssh で接続する をご覧ください。

パスワード保護がかかっています。
ユーザ名は nao で固定です。
パスワードは初期設定時に設定したものです。
20150113_web_auth

最初の画面は、胸のタブレットに表示されるマイロボットとほぼ同じです。
マイロボットと違うところもあります。
20150113_web_myrobot

ふきだし
画面左上のNAOの画像をクリックすると、ふきだしがあらわれます。
ここに文字列を入力すると、Pepper にしゃべらせることができます。

?メニュー
?メニューから3つのページにアクセスできます。
(1) はじめに
初期設定時のウィザードページです。
言語の設定などができます。
20150113_web_wizard

(2) ドキュメント
Pepperの オンラインドキュメント です。
20150113_web_document

(3) 旧ロボットウェブページ
さらに About、Network、Settings、Advanced などメニューがあります。
Pepperのバージョン情報など、内部の状態が確認できます。
ページのタイトルがよくないですね。
ディレクトリ名が advanced なので、高度な設定 とでもしたほいがいいですね。
20150113_web_advanced

参考
Pepperロボットウェブページの開き方

20150212_http_pepper

HTTP Get ボックスの作成


20150212_http_pepper

アトリエ秋葉原から公開されている チュートリアル を試してみます。
今回は HTTP Get ボックスの作成 です。
HTTP Get ボックスは、入力されたURLからデータを取得し、そこで得られたテキストを出力する Python ボックスです。
20150212_http_box

Python ボックス
Python ボックスを新規作成します。
初期状態では、onStart 入力、onStop 入力、onStopped 出力があります。
20150212_http_create_python_box 20150212_http_edit_box_default

以下のように変更します。
(1) 名前を「HTTP Get」に設定する。
(2) onStart 入力の Type を「”バン”」から「文字列」に変更する。
20150212_http_on_start

(3) onStop 入力を削除する。
20150212_http_on_stop 20150212_http_on_stop_confirm

(4) onStopped 出力の Type を「”バン”」から「文字列」に変更する。
(5) 出力に「onFailed」 を追加して、 Type を「文字列」にする。
20150212_http_on_stoped 20150212_http_on_failed

(6) 変数に「Timeout」を追加して、Typeを「整数」にして、デフォルト値, 最小値, 最大値をそれぞれ「30」「1」「3600」に設定する、
(7) 変数に「Start line」を追加して、Typeを「整数」にして、デフォルト値, 最小値, 最大値をそれぞれ「0」「0」「10000」に設定する。
(8) 変数に「Max lines」を追加して、Typeを「整数」にして、デフォルト値, 最小値, 最大値をそれぞれ「1」「1」「10000」に設定する。
20150212_http_param_timeout 20150212_http_param_start_line 20150212_http_param_max_lines

(9) 「OK」ボタンを押すと、フローダイアグラムに HTTP Getボックス が作成されます。
20150212_http_edit_box_http

Python スクリプト
HTTP Get ボックスをダブルクリックしてスクリプトエディタを開き、下記のスクリプトを記述します。

20150212_http_script

アプリの作成
(1) HTTP Get ボックスのパラメータを以下のように設定する。
Timeout は 30 のまま
Start line は 0 から 2 に変更する
Max lines は 1 から 8 に変更する
20150212_http_box_param

(2) HTTP Get ボックスの前に、Text Edit ボックスを接続して、Pepperチュートリアルの
URL「http://qiita.com/Atelier-Akihabara/items/c5f57358a7b333eef397」 を設定する。
(3) HTTP Get ボックスの後ろに Text Say ボックスを接続する。
20150212_http_app_say

実行すると、
「このチュートリアルでは、以下のような構成で…」と話します。

身振りを追加する
Text Say ボックスの代わりに、Animated Say Text ボックスを使います。
Animated Say Text ボックスは、ボックス・ライブラリにないので、Animated Say ボックスから取り出します。
Animated Say ボックスを開きます。
後段の Animated Say Text ボックスにマウスオーバーして「切り取り」を選択します。
rootのフローダイアグラムに戻り「貼り付け」を選択すると、Animated Say Text ボックスが表れます。
元の Animated Say ボックスを削除します。
20150212_http_say_cut 20150212_http_say_paste

Animated Say Text ボックスを HTTP Get ボックスの後段に接続して、アプリを完成させます。
20150212_http_app_animated

実行すると、
身振りをしながら「このチュートリアルでは、以下のような構成で…」と話します。

20150111_bumper_pepper

バンパーセンサーのイベント検出


20150111_bumper_pepper

アトリエ秋葉原から公開されている チュートリアル を試してみます。
今回は バンパーセンサーのイベント検出 です。

バンパーセンサーが接触を検知したら、「いたい」としゃべる サンプルを作ってみます。
まず、フローダイアグラムにメモリイベントを追加します
BackBumperPressed, LeftBumperPressed, RightBumperPressed
20150111_bumper_memory_event 20150111_bumper_document

Say ボックスを接続して、「いたい」を設定します。
おまけで、Log ボックスを接続して、Message prefix に「Bumper Pressed」を設定します。
20150111_bumper_app_1 20150111_bumper_log_box

実機で確認します。
バンパーセンサーに触ると「いたい」としゃべります。
ログビューアに、下記のようなログが表示されます。

このままだと、押されたとき (1.0) と離されたとき (0.0) に反応するので、
押されたときだけ反応するように変更します。
Ifボックスを接続して、「値 > 0」となるように、Condition Operator に「>」を、Value to compare に「0」を設定します。
20150111_bumper_app_2 20150111_bumper_if_box

実機で確認すると、ログビューアに、下記のようなログが表示されます。

20150110_pepper

Pepper App Challenge 2015


20150110_pepper

Pepper に関する2つのコンテストが実施されます。

Pepper App Challenge 2015
応募条件: Pepperで使用できる5分以内のアプリケーション
締切り :1月26日

Pepperおもしろ作品コンテスト
応募条件: Pepper が登場する動画や、Pepperが写り込んでいる写真
締切り: 2月15日

参考
賞金100万円、Pepperアプリ開発コンテストが開催
史上初のロボアプリコンテスト「Pepper App Challenge 2015」開幕! その日、未来が動き出す!