Courses

Programación de robots

Tras el éxito de las tres primeras ediciones del Curso de Programación de Drones ofrecemos en este curso una introducción a la robótica, a la programación de robots. Veremos técnicas de percepción en robots (con visión, con laser), técnicas de navegación en robots, tanto planificación de caminos como sorteo de obstáculos.

En particular nos centramos en los coches autónomos como escenario para esta tecnología robótica, un ámbito que está en plena expansión con los grandes fabricantes (Toyota, Bosch, Nissan, Renault…) y grandes empresas de software (Google, Apple…) investigando y desarrollando tecnología robótica que incorporar a los vehículos. Más allá de la función de aparcamiento automático, que ya se vende en muchos modelos de coches, se está investigando mucho en vehículos autónomos, capaces de conducir ellos mismos. La tecnología para estos coches autónomos ha madurado mucho desde la primera edición del campeonato científico Grand Challenge, organizado por el DARPA estadounidense en 2005. En ese campeonato el reto consistía en que un coche completara un recorrido de unos 120 kms por el desierto de Nevada, sus caminos, desniveles, etc. sin intervención humana alguna. Hoy día prototipos muy buenos operan ya automáticamente a velocidades normales y en entornos realistas, poblados de otros coches, ciclistas, señales de tráfico, etc. El Google Car es un buen ejemplo. De hecho Google, Tesla, Volkswagen, Mercedes-Benz y otros fabricantes han conseguido el permiso de las autoridades californianas para probar sus coches autónomos en las carreteras públicas.

En este escenario el software robótico tiene un papel fundamental. Se necesitan capacidades de percepción del entorno, navegación autónoma y planificación de caminos. Explicaremos técnicas robóticas de control visual, de esquivación de obstáculos y de cálculo de rutas.

Tras el éxito de la primera edición (abril 2016) realizaremos una segunda edición en marzo 2017 con la plataforma de prácticas renovada, la posibilidad de matriculación telemática y participación a distancia en el curso. Las clases son presenciales, pero también se graban en video y además serán retransmitidas en directo por streaming a los matriculados, que podrán hacer preguntas en tiempo real desde su ubicación. Además, los videos de las clases están disponibles para los matriculados para que las vean cuando prefieran y hay un foro donde pueden interactuar con los profesores y volcar las preguntas que les surjan. Para la parte práctica conveniene que tengas tu propio ordenador, si vienes a clase presencial vente con tu portátil. Los mejores trabajos podrán disfrutar de robots reales del Laboratorio de Robótica de la URJC, para que podais probar en ellos los algoritmos que hayais programado. Tienen el mismo equipamiento sensorial y un interfaz de locomoción similar a los coches de las prácticas.



OBJETIVOS

El objetivo del curso es introducir a los alumnos a los conceptos básicos de robótica y enseñar a programar un robot móvil con ruedas y varios sensores (visión, laser…). Se abordan técnicas de percepción en robots (con visión, con laser), técnicas de navegación en robots, tanto planificación de caminos como sorteo de obstáculos.

El curso tiene un marcado carácter práctico. Se enseña a programar tres aplicaciones concretas que dotan al robot de comportamiento autónomo y en las que se fijan los conceptos básicos de control visual y de navegación autónoma. Estas aplicaciones contienen una parte perceptiva y una parte de control.

  • Práctica de control visual: un Fórmula-1 recorre circuito a toda velocidad

  • Práctica de navegación local: un Fórmula-1 esquiva obstáculos

  • Práctica de navegacion global: Teletaxi usando GPS y mapas.


PROGRAMA

  1. Introducción a la robótica y programación de robots

  2. Sensores y actuadores habituales

  3. Instalación y configuración del entorno de prácticas (Python, simulador Gazebo)

  4. Procesamiento de imágenes, filtros de color, segmentación (con OpenCV)

  5. Técnicas de control reactivo

  6. Técnicas de navegación local, basada en sensores

  7. Técnicas de navegación global, basada en mapas


DESTINATARIOS

El curso está diseñado para aquellas personas motivadas en aprender una nueva tecnología, los robots, que ya estén estudiando ingeniería o trabajando. No es necesario disponer de una titulación concreta para este curso, pero si es recomendable tener conocimientos medios de programacion y/o orientación a objetos.


