You are on page 1of 48

CHAPTER 1

INTRODUCTION

The project aims towards providing an economical and reliable solution for pothole
filling process. The idea behind this project is to help the society with technology that will
provide an easy solution to the real life problem of monotonous task of filling the potholes.
This project builds a robot which autonomously does the whole job of detecting and filling
the pothole at regular periods to ensure the safety of the passengers on the road. Using real
time and embedded system we present a prototype of the design, later this can be fabricated
into a real life model with ease.

The aim of this project is to provide solution to the real life problem of fixing the
potholes on the road by using embedded and real time systems. The autonomous filler robot
will detect the potholes on the road and start filling them automatically and does the real time
scanning for the filled condition. Filling a pothole is a monotonous task, it should be done at
a regular periods to maintain the roads. Instead of manual filling of a pothole, automatic
filling by a robot saves lot of time and funds which were wasted on the labours who work for
repairing these potholes.

In this project, Firebird V robot from NEX robotics is used as a platform for
developing the robot. The basic platform is further built to have a mechanical assembly and is
coded in such a way that it performs the pothole filling action by itself (without the aid of the
user). The robot is navigated by means of two 75RPM DC motors, it also has position
encoder to move exactly to a particular distance. It is fixed with four sharp sensors mounted
on arm assembly to detect the potholes on the road. The arm assembly is rotated with the aid
of servo motor. To fill the pothole the dispenser mechanism is activated by the stepper motor.
The design of the mechanical assemblies can be of various sizes depending on the needs of
the robot. The prototype design is limited with capabilities but real life model can be
fabricated with little modifications.

In India, roadways are one of the major kinds of transport. Potholes on the roads pose
a serious problem to the health and deeper potholes may even cause accident. Potholes should
be regularly fixed by the labourers, finding a pothole and filling it manually is a monotonous
task. Keeping these facts in mind, a robot is designed to eliminate the above problem.

1

This project is applicable for fixing a pothole. This project is based on a microcontroller
based autonomous robot which will automatically detect and fill the potholes which are
present on the road. When all potholes are filled the robot indicates it with a buzzer sound.

1.1 Existing System
Existing System for pothole detection and filling is manually finding the potholes and
filling it .This Process takes times and requires more man power. Accuracy of Filling
Potholes manually is too low. High chances are there to neglect small potholes while
detecting manually.

1.2 Proposed System
Our Proposed System Detects and Fill Potholes Automatically. System Automatically
Calculates the Amount of Fillings Required for Individual Potholes by Knowing Depth of
that Pothole Using Sharp IR sensor. Since, Fillings are already calculated accuracy is high.
Navigation is done through Line Following Process. We are using Firebird V as our Base
robot

1.3 Scope of the Project
 The project aims to fix the potholes by an autonomous embedded system.

 Firebird V used as a platform for building the robot, further improvements can be made
easily with this robot.

 The project makes effective use of resource and saves lot of time.

2

1.4 Literature Survey

I. Improving Usability and Safety of Walkers Through The

Development of a Smart Walker for Older Adults:

Author: B.Lester, S.Wolter, C.Johansson

Journal: Innovation in Aging, Volume 1, Issue suppl_1, 1 July 2017, Pages 1191,

Explanation:

With an increasing percentage of our population entering the 65-and-over
demographic in coming years, assistive technologies are more important than ever.
Enhancing and promoting the autonomy of the elderly can be accomplished in part through
the development of such product. We report on the development of a smart rolling mobility
walker employing a user-centred design process whereby users and other potential
stakeholders are integral in all stages of the creation of the product. During each stage of the
design process, the researcher met with older adults, some of whom used walkers and some
of whom did not, and a team of retirement community administrators, physical therapists, and
occupational therapists. The overarching outcome of this research examines opportunities
that exist for integrated smart devices for enhanced user mobility and safety. The smart
elements of the walker, prototyped using programmable microcontrollers and sensor devices,
include a gyroscope that detects declination angle and passive infrared (IR) and acoustic
sensors that detect user position relative to the walker. The gyroscope controls application of
friction to the rear wheels by way of stepper motors to aid in safe movement when going
downhill, while the IR and acoustic sensors provide feedback for safe user position using
auditory and visual cues. We also report on functional changes to our smart walker including
retractable seating, changeable handle positions, and multi-directional folding. We focus on
integrated functionality such as wheel locking when the seat is deployed, eliminating the need
for users to manually lock the loop breaks.

3

II. Tri-Co Robot: A Chinese robotic research initiative for enhanced robot
interaction capabilities:

Author: Han Ding, Xuejun Yang, Nanning Zheng, Ming Li, Yinan Lai, Hao Wu

Journal: National Science Review, nwx148.

