ガジェットとアプリ開発~感情表現インターフェース~
外部のボタンを押したら喜怒哀楽が分かるようなアプリをつくってみる.
目的としては寝たきりで無表情になってしまったお年寄りに表情を取り戻すこと.
まぁ,どんな感じに作ったらいいかなって相談を受けたんだけど,
勢い余って試作してしまった話.
人の仕事を奪うなよ!って思うんだけど(犯人は私です)
コンテンツは外部ボタン用のガジェットと表情を表示するアプリの2つ
先に出来上がったものの動画を挙げます.トップダウンも大事だと思って
外部ボタン(アナログスティック)の信号をArduinoで読み取って,
喜怒哀楽のどの感情なのか識別
その結果をBluetoothでAndroidアプリに表示してます
外部ボタン用ガジェットの開発
使ったもの
2軸ジョイスティック・モジュール #27800: センサ一般 秋月電子通商 電子部品 ネット通販
マイクロチップ Bluetoothモジュール RN42XVP−I/RM: 無線、高周波関連商品 秋月電子通商 電子部品 ネット通販
回路図
回路図はこんな感じ
Fritzingを使ってみました.こういうソフトのライブラリで自分のパーツがないと作るしかないんですかね.
ジョイスティックの縦横方向をそれぞれアナログ入力ピンに接続して,BluetoothモージュールはTXとRXを間違えないように(笑)接続.
プログラム
特に工夫はしていないと思うけど,ジョイスティックの位置座標を極座標表現にして
if文で5領域(喜怒哀楽+平常心(?))に分けてる.
というか,ついにプログラムの挿入の仕方,Gistの使い方が分かった.
Atom風に載せられないのだろうか,,,
感情表示アプリの開発
使ったもの
- Nexus 7 (2013)
- Android Studio 2.3
プログラム
Bluetoothの部分は基本的にはSampleのBluetoothChatと同じ
変更点はシリアル通信をするのでUUIDの変更と
データをレシーブした後の処理
画像は”いらすとや”の画像を使用しています.
まず,UUIDの変更点(BluetoothChatService.java)
gistec3e93f516702b3acfd499d3bd3c2025
次に受信時のプログラムの変更点(MainActivity.java)
gistc9474680536561b181a5690d5a9f8f17
最後にGitHubのレポジトリ
こういうインターフェースで入力装置の開発が難しいんだろうと思っていて,,,
電磁波とかを使って,非接触で人の感情を読み取る機器がMITで開発されていたけど
それだと患者側の意思を無視している気がする.
寝たきりのお年寄りにとって使いやすい,コミュニケーションツールを目指しているんだろうなと思いつつ,,,