basada en la ciaa robÓtica...

29
ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización en Sistemas Embebidos Facultad de Ingeniería - Universidad de Buenos Aires Autor: Ing. Leandro Lanzieri Rodríguez (UTN FRA) Director: Ing. Eric Pernía (UNQ) Jurados: Dr. Ing. Pablo Gómez (FIUBA) Esp. Ing. Ernesto Gigliotti (UTN FRA) Esp. Ing. Patricio Bos (FIUBA)

Upload: others

Post on 16-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

ROBÓTICA EDUCATIVA BASADA EN LA CIAA

Proyecto FinalCarrera de Especialización en Sistemas EmbebidosFacultad de Ingeniería - Universidad de Buenos Aires

Autor: Ing. Leandro Lanzieri Rodríguez (UTN FRA)Director: Ing. Eric Pernía (UNQ)Jurados: Dr. Ing. Pablo Gómez (FIUBA)

Esp. Ing. Ernesto Gigliotti (UTN FRA) Esp. Ing. Patricio Bos (FIUBA)

Page 2: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Contenido1. Introducción2. Diseño y Desarrollo3. Ensayos y Pruebas4. Conclusiones

Page 3: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

INTRODUCCIÓN1

Page 4: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Motivación

◦ Creciente uso de la robótica como herramienta de enseñanza.

◦ Identificación de la sintaxis de un lenguaje de programación como una dificultad para iniciarse en los sistemas embebidos.

◦ Necesidad de una alternativa abierta y desarrollada localmente.

Page 5: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

La idea

◦ CIAABOT es una plataforma abierta orientada a la robótica educativa.

◦ Permite programar, mediante un lenguaje gráfico, distintos modelos de robots basados en la la CIAA.

Page 6: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

VIDEO DE PRESENTACIÓN

Page 7: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Lineamientos Principales

Software y Hardware Libre

Orientado a la enseñanza

Amplia documentación Escalable

Page 8: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Partes componentes

Page 9: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Requerimientos

◦ Soporte multiplataforma (mínimamente sistemas Linux y Windows).

◦ Manejo de proyectos en forma de archivos.

◦ Generación del código en C, compilación y programación desde el IDE por USB.

Page 10: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

DISEÑO Y DESARROLLO2

Page 11: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Hardware

EDU-CIAA-NXP◦ Versión de bajo costo de la

CIAA-NXP.◦ Microcontrolador LPC4337 de

NXP, doble núcleo ARM Cortex-M4F y Cortex M0.

◦ 4 leds (uno RGB), 4 pulsadores.◦ USB para debug, USB OTG y

puerto RS-485.

Page 12: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Ponchos◦ Placas conectables sobre la

plataforma que agregan periféricos externos conectados a los pines del microcontrolador de la EDU-CIAA.

◦ CIAABOT G1▫ Fuente▫ Drivers motores paso a paso▫ Entradas analógicas▫ Salidas de servos

Hardware

Page 13: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

CIAABOT IDE

Page 14: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

sAPI - Simple Application Programming Interface

Es una capa de abstracción de hardware que permite un manejo simple de varios periféricos del microcontrolador:

◦ I2C◦ SPI◦ RTC◦ SCT◦ Timers

◦ Interrupciones◦ SysTick◦ GPIO◦ UART◦ ADC◦ DAC

Page 15: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Tecnologías

Page 16: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Arquitectura de la aplicación

Page 17: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

ENSAYOS Y RESULTADOS3

Page 18: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Ejemplo de código generado I #include "sapi.h"

inline void setup(void) { gpioConfig(0, GPIO_ENABLE); gpioConfig(GPIO0, GPIO_OUTPUT); gpioConfig(GPIO2, GPIO_OUTPUT); gpioConfig(GPIO4, GPIO_OUTPUT);}

void main(void) {// Inicializar placaboardConfig();

// Habilita cuenta de tick cada 1mstickConfig(1, 0);

// Inicializaciones del usuario pruebasetup();while (TRUE) { ponerSemaforoEnVerde(); delay(1000 * 2); ponerSemaforoEnAmarillo(); delay(1000 * 1); ponerSemaforoEnRojo(); delay(1000 * 3);}

}

Page 19: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Ejemplo de código generado II

void ponerSemaforoEnVerde() { gpioWrite(GPIO0, OFF); gpioWrite(GPIO2, OFF); gpioWrite(GPIO4, ON);}

void ponerSemaforoEnAmarillo() { gpioWrite(GPIO0, OFF); gpioWrite(GPIO2, ON); gpioWrite(GPIO4, OFF);}

void ponerSemaforoEnRojo() { gpioWrite(GPIO0, ON); gpioWrite(GPIO2, OFF); gpioWrite(GPIO4, OFF);}

Page 20: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Dedo 3D: Servo - ADC

Page 21: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Prueba anemómetro: SysTick - GPIO - UART

Page 22: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Workshop en el SASE 2017

Page 23: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Uso en proyecto de prótesis robótica en UTN FRA - LABFRA

Page 24: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

CONCLUSIONES4

Page 25: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Aportes del proyecto

◦ Alternativa abierta y local a las plataformas de robótica educativa.

◦ Interfaz simple para programar la EDU-CIAA-NXP, útil para enseñanza y prototipado rápido.

Page 26: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Logros

◦ Uso y puesta a prueba en cursos CAPSE

◦ Uso en los cursos para el INET del Ministerio de Educación, para profesores de escuelas técnicas.

◦ Gran aceptación por parte de los usuarios.

Page 27: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Trabajo futuro

◦ Mejorar la comunicación e interfaz Firmata con la placa para contar con una “depuración interactiva”.

◦ Extender el soporte a otras plataformas dentro del ecosistema CIAA.

◦ Desarrollar nuevos modelos de CIAABOTS.

◦ Generación de pseudo-código similar a C en español.

Page 28: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

¡Gracias!

¿[email protected]://github.com/leandrolanzieri

Page 29: BASADA EN LA CIAA ROBÓTICA EDUCATIVAlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final-CESE-Leandr… · ROBÓTICA EDUCATIVA BASADA EN LA CIAA Proyecto Final Carrera de Especialización

Créditos

◦ Plantilla de presentación e íconos de SlidesCarnival◦ Fotografías:

▫ Anemómetro y maqueta de Eric Pernía.▫ Brazo y dedo 3D de Deborah Fariñas.▫ EDU-CIAA-NXP de Proyecto CIAA.