...

発表資料PDF(2044KB)

by user

on
Category: Documents
12

views

Report

Comments

Transcript

発表資料PDF(2044KB)
SIIA自主勉強会
<グループB>
腕時計型デバイス「Pebble」と
自作Wearable Deviceの研究
1
メンバー紹介(産学共同研究)
 大石 和寿(㈱ユニテック)
 井出 雄也(㈱ワークノアート)
 望月 憲志(㈱ワークノアート)
 鈴木 正章(専門学校静岡電子情報カレッジ)
2
本日のプレゼン内容
1. Wearable Deviceとは
(Glass、Wristband、Watch、Ring、HeadBand)
2. Wearable DeviceのAPL開発
(ローカルWin、クラウド、ローカルMac)
3. 自作Wearable Deviceの開発
4. まとめ
3
1.Wearable Deviceとは
 身につけて(Wear)持ち歩くことが出来るコンピュータのこと。
 身に付けることから小型化が必須。
 小型化するため、各種スペック(処理速度、記憶領域、画面サイズ等)は低
い。
 既に販売されているWearable Deviceは低スペックを補うためスマホなどと
の連携を主としている。
4
主なWearable Device [Glass Type]
Google Glass
Telepathy One
5
Google Glass [Detail]
項目
内容
価格(Explorer Edition)
$1,500
価格(一般向け)
$299?
発売時期
2013年末?
開発環境
OSが「Android 4.0.3」のため、Android開発環境を使
用すると想定。
UI
音声。
“ok glass ~”で~がコマンド。
その他スペック
25インチディスプレイ
カメラ
オーディオ
Wifi、Bluetooth(LTE?)
16GBフラッシュメモリ、12GBクラウドストレージ
6
Telepathy One [Detail]
項目
内容
価格
Google Glass($1,500)未満?
発売時期
2014年中?
2013年秋 SDK限定公開
開発環境
不詳。
オープンな開発環境にはならない?
UI
ジェスチャー
その他スペック
不詳。
漫画カメラ相当のアプリはあるらしい。
7
主なWearable Device [Wristband type]
NIKE+FUELBAND
UP by JAWBONE
8
NIKE+FUELBAND SE [Detail 1]
項目
内容
特徴(ウリ)
あらゆる動きの活動量をカウント
・運動時の負荷、歩数、睡眠の記録 → 視覚化
・時計機能
使い方:腕に装着し、その日の活動目標や獲得したい
NikeFuelの量を設定。
本体に内蔵されている加速度計が手首の動きを感知し、
そのときどきの活動量を測定。
耐水性あり。
活動量の目標達成に近づくと、リストバンドに表示される
LEDドットの色が赤から緑に変化し、達成すると「GOAL」の
ドット文字が表示。
価格(niki.com)
¥15,750
発売時期
2012年2月(アメリカ)
新モデル:2013年11月(日本)
9
NIKE+FUELBAND SE [Detail 2]
項目
内容
開発環境
不明(野良アプリは無理!?)
専用アプリはNIKEより提供
スマートフォンはiphone系のみ
PCは、win,mac両対応
UI
3軸加速センサーにより1日の動きを測定
その他スペック
サイズは、S・M・Lの3種類
Bluetooth4.0によるスマートフォンとのペアリング
防水加工
10
UP by JAWBONE [Detail]
項目
内容
特徴(ウリ)
健康的なライフスタイルを実現するシステム。
運動や睡眠の活動を記録し、データを表示するので、食事やムー
ドなどのアイテムやコメントを追加したりして、目標に向かって前
進し続けることができます。
価格
UP24・・149.99$(約¥15,000)(Bluetoothに対応)usのみ
UP・・129.99$(約¥13,000)
Amazon Japan・・¥18,000
発売時期
2012年11月(US)
2013年4月(日本)
開発環境
不明(野良アプリは無理!?)
専用アプリ:スマートフォンはiphone系、Android両対応
UI
•モーションセンサー•シングル押ボタン式インターフェイス
•通知用振動モーター•デュアルLED
その他スペック
11
主なWearable Device [Watch type]
Pebble
GALAXY Gear
12
Pebble [Detail]
項目
内容
価格
$150
発売時期
2013/1/23
開発環境
本体で稼働する。
(インストールはiPhone/Android端末で行う。)
Watch Face と言う、Pebbleの時計表示にバリエーションを持たせ
るための仕組みも有る。(いわゆるアプリに近い。)
特徴
Eインクディスプレイを備えた多機能腕時計。加速度センサーや防
水機構を備え、iPhoneやAndroid端末とBluetooth経由で情報をや
り取り可能。
現状日本語非対応。
13
GALAXY Gear [Detail]
項目
内容
価格
¥36,540
発売時期
2013/10/17
開発環境
基本的に母艦(スマフォ)ありきのデバイスだが、単体で動くアプリも
インストール可能(らしい)。
特徴
GALAXYデバイスのコンパニオン・デバイス。Bluetoothを使って、
GALAXYデバイスと接続。電話、SMS、電子メール、アラートなどを通
知し、ユーザーはGearの画面でメッセージの要約などを確認できる。
14
その他、珍しいWearable Device その1
(Ring型)
 日本のLogbarが開発しているウェアラブルデバイスで、Ringをつけた指で
