Escolar Documentos
Profissional Documentos
Cultura Documentos
CERTIFICATE
K.ANUDEEP (13261A0426)
V.KRISHNA (14265A0403)
The results embodied in this report have not been submitted to any
other University or Institution for the award of any degree or diploma.
(Signature) (Signature)
Mr. D.V.S.Nagendra Kumar, Sr.Asst. Professor Dr. S P Singh
Advisor/Liaison Professor &Head
ACKNOWLEDGEMENT
Finally, we thank all the people who have directly or indirectly help us through
the course of our Project.
K.Pavan Sai
K.Anudeep
V.Krishna
Table of contents
ACKNOWLEDGEMENTS
ABSTRACT
CHAPTER 1. OVERVIEW
1.1Introduction
1.2Aim of the project
1.3Significance and applications
1.4Organization of work
CHAPTER 2. FUNDAMENTALS OF ARDUINO UNO
2.1 Introduction
3.1 Introduction
4.2 Result
REFERENCES
CHAPTER-1 OVERVIEW
1.1 INTRODUCTION
The promise of robotics is easy to describe but hard for the mind to grasp.
Robots hold the promise of moving and transforming materials with the same
elan and ease as a computer program transforms data. Today, robots mine
minerals, assemble semi-processed materials into automobile components, and
assemble those components into automobiles. On the immediate horizon are
self-driving cars, robotics to handle household chores, and assemble specialized
machines on demand. It is not unreasonable to imagine robots that are given
some task, such as reclaim desert into photovoltaic cells and arable land, and left
to make their own way. Then the promise of robotics exceeds the minds grasp.
In summary, robotics is the field related to science and technology primarily
related to robotics. It stands tall by standing the accomplishments of many other
fields of study.
2.1 INTRODUCTION
HISTORY OF ARDUINO
The first Arduino was introduced in 2005, aiming to provide a low cost, easy way
for novices and professionals to create devices that interact with their
environment using sensors and actuators. Common examples of such devices
intended for beginner hobbyists include simple robots, thermostats, and motion
detectors.
The Arduino board exposes most of the microcontroller's I/O pins for use
by other circuits. The Diecimila, Duemilanove, and currentUno]provide 14 digital
I/O pins, six of which can produce pulse-width modulated signals, and six analog
inputs, which can also be used as six digital I/O pins. These pins are on the top
of the board, via female 0.1-inch (2.54 mm) headers. Several plug-in application
shields are also commercially available. The Arduino Nano, and Arduino-
compatible Bare Bones Board and Boarduino boards may provide male header
pins on the underside of the board that can plug into solderless breadboards.
Many Arduino-compatible and Arduino-derived boards exist. Some are
functionally equivalent to an Arduino and can be used interchangeably. Many
enhance the basic Arduino by adding output drivers, often for use in school-level
education, to simplify making buggies and small robots. Others are electrically
equivalent but change the form factor, sometimes retaining compatibility with
shields, sometimes not. Some variants use different processors, of varying
compatibility.
The Arduino project provides the Arduino integrated development
environment (IDE), which is a cross-platform application written in the
programming language Java.It originated from the IDE for the
languages Processing and Wiring. It is designed to introduce programming to
artists and other newcomers unfamiliar with software development. It includes a
code editor with features such assyntax highlighting, brace matching, and
automatic indentation, and provides simple one-click mechanism to compile and
load programs to an Arduino board. A program written with the IDE for Arduino is
called a "sketch".
Looking at the board from the top down, this is an outline of what you will see
(parts of the board you might interact with in the course of normal use are
highlighted):
Starting clockwise from the top center:
Digital Pins 0-1/Serial In/Out - TX/RX (dark green) - These pins cannot be
used for digital i/o (digitalRead and digitalWrite) if you are also using serial
communication (e.g. Serial.begin).
Toggles External Power and USB Power (place jumper on two pins closest
to desired supply) - SV1 (purple)
USB (used for uploading sketches to the board and for serial
communication between the board and the computer; can be used to power the
board) (yellow)
Microcontrollers
In addition to the specific functions listed below, the digital pins on an Arduino
board can be used for general purpose input and output via
the pinMode(), digitalRead(), and digitalWrite() commands. Each pin has an
internal pull-up resistor which can be turned on and off using digitalWrite() (w/ a
value of HIGH or LOW, respectively) when the pin is configured as an input. The
maximum current per pin is 40 mA.
Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL
serial data. On the Arduino Diecimila, these pins are connected to the
corresponding pins of the FTDI USB-to-TTL Serial chip. On the Arduino BT, they
are connected to the corresponding pins of the WT11 Bluetooth module. On the
Arduino Mini and LilyPad Arduino, they are intended for use with an external TTL
serial module (e.g. the Mini-USB Adapter).
LED: 13. On the Diecimila and LilyPad, there is a built-in LED connected
to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is
LOW, it's off.
Analog Pins
In addition to the specific functions listed below, the analog input pins support 10-
bit analog-to-digital conversion (ADC) using the analogRead() function. Most of
the analog inputs can also be used as digital pins: analog input 0 as digital pin 14
through analog input 5 as digital pin 19. Analog inputs 6 and 7 (present on the
Mini and BT) cannot be used as digital pins.
Power Pins
Vin (sometimes labelled "9V"): The input voltage to the Arduino board
when it's using an external power source (as opposed to 5 volts from the USB
connection or other regulated power source). You can supply voltage through this
pin, or, if supplying voltage via the power jack, access it through this pin. Note
that different boards accept different input voltages ranges, please see
the documentation for your board. Also note that the LilyPad has no VIN pin and
accepts only a regulated input.
Other Pins
Reset: Bring this line LOW to reset the microcontroller. Typically used to
add a reset button to shields which block the one on the board.
The Arduino IDE supports the languages C and C++ using special rules to
organize code. The Arduino IDE supplies a software library called Wiring from the
Wiring project, which provides many common input and output procedures. A
typical Arduino C/C++ sketch consist of two functions that are compiled and
linked with a program stub main() into an executable cyclic executive program:
setup(): a function that runs once at the start of a program and that can
initialize settings.
setup()
The setup() function is called when a sketch starts. Use it to initialize
variables, pin modes, start using libraries, etc. The setup Example
int buttonPin = 3;
void setup()
Serial.begin(9600);
pinMode(buttonPin, INPUT);
void loop()
// ...
Function will only run once, after each powerup or reset of the Arduino board.
loop()
After creating a setup() function, which initializes and sets the initial values, the
loop() function does precisely what its name suggests, and loops consecutively,
allowing your program to change and respond. Use it to actively control the
Arduino board.
Example
void setup()
Serial.begin(9600);
pinMode(buttonPin, INPUT);
void loop()
if (digitalRead(buttonPin) == HIGH)
Serial.write('H');
else
Serial.write('L');
delay(1000);
}\
2.4 ADVANTAGES
1- Ready to Use: The biggest advantage of Arduino is its ready to use structure. As
Arduino comes in a complete package form which includes the 5V regulator, a burner, an
oscillator, a micro-controller, serial communication interface, LED and headers for the
connections. You don't have to think about programmer connections for programming or any
other interface. Just plug it into USB port of your computer and that's it. Your revolutionary
idea is going to change the world after just few words of coding.
2- Examples of codes: Another big advantage of Arduino is its library of examples
present inside the software of Arduino. I'll explain this advantage using an example ofvoltage
measurement. For example if you want to measure voltage using ATmega8 micro-controller
and want to display the output on computer screen then you have to go through the whole
process. The process will start from learning the ADC's of micro-controller for measurement,
went through the learning of serial communication for display and will end at USB - Serial
converters. If you want to check this whole process click on the link below.
DC voltage measurement using Atmel AVR micro-controller .
3- Effortless functions: During coding of Arduino, you will notice some functions which
make the life so easy. Another advantage of Arduino is its automatic unit conversion
capability. You can say that during debugging you don't have to worry about the
unitsconversions. Just use your all force on the main parts of your projects. You don't have to
worry about side problems.
4- Large community: There are many forums present on the internet in which people are
talking about the Arduino. Engineers, hobbyists and professionals are making their projects
through Arduino. You can easily find help about everything. Moreover the Arduino website
itself explains each and every functions of Arduino.
This project is designed to control the intensity of a LED based street light
powered by the solar powerfrom a photo voltaic cell using Arduino.
3.1 INTRODUCTION
Given the exceptional speed with which bots can perform their relatively
simple routines, bots may also be implemented where a response speed
faster than that of humans is required.
Bots are routinely used on the internet where the emulation of human
activity is required.
Given the exceptional speed with which bots can perform their relatively
simple routines, bots may also be implemented where a response speed
faster than that of humans is required. Common examples including
gaming, whereby a player achieves a significant advantage by
implementing some repetitive routine with the use of a bot rather than
manually, or auction-site robot where last-minute bid-placing speed may
determine who places the winning bid using a bot to place counterbids
affords a significant advantage over bids placed manually.
The success of bots may be largely due to the very real difficulty in
identifying the difference between an online interaction with a bot versus a
live human. Given that bots are relatively simple to create and
implement,] they are a very powerful tool with the potential to influence
every segment of the World Wide Web
3.2 COMPONENTS AND CONNECTIONS
MATERIALS REQUIRED
Arduino software
Breadboard
100rpm dc motors
Jumper wires
9V battery
Battery clips
The Arduino board will be the brain of the robot, as it will be running the software
that will control all the other parts.
My son had an old Arduino Uno that he ended up not using, so I did not need to
buy one. There are plenty of Arduino models or even Arduino compatible boards
that can be used.
2. The Prototyping Board and Cables
One of the restrictions I decided to impose myself with this project is that I would
not do any soldering, so that I can assemble and disassemble the robot to my
heart's content without ruining any parts.
Then I needed a platform where I can easily connect all the components
together. For this kind of task people typically use a breadboard
The Arduino board is connected to a computer via a USB port. The USB
connection is used to upload software and also can be used as a power source
when testing.
I took a cable from an old printer I have, so I did not need to buy this item. If you
need to buy a cable, make sure you get the right connectors. The computer side
is the standard A-Male, but on the Arduino side you need a B-Male connector.
4. The Vehicle Kit
There are many choices for robot friendly vehicles. My only requirements were
that it had a large platform where all the parts can be mounted and that it came
with the wheels and motors.
In the end I decided to get the Magician Chassis. This is a kit that is extremely
simple to build. It includes two motors and a battery box that plugs directly into
the Arduino board.
After connecting the BOT it looks like the one above and is ready to receive the
inputs from the receiver.
3.3 PROGRAM CODE
char ByteReceived;
void setup()
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
Serial.begin(9600);
Serial.println("(Decimal)(Hex)(Character)");
Serial.println();
void loop()
if (Serial.available() > 0)
{
ByteReceived = Serial.read();
Serial.print(ByteReceived);
Serial.print(" ");
Serial.print(ByteReceived, HEX);
Serial.print(" ");
Serial.print(char(ByteReceived));
/*FORWARD DIRECTION*/
if(ByteReceived == 'F')
digitalWrite(12, HIGH);
digitalWrite(13, HIGH);
delay(800);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
Serial.print(" FRONT");
/*RIGHT DIRECTION*/
if(ByteReceived == 'R')
digitalWrite(12, HIGH);
digitalWrite(13, LOW);
delay(500);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
Serial.print(" RIGHT");
}
/*LEFT DIRECTION*/
if(ByteReceived == 'L')
digitalWrite(12, LOW);
digitalWrite(13, HIGH);
delay(550);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
Serial.print(" LEFT");
/*BACKWARD DIRECTION*/
if(ByteReceived == 'B')
digitalWrite(12, LOW);
digitalWrite(13, HIGH);
delay(1250);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
digitalWrite(13, HIGH);
delay(800);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
Serial.print("BACK");
}
if(ByteReceived == 'S')
digitalWrite(12, LOW);
digitalWrite(13, LOW);
Serial.print(" STOP");
Serial.println();
}
CHAPTER -4 RESULTS AND CONCLUSIONS
The Serial Monitor is a separate pop-up window that acts as a separate terminal
that communicates by receiving and sending Serial Data. See the icon on the far
right of the image above.
Serial Data is sent over a single wire (but usually travels over USB in our case) and
consists of a series of 1's and 0's sent over the wire. Data can be sent in both
directions .
The serial monitor is the 'tether' between the computer and your Arduino - it lets
you send and receive text messages, handy for debugging and also controlling the Arduino
from a keyboard! For example, you will be able to send commands from your computer to
turn on LEDs.
4.2 RESULT OF THE PROJECT