Tutorial: Arduino Serial Control of Relay Module

On this tutorial, we will show how to use Arduino or any compatible board (Garagino in this case) to control a Relay Module using Serial communication with the PC.

Attention: You must be very careful while using relay modules connected to AC power plug. Please be careful to avoid electrical shock!

Material List:

  • 1 x Arduino or compatible board (AVR board)
  • 1 x USB/Serial Converter
  • 1 x Relay Module
  • 1 x Lamp. 127V with cable and plugs.
  • 1 x Breadboard
  • Jumpers

 

1º Cut one of the wires of AC cable. Connect one side to the C (Common) and connect the other to NO (Normally Open) from Relay Modulo (Picture 1).

Picture 1

2º Connect USB/Serial Converter 5V pin to Vcc bus on the breadboard (Prefer red jumpers);

3º Connect USB/Serial Converter GND pin to GND bus GND on the breadboard (Prefer black jumpers).

4º Connect the coupling capacitor (100nF between the USB/Serial Conversor pin DTR and the reset on the AVR board).

5º Connect breadboard Vcc bus to: AVR board Vcc, USB/Serial module CTS and Vcc pins (Prefer Red jumpers).

6º Now connect the following pins to breadboard GND: AVR board GND and Relay Module GND (Prefer Black jumpers).

7º Connect USB/Serial TX pin to AVR board RX Pin (Blue jumper on Picture 2).

8º Connect USB/Serial RX pin to AVR board TX Pin (Orange jumper on Picture 2).

Picture 2

9º For the last step, connect Relay Module input IN to Arduino's D8 pin or the correspondent on AVR board (Garagino in this case). Green Connection on Picture 3.

Picture 3

Verify all connections. Link an USB cable between PC and USB/Serial Converter and AC plug on power.

Copy and paste this Sketch in the Arduino's IDE:

char serialin;

#define relay 8
void setup() {

  //Begin Serial Comunication(configured for 9600baud)
  Serial.begin(9600);
  //pin relay as OUTPUT
  pinMode(relay, OUTPUT);
  //Relay
  digitalWrite(relay,LOW);
  }

void loop() {
  //Verify connection by serial
  while (Serial.available() > 0) {
    //Read Serial data and alocate on serialin
    serialin = Serial.read();
    //If serialin is equal as 'o' or 'O' LAMP OFF
    if (serialin == 'o' || serialin =='O'){ // Two Pipeines(||) to make a boolean OR Comparission
      digitalWrite(relay,LOW);
      }
    /*serialin is equal as 'c' or C */
    else if (serialin == 'c' || serialin =='C'){ // Two Pipeines(||) to make a boolean OR Comparission
      digitalWrite(relay,HIGH);
      }
      Serial.println(serialin);
  }
}

Configure Serial Monitor to 9600 Baud. Send by Serial Monitor letter ”c” or “C” and press Enter. The relay will be close (Lamp ON). Now send “o” or “O” and it will be open(Lamp OFF).

Thanks for following this tutorial! If you have any question, please comment.

Views: 28284

Comment by نهاد عبدالله حسين السلمان on January 17, 2013 at 12:56am

Hello - all up to us the information, programs and projects is a wonderful grandfather and wholesome

Comment by نهاد عبدالله حسين السلمان on January 17, 2013 at 1:18am

Hi - I'm the designer who designed the masterpiece known Arduino google drive  my drive  Works like a Joker, a paper multiple areas is really wonderful and thank you for the designer

Comment by نهاد عبدالله حسين السلمان on January 17, 2013 at 1:20am

Printed board

Comment

You need to be a member of GarageLab (arduino, electronics, robotics, hacking) to add comments!

Join GarageLab (arduino, electronics, robotics, hacking)

Latest Activity

iftekhar Mobin is now a member of GarageLab (arduino, electronics, robotics, hacking)
yesterday
Profile IconLeicester Hibbert and Michael Young joined GarageLab (arduino, electronics, robotics, hacking)
Jan 9
Profile IconThorsten Schwarz and Dana Custer joined GarageLab (arduino, electronics, robotics, hacking)
Jan 2
Aqeel munir updated their profile
Dec 31, 2016
Todd Enger updated their profile
Dec 29, 2016
FRANK KWABENA is now a member of GarageLab (arduino, electronics, robotics, hacking)
Dec 28, 2016
Ayhan Chaplan commented on GarageLab's blog post How to use a Peltier with Arduino
"Hi! Will this setup work with a 3,8V / 2,5A Peltier element? Or do I have to reduce the resistance…"
Dec 26, 2016
Profile IconAyhan Chaplan, Erva and Donna Carter joined GarageLab (arduino, electronics, robotics, hacking)
Dec 26, 2016
Galy Huang posted a discussion

Ubuntu on Firefly-RK3399

Firefly-RK3399 with dual-core Cortex-A72 and quad-core Cortex-A53, ARM® Mali-T860 MP4 quad-core…See More
Dec 20, 2016
Chase Rangel posted a discussion

What is the simplest way to control one brushless motor forward/reverse?

  Hello everyone I don't know much about this type of stuff had only a handful of RC cars.I've been…See More
Dec 12, 2016
Profile IconErving Howe, Chase Rangel, Werner Pretorius and 1 more joined GarageLab (arduino, electronics, robotics, hacking)
Dec 12, 2016
Frank Turner is now a member of GarageLab (arduino, electronics, robotics, hacking)
Dec 9, 2016
Marcelo Rodrigues and swapnil are now friends
Dec 6, 2016
Marcelo Rodrigues replied to swapnil's discussion Tiny 85 based Thermometer
"Dear Swapnil, Since you don't have any experience with programming you should consider start…"
Dec 5, 2016
swapnil posted a discussion

Tiny 85 based Thermometer

Hi, can any one guide me how to make the tiny 85 based Thermometer which will glow the LED…See More
Dec 4, 2016
Spyros Svoronos is now a member of GarageLab (arduino, electronics, robotics, hacking)
Dec 4, 2016
K Biju is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 29, 2016
Profile Iconswapnil and Yasser joined GarageLab (arduino, electronics, robotics, hacking)
Nov 28, 2016
udit is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 25, 2016
Aqeel munir is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 23, 2016

© 2017   Created by Marcelo Rodrigues.   Powered by

Badges  |  Report an Issue  |  Terms of Service