COMP-597

COMP 514 / ECSE 554

Applied Robotics

** From Fall 2022, this course has two numbers: COMP 514 (for science students) and ECSE 554 ( for engineering students). Please enroll one but not both **


Course Description:

This course introduces the approach and the challenges in the key components of robotics: representations, kinematics, dynamics, rigid-body chains, redundant systems, underactuated systems, control, planning, and perception. The course will also introduce the important concepts of manipulation and locomotion. This course also provides a practical guide to robotics, such as safety, collisions, and real-time software development.

This course is designed for students who are interested in working with robots. Students will be required to learn the Robot Operating System (ROS) during the course and implement a software framework from scratch.


Prerequisites

  • Required

  • MATH 223 Linear Algebra or MATH 271 Linear Algebra and Partial Differential Equations

  • MATH 323 Probability or ECSE 305 Probability for Engineering

  • COMP 206 Introduction to Software Systems

  • COMP 250 Introduction to Computer Science or equivalent

  • Recommended

  • COMP 251 Algorithms and Data Structures

  • COMP 322 Introduction to C++ or familiar with C++

  • Familiar with Ubuntu


Marking Scheme (Tentative):

  • 90% individual assignments

  • 10% oral exam

Recommended Textbook:

  • Modern Robotics by Lynch and Park (2017)



Content

  • Representations

  • Kinematics

  • Dynamics

  • Controllers

  • Kinematic Control

  • Dynamic Control

  • Redundancy Resolution

  • Force Control and Contacts

  • Grasping

  • Motion Planning

  • Trajectory Generation

  • Potential Fields

  • Collision Detection

  • Collision Avoidance

  • Singularity Avoidance

  • Advanced Topics

  • Locomotion

  • Whole-body Control

  • Balance

  • Recent Applications


Software Required

  • Ubuntu 20.04

  • ROS Noetic