WEBVTT

00:10.440 --> 00:14.580
Hallo, ich begrüße euch herzlich zur heutigen Vorlesung.

00:15.320 --> 00:21.280
Wir werden heute weitermachen mit Kapitel 3 Kinematik und wir werden

00:21.280 --> 00:26.120
den Rest der ersten Übung, also was ich das letzte Mal behandelt habe,

00:26.360 --> 00:30.200
am nächsten Donnerstag zusammen mit weiteren Aufgaben zu dem, was wir

00:30.200 --> 00:34.580
heute und am Montag zum Thema Kinematik hier kennenlernen werden.

00:35.740 --> 00:41.840
Okay, also es geht um die Modellierung von Robotern.

00:42.480 --> 00:46.780
Das heißt, wenn wir mit Robotern oder wenn wir Roboter programmieren,

00:47.460 --> 00:51.660
dann brauchen wir gewisse Modelle, die uns dabei unterstützen.

00:52.200 --> 00:55.840
Und in den nächsten Vorlesungen werden wir uns mit diesen Modellen,

00:55.920 --> 01:00.640
die man braucht für die Programmierung von Trajektoren eines Roboters,

01:00.640 --> 01:05.060
für die Kollisionsvermeidung, für die Kollisionsberechnungen, für

01:05.060 --> 01:08.680
irgendwelche Analysen von dem Arbeitsraum eines Roboters.

01:09.280 --> 01:13.360
Wir werden uns in den nächsten Vorlesungen mit diesen Themen

01:13.360 --> 01:14.100
beschäftigen.

01:14.940 --> 01:20.220
Wir werden sehen, dass geometrische Modelle von Robotern notwendig

01:20.220 --> 01:25.720
sind in unterschiedlichen Ausprägungen, zum Beispiel um Kollisionen zu

01:25.720 --> 01:29.660
berechnen, um Robotermodelle oder Roboter zu visualisieren.

01:31.480 --> 01:36.360
Das heißt, hier werden wir schauen, wie die Geometrie eines Roboters

01:36.360 --> 01:40.180
dargestellt werden kann.

01:40.940 --> 01:45.880
Geometrie ist nichts anderes als die mathematische Beschreibung der

01:45.880 --> 01:47.420
Form von Körpern.

01:48.120 --> 01:52.820
Das sind dann die Armsegmente beispielsweise eines Roboters oder die

01:52.820 --> 01:55.740
Segmente einer Roboterhand oder Ähnliches.

01:57.380 --> 02:02.680
Eine ganz zentrale Rolle wird hier die kinematische Modellierung eines

02:02.680 --> 02:03.580
Roboters spielen.

02:05.360 --> 02:11.360
Das heißt eigentlich, wie können wir Bewegungszustände von Robotern

02:11.360 --> 02:11.940
beschreiben.

02:12.700 --> 02:16.400
Kinematik als die Lehre der geometrischen und analytischen

02:16.400 --> 02:20.960
Beschreibung von Bewegungszuständen Michotronische Systeme, da werden

02:20.960 --> 02:25.420
wir uns hier mit dem Thema beschäftigen, also Zusammenhänge, die

02:25.420 --> 02:27.920
notwendig sind, um Bewegungen zu beschreiben.

02:28.780 --> 02:32.980
Und am Ende werden wir uns mit der dynamischen Modellierung eines

02:32.980 --> 02:37.420
Roboters beschäftigen, was ja essentiell und wichtig ist für einen

02:37.420 --> 02:46.120
modellbasierten Reglerentwurf, um Bewegungen eines Roboters zu

02:46.120 --> 02:46.740
generieren.

02:46.740 --> 02:52.900
Das heißt, bei der Dynamik werden wir sehen, dass wir hier Bewegungen

02:52.900 --> 02:58.900
von Mehrkörpersystemen betrachten, also Segmente des Roboters, und

02:58.900 --> 03:03.200
zwar nicht im statischen Zustand, sondern als Folge von einwirkenden

03:03.200 --> 03:05.540
Kräften und Momenten.

03:05.640 --> 03:09.580
Das ist noch ein bisschen zu viel, zu abstrakt, aber wir werden am

03:09.580 --> 03:13.860
Ende sehen, wie diese drei unterschiedlichen Modelle eines Roboters

03:13.860 --> 03:18.480
dazu beitragen, dass wir Roboter simulieren, dass wir Bewegungen

03:18.480 --> 03:23.440
beschreiben, dass wir Kräfte und Momente berechnen und entsprechend

03:23.440 --> 03:25.780
auch Regelungen bzw.

03:26.160 --> 03:28.740
Regler für einen Roboter entwerfen können.

03:30.080 --> 03:33.860
Fangen wir mal an, und das wird uns wahrscheinlich heute die ganze

03:33.860 --> 03:38.360
Vorlesung beschäftigen, mit dem kinematischen Modell, und später komme

03:38.360 --> 03:39.840
ich zum geometrischen Modell.

03:41.520 --> 03:45.520
Das kinematische Modell, also eigentlich, nachdem wir diese ganze

03:45.520 --> 03:50.160
Mathematik kennengelernt haben, mit der wir Beziehungen und

03:50.160 --> 03:54.140
Transformationen im Raum beschreiben können, also sowohl Rotationen

03:54.140 --> 03:58.000
als auch Translationen beschreiben können, ist es ja naheliegend, dass

03:58.000 --> 04:01.340
wir diese Mathematik, die wir kennengelernt haben, einsetzen, damit

04:01.340 --> 04:05.060
wir Beziehungen zwischen Armelementen, also z.B.

04:05.320 --> 04:07.860
zwischen der Hand und Oberarm, bzw.

04:08.260 --> 04:14.260
Unterarm, Oberarm, zwischen dem kompletten Arm und einer mobilen Basis

04:14.260 --> 04:15.680
des Roboters beschreiben können.

04:16.260 --> 04:21.300
Das heißt, ganz kurz werden wir die Begriffe kinematische Kette hier

04:21.300 --> 04:24.020
einführen und kennenlernen, was das ist.

04:24.140 --> 04:27.960
Wir werden ein paar Konventionen, speziell hier die sogenannte

04:27.960 --> 04:32.480
Denevith -Hartenberg-Konvention, die, wie wir sehen werden, eine

04:32.480 --> 04:37.260
Beschreibung von Relationen oder eine komplette Beschreibung der

04:37.260 --> 04:42.240
Kinematik eines Roboterarmes erlaubt, mithilfe einer minimalen Anzahl

04:42.240 --> 04:43.080
von Parametern.

04:44.300 --> 04:46.900
Dann werden wir zwei wichtige Probleme kennenlernen.

04:47.040 --> 04:51.360
Einmal das sogenannte direkte kinematische Problem und das inverse

04:51.360 --> 04:53.700
kinematische Problem anhand von Beispielen.

04:53.700 --> 04:59.200
Und wir werden uns nochmal mit einer sehr bekannten Matrix aus der

04:59.200 --> 05:03.380
Mathematik beschäftigen, die sogenannte Jacobi-Matrix, und werden

05:03.380 --> 05:07.280
sehen, wozu diese Jacobi-Matrix, die wir aus der Mathematik kennen,

05:10.700 --> 05:15.860
wozu oder wofür sie im Kontext der Robotik hier eingesetzt wird.

05:15.860 --> 05:21.820
Dann auf weitere Aspekte, die Singularitäten eines Roboterarms, bzw.

05:22.140 --> 05:26.500
die Manipulierbarkeit eines Roboterarms und dann, wie man

05:26.500 --> 05:31.600
Erreichbarkeiten im Arbeitsraum eines Roboters rechnergestützt

05:31.600 --> 05:35.320
berechnen kann und repräsentieren kann, damit man schnell zum Beispiel

05:35.320 --> 05:40.080
darauf zugreifen kann, wenn es um eine Online-Planung von einer

05:40.080 --> 05:40.860
Trajektorie geht.

05:41.340 --> 05:44.320
Und später, wie ich bereits gesagt habe, auf die geometrischen

05:44.320 --> 05:44.680
Modelle.

05:44.680 --> 05:47.620
Fangen wir mal an mit dem kinematischen Modell.

05:48.620 --> 05:52.360
Und ganz vereinfacht zunächst einmal, was ist das kinematische Modell

05:52.360 --> 05:53.340
eines Roboters?

05:53.540 --> 05:57.180
Das kinematische Modell eines Roboters ist ein Modell, das die

05:57.180 --> 06:00.480
Zusammenhänge zwischen zwei Räumen beschreibt.

06:00.680 --> 06:06.700
Einmal der Raum der Gelenkwinkel, also Theta 1 bis Theta 7 bei einem

06:06.700 --> 06:10.780
Roboterarm mit sieben Freiheitsgraden, also Raum, wo die Gelenkwinkel

06:10.780 --> 06:11.100
sind.

06:11.260 --> 06:13.100
Wir nennen das jetzt Gelenkwinkelraum.

06:13.100 --> 06:19.580
Man nennt das auch Konfigurationsraum eines Roboters oder Raum der

06:19.580 --> 06:23.960
Roboterkoordinaten, wobei die Koordinaten sich dann auf die

06:23.960 --> 06:25.700
Gelenkwinkel des Roboters beziehen.

06:26.300 --> 06:30.080
Also die Beziehungen zwischen diesem Raum und dem Raum, in dem

06:30.080 --> 06:31.860
tatsächlich der Roboter operiert.

06:32.140 --> 06:36.140
Also zum Beispiel jetzt hier der karthesische Raum, in dem wir uns

06:36.140 --> 06:37.400
befinden.

06:38.060 --> 06:42.600
Also wenn der Armer beispielsweise in der Küche ist, dann hat er

06:42.600 --> 06:43.400
seinen Gelenkwinkelraum.

06:44.180 --> 06:47.240
Mit sieben Gelenken ist es ein siebendimensionaler Raum.

06:47.440 --> 06:50.420
Das ist der Raum der Gelenkwinkel des Roboters.

06:51.120 --> 06:54.340
Und der Raum, in dem der Roboter natürlich arbeitet und sinnvolle

06:54.340 --> 06:58.980
Aufgaben verrichten soll, ist dieser sechstimensionale Raum, in dem

06:58.980 --> 07:00.480
wir uns befinden.

07:00.480 --> 07:03.780
Das nennt man auch den Arbeitsraum bzw.

07:05.620 --> 07:06.920
den karthesischen Raum.

07:07.720 --> 07:09.940
Und warum braucht man diese kinematischen Modelle?

07:10.220 --> 07:11.780
Das ist ja sehr naheliegend.

07:12.040 --> 07:19.000
Wir wollen wissen, wie soll ein Roboter beispielsweise seine Gelenke

07:19.000 --> 07:20.700
oder seinen Arm stellen.

07:20.960 --> 07:26.000
Welche Konfigurationen der Gelenke des Armes sind notwendig, damit der

07:26.000 --> 07:31.640
Roboter mit seiner Hand an der Tasse ist oder am Griff der Tür ist und

07:31.640 --> 07:33.380
diese Tür beispielsweise aufmacht.

07:34.260 --> 07:38.960
Also Zusammenhang zwischen Gelenkwinkelraum und Stellungen des

07:38.960 --> 07:42.780
Roboters, also karthesische Stellungen des Endeffektes des Roboters.

07:43.420 --> 07:47.280
Zum Zweiten, mithilfe von diesem Modell können wir etwas über die

07:47.280 --> 07:49.180
Erreichbarkeit eines Roboters machen.

07:49.420 --> 07:55.260
Das heißt, wir können etwas über die Erreichbarkeit sagen.

07:55.260 --> 08:01.060
Das heißt, wenn ich weiß, dass das kinematische Modell der Arm maximal

08:01.060 --> 08:06.420
90 cm lang ist, dann weiß ich, dass ein Objekt, das sich im Abstand

08:06.420 --> 08:10.880
von 120 cm befindet, nicht erreichbar ist.

08:11.180 --> 08:15.120
Das ist natürlich sehr trivial, aber wir werden sehen, dass wir

08:15.120 --> 08:19.180
mithilfe von diesem Modell auch Aussagen darüber machen können, wie

08:19.180 --> 08:24.660
gut eine Position im Raum für einen Roboter erreichbar ist.

08:24.660 --> 08:30.660
Das heißt, mit wie vielen Gelenkwinkelmöglichkeiten kann der Roboter

08:30.660 --> 08:33.140
diese Position im Raum erreichen.

08:34.460 --> 08:38.340
Natürlich die Relation zwischen den Körpern des Roboters.

08:38.540 --> 08:42.500
Wenn wir diese Modelle haben, dann können wir auch Aussagen darüber

08:42.500 --> 08:48.260
machen, ob beispielsweise jetzt der Unterarm mit dem Torso kollidiert

08:48.260 --> 08:54.260
bei einer bestimmten Gelenkwinkelkonfiguration oder der Oberarm mit

08:54.260 --> 08:57.600
dem Unterarm kollidiert, beispielsweise bei einem bestimmten

08:57.600 --> 08:59.390
Gelenkwinkel vom Ellenbogen.

08:59.980 --> 09:02.160
Und dann können wir sowas beispielsweise vermeiden.

09:02.720 --> 09:05.740
Also alle Kollisionen des Roboters mit sich selbst.

09:06.480 --> 09:09.360
Wenn wir das Modell vom Roboter, natürlich nicht nur die reine

09:09.360 --> 09:12.600
Kinematik, wir brauchen hierzu noch die geometrischen Modelle vom

09:12.600 --> 09:16.160
Roboter, dann können wir natürlich hier die Selbstkollisionen

09:16.160 --> 09:17.300
berechnen.

09:17.300 --> 09:20.620
Und dann können wir natürlich mithilfe von diesen Modellen die

09:20.620 --> 09:24.480
Relation eines Roboters in der Umgebung, also zu Objekten in der

09:24.480 --> 09:28.360
Umgebung und somit nicht nur Selbstkollisionen, sondern Kollisionen

09:28.360 --> 09:32.140
mit Gegenständen in der Umgebung erkennen bzw.

09:33.640 --> 09:34.240
berechnen.

09:35.660 --> 09:40.260
Nun denke ich, das ist motivierend genug und jeder glaubt, dass wir so

09:40.260 --> 09:41.400
ein Modell brauchen.

09:41.400 --> 09:45.920
Egal, ob dieses Modell jetzt analytisch, wie wir das in dieser

09:45.920 --> 09:51.680
Vorlesung herleiten werden, zur Verfügung steht, also mithilfe von

09:51.680 --> 09:57.140
allem, was wir aus der Mathematik, Physik und Geometrie und Mechanik

09:57.140 --> 10:02.280
kennen, oder ob diese Modelle auch gelernt werden, zum Beispiel aus

10:02.280 --> 10:04.080
Daten, genauso wie Menschen.

10:04.080 --> 10:09.120
Also ein Kind, wenn er anfängt Objekte zu greifen, der lernt das ja

10:09.120 --> 10:14.080
einfach aus seiner Erfahrung, aus sensorischen Daten.

10:14.360 --> 10:18.100
Und da gibt es natürlich heutzutage auch Forschungsarbeiten auf dem

10:18.100 --> 10:21.440
Gebiet, wo man sagt, all diese Modelle können wir lernen.

10:22.320 --> 10:26.800
Zum Beispiel, dass ein Roboter fängt seinen Arm irgendwie willkürlich

10:26.800 --> 10:31.240
mal zu bewegen und daraus ein kinematisches Modell, der sagt, wie

10:31.240 --> 10:34.680
viele Gelenke vielleicht der Roboterarm hat und wie die Gelenke sich

10:34.680 --> 10:36.340
bewegen und so weiter und so fort.

10:36.800 --> 10:41.820
Ist sehr legitim und wir sind ja im Zeitalter von maschinellem Lernen

10:41.820 --> 10:47.740
und so weiter, wo jeder versucht, alles zu erschlagen mit maschinellem

10:47.740 --> 10:48.120
Lernen.

10:48.540 --> 10:52.760
Aber wenn wir so viel wissen über die Welt und über die Physik und die

10:52.760 --> 10:58.400
Mathematik, warum immer alles vom Scratch eigentlich versuchen zu

