DE102017216093A1 - Method for parameterizing a robotic manipulator - Google Patents
Method for parameterizing a robotic manipulator Download PDFInfo
- Publication number
- DE102017216093A1 DE102017216093A1 DE102017216093.4A DE102017216093A DE102017216093A1 DE 102017216093 A1 DE102017216093 A1 DE 102017216093A1 DE 102017216093 A DE102017216093 A DE 102017216093A DE 102017216093 A1 DE102017216093 A1 DE 102017216093A1
- Authority
- DE
- Germany
- Prior art keywords
- utility
- parameterization
- configuration file
- parameter
- parameterization process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32126—Hyperlink, access to program modules and to hardware modules in www, web server, browser
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
Verfahren zur Parametrierung eines robotischen Manipulators, mit den folgenden Verfahrensschritten:
- Erstellen einer Konfigurationsdatei (10) in der in maschinenlesbarer Form der Ablauf des Parametrierungsprozesses beschrieben ist,
- wobei die Konfigurationsdatei (10) mindestens einen Hinweis auf ein Dienstprogramm (12a, 12b, 12c) enthält, das beim maschinellen Auslesen der Konfigurationsdatei ausgeführt wird,
- wobei die Konfigurationsdatei (10) ferner mindestens einen Parameter (14a, 14b) definiert, der beim Ausführen des Dienstprogramms (12a, 12b, 12c) von diesem ausgelesen wird.
Method for the parameterization of a robotic manipulator, comprising the following method steps:
- creating a configuration file (10) in which in machine-readable form the sequence of the parameterization process is described,
wherein the configuration file (10) contains at least one reference to a utility program (12a, 12b, 12c) which is executed when the configuration file is read out by machine,
- wherein the configuration file (10) further defines at least one parameter (14a, 14b) which is read out by the utility (12a, 12b, 12c) when it is executed.
Description
Die Erfindung betrifft ein Verfahren zur Parametrierung eines robotischen Manipulators.The invention relates to a method for parameterizing a robotic manipulator.
Heutzutage werden die meisten Roboter und Anlagen immer noch von ausgebildeten Informatikern (Experten) programmiert. Für jede neue Aufgabe wird ein neues Programm geschrieben. Dieses Programm wird mit einer textuellen Programmiersprache geschrieben und ist sehr spezifisch an die Aufgabe angepasst. Meist werden hierbei sehr statische Bedingungen angenommen, die eine hohe Ausführungsgeschwindigkeit erlauben, jedoch die Nähe zu einem Menschen oder sogar Interkation mit ihm verbieten. Auch erfordern kleine Änderungen der Bedingungen Anpassungen am Programm.Today, most robots and equipment are still programmed by trained computer scientists (experts). For each new task, a new program is written. This program is written using a textual programming language and is very specific to the task. In most cases very static conditions are assumed, which allow a high execution speed, but prohibit the proximity to a person or even interaction with him. Also, minor changes in conditions require adjustments to the program.
Um Roboter auch in kleinen und mittelständigen Unternehmen (KMU) und beim Einsatz in Produktionen mit geringen Stückzahlen gewinnbringend nutzen zu können, gibt es neue Ansätze der Programmierung. Ein Experte entwickelt nicht mehr spezifische Programme, sondern möglichst generisch ausgelegte Fertigkeiten. Eine Fertigkeit ist ebenfalls ein Roboterprogramm, das jedoch für einen Aufgabenbereich konzipiert ist, etwa „Schrauben“ oder „Fügen“. Das Programm verfügt typischerweise über mehrere Parameter, mit denen es an die Aufgabenstellung angepasst werden kann.In order to be able to profitably use robots in small and medium-sized enterprises (SMEs) and for use in low-volume productions, there are new approaches to programming. An expert no longer develops specific programs, but rather generically designed skills. A skill is also a robot program, but it is designed for a job, such as "screwing" or "joining". The program typically has several parameters with which it can be adapted to the task.
Dieses Einstellen der Parameter wird als Parametrierung bezeichnet. Ein einfacher Arbeiter (Werker) soll in der Lage sein, eine oder mehrere Fertigkeiten auszuwählen und diese zu parametrieren. Ziel ist es also, dass die Parametrierung möglichst einfach vonstatten geht.This setting of the parameters is referred to as parameterization. A simple worker (worker) should be able to select one or more skills and parameterize them. The aim is therefore that the parameterization is as simple as possible.
Typischerweise wird hierzu eine graphische Benutzeroberfläche verwendet, die einen Parameter anzeigt und zur Eingabe des gewünschten Parameterwertes auffordert.Typically, a graphical user interface is used for this, which displays a parameter and prompts for the input of the desired parameter value.
Neben der einfachen Eingabe von Parameterwerten über Tastatur und Maus ist es häufig intuitiver, schneller und einfacher (externe) Mensch-Maschine-Interfaces (im weiteren mit „MMI“ abgekürzt) zu verwenden. Beispiele für MMI sind Spracherkennungssysteme, nachgiebige Manipulatoren, Joysticks, Augentracker, etc. Verfügt eine Fertigkeit „Schrauben“ etwa über einen Parameter „Lochposition“, so könnte dieser Wert durch Handführen eines Manipulators an das Loch festgelegt werden. Der Parameterwert wird in diesem Fall nicht über eine Tastatur eingegeben, sondern haptisch über einen Manipulator (der sich frei bewegen lässt) festgelegt. Die gemessene Pose des Manipulators wird als Parameterwert verwendet.In addition to the simple input of parameter values via keyboard and mouse, it is often more intuitive to use faster and easier (external) human-machine interfaces (hereinafter abbreviated to "MMI"). Examples of MMIs are speech recognition systems, compliant manipulators, joysticks, eye trackers, etc. If a skill "screws" has a parameter "hole position", for example, this value could be set by manipulating a manipulator to the hole. The parameter value is not entered in this case via a keyboard, but haptically determined by a manipulator (which can be moved freely). The measured pose of the manipulator is used as the parameter value.
Eine Herausforderung besteht nun darin, wie ein MMI in den Parametrierprozess eingebunden werden kann. Hierbei muss festgelegt werden, welches MMI für welchen Parameter benutzt wird, welche Aufgaben dem Nutzer übertragen werden, wie der Nutzer über seine Aufgabe und den Fortgang des Prozesses informiert wird, wie bestimmt wird, welcher Wert für den Parameter verwendet wird, und wie ein MMI konfiguriert wird.One challenge now is how to integrate an MMI in the parameterization process. Here it must be determined which MMI is used for which parameter, which tasks are transferred to the user, how the user is informed about his task and the progress of the process, how it is determined which value is used for the parameter, and how an MMI is configured.
Aus dem Stand der Technik sind folgende Systeme bekannt:
- - „Robot Programming Suite“ (RPS) von ArtiMinds
- - DESK von FRANKA EMIKA,
- - drag&bot von Fraunhofer IPA.
- - Robot Programming Suite (RPS) by ArtiMinds
- - DESK of FRANKA EMIKA,
- - drag & offered by Fraunhofer IPA.
Alle Systeme verwenden einen Manipulator als MMI zur Eingabe von Positionen.All systems use a manipulator as an MMI to enter positions.
Diese Systeme weisen die folgenden Nachteile auf:These systems have the following disadvantages:
Der Parametrierungsprozess ist nicht flexibel gestaltbar, sondern fix in Form eines Programms festgelegt. Soll ein MMI ausgetauscht oder ergänzt werden, so muss das komplette Programm umgeschrieben werden. Das Programm legt zudem auch die Benutzeroberfläche (GUI) fest. Somit ist der Parametrierungsprozess fest an die GUI gebunden. Ein Austausch der GUI erzwingt ein Umschreiben des Parametrierungsprozesses. Hierbei ist zu berücksichtigen, dass die GUI von der verwendeten Hardware abhängt. Wird als Ausgabegerät statt eines Personalcomputers ein Tablet verwendet, muss meist auch bei der GUI auf eine andere Technologie gesetzt werden.The parameterization process can not be flexibly configured, but fixed in the form of a program. If an MMI is to be replaced or supplemented, then the complete program must be rewritten. The program also defines the user interface (GUI). Thus, the parameterization process is firmly tied to the GUI. An exchange of the GUI forces a rewriting of the parameterization process. It should be noted that the GUI depends on the hardware used. If a tablet is used as the output device instead of a personal computer, the GUI usually has to be set to a different technology.
Ferner sind die genannten Systeme unflexibel. Hersteller liefern einen festen Verbund aus Fertigkeiten, Parametrierprozess und GUI aus, die sich vom Anwender nicht ändern lassen. Es ist dem Anwender zum Beispiel nicht möglich, ein weiteres MMI einzubinden. Verfügt eine Firma etwa über eine 3D-Maus, mit der sich theoretisch ebenfalls Posen spezifizieren lassen, kann dies bei bestehenden Systemen nicht integriert werden.Furthermore, the systems mentioned are inflexible. Manufacturers provide a fixed set of skills, parameterization process and GUI that users can not change. For example, it is not possible for the user to integrate another MMI. For example, if a company has a 3D mouse that can theoretically also specify poses, it can not be integrated with existing systems.
Aufgabe der Erfindung ist es, ein Verfahren zur Parametrierung eines robotischen Manipulators bereit zu stellen, dass eine erhöhe Flexibilität aufweist.The object of the invention is to provide a method for the parameterization of a robotic manipulator that has an increased flexibility.
Die Lösung der Aufgabe erfolgt erfindungsgemäß durch die Merkmale des Anspruchs 1.The object is achieved according to the invention by the features of
Beim erfindungsgemäßen Verfahren zur Parametrierung eines robotischen Manipulators erfolgt ein Erstellen einer Konfigurationsdatei, in der in maschinenlesbarer Form der Ablauf des Parametrierungsprozesses beschrieben ist. Hierbei kann beispielsweise ein maschinenlesbares Format wie JSON oder YAML verwendet werden. Die Konfigurationsdatei enthält mindestens einen Hinweis auf ein Dienstprogramm, das im Parametrierprozess verwendet wird. Die Konfigurationsdatei definiert ferner mindestens einen Parameter, für den mindestens ein Parametrierprozess beschrieben wird. Ein Parametrierprozess besteht hierbei aus einer Abfolge von Schritten, die auf Dienstprogramme verweisen.In the method according to the invention for the parameterization of a robotic manipulator, a configuration file is created in which machine-readable form the sequence of the parameterization process is described. For example, a machine-readable format such as JSON or YAML may be used. The configuration file contains at least one reference to a utility that is used in the parameterization process. The configuration file further defines at least one parameter for which at least one parameterization process is described. A parameterization process consists of a sequence of steps that refer to utilities.
Bei dem Dienstprogramm kann es sich um ein bereits vorhandenes eigenständiges Dienstprogramm handeln, das über eine Adresse, insbesondere eine URL, ansprechbar ist und das eine einheitliche bekannte Schnittstelle aufweist. Hierbei kann es sich beispielsweise um das Dienstprogramm „Objekt aufnehmen“, „Objekt ablegen“, Manipulatorbewegung, Gravitationskompensation etc. handeln. Eins oder mehrere dieser Dienstprogramme können zum Auslesen von mindestens einem Parameterwert verwendet werden, der dann als Parameterwert für den Parametrierprozess festgelegt wird.The utility may be an existing standalone utility that is addressable via an address, particularly a URL, and that has a common known interface. This can be, for example, the utility "record object", "drop object", manipulator movement, gravity compensation, etc. One or more of these utilities can be used to read out at least one parameter value, which is then set as a parameter value for the parameterization process.
Der Parametrierprozess wird somit erfindungsgemäß nicht in Form eines Programmes hinterlegt, sondern in Form einer Konfigurationsdatei beschrieben, die maschinenlesbar ist.The parameterization process is thus not inventively deposited in the form of a program, but described in the form of a configuration file that is machine-readable.
Nach dem maschienellen Auslesen der Konfigurationsdatei wird ein Parametrierungsprozess, nämlich eine Abfolge von Softwareschritten, ausgeführt, durch die die Parametrierung der Fertigkeit erfolgt.After the machine readout of the configuration file, a parameterization process, namely a sequence of software steps, is executed, through which the parameterization of the skill takes place.
Auch ist es möglich, einem Parameter mehrere Parametrierprozesse zuzuordnen. Die Auswahl, welcher Prozess durchlaufen wird, kann durch den Nutzer geschehen.It is also possible to assign several parameterization processes to one parameter. The choice of which process to go through can be done by the user.
Das erfindungsgemäße Verfahren erlaubt somit eine flexiblere Parametrierung einer Fertigkeit, da der Parametrierprozess nicht mehr fest in Form eines Programms definiert ist. Beispielsweise ist es möglich, ein MMI auszutauschen oder zu ergänzen, ohne dass das komplette Programm für den Parametrierprozess neu geschrieben werden muss. Statt eine Pose über einen handgeführten Roboter festzulegen, lässt sich durch Austausch des Dienstprogramms (vorzugsweise mit gleicher Adresse), eine 3D-Maus zur Parametrierung heranziehen, ohne weitere Änderungen am Parametrierprozess vornehmen zu müssen.The inventive method thus allows a more flexible parameterization of a skill, since the parameterization process is no longer defined in the form of a program. For example, it is possible to replace or supplement an MMI without having to rewrite the complete program for the parameterization process. Instead of defining a pose via a hand-guided robot, a 3D mouse can be used for parameterization by exchanging the utility program (preferably with the same address) without having to make any further changes to the parameterization process.
Es ist bevorzugt, dass in der Konfigurationsdatei zu jedem Schritt Informationen für einen Benutzer hinterlegt sind, die beim Ausführen des Prozesses über eine Benutzerschnittstelle, beispielsweise ein Display, dem Benutzer angezeigt werden.It is preferred that information for a user is stored in the configuration file for each step, which information is displayed to the user when executing the process via a user interface, for example a display.
Bei einem Dienstprogramm kann es sich um ein Mensch-Maschine-Interface (MMI) handeln, das zum Auslesen oder Definieren eines Parameters verwendet werden kann, der anschließend für den Parametrierprozess verwendet wird. Das Dienstprogramm kann beispielsweise auch eine Schnittstelle zu einer Datenbank sein.A utility may be a human-machine interface (MMI) that can be used to read or define a parameter that is subsequently used for the parameterization process. For example, the utility may also be an interface to a database.
Es ist weiterhin bevorzugt, dass ein Dienstprogramm, das aufgrund der Konfigurationsdatei ausgeführt wird, eine Rückmeldung über seine erfolgreiche Ausführung gibt.It is further preferred that a utility executed on the basis of the configuration file provides feedback on its successful execution.
Weiterhin ist bevorzugt, dass der nächste Schritt des Parametrierprozesses erst ausgeführt wird, nachdem das vorangehende Dienstprogramm seine erfolgreiche Ausführung gemeldet hat. Wenn keine oder eine negative Rückmeldung über die Ausführung eines vorangehenden Dienstprogramms übermittelt wird, wird der Parametrierprozess mit einem Fehler abgebrochen. Hierdurch kann sichergestellt werden, dass bei einem Programmabbruch sämtliche gestarteten Dienstprogramme beendet werden.Furthermore, it is preferred that the next step of the parameterization process is executed only after the previous utility has reported its successful execution. If no or negative feedback is sent about the execution of a previous utility, the parameterization process is aborted with an error. This can be used to ensure that all started utilities are stopped when the program is aborted.
Weiterhin ist es bevorzugt, dass für ein Dienstprogramm mindestens ein Anweisungskommando existiert, dass dem Dienstprogramm im Parametrierprozess übermittelt wird.Furthermore, it is preferred that at least one instruction command exists for a utility that is transmitted to the utility in the parameterization process.
Bei einem solchen Anweisungskommando kann es sich beispielsweise um den Befehl „Auslesen“ handeln, bei dem das Dienstprogramm bei erfolgreicher Rückmeldung einen ausgelesenen Wert liefert, der als Parameter für den Parametrierprozess verwendet wird.Such an instruction command may be, for example, the command "readout" in which the utility, upon successful confirmation, supplies a read value which is used as parameter for the parameterization process.
Weiterhin können die Anweisungskommandos „Start“ und „Stop“ verwendet werden, wobei jedes Dienstprogramm, das ein Startkommando erhalten hat, ein Stopkommando erhält, wenn ein Dienstprogramm nicht erfolgreich abgeschlossen wurde.Furthermore, the instruction commands "Start" and "Stop" may be used, with each utility that has received a start command receiving a stop command when a utility has not been completed successfully.
Es ist weiterhin möglich, Details zu einem Dienstprogramm, beispielsweise Name, Beschreibung, Adresse etc., zentral in der Liste aller Dienstprogramme zu führen. In einem Schritt des Parametrierprozesses muss dann nur noch auf den entsprechenden Dienst verwiesen werden.It is also possible to have details of a utility, such as name, description, address, etc. centrally in the list of all utilities. In one step of the parameterization process, then only the corresponding service has to be referenced.
Weiterhin können Anweisungen an Dienstprogramme gegliedert werden in Anweisungskommandos und Anweisungsparameter. Hierbei können Anweisungsparameter ein Anweisungskommando weiter spezifizieren. Ein einfacher Anweisungsparameter wäre etwa die erwartete Einheit für einen Rückgabewert, der von einem Dienstprogramm ausgelesen wird. Komplexere Parameter können auch definieren, welcher Roboter mit welchen Eigenschaften über das Dienstprogramm angesprochen werden soll. Anweisungskommandos und Anweisungsparameter werden vorzugsweise zu jedem Schritt eines Parametrierprozesses hinterlegt.Furthermore, instructions to utilities can be structured in statement commands and statement parameters. Here statement parameters can further specify an instruction command. A simple instruction parameter would be about the expected unit of return value read by a utility. More complex parameters can also define which robot with which properties are addressed by the utility should. Instruction commands and instruction parameters are preferably stored for each step of a parameterization process.
Weiterhin ist es möglich, dass ein Prozess auch spezielle Schritte enthält, die den rein sequenziellen Ablauf modifizieren. Solche speziellen Schritte können bedingte Sprünge, temporäre Speicher und arithmetische Operationen definieren, wodurch Schleifen und Verzweigungen innerhalb des Parametrierprozesses möglich sind.Furthermore, it is possible that a process also contains special steps that modify the purely sequential process. Such special steps may define conditional jumps, temporary memories, and arithmetic operations, allowing for loops and branches within the parameterization process.
Das erfindungsgemäße Verfahren bietet somit die folgenden Vorteile: The method according to the invention thus offers the following advantages:
Trennung von Fertigkeit, Parametrierungsprozess und GUI:Separation of skill, parameterization process and GUI:
Anstatt den Parametrierprozess programmatisch in die Fertigkeit zu integrieren und dabei die GUI fest zu integrieren, erlaubt die Erfindung die Konfiguration des Parametrierprozesses, unabhängig von der eingesetzten Technologie, MMI, Fertigkeit und der GUI.Instead of programmatically integrating the parameterization process into the tool while firmly integrating the GUI, the invention allows configuration of the parameterization process, regardless of the technology, MMI, skill, and GUI used.
Konfigurierbarkeit des Parametrierprozesses durch Endanwender:Configurability of the parameterization process by end users:
Der Parametrierprozess ist nicht mehr starr in die Fertigkeit integriert und damit in den Händen des Herstellers, sondern lässt sich für jeden Parameter unabhängig konfigurieren. Diese Konfiguration kann durch den Endanwender passieren, der nun in der Lage ist, die Fertigkeit an seine Umgebung und Bedingungen anzupassen.The parameterization process is no longer rigidly integrated into the craft and thus in the hands of the manufacturer, but can be configured independently for each parameter. This configuration can be done by the end user, who is now able to adapt the skill to their environment and conditions.
Anbindung beliebiger Dienstprogramme über Schnittstellenbeschreibung:Connection of any utility via interface description:
Anstatt programmatisch in der Fertigkeit direkt auf ein Dienstprogramm zuzugreifen, erhält ein Dienstprogramm eine definierte Schnittstelle. So lassen sich beliebige Dienstprogramme integrieren, so lange diese eine entsprechende Schnittstelle bieten.Instead of programmatically accessing a utility directly in the craft, a utility receives a defined interface. Any utility can be integrated as long as they provide an appropriate interface.
Korrektes Zurücksetzen von MMI im Fehlerfall:Correct reset of MMI in case of error:
Bisher muss der Hersteller für jeden Parametrierprozess einzeln sicherstellen, dass MMI im Fehlerfall korrekt zurückgesetzt werden. Mit der Erfindung ist dies inhärent im System integriert und somit von vorn herein für jeden Parameterprozess sichergestellt.Up to now, the manufacturer has to ensure individually for each parameterization process that MMIs are reset correctly in the event of an error. With the invention this is inherently integrated in the system and thus ensured from the outset for each parameter process.
Wahl zwischen verschiedenen Parametierprozessen:Choice between different parameterization processes:
Einem Parameter können mehrere Parametrierprozesse zugewiesen werden, zwischen denen der Benutzer wählen kann. Bei aktuellen Systemen gibt es immer genau einen Prozess.A parameter can be assigned several parameterisation processes, between which the user can choose. With current systems, there is always exactly one process.
Im Folgenden werden bevorzugte Ausführungsformen der Erfindung anhand einer Figur erläutert.In the following, preferred embodiments of the invention will be explained with reference to a figure.
Die Figur zeigt eine schematische Darstellung einer Umgebung, in der das erfindngsgemäße Verfahren umgesetzt werden kann.The figure shows a schematic representation of an environment in which the erfindngsgemäße method can be implemented.
Die Figur zeigt die Konfigurationsdatei
Die Konfigurationsdatei
Weiterhin kann die Konfigurationsdatei
Im Folgenden wird ein Anwendungsbeispiel beschrieben, bei dem für die Fertigkeit „Schrauben“ der Parameter „Lochpose“ festgelegt wird. Dies kann wie folgt geschehen:The following is an example of an application in which the parameter "hole pose" is set for the skill "screws". This can be done as follows:
Möchte der Nutzer die Lochpose bestimmen, wird zunächst automatisch der dafür nötige Akkuschrauber aufgenommen und zum Objekt bewegt. Est dann wird der Manipulator freigeschaltet und der Benutzer kann den Manipulator zum Loch führen. Anschließend bestätigt er, woraufhin die Manipulatorpose ausgelesen und der Akkuschrauber abgelegt wird. Jeder Schritt wird von einem Dialogfeld begleitet, das dem Nutzer aktuelle Informationen zur Ausführung liefert.If the user wants to determine the hole pose, the necessary electric screwdriver is automatically picked up and moved to the object. Est then the manipulator is unlocked and the user can lead the manipulator to the hole. He then confirms, whereupon the manipulator pose is read out and the cordless screwdriver is deposited. Each step is accompanied by a dialog box that provides the user with up-to-date information about execution.
Die dargestellten Konfigurationen können beliebig erweitert und/oder abgeändert werden. Der Ablauf ist eindeutig und lässt sich trotzdem von beliegiben Systemen auslesen und druchführen. Weitere MMI lassen sich in der Liste der Dienste ebenso einfach ergänzen, wenn dafür ein ensprechender Prozess vorhanden ist.The illustrated configurations can be expanded and / or modified as desired. The process is clear and can nevertheless be read out and read by legitimate systems. Other MMIs can be added to the list of services just as easily if there is an appropriate process for doing so.
Die Konfigurationsdatei kann beispielsweise in Form eines Pseudocodes die folgenden Informationen über den Parametrierprozess aufweisen:The configuration file can, for example, have the following information about the parameterization process in the form of a pseudocode:
Zunächst einmal werden die zur Verfügung stehenden Dienstprogramme wie folgt konfiguriert:
- - Objekt aufnehmen: URL = /services/pickup_object, Port = 5000
- - Objekt ablegen: URL = /services/place_object, Port = 5001
- - Manipulatorbewegung: URL = /services/move_to, Port = 5002
- - Gravitationskompensation: URL = /services/zero_gravity, Port: 5003
- - Record object: URL = / services / pickup_object, port = 5000
- - Drop object: URL = / services / place_object, port = 5001
- - Manipulator movement: URL = / services / move_to, port = 5002
- - Gravity compensation: URL = / services / zero_gravity, port: 5003
Dem Parameter „Lochpose“ ist ein Parametrierprozess zugeordnet. Dessen Schritte können in einem ähnlichen Format wie folgt konfiguriert werden:
- • Akkuschrauber greifen
- ◯ Dienst: Objekt aufnehmen
- ◯ Parameter: Roboter = roboter01, Objekt = Akkuschrauber, Geschwindigkeit = 0,1 m/s
- ◯ Benutzerhinweis: Akkuschrauber wird aufgenommen
- • Bewegung zum Objekt
- ◯ Dienst: Manipulatorbewegung
- ◯ Parameter: Roboter = roboter01, Ziel = [Koordinate], Geschwindigkeit = 0,2 m/s
- ◯ Benutzerhinweis: Akkuschrauber wird zum Objekt geführt
- • Lochposition durch händisches Führen des Manipulators im Gravitationskompensationsmodus eingeben
- ◯ Dienst: Gravitationskompensation
- ◯ Kommando: Start
- ◯ Parameter: Roboter = roboter01
- ◯ Benutzerhinweis: Akkuschrauber zur Lochposition führen und bestätigen
- • Pose des Manipulator auslesen
- ◯ Dienst: Gravitationskompensation
- ◯ Kommando: Auslesen
- ◯ Parameter: Roboter = roboter01
- ◯ Benutzerhinweis: Lochposition wird ausgelesen
- • Gravitationskompensationsmodus beenden
- ◯ Dienst: Gravitationskompensation
- ◯ Kommando: Stop
- ◯ Parameter: Roboter = roboter01
- ◯ Benutzerhinweis: Manipulator wird gestoppt
- • Manipulator vom Objekt entfernen
- ◯ Dienst: Manipulatorbewegung
- ◯ Parameter: Roboter = roboter01, Ziel = [Koordinate], Geschwindigkeit = 0,1 m/s
- ◯ Benutzerhinweis: Akkuschrauber wird vom Objekt entfernt
- • Akkuschrauben zurücklegen
- ◯ Dienst: Objekt ablegen
- ◯ Parameter: Roboter = roboter01, Ziel = Ladestation, Geschwindigkeit = 0,1 m/s
- ◯ Benutzerhinweis: Akkuschrauber wird abgelegt
- • Grab the cordless screwdriver
- ◯ Service: record object
- ◯ Parameter: robot = robot01, object = cordless screwdriver, speed = 0.1 m / s
- ◯ User note: The cordless screwdriver is picked up
- • Movement to the object
- ◯ Service: Manipulator movement
- ◯ Parameter: robot = robot01, destination = [coordinate], speed = 0.2 m / s
- ◯ User note: The cordless screwdriver is guided to the object
- • Enter the hole position by manually guiding the manipulator in the gravity compensation mode
- ◯ service: gravitational compensation
- ◯ Command: Start
- ◯ Parameter: Robot = robot01
- ◯ User note: Guide the cordless screwdriver to the hole position and confirm
- • Read pose of manipulator
- ◯ service: gravitational compensation
- ◯ Command: readout
- ◯ Parameter: Robot = robot01
- ◯ User note: Punch position is read out
- • End gravity compensation mode
- ◯ service: gravitational compensation
- ◯ Command: Stop
- ◯ Parameter: Robot = robot01
- ◯ User note: Manipulator is stopped
- • Remove the manipulator from the object
- ◯ Service: Manipulator movement
- ◯ Parameter: robot = robot01, target = [coordinate], velocity = 0.1 m / s
- ◯ User note: The cordless screwdriver is removed from the object
- • Cover the battery screws
- ◯ Service: drop object
- ◯ Parameter: robot = robot01, target = charging station, speed = 0.1 m / s
- ◯ User note: The cordless screwdriver is stored
Bei dem genannten Parametrierprozess existiert ein einziger Schritt der durch den Benutzer ausgeführt werden muss, nämlich derjenige, bei dem die Lochposition durch händisches Führen des Manipulators im Gravitationskompensationsmodus eingegeben wird. Die restlichen Schritte werden eigenständig durchgeführt.In the said parameterizing process, there exists a single step to be performed by the user, namely, the one in which the punching position is input by manually guiding the manipulator in the gravity compensating mode. The remaining steps are carried out independently.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102017216093.4A DE102017216093B4 (en) | 2017-09-12 | 2017-09-12 | Method for parameterizing a robotic manipulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102017216093.4A DE102017216093B4 (en) | 2017-09-12 | 2017-09-12 | Method for parameterizing a robotic manipulator |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102017216093A1 true DE102017216093A1 (en) | 2019-03-14 |
DE102017216093B4 DE102017216093B4 (en) | 2019-05-02 |
Family
ID=65441932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102017216093.4A Active DE102017216093B4 (en) | 2017-09-12 | 2017-09-12 | Method for parameterizing a robotic manipulator |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102017216093B4 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11590651B2 (en) | 2019-10-28 | 2023-02-28 | Robert Bosch Gmbh | Method and device for training manipulation skills of a robot system |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022203406A1 (en) | 2022-04-06 | 2023-10-12 | Kuka Deutschland Gmbh | Carrying out a robot application and creating a program for it |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130030568A1 (en) * | 2010-04-23 | 2013-01-31 | Samsung Heavy Ind. Co., Ltd. | Robot system control method and a device therefor |
-
2017
- 2017-09-12 DE DE102017216093.4A patent/DE102017216093B4/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130030568A1 (en) * | 2010-04-23 | 2013-01-31 | Samsung Heavy Ind. Co., Ltd. | Robot system control method and a device therefor |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11590651B2 (en) | 2019-10-28 | 2023-02-28 | Robert Bosch Gmbh | Method and device for training manipulation skills of a robot system |
Also Published As
Publication number | Publication date |
---|---|
DE102017216093B4 (en) | 2019-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102015204641B4 (en) | Method and system for programming a robot | |
EP1447770B1 (en) | Method and apparatus for visualization of computer-based information | |
DE112009003656B4 (en) | Method and system for in-production optimization of the parameters of a robot used for assembly | |
DE102019006800A1 (en) | Robot controller and display device using augmented reality and mixed reality | |
DE602004009264T2 (en) | Voice-controlled device for editing a robot teaching program | |
DE102015011830C5 (en) | Robot system for setting a motion surveillance area of a robot | |
DE112008003963B4 (en) | System and method for off-line programming of an industrial robot | |
EP3098034B1 (en) | Selecting an apparatus or an object using a camera | |
EP3725472A1 (en) | Method for determining a trajectory of a robot | |
DE102014226554A1 (en) | Identification and repair support apparatus and method | |
DE102018009024B4 (en) | Teaching device for carrying out a teaching process for a robot | |
WO2007065750A1 (en) | Tracking system and method for determining pose | |
DE102017216093B4 (en) | Method for parameterizing a robotic manipulator | |
DE112021003127T5 (en) | PROGRAMMING DEVICE | |
DE102020212658A1 (en) | Apparatus and method for controlling a robotic device | |
DE102018004673A1 (en) | Robot system displaying a speed | |
DE102019205651B3 (en) | Method and system for carrying out robot applications | |
DE102019209616A1 (en) | Carrying out a given task with the aid of at least one robot | |
DE112020006647T5 (en) | ORIGIN RETURN DEVICE | |
DE102018004326B4 (en) | Robot teaching device for setting teaching points based on a moving image of a workpiece | |
DE102016210097A1 (en) | robot | |
DE112008003870T5 (en) | A method and system for controlling an industrial robot in accordance with a motion control parameter set | |
WO2019057490A1 (en) | Method for localising a mobile robot | |
WO2007025658A1 (en) | Methods and system for establishing a sequence of movements for a robot | |
DE102020211053A1 (en) | Annotation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final |