Rusty Flying Robots: Learning a Full Robotics Stack with Real-Time Operation on an STM32 Microcontroller in a 9 ECTS MS Course

Dit paper beschrijft een innovatieve mastercursus waarin studenten de volledige robotica-stack leren implementeren in Rust op een beperkte STM32-microcontroller, waardoor ze real-time vliegende robots kunnen bouwen zonder gebruik te maken van black-box software.

Oorspronkelijke auteurs: Wolfgang Hoenig, Christoph Scherer, Khaled Wahba

Gepubliceerd 2026-04-02
📖 4 min leestijd☕ Koffiepauze-leesvoer

Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Each language version is independently generated for its own context, not a direct translation.

Stel je voor dat je een groep studenten de kunst leert om een drone te laten vliegen. Maar niet zomaar een drone die je koopt en op een knop drukt. Nee, deze studenten moeten de drone vanaf nul bouwen, van de wiskunde tot de code die erop draait. En het meest bijzondere: ze doen dit allemaal op een computerchip die zo klein en zwak is als die in een goedkope digitale horloge.

Dit is het verhaal van het vak "Rusty Flying Robots" van de Technische Universiteit Berlijn. Hier is hoe het werkt, vertaald in alledaagse taal:

1. Het Grote Dilemma: Te simpel of te moeilijk?

Normaal gesproken hebben universiteiten een lastige keuze als ze robotica willen leren:

  • Optie A: Je leert simpele dingen op een simpele manier, maar het voelt niet echt als echte robotica.
  • Optie B: Je gebruikt zware, ingewikkelde software die alles voor je regelt (zoals een "zwarte doos"), maar dan leer je niet hoe het werkt.
  • Optie C: Je doet alles in een computersimulatie, maar dan heb je geen echte drone die door de lucht zoeft.

Deze docenten wilden alles tegelijk: de echte wiskunde, de echte code, en een drone die echt vliegt. Maar ze moesten het doen op een heel beperkt stukje hardware (een STM32-chip).

2. De Oplossing: De "Rust" Taal

Om dit mogelijk te maken, kozen ze voor een programmeertaal die Rust heet.

  • C/C++ is als een oude, betrouwbare vrachtwagen: je kunt er alles mee doen, maar als je niet oplet, kun je je vingers klemmen (geheugenfouten).
  • Python is als een comfortabele auto met automaat: makkelijk te besturen, maar hij is te traag en te zwaar voor de kleine chip.
  • Rust is als een fietser met een superhelm. Hij is snel en licht (zoals C), maar de helm (de "borrow checker") zorgt dat je nooit je vingers klemt in de wielen. Het is veilig, maar ook razendsnel.

Het mooie is: je schrijft de code één keer in Rust, en die werkt zowel op je krachtige laptop (voor simulaties) als op de kleine drone-chip. Geen vertalen nodig!

3. De Reis in Vier Etappes

De studenten doorlopen vier stappen, alsof ze een drone bouwen in hun hoofd en dan in de lucht:

  • Stap 1: De Zandbak (Simulatie)
    Voordat ze de echte drone aanraken, moeten ze zelf een virtuele drone bouwen in code. Ze mogen geen kant-en-klare simulators gebruiken. Ze moeten zelf bedenken hoe zwaartekracht werkt en hoe de propellers duwen. Het is alsof je eerst een auto moet tekenen en de motor moet ontwerpen voordat je mag rijden.
  • Stap 2: De Piloot (Besturing)
    Nu moeten ze de "piloot" programmeren. Als de drone een beetje scheef hangt, moet de code direct weten hoe hij de motoren moet aansturen om recht te komen. Dit moet binnen een fractie van een seconde gebeuren, anders crasht de drone.
  • Stap 3: Het Zenuwstelsel (Zinnes)
    De drone heeft geen ogen zoals wij. Hij heeft gyroscoops en versnellingsmeters. De studenten moeten code schrijven die al die ruwe data omzet in een duidelijk beeld: "Ik ben hier, ik vlieg naar boven, en ik draai naar links." Dit is lastig, want de wiskunde hierachter is best complex.
  • Stap 4: De Routeplanner (Planning)
    Tenslotte moeten ze de drone leren om door smalle openingen te vliegen zonder te crashen. Ze moeten een route plannen die soepel is, alsof je een bal door een hindernisbaan gooit zonder dat hij stuitert.

4. Het Resultaat: Een Succesvol Experiment

De studenten (meestal derde- en vierdejaars) vonden het een uitdaging. Ze moesten een nieuwe taal leren (Rust) terwijl ze ook nog die zware wiskunde moesten begrijpen.

  • De tijd: Het kostte ze gemiddeld 6 tot 9 uur per week.
  • De mening: Ze vonden het fantastisch. Een student zei: "Dit was echt een van de beste colleges die ik ooit heb gehad."
  • De uitdaging: Het was zwaar werk, maar het gevoel om te zien hoe hun code, die ze zelf hadden geschreven, een echte drone in de lucht hield, was onbetaalbaar.

Waarom is dit belangrijk?

Deze cursus bewijst dat je niet altijd de zwaarste, duurste computers nodig hebt om geavanceerde robotica te leren. Met de juiste taal (Rust) en de juiste aanpak (alles zelf bouwen in plaats van op "zwarte dozen" te vertrouwen), kunnen studenten leren hoe ze complexe systemen op kleine, goedkope apparaten kunnen laten werken.

Het is alsof je iemand leert vliegen door eerst de wind, de aerodynamica en de motor zelf te bouwen, in plaats van ze alleen te laten zitten in een vliegtuig dat al klaarstaat. En dat is precies wat deze studenten deden: ze bouwden hun eigen vlieger, en ze lieten hem vliegen.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →