ARDUINO Based IR Remote Control Robot

Hi everyone. This my new project IR remote control robot using arduino. This is a simple design robot you can easily build it.

Step 1: Requirements:

Project requirements:

  • Arduino uno Tsop1738 (ir receiver)
  • H bridge ic (L293D)
  • Two dc motor
  • A robot base
  • 9v Battery

Step 2: Circuit Diagram

For The circuit diagram refer the bellow device pin description and make connection to arduino based on the program of the robot:

Important: connect ir receiver out to arduino digital pin 11 only.

  • Connect arduino pin 7- l293d INPUT 1 pin 2
  • Connect arduino pin 6- l293d INPUT 2 pin 7
  • Connect arduino pin 5- l293d INPUT 3 pin 10
  • Connect arduino pin 4- l293d INPUT 4 pin 15

Connect two motor show like above images.and configure the lm293d as in image 3 above.

Step 3: Project Step 1: Read Your IR Remote Button Value Using Serial Monitor.

First do the circuit connection shown previous and download the ir remote library file for arduino IDE. And copy the library file in the arduino libraries folder.

And then run the arduino ide select sketch like that given bellow

File -> examples->IR remote->IR recv demo

Upload the sketch to arduino and open serial monitor. Press the TV IR remote (any company) in front of ir receiver then you will see the decode hex code in serial monitor (example : FF30CF). the code will vary according to the remote company. Press any 5 button in remote and note down the codes shown in the serial monitor for programming purpose.

Step 4: Project Step2: Upload IR Robot Code and Play

his is the code for IR robot:
Type your 5 button s code in if else if statement in bellow code. The shown value is my remote value.

Use 5 button to control robot forward, reverse, left right and stop

#include <IRremote.h>

int RECV_PIN = 11;

int statusled = 13;

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()

{

irrecv.enableIRIn();

pinMode(statusled,OUTPUT);

pinMode(7,OUTPUT);

pinMode(6,OUTPUT);

pinMode(5,OUTPUT);

pinMode(4,OUTPUT);

digitalWrite(statusled,LOW);

}

void loop() {

if (irrecv.decode(&results)) {

digitalWrite(statusled,HIGH);

irrecv.resume();

if (results.value == 0xFF50AF){ // type your remote forward robot control button hex value in underlined area.

digitalWrite(7,HIGH);

digitalWrite(6,LOW);

digitalWrite(5,HIGH);

digitalWrite(4,LOW);

}else if(results.value == 0xFF30CF){ // type your remote left robot control button hex value in underlined area.

digitalWrite(7,HIGH);

digitalWrite(6,LOW);

digitalWrite(5,LOW);

digitalWrite(4,LOW);

}

else if(results.value == 0xFFB04F){ // type your remote right robot control button hex value in underlined area.

digitalWrite(7,LOW);

digitalWrite(6,LOW);

digitalWrite(5,HIGH);

digitalWrite(4,LOW);

} else if(results.value == 0xFFD02F){ // type your remote backward robot control button hex value in underlined area.

digitalWrite(7,LOW);

digitalWrite(6,HIGH);

digitalWrite(5,LOW);

digitalWrite(4,HIGH);

}else if(results.value == 0xFF9867){ // type your remote stop robot control button hex value in underlined area.

digitalWrite(7,LOW);

digitalWrite(6,LOW);

digitalWrite(5,LOW);

digitalWrite(4,LOW);

}

}

}

That it once you upload it you are ready to go connect the robot with battery and play. I hope that you are all like my project

Thank you all

Share

    Recommendations

    • Epilog X Contest

      Epilog X Contest
    • Faux-Real Contest

      Faux-Real Contest
    • Build a Tool Contest

      Build a Tool Contest

    55 Discussions

    0
    None
    xanderojones

    1 year ago

    Hi vigneshraja, I am in the middle of building this and have your vid a few times, could you tell which wheels are actually being driven by the motors, is it the front, back or all 4? thx for the help/guidance :)

    0
    None
    Varun Chothani

    2 years ago

    dude i am stuck at the first step , my serial monitor is not showing any o/p against i/p from receiver but instead when i am pulling and re inserting the o/p pin the 'tx' pin glows and some random value is displaced in the serial monitor

    2 replies
    0
    None
    DennisB36Varun Chothani

    Reply 2 years ago

    What???? Sorry too much i/p, o/p, xyx for me. Mine is working great, but can't interface with your acronyms.

    0
    None
    NeranjanMvigneshraja

    Reply 2 years ago

    i have a some code your but my pc in missin can you help me give the code me please ,

    my email address/////// neranjanmadhumal@gmail.com please send me...

    0
    None
    hlin8

    2 years ago

    i like

    0
    None
    Varun Chothani

    2 years ago

    dude i am stuck at the first step , my serial monitor is not showing any o/p against i/p from receiver but instead when i am pulling and re inserting the o/p pin the 'tx' pin glows and some random value is displaced in the serial monitor

    0
    None
    JeyenDvigneshraja

    Reply 2 years ago

    bro plse your project step by step connection images send me bro.....plszzzz

    0
    None
    AbdulS36

    Reply 3 years ago

    in arduino library delete the robotIRremote folder

    0
    None
    AbdulS36

    Reply 3 years ago

    in arduino library delete the robotIRremote folder

    0
    None
    Verkoda

    3 years ago

    did anyone else get "error: 'volatile struct irparams_t' has no member named 'rawlen'"?

    0
    None
    Verkoda

    3 years ago

    Surprisingly difficult to immediately get my hands on a LM293D, so I just picked up a SEEED motor shield. Fingers crossed

    0
    None
    TanmayL1satvik.gupta.129

    Reply 3 years ago

    http://www.amazon.in/dp/B0126YIXZ6/ref=wl_it_dp_o_pC_nS_ttl?_encoding=UTF8&colid=3BYAGD7INLQUW&coliid=I21GFVUSAD70F7