10:58.400 --> 10:58.620
lernen?

10:58.620 --> 11:02.960
Also zwei Varianten, die hier aktuell natürlich in der Forschung

11:02.960 --> 11:03.620
existieren.

11:04.540 --> 11:11.140
So, nun gehen wir weiter und ich will, bevor ich jetzt anfange mit dem

11:11.140 --> 11:17.380
kinematischen Modell, nochmal die Idee anhand von diesen zwei

11:17.380 --> 11:21.180
wichtigen Problemen, die wir im Kontext von kinematischen Modellen

11:21.180 --> 11:23.020
hier kennenlernen werden.

11:23.020 --> 11:28.180
Einmal das sogenannte direkte kinematische Problem, das heißt, ich

11:28.180 --> 11:34.600
habe ja einen Becher hier auf dem Tisch und ich will ja diesen Becher

11:34.600 --> 11:35.200
greifen.

11:35.440 --> 11:38.660
Und dazu muss ich wissen, wo ist eigentlich meine Hand gerade.

11:39.700 --> 11:43.500
Und diese Information, wie man sieht, wenn man hier die Gelenkwinkel

11:43.500 --> 11:48.380
von dem Armer mal anschaut, dann weiß man eigentlich, es gibt ja eine

11:48.380 --> 11:52.300
Beziehung zwischen der Endposi, also wo die Hand oder der Endeffektor

11:52.300 --> 11:54.600
ist, und der Stellung dieser Gelenke.

11:55.260 --> 11:59.700
Das ist, was wir als das direkte kinematische Problem bezeichnen und

11:59.700 --> 12:00.780
kennenlernen werden.

12:00.920 --> 12:04.800
Das heißt, wir wollen die Lagie, und mit Lagie meine ich immer

12:04.800 --> 12:10.960
Position und Orientierung, also einen 6D-Vektor vom Endeffektor, aus

12:10.960 --> 12:14.640
den Gelenkwinkelstellungen des Roboters hier bestimmen.

12:16.140 --> 12:19.320
Eigentlich, wenn ich die Gelenkwinkel aus den Sensoren, aus den

12:19.320 --> 12:24.620
Encodern ablesen kann, und ich habe ja eine Art Beziehungen, die mir

12:24.620 --> 12:30.040
die Rotationen und Translationen der Gelenke zueinander beschreiben,

12:30.580 --> 12:33.680
dann kann ich natürlich dieses Problem hier lösen.

12:34.780 --> 12:42.360
Dramatischer wird es, wenn es andersrum, wenn das Problem anders ist.

12:42.360 --> 12:46.760
Das heißt, ich habe die Position von der Tasse, und es interessiert

12:46.760 --> 12:50.580
mich nicht, wo meine Hand ist, sondern es interessiert mich, wie komme

12:50.580 --> 12:51.800
ich zu dieser Tasse.

12:52.660 --> 12:56.000
Das heißt, wie soll ich den Arm jetzt hinstellen, damit ich überhaupt

12:56.000 --> 12:57.680
zu diesem Objekt auf dem Tisch stelle.

12:58.260 --> 13:05.900
Das heißt, gegeben ist die Zielposi hier von der Hand, und mit welchen

13:05.900 --> 13:09.120
Gelenkwinkelwerten erreiche ich diesen Becher.

13:10.740 --> 13:16.260
Das ist also das sogenannte inversi-kinematische Problem, welches für

13:16.260 --> 13:20.440
uns tatsächlich die Gelenkwinkel eines Roboters, jetzt im Falle von

13:20.440 --> 13:25.600
ARMA, die sieben Gelenkwinkel, die im Arm sind, aus der 6D-Posi von

13:25.600 --> 13:27.020
dem Becher auf dem Tisch bestimmt.

13:28.060 --> 13:31.980
Und das Problem ist natürlich wesentlich, weil jede Trajektorie, die

13:31.980 --> 13:35.320
wir ausführen mit einem Roboter, muss das Problem lösen.

13:35.320 --> 13:39.260
Für jede Trajektorie, die wir ausführen, müssen wir das Problem lösen.

13:39.380 --> 13:44.500
Wenn wir entlang einer bestimmten Bahn fahren müssen, ja, die Bahn ist

13:44.500 --> 13:48.060
gegeben im karthesischen Raum, dann müssen wir für jeden Punkt dieser

13:48.060 --> 13:50.680
Trajektorie das inversi-kinematische Problem lösen.

13:51.180 --> 13:56.960
Und die Leute, die sich so ein bisschen vielleicht mit dem Thema

13:56.960 --> 14:01.920
auskennen, die wissen beispielsweise, dass das Problem hier, oder

14:01.920 --> 14:05.780
könnten wissen, ja, das werden wir lernen, dass das Problem hier nicht

14:05.780 --> 14:10.140
immer trivial lösbar ist, wie das sogenannte direkte kinematische

14:10.140 --> 14:10.520
Problem.

14:11.200 --> 14:16.560
So, bevor wir jetzt hier einsteigen, ganz kurz ein paar Definitionen.

14:16.700 --> 14:18.160
Was ist eine kinematische Kette?

14:18.360 --> 14:21.500
Das, was wir machen hier, bezieht sich nicht nur auf kinematische

14:21.500 --> 14:24.600
Modelle auf Robotik, sondern auf beliebige kinematische Ketten.

14:25.380 --> 14:29.100
Und eine kinematische Kette ist zum Beispiel ein Roboterarm oder der

14:29.100 --> 14:29.920
gesamte Roboter.

14:29.920 --> 14:33.720
Das heißt, wir haben hier beispielsweise die Basis von einem

14:33.720 --> 14:37.900
Roboterarm, das im Gegensatz zu all diesen Beispielen, die wir in den

14:37.900 --> 14:43.020
Buschen sehen, wo man so ein paar Gelenke von einem statischen Arm,

14:43.700 --> 14:46.740
der irgendwo fixiert ist, in einem Basiskoordinatensystem.

14:46.900 --> 14:48.960
Wir nehmen immer den Armer hier als Beispiel.

14:49.160 --> 14:53.420
Das heißt, zum Beispiel die Basis von diesem Roboterarm ist das

14:53.420 --> 14:55.920
Schultergelenk, irgendwas in der Schulter hier.

14:56.650 --> 15:00.480
Dann haben wir natürlich Gelenke, also insgesamt drei hier, ein

15:00.480 --> 15:03.640
Ellenbogengelenk und zwei im Handgelenk hier.

15:04.140 --> 15:07.840
Und dann haben wir Segmenti, die diese Gelenke miteinander verbinden.

15:08.100 --> 15:11.200
Man nennt sie auch links auf Englisch, man nennt sie auf Deutsch

15:11.200 --> 15:13.940
Segmenti, beziehungsweise Glieder der kinematischen Kette.

15:14.640 --> 15:19.640
Und dann haben wir den Endeffektor, der ein einfacher Backengreifer

15:19.640 --> 15:24.200
sein kann, bei einem Roboter, oder eine fünffingerige Hand, wie hier

15:24.200 --> 15:26.220
in dem Beispiel angegeben ist.

15:26.720 --> 15:31.800
So, und das heißt, wenn man das Ganze jetzt ein bisschen allgemein,

15:31.880 --> 15:35.360
beziehungsweise hier wie das normalerweise dargestellt ist in der

15:35.360 --> 15:40.220
Literatur, eine kinematische Kette wird von mehreren Körpern gebildet,

15:40.360 --> 15:44.480
die durch Gelenke miteinander kinematisch verbunden sind, zum Beispiel

15:44.480 --> 15:45.440
ein Roboterarm.

15:45.440 --> 15:48.880
Und da sieht man, man unterscheidet zwischen sogenannten offenen

15:48.880 --> 15:51.900
kinematischen Ketten und geschlossenen kinematischen Ketten.

15:52.020 --> 15:57.060
Das heißt, hier gibt es eine Basis, zum Beispiel war die Schulter bei

15:57.060 --> 16:02.380
Arma und der Endeffektor hier die Hand von dem Roboter.

16:02.900 --> 16:06.140
Aber es gibt solche kinematischen Ketten, die geschlossen sind, also

16:06.140 --> 16:10.580
wo das erste und letzte Gelenk hier fest sind und dazwischen mehrere

16:10.580 --> 16:15.820
Segmenti, die mit Gelenken miteinander verbunden sind.

16:16.780 --> 16:20.540
So, das sind hier ein paar Definitionen.

16:20.660 --> 16:24.420
Also jedes Armelement entspricht einem starren Körper.

16:25.400 --> 16:28.680
Jedes Armelement ist mit dem nächsten durch ein Gelenk verbunden.

16:29.200 --> 16:31.720
Wir haben natürlich nicht nur Rotationsgelenke, sondern

16:31.720 --> 16:37.180
Translationsgelenke, beziehungsweise Schubgelenke, wie wir das in den

16:37.180 --> 16:39.020
ersten Vorlesungen kennengelernt haben.

16:39.020 --> 16:43.120
Und jedes dieser Gelenke, wir gehen jetzt noch davon aus, dass jedes

16:43.120 --> 16:46.520
Gelenk nur einen Bewegungsfreiheitsgrad hat.

16:47.020 --> 16:51.300
Das heißt, wir haben keine Gelenke mit zwei Freiheitsgraden oder mit

16:51.300 --> 16:55.540
drei Freiheitsgraden, wie ein Kugelgelenk oder wie ein Sattelgelenk,

16:55.640 --> 16:58.260
was wir im menschlichen Körper kennen, zum Beispiel die Schulter mit

16:58.260 --> 17:00.600
drei Freiheitsgraden oder ähnliches.

17:01.140 --> 17:05.700
So, das heißt, wir haben pro Gelenk hier einen Bewegungsfreiheitsgrad

17:06.380 --> 17:10.800
und der kann entweder eine Rotation sein oder eine Translation sein.

17:11.520 --> 17:12.680
Und das sind so Beispiele.

17:12.920 --> 17:16.180
Das ist eine Kinematik von einem humanoiden Roboter.

17:16.360 --> 17:20.300
Man sieht hier, man hat Armsegmente, das Unterschenkel, Oberschenkel,

17:20.460 --> 17:24.340
Unterarm, Oberarm, Torso und diese Segmente sind über Gelenke

17:24.340 --> 17:28.100
miteinander verbunden, in dem Beispiel hier von dem Roboter nur

17:28.100 --> 17:30.560
Rotationsgelenke.

17:30.560 --> 17:37.440
Und die Parameter, die man braucht, um die Lage vom Roboter im Raum zu

17:37.440 --> 17:40.600
beschreiben, sind natürlich Parameter dieser Gelenke.

17:41.400 --> 17:43.200
Was würde uns interessieren hier?

17:43.320 --> 17:46.840
Natürlich würde uns interessieren irgendwie die Rotationsachsen.

17:47.620 --> 17:51.200
Wo liegen die Rotationsachsen hier im Ellenbogen oder in der Schulter

17:51.200 --> 17:51.600
genau?

17:52.080 --> 17:53.260
Wie sind sie ausgerichtet?

17:53.960 --> 17:56.540
Wie liegen sie relativ zueinander?

17:57.220 --> 17:59.380
Wie weit kann sich ein Gelenk drehen?

18:01.020 --> 18:02.140
Also Gelenkwinkelbegrenzungen.

18:02.560 --> 18:04.120
Und wie weit sind z.B.

18:04.860 --> 18:07.800
die einzelnen Segmente in der kinematischen Kette?

18:07.980 --> 18:08.460
Also z.B.

18:08.640 --> 18:13.820
der Oberarm und Unterarm des Roboters.

18:14.600 --> 18:18.420
Das heißt, wir haben als kinematische Parameter z.B.

18:18.860 --> 18:22.540
Rotationsachsen steht hier, aber auch Transformationen zwischen diesen

18:22.540 --> 18:29.900
Gelenken, weil die Lage vom Knie im Bezug zu Fuß oder zum Sprunggelenk

18:29.900 --> 18:36.000
ist nicht nur der Abstand des Unterbeines, sondern auch die Rotation

18:36.000 --> 18:40.900
von dem Unterbein relativ zu dem Bezugskoordinatensystem.

18:42.460 --> 18:49.760
So, und man sieht hier ein Beispiel, auch von dem AMA 3, da sieht man

18:49.760 --> 18:55.220
hier ein Modell, ein geometrisches Modell zunächst mal hier von dem

18:55.220 --> 18:55.540
Arm.

18:56.580 --> 18:59.900
Und man sieht hier, dass man in jedem Gelenk eigentlich, wir haben

18:59.900 --> 19:06.460
hier drei Gelenke in der Schulter, hier eins im Ellenbogen, eins im

19:06.460 --> 19:08.520
Unterarm und zwei im Handgelenk.

19:08.720 --> 19:13.780
Und man sieht hier, dass Koordinatensysteme diesen Gelenken zugeordnet

19:13.780 --> 19:18.880
sind, anhand derer wir diese Transformationen beschreiben können.

19:19.740 --> 19:26.120
Das heißt, um das hier machen zu können, damit wir wissen z.B.

19:26.440 --> 19:30.240
wo die Hand ist, wenn wir bestimmte Gelenkwinkel hier haben, müssen

19:30.240 --> 19:33.800
wir zunächst mal die Lage der Gelenke zueinander spezifizieren.

19:34.460 --> 19:35.060
Also z.B.

19:36.120 --> 19:39.440
das sind zunächst mal feste Transformationen zwischen diesen

19:39.440 --> 19:40.540
Koordinatensystemen.

19:40.540 --> 19:47.500
Da sieht man hier mehrere Koordinatensysteme im gleichen Punkt, also

19:47.500 --> 19:53.300
Rot und Grün und Blau, das sind XYZ der lokalen Koordinatensysteme in

19:53.300 --> 19:54.540
den Gelenken.

19:55.140 --> 19:58.740
Man sieht hier, dass wir im Ellenbogen auch zwei Gelenke haben, also

19:58.740 --> 20:02.680
einmal die Ellenbogenflexion und Extension und einmal die

20:02.680 --> 20:03.680
Unterarmdrehung.

20:04.080 --> 20:07.160
Und man sieht auch, dass wir zwei Gelenke hier im Handgelenk haben.

20:08.110 --> 20:15.620
Das heißt, eigentlich kann die Beschreibung von diesem Arm darauf

20:15.620 --> 20:21.180
zurückgeführt werden, dass wir auf die Beschreibung der Beziehungen

20:21.180 --> 20:24.780
zwischen diesen unterschiedlichen Koordinatensystemen zurückgeführt

20:24.780 --> 20:25.560
werden.

20:25.680 --> 20:30.000
Und wie beschreiben wir Beziehungen zwischen zwei Koordinatensystemen?

20:30.720 --> 20:34.600
Oder Lage eines Punktes in einem Koordinatensystem, also zum Beispiel

20:34.600 --> 20:39.380
Ursprung vom Koordinatensystem vom Ellenbogen im Koordinatensystem der

20:39.380 --> 20:39.780
Schulter.

20:40.140 --> 20:43.420
Was brauchen wir oder was müssen wir überhaupt machen, um die Lage

20:43.420 --> 20:49.060
eines Gelenks, zum Beispiel Ellenbogen im Koordinatensystem der

20:49.060 --> 20:50.000
Schulter zu beschreiben?

20:52.260 --> 20:53.400
Enttäuscht mich nicht.

20:55.960 --> 20:59.340
Wie viele Parameter sind das oder welche Methoden haben wir

20:59.340 --> 21:01.480
kennengelernt, um das zu machen?

21:01.940 --> 21:03.480
Naja, viele Methoden eigentlich.

21:04.180 --> 21:11.040
Wir müssen die Translation des Ellenbogens im

21:11.040 --> 21:14.420
Schulterkoordinatensystem haben und wir müssen die Rotation vom

21:14.420 --> 21:16.480
Ellenbogen im Schulterkoordinatensystem haben.

21:17.240 --> 21:20.360
Und wir wissen, die Translation, das ist ein Translationsvektor, und

21:20.360 --> 21:23.820
für die Rotation haben wir einen Haufen an Methoden kennengelernt.

