• No se han encontrado resultados

trabajo fin de grado

N/A
N/A
Protected

Academic year: 2023

Share "trabajo fin de grado"

Copied!
142
0
0

Texto completo

Además, se incluye información sobre el escenario actual en el que se encuentra el mundo de los vehículos autónomos, qué cuestiones se deben tener en cuenta a la hora de desarrollar un vehículo autónomo y una breve introducción al uso de herramientas para trabajar con hardware reconfigurable. Dado que uno de los requisitos es que el vehículo sea autónomo, el sistema a desarrollar se encargará de indicarle al coche qué dirección debe tomar para llegar desde un punto de partida a un punto de destino.

Estructura del documento

Porque los algoritmos que necesitan este tipo de datos utilizarán la información obtenida del encabezado. La Figura 6.3 muestra el cálculo de la trayectoria para el escenario con los objetos 6.3a.

Objetivos 3

Objetivos específicos

  • Detección de obstáculos
  • Distinción y cálculo de posición del vehículo
  • Cálculo de trayectoria
  • Generación de movimientos mediante datos de la trayectoria
  • Comunicación con el vehículo
  • Movimiento del vehículo
  • Funcionamiento del sistema en tiempo real

Ya que son las posiciones en las que se resta uno del valor de x. En la figura 6.1 se pueden ver los resultados de aplicar el algoritmo de detección de objetos.

Figura 2.1: Estados del entorno del proyecto
Figura 2.1: Estados del entorno del proyecto

Antecedentes 7

Situación actual de los coches autónomos

En este nivel, los coches incluyen sistemas como el control de crucero1 o tecnología para mantener el coche en el carril. Es un sistema que viene desactivado por defecto en el coche y debe ser conectado voluntariamente por el conductor.

Factores a tener en cuenta para el desarrollo de un coche autónomo 9

Herramienta necesaria para compilar la aplicación que desea ejecutar en el procesador ARM de la placa. Se muestran a continuación en la tabla ?. los tiempos de ejecución del sistema para el escenario de la Figura 6.6.

Figura 3.1: Ejemplo de funcionamiento de las técnicas enumeradas
Figura 3.1: Ejemplo de funcionamiento de las técnicas enumeradas

Metodología de la gestión del proyecto 17

Roles

El proceso parte de la lista priorizada de objetivos/requisitos del producto, que sirve como plan del proyecto. Sólo en situaciones muy raras el cliente o el equipo puede solicitar una finalización anormal de la iteración. En ese caso, la iteración finalizará y se iniciará otra iteración mediante una reunión de planificación de iteraciones.

El último día de la iteración se lleva a cabo la reunión de revisión de la iteración.

Ventajas

METODOLOGÍA SCRUM se debe minimizar el número de objetivos/requisitos en los que el equipo está trabajando simultáneamente, WIP (Work In Progress), completando primero aquellos que aporten mayor valor al cliente. Esta forma de trabajar, facilitada por la estructura de la lista de tareas de iteración, permite una mayor capacidad de respuesta ante cambios o situaciones inesperadas. Existe la restricción de que los objetivos/requisitos de la iteración actual no se pueden cambiar.

Esto puede suceder si, por ejemplo, el contexto del proyecto ha cambiado enormemente y no es posible esperar hasta el final de la iteración para aplicar los cambios, o si el equipo encuentra que es imposible cumplir con los acuerdos tomados.

Desventajas

En lo que respecta a la iteración, también encaja perfectamente con este proyecto ya que solo el estudiante tiene que hacer el trabajo, por lo que la cantidad de objetivos/requisitos en los que el equipo tiene que trabajar al mismo tiempo se mantiene al mínimo. Además, también se cumplirán primero los objetivos importantes para el cliente, es decir, aquellos que el alumno y el mentor hayan elegido previamente, de modo que en caso de problema haya mucha capacidad de reacción ante situaciones inesperadas, por ejemplo. como si el contexto del proyecto cambiara porque prefiere orientarse de otra manera. Porque el alumno y el tutor deciden qué día será la próxima reunión en la que se muestren los resultados.

De esta forma se pueden realizar consideraciones relevantes si el trabajo de repetición necesita alguna adaptación, o si se puede optimizar la forma de trabajar a través de las preguntas que el alumno realiza al profesor en las reuniones programadas.

Herramientas utilizadas para la resolución del proyecto

Recuerda que el segundo byte de información contiene información sobre la acción a realizar y el número de movimientos. Mat] En este proyecto, se utilizó la función imread para procesar la información de la imagen. Si desea guardar datos de imagen en formato de escala de grises.

Por este motivo, se buscó una solución más confiable para la delimitación de objetos utilizando la biblioteca OpenCV.

Desarrollo 25

Cabecera del formato BMP

Algoritmo para detectar cambios en el entorno

Delimitación de los obstáculos

Implementación del algoritmo A* en C++, sin restricciones

Detección del vehículo frente a los objetos

Diseño del vehículo del sistema

Comunicación con el vehículo

  • Protocolo de comunicación
  • Ejemplo de funcionamiento del protocolo de comunicación
  • Maqueta de pruebas del protocolo de comunicación

Desarrollo del firmware para el control del vehículo

Integración de los algoritmos en el sistema

Optimizaciones realizadas en el sistema

  • Dilatación de obstáculos mediante OpenCV
  • Tratamiento de la información de una imagen en varios formatos
  • Segmentación de la imagen en macro-bloques
  • Implementación algoritmo A* según restricciones de Vivado HLS . 47

