You are on page 1of 12

Arduino Based Robot

Starter Kit
http://www.robokits.co.in
http://www.robokitsworld.com

Page 1

1. Introduction:
This latest robotics kit from Robokits India has
been designed to be a cost-effective learning platform for robotics and
reduce the amount of soldering and interconnection required. It
includes Roboduino Uno R3, Motor Shield, Four DC geared motors,
Four 2cm wheels and one advance robot chassis.
The kit is extendable into many bots with chassis and Motor Shield
having many options for mounting additional sensors and actuators.

2. Components Required:
1. Roboduino Uno:
Roboduino is based on open source designs of Arduino. Arduino is
an open-source physical computing platform based on a simple i/o
board and a development environment that implements
the Processing/Wiringlanguage. Roboduino can be used to develop
stand-alone interactive objects or can be connected to software on
your computer (e.g. Flash, Processing, MaxMSP).

Features:

ATmega328 microcontroller
Input voltage - 7-12V
14 Digital I/O Pins (6 PWM outputs)
6 Analog Inputs
32k Flash Memory
16Mhz Clock Speed

http://www.robokits.co.in
http://www.robokitsworld.com

Page 2

2. Motor Shield:
Motor Driver Shield for Arduino to power DC, Stepper and Servo
motors for simple to medium complex projects.

Features:

4 H-Bridges: L293D chipset provides 0.6A per bridge (1.2A peak)


with thermal shutdown protection, internal kickback protection
diodes. Can run motors on 4.5VDC to 25VDC.
Two 5V hobby servos can be connected
Up to 4 bi-directional DC motors with individual 8-bit speed
selection
Up to 2 stepper motors (unipolar or bipolar) with single coil,
double coil or interleaved stepping.
Pull down resistors keep motors disabled during power-up
Arduino reset button brought up top
Dimensions: 69mm x 53mm x 14.3mm

3. DC motor 300 Rpm:


Features:

300RPM 12V DC motors with Gearbox


3000RPM base motor
6mm shaft diameter with internal hole
125gm weight
Same size motor available in various rpm
0.35kgcm torque
No-load current = 60 mA(Max), Load current = 300 mA(Max)

http://www.robokits.co.in
http://www.robokitsworld.com

Page 3

4. Wheels 2 Cm Width:
Features:

68mm diameter
2cm width
Hole diameter 6.1 mm
Screw for fastening on motor shaft
Made from virgin plastic

5. Advance Chassis:
Powder coated Metal chassis for robots. Easy to mount the motors
on place by using normal motor mount nut. The body contains
perforated holes for easy mounting of various size circuit boards
and other mechanical components.

Dimensions:
Length : 190mm
Width : 105mm
Height : 40mm

3. Connection:
Motor and wheels Connections:
Connect the motor according to the motor no. and connections. It
is optional and can be altered as per necessity.

http://www.robokits.co.in
http://www.robokitsworld.com

Page 4

Motor Terminals
Objects

M1 - A

M2 - B

M3 - C

M4 - D

Assemble each motor to advance chassis using nut provided with


the DC motor.
Make sure you pass the motor wires through the perforated holes
of advance chassis for better and cleaner connections of wires to
the motor driver.

http://www.robokits.co.in
http://www.robokitsworld.com

Page 5

Connect each wheel to the motor shaft using CSK screw provided
with the wheel. Pass the screw through hole given in the shaft for
rigid connections.

Electronics Connection:

Mount the Roboduino motor shield on top of Roboduino board.


Note: Check for the orientation as per the image.

http://www.robokits.co.in
http://www.robokitsworld.com

Page 6

Wire the motor and battery to their respective terminal as


mentioned on the robotic shield.
Kindly provide adequate insulation using cardboard, foam sheet
or elevating the board using spacers between the metal chassis
and Roboduino uno board to avoid damaging due to electrical
shorting.

http://www.robokits.co.in
http://www.robokitsworld.com

Page 7

