Zitat Zitat von Che Guevara Beitrag anzeigen
du weißt aber, dass Willa seine Code-Version mit MPU und XMega veröffentlicht hat?
Ja, weiß ich, danke. Warum ich trotzdem auch noch deinen Code ansehen will, kann ich jetzt so direkt gefragt gar nicht begründen...

Zitat Zitat von Che Guevara Beitrag anzeigen
Der normale PID-Loop von Willa ist als Parallelstruktur aufgebaut, das hat aber IMHO einen Nachteil:
Stell dir vor, der Kopter trifft auf einen Windstoß und dieser verändert die Lage (im Acro-Mode). Dann versucht der Kopter mithilfe des Integralteils wieder in seine ursprüngliche Position zurückzukehren. Der Proportionalteil jedoch weiß nichts von dieser Abweichung und stellt sich dem Integralteil entgegen.... Ich hoffe du verstehst, was ich meine.
Im Parallel-Loop wird das Fehlerintegral mit einem Faktor multipliziert und anschließend zum jetzigen Fehler addiert. Das selbe gilt für den Differentialteil. Dann wird der momentane Fehler (also die Summe aus P, I und D) mit dem P-Faktor multipliziert und auf die Motoren gegeben. Der Integralfehler (also der Winkelfehler) wird also in eine soll-Winkelgeschwindigkeit gewandelt, ebenso wie der Differentialfehler. Du verstehst?
Ähhh... Nein.
Aber gib dir bitte keine Mühe! Es gibt Dinge, die versteht der klassische Digitalhardwerker einfach nicht und speziell in meinem Fall habe ich das auch eingesehen. Mein Prof hat mir damals nicht ausdrücklich ins Gesicht gesagt, dass Regelungstechnik nicht mein Ding sein wird, aber es kam so in etwa rüber.