A continuación seguiremos explicando cómo se estructura la información de los paquetes a comunicar. INTEGRACIÓN DE LOS ALGORITMOS EN EL SISTEMA hasta conseguir los resultados esperados. Los resultados de este algoritmo generarán un archivo de texto en el que se almacenará la información correspondiente a la coordenada en la que se encuentra el coche.

Luego continuamos con el desarrollo de las optimizaciones que se han implementado en el sistema. De esta forma, se reduce el tamaño del mapa pasado al algoritmo de cálculo de trayectoria. Luego se actualiza la información principal, en este caso el nodo en el que se encuentra el vehículo.

Cuadro 5.1: Cabecera formato BMP
Cuadro 5.1: Cabecera formato BMP

Detección de objetos

A continuación seguiremos mostrando los resultados de cada uno de los algoritmos que se han desarrollado para el sistema. Como se han realizado optimizaciones para el uso de hardware reconfigurable, al final se hará una comparativa respecto a los tiempos de ejecución que se obtuvieron.

Detección del vehículo frente a los objetos

Modificación algoritmo A* [FB310]

Comunicación

Coordinador de los movimientos del vehículo

Integración del sistema

Optimizaciones realizadas

  • Tratamiento de imágenes en varios formatos
  • Detección de obstáculos con OpenCV
  • Segmentación de la imagen en macrobloques
  • A* optimizado para Vivado HLS

Integración del sistema en la placa Zedboard

This license is a kind of “copyleft,” meaning that derivative works of the document itself must be free in the same sense. The “Publisher” means any person or entity that distributes copies of the Document to the public. Make the same adjustment to the section titles in the list of Invariant Sections in the combined work's license notice.

Translation is considered a form of modification, so you may distribute translations of the Document under the terms of Section 4.

Figura 6.7: Periodo de reloj estimado para el algoritmo A*
Figura 6.7: Periodo de reloj estimado para el algoritmo A*

Conclusiones 61

Trabajo futuro

Enter on the Title page the name of the publisher of the Modified Version as the publisher. Keep all unedited sections of the document unchanged in their text and headings. The author(s) and publisher(s) of the Document do not hereby grant permission to use their names for publicity or to assert or imply approval of any Modified Version.

When the Document is included in an aggregate, this License does not apply to the other works in the aggregate that are not themselves derivative works of the Document.

Componentes que forman el vehículo 65

Controlador Sparkfun Ardumoto y chasis

Módulos Xbee de la marca Digi

Batería recargable Odec 9V

Osciloscopio y multímetro

Hubo un tiempo en el que no se podía ver a simple vista lo que pasaba en el coche. Como no hubo movimiento, se pensó que se debía al módulo de comunicación, pero el LED del adaptador microUSB del XBee funcionó. En un principio comprobaba si era por algún error de configuración, pero tras comprobar que la configuración era correcta.

El módulo XBee fue reemplazado por uno nuevo y en el futuro hemos sido más cuidadosos para evitar este tipo de descuidos.

Placa de pruebas para Arduino

Todos los pines VCC de la placa estaban configurados en 5 V, pero el módulo XBee usó el pin de 3,3 V. Como consecuencia de esta negligencia, el módulo XBee dejó de funcionar al estar alimentado por un voltaje superior al que podía soportar. Fue en ese momento cuando se comprobó que el voltaje de entrada del módulo XBEE era incorrecto.

Arduino shield

Sensor efecto Hall A3144

De esta forma podrás controlar con mayor precisión la distancia que deseas recorrer con el vehículo al tener un mayor número de muestras por vuelta completa. La base teórica para contar el número de vueltas con el sensor A3144 es correcta, pero en la práctica los resultados al utilizar este sensor no fueron los esperados. Es decir, el sensor envió valores 0 a través del pin digital sin ninguna proximidad al imán.

Utilizando el multímetro tampoco se observó nada extraño en las patas del sensor.

Estación de soldadura JBM AR5800

Este tipo de ruido aparece de forma aleatoria, lo que fue reemplazado con la introducción de un condensador 473 y una modificación de software diseñada para tener en cuenta la aparición de ruido.

Impresión de marca identificativa para el coche

A “Modified Version” of the Document means any work containing the Document or any part of it, whether copied verbatim or with modifications and/or translated into another language. Copying with changes limited to the covers, so long as the title of the document is preserved and these conditions are met, may otherwise be treated as verbatim copying. If there is no section titled “History” in the Document, create one with the title, year, authors, and publisher of the Document as listed on the Title Page, and then add an entry that identifies the Modified Version describes, as mentioned in the previous sentence.

You can omit a network location for a work that was published at least four years before the document itself, or if the original publisher of the version it refers to gives permission.

Código de los algoritmos del sistema 71

Detección de objetos

Modificación algoritmo A* [FB310]

Detección del vehículo frente a los objetos

Protocolo de comunicación

Retain the section titled "History," retain its title, and add to it a subject indicating at least the title, year, new authors, and publisher of the revised version as indicated on the title page. Preserve the network location, if any, specified in the document for public access to a transparent copy of the document, as well as the network locations specified in the document for previous versions on which it was based. You can add a passage of up to five words as a cover text and a passage of up to 25 words as a back text to the end of the list of cover texts in the modified version.

You may make a compilation of the Document and other documents released under this License and replace the individual copies of this License in the various documents with a single copy included in the compilation, provided that you follow the terms of this License m.p.h. verbatim copying of each of the documents in all other respects.

Figure

Figura 2.2: Ejemplo de detección de la posición del vehículo en el entorno.
Figura 2.1: Estados del entorno del proyecto
Figura 2.3: Ejemplo del Cálculo de trayectoria
Figura 3.1: Ejemplo de funcionamiento de las técnicas enumeradas
+7

Referencias

Documento similar

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the