アンドロイド の傾きセンサで マインドストーム を動かす


YouTube Preview Image

この記事は 日本 App Inventor ユーザー会 Advent Calendar 2011 という企画の1つのエントリです。

以前、書籍 30分でつくれるAndroidアプリ に紹介されている方法で、アンドロイドからマインドストームを動してみました
それは、タッチパネル上のボタンを押すと、マインドストームが前進するというものでした。

今回は、アンドロイドの傾きセンサを利用してみました。
きっかけは、日本App Inventorユーザー会 のMLで下記のようなやりとりがあったことです。

機械電気科 都島工業
このプログラムの場合ボタンを押したら指定時間(もしくは距離?)進むのですが、そうでは無くボタンを押している間だけ進むと言う形に変えたいと思っています。

大和田 (私)
ボタンを押している間だけ走るという方が自然なので僕も挑戦したのですが、現在の App Inventor のButtonコンポーネントのイベントではボタンを押した時しか分からず、ボタンから指を離したイベントがないのです。

つれもて
本屋さんで立ち読みをしていたら マインドストームを加速度センサーで操作って掲載されていました。これの方がスマートフォンらしいですね。

AppInventor の 傾きセンサコンポーネント を調べてみたら、pitch(前後の傾き) roll(左右の傾き)が取得できるようです。
そこで傾きが10以上なら半速前進、20以上なら全速前進、としてみました。

ソースコードは code.google に置いています。

スクリーンショット

デザイナー (Designer)

ブロックエディタ (Blocks Editor)
AppInventor の ifコンポーネント には elseif がないので、else の中に ifコンポーネントを置くという不格好な構成になってしまいました。

動かしてみる。 上段のビデオ。

関連
アンドロイド から マインドストーム を動かす

参考
2011年 オクトバ大忘年会 アフターレポート!
マインドストームを持込んだところ、記事に掲載して頂きました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です