Course Outline

Week 01

Introduction

  • What Makes a Robot smart?

Physical vs Virtual Robots

  • Smart Robots, Smart Machines, Sentient Machines and Robotic Process Automation (RPA), etc.

The Role of Artificial Intelligence (AI) in Robotics

  • Beyond "if-then-else" and the learning machine
  • The algorithms behind AI
  • Machine learning, computer vision, natural language processing (NLP), etc.
  • Cognitive robotics

The Role of Big Data in Robotics

  • Decision-making based on data and patterns

The Cloud and Robotics

  • Linking robotics with IT
  • Building more functional robots that access more information and collaborate

Case Study: Industrial Robots

  • Mechanical Robots
    • Baxter
  • Robots in Nuclear Facilities
    • Radiation detection and protection
  • Robots in Nuclear Reactors
    • Radiation detection and protection

Hardware Components of a Robot

  • Motors, sensors, microcontrollers, cameras, etc.

Common Elements of Robots

  • Machine vision, voice recognition, speech synthesis, proximity sensing, pressure sensing, etc.

Development Frameworks for Programming a Robot

  • Open source and commercial frameworks
  • Robot Operating System (ROS)
    • Architecture: workspace, topics, messages, services, nodes, actionlibs, tools, etc.

Languages for Programming a Robot

  • C++ for low level controlling
  • Python for orchestration
  • Programming ROS nodes in Python and C ++
  • Other languages

Tools for Simulating a Physical Robot

  • Commercial and open source 3D simulation and visualization software

 

Week 02

Preparing the Development Environment

  • Software installation and setup
  • Useful packages and utilities

Case Study: Mechanical Robots

  • Robots in the nuclear technology field
  • Robots in environmental systems

Programming the Robot

  • Programming a node in Python and C ++
  • Understanding ROS node
  • Messages and topics in ROS
  • Publication / subscription paradigm
  • Project: Bump & Go with real robot
  • Troubleshooting
  • Simulation of robots with Gazebo / ROS
  • Frames in ROS and reference changes
  • 2D information processing of cameras with OpenCV
  • Information processing of a laser
  • Project: Safe tracking of objects by color
  • Troubleshooting

 

Week 03

Programming the Robot (Continued...)

  • Services in ROS
  • 3D information processing of RGB-D sensors with PCL
  • Maps and Navigation with ROS
  • Project: Search for objects in the environment
  • Troubleshooting

Programming the Robot (Continued...)

  • ActionLib
  • Speech Recognition and Speech Generation
  • Controlling robotic arms with MoveIt!
  • Controlling robotic neck for active vision
  • Project: Search and collection of objects
  • Troubleshooting

Testing Your Robot

  • Unit testing

 

Week 04

Extending a Robot's Capabilities with Deep Learning

  • Perception -- vision, audio, and haptics
  • Knowledge representation
  • Voice recognition through NLP (natural language processing)
  • Computer vision

Crash Course in Deep Learning

  • Artificial Neural Networks (ANNs)
  • Artificial Neural Networks vs. Biological Neural Networks
  • Feedforward Neural Networks
  • Activation Functions
  • Training Artificial Neural Networks

Crash Course in Deep Learning (Continued...)

  • Deep Learning Models
    • Convolutional Networks and Recurrent Networks
  • Convolutional Neural Networks (CNNs or ConvNets)
    •  Convolution Layer
    •  Pooling Layer
    •  Convolutional Neural Networks Architecture

 

Week 05

Crash Course in Deep Learning (Continued...)

  • Recurrent Neural Networks (RNN)
    • Training an RNN
    • Stabilizing gradients during training
    • Long short-term memory networks
  • Deep Learning Platforms and Software Libraries
    • Deep Learning in ROS

Using Big Data in Your Robot

  • Big data concepts
  • Approaches to data analysis
  • Big Data tooling
  • Recognizing patterns in the data
  • Exercise: NLP and Computer Vision on large data sets

Using Big Data in Your Robot (Continued...)

  • Distributed processing of large data sets
  • Coexistence and cross-fertilization of Big Data and Robotics
  • The robot as a generator of data
    • Range measuring sensors, position, visual, tactile sensors, and other modalities
  • Making sense of sensory data (sense-plan-act loop)
  • Exercise: Capturing streaming data

Programming an Autonomous Deep Learning Robot

  • Deep Learning robot components
  • Setting up the robot simulator
  • Running a CUDA-accelerated neural network with Cafe
  • Troubleshooting

 

Week 06

Programming an Autonomous Deep Learning Robot (Continued...)

  • Recognizing objects in photographs or video streams
  • Enabling computer vision with OpenCV
  • Troubleshooting

Data Analytics

  • Using the robot to collect and organize new data
  • Tools and processes for making sense of the data

Deploying a Robot

  • Transitioning a simulated robot to physical hardware
  • Deploying the robot in the physical world
  • Monitoring and servicing robots in the field

Securing Your Robot

  • Preventing unauthorized tampering
  • Preventing hackers from viewing and stealing sensitive data

Building a Robot Collaboratively

  • Building a robot in the cloud
  • Joining the robotics community

Future Outlook for Robots in the Science and Energy Field

Summary and Conclusion

Requirements

  • Programming experience in C or C++
  • Programming experience in Python (useful but not necessary; can be taught as part of course)
  • Experience with Linux command line

Audience

  • Developers
  • Engineers
  • Scientists
  • Technicians
  120 Hours
 

Number of participants


Starts

Ends


Dates are subject to availability and take place between 09:30 and 16:30.
Open Training Courses require 5+ participants.

Testimonials (1)

Related Courses

Smart Robots for Developers

  84 Hours

Related Categories