特定のジェスチャーをするとテレビの電源をONにしたり、電子決済すること
ができます。
 3/1にFacebookで重要な情報が発表されるという告知がありました。
その内容は、アメリカのKickstarterでの公開後1日半で$250,000の目標額
を達成したというものでした。
詳しい仕様等は$5以上の支援で提供、
$145以上でRing本体を受け取ることが
できるとのことです。
15
その他、珍しいWearable Device その2
(HeadBand型)
 スマートヅラ (開発者命名はスマートウィッグ)
 カツラの頭髪のなかにセンサーや通信装置を内蔵し、別のコンピューティ
ングデバイス(たとえばスマートフォンなど)と通信してさまざまな機能を使え
ます。
 内蔵するデバイスの例として挙げられるのは、携帯への着信などを知らせ
るバイブレータ、GPS、頭の前後左右に設置して進む方向を示すナビゲー
ション用バイブレータ、カメラ、超音波センサ、物理的なスイッチを含むさま
ざまな方式のリモコン、モーションセンサ、圧力センサ、さらにレーザーポイ
ンタ、そして「装着した頭部とカツラの相対位置を検知するセンサ」つまりズ
レセンサなどです。
16
2.Wearable DeviceのAPL開発
 実際に現物に対してアプリケーション開発を行い、可能性を探る
 Wearable Device単体でアプリケーションが動作する
 SDKが公表されている
 Bluetooth接続が行える
17
[Pebble]端末仕様詳細1
対応端末
iPhone 3GS以降、iPod touch、iPad、iOS 5以降、Android 2.3
以降
プロセッサ
ARM Cortex-M3
ディスプレイ
1.26インチ (144×168)
電子ペーパーディスプレイ (バックライトつき)
通信
Bluetooth 2.1+ EDR and 4.0 (Low Energy)
バッテリ
約7日間(USB充電)
通信可能距離
最長約6m
18
[Pebble]端末仕様詳細2
特記事項
振動モーター / 3軸加速度センサー / 防水機能付き
バンドは交換可能 幅22mm
開発環境
エミュレータは存在しない
ローカルまたはクラウドで開発できる環境がある
PebbleSDKが1.0と2.0と公開されている
ローカルは仮想OSのWindows上でLinux動かし、PebbleSDKを
起動させることで開発可能となる
クラウドはユーザ登録することで下記URLから開発可能となる
https://cloudpebble.net/
開発参考サイト
https://developer.getpebble.com/
19
PebbleのAPL開発環境
 エミュレータは存在しない
 開発環境には、ローカル、クラウドがある(以下はローカル環境Windowsについ
て)
 Vagrant(仮想の開発環境作成ツール)で開発環境を管理する
 VirtualBoxでWindows上でLinuxを走らせる
 PebbleSDKをLinux上で走らせる
 PuTTY SSH (Vagrant- VirtualBox間でSSH通信をしてる?)
PebbleSDK
Linux
VirtualBox
VirtualBox
Vagrant
Windows
20
PebbleのAPL開発フロー
1)開発環境でコーディング
2)開発環境でコンパイル
3)スマートフォンに実行ファイルをコピー
4)スマートフォンのPebbleアプリケーションからBluetooth経由でPebbleに実行ファイルを
コピー
5)Pebbleでアプリケーションを実行
21
PebbleのAPL開発に挑戦!!
 後述の自作Wearable Deviceとの連携APLを開発を試みた
しかし・・・
 Bluetoothはあるものの、SDKによって使用方法が制限されている
 基本的にはスマートフォンに対する接続を提供するのみとなっている
 そのため、自作Wearable Deviceとの連携はできなかった
