リアルとアプリをつなぐ「Android Open Accessory Development Kit(ADK)」とは ―― Androidとクラウドとハードウェアの未来

Smartphone World編集部

●ADKを技術から考える

 それでは,具体的にはADKとはどんなものでしょうか?

 ADKとは,大まかに言えばAndroid開発環境のライブラリ(API)や,ADK対応ハードウェア(Accesory DemoKitと呼ばれるもの)で構成され,それらがUSBで通信できるもの,と言えるでしょう.

 これだけ聞くと,Android端末以外のハードウェアと通信できるだけで目新しさも何もない,と思う方もいるかもしれません.しかし,ADKが注目されるのは,その技術的な発想にもよるのです.

 Android端末とハードウェアはUSB接続を行います.USBでの接続には,「USBホスト」と「USBターゲット」の二つのモードがあり,前者は親で,後者は子の関係です.パソコンと周辺機器で考えると,USBホストはパソコン(PC),USBターゲットはキーボードやマウス,プリンタなどのイメージです.

 スマートフォンはPCに対して子,つまりUSBターゲットになります.PCがスマートフォンを「Mass Storage Class」で認識するようなイメージです.

 しかし,ADKではUSBホストのモードも持たせ,接続する機器と通信できます.また,それぞれのモードで親から子に電源の供給ができることも特徴の一つです.

 つまり,ADKを利用すると,USBによる通信でAndroid端末から周辺機器を操作でき,逆に周辺機器からもAndroid端末を操作できます.例えば,スマートフォンからエアコンを操作するデバイスを開発したり,外部コントローラからタブレットを操作したりすることができるわけです.


●ADKはすべてオープン

 ADKに関する情報を入手するには,「Android Open Accessory Development Kit」のWebサイトが一番でしょう.すべてがオープンなAndroidの思想のもと,ADKも関連する情報はすべて公開されています.

 上記のWebサイトから入手できる「The ADK Package」には,ADKを開発する上で必要な情報が詰まっています.それはサンプル・コードやライブラリ,ファームウェア,回路図(図2)などです.回路図を利用すると,ADKボードのデッドコピーがすぐに作れてしまいます.例えば,アールティの「RT-ADK」と「RT-ADS」の外観(写真6写真7)と回路図とを見比べてみると,回路図通りだということが分かります.


図2 ADK(Arduino)ボードの回路図

 


写真6 RT-ADKの基板外観.各入出力が確認できる

 


写真7 RT-ADSの外観.RT-ADKに接続することで動作する

 


そんなADKですが,作るのが面倒だという人のために,各社からADK開発用ボードが入手できます.前述の「RT-ADK&RT-ADS」以外にも,アールティから発売されたばかりの「RTADKmini」(写真8)や,Microchip社のPICを搭載したもの(写真9)や,Seeed Studio社のもの(写真10)などがあります.オープンソース・ハードウェアのArduino(写真11)でも開発できます.


写真8 PICベースの「RT-ADKmini」はブレッドボードを利用する

 

 

写真9 Microchip社の「DM240415」

 

 

写真10 Seeeduino社の「ADK Main Board」

 

 

写真11 Arduinoボード「Arduino Uno」

 

 

●ADK対応アプリを開発するには?

 最後に,ADKアプリの開発に必要なものを紹介しておきましょう.

 ハードウェアとしては,ADK対応のAndroid搭載端末,そしてADK対応ボードです.端末のAndroidのバージョンはAndroid 3.1以降,またはAndroid2.3.4以降です.中には対応していないものもあるので注意しましょう.

 ソフトウェアとしてはAndroidアプリの開発環境である「Eclipse」と「Android SDK」,Arduino用開発環境「Arduino IDE」とArduino用ライブラリ「CapSense」です.

* * *

 『Smartphone World』Volume.3では,ADK対応ボードを利用した開発方法として,RT-ADK&ADSと,Arduino MEGA ADKを使ったものを紹介しています.例えばサンプル・アプリでモータを動かしたり,ジョイスティックでキャラクタを動かし,弾丸を発射するようなアプリ,画面上方から現れる円をタイミングよくタップすると,LEDが点灯するようなアプリなどです.

 ADKを使うと簡単に周辺機器をクラウドにつなげられますが,ADKを使わない「MicroBridge」などもあります.これについても紹介しています.

 

(本記事は『Smartphone World』Volume.3の掲載記事に一部手を加えたものです)

 

«  1  2
組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日