More Related Content
KEY
PDF
PPTX
ODP
PDF
Android & Nui & Physical Computing PDF
Android端末と組み込み機器が連携する Android Make Days PDF
PDF
What's hot
PDF
Kinect for windows sdk c# PDF
北九州デジタルクリエイターコンテスト2013記念講演会 PDF
Kinect for windows sdk cpp PDF
Kinect for windows sdk introduction KEY
PDF
PDF
Platform io で シュッと arduino 開発を高速化しよう speed up your arduino development with p... PDF
Kinect for Windows およびDepthセンサーの動向 PPTX
PDF
PDF
PDF
ODP
AndroidとArduinoで ロボットを作って思ったこと PDF
Kinect v2を通してMicrosoft技術を考える PDF
PDF
はじめてのKinect for windows v2 PPTX
Scratchとkinectで簡単モーションプログラミング PPTX
PDF
Androidでロボットアームを動かしてみた(2012OSC愛媛) PDF
GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク... Viewers also liked
PPTX
Робота системи електронного документообігу. Вінницька міська рада PPTX
PDF
Colección Noche 2009 - Astrid A Urban Afrowear PPTX
Animasi pada-presentasi (1) call uhamka PPT
KEY
PPT
PDF
PPTX
Placemaking Conference: Walkable Cities PPTX
PPTX
PDF
PPT
PPTX
PDF
PDF
KEY
PPTX
PPTX
ESAB UPC Enginyeria de biosistemes curs 2012-13 PPT
Similar to イチからはじめるADK北海道支部勉強会発表資料
PDF
KEY
PDF
PDF
Android-controlled robot,Original PCB to work as a bridge between Android-pho... PDF
Android-controlled robot,Original PCB to work as a bridge between Android-pho... PPTX
ODP
PDF
KEY
姫路IT系勉強会「ADB接続でかんたんフィジカルコンピューティング」 PDF
KEY
PDF
20121013 ADK bootcamp in Tokyo PDF
PDF
Make: Ogaki Meeting 2012 Androidロボットサミットin大垣 PDF
Kopanitsa portfolio 2013_09 PDF
KEY
PDF
12.09.30.第5回はんだごて勉強会資料 公開用 PDF
Arduino、Raspberry Pi、PIC 入門以前(NSEG 2014-04-19) PDF
More from Kenichi Yoshida
PPTX
大阪版Io tlt#1 IoTあるじゃん関西支部 ラズパイ2でデュアルブート PPTX
AWScean #1 SORACOMアルファベット PDF
Soracom & myThingsを使ったハンズオンセミナーをやってみた PPTX
ラズパイ2にWindows 10 IoT Coreを入れてWindows Universal アプリ動かしてみた PPTX
PDF
PDF
App Inventor 2でかんたんロボカー操縦! PDF
組み込みーモバイルークラウドをオープンな形でつなぐKOF2013 PDF
組み込みーモバイルークラウドをオープンな形でつなぐ PPTX
PDF
JAWS-UG三都物語 クラウドとデバイスが連携するアジェンダ PPTX
KEY
ロボットサミットとは? in 京都 on 2012年8月 KEY
ロボットサミットとは?in名古屋on2012年5月 KEY
ロボットサミットについてin愛媛on2012年3月 PDF
KEY
イチからはじめるADK北海道支部勉強会発表資料
- 1.
イチからはじめる
ADK
日本Androidの会神戸支部
吉田 研一
第13回Android勉強会in札幌
今回は電子工作祭り!
2012年6月2日(土)
- 2.
- 3.
自己紹介
• よしだけんいち(45歳) @dietposter
• 奈良在住
• JAG神戸&神戸GTUGメンバー
• ECCコンピュータ専門学校専任教員
• 奈良高専卒、高校教諭免許(理科)有り
- 4.
今回のセミナーの経緯
3/24(土) ABC 2012SpringにてADK勉強会(東京)
の展示の際に、まいむぞうさんがコンタクト
吉田はOSC愛媛に参加し、ABC 2012
Springの「ロボットサミット」のハング
アウト中継を行っていた
後日、ADK勉強会(東京)MLにて北海道支部勉強
会でADKの話をしてくれないかと依頼あり
ここで事情をはじめて知り吉田が喜んで手を挙げた
吉田は秋葉原で行われるADK勉強会と
ハングアウトで自宅をつないでオンラ
イン参加していた
- 5.
書籍(共著)の紹介
著者(五十音順)
(横浜支部ロボ部)
岩田 直樹
杉浦 登(部長)
原田 明憲
(神戸支部)
高木 基成(支部長)
「Android ADK プログラミング 吉田 研一
&電子工作バイブル」
- 6.
書籍(共著)の内容
第1章 ADKの概要とハードウェアの制御(高木さん)p.13
第2章 ADKボードを動かそう(杉浦さん:RT-ADKボード)p.51
第3章 Arduino UnoとUSBホストシールドで手軽にADK p.131
格安・簡単! LED, スイッチ, 光センサとのやりとりを行う
第4章 Androidで赤外線通信(岩田さん:Arduino)p.53
第5章 Androidで温度モニタリング(原田さん:PICマイコン)p.45
第6章 MicroBridgeの利用(岩田さん:Arduino)p.27
Appendix-1 ピンソケットのハンダ付け p.11
Arduinoの拡張基板「シールド」のハンダ付け方法を丁寧に解説
(384ページ中141ページ担当しました)
- 7.
イベントの紹介(本日ですが)
横浜支部ロボ部
杉浦さん
原田さん
PICマイコンを使ったADKキットのハンダ付け講習会
基板のみで500 円(税込)
部品込みで2,980 円(税込)
●株式会社テクノロードWEB SHOP
http://techno-road.com/shop.html
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
ADKとは?~歴史1~
• 2011年5月 Google I/O (San Francisco)
アールティ社が
ADKボードを提供
ブリリアントサービス社
(大阪)がLED植物工場
を展示。LEDは共立電子
(大阪日本橋)
https://sites.google.com/site/bsfarmbox/
- 15.
ADKとは?~歴史2~
• 2011年11月 GDD Open Call (Tokyo)
ADKを
用いた
作品の
展示
(12作品)
大和田さん(横浜支部長)「OpenCall における ADK の傾向」より
- 16.
- 17.
2012年3月
• 鳥人間@hisashinさんの世界最小ADK対応Arduino
「Harpy nano」販売
回路図も公開
つくばFabLabで作成
http://www.harpyhack.com/
- 18.
2012年4月(1)
itogさん CEREVO DASHにADKガジェット
「FourBeat」出展
クラウド・ファ
ウンディングに
よる支援
興味をもたれた
方は支援を!
http://camp-fire.jp/projects/view/254
- 19.
- 20.
2012年5月
• ソシム社「Android ADKプログラミング
&電子工作バイブル」発刊
http://www.socym.co.jp/book/809
• 日経Linux 5月号
特集1 ここまでできる“未来”の部屋
Linuxで家電を自由に操る
http://nkbp.jp/LKKH3C
- 21.
でもイマイチ流行らない
• Adnroidのバージョンに制限
• スマートフォン2.3.4以上
• タブレット3.1以上
• マイコンや電子工作の知識が必要…興味はあ
るけどなかなか手を出しづらい。
• 今年のGoogle I/OにはADKのプログラムは無
い、らしい。…オワコンか
- 22.
でもでも根強く続く技術
•Android開発には様々な文化の人が関わる
•組込み屋さん 「Androidレイアウトの
•Web屋さん スタンダードアプローチ」
•携帯アプリ屋さん 住友さん
•業務アプリ屋さん http://slidesha.re/L547Ud
•ADKは様々な文化へのアプローチとなる技術で
はないか。様々なものをつなぐメタファーかな。
•あと、そろそろ4.0のAndroid携帯が増えそうな
んで、基本が分かれば使える技術になるハズ!
- 23.
モノwith サービス=コト
• 製品単体では受け入れられない時代が来ている
• モノと同時に付随するサービスを体験すること
で受け入れられ浸透していく時代だと感じる
• モノとサービスが組み合わさりコト(事柄)と
なってヒト(人)をつなぐように思ったり
•ガジェットとスマートフォン-クラウドを結ぶ
ADKはそういった「コト」をつくるアーキテク
トになるかも??
↓参考ブログ
組込み技術とモバイル技術(2)-人と技術のマッシュアップ
- 24.
- 25.
AndroidとのUSB接続
• USB Accessory API(Androidが電源をもらう側)
• AndroidがUSBデバイス(Type-Bコネクタ)
• これがいわゆるADK
• USB Host API(Androidが電源供給側)
• AndroidがUSBホスト(Type-Aコネクタ)
- 26.
USBアクセサリモード
とUSBホストモード
USBホスト USBデバイス
アクセサリ 電力 Androidが従
モード マイコンや
A B Android
FPGAなど
(ADK) データ転送
USBデバイス USBホスト
ホスト 電力
マイコンや Androidが主
モード FPGAなど B A Android
データ転送
- 27.
- 28.
ADK, MicroBridge,
USB Host APIまとめ
• ADK( ver.2.3.4以上で対応機種のみ)
• マイコンから自動的にアプリを起動
• MicroBridge(全機種対応)
• ADB接続 デバッグモードにする必要あり
• USB Host API (ver.3.1以上で対応機種のみ)
• 全マイコン対応可能 ラッパライブラリを利
用すると使いやすい (FTDriver)
- 29.
- 30.
ADKでつなぐマイコン
Arduino
•プロトタイピング開発が容易(プログラミング言語
も簡単)
•最新のIDEに対応していない(Yaoadkで解決)
•USBホスト機能が必要
Arduino Uno+USB Arduino Harpy Nano
ホストシールド Mega ADK
- 31.
ADKでつなぐマイコン
PIC
•開発環境MPLAB, MPLAB X(C言語)
•組込み開発らしいプログラミング
•PIC24FマイコンはUSBホスト機能を内蔵し多機能でか
つ簡便に実装できる(しかも低価格)
•神戸支部、原子力部(NINJA)、横浜支部ロボ部など基板を作成
•ファームウェアの書き込みに(PICKit 3など)ライタ
が必要
PIC ADK mini Yokorobo
RT ADK mini
Board 01-PIC24F
- 32.
ADKでつなぐマイコン
mbed
•CPUはARM Cortex-M3など
•開発環境はクラウド上にあり、ブラウザでプログ
ラミングする。
•ユーザ同士で公開されたライブラリやアプリ
ケーションを流用できる
•組込み界のソーシャルコーディング!?
•WebSocketを簡単にコーディングできたりする
実はまだ触っていませ
ん。是非チャレンジした
いと思っています。
mbed NXP LPC1768
- 33.
Arduino, PIC, mbed
まとめ
•Arduino 携帯アプリ屋さん、業務アプリ屋さん向け?
•入手しやすい。情報が多くノウハウも多い。
•企業でのプロトタイピング開発も増加
•組込み関連のノウハウが無い時のコスト(=投資コ
スト・教育コスト・時間)圧縮にも向く
•PIC 組込み屋さん向け?
•Cによるコーディングにある程度慣れている、なお
かつマイコンをある程度触っている人は、様々なこ
とが比較的容易にできる
•mbed Web屋さん向け?
•個人利用としてはイチ押し(まだ触ってないけど)
•神戸支部でもNXPの中の人を呼ぶ予定もあり(未定)
- 34.
- 35.
- 36.
- 37.
開発手順③
シリアルモニタ
adb接続が
できない!
③ADK接続&実行
- 38.
開発手順④
シリアルモニタ
Wi-Fiによる
adb接続
Wi-Fiデバッグ
ADK接続&実行
- 39.
- 40.
Wi-Fiによる
adb接続手順(1)
《前提》 PCとAndroid端末は同一のWi-Fi LAN上
にあること。
(1)まずはじめにPCとAndroid端末をUSBケーブ
ルでつないでおいて、コマンドプロンプトより以
下の2つのコマンドを投入する Android端末の
>adb tcpip 5555 IPアドレス
restarting TCP mode port:5555
>adb connect 192.168.1.101:5555
connected to 192.168.1.101:5555
- 41.
Wi-Fiによる
adb接続手順(2)
(2)Android端末からUSBケーブルを外して、
adb logcatコマンドを打ってみる
> adb logcat
…
logcatが表示されます!
•ちなみにadb logcatコマンドを投入しなくても
EclipseのLogcatビューでlogcat出力が始まりま
す。
•DDMSも使え、ASM(Android Screen Monitor)も
USBケーブル無しで表示されます。非常に便
利!!ADKに関係なく使ってみて下さい。
- 42.
Wi-Fiデバッグの注意点
シリアルモニタ
ADK接続を行うと
必ずWi-Fiデバッグ
が切断される!
>adb connect 192.168.1.101:5555
でWi-Fiデバッグが再接続します
- 43.
- 44.
まとめ
• Android 3.1以上か4.0以上ならWi-Fiデバッグ
• ADKに関係なくおススメ
• Android 2.3.4ならwifi logcat
• Arduino側は、シリアルモニタを使いprintデバッ
グが可能
• スケッチ内にSerial.println()を入れる
- 45.
- 46.
- 47.
Google放置Play…
•GoogleのADKサンプルソース「Demokit」はArduino
IDE 0022対応のまま
•Arduinoの開発環境は Arduino 1.0となり正式リリー
スしたためライブラリが大きく変更
•そのままGoogleのADKサンプルを使うと動かない
https://dl-ssl.google.com/android/adk/adk_release_0512.zip
これもまたオワコン要因のひとつ(汗)
- 48.
Arduino 1.0対応
ADKライブラリ作りました
Android ADK勉強会(東京)メンバーと
協力して公開(Apache License v.2)
github初心者でもZIPを
ダウンロードするだけ!
https://github.com/ADKstudyGroupTokyo/Yaoadk
- 49.
前準備(2)
部品を通販で購入
秋月電子通商 【URL】 http://akizukidenshi.com/
- 50.
なぜこの電子部品?
• オライリーさんの書籍「Arduinoを
はじめよう」で扱われるパーツに
絞りました。
• 同書はデジタル入出力・アナログ
入出力などが初心者にわかりやす
く説明されてます。
• スイッチサイエンスでは必要なパ
ーツだけをそろえた「Arduinoをは
じめようキット」が販売されてい
ます。
- 51.
大まかな手順
1. ブレッドボード上にパーツを配置する
2. Arduino1.0でスケッチを作成し、Arduino Uno +
USBホストシールドにアップロード
3. Arduino Uno + USBホストシールドにAndroidを接続
し外部インテントが起動するかダイアログを確認
4. Androidプロジェクトを作成,Androidにアップロード
5. Arduino Uno + USBホストシールドとAndroidを接続
し、動作確認
- 52.
1.ブレッドボード上に
部品を配置 ① ②
【ブレッドボード上の接続】
①黄色のジャンパーワイヤをa2と(+)へ A0へ ④ ③
②光センサ( CdS セル)をe2とe4 へ
③抵抗10kΩをc4とc8へ ⑤ ⑥
④オレンジのジャンパーワイヤをa8と(-)へ
⑤黄色のジャンパーワイヤをa9と(+)へ
⑥タクトスイッチをe9, e11, f9, f11 へ D4へ ⑧ ⑦
⑦抵抗10kΩをc11とc15へ
⑧オレンジのジャンパーワイヤをa15と(-)へ
⑩
⑨オレンジのジャンパーワイヤをa16と(-)へ
⑩青色LEDの短い足(カソード)をe16へ ⑨ ⑪
⑪青色LEDの長い足(アノード)をe18へ ⑫
⑫抵抗1kΩをc18とc22へ D3へ
⑬オレンジのジャンパーワイヤをa23と(-)へ ⑭
⑭赤色LEDの短い足(カソード)をe23へ
⑮赤色LEDの長い足(アノード)をe25へ ⑬ ⑮
⑯抵抗1kΩをc25とc29へ
D2へ ⑯
- 53.
Arudinoと配線
① 緑色のジャンパーコードをa4と
USBホストシールドのA0番へ
② 緑色のジャンパーコードをa11
とUSBホストシールドの4番へ
③ 黄色いジャンパーコードをa22
とUSBホストシールドの3番へ
④ 黄色いジャンパーコードをa29
とUSBホストシールドの2番へ
⑤ 黒いジャンパーコードを(-)
とUSBホストシールドのGND
ピンへ
⑥ 赤いジャンパーコードを(+)
とUSBホストシールドの+5Vピ
ンへ
ブレッドボードとジャンパーワイヤーの配線はやり直しが
できるので、プロトタイピングには最適!
でも、そのまま置いておくと抜けてしまったり、たまに使
うときに配線をし直したり…。面倒でもある。
- 54.
ハンダ付けしてもヨシ
ユニバーサル基板(ブレッド
ボード配線パターンタイプ)
(秋月電子:P-04303) 80円
ブレッドボード用ワイヤ /
SHW-S0.65mm-7
(共立エレショップ: A1T141)
605円
あと、アルトイズの
ミント缶 (楽天で
400円ほど)があれば
- 55.
どこでもフィジカル・
コンピューティング
原稿書いてる最中には常に持ち歩いていました
これで
あなたも
Maker気分
ADKの動作リファレンスにひとつ作っておくと便利です
- 56.
2.スケッチを作成し
Arduinoにアップロード
https://github.com/yoshidaken1/GettingStartedADK/blob/ma
ster/firm_Arduino0100/AdkDaio/AdkDaio.ino
- 57.
- 58.
- 59.
- 60.
- 61.
- 62.
Androidソース
res/xml/accessory_filter.xml
3つの文字列が一致していれ
ば、外部インテントを受け取り
アプリが起動する。
- 63.
Androidプロジェクトは
Google APIs 2.3.3
ターゲット名は「Google APIs」
プラットフォームは「2.3.3」APIレベル10
- 64.
- 65.
- 66.
- 67.
出力ストリーム
(Android→Arduino)
イベントリスナー
からプライベート
なメソッド
sendCommand()が
呼び出されると…
FileOutputStream
クラスのwriteメ
ソッドでArduinoに
データを出力する
- 68.
- 69.
入力ストリーム
(Android←Arduino)
スレッドを用い、
run()メソッド内で
FileIntputStream
クラスのreadメソ
ッドでArduinoか
らのデータを入力
受信したデータは
Messageクラスの
インスタンスとし
てハンドラで表示
処理
- 70.
- 71.
- 72.
- 73.
- 74.
基本的な入出力
汎用入出力(GPIO) Arduinoの関数 RT-ADK&RT-SDK その他代表的なパー
のパーツ ツ
デジタル出力 リレー LED(単色)
digitalWrite()
デジタルピンのOUT
アナログ出力 RGB LED、サー DCモータ
デジタルピンのPWM出力 analogWrite() ボモータ
デジタル入力 タクトスイッチ 磁気センサ、モーシ
デジタルピンのIN digitalRead() ョンセンサ
アナログ入力 温度センサ、照度 加速度センサ、距離
アナログ入力ピン analogRead() センサ、タッチセ センサ
ンサ
4つの基本パターンができると色んな
電子部品を制御できるようになります。
- 75.
- 76.
- 77.
- 78.
- 79.
- 80.
- 81.
- 82.
- 83.
- 84.
- 85.
- 86.
- 87.
Socket通信は
バイトストリーム
• ネットワークバイトオーダー
• 機種ごとのエンディアンの違いを吸収す
るため1バイトづつ配列に並べてストリ
ームとする
• Arduinoはリトルエンディアン
• Android端末はビッグエンディアン
Wokashi:[arduino][android]ADKでfloat型のデータを扱う
- 88.
ByteBufferクラス
• byte[] バイト配列よりもByteBufferクラス
の方が効率よくストリームを利用できる、
らしい。
• StringとStringBuffer的な存在?
[arduino][android][adk]構造体を送る
ADK使ってAndroid端末側に構造体で
データを送りつける。
- 89.
Java(Android)と
Arduinoのデータ型
データ型 Java Arduino
byte 1byte 1byte
int 4byte 2byte
long 8byte 4byte
float 4byte 4byte
double 8byte 4byte
ArduinoはAtmel社のAVRマイコンの
データ型の”sizeof”を アーキテクチャに依存する
意識する場面がある
- 90.
という訳で何か出来たら
一緒に展示しましょう!!
2012年3月OSC愛媛とABC 2012
2012年5月オープンセミナー2012岡山とOSC名古屋
ハングアウトでつないで講演・展示しました。
北海道と神戸で展示会場をハングアウトでつないだり
都合が合えば是非お願いします(^-^)/
- 91.