We describe a novel masters-level projects class that teaches robotics along the traditional robotics pipeline (dynamics, state estimation, controls, planning). One key motivational part is that students have to directly apply the algorithms they learn on a highly constrained compute platform, effectively making a robot fly. We teach nonlinear algorithms as deployed in state-of-the-art flight stacks such as PX4. Didactically, we rely on two core concepts: 1) avoidance of provided black-box software infrastructure, and 2) usage of the safe and efficient programming language Rust that is used on the PC (for simulation) and an STM32 microcontroller (for robot deployment). We discuss our methodology and the student feedback over two years with ten students each. Teaching material: https://imrclab.github.io/teaching/flying-robots
Figures & tables
Figure 1: Overview of the class. There are four major parts, where students learn about mathematical foundations and implementing their own major parts of a modern flight stack. Code is written in embedded Rust and has to be successfully deployed on an STM32 microcontroller, computing control actions and state estimates in real-time.
Robotics education develops curricula, tools, and learning experiences that teach robotics concepts and skills through programming, simulation, and hands-on work.
Bringing an aerial robotics method from simulation to flight should not require rebuilding a mature autopilot or adding a companion computer. Cybflight is an open-source embedded Rust research autopilot whose typed, replaceable interfaces connect hardware access, perception, state estimation, trajectory planning, and control. This modular development and compile-time optimization workflow is demonstrated with replaceable Rust implementations of model predictive contour-tracking control (MPCTC) and incremental nonlinear dynamic inversion (INDI) running on one STM32H743 without a companion computer. Using this configuration, the vehicle reaches 12.38 m/s during indoor flight, while an outdoor flight using global navigation satellite system (GNSS) position updates reaches 31.4 m/s. These flights show that running demanding estimation and nonlinear control entirely on a flight-controller microcontroller need not come at the expense of a modular autopilot structure.
Yifan Lin, Chao Qin, H S Helson Go +1
Institute for Aerospace Studies, University of Toronto, Toronto, Canada
To prepare students for upcoming trends and challenges, it is important to teach them about the helpful and important aspects of modern technologies, such as robotics. However, classic study programs often fail to prepare students for working in the industry because of the lack of practical experience, caused by solely theoretical lecturing. The challenge is to teach both practical and theoretical skills interactively to improve the students' learning. In the scope of the paper, a project-based learning approach is proposed, where students are taught in an agile, semester-spanning project how to work with robots. This project is part of the applied computer science degree study program Digital Technologies. The paper presents the framework as well as an exemplary project featuring the development of a disassembly software ecosystem for hardware robots. In the project, the students are taught the programming of robots with the help of the Robot Operating System (ROS). To ensure the base qualifications, the students are taught in so-called schools, an interactive mix of lectures and exercises. At the beginning of the course, the basics of the technologies are covered, while the students work more and more in their team with the robot on a specific use case. The use case here is to automate the disassembly of build block assemblies.
Tobias Geger, Dominique Briechle, Andreas Rausch
Clausthal University of Technology, 38678 Clausthal-Zellerfeld, Germany
Teaching robotics relies on screen-based simulation, showing robot motion in an abstract coordinate frame rather than at real scale in the learner's own space, while access to physical hardware is limited by cost, safety, and scheduling constraints. We present MR-Robotics LAB, a mixed-reality (MR) platform that replays MATLAB-generated robot trajectories at real scale within the learner's physical environment. A browser-based service validates a MATLAB workspace file (.mat), normalizes units, and publishes a versioned JSON trajectory; a Unity application on a Meta Quest 3 then reproduces the authored joint configurations under position control and replays them at the declared frame rate within a physics-enabled scene that supports collision detection and end-effector grasping. A formative single-group evaluation with engineering students found that participants reported low setup effort (M = 4.67 on a 5-point scale) and perceived support for workspace understanding from multi-viewpoint inspection (M = 4.56), and 83% of participants affirmed their willingness to use the platform in an introductory robotics course. The evaluation instrument records only perceived outcomes, without counterbalancing or a learning measure, so no comparative advantage over desktop simulation is claimed. The contribution is a reusable simulation-to-MR trajectory pathway and design guidance for hardware-free robot visualization in engineering education.
Santiago Berrezueta-Guzman, Habiba-Loai Khalil, Andrei Koshelev +2
Technical University of Munich, Heilbronn, Germany