Robotertechnik - Beuth Hochschule für Technik Berlin
Robotertechnik - Beuth Hochschule für Technik Berlin
Robotertechnik - Beuth Hochschule für Technik Berlin
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Begleitfolien zum Wahlpflichtfach<br />
<strong>Robotertechnik</strong><br />
Studiengang Technische Informatik<br />
Von Prof. Dr.-Ing. Heinz Linnemann<br />
1. Einführung<br />
2. Einteilung, Anwendungsfelder, Märkte<br />
3. Bauformen von Industrierobotern<br />
4. Roboterkinematiken<br />
5. Koordinatentransformation<br />
6. Robotersteuerungen<br />
7. Programmierung von Industrierobotern<br />
8. Einsatz von Industrierobotern<br />
9. Mobile, autonome Roboter<br />
10. Ausblick und aktuelle Trends<br />
<strong>Robotertechnik</strong><br />
Aus drucktechnischen Gründen leere Folie!<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 1<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 2<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Weber, W.:<br />
Hesse, S.:<br />
Siegert, H.-J.;<br />
Bocionek, S.:<br />
Wloka, D. W.:<br />
Riesler:<br />
Dillmann, R.;<br />
Huck, M.:<br />
Warnecke H.-J.;<br />
Schraft, R. D.:<br />
Schraft, R. D.:<br />
Kroth, E.:<br />
N.N.:<br />
• Literatur<br />
• Normen<br />
• Richtlinien<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
1. Einführung<br />
• Interdisziplinäres Wissensgebiet <strong>Robotertechnik</strong><br />
• Historische Entwicklung<br />
• Entwicklung erster Industrieroboter<br />
• Entwicklung heutiger Industrieroboter<br />
• Visionen eines Roboterforschers<br />
Literatur<br />
<strong>Robotertechnik</strong><br />
Industrieroboter. Methoden der Steuerung und Regelung.<br />
München, Wien: Hanser, 2002 (ca. 25 €)<br />
Industrieroboterpraxis. Wiesbaden: Vieweg, 1998<br />
Robotik: Programmierung intelligenter Roboter.<br />
<strong>Berlin</strong>: Springer, 1996<br />
Robotersysteme. Bd. 1: Grundlagen.<br />
<strong>Berlin</strong>: Springer, 1992<br />
Roboterkinematik - Grundlagen, Invertierung und Symbolische<br />
Berechnung. Braunschweig: Vieweg, 1992<br />
Informationsverarbeitung in der Robotik.<br />
<strong>Berlin</strong>: Springer, 1991<br />
Industrieroboter. Handbuch <strong>für</strong> Industrie und Wissenschaft.<br />
<strong>Berlin</strong>, Heidelberg: Springer, 1990<br />
Automatisierung in der Montage und Handhabungstechnik.<br />
http://afs.iff.uni-stuttgart.de/vorlesungen<br />
(Stand: Juni 2002)<br />
Robotic und Automation. http://www.reisrobotics.de/robotech/<br />
(Stand: Juni 2002)<br />
Skript Roboter. http://www.fh-weingarten.de/~georgi/robotik<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 3<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 4<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Normen<br />
DIN EN 775: Industrieroboter – Sicherheit. <strong>Berlin</strong>: <strong>Beuth</strong>,1993<br />
DIN 66 261: Informationsverarbeitung – Sinnbilder <strong>für</strong><br />
Struktogramme nach Nassi-Shneiderman.<br />
<strong>Berlin</strong>: <strong>Beuth</strong>,1985<br />
DIN 66 312: Industrieroboter – Programmiersprache, Industrial<br />
Robot Language (IRL). <strong>Berlin</strong>: <strong>Beuth</strong>, 1996<br />
DIN 40 719, Teil 6: Schaltungsunterlagen – Regeln <strong>für</strong> Funktionspläne.<br />
IEC 848 modifiziert. <strong>Berlin</strong>: <strong>Beuth</strong>,1992<br />
DIN EN ISO 8373: Industrieroboter – Wörterbuch. <strong>Berlin</strong>: <strong>Beuth</strong>, 1996<br />
DIN EN ISO 9787: Industrieroboter – Koordinatensysteme und<br />
Bewegungsnomenklatur. <strong>Berlin</strong>: <strong>Beuth</strong>,1999<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Richtlinien<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 5<br />
Nur <strong>für</strong> Lehrzwecke<br />
VDI 2740 Blatt 1: Mechanische Einrichtungen in der Automatisierungstechnik – Greifer<br />
<strong>für</strong> Handhabungsgeräte und Industrieroboter. Düsseldorf: VDI- Verlag,<br />
1995<br />
VDI 2739 Blatt 1: Matrizenrechnung – Grundlagen <strong>für</strong> die praktische Anwendung.<br />
Düsseldorf: VDI- Verlag, 1991<br />
VDI 2739 Blatt 2: Matrizenrechnung – Anwendungen in der Kinematik und bei<br />
Eigenwertproblemen. Düsseldorf: VDI- Verlag, 1996<br />
VDI 2739 Blatt 3: 1996 Matrizenrechnung – Technische Anwendungsbeispiele.<br />
Düsseldorf: VDI- Verlag, 1996<br />
VDI 2853: Sicherheitstechnische Anforderungen an Bau, Ausrüstung und Betrieb<br />
von Industrierobotern. Düsseldorf: VDI- Verlag<br />
VDI 2860: Montage- und Handhabungstechnik – Handhabungsfunktionen,<br />
Handhabungseinrichtungen; Begriffe, Definitionen, Symbole.<br />
Düsseldorf: VDI- Verlag, 1990<br />
VDI 2861 Blatt 1: Montage- und Handhabungstechnik – Kenngrößen <strong>für</strong> Industrieroboter,<br />
Achsbezeichnungen. Düsseldorf: VDI- Verlag, 1988<br />
VDI 2861 Blatt 2: Montage- und Handhabungstechnik – Kenngrößen <strong>für</strong> Industrieroboter,<br />
Einsatzspezifische Kenngrößen. Düsseldorf: VDI- Verlag, 1988<br />
VDI 2861 Blatt 3: Montage- und Handhabungstechnik – Kenngrößen <strong>für</strong> Industrieroboter,<br />
Prüfung der Kenngrößen. Düsseldorf: VDI- Verlag, 1988<br />
VDI 2863 Blatt 1: IRDATA, Allgemeiner Aufbau, Satztypen und Übertragung. Düsseldorf:<br />
VDI- Verlag, Düsseldorf: VDI- Verlag, 1987<br />
VLRob.ppt<br />
Folie 6<br />
Nur <strong>für</strong> Lehrzwecke
Interdisziplinäres Wissensgebiet <strong>Robotertechnik</strong><br />
Maschinenbau<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Konstruktion<br />
Simulation<br />
RegelungsundAntriebstechnik<br />
Roboter<br />
Programmierung<br />
Informatik<br />
Sensortechnik<br />
Elektrotechnik<br />
Steuerungstechnik<br />
<strong>Robotertechnik</strong><br />
Historische Entwicklung der <strong>Robotertechnik</strong><br />
100 Heron von Alexandria: Entwürfe <strong>für</strong> Automatentheater<br />
1352 Automatische Uhren mit Figurenwerk im Mittelalter, z. B. am<br />
Straßburger Münster<br />
1700 Musikspielende Puppen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 7<br />
Nur <strong>für</strong> Lehrzwecke<br />
1730 Vaucansen (Frankreich) baute Musik spielende Puppen in<br />
menschlicher Größe (Flötenspieler, Tamburinspieler) und eine<br />
künstliche Ente aus über 1000 Teilen die „fressen“ und „Exkremente<br />
ausscheiden“ konnte<br />
1760 Schreibender Mensch, automatischer Schachspieler<br />
1774 Jaquet Droz und Sohn bauten drei Droiden (Zeichner, Schriftsteller,<br />
Klavierspielerin)<br />
1805 J.M. Jacquard: Programmierbarer, von Lochkarten gesteuerter<br />
Webstuhl, der durchaus als spezialisierter Roboter bezeichnet<br />
werden kann<br />
1921 Im Science-Fiction-Theaterstück „Rossum‘s Universalroboter“ von<br />
Karel Čapek taucht das erste mal der Begriff Roboter auf (In vielen<br />
Slawischen Sprachen bedeutet “rabota” arbeiten)<br />
VLRob.ppt<br />
Folie 8<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Die Droiden von Droz und Sohn<br />
Quelle: Hesse, S.: Golems Enkel, Urania Verlag Leipzig/Jena/<strong>Berlin</strong> 1986<br />
Museum der Schönen Künste,<br />
Neuchâtel (Schweiz)<br />
Die Automaten von Droz & Droz stellten<br />
einen Meilenstein im Automatenbau dar.<br />
Vorführungen der etwa 70 cm hohen<br />
Menschenautomaten, der Schreiber (links)<br />
und der Zeichner (rechts), sind <strong>für</strong><br />
Besucher sehr beeindruckend.<br />
• Der Schreiber kann auf einen<br />
beliebigen Text bis zu 40 Zeichen<br />
Länge programmiert werden.<br />
• Der Zeichner kann Amor von einem<br />
Schmetterling gezogen, einen Hund,<br />
sowie die Porträts von Louis' XV.,<br />
Louis XVI. und Marie Antoinette<br />
skizzieren<br />
<strong>Robotertechnik</strong><br />
Entwicklung erster Industrieroboter<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 9<br />
Nur <strong>für</strong> Lehrzwecke<br />
1946 USA: G.C. Devol: Steuergerät zur magnetischen Aufzeichnung<br />
elektrischer Signale. Die Signale konnten später zur Steuerung<br />
mechanischer Geräte wieder benutzt werden. Er reichte mehrere Patente<br />
<strong>für</strong> roboterähnliche Maschinen ein.<br />
1952 Prototyp einer NC-Maschine am Massachusetts Institute of Technology<br />
(MIT), Entwicklung der Programmiersprache APT<br />
1954 England: C.W. Kenward reicht ein Patent einer Roboterentwicklung ein.<br />
USA: G.C. Devol arbeitet an dem „programmierten Transport von<br />
Gegenständen“, erhält 1961 da<strong>für</strong> ein Patent.<br />
1959 Erster kommerzieller Roboter der Fa. Planet Corporation <strong>für</strong> einfache<br />
Aufgaben, z.B. Punktschweißen<br />
1960 Erster Roboter der Fa. Unimate installiert (basierte auf Arbeiten von<br />
Devol). Der Roboter wurde hydraulisch angetrieben und von einem<br />
Computer nach dem Prinzip der NC-<strong>Technik</strong> gesteuert.<br />
1961 Erster Roboter vom Typ Unimation bei Ford installiert.<br />
VLRob.ppt<br />
Folie 10<br />
Nur <strong>für</strong> Lehrzwecke
Entwicklung heutiger Industrieroboter<br />
1971 Erster Robotereinsatz in Deutschland bei Daimler-Benz<br />
1972 Roboter werden <strong>für</strong> die Informatik ein Thema<br />
1975 Erste Montageoperationen durch den SIGMA-Roboter von Olivetti<br />
1978 Einführung der PUMA Serie (Programmable Universal Machine For<br />
Assembly). Elektrisch angetrieben, basierte auf Entwürfen von General<br />
Motors, gebaut von Fa. Unimation.<br />
1979 Yamanaski-Universität, SCARA-Prinzip<br />
(Selective Compliance Assembly Robot)<br />
1980 Entwicklungsarbeiten zum Greifen und Fügen mit Kameraunterstützung.<br />
1985 Beginn der Entwicklung von autonomen mobilen Robotern<br />
1992 Beginn der Entwicklung von Servicerobotern<br />
1997 Erste Weltmeisterschaft im Roboter-Fußball in Tokio<br />
1998 Das Stanford Research Institute entwickelt einen mobilen<br />
experimentellen Roboter („Shakey“). Integration von Sichtsystem<br />
(Kamera) und taktilen Sensoren.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Visionen eines Roboterforschers<br />
Zunahme der kognitiven, motorischen und sensorischen Fähigkeiten:<br />
• 2010: 1.000 MIPS (Reptilien)<br />
Universelle Wahrnehmung, Manipulation und Mobilität<br />
• 2020: 30.000 MIPS (Säugetiere)<br />
Anpassungs- und Lernfähigkeit, Erfahrungen<br />
• 2030: 1.000.000 MIPS (Primaten)<br />
Gestaltung der Umwelt, Bewusstsein durch Simulation,<br />
Reproduktion in Fabriken<br />
• 2040: 30.000.000 MIPS (Menschen)<br />
Logisches Denken, Nachdenken<br />
Hinweis: Die Leistung eines aktuellen Pentium-Prozessors kann mit etwa<br />
1.000 MIPS angenommen werden (Stand 2002)<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 11<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: Moravec, Hans: Geisteskinder, Universelle Roboter: In vierzig Jahren haben sie uns überholt. c’t 6/96, S. 98<br />
VLRob.ppt<br />
Folie 12<br />
Nur <strong>für</strong> Lehrzwecke
2. Einteilung der Roboter, Anwendungsfelder und Märkte<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Manuell gesteuert<br />
Manipulator,<br />
Teleoperator<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
• Einteilung der Handhabungsgeräte<br />
• Abgrenzung, Begriffsdefinitionen<br />
• Einteilung nach Einsatzgebieten<br />
• Industrieroboter<br />
• Serviceroboter<br />
• Geländeroboter<br />
• Neue Anwendungsfelder<br />
- Sanierung<br />
- Medizin<br />
- Hobby, Freizeit<br />
• Fußballspielende Roboter (RoboCup)<br />
• Einsatzzahlen und Märkte von Industrierobotern<br />
• Märkte <strong>für</strong> Serviceroboter<br />
<strong>Robotertechnik</strong><br />
Einteilung der Handhabungsgeräte<br />
Handhabungsgeräte<br />
Programmgesteuert<br />
Fest programmiert Frei programmiert<br />
Einlegegeräte<br />
(Pick-And-Place)<br />
Nach der VDI-Richtlinie 2860 Blatt 1 bilden Industrieroboter eine Untergruppe der<br />
Handhabungseinrichtungen. Unter Handhaben sind alle Vorgänge zu verstehen,<br />
• bei denen ein Objekt in eine definierte Lage im Raum gebracht und/oder in<br />
dieser vorübergehend gehalten wird (Werkstückhandhabung);<br />
oder<br />
• bei denen mit dem Objekt eine definierte Bewegung ausgeführt wird, um eine<br />
bestimmte Arbeitsaufgabe auszuführen (Werkzeughandhabung).<br />
<strong>Robotertechnik</strong><br />
Industrieroboter<br />
VLRob.ppt<br />
Folie 13<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 14<br />
Nur <strong>für</strong> Lehrzwecke
Abgrenzung des Begriffs Industrieroboter<br />
• Ein Industrieroboter ist keine NC-Maschine<br />
(Numerically Controlled Machine)<br />
• Hauptaufgabe NC-Maschine:<br />
Formgebende Bearbeitung eines Werkstückes<br />
• Hauptaufgabe Industrieroboter:<br />
Handhabung von Werkstücken, Montage<br />
• Die Übergänge sind jedoch fließend!<br />
• Ein Industrieroboter ist kein Teleoperator<br />
wie er z.B. in Kernkraftwerken eingesetzt wird:<br />
Die Bewegung eines Teleoperators wird unmittelbar vom Menschen<br />
gesteuert.<br />
• Ein Industrieroboter ist kein Einlegegerät<br />
Das Einlegegerät ist eine "mit Greifern ausgerüstete<br />
Handhabungseinrichtung, die vorgegebene Bewegungsabläufe nach<br />
einem festen Programm abfährt".<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
VDI-Richtlinie 2860: Industrieroboter<br />
„Universell einsetzbarer Bewegungsautomat<br />
mit mehreren Achsen, deren Bewegungen<br />
[…] programmierbar und gegebenenfalls<br />
sensorgeführt sind. Sie sind mit Greifern,<br />
Werkzeugen oder anderen Fertigungsmitteln<br />
ausrüstbar und können Handhabungsund/oder<br />
Fertigungsaufgaben ausführen.“<br />
Robot Institute of America:<br />
„A programmable,<br />
multifunction manipulator<br />
designed to move material,<br />
parts, tools, or specific<br />
devices through variable<br />
programmed motions for the<br />
performance of a variety of<br />
tasks.“<br />
Encyclopaedia Galactica (D. Adams):<br />
„Technische Vorrichtung, die dazu dient, dem<br />
Menschen die Arbeit abzunehmen.“<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Begriffsdefinitionen<br />
<strong>Robotertechnik</strong><br />
Quelle: N.N.: FH-Weingarten<br />
VLRob.ppt<br />
Folie 15<br />
Nur <strong>für</strong> Lehrzwecke<br />
Europäische Norm EN 775: Industrieroboter<br />
„Ein Roboter ist ein automatisch gesteuertes,<br />
wiederprogrammierbares, vielfach einsetzbares<br />
Handhabungsgerät mit mehreren<br />
Freiheitsgraden, das entweder ortsfest oder<br />
beweglich in automatisierten<br />
Fertigungssystemen eingesetzt wird.“<br />
P. Hoppen:<br />
Autonomer mobiler Roboter<br />
„Maschine, die sich in einer<br />
natürlichen Umgebung aus<br />
eigener Kraft und ohne<br />
Hilfestellung von außen<br />
bewegen und dabei ein ihr<br />
gestelltes Ziel erreichen kann.<br />
[…] Dabei erkennt sie die<br />
Umwelt, sofern dies notwendig<br />
ist, über eigene Sensoren.“<br />
Angelehnt an: Guicking, Axel, Lehrstuhl <strong>für</strong><br />
Informatik VI, Universität Würzburg, 2000<br />
VLRob.ppt<br />
Folie 16<br />
Nur <strong>für</strong> Lehrzwecke
Einteilung der Roboter nach Einsatzgebieten<br />
• Industrieroboter<br />
Arbeiten in Fabriken und Montagehallen:<br />
Schweißroboter, Lackierroboter, Montageroboter, ...<br />
• Serviceroboter (In der Entwicklung, erste Anwendungen)<br />
Arbeiten in anderen, von Menschen bevölkerten Gebieten:<br />
Putzroboter, Rasenmäher, Museumsführer, ...<br />
• Geländeroboter (Beginn der Entwicklung)<br />
Arbeiten in der rauen Natur oder an Orten, die <strong>für</strong> Menschen nicht<br />
mehr zugänglich sind:<br />
Tiefsee, Weltraum, Kernkraftwerke, Kanalreinigung, Orangen<br />
pflücken, ...<br />
• Autonome Roboter / Agentensysteme (Forschung)<br />
Fußballspieler, Laufmaschinen, Artificial Life, „Androiden“<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Industrieroboter<br />
• Arbeiten in komplett von Menschen geschaffener Umwelt (Fabriken)<br />
• Heute sind eine knappe Million Industrieroboter weltweit im Einsatz<br />
(der Großteil davon in Japan, gefolgt von Deutschland und den USA).<br />
• Meist nicht autonom und nicht mobil:<br />
Roboter müssen an neue Produkte<br />
von Menschen angepasst,<br />
also umprogrammiert werden.<br />
• Häufig Fließbandarbeit wie<br />
Schweißen, Polieren, Lackieren, ...<br />
• Unterstützung der menschlichen<br />
Arbeitskräfte durch Handhabung<br />
von Bauteilen<br />
(Zusammensetzen von Autos).<br />
• Kooperierende Roboter (Cobot):<br />
Roboter verrichten gemeinsam<br />
mit Menschen eine Arbeit.<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 17<br />
Nur <strong>für</strong> Lehrzwecke<br />
Bild: Fanuc Robotics<br />
VLRob.ppt<br />
Folie 18<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Serviceroboter<br />
• Arbeiten in einer zumindest teilweise künstlichen<br />
Umwelt, in der Menschen leben.<br />
• Unterscheidung zwischen:<br />
• Roboter zur Unterstützung menschlicher Arbeit<br />
wie Putzroboter, ...<br />
• Interaktive Serviceroboter wie Museumsführer,<br />
Pflegeroboter<br />
Unterstützende Serviceroboter:<br />
• SkyWash: Putzroboter <strong>für</strong> Jumbojets<br />
(Preis: 5 Mio. DM, Fraunhofer-IPA)<br />
• SIRIUSc: Fassadenreinigungsroboter <strong>für</strong><br />
Hochhäuser (Fraunhofer-IFF)<br />
• Lely: Melkroboter mit individueller Kuh-Erkennung<br />
• Tennisballsammler Pioneer I mit Farbkamera und<br />
Bürste<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Interaktive Serviceroboter<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 19<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Für den interaktiven Umgang mit Menschen ist Kommunikation erforderlich.<br />
• RHINO: Ein autonomer, mobiler, interaktiver Museumsführer der Universität<br />
Bonn. Hauptschwerpunkte:<br />
• Schnelle und zuverlässige Bewegung in hochdynamischer Umwelt<br />
• Interesse der Besucher wecken<br />
• Interaktionsfähigkeit (Touchscreens)<br />
• Toleranz gegenüber unkooperativen Museumsbesuchern<br />
• Fernsteuerung über Web-Interface<br />
• Literatur: W. Burgard et al.: Experiences with an interactive museum tourguide<br />
robot. Artificial Intelligence 114 (1999), S. 3-55.<br />
• Museum <strong>für</strong> Kommunikation, <strong>Berlin</strong><br />
(Fraunhofer-IPA):<br />
• „Komm-rein“: Begrüßt die Besucher,<br />
gibt aktuelle Infos<br />
• „Also-gut“: Führt die Besucher durch<br />
das Museum<br />
• „Mach-was“: Animiert die Besucher<br />
zum Ball spielen<br />
VLRob.ppt<br />
Folie 20<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Geländeroboter<br />
• Arbeiten in praktisch natürlicher Umwelt („draußen“).<br />
• Einsatz in der Natur oder in Gebieten, die <strong>für</strong> Menschen<br />
• nicht oder nur schwer zugänglich sind:<br />
Tiefsee, Weltraum<br />
• gefährlich sind: Minensuche,<br />
Unfälle in Kernkraftwerken<br />
• KURT/MAKRO: Kanalreinigungsroboter der<br />
Fraunhofer-Gesellschaft:<br />
• Konventionelle Reinigung ist sehr zeit- und damit<br />
kostenintensiv, da Inspektionsplattformen<br />
häufig umgesetzt werden müssen.<br />
• Kurt: Autonome mobile<br />
Roboterplattform zur<br />
Erkennung von Rissen etc.<br />
Versagt bei höheren Stufen.<br />
• Makro: 5 Segmente,<br />
4 Knickelemente,<br />
kann Höhenunterschiede<br />
bis zu 35 cm überwinden.<br />
<strong>Robotertechnik</strong><br />
Neue Anwendungsfelder: Sanierung<br />
Autonome Kletterroboter sind prädestiniert,<br />
Aufgaben bei der Sanierung von<br />
Kernkraftwerken oder Betonbauwerken zu<br />
übernehmen. Der Einsatz menschlicher<br />
Arbeitskräfte wäre hier zu gefährlich, zu teuer<br />
oder gar technisch unmöglich.<br />
Die im englischen Portsmouth ansässige<br />
Firma Portech Ltd. entwickelt Service<br />
Roboter <strong>für</strong> Sanierungsaufgaben wie z.B. den<br />
Demonstrator ROBUG 2.<br />
Der spinnenähnliche Roboter besitzt vier mit<br />
Sauggreifern ausgerüstete Beine, die über<br />
ein Drehgelenk im Zentrum des Systems<br />
paarweise verbunden sind.<br />
Schritt <strong>für</strong> Schritt bewegt sich ROBUG 2<br />
vorwärts; wegen seines tiefen Schwerpunktes<br />
läuft er sehr stabil. Er kann sogar vom Boden<br />
aus eine vertikale Wand hochklettern.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 21<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: Portech Ltd., UK<br />
VLRob.ppt<br />
Folie 22<br />
Nur <strong>für</strong> Lehrzwecke
Neue Anwendungsfelder: Medizin<br />
Fraunhofer IPA / Siemens AG: Prototyp OP 2015:<br />
Medizinisch universell einsetzbares mechatronisches Assistenzsystem<br />
bestehend aus:<br />
• Operationsroboter mit Stabkinematik (Hexapod). Diese Bauform erlaubt<br />
extrem hohe Genauigkeiten im Mikrometerbereich und bietet hohe Steifigkeit<br />
bei vergleichsweise kleinem Bauraum.<br />
• Steuerung des Operationsroboters aus einem flugsimulatorähnlichen<br />
Operationscockpit.<br />
• Taktile Rückkopplung der Bewegung zur Unterstützung bei der Bedienung des<br />
Systems.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Neue Anwendungsfelder: Hobby, Freizeit<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Cockpit<br />
Quelle: Schraft,<br />
Uni Stuttgart,<br />
Fraunhofer IPA<br />
VLRob.ppt<br />
Folie 23<br />
Nur <strong>für</strong> Lehrzwecke<br />
Firma GolfPro International, Santa Clara, Kalifornien: Autonomer Golf-Caddy.<br />
Kann seit Herbst 1997 auf Amerikas Golfplätzen <strong>für</strong> 10 $ pro Runde gemietet<br />
werden.<br />
• Ein Sender in der Hosenasche des Golfers<br />
meldet dem Roboter, wenn sich der Sportler<br />
zum nächsten Loch begibt.<br />
• Eine im Onboard-Computer gespeicherte<br />
Karte des Golfplatzes dient in Verbindung<br />
mit einem eingebauten GPS-System zur<br />
absoluten Positionsbestimmung des<br />
Robotercaddy.<br />
• Ultraschallsensoren verhindern den<br />
Kontakt mit unvorhersehbaren Hindernissen.<br />
Mit Hilfe eines Displays kann sogar die<br />
momentane Entfernung zum nächsten<br />
Loch abgerufen werden.<br />
Quelle: Schraft, Uni Stuttgart, Fraunhofer IPA<br />
VLRob.ppt<br />
Folie 24<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Der RoboCup<br />
• Populäre internationale Wettbewerbe in<br />
verschiedenen Ligen.<br />
• Erfordert Fähigkeiten auf verschiedenen Gebieten:<br />
• Autonome Agenten,<br />
• Multi-Agenten-Kollaboration,<br />
• Strategieentwicklung und -anpassung,<br />
• Echtzeitauswertung von Sensordaten<br />
(Vision, Laserscans).<br />
• Ligen sind beispielsweise:<br />
• Simulationsliga,<br />
• F-2000 Liga (Königsdisziplin),<br />
• Sony Legged Robot League.<br />
Weitere Infos:<br />
http://www.robocup.org/<br />
und beim Spiegel-Online:<br />
http://www.spiegel.de/netzwelt/robocup/<br />
Land<br />
EU<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Einsatz von Industrierobotern - international<br />
Installierte Roboter (gesamt)<br />
Japan 1)<br />
USA, CDN, MEX<br />
Deutschland<br />
Italien<br />
Frankreich<br />
England<br />
Schweden<br />
Südkorea 1)<br />
Singapur 1)<br />
Taiwan 1)<br />
Stück<br />
373.480 3)<br />
143.200 3)<br />
297.000 2)<br />
128.000 2)<br />
58.900 2)<br />
32.200 3)<br />
14.700 3)<br />
8.000 2)<br />
47.000 2)<br />
5.300 2)<br />
7.500 2)<br />
1) Japan/Asien rechnet so genannte „roboterähnliche<br />
Spezialgeräte“ den Robotern zu.<br />
2) Stand 2003<br />
3) Stand 2005<br />
Quelle: United Nations – International Federation of<br />
Robotics. Jahrbuch „World Robotics 2003, 2006“<br />
Frankreich: 3400<br />
IR 11%<br />
Spanien: 3700 IR<br />
12%<br />
Hersteller<br />
Fanuc<br />
ABB<br />
Kuka<br />
In Europa verkaufte IR in 2001<br />
Sonstige: 2700 IR<br />
9%<br />
England: 1800 IR<br />
6%<br />
Italien: 6400 IR<br />
21%<br />
12.000<br />
10.000<br />
7.300<br />
Quelle: VDI nachrichten 9. August 2002<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 25<br />
Nur <strong>für</strong> Lehrzwecke<br />
Deutschland:<br />
12.500 IR<br />
41%<br />
Quelle: United Nations –<br />
International Federation of<br />
Robotics. Jahrbuch „World<br />
Robotics 2002“, Stand 2001<br />
Hergestellte Roboter in 2001<br />
VLRob.ppt<br />
Folie 26<br />
Nur <strong>für</strong> Lehrzwecke
16.000<br />
14.000<br />
12.000<br />
10.000<br />
8.000<br />
6.000<br />
4.000<br />
2.000<br />
0<br />
Einsatz von Industrierobotern in Deutschland<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Anzahl Industrieroboter in Deutschland<br />
Beschichten<br />
Punktschweißen<br />
Bahnschweißen<br />
Entgraten<br />
Kabelbaummontage<br />
Kleinteilemontage<br />
Bestücken<br />
Sonstige Montage<br />
Pressen<br />
Schmieden<br />
Druck-/Spritzguß<br />
Werkzeugmaschinen<br />
Sonstige Werkstückhandhabung<br />
Handhabung im Reinstraum<br />
Werkzeughandhabung Werkstückhandhabung<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
1990<br />
1995<br />
2000<br />
Forschung, Test und Schulung<br />
Angelehnt an: Kroth, Eberhard: Fa. Reis Robotics<br />
VLRob.ppt<br />
Folie 27<br />
Nur <strong>für</strong> Lehrzwecke<br />
Kundenbranchen der Industrieroboter in Deutschland<br />
Sonstige, bzw. keine<br />
Zuordnung<br />
Maschinenbau<br />
17 %<br />
Chemie, Gummi, Kunststoff<br />
Nahrungsmittel<br />
38 %<br />
3 %<br />
Metallerzeugnisse<br />
4,3 Mrd. €<br />
(2005)<br />
3 %<br />
3 %<br />
8 %<br />
28 %<br />
<strong>Robotertechnik</strong><br />
Automotive<br />
Nachrichtentechnik,<br />
elektron. Bauelemente<br />
Quelle: VDMA, Robotik und Automation.<br />
Entnommen aus VDI nachrichten 19/06<br />
VLRob.ppt<br />
Folie 28<br />
Nur <strong>für</strong> Lehrzwecke
M rd . €<br />
9<br />
8<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
Umsatz Robotik und Automation<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Reinigung<br />
Inspektion<br />
1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 2006 2008<br />
Bau / Abbruch<br />
Melkroboter<br />
Industrieroboter - Markt in Deutschland<br />
Exportanteil: ~50%<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Jahr<br />
Montage- und<br />
Handhabungstechnik<br />
Quelle: FV Robotik + Automation im VDMA<br />
(entnommen aus VDI-Nachrichten 16/02, 47/03 und 19/06,<br />
VDI-Z 151 (2009) 4, S. 15)<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
Robotik<br />
Einsatz von Servicerobotern - international<br />
Medizin / Operation<br />
Mobile Plattform (allg.)<br />
Wachdienst / Minensuche<br />
Unterwassersysteme<br />
Humanoide (F&E, Unterhaltg.)<br />
Handicap / Assistance<br />
Haushalt<br />
Erziehung / Ausbildung<br />
Unterhaltung, Hobby, Freizeit<br />
2002<br />
3.370<br />
280<br />
2.700<br />
2.285<br />
1.910<br />
260<br />
100<br />
53.500<br />
8.300<br />
545.000<br />
Aibo – Roboterhunde von Sony: 130.000 in 2003<br />
2005<br />
5.350<br />
650<br />
3.580<br />
3.500<br />
3.330<br />
3.400<br />
1.380<br />
5.680<br />
200<br />
360<br />
1.900.000<br />
20.700<br />
914.000<br />
2009<br />
7.290<br />
1.600<br />
4.800<br />
9.800<br />
5.600<br />
9.500<br />
3.000<br />
7.700<br />
450<br />
1.000<br />
5.800.000<br />
41.000<br />
2.450.000<br />
VLRob.ppt<br />
Folie 29<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: United Nations – International Federation of Robotics.<br />
Jahrbuch „World Robotics 2003“<br />
und VDI-Nachrichten 45/2006 (IFR Stat. Dep., eigene Schätzung)<br />
VLRob.ppt<br />
Folie 30<br />
Nur <strong>für</strong> Lehrzwecke
3. Bauformen von Industrierobotern<br />
• Komponenten eines Industrieroboters<br />
• Grundtypen von Industrierobotern<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
• Kartesische Roboter und Portalroboter<br />
• Horizontal-Knickarmroboter (SCARA)<br />
• Vertikal-Knickarmroboter<br />
• Parallelkinematiken<br />
• Anwendungsbeispiele<br />
• Vergleich konventioneller Roboter / Parallelkinematiken<br />
• Einsatzspezifische Kenngrößen<br />
<strong>Robotertechnik</strong><br />
Komponenten eines Industrieroboters<br />
Ein Industrieroboter besteht aus folgenden Komponenten:<br />
• Fahrzeug: Lokomotion (bodengebunden, schwebend oder unter<br />
Wasser). Meist 3 Freiheitsgrade (x/y-Richtung und Rotation um z-<br />
Achse).<br />
• Roboterarm: Führt den Endeffektor und besteht aus rotatorischen<br />
und translatorischen Achsen. Meist 4-6 Freiheitsgrade.<br />
• Effektor, Endeffektor, Hand: Interaktion mit der Umwelt,<br />
Manipulation von Werkstücken, Werkzeugen, Messzeugen oder<br />
Beobachtungsgeräten, beispielsweise Kameras.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Roboterarm<br />
Fahrzeug<br />
Effektor<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 31<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 32<br />
Nur <strong>für</strong> Lehrzwecke
Nach DIN EN ISO 8373, 1996<br />
Grundtypen von Industrierobotern<br />
Kartesischer Roboter: Portalroboter<br />
Pendularroboter Zylindrischer Roboter Gelenkroboter<br />
(Horizontal-Knickarmroboter) (Vertikal-Knickarmroboter)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Polarroboter<br />
Kartesische Roboter und Portalroboter<br />
☺ Verfahren in kartesischen<br />
Raumkoordinaten ohne<br />
Koordinatentransformation<br />
möglich<br />
(einfache Steuerung)<br />
☺ keine großen<br />
Anforderungen an das<br />
räumliche Vorstellungsvermögen<br />
des<br />
Programmierers<br />
☺ steife Struktur, daher sehr große<br />
Arbeitsräume möglich (Portalroboter)<br />
� großer Kollisionsraum<br />
� große Stellfläche<br />
� niedrige Arbeitsgeschwindigkeit<br />
� Spiel in den Achsführungen<br />
unvermeidlich<br />
� Arbeitsraum innerhalb der<br />
Roboterabmessungen<br />
Quellen: R.D. Schraft, Uni Stuttgart, Fraunhofer IPA, Fa. Reis Robotics<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 33<br />
Nur <strong>für</strong> Lehrzwecke<br />
Anwendungsgebiete:<br />
Palettieren, Kommissionieren<br />
Fertigteilfertigung <strong>für</strong> die Bauindustrie<br />
Beschicken von Werkzeugmaschinen<br />
VLRob.ppt<br />
Folie 34<br />
Nur <strong>für</strong> Lehrzwecke
Horizontal-Knickarmroboter (SCARA)<br />
Bei Fügeprozessen und Palettierarbeiten im<br />
Rahmen von Montageaufgaben gelten die<br />
folgenden Anforderungen:<br />
• geringe Werkstückmassen<br />
• sehr kurze Taktzeiten<br />
• hohe Positioniergenauigkeit<br />
• kleiner notwendiger Arbeitsraum.<br />
SCARA = Selective Compliance Assembly Robot Arm<br />
(Montage Roboter mit selektiv elastischem Arm).<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Zwei Bauarten <strong>für</strong><br />
vertikale Achse:<br />
Als erste Achse<br />
Als vierte<br />
Achse<br />
<strong>Robotertechnik</strong><br />
Vertikal-Knickarmroboter<br />
☺ Geringes Störvolumen<br />
☺ Umgreifen von Hindernissen möglich<br />
☺ Von allen Roboterbauarten am<br />
universellsten einsetzbar<br />
� Belastung der Antriebe durch das<br />
Eigengewicht erfordert meist einen<br />
Gewichtsausgleich<br />
Handachs-<br />
Motoren als<br />
Gegengewicht<br />
Hydropneumatischer<br />
Gewichtsausgleich<br />
KUKA<br />
KR 500<br />
<strong>Robotertechnik</strong><br />
☺ hohe Steifigkeit in<br />
vertikaler Richtung<br />
☺ Eigengewicht des<br />
Roboters wirkt nicht auf<br />
die Antriebe<br />
☺ hohe Geschwindigkeit<br />
und Beweglichkeit auch<br />
bei großen Reichweiten<br />
� Form des Arbeitsraums<br />
beschränkt die<br />
Anwendungsgebiete<br />
Anwendungsgebiete:<br />
Montage, Fügen,<br />
Bestücken von Leiterplatten<br />
und Magazinen,<br />
Löten<br />
Quellen:<br />
R.D. Schraft Fraunhofer IPA,<br />
C. Woernle Uni Rostock, Fa. Sankyo<br />
Anwendungsgebiete:<br />
Beschichten und Lackieren<br />
Punkt- und Bahnschweißen<br />
Werkstückhandhabung<br />
Palettieren<br />
Entgraten, Kleberauftrag<br />
VLRob.ppt<br />
Folie 35<br />
Nur <strong>für</strong> Lehrzwecke<br />
Handachsen meist als<br />
“Zentralhand”: Drei sich in<br />
einem Punkt schneidende<br />
Drehachsen<br />
Quelle: C. Woernle, iam Uni Rostock<br />
VLRob.ppt<br />
Folie 36<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Parallelkinematiken<br />
Im Gegensatz zu klassischen Industrierobotern wirken die Antriebsachsen<br />
parallel auf den Endeffektor. Eine Parallelkinematik besteht in der Regel aus<br />
einer festen und einer bewegten Plattform, die über mehrere parallele<br />
kinematische Glieder miteinander verbunden sind. Dadurch ergeben sich einige<br />
prinzipielle Unterschiede:<br />
Vorteile:<br />
• Höhere Genauigkeit und Steifigkeit, da sich die Positionierfehler und<br />
Elastizitäten der einzelnen Antriebsachsen nicht addieren.<br />
• Besseres Last-Massen-Verhältnis, da die<br />
Antriebe direkt auf die Last wirken und<br />
nicht noch zusätzlich nachfolgende<br />
Armglieder tragen müssen.<br />
Nachteile:<br />
• Eingeschränkter Arbeitsraum, da<br />
sich die Bewegungen der Antriebseinheiten<br />
ebenfalls nicht addieren.<br />
• Kinematische und dynamische<br />
Beziehungen aufgrund der<br />
geschlossenen kinematischen<br />
Ketten erheblich komplexer.<br />
<strong>Robotertechnik</strong><br />
Anwendungsbeispiele <strong>für</strong> Parallelkinematiken<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Bewegte<br />
Plattform<br />
Kinematisches<br />
Glied<br />
Feste<br />
Plattform<br />
VLRob.ppt<br />
Folie 37<br />
Nur <strong>für</strong> Lehrzwecke<br />
Bewegungssimulatoren: Aufgrund hoher Lastmassen und Beschleunigungen<br />
werden Bewegungssimulatoren in der Regel als hydraulische Plattformen<br />
aufgebaut.<br />
Hexamove<br />
(Hexapod)<br />
der Fa. OHE<br />
Hagenbuch<br />
AG<br />
Industrieroboter:<br />
Fanuc F-200i<br />
(Last: 100 kg;<br />
Masse: 170 kg)<br />
Flugsimulator<br />
737 FNPT II<br />
der Fa. Frasca<br />
Int., Inc.<br />
Flexpicker IRB340<br />
(Delta-Roboter) von<br />
ABB <strong>für</strong> extrem hohe<br />
Geschwindigkeiten<br />
VLRob.ppt<br />
Folie 38<br />
Nur <strong>für</strong> Lehrzwecke
Parallelkinematik-Roboter ABB IRB 940 (Tricept)<br />
Typische Einsatzgebiete<br />
• Mechanische Bearbeitung (Trennen, Bohren, Schleifen)<br />
• Schweißen, Brennschneiden<br />
Eigenschaften<br />
• Teilweise geschlossene kinematische Kette<br />
• Günstig <strong>für</strong> Aufnahme von Bearbeitungskräften<br />
Schubgelenk (passiv)<br />
Parallele<br />
Hybridstruktur:<br />
q 1<br />
Nach C. Woernle,<br />
iam - Uni Rostock, 2003<br />
q 2<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Drehgelenke (passiv)<br />
Kardangelenke<br />
Schraubtriebe<br />
q3 Bis zu drei serielle<br />
Handachsen<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 39<br />
Nur <strong>für</strong> Lehrzwecke<br />
Vergleich konventioneller Roboter / Parallelkinematiken<br />
Absolutgenauigkeit<br />
Wiederholgenauigkeit<br />
Steifigkeit<br />
Last/Massen-Verhältnis<br />
Beschleunigungen am Endeffektor<br />
Arbeitsraum<br />
(Größe, Hindernisvermeidung)<br />
Flexibilität<br />
(Anpassbarkeit an Aufgabenstellung)<br />
Math. Berechnungsaufwand<br />
(Kinematik, Dynamik)<br />
Serielle Roboter<br />
besser<br />
besser<br />
einfacher<br />
<strong>Robotertechnik</strong><br />
Parallelkinematiken<br />
besser<br />
besser<br />
besser<br />
besser<br />
besser<br />
VLRob.ppt<br />
Folie 40<br />
Nur <strong>für</strong> Lehrzwecke
• Mechanische<br />
Systemgrößen<br />
• Bewegungsraum,<br />
Arbeitsraum<br />
Einsatzspezifische Kenngrößen <strong>für</strong> Roboter<br />
Geometrie Kinematik<br />
Belastung<br />
Wiederholgenauigkeit<br />
• mittlere Positionsstreubreite<br />
• mittlere Orientierungsstreubreite<br />
• mittlere Umkehrspanne<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
• Geschwindigkeiten<br />
• Beschleunigungen<br />
• Überschwingen<br />
• Zykluszeiten<br />
Genauigkeit<br />
• Mittlere Genauigkeit, mit der ein Punkt<br />
im Arbeitsraum angefahren wird<br />
• Räumliche Auflösung<br />
Beispiel:<br />
1 m Bewegungsbereich und 16 Bit Darstellgenauigkeit<br />
ergibt 2 16 = 65.536 Schritte.<br />
Damit folgt: 1 m / 65.536 = 0,000015 m =<br />
0,015 mm = 15 µm Auflösung.<br />
<strong>Robotertechnik</strong><br />
• Nennlast<br />
• Werkzeuglast<br />
• Nutzlast<br />
• Maximallast<br />
• Nennmomente<br />
Referiergenauigkeit<br />
Aus drucktechnischen Gründen leere Folie!<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 41<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 42<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
4. Roboterkinematiken<br />
• Begriffe Kinematik, Dynamik und Achsen<br />
• Freiheitsgrad und Bewegungsfreiheitsgrad<br />
• Symbolische Darstellung von Kinematiken<br />
• Konfigurationen und Arbeitsräume<br />
• Direkte und inverse Kinematik<br />
• Werkzeug-Koordinatensystem, Tool-Center-Point<br />
• Darstellung der Orientierung<br />
• Beispiel: Direkte und inverse Kinematik des SCARA<br />
• Übungsaufgabe<br />
<strong>Robotertechnik</strong><br />
Begriffe Kinematik, Dynamik und Achsen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 43<br />
Nur <strong>für</strong> Lehrzwecke<br />
Die Dynamik befasst sich mit der Betrachtung von Kräften (Trägheitskraft,<br />
Schwerkraft, Antriebe), die auf die Roboterkomponenten einwirken.<br />
Die Kinematik beschreibt den mechanischen Aufbau des Roboters, d.h.<br />
die räumliche Zuordnung der Bewegungsachsen nach Folge und Aufbau.<br />
Sie beschäftigt sich mit der Geometrie und den zeitabhängigen Aspekten<br />
der Bewegung.<br />
In der Kinematik wird von allen dynamischen Aspekten abstrahiert.<br />
Die einzelnen Glieder eines Industrieroboters sind über Linearführungen<br />
und Drehgelenke zu einer kinematischen Kette miteinander verbunden.<br />
Die Glieder, Gelenke und deren Antriebe bilden die Achsen des Roboters.<br />
Die Hauptachsen dienen hierbei zum Positionieren des Endeffektors, d.h.<br />
des Werkzeugs oder Werkstücks, im Raum.<br />
Die Hand- oder Kopf- oder Nebenachsen sind in erster Linie <strong>für</strong> die<br />
Orientierung des Werkzeugs zuständig und bestehen daher in der Regel<br />
aus einer Reihe von Drehgelenken.<br />
VLRob.ppt<br />
Folie 44<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Achsen eines Knickarmroboters<br />
Die Achsen 1,2 und 3 sind die<br />
Hauptachsen des Roboters.<br />
Mit Hilfe der Hauptachsen werden die<br />
Achsen 4,5 und 6, die als Kopf- oder<br />
Handachsen bezeichnet werden, im<br />
Arbeitsraum positioniert.<br />
Durch die zusätzlichen<br />
Bewegungsmöglichkeiten der<br />
Handachsen kann der Greifer oder<br />
das Werkzeug im Raum so orientiert<br />
werden, wie es <strong>für</strong> die Bearbeitungsoder<br />
Handhabungsaufgabe<br />
erforderlich ist.<br />
Mit den 6 Bewegungsachsen eines<br />
Industrieroboters lassen sich alle 6<br />
Freiheitsgrade im Raum einstellen.<br />
<strong>Robotertechnik</strong><br />
Beispiele <strong>für</strong> Haupt- und Nebenachsen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Quelle: Kroth, Eberhard: Reis Robotics<br />
Vertikal Knickarm Horizontal Knickarm Kartesisch / Portal<br />
Zylindrisch Kugelförmig Hexapod<br />
HA = Hauptachse, NA = Nebenachse<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 45<br />
Nur <strong>für</strong> Lehrzwecke<br />
Nach D. Scholz, FH-Münster<br />
VLRob.ppt<br />
Folie 46<br />
Nur <strong>für</strong> Lehrzwecke
Gelenkbauformen <strong>für</strong> Hauptachsen<br />
Die verschiedenen Kinematiken der Industrieroboter lassen sich immer<br />
aus den 3 Grundbauformen <strong>für</strong> Gelenke aufbauen.<br />
• Linearachsen / Translatorische Achsen /<br />
Schubachsen:<br />
• frei konfigurierbarer Arbeitsraum<br />
• beliebig erweiterbarer Arbeitsraum<br />
• günstige Kinematik <strong>für</strong> Handhabungs- und Palletieraufgaben<br />
• steife Gesamtkonstruktion durch mechanische<br />
Entkopplung der Achsen<br />
• Rotatorische Achsen:<br />
• schnelle Bewegungen<br />
• kostengünstig <strong>für</strong> kleine Arbeitsräume<br />
• vorteilhafte Kinematik <strong>für</strong> Bearbeitungsaufgaben<br />
• Zwangsgekoppelte Achsen:<br />
• Kosteneinsparung<br />
• Reduzierung der Bewegungsfreiheiten<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Freiheitsgrad und Bewegungsfreiheitsgrad<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 47<br />
Nur <strong>für</strong> Lehrzwecke<br />
Freiheitsgrad eines Objekts im dreidimensionalen, euklidischen Raum<br />
• Anzahl möglicher unabhängiger Bewegungen im<br />
Bezugskoordinatensystem – definiert durch die minimale Anzahl von<br />
Translationen und Rotationen zur vollständigen Beschreibung der<br />
Stellung (Lage) des Objekts<br />
• Für im dreidimensionalen Raum frei bewegliche Objekte gilt:<br />
Freiheitsgrad: f = 6 (3 Translationen und 3 Rotationen)<br />
Bewegungsfreiheitsgrade (Getriebefreiheitsgrade) eines Roboters<br />
• Anzahl der Bewegungsmöglichkeiten des Roboters<br />
• Freiheitsgrad eines Rotationsgelenks: FR ≤ 3<br />
• Freiheitsgrad eines Translationsgelenks: FT = 1<br />
• Anzahl der Gelenke eines Roboters: n ,meist n ≤ 6<br />
� Bewegungsfreiheitsgrade:<br />
Kinematisch bestimmter Roboter: f = F<br />
Kinematisch redundanter Roboter: f < F<br />
n<br />
F ( F + F )<br />
T<br />
= ∑<br />
i=<br />
1<br />
Mit F ≥ f<br />
Ri i<br />
VLRob.ppt<br />
Folie 48<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Freiheitsgrad: Beispiele<br />
• Auf dem Boden bewegliches Fahrzeug:<br />
• Translation auf der Bodenfläche in x- und y-Richtung sowie<br />
• Drehung um die senkrecht zur Bodenfläche stehende z-Achse<br />
Freiheitsgrad f = 3<br />
• Tennisball:<br />
• Mittelpunkt im Raum (x,y,z-Koordinate)<br />
• Rotation um die Achsen des kartesischen Koordinatensystems<br />
Freiheitsgrad f = 6<br />
• 8-achsiger Roboter:<br />
• Freiheitsgrad f = 6,<br />
• Bewegungsfreiheitsgrad F ist 8<br />
• Freiheitsgrad f einer menschlichen Hand ist 6,<br />
der Bewegungsfreiheitsgrad F ist 22<br />
• Freiheitsgrad f eines menschlichen Arms ) incl. Schulter ist 6,<br />
Bewegungsfreiheitsgrad F ist 7<br />
Um ein Freiheitsgrad f = 6 <strong>für</strong> den Effektor eines Roboters zu erreichen,<br />
sind mindestens F = 6 Bewegungsachsen nötig<br />
Drehgelenk<br />
(Revolute)<br />
f = 1<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Gelenke und Freiheitsgrade<br />
Schubgelenk<br />
(Prismatic)<br />
f = 1<br />
Drehschubgelenk<br />
(Cylindric)<br />
f = 2<br />
Kardangelenk<br />
(Universal)<br />
f = 2<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 49<br />
Nur <strong>für</strong> Lehrzwecke<br />
Kugelgelenk<br />
(Spherical)<br />
f = 3<br />
Quelle: iam, Uni Rostock<br />
VLRob.ppt<br />
Folie 50<br />
Nur <strong>für</strong> Lehrzwecke
Darstellung des kinematischen Aufbaus von IR<br />
Bezeichnungen<br />
Achsen<br />
Translationsachse<br />
Translation fluchtend (Teleskop)<br />
Translation nicht fluchtend<br />
Verfahrachse<br />
Rotationsachse<br />
Rotation fluchtend<br />
Rotation nicht fluchtend<br />
Werkzeuge<br />
Greifer<br />
Kennzeichnung von<br />
Systemgrenzen<br />
Trennung zwischen Haupt- und<br />
Nebenachsen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Symbol Bemerkungen, Beispiele<br />
<strong>Robotertechnik</strong><br />
Symbol mit Angabe der<br />
Bewegungsmöglichkeit<br />
Spritzpistole<br />
Schweißzange<br />
Zangengreifer<br />
Kurzer Trennstrich echte<br />
Schnittstelle, z.B.<br />
auswechselbare Werkzeuge<br />
Beispiel <strong>für</strong> die symbolische Darstellung eines IR<br />
VDI 2861 sieht auch eine Symbolsprache <strong>für</strong> die Beschreibung der<br />
Konfigurationen vor:<br />
• X, Y, Z, U, V und W <strong>für</strong> die Linearachsen<br />
• A, B, C, D, E und F <strong>für</strong> die Drehachsen<br />
• Q, R, S und T <strong>für</strong> sonstige Achsen<br />
Mit einem Trennstrich „/“ werden die Hauptachsen von den Nebenachsen<br />
getrennt<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Nach VDI 2861, Blatt 1, 1988<br />
VLRob.ppt<br />
Folie 51<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 52<br />
Nur <strong>für</strong> Lehrzwecke
Bestimmung der Achsbezeichnungen<br />
Symbolische Darstellung eines siebenachsigen IR:<br />
Die Achsbezeichnungen <strong>für</strong> Industrieroboter beziehen sich auf ein ortsfestes<br />
kartesisches Koordinatensystem mit den horizontalen Achsen X und Y und der<br />
vertikalen Achse Z<br />
Zur Bestimmung der Achsbezeichnungen wird die Grundstellung des IR<br />
angenommen<br />
In der Grundstellung sind alle ortsfesten und ortsbeweglichen Achsen parallel<br />
bzw. symmetrisch zum Bezugskoordinatensystem ausgerichtet<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Nach VDI 2861,<br />
Blatt 2, 1988<br />
VLRob.ppt<br />
Folie 53<br />
Nur <strong>für</strong> Lehrzwecke<br />
Schnittstellen eines IR und angrenzender Peripherie<br />
Reale Darstellung Symbolische Darstellung<br />
<strong>Robotertechnik</strong><br />
Nach VDI 2861, Blatt 2, 1988<br />
VLRob.ppt<br />
Folie 54<br />
Nur <strong>für</strong> Lehrzwecke
Konfigurationen und Arbeitsräume<br />
Bezeichnung Anordnung<br />
Kartesisches<br />
Gerät<br />
Zylinderkoordinatengerät<br />
Kugelkoordinatengerät<br />
Horizontales<br />
Knickarmgerät<br />
Vertikales<br />
Knickarmgerät<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Kinematisches<br />
Ersatzbild<br />
Y<br />
Z<br />
X<br />
<strong>Robotertechnik</strong><br />
Z<br />
X<br />
Y<br />
C D E C D E<br />
Arbeitsraum des Bosch SR 800 (SCARA)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Z<br />
<strong>Robotertechnik</strong><br />
Z<br />
Arbeitsraum<br />
VLRob.ppt<br />
Folie 55<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 56<br />
Nur <strong>für</strong> Lehrzwecke
Arbeitsraum eines Knickarmroboters (Kuka KR 2)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Kinematik: Sonderbauformen<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 57<br />
Nur <strong>für</strong> Lehrzwecke<br />
Neben den klassischen Kinematiken gibt es eine Vielzahl von Sonderbauformen,<br />
die zum Teil <strong>für</strong> spezielle Aufgabenstellungen entwickelt wurden. Zum Teil sind<br />
es Abwandlungen der klassischen Bauformen, die durch unterschiedliche<br />
Reihenfolge bei der Anordnung der Achsen entstehen. Sonderbauformen<br />
können so aufgebaut sein, dass sie<br />
• bessere Zugänglichkeit<br />
• bessere Steifigkeit<br />
• bessere Bewegungsfreiheit<br />
<strong>für</strong> spezielle Anwendungsbereiche bieten.<br />
Ein weiterer wichtiger Aspekt<br />
<strong>für</strong> Sonderbauformen ist der<br />
Preis des Roboters <strong>für</strong> eine<br />
bestimmte Aufgabenstellung.<br />
Bild: Fa. Motoman<br />
VLRob.ppt<br />
Folie 58<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Direkte und inverse Kinematik<br />
Für die Steuerung eines Roboters wird die Effektorstellung<br />
in Weltkoordinaten (Basiskoordinaten) vorgegeben.<br />
Diese müssen zur Steuerung der Motoren des Roboters in<br />
Gelenkvektoren (Roboterkoordinaten) umgerechnet<br />
werden, d.h. es wird die inverse Kinematik benötigt.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Direkte Kinematik<br />
(Hintransformation)<br />
Inverse Kinematik<br />
(Rücktransformation)<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 59<br />
Nur <strong>für</strong> Lehrzwecke<br />
Werkzeug-Koordinatensystem und Tool Center Point<br />
Handgelenk-<br />
Flansch<br />
Werkzeug-Koordinatensystem:<br />
Zur Beschreibung der Orientierungen <strong>für</strong> das<br />
Werkzeug gibt es herstellerabhängig verschiedene<br />
Definitionen.<br />
Die Orientierung des Werkzeuges ändert sich, wenn<br />
die Werkzeugspitze an einer Stelle positioniert bleibt<br />
und das Werkzeug um diese Position kippt bzw.<br />
gedreht wird.<br />
Z<br />
X<br />
Y<br />
Ursprung des<br />
Werkzeug-<br />
Koordinatensystems<br />
Tool Center<br />
Point (TCP)<br />
Handgelenk<br />
<strong>Robotertechnik</strong><br />
Werkzeug<br />
Gleiche Position – verschiedene Orientierung:<br />
VLRob.ppt<br />
Folie 60<br />
Nur <strong>für</strong> Lehrzwecke
Roll-Pitch-Yaw: Das aus der Schifffahrt und Luftfahrt bekannte System wird<br />
auch in der Roboterprogrammierung angewandt.<br />
Dabei erfolgen die Rotationen<br />
Z<br />
A, B, C um die unveränderten<br />
Achsen X (Roll, Rollen),<br />
Yaw<br />
Y<br />
Y (Pitch, Stampfen, Nicken)<br />
und Z (Yaw, Gieren).<br />
Pitch<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Darstellungen der Orientierung<br />
Euler-Winkel: Die Rotationen werden nacheinander um die Achsen der neuen<br />
Koordinatensysteme durchgeführt. Die Reihenfolge muss angegeben werden!<br />
ZX‘Z‘‘ – in der Mathematik übliche Definition. Drehung nacheinander um die Z-<br />
Achse, um die X’-Achse des neuen Koordinatensystems und um die<br />
Z’’-Achse des wiederum neuen Koordinatensystems.<br />
ZY‘X‘‘ – wird z.B. bei IRDATA verwendet.<br />
ZY‘Z‘‘ – z.B. bei Programmiersprache VAL <strong>für</strong> PUMA-Roboter.<br />
Weitere Verfahren: Z.B. Quaternionen (Erweiterung komplexer Zahlen)<br />
<strong>Robotertechnik</strong><br />
Roll<br />
Koordinatentransformation und Greifer / Werkzeug<br />
Die Koordinatentransformation der Steuerung besteht meist aus zwei<br />
Teilen:<br />
• Roboterkinematik bis zum Flansch<br />
• Werkzeug- / Greiferkinematik vom Flansch bis zum TCP<br />
• Die sogenannten „Flansch-Koordinaten“ werden beschrieben mit<br />
• Position : x, y, z<br />
• Orientierung: R(z), R(y), R(x) nach Euler oder Roll/Pitch/Yaw<br />
und bilden den Ursprung des Greifer/Werkzeug-Koordinatensystems<br />
• Die Steuerung bezieht sich meist auf den<br />
TCP des aktuellen Greifers / Werkzeugs<br />
(Die genauere Beschreibung ist den<br />
jeweiligen Handbüchern zu entnehmen)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
X<br />
VLRob.ppt<br />
Folie 61<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 62<br />
Nur <strong>für</strong> Lehrzwecke
Direkte und Inverse Kinematik: Beispiel SCARA-Roboter<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
SCARA = Selective Compliance<br />
Assembly Robot Arm (Montage<br />
Roboter mit selektiv elastischem<br />
Arm).<br />
Zur Vereinfachung der Rechnung<br />
wird der Roboter von oben<br />
betrachtet, d.h. die X-Y-Ebene<br />
dargestellt und nur der Knickarm als<br />
planares System gerechnet.<br />
Die Berechnung der weiteren<br />
Achsen erfolgt dann nach dem<br />
gleichen Prinzip und kann gut als<br />
Übung dienen.<br />
<strong>Robotertechnik</strong><br />
SCARA: Direktes kinematisches Problem<br />
y<br />
L 1<br />
α<br />
L 2<br />
P(x,y)<br />
Ist P(x,y) der Endpunkt des, vom Rumpf aus gesehen, zweiten Arms<br />
des Scara, so gilt <strong>für</strong> die Koordinaten von P<br />
x =<br />
L1cos<br />
α + L2<br />
cos(<br />
α + β)<br />
y = L1sin<br />
α + L2<br />
sin ( α + β)<br />
β<br />
x<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 63<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 64<br />
Nur <strong>für</strong> Lehrzwecke
y<br />
SCARA: Inverses Kinematisches Problem - 1<br />
L1<br />
γ<br />
C<br />
L2<br />
β2<br />
L2<br />
β1<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
P(x,y)<br />
2. Schritt: Berechnung von γ<br />
γ = arctan (s/c)<br />
Problem: arctan ist mehrdeutig, gilt immer<br />
nur in einem Quadranten<br />
� oft wird die erweiterte arctan-Funktion<br />
verwendet: atan2<br />
α2<br />
α1<br />
L1<br />
atan2(s,c) wird so ausgewertet:<br />
α = π/2 bzw. 90° <strong>für</strong> c = 0, s > 0<br />
x α = -π/2 bzw -90° <strong>für</strong> c = 0, s < 0<br />
α = arctan(s/c) <strong>für</strong> c > 0<br />
1. Schritt: Berechnen von C<br />
α = arctan(s/c) + π <strong>für</strong> c < 0, s ≥ 0<br />
α = arctan(s/c) - π <strong>für</strong> c < 0, s < 0<br />
undefiniert <strong>für</strong> c = s = 0<br />
C =<br />
2 2<br />
x + y<br />
Grenzwertbetrachtung<br />
C > L1 + L2 : geometrisch nicht möglich (keine Lösung)<br />
C < |L1 - L2| : geometrisch nicht möglich (keine Lösung)<br />
C = 0 und L1 = L2 : Winkel beliebig<br />
<strong>Robotertechnik</strong><br />
SCARA: Inverses Kinematisches Problem - 2<br />
3. Schritt: Betrachtung der Armlängen<br />
L1 und L2<br />
C = L1 + L2<br />
mit α 1 = α 2 = γ;<br />
β 1 , β 2 = 0<br />
und<br />
C = |L1 ± L2|<br />
wird mit<br />
L1 > L2 : α 1 = α 2 = γ<br />
� β 1 = +180°<br />
� β 2 = -180° (also zwei Lösungen)<br />
y<br />
L1<br />
L2<br />
P(x,y)<br />
α<br />
β1 = +180°<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
β2 = -180°<br />
x<br />
L1 < L2: α 1 = α 2 = γ - 180°<br />
� β 1 = +180°<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 65<br />
Nur <strong>für</strong> Lehrzwecke<br />
� β 2 = -180° (also zwei Lösungen)<br />
L2<br />
γ<br />
P(x,y)<br />
y<br />
L1<br />
x<br />
VLRob.ppt<br />
Folie 66<br />
Nur <strong>für</strong> Lehrzwecke
y<br />
4. Schritt:<br />
SCARA: Inverses Kinematisches Problem - 3<br />
Der „Normalfall“: β 1 und β 2 berechnen<br />
Es ist<br />
C < L1 + L2 und<br />
(keine gestreckten Arme)<br />
C > |L 1 – L 2 | (Arme nicht „gefaltet“)<br />
womit gilt:<br />
y<br />
yp<br />
L1<br />
α2<br />
α1<br />
γ<br />
L1<br />
C<br />
L2<br />
β2<br />
L2<br />
β1<br />
xp<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
P(x,y)<br />
x<br />
Für das untere schiefwinklige Dreick gilt:<br />
x p 2 + yp 2 = C 2 = L1 2 + L2 2 + 2L1 L 2 cos β 1<br />
(Cosinussatz)<br />
Für das obere schiefwinklige Dreieck gilt<br />
x 2<br />
p + yp<br />
2 = C2 = L1<br />
2 + L2<br />
2 + 2L1L2 cos β2 (Cosinussatz)<br />
und es ist auch<br />
β1 > 0<br />
β2 < 0<br />
(aber beide haben den gleichen Betrag!)<br />
und man kann die Gleichungen<br />
gleichsetzen:<br />
x 2<br />
p + yp<br />
2 = C2 = L1<br />
2 + L2<br />
2 + 2L1L2 cos β1 = L 2<br />
1 + L2<br />
2 + 2L1L2 cos β2 ⎛ 2 2 2 2 ( ) ⎞<br />
⎜ x + y − L +<br />
β = ±<br />
1<br />
L<br />
2 ⎟<br />
1 arccos<br />
⎜ 2 L ⎟<br />
⎝<br />
1L2<br />
⎠<br />
<strong>Robotertechnik</strong><br />
SCARA: Inverses Kinematisches Problem - 4<br />
5. Schritt: α 1 und α 2 berechnen<br />
L1<br />
α2<br />
α1<br />
γ<br />
α 1 = γ - δ<br />
α 2 = γ + δ<br />
C<br />
δ<br />
-δ<br />
L1<br />
L2<br />
L2<br />
P(x,y)<br />
Mit dem Cosinussatz wird<br />
2 2 2 L2 = L1 + C – 2 C L1cos δ<br />
⎛ 2 2 2 ⎞<br />
⎜L<br />
− L + C<br />
δ = arccos 1 2 ⎟<br />
⎜ 2 L C ⎟<br />
⎝<br />
1<br />
⎠<br />
x<br />
<strong>Robotertechnik</strong><br />
Fazit:<br />
VLRob.ppt<br />
Folie 67<br />
Nur <strong>für</strong> Lehrzwecke<br />
Der Weg der „traditionellen Geometrie“ führt<br />
zum Ziel, ist aber<br />
• Recht aufwändig abzuleiten<br />
• Nicht übertragbar auf andere<br />
Kinematiken<br />
• Führt bei komplexen Kinematiken<br />
zu umfangreichen „Kunstwerken“<br />
Bei mehrdeutigen Lösungen besteht bei der<br />
inversen Kinematik das Problem, welche der<br />
Lösungen man in der Steuerung auswählt:<br />
• Programmierer des Anwendungsproblems<br />
wählt aus.<br />
• Vorherige Stellung als Entscheidungskriterium,<br />
z.B. die Winkel, die am<br />
nächsten liegen nehmen.<br />
• Hindernisse erkennen � Den Fall der<br />
Kollisionsvermeidung nehmen.<br />
VLRob.ppt<br />
Folie 68<br />
Nur <strong>für</strong> Lehrzwecke
Übung: K‘-transformation mit konventioneller Geometrie<br />
Gelenk 2<br />
(Rotation)<br />
d 1<br />
z<br />
Festpunkt<br />
α<br />
y p<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
d 3<br />
Gelenk 3<br />
(Translation)<br />
Gelenk 1<br />
(Translation)<br />
x p<br />
P(x p , y p , z p )<br />
z p<br />
y<br />
<strong>Robotertechnik</strong><br />
Aufgabe mit einfach zur<br />
rechnenden dimensionslosen<br />
Zahlenwerten:<br />
x<br />
a) Direktes Problem<br />
Gegeben:<br />
d1 = 3, d3 = 4, α = 30°<br />
Gesucht: Position von P<br />
Lösung:<br />
xP = 3,464<br />
yP = 2,0<br />
zP = 3<br />
b) Inverses Problem:<br />
Gegeben:<br />
xP, yP, zP , Werte wie a)<br />
Gesucht: d1, d3, α<br />
Lösung: siehe a)<br />
Aus drucktechnischen Gründen leere Folie!<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 69<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 70<br />
Nur <strong>für</strong> Lehrzwecke
e zB<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
5. Koordinatentransformation<br />
• Grundlagen<br />
• Position und Orientierung eines Körpers im Raum<br />
• Rotationen<br />
• Homogene Koordinaten und Transformationen<br />
• Denavit-Hartenberg-Verfahren (direktes kinemat. Problem)<br />
• Beschreibung nach DH<br />
• Bezeichnungen nach DH<br />
• DH-Transformation <strong>für</strong> Translation und Rotation<br />
• Bestimmung der DH-Parameter<br />
• Anwendung von DH auf Industrieroboter<br />
• DH am Beispiel eines SCARA-Roboters<br />
• Übungsaufgaben<br />
• Inverses kinematisches Problem<br />
• Analytisches Verfahren von Paul<br />
• Numerische Verfahren<br />
• Beispiel: SCARA<br />
• Übungsaufgaben<br />
• Singularitäten<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Position und Orientierung eines Körpers im Raum<br />
e = Einheitsvektoren<br />
B<br />
e xB<br />
e yB<br />
d K<br />
e zK<br />
K<br />
e xK<br />
e yK<br />
Es wird unterschieden:<br />
• Bezugskoordinatensystem (base frame);<br />
fixiert, ortsfest,<br />
z.B. am Boden festgeschraubter Roboter<br />
• Körperkoordinatensystem (body base<br />
frame); angesiedelt in einzelnen Körpern,<br />
bei Robotern z.B. fixiert im Gelenk oder im<br />
Schwerpunkt des Arms oder in „günstigen<br />
geometrischen Punkten“<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 71<br />
Nur <strong>für</strong> Lehrzwecke<br />
Nächster Schritt:<br />
Position und Orientierung bezogen auf Frame B unter<br />
zu Hilfenahme von Frame K des Körpers beschreiben<br />
p<br />
P<br />
VLRob.ppt<br />
Folie 72<br />
Nur <strong>für</strong> Lehrzwecke
Rotation in kartesischen Koordinaten<br />
Generell gibt es drei Freiheitsgrade <strong>für</strong> die Orientierung im Raum und es<br />
werden meist zwei Verfahren zur Beschreibung der Orientierung angewandt:<br />
• Euler-Winkel<br />
(Mechanik, …)<br />
• Roll, Pitch, Yaw (Rollen, Gieren, Nicken)<br />
(Schifffahrt, Luftfahrt)<br />
x<br />
Ausgangssituation:<br />
x<br />
⎛1<br />
⎜<br />
R(<br />
x,<br />
α)<br />
= ⎜0<br />
⎜<br />
⎝0<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
z<br />
α<br />
w<br />
u<br />
v<br />
u<br />
z<br />
w<br />
Rotation um x:<br />
0<br />
cosα<br />
sinα<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
v<br />
Mit R = Rotationsmatrix oder Orientierungsmatrix<br />
(ui, vi, wi = x-y-z - Koordinaten der Einheitsvektoren):<br />
y<br />
⎛ux<br />
⎜<br />
R = ⎜uy<br />
⎜<br />
⎝uz<br />
⎛ 1<br />
⎜<br />
R = ⎜0<br />
⎜<br />
⎝0<br />
0<br />
1<br />
0<br />
vx<br />
vy<br />
vz<br />
0⎞<br />
⎟<br />
0⎟<br />
1⎟<br />
⎠<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
wx<br />
⎞<br />
⎟<br />
wy<br />
⎟<br />
w ⎟<br />
z ⎠<br />
Rotation um die x-, y- und z-Achse<br />
α<br />
y<br />
0 ⎞<br />
⎟<br />
− sinα<br />
⎟<br />
cosα<br />
⎟<br />
⎠<br />
x<br />
⎛ cosβ<br />
⎜<br />
R(<br />
y,<br />
β)<br />
= ⎜ 0<br />
⎜<br />
⎝−<br />
sinβ<br />
0<br />
1<br />
0<br />
sinβ<br />
⎞<br />
⎟<br />
0 ⎟<br />
cosβ⎟<br />
⎠<br />
(allgemein)<br />
(Ausgangssituation /<br />
Skizze)<br />
Rotation um y: Rotation um z:<br />
β<br />
w<br />
z<br />
u v<br />
y<br />
x<br />
γ<br />
z<br />
w<br />
u v<br />
⎛cos<br />
γ<br />
⎜<br />
R(<br />
z,<br />
γ)<br />
= ⎜ sinγ<br />
⎜<br />
⎝ 0<br />
VLRob.ppt<br />
Folie 73<br />
Nur <strong>für</strong> Lehrzwecke<br />
y<br />
− sinγ<br />
cos γ<br />
0<br />
0⎞<br />
⎟<br />
0⎟<br />
1⎟<br />
⎠<br />
VLRob.ppt<br />
Folie 74<br />
Nur <strong>für</strong> Lehrzwecke
Kombinationen / Serien von Rotationen<br />
Rotationsmatrizen können miteinander multipliziert werden<br />
x<br />
� Ergebnis ist eine Serie von Rotationen um die Achsen des<br />
Koordinatensystems (Frames)<br />
� Wichtig ist die Reihenfolge der Rotationen!<br />
Ausgangssituation<br />
z<br />
w<br />
u v<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Es sei<br />
⎛ x⎞<br />
⎜ ⎟<br />
p = ⎜ y⎟<br />
⎜ ⎟<br />
⎝ z⎠<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
y<br />
x<br />
x<br />
R(<br />
x,<br />
30°<br />
)<br />
<strong>Robotertechnik</strong><br />
x<br />
R(<br />
z,<br />
90°<br />
)<br />
R R<br />
( z,<br />
90°<br />
)<br />
( x,<br />
30°<br />
)<br />
z<br />
w<br />
w<br />
z<br />
α<br />
u<br />
v<br />
u<br />
v<br />
γ =90°<br />
α=30°<br />
Homogene Koordinaten<br />
ein Vektor im 3D-Koordinatensystem<br />
dann sind die homogenen Koordinaten des Punktes (Vektors) P<br />
pH<br />
⎛h<br />
• x⎞<br />
⎜ ⎟<br />
⎜h<br />
• y⎟<br />
=<br />
⎜h<br />
• z⎟<br />
⎜<br />
⎟<br />
⎝ h ⎠<br />
mit h ≠ 0<br />
y<br />
y<br />
<strong>Robotertechnik</strong><br />
x<br />
w<br />
z<br />
w<br />
z<br />
v<br />
u<br />
v<br />
u<br />
γ = 90°<br />
y<br />
VLRob.ppt<br />
Folie 75<br />
Nur <strong>für</strong> Lehrzwecke<br />
y<br />
α =30°<br />
Der Spaltenvektor h ist der Skalierungsvektor. In der Kinematik ist h = 1<br />
Damit kann <strong>für</strong> die Beschreibung der Rotation und Translation eine so<br />
genannte homogene 4x4 Matrize aufgestellt werden:<br />
M =<br />
R T<br />
0 0 0 1<br />
mit<br />
R = 3 x 3 Matrix: Rotation<br />
T = 3 x 1 Vektor: Translation<br />
1 = Skalierungsfaktor <strong>für</strong> Kinematik<br />
Vorteil: Rotation und Translation werden in einer Matrix zusammengefasst<br />
VLRob.ppt<br />
Folie 76<br />
Nur <strong>für</strong> Lehrzwecke
0<br />
Homogene Koordinaten in der <strong>Robotertechnik</strong><br />
d 1<br />
1<br />
p 0P<br />
p 1P<br />
0 0 0<br />
p0P<br />
= d1+<br />
p1P<br />
0 0 1<br />
= d1+<br />
R1<br />
p1P<br />
In homogenen Koordinaten:<br />
0<br />
0 ⎛ R<br />
p 1<br />
0P<br />
= ⎜<br />
⎝ 0<br />
0 1<br />
d ⎞⎛<br />
1 p ⎞<br />
⎟⎜<br />
1P<br />
⎟<br />
1<br />
⎟⎜<br />
1<br />
⎟<br />
⎠⎝<br />
⎠<br />
0<br />
r0P<br />
=<br />
0<br />
T1<br />
1<br />
r1P<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
P<br />
Orte im Raum können vollständig<br />
beschrieben werden durch:<br />
d, p = Positionsvektor<br />
R = Rotationsmatrix<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Hinweis:<br />
0R1 = Rotationsmatrix<br />
<strong>für</strong> Frame 1 bezogen<br />
auf Frame 0<br />
2<br />
0<br />
p 0P<br />
p 2P<br />
<strong>Robotertechnik</strong><br />
d 2<br />
d 1<br />
P<br />
p 1P<br />
In Vektorschreibweise:<br />
1<br />
0 0 0 0<br />
p0P<br />
= d1+<br />
d2+<br />
p2P<br />
0 0 1 0 1 2<br />
= d1+<br />
R1<br />
d2+<br />
R1<br />
R 2 p2P<br />
In homogenen Koordinaten:<br />
0 0 1 2<br />
r 0P<br />
= T1<br />
T2<br />
r2P<br />
Homogene Transformationen<br />
Trans(x,y,z) = Verschiebung eines<br />
Punktes um x,y,z entlang der<br />
jeweiligen Achse:<br />
Trans<br />
R ,<br />
( x α)<br />
( x,<br />
y,<br />
z)<br />
⎛1<br />
⎜<br />
⎜0<br />
=<br />
⎜0<br />
⎜<br />
⎝0<br />
⎛1<br />
⎜<br />
⎜0<br />
=<br />
⎜0<br />
⎜<br />
⎝0<br />
Rotation um die x-Achse:<br />
0<br />
cosα<br />
sinα<br />
0<br />
0<br />
1<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
− sinα<br />
cosα<br />
0<br />
x⎞<br />
⎟<br />
y⎟<br />
z⎟<br />
⎟<br />
1⎠<br />
0⎞<br />
⎟<br />
0⎟<br />
0⎟<br />
⎟<br />
1⎠<br />
Rotation um die y-Achse:<br />
R ,<br />
( y β)<br />
<strong>Robotertechnik</strong><br />
⎛ cosβ<br />
⎜<br />
⎜ 0<br />
=<br />
⎜−<br />
sinβ<br />
⎜<br />
⎝ 0<br />
0<br />
1<br />
0<br />
0<br />
sinβ<br />
0<br />
cosβ<br />
Rotation um die z-Achse:<br />
R ,<br />
( z<br />
γ)<br />
⎛cos<br />
γ<br />
⎜<br />
⎜ sinγ<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
− sinγ<br />
cos γ<br />
0<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
VLRob.ppt<br />
Folie 77<br />
Nur <strong>für</strong> Lehrzwecke<br />
0⎞<br />
⎟<br />
0⎟<br />
0⎟<br />
⎟<br />
1⎠<br />
0⎞<br />
⎟<br />
0⎟<br />
0⎟<br />
⎟<br />
1⎠<br />
VLRob.ppt<br />
Folie 78<br />
Nur <strong>für</strong> Lehrzwecke
Begründung:<br />
Beschreibung nach Denavit - Hartenberg<br />
• Bisher wurden die Koordinatensysteme intuitiv<br />
gewählt<br />
• Es ist aber zweckmäßig, nach einem einheitlichen<br />
Schema beziehungsweise Verfahren vorzugehen<br />
• Vorteil: Verschiedene Anwender kommen zu einer<br />
gleichen oder zumindest vergleichbaren<br />
Beschreibung der Aufgabe<br />
Prinzip:<br />
• Es geht darum, von einem i-ten<br />
Koordinatensystem zu einem (i+1)-ten<br />
Koordinatensystem zu kommen<br />
• Man beschränkt die Freiheitsgrade der<br />
Koordinatensysteme:<br />
- eine Drehachse<br />
- eine Linearachse<br />
(oft prismatische Achse genannt)<br />
Denavit, J., Hartenberg, R. S.: A kinematic notation for lower pair mechanisms<br />
based on Matrices. Journal of Applied Mechanics, vol. 77, pp. 215–221, June 1955.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Bei einem Roboter<br />
bestehen im Normalfall<br />
folgende Möglichkeiten <strong>für</strong><br />
zwei so genannte<br />
kinematische Paare:<br />
Gelenk i<br />
Gelenk i<br />
Glied i<br />
Drehachse<br />
Drehachse<br />
Linearachse<br />
Linearachse<br />
Bezeichnungen nach Denavit-Hartenberg<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Gelenk i+1<br />
Form und Masse<br />
der Glieder werden<br />
abstrahiert<br />
Gelenk i+1<br />
Drehachse<br />
Linearachse<br />
Drehachse<br />
Linearachse<br />
VLRob.ppt<br />
Folie 79<br />
Nur <strong>für</strong> Lehrzwecke<br />
Die Gelenkachsen von Gelenk (i) und Gelenk (i+1) fallen mit den z-Achsen der<br />
Koordinatensysteme (i-1) und (i) zusammen.<br />
Beispiel <strong>für</strong> Drehgelenke:<br />
Gelenk i<br />
a i-1<br />
z i-1<br />
d i<br />
K i-1<br />
q i<br />
q i<br />
Glied i<br />
y i-1<br />
a i<br />
x i-1<br />
Gelenk i+1<br />
y i<br />
K α i<br />
i<br />
z i<br />
q i+1<br />
x i<br />
Man erkennt:<br />
• ai und αi sind durch die<br />
Gelenkkonstruktionen festgelegt.<br />
• ai ist die gemeinsame Normale der<br />
Drehachsen (z-Achsen), also der<br />
kürzeste Abstand der Achsen.<br />
• ai ist ein Abstand, und daher > 0<br />
• αi ist der Winkel, um den man die erste<br />
Achse z i drehen muss, damit sie parallel<br />
zur zweiten Achse z i+1 wird.<br />
• αi wird in der Ebene senkrecht zur<br />
gemeinsamen Normalen ai gemessen.<br />
• Schaut man von der Pfeilspitze von xi auf<br />
diese Ebene, erkennt man die positive<br />
Richtung von α i .<br />
• x i läuft kolinear zu a i , und seine Richtung<br />
geht von K i-1 weg nach K i .<br />
• Die y-Achsen ergänzen die<br />
Koordinatensysteme zum Rechtssystem.<br />
VLRob.ppt<br />
Folie 80<br />
Nur <strong>für</strong> Lehrzwecke
Beschreibung der Drehungen und der Translationen - 1<br />
a i-1<br />
z i-1<br />
d i<br />
K i-1<br />
1.<br />
Drehung<br />
⎛cos qi<br />
− sinqi<br />
⎜<br />
⎜ sinqi<br />
cos qi<br />
⎜ 0 0<br />
⎜<br />
⎝ 0 0<br />
um qi<br />
0<br />
0<br />
1<br />
0<br />
q i<br />
y i-1<br />
0⎞<br />
⎟<br />
0⎟<br />
0⎟<br />
⎟<br />
1⎠<br />
a i<br />
x i-1<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
,<br />
⎛1<br />
⎜<br />
⎜0<br />
⎜0<br />
⎜<br />
⎝0<br />
K i<br />
2.<br />
Translation<br />
0<br />
1<br />
0<br />
0<br />
y i<br />
α i<br />
0<br />
0<br />
1<br />
0<br />
z i<br />
ai<br />
⎞<br />
⎟<br />
0 ⎟<br />
d ⎟<br />
i<br />
⎟<br />
1 ⎠<br />
x i<br />
und<br />
Es sind drei Schritte<br />
abzuarbeiten:<br />
<strong>Robotertechnik</strong><br />
1. Drehung um die Achse<br />
zi-1 um den Winkel qi<br />
2. Translation Ki-1 � Ki<br />
3. Drehung um die Achse xi<br />
um den Winkel αi<br />
⎛1<br />
⎜<br />
⎜0<br />
⎜0<br />
⎜<br />
⎝0<br />
<strong>Robotertechnik</strong><br />
3.<br />
Drehung<br />
0<br />
cos αi<br />
sinαi<br />
0<br />
um αi<br />
0<br />
− sinαi<br />
cos αi<br />
0<br />
0⎞<br />
⎟<br />
0⎟<br />
0⎟<br />
⎟<br />
1⎠<br />
VLRob.ppt<br />
Folie 81<br />
Nur <strong>für</strong> Lehrzwecke<br />
Beschreibung der Drehungen und der Translationen - 2<br />
Die Koordinatentransformation von (i-1) zu (i) ist dann das Produkt der Matrizen:<br />
⎛cos qi<br />
− sinqi<br />
⎜<br />
i−1<br />
⎜ sinqi<br />
cos qi<br />
Ti<br />
=<br />
⎜ 0 0<br />
⎜<br />
⎝ 0 0<br />
⎛cos qi<br />
− sinqi<br />
⎜<br />
⎜ sinqi<br />
cos qi<br />
=<br />
⎜ 0 0<br />
⎜<br />
⎝ 0 0<br />
⎛cos<br />
qi<br />
⎜<br />
⎜ sinqi<br />
=<br />
⎜<br />
0<br />
⎜<br />
⎝ 0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
0<br />
1<br />
0<br />
− sinqi<br />
cos αi<br />
cos qi<br />
cos αi<br />
sinαi<br />
0<br />
0⎞<br />
⎛ 1<br />
⎟ ⎜<br />
0⎟<br />
⎜0<br />
⎟<br />
•<br />
0 ⎜0<br />
⎟<br />
⎜<br />
1⎠<br />
⎝0<br />
0⎞<br />
⎛1<br />
⎟ ⎜<br />
0⎟<br />
⎜0<br />
⎟<br />
•<br />
0 ⎜0<br />
⎟<br />
⎜<br />
1⎠<br />
⎝0<br />
0<br />
1<br />
0<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
cos αi<br />
sinαi<br />
0<br />
sinqi<br />
sinαi<br />
− cos qi<br />
sinαi<br />
cos α<br />
i<br />
0<br />
ai<br />
⎞ ⎛1<br />
⎟ ⎜<br />
0 ⎟ ⎜0<br />
⎟<br />
•<br />
d ⎜<br />
i 0<br />
⎟<br />
⎜<br />
1 ⎠ ⎝0<br />
0<br />
− sinαi<br />
cos αi<br />
0<br />
0<br />
cos αi<br />
sinαi<br />
0<br />
ai<br />
⎞<br />
⎟<br />
0 ⎟<br />
d ⎟<br />
i<br />
⎟<br />
1 ⎠<br />
ai<br />
cos qi<br />
⎞<br />
⎟<br />
ai<br />
sinqi<br />
⎟<br />
d<br />
⎟<br />
i ⎟<br />
1<br />
⎟<br />
⎠<br />
0<br />
− sinαi<br />
cos αi<br />
0<br />
0⎞<br />
⎟<br />
0⎟<br />
0⎟<br />
⎟<br />
1⎠<br />
VLRob.ppt<br />
Folie 82<br />
Nur <strong>für</strong> Lehrzwecke
Beschreibung der Drehungen und der Translationen - 3<br />
Anmerkungen:<br />
• Die Koordinatentransformation hängt von vier Parametern ab: ai, αi, di, qi<br />
• Diese Parameter werden auch „link parameter“ genannt<br />
• ai und αi sind durch die maschinenbauliche Konstruktion des (i)-ten Gliedes gegeben<br />
• qi und di sind abhängig von der Verbindung der Glieder (i-1) und (i) über das Gelenk (i)<br />
Fallunterscheidungen: (Deutung von q i )<br />
Gelenk (i) ist eine Drehachse:<br />
di ist konstruktiv vorgegeben und konstant<br />
q i ist eine Gelenkkoordinate, d.h. im Beispiel der Winkel zwischen den<br />
Gliedern (i-1) und (i)<br />
Gelenk ist eine Linearachse (Translation):<br />
di ist variabel und wird dann als qi bezeichnet<br />
Der Winkel zwischen den Gliedern ist konstruktiv festgelegt, also konstant.<br />
Er wird dann ϑi genannt.<br />
Damit folgt die Schreibweise der vorherigen Koordinatentransformation<br />
<strong>für</strong> die Linearachse:<br />
⎛cos<br />
ϑi<br />
⎜<br />
i−1<br />
⎜ sin ϑi<br />
Ti<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
− sin ϑi<br />
cos αi<br />
cos ϑi<br />
cos αi<br />
sin αi<br />
0<br />
sin ϑi<br />
sin αi<br />
− cos ϑi<br />
sin αi<br />
cos αi<br />
0<br />
<strong>Robotertechnik</strong><br />
Verallgemeinerung der Beschreibung<br />
<strong>Robotertechnik</strong><br />
ai<br />
cos ϑi<br />
⎞<br />
⎟<br />
ai<br />
sin ϑi<br />
⎟<br />
q ⎟<br />
i<br />
⎟<br />
1 ⎠<br />
Die zuvor im Beispiel aufgestellten Koordinatentransformationen <strong>für</strong> die<br />
Drehungen und die Translationen kann man auch zusammenfassen (es<br />
handelt sich dabei nur um eine andere Sichtweise!):<br />
⎛cos<br />
ϑi<br />
⎜<br />
i−1<br />
⎜ sinϑi<br />
Ti<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
− sinϑi<br />
cos αi<br />
cos ϑi<br />
cos αi<br />
sinαi<br />
0<br />
Und nun setzt man als Variable q i<br />
Für die Drehachse: ϑi = qi<br />
Für die Linearachse: di = qi<br />
sinϑi<br />
sinαi<br />
− cos ϑi<br />
sinαi<br />
cos αi<br />
0<br />
Damit lassen sich dann alle vier möglichen<br />
beziehungsweise zulässigen Fälle betrachten:<br />
ai<br />
cos ϑi<br />
⎞<br />
⎟<br />
ai<br />
sinϑi<br />
⎟<br />
d ⎟<br />
i<br />
⎟<br />
1 ⎠<br />
Gelenk i<br />
Drehachse<br />
Drehachse<br />
Linearachse<br />
Linearachse<br />
Gelenk i+1<br />
Drehachse<br />
Drehachse<br />
VLRob.ppt<br />
Folie 83<br />
Nur <strong>für</strong> Lehrzwecke<br />
Linearachse<br />
Linearachse<br />
VLRob.ppt<br />
Folie 84<br />
Nur <strong>für</strong> Lehrzwecke
i−1<br />
Ti<br />
=<br />
i−1<br />
Ti<br />
=<br />
⎛<br />
⎜<br />
⎜<br />
⎜<br />
⎝<br />
Denavit–Hartenberg Parameter am Drehgelenk<br />
cos ϑi<br />
sin ϑi<br />
0<br />
0<br />
− sin ϑi<br />
cos αi<br />
cos ϑi<br />
cos αi<br />
sin αi<br />
0<br />
Glied i-1<br />
Gelenk i-1<br />
ai-1<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
sin ϑi<br />
sin αi<br />
− cos ϑi<br />
sin αi<br />
cos αi<br />
0<br />
Glied i-1<br />
Gelenk i-1<br />
ai-1<br />
di<br />
di<br />
zi-1<br />
ai<br />
cos ϑi<br />
ai<br />
sin ϑi<br />
di<br />
1<br />
zi-1<br />
Ki-1<br />
Ki-1<br />
⎞<br />
⎟<br />
⎟<br />
⎟<br />
⎠<br />
Gelenk i<br />
ϑi<br />
yi-1<br />
ai<br />
xi-1<br />
Glied i<br />
yi<br />
<strong>Robotertechnik</strong><br />
Gelenk i<br />
ϑi<br />
yi-1<br />
ai<br />
xi-1<br />
Glied i<br />
yi<br />
<strong>Robotertechnik</strong><br />
α i<br />
Ki<br />
zi<br />
xi<br />
Glied i+1<br />
Gelenk i+1<br />
Der Winkel ϑi ist variabel<br />
d i , a i , α i sind konstant<br />
α i<br />
Ki<br />
zi<br />
xi<br />
VLRob.ppt<br />
Folie 85<br />
Nur <strong>für</strong> Lehrzwecke<br />
Denavit-Hartenberg Parameter am Translationsgelenk<br />
⎛<br />
⎜<br />
⎜<br />
⎜<br />
⎝<br />
cos ϑi<br />
sin ϑi<br />
0<br />
0<br />
− sin ϑi<br />
cos αi<br />
cos ϑi<br />
cos αi<br />
sin αi<br />
0<br />
sin ϑi<br />
sin αi<br />
− cos ϑi<br />
sin αi<br />
cos αi<br />
0<br />
ai<br />
cos ϑi<br />
ai<br />
sin ϑi<br />
di<br />
1<br />
⎞<br />
⎟<br />
⎟<br />
⎟<br />
⎠<br />
Glied i+1<br />
Gelenk i+1<br />
Der Abstand di ist variabel<br />
ϑ i , a i , α i sind konstant<br />
VLRob.ppt<br />
Folie 86<br />
Nur <strong>für</strong> Lehrzwecke
Festlegen der Koordinatensysteme - 1<br />
Die vorherige Koordinatentransformation kann unter folgenden<br />
Voraussetzungen auf Industrieroboter angewandt werden:<br />
Glied 0 beziehungsweise Koordinatensystem 0:<br />
• Der Sockel (Fuß) des Industrieroboters ist Glied 0 und ist mit dem (0)-ten<br />
Koordinatensystem fest verbunden und heißt: Bezugssystem (reference<br />
frame) oder Weltkoordinatensystem (da ist der Roboter „festgeschraubt“)<br />
• Der Ursprung von Koordinatensystem 0 wird auf die erste Gelenkachse<br />
gelegt.<br />
• z 0 zeigt dann entlang der Gelenkachse<br />
• x 0 und y 0 sind dann frei wählbar, bilden aber ein Rechtssystem<br />
Koordinatensysteme K i mit i = 1, 2, … n-1:<br />
• Der Ursprung von K i liegt auf der Gelenkachse i+1<br />
• Die Richtung von Z i geht entlang der Gelenkachse i+1; das Vorzeichen ist<br />
frei wählbar<br />
• … siehe nächste Folie!<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Festlegen der Koordinatensysteme - 2<br />
Es sind drei Fälle zu unterscheiden:<br />
• Parallele Gelenkachsen<br />
• x i läuft kolinear zu ai und zeigt von K i-1 nach K i<br />
• Sich schneidende Achsen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 87<br />
Nur <strong>für</strong> Lehrzwecke<br />
• x i läuft parallel zur Richtung des Kreuzproduktes z i-1 X z i; die Richtung ist<br />
frei wählbar<br />
• a i ist der Abstand der beiden Systeme<br />
• Windschiefe Achsen<br />
• Die Achsen schneiden sich nicht und sind auch nicht parallel. Vorgehen<br />
wie bei parallelen Achsen. Der Fall ist bei realen Robotern eher selten!<br />
Festlegen des letzten Koordinatensystems K n<br />
• Möglichst TCP als Ursprung wählen (oder fiktiven TCP)<br />
• z n geht in Richtung von z n-1 und durch TCP<br />
• Richtung von x n:<br />
• z n-1 und z n liegen auf einer Linie: x n wie x n-1 legen<br />
• Sonst: x n steht senkrecht auf z n-1 und zeigt von z n-1 in Richtung z n<br />
VLRob.ppt<br />
Folie 88<br />
Nur <strong>für</strong> Lehrzwecke
Gesamttransformation, Position und Orientierung<br />
Jede der aufzustellenden Matrizen enthält dann genau eine der<br />
Gelenkkordinaten qi<br />
Die Multiplikation aller Matrizen führt dann zu<br />
0 0 1 2<br />
T = Tn<br />
= T1<br />
• T2<br />
• T3<br />
•<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
...<br />
n−1<br />
Tn<br />
Wobei, allgemein ausgedrückt, T so aussieht:<br />
⎛a11<br />
a12<br />
a13<br />
a14<br />
⎞<br />
⎜<br />
⎟<br />
⎜a21<br />
a22<br />
a23<br />
a24<br />
⎟<br />
T =<br />
⎜a<br />
a a a ⎟<br />
⎜ 31 32 33 34<br />
⎟<br />
⎝ 0 0 0 1 ⎠<br />
Für die Werkzeugspitze (Tooltip) im n-ten Koordinatensystem wird<br />
Die Position: Die Orientierung: Die Winkel nach Vukobratovic:<br />
X<br />
Tooltip<br />
⎛a<br />
⎜<br />
= ⎜a<br />
⎜<br />
⎝a<br />
14<br />
24<br />
34<br />
⎞<br />
⎟<br />
⎟<br />
⎟<br />
⎠<br />
⎛a11<br />
⎜<br />
⎜a21<br />
⎜<br />
⎝a31<br />
a12<br />
a22<br />
a32<br />
a13<br />
⎞<br />
⎟<br />
a23<br />
⎟<br />
a ⎟<br />
33 ⎠<br />
ψ = atan2(a21,<br />
a11)<br />
( Drehung um<br />
ϑ = atan2(<br />
−a31,<br />
( a11cos<br />
ψ + a21sin<br />
ψ))<br />
ϕ = atan2(<br />
a32,<br />
a33)<br />
( Drehung um<br />
Vukobratovic, M.: "Introduction to Robotics", Springer, <strong>Berlin</strong> Heidelberg New York 1989<br />
<strong>Robotertechnik</strong><br />
Zusammenfassung Denavit-Hartenberg - Verfahren<br />
Folgende Schritte sind zur Lösung des direkten Problems erforderlich:<br />
1. Roboter skizzieren und in günstige Grundstellung ausrichten<br />
2. Bestimmung der Koordinatensysteme nach Denavit-Hartenberg<br />
3. Ablesen der DH-Parameter (a i, a i, d i, ϑ i) und eintragen in eine<br />
Tabelle<br />
4. Bestimmung der Matrizen i-1 Ti, die jeweils von den gegebenen<br />
Gelenkkoordinaten abhängen<br />
5. Berechnung von T beziehungsweise 0 Tn durch<br />
Matrizenmultiplikation<br />
6. Berechnung der externen Koordinaten<br />
(Tooltip) x, y, z (Position)<br />
7. Berechnung der Orientierung, d.h. der Winkel<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
z)<br />
x)<br />
VLRob.ppt<br />
Folie 89<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 90<br />
Nur <strong>für</strong> Lehrzwecke
z 0<br />
0<br />
Übungsbeispiel: DH <strong>für</strong> den planaren SCARA<br />
Bestimmung der Koordinatensysteme nach DH:<br />
L 1 L 2<br />
α<br />
β<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
P<br />
Zur Erinnerung:<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
• Der Sockel (Festpunkt) des Roboters ist Glied 0<br />
• In Glied 0 ist das Weltkoordinatensystem<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 91<br />
Nur <strong>für</strong> Lehrzwecke<br />
Übungsbeispiel: DH <strong>für</strong> den planaren SCARA - Glied 1<br />
a 1 = L 1<br />
y 0<br />
ϑ 1 = α<br />
x 0<br />
Glied 1<br />
y 1<br />
z 1<br />
1<br />
i−1<br />
x 1<br />
⎛cos<br />
ϑi<br />
⎜<br />
⎜ sinϑi<br />
Ti<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
Gewählt <strong>für</strong> SCARA:<br />
d1 = 0 (Fußpunkt)<br />
α 1 = 0 (z 0 , z 1 laufen parallel, keine<br />
Achsverdrehung)<br />
Die DH-Koordinatentransformation ist<br />
dann:<br />
− sinϑ<br />
cosα<br />
i<br />
cosϑ<br />
cosα<br />
i<br />
sinα<br />
0<br />
i<br />
i<br />
i<br />
sinϑ<br />
sinα<br />
− cosϑ<br />
sinα<br />
i<br />
cosα<br />
Einsetzen der Parameter aus der Skizze:<br />
⎛cos<br />
α<br />
⎜<br />
0<br />
⎜ sinα<br />
T1<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
− sinα<br />
cos α<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
L1cos<br />
α⎞<br />
⎟<br />
L1sin<br />
α ⎟<br />
0 ⎟<br />
⎟<br />
1 ⎠<br />
i<br />
i<br />
i<br />
i<br />
ai<br />
cosϑi<br />
⎞<br />
⎟<br />
ai<br />
sinϑi<br />
⎟<br />
d ⎟<br />
i<br />
⎟<br />
1 ⎠<br />
VLRob.ppt<br />
Folie 92<br />
Nur <strong>für</strong> Lehrzwecke
z 0<br />
0<br />
Übungsbeispiel: DH <strong>für</strong> den planaren SCARA - Glied 2<br />
a 1 = L 1<br />
y 0<br />
ϑ 1 = α<br />
x 0<br />
y 1<br />
Glied 1<br />
z 1<br />
d 2 = 0<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
1<br />
y 2<br />
a 2 = L 2<br />
Glied 2<br />
x 1<br />
Z 2<br />
2<br />
ϑ 2 = β<br />
x 2<br />
Für SCARA gilt:<br />
d2 = 0 (Gelenke in einer Ebene)<br />
α2 = 0 (z-Achsen laufen parallel)<br />
Einsetzen der obrigen Werte in DH:<br />
⎛ cos β<br />
⎜<br />
1 ⎜ sin β<br />
T2<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
− sin β<br />
cos β<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
L2<br />
cos β ⎞<br />
⎟<br />
L2<br />
sin β ⎟<br />
0 ⎟<br />
⎟<br />
1 ⎠<br />
VLRob.ppt<br />
Folie 93<br />
Nur <strong>für</strong> Lehrzwecke<br />
Übungsbeispiel: DH <strong>für</strong> SCARA - Gesamttransformation<br />
⎛cos<br />
α<br />
⎜<br />
0 0 1 ⎜ sinα<br />
T2<br />
= T1<br />
T2<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
⎛ cos α cos β − sin α sin β −<br />
⎜<br />
sin α cos β + cos α sin β −<br />
= ⎜<br />
⎜ 0<br />
⎝ 0<br />
⎛cos(<br />
α + β)<br />
⎜<br />
0 ⎜ sin( α + β)<br />
T2<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
− sin α<br />
cos α<br />
0<br />
0<br />
cos α sin β − sin α cos β<br />
sin α cos β + cos α cos β<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
L1cos<br />
α⎞<br />
⎛cos<br />
β<br />
⎟ ⎜<br />
L1<br />
sinα<br />
⎟ ⎜ sinβ<br />
⎟<br />
•<br />
0 ⎜ 0<br />
⎟<br />
⎜<br />
1 ⎠ ⎝ 0<br />
0<br />
0<br />
1<br />
0<br />
− sinβ<br />
cosβ<br />
Es gilt: sin α cosβ<br />
+ cos α sinβ<br />
= sin(<br />
α + β)<br />
cos α cosβ<br />
− sin α sinβ<br />
= cos(<br />
α + β)<br />
und man kann schreiben:<br />
− sin( α + β)<br />
cos( α + β)<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
0<br />
L2<br />
cosβ<br />
⎞<br />
⎟<br />
L2<br />
sinβ<br />
⎟<br />
0 ⎟<br />
⎟<br />
1 ⎠<br />
cos α L2<br />
cos β − sin α L2<br />
sin β + L<br />
1<br />
sin α<br />
sin α L2<br />
cos β + cos α L2<br />
sin β + L1<br />
sin α<br />
0<br />
L2<br />
cos( α + β)<br />
+ L1cos<br />
α⎞<br />
⎟<br />
L2<br />
sin( α + β)<br />
+ L1sin<br />
α ⎟<br />
0 ⎟<br />
⎟<br />
1 ⎠<br />
Orientierung in der Ebene Position in der Ebene<br />
1<br />
0<br />
0<br />
1<br />
0<br />
⎞<br />
⎟<br />
⎟<br />
⎟<br />
⎠<br />
VLRob.ppt<br />
Folie 94<br />
Nur <strong>für</strong> Lehrzwecke
Übungsbeispiel: DH <strong>für</strong> den planaren SCARA - Zahlenbeispiel<br />
Bei einem SCARA sei:<br />
L1 = 4<br />
L2 = 3<br />
α = 30°<br />
β = 30°<br />
(Es werden glatte, dimensionslose Zahlen angenommen, um den<br />
Rechenaufwand gering zu halten!)<br />
Damit ist<br />
⎛ 0,<br />
5<br />
⎜<br />
0 ⎜0,<br />
866<br />
T2 =<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
− 0,<br />
866<br />
0,<br />
5<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
3 • 0,<br />
5 + 4 • 0,<br />
866 = 4.<br />
964⎞<br />
⎟<br />
3 • 0,<br />
866 + 4 • 0,<br />
5 = 4,<br />
598 ⎟<br />
0<br />
⎟<br />
⎟<br />
1<br />
⎠<br />
Die allgemeine Form der Matrix ist: ψ = atan2(a21,<br />
a11)<br />
⎛a11<br />
⎜<br />
⎜a21<br />
⎜a<br />
⎜ 31<br />
⎝ 0<br />
a12<br />
a22<br />
a32<br />
0<br />
a13<br />
a23<br />
a33<br />
0<br />
a14<br />
⎞<br />
⎟<br />
a24<br />
⎟<br />
a ⎟<br />
34<br />
⎟<br />
1 ⎠<br />
Euler-Winkel ϑ = atan2(<br />
−a31,<br />
( a11cos<br />
ψ + a21sin<br />
ψ))<br />
ϕ = atan2(<br />
a32,<br />
a33)<br />
0,<br />
866<br />
ψ = atan2(<br />
0,<br />
866 , 0,<br />
5)<br />
= arctan( ) = arctan 1,<br />
732 = 60°<br />
0,<br />
5<br />
Gelenk 2<br />
(Rotation)<br />
d 1<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
ϑ = atan2(<br />
0 , ( 0,<br />
5 cos ψ + 0,<br />
866 sin ψ))<br />
= atan2(<br />
0,<br />
( 0,<br />
433<br />
ϕ = atan2(<br />
0,<br />
1)<br />
= arctan 0<br />
= 0°<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
+<br />
0,<br />
433)<br />
= arctan 0<br />
Übung: DH-Verfahren <strong>für</strong> einen einfachen Roboter<br />
z<br />
α<br />
Festpunkt<br />
d 3<br />
Gelenk 3<br />
(Translation)<br />
Gelenk 1<br />
(Translation)<br />
y p<br />
x p<br />
P(x p , y p , z p )<br />
z p<br />
y<br />
0<br />
T3<br />
Lösung:<br />
⎛cos q2<br />
− sin q2<br />
⎜<br />
= ⎜ sin q2<br />
cos q2<br />
⎜ 0 0<br />
⎜<br />
⎝ 0 0<br />
0<br />
0<br />
1<br />
0<br />
= 0°<br />
VLRob.ppt<br />
Folie 95<br />
Nur <strong>für</strong> Lehrzwecke<br />
d3<br />
cos q2<br />
⎞<br />
⎟<br />
d3<br />
sin q2<br />
⎟<br />
d1<br />
⎟<br />
⎟<br />
1 ⎠<br />
VLRob.ppt<br />
Folie 96<br />
Nur <strong>für</strong> Lehrzwecke
1<br />
2 3<br />
4<br />
1<br />
2<br />
3<br />
4<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
1<br />
Wunschrichtung<br />
<strong>für</strong> Achse 3:<br />
Übungsbeispiel: Manutec h5<br />
2<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
i<br />
4<br />
Z<br />
L1 L2<br />
z1 z<br />
y 2 z<br />
1<br />
y 3<br />
2<br />
y3 z 0<br />
x 1<br />
y 0<br />
x 0<br />
<strong>Robotertechnik</strong><br />
x 2<br />
DH-Parameter <strong>für</strong> die skizzierte Stellung<br />
3<br />
ai 0<br />
L1<br />
L2<br />
0<br />
H<br />
αi 0<br />
0<br />
0<br />
0<br />
<strong>Robotertechnik</strong><br />
di Z<br />
Übungsbeispiel: Bosch SR800<br />
i<br />
1<br />
2<br />
3<br />
4<br />
0<br />
0<br />
-T<br />
L1 L2<br />
z1 y1 x 1<br />
y 2<br />
y 3<br />
z 4<br />
ϑi 0<br />
W2<br />
W3<br />
W4<br />
z 2<br />
z 3<br />
x 3<br />
y 4<br />
x 4<br />
T<br />
VLRob.ppt<br />
Folie 97<br />
Nur <strong>für</strong> Lehrzwecke<br />
α 2<br />
x 2<br />
x 3<br />
z0 y0 x0 y4 z4 x4 DH-Parameter <strong>für</strong> die skizzierte Stellung<br />
ai L1<br />
L2<br />
0<br />
0<br />
αi 0<br />
180°<br />
0<br />
0<br />
di H<br />
0<br />
Z<br />
0<br />
ϑi W1<br />
W2<br />
0<br />
W4<br />
Z<br />
VLRob.ppt<br />
Folie 98<br />
Nur <strong>für</strong> Lehrzwecke
Hauptachsen<br />
H<br />
3<br />
Handachsen<br />
1<br />
2<br />
4<br />
5<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
α 1<br />
y 1<br />
z0 y0 ϑ1x0 <strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Übungsbeispiel: Manutec r 15 - 1<br />
6<br />
Hand:<br />
<strong>Robotertechnik</strong><br />
Übungsbeispiel: Manutec r 15 - 2<br />
L1 L2 L3<br />
ϑ3 =W3-90° x x4 z4 z z 3<br />
x<br />
1<br />
2<br />
5<br />
α3 α4 α5 x1 x2 z3<br />
y4 z5<br />
y2 y3 y5 i<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
DH-Parameter <strong>für</strong> die skizzierte Stellung<br />
ai 0<br />
L1<br />
0<br />
0<br />
0<br />
0<br />
αi -90°<br />
0<br />
-90°<br />
+90°<br />
-90°<br />
0<br />
<strong>Robotertechnik</strong><br />
di H<br />
0<br />
0<br />
L2<br />
0<br />
L3<br />
y 6<br />
ϑi W1<br />
W2<br />
W3 -90°<br />
W4<br />
W5<br />
W6<br />
VLRob.ppt<br />
Folie 99<br />
Nur <strong>für</strong> Lehrzwecke<br />
x6 z6 VLRob.ppt<br />
Folie 100<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Inverses kinematisches Problem<br />
Fragestellung: Welche Gelenkstellungen führen den Endeffektor in eine<br />
vorgegebene Zielstellung?<br />
Direkte Kinematik<br />
(Hintransformation)<br />
Inverse Kinematik<br />
(Rücktransformation)<br />
• Die Berechnungen sind häufig sehr komplex<br />
� Werkzeuge wie Mathematica, Maple V, Matlab werden eingesetzt<br />
• Die Lösungen sind häufig nicht eindeutig (vergl. SCARA-Beispiel)<br />
• Die Rückwärtsrechnung muss schritt haltend, also in Echtzeit, mit der<br />
Bewegung des Roboters erfolgen<br />
• Es existiert kein allgemein anwendbares Lösungsverfahren<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Berechnungsmöglichkeiten<br />
• Analytische Verfahren<br />
• Meist nur <strong>für</strong> Roboter mit einfacher Gelenkanordnung<br />
praktikabel<br />
• Oft werden Matrizen verwendet<br />
• Roboterspezifische, spezielle (analytische) Verfahren<br />
• Gelenkachsen von Robotern liegen oft parallel oder<br />
rechtwinklig zueinander<br />
� Rückrechnung wird wesentlich vereinfacht und ist<br />
manchmal einfacher als das Rechnen mit Matrizen<br />
• Numerische Verfahren<br />
• Die Gelenkparameter werden mit Hilfe eines<br />
Näherungsverfahrens berechnet<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 101<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 102<br />
Nur <strong>für</strong> Lehrzwecke
Vorgehen:<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Analytisches Verfahren von Paul<br />
1. Aufstellen der Vorwärtstransformation nach DH<br />
2. Aufstellen der homogenen Matrix <strong>für</strong> die Zielstellung (Lage)<br />
3. Elementweises Gleichsetzen der Matrizen von<br />
Vorwärtstransformation und Zielstellung<br />
4. Aus den entstehenden Gleichungen intuitiv die geeigneten zur<br />
Bestimmung der Gelenkvariablen heraussuchen<br />
Wenn die Gleichungen nicht ausreichen, kann versucht werden,<br />
zusätzliche Gleichungen aus folgenden Beziehungen zu finden:<br />
0<br />
Tn<br />
0<br />
T1<br />
n<br />
0<br />
T<br />
0<br />
Tn<br />
0<br />
T<br />
1<br />
1•<br />
T2<br />
=<br />
=<br />
=<br />
0<br />
T1<br />
1<br />
T2<br />
2<br />
T3<br />
usw<br />
•<br />
•<br />
•<br />
1<br />
T2<br />
2<br />
T3<br />
L<br />
•<br />
•<br />
2<br />
T3<br />
L<br />
•<br />
•<br />
n−1<br />
Tn<br />
L<br />
•<br />
n−1<br />
Tn<br />
•<br />
n−1<br />
Tn<br />
Paul, R.: Robot Manipulators: Mathematics Programming and Control. MIT-Press: Cambridge (MA), 1981<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 103<br />
Nur <strong>für</strong> Lehrzwecke<br />
Beispiel: Vereinfachter SCARA mit zwei Drehgelenken<br />
Vorwärtstransformation nach DH:<br />
⎛cos(<br />
q1<br />
+ q2)<br />
⎜<br />
0 ⎜ sin( q1<br />
+ q2)<br />
T2<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
P<br />
( q , )<br />
1 q2<br />
⎛cos<br />
ψ<br />
⎜<br />
⎜ sinψ<br />
=<br />
⎜ 0<br />
⎜<br />
⎝ 0<br />
− sin( q1<br />
+ q2)<br />
cos( q1<br />
+ q2)<br />
0<br />
Beschreibung der Zielstellung:<br />
− sinψ<br />
cos ψ<br />
0<br />
0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
x⎞<br />
⎟<br />
y⎟<br />
0⎟<br />
⎟<br />
1⎠<br />
0<br />
0<br />
1<br />
0<br />
L2<br />
cos( q1<br />
+ q2)<br />
+ L1cos<br />
q1⎞<br />
⎟<br />
L2<br />
sin( q1<br />
+ q2)<br />
+ L1sin<br />
q1<br />
⎟<br />
0<br />
⎟<br />
⎟<br />
1<br />
⎠<br />
Gl.<br />
1:<br />
cos ψ = cos( q1<br />
+ q )<br />
Elementweises Gleichsetzen:<br />
2<br />
Gl.<br />
2 : sinψ<br />
= sin( q1<br />
+ q2)<br />
Gl.<br />
3 : − sinψ<br />
= − sin( q1<br />
+ q2)<br />
Gl.<br />
4 : cos ψ = cos( q1<br />
+ q2)<br />
Gl.<br />
5 : x = L1cos<br />
q1<br />
+ L2<br />
cos( q1<br />
+ q2)<br />
Gl.<br />
6 : y = L1sin<br />
q1<br />
+ L2<br />
sin( q1<br />
+ q2)<br />
Gl1und<br />
4 sowie Gl 2 und 3 sind redundant<br />
VLRob.ppt<br />
Folie 104<br />
Nur <strong>für</strong> Lehrzwecke
Bekannt sind: L1, L2, x, y und ψ<br />
Gesucht werden:<br />
Gelenkwinkel q1 und q2<br />
Mit<br />
cos ψ = cos( q1<br />
+ q2)<br />
sinψ<br />
= sin( q1<br />
+ q2)<br />
und<br />
⎛ sin(<br />
ψ)<br />
⎞<br />
ψ = arctan ⎜ ⎟<br />
⎝ cos(<br />
ψ)<br />
⎠<br />
wird<br />
⎛ sin( q1<br />
+ q2)<br />
⎞<br />
ψ = arctan ⎜<br />
⎟<br />
⎝ cos( q1<br />
+ q2)<br />
⎠<br />
also<br />
ψ = q1<br />
+ q2<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Fortsetzung Beispiel<br />
und mit<br />
x = L1cos<br />
q1<br />
+ L2<br />
cos ψ<br />
y = L1sinq1<br />
+ L2<br />
sinψ<br />
gilt<br />
x − L2<br />
cos ψ<br />
cos q1<br />
=<br />
L1<br />
y − L2<br />
sinψ<br />
sinq1<br />
=<br />
L1<br />
und<br />
⎛ sin<br />
q1<br />
= arctan ⎜<br />
⎝ cos<br />
führt zu<br />
<strong>Robotertechnik</strong><br />
Numerische Verfahren<br />
( q1)<br />
( q )<br />
1<br />
⎛ y − L2<br />
sinψ<br />
x − L2<br />
cos ψ ⎞<br />
q1<br />
= atan2 ⎜<br />
,<br />
⎟<br />
⎝ L1<br />
L1<br />
⎠<br />
q2<br />
= ψ − q1<br />
Für das inverse kinematische Problem lässt sich nicht immer eine<br />
analytische Lösung finden<br />
� Dann kommen numerische Verfahren beziehungsweise<br />
Näherungsverfahren zum Einsatz<br />
Am Beispiel des einfachen SCARA mit zwei Drehgelenken soll eines der<br />
numerischen Verfahren vorgestellt werden:<br />
Es gilt: x = L1cos<br />
ϑ1<br />
+ L2<br />
cos(<br />
ϑ1<br />
+ ϑ2)<br />
y = L sinϑ<br />
+ L sin ( ϑ + ϑ )<br />
1 1 2 1 2<br />
mit q1<br />
= ϑ1<br />
und q2<br />
= ϑ2<br />
kann man schreiben :<br />
f1<br />
f2<br />
1 2<br />
( q , q ) = L1cos<br />
q1<br />
+ L2<br />
cos(<br />
q1<br />
+ q2)<br />
1 2<br />
( q , q ) = L1sin<br />
q1<br />
+ L2<br />
sin(<br />
q1<br />
+ q2<br />
)<br />
Wenn man <strong>für</strong> einen Punkt die Lösung kennt, kann man <strong>für</strong> einen<br />
benachbarten Punkt die Lösung näherungsweise berechnen.<br />
Also: bekannte Lösung : P(<br />
x , y ) →<br />
( q , q )<br />
0 0 10 20<br />
gesuchte Lösung : P(<br />
x dx,<br />
y dy)<br />
→ ( q1,<br />
q2)<br />
0+<br />
0+<br />
<strong>Robotertechnik</strong><br />
⎞<br />
⎟<br />
⎠<br />
VLRob.ppt<br />
Folie 105<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 106<br />
Nur <strong>für</strong> Lehrzwecke
dx = x −<br />
dy = y −<br />
dP = J<br />
wobei<br />
Lösungsansatz <strong>für</strong> numerisches Verfahren<br />
Für Funktionen von mehreren Variablen gilt der Satz von Taylor:<br />
x0<br />
y0<br />
( q , q )<br />
1<br />
=<br />
=<br />
2<br />
f1<br />
f2<br />
⎛dx<br />
⎞<br />
dP = ⎜ ⎟<br />
⎝dy<br />
⎠<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
( q , q ) − f1<br />
( q , q )<br />
( q , q ) − f2<br />
( q , q )<br />
Das als Matrize geschrieben<br />
:<br />
1<br />
1<br />
⎛ ∂f<br />
⎜ 1<br />
⎛dx<br />
⎞ ⎜ ∂q<br />
⎜ ⎟ = 1<br />
⎝dy<br />
⎠<br />
⎜ ∂f2<br />
⎜<br />
⎝ ∂q1<br />
∂f1<br />
⎞<br />
⎟<br />
∂q2<br />
⎟ ⎛ dq1<br />
⎞<br />
•<br />
f ⎜<br />
2 dq ⎟<br />
∂ ⎟<br />
⎟<br />
⎝ 2 ⎠<br />
∂q2<br />
⎠<br />
In dem vorigen Ausdruck<br />
kann die sogenannte<br />
Jacobi - Matrix identifiziert<br />
werden (auf 2D reduziert) :<br />
und man kann dann schreiben :<br />
• dQ<br />
2<br />
2<br />
und<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
10<br />
10<br />
20<br />
20<br />
⎛ dq1<br />
⎞<br />
dQ = ⎜<br />
dq ⎟<br />
⎝ 2 ⎠<br />
⎛ ∂f1<br />
∂f<br />
dq 1 ⎞<br />
≈ ⎜<br />
1 dq<br />
q q<br />
2<br />
⎟<br />
⎜<br />
+<br />
⎟<br />
⎝ ∂ 1 ∂ 2 ⎠<br />
⎛ ∂f<br />
≈ ⎜ 2<br />
⎜<br />
dq<br />
q<br />
1 +<br />
⎝ ∂ 1<br />
sind<br />
∂f2<br />
dq<br />
∂q<br />
2<br />
2<br />
<strong>Robotertechnik</strong><br />
Bestimmung der Gelenkkordinaten<br />
• Von einem Punkt (Startpunkt) P0 müssen bekannt sein:<br />
• Die externen Koordinaten (x,y)<br />
• Die Gelenkkoordinaten (q1, q2)<br />
<strong>Robotertechnik</strong><br />
( q , q ) = ( q , q )<br />
⎞<br />
⎟<br />
⎠<br />
1<br />
( q , q ) = ( q , q )<br />
1<br />
2<br />
2<br />
⎛ ∂f<br />
⎜ 1<br />
q<br />
J<br />
⎜ ∂<br />
= 1<br />
⎜ ∂f2<br />
⎜<br />
⎝ ∂q1<br />
• Mittels der Jacobi-Matrix J und ihrer Inversen J -1 können dann die<br />
Gelenkkoordinaten eines Punktes P berechnet werden<br />
10<br />
10<br />
20<br />
20<br />
∂f1<br />
⎞<br />
⎟<br />
∂q2<br />
⎟<br />
∂f2<br />
⎟<br />
⎟<br />
∂q2<br />
⎠<br />
VLRob.ppt<br />
Folie 107<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Voraussetzung:<br />
P und P0 dürfen nicht zu weit auseinander liegen, weil sonst die Näherungen<br />
nach Taylor zu ungenau werden<br />
� Man zerlegt dann die Strecke von P0 nach P in Teilstrecken und wendet<br />
das Verfahren mehrfach an. Damit sich die einzelnen Fehler nicht<br />
addieren, wird nach jedem Schritt eine direkte Transformation<br />
durchgeführt. Von dieser exakten Position aus wird dann weiter gerechnet.<br />
mit<br />
gilt<br />
wobei<br />
und<br />
dP =<br />
J(q1,<br />
q2)<br />
• dQ<br />
-1<br />
dQ = J ( q1,<br />
q2)<br />
• dP<br />
dQ = Q - Q0<br />
dP = P - P0<br />
ist,<br />
und in Teilstrecken<br />
zerlegt werden kann<br />
VLRob.ppt<br />
Folie 108<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Beispiel: Einfacher SCARA - 1<br />
Für den einfachen SCARA mit zwei Drehgelenken sieht die Jacobi-Matrix<br />
wie folgt aus:<br />
⎛−<br />
L1sin<br />
q1<br />
− L2<br />
sin<br />
J = ⎜<br />
⎝ L1cos<br />
q1<br />
+ L2<br />
cos<br />
T ⎛ L2<br />
cos<br />
J<br />
adj<br />
= ⎜<br />
⎝−<br />
L1cos<br />
q1<br />
− L2<br />
und es gilt<br />
-1<br />
1<br />
J =<br />
JD<br />
JD<br />
= L1L<br />
2 sinq2<br />
T<br />
• J<br />
adj<br />
mit JD<br />
( q1<br />
+ q2)<br />
− L2<br />
sin(<br />
q1<br />
+ q2)<br />
( q + q ) L cos(<br />
q + q )<br />
-1<br />
Die Inverse J ist dann so zu gewinnen :<br />
1. Adjunkte bilden<br />
2. Transponierte<br />
bilden<br />
-1<br />
J =<br />
und<br />
1<br />
JD<br />
−1<br />
Q = Q0<br />
+ J • ( P − P0<br />
)<br />
beziehungsweise<br />
1<br />
( q1<br />
+ q2)<br />
L2<br />
sin(<br />
q1<br />
+ q2<br />
)<br />
cos(<br />
q + q ) − L sinq<br />
− L sin(<br />
q + q )<br />
d.h. sinq2<br />
⎛ L2<br />
cos<br />
⎜<br />
⎜−<br />
L1cos<br />
q1<br />
− L2<br />
⎜<br />
⎝<br />
0<br />
⎛ q1<br />
⎞ ⎛ q10<br />
⎞ ⎛Δx<br />
⎞<br />
⎜ ⎟ ⎜ ⎟ −1<br />
⎜ ⎟<br />
⎜q2<br />
⎟ = ⎜q20<br />
⎟ + J • ⎜Δy<br />
⎟<br />
⎜ 0 ⎟ ⎜ 0 ⎟ ⎜ 0 ⎟<br />
⎝ ⎠ ⎝ ⎠ ⎝ ⎠<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
2<br />
1<br />
2<br />
2<br />
als Determinante<br />
von J, und<br />
1<br />
1<br />
2<br />
1<br />
⎞<br />
⎟<br />
⎠<br />
2<br />
darf nicht 0 werden! (gestreckter<br />
Arm, degeneriert)<br />
<strong>Robotertechnik</strong><br />
Beispiel: Einfacher SCARA - 2<br />
<strong>Robotertechnik</strong><br />
1<br />
2<br />
⎞<br />
⎟<br />
⎠<br />
JD<br />
muss ≠ 0 sein<br />
-1<br />
Die obrige Gleichung <strong>für</strong> J aufgeschrieben<br />
in homogener Form <strong>für</strong><br />
2D - Probleme :<br />
( q1<br />
+ q2)<br />
L2<br />
sin(<br />
q1<br />
+ q2<br />
)<br />
cos(<br />
q + q ) − L sinq<br />
− L sin(<br />
q + q )<br />
1<br />
ist <strong>für</strong> den einfachen SCARA mittels homogener Matrizen einfach mit<br />
zu implementieren.<br />
2<br />
1<br />
1<br />
2<br />
0<br />
1<br />
2<br />
VLRob.ppt<br />
Folie 109<br />
Nur <strong>für</strong> Lehrzwecke<br />
0 ⎞<br />
⎟<br />
0 ⎟<br />
J ⎟<br />
D ⎠<br />
Die folgende Folie zeigt die Ergebnisse einer mit Matlab durchgeführten<br />
Näherungsrechnung. Man sieht sehr gut, wie die Näherung zu Beginn<br />
etwas ungenau ist, aber zum Ende der Strecke schnell konvergiert.<br />
Matlab<br />
VLRob.ppt<br />
Folie 110<br />
Nur <strong>für</strong> Lehrzwecke
y-Achse<br />
3<br />
2.95<br />
2.9<br />
2.85<br />
2.8<br />
2.75<br />
2.7<br />
2.65<br />
Ergebnisse einer Näherungsrechnung mit Matlab<br />
Ist<br />
Naeherungsrechnung fuer planaren SCARA<br />
Ziel<br />
2.6<br />
3.5 4 4.5 5 5.5 6 6.5<br />
x-Achse<br />
Mit L1 =4, L2 = 3, q1 = 10°, q2 = 30° folgt:<br />
4.2237 4.2227 2.9623 2.9539<br />
Startposition: x = 6,2374<br />
4.0000 3.9995 3.0000 2.9917<br />
y = 2,6230<br />
4.0000 4.0000 3.0000 3.0000<br />
Gewählte Zielposition: x = 4,0<br />
y = 3,0<br />
L1 = 4, L2 = 3, q10 = 10°, q20 = 30°<br />
Strecken entlang der Achsen in 10 gleiche Teilabschnitte zerlegt<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Soll<br />
Start<br />
5.5662<br />
5.3424<br />
5.1187<br />
4.8949<br />
4.6712<br />
4.4475<br />
<strong>Robotertechnik</strong><br />
Singularitäten<br />
X-Soll<br />
6.2374<br />
6.0136<br />
5.7899<br />
<strong>Robotertechnik</strong><br />
X-Ist<br />
6.2374<br />
5.9806<br />
5.7801<br />
5.5571<br />
5.3361<br />
5.1140<br />
4.8915<br />
4.6687<br />
4.4458<br />
Y-Soll<br />
2.6230<br />
2.6607<br />
2.6984<br />
2.7361<br />
2.7738<br />
2.8115<br />
2.8492<br />
2.8869<br />
2.9246<br />
Y-Ist<br />
2.6230<br />
2.6384<br />
2.6887<br />
2.7255<br />
2.7643<br />
2.8025<br />
2.8405<br />
2.8784<br />
2.9162<br />
VLRob.ppt<br />
Folie 111<br />
Nur <strong>für</strong> Lehrzwecke<br />
Singularitäten sind spezielle Situationen, in denen die mathematische Ermittlung der<br />
Gelenkwinkel nicht möglich ist, beispielsweise bei einer Division durch Null. Diese<br />
Situationen entsprechen besonderen Stellungen des Roboterarmes.<br />
Singuläre Konfigurationen<br />
• Mehrere Achsen liegen in einer Linie.<br />
• Die Drehung einer Achse kann durch<br />
die Gegendrehung einer anderen<br />
Achse kompensiert werden.<br />
• Es existieren unendlich viele<br />
Lösungen <strong>für</strong> die Rücktransformation.<br />
• Ein Freiheitsgrad verloren, da <strong>für</strong><br />
eine Drehachse zwei Gelenke<br />
verwendet werden.<br />
Abhilfe: Kurzzeitig beide Achsen<br />
zu einer zusammenfassen oder<br />
eine Achse „einfrieren“.<br />
Singularität bei Bewegung<br />
• Ein Arm durchläuft eine Stellung, in der die<br />
Winkelgeschwindigkeit eines oder mehrerer<br />
Gelenke unendlich werden müsste, um den<br />
TCP mit der gewünschten Bahngeschwindigkeit<br />
weiterzubewegen.<br />
• Innere Singularitäten treten im Inneren des<br />
Arbeitsraumes auf.<br />
• Randsingularitäten treten am Rand des<br />
Arbeitsbereiches auf.<br />
• Ein Freiheitsgrad geht verloren.<br />
Gesperrte<br />
Richtung<br />
Nicht-singuläre Stellung Randsingularität Innere Singularität<br />
VLRob.ppt<br />
Folie 112<br />
Nur <strong>für</strong> Lehrzwecke
Singuläre Achsstellungen eines 6-Achsen-Knickarmrob.<br />
3<br />
2<br />
1<br />
Start<br />
4<br />
5<br />
6<br />
Achsen<br />
1, 4, 6<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
5<br />
4<br />
3<br />
2<br />
1<br />
Achsen<br />
1, 4<br />
6<br />
3<br />
4<br />
2<br />
1<br />
Achsen<br />
4, 6<br />
<strong>Robotertechnik</strong><br />
5<br />
6<br />
3<br />
4<br />
6<br />
5<br />
Achsen<br />
1, 6<br />
Bahn mit Singularität zur Erreichung eines Ziels<br />
Hindernis,<br />
Arbeitraumbegrenzung<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Start<br />
Ziel<br />
(nicht erreichbar)<br />
Hindernis,<br />
Arbeitraumbegrenzung<br />
� Singularitäten treten im praktischen Betrieb häufig auf.<br />
<strong>Robotertechnik</strong><br />
Singuläre<br />
Stellung<br />
2<br />
1<br />
VLRob.ppt<br />
Folie 113<br />
Nur <strong>für</strong> Lehrzwecke<br />
� Manche Roboter bleiben beim Auftreten einer Singularität einfach stehen.<br />
� Oft bieten die Robotersprachen eine Lösung <strong>für</strong> die kritischen Bereiche an,<br />
z.B. werden durch einen Befehl „SingArea/Wrist“ die Handachsen von Bahnauf<br />
PTP-Steuerung geschaltet, womit die Singularität vermieden wird.<br />
Ziel<br />
VLRob.ppt<br />
Folie 114<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
6. Robotersteuerung<br />
• Aufgaben<br />
• Komponenten<br />
• Betriebsarten<br />
• Arten der Bewegungssteuerung<br />
• Punkt-zu-Punkt-Steuerung (PTP)<br />
• Überschleifen<br />
• Vielpunktsteuerung<br />
• Bahnsteuerung<br />
• Bahninterpolation<br />
• Nachführung der Orientierung<br />
<strong>Robotertechnik</strong><br />
Aufgaben einer Robotersteuerung<br />
Erstellung, Test und<br />
Korrektur von<br />
Programmen<br />
Kommunikation mit dem<br />
Benutzer und mit externen<br />
Fertigungsrechnern<br />
Fehlererkennung und<br />
–diagnose am Roboter<br />
und am Prozess<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Steuerung der<br />
Verfahrbewegungen des<br />
Roboters<br />
Aufnahme und<br />
Auswertung von<br />
Sensorsignalen<br />
<strong>Robotertechnik</strong><br />
Steuerung der<br />
Greiferfunktionen<br />
Steuerung von<br />
Zuführsystemen und<br />
externen Achsen<br />
Synchronisation der<br />
Roboterbewegungen mit<br />
externen Ereignissen<br />
VLRob.ppt<br />
Folie 115<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 116<br />
Nur <strong>für</strong> Lehrzwecke
Bedienen und<br />
Programmierung<br />
Interpolator/Bewegungsst.<br />
Koordinatentransformation<br />
Feininterpolator<br />
Lageregelung<br />
Antriebskomponente<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Struktur einer Robotersteuerung<br />
Kommunikation<br />
Anwendungsprogramme<br />
Daten<br />
Ablaufsteuerung<br />
Interpreter<br />
Wegmeßsystem<br />
Sensordatenverarbeitung<br />
Sensoren<br />
Roboterachse Peripherie<br />
<strong>Robotertechnik</strong><br />
• DNC-Betrieb (Distributed (Direct) Numerical Control):<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
DNC und<br />
Off-line - Programmierung<br />
Aktionssteuerung<br />
Stellglieder<br />
Geber<br />
VLRob.ppt<br />
Folie 117<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Laden und Speichern von Anwenderprogrammen, die an der<br />
Robotersteuerung oder mit einem Off-line – Programmiersystem erstellt<br />
wurden.<br />
• Austausch von Zustandsdaten und Meldungen mit übergeordneten<br />
Steuerungssystemen (Zellenrechner, Leitrechner).<br />
• Datenaustausch mit anderen Steuerungssystemen, z.B. CNC- oder<br />
Mikrocontroller.<br />
• Bedienung:<br />
Kommunikation<br />
• Eingabe von Arbeitsparametern, Programm-Start/-Stopp, Programme<br />
laden/speichern und Betriebsartenwahl (Einrichten, Test, Automatik).<br />
• Programmierkomponente der Robotersteuerung <strong>für</strong> die Erstellung,<br />
Wartung und Verwaltung von Programmen. Die erforderlichen Werkzeuge,<br />
wie Editor, Debugger, Compiler werden bereitgestellt. Programme oder<br />
ausgewählte Stellungen des Roboters beziehungsweise Effektors können<br />
eingegeben oder getestet werden.<br />
VLRob.ppt<br />
Folie 118<br />
Nur <strong>für</strong> Lehrzwecke
Anwendungsprogramme, Ablaufsteuerung und Interpreter<br />
Das Anwendungsprogramm enthält Anweisungen <strong>für</strong><br />
• Bewegungen des Roboters<br />
• Programmablauf (Schleifen, sequenzielle und parallele Verzweigungen)<br />
• Ansteuerung des Effektors (z.B. Greifer)<br />
• Sensordatenverarbeitung und –auswertung<br />
• Arithmetik<br />
• Aktionssteuerung (SPS-Teil)<br />
• Auswertung von Technologiedaten<br />
• Zusatzbaugruppen (Bandsynchronisation, Steuerung von Zusatzachsen)<br />
Das Programm ist oft nach dem Standard IRDATA kodiert.<br />
Ablaufsteuerung und Interpreter:<br />
Die Ablaufsteuerung ist meist mit dem Interpreter identisch.<br />
• Lesen und dekodieren der Anweisungen des Anwenderprogramms.<br />
• Aufrufen der entsprechenden Ausführungsroutinen.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Bewegungssteuerung bzw. Interpolator<br />
• Ansteuerung der jeweils an der Bewegung beteiligten<br />
Handhabungseinrichtungen, beispielsweise Roboter, Förderbänder und<br />
Zusatzachsen wie Drehtische.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 119<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Für Bewegungen zwischen zwei Zielstellungen werden anhand der<br />
programmierten Vorgaben entsprechende Zwischenstellungen berechnet<br />
(interpoliert). Interpolationsarten sind z.B. Punktsteuerung,<br />
Vielpunktsteuerung oder Bahnsteuerung.<br />
P1<br />
P2<br />
P1<br />
Geplante Bewegung Interpolation<br />
P2<br />
VLRob.ppt<br />
Folie 120<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Koordinatentransformation<br />
Es erfolgt die Umrechnung von Weltkoordinaten in Roboterkoordinaten<br />
und umgekehrt.<br />
P1<br />
Interpolation<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
P2<br />
P1<br />
β<br />
Koordinatentransformation<br />
<strong>Robotertechnik</strong><br />
Feininterpolation<br />
<strong>Robotertechnik</strong><br />
α<br />
P2<br />
VLRob.ppt<br />
Folie 121<br />
Nur <strong>für</strong> Lehrzwecke<br />
Für die einzelnen Bewegungsachsen werden spezifische Zwischenpunkte<br />
berechnet.<br />
P1<br />
β<br />
Koordinatentransformation<br />
α<br />
P2<br />
P1<br />
P2<br />
Feininterpolation<br />
VLRob.ppt<br />
Folie 122<br />
Nur <strong>für</strong> Lehrzwecke
Lageregelung und Antriebskomponente<br />
Lageregelung:<br />
• Sie versucht, die Motorposition auf der vom Programm gelieferten<br />
Sollposition festzuhalten.<br />
Antriebskomponente:<br />
• Die Ist-Position wird überwacht und ausgeregelt.<br />
• Die errechneten Werte der Achswinkel oder –wege werden in Motorstrom,<br />
Motorspannungen oder Motorinkremente umgesetzt.<br />
Reglerkaskade <strong>für</strong> einen Servoantrieb:<br />
Sollwerte (Feininterpolator) Leistung<br />
Lage-<br />
Regler<br />
Lage-Istwert<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Drehzahl-<br />
Regler<br />
Strom-<br />
Regler<br />
<strong>Robotertechnik</strong><br />
Motor<br />
Strom ~ Moment<br />
Drehzahl (Geschwindigkeit)<br />
Messung<br />
Sensordatenverarbeitung und Aktionssteuerung<br />
Sensordatenverarbeitung:<br />
• Verarbeitung der Werte von roboterinternen und -externen Sensoren.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 123<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Die Daten werden auf verschiedenen Ebenen der Robotersteuerung benötigt<br />
und weiterverarbeitet.<br />
• Für kurze Reaktionszeiten werden oft die entsprechenden Sensordaten der<br />
Achsregelungsebene direkt zugeführt, z.B. <strong>für</strong> eine Kraft-Momenten-<br />
Sensorik.<br />
Aktionssteuerung:<br />
• Führt die Aktionsbefehle (Weg- und Schaltbedingungen) des<br />
Anwenderprogramms aus, z.B. <strong>für</strong> das Greifen und Festhalten der zu<br />
handhabenden Objekte oder die Ansteuerung von peripheren Einrichtungen.<br />
• Verknüpft entsprechend den Aktionsbefehlen steuerungsinterne und<br />
-externe Prozesssignale, z.B. Bewegungszustand, Endlagenschalter,<br />
Lichtschranken oder Rückmeldungen anderer Steuerungen.<br />
• Erzeugt die Ansteuersignale <strong>für</strong> binäre Stellglieder, wie Schaltschütze,<br />
Einfachantriebe oder Ventile.<br />
Die Aktionssteuerung wird oft auch Anpasssteuerung oder SPS-Teil genannt.<br />
VLRob.ppt<br />
Folie 124<br />
Nur <strong>für</strong> Lehrzwecke
Grundlegende Betriebsarten einer Robotersteuerung<br />
Einrichtbetrieb<br />
Die Einricht-Betriebsart dient zum<br />
• Verfahren des Roboters beim Programmieren und zum<br />
• Bewegen des Roboters durch manuelle Verfahrbefehle, die z.B. nach<br />
einer Störung zum Freifahren des Roboters erforderlich sind.<br />
Automatikbetrieb<br />
Der Automatikbetrieb wird nur <strong>für</strong> den Einsatz des Roboters im<br />
Produktionsprozess genutzt.<br />
• Nur wenige einfache Bedienfunktionen ausführbar, z.B. Programmwahl,<br />
Start, Stopp, Fortsetzung.<br />
• Informationen über das laufende Programm sowie Hinweise und<br />
Fehlermeldungen werden angezeigt.<br />
• Die Programme werden in Originalgeschwindigkeit mit allen Funktionen<br />
abgearbeitet.<br />
Automatikbetrieb setzt voraus, dass die Schutzgitter um die Roboterzelle<br />
geschlossen sind.<br />
Testbetrieb<br />
Programme oder Programmabschnitte werden in Einzelschritten wie im<br />
Automatikbetrieb abgefahren.<br />
Bei verschiedenen Steuerungsversionen gibt es weitere Testbetriebsarten,<br />
zum Beispiel ohne Ansteuerung der Ausgänge zur Peripherie.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Punkt-zu-Punkt (PTP)<br />
• Ohne Interpolation<br />
(asynchron)<br />
• Mit Achsinterpolation<br />
(synchron)<br />
• Mit / ohne<br />
Überschleifen<br />
• Punktschweißen<br />
• Handhabung<br />
(Pick-and-Place)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Arten der Bewegungssteuerung<br />
Vielpunktsteuerung<br />
• Glättung der Bahn<br />
(ähnlich Überschleifen)<br />
Typische Anwendungen<br />
• Spritzlackieren<br />
• Beschichten<br />
• Ausschäumen<br />
<strong>Robotertechnik</strong><br />
Bahnsteuerung<br />
VLRob.ppt<br />
Folie 125<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Linearinterpolation<br />
(manchmal auch PTP<br />
mit Linearinterpolation<br />
genannt)<br />
• Kreisinterpolation<br />
• Splineinterpolation<br />
• Sonderinterpolationen,<br />
z.B. Bezier, Spirale<br />
• Mit / ohne Überschleifen<br />
• Spritzlackieren,<br />
Entgraten<br />
• Lichtbogenschweißen,<br />
Laserschweißen<br />
• Montieren<br />
• Laserschneiden,<br />
Brennschneiden<br />
VLRob.ppt<br />
Folie 126<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Punkt-zu-Punkt - Steuerung<br />
Punkt-zu-Punkt - Steuerung (PTP, Point To Point)<br />
Abspeichern und Anfahren einer Folge diskreter Raumpunkte.<br />
Ideale Bahn<br />
PTP - Jedes Gelenk wird sofort mit<br />
maximaler Geschwindigkeit angesteuert –<br />
die Bewegungen enden unabhängig von<br />
einander (asynchron)<br />
P 0<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
y<br />
P 1<br />
P 2<br />
P 3<br />
PTP mit Überschleifen - Glättung<br />
von Unstetigkeiten (übertrieben gezeichnet)<br />
P 4<br />
PTP mit Achsinterpolation - Alle<br />
Gelenke beginnen und beenden ihre<br />
Bewegungen gemeinsam (synchron)<br />
P 5<br />
x<br />
<strong>Robotertechnik</strong><br />
Überschleifen<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 127<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Beim Überschleifen werden einzelne Positionen nur näherungsweise angefahren<br />
und der Roboter wird an diesen Positionen nicht abgebremst.<br />
• Die Positionen dienen oft nur als Stützpunkte <strong>für</strong> die Bewegungsplanung oder<br />
zum Umfahren von Hindernissen.<br />
• Mittels Überschleiffaktoren kann der Programmierer wählen, wie exakt der<br />
Roboter die Position annähern soll.<br />
• Da der Roboter die Raumpositionen möglichst ohne Veränderung der Geschwindigkeit<br />
durchfährt, reduziert sich der Maschinenverschleiß, der Energieverbrauch<br />
und die Ausführungszeit des Bewegungsprogramms erheblich.<br />
• Bei aktuellen Steuerungen ist Überschleifen zwischen verschiedenen<br />
Interpolationen und<br />
Bahnen möglich.<br />
Zeitersparnis durch Überschleifen:<br />
z<br />
Überschleiffaktor<br />
(Raumkugel)<br />
y<br />
Verfahrweg<br />
x<br />
Geschwindigkeit<br />
Geschwindigkeit<br />
Pos 2 Pos 3 Pos 4<br />
ohne<br />
Überschleifen10<br />
15 20 25 28,5 t [s]<br />
mit<br />
10 15 20 22,5 t [s]<br />
Überschleifen<br />
Quelle: Reis Robotics<br />
28,5 – 22,5<br />
28,5<br />
= 21 %<br />
VLRob.ppt<br />
Folie 128<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Vielpunktsteuerung<br />
Vielpunktsteuerung (MP, Multi Point)<br />
• In einem vorgegeben Taktraster werden den einzelnen Achsen auf der<br />
programmierten Bahn liegende Positionswerte vorgegeben.<br />
• Programmierung erfolgt häufig nach dem Play-Back-Verfahren.<br />
• Dabei werden dem Industrieroboter die auszuführende Bewegungen<br />
durch Handführung bei abgeschalteten Antrieben vorgeführt.<br />
• Die durchfahrenen Positionen der Achsgelenke werden gespeichert.<br />
• Vorteil: Fast keine Programmierkenntnisse erforderlich.<br />
• Nachteil: Änderung / Optimierung einzelner Bahnabschnitte schwierig.<br />
• Typische Anwendungen sind Spritzlackieren oder Sandstrahlen.<br />
Zeitraster bzw. Takt<br />
<strong>Robotertechnik</strong><br />
Programmieren im Play Back mit Programmierarm<br />
• Industrieroboter: Teuer wegen Master-System<br />
• Teleoperation (Master/Slave-Betrieb):<br />
• Rückmeldung von Kräften (Haptik) ist<br />
wünschenswert<br />
• Bei großen Entfernungen zwischen<br />
Master und Slave können<br />
Übertragungsverzögerungen auftreten<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Mit dem Effektor<br />
gefahrene Bahn<br />
Zeitintervall<br />
VLRob.ppt<br />
Folie 129<br />
Nur <strong>für</strong> Lehrzwecke<br />
Von der<br />
Steuerung<br />
erfasste Punkte<br />
Geglättete Bahn<br />
Programmier<br />
-arm mit<br />
leichter<br />
Kinematik<br />
Abbildungen: Naval, M.: Roboter-Praxis. Würzburg, Vogel, 1989<br />
VLRob.ppt<br />
Folie 130<br />
Nur <strong>für</strong> Lehrzwecke
Bahnsteuerung (CP, Continious Path)<br />
• Es werden mathematisch definierte Bewegungsbahnen verfahren.<br />
• Der Interpolator der Bewegungssteuerung ermittelt entsprechend einer<br />
vorgegebenen Bahnfunktion<br />
(Gerade, Kreis, Polynom) Zwischenwerte auf der<br />
programmierten Raumkurve und gibt sie an die<br />
Achsregler.<br />
• Anwendung: Bahnschweißen, Montieren.<br />
D.h. immer da, es auf die exakte Einhaltung<br />
eines vorgeschriebenen Bewegungsauflaufes ankommt.<br />
Linearinterpolation - Die<br />
Bahn zwischen zwei<br />
Punkten wird interpoliert<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Bahnsteuerung<br />
Linearinterpolation mit<br />
Überschleifen - Glättung<br />
von Unstetigkeiten<br />
<strong>Robotertechnik</strong><br />
y<br />
Kreisinterpolation<br />
mit Überschleifen<br />
x<br />
VLRob.ppt<br />
Folie 131<br />
Nur <strong>für</strong> Lehrzwecke<br />
• Entlang der geometrisch beschriebenen Bahn der Werkzeugspitze werden in<br />
äquidistanten Zeitabschnitten Stützstellen gesetzt.<br />
• Die kartesischen Koordinaten der Stützstellen werden in die zugehörigen<br />
Achsstellungswinkel umgerechnet.<br />
• Der Bewegungsablauf zwischen zwei Stützstellen der Bahn wird dann wie bei<br />
PTP so berechnet, dass die Differenzwinkel <strong>für</strong> jede Achse gleichmäßig<br />
innerhalb des Interpolationstaktes verfahren werden.<br />
• Bestimmend <strong>für</strong> die Genauigkeit der Bahnbewegung ist der Interpolationstakt.<br />
• Kurze Interpolationstakte sind insbesondere bei stark gekrümmten Konturen,<br />
hohen Geschwindigkeiten und hoher Bahngenauigkeit von Vorteil. Zusätzlich<br />
wird die Mechanik des Roboters durch weiche Bewegungen entlastet.<br />
Bahnausschnitt mit Stützstellen bei<br />
einem Interpolationstakt von 32 ms<br />
Bahninterpolation<br />
Bahnausschnitt mit Stützstellen bei<br />
einem Interpolationstakt von 16 ms<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 132<br />
Nur <strong>für</strong> Lehrzwecke
Linearinterpolation mit Nachführung der Orientierung<br />
• Bei der Bahnsteuerung mit Linearinterpolation werden die Achsen des<br />
Roboters so gesteuert, dass die Werkzeugspitze auf einer Geraden im Raum<br />
zwischen Bahnanfangspunkt und Bahnendpunkt verfährt.<br />
• Dabei wird sichergestellt, dass sich die Orientierung des Werkzeuges nicht<br />
ändert, sofern am Bahnanfangspunkt und Bahnendpunkt die gleiche<br />
Orientierung programmiert ist.<br />
• Unterscheiden sich die Werkzeugorientierungen von Anfangs- und Endpunkt,<br />
so wird die Anfangsorientierung gleichmäßig über die Bahnlänge in die<br />
Endorientierung übergeführt.<br />
Linearinterpolation mit<br />
Nachführung der<br />
Werkzeugorientierung:<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
P1 P2<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 133<br />
Nur <strong>für</strong> Lehrzwecke<br />
Kreisinterpolation mit Nachführung der Orientierung<br />
• Bei der Bahnsteuerung mit Kreisinterpolation wird die Bahn durch den<br />
Bahnanfangs- und Bahnendpunkt sowie einen Kreishilfspunkt definiert.<br />
• Für Nachführung der Werkzeugorientierung können zwei Verfahren<br />
unterschieden werden:<br />
• Zwischen den Orientierungen des Anfangs und des Endpunkts der<br />
Bahn wird gleichmäßig über die gesamte Bahnlänge interpoliert.<br />
• Nachführung der Orientierung mit zusätzlicher Berücksichtigung der<br />
sich ändernden Orientierung der Bahntangente.<br />
� Bei gleicher Anfangs- und Endorientierung wird eine<br />
Bahnbewegung mit konstanter Orientierung des Werkzeuges zur<br />
Bahntangente bewirkt.<br />
Kreisinterpolation mit<br />
Nachführung der<br />
Werkzeugorientierung:<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 134<br />
Nur <strong>für</strong> Lehrzwecke
Splineinterpolation mit Nachführung der Orientierung<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Aus drucktechnischen Gründen leere Folie!<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 135<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 136<br />
Nur <strong>für</strong> Lehrzwecke
7. Programmierung von Industrierobotern<br />
• Programmierverfahren <strong>für</strong> Industrieroboter<br />
• Merkmale direkter und indirekter Programmierung<br />
• On-line - Programmierung<br />
• Off-line - Programmierung<br />
• Koordinatensysteme <strong>für</strong> die Roboterprogrammierung<br />
• Programmiersprachen <strong>für</strong> Industrieroboter<br />
• IRDATA<br />
• Beispiele <strong>für</strong> die Bewegungsprogrammierung<br />
• Anforderungen an Roboter<br />
• Werkzeugkorrekturen<br />
• Zusatzachsen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Programmierverfahren <strong>für</strong> Industrieroboter<br />
Programmierverfahren <strong>für</strong> Industrieroboter<br />
Direkte Verfahren<br />
On-line - Programmierung<br />
Teach In<br />
Play Back<br />
Sensorgestützt<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Indirekte Verfahren<br />
Off-line - Programmierung<br />
Textuell<br />
CAD-gestützt<br />
<strong>Robotertechnik</strong><br />
Explizit<br />
(bewegungsorientiert)<br />
Implizit<br />
(aufgabenorientiert)<br />
VLRob.ppt<br />
Folie 137<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 138<br />
Nur <strong>für</strong> Lehrzwecke
Merkmale direkter und indirekter Programmierverfahren<br />
On-line - Programmierung<br />
(Direkte Programmierverfahren)<br />
☺ Anschauliche Programmierung in<br />
Arbeitsumgebung<br />
☺ Geringe Programmierkenntnisse<br />
erforderlich<br />
☺ Kollisionen, Ungenauigkeiten, Störungen<br />
werden direkt sichtbar<br />
☺ Arbeitsraum und Objekt müssen nicht<br />
vermessen werden<br />
☺ Testen der Programme am realen System<br />
☺ Erfahrungsschatz der Anwender fließt in<br />
Programmierung ein<br />
� Reales Robotersystem und Anlage<br />
erforderlich - Fertigungsanlage steht<br />
während der Programmierung nicht zur<br />
Verfügung<br />
� Beschränkter Zugriff auf betriebliche<br />
Informationssysteme<br />
� Erstellung komplexer Programme<br />
schwierig<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Off-line - Programmierung)<br />
(Indirekte Programmierverfahren)<br />
☺ Programmierung in der<br />
Arbeitsvorbereitung als Teil der<br />
Fertigungsplanung<br />
☺ Unterstützung des Programmierers<br />
durch intelligente, rechnerbasierte<br />
Hilfsmittel<br />
☺ Testen der Programme durch Simulation<br />
☺ Volle Integration in betriebliche<br />
Informationssysteme möglich<br />
� Rechnermodell von Robotersystem und<br />
Anlagenumgebung erforderlich<br />
� Hohe Kosten durch<br />
Programmiersysteme und CAD-<br />
Unterstützung<br />
� Aufwändige Einarbeitung in die oft<br />
komplexen Programmiersysteme<br />
<strong>Robotertechnik</strong><br />
On-line - Programmierung<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 139<br />
Nur <strong>für</strong> Lehrzwecke<br />
Direkte Verfahren<br />
• Die Erstellung der Programme erfolgt unter Verwendung des Robotersystems.<br />
• Während der Programmierung steht der Roboter nicht zur Verfügung.<br />
Teach In – Programmierung<br />
• Mit Hilfe eines Programmierhandgerätes oder Bedienfelds werden die<br />
gewünschten Raumpunkte manuell angefahren.<br />
• Die Bewegungsinformationen werden als Punkte durch Betätigen einer<br />
Funktionstaste abgespeichert.<br />
• Über die Tastatur können weitere Bewegungsanweisungen, z.B.<br />
Geschwindigkeit oder Beschleunigung, eingegeben werden.<br />
Play-Back – Verfahren (Abfahren und Speichern)<br />
• Die Programmierung erfolgt durch manuelles Führen des Roboters entlang<br />
der gewünschten Raumkurve.<br />
• Dabei werden die Lage-Ist-Werte (Achsstellungen) in einem definierten<br />
Zeitraster in das Programm übernommen.<br />
• Dieses Programmierverfahren kommt bei Vielpunktsteuerungen zur<br />
Anwendung.<br />
Sensorunterstützte Programmierverfahren<br />
• Zur Ermittlung der <strong>für</strong> das Programm benötigten Raumpunkte werden<br />
Sensoren eingesetzt.<br />
Nachteil: Programme sind i.d.R. nicht auf andere Roboter übertragbar!<br />
VLRob.ppt<br />
Folie 140<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Off-line - Programmierung<br />
Indirekte Verfahren<br />
• Erstellung der Programme erfolgt auf gesonderten Rechneranlagen.<br />
Textuelle Programmierung<br />
• Der Programmierer gibt über eine Tastatur das Programm als symbolische<br />
Beschreibung von Operationen und Daten in Form von Zeichenfolgen ein.<br />
• Die Verfahren reichen von der maschinennahen Kodierung bis zu höheren<br />
Roboter-Programmiersprachen.<br />
CAD-unterstützte Programmierverfahren<br />
• Nutzung geometrischer Modelle der am Produktionsprozess beteiligten<br />
Komponenten, z.B. des Werkstücks.<br />
• Die Geometriemodellierung erfolgt unter Verwendung von CAD-Systemen.<br />
• Am Bildschirm werden Funktionen zur Verfügung gestellt, die eine Festlegung<br />
von anzufahrenden Positionen und Verfahrwegen ermöglichen.<br />
• Simulationssysteme ermöglichen die Visualisierung der Roboterbewegungen.<br />
Explizite (bewegungsorientierte) Programmierverfahren<br />
• Alle Bewegungen des Roboters und die Ausführungsparameter (z.B.<br />
Geschwindigkeit, Beschleunigung) werden vom Programmierer vorgegeben.<br />
Implizite (aufgabenorientierte) Programmierverfahren<br />
• Die Programmierung erfolgt durch Beschreibung der Handhabungsaufgabe.<br />
• Die Weginformation wird u.a. vom Programmiersystem unter Verwendung<br />
eines Modells der Roboterzelle (Umweltmodell) selbsttätig abgeleitet.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 141<br />
Nur <strong>für</strong> Lehrzwecke<br />
Vorgehen bei der CAD-gestützten Programmierung<br />
IR-Einsatz<br />
planen<br />
Vorgang 1<br />
Task 1<br />
Task 2<br />
Vorgang 2<br />
Task 1<br />
Task 2<br />
Fertigungszelle<br />
modellieren<br />
IR<br />
Programmieren<br />
<strong>Robotertechnik</strong><br />
IR-Anwendung<br />
Simulieren<br />
Vorort<br />
anpassen<br />
• grafisch-interaktives Arbeiten<br />
• geometrische Daten des Zellenaufbaus aus CAD-Systemen<br />
werden <strong>für</strong> Programmierung und Simulation verwendet<br />
Das System setzt sich zusammen aus:<br />
• Einsatzplanung<br />
• Fertigungszellenentwurf<br />
• Roboterprogrammierung<br />
• Simulation Überprüfung: Funktionalität, Sicherheit (Kollisionen)<br />
VLRob.ppt<br />
Folie 142<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
CAD-gestützte Programmierung<br />
Modellierung einer Fertigungszelle mit CAD (SolidWorks)<br />
Oberfläche einer Robotersimulation<br />
(RobotStudio, ABB)<br />
Quelle: Hesselbach/Krefft, IWF – Uni-Braunschweig<br />
<strong>Robotertechnik</strong><br />
Koordinatensysteme <strong>für</strong> Roboterprogrammierung<br />
Verfahren nach Raumkoordinaten<br />
Achse 2<br />
Kartesische<br />
Koordinaten<br />
Bewegung der Achse 2<br />
Verfahren nach Roboterkoordinaten<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Zylindrische<br />
Koordinaten<br />
Achse 3<br />
Bewegung der Achse 3<br />
Verfahren in Richtung<br />
der Handgelenkachse z<br />
<strong>Robotertechnik</strong><br />
Verfahren nach<br />
Werkzeugkoordinaten<br />
VLRob.ppt<br />
Folie 143<br />
Nur <strong>für</strong> Lehrzwecke<br />
Verfahren in Richtung<br />
der Handgelenkachse x<br />
Nach: Naval, M.: Roboter-Proaxis. Würzburg: Vogel, 1989<br />
VLRob.ppt<br />
Folie 144<br />
Nur <strong>für</strong> Lehrzwecke
Programmiersprachen <strong>für</strong> Industrieroboter (Auswahl)<br />
Name<br />
AL<br />
AL II<br />
AML<br />
BAPS<br />
HELP<br />
MAL<br />
RAPID<br />
ROBEX<br />
RPL<br />
VAL II<br />
Bedeutung<br />
Assembly Language<br />
Assembly Language<br />
A Manipulator<br />
Language<br />
Bewegungs- und<br />
Ablauf- Programmiersprache<br />
High Level Robot<br />
Language<br />
Multipurpose<br />
Assembly Language<br />
Robot EXAPT<br />
Robot Programming<br />
Language<br />
Variable Language<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Entwickler<br />
Stanford<br />
University<br />
Universität<br />
Karlsruhe<br />
IBM<br />
Bosch und<br />
ISW<br />
Stuttgart<br />
DEA<br />
Universität<br />
Mailand<br />
ABB<br />
WZL Aachen<br />
Universität<br />
<strong>Berlin</strong><br />
Unimation<br />
Anmerkungen<br />
Aufbauend auf WAVE. Entwicklung 1974,<br />
Informatikorientiert.<br />
AL mit interaktiver Komponente erweitert. Zusätzl.<br />
Erweiterungen, z.B. automatische Fehlerkorrektur.<br />
Praxisnah mit Datendeklaration, Felder, Sensor- u.<br />
Bewegungsanw., Arithm. und Boolsche Ausdrücke.<br />
Funktionsorientierte Anweisungen in natürlicher<br />
Sprache.<br />
Zwischencode auf IRDATA.<br />
Blockstrukturiert wie Pascal. Echtzeiteigenschaften<br />
wie PEARL. Hybride Programmiermöglichkeiten.<br />
BASIC-ähnlich. Interaktive Programmierung. Starker<br />
theoretischer Einfluss der Informatik.<br />
Funktionsorientierte Anweisungen.<br />
NC-orientiert, geometrische Teilbeschreibung.<br />
Steuerungsinternes und -externes Programmiersyst.<br />
Verfahr-, Kontroll- und Makroanweisungen.<br />
Steuerungsinternes Programmiersystem.<br />
Direkt interpretierbar.<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 145<br />
Nur <strong>für</strong> Lehrzwecke<br />
Struktur der Programmiersprachen <strong>für</strong> Industrieroboter<br />
Die Anweisungen können unterschieden werden in:<br />
• Kontrollanweisungen zur Steuerung des Programmablaufs<br />
• Deklarationen von Hauptprogramm und Unterprogrammen<br />
• Unterprogrammaufrufe<br />
• Sprünge und Schleifen<br />
• Programmverzögerungen und Programmabbruch<br />
• Bewegungsanweisungen<br />
• Bewegungsbefehle, z.B. FAHRE<br />
• Interpolationsart, z.B. KREIS<br />
• Geschwindigkeits- und Beschleunigungsvorgaben<br />
• Zielangaben<br />
• Abbruchbedingungen<br />
• Ein- und Ausgabeanweisungen<br />
• Für binäre Signale, z.B. Greiferansteuerung,<br />
synchronisierende Schaltfunktionen<br />
• Für analoge Signale, z.B. <strong>für</strong> Sensorik<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 146<br />
Nur <strong>für</strong> Lehrzwecke
Roboterprogramm<br />
Sprache Hersteller A<br />
PTP P1<br />
LIN P2 C_LIN<br />
LIN P3:[Z 100]<br />
$OUT[2]=1<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
IRDATA<br />
IRDATA<br />
Roboterprogramm<br />
Sprache Hersteller B<br />
FAHRE PTP NACH P1<br />
FAHRE LINEAR NACH P2<br />
FAHRE LINEAR NACH P<br />
VERSCHIEBE LINEAR NACH (0,0,100,0)<br />
SCHREIBE 1.0<br />
MOVE,0,,0,0;<br />
MOVE,9,,0,0;<br />
GEN, VEC,%ST,0,R,%CON,0.0,R,%CON,0.0,R,%CON,100.0;<br />
MUL,WLD,%ST,0,0,0;<br />
DIGOUT,%CON,2,%CON,1,%CON,1;<br />
Steuerung<br />
Hersteller A<br />
Steuerung<br />
Hersteller B<br />
Simulationssystem<br />
<strong>Robotertechnik</strong><br />
Anwender-<br />
Ebene<br />
Compiler<br />
Maschinen-<br />
Ebene<br />
VDI 2863, Blatt 1: 1987 Programmierung numerisch gesteuerter Handhabungseinrichtungen:<br />
IRDATA, Allgemeiner Aufbau, Satztypen und Übertragung.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Beispiel: manutec h5 (SCARA)<br />
Bedienpannel<br />
Handbediengerät<br />
(HBG)<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 147<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 148<br />
Nur <strong>für</strong> Lehrzwecke
Programmbeispiel: PTP mit RCM / RCS 1<br />
BSP<br />
Fahre in Grundposition<br />
Warte auf Freigabe<br />
Fahre in Entnahmeposition<br />
Schließe Greifer<br />
Entnehme Teil<br />
Fahre in Ablageposition<br />
Öffne Greifer<br />
Ende<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
DEF BSP<br />
END BSP<br />
PTP X-14.0 Y+629.4 Z-32.7<br />
A-133.259 B+0.000 C+180.000<br />
WRT E27 H<br />
PTP X-14.0 Y+639.4 Z-32.7<br />
A-133.259 B+0.000 C+180.000<br />
GRF 2 ZU<br />
PTP X-14.0 Y+639.4 Z+52.7<br />
A-133.259 B+0.000 C+180.000<br />
PTP X-448.6 Y+455.8 Z-53.9<br />
A-90.027 B+0.000 C+180.000<br />
GRF 2 AUF<br />
<strong>Robotertechnik</strong><br />
Beispiel: Bosch SR800 (SCARA)<br />
Steuerschrank<br />
RS 60<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 149<br />
Nur <strong>für</strong> Lehrzwecke<br />
Handbediengerät (HBG)<br />
Off-line<br />
Programmierplatz<br />
VLRob.ppt<br />
Folie 150<br />
Nur <strong>für</strong> Lehrzwecke
Programmerstellung mit R60 <strong>für</strong> SR800<br />
Teach In<br />
Punkte-Datei<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
BEISPIEL<br />
Fahre in Grundposition<br />
Warte auf Freigabe<br />
Fahre in Entnahmeposition<br />
Schließe Greifer<br />
Entnehme Teil<br />
Fahre in Ablageposition<br />
Öffne Greifer<br />
Ende<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
IRDATA- Code<br />
IRDATA - Interpreter<br />
Ausführung<br />
Editor<br />
Quell-Programm<br />
Übersetzer<br />
Lauffähiges<br />
IRDATA-Programm<br />
<strong>Robotertechnik</strong><br />
<strong>Robotertechnik</strong><br />
Programmiersystem<br />
Programmbeispiel: PTP mit SR800<br />
IRDATA -<br />
Schnittstelle<br />
PROGRAMM BEISPIEL<br />
P1 = (100,500,50,45)<br />
P2 = (100,500,30,45)<br />
P3 = (100,520,30,45)<br />
P4 = (150,400,35,45)<br />
AUSGANG BINAER: 2 = Greifer<br />
EINGANG BINAER: 27 = Freigabe<br />
ENDE<br />
FAHRE PTP NACH P1<br />
WARTE BIS Freigabe = 1<br />
FAHRE PTP NACH P2<br />
Greifer = 1<br />
WARTE 1<br />
FAHRE PTP UEBER P3 NACH P4<br />
Greifer = 0<br />
HALT<br />
VLRob.ppt<br />
Folie 151<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 152<br />
Nur <strong>für</strong> Lehrzwecke
200<br />
150<br />
100<br />
50<br />
Programmbeispiel: Bahninterpolation mit SR800<br />
0<br />
P1<br />
PZ<br />
50 100 150 200 250 300 350 400<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Einsatzbereich<br />
Punktschweißen<br />
Bahnschweißen<br />
Bahnschleifen<br />
Entgraten<br />
Beschichten<br />
Lackieren<br />
Kleinteilemontage<br />
Mikromontage<br />
Handhabung an<br />
Schmiedemaschinen<br />
Handhabung an<br />
Werkzeugmaschinen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
P2 P3<br />
PROGRAMM BAHNIPO<br />
ENDE<br />
<strong>Robotertechnik</strong><br />
P1 = (0,0,50,0)<br />
PZ = (35,100,50,0)<br />
P2 = (100,150,50,0)<br />
P3 = (350,150,50,0)<br />
FAHRE PTP NACH P1<br />
FAHRE KREIS(PZ,P2)<br />
FAHRE LINEAR NACH P3<br />
HALT<br />
Beispiele <strong>für</strong> Anforderungen an Roboter<br />
Achszahl<br />
5<br />
5...7<br />
5...7<br />
5...7<br />
6...7<br />
4...7<br />
2...6<br />
4...6<br />
2...6<br />
2...6<br />
Geschwindigkeit<br />
1 m/s<br />
0,02 m/s<br />
0,1 m/s<br />
0,04 m/s<br />
0,3 m/s<br />
1,2 m/s<br />
1 m/s<br />
1 m/s<br />
1,5 m/s<br />
1,5 m/s<br />
Genauigkeit<br />
± 1 mm<br />
± 0,5 mm<br />
± 1 mm<br />
± 0,2 mm<br />
± 1 mm<br />
± 5 mm<br />
± 0,025 mm<br />
± 0,001 mm<br />
± 1 mm<br />
± 0,2 mm<br />
<strong>Robotertechnik</strong><br />
Steuerungsart<br />
Punkt<br />
Bahn<br />
Bahn<br />
Bahn<br />
Bahn /<br />
Vielpunkt<br />
Bahn /<br />
Vielpunkt<br />
Bahn / Punkt<br />
Punkt<br />
Punkt<br />
Bahn / Punkt<br />
VLRob.ppt<br />
Folie 153<br />
Nur <strong>für</strong> Lehrzwecke<br />
Handhabungsmasse<br />
> 20 kg<br />
> 5 kg<br />
> 20 kg<br />
> 20 kg<br />
> 5 kg<br />
< 5 kg<br />
< 5 kg<br />
< 1 g<br />
> 20 kg<br />
> 20 kg<br />
Die Leistungskriterien von Robotern und die Vorgehensweisen bei der Erfassung sind umfassend in der<br />
Europäischen Norm EN 29283 zusammengefasst.<br />
VLRob.ppt<br />
Folie 154<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Schutzraum definieren<br />
<strong>Robotertechnik</strong><br />
Siemens RCM / Manutec:<br />
• Fünf Schutzräume<br />
definierbar<br />
Greifer oder Werkzeug als Effektor<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
• Schutzraumgrenzen<br />
entlang der kartesischen<br />
Koordinaten<br />
• Schutzräume dürfen sich<br />
überlappen<br />
� Eindringen in Schutzraum:<br />
Bremsen fallen ein,<br />
Roboter steht „sofort“<br />
VLRob.ppt<br />
Folie 155<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: Naval, M.: Roboter-Praxis. Würzburg: Vogel, 1989<br />
VLRob.ppt<br />
Folie 156<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Strom –<br />
2 Phasen<br />
und Erde<br />
Drehdurchführung<br />
Luftanschluss<br />
Effektor-Wechselsystem (Fa. RSA)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Quelle: Naval, M.: Roboter-Praxis. Würzburg: Vogel, 1989<br />
<strong>Robotertechnik</strong><br />
ABB – Werkzeugsystem - 1<br />
Signale<br />
Schleifring<br />
(beliebig drehen)<br />
Wasseranschluss –<br />
ein Anschluss und<br />
zwei Rückläufe<br />
Medienschläuche<br />
vom Oberarm<br />
des Roboters<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 157<br />
Nur <strong>für</strong> Lehrzwecke<br />
Werkbild ABB, 2004<br />
VLRob.ppt<br />
Folie 158<br />
Nur <strong>für</strong> Lehrzwecke
Drehdurchführung und<br />
Schleifring decken die<br />
Handgelenkdrehung<br />
und -bewegung ab.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
ABB – Werkzeugsystem - 2<br />
Kabel und Schläuche<br />
sind eng am Roboter<br />
zum oberen Arm verlegt.<br />
Medien führen<br />
durch den<br />
Robotersockel<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Beispiele <strong>für</strong> Greiferkinematiken<br />
Kabel und Schläuche<br />
folgen geschmeidig den<br />
Bewegungen von<br />
Roboterkörper und -arm.<br />
Medien werden am<br />
Robotersockel<br />
angeschlossen<br />
Werkbild ABB, 2004<br />
Scherengreifer Parallelgreifer Doppelexzentergreifer<br />
Schwenkgreifer Zahnradgreifer Futtergreifer<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 159<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: Schraft, Uni Stuttgart, Fraunhofer IPA<br />
VLRob.ppt<br />
Folie 160<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Beispiele <strong>für</strong> ausgeführte Greifer<br />
<strong>Robotertechnik</strong><br />
Schweißzange, Schweißwerkzeugwechsler<br />
Anwendung: Punktschweißen<br />
Handlingsgewicht: 360 kg<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Quelle: Schraft,<br />
Uni Stuttgart,<br />
Fraunhofer IPA<br />
VLRob.ppt<br />
Folie 161<br />
Nur <strong>für</strong> Lehrzwecke<br />
Schweißwerkzeugwechsler:<br />
Für alle gängigen Zangentypen,<br />
adaptierbar an alle Robotertypen<br />
(z.B. ABB, Fanuc, KUKA,<br />
Motoman, Stäubli)<br />
Quelle: IPR, 2004<br />
VLRob.ppt<br />
Folie 162<br />
Nur <strong>für</strong> Lehrzwecke
Die Auswahl von Greifern<br />
erfolgt nach<br />
verschiedenen<br />
Prozessparametern:<br />
• Zykluszeit der<br />
Anwendung,<br />
bestimmt die<br />
Frequenz mit welcher<br />
der Greifer<br />
öffnen/schließen<br />
muss<br />
• Zur Verfügung<br />
stehender Bauraum<br />
• Greifobjekt<br />
++ gut geeignet<br />
+ mäßig geeignet<br />
0 bedingt geeignet<br />
- nicht geeignet<br />
Masse<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Auswahl von Greifern<br />
Abmessung<br />
1 ... 10 kg<br />
0,2 ... 1 kg<br />
10 ... 50 kg<br />
> 50 kg<br />
20 ... 50 mm<br />
50 ... 300 mm<br />
300 ... 1000 mm<br />
Parallelgreifer<br />
++<br />
++<br />
+<br />
0<br />
++<br />
++<br />
++<br />
Schwenkgreifer<br />
++<br />
++<br />
<strong>Robotertechnik</strong><br />
3-Backen-<br />
Greifer<br />
++<br />
++<br />
Sauggreifer<br />
++<br />
++<br />
> 1000 mm<br />
++<br />
++<br />
-<br />
++<br />
glatt<br />
++<br />
++<br />
++<br />
++<br />
Ober- rauh<br />
++<br />
++<br />
++<br />
-<br />
fläche porös<br />
++<br />
0<br />
0<br />
0<br />
empfindlich<br />
0<br />
-<br />
0<br />
++<br />
Rundteile<br />
Scheibe<br />
Kurzzylinder<br />
Welle/Stange<br />
+<br />
++<br />
0<br />
-<br />
++<br />
++<br />
++<br />
++<br />
-<br />
++<br />
++<br />
-<br />
Prismateile<br />
Blockteil<br />
flach/kurz<br />
flach/lang<br />
++<br />
0<br />
-<br />
++<br />
0<br />
0<br />
-<br />
-<br />
-<br />
++<br />
++<br />
++<br />
Kunststoffe<br />
++<br />
0<br />
-<br />
++<br />
Textilien<br />
-<br />
-<br />
-<br />
0<br />
Folien<br />
-<br />
-<br />
-<br />
0<br />
Glas<br />
0<br />
+<br />
+<br />
++<br />
Steingut<br />
0<br />
+<br />
+<br />
0<br />
Quelle: Hesse, Stefan: Greiferanwendungen. Blue Digest on Automation, 1997<br />
Industrieroboter mit Punktschweißzange<br />
ABB Punktschweißpaket:<br />
• Roboter <strong>für</strong> das Punktschweißen<br />
• ABB Schweißsteuerung in Form einer<br />
Zusatzkarte in der Robotersteuerung.<br />
• Zusätzliche Ausrüstung wie<br />
Punktschweißleitung, Steuertafel und<br />
Spannungsversorgung.<br />
• Die Programmierung erfolgt über das<br />
Programmierhandgerät des Roboters:<br />
• Prozessdaten <strong>für</strong><br />
Schweißsteuerung.<br />
• Daten <strong>für</strong> Bewegungssteuerung<br />
des Roboters.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
++<br />
++<br />
++<br />
++<br />
++<br />
<strong>Robotertechnik</strong><br />
++<br />
++<br />
++<br />
+<br />
0<br />
++<br />
++<br />
++<br />
++<br />
++<br />
VLRob.ppt<br />
Folie 163<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: ABB, 2004<br />
VLRob.ppt<br />
Folie 164<br />
Nur <strong>für</strong> Lehrzwecke
Werkzeugkorrektur definieren in BAPS (Bosch)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Quelle: Fa. Bosch (BAPS)<br />
VLRob.ppt<br />
Folie 165<br />
Nur <strong>für</strong> Lehrzwecke<br />
Werkzeugkorrektur definieren in SRCL (Siemens RCM)<br />
T Werkzeugträger<br />
L Werkzeuglänge<br />
D Werkzeugwinkel<br />
Programmbeispiel:<br />
WKZ 0 // Werkzeugkorrektur ausgeschaltet<br />
WZK 1 T 200.0 L 20.0 D 45.0<br />
….<br />
T D<br />
WZK 9 T 150.0 L 0.0 D 0.0<br />
<strong>Robotertechnik</strong><br />
L<br />
VLRob.ppt<br />
Folie 166<br />
Nur <strong>für</strong> Lehrzwecke
Beispiel einer Roboter-/ Zusatzachsenkonfiguration<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Beispiele <strong>für</strong> Zusatzachsen<br />
<strong>Robotertechnik</strong><br />
Quelle: mz robolab GmbH, 2007<br />
Spiralbahnschweißen<br />
VLRob.ppt<br />
Folie 167<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: mz robolab GmbH, 2007<br />
VLRob.ppt<br />
Folie 168<br />
Nur <strong>für</strong> Lehrzwecke
Sensor <strong>für</strong> Bandgeschwindigkeit<br />
Kamera<br />
Synch.-Punkt<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Bandsynchronisation<br />
Steuerung mit<br />
Bandsynchronisation<br />
Bandbewegung<br />
A<br />
Roboter<br />
B<br />
Abbildung: Naval, M.: Roboter-Praxis. Würzburg, Vogel, 1989<br />
<strong>Robotertechnik</strong><br />
Bandsynchronisation<br />
<strong>Robotertechnik</strong><br />
A<br />
B<br />
Programmierte<br />
Bahn (Teach In)<br />
VLRob.ppt<br />
Folie 169<br />
Nur <strong>für</strong> Lehrzwecke<br />
Quelle: Hesselbach /Krefft: Skript Industrieroboter, TU-Braunschweig<br />
VLRob.ppt<br />
Folie 170<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
8. Einsatz von Industrierobotern<br />
• Gründe <strong>für</strong> den Einsatz von Industrierobotern<br />
• Regeln <strong>für</strong> den Robotereinsatz<br />
• Sicherheitstechnik<br />
• Arbeiten mit Robotern<br />
• Roboterarbeitszelle und<br />
Sicherheitseinrichtungen<br />
• Sicherheitsteil von Robotersteuerungen<br />
• Anwendungsbeispiele<br />
• Be- und Entladen von Werkzeugmaschinen<br />
• Bearbeiten von Werkstücken<br />
• Entpallettieren von Motorblöcken<br />
• Handhaben von Ziegel-Rohlingen<br />
• Verpacken von Filtern<br />
• Roboterzelle <strong>für</strong> Laserbearbeitung<br />
<strong>Robotertechnik</strong><br />
Gründe <strong>für</strong> den Einsatz von Industrierobotern<br />
Technische Gründe:<br />
• Flexibilität,<br />
• gleichbleibende Qualität,<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 171<br />
Nur <strong>für</strong> Lehrzwecke<br />
• wegen Aufgabenstellung / Prozessbeherrschung erforderlich.<br />
Wirtschaftliche Gründe:<br />
• Produktivität (Mehrschichtbetrieb),<br />
• Personaleinsparung.<br />
Humanisierungsaspekte:<br />
Entlastung der Menschen von<br />
• gesundheitsschädlicher,<br />
• schwerer,<br />
• gefährlicher,<br />
• monotoner / unangenehmer Arbeit.<br />
(z.B. Beschickung von Pressen)<br />
VLRob.ppt<br />
Folie 172<br />
Nur <strong>für</strong> Lehrzwecke
Einige Regeln <strong>für</strong> den Robotereinsatz<br />
Die Regeln gelten insbesondere <strong>für</strong> den Ersteinsatz.<br />
• Denken Sie an die menschliche Seite des Robotereinsatzes!<br />
Sorgfältig ausgewählte und geplante Projekte scheitern oft, weil sie von den<br />
betroffenen Mitarbeitern nicht akzeptiert werden. Informieren Sie rechtzeitig<br />
alle betroffenen Mitarbeiter, Abteilungen und Vorgesetzte.<br />
• Wählen Sie <strong>für</strong> den Roboter Aufgaben, die sonst niemand machen will<br />
(langweilig, sehr anstrengend, in unzumutbarer Umgebung). Das gilt ganz<br />
besonders <strong>für</strong> den Ersteinsatz im Unternehmen.<br />
• Wählen Sie zuerst möglichst einfache Handhabungs- oder Bearbeitungsaufgaben.<br />
Vertrauen Sie nicht den vielen publizierten Erfolgsstories über<br />
spektakuläre Anwendungen.<br />
• Wählen Sie den besten Partner mit guten Referenzen <strong>für</strong> Ihr Projekt aus.<br />
Achten Sie auf kulanten Service, ein funktionierendes Ersatzteilwesen,<br />
qualitativ hochwertige Schulungen <strong>für</strong> die Mitarbeiter und gute Handbücher.<br />
• Beschaffen Sie ein Komplettsystem und nicht alle Komponenten wie Roboter,<br />
Greifer oder Vorrichtungen aus verschiedenen, völlig unabhängigen Quellen.<br />
• Unterschätzen Sie vermeintlich einfache Aufgaben nicht!<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Hohe<br />
Kräfte und<br />
Geschwindigkeiten<br />
•Not-Aus<br />
•Sichere Steuerung<br />
•Eigensicherheit<br />
Unerwartetes<br />
Loslaufen,<br />
Verhalten<br />
•Kollisionsüberwachung<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Sicherheitstechnik<br />
Kollisionen<br />
mit Werkstücken,<br />
Umgebung<br />
Gefahren<br />
Roboter<br />
Herausschleudern<br />
von Werkstücken<br />
Schutzmaßnahmen<br />
<strong>Robotertechnik</strong><br />
Großer, unerwarteter<br />
Arbeitsraum<br />
Hersteller Betreiber Anwender<br />
•Absperrungen<br />
•Zutritts- u. Zugriffssperren<br />
•Off-line–Programmierung<br />
und Simulation<br />
•Schulung der Mitarbeiter<br />
•Vorsicht, Umsicht,<br />
Sorgfalt<br />
VLRob.ppt<br />
Folie 173<br />
Nur <strong>für</strong> Lehrzwecke<br />
Menschen<br />
im Arbeitsraum<br />
•Beachten der<br />
Sicherheitsvorschriften<br />
und Schutzmaßnahmen<br />
VLRob.ppt<br />
Folie 174<br />
Nur <strong>für</strong> Lehrzwecke
• Aufgrund der Komplexität der Kinematik mit sechs oder mehr Achsen ist<br />
schwer abschätzbar, wohin und wie schnell der Roboter sich bewegen wird.<br />
• Menschen – insbesondere Programmierer - glauben oft, dass sie genau wissen<br />
was der Roboter als nächstes tun wird. Das trifft nicht zu, weil:<br />
• Ein Defekt an einem Achsmotor kann zu völlig unerwarteten Bewegungen<br />
führen.<br />
• Ein defekter oder vom Programm nicht korrekt ausgewerteter Sensor kann<br />
in bestimmten nicht vor gedachten Situationen ein völlig unerwartetes<br />
Verhalten des Roboters auslösen.<br />
• Der oft lang andauernde Einrichtbetrieb mit seinen kleinen<br />
Geschwindigkeiten erzeugt bei Anwendern eine falsche Vorstellung von den<br />
späteren Geschwindigkeiten im Automatikbetrieb.<br />
• Gewöhnung im Umgang mit Robotern verführt im Laufe der Zeit zu Leichtsinn.<br />
Anfänger werden seltener in Unfälle verwickelt, weil sie mit den Geräten<br />
weniger vertraut sind, und sie verhalten sich entsprechend vorsichtig.<br />
• Das Einrichten eines Roboters ist stets von mindestens zwei Personen<br />
durchzuführen, von denen eine die Hand am Not-Aus-Knopf haben muss, um<br />
bei Bedarf die Anlage in kürzester Zeit abzuschalten.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
1 Roboter<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Arbeiten mit Robotern<br />
<strong>Robotertechnik</strong><br />
Arbeitszelle und Sicherheitseinrichtungen<br />
2 Werkzeugaufnahmeflansch<br />
3 Werkstück<br />
4 Kontroll- oder<br />
Stromversorgungseinrichtung<br />
(Bedieneinheit, Hydraulikgruppe)<br />
5 Verbundene Ausrüstung (z.B.<br />
Fördergerät, Rundschalttisch)<br />
6 Schutzeinrichtung (Schutze oder<br />
Schutzeinrichtung mit<br />
Annäherungsreaktion)<br />
7 Eingeschränkter Raum<br />
8 (+7) Maximaler Raum<br />
9 Verriegelte Tür<br />
10 Verriegelungseinrichtung<br />
5<br />
6<br />
4<br />
3<br />
10<br />
9<br />
5<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 175<br />
Nur <strong>für</strong> Lehrzwecke<br />
Nach DIN EN 775, 1992<br />
Definition der Sicherheitsanforderung beim Einsatz von Industrierobotern.<br />
3<br />
2<br />
1<br />
7<br />
8<br />
4 4<br />
3<br />
6<br />
5<br />
VLRob.ppt<br />
Folie 176<br />
Nur <strong>für</strong> Lehrzwecke
Sicherheitsteil von Robotersteuerungen<br />
Zum Sicherheitsteil einer Robotersteuerung gehören unter anderem:<br />
• Hard- und Softwareendschalter <strong>für</strong> alle Achsen<br />
• Betriebsartenwahlschalter (Schlüsselschalter)<br />
• Überwachung der Schaltsysteme <strong>für</strong> Zustimmungsschalter,<br />
Notausschalter<br />
• Überwachung der Geschwindigkeiten im Einrichtbetrieb<br />
• Einschaltdiagnose <strong>für</strong> alle kontaktbehafteten Schaltvorgänge, die<br />
Sicherheitsfunktionen übernehmen (z.B. Antriebe ausschalten)<br />
• Watch-Dog-Funktionen<br />
• Spannungs- und Temperaturüberwachung<br />
• Fail Save - Verhalten<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Be- und Entladen von Werkzeugmaschinen<br />
Kleinteile <strong>für</strong> Fahrzeugbau handhaben:<br />
Systemlieferant / System supplier: KUKA Automatisering + Robots N.V., B-3530 Houthalen<br />
KUKA Roboter GmbH · Blücherstr. 144 · D-86165 Augsburg · Tel. +49-8 21/7 97-0 · Fax -16 16 ·<br />
http://www.kuka-roboter.de (R13.01.029 DE (11) 07.98)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 177<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 178<br />
Nur <strong>für</strong> Lehrzwecke
Bearbeiten von Werkstücken mit Robotern<br />
Handhaben von Pneumatik-Ventilen beim Schleifen und Polieren:<br />
Systemlieferant / System supplier: Atlantique, D-26624 Südbrookmerland<br />
KUKA Roboter GmbH · Blücherstr. 144 · D-86165 Augsburg · Tel. +49-8 21/7 97-0 · Fax -16 16 ·<br />
http://www.kuka-roboter.de (R13.01.019 DE (07) 07.98)<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Entpalettieren von Motorblöcken<br />
Erkennung der Teile mittels Visionsystem:<br />
Systemlieferant / System supplier: KUKA Schweissanlagen GmbH, D-86165 Augsburg<br />
KUKA Roboter GmbH · Blücherstr. 144 · D-86165 Augsburg · Tel. +49-8 21/7 97-0 · Fax -16 16 ·<br />
http://www.kuka-roboter.de (R13.01.034 DE (11) 07.98)<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 179<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 180<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Handhaben von Ziegel-Rohlingen<br />
Roboter mit CCD-Kamera handhabt unterschiedliche Dachziegel-Rohlinge:<br />
Setzen der Ziegel vor dem Einlauf zum<br />
Brennofen. Mit einer CCD-Kamera wird die<br />
Position und Drehlage der ungeordnet<br />
zugeführten Ziegel erfasst und an den<br />
Roboter gemeldet. Es müssen etwa 20 verschiedene Ziegeltypen in zwei Farbversionen<br />
erkannt und gegriffen werden. Für die verschiedenen Grundformen der Ziegel sind<br />
entsprechende Greifer über ein Wechselsystem verfügbar.<br />
Direkt hinter dem Reinraum legt<br />
der Verpackungsroboter die<br />
Dialyse-Filter seitlich überlappend<br />
im Schuppenmuster in<br />
Kartons ein.<br />
Quelle: Kroth, E.: Reis GmbH & Co., 63785 Obernburg, Tel. (0 60 22) 5 03-0, Fax (0 60 22) 5 03-1 10.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Verpacken von Filtern<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 181<br />
Nur <strong>für</strong> Lehrzwecke<br />
Endverpackung von Dialyse-Filtern:<br />
Die Dialyse-Filter werden weltweit zur Blutreinigung eingesetzt. Fresenius-Konzern,<br />
Produktionsstandort St. Wendel: Einsatz von drei sechsachsigen Knickarmrobotern.<br />
Der mit einem Multifunktionswerkzeug<br />
ausgestattete<br />
Palettierroboter handhabt leere<br />
und gefüllte Kartons, Klappboxen<br />
sowie Leerpaletten.<br />
Die angetriebene Rollenbahn<br />
schiebt volle Europaletten auf<br />
den Drehtisch der<br />
Wickelstation.<br />
Quelle: Reis Robotics, Obernburg, 7/2000<br />
VLRob.ppt<br />
Folie 182<br />
Nur <strong>für</strong> Lehrzwecke
Roboterzelle <strong>für</strong> Laserbearbeitung<br />
Schneiden von 3D-Kunststoffbauteilen und Textilien mit CO 2-Laser:<br />
• 5-achsiger Knickarmroboter mit auf Achse 3<br />
montiertem CO2-Laser.<br />
• Der austretende Laserstrahl wird über<br />
Umlenkspiegel in die Kopfachse zur<br />
Schneidoptik geführt.<br />
• Zusätzlich wird Prozessgas an die Wirkstelle<br />
geleitet.<br />
• Die Programmierung erfolgt über Teach In<br />
mit Programmierhandgerät und „6D-Maus“<br />
an der Kopfachse.<br />
• Gespeicherte Programme sind über kodierte<br />
Teileaufnahmen abrufbar.<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
• Bearbeitungszelle mit Einlegebereich, Roboterarbeitsbereich<br />
sowie Steuerungs- und Filterbereich.<br />
• Teilezufuhr mittels Drehtisch oder Doppelschiebetisch.<br />
• Das Spannen der Bauteile erfolgt mittels Sauger oder<br />
pneumatische Spanneinrichtungen.<br />
• Entstehende Schneidgase werden abgesaugt und<br />
über Filtereinrichtungen gereinigt und aufbereitet.<br />
• Große, mit bruchfestem Glas ausgestattete Fenster<br />
ermöglichen das Beobachten des Arbeitsprozesses.<br />
Quelle: Maier, S.: Reis Robotics, Obernburg, März 2000<br />
<strong>Robotertechnik</strong><br />
Aus drucktechnischen Gründen leere Folie!<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 183<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 184<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
9. Mobile, autonome Roboter<br />
• Abgrenzung Industrieroboter – mobile Roboter<br />
• Begriffe Mobilität und Autonomie in der <strong>Robotertechnik</strong><br />
• Steuerungsarchitekturen<br />
•Sense-Plan-Act – Architektur<br />
•Subsumptions - Architektur<br />
•Architekturbeispiel Subsumption<br />
• Experimentsystem „Rug Warrior“<br />
Industrieroboter<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Abgrenzung, Definition<br />
• Arbeiten in stark strukturierten und kontrollierten Umgebungen<br />
(z.B. an von Menschen geschaffenen Fabrikarbeitsplätzen).<br />
• Stationäre Bewegungsautomaten mit mehreren Achsen, deren<br />
Bewegungen frei programmierbar oder sensorgeführt sind.<br />
• Sämtliche Abläufe sind weitgehend vorhersagbar und zeigen<br />
wenig Variation.<br />
Mobile Roboter<br />
• Arbeiten in teilweise oder vollständig unstrukturierten und<br />
unkontrollierten Umgebungen.<br />
(z.B. Flughäfen, Bibliotheken, Krankenhäusern, Wohnungen,<br />
unter Wasser oder sogar auf dem Mars)<br />
• Verfolgen mehr oder weniger genau vorgegebene Ziele, zeigen<br />
also Verhalten.<br />
• Die Abläufe variieren und sind häufig nicht vorhersagbar.<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 185<br />
Nur <strong>für</strong> Lehrzwecke<br />
VLRob.ppt<br />
Folie 186<br />
Nur <strong>für</strong> Lehrzwecke
Mobile Roboter<br />
Mobilität und Autonomie bei Robotern<br />
• Arbeiten ein fest vorgegebenes Programm ab<br />
• Verändern ihren Standort durch Lokomotion<br />
� Automatisiertes spur gebundenes Fahrzeug<br />
(Automated Guided Vehicle – AGV)<br />
• Arbeiten in teilweise angepassten Umgebungen<br />
• Werden häufig mit Induktionsschleifen oder Baken geführt<br />
• Sind unflexibel und empfindlich gegenüber Veränderungen der Umwelt<br />
(Veränderungen der Fahrrouten sind teuer)<br />
Autonome mobile Roboter<br />
• Bewegen sich frei in einer Umgebung umher<br />
• Positionieren sich selbst <strong>für</strong> ihre Arbeit<br />
• Passen sich Veränderungen der Umwelt an<br />
• Lernen aus Erfahrungen und entwickeln ein<br />
eigenes Weltbild<br />
• Ziehen Schlussfolgerungen und besitzen<br />
Entscheidungsfreiheit<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Steuerungsarchitektur: Sense-Plan-Act<br />
<strong>Robotertechnik</strong><br />
Entwurf eines Roboters <strong>für</strong><br />
die häusliche Pflege<br />
(Fraunhofer IPA)<br />
Wahrnehmen<br />
Welt Sensoren (Sensordaten erfassen, aufbereiten) Datenfluss<br />
Modellieren<br />
(Aussagen über den Weltzustand)<br />
Planen<br />
(Verfolgen eines Ziels)<br />
Ausführen<br />
(Ziel in Aktionen zerlegen)<br />
VLRob.ppt<br />
Folie 187<br />
Nur <strong>für</strong> Lehrzwecke<br />
Kontrollfluss<br />
Agieren<br />
(Steuerung der Aktoren) Aktoren Welt<br />
Vorteile:<br />
• Auf der Grundlage des Weltmodells können Optimierungen erfolgen<br />
(z.B. optimalen Weg ermitteln).<br />
• Garantien über die Qualität der Aufgabenlösung sind möglich<br />
(z.B. Aufgabe in vorgegebener Zeit gelöst).<br />
Nachteile:<br />
• Alle Module sind miteinander verzahnt beziehungsweise voneinander abhängig.<br />
• Sequentielle Abarbeitung der Schichten und dadurch lange Reaktionszeiten.<br />
• Aufwändige, schwierige und unflexible Erstellung und Pflege des Weltmodells.<br />
• Veränderungen der Umgebung erfordern Anpassung des Weltmodells.<br />
VLRob.ppt<br />
Folie 188<br />
Nur <strong>für</strong> Lehrzwecke
Steuerungsarchitektur: Subsumption<br />
Sensoren<br />
Sensordaten-Verarbtg.<br />
Prinzip:<br />
Umherfahren<br />
• Es werden voneinander unabhängige Verhaltenskomponenten als kurze Sensor-Aktor –<br />
Schleifen implementiert.<br />
• Entscheidungen höherer Ordnung unterdrücken Entscheidungen niederer Ordnung<br />
(Subsumption).<br />
Vorteile:<br />
• Es wird kein Weltmodell benötigt („die Welt ist das Modell“).<br />
• Sensordaten wirken unmittelbar und schnell auf Aktoren.<br />
• Das System kann mit mehrfachen, auch konkurrierenden Zielsetzungen umgehen.<br />
• Einfacher Entwurf und Implementierung, da jede Ebene <strong>für</strong> sich betrachtet werden kann.<br />
• Robustes Verhalten, da die Ebenen voneinander unabhängig sind.<br />
Nachteile:<br />
• Pläne und Optimierungen sind schwer implementierbar.<br />
� Mischarchitekturen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Kollisionen vermeiden<br />
Objekte identifizieren<br />
Welt<br />
Ziel suchen<br />
Zum Ziel fahren<br />
Welt<br />
Ein Roboter soll:<br />
Umgebung kartieren<br />
Verhaltensfusion<br />
<strong>Robotertechnik</strong><br />
Aktor-Ansteuerung<br />
Aktoren<br />
Beispiel einer einfachen Subsumption<br />
Bumper Flüchten<br />
IR-Detektoren<br />
Fotozellen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
� Bei Kollisionen ausweichen/flüchten<br />
� Kollisionen mit Gegenständen vermeiden<br />
� Einer Lichtquelle folgen<br />
� Umherfahren<br />
Vermeiden<br />
Verfolgen<br />
Umherfahren<br />
Umherfahren: Sorgt da<strong>für</strong>, dass der Roboter immer in Bewegung bleibt.<br />
S<br />
S<br />
<strong>Robotertechnik</strong><br />
Datenfluss<br />
Kontrollfluss<br />
VLRob.ppt<br />
Folie 189<br />
Nur <strong>für</strong> Lehrzwecke<br />
S Motoren<br />
Verfolgen: Der Roboter dreht sich aufgrund einer gemessenen Helligkeitsdifferenz in<br />
Richtung Lichtquelle.<br />
Vermeiden: Wenn mittels Infrarot-Detektoren vorne ein Hindernis entdeckt wird, dreht<br />
sich der Roboter vom Hindernis weg.<br />
Flüchten: Wird eine Kollision festgestellt, ermittelt der Roboter die Richtung des<br />
Hindernisses, setzt etwas zurück und dreht sich dann vom Hindernis weg.<br />
VLRob.ppt<br />
Folie 190<br />
Nur <strong>für</strong> Lehrzwecke
Forts. Beispiel: Verhaltenskomponente „Flüchten“<br />
Zustandsgraph von „Flüchten“:<br />
Timeout<br />
Kollision<br />
links<br />
4<br />
Rechts<br />
drehen<br />
1<br />
Warten<br />
auf Bumper<br />
Kollision<br />
vorne<br />
3<br />
Zurücksetzen<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
Timeout<br />
Kollision<br />
rechts<br />
2<br />
Links<br />
drehen<br />
Timeout<br />
void escape() {<br />
while(1) {<br />
bump_check();<br />
/* Bumper abfragen */<br />
If (bump_left && bump_right) {<br />
/* D.H. Kollision vorne */<br />
escape_output_flag = 1;<br />
escape_command = BACKWARD;<br />
/* Fahre rueckwaerts */<br />
sleep(0.2);<br />
/* Fahre 0,2 sec lang */<br />
escape_command = LEFT_TURN;<br />
/* Fahre jetzt nach links */<br />
sleep(0,5);<br />
/* fuer 0,5 sec links drehen*/<br />
} else if {<br />
…<br />
/* D.H. Kollision links */<br />
…<br />
/* D.H. Kollision rechts */<br />
…<br />
}<br />
<strong>Robotertechnik</strong><br />
Forts. Beispiel: Verhaltensfusion / Subsumption<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 191<br />
Nur <strong>für</strong> Lehrzwecke<br />
/* Die Verhaltensfusion bzw. Subsumption */<br />
void fusion() {<br />
while(1) {<br />
if (escape_output_flag == 1) { /* Fahrwunsch Kollision */<br />
drive_command = escape_command;<br />
}<br />
else {<br />
if (avoid_output_flag == 1) { /* Fahrwunsch Vermeiden */<br />
drive_command = avoid_command;<br />
}<br />
else {<br />
if (follow_output_flag == 1) { /* Fahrw. Lichtquelle */<br />
drive_command = follow_command;<br />
}<br />
else {<br />
drive_command = STOP; /* Kein Fahrwunsch vorh. */<br />
}<br />
}<br />
}<br />
}<br />
}<br />
VLRob.ppt<br />
Folie 192<br />
Nur <strong>für</strong> Lehrzwecke
Experimentsystem „Rug Warrior“<br />
Vom Massachusetts Institute of Technology (MIT) entwickelter mobiler<br />
Roboter mit Programmiersystem, Mikrocontroller, Sensoren, Aktoren<br />
(optional)<br />
• 8-Bit Mikrocontroller vom Typ 68HC11 mit 32 KByte RAM<br />
• Host (PC) als Editor und Compiler <strong>für</strong> Interactive C (IC) – Programme<br />
• Abarbeitung der geladenen Programme mittels Programmcode-Interpreter<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Sensoren und Aktoren des Rug Warrior<br />
Mikrofon<br />
Piezosummer<br />
Drei Bumper<br />
PC-Anschluss<br />
(serielle Schnittstelle)<br />
LC-Anzeige<br />
Leuchtdioden<br />
Aktoren:<br />
• Zwei Gleichstrommotoren zum<br />
antreiben der Räder<br />
• Einzelansteuerung der Motoren<br />
durch Pulsweitenmodulation<br />
(PWM)<br />
• Zweizeilige alphanumerische LC-<br />
Anzeige<br />
• Vier Leuchtdioden <strong>für</strong> Diagnose<br />
• Piezosummer<br />
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
<strong>Robotertechnik</strong><br />
Fotowiderstand links<br />
IR-Sender links<br />
IR-Empfänger<br />
IR-Sender Rechts<br />
Fotowiderstand rechts<br />
VLRob.ppt<br />
Folie 193<br />
Nur <strong>für</strong> Lehrzwecke<br />
Sensoren:<br />
• Rad-Encoder an jedem Antriebsrad<br />
• Zwei Fotowiderstände zur Messung der<br />
Helligkeit<br />
• Zwei Infrarotsensoren an der Vorderseite<br />
zur Hindernisdetektion<br />
• Bumper: Drei Mikroschalter zur<br />
Kollisionserkennung<br />
• Mikrofon zur Geräuscherkennung<br />
VLRob.ppt<br />
Folie 194<br />
Nur <strong>für</strong> Lehrzwecke
<strong>Beuth</strong> <strong>Hochschule</strong> <strong>für</strong> <strong>Technik</strong> <strong>Berlin</strong><br />
Fachbereich VI - Informatik und Medien<br />
Linnemann, WiSe 2012/2013<br />
10. Ausblick und Trends<br />
• Synthese neuer Kinematiken<br />
• Sensortechnik und Sensorintegration (maschinelles Sehen)<br />
• Regelungstechnik, neue Ansätze in Bahnverhalten und<br />
Roboterdynamik<br />
• Bedienung, Programmierung von Robotern und neue Konzepte<br />
<strong>für</strong> die Mensch-Maschine-Schnittstelle<br />
• Kommunikation zwischen internen und externen<br />
Systemkomponenten<br />
• Standardisierung von Schnittstellen<br />
• Weiterentwicklung der Sicherheitstechnik<br />
• Technologien <strong>für</strong> neue Applikationen<br />
• Laserbearbeitung<br />
• Roboterassistenten (Cobots)<br />
• Mobile autonome Roboter<br />
• Servicerobotik<br />
• Unterhaltungsbranche<br />
<strong>Robotertechnik</strong><br />
VLRob.ppt<br />
Folie 195<br />
Nur <strong>für</strong> Lehrzwecke