Sincronización de las acciones de un robot guía a través de un lenguaje interpretado

Hidalgo Pérez de Ágreda, Pablo (2019). Sincronización de las acciones de un robot guía a través de un lenguaje interpretado. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. Industriales (UPM).

Description

Title: Sincronización de las acciones de un robot guía a través de un lenguaje interpretado
Author/s:
  • Hidalgo Pérez de Ágreda, Pablo
Contributor/s:
  • Matía Espada, Fernando
  • Alvarado Vásquez, Biel Piero Eloy
Item Type: Final Project
Degree: Grado en Ingeniería en Tecnologías Industriales
Date: 2019
Subjects:
Faculty: E.T.S.I. Industriales (UPM)
Department: Automática, Ingeniería Eléctrica y Electrónica e Informática Industrial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[img] PDF - Users in campus UPM only until 21 May 2019 - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (14MB)

Abstract

Durante los últimos años, los avances en la robótica social han sido muy importantes debido al desarrollo tecnológico que se ha producido durante todo este tiempo. Estos robots sociales tienen labores entre las cuales deben interactuar y asistir a las personas, por lo que ha sido necesario un avance en campos como la inteligencia artificial o la capacidad de que el robot sea capaz de comunicarse con el medio a través de diferentes sensores y sea capaz de recibir estímulos de todo tipo, ya sean auditivos o mediante imágenes. Todo esto debe ser integrado correctamente para que el robot sea capaz de responder adecuadamente a las peticiones de los humanos y sea coherente. Para que todo esto sea posible es necesario crear un lenguaje de programación que nos permita programar dicho robot y responda a los distintos estímulos de la manera que creamos adecuada. En este punto es en el que se centra dicho proyecto. A lo largo de este trabajo se explicará cómo se han desarrollado distintas funciones para el lenguaje de programación de Doris, nuestro robot, el cual ya había sido desarrollado en parte. Todo se ha programado desde C++, y desde este lenguaje hemos implementado las nuevas funciones que se describen a continuación. En primer lugar se han usado macros para definir una serie de palabras reservadas las cuales son importantes para el funcionamiento de Doris, y que podremos cambiar en cualquier momento, si la situación lo requiere, gracias al uso de estas macros. También se han incluido sistemas para la detección de errores, añadiéndolos a los que ya existían anteriormente, todo esto para facilitar la labor del programador en un futuro y sea capaz de depurar de manera más eficaz sus errores, los cuales son inevitables en una gran mayoría de los casos. Además se ha incluido la función de un bucle for, cuyo uso es similar al que se puede ver en otros lenguajes de programación como C. De nuevo esto nos dará más versatilidad en el futuro a la hora de programar. Por otro lado, se han introducido el uso de vectores, de tal forma que nos permita almacenar en una misma variable distintos valores al mismo tiempo, y con la novedad de que se puedan almacenar tanto cadenas de caracteres como números, lo que nos da una gran versatilidad a la hora de trabajar, además todo esto declarado únicamente como variable, sin hacer distinción si el número es de tipo int o double. Para este lenguaje se tienen en cuenta los eventos, los cuales son necesarios para que el robot reaccione y active una respuesta solo cuando el estímulo se presenta, mientras que si no es así el evento no se activará. Para estos eventos se han desarrollado un sistema mediante el cual nos permite saber si la función ligada a ese evento tiene los argumentos necesarios para su correcto funcionamiento indicándolo en caso contrario. Finalmente, se ha desarrollado una nueva función denominada sizeof, la cual nos devolverá la longitud de la variable que le pasemos, ya sea una cadena alfanumérica, un vector o un único número. Por lo tanto, el objetivo de este proyecto es ampliar el lenguaje de programación de Doris, incluyendo las nuevas funcionalidades mencionadas anteriormente para que Doris pueda realizar su trabajo correctamente y respondiendo de manera. adecuada a los estímulos a la vez que también ayudamos al programador, facilitando su trabajo. Todo esto será probado en la fase de pruebas y resultados mostrando cómo se comporta Doris a las nuevas implementaciones.

More information

Item ID: 54415
DC Identifier: http://oa.upm.es/54415/
OAI Identifier: oai:oa.upm.es:54415
Deposited by: Biblioteca ETSI Industriales
Deposited on: 22 Mar 2019 09:33
Last Modified: 22 Mar 2019 09:33
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM