アート
美容とウェルネス
工芸
文化と歴史
エンターテインメント
環境
食品と飲料
グリーンフューチャー
リバースエンジニアリング
科学
スポーツ
テクノロジー
ウェアラブル
Using Relays — SIK Circuit 13
Ed

作成者

Ed

17. March 2026

Using Relays — SIK Circuit 13

Control a relay with a transistor to switch between two LEDs. Learn about electromechanical switching, SPDT relays, Normally Open vs Normally Closed contacts, and flyback protection.

手順

1

Parts & Introduction

A relay is an electrically-operated mechanical switch. A small current energizes a coil that physically moves a contact arm, switching a separate circuit. Relays can control high-power devices (motors, lights, appliances) from low-power Arduino signals. This experiment uses an SPDT (Single Pole Double Throw) relay to alternate between two LEDs.

Parts Needed

  • 1x Arduino Uno + USB cable
  • 1x Breadboard
  • 1x SPDT Relay
  • 1x NPN Transistor (P2N2222A)
  • 1x Diode (1N4148)
  • 2x LEDs (different colors)
  • 2x 330Ω Resistors
  • 14x Jumper Wires
2

Hardware Hookup

Wiring Instructions

Transistor + Relay Coil
  1. Connect transistor Base through 330Ω resistor to Arduino Digital Pin 2.
  2. Connect transistor Emitter to GND.
  3. Connect one side of the relay coil to transistor Collector.
  4. Connect other side of relay coil to 5V.
  5. Flyback Diode: Band (cathode) to 5V, anode to Collector.
Relay Contacts + LEDs
  1. Connect relay COMMON through a 330Ω resistor to 5V.
  2. Connect relay NC (Normally Closed) to LED 1 positive leg.
  3. Connect relay NO (Normally Open) to LED 2 positive leg.
  4. Connect both LED negative legs to GND.
3

Arduino Code

Open the Arduino IDE and upload the following sketch to your Arduino board.

relay.inoarduino
/*
SparkFun Inventor's Kit
Example sketch 13 — RELAYS

Use a transistor to drive a relay, alternating two LEDs.

Hardware connections:
  Transistor BASE through 330 ohm resistor to digital pin 2
  Transistor EMITTER to GND
  Relay coil: one side to COLLECTOR, other to 5V
  Flyback diode: band to 5V, anode to COLLECTOR
  Relay COMMON through 330 ohm to 5V
  Relay NC to LED 1 positive, Relay NO to LED 2 positive
  Both LED negatives to GND

This code is completely free for any use.
*/

const int relayPin = 2;
const int timeDelay = 1000;

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

void loop()
{
  digitalWrite(relayPin, HIGH);  // Relay on (COM connects to NO)
  delay(timeDelay);

  digitalWrite(relayPin, LOW);   // Relay off (COM connects to NC)
  delay(timeDelay);
}
4

Test & Experiment

What You Should See

You should hear the relay clicking, and see the two LEDs alternating — one on, one off — switching every second.

Troubleshooting

  • LEDs not lighting: Check LED polarity — longer leg is positive.
  • No clicking sound: The transistor or coil circuit isn't working. Verify transistor orientation and coil connections.
  • Relay not making good contact: The SIK relay is designed for soldering, not breadboarding. Press it firmly to ensure all pins contact.
  • Confusion: Don't mix up the TMP36 temperature sensor with the transistor!

Experiments to Try

  • Replace the LEDs with a motor on the NO contact — use the relay as a motor on/off switch.
  • Use a button to control when the relay toggles.
  • Add variable delay to create morse code patterns.

材料

  • SparkFun Inventor's Kit - V3.2 - 1 kitNOK 999.20
    表示
  • Arduino Uno R3 - 1 pieceプレースホルダー
    表示
  • Breadboard - 1 pieceプレースホルダー
    表示
  • SPDT Relay - 1 piece
  • NPN Transistor (P2N2222A) - 1 pieceプレースホルダー
    表示
  • Diode (1N4148) - 1 pieceプレースホルダー
    表示
  • 5mm LED - 2 piecessプレースホルダー
    表示
  • 330 Ohm Resistor - 2 piecessNOK 24.00
    表示
  • Jumper Wires - 14 piecessNOK 39.20
    表示

必要な工具

  • Computer with Arduino IDE

CC0 パブリックドメイン

このブループリントはCC0で公開されています。許可を求めずに、自由にコピー、修正、配布、あらゆる目的で使用できます。

メイカーを応援するには、ブループリント経由で製品を購入してください。メイカーには メイカーコミッション がベンダーにより設定されています。または、このブループリントの新しいイテレーションを作成し、自分のブループリントにコネクションとして含めて収益を共有できます。

ディスカッション

(0)

ログイン してディスカッションに参加

コメントを読み込み中...