Interactief PID-voorbeeld met jou aan de knoppen

Blog  — vr. 3 okt. 2025

In een eerder artikel schreef ik al eens over PID en hoe dit basisprincipe overal om ons heen wordt toegepast. Van auto’s tot drones. Niet iedereen had daar direct een beeld bij, wat begrijpelijk is. Daarom dit keer een speciaal blog: een interactieve. Deze keer mag jij zelf aan de knoppen draaien.

In het fictieve voorbeeld hieronder stel jij een PID in die de drone-rotors aanstuurt. Je doel is om een drone in de lucht te houden. Je werkt met vier instellingen. Drie daarvan zijn de PID-instellingen. De vierde is de gewenste hoogte waarop de drone vliegt, oftewel de altitude.

Het doel is dat de drone op de gekozen hoogte blijft vliegen, ongeacht invloeden van buitenaf zoals wind. Hoe goed dat lukt, hangt af van jou. Jij stelt de PID zo in dat de drone automatisch en stabiel op de juiste hoogte blijft.

De drone geeft via een GPS-chip de huidige hoogte door. De gewenste hoogte bepaal je zelf, tot wel 3000 meter boven de grond.

Om je te helpen bij het instellen heb ik een PID-monitor gemaakt. Die toont in een grafiek wat er gebeurt. De rode lijn is de actuele hoogte van de drone. De groene lijn is de gewenste hoogte. De blauwe lijn is het signaal dat de PID naar de rotors stuurt.

Een goed afgestelde PID bereikt de gekozen hoogte in een vloeiende boog en corrigeert soepel bij windveranderingen. Een minder goed ingestelde PID schiet juist te ver door en zakt dan weer terug, waardoor een sterke golfbeweging ontstaat. Het is jouw uitdaging om de PID zo af te stemmen dat de drone ondanks de wind netjes op hoogte blijft.

Je bediening

[P] Proportional
[I] Integral
[D] Derivative
Gewenste hoogte
Hoogte nu -
Rotor sturing 0%
Windsterkte

Je PID monitor

Opmerkingen

  • Start de simulatie. De drone begint op de grond, op 0 meter hoogte.
  • Start de rotors. De PID wordt actief en de drone stijgt op.
  • Stop de rotors, en de drone zakt langzaam terug naar de grond.
  • Stop en herstart de rotors nadat je de PID-waarden of de gewenste hoogte hebt aangepast.
  • Als je de hele simulatie stopt en opnieuw start, begint de drone weer vanaf de grond.

Voorbeeldinstellingen

  • Met
    P=3 / I=2 / D=0.01
    schiet de drone zijn doel voorbij, maar corrigeert hij snel richting de juiste hoogte. Helemaal precies komt hij er echter niet.
  • Met
    P=1 / I=0 / D=0
    stijgt de drone wel op, maar haalt hij de ingestelde hoogte van 80 meter niet. Hij blijft er net onder hangen.
  • Met
    P=1 / I=2 / D=0
    overschrijdt de drone de 80 meter. Hij zwabbert wat, maar komt langzaam dichter bij de juiste hoogte.
  • Met
    P=1 / I=2 / D=1
    wordt het signaal erg rommelig. De correcties zijn te sterk en te kort op elkaar.
  • Met
    P=3 / I=0.2 / D=0.1
    komt het al meer in de buurt van een bruikbare PID-instelling.

Tot slot

Hopelijk heeft dit interactieve voorbeeld geholpen om visueel te maken wat een PID doet. Misschien herken je in de grafiek zelfs wel het gedrag van een hobbydrone, want die maken hier écht gebruik van. Net als talloze andere apparaten om ons heen. Een PID is namelijk een softwareoplossing die zorgt dat systemen zich in wisselende omstandigheden toch stabiel gedragen. Speel er gerust nog even mee en ontdek zelf het effect van verschillende instellingen.