携帯(Nexus One)をサイクロコンピューターに?

Google(製造元はHTC)のAndroid携帯端末であるNexus Oneを購入した。



といっても単に新しい携帯が欲しかったわけではなく、Androidアプリケーション開発の実機テスト用として購入。



ちなみに既にエミュレータ上でAndroidのアプリ開発は開始していて、エミュレータの後でやっと実機が来た形になる。



実際にUSBをつなげてテストしてみると、早い早い。

それに比べてエミュレータの重さが酷すぎる。

というのも、Androidのエミュレータは、QEMUでARMプロセッサをハードウェアエミュレーションした上にLinuxを載せて、さらにその上にDalvikを載せているために重いのもしょうがないようだ。エミュレータの上にエミュレータを載せてさらにエミュレータを・・・という状態なので重いのも納得。

実機でテストをするとエミュレータとは比べものにならないほど早くデバッグができ、一気に開発工程が進んだ。


ところで、Nexus OneにはGPSはもちろん、加速度センサーや磁気センサー、温度センサーなど、様々なセンサーが実装されており、プログラム上から値を拾うことができる。

ということで、プログラマーとしてはNexus OneのようなAndroid携帯でサイクロコンピューターの代わりができないものかと思うものである。ちなみにGPSでルートを記録するようなアプリは既に開発されている。

ただGPSでは、移動距離や平均速度などのスピード関連情報しか出せない。サイクロコンピュータとしては、少なくともケイデンス、心拍数は欲しいところである。(Garmin Edge 500では温度も記録できるが、それは温度センサーで対応できそう)

そこで目を付けたのがAnt+。

GarminやSUUNTOなど、各メーカーがAnt+という共通規格を採用しており、Ant+のJava APIなどがあれば簡単に実装できるのではないかと思ったわけである。

実際に、HTC-Columbiaでは、Googleと連携してツール・ド・フランス開催中に、リアルタイムで各選手の心拍やスピード、位置情報などをネット配信していたほどである。

詳しくは以下のページ(英文)を見て欲しいが、HTC Legend(おそらく日本未発売?)のAndroid携帯を、サドルの下(通常サドルバッグが付く位置)に装着し、携帯で走行情報を取得、サーバに飛ばして、ネットでリアルタイム表示するというものである。

Behind the scenes of Team HTC-Columbia and the Tour de France Live Tracker

ということで、Ant+の公式ページに行って、各種Ant+の規格資料を漁ってみたものの、結局Java等で簡単に利用できるようなAPIはなし。さらに調べてみると、Texas InstrumentsのWiLINK 6.0/7.0という規格だとAnt+の情報を取れるらしいが、現在WiLINK7.0対応の携帯は発売されておらず、WiLINK6.0対応のものは今月発売されたばかりのMotorolaのDroid Xのみのようだ。ちなみにツール・ド・フランスで使われていたHTC Legendは、それ用に専用のチップなりが埋め込まれてたそうで、市販されているHTC Legendを買っても同じことはできないらしい。

せっかくアメリカにいてDroid Xが買える状況にあるんだから、試してみてもいいかなぁと思うが、どちらにしてもまだ市場に浸透していないようなので時代待ちかもしれない。

ただ、Ant+と連携できれば、ケイデンスやハートレートはもちろん、PowerTapのようなパワー情報も取れるようになるので、GPSと連携させればかなり強力なサイクロコンピューターが携帯で実現できるだろう。少なくともライドに行くときはサイコン以外に携帯は持って出かけるはずなので、携帯でサイコンが実現できれば言うことなしだろう。


0 件のコメント :

コメントを投稿