PROFESORADO

  • José María Cañas Plaza (Profesor de la ETS Ing. Telecomunicación de la URJC). Investiga en el Laboratorio de Robótica de la URJC, es doctor por la UPM y su investigación desde 1997 se centra en la programación de robots y la visión computacional. Ha desarrollado varios proyectos de robótica industrial y sensores con empresas. Ha realizado estancias de investigación en Carnegie Mellon University y Georgia Tech entre otros.

  • Aitor Martínez Fernández (Ingeniero telemático URJC). Desarrollador del proyecto de software libre JdeRobot.

  • Francisco Pérez Salgado (Ingeniero informático URJC). Desarrollador del proyecto de software libre JdeRobot.


CALENDARIO e INSCRIPCIÓN

Segunda edición CLASES: 3, 10, 17, 24, 31 de marzo 2017 de 17h a 20:30h Campus de Fuenlabrada de la URJC (aula 304 del edificio Aulario III), y también on-line INSCRIPCIÓN: del 20 enero al 3 de febrero de 2017 MATRÍCULA: del 10 al 22 de febrero de 2017

Primera edición

CLASES: 1, 8, 15, 22, 29 de abril 2016 de 17h a 20:30h

Página oficial de la URJC del curso


El curso cuesta 200 euros. Los trámites previos a empezar el curso son inscribirse y matricularse, ambos se pueden hacer de modo completamente telemático.

Para inscribirte en el curso debes realizar la petición a través del portal de GESTIÓN DE SOLICITUDES TELEMÁTICAS de la Universidad Rey Juan Carlos. Las plazas se adjudicarán según orden de inscripción.

  • Accede al portal: http://miportal.urjc.es/GestionSolicitudes/

  • Click en “Titulos Propios”

  • Click en “Usuarios Nuevos sin cuenta en la URJC” (si no eres alumno de la URJC, si sí lo eres, “Usuarios con cuenta en la URJC”)

  • En el siguiente formulario rellena tus datos. El tipo de acceso selecciona “Estudiante” y en “Planes Ofertados” selecciona el curso de Robótica:

    4436 	Curso Superior Universitario en Robótica
  • Acepta la solicitud.

  • A continuación recibirás un correo electrónico con tus datos de acceso (usuario y contraseña) (para terminar la inscripción deberás subir tu Curriculum en formato PDF)

  • Accede al portal: http://miportal.urjc.es/GestionSolicitudes/

  • Click en “Titulos Propios”

  • Click en “Usuarios con cuenta en la URJC”

  • Haz login con tus nuevas credenciales

  • En el último apartado “PASO 1” haz click en “Añadir documentos” para subir tu Currículum Vitae. Con esto quedará tu solicitud de inscripción entregada.

Para matricularte:

* entra en el enlace

Solicitud de matrícula títulos propios de la URJC con tu usuario y contraseña, los que te ha dado el sistema al inscribirte

* chequea que tienes este curso/asignatura


* valida tu matrícula


* imprime la carta de pago y abona los 200 euros (en Bankia o Banco Santander) * envía el justificante de pago escaneado a titulopropio.alumnos@urjc.es con copia a josemaria.plaza AT urjc.es.


Si tienes problemas con la matrícula contacta con la URJC vía correo electrónico: titulopropio.info@urjc.es o a titulopropio.alumnos@urjc.es

Para más información o dudas, contacta con JoseMaría por correo electrónico (josemaria.plaza AT urjc.es)


MATERIAL DOCENTE


PRÁCTICAS (videos)

Práctica: Control visual de un Fórmula-1

Los estudiantes aprenderan a programar un coche de Fórmula-1 para que en un circuito de carreras siga la línea roja pintada en el suelo de la pista y consiga dar una vuelta entera al circuito.




Práctica: navegación de un Fórmula-1 esquivando obstáculos

En un circuito de carrera los estudiantes aprenderán a programar un algoritmo de navegación local de un Fórmula-1 equipado con laser (en simulador Gazebo)




Práctica: TeleTaxi planificando caminos para navegación autónoma en una ciudad

Los estudiantes aprenderán a programar un algoritmo de planificación de caminos para un coche autónomo a partir del mapa de una ciudad. Además pondrán en práctica un algoritmo de pilotaje con el que consiga recorrer esa ruta.