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: 13803

Tags: Arduino, Control, Module, Relay, Serial, Tutorial:, of

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

tools4u posted discussions
6 hours ago
Profile IconRichard Vincent, KrisWiner and tools4u joined GarageLab (arduino, electronics, robotics, hacking)
yesterday
GarageLab posted blog posts
Wednesday
Profile IconJ.J.J. Kuipers and Phan Minh Kha joined GarageLab (arduino, electronics, robotics, hacking)
Wednesday
GarageLab posted a blog post

Electric lawn mower converted to RC control

Not too many people like pushing a lawn mower around the yard, but unfortunately, it is a necessary…See More
Monday
Profile Iconchiran sachintha and Blun Blun joined GarageLab (arduino, electronics, robotics, hacking)
Monday
GarageLab posted a blog post

Codename Colossus: The HMC Boudicca

[Michael Sng], founder of [Machination Studio], wanted to create a toy line unlike anything the…See More
Jun 26
Fernando Rodrigues Pontes is now a member of GarageLab (arduino, electronics, robotics, hacking)
Jun 26
GarageLab posted blog posts
Jun 23
Profile IconSayed Akbar Rajaei Ramsheh, william sarte and Ahmed OUKERROUM joined GarageLab (arduino, electronics, robotics, hacking)
Jun 23
GarageLab posted a blog post

Dashboard in you simulator!

 Fans of driving simulator games not only play with steering wheels, gear shifters and pedals. Some…See More
Jun 22
Jesus M Andino commented on GarageLab's blog post Diabetes Has a New Enemy: Robo-Pancreas
"How will be the sugar regulated when there is a higher demand of it due to stress situations? "
Jun 19
GarageLab posted blog posts
Jun 19
GarageLab posted blog posts
Jun 17
AnalysIR posted a blog post

Porting AnalysIR firmware to Particle’s Photon platform

We have just finished porting our (single source) firmware from a range of other ‘Arduino’ type…See More
Jun 17
Profile Iconabin joseph, ATony and cocowei joined GarageLab (arduino, electronics, robotics, hacking)
Jun 17
Michael updated their profile
Jun 15
lovakiranvarma replied to Kringen's discussion MSP430 Launch Pad
"hi! Kringen even though Energia is promissing! But in my opinion it won't much helpful…"
Jun 14
GarageLab posted a blog post
Jun 12
AnalysIR posted a blog post

Simple Infrared PWM on Arduino, Part 2- RAW IR Signals

In Part 1 of this series, we demonstrated how to send signals using simple Infrared PWM on Arduino.…See More
Jun 12

© 2015   Created by Marcelo Rodrigues.

Badges  |  Report an Issue  |  Terms of Service