DE102014113268B4 - Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und Steuervorrichtung für einen sechsachsigen Roboter - Google Patents

Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und Steuervorrichtung für einen sechsachsigen Roboter Download PDF

Info

Publication number
DE102014113268B4
DE102014113268B4 DE102014113268.8A DE102014113268A DE102014113268B4 DE 102014113268 B4 DE102014113268 B4 DE 102014113268B4 DE 102014113268 A DE102014113268 A DE 102014113268A DE 102014113268 B4 DE102014113268 B4 DE 102014113268B4
Authority
DE
Germany
Prior art keywords
axis
angle
robot
singular point
setting
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.)
Revoked
Application number
DE102014113268.8A
Other languages
English (en)
Other versions
DE102014113268A1 (de
Inventor
c/o DENSO WAVE INCORPORATED Ide Satoshi
c/o DENSO WAVE INCORPORATED Kagawa Naoya
c/o DENSO WAVE INCORPORATED Kawase Daisuke
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=52811832&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE102014113268(B4) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Publication of DE102014113268A1 publication Critical patent/DE102014113268A1/de
Application granted granted Critical
Publication of DE102014113268B4 publication Critical patent/DE102014113268B4/de
Revoked legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/402Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39298Trajectory learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40562Position and orientation of end effector, teach probe, track them
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • Y10S901/03Teaching system
    • Y10S901/04Manual lead through
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/14Arm movement, spatial

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

Achswinkelbestimmungsverfahren zum Bestimmen eines Winkels oder einer Position jeder Achse eines sechsachsigen Roboters (1), der erste bis sechste Achsen (J1 bis J6) und eine Hand (H1) aufweist, wobei der sechsachsige Roboter (1) eine Einstellung eines singulären Punkts einnehmen kann, der ein Zustand ist, in dem eine Drehachse der vierten Achse (J4) und eine Drehachse der sechsten Achse (J6) übereinstimmen, wobei das Achswinkelbestimmungsverfahren aufweist: Beurteilen basierend auf Ergebnissen einer Position und einer Einstellung der Hand (H1), die durch ein Punkt-zu-Punkt-Erlernen des sechsachsigen Roboters (1) erhalten wird, ob eine Einstellung des sechsachsigen Roboters (1), in der der Winkel oder die Position jedes Winkels als nächstes bestimmt werden soll, ein singulärer Punkt ist; und falls beurteilt wird, dass die Einstellung ein singulärer Punkt ist, Bestimmen eines Winkels der vierten Achse (J4) und eines Winkel der sechsten Achse (J6), die für den sechsachsigen Roboter (1) erforderlich sind, um sich zu dem singulären Punkt zu bewegen, so dass ein Winkel der vierten Achse (J4) oder der sechsten Achse (J6) bestimmt wird, um auf einen aktuellen Wert festgelegt zu werden, und ein Winkel der anderen der vierten Achse (J4) oder der sechsten Achse basierend auf dem festgelegten Winkel von der vierten Achse (J4) oder der sechsen Achsen (J6) bestimmt wird.

Description

  • HINTERGRUND
  • [Technisches Gebiet]
  • Die vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung zum Bestimmen eines Winkels jeder Achse eines sechsachsigen Roboters basierend auf einem Ergebnis des Erlernens einer Position und einer Einstellung (Position/Einstellung) einer Hand des sechsachsigen Roboters durch Erlernen.
  • [Stand der Technik]
  • Die US 2013/0338827 A1 offenbart eine Steuereinheit, ein Steuerverfahren und ein Steuerprogramm für einen gegliederten bzw. mehrachsigen Roboter.
  • Ein sechsachsiger Roboter enthält erste bis sechste Achsen und kann eine Einstellung (Stellung) einnehmen, in der eine Drehachse der vierten Achse und einer Drehachse der sechsten Achse übereinstimmen.
  • Bei einem senkrecht artikulierenden sechsachsigen Roboter stimmen beispielsweise die Drehachsen einer vierten Achse und einer sechsten Achse des sechsachsigen Roboters überein, wenn der sechsachsige Roboter eine Einstellung (Stellung) einnimmt, in der eine Hand des sechsachsigen Roboters der vertikalen Richtung zugewandt ist. In dieser Einstellung ist die Anzahl der Kombinationen der entsprechenden Winkel der vierten Achse und der sechsten Achse unendlich. Daher ist die Einstellung ein singulärer Punkt (Singularität), bei der eine Lösung des Winkels nicht individuell bestimmt wird.
  • Wenn der sechsachsige Roboter durch ein kontinuierliches Durchlauf(CP)-Erlernen erlernt, wird der Winkel jeder Achse jeder Position/Einstellung individuell bestimmt. Daher ist der singuläre Punkt kein Problem. Zudem ist der singuläre Punkt kein Problem, wenn ein Punkt-zu-Punkt(PTP)-Erlernen ausgeführt wird, falls der Nutzer den Winkel jeder Achse jeder Position/Einstellung spezifiziert. Der singuläre Punkt wird ein Problem bei dem PTP-Erlernen, wenn lediglich die Position/Einstellung spezifiziert wird und der Winkel jeder Achse durch inverse Transformation bestimmt werden soll.
  • Herkömmlich wird der singuläre Punkt als ein Fehler verarbeitet. Daher ist ein Nutzer gezwungen, singuläre Punkte zu vermeiden. Alternativ ist der Nutzer gezwungen, Maßnahmen zu unternehmen, wie z. B. individuelles Spezifizieren der Winkel nicht nur der vierten Achse und der sechsten Achse, sondern auch der Winkel der verbleibenden Achsen. Dadurch nimmt auch die Arbeitsbelastung des Nutzers zu.
  • KURZFASSUNG DER ERFINDUNG
  • Es ist dadurch erwünscht, ein Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und eine Steuervorrichtung für einen sechsachsigen Roboter bereitzustellen, durch den jeder Achsenwinkel für einen singulären Punkt bestimmt werden kann ohne den Nutzer zu belasten.
  • Gemäß einem Aspekt der vorliegenden Offenbarung wird ein Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter bereitgestellt. Bei dem Verfahren wird der Winkel oder die Position jeder Achse basierend auf dem Ergebnis des Roboters bestimmt, dem eine Position/Einstellung einer Hand des sechsachsigen Roboters durch ein Punkt-zu-Punkt(PTP)-Erlernen vermittelt wird. Bei diesem Fall kann die Einstellung des Roboters, deren Winkel oder Position jedes Winkels als Nächstes bestimmt werden soll, ein singulärer Punkt sein. Der singuläre Punkt ist ein Zustand, in dem die Drehachsen einer vierten Achse und einer sechsten Achse übereinstimmen. Wenn die Einstellung des Roboters ein singulärer Punkt ist, ist der Winkel entweder der vierten Achse oder der sechsten Achse auf einen aktuellen Wert festgelegt und der Winkel der anderen Achse wird bestimmt, um den Roboter zu dem singulären Punkt zu bewegen.
  • Mit anderen Worten, falls der Winkel entweder der vierten Achse oder der sechsten Achse als aktueller Wert bestimmt wird, kann der Winkel der anderen Achse bestimmt werden, so dass der sechsachsige Roboter die Position/Einstellung des singulären Punkts durch lediglich der anderen Achse, die durch einen vorbestimmten Winkel gedreht wird, einnehmen kann. Daher wird in diesem Verfahren ein singulärer Punkt nicht als Fehler verarbeitet. Die Winkel der vierten Achse und der sechsten Achse können sicher bestimmt werden.
  • Bei dem Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter der vorliegenden Erfindung können die erste Achse bis sechste Achse des sechsachsigen Roboters durch Linearbewegungsachsen konfiguriert sein, die senkrecht zueinander stehen. Bei einem sechsachsigen Roboter, der auf diese Weise konfiguriert ist, entsprechen die erste Achse bis zur dritten Achse jeweils den dreidimensionalen Koordinaten X, Y, und Z. Die vierte Achse bis sechste Achse werden in Richtungen der Koordinatenachsen entfernt. Unter der Annahme, dass der sechsachsige Roboter ausgestaltet ist, um einen Betrieb, wie z. B. Aufnehmen und Platzieren, auszuführen, nimmt der sechsachsige Roboter oftmals eine Einstellung ein, in der ein Annäherungsvektor der Hand die negative Richtung der Z-Achse anzeigt, und die Rotationsachsen der vierten Achse mit der sechsten Achse übereinstimmen. Falls diese Einstellung durch eine Fehlerverarbeitung wie bei der herkömmlichen Technik gehandhabt wird, treten häufig Fehlerbearbeitungen auf. Die Arbeitsbelastung des Nutzers wird erhöht. Daher kann, wenn der sechsachsige Roboter als der vorstehend beschriebene Gegenstand konfiguriert ist, die Zunahme der Arbeitsbelastung auf den Nutzer verhindert werden. Die Erfindung der vorliegenden Anmeldung ist sehr wirksam.
  • In dem Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter in der vorliegenden Erfindung kann die Achse, deren Winkel auf den aktuellen Wert festgelegt wird, die vierte Achse sein. Mit anderen Worten, bei der Konfiguration eines gewöhnlichen Sechsachsenroboters ist der Drehbereich der vierten Achse auf der Basisabschnittsseite oftmals beispielsweise innerhalb ±180° beschränkt. Dagegen ist im Gegensatz zur vierten Achse der Drehbereich der sechsten Achse auf der Handseite nicht beschränkt. Beispielsweise kann sich die sechste Achse 360° oder mehr in eine Richtung drehen. Dadurch werden die Verdrahtungen und dergleichen, die an dem Roboter im Allgemeinen angebracht sind, weniger in Richtung der Hand. Mit anderen Worten, für den Roboter ist es, um beispielsweise die Einstellung eines singulären Punkts einzunehmen, erforderlich, die vierte Achse um eine halbe einer vollständigen Drehung oder mehr zu drehen, wenn die Beschränkung auf den Drehbereich angewandt wird. Allerdings ist, wenn die sechste Achse gedreht wird, der Drehbetrag oftmals minimal. Daher kann der sechsachsige Roboter die Einstellung des singulären Punkts in kürzerer Zeit einnehmen.
  • KURZE BESCHREIBUNG DER FIGUREN
  • In den begleitenden Figuren zeigt:
  • 1 ein Flussdiagramm eines Prozesses zum Bestimmen von Winkeln einer vierten Achse und einer sechsten Achse eines sechsachsigen Roboters gemäß einer ersten Ausführungsform;
  • 2A ein Gelenkmodelldiagramm, das einen singulären Punkt des sechsachsigen Roboters anzeigt;
  • 2B ein Gelenkmodelldiagramm, das einen nicht-singulären Punkt des sechsachsigen Roboters anzeigt;
  • 3 eine perspektivische Ansicht einer Konfiguration des sechsachsigen Roboters gemäß der ersten Ausführungsform;
  • 4 ein Funktionsblockdiagramm einer Konfiguration eines Controllers und eine Antriebseinheit des in 3 gezeigten sechsachsigen Roboters; und
  • 5 ein Ablaufdiagramm eines Prozesses zum Stimmen der Winkel einer vierten Achse und einer sechsten Achse eines sechsachsigen Roboters gemäß einer zweiten Ausführungsform.
  • BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • (Erste Ausführungsform)
  • Eine erste Ausführungsform wird nachstehend mit Bezug auf die 1 bis 4 beschrieben. 3 zeigt eine perspektivische Ansicht einer Konfiguration eines sechsachsigen Roboters. Ein Roboter 1 umfasst eine erste Achse J1, eine zweite Achse J2, eine dritte Achse J3, eine vierte Achse J4, eine fünfte Achse J5 und eine sechste Achse J6. Von den Achsen J1 bis J6 sind die erste Achse J1, die zweite Achse J2 und die dritte Achse J3 durch Linearbewegungsachsen konfiguriert, die zueinander senkrecht stehen.
  • Die erste Achse J1 ist entlang der X-Achsenrichtung in 3 angeordnet. Die Achse J1 ist mit einem Kugelgewinde darin (nicht gezeigt) bereitgestellt. Die erste Achse J1 umfasst auch eine Schraubenmutter (nicht gezeigt). Der Antriebsmotor 20(1) (siehe 4) dreht das Kugelgewinde, wodurch die Schraubenmutter an dem Kugelgewinde befestigt wird. Ein bewegbarer Körper 2 ist an der oberen Oberflächenseite der ersten Achse J1 angeordnet. Wenn der Antriebsmotor 20(1) das Kugelgewinde dreht, bewegt sich der bewegbare Körper 2 linear entlang der ersten Achse J1.
  • Die zweite Achse J2 ist entlang der Y-Achsenrichtung in 3 angeordnet. Eine Endseite der zweiten Achse J2 ist an der oberen Oberfläche des bewegbaren Körpers 2 fixiert. Die zweite Achse J2 ist auch mit einem Kugelgewinde und einem Antriebsmotor 20(2) darin auf eine ähnliche Weise wie bei der ersten Achse J1 vorgesehen. Ein bewegbarer Körper 3 ist auf einer Oberfläche der zweiten Achse J2 auf der positiven Richtungsseite der X-Achse in 3 angeordnet. Wenn der Antriebsmotor 20(2) das Kugelgewinde dreht, bewegt sich der bewegbare Körper 3 linear entlang der zweiten Achse J2.
  • Die dritte Achse J3 ist entlang der Z-Achsenrichtung in 3 angeordnet. Die Bodenendseite der dritten Seite J3 ist an einer Seitenoberfläche des bewegbaren Körpers J3 auf der positiven Richtungsseite der X-Achse in 3 fixiert. Die dritte Achse J3 ist auch mit einem Kugelgewinde und einem Antriebsmotor 20(3) darin auf eine ähnliche Weise wie die vorstehend beschriebene vorgesehen. Ein bewegbarer Körper 4 ist an einer Oberfläche der dritten Achse J3 auf der positiven Richtungsseite der X-Achsenrichtung in 3 angeordnet. Wenn der Antriebsmotor 20(3) das Kugelgewinde dreht, bewegt sich der bewegbare Körper 4 linear entlang der dritten Achse J3.
  • Ein Armabschnitt 5 ist mit dem bewegbaren Körper 4 verbunden. Der Armabschnitt 5 setzt sich aus der vierten Achse J4 bis zur sechsten Achse J6 zusammen. Die vierte Achse J4 ist an der Basisabschnittsseite des Armabschnitts 5 vorgesehen. Ein Antriebsmotor 20(4) ist innerhalb des bewegbaren Körpers 4 vorgesehen. Die vierte Achse J4 wird durch den Antriebsmotor 20(4) mit der Z-Achse als Drehachse gedreht. Die fünfte Achse J5 ist mit der spitzen Endseite (Bodenendseite in 3) der vierten Achse J4 verbunden. Die sechste Achse J6 ist mit der spitzen Endseite der fünften Achse J5 verbunden.
  • Die Drehachse der fünften Achse J5 ist senkrecht zu der Drehachse der vierten Achse J4. Ein Antriebsmotor 20(5) ist an einer Endseite der Drehachse der fünften Achse J5 angeordnet. Wenn die fünfte Achse J5 durch den Antriebsmotor 20(5) angetrieben wird, wird die freie bzw. spitze Endseite der fünften Seite J5 gedreht.
  • Die Drehachse der sechsten Achse J6 ist senkrecht zu der Drehachse der fünften Achse J5. Ein Antriebsmotor 20(6) ist innerhalb der sechsten Achse J6 vorgesehen. Die sechste Achse J6 wird drehbar durch den Antriebsmotor 20(6) angetrieben. Der Roboter 1 ist in einem fixierten Zustand fixiert, in dem beispielsweise beide Enden der Achse J1 von einer Decke in einer Fabrik oder dergleichen hängen. Die Position und Einstellung einer Hand H1 des Roboters 1 an der Spitze der sechsten Achse J6 werden durch jede der ersten Achse J1 bis zur sechsten Achse J6, die bewegbar oder drehbar sind, verändert.
  • Der Roboter 1 ist mit einem Controller 10 (Steuervorrichtung, die eine Singular-Punkt-Beurteilungseinrichtung, eine Winkelbestimmungseinrichtung und eine Drehachsenbestimmungseinrichtung) und ein Programmierhandgerät 11 verbunden. Wie in 4 dargestellt, enthält der Controller 10 eine zentrale Recheneinheit (CPU) 12, einen Festwertspeicher (ROM) 13, einen Arbeitsspeicher (RAM) 14, eine Ansteuerschaltung 15, eine Positionserfassungserfassungsschaltung 16 und dergleichen. Die CPU 12 steuert den gesamten Controller 10 basierend auf in dem ROM 13 oder dem RAM 14 und dergleichen gespeicherten Programme. Zudem gibt die CPU 12 auf eine Weise, die bekannt ist, verschiedene Befehle zu der Ansteuerschaltung 15 aus, um zu ermöglichen, dass der Roboter 1 wiederholend einen Arbeitszyklus ausführt, der vorab bestimmt wird.
  • Die Ansteuervorrichtung 15 wird beispielsweise durch eine Inverterschaltung konfiguriert, die aus der CPU 12 ausgegebene Befehle zu elektrischen Signalen umwandelt. Die elektrischen Signale werden anschließend verwendet, um dem Roboter 1 Befehle bereitzustellen. Der Roboter 1 enthält die Mehrzahl der Motoren 20(1) bis 20(6), die jeweils die erste Achse J1 bis J6 antreiben. Der Roboter 1 enthält auch Encoder 21(1) bis 21(6), die jeweils der Mehrzahl der Motoren 20(1) bis 20(6) entsprechen.
  • Die Positionserfassungsschaltung 16 empfängt Eingaben von Signalen von den Encodern 21(1) bis 21(6) zum Erfassen der Drehposition der Motoren 20(1) bis 20(6). Die Positionserfassungsschaltung 16 erfasst dadurch die Drehposition der Motoren 20(1) bis 20(6).
  • Die CPU 12 führt eine Regelungssteuerung der Motoren 20(1) bis 20(6) basierend auf den Drehpositionen der Motoren 20(1) bis 20(6) aus, die durch die Positionserfassungsschaltung 16 erfasst werden.
  • Bei dem Roboter 1 werden die Ausgabe von den Motoren 20(1) bis 20(6) zu der ersten Achse J1 bis zur sechsten Achse J6 über Reduzierer 22(1) bis 22(6) übertragen. Die Motoren 20(1) bis 20(6) und die Reduzierer 22(1) bis 22(6) konfigurieren eine Antriebseinheit 23.
  • Wie in der in 3 gezeigten Einstellung ist ein Zustand, in dem die Drehachse der sechsten Achse J6 mit der Z-Achse auf die gleiche Weise wie bei der vierten Achse J4 übereinstimmt, eine Einstellung, die ein singulärer Punkt ist. Wie in dem Gelenkmodell des sechsachsigen Roboters 1 in 2A dargestellt, ist diese Einstellung ein Zustand, in dem der Annäherungsvektor der Hand H1 die negative Richtung der Z-Achse anzeigt. Zudem zeigt 2B eine Einstellung an, die ein nicht-singulärer Punkt ist, in dem die Drehachse der sechsten Achse J6 nicht mit der Drehachse der vierten Achse J4 übereinstimmt. Unter der Annahme, dass der sechsachsige Roboter 1 mit der in 3 gezeigten Struktur eine Betriebsweise vermittelt, wie z. B. Aufnehmen und Absetzen, kann auf einfache Weise zurückgerufen werden, dass Fälle, in denen die Position/Einstellung der singuläre Punkt wird, häufig auftreten.
  • Als Nächstes wird das Arbeiten gemäß der vorliegenden Ausführungsform in Bezug auf 1 beschrieben. 1 zeigt einen Ablauf eines Prozesses zum Bestimmen der Winkel der vierten Achse J4 und der sechsten Achse J6 für jede Position/Einstellung (einer Mehrzahl von Erlernpunkten), die dem Roboter 1 durch ein PTP-Erlernen mit dem Programmierhandgerät 11 vermittelt wird. Die Winkel der anderen Achsen und der Position der bewegbaren Körper 2 bis 4 werden auf gleiche Weise wie bei der bekannten Art und Weise bestimmt. Daher wird auf deren Beschreibungen verzichtet. Daten, die jeweils Position/Einstellung der Mehrzahl der Erlernpunkte, die dem Roboter 1 vermittelt werden, angezeigen, werden in dem ROM 13 oder RAM 14 des Controllers 10 gespeichert.
  • Zunächst bestimmt der Controller 10, ob eine Position/Einstellung des Roboters 1, die durch PTP-Erlernen vermittelt wird, ein singulärer Punkt ist (Schritt S1). Wie in 2A gezeigt, wenn ein Annäherungsvektor der Einstellung des Roboters 1, der vermittelt wurde, A = (X, Y, Z) ist, ist die Einstellung ein singulärer Punkt, wenn der Annäherungsvektor A = (0, 0, –1) ist. Daher ist der Annäherungsvektor A, der der singuläre Punkt ist, A = (0, 0, –1), wie in 2A gezeigt. Daher bestimmt der Controller 10, dass die Position/Einstellung des Roboters 1, die vermittelt wurde, ein singulärer Punkt ist, falls Z ≈ –1 (JA), und schreitet zu Schritt S2 fort. Andererseits führt, wenn bestimmt wird, dass die Position/Einstellung des Roboters 1 kein singulärer Punkt ist, der Controller 10 eine gewöhnliche Winkelberechnung auf die gleiche Weise wie in der Vergangenheit aus. Der Controller 10 bestimmt dadurch die Winkel der vierten Achse J4 und der sechsten Achse J6 (Schritt S4). Nachstehend entspricht ein Schritt der Singulär-Punkt-Entscheidungseinrichtung (äquivalent zu der Singulär-Punkt-Entscheidungseinheit).
  • Bei Schritt S2 bestimmt der Controller 10 die Summe der Winkel der vierten Achse J4 und der sechsten Achse J6 basierend auf einem Normalvektor der Einstellung des Roboters 1, die vermittelt wurde. Dieser Prozess wird nachstehend beschrieben. Eine Einstellungsmatrix der vierten Achse J4 bis sechsten Achse J6 des sechsten Roboters 1 wird wie folgt ausgedrückt. [Formel 1]
    Figure DE102014113268B4_0002
    Ci: Cos (Winkel von i-Achse), Si: Sin (Winkel von i-Achse)
  • Bei der Einstellungsmatrix sind die erste Spalte Komponenten eines Normalvektors (siehe 2A), und die zweite Spalte sind Komponenten eines Orientierungsvektors (siehe 2A), die dritte Spalte sind Komponenten eines Annäherungsvektors (siehe 2A), Ci und Si sind jeweils Kosinus und Sinus der Winkel der i(= 4–6)-Achsen. Bei dem singulären Punkt ist der Winkel der fünften Achse J5 0°. Daher C5 = 1 und S5 = 0. Die Einstellungsmatrix wird wie folgt. [Formel 2]
    Figure DE102014113268B4_0003
  • Die Summe θ4+6 der Winkel der vierten Achse J4 und der sechsten Achse J6 wird wie folgt basierend auf den Komponenten des Normalvektors bestimmt.
  • [Formel 3]
    • (S4C6 + S4S6)/(–C4C6 + S4S6)/(tan4 – tan6)/(–1)(1 – tan4tan6) = –tan4+6 = tan(π – θ4+6)
  • Hierbei ist tani = Si/Ci.
  • Wenn die Summe θ4+6 der Winkel bei Schritt S2 erhalten wird, hält der Controller 10 den aktuellen Winkel θ4 für die vierte Achse J4. Der Controller 10 bestimmt den Winkel θ der sechsten Achse J6 (Schritt S3). Mit anderen Worten, der Winkel θ6 wird bestimmt durch θ6 = θ4+6 – θ4
  • Hierbei entsprechen die Schritte S2 und S3 einer Winkelbestimmungseinrichtung (äquivalent zu einer Winkelbestimmungseinheit).
  • Hierbei wird bei Schritt S3 die vierte Achse J4 bei dem aktuellen Winkel θ4 gehalten und der Winkel θ6 der sechsten Achse J6 wird aus dem nachfolgenden Grund bestimmt.
  • Mit anderen Worten, in dem Roboter 1 wird der Drehbereich der vierten Achse J4 innerhalb ±180° beschränkt. Allerdings wird der Drehbereich der sechsten Achse J6 nicht auf diese Weise beschränkt. Die sechste Achse J6 kann 360° oder mehr in eine Richtung gedreht werden. Dies beruht darauf, dass die Verdrahtungen und dergleichen, die an dem Roboter 1 angebracht sind, im Allgemeinen näher in Richtung der Hand H1 kommen.
  • Mit anderen Worten, um den singulären Punkt einzunehmen, ist es beispielsweise erforderlich, die vierte Achse J4 um die Hälfte einer vollständigen Drehung oder mehr zu drehen, wenn die Begrenzung auf den Drehbereich angewandt wird. Allerdings kann, wenn die sechste Achse J6 gedreht wird, die Menge der Drehung oftmals minimal sein. Daher kann der sechsachsige Roboter die Einstellung des singulären Punkts in kürzerer Zeit eingenommen werden.
  • Gemäß der vorliegenden Ausführungsform, wie z. B. die vorstehend beschriebene, wird der Winkel oder die Position jeder ersten Achse J1 bis sechsten Achse J6 des sechsachsigen Roboters S1 basierend auf dem Erlernergebnis der Position/Einstellung der Hand H1 des Roboters 1 durch PTP-Erlernen bestimmt. In diesem Fall kann die Einstellung des Roboters 1, deren Winkel oder Position jeder der ersten Achse J1 bis sechsten Achse J6 als Nächstes bestimmt werden soll, ein singulärer Punkt sein. Der singuläre Punkt ist ein Zustand, in dem die Drehachsen der vierten Achse J4 und der sechsten Achse J6 übereinstimmen. Wenn die Einstellung des Roboters 1 der singuläre Punkt ist, fixiert der Controller 10 entweder den Winkel der vierten Achse J4 oder der sechsten Achse J6 auf den aktuellen Wert und bestimmt den Winkel der anderen Achse, um den Roboter 1 zu dem singulären Punkt zu bewegen.
  • Mit anderen Worten, falls der Winkel entweder der vierten Achse J4 oder der sechsten Achse J6 auf den aktuellen Wert bestimmt werden soll, kann der Winkel der anderen Achse derart bestimmt werden, dass der Roboter die Positionseinstellung eines singulären Punkts durch lediglich die andere Achse einnehmen kann, die durch einen vorbestimmten Winkel gedreht wird. Daher wird als Ergebnis dieses Verfahrens der singuläre Punkt nicht als ein Fehler verarbeitet. Die Winkel der vierten Achse 4 und der sechsten Achse J6 können sicher bestimmt werden.
  • Der Roboter 1, dessen ersten Achse J1 bis dritten Achse J3 durch die Linearbewegungsachsen konfiguriert sind, die senkrecht zueinander stehen, ist der Steuergegenstand. Unter der Annahme, dass der Roboter 1, der auf diese Weise konfiguriert ist, so ausgestaltet ist, dass er einen Betrieb ausführt, wie z. B. Aufnehmen und Platzieren, nimmt der Roboter 1 oftmals die Einstellung des singulären Punkts ein. In dieser Einstellung zeigt der Annäherungsvektor der Hand die negative Richtung auf der Z-Achse. Falls die Einstellung durch eine Fehlerverarbeitung als herkömmliche Technik gehandhabt wird, tritt häufig eine Fehlerbearbeitung auf. Die Arbeitsbelastung auf den Nutzer nimmt zu. Daher kann, wenn der Roboter 1 gemäß der vorliegenden Ausführungsform einer Steuerung unterzogen wird, die Zunahme der Arbeitslast auf den Nutzer verhindert werden. Die vorliegende Ausführungsform ist sehr wirksam.
  • Zudem ist die auf den aktuellen Wert festzulegende Achse die vierte Achse J4. Daher kann der sechsachsige Roboter 1 die Einstellung des singulären Punkts in einer kürzeren Zeit einnehmen. Darüber hinaus kann, wenn die vierte Achse J4 gedreht wird, der Drehbetrag wie bei dem vorstehend beschriebenen Fall zunehmen, verglichen damit, wenn die sechste Achse J6 gedreht wird.
  • Daher kann beispielsweise, wenn der Nutzer (Bediener) ein Anfänger ist, angenommen werden, dass der Nutzer der Ansicht ist, dass sich die vierte Achse J4 wesentlich mehr gedreht hat als basierend auf dem Erlernergebnis zu erwarten sein sollte. Zu diesem Zeitpunkt fragt sich der Nutzer, ob ein Fehler irgendeiner Art bei dem erlernten Betrieb aufgetreten ist. Der Nutzer kann den Erlernbetrieb noch mal ausführen. Nochmaliges Ausführen des Betriebs, der eigentlich nicht erforderlich ist, ist sehr ineffizient. Daher kann eine Situation, in der ein Neuling bezüglich des Erlernbetriebs unnötigerweise Zweifel hat, verhindert werden, wenn der Winkel der vierten Achse J4 auf den aktuellen Wert festgelegt wird und die sechste Achse J6 entsprechend der vorliegenden Ausführungsform gedreht wird.
  • Zudem wird gemäß der vorliegenden Ausführungsform die Z-Achsenkomponente des Annäherungsvektors A zum Bestimmen des singulären Punkts bei Schritt S1 referenziert. Die Bestimmung des singulären Punkts kann auch basierend auf dem temporären inversen transformierten Ergebnis der Position/Einstellung ausgeführt werden, die gelernt wurde. Hiernach werden Beispiele der Verarbeitungszeit beider Verfahren ausführlich verglichen. Als Bedingung des Vergleichs wird die mittlere Verarbeitungszeit von 1600 Betriebsweisen bzw. Operationen verwendet.
  • Wenn die erforderliche Zeit zum Lösen der inversen Transformation ungefähr 14,7 μs ist, ist die erforderliche Zeit für den Controller 10, um die Bestimmung bei Schritt S1 auszuführen, ungefähr 0,37 μs. Die erforderliche Zeit für den Controller 10 zu bestimmen, ob die Einstellung ein singulärer Punkt basierend auf dem Ergebnis der temporär gelösten inversen Transformation ist, und den Prozess erneut auszuführen, wenn die Einstellung als singulärer Punkt bestimmt wird, ist ungefähr 29,4 μs.
  • In diesem Fall wird die Bestimmung bei Schritt S1 bedeutsam hinsichtlich der Verarbeitungszeit, wenn der Prozentsatz der singulären Punkte aus allen Erlernpunkten 2,5% oder mehr ist (allerdings wird angenommen, dass die Verarbeitungszeit für einen singulären Punkt gemäß der vorliegenden Ausführungsform 14,7 μs ist). Daher kann unter der Annahme eines konkreten Falls davon ausgegangen werden, dass die gemäß der vorliegenden Ausführungsform ausgeführte Bestimmung im Wesentlichen mehr Vorteile aufweist.
  • (Zweite Ausführungsform)
  • 5 zeigt eine zweite Ausführungsform. Den Abschnitten, die die gleichen wie jene gemäß der ersten Ausführungsform sind, werden die gleichen Bezugszeichen gegeben. Auf deren Beschreibung wird verzichtet. Unterschiede werden nachstehend beschrieben.
  • Wie in 5 gezeigt, bestimmt gemäß der zweiten Ausführungsform, wenn „JA” bei Schritt S1 bestimmt wird, der Controller 10 die Summe θ4+6 der Winkel bei dem anschließenden Schritt S11 in ähnlicher Weise wie bei dem Schritt S2. Zudem bestimmt der Controller 10 einen Bewegungsbetrag δθ von den aktuellen Werten der Winkel. Der Bewegungsbetrag δθ ist nachstehend äquivalent zu dem „Unterschied” zwischen den bei Schritt S3 bestimmten Winkeln gemäß der ersten Ausführungsform.
  • Bei dem anschließenden Schritt S12 bestimmt der Controller 10 den Zeitpunkt T4 und den Zeitpunkt T6 basierend auf den entsprechenden Drehzahlen der vierten Achse J4 und der sechsten Achse J6. Der Zeitpunkt T4 ist, wenn die vierte Achse J4 durch den Bewegungsbetrag δθ gedreht wird. Der Zeitpunkt T6 ist, wenn die sechste Achse J6 durch den Bewegungsbetrag δθ gedreht wird. Mit anderen Worten, die Kapazitäten der entsprechenden Motoren 20(4) und 20(6) und die Reduktionsverhältnisse der entsprechenden Reduzierer 22(4) und 22(6) der vierten Achse J4 und der sechsten Achse J6 unterscheiden sich. Daher unterscheiden sich auch die Werte des Zeitpunkts T4 und des Zeitpunkts T6.
  • Bei Schritt S13 vergleicht der Controller 10 die Zeitlängen T4 und den Zeitpunkt T6. Wenn bestimmt wird, dass T4 größer als T6 (JA) ist, legt der Controller 10 den Winkel θ4 der vierten Achse J4 auf den aktuellen Wert fest. Der Controller 10 dreht die sechste Achse J6 durch δθ (Schritt S14). Andererseits fixiert, wenn bestimmt wird, dass T4 < T6 (NEIN) ist, der Controller 10 den Winkel θ6 der sechsten Achse J6 auf den aktuellen Wert. Der Controller 10 dreht die vierte Achse J4 um δθ (Schritt S15). Dies funktioniert ohne dass entweder die vierte Achse J4 und die sechste Achse J6 gedreht werden kann, wenn T4 = T6. Die Schritte S12 und S13 entsprechen einer Drehachswinkeleinrichtung.
  • Wie vorstehend beschrieben, bestimmt gemäß der zweiten Ausführungsform der Controller 10 den Bewegungsbetrag δθ von den aktuellen Werten der Winkel, wenn der Roboter 1 von einer aktuellen Position/Einstellung zu einer Einstellung eines nächsten singulären Punkts bewegt wird. Der Controller 10 bestimmt den Zeitpunkt T4, wenn die vierte Achse J4 durch den Bewegungsbetrag δθ gedreht wird. Der Controller 10 bestimmt auch den Zeitpunkt T6, wenn die sechste Achse J6 in dem Bewegungsbetrag δθ gedreht wird.
  • Der Controller 10 vergleicht die Zeitlängen T4 und T6. Der Controller 10 fixiert den Winkel entweder der vierten Achse J4 oder der sechsten Achse J6, der die längere Zeit zu dem aktuellen Wert hat. Der Controller 10 verändert den Winkel entweder der vierten Achse J4 oder der sechsten Achse J6, die die kürzere Zeit aufweist. Daher kann der erforderliche Zeitbetrag zur Bewegung zu dem singulären Punkt verkürzt werden. Die Arbeitseffizienz kann verbessert werden. Die vorliegende Erfindung ist nicht auf die vorstehend beschriebenen oder in den Figuren gezeigten Ausführungsformen beschränkt. Abwandlungen und Erweiterungen, wie z. B. jene, die nachstehend diskutiert werden, sind möglich.
  • Bei der ersten Ausführungsform kann, falls der Drehbereich der vierten Achse J4 nicht begrenzt wird, der Winkel der sechsten Achse J6 auf den aktuellen Wert fixiert werden. Der Winkel der vierten Achse J4 kann verändert werden. Ein Fahrzustand, bei dem das Abtriebsdrehmoment der vierten Achse J4 zunimmt, wenn die Drehzahl der sechsten Achse J6 erhöht wird, kann beispielsweise angenommen werden. Wenn der Fokus auf das Drehmoment, das von der Last abhängig ist, gerichtet ist, kann es vorteilhafter sein, den Winkel der vierten Achse J4 zu verändern. Zudem kann in diesem Fall das Spiel in den Kabeln und durch die Verdrahtungen außerhalb des Roboters 1 verbundenen Apparaturen nahe der ersten Achse J1 bis zur dritten Achse J3 angeordnet sein. Die erste Achse J1 bis dritte Achse J3 sind lineare Bewegungsachsen. Dadurch kann eine auf die erste Achse J1 bis dritte Achse J3 gesetzte Last reduziert werden.
  • Die Konfiguration des sechsachsigen Roboters ist nicht auf die in 3 gezeigte begrenzt. Die vorliegende Erfindung kann auch auf senkrecht artikulierende sechsachsige Roboter angewandt werden, die eine Einstellung einnehmen können, in der die Drehachsen der vierten Achse und der sechsten Achse übereinstimmen. In diesem Zustand kann bezüglich des singulären Punkts ein die Bestimmung ermöglichendes Verfahren in Abhängigkeit der Konfiguration des Roboters verwendet werden.
  • Bei der ersten Ausführungsform wird die Summe θ4+6 der Winkel der vierten Achse J4 und der sechsten Achse J6 basierend auf Komponenten des normalen Vektors bestimmt. Alternativ kann die Summe θ4+6 der Winkel der vierten Achse J4 und der sechsten Achse J6 wie folgt basierend auf Komponenten des Orientierungsvektors bestimmt werden.
  • [Formel 4]
    • (–C4S6 + S4C6)/(–S4S6 + C4C6) = (–tan6 + tan4)/(–tan4tan6 + 1) = tan4-6 = tan(θ4 – θ6)

Claims (6)

  1. Achswinkelbestimmungsverfahren zum Bestimmen eines Winkels oder einer Position jeder Achse eines sechsachsigen Roboters (1), der erste bis sechste Achsen (J1 bis J6) und eine Hand (H1) aufweist, wobei der sechsachsige Roboter (1) eine Einstellung eines singulären Punkts einnehmen kann, der ein Zustand ist, in dem eine Drehachse der vierten Achse (J4) und eine Drehachse der sechsten Achse (J6) übereinstimmen, wobei das Achswinkelbestimmungsverfahren aufweist: Beurteilen basierend auf Ergebnissen einer Position und einer Einstellung der Hand (H1), die durch ein Punkt-zu-Punkt-Erlernen des sechsachsigen Roboters (1) erhalten wird, ob eine Einstellung des sechsachsigen Roboters (1), in der der Winkel oder die Position jedes Winkels als nächstes bestimmt werden soll, ein singulärer Punkt ist; und falls beurteilt wird, dass die Einstellung ein singulärer Punkt ist, Bestimmen eines Winkels der vierten Achse (J4) und eines Winkel der sechsten Achse (J6), die für den sechsachsigen Roboter (1) erforderlich sind, um sich zu dem singulären Punkt zu bewegen, so dass ein Winkel der vierten Achse (J4) oder der sechsten Achse (J6) bestimmt wird, um auf einen aktuellen Wert festgelegt zu werden, und ein Winkel der anderen der vierten Achse (J4) oder der sechsten Achse basierend auf dem festgelegten Winkel von der vierten Achse (J4) oder der sechsen Achsen (J6) bestimmt wird.
  2. Achsenwinkelbestimmungsverfahren nach Anspruch 1, wobei die erste Achse (J1), die zweite Achse (J2) und die dritte Achse (J3) durch Linearbewegungsachsen konfiguriert sind, die senkrecht zueinander stehen.
  3. Achsenwinkelbestimmungsverfahren nach Anspruch 1 oder 2, wobei die Achse, deren Winkel auf den aktuellen Wert festgelegt werden soll, die vierte Achse (J4) ist.
  4. Steuervorrichtung (10) zum Bestimmen eines Winkels oder einer Position jeder Achse eines sechsachsigen Roboters (1), der erste bis sechste Achsen (J1 bis J6) und eine Hand (H1) aufweist, wobei der sechsachsige Roboter (1) eine Einstellung eines singulären Punkts einnehmen kann, der ein Zustand ist, in dem eine Drehachse der vierten Achse (J4) und eine Drehachse der sechsten Achse (J6) übereinstimmt, wobei die Steuervorrichtung (10) aufweist: eine Singulär-Punkt-Beurteilungseinrichtung (10, S1), die basierend auf den Lernergebnissen einer Position und einer Einstellung der Hand (H1) beurteilt, die durch ein Punkt-zu-Punkt-Erlernen des sechsachsigen Roboters (1) erhalten wird, ob eine Einstellung des sechsachsigen Roboters (1), in der der Winkel oder die Position jedes Winkels als nächstes bestimmt werden soll, ein singulärer Punkt ist; und eine Winkelbestimmungseinrichtung (10, S2, S3), die, falls beurteilt wird, dass die Einstellung ein singulärer Punkt ist, einen Winkel der vierten Achse (J4) und einen Winkel der sechsten Achse (J6) bestimmt, die für den sechsachsigen Roboter (1) erforderlich sind, um sich zu dem singulären Punkt zu bewegen, so dass ein Winkel der vierten Achse (J4) oder der sechsten Achse (J6) bestimmt wird, um auf einen aktuellen Wert festgelegt zu werden, und ein Winkel der anderen der vierten Achse (J4) oder der sechsten Achse basierend auf dem festgelegten Winkel der vierten Achse (J4) oder der sechsten Achse (J6) bestimmt wird.
  5. Steuervorrichtung nach Anspruch 4, wobei die erste Achse (J1), die zweite Achse (J2) und die dritte Achse (J3) durch die Linearbewegungsachsen konfiguriert sind, die senkrecht zueinander stehen.
  6. Steuervorrichtung nach Anspruch 4 oder 5, wobei die Achse, deren Winkel auf den aktuellen Wert festgelegt wird, die vierte Achse (J4) ist.
DE102014113268.8A 2013-10-30 2014-09-15 Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und Steuervorrichtung für einen sechsachsigen Roboter Revoked DE102014113268B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-225423 2013-10-30
JP2013225423A JP2015085427A (ja) 2013-10-30 2013-10-30 6軸ロボットの各軸角度決定方法及び6軸ロボットの制御装置

Publications (2)

Publication Number Publication Date
DE102014113268A1 DE102014113268A1 (de) 2015-04-30
DE102014113268B4 true DE102014113268B4 (de) 2017-02-09

Family

ID=52811832

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014113268.8A Revoked DE102014113268B4 (de) 2013-10-30 2014-09-15 Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und Steuervorrichtung für einen sechsachsigen Roboter

Country Status (3)

Country Link
US (1) US9248572B2 (de)
JP (1) JP2015085427A (de)
DE (1) DE102014113268B4 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105082134B (zh) * 2015-08-06 2017-03-08 珞石(北京)科技有限公司 一种基于多判据的六自由度串联机器人奇异性处理方法
JP6719956B2 (ja) * 2016-04-20 2020-07-08 Ntn株式会社 双腕型作動装置
CN106003024B (zh) * 2016-05-26 2017-11-28 北京新长征天高智机科技有限公司 一种多机械手垃圾分拣控制***
CN105964567B (zh) * 2016-05-26 2017-11-28 北京新长征天高智机科技有限公司 一种针对生活垃圾中的玻璃瓶分拣控制***
JP2018075678A (ja) * 2016-11-10 2018-05-17 Ntn株式会社 作動装置および双腕型作動装置
JP7222898B2 (ja) * 2017-06-12 2023-02-15 ジーメンス インダストリー ソフトウェア リミテッド ロボット製造での所定のターゲットへの到達をロボットにティーチングするための方法およびシステム
CN109834706B (zh) * 2017-11-25 2020-12-15 梅卡曼德(北京)机器人科技有限公司 在机器人运动规划中避免运动学奇异点的方法及装置
CN110977974B (zh) * 2019-12-11 2021-06-01 遨博(北京)智能科技有限公司 一种机器人规避奇异位型的导纳控制方法、装置及***
CN111390898A (zh) * 2020-05-08 2020-07-10 贾瑞清 一种六轴轻型协作机器人
CN112405525B (zh) * 2020-10-21 2022-04-29 深圳市汇川技术股份有限公司 奇异位置规避方法、***、设备及计算机可读存储介质
CN112621713B (zh) * 2020-11-30 2022-02-25 珠海格力电器股份有限公司 机器人示教器、控制器及其示教、控制方法、装置和介质
CN113021347A (zh) * 2021-03-23 2021-06-25 深圳市优必选科技股份有限公司 机械臂控制方法、装置、作业控制设备及可读存储介质
CN113305881B (zh) * 2021-05-14 2022-07-12 北京配天技术有限公司 机器人运动规划阶段的奇异区域检测方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130338827A1 (en) * 2011-03-08 2013-12-19 Kabushiki Kaisha Kobe Seiko Sho (Kobe Steel, Ltd.) Control unit, control method, and control program of articulated robot

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01171790A (ja) * 1987-12-24 1989-07-06 Shinko Electric Co Ltd 産業用ロボット
JPH0791947A (ja) * 1993-09-22 1995-04-07 Nissan Motor Co Ltd 計測用ロボットの異常検出方法
JPH07178684A (ja) * 1993-12-22 1995-07-18 Toshiba Corp ロボットアーム
DE102004021468A1 (de) * 2004-04-30 2005-11-24 Kuka Roboter Gmbh Verfahren zum Steuern einer Maschine, insbesondere eines Industrieroboters
JP4494247B2 (ja) * 2005-02-15 2010-06-30 三菱電機株式会社 ロボットの制御装置および制御方法
JP5283541B2 (ja) * 2009-03-05 2013-09-04 株式会社神戸製鋼所 ロボットの動作経路生成方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130338827A1 (en) * 2011-03-08 2013-12-19 Kabushiki Kaisha Kobe Seiko Sho (Kobe Steel, Ltd.) Control unit, control method, and control program of articulated robot

Also Published As

Publication number Publication date
US9248572B2 (en) 2016-02-02
US20150120059A1 (en) 2015-04-30
JP2015085427A (ja) 2015-05-07
DE102014113268A1 (de) 2015-04-30

Similar Documents

Publication Publication Date Title
DE102014113268B4 (de) Achswinkelbestimmungsverfahren für einen sechsachsigen Roboter und Steuervorrichtung für einen sechsachsigen Roboter
EP3341164B1 (de) Robotergreifer
DE19817426B4 (de) Greifersystem, insbesondere Vakuumgreifersystem
DE102015001527B4 (de) Robotersystem, das visuelle Rückmeldung verwendet
EP3402632B1 (de) Bestimmung einer orientierung eines roboters relativ zur gravitationsrichtung
DE102014225537B4 (de) Robotervorrichtung, robotersteuerverfahren, programm und aufzeichnungsmedium
DE102014104226B4 (de) Verfahren zur Erzeugung eines Pfades eines mehrachsigen Roboters und Steuervorrichtung für den mehrachsigen Roboter
DE60319787T2 (de) Montageverfahren und -vorrichtung
DE102010018759B4 (de) Spannungsverteilung in einem sehnengetriebenen Roboterfinger
DE102017130460B4 (de) Verfahren und Vorrichtung zum Korrigieren von Roboterbewegungen
DE102015004483B4 (de) Robotersteuerung und Robotersystem zum Bewegen eines Roboters als Reaktion auf eine Kraft
DE102014015364A1 (de) Befestigungsvorrichtung, robotersystem und befestigungsverfahren zum befestigen mehrerer befestigungsteile
DE102020106249A1 (de) Arbeitswerkzeug zum ergreifen von werkstücken mit einem steckverbinder, und mit einem arbeitswerkzeug versehene robotervorrichtung
DE102014104774A1 (de) Ausschweiß-Spannvorrichtung
EP1529605B1 (de) Verfahren und Vorrichtung zum Steuern von Robotern
DE102018114445B4 (de) Vorrichtung und Verfahren zur Einschätzung einer Position des Schwerpunkts eines Roboters
WO2015097102A1 (de) Verfahren zum automatisierten montieren an einem montagearbeitsplatz, sowie zugehöriger automatisierter montagearbeitsplatz
DE102016120809B4 (de) Verfahren zum robotergestützten Einpassen eines männlichen Bauteils in ein weibliches Bauteil
EP2504741B1 (de) Verfahren zum erstellen eines robotermodells und industrieroboter
DE102014202257A1 (de) Rekonfigurierbare Schnittstellenanordnung, anpassbarer Fliessband-Werkstückbearbeiter und Verfahren
DE102017204211B4 (de) Robotersteuerung und Robotersteuerungsverfahren
DE102016009436B4 (de) Robotersteuerung, die ein Rütteln einer Werkzeugspitze bei einem Roboter verhindert, der mit einer Verfahrachse ausgestattet ist
DE102019212806B4 (de) Roboterhand
DE102015101920A1 (de) Effektor für einen Industrieroboter, Industrieroboter und Verfahren zum Verschrauben von Werkstücken
DE102017128332B4 (de) Mit einer Formungsmaschine und einer Formproduktentnahmevorrichtung versehenes Formungssystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: KUHNEN & WACKER PATENT- UND RECHTSANWALTSBUERO, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R026 Opposition filed against patent
R037 Decision of examining division or of federal patent court revoking patent now final