Contacta con nosotros

Temario del curso

Semana 01

Introducción

  • ¿Qué hace que un robot sea inteligente?

Robots físicos vs. virtuales

  • Robots inteligentes, máquinas inteligentes, máquinas sensibles y Automatización de Procesos Robóticos (RPA), etc.

El papel de la Inteligencia Artificial (IA) en la robótica

  • Más allá de "si-entonces-si no" y la máquina de aprendizaje
  • Los algoritmos detrás de la IA
  • Aprendizaje automático, visión por computadora, procesamiento del lenguaje natural (NLP), etc.
  • Robótica cognitiva

El papel de los Grandes Datos (Big Data) en la robótica

  • Toma de decisiones basada en datos y patrones

La nube y la robótica

  • Conexión de la robótica con TI
  • Construcción de robots más funcionales que accedan a más información y colaboren

Caso de estudio: Robots industriales

  • Robots mecánicos
    • Baxter
  • Robots en instalaciones nucleares
    • Detección y protección contra radiación
  • Robots en reactores nucleares
    • Detección y protección contra radiación

Componentes de hardware de un robot

  • Motores, sensores, microcontroladores, cámaras, etc.

Elementos comunes de los robots

  • Visión por máquina, reconocimiento de voz, síntesis de habla, detección de proximidad, detección de presión, etc.

Marcos de desarrollo para programar un robot

  • Marcos de código abierto y comerciales
  • Robot Operating System (ROS)
    • Arquitectura: espacio de trabajo, temas, mensajes, servicios, nodos, actionlibs, herramientas, etc.

Lenguajes para programar un robot

  • C++ para control de bajo nivel
  • Python para orquestación
  • Programación de nodos ROS en Python y C++
  • Otros lenguajes

Herramientas para simular un robot físico

  • Software comercial y de código abierto para simulación y visualización 3D

Semana 02

Preparación del entorno de desarrollo

  • Instalación y configuración del software
  • Paquetes y utilidades útiles

Caso de estudio: Robots mecánicos

  • Robots en el campo de la tecnología nuclear
  • Robots en sistemas ambientales

Programación del robot

  • Programación de un nodo en Python y C++
  • Comprensión del nodo ROS
  • Mensajes y temas en ROS
  • Paradigma de publicación/suscripción
  • Proyecto: Avance y colisión con robot real
  • Solución de problemas
  • Simulación de robots con Gazebo / ROS
  • Marcos en ROS y cambios de referencia
  • Procesamiento de información 2D de cámaras con OpenCV
  • Procesamiento de información de un láser
  • Proyecto: Seguimiento seguro de objetos por color
  • Solución de problemas

Semana 03

Programación del robot (Continuación...)

  • Servicios en ROS
  • Procesamiento de información 3D de sensores RGB-D con PCL
  • Mapas y navegación con ROS
  • Proyecto: Búsqueda de objetos en el entorno
  • Solución de problemas

Programación del robot (Continuación...)

  • ActionLib
  • Reconocimiento y generación de voz
  • Control de brazos robóticos con MoveIt!
  • Control del cuello robótico para visión activa
  • Proyecto: Búsqueda y recopilación de objetos
  • Solución de problemas

Pruebas de su robot

  • Pruebas unitarias

Semana 04

Extensión de las capacidades de un robot con Aprendizaje Profundo

  • Percepción: visión, audio y háptica
  • Representación del conocimiento
  • Reconocimiento de voz a través de NLP (procesamiento del lenguaje natural)
  • Visión por computadora

Curso intensivo de Aprendizaje Profundo

  • Redes Neuronales Artificiales (ANN)
  • Redes Neuronales Artificiales vs. Redes Neuronales Biológicas
  • Redes Neuronales de propagación hacia adelante (Feedforward)
  • Funciones de activación
  • Entrenamiento de Redes Neuronales Artificiales

Curso intensivo de Aprendizaje Profundo (Continuación...)

  • Modelos de Aprendizaje Profundo
    • Redes Convolucionales y Recurrentes
  • Redes Neuronales Convolucionales (CNN o ConvNets)
    • Capa de convolución
    • Capa de agrupación (Pooling)
    • Arquitectura de Redes Neuronales Convolucionales

Semana 05

Curso intensivo de Aprendizaje Profundo (Continuación...)

  • Redes Neuronales Recurrentes (RNN)
    • Entrenamiento de una RNN
    • Estabilización de gradientes durante el entrenamiento
    • Redes de memoria a largo plazo (LSTM)
  • Plataformas y bibliotecas de software de Aprendizaje Profundo
    • Aprendizaje profundo en ROS

Uso de Grandes Datos (Big Data) en su robot

  • Conceptos de Big Data
  • Enfoques para el análisis de datos
  • Herramientas de Big Data
  • Reconocimiento de patrones en los datos
  • Ejercicio: NLP y Visión por computadora en grandes conjuntos de datos

Uso de Grandes Datos (Big Data) en su robot (Continuación...)

  • Procesamiento distribuido de grandes conjuntos de datos
  • Coexistencia y fertilización cruzada de Big Data y Robótica
  • El robot como generador de datos
    • Sensores de medición de distancia, posición, visuales, táctiles y otras modalidades
  • Interpretación de datos sensoriales (ciclo sentido-plan-actuar)
  • Ejercicio: Captura de datos en streaming

Programación de un robot autónomo de Aprendizaje Profundo

  • Componentes de un robot de Aprendizaje Profundo
  • Configuración del simulador de robots
  • Ejecución de una red neuronal acelerada por CUDA con Caffe
  • Solución de problemas

Semana 06

Programación de un robot autónomo de Aprendizaje Profundo (Continuación...)

  • Reconocimiento de objetos en fotografías o transmisiones de video
  • Habilitación de visión por computadora con OpenCV
  • Solución de problemas

Análisis de datos

  • Uso del robot para recopilar y organizar nuevos datos
  • Herramientas y procesos para interpretar los datos

Despliegue de un robot

  • Transición de un robot simulado a hardware físico
  • Despliegue del robot en el mundo físico
  • Monitoreo y mantenimiento de robots en el campo

Seguridad de su robot

  • Prevención de manipulaciones no autorizadas
  • Prevención de que los hackers vean y roben datos sensibles

Construcción colaborativa de un robot

  • Construcción de un robot en la nube
  • Unirse a la comunidad de robótica

Perspectiva futura de los robots en el campo de la ciencia y la energía

Resumen y conclusión

Requerimientos

  • Experiencia de programación en C o C++
  • Experiencia de programación en Python (útil pero no necesaria; puede enseñarse como parte del curso)
  • Experiencia con la línea de comandos de Linux

Público objetivo

  • Desarrolladores
  • Ingenieros
  • Científicos
  • Técnicos
 120 Horas

Número de participantes


Precio por participante

Testimonios (2)

Próximos cursos

Categorías Relacionadas