CUSTOM BUILD 4WD BLUETOOTH RC ROBOT USING PVC

31,724

419

119

Published

Introduction: CUSTOM BUILD 4WD BLUETOOTH RC ROBOT USING PVC

Hi guys this is my second project done by pvc , you may wonder why i choose pvs to built my projects, coz i have bunch of pvc which are leftovers of my house plumping work .and i dont wanna waste them .

PROJECT DETAILS

This is a simple Bluetooth based 4 wheel drive rc robot built in pvc frame , the advantages of this frame are

  1. It is strong and stable.
  2. so easy to make.
  3. high load capability.

  4. low cost (for me its free of cost)

  5. most important thing is it can give equal amount of pressure for all 4 wheels
  6. so its 99.9% accurate (means it can go straight )


    The reason why i discovered this idea:- i live in a place where there is less availability of robotics parts ,
    the only frame which i can get from those shop is the one which built with metal sheet ,for cheep rate .but thats notstable ,some times all wheel wont touch the ground equally and unequal distribution of force ,it cause the robot to show improper movements while its turning .

Step 1: Parts Needed

  1. Arduino -1 nos
  2. Bluetooth module - 1 nos
  3. Gear motor (any rpm ,i used 200rmp) - 4 nos
  4. Robot wheel (any size) -4 nos
  5. 12 Battery - 1nos
  6. Lm293d motor driver ic/board - 1 nos
  7. Android bluetooth rc mobile app
  8. Jumper wires,9v plug for arduino ..leds optional

    For frame

  9. 1/2 m pvc pipe -1 nos
  10. Pvc tees - 2 nos
  11. Pvc coupler - 4 nos
  12. Axo blade - 1

  13. Pvc gum paste

Step 2: Building the Pvc Frame

Go threw the picture for guidance,any more doubts ? leave comment !!

Step 3: Programing/App for Boat/ciruit

The program for the roboat is so simple
char val; 
int a1= 5; int a2= 6; int b1= 9; int b2= 10; int l1= 13; void setup() {
  pinMode(a1, OUTPUT);  
  pinMode(a2, OUTPUT);  
  pinMode(b1, OUTPUT); 
  pinMode(b2, OUTPUT);  
  pinMode(l1, OUTPUT);  
  
  Serial.begin(9600);       
}
void loop() {
  if( Serial.available() >0 )       
  {
    val = Serial.read(); 
Serial.println(val);     
  }
  if( val == 'F' )               
  {
    digitalWrite(a1, HIGH);  
    digitalWrite(a2, LOW);
    digitalWrite(b1, HIGH);  
    digitalWrite(b2, LOW); 
  }
      
  if( val == 'B')
 {
    digitalWrite(a1, LOW);  
    digitalWrite(a2, HIGH);
    digitalWrite(b1, LOW);  
    digitalWrite(b2, HIGH); 
  }
  
if( val == 'R' )               
  {
    digitalWrite(a1, HIGH);  
    digitalWrite(a2, LOW);
    digitalWrite(b1, LOW);  
    digitalWrite(b2, HIGH); 
  }
    
if( val == 'L' )               
  {
    digitalWrite(a1, LOW);  
    digitalWrite(a2, HIGH);
    digitalWrite(b1, HIGH);  
    digitalWrite(b2, LOW); 
  }
  if( val == 'S' )               
  {
    digitalWrite(a1, LOW);  
    digitalWrite(a2, LOW);
    digitalWrite(b1, LOW);  
    digitalWrite(b2, LOW); 
  }
  if( val == 'G' )               
  {
    digitalWrite(a1, LOW);  
    digitalWrite(a2, LOW);
    digitalWrite(b1, HIGH);  
    digitalWrite(b2, LOW); 
  }
  if( val == 'I' )               
  {
    digitalWrite(a1, HIGH);  
    digitalWrite(a2, LOW);
    digitalWrite(b1, LOW);  
    digitalWrite(b2, LOW); 
  }  
    if( val == 'J' )               
  {
    digitalWrite(a1, LOW);  
    digitalWrite(a2, HIGH);
    digitalWrite(b1, LOW);  
    digitalWrite(b2, LOW); 
  }  
    if( val == 'H' )               
  {
    digitalWrite(a1, LOW);  
    digitalWrite(a2, LOW);
    digitalWrite(b1, LOW);  
    digitalWrite(b2, HIGH); 
  }  
  
  delay(100);    
       
 if( val == 'X' )               
  {
    digitalWrite(l1, HIGH);  
  } else { 
    digitalWrite(l1, LOW);   
  }
 
}

Step 4: Finalizing

