Control theory is an important cornerstone of the robotics field and is considered a fundamental subject in an undergraduate and postgraduate robotics curriculum. Furthermore, project-based learning has shown significant benefits in engineering domains, specifically in interdisciplinary fields such as robotics which require hands-on experience to master the discipline adequately. However, designing a project-based learning experience to teach control theory in a hands-on setting can be challenging, due to the rigor of mathematical concepts involved in the subject. Moreover, access to reliable hardware required for a robotics control lab, including the robots, sensors, interfaces, and measurement instruments, may not be feasible in developing countries and even many academic institutions in the US. The current paper presents a set of six project-based assignments for an advanced postgraduate Robot Control course. The sequence of assignments naturally builds on each other, and by the end of the course, students will be able to develop an advanced control framework in a real-world robotic simulation setting. The assignments leverage the Robot Operating System (ROS), an open-source set of tools, libraries, and software, which is a de facto standard for the development of robotics applications. The use of ROS, along with its physics engine simulation framework, Gazebo, provides a hands-on robotics experience equivalent to working with real hardware. The topics incorporated in the assignments include a set of linear and nonlinear control concepts, including dynamics modeling and analysis of multibody robotic systems, Jacobian linearization and characterization of equilibria in nonlinear state-space models, stabilization via state-feedback control, state estimation and control via observer design, linear quadratic regulator (LQR) control, trajectory tracking using inverse dynamics and feedback linearization, Lyapunov-based robust control design, and the formulation of adaptive controllers. The control design formulations are carried out in MATLAB, while the resulting controllers are applied to the robot in Gazebo through the ROS interface, which can be implemented in C++, Python, or MATLAB using the MATLAB ROS toolbox. Learning outcomes include: i) theoretical analysis of linear and nonlinear dynamical systems, ii) formulation and implementation of advanced model-based robot control algorithms using classical and modern control theory, and iii) programming and performance evaluation of robotic systems on physics engine robot simulators. Course evaluations and student surveys demonstrate that the proposed project-based assignments successfully bridge the gap between theory and practice, and facilitate learning of control theory concepts and state-of-the-art robotics techniques through a hands-on approach.
Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.