Columbia Robotics Lab
- Students will receive an iRobot Create robot for use in the class, usually in a team of 2 or 3 students.
- Data Structures
- Knowledge of at least one of the following: C, C++ or Java.
- Knowledge of elementary Linear Algebra
This course is an overview of the field of robotics. The intent of this course is to give students an in-depth understanding of how robots work, and the application and use of computers to typical robotic problems. Students will also be exposed to current research directions in robotics. A key component of the class is hands-on programming of small mobile robots to implement higher level robotic path planning and sensing algorithms. Students will work in teams to have their robotic platforms perform intelligent action using sensing-actuation feedback loops.
The course will be a lecture course meeting twice a week. There will be 4-5 homework assignments, a midterm, and a final exam required. The homework will include programming real robots. Grading is homework 50%, midterm 20%, final 30%.
Topics to be covered
- Coordinate frames and representations. Use of homogeneous transformations in robotics.
- Specification of position and orientation
- Manipulator forward and inverse kinematics
- Mobile Robots: Algorithms and methods for mobile robot navigation, path planning and sensing.
- Robotic sensing: Vision, touch, proximity, force/torque. Examination of sensor types, capabilities, design and integration of sensory data for robotics.
- Humanoid Robots
- Robotic Hands, Grasping and Manipulation
- Planning strategies in robotics. Application of Artificial Intelligence techniques to complex planning problems such as assembly, manipulation, locomotion and navigation.
- New and interesting Robotic Domains: Medicine, Space, Microscale