04.11.2013 Aufrufe

Analyse, Modellierung und Programmierung des Geige-spielens an ...

Analyse, Modellierung und Programmierung des Geige-spielens an ...

Analyse, Modellierung und Programmierung des Geige-spielens an ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

10. Entwicklung echtzeitfähiger Simulink-Oberflächen<br />

Abbildung 10.6.: statisches Seite <strong>des</strong> Echtzeitmodells (Teil II)<br />

in INV_KIN_Gelenk, werden mit den für den Gain-Provider benötigten Daten zusammengeführt<br />

<strong>und</strong> <strong>an</strong> Lied_Traj übergeben. Im Folgenden können diese Daten nun als<br />

Eing<strong>an</strong>gskoordinaten für den LBR-III durch eine entsprechende Umschaltung <strong>des</strong> Multiport<br />

Switch2 durch Traj_Schalter übergeben werden. Zu beachten sei hierbei allerdings,<br />

das dies nur möglich ist, wenn die moment<strong>an</strong>e Lage <strong>des</strong> M<strong>an</strong>ipulators exakt mit der virtuellen<br />

Startposition <strong>des</strong> Trajektoriengenerators zusammenfällt, welche seine Koordinaten<br />

beginnend von dieser generiert. Ist dies nicht der Fall, muss entweder die Trajektorie <strong>an</strong><br />

die aktuelle Position <strong>an</strong>gepasst werden, was meist durch eine Neuberechnung der gesamten<br />

Bahn mit hohem Aufw<strong>an</strong>d verb<strong>und</strong>en ist, oder, wie in diesem Falle realisiert, die<br />

im Programm vorgegebene Position muss vom M<strong>an</strong>ipulator vor Beginn der Trajektorienfahrt<br />

<strong>an</strong>gefahren werden. Eine einfache aber effektive Lösung dieses Problems stellt die<br />

Implementierung eines Winkelinterpolators dar, welcher, steuerbar durch eine Vorgabe<br />

der max. Winkelgeschwindigkeit, direkt zwischen Start <strong>und</strong> Zielposition in Gelenkkoordinaten<br />

inkrementell interpoliert. Diese Aufgabe wird vom Block gleichen Namens realisiert<br />

(siehe Abbildung 10.7 oben). Als Eing<strong>an</strong>gsdaten dienen natürlich die aktuelle Position<br />

<strong>des</strong> Roboters, sowie die Zielposition entsprechend der Intitialposition <strong>des</strong> Trajektoriengenerators.<br />

Letzteres wird auf der Steuerungsseite definiert <strong>und</strong> als traj_gen übertragen.<br />

Auch diese Daten, in denen bereits die Regelparameter implementiert wurden, können<br />

nun durch den besagten Multiport-Switch 2 als Soll-Winkel <strong>an</strong>s Modell übergeben werden.<br />

Die Umschaltung durch Traj_Schalter geschieht auf der Steuerungsseite. Wie leicht<br />

zu erkennen ist, werden diese Daten allerdings nicht direkt <strong>an</strong>s Robotermodell übergeben,<br />

sondern in soll_<strong>an</strong>gle gespeist <strong>und</strong> <strong>an</strong> soll_<strong>an</strong>gle_modi zurückgeführt. Dazwischen<br />

befindet sich ein weiterer Winkelinterpolator selben Typs, erkennbar in Abbildung 10.7<br />

rechts. Dieser besitzt keine funktionale Aufgabe, sondern dient lediglich als Sicherung,<br />

falls unvorhersehbare Sprünge der Gelenkkoordinaten auftreten, die max. Geschwindigkeit<br />

überschritten wird oder die Steuerungsseite falsch bedient wurde. Dies erscheint sehr<br />

sinnvoll, da wie bereits erwähnt gerade Sprünge zu einer Zerstörung der hochentwickelten<br />

Maschine führen können. Möglich wird eine solche Sicherung durch die spezielle Funktionsweise<br />

<strong>des</strong> Interpolators: Wird in einem Takt die maximale Winkeldifferenz <strong>und</strong> somit<br />

84

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!