【PC&Gadget】加速度センサーを利用する。(Windows Phone Advent Calendar 2014 12/24)
■いっけね、遅刻しちゃった。
こんばんわ。
世の中は聖夜というやつでしょうか。
私は今日も明日も明後日も聖夜もパソコンのモニタがパートナーです。
ということで、聖夜のエントリー行ってみましょう。
今日のエントリーは、
「Windows Phone Advent Calendar 2014(http://www.adventar.org/calendars/415)」
の12月24日分のネタです。
ホントはクリスマスイベントに絡めたプロ生ちゃんとハァハァするアプリ開発やろうと思ったんですけど、間に合わず・・・。
以上、もう一個の
「プロ生ちゃん Advent Calendar 2014(http://qiita.com/advent-calendar/2014/pronama-chan)」
と同じ下りで始まります。
たまたまMSCCというイベント参加もあり、タイムリーにアドベントカレンダーもありでWindowsPhoneを絡めて妙案あればとアイデアを練り始め、プロ生ちゃん+WindowsPhone8+MSCCというどうやったらくっつけられるかというテーマに挑んだ結果、出てきた妙案が
「プロ生ちゃんをWindowsPhoneでハァハァする」
というものでした。
ハァハァするために使用するWindowsPhoneの機能として、(WPに限らず一般的な携帯デヴァイスも)加速度センサーというのが付いており、それを利用します。
ハードウェアの専門家ではないので詳細なことは置いておきつつ、
誤解を恐れずに言えば加速度センサーは大きく二つの役割を持っています。
1.各軸に対してかかる、地球の重力の測定
2.各軸に対してかかる、端末の移動による加速度の測定
1.については、地球の重力が携帯デヴァイスに対してどのようにかかるかを軸ごとに数値化したものです。たとえば携帯をテーブルの上に水平に置いた場合、携帯の上下をY軸、左右をX軸、画面背面を串指す方向をZ軸として、X、Y軸方向にに対しては重力は0G、Z軸に対してはまっすぐ画面背面方向に引っ張る形で重力が働くのでー1Gとなるわけです。
これが斜めになるとややこしくなって、正確な数値を出すには三角関数の知識が必須になってきます。ので、値は概ねこのぐらいで表現します。
(数学はちゃんと勉強しましょう!!)
ということで、携帯が今どの向きかというのは、加速しつつ動いていなければ(慣性系:特殊相対性理論の成立する空間であれば)以下の表を用いて非常にわかりやすいのであります。
図A
ところが、これがひとたび重力下において加速度運動を繰り返すようになると、途端に計算がややこしくなります。
ひょんなことから、アインシュタインが特殊相対性理論を慣性系でのみ成立する理論として構築し、のちに一般相対性理論として加速度運動を含めて昇華させる過程の悩みに今ぶち当たっている感じ?
特殊相対性理論と一般相対性理論の大きな違いまでも学べてしまう加速度センサーなのであります。
さて、世の賢い方々はこれを巧みに利用してアプリケーション、開発など積極的に]行っているようですが、こういったハードウェアと絡んだ開発は実績がなく、実装に当たってはまずは模索から始まりました。
ところが、予定していた機能の最低限の実装は実は早々に終わってしまいました。
技術がすごいとかそういう自画自賛的なアレではなく、むしろ予定していた機能の実装方法の検討が甘かったというだけのことでした。
甘かった部分というのが・・・
今回のアプリ開発では、加速度センサーからの数値を利用してプロ生ちゃんとハァハァすることが目的だったのですが、如何せんこういった携帯デヴァイス向けのセンサーを利用した開発をやったことがなく経験値不足だった上に、携帯デヴァイスの中でももっともめんどくさそうなセンサー出力を入力としていたにもかかわらず、取得される値の取り扱いを安易に考えていたことです。
この手の開発慣れている方なら説明の必要はありませんが、
上記の図Aは、携帯デヴァイスの各状態における、
加速度センサーから取得された値の範囲を示したものです。
エミュレータを起動して加速度センサーのテストツールでグリグリ動かすと、
それぞれの軸の値が表示されるのでそれを図示したものです。
単なる数値の変化も、図示すると多少わかりやすくなります。
(これをみる限り、端末を水平に机の上に置いた状態でコマのようにくるくる回しても、数値変化はないということになってしまいます。
そこは、方位センサーでも利用するのでしょうか。 )
当初は、平面に置いた状態でのX軸、Y軸の変化のみを読みとってプロ生ちゃんとハァハァするというもので、開発もほぼ終了していたのですが、ピンボールゲームならいざ知らず、普通の人は大人しくまっ平なデスク上でアプリを起動するわけもなく、手に持った状態で利用するわけです。
下の図のような状態ですね。
であれば、それに対応した動きにならなければ使えんだろう。
ということで、待っ平なデスク上で動作するモノではなく、利用者が手に取った状態からの加速度センサーの数値変化を評価してプロ生ちゃんとハァハァできるように再構成したいと思います。
要するに結論なし、未完成な上に、大した技術ネタでなくてスミマセン・・・。
|
~失敗しない家作りブログのAuthorの本職はSE。家作りとITがどうかかわるかわかりませんが、SEならではの視点でPC,ITに物申してみたいと思います。~
Share |
|
| |||
ランキング参加始めました。駄文ですが、ほんのチョビっとでも役に立ったと思われたらクリックお願いいたします:-) |
« 【DIY】眼鏡の鼻盛をなんとかする。(2/2) | トップページ | 【PC&Gadget】ADVENT2014 プロ生ちゃんとハァハァ。 »
「06.■PC&Gadget」カテゴリの記事
- 【SharePoint】SharePointDesignerのUserAgent(2012.04.12)
- 【PC&Gadget】加速度センサーを利用する。(Windows Phone Advent Calendar 2014 12/24)(2014.12.24)
- 【PC&Gadget】ADVENT2014 プロ生ちゃんとハァハァ。(2014.12.24)
「★移行用★」カテゴリの記事
- 【車DIY】ユーザー車検2015 (軽自動車検査協会 愛知主幹事務所編)その2(2015.11.22)
- 【車DIY】ユーザー車検2015 (軽自動車検査協会 愛知主幹事務所編)その1(2015.11.17)
- 【SharePoint】SharePointDesignerのUserAgent(2012.04.12)
« 【DIY】眼鏡の鼻盛をなんとかする。(2/2) | トップページ | 【PC&Gadget】ADVENT2014 プロ生ちゃんとハァハァ。 »
コメント