Md Jahidul Islam. Office Hours: Thursday 4:00 PM - 5:00 PM. @LAR-339D.
    Lecture: M/W/F 3:00PM-3:50PM @LAR-330
    TA: Boxiao Yu. Office Hours: Tuesday 3:00 PM - 4:00 PM. @NEB-222.


    Microprocessor Applications or embedded systems or equivalent courses
    Fluent in object-oriented programming (Python and/or C++)
    Basics of linear algebra and calculus


    Introduction to Robotics: Mechanics and Control (Pearson; 4th Edition).
    By John Craig. ISBN-13: 978-0133489798. Pearson; 4th edition.

    Probabilistic Robotics (Int. Robotics & Autonomous Agents series; 1st Edition).
    By Sebastian Thrun, Wolfram Burgard and Dieter Fox.
    ISBN-13: 978-0262201629, ISBN-10: 0262201623.



Lecture Topics

  • Lecture #1   Introduction: Outline & Logistics.  
  • Lecture #2   User interface, Integration, Middleware  
      - ROS/ROS2 and OpenCV.  
  • Lecture #3   Spatial Descriptions and Transformations.  
      - Rotation: Homogeneous, XYZ and Euler Rotation.  
      - Rodrigues Rotation and Quaternion Space.  
  • Lecture #4   Kinematics: Manipulators and UGVs.  
      - Manipulator Kinematics: DH notation.  
      - TurtleBot Kinematics.  
  • Lecture #5   Locomotion: UGVs / AUVs / UAVs.  
      - Motion Gaits: 2-DOF, 3-DOF, and 6-DOF.  
      - Quaternion: Rotation Space and SLERP Interpolation.  
  • Lecture #6   Robot Perception: UGVs / AUVs / UAVs.  
      - Camera model: intrinsic and extrinsics.  
      - Homography estimation.  
      - Stereo cameras: epipolar geometry.  
      - SfM: Structure from Motion Pipeline.  
  • Lecture #7   Localization and Odometry.  
      - Image Processing and Filtering.  
      - Stereo Vision and 3D Geometry.  
  • Lecture #8   Inverse Kinematics.  
      - Dynamic Programming and SOTA Planners.  
      - Adaptation: UGVs / AUVs / UUVs.  
  • Lecture #9   Filtering and State Estimation.  
      - Probabilistic filtering concepts.  
      - State estimation and planning under uncertainity.  
      - Kalman Filtering (KF), extended KF, unscented KF.  
      - Feedback controllers: PID.  
  • Lecture #10   Path Planning Algorithms.  
      - Map-based planners: Bug0, Bug1.  
      - Graph-based algorithms: BFS, DFS, Dijkstra, A*.  
      - Sampling-based algorithms: PRM, RRT, RRT*.  
      - Target-centric planners.  

Homework Assignments

#1. Hands-on Homework 1: ROS and OpenCV
    Part A: ROS/ROS2 installation and setup
    Part B: Interfacing webcam or usb cameras
    Part C: Topic subscription and publishing
    Part D: Writing launchfiles and wrappers
#2. Analytical Homework 1: Forward Kinematics
    Spatial descriptions and transformations
    Manipulator kinematics (DH notation)
    Fixed and Euler angle rotation
    Rodrigues rotation
#3. Hands-on Homework 2: Kinematics
    Part A: Euler angles and axis of rotation
    Part B: Quternion SLERP
    Part C: Forward kinematics of the PUMA robot
#4. Hands-on Homework 3: Visual Perception
    Part A: Augmented Visuals by Homography Estimation
    Part B: Camera Calibration
    Part C: SfM (Structure from Motion) pipeline
#5. Homework 5:
    Part A: 3D Robot localization from 3 landmarks
    Part B: Inverse kinematics (DH notation of manipulators)
    Part C: Kalman filtering for 2D object tracking in images