4. Reference Code:
Install The Motor.zip lib into the library folder of Arduino Ide for
using Motor driver functions
#include <Motor_Shield.h> // include motor driver lib for using motor
fuctions
int i,j;
DCMotor Amotor(1);
DCMotor Bmotor(2);
DCMotor Cmotor(3);
DCMotor Dmotor(4);

// creating objects.

void setup() {

}
void loop()
{
for(i=0;i<=255;i++)
{
Forward(i);
delay(10);
}
for(i;i>=1;i--)
{
Forward(i);
delay(10);
}
for(j=0;j<=255;j++)
{
Backward(j);
http://www.robokits.co.in
http://www.robokitsworld.com

Page 8

delay(10);
}
for(j;j>=1;j--)
{
Backward(j);
delay(10);
}
Left();
delay(3000);
Right();
delay(3000);
}
////*******Robot control functions********////
void Forward(unsigned char Speed)
// Robot runs in forward
direction
{
Amotor.run(FORWARD);
Bmotor.run(FORWARD);
Cmotor.run(FORWARD);
Dmotor.run(FORWARD);
Amotor.setSpeed(Speed);
Bmotor.setSpeed(Speed);
Cmotor.setSpeed(Speed);
Dmotor.setSpeed(Speed);
}
void Backward(unsigned char Speed)
direction
{
Amotor.run(BACKWARD);
Bmotor.run(BACKWARD);
Cmotor.run(BACKWARD);
Dmotor.run(BACKWARD);
http://www.robokits.co.in
http://www.robokitsworld.com

// Robot runs in backward

Page 9

Amotor.setSpeed(Speed);
Bmotor.setSpeed(Speed);
Cmotor.setSpeed(Speed);
Dmotor.setSpeed(Speed);
}
void Right(void)
// Skid steer left turn.
{
Amotor.run(FORWARD);
Cmotor.run(BACKWARD);
Bmotor.run(BACKWARD);
Dmotor.run(FORWARD);
Amotor.setSpeed(255);
Bmotor.setSpeed(255);
Cmotor.setSpeed(255);
Dmotor.setSpeed(255);
}
void Left(void)
// Skid steer right turn.
{
Amotor.run(BACKWARD);
Cmotor.run(FORWARD);
Bmotor.run(FORWARD);
Dmotor.run(BACKWARD);
Amotor.setSpeed(255);
Bmotor.setSpeed(255);
Cmotor.setSpeed(255);
Dmotor.setSpeed(255);
}
void Right_Forward()
// Right side motor forward
{
Amotor.run(FORWARD);
Dmotor.run(FORWARD);
Amotor.setSpeed(255);
Dmotor.setSpeed(255);
http://www.robokits.co.in
http://www.robokitsworld.com

Page 10

}
void Right_Backward()
// Right side motor backward
{
Amotor.run(BACKWARD);
Dmotor.run(BACKWARD);
Amotor.setSpeed(255);
Dmotor.setSpeed(255);
}
void Left_Forward()
// Left side motor forward
{
Bmotor.run(FORWARD);
Cmotor.run(FORWARD);
Bmotor.setSpeed(255);
Cmotor.setSpeed(255);
}
void Left_Backward()
// Left side motor backward
{
Bmotor.run(BACKWARD);
Cmotor.run(BACKWARD);
Bmotor.setSpeed(255);
Cmotor.setSpeed(255);
}

void Stop(void)
// All motor halt
{
Amotor.setSpeed(0);
Bmotor.setSpeed(0);
Cmotor.setSpeed(0);
Dmotor.setSpeed(0);
}

http://www.robokits.co.in
http://www.robokitsworld.com

Page 11

Ideas for extending the Robots.


1. Obstacle Avoider
Interface ultra sonic sensor and make an Autonomous Obstacle avoider
robot.

2. PS2 Remote controlled Robot


Make your robot wireless with RF 2.4GHz coded Remote control. Ideal
for making any DC motor controlled robot. It can drive robot in skid
steer control with analog speed control.

http://www.robokits.co.in
http://www.robokitsworld.com

Page 12

You might also like