Arduino(アルドゥイーノ)は、初心者に人気の電子工作マイコンボードで、簡単にプログラミングとハードウェアの基礎が学べます。
特にLED制御は一番最初に製作するのにおすすめで、LEDを使った点灯・点滅の実践を通じて、Arduinoの使い方や初期設定を理解できます。
本記事では、初心者がゼロからArduinoの初期設定や基本的なLED制御の配線方法や基本プログラムの作成手順をわかりやすく解説します。Arduinoの基礎からしっかり学びたい方は、ぜひ参考にしてください。
また、Arduinoとは何か、どんなことができるのかを知りたい方は是非以下の記事も一緒にお読みください。
LEDを制御するのに必要なもの
LED制御には以下のものが必要です。
また、部品を買う際は秋月電子が安心安全です。
Arduino本体
制御の中心で必須です。
正規品は3000円ほどで購入できます。
また、互換品は正規品に比べて安定性は劣りますがかなり安く買うことができます。
LED
LEDは電子工作用の小型のものを使う必要があります。
抵抗
こちらもLED同様電子工作用の小型のものが必要です。抵抗値を変えることでLEDの光る強さが変わります。
ブレッドボード・ジャンパワイヤ
回路を組むのに必要です。
↓ブレッドボード
↓ジャンパワイヤ(大量に入っているのでお勧めです)
PC・USB
プログラムを書く用のパソコンとパソコンとArduinoをつなげるUSBが必要です。
↓USB
Arduinoの初期設定
Arduinoにプログラムを書き込めるようにPC側で準備します。
Arduino IDEをダウンロード
パソコンにArduino IDEというArduinoにプログラムを書き込むアプリを入れます。
まずArduino公式サイトを開きます。すると以下のような画面になると思うので赤の線で囲んだところをクリックします。(Windowsの場合です)

すると以下のようにArduinoに寄付をするかという選択画面になるので”JUST download”(ダウンロードだけ)を選びます。

次にメールを登録するかという画面が出るので同じようにJUSTDOWNLOADを押します。
押すとダウンロードが開始されます。ダウンロードしたexeファイルを開くとセットアップ画面が出るので、同意→次→インストールの順番でボタンを押します。するとセットアップが開始されるので待ちます。
終わると以下の画面が出るので完了を押します。

完了を押してArduinoIDEが正常に開いたら成功です。
テストプログラムを実行する
IDEのセットアップが完了したら次はテストプログラムを実行します
const int ledPin = 13; //使うピンは何かをあらかじめ定義しておきます。この場合"ledPin"は13であるということになります。
void setup() {
// ledPinを出力モードに設定する
pinMode(ledPin, OUTPUT);
}
void loop() {
// LEDを点灯させる(HIGHは5Vが出る)
digitalWrite(ledPin, HIGH);
delay(1000); // 1000ミリ秒(1秒)待つ
// LEDを消灯させる(LOWは0V)
digitalWrite(ledPin, LOW);
delay(1000); // 1000ミリ秒(1秒)待つ
}
このプログラムを以下のように入力してUSBでarduinoと接続し、赤い丸の矢印ボタンをおします。

以下のArduinoの赤丸のところが点滅したら成功です。

Arduino UNOは13ピンと赤丸の部分のLEDが連動しています。
LEDを制御する
初期設定が完了したら、いよいよLEDの制御にチャレンジしてみましょう。難易度に応じて、3種類の回路を順番に作っていきます。
初級:一定の間隔でLEDを点滅させる
まずはLEDを一秒おきに点滅させます。初期設定の時のテストでは内部のLEDを使用しましたが今回は自分で回路も組んで制御します。
まず以下のように回路を組みます。配線にはジャンパーワイヤーを使用します。

次にArduinoIDEで以下のプログラムを記述します。
const int ledPin = 13; //使うピンは何かをあらかじめ定義しておきます。この場合"ledPin"は13であるということになります。
void setup() {
// ledPinを出力モードに設定する
pinMode(ledPin, OUTPUT);
}
void loop() {
// LEDを点灯させる(HIGHは5Vが出る)
digitalWrite(ledPin, HIGH);
delay(1000); // 1000ミリ秒(1秒)待つ
// LEDを消灯させる(LOWは0V)
digitalWrite(ledPin, LOW);
delay(1000); // 1000ミリ秒(1秒)待つ
}
最後にArduinoに書き込むと完成です。
中級:スイッチでLEDを点灯・消灯する
次は、ボタン(タクトスイッチ)を使ってLEDの点灯/消灯を切り替える回路を組みます。ボタンを押している間だけLEDが光るように制御します。
まず以下のように回路を組みます。タクトスイッチには押したときだけ接続される特性があります。

次に以下のプログラムを書き込みます。
const int ledPin = 13; // LEDをつなぐピン
const int buttonPin = 2; // ボタンをつなぐピン
void setup() {
pinMode(ledPin, OUTPUT); // LEDピンを出力に
pinMode(buttonPin, INPUT_PULLUP); // ボタンピンを入力に
}
void loop() {
int buttonState = digitalRead(buttonPin); // ボタンの状態を読む
if (buttonState == LOW) {
digitalWrite(ledPin, HIGH); // ボタンが押されていたらLED点灯
} else {
digitalWrite(ledPin, LOW); // 押されていなければ消灯
}
}
プログラムを書き込むと、ボタンを押すたびにLEDが点灯/消灯する仕組みが完成します。
上級:ランダムに点灯する3つのLED
最後に、3つのLEDをランダムに光らせてみましょう。ゲームのような見た目になり、より応用的な内容です。
以下のようにLEDを3つ接続します。LEDにはそれぞれ抵抗をつけて電流を制限します。

Arduino IDEで以下のプログラムを記述します。
const int ledPins[] = {8, 9, 10}; // LEDをつなぐピンの配列
void setup() {
for (int i = 0; i < 3; i++) {
pinMode(ledPins[i], OUTPUT); // 3つのピンをすべて出力に設定
}
randomSeed(analogRead(0)); // ランダムの初期化
}
void loop() {
int index = random(0, 3); // 0〜2のランダムな数を生成
digitalWrite(ledPins[index], HIGH); // ランダムに選ばれたLEDを点灯
delay(300); // 少し待つ
digitalWrite(ledPins[index], LOW); // 消灯
delay(300); // 再び待つ
}
このように、3つのLEDがランダムに点滅することで、よりダイナミックな動作を表現できます。
まとめ
この記事では、Arduinoを使ったLED制御の初級編として、LEDを一秒ごとに点滅させるプログラムと回路の作り方を紹介しました。
- pinMode で出力設定し
- digitalWrite と delay を使ってLEDをON/OFF
- ブレッドボードとジャンパーワイヤーで簡単に回路を構築
LED制御はArduinoの基本ですが、ここからセンサーやボタンなどを組み合わせることで、さらに複雑で実用的な電子工作が可能になります。
またまだArduinoを持っていない人や何が作れるか知りたい人は以下の記事をお読みください。

コメント