Arduinoのはじめの一歩|開発環境の準備からLEDの点滅、ブレッドボードの使い方まで
スケッチのsetupとloopを一行ずつ読む
最初の準備と繰り返す処理に分かれている
スケッチはArduinoで使うプログラムの呼び名です。まずは通常のデジタル出力で基板上LEDを制御できるボードを想定し、次の構造を読みます。公式のBlinkと同じ基本動作で、端子を表す名前をledPinへまとめた例です。使うボードでの対応は、Arduino公式のBlinkを確認してください。
const int ledPin = LED_BUILTIN;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
}
const int ledPin = LED_BUILTIN;は、使う端子の値にledPinという名前を付けています。constは、その値を途中で変更しない指定です。同じ番号を何か所にも書くより、端子を変えるときに一か所を見直せます。ledPinの大文字と小文字は、この後のコードでも同じにします。
setup()の中は、電源投入やリセットなどでプログラムが始まったときに一度実行されます。loop()の中は、上から順に進み、最後まで行くと再び先頭から繰り返します。パソコンから一回ずつ「点ける」と命令を送り続けているのではなく、ボードの中で繰り返しています。
三つの命令を回路の動作に対応させる
pinMode(ledPin, OUTPUT);は、指定端子を出力として使う設定です。入力のままの端子へdigitalWriteを使うと、出力として点灯させる場合とは動作の意味が変わるため、この準備を省きません。端子の設定は、今回のようにsetup()へまとめると読みやすくなります。
digitalWrite(ledPin, HIGH);は、出力端子をHIGHの状態にします。HIGHの電圧はボードの信号電圧によって異なり、全ての機種で5Vになるわけではありません。LOWは低い側の状態です。後で作る「端子から抵抗、LED、GNDへつなぐ回路」では、HIGHで点灯し、LOWで消灯する構成になります。
delay(1000);は、次の処理へ進むまで1000ミリ秒、つまり約1秒待つ指定です。点灯して1秒、消灯して1秒なので、一巡は約2秒です。どちらも500へ変えると一巡は約1秒になります。片方だけ変えれば、点いている時間と消えている時間の長さを変えられます。
初めは一つの値だけを変え、検証、書き込み、観察を繰り返します。delayは主な処理の進行を待たせるので、待っている間にもボタンを細かく調べたい用途には別の考え方が必要です。まずは目で追える速度で時間の意味を確かめ、複数の動作へ進むときに、待たずに時間を計る方法を学ぶと理解しやすくなります。
コードの括弧、波括弧、セミコロンは半角で入力します。説明文から全角の記号を混ぜると、見た目が似ていても変換に失敗することがあります。エラーが出たら、表示された行に加え、その一つ前の行の閉じ括弧やセミコロンも確認します。
ブレッドボードの穴は内部のつながりで読む
一般的な形では中央と左右の電源レールを分ける
ブレッドボードは、穴の内側の金具で部品の足やワイヤーを接続する道具です。はんだ付けせずに回路を試せますが、全ての穴が独立しているわけではありません。同じ内部金具につながる穴へ二つの足を挿すと、その二つは電気的につながります。
よくある形では、中央の溝を挟んだ左右に、5穴ずつのまとまりがあります。たとえば同じ番号のa〜eが一組、f〜jが別の一組という構造です。同じ数字でも溝を越えてはつながらず、aの列を上下にたどっても全てが一続きになるわけではありません。文字と数字の配置は、使うボードの表示で確認します。
端に長く並ぶプラス、マイナスの表示は電源レールです。長手方向につながるものが多い一方、途中で切れている製品もあります。線が印刷されていることだけで全長がつながると決めつけません。電源レールそのものに電源はなく、ボードから線をつないで初めて回路の一部になります。

LEDと抵抗の両端を同じ組へ挿さない
LEDの二本の足を同じつながりの組へ挿すと、LEDの両側が同じ電位になり、狙った点灯ができません。抵抗の両端を同じ組へ挿した場合も、抵抗を通らない近道ができ、直列に入れたことになりません。部品の見た目の位置より、各足がどの内部金具につながるかを追います。
最初の回路では、電源レールを使わず、必要な部分だけを短くつなぐ方法もあります。出力端子から抵抗の片側、抵抗の反対側からLEDのアノード、LEDのカソードからGNDという一本の経路を作れば、レールの分断を気にせず始められます。配線が増えてから共通のGNDレールを使っても構いません。
ブレッドボードの外観から構造が分からないときは、付属の説明図を確認します。導通を調べる道具を使う場合も、USBや外部電源を全て外し、その道具の説明に従います。通電したままワイヤーを動かして点く位置を探す方法は避けます。
組み立てた回路を記録するときは、穴の番号だけでなく、端子名と部品のつながりも書きます。同じ形に見える別のブレッドボードへ移しても、回路の意味から組み直せるためです。長いワイヤーが部品を隠すなら、無理なく届く長さへ替えると点検しやすくなります。
LEDの向きと電流制限抵抗を理解する
長い足は向きを知る手がかりにする
一般的な二本足の砲弾型LEDには、アノードとカソードという向きがあります。未加工の部品では、長い足がアノード、短い足がカソードのことが多く、外装の平らな部分がカソード側の目印になるものもあります。ただし、足が切られている、外形が違うなどの例もあるため、部品資料が最終的な確認先です。
今回の点灯回路では、出力端子から抵抗を通り、アノード側へつなぎ、カソード側をGNDへ戻します。向きを逆にすると狙った点灯になりません。点かないからと抵抗を外したり、別の高い電圧へつなぎ替えたりせず、給電を止めて部品の向きから確認します。
LEDは小さな電球と同じつもりで直接電源につなげる部品ではありません。点灯する方向に電圧が掛かると、わずかな電圧の違いで流れる電流が大きく変わるため、電流を抑える手段が必要です。今回のような単体LEDでは、直列の抵抗で電流を制限します。
オームの法則は抵抗に掛かる電圧で使う
オームの法則では、抵抗の電圧V、電流I、抵抗値Rに「V=I×R」という関係があります。LEDと抵抗の直列回路なら、出力電圧からLEDの順方向電圧を引いた残りが、おおよそ抵抗に掛かる電圧です。抵抗の概算は「R=(出力電圧-LEDの順方向電圧)÷電流」となります。
仮に出力を5V、LEDの順方向電圧を2V、流したい電流を3mAとすると、「(5-2)÷0.003=1000Ω」です。3mAを0.003Aへ直す点に注意します。1kΩは1000Ωという意味なので、この仮定では1kΩで約3mAと見積もれます。これは計算の練習用の条件で、全てのLEDやボードに共通する指定値ではありません。
LEDの順方向電圧は、色や構造、流す電流などで違います。出力のHIGHも理想の電源電圧と完全には一致しません。部品の定格とボード端子の許容電流を確認し、上限いっぱいを狙わず、少ない電流で試す設計にします。抵抗にも許容電力があるため、値だけでなく部品の仕様を確認します。

抵抗はLEDの前でも後でも、同じ一本の直列経路に入っていれば電流を制限できます。入門では配線図と同じ側へ統一した方が点検しやすいでしょう。基板上のLEDには必要な回路が用意されていても、その回路が別の外付けLEDまで保護するわけではありません。