21:24.680 --> 21:28.360
Wir haben 3x3 Rotationsmatrizen, wir haben Eulerwinkel, wir haben Roll

21:28.360 --> 21:31.720
-Picot -Winkel, wir haben Quaternionen und so weiter und so fort.

21:32.200 --> 21:38.100
Das brauchen wir alles, damit wir am Ende tatsächlich sagen können, wo

21:38.100 --> 21:41.920
ist die Hand des Roboters im Basiskoordinatensystem.

21:42.800 --> 21:46.380
Das sind aufeinanderfolgende Gelenke, aufeinanderfolgende

21:46.380 --> 21:48.960
Transformationsmatrizen, zum Beispiel homogene

21:48.960 --> 21:53.440
Transformationsmatrizen, die, wie wir wissen, man miteinander

21:53.440 --> 21:58.240
verketten kann durch Multiplikation, um die gesamte Transformation zu

21:58.240 --> 22:03.980
beschreiben von Gelenk 0 bis Gelenk N oder vom Koordinatensystem 0 bis

22:03.980 --> 22:05.160
Koordinatensystem N.

22:06.360 --> 22:11.740
Also was wir machen müssen, wir haben feste Transformationen zwischen

22:11.740 --> 22:16.480
den Gelenken, weil wir nehmen an, das ist ein starrer Roboter, es sind

22:16.480 --> 22:22.020
keine deformierbaren Segmente, Oberarm und Unterarm, die Beziehungen

22:22.020 --> 22:27.940
sind immer gleich, die Beziehungen zwischen Punkten auf den

22:27.940 --> 22:31.500
Armelementen, die bleiben immer gleich bei der Bewegung.

22:32.160 --> 22:36.760
Und was man machen muss, ist so lokale Koordinatensysteme der Gelenke

22:36.760 --> 22:42.180
definieren, wie hier skizziert ist, und dann Transformationen von

22:42.180 --> 22:48.240
Gelenk I-1 zu Gelenk I durch Transformationsmatrizen, zum Beispiel

22:48.240 --> 22:51.760
homogene Transformationsmatrizen, die wir kennengelernt haben,

22:52.060 --> 22:52.340
bestimmen.

22:53.920 --> 22:58.340
Und wir wissen, für jedes Gelenk muss dann eine Transformation

22:58.340 --> 23:03.440
bestimmt werden und diese Transformation hat drei Rotationsparameter

23:03.440 --> 23:05.780
und drei Translationsparameter.

23:05.780 --> 23:10.100
Also insgesamt eigentlich brauchen wir für die Beschreibung von

23:10.100 --> 23:13.960
Beziehungen zwischen Koordinatensystemen hier in diesem Arm sechs

23:13.960 --> 23:17.960
Parameter pro Beziehung zwischen Gelenk I-1 und I.

23:18.500 --> 23:23.560
Drei Translationen und drei Rotationen, wenn wir mit Winkeln arbeiten,

23:23.760 --> 23:25.660
mit Euler oder mit Roll-Picot.

23:27.680 --> 23:34.300
Die Frage ist jetzt, geht es mit weniger Parameter als sechs

23:34.300 --> 23:34.900
Parameter?

23:36.000 --> 23:42.540
Und das ist tatsächlich, was ein Herr Denevitt-Hartenberg festgestellt

23:42.540 --> 23:47.660
hat oder vorgeschlagen hat und wo er eine Konvention eingeführt hat,

23:47.820 --> 23:53.720
die eigentlich nichts Neues ist, sondern durch diese Konvention kann

23:53.720 --> 23:59.980
man die Festlegung der Koordinatensysteme in den Gelenken so geschickt

23:59.980 --> 24:04.800
machen, dass man mit vier Parametern statt mit sechs Parametern

24:04.800 --> 24:05.560
auskommt.

24:06.560 --> 24:12.640
Das heißt, es gibt irgendein Kochrezept, mit dem man diese lokalen

24:12.640 --> 24:16.740
Koordinatensysteme in den Gelenken geschickt festlegt, sodass man die

24:16.740 --> 24:21.320
Anzahl der Parameter, die notwendig sind, um die Beziehungen zwischen

24:21.320 --> 24:25.440
zwei aufeinanderfolgenden Gelenken zu definieren oder zu beschreiben,

24:26.440 --> 24:26.900
reduziert.

24:26.900 --> 24:29.680
So, wie funktioniert das?

24:32.980 --> 24:39.180
Man hat zunächst mal, wie wir schon wissen, eine systematische

24:39.180 --> 24:40.540
Beschreibung der Beziehungen.

24:40.800 --> 24:44.940
Das sind Translationen und Rotationen zwischen benachbarten Gelenken.

24:45.920 --> 24:50.820
Und in diesem Paper hier von Denevitt-Hartenberg von 1955 aus der

24:50.820 --> 24:55.780
Mechanik, wie man sieht, Journal of Applied Mechanics, kann man die

24:55.780 --> 24:59.820
Anzahl der Parameter, die notwendig sind, also bis jetzt wissen wir

24:59.820 --> 25:01.640
eigentlich, was wir gelernt haben.

25:01.780 --> 25:05.880
Wir brauchen sechs Parameter, um diese Transformation mal zu

25:05.880 --> 25:06.420
beschreiben.

25:07.180 --> 25:10.960
Und mit Hilfe von dieser Konvention können wir die Anzahl der

25:10.960 --> 25:12.960
Parameter von sechs auf vier beschreiben.

25:13.100 --> 25:14.020
Wie macht er das?

25:15.400 --> 25:22.160
Man definiert natürlich ein Koordinatensystem in jedem Gelenk.

25:22.420 --> 25:26.420
Jedes Koordinatensystem wird auf Basis von drei Regeln bestimmt.

25:26.940 --> 25:33.100
Jedes Gelenkkoordinatensystem wird auf Basis von drei Regeln bestimmt.

25:33.100 --> 25:41.680
Die erste Regel sagt, dass die ZI-1-Achse, also zum Beispiel Z1, liegt

25:41.680 --> 25:44.600
entlang der Bewegungsachse vom Gelenk 2.

25:46.000 --> 25:55.960
Also die ZI-1-Achse oder Gelenk liegt entlang der Bewegungsachse des

25:55.960 --> 25:56.800
Ethengelenks.

25:56.800 --> 26:02.460
Dann die XI-Achse, also die X-Achse beim Ethengelenk, verläuft entlang

26:02.460 --> 26:07.460
der gemeinsamen Normalen auf den zwei Z-Achsen, also auf die Z-Achse

26:07.460 --> 26:15.860
vom Gelenk I-1 und Gelenk I und zeigt von der ZI-1-Achse weg.

26:16.620 --> 26:24.780
Und die Y-Achse vervollständigt das Ganze zu einem rechtwinkligen oder

26:24.780 --> 26:28.580
zu einem Koordinatensystem entsprechend der Rechthandregel.

26:29.400 --> 26:35.120
Und das macht man für jedes Gelenk, angefangen mit der Basis bis hin

26:35.120 --> 26:36.840
zum letzten Gelenk.

26:37.540 --> 26:41.320
Was wir hier präsentieren in dieser Vorlesung ist nur eine Variante,

26:41.760 --> 26:45.220
wie man diese Parameter bestimmt beziehungsweise wie man die

26:45.220 --> 26:50.520
Koordinatensysteme festlegt, um diese Reduktion der Anzahl der

26:50.520 --> 26:52.580
beschreibenden Parameter zu erreichen.

26:52.860 --> 26:56.920
Also aufgepasst, wenn ihr in unterschiedlichen Büchern mal nach den

26:56.920 --> 27:01.480
David -Hartenberg-Notationen sucht, dann wundert ihr euch nicht, dass

27:01.480 --> 27:05.460
die Beschreibungen in den unterschiedlichen Büchern unterschiedlich

27:05.460 --> 27:05.680
sind.

27:07.020 --> 27:10.760
So, wir wollen gucken, wie das funktioniert und wie kommt man wirklich

27:10.760 --> 27:11.980
auf diese vier Parameter.

27:11.980 --> 27:16.860
Also eigentlich, das Problem ist, ich habe ein Gelenk hier I plus 1

27:16.860 --> 27:19.160
und ich habe hier ein Gelenk I, wie hier dargestellt.

27:19.660 --> 27:23.240
Dazwischen die zwei Gelenke sind verbunden mit einem Armelement I,

27:23.400 --> 27:25.200
also zum Beispiel Schulter und Ellenbogen.

27:25.820 --> 27:30.220
Und das Ganze geht hier weiter am Element I plus 1 und hier am Element

27:30.220 --> 27:31.900
I minus 1.

27:32.720 --> 27:37.620
Und die Frage, was wir gerade suchen, wir suchen die Transformation,

27:38.040 --> 27:40.240
die diese zwei Gelenke ineinander bringt.

27:40.930 --> 27:47.140
Und man sieht hier zum Beispiel, was der Hartenberg vorschlägt.

27:47.260 --> 27:52.960
Er sagt, die ZI minus 1 Achse muss entlang der Achse vom Gelenk I.

27:53.400 --> 27:57.640
Deshalb hier ZI minus 1 und hier ZI bei Gelenk I plus 1.

27:58.580 --> 28:04.320
Dann als nächstes, die zweite Regel ist, oder was man schon daraus

28:04.320 --> 28:10.100
eigentlich ablesen kann, die Armelementlänge AI, die beschreibt jetzt

28:10.100 --> 28:14.400
den Abstand zwischen diesen zwei Achsen entlang der gemeinsamen

28:14.400 --> 28:14.980
Normali.

28:15.460 --> 28:20.360
Also das ist die Normali auf ZI und ZI minus 1 und der Abstand

28:20.360 --> 28:22.740
zwischen denen, das ist ein Parameter AI.

28:23.340 --> 28:26.980
Das ist natürlich sehr wichtig und das gibt uns mehr oder weniger die

28:26.980 --> 28:29.020
Länge vom Oberarm in unserem Beispiel.

28:29.020 --> 28:30.940
Also im Armer-Beispiel.

28:31.740 --> 28:40.240
So, dann die nächste Regel heißt, XI liegt entlang der Normalen von ZI

28:40.240 --> 28:43.940
minus 1 zu ZI und zeigt von ZI weg.

28:44.240 --> 28:47.440
Also er zeigt XI in die Richtung und nicht in die Richtung.

28:47.900 --> 28:50.420
Das ist auch nichts Schlimmes.

28:51.080 --> 28:55.040
Also auch senkrecht auf dem hier, das heißt, es ist ein legitimes,

28:55.120 --> 28:57.480
rechtswinkliges Koordinatensystem.

28:57.480 --> 29:04.040
Und die nächste Regel sagt, oder was man daraus schon jetzt hier sehen

29:04.040 --> 29:10.220
kann, man kann sehen, dass dieser Versatz der Gelenke oder wie schräg

29:10.220 --> 29:14.720
die Gelenke relativ zueinander sind, kann man beschreiben anhand von

29:14.720 --> 29:16.000
dem Winkel Alpha I.

29:16.000 --> 29:23.940
Und zwar Alpha I ist der Winkel eigentlich zwischen ZI minus 1 und ZI

29:23.940 --> 29:30.960
im Ursprung vom Koordinatensystem I.

29:31.520 --> 29:38.680
Und zwar, wie soll ich ZI minus 1 um die XI-Achse drehe, damit ZI

29:38.680 --> 29:41.700
minus 1 in ZI hineingeht.

29:42.660 --> 29:45.760
Das heißt, man kann sich vorstellen, wenn ich ZI minus 1 hierher

29:45.760 --> 29:51.680
verschiebe, dann drehe ich ZI minus 1 um die XI-Achse, solange bis ZI

29:51.680 --> 29:54.320
minus 1 in Übereinstimmung mit ZI ist.

29:54.460 --> 29:56.280
Und das ist ein Winkel Alpha.

29:57.000 --> 30:00.420
Und dieser Winkel natürlich beschreibt für uns, wie schräg die Achsen

30:00.420 --> 30:01.720
relativ zueinander sind.

30:03.360 --> 30:05.200
Also, das heißt, was haben wir bis jetzt?

30:05.260 --> 30:06.320
Wir haben zwei Parameter.

30:06.420 --> 30:09.060
Wir haben Alpha I, AI und Alpha I.

30:09.060 --> 30:10.640
Was haben wir noch?

30:11.620 --> 30:15.720
Wir haben jetzt natürlich die zwei Gelenke, die können weit weg

30:15.720 --> 30:20.600
voneinander sein, also Alpha AI entfernt voneinander sein, aber die

30:20.600 --> 30:22.860
können auch versetzt im Raum sein.

30:23.700 --> 30:28.540
Und diesen Versatz kann man natürlich hier ablesen anhand von dem

30:28.540 --> 30:34.840
Abstand, also das nennt man auch Gelenkabstand, zwischen der XI minus

30:34.840 --> 30:37.360
1 Achse und der XI-Achse.

30:37.360 --> 30:42.760
Und zwar entlang der ZI I minus 1 Achse.

30:42.880 --> 30:45.840
Das heißt, wenn wir das hier verlangen, das ist die gemeinsame

30:45.840 --> 30:48.940
Normali, das ist auch XI, schneidet hier.

30:49.580 --> 30:53.840
Und das ist unser XI, der Ursprung von dem hier, also der Ursprung vom

30:53.840 --> 30:56.220
Gelenk I sollte hier sein.

30:56.780 --> 30:59.720
Und diese Differenz hier ist nichts anderes als DI.

31:00.440 --> 31:03.700
Das braucht man natürlich, weil da wissen wir, wie versetzt die

31:03.700 --> 31:07.700
Gelenke gegeneinander entlang der X-Achse sind.

31:08.500 --> 31:10.820
Das heißt, wie viele Parameter haben wir jetzt?

31:11.320 --> 31:14.520
Wir haben AI und wir haben DI und wir haben Alpha I.

31:14.640 --> 31:15.580
Was fehlt uns noch?

31:16.080 --> 31:20.220
Es fehlt uns natürlich, wie die Gelenke zueinander gedreht sind.

31:20.420 --> 31:24.580
Und zwar tatsächlich, wie sie rotiert zueinander sind.

31:24.580 --> 31:29.520
Also eigentlich, wir haben jetzt XI und ZI und jetzt müssen wir

31:29.520 --> 31:35.320
gucken, dass diese zwei Koordinatensysteme, also vom Koordinatensystem

31:35.320 --> 31:40.480
I und vom Koordinatensystem I minus 1 so gedreht werden, dass sie

31:40.480 --> 31:42.440
ineinander überführt werden.

31:42.440 --> 31:50.260
Und zwar, wir müssen also dieses Koordinatensystem I minus 1 um ein

31:50.260 --> 31:54.580
TTI drehen, damit XI minus 1 parallel zu XI ist.

31:54.680 --> 31:57.800
Und dann haben wir eigentlich die zwei Gelenke aufeinander gebracht.

31:59.120 --> 32:00.460
So, was bedeutet das?

32:00.560 --> 32:04.060
Das bedeutet eigentlich, wir kennen den Abstand, wir kennen den

32:04.060 --> 32:07.960
Versatz, wir wissen, wie die Gelenke schräg zueinander liegen und wir

32:07.960 --> 32:12.160
wissen, wie die zwei Koordinatensysteme hier verschoben oder gedreht

32:12.160 --> 32:15.480
werden müssen, damit sie ineinander überführt werden.

32:16.120 --> 32:17.280
Und mehr brauchen wir nicht.

32:18.320 --> 32:22.500
Das heißt, mithilfe von diesen vier Parametern können wir tatsächlich

32:22.500 --> 32:28.020
jetzt die kompletten Beziehungen, die Transformationen, also Lagen von

32:28.020 --> 32:32.420
Punkten, zum Beispiel hier im Gelenk I plus 1 im

32:32.420 --> 32:35.620
Basiskoordinatensystem vom Gelenk I beschreiben.

32:36.680 --> 32:40.380
Okay, das war ja eine schöne Visualisierung jetzt, wir müssen das ein

32:40.380 --> 32:42.340
bisschen mathematisch formulieren.

32:43.060 --> 32:46.740
Eigentlich sind diese Parameter nichts anderes als Parameter von