Explanation:
Since the invention of the first industrial robot in 1959, the missions of robots have
evolved from basic mechanical transfer or assistance to a diverse range of tasks through close
interactions with environment, their human counterparts and robot peers. Through adaptation
to uncertain and dynamic environments, legged robots can achieve coordinated locomotion in
rough terrain, even at high speed. By interpreting human motives from bio-signals and neuro
interfaces and providing sensory feedback to the wearer, robotic prosthetic devices can
potentially emulate the missing limb or other body parts. Autonomous robots operated in
large groups could cooperate through local interactions governed by collective control
algorithms and decentralized information exchange. Those scenarios demonstrate that the
functionalities of advanced robotics rely highly on their capabilities of effective interactions
with the environment and other agents, either people or robots.

Endowing robots with such capabilities will require extensive research efforts in order
to develop: (i) sensing techniques and cognitive mechanisms for perceiving and interpreting
environment states, human physiology and behaviour, and status of other agents in the multi-
robot systems; (ii) models and control strategies for robots to be able to recognize, track, infer
the task actions and proactively plan their actions for adaptation to task contingencies in
collaborative interaction scenarios; (iii) actuation and execution mechanisms and structures
for dexterous manipulation and natural interfacing with humans with safety and effectiveness.
In seek of research on the fundamental science, technologies and integrated systems required
to fulfil this vision, the National Natural Science Foundation of China (NSFC) has launched
the Tri-Co Robot (i.e. the Coexisting-Cooperative-Cognitive Robot) major research program
in 2017. Coexisting ensures robotics technology to be ubiquitous for enrichment of quality of
life and work for human beings in an inherently safe manner. Cooperative enables robots to
collaborate and coordinate effectively with other agents (e.g. people or robots) through

4

