【初心者必見】Arduino初期設定とLED制御の完全ガイド

ArduinoでLEDを制御する画像 初心者向け

Arduino(アルドゥイーノ)は、初心者に人気の電子工作マイコンボードで、簡単にプログラミングとハードウェアの基礎が学べます。

特にLED制御は一番最初に製作するのにおすすめで、LEDを使った点灯・点滅の実践を通じて、Arduinoの使い方や初期設定を理解できます。

本記事では、初心者がゼロからArduinoの初期設定や基本的なLED制御の配線方法や基本プログラムの作成手順をわかりやすく解説します。Arduinoの基礎からしっかり学びたい方は、ぜひ参考にしてください。

また、Arduinoとは何か、どんなことができるのかを知りたい方は是非以下の記事も一緒にお読みください。

LEDを制御するのに必要なもの

LED制御には以下のものが必要です。

また、部品を買う際は秋月電子が安心安全です。

Arduino本体

制御の中心で必須です。

正規品は3000円ほどで購入できます。

Arduino Uno Rev3: 開発ツール・ボード 秋月電子通商-電子部品・ネット通販
電子部品,通販,販売,半導体,IC,LED,マイコン,電子工作Arduino Uno Rev3秋月電子通商 電子部品通信販売

また、互換品は正規品に比べて安定性は劣りますがかなり安く買うことができます。

Amazon.co.jp

LED

LEDは電子工作用の小型のものを使う必要があります。

3mm赤色LED 625nm 70度 OSR5JA3Z74A: オプトエレクトロニクス 秋月電子通商-電子部品・ネット通販
電子部品,通販,販売,半導体,IC,LED,マイコン,電子工作3mm赤色LED 625nm 70度 OSR5JA3Z74A秋月電子通商 電子部品通信販売

抵抗

こちらもLED同様電子工作用の小型のものが必要です。抵抗値を変えることでLEDの光る強さが変わります。

カーボン抵抗(炭素皮膜抵抗) 1/4W330Ω: 受動部品 秋月電子通商-電子部品・ネット通販
電子部品,通販,販売,半導体,IC,LED,マイコン,電子工作カーボン抵抗(炭素皮膜抵抗) 1/4W330Ω秋月電子通商 電子部品通信販売

ブレッドボード・ジャンパワイヤ

回路を組むのに必要です。

↓ブレッドボード

ブレッドボード EIC-801: 基板・ブレッドボード・ラグ板 秋月電子通商-電子部品・ネット通販
電子部品,通販,販売,半導体,IC,LED,マイコン,電子工作ブレッドボード EIC-801秋月電子通商 電子部品通信販売

↓ジャンパワイヤ(大量に入っているのでお勧めです)

ブレッドボード・ジャンパーワイヤ(オス-オス)セット 各種 合計60本以上: ケーブル・コネクター 秋月電子通商-電子部品・ネット通販
電子部品,通販,販売,半導体,IC,LED,マイコン,電子工作ブレッドボード・ジャンパーワイヤ(オス-オス)セット 各種 合計60本以上秋月電子通商 電子部品通信販売

PC・USB

プログラムを書く用のパソコンとパソコンとArduinoをつなげるUSBが必要です。

↓USB

USBケーブル USB2.0 Aオス-Bオス 1.5m A-B: ケーブル・コネクター 秋月電子通商-電子部品・ネット通販
電子部品,通販,販売,半導体,IC,LED,マイコン,電子工作USBケーブル USB2.0 Aオス-Bオス 1.5m A-B秋月電子通商 電子部品通信販売

Arduinoの初期設定

Arduinoにプログラムを書き込めるようにPC側で準備します。

Arduino IDEをダウンロード

パソコンにArduino IDEというArduinoにプログラムを書き込むアプリを入れます。

まずArduino公式サイトを開きます。すると以下のような画面になると思うので赤の線で囲んだところをクリックします。(Windowsの場合です)

ArduinoIDEをダウンロードするサイトの説明

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

ArduinoIDEをダウンロードするサイトの説明二枚目

次にメールを登録するかという画面が出るので同じようにJUSTDOWNLOADを押します。

押すとダウンロードが開始されます。ダウンロードしたexeファイルを開くとセットアップ画面が出るので、同意→次→インストールの順番でボタンを押します。するとセットアップが開始されるので待ちます。

終わると以下の画面が出るので完了を押します。

ArduinoIDEのセットアップが完了した後の画面です

完了を押して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テストの点滅場所

Arduino UNOは13ピンと赤丸の部分のLEDが連動しています。

LEDを制御する

初期設定が完了したら、いよいよLEDの制御にチャレンジしてみましょう。難易度に応じて、3種類の回路を順番に作っていきます。

初級:一定の間隔でLEDを点滅させる

まずはLEDを一秒おきに点滅させます。初期設定の時のテストでは内部の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 で出力設定し
  • digitalWritedelay を使ってLEDをON/OFF
  • ブレッドボードとジャンパーワイヤーで簡単に回路を構築

LED制御はArduinoの基本ですが、ここからセンサーやボタンなどを組み合わせることで、さらに複雑で実用的な電子工作が可能になります。

またまだArduinoを持っていない人や何が作れるか知りたい人は以下の記事をお読みください。

初心者が絶対知るべきArduino入門|できることや使い方・必要な道具もわかる完全ガイド
Arduino初心者向けに、Arduinoとは何か・できること・必要な道具・おすすめの種類を分かりやすく解説します。電子工作の最初の一歩に最適な超入門ガイドです。

コメント

タイトルとURLをコピーしました