32:46.740 --> 32:48.760
irgendwelchen Transformationen.

32:49.120 --> 32:53.100
Und diese Transformationen, vielleicht ganz kurz, ich habe ja das

32:53.100 --> 32:57.720
Beispiel jetzt nur für Rotationsgelenke gemacht, wo natürlich der

32:57.720 --> 33:02.960
letzte Winkel hier, V, ist die unabhängige Variable, weil das ist die

33:02.960 --> 33:04.160
Drehung von dem Gelenk.

33:04.160 --> 33:09.860
Bei einem Schubgelenk oder bei einem Lineargelenk ist natürlich die

33:09.860 --> 33:14.200
Variable hier, die unabhängige Variable, ist natürlich D und nicht

33:14.200 --> 33:14.540
Theta.

33:15.220 --> 33:20.340
Also die Verschiebung entlang, D war die Verschiebung entlang der ZI

33:20.340 --> 33:22.920
-Achse zwischen den zwei Koordinatensystemen.

33:23.200 --> 33:25.980
Stellt euch mal vor, es gibt hier ein Gelenk, der bewegt sich hoch und

33:25.980 --> 33:29.540
runter, natürlich D würde sich verändern und nicht Theta.

33:30.920 --> 33:36.000
Gut, jetzt versuchen wir mal das mathematisch zu beschreiben.

33:36.420 --> 33:39.400
Also, das heißt, um diese zwei Koordinatensysteme ineinander zu

33:39.400 --> 33:45.660
überführen, haben wir zunächst mal eine Rotation Theta I, um die die

33:45.660 --> 33:51.120
ZI -Achse und damit die XI-Achse parallel zur XI-Achse liegt.

33:51.120 --> 33:54.900
Und das ist eine Rotation um eine Z-Achse und das können wir

33:54.900 --> 34:01.160
dargestellt hier mithilfe von homogenen Koordinaten, homogenen

34:01.160 --> 34:05.140
Matrizen, Rotation um die Z-Achse und dann unser Cosinus minus Sinus

34:05.140 --> 34:06.980
und Sinus Cosinus.

34:07.360 --> 34:11.980
Und zwar die Rotation um einen Winkel Theta I, deshalb Cosinus Theta I

34:11.980 --> 34:14.020
minus Sinus Theta I und so weiter und so fort.

34:14.020 --> 34:16.680
Was war die nächste Sache, die wir gemacht haben?

34:16.760 --> 34:24.460
Wir haben eine Transformation um DI von dem Koordinatensystem I minus

34:24.460 --> 34:25.340
1 zu I.

34:25.700 --> 34:34.160
Das heißt, wir haben eine Translation entlang der Z-Achse und wir

34:34.160 --> 34:40.160
wissen, dass wir diese Translation mithilfe eines DI hier, mithilfe

34:40.160 --> 34:43.520
von DI in dieser homogenen Matrix beschreiben können.

34:43.800 --> 34:47.680
Man sieht hier, dass die 3x3 Rotationsmatrix die Einheitsmatrix ist,

34:47.780 --> 34:50.560
weil wir haben bei dieser Transformation keine Rotation.

34:51.960 --> 34:55.220
So, das heißt Theta I und DI haben wir.

34:55.460 --> 34:56.280
Was haben wir noch?

34:56.420 --> 34:59.500
AI war eine Verschiebung entlang der X-Achse.

34:59.500 --> 35:03.260
Das ist eine Translation entlang der X-Achse.

35:05.720 --> 35:09.000
Rotationsmatrix ist die Einheitsmatrix und Translation um die X-Achse

35:09.000 --> 35:09.720
sieht man hier.

35:10.540 --> 35:15.640
So, und die vierte Variante war die Rotation um die XI-Achse und zwar

35:15.640 --> 35:17.360
um den Winkel Alpha I.

35:18.020 --> 35:22.540
Rotation um die X-Achse um Alpha I, das ist unsere Rotationsmatrix und

35:22.540 --> 35:23.380
keine Translation.

35:24.140 --> 35:28.700
So, und mithilfe von all diesen vier Transformationsmatrixen können

35:28.700 --> 35:32.940
wir tatsächlich jetzt die Lage vom Koordinatensystem I im

35:32.940 --> 35:35.380
Koordinatensystem I-1 beschreiben.

35:35.660 --> 35:36.920
Wie bekommen wir das?

35:37.520 --> 35:40.060
Wir multiplizieren alle diese vier Matrixen miteinander.

35:40.740 --> 35:44.460
Das heißt, wenn ich diese vier Matrixen miteinander multipliziere, die

35:44.460 --> 35:48.560
ich vorher gesehen habe, dann kommen wir auf eine Matrix, die gibt uns

35:48.560 --> 35:52.660
immer die Transformation, also auf eine homogene Matrix auch, man

35:52.660 --> 35:58.420
sieht hier 0001, die gibt uns die Transformation zwischen Gelenk I-1

35:58.420 --> 35:58.960
und I.

36:00.160 --> 36:05.420
Und diese Matrix, wie man sieht hier, hat nur oder enthält nur,

36:05.600 --> 36:09.140
abgesehen von den trigonometrischen Funktionen, nur die Parameter

36:09.140 --> 36:17.120
Theta, Alpha, D und A, die wir vorher hatten, um überhaupt diese

36:17.120 --> 36:18.380
Transformation zu bestimmen.

36:18.740 --> 36:24.320
Also Theta I, Alpha I, A I und D I.

36:25.680 --> 36:31.680
So, und nun wollen wir nicht immer die Beziehungen oder die Lage vom

36:31.680 --> 36:36.820
Koordinatensystem I im I-1, sondern manchmal interessiert uns

36:36.820 --> 36:40.200
vielleicht die Lage vom Koordinatensystem I-1 im I.

36:40.400 --> 36:41.720
Was müssen wir also machen?

36:42.120 --> 36:45.660
Wir müssen nur diese Transformationsmatrix invertieren.

36:46.360 --> 36:49.820
Und die invertierte Transformationsmatrix sieht so aus.

36:50.380 --> 36:54.100
Und man sieht hier bei dieser invertierten Transformationsmatrix, dass

36:54.100 --> 37:00.760
natürlich die 3x3 Matrix hier, also dieser Teil hier von dieser 4x4

37:00.760 --> 37:06.620
Matrix, nichts anderes als die transponierte Matrix von dieser 3x3

37:06.620 --> 37:09.280
Matrix hier in der ersten Transformation.

37:09.660 --> 37:14.020
Das spart viel Zeit und viel Aufwand, wenn man solche Tricks hier

37:14.020 --> 37:19.140
kennt, weil wir wissen ja, die Inversi-Matrix von Rotationsmatrixen,

37:19.200 --> 37:26.760
dass sie ja orthogonal sind, identisch ist mit der transponierten

37:26.760 --> 37:27.160
Matrix.

37:27.640 --> 37:32.220
Also hier haben wir Cosinus minus Sinus, Cosinus und Sinus, Sinus.

37:32.420 --> 37:36.700
Und man sieht hier Cosinus minus Cosinus, Sinus, Sinus in der ersten

37:36.700 --> 37:37.220
Spalte.

37:37.220 --> 37:42.080
Natürlich hier sieht die Welt anders aus, das ist nicht transponierte

37:42.080 --> 37:45.800
für die komplette Matrix, sondern nur für die 3x3 Rotationsmatrix.

37:46.900 --> 37:49.060
Okay, gibt es Fragen dazu?

37:50.060 --> 37:53.140
Alles klar, dann sieht die Sache einfach aus.

37:56.300 --> 38:01.280
Also haben wir jetzt eine 4x4 Matrix, die nur von vier Parametern

38:01.280 --> 38:06.360
abhängt, mit der wir Beziehungen zwischen Koordinatensystemen

38:06.360 --> 38:06.780
beschreiben.

38:07.180 --> 38:10.640
Wenn wir das jetzt für den kompletten Roboterarm machen wollen, also

38:10.640 --> 38:14.300
von der Basis bis zum letzten Gelenk, dann haben wir natürlich nichts

38:14.300 --> 38:17.960
anderes als eine Multiplikation von diesen Transformationsmatrixen.

38:18.220 --> 38:22.540
Also eine Transformation von der Basis, zum Beispiel Gelenk 0 nach 1,

38:22.680 --> 38:26.400
der hängt natürlich nur von Theta 1, von der Drehwinkel Theta 1.

38:27.020 --> 38:31.420
Transformation von Gelenk 1 nach 2 hängt natürlich nur von Theta 2,

38:32.120 --> 38:37.920
und so weiter und so fort, bis Transformation von M-1 zu M, und das

38:37.920 --> 38:40.500
hängt natürlich vom letzten Gelenkwinkel M.

38:40.680 --> 38:46.200
Und man sieht also, dass man auf diese Art und Weise die Position von

38:46.200 --> 38:51.020
dem Endeffektor, also vom letzten Gelenk, im Basiskoordinatensystem

38:51.020 --> 38:52.460
des Armes beschreiben kann.

38:53.760 --> 39:01.140
So, und wenn wir jetzt beispielsweise die Gelenkwinkel verändern, dann

39:01.140 --> 39:03.460
kriegen wir automatisch immer die Position, oder?

39:04.100 --> 39:07.080
Also wenn ich die Gelenkwinkel hier verändere, dann verändern sich

39:07.080 --> 39:09.940
diese Matrizen, und durch die Multiplikation kriege ich eine andere

39:09.940 --> 39:12.300
Positionorientierung vom Handgelenk.

39:13.180 --> 39:14.080
Und was ist das?

39:14.620 --> 39:17.100
Das ist nichts anderes als das direkte kinematische Problem.

39:17.280 --> 39:21.380
Das heißt, ich habe jetzt eine Beziehung hier, Multiplikation von

39:21.380 --> 39:25.480
Matrizen, das ist wiederum eine 4x4 Matrix, in der natürlich

39:25.480 --> 39:30.280
trigonometrische Funktionen auftauchen, die von Theta 1 bis Theta M

39:30.280 --> 39:31.100
abhängen.

39:31.640 --> 39:36.480
Und wenn ich jetzt die Thetas kenne, also die Gelenkwinkel vom Arm

39:36.480 --> 39:40.200
kenne, ich setze sie nur ein in dieser Matrix, und dann kriege ich die

39:40.200 --> 39:44.160
Position, die neue Positionorientierung von dem Endeffektor.

39:44.460 --> 39:47.620
Und das ist was wir, nichts anderes als das direkte kinematische

39:47.620 --> 39:50.020
Problem, was wir vorher gesehen haben.

39:50.260 --> 39:53.740
Das heißt, ich will wissen, wo ist meine Hand bei bestimmten

39:53.740 --> 39:58.240
Konfigurationen, oder bei bestimmten Gelenkwinkelwerten, und das ist

39:58.240 --> 40:03.080
tatsächlich, was diese DH-Transformationen uns hier liefern.

40:03.740 --> 40:05.780
So, Zusammenfassung.

40:05.920 --> 40:11.060
Wie geht man also vor, wenn man für einen Roboterarm diese DH

40:11.060 --> 40:14.020
-Transformation oder die DH-Parameter bestimmen will?

40:14.020 --> 40:18.560
Man macht zunächst mal sich eine Skizze von dem Roboter, die bekommt

40:18.560 --> 40:22.700
man vielleicht auch von den Konstruktoren, oder kann man selber auch

40:22.700 --> 40:24.500
ableiten.

40:25.160 --> 40:29.320
Man identifiziert und nummeriert die Gelenke, also angefangen mit

40:29.320 --> 40:31.920
Gelenk 1 und das letzte Gelenk ist N.

40:32.640 --> 40:38.840
Man zeichnet die XI-1-Achse im Gelenk I, also laut den Regeln von

40:38.840 --> 40:39.620
Hartenberg.

40:39.620 --> 40:44.920
Man bestimmt die Parameter AI, und zwar das ist der Abstand zwischen

40:44.920 --> 40:49.400
den ZI-1 und ZI-Achsen entlang der gemeinsamen Normalie.

40:50.260 --> 40:55.040
Und man zeichnet dann die XI-Achse, und zwar senkrecht auf der ZI

40:55.040 --> 40:59.060
entlang dieser gemeinsamen Normalie, aber zeigt von ZI-1 weg.

40:59.660 --> 41:03.200
Ich weiß nicht, ob mir jemand folgen kann bei diesen ganzen Sachen.

41:04.360 --> 41:14.020
Und dann man bestimmt den Parameter AI, also wie die Verwindung um die

41:14.020 --> 41:14.900
XI -Achsen.

41:15.880 --> 41:20.800
Anschließend den Parameter D, das heißt der Abstand der Achsen

41:20.800 --> 41:25.640
voneinander entlang der ZI-1-Achse bei dem Parameter DI.

41:25.640 --> 41:31.500
Und anschließend den Rotationswinkel, das heißt die Rotation der X

41:31.500 --> 41:35.260
-Achse um die ZI-1-Achse, damit wir dieses DTE bekommen.

41:35.720 --> 41:41.020
Und dann bestimmt man diese Gelenktransformationsmatrizen, also AI-1

41:41.020 --> 41:45.440
zu AI, und verknüpft sie miteinander, wie wir das gerade hier gemacht

41:45.440 --> 41:45.700
haben.

41:46.580 --> 41:49.320
Gut, gehen wir weiter.

41:49.480 --> 41:54.580
Das habe ich bereits erwähnt, dass wir hiermit auch auf eine einfache

41:54.580 --> 41:57.720
Art und Weise das sogenannte direkte kinematische Problem lösen.

41:58.280 --> 42:02.200
Und das direkte kinematische Problem zur Erinnerung war nichts anderes

42:02.200 --> 42:05.300
als das, wo ist meine Hand.

42:05.820 --> 42:11.600
Ich habe bestimmte Gelenkwinkelstellungen hier in meiner kinematischen

42:11.600 --> 42:15.060
Kette und ich will wissen, wo ist der Endeffektor oder die Hand.

42:15.060 --> 42:17.700
Also die Position und Orientierung.

42:18.220 --> 42:21.760
Und da wir jetzt diese Transformation zwischen Schulter 1, Schulter 2,

42:21.900 --> 42:25.000
Schulter 2 Ellenbogen, Ellenbogen-Handgelenk usw.

42:25.140 --> 42:25.380
usf.

42:26.000 --> 42:29.620
wissen wir, dass diese Beziehung eigentlich durch eine 4x4 Matrix

42:29.620 --> 42:32.180
angegeben werden kann.

42:32.660 --> 42:38.120
Und dass in dieser 4x4 Matrix die ersten drei Elemente von der letzten

42:38.120 --> 42:40.020
Spalte die Position sind.

42:40.020 --> 42:48.260
Und dass wir in der oberen linken 3x3 Matrix die Orientierung von der

42:48.260 --> 42:53.040
Hand im Bezug-Koordinatensystem, also im ersten Koordinatensystem

42:53.040 --> 42:54.340
ablesen können.

42:54.340 --> 43:00.420
So nun haben wir das gerade gesehen, das heißt eigentlich die

43:00.420 --> 43:02.420
Gelenkwinkel sind vorgegeben hier.

43:02.620 --> 43:06.880
Die Stellung vom Tool Center Point oder vom Endeffektor hier ergibt

43:06.880 --> 43:12.340
sich aus der oberen Gleichung durch Einsetzen der Gelenkwinkel.

43:13.280 --> 43:16.300
So nun wollen wir ein paar Beispiele kennenlernen.

43:16.300 --> 43:21.640
Das ist zum Beispiel hier ein Roboterarm mit drei Gelenken.

43:21.980 --> 43:25.760
Das ist ein planarer Roboterarm, könnte man sich vorstellen.

43:25.900 --> 43:32.200
Das sind die Drehachsen, die Achse 1 mit dem Gelenkwinkel Theta 1, die

43:32.200 --> 43:36.640
Achse 2 mit dem Gelenkwinkel Theta 2 und die Achse 3 hier mit dem

43:36.640 --> 43:37.840
Gelenkwinkel Theta 3.

43:38.040 --> 43:41.780
Also das sind die drei Gelenkwinkel von diesem planaren Arm.

