186Q1D5506 Documentation1
186Q1D5506 Documentation1
MASTER OF TECHNOLOGY
in
EMBEDDED SYSTEMS
by
CERTIFICATE
This is to certify that the Project report entitled “ STRUCTURING FREE SPACE AS A
HYPERGRAPH FOR ROVING ROBOT PATH PLANNING AND NAVIGATION” is
submitted by MUMMIDI SIRISHA (186Q1D5506) in partial fulfillment of the requirement for the
award of the degree of MASTER OF TECHNOLOGY in EMBEDDED SYSTEMS to Kakinada
Institute Of Engineering & Technology-II, Korangi is a record of a bonafide work carried out by
her under my guidance and supervision during the academic year 2018-2020.
The results embodied in this thesis have not been submitted to any other University
or Institute for the award of any degree or diploma.
External Examiner
DECLARATION
I hereby declare that the work which is being preserved in the dissertation entitled
“STRUCTURING FREE SPACE AS A HYPERGRAPH FOR ROVING ROBOT PATH
PLANNING AND NAVIGATION” submitted towards the partial fulfillment of the requirements
for the award of the degree of Master of Technology in Kakinada Institute of Engineering &
Technology-II, Korangi is an authentic record under supervision of MS. B.Mounica, M.Tech, Associate
Professor in Electronics and Communication Engineering, Kakinada Institute of Engineering and
Technology-II, Korangi.
The matter embodied in the dissertation report has not been submitted by me for the
award of any other degree. Further the technical details furnished in various chapters in this
thesis are purely related to the above project and there is no deviation from the theoretical and
practical point of view with respect to the Design, Development, Simulation, Implementation
and Testing. If the information furnished in the various chapters is not relevant to the topic and if
any mistakes happen to be found in the thesis, I am in a position to give proper explanation and
make necessary corrections.
MUMMIDI SIRISHA
(186Q1D5506)
ACKNOWLEDGMENT
MUMMIDI SIRISHA
(186Q1D5506)
LIST OF CONTENTS
CONTENTS PAGE NO
List of Figures i
List of Tables ii
Abbreviations iii-iv
CHAPTER 1: INTRODUCTION
Introduction to project 1
Over View 2
Literature review 4
CHAPTER 2: PROPOSED SYSTEM
Block Diagram 5
Power Supply 6
Transformer
Rectifier 7
Half Wave Rectifier
Full Wave Rectifier 8
Bridge Rectifier 9
Filter Capacitor 10
Voltage Regulator 11
IC 7805 12
L293D DC Motor
Operation of DC Motor 13
Types of DC Motors 15
DC Shunt Motor 16
DC Series Motor 17
DC Compound Motor 18
DC Motor Driver 19
Applications of DC Motors 21
WIFI Module 22
CHAPTER 3: ARDUINO CONTROLLER
History 25
Operation With Pins 26
Pins Descriptions 30
LIST OF CONTENTS
CONTENTS PAGENO
CHAPTER 4: SOFTWARE USED
Introduction 34
Interface
Design Considerations 35
Arduino Compiling 36
CHAPTER 5: METHODOLOGY
Explanation of Result 41
Advantages 44
CONCLUSION 45
REFERENCE S 46
LIST OF FIGURES
INTRODUCTION TO PROJECT:
A robot is a machine designed to execute one or more tasks repeatedly, with speed
and precision. There are as many different types of robots as there are tasks for them to
perform. A robot is a mechanical or virtual artificial agent, usually an electro-mechanical
machine that is guided by a computer program or electronic circuitry.
Wi-Fi is "short for wireless fidelity and is meant to be used generically when
referring of any type of 802.11 network, whether 802.11b, 802.11a, dual-band, etc. The
term is promulgated by the Wi-Fi Alliance. Wi-Fi networks consist of transmitting
specific radio waves to wirelessly connect computers to each other, to the Internet, or to
wired networks.
This new technology allows for Internet users to connect nearly 50 times faster
than standard modem dial-up. If both Wi-Fi technology and robot are introduced together
it will bring a great advantage. Thus we will be able to operate the robot with the help of
Wi-Fi and can make Hi do whatever we wish to.
The Mars Rover, which was sent to Mars to explore various features of the planet is an
autonomous robot which is programmed such that it performs the desired task as it is
intended to do. There are many such systems which are controlled either by Radio
Frequency transmission or by creating intelligence. Robots are called Non autonomous
robots.
These robots have the programming logic to do the desired task but the decision power
lies in the hand of controller (human) handling the robot. Here the interface can be made
using two methods.
A. Wired –The connection between controller and robot is maintained using wired
interface. These interfaces can be serial or parallel but the technology is transmission of
signal, which is sent in the form of specific pattern to the robot to carry out the specific
task, these patterns with the help of a microcontroller governing its motion.
B. Wireless –Here the connection between controller and robot is achieved by wireless
interface such as:
➢ Bluetooth
➢ Wi-Fi
At the present demand for robots in this developing world to carry out work effectively
and accurately, the development of cost effective robots is necessary.
The motion of robot controlling via internet is one of the easy means as it requires the
user to access the designated webpage to guide it. This system can be used in different
applications for detecting landmines in war field and for bomb detections by mounting a
metal detector sensor on it.
Further, the size of device can be miniaturized based upon specific applications.Two
important tasks required of a roving robot are path planning and navigation. Current path
planning methodologies express the constraints on object movement to provide a finite
approximation of all feasible paths.
The visibility graph (VGRAPH), developed in the late 1960's to navigate SHAKEY (an
early robot vehicle), consists of a start vertex, the vertices of the obstacles, a goal vertex,
and edges connecting any vertices which may be joined by an unobstructed straight line
path.
The chosen path is the shortest start-to-goal path in the VGRAPH, with each edge
weighted by the vertex distance. This approach has since been extended for use with any
polyhedral object with a given shape and orientation.
EXISTING SYSTEM:
One such example would be the use of a set of robotic routers to set up a
temporary communication path between a sender and a receiver that uses the controlled
mobility to the advantage of packet routing. We find that there exist only a limited
number of articles to be directly categorized as RWSN related works whereas there exist
a range of articles in the robotics and the WSN literature that are also relevant to this new
field of research.
To connect the dots, we first identify the core problems and research trends
related to RWSN such as connectivity, localization, routing, and robust flow of
information. Next, we classify the existing research on RWSN as well as the relevant
state-of-the-arts from robotics and WSN community according to the problems and trends
identified in the first step.
The Field of robotics has been exponential growth with the amalgamation of multiple
domains. The holistic approach is proving to be a boon, where communication
engineering, mechanical engineering, embedded system and so many more are together
creating robot with high flexibility.
Present technologies can only control robots up to a radius of 500 meters, but
our aim in this project is to target controlling a robot from a remote location which is
more than 1000 miles away. We use WIFI as the medium foe communication. We are
achieving this operation by communicating using two computers.
These computers connected to the Wi-Fi pass on serial data and also
communication is established between one computer located near the robot and a
microcontroller present, which control its trajectory. More over robot will be having its
own senses to dodge obstacle, which will also give about its position. Future scope of this
project is to establish the same connection but make the robot intelligent and autonomous.
BLOCK DIAGRAM:
Fig.2.1.block diagram
All digital circuits require regulated power supply. In this article we are going to
learn how to get a regulated positive supply from the mains supply.
Fig: 2.2 show the basic block diagram of a fixed regulated power supply. Let us go
through each block.
TRANSFORMER:
They are linked together through inductively coupled electrical conductors also
called as CORE. A changing current in the primary causes a change in the Magnetic Field
in the core & this in turn induces an alternating voltage in the secondary coil.
If load is applied to the secondary then an alternating current will flow through the
load. If we consider an ideal condition then all the energy from the primary circuit will be
transferred to the secondary circuit through the magnetic field.
Rectifier:
This is the simplest type of rectifier as you can see in the diagram a half wave
rectifier consists of only one diode. When an AC signal is applied to it during the positive
half cycle the diode is forward biased & current flows through it. But during the negative
half cycle diode is reverse biased & no current flows through it. Since only one half of the
input reaches the output, it is very inefficient to be used in power supplies.
Half wave rectifier is quite simple but it is very inefficient, for greater efficiency
we would like to use both the half cycles of the AC signal. This can be achieved by using
a center tapped transformer i.e. we would have to double the size of secondary winding &
provide connection to the center. So during the positive half cycle diode D1 conducts &
D2 is in reverse biased condition. During the negative half cycle diode D2 conducts & D1
is reverse biased. Thus we get both the half cycles across the load.
One of the disadvantages of Full Wave Rectifier design is the necessity of using a
center tapped transformer, thus increasing the size & cost of the circuit. This can be
avoided by using the Full Wave Bridge Rectifier.
3) Bridge Rectifier:
Full Bridge Wave Rectifier consists of four diodes namely D1, D2, D3 and D4.
During the positive half cycle diodes D1 & D4 conduct whereas in the negative half cycle
diodes D2 & D3 conduct thus the diodes keep switching the transformer connections so
we get positive half cycles in the output.
If we use a center tapped transformer for a bridge rectifier we can get both
positive & negative half cycles which can thus be used for generating fixed positive &
fixed negative voltages.
FILTER CAPACITOR:
Even though half wave & full wave rectifier give DC output, none of them provides a
constant output voltage. For this we require to smoothen the waveform received from the
rectifier. This can be done by using a capacitor at the output of the rectifier this capacitor
is also called as “FILTER CAPACITOR” or “SMOOTHING CAPACITOR” or
“RESERVOIR CAPACITOR”. Even after using this capacitor a small amount of ripple
will remain.
We place the Filter Capacitor at the output of the rectifier the capacitor will charge
to the peak voltage during each half cycle then will discharge its stored energy slowly
through the load while the rectified voltage drops to zero, thus trying to keep the voltage
as constant as possible.
Where,
Vr= accepted ripple voltage (should not be more than 10% of the voltage)
F= frequency of the waveform. A half wave rectifier has only one peak in one cycle so
F=25Hz
Whereas a full wave rectifier has Two peaks in one cycle so F=100Hz.
VOLTAGE REGULATOR:
Linear Voltage Regulator Also called as Resistive Voltage regulator because they
dissipate the excessive voltage resistively as heat.
They regulate the output voltage by switching the Current ON/OFF very rapidly.
Since their output is either ON or OFF it dissipates very low power thus achieving higher
efficiency as compared to linear voltage regulators. But they are more complex &
generate high noise due to their switching action. For low level of output power switching
regulators tend to be costly but for higher output wattage they are much cheaper than
linear regulators.
The most commonly available Linear Positive Voltage Regulators are the 78XX
series where the XX indicates the output voltage. And 79XX series is for Negative
Voltage Regulators.
After filtering the rectifier output the signal is given to a voltage regulator. The
maximum input voltage that can be applied at the input is 35V.Normally there is a 2-3
Volts drop across the regulator so the input voltage should be at least 2-3 Volts higher
than the output voltage. If the input voltage gets below the Vmin of the regulator due to
the ripple voltage or due to any other reason the voltage regulator will not be able to
produce the correct regulated voltage.
3) Circuit diagram:
The 7805 will automatically reduce output current if it gets too hot .The last two
digits represent the voltage; for instance, the 7812 is a 12-volt regulator. The 78xx series
of regulators is designed to work in complement with the 79xx series of negative voltage
regulators in systems that provide both positive and negative regulated voltages, since the
78xx series can't regulate negative voltages in such a system.
The 7805 & 78 is one of the most common and well-known of the 78xx series
regulators, as it's small component count and medium-power regulated 5V make it useful
for powering TTL devices.
SPECIFICATIONS IC 7805
Vout 5V
Output Imax 1A
2.4. L293D:
D.C. Motor:
A dc motor uses electrical energy to produce mechanical energy, very typically through
the interaction of magnetic fields and current-carrying conductors. The reverse process,
producing electrical energy from mechanical energy, is accomplished by
an alternator, generator or dynamo.
The DC motor has two basic parts: the rotating part that is called the armature and the
stationary part that includes coils of wire called the field coils. The stationary part is also
called the stator. Figure shows a picture of a typical DC motor, Figure shows a picture of
a DC armature, and Fig shows a picture of a typical stator.
From the picture you can see the armature is made of coils of wire wrapped around the
core, and the core has an extended shaft that rotates on bearings. You should also notice
that the ends of each coil of wire on the armature are terminated at one end of the
armature.
The termination points are called the commutate and this is where the brushes make
electrical contact to bring electrical current from the stationary part to the rotating part of
the machine.
Operation:
The DC motor you will find in modem industrial applications operates very
similarly to the simple DC motor described earlier in this chapter. Figure 12-9 shows an
electrical diagram of a simple DC motor.
Notice that the DC voltage is applied directly to the field winding and the brushes. The
armature and the field are both shown as a coil of wire. In later diagrams, a field resistor
will be added in series with the field to control the motor speed.
The current continues to flow through the coil back to the brush that is attached to other
end of the coil and returns to the DC power source. The current flowing in the armature
coil sets up a strong magnetic field in the armature.
The magnetic field in the armature and field coil causes the armature to begin
to rotate. This occurs by the unlike magnetic poles attracting each other and the like
magnetic poles repelling each other.
As the armature begins to rotate, the commutator segments will also begin to
move under the brushes.As an individual commutator segment moves under the brush
connected to positive voltage, it will become positive, and when it moves under a brush
connected to negative voltage it will become negative.
The commutator segments and brushes are aligned in such a way that the
switch in polarity of the armature coincides with the location of the armature's magnetic
field and the field winding's magnetic field. The switching action is timed so that the
armature will not lock up magnetically with the field. Instead the magnetic fields tend to
build on each other and provide additional torque to keep the motor shaft rotating.
When the voltage is de-energized to the motor, the magnetic fields in the
armature and the field winding will quickly diminish and the armature shaft's speed will
begin to drop to zero. If voltage is applied to the motor again, the magnetic fields will
strengthen and the armature will begin to rotate again.
Types of DC motors:
1. DC Shunt Motor,
2. DC Series Motor,
The rotational energy that you get from any motor is usually the battle between two
magnetic fields chasing each other. The DC motor has magnetic poles and an armature, to
which DC electricity is fed, The Magnetic Poles are electromagnets, and when they are
energized, they produce a strong magnetic field around them, and the armature which is
given power with a commentator, constantly repels the poles, and therefore rotates
commentator, constantly repels the poles, and therefore rotates.
In a 2 pole DC Motor, the armature will have two separate sets of windings, connected to
a commutator at the end of the shaft that are in constant touch with carbon brushes. The
brushes are static, and the commutator rotate and as the portions of the commutator
touching the respective positive or negative polarity brush will energize the respective
part of the armature with the respective polarity.
When the armature revolves between the poles, the magnetic field of the poles
induce power in the armature conductors, and some electricity is generated in the
armature, which is called back emf, and it acts as a resistance for the armature. Generally
an armature has resistance of less than 1 Ohm, and powering it with heavy voltages of
Direct Current could result in immediate short circuits. This back emf helps us there.
When a DC Shunt Motor is overloaded, if the armature becomes too slow, the reduction
of the back emf could cause the motor to burn due to heavy current flow thru the
armature.
The poles and armature are excited separately, and parallel, therefore it is called a Shunt
Motor.
When the load is increased then its efficiency increases with respect to the load applied. So these
are on Electric Trains and elevators.
3. DC Compound Motor:
A compound of Series and Shunt excitation for the fields is done in a Compound DC
Motor. This gives the best of both series and shunt motors. Better torque as in a series
motor, while the possibility to start the motor with no load.
Above is the diagram of a long shunt motor, while in a short shunt, the shunt coil will be
connected after the serial coil.
A Compound motor can be run as a shunt motor without connecting the serial coil at all
but not vice versa.
DC Motor Driver:
The L293 and L293D are quadruple high-current half-H drivers. The L293 is
designed to provide bidirectional drive currents of up to 1 A at voltages from 4.5 V to 36
V. The L293D is designed to provide bidirectional drive currents of up to 600-mA at
voltages from 4.5 V to 36 V.
Both devices are designed to drive inductive loads such as relays, solenoids, dc
and bipolar stepping motors, as well as other high-current/high-voltage loads in positive-
supply applications.
All inputs are TTL compatible. Each output is a complete totem-pole drive
circuit, with a Darlington transistor sink and a pseudo-Darlington source. Drivers are
enabled in pairs, with drivers 1 and 2 enabled by 1,2EN and drivers 3 and 4 enabled by
3,4EN.When an enable input is high, the associated drivers are enabled and their outputs
are active and in phase with their inputs.
When the enable input is low, those drivers are disabled and their outputs are
off and in the high-impedance state. With the proper data inputs, each pair of drivers
forms a full-H (or bridge) reversible drive suitable for solenoid or motor applications. On
the L293, external high-speed output clamp diodes should be used for inductive transient
suppression.
Department of ECE Page 18
A VCC1 terminal, separate from VCC2, is provided for the logic inputs to minimize
device power dissipation. The L293and L293D are characterized for operation from 0°C
to 70°C.
Features of L293D:
2. Elevators: The best bidirectional motors are DC motors. They are used in elevators.
Compound DC Motors are used for this application.
3. PC Fans, CD ROM Drives, and Hard Drives: All these things need motors, very
miniature motors, with great precision. AC motors can never imagine any application in
these places.
This small module allows microcontrollers to connect to a Wi-Fi network and make
simple TCP/IP connections using Hayes-style commands. However, at first there was
almost no English-language documentation on the chip and the commands it accepted.
The very low price and the fact that there were very few external components on the
module, which suggested that it could eventually be very inexpensive in volume, attracted
many hackers to explore the module, the chip, and the software on it, as well as to
translate the Chinese documentation.
The ESP8285 is an ESP8266 with 1 Mob of built-in flash, allowing the building of single-
chip devices capable of connecting to Wi-Fi.
I²S (Inter-IC Sound) interfaces with DMA(Direct Memory Access) (sharing pins with
GPIO),
UART (on dedicated pins, plus a transmit-only UART can be enabled on GPIO2), and
It employs a 32-bit RISC CPU based on the Ten silica Xtensa L106 running at 80 MHz
(or over clocked to 160 MHz). It has a 64 KB boot ROM, 64 KB instruction RAM and
96 KB data RAM. External flash memory can be accessed through SPI.
ESP8266 module is low cost standalone wireless transceiver that can be used for end-
point IOT developments.
There are many third-party manufacturers that produce different modules based on this
chip. So, the module comes with different pin availability options like,
ESP-01 comes with 8 pins (2 GPIO pins) – PCB trace antenna. (shown in above figure)
GPIO0 & GPIO2: - General Purpose I/O Pins. These pins decide what mode (boot or
normal) the module starts up in. It also decides whether the TX/RX pins are used for
Programming the module or for serial I/O purpose.
To program the module using UART, Connect GPIO0 to ground and GPIO2 to VCC or
leave it open. To use UART for normal Serial I/O leave both the pins open (neither VCC
nor Ground).
The Chips:
The ESP8266 series presently includes the ESP8266EX and ESP8285 chips.
It provides capabilities for 2.4 GHz Wi-Fi (802.11 b/g/n, supporting WPA/WPA2),
general-purpose input/output (16 GPIO), Inter-Integrated Circuit (I²C), analog-to-digital
conversion (10-bit ADC), Serial Peripheral Interface (SPI), I²S interfaces with DMA
(sharing pins with GPIO), UART (on dedicated pins, plus a transmit-only UART can be
enabled on GPIO2), and pulse-width modulation (PWM).
The processor core, called "L106" by Espressos, is based on Ten silica’s Diamond
Standard 106Micro 32-bit processor controller core and runs at 80 MHz (or over clocked
to 160 MHz). It has a 64 KB boot ROM, 32 KB instruction RAM, and 80 KB user data
RAM. (Also, 32 KB instruction cache RAM and 16 KB ETS system data RAM.)
External flash memory can be accessed through SPI. The silicon chip itself is housed
within a 5 mm × 5 mm Quad Flat No-Leads package with 33 connection pads — 8 pads
along each side and one large thermal/ground pad in the center.
ESP8266EX Overview
ESP8266EX Datasheet
Vendors have consequently created a multitude of compact printed circuit board modules
based around the ESP8266 chip. Some of these modules have specific identifiers,
including monikers such as "ESP-WROOM-02" and "ESP-01" through "ESP-14"; while
other modules might be ill-labeled and merely referred to by a general description — e.g.,
"ESP8266 Wireless Transceiver." ESP8266-based modules have demonstrated
themselves as a capable, low-cost, networkable foundation for facilitating end-point IOT
developments.
Arduino is an open-source hardware and software company, project and user community
that designs and manufactures single-board microcontrollers and microcontroller kits for
building digital devices and interactive objects that can sense and control both physically
and digitally. Its products are licensed under the GNU Lesser General Public License
(LGPL) or the GNU General Public License (GPL), permitting the manufacture of
Arduino boards and software distribution by anyone.
The boards feature serial communications interfaces, including Universal Serial Bus
(USB) on some models, which are also used for loading programs from personal
computers. The microcontrollers are typically programmed using a dialect of features
from the programming languages C and C++.
In addition to using traditional compiler tool chains, the Arduino project provides an
integrated development environment (IDE) based on the Processing language project. The
Arduino project started in 2003 as a program for students at the Interaction Design
Institute Ivrea in Ivrea, Italy, aiming to provide a low-cost and 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 name Arduino comes from a bar in Ivrea,
Italy, where some of the founders of the project used to meet. The bar was named after
Arduino of Ivrea, who was the margrave of the March of Ivrea and King of Italy from
1002 to 1014.
History:
The Arduino project was started at the Interaction Design Institute Ivrea (IDII) in Ivrea,
Italy. At that time, the students used a BASIC Stamp microcontroller at a cost of $50, a
considerable expense for many students. In 2003 Hernando Barragán created the
development platform wiring as a Master's thesis project at IDII, under the supervision of
Massimo Banzi and Caesarea’s.
Caesarea’s is known for co-creating, with Ben Fry, the Processing development platform.
The project goal was to create simple, low cost tools for creating digital projects by non-
engineers. The Wiring platform consisted of a printed circuit board (PCB) with
an ATmega168 microcontroller, an IDE based on Processing and library functions to
easily program the microcontroller.
In 2003, Massimo Banzi, with David Millis, another IDII student, and David Cuartielles,
added support for the cheaper ATmega8 microcontroller to Wiring. But instead of
continuing the work on Wiring, they forked the project and renamed it Arduino.
The initial Arduino core team consisted of Massimo Banzi, David Cuartielles, Tom Igoe
Gianluca Martino, and David Millis, but Barragán was not invited to participate.
Following the completion of the Wiring platform, lighter and less expensive versions
were distributed in the open-source community.
In April 2017, Wired reported that Musto had "fabricated his academic record.... On his
company's website, personal LinkedIn accounts, and even on Italian business documents,
Musto was until recently listed as holding a PhD from the Massachusetts Institute of
Technology. In some cases, his biography also claimed an MBA from New York
University."
Wired reported that neither University had any record of Musto's attendance, and Musto
later admitted in an interview with Wired that he had never earned those degrees.
Around that same time, Massimo Banzi announced that the Arduino Foundation would be
"a new beginning for Arduino." But a year later, the Foundation still hasn't been
established, and the state of the project remains unclear.
The controversy surrounding Musto continued when, in July 2017, he reportedly pulled
many Open source licenses, schematics, and code from the Arduino website, prompting
scrutiny and outcry.
In October 2017, Arduino announced its partnership with ARM Holdings (ARM). The
announcement said, in part, "ARM recognized independence as a core value of Arduino
... without any lock-in with the ARM architecture.” Arduino intends to continue to work
with a technology vendors and architectures.
Arduino is open-source hardware. The hardware reference designs are distributed under a
Creative Commons Attribution Share-Alike 2.5 license and are available on the Arduino
website. Layout and production files for some versions of the hardware are also available.
Although the hardware and software designs are freely available under copy left licenses,
the developers have requested the name Arduino to be exclusive to the official product
and not be used for derived works without permission.
The official policy document on use of the Arduino name emphasizes that the project is
open to incorporating work by others into the official product. Several Arduino-
compatible products commercially released have avoided the project name by using
various names ending in Arduino.
The boards use single or double-row pins or female headers that facilitate connections for
programming and incorporation into other circuits. These may connect with add-on
modules termed shields. Multiple and possibly stacked shields may be individually
addressable via an I²C serial bus.
Most boards include a 5 V linear regulator and a 16 MHz crystal oscillator or ceramic
resonator. Some designs, such as the Lily Pad, run at 8 MHz and dispense with the
onboard voltage regulator due to specific form-factor restrictions.
The default boot loader of the Arduino UNO is the opt boot loader. Boards are loaded
with program code via a serial connection to another computer.
Other variants, such as the Arduino Mini and the unofficial Board Arduino, use a
detachable USB-to-serial adapter board or cable, Bluetooth or other methods. When used
with traditional microcontroller tools, instead of the Arduino IDE, standard AVR in-
system programming (ISP) programming is used.
The Arduino board exposes most of the microcontroller's I/O pins for use by other
circuits. The Diecimila, Duemilanove , and current Uno 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 Board Arduino boards may provide male
header pins on the underside of the board that can plug into solder less breadboards.
Others are electrically equivalent but change the form factor, sometimes retaining
compatibility with shields, sometimes not. Some variants use different processors, of
varying compatibility.
Crystal Oscillator:
The crystal oscillator helps Arduino in dealing with time issues.
How does Arduino calculate time? The answer is, by using the
crystal oscillator. The number printed on top of the Arduino
crystal is 16.000H9H. It tells us that the frequency is 16,000,000
Hertz or 16 MHZ.
Vin (9) − This pin also can be used to power the Arduino board
from an external power source, like AC mains power supply.
Analog pins: The Arduino UNO board has six analog input
pins A0 through A5. These pins can read the signal from an
analog sensor like the humidity sensor or temperature sensor and
convert it into a digital value that can be read by the
microprocessor.
Digital I/O :
The Arduino UNO board has 14 digital I/O pins (15) (of which 6
provide PWM (Pulse Width Modulation) output. These pins can
be configured to work as input digital pins to read logic values (0
or 1) or as digital output pins to drive different modules like
LEDs, relays, etc. The pins labeled “~” can be used to generate
PWM.
AREF :
AREF stands for Analog Reference. It is sometimes, used to set
an external reference voltage (between 0 and 5 Volts) as the upper
/ limit for the analog input pins.
Introduction:
This project is implemented using following software’s:
Express PCB – for designing circuit
Arduino IDE compiler - for compilation part
Proteus 7 (Embedded C) – for simulation part
4.1: Interface:
When a project is first started you will be greeted with a yellow outline. This yellow
outline is the dimension of the PCB. Typically after positioning of parts and traces, move
them to their final position and then crop the PCB to the correct size. However, in
designing a board with a certain size constraint, crop the PCB to the correct size before
starting.
Fig: 4.1 show the toolbar in which the each button has the following functions:
The select tool: It is fairly obvious what this does. It allows you to move and manipulate
parts. When this tool is selected the top toolbar will show buttons to move traces to the
top / bottom copper layer, and rotate buttons.
The place trace: tool allows you to place a solid trace on the board of varying
thicknesses. The top toolbar allows you to select the top or bottom layer to place the trace
on.
The Insert Corner in trace: button does exactly what it says. When this tool is selected,
clicking on a trace will insert a corner which can be moved to route around components
and other traces.
The remove a trace button is not very important since the delete key will achieve the same
result.
Before starting a project there are several ways to design a PCB and one must be
chosen to suit the project’s needs. Single sided, or double sided?
When making a PCB you have the option of making a single sided board, or a double
sided board. Single sided boards are cheaper to produce and easier to etch, but much
harder to design for large projects. If a lot of parts are being used in a small space it may
be difficult to make a single sided board without jumper ring over traces with a cable.
While there’s technically nothing wrong with this, it should be avoided if the signal
travelling over the traces is sensitive (e.g. audio signals).
A double sided board is more expensive to produce professionally, more difficult to etch
on a DIY board, but makes the layout of components a lot smaller and easier. It should be
noted that if a trace is running on the top layer, check with the components to make sure
you can get to its pins with a soldering iron.
Large capacitors, relays, and similar parts which don’t have axial leads can NOT have
traces on top unless boards are plated professionally.
One example:
int sti=0;
String inputString = ""; // a string to hold incoming data
boolean stringComplete = false; // whether the string is complete
int m1a = 8;
int m1b = 9;
void beep()
{
digitalWrite(buzzer, LOW);delay(1500);digitalWrite(buzzer, HIGH);
}
void okcheck()
{
unsigned char rcr;
do{
rcr = Serial.read();
}while(rcr != 'K');
}
void setup()
{
// initialize serial:
Serial.begin(9600);serialEvent();
// serialEvent();
digitalWrite(buzzer, HIGH);
//cli();
//serialEvent();
Serial.write("AT\r\n"); delay(3000);//okcheck();
Serial.write("ATE0\r\n"); okcheck();
Serial.write("AT+CIPSERVER=1,23\r\n"); // okcheck();
lcd.clear();
lcd.print("Waiting For");
lcd.setCursor(0,1);
lcd.print("Connection");
do{
rcv = Serial.read();
}while(rcv != 'C');
lcd.clear();
lcd.print("Connected");
delay(1000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("IR1:"); //4,0
lcd.setCursor(0, 1);
lcd.print("IR2:"); //4,1
//serialEvent();
}
void loop()
{
if(digitalRead(ir1) == LOW)
{
lcd.setCursor(4,0);
lcd.print("ON ");
if(digitalRead(ir2) == LOW)
{
lcd.setCursor(4,1);
lcd.print("ON ");
if(stringComplete)
{
if(gchr == 'f' || gchr == 'F')
{gchr ='x';
robos='m';
digitalWrite(m1a, HIGH); digitalWrite(m1b, LOW);
digitalWrite(m2a, HIGH); digitalWrite(m2b, LOW);
}
void serialEvent()
{
while (Serial.available())
{
char inChar = (char)Serial.read();
if(inChar == '*')
{sti=2;
inputString += inChar;
}
/*
sensorValue = analogRead(analogInPin);
sensorValue = (sensorValue/9.31);
lcd.setCursor(1,1); //rc
lcd.print(sensorValue);
Serial.print(sensorValue);
*/
a=value/10000;
b=value%10000;
c=b/1000;
d=b%1000;
e=d/100;
f=d%100;
g=f/10;
h=f%10;
a=a|0x30;
c=c|0x30;
e=e|0x30;
g=g|0x30;
h=h|0x30;
Serial.write(a);
Serial.write(c);
Serial.write(e);
Serial.write(g);
Serial.write(h);
}
a=value/10000;
b=value%10000;
c=b/1000;
d=b%1000;
e=d/100;
f=d%100;
g=f/10;
h=f%10;
a=a|0x30;
c=c|0x30;
e=e|0x30;
g=g|0x30;
h=h|0x30;
// lcd.write(a);
// lcd.write(c);
lcd.write(e);
lcd.write(g);
lcd.write(h);
}
METHODOLOGY
Arduino board will get data thorough sensors and senses data to the Think speak
cloud. Where we can see our readings and visualize it, then this data will be collected
in app thorough App calls. User can view this reading through this app. This system
also contains humidity and temperature sensor and a smoke sensor to detect if there is
fire in field. All these reading will be sent to the cloud and user can read this value in
the app.
EXPLANATION OF RESULT:
Hence the two modules of controlling the robot is successfully tested and demonstrated.
Though controlling using Bluetooth limits the range of distance for communication, a
smart and easy means to guide a robot is achieved. Controlling the motion of robot via
internet is one of the easiest means as it requires the user to access the designated
webpage to guide it. This system can be used in defiance applications for detecting
landmines in war field and for bomb detections by mounting a metal detector sensor on it.
Further, the size of device can be miniaturized based upon specific applications. It is the
need of the hour to help the people after disasters. When buildings collapse, situations
arise where people are trapped inside the debris which is not located by the rescue teams.
This rover will help in these situations by going inside those places of need and get
information back about the disaster site, so that the rescue team can help the people who
are trapped inside.
REFERENCES:
[1] Andrea Z and Lorenzo V., “Internet of Things for Smart Cities,” IEEE Internet of
Things Journal, vol/issue: 1(1), Feb 2014.
[2] Isna K. and S. D. Sawant, “Integration of Cloud Computing and Internet of Things,”
International Journal of Advanced Research in Computer and Communication
Engineering, vol/issue: 5(4), Apr 2016.
[4] Jonathan K., “Using Active Queue Management to Assist IOT Application Flows in
Home Broad band Networks,” 2017 IEEE Internet of Things Journal, vol/issue: 4(5), Oct
2017.
[5] Pengfie Z., et al., “Secure Location of Things(SLOT) : Mitigating Local Spoofing
Attacks in Internet of Things,” IEEE Internet of Things Journal, vol. 4, Dec 2017.
[6] Akriti S., et al., “Intelligent Accident Management System using IoT and Cloud
Computing,” 2nd International Conference on Next Generation Computing Technologies,
Oct 2016.
[8] Priyal R. and Vanthana S., “Car Accident Notification System based on Internet of
Things,” International Journal of Computer Applications, vol/issue: 107(17), Dec 2014.
[9] H. M. Ali and Z. S. Alwan, “Car Accident Detection and Notification System Using
Smartphone,” International Journal of Computer Science and Mobile Computing,
vol/issue: 4(4), pp. 620-635, Apr 2015.
[13] Android Based Robot Implementation For Pick and Retain of Objects By Ranjith
Kumar Goud, B. Santhosh Kumar, (Oct 2014).
[18] Robot Control Design Based On Smartphone by Xiao Lu, Wenjun Liu, Haixia
Wang, Qia Sun, IEEE, 978-1-4673-1382, pp-2820-2823, Jun 2013.
[19] Android phone controlled robot using Bluetooth by Arpit Sharma, Reetesh Verma,
Saurabh Gupta, Sukhdeep kaur bhatia, IJEEE, Vol.7,pp-443-448, Nov- 2014.