Arduino Uno、Harpy 用の DemoKit

DemoKit は Google がADK の発表の際に公開した、サンプルプログラムです。

オフィシャルサイトよりダウンロードできます。

adk_release_0512.zip

app: Android 用コード

firmware: Arduino 用コード

hardware: ボードの設計ファイル が入っています。

残念なことに、リリース後1年が経過しましたが、その間1度もバージョンアップがありませんでした。

Android 用のコードは現在の開発環境(Eclipse) でも問題なくビルドできます。

Arduino 用のコードは、現在のバージョン(Arduino IDE 1.0)では問題があるため、ライブラリを yaoadk で置き換えます。

Google のDemoKit ボード (およびRT-ADK/RT-ADS) は多数のセンサーを搭載しています。

Android 用のプログラムは、それに対応して、センサーの値を表示したり、リレーやサーボを動かすといった機能をもっています。Google のリファレンスボードは Arduino MEGA 2560 (ATmega2560) をベースにしているため、ピンの割り当てが Arduino Uno やHarpy (ATmega328p) と異なります。(ピン数がまったく違うので完全互換にはなりません)

ここではセンサー類を省略し、Arduino Uno または Harpyで使える簡易版のDemoKit を紹介します。

Android 用のプログラムは、Google が公開しているものを、そのままを使うことができます。

こちらのサイトでコンパイル手順とコンパイル済みのDemoKit.apk が公開されています。)

1) それぞれの手順を参照して、yaoadk ライブラリの導入、ボードの選択を行ないます

Uno用 手順Harpy用 手順

2) Arduino IDE で新しいウィンドウを開き、リンク先のコードをコピー&ペーストで貼付けます

DemoKit_for_Uno.txt

3) プログラムをコンパイルして、ボードに転送します

左上のチェックマークが「ベリファイ(ビルド)」、その隣の左矢印が「アップロード(ビルドと実行)」になります。アップロードの際に、毎回ビルドされます。

Arduino IDE 0023 以前は左端の再生ボタンが「ベリファイ(ビルド)」、左から6個目の左矢印が「アップロード(ビルドはしない)」になります。アップロード前にかならずベリファイ(ビルド)が必要です。

下の黒い部分に赤字のエラーが出ず、その上の部分に「Done Uploading」がでれば書き込み完了です。

これでAndroid、Arduino ともに準備ができました。

それぞれをUSB ケーブルで接続し、Arduino ボードの電源を入れます。(Android から給電することはできません。外部電源が必要です。)

DemoKit を起動するダイアログがでれば成功です。

Demokit_for_Uno を使った場合は、ディジタル入力 4つ*1、アナログ入力 2つ*2、ディジタル出力 2つ、アナログ出力(PWM) 3つが有効になっています。

Android 用のDemoKit との対応は図のようになります。

たとえば、Arduino のD2 にLED をつけ、Relay1 のボタンでOn/Off する、といった使い方ができます。

*1 ディジタル入力は内蔵プルアップ抵抗が有効になっています。プッシュスイッチなどをGND につなぐだけで使えます。

*2 アナログ入力は、温度センサー、明るさセンサーとして表示されますが、校正されたセンサーを繋いないので、表示はでたらめです。