Struttura del corso
Settimana 01
Giorno 01
Introduzione
- Cosa rende un robot intelligente?
Robot fisici vs virtuali
- Smart Robots, Macchine intelligenti, Macchine senzienti e Robotic Process Automation (RPA), ecc.
Il ruolo di Artificial Intelligence (AI) in Robotics
- Oltre il "se-allora-altrimenti" e la macchina dell'apprendimento
- Gli algoritmi alla base dell'intelligenza artificiale
- Apprendimento automatico, visione artificiale, elaborazione del linguaggio naturale (NLP), ecc.
- Robotica cognitiva
Giorno 02
Il ruolo di Big Data in Robotics
- Processo decisionale basato su dati e modelli
La nuvola e Robotics
- Collegare la robotica con l'IT
- Costruire robot più funzionali che accedono a più informazioni e collaborano
Caso di studio: Robot industriali
- Robot meccanici
- Baxter
- Robot negli impianti nucleari
- Rilevamento e protezione dalle radiazioni
- Robot nel nucleare Reactors
- Rilevamento e protezione dalle radiazioni
Giorno 03
Componenti hardware di un robot
- Motori, sensori, microcontrollori, telecamere, ecc.
Comuni Elements di robot
- Visione industriale, riconoscimento vocale, sintesi vocale, rilevamento di prossimità, rilevamento della pressione, ecc.
Giorno 04
Quadri di sviluppo per Programming un robot
- Framework open source e commerciali
- Sistema operativo del robot (ROS)
- Architettura: area di lavoro, argomenti, messaggi, servizi, nodi, actionlibs, strumenti, ecc.
Languages per Programming un robot
- C++ per il controllo di basso livello
- Python Per l'orchestrazione
- Programming ROS nodi in Python e C++
- Altre lingue
Giorno 05
Strumenti per la simulazione di un robot fisico
- Software di simulazione e visualizzazione 3D commerciale e open source
Strumenti per la progettazione delle caratteristiche fisiche di un robot
- Software commerciale e open source CAD
Caso di studio: Robot meccanici
- I robot nel campo della tecnologia nucleare
- Robot nei sistemi ambientali
Settimana 02
Giorno 06
Corso accelerato in Python
- Installazione e configurazione del software
- Pacchetti e utilità utili
- Lavorare con Python strutture dati, operatori, cicli, condizionali, funzioni, metodi, ecc.
- Scrittura di un programma di esempio
- Progetto team
Giorno 07
Preparazione per lo sviluppo di robot
- Configurazione dell'ambiente di sviluppo (ad esempio, Arduino IDE)
- Esplorazione della sintassi del linguaggio Arduino (C/C++)
- Codifica, compilazione e caricamento sul microcontrollore
- Assemblaggio dei componenti hardware di un robot Arduino
Giorno 08
Utilizzo dei componenti Arduino
- Sensori analogici
- Sensori digitali
Lavorare con i moduli Arduino Communication
- Moduli Bluetooth
- Moduli Wi-Fi
- Moduli RFID
- I2C e SPI
- Internet mobile
Giorno 09
Costruire un robot
- Pianificazione delle caratteristiche e delle caratteristiche di un robot
- Implementazione del movimento del robot
Progetto team
- Discussione e revisione
Giorno 10
Controllo del robot
- Implementazione del controller
- Connessione al robot (cablata e wireless)
Progetto Team
- Discussione e revisione
Settimana 03
Giorno 11
Programming Il robot
- Simulazione di un robot con Gazebo / ROS
- Comprendere il nodo ROS
- Programming un nodo in Python e C ++
- Messaggi e argomenti in ROS
- Paradigma di pubblicazione / abbonamento
Progetto Team
- Bump & Go con un vero robot
- Discussione e revisione
Giorno 12
Programming il robot (continua...)
- Fotogrammi in ROS e modifiche ai riferimenti
- Elaborazione delle informazioni 2D delle telecamere con OpenCV
- Elaborazione delle informazioni di un laser
Progetto Team
- Tracciamento sicuro degli oggetti in base al colore
- Discussione e revisione
Giorno 13
Test del robot
- Strumenti per testare il codice
- Test unitari
- Creazione di un gruppo di test
- Automazione dei test
- Risoluzione dei problemi
Progetto Team
- Tracciamento sicuro degli oggetti in base al colore
- Discussione e revisione
Giorno 14
Programming Il robot (continua...)
- Servizi in ROS
- Elaborazione 3D delle informazioni di sensori RGB-D con PCL
- Mappe e Navigazione con ROS
Giorno 15
Programming Il robot (continua...)
- Completamento delle attività con ActionLib
Progetto Team
- Cercare oggetti nell'ambiente
Settimana 04
Giorno 16
Programming Il robot (continua...)
- Completamento delle attività con ActionLib
Giorno 17
Programming Il robot (continua...)
- Speech Recognition e Generazione vocale
- Risoluzione dei problemi
Progetto Team
- Controllo di un robot con la voce
Giorno 18
Programming Il robot (continua...)
- Controllo dei bracci robotici con MoveIt!
- Controllo del collo robotico per la visione attiva
- Risoluzione dei problemi
Progetto Team
- Ricerca e raccolta di oggetti
Giorno 19
Schieramento del robot
- Distribuzione del robot nel mondo fisico
- Monitoraggio e manutenzione dei robot sul campo
- Utilizzo di un'app mobile per controllare un robot
Messa in sicurezza del robot
- Prevenzione di manomissioni non autorizzate
- Impedire agli hacker di visualizzare e rubare dati sensibili
Giorno 20
Analitica dei dati
- Raccolta e organizzazione dei dati generati dal robot
- Dare un senso ai dati attraverso strumenti e processi di visualizzazione
Costruire un robot in modo collaborativo
- Costruire un robot nel cloud
- Creazione di un'app mobile per interagire con il robot
- Entrare a far parte della comunità della robotica
Futuro Outlook per i robot nel campo della scienza e dell'energia
Riassunto e conclusione
Requisiti
- Programming esperienza in C o C++
- Programming esperienza in Python (utile ma non necessaria; può essere insegnata come parte del corso)
- Esperienza con la riga di comando Linux
Pubblico
- Gli sviluppatori
- Ingegneri
- Scienziati
- Tecnici
Recensioni (1)
I feel I get the core skills I need to understand how the ROS fits together, and how to structure projects in it.