マイコン制御の基本は、I/O制御です。マイコンでスイッチのON/OFFをするイメージで他の機器やデバイスを制御します。中でもLEDの点灯/消灯は、回路作成が容易な上、制御の基本をマスターできますので是非やってみて下さい。

まず、下図のような回路を作成します。

用意する部品は、以下の通り。

部品名数量
LED1
抵抗(220Ω)1
ピンヘッダ(2ピン)1
ユニバーサル基板(6×8程度)1

部品を確認したら、レイアウトを決めます。

部品は、はんだ付けや配線がしやすいように適度に間隔をあけて配置します。

次に、右図のように部品の足を折り曲げて回路図通りの配線を作り、余分な部分をカットします。

各部をはんだ付けしたら完成です。

はんだ付けの際は、このようなクリップがあると便利です。

※このクリップは、こちらのサイトで販売しています。

LED点灯回路が出来たら、Arduino UNOと接続します。

マイコンのI/Oポートは、3.3Vや5Vの電圧が出力できます。出力電圧はマイコンの仕様によって異なるので、各種マイコンの仕様を確認してください。Auduinoの場合は5V、ESP32の場合は3.3Vです。

LED(発光ダイオード)は、電気の流れる方向が決まっています。LEDの電極は長い方が+(プラス)でアノードといいます。短い方は‐(マイナス)でカソードといいます。

LEDの+電極に電源の+、‐極に電源の‐をつなぐと点灯します。+ と‐を逆につないだ場合は電流が流れず点灯しません。LEDは、電圧1V~2V、消費電流は 10mA~20mA 程度で点灯しますので、供給電圧に合わせて抵抗を直列に接続します。抵抗値はオームの法則で計算し、適切なものを使用します。

電源電圧が5V、 LEDに流す電流を15mA( 0.015 A)の場合、

オームの法則:V(電圧)=I(電流)× R(抵抗)

       R = V / I = ( 5(V) – 2(V) ) / 0.015 (A) = 200(Ω)

上の式で、5(V)は電源電圧、2(V)はLEDが消費する電圧です。

計算値ぴったりの抵抗はありませんので、計算値よりも大きく値が近い220(Ω)の抵抗を選べばよいでしょう。

回路が出来たら、次はソフトウェアを作成します。ここでは、Auduino IDE を使用したソフトウェア開発について説明します。

まず、Arduino IDE の設定を確認します。今回は Arduino UNO を使用しますので設定が以下のようになっていることを確認してください。

COMポートの設定は、Arduino UNO をPCのUSBポートに接続した状態で、Windowsのデバイスマネージャを起動し、[ポート(COMとLPT) ] に表示されている [ USB-SERIAL XXX]のCOMポート番号と同じものを選択します。

次に、LEDを点灯/消灯させるプログラムを作成します。以下のように入力してください。

/*— LED 点灯/消灯 制御プログラム — */

#define LED_PORT 8  //LEDを接続するポート(ピン番号)を定義する

void setup() {
  // シリアルポート初期化(ボーレート)115200
  Serial.begin(115200);
  // LEDを接続するI/Oポートをデジタル出力に設定する
  pinMode( LED_PORT, OUTPUT );
}

void loop() {
  // LED点灯
  digitalWrite( LED_PORT, HIGH );
  // 500msec待つ
  delay( 500 );
  // LED消灯
  digitalWrite( LED_PORT, LOW );
  // 500msec待つ
  delay( 500 );
}

コードが入力出来たら、コンパイル(マイコンが読めるコードに変換)して Auduino UNOに書き込みます。

エラーが表示された場合は、入力したコードを確認して下さい。

プログラムの書き込みが成功したら、LEDが0.5秒ごとに点灯/消灯します。

これで、LEDの制御ができました。

このプログラムは、AuduinoマイコンのI/Oポート”8”を0.5秒ごとにHigh/Lowを変化させています。ポートをHighにしたときに電気が流れてLEDが点灯、Lowにしたときに電気が止まりLEDが消灯しています。スイッチをON/OFFしたときと同じですね。

マイコンボードのI/Oポートは数十mAの電流しか流せませんので、モーターや家電( 交流 100V)機器を直接制御することはできません。 大きな電流・電圧を必要とする機器を制御 するときはトランジスタなどを使用した回路を追加しますが、マイコンからの制御方法は同じです。

ここで紹介したLED制御に必要な部品は以下のサイトから購入できます。

LED制御回路部品

はんだ付け補助クリップ

Arduino UNO