22
クラウド環境での
Pebbleアプリの開発全体図
クラウド開発環境
Pebble
Bluetoothペアリング
http
http
同一セグメント
スマートフォン
PC
www
23
クラウド開発環境画面1
24
クラウド開発環境画面2
25
Pebbleへのインストール
26
Pebble
ローカル環境Macでの
Pebbleアプリの開発全体図
ローカル開発環境
SDKインストール
Bluetoothペアリング
Wi-Fi
同一セグメント
PC(Mac)
スマートフォン
27
ローカル開発環境構築(Mac)
https://developer.getpebble.com/2/getting-started/macosx/
公式サイトよ
りSDKをイン
ストール
28
ローカル開発環境画面1(ソース)
C言語
29
ローカル開発環境画面2(ターミナル)
ビルド
スマート
フォンに
転送
30
転送と同時にPebbleへのインストール
31
開発に挑戦してみての感想
・現在、日本語非対応なので、開発は全て英語のみ。
→ 日本の代理店は現在存在しない(ビジネスチャンス!?)
・WatchFaceやゲームの開発が現在中心である。
他、万歩計等もあり
32
3.自作Wearable Deviceの開発
ウェアラブルデバイス自体を自作する事が出来ないか、調査した。
33
ウェアラブルデバイスを成り立たせる条件
そもそも「ウェアラブルデバイス」って何?
ウェアラブル=身に着けて使用するデバイス
→身に着けるデバイスを作る為には何が必要か?
34
身に着ける為には・・・
 小型であること(小面積・薄い)
 軽いこと
 省電力であること(「いつでも(常に)」「どこでも」使える=バッテリー駆動。
消費電力が大きいと、バッテリーも「大きく」「重く」なる。)
 何らかのセンサーを搭載し、身体の動き(三軸加速度センサーetc・・・)や、
外界の情報(明るさ・温度 etc・・・)を取り込む事が出来ること
 マン―マシンI/Fとして、何かしらの出力装置(OLEDディスプレイ/液晶ディ
スプレイ/LED etc・・・)があった方が良い。(無ければ、スマフォ等のデバイ
スと連携する。)
35
そんな物自作出来るの?
出来そう。
キーワード「フィジカルコンピューティング」
36
フィジカルコンピューティングとは?
フィジカル=「身体の」とある通り、体を使ったコンピュータ操作をまとめて、フィ
ジカルコンピューティングと呼ぶ。
ウェアラブルコンピュータは、フィジカルコンピューティングを実現させる為の一
形態と言える。
Google Glass(ウェアラブル)
Microsoft Kinect
(非ウェアラブル)
最近はフィジカルコンピューティングを実現させる為の開発環境
が充実して来ている。
37
Arduinoとは
 イタリア発の、AVRマイコン搭載オープンソースハードウェア。
 非常に安価。元々はエンジニア以外の人がフィジカルコンピューティ
