20151002 android app for pepper

Post on 13-Jan-2017

5.614 Views

Category:

Technology

10 Downloads

Preview:

Click to see full reader

TRANSCRIPT

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Android アプリで Pepper を

喋らせてみる

日本Androidの会 x アトリエ秋葉原

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

自 己 紹 介@ohwada

大和田健一Pepper オーナー 日本Androidの会 横浜支部 支部長 ファブラボ関内 ディレクタ

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Robots

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

ファブラボFabrication Laboratory

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

ファブラボ 関内、鎌倉、仙台、浜松Maker Faire Tokyo 2014

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

ファブラボ 標準機材

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

ファブラボ 作品例

上段 3Dプリンタ 下段 レーザーカッタ

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

日本Androidの会

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

7/20 ABC 2015 Summer日本Androidの会 主催

Android Bazaar and Conference

https://www.youtube.com/watch?v=vSKXvUBX97g

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

日本Androidの会 横浜支部

CardBoard ワークショップ

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

本日の参加賞 ドロイド君 飴

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Pepper くん

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

昨年10月末

http://pepper.ohwada.jp/Pepperブログ

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

日経Linux5月号Pepper アプリ開発

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Pepperくん 里帰り

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Android アプリで Pepper を 喋らせてみる

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

今日の話題(1)Android から

Pepper を制御する仕組み (2) Android アプリの留意点 (3) NAOqi API (4) サンプルコード

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

サンプルコードを実行する10分で(1) Android Studio に

サンプルコード PepperSaySample を インポートする (2) java-naoqi-sdk-xxx-android.jar を app/libs にコピーする (3) ビルドして、 Android に転送する

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

サンプルコードを実行する

(1) IPアドレスを入力して、  Connect ボタンを押す (2) Say ボタンを押す

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

IPアドレスを調べる(1) Pepper 本体のマイロボット画面 (2) Pepper にしゃべらせる  胸のボタンを押す (3) Choregraphe の接続画面

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Android から Pepper を制御する仕組み

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Pepper アプリ 開発環境

(1) Choregraphe (2) Python、C++ (3) Java、Java-Android (正式公開前)

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Android から Pepper を制御する仕組み

(1) Choregraphe の実行環境 (2) Python, Java の実行環境 (3) Android の実行環境

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Choregraphe

Package

NAOqi OS

転送

NAOqi API

(Python)

PC Pepper(1) Choregraphe の実行環境

Package(Python)

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

PC

NAOqi OSNAOqi API

Pepper

(2) Python, Java の実行環境

Code(Python, Java)

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

PC

NAOqi OSNAOqi

API

Pepper

(3) Android の実行環境

App(Java)

Android Studio

App(Java)

Android OS

転送

Android

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Android アプリ 留意点

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Android アプリの留意点

(1) ライブラリの保存場所を指定する (2) IPアドレスから Session を取得する (3) Thread から NAOqi API を実行する (4) パーミッションを設定する

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

(1) ライブラリの保存場所を指定する

EmbeddedTools tools = new EmbeddedTools(); File dir = getApplicationContext().getCacheDir(); tools.overrideTempDirectory(dir); tools.loadEmbeddedLibraries();

Tool class providing QiMessaging<->Java type system loading and dynamic library loader designed to load libraries included in jar package.

Jar ファイルには ダイナミック・ライブラリが含まれている

com.aldebaran.qi.EmbeddedTools

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

(2) IPアドレスから Session を取得する

String ip = "tcp://" + "<IP of your robot>" + ":9559"; Session session = new Session(); try { session.connect(ip).get(); } catch (Exception e) { }

Create session and try to connect to given address.

com.aldebaran.qi.Session

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

(3) Thread から NAOqi API を実行する

public void onClickConnect() Thread thread = new Thread( new Runnable() { @Override public void run() { Looper.prepare(); connectPepper(); } }); thread.start(); }

制約:Android では UI スレッドから 通信スレッド (NAQqi API) は実行できない。

private void connectPepper() { Session session = new Session(); ... }

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

(4) パーミッションを設定する

<uses-permission android:name="android.permission.INTERNET" />

AndroidManifest.xml

NAOqi API は WiFi 通信を行います

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

演 習 10分で

(1) 台詞を変更する (2) ボタンを増やして、台詞を追加する (3) 音量を調整する

サンプルコード PepperSay

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

NAOqi API

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

NAOqi APIhttp://doc.aldebaran.com/2-1/naoqi/

http://qiita.com/robotstart/items/7814bb56d0b56b1ad5ae

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

例) ALTextToSpeech

IP = "<IP ADDRESS>" tts = ALProxy("ALTextToSpeech", IP, 9559) tts.say("Hello World!")

http://doc.aldebaran.com/2-1/naoqi/audio/altexttospeech.html

Tutorial (Python)

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Java Doc

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

サンプルコード

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

サンプルコードJava や Android は、ありません (^^;

http://doc.aldebaran.com/2-1/dev/python/tutorials.html

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Choregraphe Box中身は Python コード

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

https://github.com/ohwada/Pepper_Android

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Pepper Speaker

7/20 ABC 2015 Summer

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

ツンデレな Pepper くん

話しかけても返事をしない (^^;

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

黒子作戦

Pepper内蔵WEBサーバー

WiFi

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Pepper Speaker

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

Android API 音声認識

2015年10月2日 日本Androidの会 x アトリエ秋葉原 大和田健一

その他のサンプルコード(1) Posture : ポーズをとる (2) Joint : 関節を動かす (3) MoveTo : 移動する (指定した距離) (4) MoveToward : 移動する   (ボタンを押している間) (5) ImageRemote : 写真を撮る   -> 未完成

top related