Cursusaanbod
Week 01
Dag 01
Inleiding
- Wat maakt een robot slim?
Fysieke vs. Virtuele Robotten
- Slimme Robotten, Slimme Machines, Bewuste Machines en Robotic Process Automation (RPA), enz.
De Rol van Kunstmatige Intelligentie (AI) in Robotica
- Buiten "if-then-else" en de leermachine
- De algoritmes achter AI
- Machine learning, computervisie, verwerking van natuurlijke taal (NLP), enz.
- Cognitieve robotica
Dag 02
De Rol van Big Data in Robotica
- Beslissingsvorming op basis van data en patronen
De Cloud en Robotica
- Robotica koppelen aan IT
- Meer functionele robots bouwen die toegang hebben tot meer informatie en kunnen samenwerken
Casusstudie: Industriële Robotten
-
Mechanische Robotten
- Baxter
-
Robotten in Kerninstallaties
- Stralingsdetectie en -bescherming
-
Robotten in Kernreactoren
- Stralingsdetectie en -bescherming
Dag 03
Hardware-onderdelen van een Robot
- Motoren, sensoren, microcontrollers, camera's, enz.
Gemeenschappelijke Elementen van Robotten
- Machinevisie, spraakherkenning, spraaksynthese, nabijheidsdetectie, drukdetectie, enz.
Dag 04
Ontwikkelingsframeworks voor het Programmeren van een Robot
- Open-source en commerciële frameworks
-
Robot Operating System (ROS)
- Architectuur: werkruimte, onderwerpen, berichten, diensten, knooppunten, actionlibs, hulpmiddelen, enz.
Talen voor het Programmeren van een Robot
- C++ voor laag-niveau beheer
- Python voor orkestratie
- ROS-knooppunten programmeren in Python en C++
- Andere talen
Dag 05
Hulpmiddelen voor het Simuleren van een Fysieke Robot
- Commerciële en open-source 3D-simulatie- en visualisatiesoftware
Hulpmiddelen voor het Ontwerpen van de Fysieke Kenmerken van een Robot
- Commerciële en open-source CAD-software
Casusstudie: Mechanische Robotten
- Robotten in het veld van de kerntechnologie
- Robotten in milieusystemen
Week 02
Dag 06
Crash Course in Python
- Softwareinstallatie en -opstelling
- Nuttige pakketten en hulpprogramma's
- Werken met Python datastructuren, operators, lussen, voorwaarden, functies, methoden, enz.
- Een voorbeeldprogramma schrijven
- Teamproject
Dag 07
Voorbereiding voor Robotontwikkeling
- De ontwikkelomgeving instellen (bijv. Arduino IDE)
- De Arduino-taal (C/C++) syntax verkennen
- Coderen, compileren en uploaden naar de microcontroller
- De hardware-onderdelen van een Arduino-robot samenstellen
Dag 08
Werken met Arduino-onderdelen
- Analoog sensoren
- Digitaal sensoren
Werken met Arduino-communicatiemodules
- Bluetooth-modules
- Wi-Fi-modules
- RFID-modules
- I2C en SPI
- Mobiel internet
Dag 09
Een Robot Bouwen
- De functies en kenmerken van een robot plannen
- Robotbeweging implementeren
Teamproject
- Bespreking en beoordeling
Dag 10
De Robot Besturen
- De controller implementeren
- Verbinding maken met de robot (gedraad en draadloos)
Teamproject
- Bespreking en beoordeling
Week 03
Dag 11
De Robot Programmeren
- Een robot simuleren met Gazebo / ROS
- Een ROS-knoop begrijpen
- Een knoop programmeren in Python en C++
- Berichten en onderwerpen in ROS
- Publicatie/abonnementsparadigma
Teamproject
- Bump & Go met echte robot
- Bespreking en beoordeling
Dag 12
De Robot Programmeren (vervolg...)
- Frames in ROS en referentieveranderingen
- 2D-informatieverwerking van camera's met OpenCV
- Informatieverwerking van een laser
Teamproject
- Veilige tracking van objecten door kleur
- Bespreking en beoordeling
Dag 13
De Robot Testen
- Hulpmiddelen voor het testen van uw code
- Eenheidstesten
- Een testsuite maken
- Uw tests automatiseren
- Problemen oplossen
Teamproject
- Veilige tracking van objecten door kleur
- Bespreking en beoordeling
Dag 14
De Robot Programmeren (Vervolg...)
- Diensten in ROS
- 3D-informatieverwerking van RGB-D-sensoren met PCL
- Kaarten en Navigatie met ROS
Dag 15
De Robot Programmeren (Vervolg...)
- Taken voltooien met ActionLib
Teamproject
- Zoeken naar objecten in de omgeving
Week 04
Dag 16
De Robot Programmeren (Vervolg...)
- Taken voltooien met ActionLib
Dag 17
De Robot Programmeren (Vervolg...)
- Spraakherkenning en spraakgeneratie
- Problemen oplossen
Teamproject
- Een robot besturen met stem
Dag 18
De Robot Programmeren (Vervolg...)
- Robotarmen besturen met MoveIt!
- Robothals voor actieve visie besturen
- Problemen oplossen
Teamproject
- Zoeken naar en verzamelen van objecten
Dag 19
De Robot Implementeren
- De robot implementeren in de fysieke wereld
- Robotten in het veld monitoren en onderhouden
- Een mobiele app gebruiken om een robot te besturen
De Robot Beveiligen
- Ongeoorloofde manipulatie voorkomen
- Hackers voorkomen die gevoelige gegevens bekijken en stelen
Dag 20
Data-analyse
- Gegevens verzamelen en organiseren die door de robot worden gegenereerd
- Zin geven aan de gegevens door middel van visualisatietools en -processen
Samenwerken aan een Robot
- Een robot bouwen in de cloud
- Een mobiele app bouwen om te interageren met uw robot
- Deelnemen aan de robotica gemeenschap
Toekomstperspectief voor Robotten in het Wetenschappelijke en Energieveld
Samenwerking en Conclusie
Vereisten
- Ervaring met programmeren in C of C++
- Ervaring met programmeren in Python (nuttig maar niet noodzakelijk; kan worden onderwezen als onderdeel van de cursus)
- Ervaring met de Linux-opdrachtregel
Doelgroep
- Ontwikkelaars
- Ingenieurs
- Wetenschappers
- Technici
Testimonials (1)
Ik denk dat ik de kernvaardigheden bekom die ik nodig heb om te begrijpen hoe de ROS samenhangt, en hoe ik projecten erin moet structureren.
Dan Goldsmith - Coventry University
Cursus - ROS: Programming for Robotics
Automatisch vertaald