Titre : | Obstacle avoidance of an autonomous car using Raspberry Pi |
Auteurs : | El-hadj Ahmed BAIDJI, Auteur ; Foudil Cherif, Directeur de thèse |
Type de document : | Monographie imprimée |
Editeur : | Biskra [Algérie] : Faculté des Sciences Exactes et des Sciences de la Nature et de la Vie, Université Mohamed Khider, 2019 |
Format : | 1 vol. (110 p.) / ill. / 29 cm |
Langues: | Anglais |
Mots-clés: | vision,autonomous car,Raspberry Pi,sensor,avoiding,obstacle . |
Résumé : |
The project aims to build a monocular vision autonomous car prototype using Raspberry Pi as a processing chip. An HD camera along with an ultrasonic sensor is used to provide necessary data from the real world to the car. The car is capable of reaching the given destination safely and intelligently thus avoiding the risk of human errors. Many existing algorithms like lane detection, obstacle detection are combined together to provide the necessary control to the car. |
Sommaire : |
Introduction 1 1. Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2. Purposes and goals of the thesis . . . . . . . . . . . . . . . . . . . . . 1 3. Structure of the thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1 Robots and Their Applications 3 1.1 De?nition of robot . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 Classi?cation of Robots . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Framework of roadmap of robotics . . . . . . . . . . . . . . . . . . . 7 1.4 Robotics Applications . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.4.1 Industrial Robots . . . . . . . . . . . . . . . . . . . . . . . 8 1.4.2 Autonomous Mobile Robots . . . . . . . . . . . . . . . . . . 9 1.4.3 Educational Robots . . . . . . . . . . . . . . . . . . . . . . . 11 1.5 Welfare bene?ts and advantages of robotics . . . . . . . . . . . . . . 12 1.6 Biggest Challenges in Robotics . . . . . . . . . . . . . . . . . . . . . 13 1.6.1 New materials, fabrication methods . . . . . . . . . . . . . . 13 1.6.2 Creating bio-inspired robots . . . . . . . . . . . . . . . . . . 13 1.6.3 Better power sources . . . . . . . . . . . . . . . . . . . . . . 14 1.6.4 Navigating unmapped environments . . . . . . . . . . . . . . 15 1.6.5 Ethics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2 Sensing and Navigation 18 2.1 Sensor Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.1.1 Sensor concept . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.1.2 Physics of Sensors . . . . . . . . . . . . . . . . . . . . . . . . 20 2.1.3 Sensor Characteristics . . . . . . . . . . . . . . . . . . . . . 20 2.1.4 Classi?cation of Sensors . . . . . . . . . . . . . . . . . . . . 22 2.1.5 Sensor Function . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.1.6 Sensor Types . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.1.6.1 Chemical sensors . . . . . . . . . . . . . . . . . . . 25 2.1.6.2 Electrical sensors . . . . . . . . . . . . . . . . . . . 26 2.1.6.3 Optical sensors . . . . . . . . . . . . . . . . . . . . 27 2.1.6.4 Camera . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2 Real-Time Obstacle Avoidance Algorithm for Mobile Robots . . . . 29 2.2.1 Brief Overview of the Existing Obstacle Avoidance Algorithms 29 2.2.1.1 The Bug Algorithms . . . . . . . . . . . . . . . . . 29 2.2.1.2 The Potential Field Algorithm . . . . . . . . . . . 30 2.2.1.3 The Vector Field Histogram (VFH) Algorithm . . . 31 2.2.1.4 The Bubble Band Technique . . . . . . . . . . . . 32 2.2.1.5 Other Obstacle Avoidance Algorithms . . . . . . . 32 2.2.2 Description of the Proposed Algorithms . . . . . . . . . . . . 33 2.2.2.1 Detection of Obstacles . . . . . . . . . . . . . . . . 33 2.2.2.2 Description of the Algorithm . . . . . . . . . . . . 34 3 Computer Vision and Autonomous Vehicles 37 3.1 Computer vision . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.1.1 Object detection . . . . . . . . . . . . . . . . . . . . . . . . 38 3.1.2 Simple detection by colour . . . . . . . . . . . . . . . . . . . 38 3.1.3 Introduction of Haar-like features . . . . . . . . . . . . . . . 39 3.1.4 Cascade classi?er . . . . . . . . . . . . . . . . . . . . . . . . 40 3.2 Related work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.2.1 PureTech Systems Car Counting . . . . . . . . . . . . . . . 41 3.2.2 Autonomous Real-time Vehicle Detection . . . . . . . . . . . 41 3.2.3 Monocular Vehicle Detection and Tracking . . . . . . . . . . 42 3.3 Object detection using Haar-cascade classi?er . . . . . . . . . . . . 43 3.3.1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.3.2 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.3.2.1 Recorder . . . . . . . . . . . . . . . . . . . . . . . 44 3.3.2.2 Detector . . . . . . . . . . . . . . . . . . . . . . . . 44 3.3.2.2.1 Background subtraction . . . . . . . . . . 44 3.3.2.2.2 Background subtraction augmentation . . 45 3.3.2.3 Regional merging . . . . . . . . . . . . . . . . . . . 47 3.3.3 Training cascade . . . . . . . . . . . . . . . . . . . . . . . . 48 3.4 Color detection using HSV method . . . . . . . . . . . . . . . . . . 50 3.4.1 Hue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.4.2 Saturation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.4.3 Value (or Brightness) . . . . . . . . . . . . . . . . . . . . . . 51 4 Tools for dynamics simulation of robots 53 4.1 De?nition of simulator . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.2 The role of simulation . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.3 Challenges in simulation . . . . . . . . . . . . . . . . . . . . . . . . 56 4.4 Overiew of simulators . . . . . . . . . . . . . . . . . . . . . . . . . . 57 4.4.1 Important features for simulation . . . . . . . . . . . . . . . 57 4.4.2 Criteria for choosing a simulator . . . . . . . . . . . . . . . . 58 4.4.3 Currently used tools . . . . . . . . . . . . . . . . . . . . . . 58 4.4.4 Tools for robots . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.5 SOFTWARE INFORMATION FICHES . . . . . . . . . . . . . . . 62 4.5.1 Gazebo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.5.2 ARGoS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4.5.3 ODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 4.5.4 Bullet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 4.5.5 V-Rep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 4.5.6 Webots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 4.5.7 OpenRave . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.5.8 Robotran . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.5.9 XDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 5 Conception ,Implementation and Development 69 5.1 Environment description . . . . . . . . . . . . . . . . . . . . . . . . 71 5.2 Global architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 5.3 Detailed architecture . . . . . . . . . . . . . . . . . . . . . . . . . . 73 5.3.1 Use case diagram for autonomous-system of smartCar . . . . 73 5.3.2 Sequence Diagrams for autonomous-system of smartCar . . . 75 5.3.2.1 Sequence Diagram : connection scenario . . . . . . 75 5.3.2.2 Sequence Diagram : initialization hardware scenario 76 5.3.2.3 Sequence Diagrams : avoid obstacle scenario . . . . 77 5.4 Protocol used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 5.4.1 I2C Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5.4.1.1 Principal . . . . . . . . . . . . . . . . . . . . . . . 79 5.4.1.2 How I2C works . . . . . . . . . . . . . . . . . . . . 79 5.4.2 RTSP Protocol . . . . . . . . . . . . . . . . . . . . . . . . . 81 5.5 Technologies and structures used . . . . . . . . . . . . . . . . . . . 82 5.5.1 Web API . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 5.5.1.1 De?nition . . . . . . . . . . . . . . . . . . . . . . . 82 5.5.1.2 Why is a web API not a web service? . . . . . . . . 82 5.5.2 Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 5.6 Setup software and hardware . . . . . . . . . . . . . . . . . . . . . . 84 5.6.1 Driver motor . . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.6.1.1 Driver motor L298N . . . . . . . . . . . . . . . . . 84 5.6.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . 85 5.6.1.3 Motor speed control . . . . . . . . . . . . . . . . . 86 5.6.1.4 Motor direction control . . . . . . . . . . . . . . . 87 5.6.2 Ultrasonic sensor . . . . . . . . . . . . . . . . . . . . . . . . 88 5.6.2.1 Ultrasonic sensor HC-SR04 . . . . . . . . . . . . . 88 5.6.2.2 Features . . . . . . . . . . . . . . . . . . . . . . . . 88 5.6.2.3 How Does it Work? . . . . . . . . . . . . . . . . . . 89 5.6.3 LCD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 5.6.3.1 How connect LCD? . . . . . . . . . . . . . . . . . . 91 5.6.4 Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 5.6.4.1 How can camera detect non-material obstacle? . . . 92 5.7 Global pseudo Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 94 5.8 Global circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.9 Environment for Development . . . . . . . . . . . . . . . . . . . . . 97 5.9.1 Environment of Hardware and Software . . . . . . . . . . . . 97 5.9.2 Libraries and languages of programmation . . . . . . . . . . 98 5.10 Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Conclusion 104 1. Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 2. Perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Bibliography 106 |
Type de document : | Mémoire master |
Disponibilité (1)
Cote | Support | Localisation | Statut |
---|---|---|---|
MINF/451 | Mémoire master | bibliothèque sciences exactes | Consultable |