convert
TRANSCRIPT
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 1
CHAPTER 1
1.1 Introduction
Search and Rescue Robotics is a relatively new research field dealing with systems that
support first response units in disaster missions. Especially mobile robots can be highly valuable
tools in urban rescue missions after catastrophes like earthquakes, bomb or gas explosions or
daily incidents like fires and road accidents involving hazardous materials. The robots can be
used to inspect collapsed structures, to assess the situation and to search and locate victims.
There are many engineering and scientific challenges in this domain. Rescue robots not only
have to be designed for the harsh environmental conditions of disasters, but they also need
advanced capabilities like intelligent behaviours to free them from constant supervision by
operators.
Rescue workers have approximately 48 hours to find trapped survivors, otherwise the
likelihood of finding victims alive drops substantially.Traditionally, such missions have been
performed by human teams, however, disaster environments have been known to be very
difficult to access by rescue workers due to potential presence of asbestos dust, poisonous gases,
hazardous materials, radiation, or extreme temperatures. Robots on the other hand can bypass
the danger and expedite the search for victims immediately. In such a critical situation
technology can make a great help for rescuers .Thus, rescue robots provide a promising solution
to assist rescue workers in many aspects of SAR operations.
For instance, rescue robots can reduce the chance of injury to workers and rescue dogs by
entering unstable structures, increase the speed of response, and through multiple cameras and
sensor fusion, extend the reach of rescue workers to regions that would otherwise have been
inaccessible. In such cases a single robotic solution may be able to provide all the needed
mission critical reconnaissance. A search and rescue robot can have many features. One of the
most important features is the ability to sense the presence of human life. We can include
humidity and temperature sensors for this purpose. Another important feature is to control the
robot remotely and have easy access for navigational purposes. The robot should also be capable
of providing medical attention and first aid kits to the victim stuck in the disaster zone.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 2
The Search and Rescue robot is no longer a luxury type of robot. Instead it is a resource that can
be used by many. Due to the natural disasters such as earthquakes and tornadoes and various
types of incident involve collapse building, development of Search and Rescue robots are
essential.
1.2 Objective
To complete the project successfully some aim was needed to be made as a guideline and
the objectives of the project are:
a)to build a basic type of Search and Rescue robot that is capable of moving based on the
input given from a remotely accessed control.
b) To build a robot strong and as small as possible and accommodate all the components and
circuitry within the space available on the robot.
c)To include a robotic arm which helps in clearing debris in front of the robot while
navigating and also to lift objects accidentally fallen on the victim in the danger zone. This
robotic arm is capable of holding on to water bottles, first aid kits and other necessary primary
lifesaving tools.
d) To include sensory components such as temperature sensor and also carbon di-oxide
sensor. These are helpful for locating the human beings.
e) To implement wireless control of the robot. The robot can be controlled remotely and be
able to receive input to move and navigate remotely.
f) To use Raspberry Pi 3 mini computer and python programming language to control the
motors and the robotic arm.
1.3 Scope of the project
The function of the scope of the project is to identify the criteria under which each step of
the project has to take place. The scope of this project is to successfully develop a Search and
Rescue robot. The entire scope of the project can be split into many relevant steps and as long as
these steps are achieved the project will be accomplished successfully.
Firstly, we need to develop the base of the robot. This has to be done by building a robot
chassis and suitable motors for movement
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 3
Secondly, the body of the robot has to be mechanically strong to withstand extreme harsh
conditions.
Next task is to combine all the hardware and circuitry and install in the body of the robot.
The robot then needs to be calibrated to assure it works properly by adjusting the inputs and the
corresponding programs.
1.4 Problem statement
In the past two decade it is estimated that the disasters are responsible for about 3 million
death worldwide, 800 million people adversely affected and property damage exceeding 50
billion dollar. The close example is tsunami and earthquakes, which causes buildings to collapse
and is a problem from these disasters. Rescuers will spend a lot of time to search and rescue for
survivors, this is because the risk that the rescuers will face, any mistakes could endanger their
own life. For example unstable ground or floor and collapse structure are extremely dangerous
for the rescuers especially in the case of earthquake after shock. Because of this problem and
risk that will harm the rescuers, the search and rescue operation more often recover dead bodies
than live ones. Hence our aim is to build a rescue robot capable of searching for human beings
alive, provide first aid help if necessary and make arrangements for rescue operations.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 4
CHAPTER 2
2.1 Open Source Technology
Open source technology is defined as the production and development philosophy of
allowing end users and developers to not only see the source code of software, but modify it as
well.
Although software is not the only product governed by an open source licenses, it is the
most popular, lending itself well to manipulation of its code and add-ons. Open source provides
a transparent platform upon which anyone with the skills to do so can add to the development
and production of the software either for release as a new incarnation of the software for others
to use or for strictly in-house development only.
Open source software is often free to download and use, open source licenses rarely
transfer any ownership of the software to the end user or developer. Open source is not limited
to software. Open source philosophies have been applied to everything from medicine to soft
drink formulas. The result is higher commitment and even cult status among the developers and
users of open source technologies.
Some of the examples of open source hardware technology are a) Arduino, open-source
microcontroller board, b)OpenRISC – The aim of the OpenRISC project is to create free and
open source computing platforms, c)The Bus pirate – Universal bus interface and programmer,
d)Raspberry pi - Raspberry Pi is a small, single-board computer developed for computer science
education. A United Kingdom (UK) charitable organization called the Raspberry Pi Foundation
developed the device, e) Nitrokey – USB key for data- and email-encryption and strong
authentication etc.
For our project we selected Raspberry Pi 3-the latest model of Raspberry Pi because of
itsease of usage and availability. Also the memory for operation and the clock speed of
raspberry technology are much higher compared to other open source technology.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 5
2.2 Raspberry Pi 3
The Raspberry Pi is the work of the Raspberry Pi Foundation, a charitable organisation
founded in 2009. It's supported by the University of Cambridge Computer Laboratory and tech
firm Broadcom, the latter of which makes the system-on-a-chip that powers the device. It is a
series of credit card sized single board computers developed in UK by the Raspberry Pi
foundation. Several generations of raspberry pi have been released. In our project we’ve used
Raspberry pi 3 model B. The Raspberry Pi 3 uses a Broadcom BCM2837 SoC (System on Chip)
with a 1.2 GHz 64-bit quad-core ARM CORTEX-A53 processor, with 512 KB shared L2 cache.
Before going into the details on the specifications of raspberry pi 3, let us see the
comparison between each of the model of raspberry pi and choose the better one [1],
fig 2.1: Comparison of Different generations of raspberry pi
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 6
The model of Raspberry pi used in this project is Raspberry Pi 3. Raspberry Pi 3 is a third
generation raspberry pi with the following specifications,
• A 1.2GHz 64-bit quad-core ARMv8 CPU
• 802.11n Wireless LAN
• Bluetooth 4.1
• Bluetooth Low Energy (BLE)
• 1GB RAM
• 4 USB ports
• 40 GPIO pins
• Full HDMI port
• Ethernet port
• Combined 3.5mm audio jack and composite video
• Camera interface (CSI)
• Display interface (DSI)
• Micro SD card slot (now push-pull rather than push-push)
• VideoCore IV 3D graphics core
The Raspberry Pi 3 is equipped with 2.4 GHz Wi-Fi 802.11n and Bluetooth 4.1 in addition to
the 10/100 Ethernet port. For older models the 128MB was allocated for GPU (graphical
Processing unit) and 128 was for CPU. In the newer model B 512 MB was available with the
following split 256 MB, 128MB and 16MB video RAM. Raspberry pi 3 has 1GB RAM.
The Raspberry Pi may be operated with any generic USB computer keyboard and mouse.
The video controller is capable of standard modern TV resolutions, such as HD and full HD and
higher or lower monitor resolutions and older standard CRT TV resolutions.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 7
fig 2.2: Raspberry pi 3 layout diagram
The operation frequency specified in the hardware is 1100 MHz ARM, 550 MHz
core, 500 MHz SDRAM and 6 overvolt (helps in overclocking the raspberry pi 3 for better
performance). However in system information CPU speed will appear as 1200 MHz, when in
idle the speed lowers to 600 MHz
The Raspberry Pi does not come with a real-time clock, which means it cannot keep track
of the time of day while it is not powered on. Now we need to realise how we use this piece of
hardware to build and control a Search and Rescue robot. The main idea is to use certain pins
called GPIO (general purpose input output) pins for our use. Using these pins we can control the
Pulse Width Modulation (PWM), explained better in the next section. [1]
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 8
2.3 GPIO pins
GPIO pins abbreviates to General Purpose Input Output pins. General-purpose
input/output (GPIO) is a generic pin on an integrated circuit whose behaviour—including
whether it is an input or output pin—is controllable by the user at run time. [2]
GPIO pins have no predefined purpose, and go unused by default. The idea is that
sometimes a system integrator who is building a full system might need a handful of additional
digital control lines—and having these available from a chip avoids having to arrange additional
circuitry to provide them.For the interfacing of the Raspberry pi with outside actuators we can
use these pins on the Raspberry Pi. These pins can be interfaced with input or output devices and
programmed to work according to the required application.
Working of the GPIO pins:
Let us consider a simple led connected to a switch and battery as shown below. When the
switch is closed, the led glows and by varying voltage of the battery we can control the intensity
of the led. The GPIO pin works as combination of battery with the switch.
fig 2.3: turning on LED with a switch
By connecting the Led to the GPIO pin, we can control the intensity by changing the duty
cycle of the pulse that is given to the pin which in turn controls the switching on and off or
varying the intensity of the led.We can interface motors, LEDs,sensors etc. to the GPIO pins and
control them.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 9
The GPIO pins available in Raspberry Pi 3 are shown in the diagram below,
fig 2.4: GPIO pin layout of raspberry pi 3
[2] Like most of the microprocessors have pins with Dual functions, even the GPIO pins
of the Raspberry Pi also has certain pins which are used for dual functions.
It has voltage pins of 3.3V and 5 V which can be used to power external modules. It has 8
ground pins which can be used to ground the devices attached to the Pi.
26 pins are GPIO pins out of which few of them have dual functions like transmission,
receiving, clocks etc.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 10
For our use we utilize the GPIO pins from the Raspberry pi to interface the motors and
the 5V pins are used for enabling the motor Drivers and one of the servo motors.
2.4 Pulse Width Modulation
Pulse Width Modulation, or PWM, is a technique for getting analog results with digital
means. Digital control is used to create a square wave, a signal switched between on and off.
This on-off pattern can simulate voltages in between full on (5 Volts) and off (0 Volts) by
changing the portion of the time the signal spends on versus the time that the signal spends off.
The duration of "on time" is called the pulse width. To get varying analog values, you change, or
modulate, that pulse width. If you repeat this on-off pattern fast enough with an LED for
example, the result is as if the signal is a steady voltage between 0 and 5v controlling the
brightness of the LED.
Duty cycle is generally defined as the percentage of the pulse that is in on state or high
voltage state out the total time period of the pulse. Duty Cycle = (time the pulse is on / total time
period of the pulse)
fig 2.5 : Duty cycle
Considering the figure shown above has a total time period of 1ms, for 50% duty cycle,
the pulse should be on for 0.5ms, for 25% duty cycle, the pulse should be on for 0.25ms andfor
75% duty cycle, the pulse should be on for 0.75ms
This concept is mainly used in our project for the controlling of the servo motors present in the
arm. The specifications of the servo motors includes the pulses that should be given in order to
rotate the motor 0 to 180 degrees.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 11
By using the pulse width modulation and concept of duty cycle we can position the servo motor
at angle that we desire thereby giving more precision in positioning of the arm.
2.5 Powering and Accessing
The Raspberry Pi 3 can be powered via the mini-USB connection, using either a battery
or an AC to DC power supply. The power supply can be connected to the board by a mini-USB
port designed specifically for powering up the Raspberry pi. The raspberry pi 3 can be powered
up by a DC 5V, 2A supply.
In this project we make use of Raspberry Pi by interfacing the required hardware to the
GPIO pins of the Pi and program the pins to behave in a certain way. The programming is
written in the Python IDE which is pre- installed in the operating system (Raspbian). The
program can be executed and the controls of GPIO pins can be made use of using ‘Terminal’ in
raspbian.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 12
CHAPTER 3
3.1 Circuit Analysis
Now that we have selected what version of raspberry pi we are using for this project, let
us see on how do we connect and interface the motors and servo for our needs using different
circuit and programming.
Block diagram
fig 3.1-Block diagram of Search and Rescue robot
The signal for the rotation of the motor is given from the raspberry pi to the IC L293D
which in turn gives the signal to the motors to turn according instruction given in the code. Each
IC can control 2 motors, hence 2 IC’s are used in the circuit. The signal pins of the IC is
interfaced with the GPIO pins of the Raspberry pi.
The robotic arm is made of 4 servo motors to provide 4 degrees of freedom. Each servo
has 3 pins, positive, ground and a signal pins. For controlling the servo motor the signal pins are
interfaced with raspberry pi’s GPIO pins through which the duty cycle is passed to the Servo
motor. In order to limit the current, the GPIO pins and the signal pins are connected through a
1k ohm.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 13
3.2 Flow of control for DC motors
A key is pressed in the keyboard which is interpreted by the raspberry pi. According to
the key pressed a certain function is executed.
Considering the following example of code snippet,
motor1_in1_pin = 4
motor1_in2_pin = 17
io.setup(motor1_in1_pin, io.OUT)
io.setup(motor1_in2_pin, io.OUT)
motor1 = io.PWM(4,100)
motor1.start(0)
motor1.ChangeDutyCycle(0)
The above code is used to let the raspberry pi know which pins of the GPIO is connected to
which signals of the motor. In the above shown code, the motor1 pins are interfaced to the
GPIO4 and GPIO17 pins and set as output pins. The motor pin is made a PWM pin. The pulses
sent is of 100Hz frequency and the initial duty cycle is set at 0 so that the motor is at stand still
state at the initial condition.
Each of the motor is interfaced and to different GPIO pins with the same initial conditions.
The above code is for one certain motion of the dc motors, now let us see the explanation for
each of the motion such as forward, reverse and steering.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 14
FORWARD:
def motor_forward():
io.output(motor1_in1_pin, True)
io.output(motor1_in2_pin, False)
motor1.ChangeDutyCycle(99)
io.output(motor2_in1_pin, True)
io.output(motor2_in2_pin, False)
motor2.ChangeDutyCycle(99)
io.output(motor3_in1_pin, True)
io.output(motor3_in2_pin, False)
motor3.ChangeDutyCycle(99)
io.output(motor4_in1_pin, True)
io.output(motor4_in2_pin, False)
motor4.ChangeDutyCycle(99)
The above shown code snippet is used for running all the four motors in the forward direction.
As explained in the working of the DC motors, if the input1 is provided with 1 or True and
input2 is provided with 0 or False the DC motors all rotate in the same direction. Therefore
when the above code is run, all the four motors turn in the same direction carrying the robot
forward with it.
When the key “W” is pressed in keyboard, the raspberry pi automatically initiates the forward
motion of the robot by giving the appropriate signal.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 15
REVERSE:
def motor_reverse():
io.output(motor1_in1_pin, False)
io.output(motor1_in2_pin, True)
motor1.ChangeDutyCycle(99)
io.output(motor2_in1_pin, False)
io.output(motor2_in2_pin, True)
motor2.ChangeDutyCycle(99)
io.output(motor3_in1_pin, False)
io.output(motor3_in2_pin, True)
motor3.ChangeDutyCycle(99)
io.output(motor4_in1_pin, False)
io.output(motor4_in2_pin, True)
motor4.ChangeDutyCycle(99)
The above shown code snippet is used for running all the four motors in the reverse direction.
As explained in the working of the DC motors, if the input1 is provided with 0 or False and
input2 is provided with 1 or True the DC motors all rotate in the same direction. Therefore when
the above code is run, all the four motors turn in the same direction carrying the robot reverse
with it.
When the key “S” is pressed in keyboard, the raspberry pi automatically initiates the reverse
motion of the robot by giving the appropriate signal.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 16
LEFT:
def motor_left():
io.output(motor1_in1_pin, False)
io.output(motor1_in2_pin, False)
motor1.ChangeDutyCycle(99)
io.output(motor2_in1_pin, False)
io.output(motor2_in2_pin, False)
motor2.ChangeDutyCycle(99)
io.output(motor3_in1_pin, False)
io.output(motor3_in2_pin, True)
motor3.ChangeDutyCycle(99)
io.output(motor4_in1_pin, True)
io.output(motor4_in2_pin, False)
motor4.ChangeDutyCycle(99)
The above shown code snippet is used for turning the motor towards the left. For turning the
motor left, the motors in the front end of the robot is put in IDLE state by setting both the inputs
of the motor to false and 0. The rear motors will be given such that the left end motor will rotate
in reverse direction and the right end motor will rotate in forward direction so that it takes a left
turn
When the key “A” is pressed in keyboard, the raspberry pi automatically initiates the left turn
motion of the robot by giving the appropriate signal
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 17
RIGHT:
def motor_right():
io.output(motor1_in1_pin, False)
io.output(motor1_in2_pin, False)
motor1.ChangeDutyCycle(99)
io.output(motor2_in1_pin, False)
io.output(motor2_in2_pin, False)
motor2.ChangeDutyCycle(99)
io.output(motor3_in1_pin, True)
io.output(motor3_in2_pin, False)
motor3.ChangeDutyCycle(99)
io.output(motor4_in1_pin, False)
io.output(motor4_in2_pin, True)
motor4.ChangeDutyCycle(99)
The above shown code snippet is used for turning the motor towards the left. For turning the
motor left, the motors in the front end of the robot is put in IDLE state by setting both the inputs
of the motor to false and 0. The rear motors will be given such that the right end motor will
rotate in reverse direction and the left end motor will rotate in forward direction so that it takes a
right turn
When the key “D” is pressed in keyboard, the raspberry pi automatically initiates the right turn
motion of the robot by giving the appropriate signal.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 18
STOP:
Since we need slow and steady operation of the robot, we need to be able to stop the motor as
when required. So we need to include a stop function too.
def motor_stop():
io.output(motor1_in1_pin, False)
io.output(motor1_in2_pin, False)
io.output(motor2_in1_pin, False)
io.output(motor2_in2_pin, False)
io.output(motor3_in1_pin, False)
io.output(motor3_in2_pin, False)
io.output(motor4_in1_pin, False)
io.output(motor4_in2_pin, False)
The above function makes all the input pins of all the motors set to False or 0 making the motors
in hi impedance state and in IDLE state causing the motor to stop.
When the key “Q” is pressed in keyboard, the raspberry pi automatically stops all the motors and
thereby stops the motion of the robot.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 19
3.3 Flow of control for servo motors
The servo motors in the robotic arm are also controlled by giving signal from the
keyboard. Here we use 4 servo motors for 4 degree of freedom.
As explained earlier, there are 4 servo motors used in the arm. In order to control the precise
rotation of the arm, we need to be able to control each motor individually. So we program
various keys in the keyboard to access different servo motors.
io.setmode(io.BCM)
io.setup(18, io.OUT)
pwm = io.PWM(18,50)
pwm.start(5)
The above code sets the GPIO pin of the raspberry pi to PWM so that we can send duty cycle to
the required servo motor.
def forward(du):
temp=du+0.5
du=temp
print(du)
return du
def reverse(du):
temp=du-0.5
du=temp
print(du)
return du
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 20
The above code is used to increase or decrease the duty cycle of the pulse sent to the
servo motor. When the duty cycle is to be increased the forward function is called. While for the
decreasing the duty cycle the reverse function is called.
When the key “M” is pressed in keyboard, the raspberry pi automatically sends increasing duty
cycle to the servo motor.
When the key “N” is pressed in keyboard, the raspberry pi automatically sends decreasing duty
cycle to the servo motors.
These functions can only increase or decrease the duty cycle but cannot control which servo to
be accessed.
Accessing Different Servos:
BASE:
When the key “U” is pressed in keyboard, the raspberry pi accesses the Base servo motor.
pwm.ChangeDutyCycle(rem1)
Here pwm is a reference to the servo that is connected to GPIO pin of the raspberry pi which is
connected to the signal pin of first or base motor. By increasing or decreasing the duty cycle, the
base can be rotated towards left or right.
ARM:
When the key “I” is pressed in keyboard, the raspberry pi accesses the ARM servo motor.
pwm1.ChangeDutyCycle(rem2)
Here pwm1 is a reference to the servo that is connected to GPIO pin of the raspberry pi which is
connected to the signal pin of servo in the arm. By increasing or decreasing the duty cycle, the
arm can lifted up or down
Clamp Rotation:
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 21
When the key “O” is pressed in keyboard, the raspberry pi accesses the servo for Clamp
rotation.
pwm2.ChangeDutyCycle(rem3)
Here pwm2 is a reference to the servo that is connected to GPIO pin of the raspberry pi which is
connected to the signal pin of the Clamp rotation. By increasing or decreasing the clamp can be
rotated towards left or right.
Clamp :
When the key “P” is pressed in keyboard, the raspberry pi accesses the clamp.
pwm3.ChangeDutyCycle(rem4)
Here pwm3 is a reference to the servo that is connected to GPIO pin of the raspberry pi which is
connected to the signal pin of the Clamp. By decreasing or increasing of the duty cycle we can
control the opening and closing of the clamp.
All the Pwm pins should be stopped before the termination of the program as shown in the code
below.
For ending the program, the function cleanup() is used. This helps to terminate the program in a
proper manner.
pwm.stop()
pwm1.stop()
pwm2.stop()
pwm3.stop()
io.cleanup()
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 22
CHAPTER 4
Hardware Components
4.1 Geared DC Motors [3]
DC Motors convert electrical energy (voltage or power source) to mechanical energy
(produce rotational motion). They run on direct current. The Dc motor works on the principle of
Lorentz force which states that when a wire carrying current is placed in a region having
magnetic field, than the wire experiences a force. This Lorentz force provides a torque to the
coil to rotate.
Geared DC motors can be defined as an extension of DC motor. A geared DC Motor has
a gear assembly attached to the motor. The speed of motor is counted in terms of rotations of the
shaft per minute and is termed as RPM. The gear assembly helps in increasing the torque and
reducing the speed. Using the correct combination of gears in a gear motor, its speed can be
reduced to any desirable figure. This concept where gears reduce the speed of the vehicle but
increase its torque is known as gear reduction.
fig 4.1-Geared dc motor
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 23
The lateral view of the motor shows the outer protrudes of the gear head. A nut is placed near
the shaft which helps in mounting the motor to the other parts of the assembly.
fig 4.2-shaft of dc motor
Also, an internally threaded hole is there on the shaft to allow attachments or extensions such as
wheel to be attached to the motor.
The search and rescue robot has many components mounted on top of it, naturally the
load on the wheels increases and the required torque will be much higher. Hence it is almost
ideal to use geared motors for better torque. We use 4 dc geared motors for a 4 wheel drive
system of the following specifications,
Table 4.1-dc motor specifications
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 24
4.2 Servo motors [3]
Servo motors have been around for a long time and are utilized in many applications.
They are small in size but pack a big punch and are very energy-efficient. These features allow
them to be used to operate remote-controlled or radio-controlled toy cars, robots and airplanes.
Servo motors are also used in industrial applications, robotics, in-line manufacturing,
pharmaceutics and food services.
The servo circuitry is built right inside the motor unit and has a position able shaft, which
usually is fitted with a gear (as shown below). The motor is controlled with an electric signal
which determines the amount of movement of the shaft.
fig 4.3-Servo motor with position able shaft
To fully understand how the servo works, you need to take a look under the hood. Inside
there is a pretty simple set-up: a small DC motor,potentiometer, and a control circuit. The motor
is attached by gears to the control wheel. As the motor rotates, the potentiometer's resistance
changes, so the control circuit can precisely regulate how much movement there is and in which
direction. [5]
fig 4.4-inside of a servo motor
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 25
When the shaft of the motor is at the desired position, power supplied to the motor is stopped. If
not, the motor is turned in the appropriate direction. The desired position is sent via electrical
pulses through the signal wire. The motor's speed is proportional to the difference between its
actual position and desired position. So if the motor is near the desired position, it will turn
slowly, otherwise it will turn fast. This is called proportional control. This means the motor will
only run as hard as necessary to accomplish the task at hand.
How is the servo controlled?
Servos are controlled by sending an electrical pulse of variable width, or pulse width
modulation (PWM), through the control wire. There is a minimum pulse, a maximum pulse, and
a repetition rate. A servo motor can usually only turn 90 degrees in either direction for a total of
180 degree movement. The motor's neutral position is defined as the position where the servo
has the same amount of potential rotation in the both the clockwise or counter-clockwise
direction. The PWM sent to the motor determines position of the shaft, and based on the
duration of the pulse sent via the control wire; the rotor will turn to the desired position. The
servo motor expects to see a pulse every 20 milliseconds (ms) and the length of the pulse will
determine how far the motor turns. For example, a 1.5ms pulse will make the motor turn to the
90-degree position. Shorter than 1.5ms moves it to 0 degrees, and any longer than 1.5ms will
turn the servo to 180 degrees.
fig 4.5-variable pulse width control servo position
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 26
When these servos are commanded to move, they will move to the position and hold that
position. If an external force pushes against the servo while the servo is holding a position, the
servo will resist from moving out of that position. The maximum amount of force the servo can
exert is called the torque rating of the servo. Servos will not hold their position forever though;
the position pulse must be repeated to instruct the servo to stay in position.
The robotic arm used in the Search and rescue robot uses different type of servo motors.
Since the robotic arm has 4 degree of freedom we use 4 servo motors. The specifications of
different servo motors are as given below,
Table 4.2: Servo motor types used and their specifications
High torque servo motor find application where we need to lift heavy load, and where we
have light load we can use slightly lesser rating motor. Micro servo motors are the smallest
servo motors capable of producing torque up to 2 kg-cm.
Hence these various servo motors are used in the robotic arm based on the torque
requirements.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 27
4.3 L293D Motor Driver [3]
L293D is a typical Motor driver or Motor Driver IC which allows DC motor to drive on
either direction. L293D is a 16-pin IC which can control a set of two DC motors simultaneously
in any direction. It means that you can control two DC motorwith a single L293D IC.
The pin diagram of the L293D IC is as follows
fig 4.6-L293D pin diagram
It works on the concept of H-bridge. H-bridge is a circuit which allows the voltage to be
flown in either direction. As you know voltage need to change its direction for being able to
rotate the motor in clockwise or anticlockwise direction, hence H-bridge IC are ideal for driving
a DC motor.
In a single l293d chip there two h-Bridge circuit inside the IC which can rotate two dc motor
independently. Due its size it is very much used in robotic application for controlling DC
motors. Given below is the pin diagram of a L293D motor controller.
There are two Enable pins on l293d. Pin 1 and pin 9, for being able to drive the motor, the pin 1
and 9 need to be high. For driving the motor with left H-bridge you need to enable pin 1 to high.
And for right H-Bridge you need to make the pin 9 to high. If anyone of the either pin1 or pin9
goes low then the motor in the corresponding section will suspend working. It’s like a switch.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 28
fig 4.7-Circuit Diagram For l293d motor driver IC controller
Working of L293D
There are 4 input pins for l293d, pin 2, 7 on the left and pin 15, 10 on the right as shown on the
pin diagram. Left input pins will regulate the rotation of motor connected across left side and
right input for motor on the right hand side. The motors are rotated on the basis of the inputs
provided across the input pins as LOGIC 0 or LOGIC 1.In simple you need to provide Logic 0
or 1 across the input pins for rotating the motor.
L293D Logic Table.
Let’s consider a Motor connected on left side output pins (pin 3, 6). For rotating the motor in
clockwise direction the input pins has to be provided with Logic 1 and Logic 0.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 29
• Pin 2 = Logic 1 and Pin 7 = Logic 0 | Clockwise Direction
• Pin 2 = Logic 0 and Pin 7 = Logic 1 | Anticlockwise Direction
• Pin 2 = Logic 0 and Pin 7 = Logic 0 | Idle [No rotation] [Hi-Impedance state]
• Pin 2 = Logic 1 and Pin 7 = Logic 1 | Idle [No rotation]
In a very similar way the motor can also operate across input pin 15, 10 for motor on the right
hand side.
The motor driver IChas a 5v regulator 7805. This regulator takes upto 35v input and constantly
provide an output of 5v. For better usage the maximum input to be given to 7805 should not
exceed 12v.
fig 4.8-LM7805 pin out diagram
Pin number 1 and ground act as input while pin 3 and ground act as output. This IC
regulates the outgoing voltage. Here we use this to protect the motor driver board from high
currents and voltage. this regulator limits the voltage to 5v, hence it is advised to use a voltage
regulator.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 30
4.4 Raspberry Pi camera module
The Raspberry Pi camera module can be used to take high-definition video, as well as
stills photographs. It is a small flexi-cable camera module capable of capturing high definition
videos and still pictures. The module has a five megapixel fixed-focus camera that supports
1080p30, 720p60 and VGA90 video modes, as well as stills capture. It attaches via a 15cm
ribbon cable to the CSI port on the Raspberry Pi. [4]
fig 4.9-raspberry pi camera
The camera works with all models of Raspberry Pi 1 and 2. It can be accessed through the
MMAL and V4L APIs, and there are numerous third-party libraries built for it, including
the Picamera Python library.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 31
CHAPTER 5
Prototype model and implementation
The final finished product of this project has the following capabilities,
a) forward/reverse and left/right motion with a slightly higher radius of rotation.
b) Wireless control of the robot using infrared wireless keyboard
c) Strong mechanical body fit with aluminium chassis and wooden robotic arm
d) Four degree of freedom for the robotic arm
e) Power saving mode whenever the switch if on yet the motor control is not ON
f) Wireless access to raspberry pi terminal and screen by using VNC server
g) Raspberry pi camera to give video feed for navigation.
h) Low power consumption since we are using components that use only DC supply
i) Efficient programming to control all the motors which in turn define how the robot
works.
j) Robotic arm with the help of claw is capable of removing obstacles.
The Search and Rescue robot is no longer a thing of luxury as this as to be utilized to save
lives. Our project concentrates on building and simulating a prototype model of an urban search
and rescue robot. The prototype model looks as below
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 33
CHAPTER 6
Estimation and Costing
Table 6.1 - Estimation and costing of the Search and Rescue robot
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 34
CHAPTER 7
7.1 Advantages and Disadvantages
Advantages
a) Search and Rescue robots help in disasters to save lives and reduce property damage
b) Using SAR robot, we can track and locate the human being alive in disaster zone with
accuracy and faster too
c) Often the rescuers themselves get trapped in disaster zone, using the SAR robot would avoid
that.
d) It can be used in terrorist zones to diffuse bombs etc.
e) Strong body lets the SAR hold and clear its way easily
Disadvantages
There will always be a downside to new technologies. Due to increasing costs, rescue robots are
expensive to produce. As a result, only countries that are economically stable will be able to
afford the expenses of developing and maintaining these rescue robots. In 2011, the United
States spent about $879 million in developing these field robots (International federation of
robotics, 2012). These numbers are only projected to continue to steady rise. It is projected that
sales of all kinds of robots for domestic tasks could reach almost 11 million units in the period
2012-2015, with a projected worth of US$ 4.8 billion (International federation of robotics,
2012). According to CBC News Broadcasted Documentary, Remote Control War, autonomous
robots are no longer science fiction anymore (May 2011). This means that the robots
themselves are program to make decisions by themselves. These decisions have been
programmed to act accordingly to the situation. The robot will have the power to make
judgments by itself and this brings controversy. There will always be people against autonomous
robots; however these rescue robots are designed to help us during situation of need.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 35
7.2 Future Upgrades for current model
The search and robot designed and created is a basic drone capable of locating and
sending message for extraction. As the technology advances the need for upgrade is beneficial
and quite required, hence these are the ideas that can improve the quality of the search and
rescue robot
a) Make the SAR much smaller and lighter
b) Waterproof for underwater rescue operations and fire resistant body in case of fire
emergencies
c) Include CO2 sensors and night vision for better tracking
d) SAR can be implemented in air drones
e) Automation is another huge upgrade
These upgrades are for the future versions of the SAR robots. Even though this is a relativistic
ally new field of science, it has progressed a lot.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 36
CHAPTER 8
Conclusion
SAR had just been an idea that could’ve been implemented when we started with the
project. Now we’ve tried to incorporate what we’ve learned and put it together to make the idea
into reality. We came across a lot of challenges during the designing and the implementation of
SAR, but we’ve overcome those and created SAR. SAR is now capable of removing obstacle,
move in uneven terrains and also can be controlled remotely so that no human being will be
jeopardized during a rescue mission at the same time we assess the situation before we send
another life into harsh and unstableenvironment. It can also help us to be better equipped if there
is any need to be subjected in such scenarios.
The advantage of using such a system would be mainly to save human lives.
Search And Rescue Robot
Dept. Of EEE,CMRIT Page 37
References
[1]www.en.wikipedia.org
[2]https://www.raspberrypi.org
[3]www.rakeshmondal.info
[4]www.element14.com
[5]www.servodatabase.com
[6]www.instructables.com