Programa do Curso

Semana 01

Dia 01

Introdução

  • O que torna um robô inteligente?

Robôs Físicos vs Virtuais

  • Robôs Inteligentes, Máquinas Inteligentes, Máquinas Sentientes e Automação de Processos Robóticos (RPA), etc.

O Papel da Inteligência Artificial (IA) na Robótica

  • Além de "se-então-senão" e a máquina de aprendizado
  • Os algoritmos por trás da IA
  • Aprendizado de máquina, visão computacional, processamento de linguagem natural (NLP), etc.
  • Robótica cognitiva

Dia 02

O Papel dos Big Data na Robótica

  • Tomada de decisão baseada em dados e padrões

A Nuvem e a Robótica

  • Ligando robótica com TI
  • Construindo robôs mais funcionais que acessam mais informações e colaboram

Estudo de Caso: Robôs Industriais

  • Robôs Mecânicos
    • Baxter
  • Robôs em Instalações Nucleares
    • Detecção e proteção contra radiação
  • Robôs em Reatores Nucleares
    • Detecção e proteção contra radiação

Dia 03

Componentes de Hardware de um Robô

  • Motores, sensores, microcontroladores, câmeras, etc.

Elementos Comuns dos Robôs

  • Visão de máquina, reconhecimento de voz, síntese de fala, sensores de proximidade, sensores de pressão, etc.

Dia 04

Frameworks de Desenvolvimento para Programação de um Robô

  • Frameworks de código aberto e comerciais
  • Robot Operating System (ROS)
    • Arquitetura: espaço de trabalho, tópicos, mensagens, serviços, nós, actionlibs, ferramentas, etc.

Linguagens para Programação de um Robô

  • C++ para controle de nível baixo
  • Python para orquestração
  • Programando nós ROS em Python e C ++
  • Outras linguagens

Dia 05

Ferramentas para Simulação de um Robô Físico

  • Software comercial e de código aberto de simulação e visualização 3D

Ferramentas para Design das Características Físicas de um Robô

  • Software comercial e de código aberto CAD

Estudo de Caso: Robôs Mecânicos

  • Robôs no campo da tecnologia nuclear
  • Robôs em sistemas ambientais

Semana 02

Dia 06

Curso Intensivo de Python

  • Instalação e configuração do software
  • Pacotes e utilitários úteis
  • Trabalhando com estruturas de dados Python, operadores, laços, condicionais, funções, métodos, etc.
  • Escrevendo um programa de exemplo
  • Projeto em equipe

Dia 07

Preparação para o Desenvolvimento de Robôs

  • Configurando o ambiente de desenvolvimento (por exemplo, Arduino IDE)
  • Explorando a sintaxe da linguagem Arduino (C/C++)
  • Codificação, compilação e upload para o microcontrolador
  • Montagem dos componentes de hardware de um robô Arduino

Dia 08

Trabalhando com Componentes Arduino

  • Sensores analógicos
  • Sensores digitais

Trabalhando com Módulos de Comunicação Arduino

  • Módulos Bluetooth
  • Módulos Wi-Fi
  • Módulos RFID
  • I2C e SPI
  • Internet móvel

Dia 09

Construindo um Robô

  • Planejando as características e funções de um robô
  • Implementando o movimento do robô

Projeto em Equipe

  • Discussão e revisão

Dia 10

Controlando o Robô

  • Implementando o controlador
  • Conectando-se ao robô (com fio e sem fio)

Projeto em Equipe

  • Discussão e revisão

Semana 03

Dia 11

Programando o Robô

  • Simulando um robô com Gazebo / ROS
  • Entendendo o nó ROS
  • Programando um nó em Python e C ++
  • Mensagens e tópicos no ROS
  • Paradigma de publicação / assinatura

Projeto em Equipe

  • Bump & Go com robô real
  • Discussão e revisão

Dia 12

Programando o Robô (continuação...)

  • Quadros no ROS e mudanças de referência
  • Processamento de informações 2D de câmeras com OpenCV
  • Processamento de informações de um laser

Projeto em Equipe

  • Rastreamento seguro de objetos por cor
  • Discussão e revisão

Dia 13

Testando o Robô

  • Ferramentas para testar seu código
  • Testes unitários
  • Criando uma suíte de testes
  • Automatizando seus testes
  • Solução de problemas

Projeto em Equipe

  • Rastreamento seguro de objetos por cor
  • Discussão e revisão

Dia 14

Programando o Robô (Continuação...)

  • Serviços no ROS
  • Processamento de informações 3D de sensores RGB-D com PCL
  • Mapas e Navegação com ROS

Dia 15

Programando o Robô (Continuação...)

  • Concluindo tarefas com ActionLib

Projeto em Equipe

  • Busca de objetos no ambiente

Semana 04

Dia 16

Programando o Robô (Continuação...)

  • Concluindo tarefas com ActionLib

Dia 17

Programando o Robô (Continuação...)

  • Reconhecimento de voz e geração de fala
  • Solução de problemas

Projeto em Equipe

  • Controlando um robô usando a voz

Dia 18

Programando o Robô (Continuação...)

  • Controlando braços robóticos com MoveIt!
  • Controlando o pescoço do robô para visão ativa
  • Solução de problemas

Projeto em Equipe

  • Busca e coleta de objetos

Dia 19

Implantação do Robô

  • Implantando o robô no mundo físico
  • Monitoramento e manutenção de robôs no campo
  • Usando um aplicativo móvel para controlar um robô

Segurança do Robô

  • Prevenção contra alterações não autorizadas
  • Prevenção contra hackers que visualizam e roubam dados sensíveis

Dia 20

Análise de Dados

  • Coletando e organizando dados gerados pelo robô
  • Compreendendo os dados por meio de ferramentas e processos de visualização

Construindo um Robô Colaborativamente

  • Construindo um robô na nuvem
  • Construindo um aplicativo móvel para interagir com seu robô
  • Participando da comunidade de robótica

Perspectivas Futuras para Robôs no Campo da Ciência e Energia

Resumo e Conclusão

Requisitos

  • Experiência em programação em C ou C++
  • Experiência em programação em Python (útil, mas não necessária; pode ser ensinada como parte do curso)
  • Experiência com a linha de comando Linux

Público-Alvo

  • Desenvolvedores
  • Engenheiros
  • Cientistas
  • Técnicos
 80 Horas

Declaração de Clientes (1)

Próximas Formações Provisórias

Categorias Relacionadas