2011) at a time when this is particularly challenging. III. it will require. and often while still fit to drive. rebuilding or retrofitting the existing infrastructure at a rate that is not likely to meet the needs of today’s aging boomers. 5 . As a consequence of both the increased numbers and economic independence of older adults. innovations in personal mobility that mitigate the burdens of age will grow in value over the coming decades. Widowhood can increase older women’s need to drive (Braitman & Williams. they are becoming increasingly economically able to purchase new vehicles (Coughlin. Women frequently cease driving earlier than men. A move toward new urbanism. is an admirable vision that would help meet the growing needs of many older adults. control and planning algorithms. 2009). even as adults age. Cognitive emphasizes the capabilities of robots to perceive and predict the behaviour and intent of the environment and other agents through information gathering. including improved public transit systems and walk able streets and sidewalks. they can sporadically or permanently limit driving . at considerable cost. As medical conditions accrue. Driver Assistance Systems and the Transition to Automated Vehicles: Author: Bryan Reimer Journal: MIT AgeLab & New England University Transportation Center. Massachusetts Explanation: Transitions in driving roles occur throughout one’s lifetime. On the other hand.communication and interplay. Cambridge. and respond adaptively through machine learning. However.

The mathematical model of the vehicle is excited with parameters analogous to some common speed bumps and its acceleration response is calculated. 6 . spring. Fortuitously. It is not too infrequent. especially in the emerging economies. and damper systems. Characterisation of road bumps using smart phones: Author: Abhijit Mukherjee Journal: European Transport Research Review (ETRR) Explanation: Speed bumps are used as the main means of controlling vehicle speeds all over the world. A time averaging technique has been employed to compress the collected data. This paper demonstrates the capability of smartphones placed inside the vehicles in characterisation of road bumps. is recorded using an Android based application. the roadways and mobile phone networks have grown simultaneously in emerging economies. The smart mobile phones have accelerometers and position sensors that can be useful for autonomous monitoring roads. The accelerometer of a smartphone is validated by comparing it with high precision accelerometers. The acceleration response of the phone while passing over the corresponding road bumps. A range of road vehicles is mathematically modelled as mass. However.IV. which was used in the model earlier. the capability of the smartphone in discerning different types of speed bumps while travelling in heterogeneous vehicle types needs to be examined. The experiment is repeated for different classes of vehicles. Filters have been used to reduce noise in the signals. to have unmarked bumps that can be perilous for the passengers. This can empower the user community in monitoring of roads.

1 Block diagram of the autonomous pothole filler robot 7 . CHAPTER 2 THEORETICAL BACKGROUND This chapter discusses about the basic functioning of the units that are employed in this project and the theoretical background associated with them.1 Basic Block diagram Arm Mechanism Filler Robotic Distance Mechanism Vehicle Sensors White Line Sensors Figure 2. Various components required to develop this system are discussed here. 2.

these sensors are placed facing the ground so that they detect the difference in between the ground and the pothole. charger  Geared DC motor ( 75 RPM )  White line sensors  Sharp distance sensors  Motor drivers L293D  LCD (16*2)  External Motors  Servo Motor 8 . 3. These arms help in scanning the entire road for potholes. this white line guides the robot to traverse along the arena.1.2 Hardware Requirements  Fire Bird V Robot kit. Arm Mechanism: Robot is fitted with an arm mechanism which consists of four arms. the dispenser is switched with the help of stepper motor which rotates a circular plate which is below a source of the filler. Filler Mechanism: Filler Mechanism consists of the dispenser mechanism . 2. all these arms are dependent arms and they are rotated by the servo motor. Distance sensors: These are the sensors which detects the distance from the sensors to the object. 5. White Line sensors: These are the sensors which detects the white line on the road . 4.  Atmega2560 microcontroller  Ni-MH battery pack. Robotic Vehicle: Firebird V is used as a robotic vehicle by Nex robotics and IIT Bombay. 2.

4.2 Pin Description of ATmega 2560 9 .  Stepper Motor  USB ISP Programmer  Sun wood 2.3 Software requirements  USB ISP Programmer’s GUI  USB to Serial Drivers  AVR Studio 2.4 ATMEGA 2560 Microcontroller 2.1 Pin description: Fig 2.

2.4. 8 bit microcontroller – 135 Powerful Instructions – Most Single Clock Cycle Execution – 32 x 8 General Purpose Working Registers – Fully Static Operation – Up to 16 MIPS Throughput at 16 MHz – On-Chip 2-cycle Multiplier 256K Bytes of In-System Self-Programmable Flash – 4K Bytes EEPROM – 8K Bytes Internal SRAM Peripheral Features – Two 8-bit Timer/Counters with Separate Pre-scalar and Compare Mode – Four 16-bit Timer/Counter with Separate Pre-scalar. 10-bit ADC – Four Programmable Serial USART – Master SPI Serial Interface – Byte oriented 2-wire Serial Interface – Programmable Watchdog Timer with Separate On-chip Oscillator – On-chip Analog Comparator – Interrupt and Wake-up on Pin Change I/O and Packages – 86 Programmable I/O Lines 10 .2 Features of the ATMEGA 2560 Microcontroller Advanced RISC Architecture. Compare.and Capture Mode – Real Time Counter with Separate Oscillator – Four 8-bit PWM Channels – Twelve PWM Channels with Programmable Resolution from 2 to 16 Bits – Output Compare Modulator – 16-channel.

1 V Batt Supply “V Batt Supply” stands for stabilized supply coming from the battery. diodes D7 along with the capacitor C54 is used.1mah Nickel Metal Hydride battery which can be used to power robot for around 2 hours. Most of the systems on the robot are powered by 3. it can use maximum of 2Amp current while Auxiliary supply will provide only 1Amp current. This scheme extends usable range of the fully charged battery. 2.5. This supply can be varied between 8V to 11.3V and their output will fall below 5V.2 V Mot Supply “V Mot Supply” stands for motor supply. Robot’s power is divided in two separate power rails. It is the nosiest supply line on the robot. When battery is almost discharged (about 30% power remaining) and onboard payload draws current in excess of 2 amperes. Similar arrangement is done in the “V Mot Supply” using diodes D9 and capacitor C53. 1Amp supply. 2. This line can supply additional 500mA to the external load.5 Power supply unit: Fire Bird V consisting of 9.3V depending on the battery's charging state and type of power source (battery / auxiliary power) used. 11 . To extend the usable battery life and to reduce the probability of microcontroller getting reset when battery is about to fully discharge. in order to continue use for longer duration without worrying about the battery getting low. Auxiliary supply provides regulated 12V. When robot is powered by battery.3V and 5V via voltage regulators. “V Mot Supply” provides power to all the noisy devices on the robot such as motors and other heavy loads. For this duration capacitor C54 acts as small battery. In this case the microcontroller can reset. 2.3V momentary. then the battery voltage can fall below 6. It is used to power DC motors and other heavy loads which have lots of current fluctuations.2. This supply line is used to power almost all the payload on the robot. It should be used for heavy loads that require large amount of current. Voltage regulators will not be able to function properly below 6. diode D7 prevents the reverse flow of the current and capacitor C54 maintains voltage within safe limits for about 100 milliseconds.5. robot can be powered by external power source which is nothing but auxiliary power source.6v. When battery voltage suddenly drops. “V Batt Supply” powers most of the electronics on the robot.

When connected with power supply the shaft rotates. Figure 2. It can produce mechanical movement.3 Power supply unit of FIRE BIRD V (Robotic Vehicle) 2. It is possible reverse the direction of rotation by reversing the polarity of input. 12 . Two 75 RPM DC geared motors actuate the robot. A DC motor is electromechanical device that converts electrical energy into mechanical energy that can be used to do many useful works.6 Geared DC Motor For movement of robot we have used geared DC motors. It has two wires or pins. DC motors comes in various ratings like 6V and 12V.

White line sensors are used for detecting white line on the ground surface.7 White Line Sensors White line sensors are used for detecting white line on the ground surface. Due to the directional nature of the photo diode it does not get affected with ambient light unless it is very bright.4 Geared DC Motor 2. Due to the directional nature of the photo diode it does not get affected with ambient light unless it is very bright 13 . Fig 2. White line sensor consists of a highly directional photo transistor for line sensing and bright red LED for the illumination. White lines are used to give robot sense of localization. White line sensor consists of a highly directional photo transistor for line sensing and bright red LED for the illumination. White lines are used to give robot sense of localization.

amount of light reflected is less. hence less leakage current flows through the photo transistor. 2. Power to the red LEDs of white line sensor is controlled PG5 ofATMEGA2560 microcontroller to extend robot’s battery life.5 White line sensor assembly When the robot is not on a white line. more light gets reflected resulting in considerable increase in the leakage current which causes voltage across the sensor to fall between 2 to 0. Which means black surface can be ultraviolet or infrared in colour. Fig 2.1 Why red LEDs are used instead of IR LEDs ? Photo transistors are many times sensitive to IR than to visible light but we still use red light illumination because of following reasons:  Red light is nearer to the infrared  Since we can see red light it’s easier to calibrate it using eyes  Any colour appears black because it does not reflect visible light. In this case. the line sensor gives an output in the range of 2V to 3.1V. When the sensor is on a white line. If black is infrared colour then robot's white line sensors will not be able to distinguish between white and black as 14 .7.3V.

Fire Bird V robot has 8 IR proximity sensors. Sensors are numbered as 1 to 8 from left to right in clockwise direction.36 shows the location of the 8 IR proximity sensors. IR proximity sensors have about 10cm sensing range.black will reflect all infrared waves as effectively as white surface. In the absence of the obstacle there is no reflected light hence no leakage current will flow through the photo diode and output voltage of the photo diode will be around 3.8 IR Proximity Sensors: Infrared proximity sensors are used to detect proximity of any obstacles in the short range. In case of red illumination which has very less infrared radiation even infrared black is still considered as black which makes red light as colour of choice. Figure 3. 15 .3V. 2. These sensors sense the presence of the obstacles in the blind spot region of the Sharp IR range sensors.

6 IR Proximity Sensors 2.  Judgment distance.9 Sharp IR Range Sensor (GP2Y0A02YK) Features of GP2Y0A02YK:  Less influence on colour of reflective objects.  Low cost 16 .  Detecting distance 10 to 80cm. Figure 2.  External control circuit is not needed. reflectivity.

These sensors have blind spot of particular range within which gives wrong reading. Sharp sensor consists of IR LED and CCD array boxed with precision lens mounted. In absence of the IR light it gives logic 1 as output. Position encoder consists of slotted disc which rotates between optical encoder (optical transmitter and receiver). These sensors are attached to arm hence detects potholes.7 SHARP IR Range Sensors 2. When IR light falls on the photo transistor it gets in to saturation and gives logic 0 as the output. Optical encoder MOC7811 is used as position encoder on the robot. 17 . It consists of IR LED and the photo transistor mounted in front of each other separated by a slot and encased in black opaque casing and facing each other through narrow window. When slotted disc moves in between the optical encoder we get square wave signal whose pulse count indicates position and time period / frequency indicates velocity.10 Position Encoders Position encoders give position / velocity feedback to the robot. Blind spot: 0-10cm.Range: 10-80cm Figure 2. When encoder disc rotates it cuts IR illumination alternately because of which photo transistor gives square pulse train as output. A slotted encoder disc is mounted on the wheel is placed in between the slot of MOC7811. Output from the position encoder is cleaned using Schmitt trigger based inverter (not gate) IC CD40106. This is used to detect the potholes present is the arena. It is used in closed loop to control robot’s position and velocity.

11 Liquid Crystal Display (LCD) LCD used here has HD44780 dot matrix LCD controller.8 Position Encoders 2. It is also called 16x2 Alpha Numeric LCD2. Figure 2. It can be configured to drive a dot-matrix liquid crystal display under the control of ATMEGA 2560. 18 .

and end by bringing it to low (0) again. RS (Register Select). This control line is used to tell the LCD that microcontroller has sent data to it or microcontroller is ready to receive data from LCD.11. The RS line is connected to PC0. data is treated as a command or special instruction by the LCD (such as clear screen. The data bus is bidirectional. make EN high (1) and wait for the minimum amount of time as specified by the LCD datasheet. When the Busy 19 . Fire Bird V robot uses 4 bit interfacing mode which requires 3 control lines and 4 data lines. This is indicated by a high-to-low transition on this line. When RS is low (0). 4 bit wide and is connected to PC4 to PC7 of the microcontroller. etc.). When RW is low (0). In this mode upper and lower nibble of the data/command byte needs to be sent separately. When RS is high (1). The EN line is connected to PC2. To send data to the LCD. The MSB bit (DB7) of data bus is also used as a Busy flag. When RW is high (1).1 Operation modes of LCD: To reduce number of I/Os required. the program is effectively querying (or reading from) the LCD. The RW line is connected to PC1. Figure 2. position cursor.9 Liquid Crystal Display 2. data being sent is treated as text data which should be displayed on the screen. shows LCD interfacing in 4 bit mode with three control lines EN (Enable). the information on the data bus is being written to the LCD. When this is done. program should make sure that this line is low (0) and then set the other two control lines as required and put data on the data bus. and RW (Read / Write).

Figure 2. For LCD backlight V Battery supply is used. In order to save power LCD backlight can be turned off by removing LCD backlight jumper. the LCD is in internal operation mode. the Busy flag is output on DB7. Figure 8. Figure 2.flag is 1.45 shows LCD backlight jumper and LCD contrast control potentiometer. LCD’s contrast can be adjusted by LCD contrast control potentiometer. The next instruction must be written after ensuring that the busy flag is 0. and the next instruction will not be accepted.10 LCD Timing Diagram LCD is interfaced to the pins 22 to 28 of the main board socket. When RS = 0 and R/W = 1.11 LCD Contrast Control 20 . Refer LCD datasheet provided in documentation CD for using busy flag. LCD uses 5V System supply for its operation.

12 Buzzer Robot has 3 KHz piezo buzzer. It also requires a relatively sophisticated controller. Buzzer will get turned on if input voltage is greater than 0. 21 . The buzzer is connected to PC3 pin of the microcontroller. Figure 2. It consists of a motor coupled to a sensor for position feedback. often a dedicated module designed specifically for use with servomotors. through a reduction gearbox.12 Buzzer Buzzer is driven by BC548 transistor. if the input pin is floating. 2.13 Servo Motor A servomotor is a rotary actuator that allows for precise control of angular position. Servomotors are used in applications such as robotics. It can be used for debugging purpose or as attention seeker for a Particular event. Also the same buzzer is used in battery monitoring circuit to alert the battery low indication.2. Resistor 100K is used to keep transistor off.65V.

More specifically.13. a servomotor is a servomechanism. Figure 2. This type of servomotor is not widely used in industrial motion control. 22 . The input to its control is some signal. an error signal is generated which then causes the motor to rotate in either direction. it is a closed-loop servomechanism that uses position feedback to control its motion and final position. The motor always rotates at full speed (or is stopped). If the output position differs from that required.1 Mechanism of Servo Motor As the name suggests. As the positions approach. either analogue or digital. the error signal reduces to zero and the motor stops. the external input to the controller. only the position is measured. The very simplest servomotors use position-only sensing via a potentiometer. The measured position of the output is compared to the command position. representing the position commanded for the output shaft. but they form the basis of the simple and cheap servos used for radio-controlled models. In the simplest case. as needed to bring the output shaft to the appropriate position. The motor is paired with some type of encoder to provide position and speed feedback.13 Servo Motor 2.

Both of these enhancements. 2. Where 4-wire steppers are strictly 'Bipolar'. one that reverses the current flow through the coils by alternating polarity of the terminals. not just half-coils.Bipolar. rather than always running at full speed.14 Stepper Motor Stepper motor is an electric motor which is used in control system for the precise rotation by some predefined angle. You can identify the separate coils by touching the terminal wires together-.. it must be able to energize these coils in sequence. A Bipolar motor is capable of higher torque since entire coil(s) may be energized. They may also control the speed of their motor. the bipolar motor requires a different type of controller. Let us look at the mechanism for reversing the voltage across one of the coils. so current can flow in both directions. The Bipolar Controller must be able to reverse the polarity of the voltage across either coil.. And. More sophisticated servomotors measure both the position and also the speed of the output shaft. usually in combination with a PID control algorithm. Because of this. 23 . allow the servomotor to be brought to its commanded position more quickly and more precisely. giving us the name . The Bipolar Stepper motor is very similar to the unipolar Stepper except that the motor coils lack center taps.If the terminals of a coil are connected. the shaft becomes harder to turn. with less overshooting. The Bipolar Stepper motor has 2 coils. The coils are identical and are not electrically connected.

it qualifies as a push-pull type amplifier. The current can be reversed through the coil by closing the appropriate switches . Since each half of the bridge can both sink and source current. such as the coils of a stepper. H-bridges are applicable not only to the control of stepping motors. where polarity reversal is needed. Figure 2. and can be drawn with the symbol for the amplifier.. and are commonly called a" Dual H-Bridge. Another way of depicting the H-Bridge. but also to the control of DC motors. solenoids and many other applications." 24 . Diodes protect the switches from the kickback of inductive type loads. because it resembles a letter "H".AD to flow one direction then BC to flow the opposite.. Two such circuits are needed to drive both coils of the bipolar stepper.14 H-Bridge for driving Stepper Motor This circuit is called an H-Bridge.

15 Conceptual Model of Bipolar Stepper Motor The coils are activated. to attract the rotor. which is indicated by the arrow in the picture. producing a continuous cycle. the rotor is attracted mid-way between the two windings. in sequence. In a basic "Wave Drive" clockwise sequence. winding 1 is de-activated and winding 2 activated to advance to the next phase. Coil 2 is entirely de-activated in the diagram.14. (Remember that a current through a coil produces a magnetic field. The rotor is guided in this manner from one winding to the next. If these two terminals were reversed in polarity the rotor would point to the West.1 Conceptual Model of Bipolar Stepper Motor Figure 2. the rotor points to the East in this diagram. Assuming Terminal 1a is positive and 1b is negative. 25 . Note that if two adjacent windings are activated.2.) This conceptual diagram depicts a 90 degree step per phase.

basic design and implementation of the different analog and digital circuit components employed in the project. 3.1 Flowchart of the Project 26 .1 Flowchart of the Project Start Divider No detected to Center IR U –Turn Interrupt range sensor Yes White line following & pothole White detection & Yes Line Filling with continuous divider Found? sensing No White line searching Finish algorithm Fig 3. CHAPTER 3 DESIGN AND IMPLEMENTATION This chapter discusses the algorithm.

2. Start Configure motion ports to adjust Speed of robot Define motion sets for robot LCD Port Configure ADC Port Configure Buzzer Initialization ADC Conversion Figure 3.White line following and pothole detection algorithm 27 .

3 depicts the flowchart of the project and its functionality.1 to 3. The robot continuously follows the white line and searches for the pothole when a pothole is found then the best point of filling is found out by the algorithm and then the filling takes. START MOVE FORWARD BY 30 CM TAKE RIGHT TURN BY 90 DEGREES MOVE FORWARD BY 49 CM TAKE RIGHT TURN BY 90 DEGREES RETURN Figure 3. the robot is supposed to travel on this arena.3 U-Turn interrupt Figure 3. when the pothole is filled the robot is again bound to follow the white line. While filling real time scanning for the filled condition will takes place. 28 . To simulate the real scenario of the pothole filling we have designed an arena.

automatically activate dispenser mechanism. 29 . • Dispenser mechanism will fill pothole. • When Pothole is detected. Fig 3.4 Blue Print of the arena The robot is bound to complete the following tasks so as to complete the challenge of filling the pothole on the given scenario • Traverse throughout the arena and scan the area for the potholes using arm assembly mounted on the robot. • Real Time scanning of pothole to ensure its complete filling.

1 PWM for DC Motor Speed Control Pulse width modulation is a process in which duty cycle of constant frequency square wave is modulated to control power delivered to the load i. Robot has top speed of about 24cm per second.• Make a U-turn when the other part of the lane is to be traversed. the robot can turn with zero turning radius by rotating one wheel in clockwise direction and other in counter clockwise direction.1 DC Geared Motor Firebird V robot has two 75 RPM DC geared motors in differential drive configuration along with the third caster wheel for the support. Duty cycle is the ratio of ‘TON/ T’. Where ‘TON’ is ON time and ‘T’ is the time period of the wave. • Should indicate when the material in the source gets empty. to make this traversal possible.1. 3. In case of PWM the motor reacts to the time average of the signal. motor. Using this configuration. Power delivered to the motor is proportional to the ‘TON’ time of the signal.e. The working of the complete project is divided into three kinds 1) Navigation 2) Pothole Detection 3) Pothole Filling 3. the following components are involved  DC Geared Motor  Position Encoder  White line sensors 3.2.2 Navigation Navigation consists of movement of the robot along the arena.2. PWM is used to control total amount of power delivered to 30 . • Should stop navigating when any obstacle is detected.

