Comments
Description
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