Androidロボットサミットin京都

1,987 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,987
On SlideShare
0
From Embeds
0
Number of Embeds
188
Actions
Shares
0
Downloads
10
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Androidロボットサミットin京都

    1. 1. Androidロボットサミットin 京都 日本Androidの会 神戸支部 吉田研一 1
    2. 2. アジェンダ自己紹介と近況ADKまわりの最近の動き各種マイコン/FPGAとAndroidの接続についてAndroid Connectivity上位レイヤAndyLibについて 2
    3. 3. 自己紹介よしだけんいち(45歳) @dietposter JAG神戸&GDG神戸メンバー奈良在住だけど(京都は近鉄特急で来ました)今月、兵庫に引っ越します(神戸じゃないけど)ECCコンピュータ専門学校専任教員(大阪だけど) 3
    4. 4. 神戸支部ML 日本Androidの会 神戸支部ML 参加資格は「Android」への興味だけ! 参加資格は「Android」への興味だけ! ML登録で、どこに住んでも神戸支部! ML登録で、どこに住んでも神戸支部! 支部長 @takagig 支部長 @takagig 324名(2012年8月4日現在) 295名(2012年1月14日現在)http://p.tl/zyeR ピードットティエル ゼットワイイーアール 4
    5. 5. 近況 2012年5月共著で本が出ました。 テキスト 5
    6. 6. 近況 2012年6月2日(土) 大阪ー北海道ハングアウト勉強会 6
    7. 7. 近況 2012年6月2日(土) 大阪ー北海道ハングアウト勉強会 6
    8. 8. 旭川 日本橋 札幌 7
    9. 9. イチからはじめるADK 発表資料slideshare http://slidesha.re/NR3qSb 発表内容 Youtubehttp://www.youtube.com/watch?v=9OOQkn2_flE 8
    10. 10. 日本橋でんもく会を開催http://www.kumikomi.net/archives/2012/02/co03and2.php 9
    11. 11. 来週やりますhttp://atnd.org/event/denmokukai6 10
    12. 12. 2012年6月2日(土)って 関東でMakerカンファ レンス(3,000円)が 行われていました。 Make: ○○ Meeting (無料)は8/25,26の Ogakiで最後らしく 以後Make Faireになる 11
    13. 13. 注目の分科会がありましたGoogleドキュメントでディスカッションの内容がまとめられています http://bit.ly/NeVF3f 12
    14. 14. • オープンソースハードウェア(あるいはそれを継承するもの)によって世界がどう なったらいいと考えるのか? ◦ オープンソースソフトウェアはものすごい効果があった。それ なしの世界が考えられないほど大きな変化が起きたし、ほとん ど初心者であってもいきなり世界の一線級の技術を手に入れ、 活用し、そこから学ぶことができるようになった。 ◦ ソフトウェアと同じことがハードウェアで起きるとしたら、ど んなことがあればいいのか?ハードウェアには製造が必要であるため、 回路図/パターン図とそのデータだけでは不十分なのでは? IAMASの小林 茂さんて… 13
    15. 15. Gainerの作者ですが Prototyping Labの著者ですADK本はこの本を参考に執筆しました。今後Androidとマイコン・FPGA接続の実践レシピ本をこの本のスタイルで書きたいなぁと思っています 14
    16. 16. Gainerの作者ですが Prototyping Labの著者ですADK本はこの本を参考に執筆しました。今後Androidとマイコン・FPGA接続の実践レシピ本をこの本のスタイルで書きたいなぁと思っています ロボットサミットの参加 メンバーで書きたい 14
    17. 17. 近況 2012年6月16日(土)日本橋女子ハンダ付け会にMOMの宣伝で来られてましたよ スゴい人だ! http://atnd.org/events/29165 【ITカレッジ】「日本橋 女子ハンダ付け会」 に女子学生2名が参加しました! 15
    18. 18. 近況 2012年6月16日(土)日本橋女子ハンダ付け会にスタッフ参加 ADKでデジタル・アナ ログ入出力を行う基板 をハンダ付け❤ 京都GTUG(現在は GDG京都)ブースにて 16 展示します。
    19. 19. アジェンダ自己紹介と近況ADKまわりの最近の動き各種マイコン/FPGAとAndroidの接続についてAndroid Connectivity上位レイヤAndyLibについて 17
    20. 20. Google IOでADK 2012発表 未発売のArduino Due 置き時計 Atmel社のARM Cortex-M3コアで の形状 クロックは 84MHz(@egg談) 従来のArduinoは 16MHzhttp://arduino.cc/blog/2012/06/28/android-adk2012-is-here/ 18
    21. 21. Google IOでADK 2012発表 未発売のArduino Due 置き時計 Atmel社のARM Cortex-M3コアで の形状 クロックは 84MHz(@egg談) 従来のArduinoは 16MHzhttp://arduino.cc/blog/2012/06/28/android-adk2012-is-here/ 18
    22. 22. AOA 2.0プロトコル USB接続 従来の ADK Bluetooth接続 HID USB Audio Dock 詳しくはこのスライドhttp://www.slideshare.net/magoroku15/adk2012 19
    23. 23. Harpy Nanoその後 20
    24. 24. いったん生産中止Harpy nanoスターターキットの販売再開予定についてhttp://bit.ly/QMWu7mITジャーナリスト星暁雄の"情報論"ノート http://bit.ly/Nf5X3u 21
    25. 25. FourBeatその後 22
    26. 26. クラウドファウンディング成功私も支援しました。届くのが楽しみです。 23
    27. 27. Androidとの接続に関する本 6/25 雑誌「Smartphone World Vol.4」 RT-ADK miniとRT-CAMHEADの記事など 7/25 雑誌「エレキジャック 2012年 08月号」 Android×Wi-FiでI/O! 8/01「Androidによるマイコン・ボード制御入門」大川 善邦 mbedとイーサネットでつなぐ 8/10 雑誌「トランジスタ技術2012年9月号」 特集 スマホ×電子回路! つないでI/O! 24
    28. 28. ADK関連の書籍5/17 「PICで楽しむAndroidアクセサリの自作」後閑 哲也5/21「Android ADK プログラミング&電子工作バイブル」岩田、杉浦、高木、原田、吉田7/25「Android ADKで学ぶハードウェア制御」 渡邊 昌之8/28「組み込みAndroid ADKプログラミング」 Stone、日高 正博、鈴木 圭介、伊勢 正尚 !? 25
    29. 29. こ、これは、期待大本書は、ADKを利用した組み込みAndroidプログラミングの手法について解説した書籍です。ADK互換機の回路の仕組みからはじまり、実際に互換機を制御する組み込みプログラミングまで、サンプルを元に丁寧に解説。これ1冊で、Androidを利用した組み込みプログラミングがひと通り理解できます。 26
    30. 30. アジェンダ自己紹介と近況ADKまわりの最近の動き各種マイコン/FPGAとAndroidの接続についてAndroid Connectivity上位レイヤAndyLibについて 27
    31. 31. Androidとの接続マイコン・FPGA Android などの外部機器 無線 3G WiFi Bluetooth NFC(赤外線※一部メーカーのみAndroidでは一般的ではない) 有線 USB 特定用途(AudioやHDMIなど) 28
    32. 32. Androidとの接続(1)音声(DTMF/ソフトモデム)Bluetooh/Wi-FiUSB接続 USBデバイス:ADK / MicroBridge USBホスト:USB Host API 29
    33. 33. Androidとの接続(2)Android上のLL(軽量スクリプト言語)とマイコン上位レイヤライブラリAndyLib 30
    34. 34. 音声 (DTMF) 今岡さん(OSC愛媛)のドロン君 DTMF(プッシュトーン)をDTMFデコーダ(IC) に識別させる Google音声認識で遠隔操作http://www.ospn.jp/press/20110516no10-useit-oss.html 31
    35. 35. BluetoothWebサーバを介した命令送受信 吉田、石井さんのAndyタンクシリーズ cmd01.txt Web サーバ F255F255 Android搭載型 http://foo.bar/cmd.php Andyタンク1号 HttpBtnQuery HttpBluetoothControl 接続形態(3) 32
    36. 36. Androidロボットの分類 Bluetoothが使われる部位→ (1)Android - ロボットカー 遠隔操作 (2)Android 搭載型ロボットカー (3)Android-Android搭載ロボット カー 遠隔操作 (4)Android自身がロボットカー京都支部勉強会資料 https://docs.google.com/open? 33id=0B60iGGxfzllnY2NlODhmYzYtNjI2Yy00NzdhLWI5ODMtY2Q3OGM5MmQxNTBh
    37. 37. ADKドロン君作ってみた 世界最小のUSBホスト付き (ADK可能な) Arduino上から 裏側 34
    38. 38. Android のUSBのAPI(Java) USB Accesory API(電源をもらう) AndroidがUSB(Type-Bコネクタ) これがいわゆるADK USB Host API(電源供給側) AndroidがUSBホスト(Type-Aコネクタ) 3512年1月16日月曜日
    39. 39. USBのアクセサリモードとホストモード USBホスト USBデバイスアクセサリ 電力 Androidが従 マイコンや モード FPGAなど A B Android データ転送 USBデバイス USBホスト Androidが主 ホスト マイコンや 電力 モード FPGAなど B データ転送 A Android デバイスドライバ部分 を書く必要が有る 36
    40. 40. ADKとは? Android Open Accessory Development Kit 2011年5月 Google I/O発表 一周年!!http://developer.android.com/intl/ja/guide/topics/usb/adk.html 37
    41. 41. SD誌2012年1月号 ADKとは(@takagigより)ADKと記述した場合は、「Open Accessory DevelopmentKit」のことを指します。ADKのAは、AndroidではなくAccessoryの頭文字です。Android2.3.4とAndroid3.1以降に追加された周辺機器用のAPIを利用するためのソフトウェアやドキュメント、Accessory Demo Kitと呼ばれるハードウェアを合わせてADKと表現します。 マイコン・FPGAなど 38
    42. 42. ADK対応ボード 国産ADK対応ボード Arduino互換http://developer.android.com/intl/ja/guide/topics/usb/adk.html 39
    43. 43. ADKの普及の妨げ対応ボードがコスト高/入手性が悪いAdnroidのバージョンに制限 スマートフォン2.3.4以上 タブレット3.1以上 はやくみんな4.0(ICS)になるといいのに… 40
    44. 44. Niels’s MicroBridgeADB(Android Debug Bridge)の組み込み向け実装(C++) Arduino + USBホスト シールド (5,160円)で adb通信http://code.google.com/p/microbridge/ 41
    45. 45. MicroBridge portingADBは、エミュレータやAndroid実機とのバイナリ転送・デバッグ出力などに用いられる仕組み。adbコマンドで各種操作が可能Android側の/sbin/adbd とソケット通信できればAndroidのバージョンは問わないadbを備えていないAndroidは「無い」 42
    46. 46. @yishii’s PIC24F portin SPDIP, SOIC, SSOP(1) 石井さんによるPIC24Fマイコンへの MicroBridgeポーティング(C++→C言語) MCLR 1 28 VDD3/AN0/C3INC/VREF+/ASDA1(2)/RP5/PMD7/CTED1/VBUSVLD/VCMPST1/CN2/RA0 2 27 VSS /AN1/C3IND/VREF-/ASCL1(2)/RP6/PMD6/CTED2/SESSVLD/VCMPST2/CN3/RA1 3 26 AN9/C3INA/VBUSCH PIC24FJXXGB002 PGED1/AN2/C2INB/DPH/RP0/PMD0/CN4/RB0 4 25 AN10/C3INB/CVREF/V PGEC1/AN3/C2INA/DMH/RP1/PMD1/CN5/RB1 5 24 AN11/C1INC/RP13/PM AN4/C1INB/DPLN/SDA2/RP2/PMD2/CN6/RB2 6 23 VUSB AN5/C1INA/DMLN/RTCC/SCL2/RP3/PMWR/CN7/RB3 7 22 PGEC2/D-/VMIO/RP1 VSS 8 21 PGED2/D+/VPIO/RP1 OSCI/CLKI/C1IND/PMCS1/CN30/RA2 9 20 VCAP/VDDCORE OSCO/CLKO/PMA0/CN29/RA3 10 19 DISVREG SOSCI/C2IND/RP4/PMBE/CN1/RB4 11 18 TDO/SDA1/RP9/PMD SOSCO/SCLKI/T1CK/C2INC/PMA1/CN0/RA4 12 17 TCK/USBOEN/SCL1/ VDD 13 16 TDI/RP7/PMD5/INT0/ TMS/USBID/CN27/RB5 14 15 VBUS http://code.google.com/p/microbridge-pic/ 43
    47. 47. 6.-1.基板写真(A面)@yishii’s PIC24F Board石井さんによるPIC ADK mini board基板も設計・発注2,000円で製作可日本橋でんもく会で領布各種ポーティングに拍車 44
    48. 48. @iseroid’s DE0 port伊勢さん@iseroidによるALTERADE0/DE0-nano FPGAへのMicroBridgeポーティング(C, C++)ADKもポーティングAccessoryDemo Kitの対応はマイコンのみ。FPGAでは初!?快挙!) https://github.com/iseroid/microbridge_nios2 45
    49. 49. @basaro_k’s Xilinx FPGA port小山さん@basaro_kによるXilinx FPGAボードへのMicroBridgeポーティングADKもポーティング済との事 http://fpga.co.jp/android/index.html 46
    50. 50. @basaro_k’s Xilinx FPGA Board小山さん@basaro_kによるXilinx FPGAボード 47
    51. 51. USB Host API(Android)AndroidがUSBホストになり、接続したマイコンとやりとりする給電がAndroid側になり配線の取り回しがラクUSB-Aコネクタを持つAndroidスマホ/タブレットは少ない(変換ケーブルが必要)マイコン側のシリアル・ドライバ部分を書く必要がある。 FTDIシリアルチップ向け 48 のオープンソース有り
    52. 52. @ksksue’s FTDriver鈴木さん@ksksue作 https://github.com/ksksue/FTDriver 49
    53. 53. USB Host API wrapper Library ArduinoライクなAndroid3.1用 FTDIドライバAPI公開 USBデバイス USBホスト 電力 マイコンや Androidが主 FPGAなど B データ転送 A AndroidFT232RLなど USB Host API UARTがあれ ラッパFTDIチップが主 ば何でも可! http://d.hatena.ne.jp/ksksue/20111106 50
    54. 54. LL on AndroidAndroid上で動作するLightweight Language(軽量スクリプト言語) SL4A 言語:Ruby, Python, Perl, PHP, Lua Luarida 言語:Lua 51
    55. 55. SL4A Scripting Layer for Android オープンソース apkをダウンロード すれば即、スクリ プト環境となるhttp://code.google.com/p/android-scripting/ 52
    56. 56. Luarida (たろサさん作) Luarida - Google Play http:/ 53 /bit.ly/GIxxGH
    57. 57. 先ほどのMicroBridge Portの話 ADBは、エミュレータやAndroid実機とのバイナリ転送・デバッグ出 力などに用いられる仕組み。adbコマンドで各種操作が可能 Android側の/sbin/adbd とソケット通信できれ ばAndroidのバージョンは問わない adbを備えていないAndroidは「無い」 LLでソケット・ライブラリを呼び 出せれば、マイコンを操作可能! 54
    58. 58. @yishii’s ioBridgeAndroid + 直結マイコンボードの構成PCレスで、外部ハード制御の作り込みができるPFioBridge Server ioBridge Client 制御対象機器Luarida用とSL4A JRuby用にioBridgeというモジュールを作りました 55
    59. 59. LL on Android とマイコン 石井さん:オープンソース(SL4A ruby)整備中 SL4Aでマイコンとadbソケット通信なら Python, PHP, Perl などスクリプトでマイコン 接続が可能に! たろサさん:Luaridaもりもりバージョンアッ プ中!以下のサイトで情報を公開していますコンピュータを楽しもう! http://d.hatena.ne.jp/tarosay/ 56
    60. 60. 再びADKとは キホン、ArduinoとAndroidの接続http://developer.android.com/intl/ja/guide/topics/usb/ adk.html#installing-firmware 57
    61. 61. Arduino 1.0 以降http://arduino.cc/en/Main/Software 58
    62. 62. Arduino 1.0はオープンソース ビルドすると日本語メ ニューになりますhttps://github.com/arduino/Arduino 59
    63. 63. Arduino 1.0対応ADKライブラリ作りました Android ADK勉強会(東京)メンバーと協力 して公開(Apache License v.2) テキスト github初心者でもZIPを ダウンロードするだけhttps://github.com/ADKstudyGroupTokyo/Yaoadk 60
    64. 64. ZIPを解凍してライブラリのフォルダすべてをLibrariesフォルダに配置するだけ是非、使ってください!! Yaoadkライブラリ集の使い方(Windows7) ·ADKstudyGroupTokyo/Yaoadk Wiki http://bit.ly/GJIFm5 61
    65. 65. YaoadkメンテナさまざまなマイコンボードでADKをポーティング STM32F4-Discoveryでの事例 CQ LM3S3748ボードの事例 極めつけはGR-SAKURAとADK実装例 62
    66. 66. 好みのマイコンにADKを実装してみよう∼ STM32F4-Discoveryでの事例 ∼.pdf - Google ドキュメント http://bit.ly/Nf9GOy 63
    67. 67. CQ_LM3S3748ボードにADKを実装してみた.pdf - Google ドキュメント http://bit.ly/QNl20h 64
    68. 68. 「がじぇっとるねさす」プロジェクト GR-SAKURAとのADK実装例 GR-SAKURA で Hello ADKhttp://bit.ly/QNmhwc 65
    69. 69. アジェンダ自己紹介と近況ADKまわりの最近の動き各種マイコン/FPGAとAndroidの接続についてAndroid Connectivity上位レイヤAndyLibについて 66
    70. 70. ADK/MB開発手順の手間1. USBホスト(組込みマイコン)側のファームウェアを作成する。2. Android側でUSB Accessory API(ver.2.3.4以降)を理解しJavaでアプリを作成する3. USBホスト側とAndroidのプロトコルを考えて上記プログラムに盛込む 67
    71. 71. 3つの異なるスキルが必要ADKの例 USBホスト USBデバイス(アクセサリーモード) マイコン・ Android FPGA ファームウェア データ転送 Javaアプリ 独自の プロトコル USBAccessory ADKライブラリ API ADK 68
    72. 72. 求められるスキル組み込みの知識Javaのプログラミング能力デバイス間のプロトコルの決定能力 69
    73. 73. 上位レイヤAndyLibメモリマッププロトコルによるプロトコル設定 USBホスト USBデバイス(アクセサリーモード) マイコン・ Android メモリマップ FPGA プロトコルファームウェア データ転送 Javaアプリ AndyLib USBAccessoryADKライブラリ API コーディング効率 ADK が向上する! 70
    74. 74. AndyLib 夜子まま@yokmamaによるプロジェクト・ ライブラリhttp://code.google.com/p/android-jp-kobe/downloads/list 71
    75. 75. Arduino側AndyLib 石井さん@yishiiによるMemoryMapLibhttps://github.com/yishii/Arduino_MemoryMapLib使い方:http://projectc3.seesaa.net/article/243033403.html 72
    76. 76. 応用例【作例】Twitterに反応するドロイドロボ http://bit.ly/LACX6C 住友@cattaka_netさん 本業:プログラマ AndyLibでAndroid側 プログラムを作成 日本Androidの会 京都支部展示ブース 73
    77. 77. Androidとの接続手法 すべてのConnectivityをAndyLibで!マイコン・FPGA Android などの外部機器 現在はADK 無線 3G とBluetoothで WiFi Bluetooth 実装 NFC(赤外線※一部メーカーのみAndroidでは一般的ではない) 現在は 有線 USB Arduinoのみ 特定用途(AudioやHDMIなど) 74 実装
    78. 78. 今後接続の種類&マイコン・FPGAを増やす 夜子ままさんはじめAndroid Javaコーダ マイコン側ライブラリ組み込みコーダAndyLibの教育の定期的開催「イチからはじめる」シリーズを続けて、各種技術の共有をはかる 75
    79. 79. でんもく会でUstream6月:イチからはじめるADK(吉田)8月:イチからはじめるMicroBridge(吉田)10月:イチからはじめるUSB Hodt API(鈴木さん) 以降、PIC24F ,Xillinx ,ALTERA DE0 etc.. ご協力お願いします!!>>でんもく会メンバー 76
    80. 80. 神戸支部MLご清聴ありがとうございました! 参加資格は「Android」への興味だけ! ML登録で、どこに住んでも神戸支部! 日本Androidの会 支部長 @takagig 神戸支部ML 参加資格は「Android」への興味だけ! 295名(2012年1月14日現在) ML登録で、どこに住んでも神戸支部!http://p.tl/zyeR ピードットティエル ゼットワイイーアール 77

    ×