5 PWM Illustration Figure shows the PWM waveforms for motor velocity control. as the ON time is just 10% of time period. Where ‘TON’ is ON time and ‘T’ is the time period of the wave. 31 . In case of PWM the motor reacts to the time average of the signal. In case (A). Where ‘TON’ is ON time and ‘T’ is the time period of the wave. Duty cycle is the ratio of ‘TON/ T’. Power delivered to the motor is proportional to the ‘TON’ time of the signal. In case (B). PWM is used to control total amount of power delivered to the load without power losses which generally occur in resistive methods of power control. Duty cycle is the ratio of ‘TON/ T’. ON time is 90%of time period. This wave has more average value and hence more power is delivered to the motor. .the load without power losses which generally occur in resistive methods of power control. the motor will run slower. Power delivered to the motor is proportional to the ‘TON’ time of the signal. Figure 3. Power delivered to the motor is proportional to the ‘TON’ time of the signal.

When robot is powered by Auxiliary power which can supply only 1 Ampere of current.2 Logic level for the motor direction control PL3 PWM for Left Motor PL4 PWM for Right Motor PA0 Left Motor 1 PA1 Left Motor 2 PA2 Right Motor 1 PA3 Right Motor 2 Table 3. it shows the locations of the two L293D dual motor drivers on the main board.5seconds before changing the direction.3. This will also increase the useable time of the fully charged battery.1. Robot has two L293D motor drivers with four 6 pin relimate connectors for DC motors. Each 6 pin relimate connector provides connections for the DC motor and the associated position encoder. it produces large current surge.1 Microcontroller Connections for Motor Auxiliary power can supply current up to 1 Ampere while Battery can supply current up to 2 Ampere. When both motors of the robot changes direction suddenly without stopping. Each connector can drive motor with up to 600mA current rating. It is a good practice to stop the motors for at least 0. sudden direction change in both the motors will cause current surge which can reset the microcontroller because of sudden fall in voltage.2. 32 .

