Benutzer-Werkzeuge

Webseiten-Werkzeuge


adp_laufrobotik:adp_2012_ws_group2:laufmodelle:laufen_seriell

Laufen (seriell)

Das serielle Laufmodell ist in Anlehnung an das Häufle-Muskelmodell (vgl. Häufle et al., 2012, S. 213) entstanden. Das kontraktile Element im Häufle-Modell besteht aus einem aktiven (AE) und seriellen Element (SE), sowie einem zum AE parallel geschalteten Dämpfer (PDE). Um eine realitätsbezogene Simulation der Gangarten zu gewährleisten, wurde als viertes Element die Feder (PE) parallel zum AE und PDE dazugeschaltet. Das parallele Element soll die passiven Gewebsstrukturen (Faszien) in die Simulation mit einbeziehen. Ein gedehnter Muskel nimmt auch ohne Aktuatorkräfte seine ursprüngliche Länge an.

<imgcaption image1|Serielles Laufen> </imgcaption>

Bewegungsgleichung

Die Bewegungsgleichung bildet den Einstiegspunkt für das serielle Laufen (s. <imgref image1>). Als Eingangsparameter werden die Bodenreaktionskräfte übergeben, welche sich proportional zu den Federkräften verhalten. Da die Gewichtskraft der Bodenreaktionskraft entgegenwirkt, muss diese erst abgezogen werden. Die resultierende Kraft wird durch die Masse geteilt, bevor die Integration beginnt. Nach zweifacher Integration sind nun die Geschwindigkeit, sowie die Position der Punktmasse bekannt.

<imgcaption image2|Bewegungsgleichung> </imgcaption>

Abbruchbedingung

Die Simulation kann durch zwei Bedingungen beendet werden. Entweder läuft das Modell stabil und das Erfolgskriterium von 100 Schritten wird erreicht, oder das Modell ist instabil und fällt nach wenigen Schritten auf den Boden. Dies ist der Fall, wenn die y-Komponente des Körperschwerpunktes den Wert Null annimmt.

<imgcaption image3|Abbruchbedingung mit Schrittzähler> </imgcaption>

Flugphase

Sobald der Mensch vom normalen Spaziergang in etwas schnellere Laufbewegungen übergeht, ist festzustellen, dass sich die Beine durch die Geschwindigkeitszunahme vom Boden lösen werden. Mit dieser Flugphase beginnt die Laufsimulation. Erreichen die Beine nach einem gewissen Zeitabschnitt erneut den Boden, so wird ein Trigger ausgelöst, der die Fluphase kurzweilig ausschaltet und stattdessen die Kontaktphase aktiviert.

<imgcaption image4|Subsystem Flugphase> </imgcaption>
Das Umschalten von der Flugphase in die Kontaktphase wird durch die folgende Bedingung beschrieben. Wenn die Bedingung $y-(L_0*sin(\beta))<0$ erfüllt ist, wird der Trigger ausgelöst. Dabei entspricht der Winkel $\beta$ nicht dem Anstellwinkel:

$\beta=(180-\alpha_0)*\frac{\pi}{180}$

Folgende Abbildung veranschaulicht den Anstellwinkel $\alpha$ und den Winkel $\beta$:

<imgcaption image5|Anstellwinkel α und Winkel β> </imgcaption>
In <imgref image4> ist zu sehen, dass der Multiplexer Mux_1 zwei weitere Parameter für die Überprüfung der Wechselbedingung benötigt. Diese sind die $y$-Komponente des Körperschwerpunktes (KSP) und die Ruhelänge $l_0$ des Beines.
Der zweite Ausgabeparameter initialValue ist für die Dämpfung der Schwingungsamplitude des Körperschwerpunktes notwendig. Dieser Parameter wird im Laufe der Simulation aktualisiert, so dass die darin gespeicherten Werte nicht verloren gehen, sondern weiter verwendet werden können. Nach einer gewissen Anzahl an gelaufenen Schritten, minimiert sich die Amplitude und ein stabiles Laufmuster entsteht (s. <imgref image6>).

<imgcaption image6|Dämpfung der KSP-Bahn> </imgcaption>

Zur Berechnung der initialValue ist ein neues Subsystem erstellt worden. In diesem werden die übergebenen kartesischen Koordinaten in Polarkoordinaten umgewandelt. Im Anschluss daran werden die vier Ausgabewerte ($r_0$, $\dot{r_0}$, $\alpha_0$, $\dot{\alpha_0}$) durch einen Multiplexer zusammengeführt abgespeichert. Die Ausgabe initialValue besteht also aus der aktuellen Beinlänge ($r_0$) und dem Winkel $\beta$, sowie deren Ableitungen ($\dot{r_0}$, $\dot{\alpha_0}$).

Trigger

