Analyse, Modellierung und Programmierung des Geige-spielens an ...
Analyse, Modellierung und Programmierung des Geige-spielens an ...
Analyse, Modellierung und Programmierung des Geige-spielens an ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
9. Trajektoriengenerierung<br />
l<strong>an</strong>gsame Änderungsraten möglich <strong>und</strong> das Integral-Verhalten zur Annäherung <strong>an</strong> den<br />
Sollwert bleibt weiterhin bestehen. Nachfolgende Simulationen bestätigten diese Fakten.<br />
Nach der erfolgreichen Abänderung <strong>des</strong> Orientierungsverhaltens bei Anfahrt, bot es<br />
sich nun <strong>an</strong>, dieselben Algorithmen für eine Orientierungssteuerung bei Abfahrt zu verwenden.<br />
Ziel war es dabei, das der Bogen nach der Abfahrt wieder exakt die gleiche Lage<br />
<strong>und</strong> Orientierung einnimmt, von welcher er gestartet ist. Zusätzlich sollte ein Streifen<br />
oder gar Durchfahren der Saiten <strong>und</strong> der Violine unbedingt verhindert werden. Erster<br />
Schritt war somit eine Implementierung der modifizierten Algorithmen <strong>des</strong> Orientierungsverhaltens<br />
in die Abfahrtstrajektorie. Nach erfolgreicher Umsetzung blieb nun noch das<br />
Problem der Sicherstellung <strong>des</strong> Nichtdurchfahrens der Violine aus jeder Ausg<strong>an</strong>gssituation.<br />
Hierbei für die Wahl auf den Einbau einer Korrektur-Orientierungsmatrix. Diese<br />
sollte den Bogen nach dem letzten Streichvorg<strong>an</strong>g um einen definierten Winkel in der<br />
Y-Z-Ebene <strong>an</strong>heben, wobei der Vorg<strong>an</strong>g auch hier integrales Verhalten aufweisen sollte.<br />
Multipliziert m<strong>an</strong> diese Matrix mit der Abfahrtsorientierungsmatrix, erhält m<strong>an</strong> eine<br />
fließende <strong>und</strong> vor Kollisionen sichere Abfahrt <strong>des</strong> Bogens in die entsprechende <strong>an</strong>fängliche<br />
Position. Folgend ist ein Ausschnitt <strong>des</strong> Programmco<strong>des</strong> der Abfahrt <strong>des</strong> Bogens<br />
dargestellt 1 :<br />
f o r<br />
r = 1 : Punkt<strong>an</strong>zahl<br />
L a u f v a r i a b l e = L a u f v a r i a b l e +1;<br />
T_Traj ( 1 : 3 , L a u f v a r i a b l e ) = [ Kurve ( 1 , r ) Kurve ( 2 , r ) Kurve ( 3 , r )<br />
] ;<br />
T_Traj ( 4 , L a u f v a r i a b l e ) = 4 ;<br />
%Divident f u e r den Drehwinkel ( s i e h e unten )<br />
Divident = 8000− r ;<br />
i f ( Divident < 1) Divident = 1 ; end<br />
%−−−−−−−−−−ENDE<br />
y= −45;<br />
R_Korrektur = [ 1 0 0 0 ;<br />
0 cos ( y ) −s i n ( y ) 0 ;<br />
0 s i n ( y ) cos ( y ) 0 ;<br />
0 0 0 1 ] ;<br />
%i n v e r s e der a k t u e l l e n Lage<br />
T_aktuell_inv=inv ( T_aktuell ) ;<br />
%m u l t i p l i k a t i o n<br />
T_diff = T_aktuell_inv ∗ ( T_aktuell ∗ R_Korrektur ) ;<br />
i f ( r > Punkt<strong>an</strong>zahl /10) T_diff = T_aktuell_inv ∗ ( T_Lage_soll )<br />
; end<br />
1 Nachzulesen in trajektorie / Trajektorie_II<br />
61