Stap 1: PID controle
Voordat we duiken in de programmering van PID controle, moeten we weten wat het is. PID staat voor proportioneel integrale afgeleide control. Het is een methode voor de controle in gesloten feedbacklussen gebruikt om de gewenste resultaten te krijgen. Een gesloten feedback-lus is wanneer de variabele die u probeert te wijzigen heeft een sensor die u de huidige waarde vertelt. Aangezien u wat de huidige waarde is dat kunt u eenvoudig het maken van aanpassingen van de gewenste waarde wordt bereikt zien kunt. Bijvoorbeeld, vertelt de snelheidsmeter in een auto u de waarde van wat u te controleren (snelheid probeert). Als u op het gaspedaal drukt, denk je dat je 30km/h gaat. Maar de snelheidsmeter vertelt je dat je 35km/h gaat. U weet dat u verlichten wilt af op het pedaal om uw gewenste snelheid.
PID is nu een methode voor het bereiken van de gewenste waarde op de gewenste manier. Er zijn tal van grafieken die aantonen dat het verschil in verschillende feedbacklussen. Maar zullen we dat later. Voor nu moeten we begrijpen hoe elk onderdeel (P, I, en D) van invloed zal zijn op uw resultaat. Dit is een zeer fundamentele overzicht van wat elk onderdeel van het controlesysteem doet. Het is genoeg om een algemeen idee van de werking van PID, maar het is nauwelijks krassen op het oppervlak. Zie hier voor meer informatie.
De eerste variabele is de proportionele variabele. Teruggaan naar ons voorbeeld van de auto, beweren dat u bij 0km/h beginnen en willen bereiken van 30km/h. Het proportionele deel van de controller zou het systeem toe te voegen 5km/h per seconde vertellen. Dit betekent dat het zou duren 6 seconden de snelheid van uw doelgroep te bereiken. Zie het eerste beeld voor een diagram beter uitleggen.
De tweede variabele is de variabele integraal. De integraal onderdeel van de controller horloges voor kleine fouten. Zeggen dat in plaats van het verhogen van de snelheid met 5 km/h, u verhogen door 7 km/h. Na 5 seconden kom je bij 35km/h. Dit is boven uw gewenste waarde maar omdat je alleen in stappen van de 7km/h verplaatsen kan, u niet de snelheid verlagen of anders u zal undershoot de doelwaarde. Wanneer de snelheid wordt gehandhaafd op 35km/h, merkt de integraal onderdeel van de controller dat je 5km/h uit uw doelgroep bent. Na verkeerde voor X tijd, zegt de controller "hey, we moeten aanpassen van de snelheid met 5km/h om onze doelstelling te bereiken". Door dit te doen de integraal deel van de controller kunt controleren op fouten van de geaccumuleerde en glad van de output naar de gewenste waarde. Zie het tweede beeld voor een diagram beter uitleggen.
De derde variabele is de afgeleide variabele. Het afgeleide deel van de controller kunt u sneller uw bestemming bereiken. De afgeleide variabele is voortdurend aanpassen hoeveel dit van invloed op de uitvoer, afhankelijk van hoe dicht je bent naar de gewenste waarde. Weer, alsof dat je beginnen bij 0km/h. De afgeleide variabele zegt "als we tussen 0-10km/hr, snelheid zal toenemen met 10km/h. Als we tussen 10-20km/h, zal de snelheid toenemen met 7km/h. Als wij tussen de 20-30 km/h, zijn we dicht bij de gewenste snelheid, zodat de snelheid met 5 km/h toenemen zal." Zie het derde beeld voor een diagram beter uitleggen.