狠狠撸
Submit Search
12.06.16 日本橋勉強会資料 公開用
?
1 like
?
1,294 views
Miwa Iwatsuki
Follow
日本橋女子ハンダ付け会で使用した資料です。 2012.06.19 初版公開 2012.06.22 改訂第2版
Read less
Read more
1 of 38
Download now
Download to read offline
More Related Content
12.06.16 日本橋勉強会資料 公開用
1.
日本橋女子はんだ付け勉強会 OSS コンソーシアム 組込み部会女子部
● いわつきみわ
2.
本日のアジェンダ ●
ご挨拶 (5min) ● 今日の勉強会の概要の説明 (10min) ● はんだ付け実習 (60min) ● おやつタイム (30min) ● はんだ付け実習&動作確認 (30min) ● スケッチなどの説明 (45min)
3.
諸注意 ●
技術補助スタッフが2名につき1名つきます ● 実習中、お手洗いは自由に行って大丈夫です ● 難しいと感じたり、よくわからないと思った らその場でスタッフか私に聞いてみてくださ い ● はんだごては 400 度くらいになりますので 扱いには充分に注意してください
4.
OSS コンソーシアムとは ●
オープンソースを活用したビジネスを活性化 させる事を目的に、 Linux コンソーシアムを 前身として2009年に発足 ● 組込み部会 facebook ページ http://www.facebook.com/ossc.emb ● 日本橋女子ハンダ付け会のきっかけ http://www.slideshare.net/takeoka1/kof-oss
5.
OSSC 組込み部会女子部半田ごて勉強会
2010/冬 第1回 オルゴールを作る 2011/08/07 第2回 秋月電子のATmega168/328 マイコンボードキット (http://akizukidenshi.com/catalog/g/gK-04590/) 2011/09/10 第3回 ラブテスターを作る 2011/11/28 第4回 アーデュイーノ互換マイコン?ボードを作る (CQ出版 小坂貴美男 著)
6.
自己紹介 ?所属 OSS コンソーシアム組込み部会 ?
twitter @miw0129 ?職業 会社員のようなもの web 系のアプリケーション開発と その周辺の事をやっています。 ?今は Android と Arduino に興味があります。
7.
本日のテーマ ADK+Android で Arduino
を操作する!
8.
本日の資料 ① 吉田さんのはんだ付けの資料 https://docs.google.com/open? id=0B3x_amEfMljRTnp3U0h1R1NLd3 M ②
使用したソースコード https://github.com/miw0129/joshi_hand a_20120616 ③ たけおかさんの Arduino の資料 http://www.osscons.jp/modules/attachfil e/index.php? mode=download&attach_id=106
9.
何が出来るの? ●
Android 端末に接続していないとき ①CdS セルの値によって LED の明るさが変化 する ● Android 端末に接続しているとき 起動するアプリによって2つの挙動 ②AdkDaio(Android アプリケーション ) 画面から LED の操作と CdS セルの値を確認 ③ 勉強会用バルス (Android アプリケーショ ン) ● 「バルス!」と呟いて LED を操作
10.
使用する Android アプリケーション
その1 ※ 今回の勉強会の為に、元々公開されていたソースコード に変更を加え、 GooglePlay に公開しています。 ( 著作者の 許可を取ってあります ) ● AdkDaio https://play.google.com/store/apps/details? id=jp.co.socym.dorobook.AdkDaioProj&feature=search_res ult#? t=W251bGwsMSwyLDEsImpwLmNvLnNvY3ltLmRvcm9i b29rLkFka0RhaW9Qcm9qIl0 ● 参考元になった記事 OSPN Press 「「オープンソース」を使ってみよう ( 第 18 回 ADK 編 ) 日本 Android の会神戸支部」 http://www.ospn.jp/press/20120404no22-2-useit- oss.html
11.
使用する Android アプリケーション
その2 ● 勉強会用バルス https://play.google.com/store/apps/details? id=jp.miw_tan.balus_for_study&feature=search_result# ? t=W251bGwsMSwxLDEsImpwLm1pd190YW4uYmFs dXNfZm9yX3N0dWR5Il0 ● 参考元になった記事 YAM の雑記帳「 Android ADK を使ってバルスって 言ったら青色 LED が光るようにしてみた。」 http://y-anz- m.blogspot.jp/2011/12/androidadkled.html
12.
ADK とは? ●
Android Open Accessory Development Kit の 略で、 2011 年5月の Google I/O で発表され た Android のハードウェア拡張仕様 ● 詳しくは吉田さんのスライドをみてね。 http://www.slideshare.net/ssuser3261c5/a dk
13.
工作に使うパーツの準備 ●
ミント缶で Maker 気分 https://docs.google.com/open? id=0B3x_amEfMljRTnp3U0h1R1NLd3M ● リード線を用意しよう https://docs.google.com/presentation/d/1p8 Z3qNr47vZOGnNsVX57J1DxInnYkJbrfBJEa k658dA/edit ● 部品チェック&ハンダ付け手順 ( カラー版ネッ ト閲覧用 ).pdf https://docs.google.com/open? id=0B3x_amEfMljRTnp3U0h1R1NLd3M
14.
工作に使うパーツの説明 ●
LED – 赤 x 1個 – 青 x 1個 ● 抵抗 – 1kΩ x 2 個 – 10kΩ x 2 個 ● タクトスイッチ x 1 個 ● CdS セル 1 個
15.
LED( 発光ダイオード )
とは ● ダイオード : 電流を一定 方向にしか流さない ● 足が長いほうが陽極 ( ア ノード ) 、短いほうが陰極 ( カソード ) ● 足を切っても見分けは… ! ● 今回の工作でも部品を挿 す向きに要注意 ● よーく見たらわかるかも
16.
抵抗カラーコード表
0 0 1 1 1 10 ±1 1 0 10^2 ±5 2 2 10^2 ±2 →(10 * 100)Ω ±5 3 3 10^3 →1kΩ ( 許容誤差 ±5%) 4 4 10^4 5 5 10^5 6 6 10^6 7 7 10^7 8 8 10^8 白 9 9 10^9 金 0.1 ±5 銀 0.01 ±10 無色 ±20
17.
CdS セルとは ●
CdS( 硫化カドミウム ) を用い たフォトレジスタ ● フォトレジスタ : 光が当たる と電気抵抗が小さくなる部品 ( 光が強いほど小さくなる ) ● 極性 ( 部品を挿す向きの指定 ) はありません ● 硫化カドミウムは毒性がある ため電子機器の特定有害物質 の規制対象になっている
18.
タクトスイッチとは ●
押すとカチカチなるスイッチ ● 押している間電気が流れます ● 極性はありませんが、スイッ チが押されたときに足の間隔 が短いもの同士が通電するの で、縦横の向きには注意が必 要 ● 結構いろんな色があってかわ いいです。大量に買ってもそ んなに使い道ないよ、といわ れたりします w
19.
Arduino とは AVRマイコン、入出力ポート、開発言語、統合 開発環境などが揃ったハードウェア開発環境 ハードウェア仕様が公開されているので市販の 部品を買ってきてマイコンボードを自作する事 も出来ます。 最新の基本構成ArduinoはUno。他にもminiや MEGA、服飾に使えるLilyPad等があります。 統合開発環境でC言語ライクなプログラミング言 語を用いた開発を行います。 「シールド」と呼ばれる拡張ボードを挿すこと で機能を追加することが出来ます。
20.
Arduino のピンとポート
14 本の デジタル IO ピン (pin0 ? pin13) うち、 - のついている (pin 3, 5, 6, 9, 10, 11) はアナログ OUT にも 利用可能 6 本の アナログ IN ピン →pinMode() 関数で設定 (A0 ? A5)
21.
Arduino でのプログラム実行フロー ボードへ電源投入
? setup() Arduino ボードの電源を入れた ときやリセットしたときに、一 setup 関数 度だけ実行される。変数やピン モードの初期化、ライブラリの 準備などに使用。省略不可。 loop 関数 ? loop() Arduino に給電されている限り 何度でも呼び出される。外部セ その他の自動処理 ンサー値の読み取りやピン出力 制御などに使用。省略不可。
22.
Arduino IDE ●
統合開発環境 ● スケッチの検証や実機 転送、シリアルモニタ 出力などの開発に必要 な機能が一通り揃えら れたオープンソースソ フトウェア
23.
USB ホストシールド ●
ADK の仕組みを使って Android との通信を行うた めに必要 (Arduino だけを 使ってハードを作る際には 必要ありません ) ● Arduino Uno とあまり変わ らないぐらいの値段します (;;)
24.
ソースコード解説
25.
ADK 設定 ●
この設定で、 Android 側で対応するアプリを指定します ● 同じアクセサリに対応する複数のアプリが Android にイ ンストールされている場合は、どのアプリで開くか選択 画面が表示されます ● “ ジャンプ先 URL” には、 Android 側アプリケーション の入手先 URL(Google Play の URL 等 ) を記載することが 出来ます
26.
setup 関数の内容
27.
loop 関数の処理 (ADK
非接続時 )
28.
Android からのコマンド処理 (loop) ●
処理できるコマ ンドは 3 種類 ● 0x0: 赤 LED 点灯 / 消灯 ● 0x1: 青 LED PWM 制御 ● 0xff: バルス !
29.
( 参考 )
コマンド送信する Android 側ソース
30.
Android へのスイッチ /
センサー情報送信 (loop) ● ボタン状態を変 数で管理して変 化があれば送信 ● CdS セルの値を 定期的に送信
31.
スケッチに使われている主要な関数 ? pinMode(pin, mode) ピンの動作を入力か出力に設定します。 ?
digitalRead(pin) デジタル入力。指定したピンの値を読み取りま す。その結果は HIGH または LOW となります。 ? analogRead(pin) アナログ入力。指定したアナログピンから値を読 み取ります。 ? digitalWrite(pin, value) デジタル出力。 pin に HIGH(0) か LOW(1) を設定 する。 ? analogWrite(pin, value) アナログ出力。 pin に 1~255 までの数字を設定 する。
32.
困ったら Serial.println() ●
プログラムがうまく動 かない時の問題を切り 例: 分けるのに、 LED を点 void setup() { 灯させるなどの確認方 Serial.begin(115200); 法しか無いのでは不便 } ● PC との USB 接続経由 void loop() { ... で文字列を PC に送る If (error) { Serial.println("debug output”); のが Serial.println() } } ● 使う前に Serial.begin() =>PC 側では Arduino IDE の “ Serial Monitor” を使います
33.
おまけ ~ 音声認識の仕組み
~ Google サービス アプリ balus_modActivity.java Android 側 Google ライブラリ サーバ startActivityForResult() 音声送信 音声録音 onActivityResult() 結果データ Intent に入っているデータから getStringArrayListExtra() で、 結果データには候補が単数ないし複数 音声認識の結果 ( コレクション ) 返ってきます。日本語の場合、漢字の を取得。※今回のバルスアプリ 結果が返ってくることも。 では「バルス」の音声認識の結果、 例 ) 「にっぽんばし」と呟く。 カタカナの " バルス " が先頭に → 「日本橋」「にっぽんばし」「ニッ 入ってくるので配列の 0 番目が ポンバシ」などが返ってくる。 " バルス " であった時にバルス成功 とする if 文が入っています。
34.
おまけ ~ 困ったときは
~ 当日、動作確認中にアプリがうまく動作しな かった事があったと思いますが、そういう時 は?? ● リセットボタン+ Android 端末抜き差し をすると、確実にア プリが起動します。 リセットボタンの 場所はボードによっ て多少の違いがあり ますが大体同じよう な場所についていま す。 側面についている ものやタクトスイッ チになっているもの も??
35.
おまけ ~ADK 対応端末の調べ方
~ ● Android バージョン 2.3.4 でも ADK がつかえない端末が ある? $adb shell pm list features adb shell を使用して features を確認、 android.hardware.usb.accessory があると ADK に対応し ているようです。 ● feature って何? AndroidManifest の <uses-feature> に UsbAccessory を 指定することによって対応デバイスをフィルタリングす ることができると書いてあるので、メーカー側でサポー ト機能を明示するようなものだと思うのですが… ● 参考 URL : http://act- yoshiken.blogspot.jp/2012/01/adb- shellandroidadk.html http://y-anz-m.blogspot.jp/2011_05_01_archive.html
36.
おまけ ~ADK 対応端末の調べ方
~ ● 実際にコマンドを打ってみるとこんな画面に なります。確認端末: Xperia ray
37.
参考文献 ●
Y.A.M の雑記帳 http://y-anz- m.blogspot.jp/2011/12/androidadkled.html ● OSPN Presshttp://www.ospn.jp/press/20120404no22- 2-useit-oss.html ● Arduino 日本語リファレンス http://www.musashinodenpa.com/arduino/ref/ ● 「 Arduino を始めよう」 Massimo Banzi 著 / 船田巧 訳 ● 「 AndroidADK プログラミング&電子工作バイブ ル」岩田直樹 / 杉浦登 / 高木基成 / 原田明憲 / 吉田研 一 共著
38.
SpecialThanks
-主催&会場提供- 日本橋でんでんタウン電子工作教室 さま -協力- 日本Androidの会神戸支部 および、吉田研一さま 京都GTUG および、藏野文子さま Galileo7 東昌宏さま 世話人 兼高理恵さま OSSコンソーシアム 竹岡尚三さま -企画&技術協力- Android女子部 あんざいゆきさま @muo_jpさま
Download