Im Rahmen dieser Bachelorthesis soll ein mathematisches Modell eines seriell elastischen künstlichen Muskels erstellt und mittels Messungen an der realen Muskeleinheit validiert werden. Der gegebene Regler soll dabei analysiert und allenfalls optimiert werden.
Diese Bachelorthesis ist Teil eines internationalen Robotikprojekts, welches im Rahmen des ANA Avatar XPRIZE umgesetzt wird. Dieser vierjährige Wettbewerb, welcher im Jahr 2022 endet, fokussiert sich auf die Entwicklung eines Avatar-Systems, welches Sinne, Bewegungen und Präsenz eines Menschen in Echtzeit an entfernte Orte übertragen kann. Herzstück dieses Projekts, welches von der Partnerfirma «Devanthro GmbH - the Roboy Company» in Auftrag gegeben wurde, ist ein humanoider Roboter namens Roboy 3.0. Dieser Roboter verfügt über 36 identische seriell elastische künstliche Muskeln, welche die Gliedmassen und den Kopf steuern. Diese Muskeleinheiten (siehe Abb.1) bestehen aus einem bürstenlosen DC-Motor von Maxon mit einem Planetengetriebe, welcher über eine Feder am Gehäuse der Einheit verbunden ist. Wirkt nun eine Kraft auf die Sehne, welche an der Winde (engl. winch) angebracht wird, dreht
sich der gesamte Motor und spannt die Feder somit auf. Dies gibt dem künstlichen Muskel ein menschenähnliches Verhalten. An den beiden entgegengesetzten Enden messen zwei Encoder jeweils die Position des Rotors bei der Winde und beim Motor. Ziel dieser Thesis ist es, ein mathematisches Modell einer dieser neu entwickelten Muskeleinheiten zu erstellen,
welches dann über die Messungen validiert wird. Gegebenenfalls sollen Verbesserungsvorschläge für den schon implementierten Regler gemacht werden.
Als erstes wurde das Modell auf seine physikalischen Gegebenheiten untersucht und mathematisch beschrieben. Dies resultierte in fünf elektromechanischen Differentialgleichungen, welche zu einem Zustandsraummodell fünfter Ordnung zusammengefasst werden konnten. Aus diesem Modell wurde anschliessend mit Simulink, einer Software zur Modellierung von physikalischen Systemen, ein Block generiert, welcher für die Simulation des Systems, sowie der Reglerauslegung von grosser Bedeutung ist. Gespiesen mit den Eingangssignalen, hier namentlich der Spannung, gab dieser Block die Ausganggrösse, die Position des Rotors, aus. Die Muskeleinheit wird über ein FPGA mit ROS, einem Betriebssystem für Roboter, angesteuert und geregelt. Über eine gegebene Schnittstelle wurden bei den Messungen mit verschiedenen Lasten die beiden Encoderpositionen, sowie die Ankerspannung extrahiert und zur Auswertung in Matlab importiert.
Bis anhin wird der Motor mit einem eher trivialen PI-Regler positionsgeregelt. Je nach Anforderungen an einen solchen Regler und in Anbetracht, dass zwei Encoder vorhanden sind, wäre ein «Dual Loop» - Controller sinnvoller. Dieser koppelt beide Positionsmessungen zurück und verbessert so die Positionsregelung an der Lastseite, welche durch die Nichtidealitäten des Getriebes und anderen Übertragungselementen negativ beeinflusst wird.