43:41.780 --> 43:46.140
Und was man macht natürlich ist hier nichts anderes als diese

43:46.140 --> 43:49.480
Konventionen oder diese Regeln, die ich gerade präsentiert habe.

43:50.160 --> 43:56.600
Das heißt die Z-Achse kommt hier raus, die X-Achse geht zur Seite bei

43:56.600 --> 43:58.800
X0 und Y geht nach oben.

43:59.540 --> 44:02.600
Dann haben wir das erste Koordinatensystem auf die gleiche Art und

44:02.600 --> 44:04.200
Weise das zweite Koordinatensystem.

44:04.200 --> 44:10.680
Also die Z-Achsen gehen raus hier aus der Zeichnungsebene und X0 und Y

44:10.680 --> 44:11.900
in die andere Richtung.

44:12.540 --> 44:17.120
Und man sieht hier in diesem Beispiel natürlich der Abstand der Achsen

44:17.120 --> 44:20.820
voneinander AI ist nichts anderes als die Segmentlänge hier.

44:20.960 --> 44:24.620
Der Abstand hier ist nichts anderes als A2, der Abstand hier ist

44:24.620 --> 44:26.020
nichts anderes als A3.

44:27.940 --> 44:33.500
Und was man hier machen kann, man kann natürlich jetzt diese DH

44:33.500 --> 44:34.800
-Parameter ablesen.

44:35.520 --> 44:40.360
Zum Beispiel habe ich bereits erwähnt, dass AI vor Gelenk 1 ist nichts

44:40.360 --> 44:41.680
anderes als das hier.

44:42.520 --> 44:46.400
Die zwei Achsen, die sind eigentlich ausgerichtet, das heißt Alpha I

44:46.400 --> 44:50.220
ist 0, weil beide Z-Achsen gehen in die Ebene.

44:50.220 --> 44:57.740
Es gibt überhaupt keinen Versatz zwischen dem Ursprung hier von Gelenk

44:57.740 --> 45:02.320
1 und Gelenk 0 entlang der X1-Achse.

45:02.520 --> 45:04.020
Deshalb ist DI gleich 0.

45:04.680 --> 45:08.140
Und natürlich die unabhängige Komponente hier oder unabhängige

45:08.140 --> 45:12.040
Variable bei einem Rotationsgelenk ist Theta 1.

45:12.040 --> 45:20.380
Und zwar ist das der Winkel, um den wir das Koordinatensystem X0

45:20.380 --> 45:26.960
drehen müssen, damit die X-Achsen X0 und X1 in Übereinstimmung sind,

45:27.500 --> 45:28.280
also Theta 1.

45:28.840 --> 45:31.560
Und man sieht von Gelenk 2 und Gelenk 3 ist es ähnlich.

45:31.800 --> 45:34.800
Also man kommt hier auf diese Parameter und mithilfe von diesen

45:34.800 --> 45:38.760
Parametern kann man natürlich hier die Transformationsmatrizen

45:38.760 --> 45:39.160
bestimmen.

45:39.160 --> 45:46.800
Da wir so viele Nullen hier haben, also Alpha I ist 0 und DI ist 0,

45:47.260 --> 45:51.620
deshalb verschwinden so viele Termine in dieser Gleichung, die wir

45:51.620 --> 45:52.680
vorher gesehen haben.

45:52.680 --> 45:57.660
Das heißt, wenn ich hier ein paar mal zurückgehe, sorry, aber

45:57.660 --> 45:59.560
vielleicht ist es interessant, das zu sehen.

46:00.220 --> 46:07.880
Da zum Beispiel Alpha I ist 0 und DI ist 0, verschwinden eigentlich AI

46:07.880 --> 46:08.580
ist 0.

46:09.140 --> 46:14.100
Nein, AI war nicht 0, sondern Alpha I und DI waren 0, deshalb tauchen

46:14.100 --> 46:16.320
natürlich nur hier Cosinus und Sinus.

46:17.000 --> 46:19.580
Alpha I ist, wie viel war Alpha?

46:19.940 --> 46:21.420
Alpha war 0, oder?

46:22.880 --> 46:26.980
Alpha war 0, das heißt Cosinus Alpha I ist 1 und deshalb vereinfachen

46:26.980 --> 46:32.980
sich natürlich die Matrizen, wie wir auf der nächsten Folie sehen

46:32.980 --> 46:33.320
werden.

46:34.260 --> 46:37.680
So, das heißt die Matrizen, man sieht hier die 1, die ich gerade

46:37.680 --> 46:41.780
angesprochen habe, der Rest ist Nullen und somit kann man mithilfe von

46:41.780 --> 46:43.720
diesen Parametern jetzt einsetzen.

46:43.720 --> 46:49.940
Also von 0 nach 1, dann setzt man hier die Gelenkwinkel hier, also A1

46:49.940 --> 46:54.300
vor AI und dann ist es Cosinus Delta I und Sinus Delta I und so weiter

46:54.300 --> 46:54.880
und so fort.

46:55.260 --> 46:57.940
Und kann man diese 4x4 Matrizen eingeben.

46:58.480 --> 47:02.060
Das heißt, wenn wir das hier machen, dann bekommen wir so einen

47:02.060 --> 47:10.600
Ausdruck und in diesem Ausdruck haben wir immer hier die Rotation von

47:10.600 --> 47:13.940
der Hand oder vom Endeffektor im Basiskoordinatensystem.

47:14.680 --> 47:18.740
Die ist hier dargestellt in dieser Rotationsmatrix und man sieht, da

47:18.740 --> 47:22.800
wir jetzt diesen Planarenfall betrachtet haben, dass eine Rotation um

47:22.800 --> 47:26.820
die Z-Achse erkennt man anhand von dieser 3x3 Matrix, dass man die 1

47:26.820 --> 47:31.160
hier hat und die Position natürlich ändert sich in Abhängigkeit von

47:31.160 --> 47:34.540
den Gelenkwinkeln, von Delta I, Delta II, Delta III.

47:35.020 --> 47:37.900
Das könnte man sich vorstellen, die Position hier ändert sich in

47:37.900 --> 47:42.060
Abhängigkeit von den Gelenken Delta I, Delta II und Delta III.

47:43.380 --> 47:51.900
Das heißt, wir haben eigentlich jetzt unser Vorwärtskinematikproblem

47:51.900 --> 47:52.980
ganz einfach.

47:53.160 --> 48:00.080
Wenn ich jetzt weiß, Delta I ist gleich 90°, Delta II ist gleich 90°

48:00.080 --> 48:03.520
und so weiter und so fort, dann kann ich nur hier einsetzen und dann

48:03.520 --> 48:07.040
kriege ich die Orientierung und die Position für eine bestimmte

48:07.040 --> 48:08.360
Gelenkwinkelkonfiguration.

48:08.980 --> 48:15.540
Das ist ein zweites Beispiel, das heißt, das Besondere ist hier das 3D

48:15.540 --> 48:20.100
-Beispiel, wo man Delta I hier hat und anschließend Delta II und dann

48:20.100 --> 48:23.320
hat man hier ein translatorisches Gelenk, also kein rotatorisches

48:23.320 --> 48:30.280
Gelenk, sondern ein Translationsgelenk.

48:30.280 --> 48:32.860
Und was man hier natürlich machen muss zunächst mal, die

48:32.860 --> 48:38.060
Koordinatensysteme gemäß den Regeln, die wir kennengelernt haben,

48:38.140 --> 48:38.620
festlegen.

48:38.740 --> 48:41.620
Man sieht hier zum Beispiel, dass der Ursprung vom Koordinatensystem

48:41.620 --> 48:48.000
Z0 und Z1, also für das erste Gelenk und das zweite Gelenk auch

48:48.000 --> 48:49.220
übereinstimmen können.

48:49.920 --> 48:54.140
Das ist natürlich ein Vorteil, weil dann habe ich ein Parameter, der 0

48:54.140 --> 48:54.540
ist.

48:54.540 --> 48:59.680
Diese Verschiebung zwischen den zwei Gelenken, das vereinfacht vieles

48:59.680 --> 49:00.800
in diesen Matrizen.

49:01.440 --> 49:04.960
Und wie wir sehen werden, werden die Matrizen dann einfacher und

49:04.960 --> 49:10.260
später werden wir das auch sehen, wird die Lösung von einem inversen

49:10.260 --> 49:13.100
kinematischen Problem, was für die Realisierung einer Steuerung

49:13.100 --> 49:14.840
notwendig ist, auch noch einfacher.

49:15.520 --> 49:19.540
Man bestimmt die Parameter hier und man sieht natürlich hier

49:19.540 --> 49:24.300
besonders, dass die unabhängige Variable bei diesem Gelenk hier ist

49:24.300 --> 49:25.000
D3.

49:26.080 --> 49:29.760
Weil D3 ist das, was sich verschiebt, hoch und runter geht.

49:29.860 --> 49:31.620
Es ist nicht ein Gelenk, was sich dreht.

49:32.940 --> 49:37.960
D2 ist hier natürlich der Abstand zwischen diesem Punkt und diesem

49:37.960 --> 49:38.460
Punkt.

49:38.820 --> 49:43.580
Aber D3 ist natürlich die Verschiebung entlang dieser Z2 Achse hier.

49:44.140 --> 49:47.700
Und auf die gleiche Art und Weise kann man die Matrizen hier eingeben.

49:49.380 --> 49:52.200
Matrize 1 zu 2 und 2 zu 3.

49:52.360 --> 49:57.280
Und man sieht, die Transformation 2 zu 3, das ist diese

49:57.280 --> 50:02.040
Translationsachse, da ist im Gegensatz zu dem hier, also 0 zu 1, da

50:02.040 --> 50:03.460
haben wir hier eine Rotation.

50:05.100 --> 50:07.980
1 zu 2 haben wir auch hier eine Rotation.

50:08.240 --> 50:11.840
Und D2 ist konstant, das ist der Abstand hier.

50:11.840 --> 50:17.840
Aber 2 zu 3, da haben wir die Einheitsmatrix hier, also keine Rotation

50:17.840 --> 50:18.600
in dem Fall.

50:18.740 --> 50:22.520
Wenn D3 sich verändert, bleibt die Rotation gleich, die Orientierung

50:22.520 --> 50:26.680
vom Endeffektor gleich, nur die Position ändert sich.

50:27.340 --> 50:33.300
Und zwar nur der Z-Wert der Position ändert sich, weil das ist die

50:33.300 --> 50:36.240
unabhängige Variable der Translationsachse.

50:37.320 --> 50:40.820
So, jetzt war eine Frage hier, glaube ich, oder ist es schon erledigt?

50:40.820 --> 50:48.780
Nein, nein, das ist eine ganz, also das ist nur eine, also C1,

50:50.380 --> 50:52.820
Entschuldigung, das habe ich natürlich nicht erwähnt, aber ich dachte,

50:52.960 --> 50:54.140
das ist ja einfach.

50:54.940 --> 50:58.120
Also ich will jetzt, statt diese Termin hier aufzuschreiben in dieser

50:58.120 --> 51:00.380
Matrix, ich will irgendwelche Abkürzungen haben.

51:04.520 --> 51:06.640
Du kannst es X nennen von mir aus.

51:07.360 --> 51:11.600
Nein, nein, das ist nur eine Abkürzung, wie ich diesen Term bezeichne,

51:11.600 --> 51:16.280
was Cosinus Theta 1 plus Theta 2 plus Theta 3 ist, ist noch

51:16.280 --> 51:17.520
uninteressant.

51:18.900 --> 51:22.780
Ich weiß, also wenn du zum Beispiel Cosinus Theta 1 plus Theta 2 hast,

51:22.880 --> 51:24.280
wie würdest du das hinschreiben?

51:24.820 --> 51:29.020
Okay, er ist nicht so ganz einverstanden, aber gibt es hier

51:29.020 --> 51:33.680
Unklarheiten, was das angeht, dass das eine Abkürzung ist und das ist

51:33.680 --> 51:38.240
nicht eigentlich, nicht gemeint, dass ich jetzt beispielsweise die

51:38.240 --> 51:40.300
Winkel addiere und Cosinus davon nehme.

51:40.300 --> 51:45.260
Also ist mir bekannt, dass ich Cosinus Theta 1 plus Theta 2 ist gleich

51:45.260 --> 51:45.720
irgendwas.

51:46.620 --> 51:50.720
Aber das nur, damit wir wirklich eine verkürzte Schreibweise von

51:50.720 --> 51:52.940
diesen Termen, die auftreten, hier haben.

51:54.680 --> 52:00.500
Okay, so ich glaube es gibt noch ein drittes Beispiel, und zwar das

52:00.500 --> 52:05.960
ist so ein Beispiel von dem ARMA 1 Roboter ARM.

52:05.960 --> 52:11.280
Und zwar, da sieht man hier die DH-Parameter, das sind sieben Achsen,

52:11.740 --> 52:18.500
das sind alle rotatorische Achsen, Theta 1 bis Theta 7.

52:19.560 --> 52:25.600
Und man sieht hier natürlich, ein paar Sachen kann man aus diesen

52:25.600 --> 52:27.040
Tabellen auch ablesen.

52:27.600 --> 52:32.000
Also zum Beispiel dieser Abstand hier, D3 ist nichts anderes als die

52:32.000 --> 52:37.880
Länge vom Oberarm vom Roboter und der Abstand hier, D5, ist nichts

52:37.880 --> 52:43.160
anderes als die Länge vom Unterarm, also 27 cm und 22 cm.

52:44.020 --> 52:48.080
Und man sieht hier natürlich die AIs, die Alpha-Is, die sind immer 90

52:48.080 --> 52:49.400
plus 90 usw.

52:49.700 --> 52:55.380
Und natürlich durch ein geschicktes Design, beziehungsweise durch ein

52:55.380 --> 53:00.140
geschicktes kinematisches Modell von einem Roboter, kann man natürlich

53:00.140 --> 53:07.040
die DH-Parameter Tabellen bekommen, wo viele Nullen dort auftreten.

53:07.480 --> 53:10.020
Und keine Offsets, wie bei den Gelenken.

53:10.200 --> 53:12.840
Also bei den Gelenken haben wir hier zum Beispiel ein Offset von Theta

53:12.840 --> 53:18.300
2 bis Theta 3 und Theta 3 plus 90 und nicht nur ein Theta 3 oder hier

53:18.300 --> 53:20.020
Theta 6 plus 90.

53:20.380 --> 53:23.620
Gut, war der erste ARM, den ich in meinem Leben überhaupt realisiert

53:23.620 --> 53:26.920
habe, aber trotzdem ist er nicht so dramatisch.

53:27.180 --> 53:31.600
Statt dass man Cosinus Theta 6 berechnet, hat man ein Cosinus Theta 6

53:31.600 --> 53:32.280
plus 90.

53:32.420 --> 53:36.020
Manchmal ist es vielleicht auch vorteilhaft, aber im Allgemeinen

53:36.020 --> 53:40.400
sollte man vielleicht versuchen, wenn man jetzt hier von irgendeiner

53:40.400 --> 53:46.160
Großfirma beauftragt wird, so eine neue Kinematik für einen Roboter

53:46.160 --> 53:49.480
-ARM zu entwickeln, dann sollte man sich überlegen, dass man

53:49.480 --> 53:53.440
vielleicht hier so viele Nullen wie möglich in diesen DH-Parameter

53:53.440 --> 53:56.600
-Tabellen hat, weil das würde vieles vereinfachen.

53:57.280 --> 54:03.660
Gut, nun können wir jetzt mithilfe von diesen homogenen

54:03.660 --> 54:09.320
Transformationen, aufeinanderfolgende Transformationsmatrizen, die wir

54:09.320 --> 54:14.480
eindeutig bestimmen können, mithilfe von nur vier Parametern für zwei

54:14.480 --> 54:19.920
aufeinanderfolgende Gelenke, können wir eigentlich das Problem der

54:19.920 --> 54:25.200
Vorwärtskinematik lösen.

54:25.680 --> 54:29.380
Jetzt machen wir ein bisschen weiter und schauen, ob es nicht so

54:29.380 --> 54:35.340
andere Methoden gibt, mit denen man das Problem vielleicht allgemeiner