ングを実現させる手段として開発された物で、初心者でも簡単に開発を行
う事が出来る。
38
以下の利点から、今回はArduinoで開発してみる。
1.消費電力が少ない
2.外部デバイスからの情報取得を簡単に行う事が出来る
3.色々なバリエーションがある
39
LilyPad Arduino
小型・薄型のArduino互換機。
布地に縫い付け、導電糸で縫い合わせる事で、回路を作る事が出来る。
TinyDuino
超小型のArduino互換機。
幅20ミリで、おおよそ25セント硬貨ほどの大きさ。
価格は19.95ドル。
Arduino Unoと同じプロセッサーを搭載し、同じス
ケッチが動く。
40
4.開発が簡単
5.様々なデバイスを扱う事が出来る
41
実際にデバイスを作成してみる
自作の可能性を検証する為、実際にウェアラブルデバイスを作成してみること
にした。
<構想>
・Arduinoでプロトタイプを作成。
・デバイス単体で完結せず、他のデバイスと連携する物とする。
→今回は折角調査を進めたので、Pebbleと連携させてみる。
42
自作ウェアラブルデバイス例「カメラ」構想
カメラデバイス
シャッター指示
画像
シャッター指示
Bluetooth による通信
Arduino
画像
Pebble
自作ウェアラブル
デバイス「カメラ」
Arduino UNO でプロトタイプを作成し、動作検証後にTinyDuino 等で小型化する事
で、最終的には、身に着けられるカメラ(例:ペンダント型)を目指す。
43
技術的な検証
1.カメラデバイスの操作
Arduino の デジタルIN・デジタルOUTにて、直接カメラデバイスを操作し、画像
取り出す事が出来た。
ただし、Arduinoのメモリには画像1枚は収まらないので、センサーから画像を
読み出しつつ、そのまま外部にUSB接続のシリアル通信で出力する形となっ
た。
検証はPCとArduinoをUSBで接続し、PC側に専用アプリを用意して、シリアル
通信でシャッター指示・画像の取り出しを行った。
44
カメラデバイス検証イメージ
シャッター指示
カメラデバイス
画像
シャッター指示
USB接続シリアル通信
Arduino
画像
Pebbleの代わりにPCに専用ア
プリを用意して接続
45
技術的な検証
2.Bluetooth の操作
Arduino にBluetooth デバイスを接続。
プログラムは、シリアル通信のメソッドがそのまま動くので、特にBluetoothであ
ることを意識すること無く、機能を実装することができた。
(ペアリングの仕組み自体はBluetoothモジュールが請け負ってくれ、Arduino
のプログラムでは、何もする必要が無い。PC側でBluetoothモジュールのペア
リング設定を行うと、以降ArduinoのシリアルがそのままBluetoothに置き換
わってくれる。)
→PC – Arduino 間でBluetoothによるシリアル通信(送受信)を行う事が出来
ることを確認した。
46
Bluetooth検証イメージ
通常のUSBシリアル通信
送信
送信
UART
USBシリアル通信
受信
UART – USB変換モジュール
(Arduinoボード上のFT232)
Arduino
PC上のターミナルソフト
置き換え
Bluetoothによる通信
送信
送信
UART
Bluetooth通信
受信
Arduino
受信
Bluetooth モジュール
受信
PC上のターミナルソフト
47
技術的な検証
3.カメラデバイスのBluetooth化
1で作成したカメラデバイスの通信部分を、Bluetoothに置き換えて、最終的な
形とした。
48
カメラデバイスのBluetooth化検証イメージ
シャッター指示
画像
カメラデバイス
シャッター指示
Arduino
Bluetooth通信
画像
Bluetooth モジュール
Pebbleの代わりにPCに専用ア
プリを用意して接続
49
ブレッドボード版完成図
(Arduino互換機を使って実装。)
50
最終版完成図
ブレッドボード版を基板にまとめ直し、小型化した。
Arduinoの小型版( TinyDuino等)を入手できなかったので、別の小型マイコン
基板(MARY基板+Xbee Board)を使って実装した。カメラ接続部の回路も、マ
イコン基板と同サイズの基板にまとめ直している。
51
問題点
1.Bluetooth のマスター化の問題
Arduinoをスレーブとするのは簡単だが、そもそもPebbleがマスターになれないので、
マスター:Arduino
スレーブ:Pebble
の構成にする必要があった。この場合、自力でBluetoothのペアリング作業を行う必要が有
り、実装の難易度が上がった。
結局、今回はマスター化の検証を行う事が出来ず、PebbleとArduinoとの間でペアリングする
ことが出来なかった。
2.Pebble のBluetooth ハンドリングの制限
Pebble のSDK自体が、スマートフォンとの連携という形でしか外部との通信I/Fを用意してい
ない為、自作デバイスとBluetoothで自由にシリアル通信を行う事が出来なかった。
52
検証結果・総論
1.Arduinoについて
・開発が容易で、ライブラリも充実している。
・ブレッドボード上に回路を組めば、直ぐに検証を行う事が出来る。
・Bluetoothによる通信は、通常のシリアル通信そのものなので、
まずはUSBシリアル通信で検証する事が可能。
→プロトタイピングには最適。
・様々なモデルが存在し、かなり小型の物もある。
・接続できるBluetoothモジュールも充実している。
→ウェアラブル向けの実装が、比較的容易。
53
検証結果・総論
2.既存ウェアラブルデバイス(Pebble)との連携
・PC-Arduino 間でのカメラ操作・画像の転送は出来たが、PebbleがBluetoothの
マスターになれないので、Pebble-Arduino 間でのやり取りは一切できなかった。
→Pebble自体が、PCやスマートフォンに替わるポジションには無い。
・本体のみで動くアプリケーションを作成する事が、唯一出来そうなデバイスと
言う事でPebbleを採用してみたが、現状のSDKの機能では、外部とのやり取りを
行う必要がある場合、スマートフォンとの連携が前提となってしまい、結局他
のデバイスに対するアドバンテージは感じられなかった。今後、SDKの機能が
拡充される事が望まれる。
→現状はまだ、ベンダー側も手探りで開発を進めている、試行錯誤の段階
に感じられた。
54
まとめ
 今後成長が見込める分野である。スマートフォンの次はこれ!?
研究を継続したいと感じた・・
 大きなコストをかけなくても、自作デバイスに挑戦出来る
環境があるので、企業として参入してみる価値有り!?
 企業・学校等、様々な立場のメンバーでの開発は、刺激があって良かった。
55
Fly UP