Title data
Groth, Christian:
Online-Adaption und synchronisierte Ausführung einmalig demonstrierter Roboterverhalten.
Bayreuth
,
2016
. - 160 P.
(
Doctoral thesis,
2016
, University of Bayreuth, Faculty of Mathematics, Physics and Computer Sciences)
|
|||||||||
Download (94MB)
|
Abstract
Roboter sind im Bereich der vollautomatisierten Großindustrie weit verbreitet. In kleinen und mittelständischen Unternehmen sowie im Haushalt sind insbesondere Industrieroboter jedoch kaum anzutreffen. Einer der Hauptgründe hierfür liegt in der komplexen und langwierigen Programmierung der Roboter, die nur von Experten durchgeführt werden kann. Um die Akzeptanz und Verbreitung von Robotern zu fördern, besteht daher Bedarf an intuitiven und transparenten Programmiermethoden für Roboter. In dieser Arbeit werden zwei Ziele verfolgt. Zum einen werden Verfahren entwickelt, die eine intuitive Programmierung eines Industrieroboters erlauben, so dass dies auch für Nicht-Experten möglich ist. Zum anderen soll die Häufigkeit der Neuprogrammierung von Aufgaben gesenkt werden, um die zeitliche Belastung für den Programmierer zu reduzieren und die Wirtschaftlichkeit für kleine und mittelständische Unternehmen zu erhöhen. Um den Aspekt der Programmierung von Robotern intuitiver zu gestalten, werden zwei Methoden vorgestellt. Bei beiden stellt der Benutzer eine einzige Demonstration zur Verfügung (Single-Shot Learning), indem er den Roboter durch die Aufgabe führt. Diese Demonstration wird gespeichert und kann an geänderte Randbedingungen, wie beispielsweise veränderte Positionen und Orientierungen der Objekte, adaptiert werden, so dass die Aufgabe vom Roboter auch in neuen, sensorerfassten Situationen erfolgreich ausgeführt werden kann. Dazu betrachtet die erste Methode die Trajektorie des Roboters als Kette von Partikeln, die mit der Umwelt verbunden sind. Die Erstellung dieser Verbindungen erfolgt durch unterschiedliche Ansätze. Verändern sich die Randbedingungen, befinden sich die Partikel der Trajektorie nicht mehr im Gleichgewicht und es entstehen Kräfte und Momente, welche die Partikel in Bewegung versetzen. Aufgrund dieser Bewegungen verändern sich wiederum die Kräfte und Momente. Das Ergebnis dieser Wechselwirkungen wird mit Hilfe einer Partikelsimulation numerisch ermittelt und ermöglicht die Online-Reproduktion der Aufgabe unter geänderten Randbedingungen. Die zweite Methode stellt eine analytische Näherung dessen dar, indem sie die Trajektorie in werkstückbezogene Segmente und Transfersegmente klassifiziert. Bei Veränderung der Randbedingungen werden die objektbezogenen Segmente der Trajektorie entsprechend der Änderung ihres Bezugssystems transformiert. Anschließend werden die Transferbewegungen hinsichtlich der veränderten Objektpositionen adaptiert und an den Schnittstellen angeglichen, um eine Glatte Bewegung zu erzeugen. Zur Reduzierung der Programmierhäufigkeit wird eine verhaltensbasierte Architektur für Industrieroboter vorgestellt. Die vom Benutzer demonstrierten Aufgaben werden als Verhalten gespeichert und können erneut ausgeführt werden, sobald alle notwendigen Ressourcen für die Aufgabe verfügbar sind. Die Ermittlung dieser Ressourcen geschieht dabei automatisch und dient auch der Synchronisation der Verhalten untereinander. Aufgrund der entwickelten prozessbasierten Ausführung ist es möglich, mehrere Aufgaben mit dem Roboter quasiparallel auszuführen, sie zu unterbrechen und konsistent wieder aufzunehmen. Sowohl die intuitive Programmierung als auch die verhaltensbasierte Ausführung von Aufgaben werden in verschiedenen Experimenten untersucht. Mit Hilfe eines Prototypen werden virtuelle, sowie Realwelt-Experimente an einem Roboterarm durchgeführt und die Verfahren qualitativ und quantitativ evaluiert. Die Ergebnisse zeigen eine hohe Ähnlichkeit zwischen den vom Benutzer demonstrierten Trajektorien und den durch die Adaption erzeugten Trajektorien. Zudem zeigt sich, dass obwohl lediglich eine einzige Demonstration der Aufgabe ohne zusätzliche Informationen bereitgestellt wird, dies dennoch zur intuitiven Programmierung vieler Aufgaben aus den anvisierten Domänen ausreicht. In Kombination mit der verhaltensbasierten Reproduktion kann der Roboter differenziert auf verschiedene Situationen reagieren und auch mehrerer Aufgaben ohne Neuprogrammierung ausführen, indem er online zwischen diesen wechselt, was den Aufwand für den Benutzer minimiert.
Abstract in another language
The use of robots is well established in fully automated assembly lines of big companies. But robots are rarely used in small and medium enterprises or in the household. This is mainly due to their tedious and complicated programming, which is only feasible for experts. To faciliate the usage of robots in new areas, there needs to be a simple and intuitive way to program a robot. The contribution of this work is twofold. On the one hand, intuitive methods to program a robot by demonstration are developed, which allow even non-experts to program new abilities to the robot. On the other hand, a method is developed, which reduces the workload for the user by lowering the frequency of required programmings of the robot. Both aspects will help to increase the efficiency of robots in small and medium enterprises. In this work, two approaches are proposed in order to simplify the programming of robots. Both rely on just a single demonstration of the task, which is provided by guiding the robot through the task (single-shot learning). This demonstration can be adapted online to altered constraints, like modified object positions and orientations, which allows the robot to fullfill a task in an unknown situation. In the first method, the trajectory is considered as a chain of particles, which are linked to each other and to objects in various ways. Due to these links, the particles of the trajectory will experience forces and torques, if an object changes its position or orientation. These forces and torques result in a movement of the trajectory particles, which in turn changes the resulting forces and torques. The outcome of these interactions can be calculated in a particle simulation, which enables the fulfilment of a task under changed constraints. The second method is an analytical approximation of the first approach. The trajectory is divided into segments, which can be classified as object-related movements or transfer movements between objects. Under changed constraints, the object-related segments will we transformed accordingly to the modification of the object poses. Afterwards the transfer movements are constructed correspondingly to the object poses. A blending of the segments is applied to generate smooth trajectories. In order to reduce the frequency of programming by the user, a behavior-based architecture is proposed. Every demonstration of a task is stored as a behavior, which can be adapted and executed, if all required resources can be provided. These resources are identified by the system automatically and are also used to synchronize the execution of the behaviors. By utilizing a process-based execution model, several tasks can be executed by the robot in parallel and each task can be consistently interrupted and resumed. Both intuitive programming approaches and the behavior-based execution of tasks are investigated in various experiments. A prototype was developed, which is capable of executing simulated and real-world experiments in order to receive a qualitative and quantitative evaluation. Both programming approaches allow the teaching of new tasks to the robot, which can be executed under changed constraints, even with just a single demonstration. Besides this, the adapted trajectories show high similarity with the user-demonstrated trajectories. The combination of the intuitive programming approaches and the behavior-based execution of tasks minimizes the workload for the user, since the robot can fulfil several task without reprogramming by just switching between them online.