2 Logic Levels for Motor control 33 .Direction PA0 PA1 PA2 PA3 PWM Forward 0 1 1 0 As per velocity requirement Reverse 1 0 0 1 As per velocity requirement Right 0 1 0 1 As per velocity requirement Left 1 0 1 0 As per velocity requirement Soft Right 0 1 0 0 As per velocity requirement Soft Left 0 0 1 0 As per velocity requirement Soft Right 2 0 0 0 1 As per velocity requirement Soft Left 2 1 0 0 0 As per velocity requirement Hard Stop 0 0 0 0 As per velocity requirement Soft Stop X X x X 0 Table 3.

Line sensors are factory calibrated for optimal performance. the procedure is explained below. 34 . These tube lights are the one which turns on like a bulb without flickering. Also avoid using robots in area illuminated with filament based bulbs as they have large infrared light radiation. line sensors can be calibrated for optimal performance.3 Pothole Detection: Pothole detection is done by the Sharp IR Range sensors which are facing downward to the road and these are fitted on the arms which are connected to the servo motor. You can also turn on and turn off red LEDs and take sensor readings at the same place and nullify the effect of the ambient light. when colour contrast between the white and non-white surface in a white line grid is not adequate. In such cases the sensors can be tuned to give maximum difference between white and non-white surfaces.2.2. Note that tube light which uses simple inductive chock actually blinks 50times a second and this blink is captured by the white line sensors as ADC can acquire data at very fast rates. All the photo diodes and photo transistors are many times sensitive to infrared than to red light.1 White Line sensor calibration By using trimming potentiometers located on the top center of the main board. the programming is done in such a way that the robot is brought back to white line when it goes off course. 3. White line sensors are essentially sensitive photo transistors with precision lens assembly. Using these potentiometers we can adjust the intensity of the red LEDs of the white line sensor.3. Sensitivity adjustment is needed. Hence for consistent result avoid room which have large windows even if they have curtains. 3. For white line sensors to properly work calibration must be done.3.2 Effect of ambient light on the white line sensors White line sensors are highly directional in nature hence they are immune to the illumination from tube light or CFL.2. Hence it is recommended that use CFL lights or tube lights with electronic chock or ballast. 3.2.2 White Line Sensors: White line sensors are fitted to the robot so as to detect the white line in the center of the arena.

