OOSSSSコンソーシアム
   組込み部会女子部
 第55回はんだごて勉強会


OOSSSSコンソーシアム 組込み部会女子部
          いわつきみわ
本日のアジェンダ

l   ご挨拶((55mmiinn))
l   今日の勉強会の概要の説明((1100mmiinn))
l   はんだ付け実習((6600mmiinn))
l   おやつタイム((3300mmiinn))
l   はんだ付け実習&動作確認((3300mmiinn))
l   スケッチなどの説明((4455mmiinn))
諸注意

•・ 周�りにいるスタッフは技術補助スタッフです
•・ 実習中、お手洗いは自由に行って大丈夫です
•・ 難しいと感じたり、よくわからないと思った
   らその場でスタッフか私に聞いてみてくださ
   い
•・ はんだごては440000度くらいになりますので扱
   いには充分に注意してください((今回使用した
   はんだごては温度を自動調整するはんだごて
   でした))
OOSSSSコンソーシアムとは
l   オープンソースを活用したビジネスを活性化
     させる事を目的に、LLiinnuuxxコンソーシアムを前
     身として2009年に発足

l 組込み部会 ffaacceebbooookkページ
hhttttpp::////wwwwww..ffaacceebbooookk..ccoomm//oosssscc..eemmbb

l 日本橋女子ハンダ付け会のきっかけ
hhttttpp::////wwwwww..sslliiddeesshhaarree..nneett//ttaakkeeookkaa11//kkooff--oossss
OOSSSSCC組込み部会女子部半田ごて勉強会
                             22001100//冬
                       第11回 オルゴールを作る

                                    22001111//0088//0077
         第22回 秋月電子のATmega116688//332288
                              マイコンボードキット
  ((hhttttpp::////aakkiizzuukkiiddeennsshhii..ccoomm//ccaattaalloogg//gg//ggKK--0044559900//))

                          22001111//0099//1100
                     第33回 ラブテスターを作る

                 22001111//1111//2288
  第44回 アーデュイーノ互換マイコン・ボードを作る
          ((CCQQ出版 小坂貴美�男  著))

                          22001122/0066/1166
                        日本橋女子ハンダ付け会
        AAnnddrrooiidd  端末から  AArruuddiinnoo  をコントロール
自己紹介


・所属 OOSSSSコンソーシアム組込み部会
・ttwwiitttteerr @@mmiiww00112299
・職業 会社員のようなもの
 wweebb系のアプリケーション開発と
 その周�辺の事をやっています。
・今はAAnnddrrooiiddとAArrdduuiinnooに興味があります。
本日のテーマ
 AADDKK++AAnnddrrooiiddでAArrdduuiinnooを操作する!
今回作成する基板                               Android端末
                                        2.3.4以上




 Arduino+USB
ホストシールド
本日の資料
①はんだ付け資料((前回の勉強会で使用し
たもの。日本AAnnddrrooiiddの会神戸支部吉田さ
ん作成))
  hhttttppss::////ddooccss..ggooooggllee..ccoomm//ooppeenn??
iidd==00BB33xx__aammEEffMMlljjRRTTnnpp33UU00hh11RR11NNLLdd33
MM
②本日使用したソースコード
hhttttppss::////ggiitthhuubb..ccoomm//mmiiww00112299//
jjoosshhii__hhaannddaa__2200112200661166
③AArrdduuiinnooの資料((OOSSSSCCたけおかさん作成))
hhttttpp::////wwwwww..oossssccoonnss..jjpp//mmoodduulleess//
aattttaacchhffiillee//iinnddeexx..pphhpp??
mmooddee==ddoowwnnllooaadd&&aattttaacchh__iidd==110066
何が出来るの?
①AAnnddrrooiidd端末に接続していないとき
AArrdduuiinnoo単体で動作
・CCddSSセルの値によって青色LLEEDDの明るさが変化
  する
・タクトスイッチで赤色LLEEDDチカチカ

②AAnnddrrooiidd端末に接続しているとき
起動するAAnnddrrooiiddアプリによって2つの挙動
・AAddkkDDaaiioo
 画面からボタンでLLEEDDのOONN//OOFFFF、バーでLLEEDD
 の明るさの操作、タクトスイッチのOONN//OOFFFF状
 態、CCddSSセルの値を確認
・勉強会用バルス
「バルス!」と呟いてLLEEDDが赤青交互にチカチカ
使用するAAnnddrrooiiddアプリケーション
                 その1
            “AAddkkDDaaiioo”
※今回の勉強会の為に、元々公開されていたソースコードに変更
 を加え、GGoooogglleePPllaayyに公開しています。((著作者の許可を取って
 あります))
l  GGoooogglleePPllaayyからダウンロード
hhttttppss::////ppllaayy..ggooooggllee..ccoomm//ssttoorree//aappppss//ddeettaaiillss??
    iidd==jjpp..ccoo..ssooccyymm..ddoorroobbooookk..AAddkkDDaaiiooPPrroojj&&ffeeaattuurree==sseeaarrcchh__rreess
    uulltt##??
    tt==WW225511bbGGwwssMMSSwwyyLLDDEEssIImmppwwLLmmNNvvLLnnNNvvYY33llttLLmmRRvvccmm99ii
    bb2299rrLLkkFFkkaa00RRhhaaWW99QQccmm99qqIIll00

l  参考元になった記事
OOSSPPNN  PPrreessss「「オープンソース」を使ってみよう  ((第1188回  
    AADDKK編))  日本AAnnddrrooiiddの会神戸支部」
hhttttpp::////wwwwww..oossppnn..jjpp//pprreessss//2200112200440044nnoo2222--22--uusseeiitt--
    oossss..hhttmmll
使用するAAnnddrrooiiddアプリケーション
            その2
   “勉強会用バルス”
l  勉強会用バルス
hhttttppss::////ppllaayy..ggooooggllee..ccoomm//ssttoorree//aappppss//ddeettaaiillss??
    iidd==jjpp..mmiiww__ttaann..bbaalluuss__ffoorr__ssttuuddyy&&ffeeaattuurree==sseeaarrcchh__rreessuulltt##
    ??
    tt==WW225511bbGGwwssMMSSwwxxLLDDEEssIImmppwwLLmm11ppdd119900YYWW44uuYYmmFFss
    ddXXNNffZZmm99yyXX33NN00ddWWRR55IIll00

l  参考元になった記事
YYAAMMの雑記帳「AAnnddrrooiidd AADDKKを使ってバルスって言った
    ら青色LLEEDDが光るようにしてみた。」
hhttttpp::////yy--aannzz--mm..bbllooggssppoott..jjpp//22001111//1122//aannddrrooiiddaaddkklleedd..hhttmmll
AADDKKとは?


l   AAnnddrrooiidd  OOppeenn  AAcccceessssoorryy  DDeevveellooppmmeenntt  KKiittの
     略で、22001111年5月のGGooooggllee  II//OOで発表された
     AAnnddrrooiiddのハードウェア拡張仕様

l 詳しくは吉田さんのスライドをみてね。
hhttttpp::////wwwwww..sslliiddeesshhaarree..nneett//ssssuusseerr33226611cc55//aaddkk
AArrdduuiinnooとは
      AAVVRRマイコン、入�出力ポート、開
         発言語、統合開発環境などが
         揃ったハードウェア開発環境
      ハードウェア仕様が公開されてい
         るので市販の部品を買ってきて
         マイコンボードを自作する事も
         出来ます。
      最新の基本構成AArrdduuiinnooはUUnnoo。他
       にもmmiinniiやMMEEGGAA、服飾�に使え
       るLLiillyyPPaadd等があります。
      統合開発環境でCC言語ライクなプ
       ログラミング言語を用いた開発
       を行います。
      「シールド」と呼ばれる拡張ボー
       ドを挿すことで機能を追加する
       ことが出来ます。
AArrdduuiinnooのピンとポート



                                1144本の
                                デジタルIIOOピン
                                ((ppiinn00  〜  ppiinn1133))
                                うち、--のついている
                                ((ppiinn  33,,  55,,  66,,  99,,  1100,,  1111))
                                はアナログOOUUTTにも
                                利用可能
          66本の                  →ppiinnMMooddee(())関数で設定
アナログIINNピン
  ((AA00  〜  AA55))
AArrdduuiinnooでのプログラム実行フロー
  ボードへ電源投入
             ・sseettuupp(())
             AArrdduuiinnooボードの電源を入�れた
             ときやリセットしたときに、一
   setup関数   度だけ実行される。変数やピン
             モードの初期化、ライブラリの
             準備などに使用。省略不可。
             ・lloooopp(())
    loop関数
             AArrdduuiinnooに給電されている限り
             何度でも呼び出される。外部セ
             ンサー値の読み取りやピン出力
  その他の自動処理   制御などに使用。省略不可。
AArrdduuiinnoo  IIDDEE
l   統合開発環境
l   スケッチ((プログラム))
     の検証や実機転送、シ
     リアルモニタ出力など
     の開発に必要な機能が
     一通り揃えられたオー
     プンソースソフトウェ
     ア
l   開発言語はCC言語ライ
     ク
l   コンパイルやマイコン
     ボードへの書き込みは
     ボタン一つで実行でき
     ます
UUSSBBホストシールド
l   AADDKKの仕組みを使って
     AAnnddrrooiiddとの通信を行うため
     に必要((AArrdduuiinnooだけを使っ
     てハードを作る際には必要
     ありません))
l   AArrdduuiinnoo  UUnnooとあまり変わら
     ないぐらいの値段がします
     ((;;;;))
l   GGoooogglleeII//OOで配られたAADDKK開
     発キットやGGRR--SSAAKKUURRAAには
     UUSSBBホスト機能が搭載され
     ていますのでシールドは必
     要ありません。
基板作成

 リード線(短)
                 タクトスイッチ
 黄色 2本
 橙 4本



               CdSセル


                       LED(赤)
                       LED(青)



1kΩ抵抗
10kΩ抵抗
                                リード線(長)
                                 黄色 2本
                                 赤 1本
                                 黒 1本
         プレッドボード配線ユニバーサル基板                18
                                 白 2本
部品一覧
チェック 部品                 個数     型番

                        1      サンハヤト
 □
     ブレッドボード配線ユニバーサ
     ル基板                       UB-BRD01

 □   リード線 単線0.65mm 耐熱   右表参照   サンコー電商 SHW-S             チェック 種類     個数


 □   赤色LED 3mm          1      LED&Application
                               Technologies OSDR3133A
                                                         □   赤      1


 □   青色LED 3mm          1      LED&Application           □   黒      1
                               Technologies OSUB3133A
                                                         □   白      2
 □                      1
     タクトスイッチ 4本足タイプ            SparkFun
                               SFE-COM-00097
                                                         □   黄色     2

 □   CdSセル 5mmタイプ       1      Macron International
                               Group Ltd. MI527          □   黄色     2
                                                             (短)
 □   抵抗1kΩ(茶黒赤金)        2      利久電器 RD25DTJ102
                                                         □   橙(短)   4


 □   抵抗10kΩ(茶黒橙金)       2      利久電器 RD25S 10K


※部品の型番はメーカーのものです。
                             19
 同じものまたは同等のものを若松通商で購入�することが出来ます。
工作に使うパーツの準備
l ミント缶でMMaakkeerr気分
hhttttppss::////ddooccss..ggooooggllee..ccoomm//ooppeenn??
   iidd==00BB33xx__aammEEffMMlljjRRTTnnpp33UU00hh11RR11NNLLdd33MM
l リード線�を用意しよう 


hhttttppss::////ddooccss..ggooooggllee..ccoomm//pprreesseennttaattiioonn//dd//
   11pp88ZZ33qqNNrr4477vvZZOOGGnnNNssVVXX5577JJ11DDxxIInnnnYYkkJJbbrrffBB
   JJEEaakk665588ddAA//eeddiitt
l 部品チェック&ハンダ付け手順((カラー版ネッ

   ト閲覧用))..ppddff
hhttttppss::////ddooccss..ggooooggllee..ccoomm//ooppeenn??
   iidd==00BB33xx__aammEEffMMlljjRRTTnnpp33UU00hh11RR11NNLLdd33MM
工作に使うパーツの説明
l   LLEEDD
          −   赤       xx  11個
          −   青       xx  11個
l   抵抗
          −   11kkΩ   xx  22個
          −   1100kkΩ  xx  22個
l   タクトスイッチ  xx  11個
l   CCddSSセル  11個
LLEEDD((発光ダイオード))とは

l   ダイオード::  電流を一定方
     向�にしか流さない
l   足が長いほうが陽極((ア
     ノード))、短いほうが陰極
     ((カソード))
l   足を切ったら見分けは…�!!
l   今回の工作でも部品を挿
     す向�きに要注意
l   よーく見たらわかるかも
抵抗カラーコード表

      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
CCddSSセルとは
l   CCddSS((硫化カドミウム))を用いた
     フォトレジスタ
l   フォトレジスタ::  光が当たる
     と電気抵抗が小さくなる部品
     ((光が強いほど小さくなる))
l   極性((部品を挿す向�きの指定))
     はありません
l   硫化カドミウムは毒性がある
     ため電子機器の特定有害物質
     の規制対象になっている
タクトスイッチとは
l   押すとカチカチなるスイッチ
l   押している間電気が流れます
l   極性はありませんが、スイッ
     チが押されたときに足の間隔
     が短いもの同士が通電するの
     で、縦横の向�きには注意が必
     要
l   結構いろんな色があってかわ
     いいです。大量に買ってもそ
     んなに使い道ないよ、といわ
     れたりしますww
手順11 抵抗をつけます
                           抵抗10kΩ
                           (茶黒橙金)
                           ・C-4とC-8へ
      10kΩ       1kΩ       ・C-11とC15へ
                           抵抗1kΩ
                           (茶黒赤金)
                           ・C-18とC-22へ
抵抗の足をペンチで折り曲げて基板にセットします。
部品をセットしたら、裏側から部品の足を広げて、
                           ・C-25とC-29へ
                                    26
表側で部品が浮かないように固定します。
抵抗に極性はありません。
手順22 リード線�((短))をつけます
                          黄色のリード線
                          ・A2と+
                          ・A9と+
                          橙のリード線
                          ・A8と−
                          ・A15と−
部品をセットしたら、裏側から部品の足を広げて、   ・A16と−
表側で部品が浮かないように固定します。                27
                          ・A23と−
手順33 タクトスイッチとCCddSSセル
       をつけます
                       CdSセル

                       ・E2とE4

                       タクトスイッチ
                       ・E9とE11

                        F9とF11

リマインド:タクトスイッチは足の間隔が近い方がスイッチ押下で通電します。
足の間隔の長い方を少し広げると基板にセットしやすくなります。
                                 28
CdSセルに極性はありません。
手順44 LLEEDDをつけます
           LED(青)

           ・E16(カソード)
            とE18(アノード
            =足の長い方)
           LED(赤)
           ・E23(カソード)
            とE25(アノード
                    29
            =足の長い方)
手順55 リード線�((長))をつけます
                       黄色2本
                       ・A4
                       ・A11
                       白2本
                       ・A22
                       ・A29
                       赤
                       ・+1
リード線を90度におりまげて、表側からマ
                       黒
スキングテープでとめるとはんだづけしやす
くなります。                 ・ー1    30
基板とAArrdduuiinnooを繋ぐ
               黄色2本
               ・A4とA0
               ・A11とDigital4
               白2本
               ・A22とDigital3
               ・A29とDigital2
               赤
               ・5v
               黒
               ・GND 31
動作確認




       32
ソースコード解説
ソースはここから取得
     hhttttppss::////ggiitthhuubb..ccoomm//mmiiww00112299//
            jjoosshhii__hhaannddaa__2200112200661166

            *AArrdduuiinnooのスケッチ
         AAddkkDDaaiioo__bbaalluuss__wwooAAddkk..iinnoo

              *AAnnddrrooiiddプロジェクト
※EEcclliippsseeからプロジェクトをインポート
                    aaddkkDDaaiiooPPrroojj
                                                34
                 bbaalluuss__ffoorr__ssttuuddyy
スケッチに使われている主要な関数
・ppiinnMMooddee((ppiinn,,  mmooddee))
ピンの動作を入�力か出力に設定します。
・ddiiggiittaallRReeaadd((ppiinn))
デジタル入�力。指定したピンの値を読み取りま
す。その結果はHHIIGGHHまたはLLOOWWとなります。
・aannaallooggRReeaadd((ppiinn))
アナログ入�力。指定したアナログピンから値を読
み取ります。
・ddiiggiittaallWWrriittee((ppiinn,,  vvaalluuee))
デジタル出力。ppiinnにHHIIGGHH((00))かLLOOWW((11))を設定す
る。
・aannaallooggWWrriittee((ppiinn,,  vvaalluuee))
アナログ出力。ppiinnに11~~225555までの数字を設定す
る。
AADDKK設定
        ((AAddkkDDaaiioo__bbaalluuss__wwooAAddkk..iinnoo))




l   この設定で、AAnnddrrooiidd側で対応するアプリを指定します
l   同じアクセサリに対応する複数のアプリがAAnnddrrooiiddにイ
     ンストールされている場合は、どのアプリで開くか選択
     画面が表示されます
l   “ジャンプ先UURRLL”には、AAnnddrrooiidd側アプリケーション
     の入�手先UURRLL((GGooooggllee  PPllaayyのUURRLL等))を記載することが出
     来ます
sseettuupp関数の内容
lloooopp関数の処理((AADDKK非接続時))
AAnnddrrooiiddからのコマンド処理((lloooopp内))

     処理できるコマ
     ンドは33種類

l   00xx00::  赤LLEEDD
     点灯//消灯
l   00xx11::  青LLEEDD
       PPWWMM制御
l   00xxffff::  バルス!!
((参考))コマンド送信するAAnnddrrooiidd側ソース
AAnnddrrooiiddへのスイッチ//センサー情報送信((lloooopp))

l   ボタン状態を変
     数bbで管理して
     変化があれば送
     信


l   CCddSSセルの値を
     定期的に送信
困ったらSSeerriiaall..pprriinnttllnn(())
プログラムがうまく動かない時の問題の切り分けに、
LLEEDDを点灯させるなどの確認方法しか無いのでは不便
l   PPCCとのUUSSBB接続経由でデー                   例:
     タをやり取りするシリアル通
     信機能を使う。SSeerriiaall..bbeeggiinn(())   void setup() {
     で通信を開始する。                               Serial.begin(115200);
                                           }
l   文字列をPPCCに送るのが
     SSeerriiaall..pprriinnttllnn(())      void loop() {
                                             ...
l   例では通信の転送速度を                             If (error) {
     111155220000bbppssにして開始。エ                 Serial.println("debug output”);
     ラーが発生したとき                               }
                                           }
     は”ddeebbuugg  oouuttppuutt”とシリ
     アルモニタに表示する。                           =>PC側ではArduino IDEの
l   シリアルモニタはIIDDEEのメ                        “Serial Monitor”を使います
     ニューから表示 
おまけ~~音声認識の仕組み~~
                                                                                 GGoooogglleeサービス
             アプリ
bbaalluuss__mmooddAAccttiivviittyy..jjaavvaa
                                                               AAnnddrrooiidd側                      GGooooggllee
                                                               ライブラリ                                サーバ



         ssttaarrttAAccttiivviittyyFFoorrRReessuulltt(())                             音声送信
                                                               音声録音




         oonnAAccttiivviittyyRReessuulltt(())                                         結果データ


        IInntteennttに入�っているデータから
        ggeettSSttrriinnggAArrrraayyLLiissttEExxttrraa(())で、                           結果データには候補が単数ないし複数
         音声認識の結果((コレクション))                                                             返ってきます。日本語の場合、漢字の
        を取得。※今回のバルスアプリ                                                                 結果が返ってくることも。
     では「バルス」の音声認識の結果、                                                                  例))「にっぽんばし」と呟く。
            カタカナの""バルス""が先頭に                                                           →「日本橋」「にっぽんばし」「ニッ
        入�ってくるので配列の00番目が                                                                 ポンバシ」などが返ってくる。
      ""バルス""であった時にバルス成功
           とするiiff文が入�っています。
おまけ~~困ったときは~~
動作確認中にアプリがうまく動作しなかった事
 があったと思いますが、そういう時は・・
 “リセットボタン+AAnnddrrooiidd端末抜き差し”
をすると、確実にアプ     リセットボタンはこれだよ
リが起動します。
リセットボタンの場所
はボードによって多少
の違いがありますが大
体同じような場所につ
いています。

側面についているもの
やタクトスイッチに
なっているものも・・
おまけ~~AADDKK対応端末の調べ方11~~
l  AAnnddrrooiiddバージョン22..33..44でもAADDKKがつかえない端末があ
    る?
  $$aaddbb  sshheellll  ppmm  lliisstt  ffeeaattuurreess    
  aaddbb  sshheellllを使用してffeeaattuurreessを確認、
  aannddrrooiidd..hhaarrddwwaarree..uussbb..aacccceessssoorryyがあるとAADDKKに対応してい
      るようです。
l ffeeaattuurreeって何?


  AAnnddrrooiiddMMaanniiffeessttの  <<uusseess--ffeeaattuurree>>にUUssbbAAcccceessssoorryyを指定
      することによって対応デバイスをフィルタリングするこ
      とができると書いてあるので、メーカー側でサポート機
      能を明示するようなものだと思うのですが…�

   参考UURRLL:hhttttpp::////aacctt--yyoosshhiikkeenn..bbllooggssppoott..jjpp//22001122//0011//
   aaddbb--sshheellllaannddrrooiiddaaddkk..hhttmmll
 hhttttpp::////yy--aannzz--mm..bbllooggssppoott..jjpp//22001111__0055__0011__aarrcchhiivvee..hhttmmll
おまけ~~AADDKK対応端末の調べ方22~~
l   実際にコマンドを打ってみるとこんな画面に
     なります。確認端末:XXppeerriiaa  rraayy
参考文献
•・   YY..AA..MMの雑記帳
     hhttttpp::////yy--aannzz--mm..bbllooggssppoott..jjpp//22001111//1122//
     aannddrrooiiddaaddkklleedd..hhttmmll
•・   OOSSPPNN  PPrreessss
     hhttttpp::////wwwwww..oossppnn..jjpp//pprreessss//2200112200440044nnoo2222--22--
     uusseeiitt--oossss..hhttmmll
•・   AArrdduuiinnoo日本語リファレンス
     hhttttpp::////wwwwww..mmuussaasshhiinnooddeennppaa..ccoomm//aarrdduuiinnoo//rreeff//
•・   「AArrdduuiinnooを始めよう」MMaassssiimmoo  BBaannzzii  著//船田巧  訳
•・   「AAnnddrrooiiddAADDKKプログラミング&電子工作バイブル」
     岩田直樹//杉浦登//高木基成//原田明憲//吉田研一  共著
•・   「SSooffttwwaarreeDDeessiiggnn」22001122年1100月号
SSppeecciiaallTThhaannkkss
               --主催--
 OOSSSSコンソーシアム組込み部会女子部
             --会場提供--
          若松通商 さま


               --協力--
日本AAnnddrrooiiddの会神戸支部 吉田研一さま
  OOSSSSコンソーシアム 竹岡尚三さま
  OOSSSSコンソーシアム 鵜川徹さま
      当日スタッフのみなさま


               --企画&技術協力--
  AAnnddrrooiidd女子部 あんざいゆきさま
           @@mmuuoo__jjppさま

12.09.30.第5回はんだごて勉強会資料 公開用