54:35.340 --> 54:39.680
und weniger geometrisch, vielleicht mehr numerisch hier lösen kann.

54:40.580 --> 54:43.600
Und da kommen wir auf die sogenannten Jacobi-Matrizen.

54:43.600 --> 54:49.200
Und zwar, wir wissen jetzt schon, dass die Beziehungen zwischen

54:49.200 --> 54:53.880
Gelenkwinkelstellungen oder Konfigurationen eines Roboterarms und

54:53.880 --> 54:59.200
Endposi, also Lage und Orientierung vom Endeffektor im Raum, durch die

54:59.200 --> 55:02.360
Beziehung der Vorwärtskinematik beschrieben werden kann.

55:02.880 --> 55:07.520
Aber das ist nicht alles, was einem interessiert, wenn man eine

55:07.520 --> 55:13.620
Steuerung für einen Roboter realisieren will, sondern es interessieren

55:13.620 --> 55:19.180
uns auch die Beziehungen zwischen den Geschwindigkeiten vom Tool

55:19.180 --> 55:24.480
Center Point und den Winkelgeschwindigkeiten der einzelnen Gelenke.

55:25.400 --> 55:29.020
Also nicht nur wirklich, hier ist meine Gelenkwinkelkonfiguration,

55:29.300 --> 55:32.440
hier ist meine Hand, sondern wir wollen zum Beispiel mit einer

55:32.440 --> 55:35.880
bestimmten Trajektorie, mit einer bestimmten Geschwindigkeit des

55:35.880 --> 55:38.660
Endeffektors, also der Hand, ausführen.

55:38.660 --> 55:44.260
Welche Gelenkwinkelgeschwindigkeiten in der Schulter, Ellenbogen und

55:44.260 --> 55:49.900
Handgelenk sind notwendig, um zum Beispiel diese Trajektorie mit einer

55:49.900 --> 55:51.780
bestimmten Geschwindigkeit anfahren zu können?

55:52.660 --> 55:56.960
Das heißt, die Beziehungen zwischen Gelenkwinkelgeschwindigkeiten,

55:57.140 --> 56:00.660
also Gelenkwinkelgeschwindigkeit von der Schulter, vom Ellenbogen und

56:00.660 --> 56:04.640
so weiter, und die kathesischen Geschwindigkeiten vom Endeffektor.

56:04.640 --> 56:07.620
Weil die kathesische Geschwindigkeit ist zum Beispiel die

56:07.620 --> 56:12.620
Geschwindigkeit, mit der ein Roboter eine Bahn abfährt, irgendwas

56:12.620 --> 56:18.880
abschweißt oder lasert oder was sonst.

56:19.360 --> 56:23.680
Also wie sehen diese Beziehungen aus zwischen Geschwindigkeiten, im

56:23.680 --> 56:25.800
Geschwindigkeitsraum und nicht im Positionsraum?

56:26.960 --> 56:32.580
Und zum Zweiten, wir wollen gerne auch wissen, was die Dynamik angeht

56:32.580 --> 56:36.500
von einem Roboter, wie die Beziehungen zwischen den Drehmomenten in

56:36.500 --> 56:43.680
den Gelenken und den Kräften, die am Endeffektor auswirken, sind.

56:44.580 --> 56:49.220
Ja, also stellt euch mal vor, ein Roboterarm soll jetzt 10 Kilo

56:49.220 --> 56:49.620
tragen.

56:50.440 --> 56:55.900
10 Kilo ist eine Kraft, die am Endeffektor auswirkt.

56:56.300 --> 56:59.780
Und die Frage ist, welche Drehmomente müssen jetzt die jeweiligen

56:59.780 --> 57:05.500
Aktoren oder Antriebe in den Gelenken aufbringen, damit ich diese 10

57:05.500 --> 57:10.900
Kilo halten kann beziehungsweise entlang einer Trajektorie auch

57:10.900 --> 57:11.740
bewegen kann.

57:13.500 --> 57:19.920
Das heißt, ohne die Beantwortung dieser Fragen können wir überhaupt

57:19.920 --> 57:25.900
keine Roboter realisieren, die solche dynamischen Eigenschaften oder

57:25.900 --> 57:28.220
dynamische Randbedienungen berücksichtigen.

57:28.220 --> 57:33.380
Und Roboter müssen ja eigentlich was manipulieren, was tragen,

57:33.720 --> 57:37.480
irgendwelche Operationen natürlich mit einer bestimmten

57:37.480 --> 57:40.920
Geschwindigkeit ausführen und auch Präzision.

57:41.420 --> 57:44.640
Und deshalb müssen wir gucken, wie können wir diese Fragen tatsächlich

57:44.640 --> 57:45.420
beantworten.

57:45.780 --> 57:49.580
Also einmal die Beziehungen im Gelenk im Geschwindigkeitsraum und

57:49.580 --> 57:53.080
einmal die Beziehungen im Kraft- oder Drehmomentraum.

57:53.900 --> 57:59.500
Und der Ansatz, den man hier hat, ich meine wir haben jetzt durch dem,

57:59.600 --> 58:03.440
was wir bis jetzt kennengelernt haben, haben wir eigentlich nichts

58:03.440 --> 58:05.660
anderes als eine Funktion.

58:10.180 --> 58:16.420
Eine Funktion, die heißt x und x ist natürlich ein Vektor und das ist

58:16.420 --> 58:18.020
eine Funktion von Theta.

58:19.880 --> 58:28.360
Und wir wissen, dass diese x hier aus, also x, wenn wir im

58:28.360 --> 58:35.280
kartesischen Raum sind, dann ist es natürlich aus R6 und Theta sind

58:35.280 --> 58:44.940
die Gelenkwinkel eines Roboters und das ist natürlich aus Rn, wobei n

58:44.940 --> 58:47.120
die Anzahl der Gelenkwinkel vom Roboter ist.

58:47.870 --> 58:51.860
Das heißt eigentlich, wir haben jetzt gerade gesehen, dass zum

58:51.860 --> 58:57.320
Beispiel mit Hilfe von homogenen Transformationsmatrizen, dass wir

58:57.320 --> 59:03.760
diese Funktion f, das ist ungleich, aber die Funktion f von Theta

59:05.100 --> 59:12.440
nichts anderes als 4x4 Matrix ist und in dieser 4x4 Matrix steht hier

59:12.440 --> 59:17.380
die Orientierung und hier die Position vom Endeffektor.

59:17.820 --> 59:23.300
Also hier in dem Vektor stehen die ersten drei Komponenten von x und

59:23.300 --> 59:28.260
in dieser Matrix stehen die drei Rotationswinkel, die ich als weitere

59:28.260 --> 59:29.580
Komponenten von x habe.

59:30.120 --> 59:36.260
Weil x muss man sich vorstellen hier als ein 6-dimensionaler Vektor

59:36.260 --> 59:47.680
mit x, y, z, Alpha, Beta, Gamma und x, y, z sind der Vektor und Alpha,

59:47.800 --> 59:52.040
Beta, Gamma sind die drei Winkel, die in der Rotationsmatrix

59:52.040 --> 59:53.600
beschrieben sind.

59:54.060 --> 59:59.620
Aber im Allgemeinen haben wir so eine Funktion hier und diese Funktion

59:59.620 --> 01:00:03.340
beschreibt alles im Gelenkwinkelraum bzw.

01:00:04.220 --> 01:00:06.980
im karthesischen Raum, das sind Positionen.

01:00:08.080 --> 01:00:10.100
Und jetzt interessieren uns Geschwindigkeiten.

01:00:10.100 --> 01:00:11.460
Was macht man?

01:00:16.100 --> 01:00:17.060
Differenzieren, ableiten.

01:00:17.540 --> 01:00:21.080
Ja, also wir leiten zum Beispiel diese Gleichung her.

01:00:21.900 --> 01:00:24.380
Ich mache es nicht an der... oder soll ich es an der Tafel machen?

01:00:24.960 --> 01:00:29.420
Das Blöde ist, dass die Vorlesung aufgezeichnet wird für euch und wenn

01:00:29.420 --> 01:00:33.040
ich an der Tafel hier was schreibe, dann weiß ich nicht, wie es

01:00:33.040 --> 01:00:33.500
aussieht.

01:00:33.640 --> 01:00:36.440
Ich hatte keine Zeit, um die letzte Übung mal anzugucken.

01:00:38.540 --> 01:00:43.240
Aber ich mache es trotzdem an der Tafel hier, weil es mir viel lieber

01:00:43.240 --> 01:00:46.200
ist, als jetzt durch die Folien hier durchzuholen.

01:00:48.280 --> 01:00:51.380
Wie differenziert man nach der Zeit?

01:00:52.300 --> 01:00:56.000
Also das sind Vektoren, das ist ein Funktional und das ist auch ein

01:00:56.000 --> 01:00:56.700
Vektortäter.

01:00:57.500 --> 01:01:07.720
Und was wir machen, wir machen eigentlich Delta X nach DT, DX nach DT,

01:01:08.600 --> 01:01:11.960
wenn Position abgeleitet wird nach der Zeit.

01:01:12.180 --> 01:01:12.580
Was haben wir?

01:01:14.000 --> 01:01:14.680
Geschwindigkeiten.

01:01:16.360 --> 01:01:22.840
Und was ist die Ableitung von F nach T, Vektor der partiellen

01:01:22.840 --> 01:01:23.440
Ableitung?

01:01:25.580 --> 01:01:26.540
Naja, nicht ganz.

01:01:28.760 --> 01:01:31.920
Was hängt hier von der Zeit ab, hier in F von T?

01:01:31.920 --> 01:01:39.520
Nein, die Tetas, die Gelenkwinkel, eigentlich hängt hier auch X von T,

01:01:39.640 --> 01:01:43.720
die Position von T und hier hängen die Tetas von T.

01:01:46.180 --> 01:01:50.260
Und wenn ich jetzt differenziere, was muss ich hier machen?

01:01:51.540 --> 01:02:00.040
Ich muss natürlich zunächst mal ein Delta F von Teta von T nach Delta

01:02:00.040 --> 01:02:06.500
Teta zunächst mal ableiten und dann muss ich hier, ja ist egal, Delta

01:02:06.500 --> 01:02:12.780
Teta von T nach Delta T machen, also Kettenregel eigentlich.

01:02:13.700 --> 01:02:15.300
Und was haben wir hier?

01:02:15.740 --> 01:02:19.800
Wir haben hier nichts anderes als X-Punkt und X-Punkt sind die

01:02:19.800 --> 01:02:23.800
Geschwindigkeiten, also die Geschwindigkeit in XYZ-Richtung und die

01:02:23.800 --> 01:02:28.360
Geschwindigkeit vom Tool Center Point, also vom Endeffektor entlang,

01:02:28.620 --> 01:02:34.060
also die Winkelgeschwindigkeit entlang der drei Richtungen oder um die

01:02:34.060 --> 01:02:41.680
drei Rotationsachsen ist gleich dieses Delta F von Teta durch Delta

01:02:41.680 --> 01:02:42.200
Teta.

01:02:43.620 --> 01:02:46.320
Und was ist die Ableitung von Teta nach T?

01:02:46.520 --> 01:02:48.260
Ist eigentlich Teta-Punkt.

01:02:49.560 --> 01:02:51.440
Und was sind Teta-Punkte?

01:02:51.540 --> 01:02:57.860
Wenn Teta der Gelenkwinkelvektor war, dann ist Teta-Punkt der

01:02:57.860 --> 01:03:00.660
Gelenkgeschwindigkeitsvektor.

01:03:01.960 --> 01:03:05.780
Das heißt, wir haben eigentlich eine Beziehung, das was wir suchen,

01:03:07.940 --> 01:03:10.380
Gelenkwinkelgeschwindigkeiten, das sind Teta-Punkt,

01:03:14.760 --> 01:03:17.340
Gelenkwinkelgeschwindigkeiten und kartesischen Geschwindigkeiten oder

01:03:17.340 --> 01:03:19.420
Endeffektor -Geschwindigkeiten.

01:03:19.820 --> 01:03:22.300
Was wissen wir noch nicht?

01:03:25.560 --> 01:03:27.480
Das hier, das kennen wir noch nicht.

01:03:28.640 --> 01:03:32.180
Kennt jemand von euch dieses Delta F nach Delta Teta?

01:03:33.620 --> 01:03:37.920
Also, das ist eigentlich nichts anderes als die Jacobi-Matrix.

01:03:39.320 --> 01:03:44.140
Und zwar, wir haben hier bei der Jacobi-Matrix, wie wir wissen aus der

01:03:44.140 --> 01:03:48.060
Mathematik, eine differenzierbare Funktion, die ist zum Beispiel

01:03:48.060 --> 01:03:50.680
definiert auf Rn, nimmt Werte in Rm.

01:03:51.440 --> 01:03:55.660
Und die Jacobi-Matrix enthält sämtliche partielle Ableitungen in

01:03:55.660 --> 01:03:57.160
erster Ordnung von F.

01:03:58.040 --> 01:04:04.260
Wo jetzt ein Punkt im Rn, also ein A im Rn, ist diese Jacobi-Matrix

01:04:04.260 --> 01:04:07.720
nichts anderes als die partiellen Ableitungen der

01:04:07.720 --> 01:04:12.600
Komponentenfunktionen von F nach den unabhängigen Variablen, also nach

01:04:12.600 --> 01:04:14.460
den Koordinaten von A.

01:04:15.300 --> 01:04:19.940
Also A ist ein Punkt, also besteht ein Punkt im n-dimensionalen Raum,

01:04:20.160 --> 01:04:21.520
also x1 bis xn.

01:04:22.600 --> 01:04:27.060
Und deshalb ist die Jacobi-Matrix nichts anderes als die Ableitung der

01:04:27.060 --> 01:04:29.420
Komponentenfunktionen, also in der ersten Spalte

01:04:29.420 --> 01:04:37.820
Komponentenfunktionen, F1 nach x1, F2 nach x1 bis Fm nach x1.

01:04:38.380 --> 01:04:43.640
Und in der letzten Spalte, wie man sieht hier, die Ableitung der

01:04:43.640 --> 01:04:49.620
ersten Funktionen nach der ersten, zweiten, dritten, ämteren

01:04:49.620 --> 01:04:54.080
Komponentenfunktionen nach der unabhängigen Variable xn.

01:04:54.080 --> 01:04:57.800
So, und das ist nichts anderes als das hier.

01:04:58.960 --> 01:05:04.860
Das heißt, eigentlich jeder Manipulator, jeder Roboterarm kann

01:05:04.860 --> 01:05:07.340
beschrieben werden durch eine Jacobi-Matrix.

01:05:08.620 --> 01:05:12.460
Also der kann beschrieben werden durch die h-Parameter, die wir gerade

01:05:12.460 --> 01:05:15.120
heute gesehen haben, aber der kann beschrieben werden durch eine

01:05:15.120 --> 01:05:16.000
Jacobi -Matrix.

01:05:16.400 --> 01:05:20.060
Und diese Jacobi-Matrix, die hängt natürlich von den Gelenkwinkeln.

01:05:20.960 --> 01:05:30.180
Ja, weil Theta hier in dieser Jacobi-Matrix, Theta ist aus Rn, also

01:05:30.180 --> 01:05:34.000
ein n-dimensionaler Vektor und n ist die Anzahl der Gelenke eines

01:05:34.000 --> 01:05:34.680
Roboterarms.

01:05:36.060 --> 01:05:40.720
So, also, das heißt, damit haben wir eigentlich so eine mathematische

01:05:40.720 --> 01:05:45.440
Mutation, alles was wir wissen über die Jacobi-Matrix, um tatsächlich

01:05:45.440 --> 01:05:48.320
diese Beziehungen, die uns interessieren, zwischen

01:05:48.320 --> 01:05:53.120
Gelenkwinkelgeschwindigkeiten und Geschwindigkeiten vom Endeffektor zu

01:05:53.120 --> 01:05:53.940
beschreiben.

01:05:54.400 --> 01:05:58.320
So, wir gucken uns das mal ein bisschen die Herleitung an.

01:05:58.480 --> 01:06:01.740
Natürlich die Vorwärtskinematik, wie wir bis jetzt definiert haben,

