ENME480 Introduction to Robotics
Course Description: This course is an introductory course to the robotics minor and educates students in the elementary concepts of robotics. The topics covered in the course include mathematics of rigid motion, rotations, translations, homogeneous transformations, forward kinematics, inverse kinematics, velocity kinematics, geometric Jacobian, analytical Jacobian, motion planning, trajectory generation, independent joint control, linear control methods such as PD, PID, actuator dynamics, feedforward control for trajectory tracking, force control, basic computer vision concepts including thresholding, image segmentation, and camera calibration. This course also includes a laboratory component to be conducted in the Robot Realization Laboratory in the Engineering Annex Building.
Prerequisites
MATH246 or ENES221; and CMSC131, ENME202, ENAE202, or ENEE150
Restriction: Must be in the Robotics and Autonomous Systems minor; or permission of department.
Offered Fall semester (year 1)
Section 0101- Lec MW 2:00-2:50pm, Lab Th 12:00-2:00pm
Section 0102- Lec MW 2:00-2:50pm, Lab Fri 8:00-10:00am
ENAE450 Robotics Programming
Course Description: This course introduces students to the Robot Operating System (ROS) as well as to many of the available tools commonly used in robotics. Lectures focus on theory and structure, whereas laboratory sections will focus on applications and implementations. Students learn how to create software and simulations, interface to sensors and actuators, and integrate control algorithms. The course works through exercises involving a number of autonomous robots (i.e., ground and air vehicles) that students could eventually use in their future robotics minor courses. Topics include: ROS architecture, console commands, ROS packages, simulation environments, visualizations, autonomous navigation, manipulation, and robot vision.
Prerequisites
For RAS minor students: ENME480
For non-minor AE students: ENAE380
Restriction: Must be in the Robotics and Autonomous Systems minor; or permission of department.
Offered Spring semester (year 1)
Section 0101- TuTh 3:30-4:45pm
ENEE467 Robotics Project Laboratory
Course Description: This practical robotics class teaches practical skills to build, control, and deploy robotic systems. Interdisciplinary groups of students develop real-world robotic systems. The first 10 weeks of the lab are devoted to 5 pre-programmed experiments. The remainder of the lab is devoted to student projects. Students work in teams of 2, preferably with each student coming from a different background in engineering. There are 2 weekly lectures. The emphasis of the class is entirely on making a real robot do what you want it to do. In the first experiment, students perform a simple servomechanism experiment, where students control a single joint of a robot. We vary the weight on the movable rod to simulate the effects of the changing inertia due to outer segments moving. Next, we have the students directly control several joints of a robot arm. The third experiment is to control the position and orientation of the end effector. A fourth experiment deals with grasping. A fifth experiment deals with the position and orientation of a wheeled robot.
Prerequisites
For RAS minor students: ENAE450
For non-minor ECE students: ENEE322
Restriction: Must be in the Robotics and Autonomous Systems minor; or permission of department.
Offered Fall semester (year 2)
Section 0101- Lec MW 3:30-4:20pm, Lab M 12-2:50pm
Section 0102- Lec MW 3:30-4:20pm, Lab W 12-2:50pm
Section 0103- Lec MW 3:30-4:20pm, Lab F 10am-12:50pm
Section 0104- Lec MW 3:30-4:20pm, Lab F 1-3:50pm
CMSC477 Robotics Perception and Planning
Course Description: This course teaches the fundamentals of robot perception and robot path planning. The syllabus and course is divided into two segments, as per the major aspects involved in robotics. There will be lectures on (a) planning and control and (b) perception, with projects and homework. The syllabus includes the following: Motion Planning Introduction, Rigid Body Transformations, Velocity, Velocity Dynamics, Vehicle Controls, Graph Based Planning, Sampling Based Planning, Trajectory Planning, Navigation, Baeyesian and Kalman Filtering, Camera Model and Calibration, Projective Geometry, Visual Perception features, Optical Flow, Pose Estimation, 3D Velocities, Basics of Machine Learning, Structure from Motion, Visual Odometry, and Recognition and Learning. There are two examinations, 3 projects in multiple phases, and two homeworks. The class uses robots, mobile platforms with sensors and effectors. Drone experiments are done in simulation or in the Iribe Drone Lab, space permitting.
Prerequisites
For RAS minor students: Linear Algebra (MATH240 or MATH461) and ENEE467
For non-minor CS students: CMSC420
Restriction: Must be in the Robotics and Autonomous Systems minor; or permission of department.
Offered Spring semester (year 2)
Section 0201- Lec TuTh 2:00-2:50pm, Lab M 2:00-4:50pm
Section 0202- Lec TuTh 2:00-2:50pm, Lab M 9:00-11:50am