Ein seperates Subsystem ist für die Phasenaktivierung (Flugphase bzw. Kontaktphase) zuständig. Als Eingabeparameter werden die jeweiligen Trigger eingefordert. Entweder wird das Subsystem für die Berechnung der Fluphase oder der Kontaktphase kurzzeitig deaktiviert bzw. aktiviert. Zur Festlegung der aktiven Phase wird das Matlab Skript setActive_Phase ausgeführt.
Folgende <imgref image7> visualisiert die jeweilige Phasenaktivierung bezüglich der $y$-Koordinate der Punktmasse. Die Flugphase (F) bzw. Standphase (S) sind zu gegengleichen Zeitpunkten aktiviert und weisen eine unterschiedliche Dauer auf. Aufgrund der Gravitationskraft und den resultierenden Wechselwirkungen mit dem Boden dauert die Kontaktphase 0,02 $s$ länger.

<imgcaption image7|Zusammenhänge zwischen dem Trigger und der KSP-Bahn> </imgcaption>

Kontaktphase

In Hinblick auf die Flugphase ist die Simulation der Kontaktphase deutlich komplexer. Während in der Flugphase lediglich die Gravitationskraft als äußere Kraft auf die Punktmasse einwirkt, ergeben sich für die Kontaktphase eine Vielzahl von zu errechnenden Kräften (z.B. Feder- u. Dämpferkraft).

<imgcaption image8|Kontaktphase> </imgcaption>
Die Kontaktphase ist in vier weitere Subsysteme untergliedert. Ein Subsystem ermittelt in Abhängigkeit zur Zeit die Beinlänge, sowie die Auslenkungsgeschwindigkeit und -beschleunigung. Das Subsystem Winkel liefert den Winkel $\beta$ und die Winkelgeschwindigkeit in Abhängigkeit zur Zeit. Im Subsystem SE wird die Länge des seriellen Anteils errechnet und deren Ableitungen (Auslenkungsgeschwindigkeit u. -beschleunigung) ermittelt. Die Kräfte und Energien werden aus dem vierten Subsystem gewonnen und an das Hauptsystem weitergegeben.

Der Trigger (triggerTOff) wird durch die Bedingung $x_2-l_2>0$ ausgelöst. Diese Bedingung ist erfüllt, wenn die variable Länge des seriellen Anteils die Ruhelänge $l_0$ übertrifft.

Subsystem Bein

<imgcaption image9|Subsystem zur Ermittlung der Beinlänge> </imgcaption>
Dieses Subsystem bildet den Kern der Kontaktphase. Zur Ermittlung der Beinlänge in Abhängigkeit der Zeit werden neben den vier Bauelementen (PE, PDE, AE, SE) des seriellen Beinmodells (s. <imgref image1>) die Corioliskraft und Hangabtriebskraft in die Kalkulation mit einbezogen. Positiv wirkende Kräfte sind die vorgegebene Aktuatorkraft, Federkraft (PE) und die Corioliskraft. Letztere Kraft muss in die Bewegungsgleichung mit einfließen, da sich der Fuß um den Bodenpunkt dreht. Zur Berechnung der Corioliskraft wird folgende Formel verwendet:

$Corioliskraft = m*r*a^2$

Die Federkraft wird berechnet, indem die Steifigkeit mit der Auslenkung multipliziert wird. Um die Auslenkung der parallelen Feder zu erhalten wird zunächst von der Gesamtlänge des Beines ($l_1$) die variable Beinlänge ($r$) in Abhängigkeit zur Zeit subtrahiert. Von der Gesamtauslenkung ($l_1-r$) ist noch der Auslenkungsanteil der seriellen Feder ($x_2$) abzuziehen. Also lautet die vollständige Formel der parallelen Federkraft:

$Federkraft_{PE}=k_1*(l_1-r-x_2)$

Negativen Einfluss auf die Gesamtbeschleunigung des Beines hat neben der Gravitationskraft die Dämpferkraft. Um diese zu ermitteln wird die Auslenkungsgeschwindigkeit ($\dot{r}-\dot{x_2}$) der parallelen Feder mit der Dämpfungskonstante $b$ multipliziert:

$Dämpferkraft = b*(\dot{r}-\dot{x_2})$

Befindet sich der Masse-Feder-Läufer auf einer flachen Ebene, so wirkt die reine Gravitationskraft auf ihn. Im Falle der schiefen Ebene (Steigung/Gefälle) ergibt sich aus folgender Formel die Hangabtriebskraft, welche mit einem Neigungswinkel von $\alpha = 90^{\circ}$ (→ flaches Plateau) der Gravittionskraft entspricht.

$Hangabtriebskraft = g*sin(\alpha)$

Subsystem Kräfte/Energien