01:06:02.400 --> 01:06:11.080
war eine Abbildung von Rn auf Se3, also auf Position und Orientierung

01:06:11.080 --> 01:06:13.900
im Raum, wie wir das gesehen haben mit den homogenen Matrizen.

01:06:13.900 --> 01:06:18.640
Und da wissen wir hier eigentlich, für diese Darstellung, die wir

01:06:18.640 --> 01:06:22.960
vorher gesehen haben, ist die Jacobi-Matrix nicht definiert.

01:06:23.640 --> 01:06:28.920
Stattdessen, wir machen eine vektorwertige Repräsentation, zum

01:06:28.920 --> 01:06:35.420
Beispiel, wie ich bereits gesagt habe, eine Abbildung von R6 oder Rn

01:06:35.420 --> 01:06:41.820
auf R6, also n Anzahl der Gelenke vom Roboter und R6 ist der

01:06:41.820 --> 01:06:44.800
karthesische Raum, in dem wir uns befinden.

01:06:46.320 --> 01:06:50.780
Und wir nehmen an jetzt unsere kinematische Kette, die bewegt sich

01:06:50.780 --> 01:06:52.260
entlang einer Trajektorie.

01:06:52.860 --> 01:06:56.540
Und die Trajektorie, die können wir natürlich beschreiben mit einer

01:06:56.540 --> 01:07:01.580
Abbildung von R auf Rn, also die Trajektur auf Rn.

01:07:02.140 --> 01:07:07.360
Dann gilt für die Endeffektoposi x aus R6 zu jedem Zeitpunkt, dass x

01:07:07.360 --> 01:07:08.600
ist gleich f von t.

01:07:08.600 --> 01:07:10.520
Das ist, was wir auf der Folie hier hatten.

01:07:11.280 --> 01:07:14.320
Und die Endeffektogeschwindigkeiten, die hängen dann linear von den

01:07:14.320 --> 01:07:17.620
Gelenkwinkelgeschwindigkeiten nach diesem Kettenregel.

01:07:17.880 --> 01:07:23.660
Also die Endeffektogeschwindigkeiten x-Punkt ist nichts anderes als

01:07:23.660 --> 01:07:28.880
die Jacobi-Matrix der Funktion f, die hängt natürlich von den

01:07:28.880 --> 01:07:34.400
Gelenkwinkeln, die wiederum zeitabhängig sind, multipliziert mit den

01:07:34.400 --> 01:07:36.080
Gelenkwinkelgeschwindigkeiten.

01:07:37.080 --> 01:07:45.580
Das heißt, diese Jacobi-Matrix setzt für uns jetzt die kathesischen

01:07:45.580 --> 01:07:50.900
Endeffektogeschwindigkeiten in Relation zu den Gelenkwinkeln vom

01:07:50.900 --> 01:07:51.320
Roboter.

01:07:52.220 --> 01:07:54.880
Und damit kann man folgende Probleme lösen.

01:07:55.100 --> 01:07:59.520
Wenn ich jetzt hier irgendeine gewünschte Endeffektogeschwindigkeit

01:07:59.520 --> 01:08:05.040
oder Geschwindigkeitsprofil habe, ich muss eine Trajektorie mit einer

01:08:05.040 --> 01:08:08.060
bestimmten Geschwindigkeit vom Endeffektor oder von der Hand

01:08:08.060 --> 01:08:12.460
ausführen, die Frage ist, welche Gelenkwinkelgeschwindigkeiten sind

01:08:12.460 --> 01:08:14.180
notwendig, um das zu realisieren.

01:08:15.040 --> 01:08:17.780
Das ist genau, was diese Beziehung hier uns liefert eigentlich.

01:08:18.500 --> 01:08:25.100
Ich wünsche mir irgendeinen x-Punkt hier und natürlich muss ich jetzt

01:08:25.100 --> 01:08:27.680
hier die Theta-Punkte berechnen.

01:08:27.680 --> 01:08:31.080
Das heißt, ich muss eigentlich nur die Jacobi-Matrix invertieren.

01:08:31.840 --> 01:08:45.730
Wenn ich hier x-Punkt ist gleich j von Theta mal Theta-Punkt hier habe

01:08:46.590 --> 01:08:54.190
und gegeben ist irgendeine Geschwindigkeit vom Endeffektor x-Punkt und

01:08:54.190 --> 01:08:58.950
ich suche die Geschwindigkeiten der Gelenke hier, dann muss ich

01:08:58.950 --> 01:09:04.590
eigentlich nichts anderes machen als zum Beispiel mit j-1 hier

01:09:04.590 --> 01:09:08.350
multiplizieren, mal x-Punkt, was hier gegeben ist und die Jacobi

01:09:08.350 --> 01:09:13.330
-Matrix kennen wir natürlich von dem Manipulator, ist gleich Theta

01:09:13.330 --> 01:09:14.550
-Punkt.

01:09:15.690 --> 01:09:19.230
Ja, klingt sehr einfach, oder?

01:09:19.230 --> 01:09:22.430
Das heißt, wenn das gegeben ist, dann kann ich nur über die

01:09:22.430 --> 01:09:25.970
Invertierung dieser Matrix, also muss man aufpassen, die Matrix muss

01:09:25.970 --> 01:09:29.890
invertiert werden, also wie macht man Matrix-Invertierung?

01:09:30.390 --> 01:09:33.010
Oder was sind überhaupt die Bedienungen für die Invertierbarkeit einer

01:09:33.010 --> 01:09:33.410
Matrix?

01:09:35.550 --> 01:09:36.970
Quadratisch praktisch gut, oder?

01:09:42.720 --> 01:09:46.100
Singulär und ähnliches, das kennen wir aber, das besprechen wir noch.

01:09:46.940 --> 01:09:50.680
Der zweite Punkt, wenn die Gelenkwinkelgeschwindigkeiten gegeben sind,

01:09:50.680 --> 01:09:55.840
also wenn Theta-Punkt hier gegeben ist, dann welche

01:09:55.840 --> 01:09:58.960
Endeffektorgeschwindigkeiten hier auftreten, das nur einsetzen.

01:09:59.840 --> 01:10:03.020
Ja, das ist eigentlich trivial, das wäre das sogenannte

01:10:03.020 --> 01:10:07.900
Vorwärtsproblem und das andere wäre das Inversi-Problem, aber im

01:10:07.900 --> 01:10:08.760
Geschwindigkeitsraum.

01:10:09.780 --> 01:10:15.200
So, jetzt nehmen wir weiterhin an, es interessieren uns Kräfte und

01:10:15.200 --> 01:10:15.680
Momente.

01:10:16.560 --> 01:10:21.320
Und nach wie vor die gleiche Annahme, diese kinematische Kette oder

01:10:21.320 --> 01:10:24.120
der Roboterarm soll irgendwann eine Trajektorie ausführen, die

01:10:24.120 --> 01:10:26.640
Trajektorie Theta-R nach Rn.

01:10:27.480 --> 01:10:35.500
Und wir wissen eigentlich, dass die Energie oder die Arbeit, die

01:10:35.500 --> 01:10:39.580
geleistet werden muss, wenn der Roboter diese Trajektorie ausführt,

01:10:41.880 --> 01:10:47.640
angegeben werden kann als die Kraft, die am Endeffektor auftritt,

01:10:48.860 --> 01:10:53.480
multipliziert natürlich mit dem Weg und der Weg hier ist angegeben als

01:10:53.480 --> 01:10:55.940
x -Punkt, also die Geschwindigkeit mal dt.

01:10:57.340 --> 01:11:02.200
Aber diese Energie oder diese Arbeit, die geleistet werden muss, um

01:11:02.200 --> 01:11:07.440
die Trajektorie auszuführen, muss eigentlich von den Antrieben eines

01:11:07.440 --> 01:11:09.540
Roboterarmes aufgebracht werden.

01:11:10.400 --> 01:11:15.540
Das heißt, diese Arbeit, die die einzelnen Antriebe aufbringen müssen,

01:11:16.280 --> 01:11:20.560
ist auch Kraft, aber nicht Kraft, sondern Drehmoment in dem Fall.

01:11:20.760 --> 01:11:26.520
Das ist Tau multipliziert mit dem Weg hier, also Theta-Punkt mal dt.

01:11:27.400 --> 01:11:31.200
Das ist Gelenkwinkelgeschwindigkeit multipliziert mit Zeit, nichts

01:11:31.200 --> 01:11:35.120
anderes als der Weg, also der Gelenkwinkelweg für ein bestimmtes

01:11:35.120 --> 01:11:35.620
Gelenk.

01:11:35.620 --> 01:11:38.640
Und das zum Beispiel von T1 bis T2.

01:11:39.500 --> 01:11:44.280
Das heißt, eigentlich diese Arbeit, die dort auftritt am Toolcenter

01:11:44.280 --> 01:11:50.120
-Punkt, durch die Bewegung mit Geschwindigkeit x-Punkt, muss

01:11:50.120 --> 01:11:56.040
aufgebracht werden durch Drehmomente in den einzelnen Gelenken des

01:11:56.040 --> 01:11:58.580
Roboters, die sich dann mit einer bestimmten

01:11:58.580 --> 01:12:00.920
Gelenkwinkelgeschwindigkeit bewegen müssen.

01:12:01.580 --> 01:12:05.000
Das heißt, wir können eigentlich diese Gleichung hier hinschreiben.

01:12:05.000 --> 01:12:08.820
Und das sind hier die Bezeichnungen, also Gelenkwinkelgeschwindigkeit

01:12:08.820 --> 01:12:13.560
in Theta-Punkt, Drehmomente in den Gelenken und das Ganze hier

01:12:13.560 --> 01:12:15.780
integriert von T1 bis T2.

01:12:15.960 --> 01:12:19.960
Dann haben wir die geleistete Arbeit und auf der anderen Seite im

01:12:19.960 --> 01:12:23.580
karthesischen Raum haben wir natürlich die Endeffektorgeschwindigkeit

01:12:23.580 --> 01:12:27.180
x -Punkt und dann haben wir die Kräfte bzw.

01:12:27.560 --> 01:12:32.000
einen Kraftmomentwektor, der am Endeffektor auswirkt.

01:12:32.000 --> 01:12:36.900
Zum Beispiel, wenn der Roboter irgendetwas hält während der Bewegung.

01:12:41.780 --> 01:12:44.280
So, was bedeutet das für uns eigentlich?

01:12:44.980 --> 01:12:49.580
Das bedeutet, wenn ich jetzt diese Gleichung mal so angucke, dass ich

01:12:49.580 --> 01:12:51.240
davor Folgendes schreiben kann.

01:12:51.920 --> 01:12:55.120
Ich kann also diese Gleichung hier nehmen und diese Gleichung muss

01:12:55.120 --> 01:12:57.000
natürlich gelten in jedem Zeitintervall.

01:12:57.000 --> 01:13:01.120
Das heißt, ich kann eigentlich diese Integral hier wegmachen und kann

01:13:01.120 --> 01:13:06.960
einfach schreiben, Theta-Punkt mal Tau, also vektormäßig, deshalb

01:13:06.960 --> 01:13:10.780
transponiert, ist gleich x-Punkt transponiert mal F.

01:13:11.960 --> 01:13:16.460
Wie gesagt, x-Punkt ist die Geschwindigkeit vom Endeffektor von der

01:13:16.460 --> 01:13:23.060
Hand, F sind die Kräfte und Momente, die auf die Hand oder auf den

01:13:23.060 --> 01:13:28.180
Endeffektor einwirken und Theta-Punkt sind die Geschwindigkeiten der

01:13:28.180 --> 01:13:33.000
Gelenke, also Gelenkwinkelgeschwindigkeiten und Tau sind Drehmomente,

01:13:33.320 --> 01:13:37.480
also letztendlich proportional zum Strom, der durch einen elektrischen

01:13:37.480 --> 01:13:40.380
Motor fließt, der dieses Gelenk mal antreibt.

01:13:41.460 --> 01:13:48.080
Und wir wissen, dass x-Punkt gleich J mal Theta-Punkt ist.

01:13:48.080 --> 01:13:51.060
Ja, das haben wir vorher differenziert, die Beziehung.

01:13:51.600 --> 01:13:56.720
Wir haben gesagt, okay, wenn wir die Beziehung x ist gleich f von

01:13:56.720 --> 01:14:03.040
Theta ableiten, dann bekommen wir Jakobi-Matrix mal Theta-Punkt.

01:14:03.200 --> 01:14:07.360
Das heißt, für x-Punkt transponiert, es ist nichts anderes als Theta

01:14:07.360 --> 01:14:12.280
-Punkt transponiert, multipliziert mit der transponierten Jakobi

01:14:12.280 --> 01:14:12.740
-Matrix.

01:14:12.740 --> 01:14:16.020
Und wie man hier sieht, kann ich auf beiden Seiten die

01:14:16.020 --> 01:14:20.640
Gelenkwinkelgeschwindigkeiten hier wegmachen, abkürzen und dann

01:14:20.640 --> 01:14:28.300
bekomme ich eine tolle Beziehung hier, die heißt Tau von T ist gleich

01:14:28.300 --> 01:14:34.420
transponierte Jakobi-Matrix, hängt natürlich von den Gelenkwinkeln zu

01:14:34.420 --> 01:14:38.200
einem bestimmten Zeitpunkt, multipliziert mit den Kräften, die am

01:14:38.200 --> 01:14:39.200
Endeffektor auftreten.

01:14:40.180 --> 01:14:47.340
So, das heißt, diese Jakobi-Matrix, wo wir dachten, ich dachte auch

01:14:47.340 --> 01:14:50.400
damals, als ich die Jakobi-Matrix in der Mathematik gelernt habe, wozu

01:14:50.400 --> 01:14:51.080
braucht man sie?

01:14:52.220 --> 01:14:55.520
Aber dann habe ich angefangen Robotik zu machen und habe gesehen, mein

01:14:55.520 --> 01:14:58.820
Gott, ohne die Jakobi-Matrix können wir in der Robotik überhaupt nicht

01:14:58.820 --> 01:14:59.440
überleben.

01:15:00.680 --> 01:15:04.480
Also, das heißt, die Jakobi-Matrix, auf der einen Seite gibt sie uns

01:15:04.480 --> 01:15:08.180
die Beziehungen zwischen Gelenkwinkelgeschwindigkeiten und

01:15:08.180 --> 01:15:11.760
kartesischen Geschwindigkeiten vom Endeffektor und auf der anderen

01:15:11.760 --> 01:15:16.840
Seite gibt sie uns die Beziehungen, also die transponierte Jakobi

01:15:16.840 --> 01:15:22.660
-Matrix hier, zwischen Kräften und Momenten, die an der Hand

01:15:22.660 --> 01:15:27.440
auftreten, am Endeffektor auftreten und Drehmomente, die in den

01:15:27.440 --> 01:15:31.780
Gelenken eines Roboterarmes auftreten oder aufgebracht werden müssen,

01:15:31.780 --> 01:15:36.220
damit man eine bestimmte Bewegung realisiert.

01:15:37.120 --> 01:15:42.040
Okay, das heißt, zusammengefasst haben wir etwas ganz Tolles hier und

01:15:42.040 --> 01:15:46.200
deshalb müssen wir in der Lage sein, natürlich mit diesen Matrizen

01:15:46.200 --> 01:15:48.440
oder diesen Beziehungen umzugehen.

01:15:48.940 --> 01:15:55.100
Und mithilfe dieser zweiten Beziehung können wir nochmal zwei Probleme

01:15:55.100 --> 01:15:55.780
erledigen.

01:15:55.780 --> 01:16:01.880
Und zwar das erste Problem, wenn die Kräfte am Endeffektor eingegeben

01:16:01.880 --> 01:16:07.180
sind, welche Drehmomente treten in den einzelnen Gelenken.

01:16:08.100 --> 01:16:11.560
Das heißt, ihr müsst so einen Roboter entwerfen, der zum Beispiel eine

01:16:11.560 --> 01:16:15.240
Tour von einem Auto transportiert und montiert.

01:16:15.340 --> 01:16:18.740
Das sind bestimmte Kräfte und Momente, die am Endeffektor auftreten.