35 . This accounts to the difference in angle produced due to the different distances from the object which is measured to get the corresponding analog output voltage from the sensor. The Left arm detects the pothole to the left part of the road and the right arm to right side. To detect potholes present in the arena. When the arm is scanning. on the top of the robot.1 Sharp IR range sensors: GP2YOA02YK IR The above is a precision distance sensor. The arms are placed at the height of 15 cm from the road level. it reflects back to the linear CCD array. Servo motors are used to control two arm assembly. which detects the potholes present in the arena. The above mentioned sensors are attached at the far end of the arms in such a way that it faces downwards to measure the distance between road and sensor itself. we are using the Sharp IR Range sensor which is fitted on the arm mechanism with the help of moving arm we can scan entire region for detection of potholes. When a narrow beam of IR Ray from the IR Transmitter incidents on any surface or objects. Range sensor basically consists of the IR (Infrared) led and linear CCD (Charged Couple Device) array which is fitted inside a plastic casing. This is how pothole is detected.3. This sensor has a blind spot of 0 to 10 cm where. the pothole is an increase in the distance between the surfaces due to the depth of the pothole.3. The sensor works on Triangulation method and not on intensity. Thus it is immune to ambient light and can detect object of any colour. sensors give erroneous readings.

3.2 How Pothole is detected? Pothole is detected by the increase of distance. Fig 3. it is illustrated in the figures below. Fig 3.7 Illustration of Sharp sensor detection at normal surface 36 .6 Side View of the Arm Assembly used in detecting Pothole 3.

