天下一反省会!

電子工作、プログラミング、読書など

【Arduino入門】LEDを光らせる手順を宇宙一丁寧に解説します!

今回は、Arduinoを用いてLEDを光らせる方法について解説します。

この記事はこんな人におススメ・電子工作に興味がある
Arduinoを入手したけれど、使い方が分からない
Arduinoの動作の仕組みをざっくり知りたい


そもそもArduinoって何?

一応初心者向けの記事なので、Arduinoそのものについても簡単に解説します。必要ない方は飛ばしていただいて構いません。

Arduinoはざっくり言うと「すごく小さいコンピューター」です。Arduinoに命令(プログラム)を与えると、その通りに実行してくれます。Arduinoは教育現場でも用いられることが多く、電子工作入門用としても適しているといえます。


Arduinoには"ピン"と呼ばれる穴がたくさん開いており、ピンと外部のLEDやモーターなどの部品を導線で接続することで、それらの部品を操ることができます。

今回はArduinoのピンとLEDを導線で接続することで、LEDを光らせてみます。

今回使うもの

Arduino Uno R3  1個(Arduinoの中でも、一番基本的なモデルです。Amazonで売ってます。)
・ジャンパワイヤ 数本(導線です)
・ブレッドボード 1枚 (ブレッドボードについては後ほど説明します)
・LED 1個


これらの道具を1つも持っていないという方は、Amazonで買えるArduino入門セットがおススメです。入門セットには、Arduino本体はもちろん、ブレッドボードやジャンパワイヤはもちろん、LEDやモーター、各種センサーなど、初心者には十分すぎるほど多種類のパーツが含まれています。(私もこれを使っています)


購入はこちらから!(私が購入したものと全く同じ商品です)


LEDを光らせるためには?

いよいよ本題に入ります。今回はArduinoのピンからLEDへ電源を供給し、LEDを光らせてみようと思います。

つまり、今からやるべきことの流れは次のようになります

ArduinoとLEDのつなぎ方を決める

ArduinoのピンからLEDへ電源を供給する命令(プログラム)を書く

③実行する


それではまず、①ArduinoとLEDのつなぎ方を決める からやっていきましょう。

ArduinoとLEDのつなぎ方を決める

今回はArduinoとLEDを次の図のようにつなぐことにします。

今回使用する回路の図

上の図について解説します。まず、Arduinoの13ピンとLEDをジャンパワイヤで接続します。上の図だと、赤い導線の部分です。この時、ブレッドボードを経由して接続するのですが、ブレッドボードの仕組みについても軽く理解しておく必要があります。


ブレッドボードには無数の穴が開いていますが、実は、同じ縦の列に空いた穴は内部でつながっているんです。

図で見るとこんな感じ。


ここで注意したいのは、”同じ横の列に並んでいる穴同士はつながっていない”ということ。

ブレッドボードに関しては、使っていくうちに慣れてくるものなので、解説はこの辺でとどめておきます。

とにかく、"同じ縦列の穴同士は内部でつながっている"ということだけ頭に入れておいてください。

さて、13ピンから伸びるワイヤとLEDの片足は同じ縦列の穴に刺さっています。つまり今、13ピンとLEDの片足が接続されているということです。

次にLEDの左側の脚を見てみます。左側の脚は抵抗の右足と同じ縦列に、そして抵抗の左足はArduinoのGNDピンから伸びるワイヤと同じ縦列に刺さっています。

以上をまとめると、Arduinoの13ピン→LEDの右足→LEDの左足→抵抗の右足→抵抗の左足→GNDピンという流れでつながっているということになります。

LEDの注意点

もしかしたらお気づきの方もいるかもしれませんが、LEDに生えている2本の脚は微妙に長さが異なっているんです。

長い方をアノード、短い方をカソードと呼ぶのですが、初心者の方は別に覚えなくていいです。

それよりも留意しておいていただきたいのが、”LEDは長い足にプラス、短い脚にマイナスを繋ぐ”というルールです。

実は、LEDは長い脚側から短い脚側という向きでしか電気を流すことができません。

なので、LEDの脚の向きを間違えると、電源を供給しても点灯しない、ということがあります。

”LEDは長い脚をプラス側につなぐ”ということを覚えておいてください。

Arduinoへの命令文、「スケッチ」を書いてみる

配線は無事に終わりました。あとはArduinoに「13ピンから電源を供給せよ」という命令をするだけです。

そして、命令をするためにはプログラムを書く必要があります。

Arduinoの場合、プログラムのことを「スケッチ」と呼ぶ文化があるので、以降、プログラムのことはスケッチと呼ぶことにします。


さて、スケッチを書き込むためには、Arduinoの公式サイトにて提供されている"Arduino IDE"と呼ばれるソフトが必要になります。


ダウンロードは非常に簡単なうえ、Arduino公式が提供しているソフトなので安全性も担保されています。

ダウンロード方法については、私が参考にしたサイトを紹介しておきます。

www.indoorcorgielec.com


Arduino IDEをダウンロード出来たら、いよいよスケッチの作成に入ります。


とはいえ、今回はLEDを光らせるだけのシンプルなスケッチなので、内容は非常にあっさりしています。


今回用いるスケッチを下に載せておきます。コピー&ペーストしてお使いください。

void setup() {
pinMode(13,OUTPUT);

}

void loop() {
digitalWrite(13,HIGH);

}

スケッチの内容と意味について、詳しく見てみましょう。まず冒頭の、

void setup() {
pinMode(13,OUTPUT);
}

の部分について。void setup()とはArduinoの電源がオンになった瞬間に1度だけ実行される命令のことです。

電源オン時に真っ先に1度だけ実行してほしい命令(初期設定など)はvoid setup()の中に書くとよいでしょう。

今回はvoid setup()の中にpinMode(13,OUTPUT);と書いてあります。


これはpinModeという命令で、Arduinoのピンに役割を割り当てる命令文です。

pinMode(13,OUTPUT); を日本語に直すと、”13ピンにOUTPUTという役割を割り当ててね”という命令文になります。

なお、OUTPUTとは日本語で"出力"という意味で、つまり13ピンを電源出力用に設定するよという意味です。


それでは次の部分についてみてみましょう。

void loop() {
digitalWrite(13,HIGH);
}


void loop()の部分では,void setup()の実行後、void loop()内に書かれた命令を何回も繰り返し実行します。

今回の場合、void loop()内にはdigitalWrite(13,HIGH);という命令が書いてあります。

digitalWriteとはデジタル信号(すなわち電源のON,OFF)を指定したピンから出力するという命令です。

digitalWrite(13,HIGH); という命令を日本語で表すと、”13ピンからHIGH(5Vという意味です)を出力する”となります。


スケッチの解説は以上になります。それでは、Arduinoにスケッチを書き込んで、動作を見てみましょう。

スケッチをArduinoに書き込み、実行してみる

まずは、パソコンとArduinoを図のような端子のケーブルで接続してください。(上で紹介した入門セットにはケーブルが付属しています。)

作成したスケッチをArduinoに書き込むためには、Arduino IDE上にある矢印マークのボタンをクリックします。

下の画像を参考にしてください。


矢印ボタンをクリックすると書き込み作業が始まります。

書き込みが正常に完了するとした図のように、画面下の方に”ボードへの書き込みが完了しました”と表示されます。


※もしスケッチに不備があるなどの原因でエラーが生じた場合、次のように赤色で警告されます。

エラーが出た場合の表示。赤色で警告文が表示されている。


スケッチを書き込んだ後、LEDが点灯したら成功です!


何かわからない点があればコメント欄で質問いただければお答えします。


第2回はこちら

potala123.hatenablog.com