01:16:19.260 --> 01:16:23.500
Und ihr müsst natürlich die Motoren für die Gelenke so auslegen, dass

01:16:23.500 --> 01:16:26.800
sie genügend Drehmomente haben, damit man diese Kräfte und Momente

01:16:26.800 --> 01:16:28.320
realisieren kann.

01:16:28.820 --> 01:16:32.160
Das heißt, es wäre das erste Problem, gegeben sind die Kräfte, die wir

01:16:32.160 --> 01:16:36.620
am Endeffektor haben wollen, welche Drehmomente in den Gelenken

01:16:36.620 --> 01:16:37.620
notwendig sind.

01:16:38.180 --> 01:16:43.300
Und zum zweiten, wenn die Drehmomente in den Gelenken, wenn ich meinen

01:16:43.300 --> 01:16:49.860
Roboter mit bestimmten Drehmomentverläufen betreibe, welche Kräfte und

01:16:49.860 --> 01:16:52.480
Momente werden am Endeffektor auftreten.

01:16:52.880 --> 01:16:55.260
Sind sie gefährlich für einen Mensch, würden sie einen Menschen zum

01:16:55.260 --> 01:16:56.220
Beispiel umhauen.

01:16:57.160 --> 01:17:02.960
Das heißt, gegeben die hier und gesucht die hier, dann müssen wir

01:17:02.960 --> 01:17:06.300
natürlich die Gleichung hier invertieren, wie wir das vorher auch

01:17:06.300 --> 01:17:08.900
gemacht haben für die Geschwindigkeiten.

01:17:10.340 --> 01:17:11.820
Gut, so viel dazu.

01:17:12.020 --> 01:17:12.700
Gibt es Fragen?

01:17:16.490 --> 01:17:18.150
Wie berechnet man das?

01:17:19.110 --> 01:17:21.150
Das ist ja alles so eine trockene Theorie.

01:17:22.190 --> 01:17:25.650
Ihr kennt das aus der Mathematik, wie man die Jacobi-Matrix berechnet.

01:17:26.350 --> 01:17:28.550
Aber hier kurz zur Erinnerung.

01:17:30.570 --> 01:17:34.350
Natürlich berechnet man die Jacobi-Matrix jetzt hier spaltenweise, wie

01:17:34.350 --> 01:17:36.330
in der Definition auch eingegeben ist.

01:17:36.490 --> 01:17:41.490
Das heißt, diese Funktion f wird hier nach Theta 1 bzw.

01:17:41.790 --> 01:17:44.390
hier nach Theta n abgeleitet.

01:17:45.390 --> 01:17:51.270
Man hat aber andere Möglichkeiten, als zum Beispiel zur geometrischen

01:17:51.270 --> 01:17:55.550
Berechnung von dieser Jacobi-Matrix, wo man unterscheidet zwischen

01:17:55.550 --> 01:17:58.330
Translationsgelenken und Rotationsgelenken.

01:17:59.050 --> 01:18:05.750
Das heißt, eigentlich diese Ableitungen, die korrespondieren zu einem

01:18:05.750 --> 01:18:07.990
Gelenk in der kinematischen Kette.

01:18:07.990 --> 01:18:15.330
Und wenn wir diese Einzelableitungen für ein Gelenk berechnen können,

01:18:15.470 --> 01:18:17.610
dann haben wir natürlich die gesamte Jacobi-Matrix.

01:18:18.330 --> 01:18:22.250
Und man kann hier nachweisen, werden wir in der Übung auch sehen, wie

01:18:22.250 --> 01:18:26.550
das funktioniert, dass man im Falle von einem Translationsgelenk die

01:18:26.550 --> 01:18:33.990
Ableitung hier nach einer Komponente oder nach einem Gelenkwinkel, wo

01:18:33.990 --> 01:18:40.110
ein Gelenk eine Translation in Richtung von einem Einheitsvektor vj

01:18:40.110 --> 01:18:46.270
ausführt, dass diese Ableitung hier nichts anderes als vj und 0 ist.

01:18:46.630 --> 01:18:52.370
Und im Falle von einem Rotationsgelenk, also ein Gelenk, was eine

01:18:52.370 --> 01:18:56.750
Rotation um eine Rotationsaxe vj ausführt, an einer bestimmten

01:18:56.750 --> 01:19:01.140
Position, also ob das Ellenbogengelenk hier die Rotation ausführt oder

01:19:01.140 --> 01:19:05.000
hier, das heißt die Position von dem Gelenk muss bekannt sein.

01:19:05.860 --> 01:19:09.560
Und die Rotationsaxe ist ja auch bekannt, weil das ist ja unser

01:19:09.560 --> 01:19:09.820
Gelenk.

01:19:10.400 --> 01:19:15.900
Dann lässt sich diese Ableitung hier ganz einfach als, also so einfach

01:19:15.900 --> 01:19:18.340
ist es nicht, werden wir auch sehen, in der Übung machen wir ein

01:19:18.340 --> 01:19:25.920
Beispiel dazu, als vj hier und dann oben ist nochmal ein Vektor, also

01:19:25.920 --> 01:19:30.800
das sind 6x1 Vektoren hier, die auftreten.

01:19:32.080 --> 01:19:38.360
Ein Kreuzprodukt zwischen dieser Rotationsaxe vj mit einem weiteren

01:19:38.360 --> 01:19:43.500
Vektor, und zwar der Abstand zwischen der aktuellen Axe und Tool

01:19:43.500 --> 01:19:44.200
Center Point.

01:19:44.400 --> 01:19:50.180
Also wo gerade sich der Arm befindet und wo die Position des Gelenks.

01:19:50.780 --> 01:19:54.180
Und wenn man die zwei voneinander abzieht, dann ist es nichts anderes

01:19:54.180 --> 01:19:59.060
als der Vektor, der die Position oder den Unterschied zwischen dem

01:19:59.060 --> 01:20:01.820
aktuellen Gelenk und Tool Center Point beschreibt.

01:20:01.980 --> 01:20:05.720
Und wenn man das Kreuzprodukt hier bildet, kommt ein 3er Vektor, ein

01:20:05.720 --> 01:20:13.300
3x1 Vektor und zusammen mit der Rotationsaxe vj hat man die komplette

01:20:13.300 --> 01:20:16.520
Spalte vor der Jacobi Matrix hier berechnet.

01:20:17.450 --> 01:20:22.580
So, insgesamt die Eigenschaften von der Jacobi Matrix, die beschreibt

01:20:22.580 --> 01:20:26.380
die Beziehungen zwischen Geschwindigkeiten der Gelenkwinkel, n

01:20:26.380 --> 01:20:31.500
-dimensional bei einem Roboter mit n Gelenken und Geschwindigkeiten

01:20:31.500 --> 01:20:35.860
des Endeffektors, die sind im karthesischen Raum 6-dimensional,

01:20:36.520 --> 01:20:40.820
Drehmomente in den Gelenken, wiederum genauso viel wie Gelenke und

01:20:40.820 --> 01:20:45.660
Kräfte und Momente am Endeffektor, auch 6-dimensional und natürlich

01:20:45.660 --> 01:20:52.640
die Jacobi Matrix, die ist immer als eine Matrix zu betrachten, die

01:20:52.640 --> 01:20:55.180
von bestimmten Gelenkwinkelstellungen abhängt.

01:20:55.660 --> 01:21:00.080
Deshalb haben wir immer J von Theta geschrieben.

01:21:01.420 --> 01:21:04.540
Gucken wir uns das mal an, wie man sowas berechnet, anhand von einem

01:21:04.540 --> 01:21:05.000
Beispiel.

01:21:05.240 --> 01:21:09.540
Nehmen wir an, wir haben so einen Manipulator oder einen Arm, der hat

01:21:09.540 --> 01:21:15.120
zwei Gelenke, Theta 1 und Theta 2 und das sind die Längen L1 und L2

01:21:15.120 --> 01:21:18.000
und was müssen wir machen, um die Jacobi Matrix zu berechnen?

01:21:18.140 --> 01:21:20.360
Wir müssen diese Beziehung zunächst mal herstellen.

01:21:20.700 --> 01:21:25.800
X, irgendeine Funktion, die beschreibt uns den Zusammenhang zwischen

01:21:25.800 --> 01:21:29.100
karthesischen Koordinaten und Gelenkwinkelkoordinaten.

01:21:29.980 --> 01:21:33.400
So, und das ist natürlich in 2D jetzt hier sehr einfach, weil zum

01:21:33.400 --> 01:21:39.120
Beispiel die karthesischen Koordinaten sind hier X1 und X2 und wenn

01:21:39.120 --> 01:21:43.320
ich zum Beispiel X1 berechnen will, dann ist es nichts anderes als L1

01:21:43.320 --> 01:21:48.740
mal Cosinus Theta 1 plus L2 Cosinus Theta 1 plus Theta 2.

01:21:48.960 --> 01:21:50.240
Kann man geometrisch ablesen.

01:21:51.020 --> 01:21:52.000
Y bzw.

01:21:52.300 --> 01:21:58.700
X2 ist L1 mal Sinus Theta 1 plus L2 Sinus Theta 1 plus Theta 2.

01:21:59.140 --> 01:21:59.880
Was habe ich?

01:21:59.960 --> 01:22:03.380
Ich habe meinen X-Vektor und mein X-Vektor besteht aus den zwei

01:22:03.380 --> 01:22:04.540
Komponenten.

01:22:05.940 --> 01:22:13.000
Also mein X-Vektor besteht aus den zwei Komponenten X1 und X2.

01:22:14.480 --> 01:22:16.800
Und was wir immer suchen, wir suchen das.

01:22:16.980 --> 01:22:19.780
X-Punkt ist gleich J mal Theta-Punkt.

01:22:19.940 --> 01:22:23.040
Eigentlich, was ich machen muss, damit ich die Jacobi-Matrix bekomme,

01:22:23.640 --> 01:22:27.520
ich muss diese zwei Komponenten nur differenzieren, damit ich X-Punkt

01:22:27.520 --> 01:22:27.960
bekomme.

01:22:27.960 --> 01:22:30.260
Und das ist ja ziemlich einfach.

01:22:30.600 --> 01:22:34.860
Also für X1, das ist natürlich die Ableitung von Cosinus.

01:22:35.240 --> 01:22:41.220
Theta 1 ist minus L1 mal Cosinus Theta 1 mal die innere Ableitung,

01:22:41.380 --> 01:22:42.060
also immer Kettenregel.

01:22:42.580 --> 01:22:47.380
Wir leiten nach der Zeit ab und Cosinus abgeleitet nach der Zeit ist

01:22:47.380 --> 01:22:49.720
natürlich Sinus Theta mal Theta-Punkt.

01:22:49.720 --> 01:22:57.160
Und die Ableitung von Cosinus Theta 1 plus Theta 2 nach der Zeit ist

01:22:57.160 --> 01:22:58.780
natürlich minus Sinus.

01:22:58.940 --> 01:23:02.540
Und dann natürlich die zwei inneren Ableitungen von Theta 1 und Theta

01:23:02.540 --> 01:23:02.920
2.

01:23:03.720 --> 01:23:07.360
Und das gleiche machen wir für X2 und dann, wenn man sieht, hier haben

01:23:07.360 --> 01:23:12.700
wir unser X-Punkt, ist gleich das hier, X-Punkt.

01:23:12.800 --> 01:23:15.240
Man sieht hier, hier ist Theta-Punkt.

01:23:16.040 --> 01:23:21.300
Also das ist L1 Sinus Theta 1 minus L2 Sinus Theta 1 plus Theta 2

01:23:21.300 --> 01:23:23.340
multipliziert mit Theta 1-Punkt.

01:23:24.080 --> 01:23:28.700
Und dann mit Theta 2-Punkt ist nur minus L2 mal Sinus Theta 1 plus

01:23:28.700 --> 01:23:30.500
Theta 2 und das gleiche hier unten.

01:23:31.080 --> 01:23:34.400
Man sieht also die zwei Spalten der Jacobi-Matrix, die sind hier

01:23:34.400 --> 01:23:35.120
eingegeben.

01:23:35.120 --> 01:23:39.160
Und wenn wir jetzt mit dieser Jacobi-Matrix irgendwas machen wollen,

01:23:39.260 --> 01:23:41.980
zum Beispiel wollen wir die Gelenkwinkel, wir wollen das inverse

01:23:41.980 --> 01:23:45.580
kinematische Problem, die Gelenkwinkel bestimmen für eine gegebene

01:23:45.580 --> 01:23:49.280
Position der Hand, dann müssen wir diese Matrix invertieren.

01:23:50.400 --> 01:23:54.180
Die Matrix ist natürlich quadratisch, das ist eine 2x2-Matrix, wie man

01:23:54.180 --> 01:23:54.600
sieht.

01:23:55.140 --> 01:23:58.460
Aber bei bestimmten Konfigurationen kann diese Matrix zum Beispiel

01:23:58.460 --> 01:23:59.440
singulär sein.

01:23:59.440 --> 01:24:00.880
Also wenn z.B.

01:24:00.940 --> 01:24:02.760
zwei Spalten linear abhängig sind.

01:24:06.690 --> 01:24:15.430
Ja, da kann es auch krachen, wenn ein Roboterarm durch eine singuläre

01:24:15.430 --> 01:24:16.610
Stellung z.B.

01:24:16.950 --> 01:24:17.690
durchfährt.

01:24:19.470 --> 01:24:24.310
Naja, aber man sieht hier z.B., wenn Theta 2 0 ist, also wenn

01:24:24.310 --> 01:24:32.250
Gelenkwinkel 2 0 ist, dann verschwindet natürlich das hier, dann haben

01:24:32.250 --> 01:24:38.810
wir hier minus L1 Sinus, minus L2 Sinus und dann haben wir hier minus

01:24:38.810 --> 01:24:47.570
L2 Sinus und hier haben wir L1 Cosinus und L2 Cosinus und hier haben

01:24:47.570 --> 01:24:53.990
wir L2 Cosinus und da sieht man also, wenn Theta 2 0 ist, was passiert

01:24:53.990 --> 01:24:54.730
mit der Matrix?

01:24:55.190 --> 01:25:00.430
Genau, weil die Spalten, die zwei Spalten, also minus L1, minus L2

01:25:00.430 --> 01:25:06.030
Sinus das hier und Cosinus sind natürlich voneinander abhängig.

01:25:06.030 --> 01:25:12.110
So, also das heißt für diese Matrix können wir natürlich schreiben, x

01:25:12.110 --> 01:25:19.490
Punkt ist gleich J1 Theta mal Theta 1 Punkt plus J2 Theta mal Theta 2

01:25:19.490 --> 01:25:23.250
Punkt und solange natürlich diese zwei nicht linear abhängig

01:25:23.250 --> 01:25:27.330
voneinander sind, können wir natürlich hier den Tool Center Point in

01:25:27.330 --> 01:25:29.810
beliebiger Richtung in der Ebene bewegen.

01:25:29.810 --> 01:25:35.890
Man sieht aber, dass wenn die zwei Spaltenvektoren, zum Beispiel der

01:25:35.890 --> 01:25:40.850
Matrix, also J1 und J2 linear abhängig sind, dann die Matrix wird

01:25:40.850 --> 01:25:46.550
zingulär, zum Beispiel bei Theta 2 gleich 0, wo dann die Bewegung von

01:25:46.550 --> 01:25:49.910
dem Endeffektor in solchen Situationen sehr eingeschränkt ist.

01:25:50.850 --> 01:25:56.370
Okay, somit sind wir auch zu einem noch spannenderen Thema gekommen

01:25:56.370 --> 01:26:01.910
und zwar, wie geht man mit solchen Situationen, wenn alles auf der

01:26:01.910 --> 01:26:03.510
Jacobi Matrix basiert.

01:26:04.910 --> 01:26:08.910
Ich mache gleich Schluss, die Minute ist noch nicht vorbei, also

01:26:08.910 --> 01:26:11.070
gerade jetzt.

01:26:12.790 --> 01:26:16.550
Okay, dann vielen Dank für die Aufmerksamkeit, wir sehen uns am Montag.