Fig 3.8 Illustration of Sharp sensor detection at Pothole Height of Sensor from ground = x mm When Potholes detected = x mm + y mm = (x+y) mm When Potholes Filled = x mm So when Distance detected is x mm. 37 . it is detected that pothole is filled or there is no pothole and robot moves forward.

9 Position of Sensors on and around the robot 3. This wood provides maximum strength and is very light weight.3. 38 . 3.3 Position of IR Range Sensors around the robot Fig 3.4 Construction of assembly for pothole detection The arms are constructed with the help of the locally available material called the sun wood. So this is chosen as the best material for the whole construction of the robot.3. economical too.

Initially only a random point is detected while the robot is traversing.10: -Illustration of Selection of point of filling The best point for filling is found out by the algorithm which finds the centroid of the whole pothole. 39 . a when this algorithm is applied then the robot will find the best point by calculating the average of the maximum stretches of the ends of the pothole.5 Estimation of best point for filling Fig 3.3.3. That average will be the center of the pothole and it’ll be the best point for filling.

4 Construction of Dispenser Mechanism Fig 3.3.11 Illustration of Dispenser Mechanism 40 .

3.1 Stepper Motor Stepper motor is used here to switch left or right opening in the container which is connected to the primary arms Fig 3.2 Flow Selection using stepper motor Fig 3.13 Flow Section 41 .4.4.12 Illustration of Gear Assembly 3.