Hope you guys liked my project.if so please do vote for me :)

i guess this bot is one of the easiest project in instructables. Enjoy!!


Thanks

Step 5: Testing Video

PLEASE DO VOTE FOR ME(not aiming for 1st/2nd prize)

Share

Recommendations

  • Woodworking Contest

    Woodworking Contest
  • Make it Move Contest

    Make it Move Contest
  • Casting Contest

    Casting Contest
user

We have a be nice policy.
Please be positive and constructive.

Tips

Questions

119 Comments

Hey friend, I'm a amature robotics learner.. I want to know that what is a shield? And secondly can u give the the links for buying all the electronic parts u used in this project.. If i have to use 2 300 rpm motors then what should be the coding? I want to ise the robot for roborace compitition where the robot have to cross various obstacles.. And also should climb a slope of 45°... waiting eagerly for ur suggestions and reply and I just love our project

1 reply

Mail me @ tominjose1993@gmail.com

contact me on tomin.jose1@gmail

nalla pravarthi ഗുഡ് വര്ക് - നല്ല പ്രവര്ത്തി

3 replies

haha thank you ,you from kl or tn?

Tamil Nadu. I Don't know Malayalam. Just used translate to wish you.

Very good thinking!!

Im a novice learner please help me... Which bluetooth module should i use Hc05 ? N thr lm293d motor driver is connected to only two motors? Im making this project and i loved it
Please mail me : ckjha017@gmail.com

Can you please e-mail me the old version of the app
And
Yeah, i really liked your project

help me whats wrong in this code only horn is working

char val;

int a1= 5;

int a2= 6;

int b1= 9;

int b2= 10;

int l1= 13;

int l2= 8;

int l3= 7;

void setup() {

pinMode(a1, OUTPUT);

pinMode(a2, OUTPUT);

pinMode(b1, OUTPUT);

pinMode(b2, OUTPUT);

pinMode(l1, OUTPUT);

Serial.begin(9600);

}

void loop() {

if( Serial.available() >0 )

{

val = Serial.read();

Serial.println(val);

}

if( val == 'F' )

{

digitalWrite(a1, HIGH);

digitalWrite(a2, LOW);

digitalWrite(b1, HIGH);

digitalWrite(b2, LOW);

}

if( val == 'B')

{

digitalWrite(a1, LOW);

digitalWrite(a2, HIGH);

digitalWrite(b1, LOW);

digitalWrite(b2, HIGH);

}

if( val == 'R' )

{

digitalWrite(a1, HIGH);

digitalWrite(a2, LOW);

digitalWrite(b1, LOW);

digitalWrite(b2, HIGH);

}

if( val == 'L' )

{

digitalWrite(a1, LOW);

digitalWrite(a2, HIGH);

digitalWrite(b1, HIGH);

digitalWrite(b2, LOW);

}

if( val == 'S' )

{

digitalWrite(a1, LOW);

digitalWrite(a2, LOW);

digitalWrite(b1, LOW);

digitalWrite(b2, LOW);

}

if( val == 'G' )

{

digitalWrite(a1, LOW);

digitalWrite(a2, LOW);

digitalWrite(b1, HIGH);

digitalWrite(b2, LOW);

}

if( val == 'I' )

{

digitalWrite(a1, HIGH);

digitalWrite(a2, LOW);

digitalWrite(b1, LOW);

digitalWrite(b2, LOW);

}

if( val == 'J' )

{

digitalWrite(a1, LOW);

digitalWrite(a2, HIGH);

digitalWrite(b1, LOW);

digitalWrite(b2, LOW);

}

if( val == 'H' )

{

digitalWrite(a1, LOW);

digitalWrite(a2, LOW);

digitalWrite(b1, LOW);

digitalWrite(b2, HIGH);

}

delay(0.00001);

if( val == 'V' )

{

digitalWrite(l1, HIGH);

}

if( val == 'v' )

{

digitalWrite(l1, LOW);

}

if( val == 'U' )

{

digitalWrite(l2, HIGH);

}

if( val == 'u' )

{

digitalWrite(l2, LOW);

}

if( val == 'W' )

{

digitalWrite(l3, HIGH);

}

if( val == 'w' )

{

digitalWrite(l3, LOW);

}

}

Hey what help you need?

can u give me a little elp by using ardumoto in this project plz??

can i use ardumoto arduino(http://www.ptrobotics.com/motor/827-ardumoto-motor...

shield instead using Lm293d motor driver ic/board

1 reply

you can use any motor driver shield

http://www.ptrobotics.com/motor/827-ardumoto-motor-driver-shield.html?search_query=motor+driver&results=95