...

ハ タニサ ョフソZーサ |»

by user

on
Category: Documents
8

views

Report

Comments

Transcript

ハ タニサ ョフソZーサ |»
280-271
4
16
1395
mme.modares.ac.ir
*2
1
-1
-2
*
[email protected] 14395 -1561
.
.
.
TL-PR
.
.
.
.
5
.
.
1394 16 :
1394
20 :
1395
01 :
.
.
.
.
.
Design and development of a mobile robot for implementing obstacle avoidance
techniques based on fuzzy logic and vision
Ali Ravari1, Mehdi Tale Masouleh2*
1-Department of Electrical and Computer Engineering, Semnan Science and Research Branch , Islamic Azad University Semnan, Iran
2- Human and Robot Interaction Laboratory, Faculty of New Sciences and Technologies, University of Tehran, Tehran, Iran
* P.O.B. 14395-1561, Tehran, Iran, [email protected]
ARTICLE INFORMATION
ABSTRACT
Original Research Paper
Received 06 January 2016
Accepted 09 February 2016
Available Online 20 April 2016
This article presents the mechanical design process of a mobile robot which is named TL-PR. Two
separate algorithms are applied for obstacle avoidance purpose that are experimentally implemented on
the proposed robot. The control board Arduino which is used for the under study robot is an open source
board. In order to receive the images that are used for obstacle detection and obstacle avoidance a
Kinect sensor is installed in the proposed robot. The structure of TL-PR is a creative, simple and low
cost structure. Two methods are implemented on the proposed robot for obstacle avoidance. The first
one is based on ultrasonic sensor. Five ultrasonic sensors are set around the proposed robot structure.
The fuzzy control is used to manage the output data of the ultrasonic sensors and the rules of the fuzzy
control are set on the matlab software. The second method which is used for obstacle detection and
avoidance is based on image processing algorithm. A Kinect sensor is set on the top of the robot
structure for image processing to detect the obstacles. The second method consists of processing the
visual studio software and it run based on the OpenCV library. The proposed robot is a desirable
platform for the @home robots. The laptop, which is set on the robot made the robot compatible for
implementing the various control and image processing algorithms.
Keywords:
Mobile robot
Kinect
OpenCV
Arduino
Fuzzy method
-1
2
.
.
2- At home robot
Please cite this article using:
.
.
1
-
.
.
1- Mobile robot
:
A. Ravari, M. Tale Masouleh, Design and development of a mobile robot for implementing obstacle avoidance techniques based on fuzzy logic and vision, Modares Mechanical
Engineering, Vol. 16, No. 4, pp. 271-280, 2016 (in Persian)
.
1
.
1
3
2
.[1]
.
4
.
.
Fig. 1 Block diagram of TL-PR robot
1
.[2]
5
.
6
-
.
.
8
7
.[3]
9
Fig. 2 TL-PR robot, designed in Human and Robot Interaction
Laboratory
2
.
.
.
.
.
.[4]
12
.
.
.
.
.
2
.
.
.[5]
11
.[6]
.
.
.
12- Real time
4
16
1395
.
.
-
.
.[7]
.
.
.
10
.
1- Path planning
2- Object detection
3- Obstacle avoidance
4- Present robots
5- Sensor fusion
6- Open source
7- RGB
8- CL nui
9- Open CV
10- Local
11- Global
272
.
.
.
.
.
.
.
.[8]
.
.
2
1
.
.
.
.
.
.
.[9]
.
.
.
4
.
.
.[11]
.
.
.
.
.
.
.
.
3
–
.
.
.
.
.
.
.
.
.
.
.
.
.[10]
.
5
.
.
.
.
.
4
273
.
6
.
.
.
10
3
4- Differential drive
5- Arduino
6- RPM
.
.
25
.
.
-2
.
1- Ultrasonic
2- Ir
3- If-then
4
16
1395
Fig. 3 Block diagram for image processing system with fuzzy control
3
.[13]
-3
-3-3
10
.
.
.
.
25
2.2
.
4
12
-1-3
12
.
.
-
.
.
.
.
.
-4-3
.
3.3
9
.
2560
-
16
1
54
4
16
.[12]
2
.
5
-2-3
6
.
33
.
7809
7805
.
.
5
.
-5-3
.
.
.
16
1395
.
4
.
3
sr04
5
6- Regulator
4
.
3
.
.
.
.
1- Uart
2- usb
3- L298
4- H-bridge
5- IC
274
1
.
5
4
4
-
3
2
.
80
.[14]
-6-3
.
.
.
.
Fig. 4 Run algorithm1 and obtained depth image from Kinect
1
4
.
8
.
.
.
45
.
.
.
.[16]
.
.
9
.
.
.
.
.
5
.
6
.[15]
7
.
.
.
Y
Y
.
X
.
X
.
.
.
.
.
.
.
.
.
.
8
3
.
1
2
.
.
.
.
.
8- Depth image
9- Region of interest (ROI)
275
.
.
.
.
.
-4
.
45
45
1- GND
2- Trig
3- Eco
4- PWM
5- VGA(video graphic array)
6- CL nui
7- SDK (Software development kit)
4
16
1395
0
Algorithm. 1 Pseudo-code for image processing algorithm
1
1
.
.
.
2
.
.
.[17]
.
‘F’
‘R’
‘L’
.
.
2
2
.
.
‘T’
1
.
.
Algorithm. 2 The Pseudo-code for Arduino.
.
.
-
.
(1)
.
11
( , )=
( , )
y
(1)
x
q
.
.[12]
m
3
(x,y)
8
p
n
I
.
m
-6
.
5
:[18]
.(
.
.
6
-5
.
7
.
)
)
-1-6
4
.
.
1- Area
2- Moment
3- Intensity
4- Serial port
4
16
1395
276
.
1
5
3
4
.
2
.
.
6
.
5
Fig. 5 Fuzyy system block with 5 input and 2 output
20
.
5
.
1
.
2
5
5
20
.
1
1
.
1
5
Fig. 6 Input fuzzy system from ultrasonic sensor 1
3
1
.[19]
5
4
3
4
.
.
3
5
2
2
.
.
3
.
6
.
5
Fig. 7 Output fuzzy system from motor right voltage
7
.
(
5
.
.
2
2
1
.
8
1
.
9
3
)
.
.
2
.
.
-2-6
.
.
.[6]
.
12
.
.
6
42
.
0
9
1
5
.
.
.
0
2
6
.[18]
.
5
1- PWM
277
4
16
1395
.
.
.[20]
9
12
8
10
.
10
9
.
.
.
42
1
.
.
2
1
42
.[21]
10
11
.
.
.
2
Fig. 8 Surface fuzzy logic system for sensor1 and sensor2
for motor right
2 1
8
Algorithm. 3 The pseudo-code for fuzzy logic
3
11
.
10
.
.[22]
.
3
Fig. 9 Surface fuzzy logic system for sensor1 and sensor2
for motor left
2 1
3- http://taarlab.com/files/ravari.mp4
4
16
1395
9
1- Normal
2- Normal_L
278
Fig. 10 The path generated by TL-PR robot when one
obstacle is detected
Fig. 11 The path generated by TL-PR robot when two
obstacles is detected
TL-PR
TL-PR
11
.
.
1
Table. 1 Fuzzy rules used in fuzzy algorithm
.
.
.
.
.
.
AND
.
.
.
.
.
OR
1
.
-8
Sens1
Sens2L
Sens3R
Sens4L
Sens5R
MotorR
MotorL
non
detect
non
detect
non
detect
non
detect
non
detect
non
detect
non
non
detect
non
detect
non
non
non
non
non
non
non
non
non
blind
blind
blind
detect
non
detect
non
non
detect
detect
detect
detect
blind
detect
detect
blind
non
non
non
detect
non
detect
non
non
non
detect
non
detect
detect
non
non
detect
detect
non
non
non
blind
non
non
non
non
non
non
non
blind
detect
non
non
detect
non
detect
non
blind
non
blind
blind
detect
detect
non
non
non
non
non
non
non
detect
non
detect
non
detect
detect
non
detect
non
non
detect
non
non
non
blind
non
non
non
non
non
detect
blind
non
non
detect
non
detect
detect
non
non
blind
blind
detect
blind
detect
non
non
non
detect
detect
non
non
non
detect
non
non
detect
detect
non
detect
non
detect
detect
blind
non
non
non
non
blind
non
non
non
non
blind
detect
detect
non
detect
non
non
detect
blind
non
blind
blind
detect
detect
non
non
detect
non
non
non
detect
non
non
non
detect
non
detect
detect
detect
detect
detect
non
non
non
non
non
non
non
non
blind
non
detect
blind
non
non
detect
non
detect
non
detect
non
blind
blind
detect
blind
detect
fast
normal
fast
stop
fast
normal
fast
stop
fast
normal
fast
stop
normal
fast
normal
normal
stop
fast
stop
normal
stop
normal
normal
stop
normal
normal
stop
normal
Stop
Stop
Fast
normal
Stop
normal
normal
normal
Stop
normal
Stop
Stop
normal
Stop
fast
stop
fast
normal
fast
stop
fast
normal
fast
stop
fast
normal
normal
fast
stop
stop
normal
fast
normal
normal
normal
stop
normal
normal
normal
stop
normal
stop
stop
normal
fast
stop
normal
stop
stop
stop
normal
stop
stop
normal
stop
stop
" " ""
[1] X. Li, B.-J. Choi, Design of obstacle avoidance system for mobile
robot using fuzzy logic systems, International Journal of Smart
Home, Vol. 7, No. 3, pp. 321-328, 2013.
[2] D. Itô, Robot Vision: Strategies, Algorithms and Motion Planning,
pp. 123-170, New York: Nova Science Publishers, 2009.
1- Model predictive controller (MPC)
.
.
.
279
10
-7
TL-PR
.
4
16
1395
Springer, 2011.
[14]J. Borenstein, H. Everett, L. Feng, Where am I? Sensors and
methods for mobile robot positioning, University of Michigan, Vol.
119, No. 120, pp. 27, 1996.
[15]E. R. Melgar, C. C. Diez, Arduino and Kinect Projects: Design,
Build, Blow Their Minds, pp. 23-99, New York: Springer, 2012.
[16]J. R. Parker, Algorithms for image processing and computer vision,
pp.21-85, Indianapolis: Wiley, 2010.
[17]A. Hornberg, Handbook of machine vision, pp. 35-73, Germany:
Wiley, 2007.
[18]L.-X. Wang, Adaptive fuzzy systems and control: design and
stability analysis, pp. 37-85, New Jersey: Prentice-Hall, 1994.
[19]M.H. Korayem, M. Nazemizadeh, H. Ghaffarpour, Optimal path
planning of nonholonomic mobile robots using optimal control
method and verification of the method via experimental tests of the
scout mobile robot, Modares Mechanical Engineering, Vol. 12,
No. 2, pp. 87-94, 2012 .(in Persian
)
[20]T. Samu, N. Kelkar, E. L. Hall, Fuzzy Logic Control System for
Three Dimensional Line Following for a Mobile Robot, Center for
Robotics Research, Vol. 1050, pp. 72, 1996.
[21]A. Farivar, M. Zakerzadeh, Design, Construction and Control of
Two-Wheel Self-Balancing Robot, Modares Mechanical
Engineering, Vol. 15, No. 7, pp. 188-198, 2015 .(in Persian
)
[22]B. Miripour Fard, A. Hassani, S. Farhani, M. Najari, Design and
fabrication of minesweeper spider robot based on the Klann
mechanism, Modares Mechanical Engineering, Vol. 15, No. 4, pp.
321-330, 2015 .(in Persian
)
4
16
1395
[3] J. Borenstein, Y. Koren, Obstacle avoidance with ultrasonic
sensors, IEEE Journal of Robotics and Automation, Vol. 4, No. 2,
pp. 213-218, 1988.
[4] J. Borenstein, Y. Koren, Real-time obstacle avoidance for fast
mobile robots in cluttered environments, Proceeding of Robotics
and Automation Conference, Cincinnati, IEEE, pp. 572-577, 1990.
[5] I. Kostavelis, L. Nalpantidis, A. Gasteratos, Real-time algorithm
for obstacle avoidance using a stereoscopic camera, Proceeding of
Third Panhellenic Scientific Student Conference, Greece, 2009.
[6] M. H. Araghi, M. Menhaj, A Combined Collision Cone and Fuzzy
Based Obstacle Avoidance Algorithm for the Small Size Soccer
Robots, Proceeding of ARCS Conference, pp.151-158, 2008.
[7] J. Weickert, Anisotropic diffusion in image processing, Teubner
Stuttgart, 1998.
[8] B. Siciliano, O. Khatib, F. Groen, Springer Tracts in Advanced
Robotics, pp.72-98, Berlin: Springer, 2002.
[9] G. Bradski, A. Kaehler, Learning OpenCV: Computer Vision with
the OpenCV Library, pp.16-107, California: O'Reilly Media, 2008.
[10]S. Shukla, M. Tiwari, Fuzzy logic of speed and steering control
system for three dimensional line following of an autonomous
vehicle, International Journal of Computer Science and
Information Security, Vol. 7, No.3, USA, IEEE, 2010.
[11]S. Hirose, A. Morishima, Design and control of a mobile robot with
an articulated body, The International Journal of Robotics
Research, Vol. 9, No. 2, pp. 99-114, 1990.
[12]M. Banzi, Getting started with Arduino, pp.17-68, California:
O'Reilly Media, 2011.
[13]J.-D. Warren, J. Adams, H. Molle, Arduino for Robotics, pp. 51-82,
280
Fly UP