1 NEX Robotics ISP USB Programmer NEX AVR USB ISP STK500V2 is a high speed USB powered STK500V2 compatible. 42 . In-System USB programmer for AVR family of microcontrollers. Its adjustable clock speed allows programming of microcontrollers with lower clock speeds. The programme is powered directly from a USB port which eliminates need for an external power supply. It can be used with AVR Studio on Windows7 it can be used in HID mode with GUI as programming interface.1 ISP USB Programmer Figure 4. The programmer can also power the target board from a USB port with limited supply current of up to 100mA. Chapter 4 Programming the AVR 4.

 Programs almost all AVR microcontrollers  Jumper selectable HID/CDC mode.3 ISP Connector Pin Details Fig 4.  USB powered  Jumper selectable 5V power supply for target boards  Standard 10 pin (5x2) programming connector  Power and programming activity indicator LEDs  No external power supply required 4.4.2 ISP Pin Details 43 . Low speeds from 32 KHz to 1MHz are supported.2 Features  Low cost USB compatible (No legacy RS232 required)  Can be used with AVR dude on Win7/XP/Vista  Jumper adjustable programming clock speeds for low clock speed microcontrollers.

4.1 STK500v2 GUI STK500V2 is a high speed USB powered STK500V2 compatible In-System USB Programme for AVR family of microcontrollers.3. The below figure shows the STK500v2 GUI.STK500v2 has to be configured in HID mode to work with STK500v2 GUI.3 USB Programmer’s GUI 44 . Fig 4.

Read: .Exit STK500v2 GUI. Verify: . Write: . Program: . Fig 4. 45 .Read the microcontrollers current fuse setting.Select micro controller from the list of microcontrollers present in the GUI to write file on them.Input proper High fuse value from Table 2 or Table 3 to write the microcontrollers fuse setting.Verify the currently loaded file on the microcontroller.Erase the file that is currently written on the microcontroller. Clear: . E Fuse: . H Fuse: . Erase: .Write microcontrollers fuse setting.Browse the path of the file that you want to write on the microcontroller.Input proper extended fuse value from Table 2 or Table 3 to write the microcontrollers fuse setting.Input proper Low fuse value from Table 2 or Table 3 to write the microcontrollers fuse setting. Exit: .4 Details of GUI Microcontroller: .Program/Write selected file on microcontroller. Browse: . L Fuse: .Clear STK500v2 GUI window.

5 Programming using GUI 46 .4 Programming using the GUI To program the Target board’s Microcontroller with the GUI we need to do the following actions.  Select the Proper Microcontroller  Select the file for the burning(.hex file)  Click on Program Fig 4.4.

1 Conclusion After successfully testing all different codes. no human intervention is needed. The prototype can be modified and fabricated according to the needs.  Economical way of implementing automation in fixing a pothole. 5.  Line Sensors may be affected by the ambient light. Real life model should overcome this 5. real life model is still needed to designed and fabricated. The outcome of the project is discussed in terms of advantages and limitations in the following sections.4 Future Scope  The future scope of this project is development of a real life model which will working on fixing the potholes. the final outcome of this project is that it can be successfully implemented on detecting and filling pothole autonomously.  Saves lot of time. 5. CHAPTER 5 CONCLUSION AND FUTURE SCOPE 5.  Robot is highly reliable.2 Advantages  Automatically detect and fill the potholes.3 Limitations  During design phase some parameters were limited to only prototype model.  Eliminates manual filling of potholes. 47 . it is completely autonomous.  Since.  Saves the funds which are to be invested on the laborers.

John D. Krithi Ramamritham and Purushottam Kulkarni Department of Computer Science and Engineering. Mumbai .com 48 .htm [8] www. Indian Institute of Technology Bombay. Krithi Ramamritham Prashant Shenoy .edaboard. INDIA. [2] AVR Studio 4 Tutorial [3] Fire Bird V ATMEGA2560 Hardware Manual [4] Fire Bird V ATMEGA2560 Software Manual [5] Resource management for real-time tasks in mobile robotics Huan Li.400076.stepperworld.com/Tutorials/pgBipolarTutorial. Sweeney [6] USB ISP Programmer Manual [7] www. Roderic A.REFERENCES [1] ACE in the Hole: Adaptive Contour Estimation Using Collaborating Mobile Sensors Sumana Srinivasan. Grupen .