とりあえず今回はLEDの点滅から始めたいと思う。世の中のArduino解説の大半がやはりLEDの点滅から始めている気がするが、やはり「手軽に試せる」「応用が効く」という点で、最初はここからだろう。
ちなみに必要な部品はLEDで、とりあえずOSDR3133Aを入手した。これは秋月電子通商で、100個350円である。バラ買いするともう少し高くなるし、たいした値段ではないのでまとめ買いしてもいいと思う。他に、150Ω 1/4Wのカーボン抵抗も必要である。こちらは100本で100円(千石電商)だった。
さて、まずはLED回路の基本である。図1の様に、基本的には電源にLEDをつなげれば点灯するのだが、LEDの定格を超えた電圧/電流を流すと、短期的には点灯するが長時間使っていると焼ききれたり破損したりする(白熱灯などに比べるとずっと消費電力が少ない、というだけでLEDも消費電力はあるし、従って長時間使っていると発熱し、適切な放熱手段を講じないと熱で破壊される)。
そこで図2の様に、LEDと直列に抵抗を入れてやり、電圧/電流をここで制限すると言うわけだ。例えば今回の場合、LEDのスペックは(上のPDFの中に書かれているが)DC Forward Voltage(順方向電圧)はTyp(典型)で2V、その際の電流は20mAとなっている。そこで抵抗で3V分落とせば良い、という計算である。オームの法則で、
E=I×R
だから、R=E÷Iとなる。今回Eは3V、Iは20mA=0.02Aなので、R=3÷0.02=150Ωという訳だ(これが上で150Ωの抵抗が必要、と書いた理由である)。さて、これで回路が決まったので、実際に組んでみる。
回路図そのものは図3の様な感じで、これで判る人には判るのだが、「いきなりこれでは判らん!」という人も多かろう。ということで図4が実体配線図である。Arduinoの右にあるものはブレッドボードと呼ばれる、汎用の配線用基板である。いわゆるハンダ付けを前提にした「ユニバーサル基板」というものと異なり、ブレッドボードは中がばねになっていて、そこに部品を挿すとその状態で(軽くではあるが)固定される。このため、最終製品に使うにはまるで向かないが、とりあえずちょっと試作という場合には(ハンダ付けなしで回路が構成できるので)大変便利である。ここで使っているのは秋月電子通商でEIC-301として販売されているもので、他に配線用のジャンパワイヤも必要(というか、自分で作ってもいいのだが。単なる被覆付きのスズメッキ線を各種長さで取り揃えてあるだけである)だが、最初ならお得なセットもある。
ブレッドボードは、図4で言えば左右両端は縦一列に、その中間は横方向に5穴づつが内部で接続されており(図中の赤と青の破線が、接続の具合を示している)、これで図3の回路が実現できたことになる(Photo01)。
Photo01: 実際の配線はこんな具合。図4では余分な補助線が入っているのでやや見難いが、こんな感じ。ちなみにLEDは足の長いほうがA(Anode)で+側、短いほうがK(Cathode)で-側となる。今回の場合、足の短いほうをArduinoのGNDに直結する側に接続する。 |
お次はソフトの開発環境である。まず、Arduino IDEを入手しよう。Arduinoのサイト(Photo02)から、Downloadページ(Photo03)に移行し、自分の環境に合わせてダウンロードを行う。Windowsの場合、Arduino_0021.zipというファイル(原稿執筆時点での最新版)で、サイズは85.2MBほどである。ダウンロードしたら、適当なディレクトリ(筆者の場合、C:\Program Files(x86)\の下に入れた)にこれを展開した。
Photo02: 残念ながら公式サイトは英語のみ。といっても、たいして難しい英語ではないが。 |
Photo03: Windowsの場合、32bit/64bitで共用なので、どちらでも使える。実際、Windows 7の64bit環境でも問題なく動作する。 |
事前に、もう一つやるべきことがある。それはUSBドライバのインストールである。Arduino IDEを展開したあとで、Arduino UNOをPCに接続すると、ドライバがないということで怒られる(Photo04)。ということでデバイスマネージャを開き(Photo05)、ドライバの手動インストールを選択する(Photo06)。次にフォルダ指定の画面となるので、先ほどArduino IDEをインストールしたディレクトリの下にあるdriverフォルダを指定する(Photo07)。この際こんな具合に怒られる(Photo08)が、これはスルーしてインストールしよう。するとインストールが完了し(Photo09)、新たな仮想COMポートが出現する筈だ(Photo10)。
Photo05: もう一つの「不明なデバイス」はArduino UNOとは無関係。これはASUSTeKのX58 SABERTOOTHのオンボードデバイスのドライバを正しくインストールしていないために表示されている。 |
Photo06: 自動検索では残念ながら引っかからない可能性が高い。 |
Photo07: "FTDI USB Drivers"は、前モデルのArduino Duemilanove用のもので、Arduino UNOはdriversフォルダにある"Arduino UNO.inf"を指定する形になる。 |
Photo08: 32bit/64bitのどちらでもこんな具合に怒られるが、怒られるだけである。 |
Photo09: ちなみにArduino Duemilanoveまでは、FTDIのUSB Serial Port Driverと表記されていた。 |
Photo10: 新たに出現したCOM3:。このCOM3:を経由してArduinoと通信することが出来る。 |
さて、ドライバのインストールが終わったら、Arduino IDEを立ち上げるわけだが、ここでも先に設定が必要だ(Arduino IDEは先ほど展開したディレクトリのarduino.exeを起動すれば立ち上がる)。まず"Tool→Board"で"Arduino Uno"を選択し(Photo11)、また同じく"Tool"→"Serial Port"で先ほど出現したCOMポートを選択する(Photo12)。これで準備完了である。ということで長くなりすぎたので以下次号。
Photo11: デフォルトではArduino Duemilanoveの選択になっているので、このままだとうまく書き込みが出来ない。 |
Photo12: 複数枚のArduinoを装着すると、ここに複数のCOMポートが出現することになり、どれがどれだか状態になるのがちょっと難点。 |
(続く)