Im Subsystem der Federkräfte und -energien werden sowohl die parallele, als auch die serielle Feder isoliert betrachtet. Gemeinsame Parameter, die in beide Berechnungen mit einfließen sind mit einem dunkelblauen Kreis hinterlegt.

Zu beachten: Obwohl der erste eingehende Parameter mit $alpha$ beschrieben ist, ist der Winkel $\beta$ gemeint.

<imgcaption image10|Kräfteberechnung und Ermittlung der Energien> </imgcaption>
Die Berechnung der Federkraft für die seriellen Feder ist trivial, da die Steifigkeit ($k_1$), Ruhelänge ($L_2$) und die variable Länge ($x_2$) bekannt sind:

$Federkraft_{SE}=k_2*(l_2-x_2)*(x_2\leq L_2)$

Die Bedingung $x_2\leq L_2$ überprüft, ob der Masse-Feder-Läufer Kontakt zum Boden hat. Ist dies der Fall, so ergibt sich als Folge der resultierenden Bodenreaktionskraft eine Stauchung der Feder ($x_2 < L_2$). Im Falle $x_2=L_2$ entspricht die variable Beinlänge ($x_2$) der Ausgangslänge ($L_2$). Beide Federlängen sind entweder beim Ausfetzen zur Landung oder beim Abheben zum Flug gleich. Die Bedingung $x_2\leq L_2$ ist dementsprechend nur während der Kontaktphase erfüllt ($wahr=1; falsch=0$).

Für die Berechnung der potentiellen Federenergie ergibt sich folgende Formel:

$$Federenergie_{SE} =\frac12 * k_2*(l_2-x_2)^2*(x_2 \le l_2) $$ $$ Federenergie_{SE} = \frac12*Federkraft_{SE} * (l_2-x_2)$$

Da für die Ermittlung der parallelen Federkraft die Auslenkung unbekannt ist, muss diese vorerst bestimmt werden. Um die Ausgangslänge von PE zu berechnen, wird von Ruhelänge $l_0s$ des Beinkomplexes $l_2$ subtrahiert. Die variable Federlänge in Abhängigkeit der Zeit ($r-x_2$) lässt sich nach dem gleichen Schema ermitteln. Als Endformel ergibt sich folgender Ausdruck:

$Federkraft_{PE}=k_1*((l_{0s}-l_2)-(r-x_2))*(r-x_2)\le (l_{0s}-l_2)$

Die Bedingung $(r-x_2)\le (l_{0s}-l_2)$ überprüft, ob sich der Masse-Feder-Läufer in der Kontaktphase befindet.

Analog zur obigen Energieformel lässt sich die potentielle Federenergie des parallelen Anteils bestimmen:

$$Federenergie_{PE}=\frac12 * k_1*((l_{0s}-l_2)-(r-x_2))^2*(r-x_2)\le(l_{0s}-l_2) $$ $$Federenergie_{PE}= \frac12*Federkraft_{PE} * ((l_{0s}-l_2)-(r-x_2))$$

Der Ausdruck $(l_{0s}-l_2)-(r-x_2)$ beschreibt die Auslenkung der parallelen Feder.

Berechnung der Punktmassenenergie

Die aus der Bewegungsgleichung stammenden Positions- und Geschwindigkeitsangaben der Punktmasse werden für die Berechnung der potentiellen bzw. kinetischen Energie benötigt. Bei der potentiellen Energie wird neben der Masse ($m$) die Erdbeschleunigung ($$)g einkalkuliert, wohingegen die Geschwindigkeit ($v_{Ges}$) bei der kinetischen Energie eine Rolle spielt.

$E_{Pot}=m*g*y$

$E_{Kin}=\frac12*m*v_{Ges}^2$

In <imgref image11> ist zu erkennen, dass bei der Bewegungsgleichung ein Geschwindigkeitsvektor bestehend aus $x$- und $y$-Komponente ausgegeben wird. Mittels Pythagoras lässt sich die Gesamtgeschwindigkeit $v_{Ges}$ bestimmen:

$v_{Ges}^2=v_x^2+v_y^2$

<imgcaption image11|Potentielle und kinetische Energien der Punktmasse> </imgcaption>

Literatur

Häufle, D. F. B., Günther M., Blickhan R., Schmitt S. (2012). Can Quick Release Experiments Reveal the Muscle Structure? A Bionic Approach. Journal of Bionic Engineering 9 (S. 211-223). Jilin, Changchun: Elsevier Limited and Science Press.

indexmenu_n_4

adp_laufrobotik/adp_2012_ws_group2/laufmodelle/laufen_seriell.txt · Zuletzt geändert: 28.11.2022 00:58 von 127.0.0.1


Warning: Undefined variable $orig_id in /is/htdocs/wp1019470_OPI92FFHXV/www/wikiLehre/lib/plugins/openas/action.php on line 232