CS 453 Robotics
This course gives a practical hands-on as well as theoretical introduction to robotics as a field that integrates expertise in Computer Science, Engineering, Design and Mathematics to create innovative systems that interact with and can operate autonomously or semi-autonomously in the physical world. In this course, students will work individually and in groups to implement robotics projects using robotics platforms such as the Lego Mindstorms and EV3 kits, and the TurtleBot robot, as well as other electronic and mechanical components. Through these projects, they will learn how to build and write programs for an autonomous physical device that interacts with its environment. They will also learn to read and understand robotics research papers, to give presentations to technical and non-technical audiences, and follow a project through from an initial idea through design to implementation and testing.
To understand and be able to explain the foundational principles underlying the field of robotics. To be able to integrate sensors, actuators, and software into a robot designed to undertake some task. To be able to program a robot to accomplish simple tasks using deliberative, reactive, and/or hybrid control architectures. To be able to implement fundamental motion planning algorithms within a robot configuration space. To be able to read and understand robotics research papers. To be able to give presentations on robotics work to technical and non-technical audiences. Ashesi Learning Goals: Critical Thinking and Quantitative Reasoning; Communication; Curious and Skilled; Technology Competence; Leadership & Teamwork
Historical overview; Mobile robots and manipulators; Kinematics of differential drive robotics; Basic kinematics of manipulators; Locomotion; Sensing and perception, vision; Control, motion planning; Task planning; Control architectures; Based on interest and available time, advanced/special topics such as multi-robot coordination, robot learning.
The labs involve exploration of the robotic platforms being used in the class, and practical implementation of various robotics algorithms. In the latter part of the semester, the lab sessions will be used as extra time for students to work on their final robotics projects with feedback or assistance from the instructor as needed.
- Prerequisites: Programming 2 / CS212 Computer Programming or CS112 Computer Programming for Engineering, Concurrent enrolment in CS221 Discrete Structures and Theory recommended but not required