ebook img

Desarrollo de un prototipo de vehículo autónomo semi-inteligente basado en Arduino PDF

167 Pages·2016·8.2 MB·Spanish
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Desarrollo de un prototipo de vehículo autónomo semi-inteligente basado en Arduino

EscuelaTécnicaSuperiordeIngenieríaInformática UniversitatPolitecnicadeValencia Desarrollo de un prototipo de vehículo autónomo semi-inteligente basado en Arduino PROYECTO FINAL DE CARRERA IngenieríaInformática Autor: TomásNavarroCosme Director: JoaquínGraciaMorán Codirector: JuanCarlosRuizGarcía Septiembrede2016 . Abstract ThisprojectpresentsthedesignandimplementationontheArduinoplatformofseveralbasical- gorythmsrelatedwithsomefunctionalitiesneededintheautomotiveautonomousnavigation,likeline tracking,lightseekingandobstacleavoidance. Theimplementationshavebeendoneintwodifferent prototipes, withdissimilarphysicalandmovementcharacteristics, andwithdifferentkindofsensors, soeachprototipehasneeditsownimplementationofeachfunctionality,requiringsometimesthatthe algorythmitselftobedistinct. Besides,thesebasicalgorythmshasbeencombinedtoobtainaworkingprototipeofacarwithAdap- tiveCruiseControl,whichinteractinreal-timewiththeothercarinthesamecircuit. Keywords: Arduino,ADAS,ACC,AdaptiveCruiseControl,linetracking,obstacleavoidance,security,al- gorithm,automotive,automation Resumen EnestePFCsepresentaeldiseñoeimplementaciónenlaplataformadeArduinodevariosalgo- ritmosbásicosrelacionadosconalgunasfuncionalidadesnecesariasparalanavegaciónautónomade vehículos,talescomoelseguimientodetrayecto,elguiadoporluz(deteccióndeluminosidad),ylaevi- tacióndeobstáculos.Lasimplementacionessehanrealizadoendosprototiposdiferentes,condistintas característicasfísicasydemovimiento,ycondiferentessensores,detalformaquecadaprototipoha necesitadosupropiaimplementacióndecadafuncionalidad,inclusoavecesconalgoritmodiferente. Además, esos algoritmos básicos se han combinado para obtener un prototipo funcional de un coche con Control de velocidad adaptativo, el cual interactua en tiempo real con el otro vehículo en elmismocircuito. Palabrasclave:Arduino,ADAS,ACC,Controldevelocidadadaptativo,seguimientodetrayecto,evitación deobstáculos,seguridad,algoritmo,automoción,automatización I ÍNDICE ABREVIADO Índiceabreviado · III Índicegeneral · V Índicedefiguras · IX Índicedetablas · X Índicedelistadosdecódigo · X 1 Introducción · 1 2 Conocimientosprevios · 3 3 Especificaciónderequisitos · 17 4 Implementación · 23 5 Resultados · 59 6 Conclusiones · 81 7 Trabajofuturo · 83 Anexos · 85 A Seguimientodetrayecto:conexionadosycódigos · 87 B Seguimientodeluz:conexionadoycódigo · 99 C Evitacióndeobstáculos:conexionadoycódigo · 107 D ACC:conexionadoycódigo · 125 Glosario · 147 Siglas · 148 Bibliografía · 151 III ÍNDICE GENERAL Índiceabreviado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . III Índicegeneral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V Índicedefiguras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IX Índicedetablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X Índicedelistadosdecódigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X 1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Conocimientosprevios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1. Laautomatizaciónenelsectordelautomóvil . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1.1. Brevehistoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1.2. Organizacionesdelsectordelaautomoción . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2. Tendenciaactual:hacialanavegaciónautónoma . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2.1. Nivelesdeautomatizacióndelaconducciónautónoma . . . . . . . . . . . . . . . . . 6 2.2.2. Clasificacióndelossistemasavanzadosdeasistenciaalconductor(ADAS) . . . . . 8 2.2.3. FuentesdeinformaciónsobreADAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.3. ACC:elcontroldevelocidadadaptativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.1. EvolucióndelACC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3.2. TérminosdirectamenterelacionadosconelACC . . . . . . . . . . . . . . . . . . . . . 11 2.3.3. IntegracióndelasfuncionalidadesbásicasdelACC . . . . . . . . . . . . . . . . . . . 11 2.3.3.1. Seguimientodetrayecto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3.3.2. Deteccióndevariacióndelailuminación . . . . . . . . . . . . . . . . . . . 12 2.3.3.3. Evitacióndeobstáculos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4. Seguridadyfiabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.1. Seguridadvial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.2. Seguridaddelsoftware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.3. Ciberseguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.4.4. Fiabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5. Desarrolloexperimentalconprototipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.1. Escalasdeprototipado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.2. Aplicacióndelateoríadecontrol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.5.3. Prototipadoaescalapequeña . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3 Especificaciónderequisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.1. Especificacióntécnicadelaplataformahardware . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.2. Seguimientodetrayectosbasadoenunalínea . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 V 3.3. Seguimientodeluzydeteccióndeniveldeluminosidad . . . . . . . . . . . . . . . . . . . . . 19 3.4. Evitacióndeobstáculos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.5. Controldevelocidadadaptativo(ACC). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4 Implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.1. Plataformahardware:Arduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 4.1.1. Arduino:laplataformaopenhardwaremásextendida . . . . . . . . . . . . . . . . . . 24 4.1.2. RazonesdelaseleccióndelaplataformaArduino . . . . . . . . . . . . . . . . . . . . 25 4.1.3. Característicasdelosprototiposutilizados. . . . . . . . . . . . . . . . . . . . . . . . . 27 4.1.3.1. Vehículodetraccióndedosruedasyunúnicoejedegiro(SunFounder™) 27 4.1.3.2. Vehículo de tracción a las cuatro ruedas, fijas, con capacidad rotatoria (4WD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.2. Seguimientodeuntrayectodefinidoporunalínea . . . . . . . . . . . . . . . . . . . . . . . . 30 4.2.1. CocheSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.2.1.1. Especificacioneshardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.2.1.2. Algoritmoconsensoresanalógicos . . . . . . . . . . . . . . . . . . . . . . . 31 4.2.1.2.1. Descripcióngeneral . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.2.1.2.2. Adaptaciónespecíficaalprototipo . . . . . . . . . . . . . . . . 32 4.2.1.2.3. Formalizacióncomputacional . . . . . . . . . . . . . . . . . . . 35 4.2.1.2.4. Comentariossobreelalgoritmo . . . . . . . . . . . . . . . . . . 36 4.2.2. Coche4WD,concuatroruedasmotricesycapacidadauto-rotante . . . . . . . . . . 36 4.2.2.1. Especificacioneshardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.2.2.2. Algoritmoconsensorestodo/nada . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.2.2.1. Descripcióngeneral . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.2.2.2. Adaptaciónespecíficaalprototipo . . . . . . . . . . . . . . . . 37 4.3. Seguimientodeluz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.3.1. CocheSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.3.1.1. Especificacioneshardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.3.1.2. Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.3.1.2.1. Descripcióngeneral . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.3.1.2.2. Adaptaciónespecíficaalprototipo . . . . . . . . . . . . . . . . 40 4.3.1.2.3. Formalizacióncomputacional . . . . . . . . . . . . . . . . . . . 40 4.3.1.2.4. Comentariossobreelalgoritmo . . . . . . . . . . . . . . . . . . 41 4.4. Evitacióndeobstáculos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.4.1. Algoritmoparasensorestodo/nada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.4.1.1. Especificacioneshardware:prototipoSunFounder™ . . . . . . . . . . . . 42 4.4.1.1.1. Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.4.1.1.2. Condicionesyrestricciones . . . . . . . . . . . . . . . . . . . . 43 4.4.1.1.3. Principiosdelalgoritmo . . . . . . . . . . . . . . . . . . . . . . 43 4.4.1.1.4. Descripcióndelalgoritmo . . . . . . . . . . . . . . . . . . . . . 43 4.4.1.1.5. DiagramaBPMNdelalgoritmo . . . . . . . . . . . . . . . . . . 44 4.4.1.1.6. Diseñodelaimplementación . . . . . . . . . . . . . . . . . . . 45 4.4.1.1.7. Descripcióndelaimplementación . . . . . . . . . . . . . . . . 46 4.4.1.1.8. Adaptaciónespecíficaalprototipo . . . . . . . . . . . . . . . . 46 4.4.2. Algoritmoparasensoresanalógicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.4.2.1. Especificacioneshardware:prototipo4WD . . . . . . . . . . . . . . . . . . 48 4.4.2.1.1. Descripcióngeneraldelalgoritmo . . . . . . . . . . . . . . . . 48 VI 4.4.2.1.2. Descripcióndelosparámetrosprincipales . . . . . . . . . . . 49 4.4.2.1.3. Adaptaciónespecíficaalprototipo . . . . . . . . . . . . . . . . 51 4.4.2.1.4. Formalizacióncomputacional . . . . . . . . . . . . . . . . . . . 52 4.4.2.2. Diseñodelaimplementación . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.5. Controldevelocidadadaptativo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.5.1. Especificacioneshardware:prototipoSunFounder™ . . . . . . . . . . . . . . . . . . 55 4.5.2. Especificacioneshardware:prototipo4WD . . . . . . . . . . . . . . . . . . . . . . . . 55 4.5.3. Algoritmodelcontroldevelocidadadaptativo . . . . . . . . . . . . . . . . . . . . . . 56 4.5.3.1. Descripcióngeneral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.5.3.2. Formalizacióndelalgoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 4.5.3.3. Descripcióndelosparámetrosprincipales . . . . . . . . . . . . . . . . . . . 57 4.5.3.4. Adaptaciónespecíficaalprototipo . . . . . . . . . . . . . . . . . . . . . . . 58 5 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.1. Montaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.1.1. Incidenciasenelmontaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.1.2. Conexionados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.2. Seguimientodetrayecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.2.1. PrototipoSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.2.1.1. Pruebasconotrasplacashardware . . . . . . . . . . . . . . . . . . . . . . . 61 5.2.1.1.1. Utilizacióndeunaotratarjetadeexpansiónparasensores . . 62 5.2.1.1.2. ArduinoMega2560. . . . . . . . . . . . . . . . . . . . . . . . . 63 5.2.1.1.3. IntelGalileo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 5.2.2. Prototipo4WD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 5.2.3. Conclusióndelaprueba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 5.3. Seguimientodeluz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 5.3.1. Montajesrealizados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 5.3.2. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 5.3.3. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 5.4. Evitacióndeobstáculos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 5.4.1. PrototipoSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 5.4.1.1. Pruebasconelcódigooriginal . . . . . . . . . . . . . . . . . . . . . . . . . . 68 5.4.1.2. Pruebasconelnuevoalgoritmopropuesto . . . . . . . . . . . . . . . . . . 68 5.4.1.3. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 5.4.2. Prototipo4WD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 5.4.3. Comparaciónentrelasdiferentespruebas . . . . . . . . . . . . . . . . . . . . . . . . . 70 5.5. Controldevelocidadadaptativo(ACC). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 5.5.1. Diseñoexperimental. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 5.5.2. Montajesdelosprototipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 5.5.2.1. Eleccióndelossensoresdedeteccióndeobstáculos . . . . . . . . . . . . . 72 5.5.2.2. Nuevasmodificacionesenelmontaje. . . . . . . . . . . . . . . . . . . . . . 73 5.5.3. Realizaciónexperimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 5.5.3.1. ConocimientodeladinámicadelosmotoresDC . . . . . . . . . . . . . . . 74 5.5.3.2. ProblemasalincluirunnuevonodoenelbusIIC . . . . . . . . . . . . . . . 75 5.5.3.3. Parametrizacióndelapartedelseguimientodelíneas . . . . . . . . . . . . 76 5.5.3.4. ParametrizacióndelapartedelcontrolPID . . . . . . . . . . . . . . . . . . 77 5.5.3.5. Ajustedevelocidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 VII 5.5.4. ParametrizacióndefinitivadelACC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 5.5.5. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5.5.6. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 6 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 7 Trabajofuturo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 Anexos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 A Seguimientodetrayecto:conexionadosycódigos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 A.1. PrototipoSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 A.1.1. Conexionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 A.1.2. CódigoenArduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 A.2. Prototipo4WDcontressensoresporIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 A.2.1. Conexionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 A.2.2. CódigoenArduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 B Seguimientodeluz:conexionadoycódigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 B.1. SeguimientodeluzenelSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 B.1.1. Conexionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 B.1.2. CódigoenArduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 C Evitacióndeobstáculos:conexionadoycódigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 C.1. PrototipoSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 C.1.1. Conexionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 C.1.2. CódigoenArduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 C.2. Prototipo4WDcontressensoresporIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 C.2.1. Conexionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 C.2.2. CódigoenArduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 D ACC:conexionadoycódigo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 D.1. PrototipoSunFounder™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 D.1.1. CódigoenArduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 D.2. Prototipo4WDparaelACC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 D.2.1. Conexionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 D.2.2. CódigoenArduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 Siglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 Bibliografía . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 VIII

Description:
gorythms related with some functionalities needed in the automotive autonomous navigation, like line tracking, light Automatic Cruise Control Semi-Autonomous Adaptive Cruise Control módulos funcionan por infrarrojos, utilizando el sensor TCRT5000, que dispone de un LED que emite una.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.