DE102017011754B4 - Maschinenlerneinrichtung zum Lernen eines Montagevorgangs und Komponentenmontagesystem - Google Patents

Maschinenlerneinrichtung zum Lernen eines Montagevorgangs und Komponentenmontagesystem Download PDF

Info

Publication number
DE102017011754B4
DE102017011754B4 DE102017011754.3A DE102017011754A DE102017011754B4 DE 102017011754 B4 DE102017011754 B4 DE 102017011754B4 DE 102017011754 A DE102017011754 A DE 102017011754A DE 102017011754 B4 DE102017011754 B4 DE 102017011754B4
Authority
DE
Germany
Prior art keywords
component
assembly
unit
command values
components
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.)
Active
Application number
DE102017011754.3A
Other languages
English (en)
Other versions
DE102017011754A1 (de
Inventor
Masato Watanabe
Taku Sasaki
Kiichi Inaba
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102017011754A1 publication Critical patent/DE102017011754A1/de
Application granted granted Critical
Publication of DE102017011754B4 publication Critical patent/DE102017011754B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16BDEVICES FOR FASTENING OR SECURING CONSTRUCTIONAL ELEMENTS OR MACHINE PARTS TOGETHER, e.g. NAILS, BOLTS, CIRCLIPS, CLAMPS, CLIPS OR WEDGES; JOINTS OR JOINTING
    • F16B33/00Features common to bolt and nut
    • F16B33/06Surface treatment of parts furnished with screw-thread, e.g. for preventing seizure or fretting
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41805Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by assembly
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16BDEVICES FOR FASTENING OR SECURING CONSTRUCTIONAL ELEMENTS OR MACHINE PARTS TOGETHER, e.g. NAILS, BOLTS, CIRCLIPS, CLAMPS, CLIPS OR WEDGES; JOINTS OR JOINTING
    • F16B5/00Joining sheets or plates, e.g. panels, to one another or to strips or bars parallel to them
    • F16B5/02Joining sheets or plates, e.g. panels, to one another or to strips or bars parallel to them by means of fastening members using screw-thread
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36442Automatically teaching, teach by showing
    • 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/40111For assembly
    • 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/45Nc applications
    • G05B2219/45203Screwing
    • 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)
  • Automatic Assembly (AREA)

Abstract

Maschinenlerneinrichtung (30) zum Lernen eines Montagevorgangs, bei dem wenigstens eine Arbeitsmaschine (11, 12) eine erste Komponente (41) und eine zweite Komponente (42) montiert, um eine Baugruppe (40) herzustellen, wobei die Maschinenlerneinrichtung umfasst:- eine Zustandsüberwachungseinheit (31) zum Überwachen von Zustandsgrößen, die den Zustand der Baugruppe, eine zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und/oder Informationen über eine zum Montieren der ersten und zweiten Komponente erforderliche Kraft, das Ergebnis einer Durchgangsprüfung der Baugruppe sowie Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang umfassen; und- eine Lerneinheit (35) zum Lernen, in einander zugeordneter Weise, des Zustands der Baugruppe, der zum Montieren der ersten und zweiten Komponente erforderlichen Zeitdauer und/oder der Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft, des Ergebnisses der Durchgangsprüfung der Baugruppe sowie der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang, die durch die Zustandsüberwachungseinheit überwacht werden; und wobei die erste Komponente (41) und die zweite Komponente (42) aus leitfähigen Materialien gefertigt sind.

Description

  • Hintergrund der Erfindung
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Maschinenierneinrichtung zum Lernen eines Montagevorgangs von Komponenten und ein Komponentenmontagesystem, das die Maschinenlerneinrichtung umfasst.
  • Beschreibung des zugehörigen Standes der Technik
  • Beim Montieren zweier Komponenten wird in vorab in den zwei Komponenten ausgebildeten Bohrungen eine Schraube in Eingriff gebracht (z.B. JP 2014- 7 890 A). Alternativ wird ein Teil einer der Komponenten in einen ausgesparten Abschnitt oder eine Durchgangsbohrung der anderen Komponente eingesetzt, um die zwei Komponenten zu montieren.
  • Solche Komponentenmontagevorgänge lassen sich automatisieren. Wenn Komponenten mit relativ kleinen Maßabweichungen in Montageeinrichtungen eingebracht werden, können die Montageeinrichtungen die Komponenten mit hoher Geschwindigkeit montieren, da ihr Positionsverhältnis während der Montage konstant ist. Wenn hingegen Komponenten mit relativ großen Maßabweichungen in Montageeinrichtungen eingebracht werden, müssen die Montageeinrichtungen die Komponenten aufgrund großer Abweichungen ihres Positionsverhältnisses während der Montage mit niedriger Geschwindigkeit und geringfügigen Positionsänderungen montieren, um die Komponenten sicher zu montieren.
  • Die DE 11 2009 003 656 T5 beschreibt einen Roboter zum wiederholten Montieren von Teilen während eines kontinuierlichen Produktionsablaufs. Dafür werden vom Roboter mit der Teilemontage assoziierte Parameter wie zum Beispiel Startpositionsinformationen verwendet. Eine mit dem Roboter verbundene Steuervorrichtung ist dafür ausgelegt, die Parameter simultan zur Teilemontage zu optimieren.
  • Die JP 5 969 676 B1 beschreibt eine Maschinenlernvorrichtung zum Optimieren eines Zeitpunkts für eine Werkzeugkorrektur in einer Werkzeugmaschine. Eine Statusbeobachtungseinheit beobachtet Statusvariablen wie ein Werkzeugkorrekturintervall, eine Verarbeitungsfehlerhöhe und ein Maschinenarbeitsverhältnis. Eine Lerneinheit mit Vergütungsberechnungseinheit berechnet eine Vergütung auf Basis der Statusvariablen und eine Funktionsaktualisierungseinheit erstellt oder aktualisiert eine Aktionswerttabelle basierend auf den Statusvariablen und der Vergütung.
  • Zusammenfassung der Erfindung
  • Das Einbringen von Komponenten mit großen Maßabweichungen in eine Montageeinrichtung, die einen Montagevorgang mit hoher Geschwindigkeit durchführt, verursacht jedoch eine Verringerung der Komponentenmontagegenauigkeit. Daher schlägt die Montage der Komponenten oft fehl und eine Fertigungsstraße wird häufig gestoppt. Andererseits ändert sich die Arbeitsgeschwindigkeit selbst dann nicht, wenn Komponenten mit kleinen Maßabweichungen in eine Montageeinrichtung eingebracht werden, die einen Montagevorgang mit niedriger Geschwindigkeit durchführt, so dass eine lange Betriebszeit erforderlich ist.
  • Daher ist es erwünscht, eine Maschinenierneinrichtung, die bei verringerter Betriebszeit eine Komponentenmontagegenauigkeit verbessern kann, und eine Komponentenmontageeinrichtung bereitzustellen, die die Maschinenlerneinrichtung aufweist.
  • Dafür wird eine Maschinenierneinrichtung mit den Merkmalen des Anspruchs 1 und ein Komponentenmontagesystem mit den Merkmalen des Anspruchs 7 bereitgestellt. Bevorzugte Ausführungsformen sind in den Unteransprüchen angegeben.
  • Gemäß einem ersten Aspekt der Offenbarung lernt eine Maschinenierneinrichtung einen Montagevorgang, bei dem wenigstens eine Arbeitsmaschine eine erste Komponente und eine zweite Komponente montiert, um eine Baugruppe herzustellen. Die Maschinenlerneinrichtung umfasst eine Zustandsüberwachungseinheit zum Überwachen von Zustandsgrößen, die den Zustand der Baugruppe, eine zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und/oder Informationen über eine zum Montieren der ersten und zweiten Komponente erforderliche Kraft, das Ergebnis einer Durchgangsprüfung der Baugruppe sowie Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang und/oder Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang umfassen; und eine Lerneinheit zum Lernen, in einander zugeordneter Weise, des Zustands der Baugruppe, der zum Montieren der ersten und zweiten Komponente erforderlichen Zeitdauer und/oder der Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft, des Ergebnisses der Durchgangsprüfung der Baugruppe sowie der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang und/oder der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang, die durch die Zustandsüberwachungseinheit überwacht werden.
  • Der erste Aspekt dient dazu, geeignetere Positions- und Stellungsbefehlswerte für jede der ersten und zweiten Komponenten vor dem Montagevorgang automatisch zu bestimmen. Daher ist es möglich, eine Maschinenierneinrichtung bereitzustellen, die unabhängig von Maßabweichungen der Komponenten eine Montagegenauigkeit der ersten und zweiten Komponente verbessern und die Betriebszeit verringern kann.
  • Die Ziele, Merkmale und Vorteile der vorliegenden Erfindung sowie andere Ziele, Merkmale und Vorteile gehen aus der folgenden genauen Beschreibung der Ausführungsformen der vorliegenden Erfindung in Verbindung mit den beigefügten Zeichnungen genauer hervor.
  • Figurenliste
    • 1 ist ein Blockdiagramm eines Komponentenmontagesystems gemäß einer Ausführungsform;
    • 2A ist eine Seitenansicht eines Beispiels einer ersten Komponente und einer zweiten Komponente;
    • 2B ist eine Draufsicht von 2A;
    • 3A ist eine Seitenansicht eines anderen Beispiels der ersten Komponente und der zweiten Komponente;
    • 3B ist eine Draufsicht von 3A;
    • 4 ist ein vergrößertes Blockdiagramm einer Maschinenlerneinrichtung;
    • 5 ist ein Blockdiagramm einer Maschinenlerneinrichtung gemäß einer anderen Ausführungsform;
    • 6 ist ein Flussdiagramm des Betriebs der Maschinenlerneinrichtung;
    • 7 ist eine schematische Darstellung eines Neuronenmodells;
    • 8 ist eine schematische Darstellung eines dreischichtigen neuronalen Netzmodells;
    • 9 ist ein Blockdiagramm einer Mehrzahl von Komponentenmontagesystemen gemäß einer weiteren Ausführungsform;
    • 10A ist eine Seitenansicht der ersten und zweiten Komponente gemäß einem weiteren Beispiel; und
    • 10B ist eine Draufsicht von 10A.
  • Genaue Beschreibung der Erfindung
  • Ausführungsformen der vorliegenden Erfindung sind nachstehend unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. In den Zeichnungen geben gleiche Bezugszeichen gleiche Komponenten an. Des einfacheren Verständnisses halber wurde der Maßstab der Zeichnungen geeignet abgeändert.
  • 1 ist ein Blockdiagramm eines Komponentenmontagesystems gemäß einer Ausführungsform. Ein Komponentenmontagesystem 1 umfasst hauptsächlich eine Komponentenmontageeinrichtung 10 und eine Steuereinrichtung 20 zum Steuern der Komponentenmontageeinrichtung 10.
  • Die Komponentenmontageeinrichtung 10 umfasst wenigstens eine Arbeitsmaschine 11 und 12. Die in 1 gezeigten Arbeitsmaschinen 11 und 12 sind beispielsweise vertikale Knickarmroboter, können jedoch auch andere Maschinen sein, d.h. Maschinen für einfache Aufgaben, wie etwa Schraub- und Presseinrichtungen, oder Werkzeugmaschinen. In der folgenden Beschreibung wird angenommen, dass die Arbeitsmaschinen 11 und 12 Roboter sind.
  • Die Roboter 11 und 12 greifen eine erste Komponente 41 bzw. eine zweite Komponente 42 mit ihren Händen. Die erste Komponente 41 und die zweite Komponente 42, die miteinander in Eingriff gebracht werden können, sind in separaten Behältern (nicht gezeigt) enthalten. Die erste Komponente 41 und die zweite Komponente 42 werden miteinander in Eingriff gebracht, um eine Baugruppe 40 zu bilden. Es wird darauf hingewiesen, dass eine einzelne Arbeitsmaschine (nicht gezeigt) die zweite Komponente 42 an der ersten Komponente 41 montieren kann, die durch ein Montagegestell oder dergleichen fixiert wird.
  • Die Roboter 11 und 12 greifen und entnehmen die erste Komponente 41 bzw. die zweite Komponente 42 aus den Behältern (nicht gezeigt). Danach bewegen sich die Roboter 11 und 12 zu Positionen, die durch Positions- und Stellungsbefehlswerte für die Roboter 11 und 12 bestimmt werden. Mit anderen Worten, die Positions- und Stellungsbefehlswerte sind Befehlswerte, die auf die Positionen und Stellungen der ersten Komponente 41 und der zweiten Komponente 42 bezogen sind.
  • Wenigstens einer der Roboter 11 und 12 bewegt sich entsprechend Richtungs-, Geschwindigkeits- und Kraftbefehlswerten für einen Montagevorgang, wodurch die erste Komponente 41 und zweite Komponente 42 montiert werden. Danach kehrt wenigstens einer der Roboter 11 und 12 zu der Position zurück, die durch die vorstehend beschriebenen Positions- und Stellungsbefehlswerte bestimmt wird. Bei dieser Anwendung wird eine Reihe von Vorgängen zwischen dem Start von den durch die Positions- und Stellungsbefehlswerte bestimmten Positionen und der Rückkehr zu den Positionen nach dem Durchführen der Montage als Montagevorgang bezeichnet.
  • 2A ist eine Seitenansicht eines Beispiels der ersten Komponente und der zweiten Komponente und 2B eine Draufsicht von 2A. Wie in 2A gezeigt, sind sowohl die erste Komponente 41 als auch die zweite Komponente 42 Verbindungsteile, die miteinander in Eingriff gebracht werden. Alternativ kann, wie in 3A, die eine Seitenansicht eines anderen Beispiels der ersten Komponente und zweiten Komponente ist, und 3B gezeigt, die eine Draufsicht von 3A ist, die erste Komponente 41 ein Verbindungsteil und die zweite Komponente 42 ein Stift sein, der in eine Durchgangsbohrung 45 des Verbindungsteils eingesetzt wird.
  • Wieder Bezug nehmend auf 1, ist die Steuereinrichtung 20 ein digitaler Computer, der eine CPU (Zentraleinheit) und eine Datenspeichereinheit, wie etwa einen Speicher, aufweist. Die Steuereinheit 20 umfasst eine Baugruppenzustandserfassungseinheit 21 zum Erfassen des Zustands der Baugruppe 40, zu der die erste Komponente 41 und die zweite Komponente 42 montiert werden. Die Baugruppenzustandserfassungseinheit 21 erfasst die verschiedenen Zustände der Baugruppe 40 basierend auf Informationen von beispielsweise einer Kamera oder einem Vision-Sensor. Die Zustände der Baugruppe 40 umfassen die Abmessungen der Baugruppe 40, das Positionsverhältnis (einschließlich eines Abweichungsbetrags) zwischen der ersten Komponente 41 und der zweiten Komponente 42 in der Baugruppe 40, einen Abstand G, die Winkel A1 und A2 zwischen der ersten Komponente 41 und der zweiten Komponente 42, die Position der Baugruppe 40 von einem beliebigen Ursprungspunkt und dergleichen.
  • Ferner umfasst die Steuereinheit 20 eine Zeitmesseinheit 22, z.B. einen Zeitgeber, zum Messen einer Zeitdauer T, die die Komponentenmontageeinrichtung 10 zum Montieren der ersten Komponente 41 und zweiten Komponente 42 benötigt. Die Zeitmesseinheit 22 misst die Zeit ab dem Zeitpunkt, zu dem sich die Roboter 11 und 12 in den durch die Positions- und Stellungsbefehlswerte bestimmten Positionen befinden, bis zu dem Zeitpunkt, zu dem die Roboter 11 und 12 nach dem Durchführen der Montage in die vorstehend beschriebenen Positionen zurückkehren.
  • Die Steuereinheit 20 umfasst ferner eine Krafterfassungseinheit 23 zum Erfassen von Informationen über eine zum Montieren der ersten Komponente 41 und der zweiten Komponente 42 erforderliche Kraft. Die Krafterfassungseinheit 23 erfasst einen Druck und dergleichen beim Ineingriffbringen der ersten Komponente 41 und der zweiten Komponente 42 basierend auf Informationen, die in bestimmten Steuerintervallen von Kraftsensoren gesendet werden, die z.B. an den Robotern 11 und 12 bereitgestellt sind.
  • Die Steuereinheit 20 umfasst ferner eine Durchgangsprüfeinheit 24 zum Durchführen einer Durchgangsprüfung an der Baugruppe 40. Die Durchgangsprüfung wird nach deren Montage an der Baugruppe 40 durchgeführt. Wenn ein zwischen der ersten Komponente 41 und der zweiten Komponente 42 fließender elektrischer Strom innerhalb eines bestimmten Bereichs liegt und/oder der Widerstand zwischen der ersten Komponente 41 und der zweiten Komponente 42 innerhalb eines bestimmten Bereichs liegt, erzielt die Durchgangsprüfung ein günstiges Ergebnis. Zu diesem Zweck sind die erste Komponente 41 und die zweite Komponente 42 bevorzugt aus leitfähigen Materialien gefertigt.
  • Die Steuereinheit 20 umfasst ferner eine Positions-/Stellungserfassungseinheit 25 zum Erfassen der Position und Stellung der ersten Komponente 41 und/oder der zweiten Komponente 42 vor dem Montagevorgang. Die Positions-/Stellungserfassungseinheit 25 erfasst die Position und Stellung der ersten Komponente 41 und/oder der zweiten Komponente 42 basierend auf Informationen von einem Positionsdetektor, z.B. einem Encoder, der an einem Motor zum Antreiben jeder Achse der Roboter 11 und 12 bereitgestellt ist.
  • Wie in 1 gezeigt, umfasst die Steuereinheit 20 ferner eine Maschinenlerneinrichtung 30. Die Maschinenlerneinrichtung 30 kann auch außerhalb der Steuereinheit 20 bereitgestellt werden. In diesem Fall ist die Maschinenlerneinrichtung 30 kommunikationsfähig mit der Steuereinheit 20 und der Komponentenmontageeinrichtung 10 verbunden. Die Maschinenlerneinrichtung 30 bestimmt die Richtungs-, Geschwindigkeits- und Kraftbefehlswerte zum Montieren der ersten Komponente 41 und zweiten Komponente 42 sowie die Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder die zweite Komponente 42, die durch die Hände der Roboter 11 und 12 gegriffen werden (diese Befehlswerte können nachstehend einfach als „Befehlswerte“ bezeichnet sein). Die Befehlswerte sind in Betriebsprogrammen für die Roboter 11 und 12 enthalten.
  • Bezug nehmend auf 4, die die Maschinenlerneinrichtung vergrößert darstellt, umfasst die Maschinenlerneinrichtung 30 eine Zustandsüberwachungseinheit 31 zum Überwachen von Zustandsgrößen, die den Zustand der Baugruppe 40, zu der die erste Komponente 41 und zweite Komponente 42 montiert werden, die zum Montieren der ersten Komponente 41 und zweiten Komponente 42 erforderliche Zeitdauer und/oder die Informationen über die zum Montieren der ersten Komponente 41 und zweiten Komponente 42 erforderliche Kraft, das Ergebnis der Durchgangsprüfung der Baugruppe 40 sowie die Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder die zweite Komponente 42 vor dem Montagevorgang und/oder die Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang umfassen. Die Zustandsüberwachungseinheit 31 speichert die Zustandsgrößen sequentiell in der Datenspeichereinheit, wie etwa dem Speicher, zusammen mit der Überwachungszeit.
  • Darüber hinaus umfasst die Maschinenlerneinrichtung 30 eine Lerneinheit 35 zum Lernen, in einander zugeordneter Weise, des Zustands der Baugruppe 40, der zum Montieren der ersten Komponente 41 und zweiten Komponente 42 erforderlichen Zeitdauer und/oder der Informationen über die zum Montieren der ersten Komponente 41 und zweiten Komponente 42 erforderliche Kraft, des Ergebnisses der Durchgangsprüfung der Baugruppe 40 sowie der Positions- und Stellungsbefehlswerte für die Position und Stellung der ersten Komponente 41 und/oder zweiten Komponente 42 vor dem Montagevorgang und/oder der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang, die durch die Zustandsüberwachungseinheit 31 überwacht werden.
  • Die Lerneinheit 35 kann verschiedene Maschinenlernalgorithmen, wie etwa überwachtes Lernen, unüberwachtes Lernen, halbüberwachtes Lernen, bestärkendes Lernen, Transduktion, Multi-Task-Lernen und dergleichen verwenden. In der folgenden Beschreibung führt die Lerneinheit 35 unter Verwendung von Q-Lernen ein bestärkendes Lernen durch.
  • Bezug nehmend auf 4 entspricht die Maschinenlerneinrichtung 30 einem Agenten beim bestärkenden Lernen. Die Baugruppenzustandserfassungseinheit 21, die Zeitmesseinheit 22, die Krafterfassungseinheit 23, die Durchgangsprüfeinheit 24 und die Positions-/Stellungserfassungseinheit 25 erfassen den Zustand einer Umgebung.
  • Die Lerneinheit 35, die das bestärkende Lernen durchführt, umfasst eine Belohnungsberechnungseinheit 32 und eine Funktionsaktualisierungseinheit 33. Die Belohnungsberechnungseinheit 32 berechnet basierend auf dem Zustand der Baugruppe 40, der zum Montieren der ersten Komponente 41 und zweiten Komponente 42 erforderlichen Zeitdauer und/oder den Informationen über die zum Montieren der ersten Komponente 41 und zweiten Komponente 42 erforderliche Kraft sowie dem Ergebnis der Durchgangsprüfung der Baugruppe 40, die durch die Zustandsüberwachungseinheit 31 überwacht werden, eine Belohnung. Die Funktionsaktualisierungseinheit 33 aktualisiert eine Funktion, z.B. eine Aktionswertfunktion (Aktionswerttabelle), die die Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder die zweite Komponente 42 vor dem Montagevorgang und/oder die Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang bestimmt, anhand der derzeitigen Zustandsgrößen basierend auf der durch die Belohnungsberechnungseinheit 32 berechneten Belohnung. Selbstverständlich kann die Funktionsaktualisierungseinheit 33 auch eine andere Funktion aktualisieren.
  • Die Maschinenlerneinrichtung 30 umfasst ferner eine Entscheidungseinheit 34, die einen optimalen Wert der Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder zweite Komponente 42 vor dem Montagevorgang und/oder der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang anhand der derzeitigen Zustandsgrößen basierend auf einem Lernergebnis der Lerneinheit 35 bestimmt. Die Entscheidungseinheit 34 lernt die Auswahl (Entscheidung) einer besseren Aktion. Die Entscheidungseinheit 34 kann statt in der Maschinenlerneinrichtung 30 in der Steuereinheit 20 enthalten sein.
  • Es wird darauf hingewiesen, dass, wie in 5 gezeigt, die ein Blockdiagramm einer Maschinenlerneinrichtung gemäß einer anderen Ausführungsform ist, eine Maschinenlerneinrichtung 30 nur die Zustandsüberwachungseinheit 31 und die Lerneinheit 35 umfassen kann.
  • 6 ist ein Flussdiagramm des Betriebs einer Maschinenierneinrichtung. Der Betrieb der Maschinenlerneinrichtung 30 wird unter Bezugnahme auf die 1 bis 6 beschrieben. Der Betrieb von 6 wird immer dann durchgeführt, wenn die Roboter 11 und 12, die eine erste Komponente 41 bzw. eine zweite Komponente 42 greifen, die erste Komponente 41 und die zweite Komponente 42 montieren.
  • Zunächst werden in Schritt S11, zusätzlich zum Auswählen von Positions- und Stellungsbefehlswerten für die erste Komponente 41 und/oder zweite Komponente 42 vor einem Montagevorgang, auch Richtungs-, Geschwindigkeits- und Kraftbefehlswerte ausgewählt, um die erste Komponente 41 und zweite Komponente 42 zu montieren. Die Befehlswerte werden jeweils willkürlich aus den jeweiligen vorgegebenen Bereichen ausgewählt.
  • Alternativ kann bezüglich beispielsweise des Positionsbefehlswerts der ersten Komponente 41 anfangs ein Mindestwert innerhalb des vorgegebenen Bereichs und im nächsten Zyklus ein leicht erhöhter Wert ausgewählt werden. Dasselbe gilt für die anderen Befehlswerte. Das Verfahren gemäß 6 kann wiederholt werden, um sämtliche Kombinationen der Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder zweite Komponente 42 vor dem Montagevorgang und der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte auszuwählen, um die erste Komponente 41 und zweite Komponente 42 zu montieren.
  • Wenigstens einer der Roboter 11 und 12 wird basierend auf den Positions- und Stellungsbefehlswerten betrieben, so dass die erste Komponente 41 und zweite Komponente 42 in durch die Positions- und Stellungsbefehlswerte bestimmten Positionen platziert werden. Dann werden die erste Komponente 41 und zweite Komponente 42 basierend auf den Richtungs-, Geschwindigkeits- und Kraftbefehlswerten für den Montagevorgang zu einer Baugruppe 40 montiert. Zum Schluss werden die Roboter 11 und 12 in die durch die Positions- und Stellungsbefehlswerte bestimmten Positionen zurückgeführt. Zu diesem Zeitpunkt lässt eine Hand wenigstens eines der Roboter 11 und 12 die montierten Komponenten 41 und 42 los. Es wird darauf hingewiesen, dass die Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang nur an einen der Roboter 11 und 12 ausgegeben werden können.
  • Dann erfasst die Baugruppenzustandserfassungseinheit 21 in Schritt S12 die verschiedenen Zustände der Baugruppe 40, zum Beispiel die Abmessungen der Baugruppe 40, das Positionsverhältnis zwischen der ersten Komponente 41 und zweiten Komponente 42 in der Baugruppe 40, einen Abstand, die Winkel A1 und A2 zwischen der ersten Komponente 41 und zweiten Komponente 42 und die Position der Baugruppe 40 von einem beliebigen Ursprungspunkt, und vergleicht die verschiedenen Zustände mit jeweiligen vorgegebenen Bereichen.
  • Wenn die verschiedenen Zustände der Baugruppe 40 in Schritt S12 innerhalb der jeweiligen vorgegebenen Bereiche liegen, wird die Belohnung in Schritt S13 erhöht. Wenn die verschiedenen Zustände der Baugruppe 40 hingegen in Schritt S12 außerhalb der jeweiligen vorgegebenen Bereiche liegen, wird die Belohnung in Schritt S20a verringert oder bleibt unverändert. Die Schritte S12, S13 und S20a werden bevorzugt in Bezug auf jeden der verschiedenen Zustände der Baugruppe 40 durchgeführt.
  • Dann bestimmt die Zeitmesseinheit 22 in Schritt S14, ob die Messdauer, ab dem Zeitpunkt, zu dem sich die Roboter 11 und 12 in den durch die Positions- und Stellungsbefehlswerte bestimmten Positionen befinden, bis zu dem Zeitpunkt, zu dem die Roboter 11 und 12 nach dem Durchführen des Montagevorgangs in die Positionen zurückkehren, innerhalb eines vorgegebenen Zeitbereichs liegt. Wenn die Messdauer innerhalb des vorgegebenen Zeitbereichs liegt, wird die Belohnung in Schritt S15 erhöht. Wenn die Messdauer außerhalb des vorgegebenen Zeitbereichs liegt, wird die Belohnung in Schritt S20b verringert oder bleibt unverändert.
  • Dann wird in Schritt S16 bestimmt, ob eine durch die Krafterfassungseinheit 23 gemessene Montagekraft innerhalb eines vorgegebenen Kraftbereichs liegt. Wenn die Montagekraft innerhalb des vorgegebenen Kraftbereichs liegt, wird die Belohnung in Schritt S17 erhöht. Wenn die Montagekraft außerhalb des vorgegebenen Kraftbereichs liegt, wird die Belohnung in Schritt S20c verringert oder bleibt unverändert.
  • Dann wird in Schritt S18 bestimmt, ob eine durch die Durchgangsprüfeinheit 24 durchgeführte Durchgangsprüfung ein günstiges Ergebnis erzielt. Genauer gesagt, wird bestimmt, ob ein während der Durchgangsprüfung geflossener elektrischer Strom und die Baugruppe 40 während der Durchgangsprüfung innerhalb jeweiliger vorgegebener Bereiche liegen und ob die Antwort eines Signals normal ist. Wenn die Durchgangsprüfung ein günstiges Ergebnis erzielt, wird die Belohnung in Schritt S19 erhöht. Wenn die Durchgangsprüfung ein ungünstiges Ergebnis erzielt, wird die Belohnung in Schritt S20d verringert oder bleibt unverändert.
  • Die Belohnungsberechnungseinheit 32 berechnet die Erhöhung oder Verringerung der Belohnung. Die Belohnung kann abhängig von Schritten um verschiedene Beträge erhöht oder verringert werden. Wenigstens einer der Bestimmungsschritte S12, S14, S16 und S18 und der darauf bezogene Belohnungsschritt können weggelassen werden.
  • Danach aktualisiert die Funktionsaktualisierungseinheit 33 in Schritt S21 eine Aktionswertfunktion. Das durch die Lerneinheit 35 durchgeführte Q-Lernen ist ein Verfahren zum Lernen eines Werts (des Werts einer Aktion) Q(s, a) zum Auswählen einer Aktion „a“ in einem bestimmten Umgebungszustand „s“. Folglich wird eine Aktion „a“ mit dem höchsten Wert Q(s, a) in einem bestimmten Zustand „s“ ausgewählt. Beim Q-Lernen werden verschiedene Aktionen „a“ in einem bestimmten Zustand „s“ durchgeführt und ein korrekter Wert Q(s, a) wird unter Verwendung von zu dieser Zeit vergebenen Belohnungen durch Versuch und Irrtum gelernt. Die folgende Gleichung (1) stellt eine Aktualisierungsgleichung für die Aktionswertfunktion Q(s, a) dar: Q ( s t ,a t ) < Q ( s t ,a t ) + α ( r t + 1 + γ maxQ α ( s t + 1 , a ) ( s t ,a t ) )
    Figure DE102017011754B4_0001
    wobei st und at eine Umgebung bzw. eine Aktion zu einem Zeitpunkt t darstellen. Durch Ausführen der Aktion at ändert sich die Umgebung in st+1 und eine Belohnung rt+1 wird aufgrund der Änderung der Umgebung berechnet. Ein „max“ umfassender Term stellt das Produkt eines Q-Werts, wenn eine Aktion „a“, die den höchsten Q-Wert (der zu diesem Zeitpunkt bekannt ist) aufweist, in der Umgebung st+1 ausgewählt wird, und γ dar. „γ“ ist ein Diskontierungsfaktor in dem Bereich 0 < γ ≤ 1 (für gewöhnlich 0,9 bis 0,99) und „α“ eine Lernrate in dem Bereich 0 < α ≤ 1 (für gewöhnlich in einer Größenordnung von 0,1).
  • Diese Aktualisierungsgleichung zeigt, dass, wenn ein Bewertungswert Q(st+1, max at+1) einer optimalen Aktion im nächsten Umgebungszustand, der sich von der Aktion „a“ ableitet, verglichen mit einem Bewertungswert Q(st, at) einer Aktion „a“ in einem Zustand „s“ höher ist, Q(st, at) erhöht wird. Wenn nicht, wird Q(st, at) verringert. Kurz gesagt, der Wert einer Aktion in einem bestimmten Zustand wird an einen optimalen Aktionswert im nächsten Zustand angenähert. Mit anderen Worten, die Lerneinheit 35 aktualisiert einen optimalen Wert der Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder zweite Komponente 42 vor einem Montagevorgang und/oder der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang.
  • Wie vorstehend beschrieben, aktualisiert die Funktionsaktualisierungseinheit 33 in Schritt S21 die Aktionswertfunktion unter Verwendung der Gleichung (1). Danach kehrt der Betrieb zu Schritt S11 zurück und es werden, zusätzlich zum Auswählen von Positions- und Stellungsbefehlswerten für die erste Komponente 41 und/oder zweite Komponente 42 vor einem Montagevorgang, auch Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang ausgewählt. Die Aktionswertfunktion wird in gleicher Weise aktualisiert. Es wird darauf hingewiesen, dass anstelle der Aktionswertfunktion eine Aktionswerttabelle aktualisiert werden kann.
  • Beim bestärkenden Lernen bestimmt die Lerneinheit 35 als Agent eine Aktion basierend auf dem Zustand einer Umgebung. In diesem Fall bedeutet die Aktion, dass die Entscheidungseinheit 34 neue Werte als die verschiedenen Befehlswerte auswählt, um die Aktion gemäß den neuen Werten durchzuführen. Die neuen Werte der verschiedenen Befehlswerte ändern die in 4 gezeigte Umgebung, z.B. die Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder zweite Komponente 42 vor einem Montagevorgang und/oder die Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang. Entsprechend der Änderung der Umgebung wird, wie vorstehend beschrieben, an die Maschinenlerneinrichtung 30 eine Belohnung vergeben und die Entscheidungseinheit 34 der Maschinenlerneinrichtung 30 lernt die Auswahl einer besseren Aktion (Entscheidung), beispielsweise um eine höhere Belohnung zu erhalten.
  • Somit erhöht eine mehrfache Wiederholung des in 6 gezeigten Betriebs die Verlässlichkeit der Aktionswertfunktion. Folglich wird es in Schritt S11 möglich, die Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder zweite Komponente 42 vor einem Montagevorgang und die Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang basierend auf der verlässlichen Aktionswertfunktion auszuwählen, um z.B. den Q-Wert zu erhöhen, wodurch eine optimale Bestimmung geeigneterer Maßbefehlswerte und dergleichen ermöglicht wird.
  • Daher ist es möglich, die durch die Funktionsaktualisierungseinheit 33 der Maschinenlerneinrichtung 30 aktualisierten Inhalte automatisch als die Positions- und Stellungsbefehlswerte für die erste Komponente 41 und/oder zweite Komponente 42 vor dem Montagevorgang und die Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang zu verwenden. Das Einbringen der Maschinenlerneinrichtung 30 in die Steuereinheit 20 ermöglicht eine automatische Einstellung der Befehlswerte. Somit ist es möglich, Maßabweichungen der ersten Komponente 41 und zweiten Komponente 42 automatisch zu glätten. Daher werden die erste Komponente 41 und die zweite Komponente 42 unabhängig von den Maßabweichungen der Komponenten mit verbesserter Genauigkeit montiert. Lernergebnisse der Maschinenlerneinrichtung beseitigen die Notwendigkeit, Befehlswerte manuell durch einen Bediener bereitzustellen. Folglich ist es möglich, die Montagedauer und infolgedessen die Produktionseffizienz zu verbessern.
  • Eine Funktion, die unter Verwendung eines später beschriebenen neuronalen Netzes angenähert wird, kann als Aktionswertfunktion verwendet werden. In diesem Fall können die durch die Zustandsüberwachungseinheit 31 überwachten Zustandsgrößen in einer mehrschichtigen Struktur berechnet werden, um die Aktionswertfunktion in Echtzeit zu aktualisieren. Dies liefert geeignetere Lernergebnisse. Dieses Verfahren hat bei Daten mit enormen Datenmengen von „s“ und „a“, wie etwa Bilddaten, einen erheblichen Vorteil.
  • Die in 4 gezeigte Maschinenlerneinrichtung 30 und dergleichen werden nochmals genau beschrieben, obgleich sich die Beschreibungen teilweise überschneiden. Die Maschinenlerneinrichtung 30 hat die Funktion, Wissen zu erlernen, sowie die Funktionen, durch Analyse aus einer in die Einrichtung eingegebenen Datengruppe nützliche Regeln, Wissensdarstellungen, Kriterien und dergleichen zu extrahieren und Bestimmungsergebnisse auszugeben. Dafür gibt es verschiedene Verfahren, die sich grob in „überwachtes Lernen“, „unüberwachtes Lernen“ und „bestärkendes Lernen“ einteilen lassen. Außerdem wird beim Ausführen dieser Verfahren ein als „tiefes Lernen“ bezeichnetes Verfahren zum Lernen der Extraktion der Merkmale selbst verwendet.
  • Beim „überwachten Lernen“ wird der Lerneinrichtung eine große Menge Datenpaare aus einem Eingang und einem Ergebnis (Label) zugeführt. Die Maschinenlerneinrichtung lernt Merkmale aus dem Datensatz und erhält heuristisch ein Modell zum Vorhersagen eines Ergebnisses anhand eines Eingangs, d.h. die Beziehung zwischen diesen. „Überwachtes Lernen“ lässt sich unter Verwendung eines Algorithmus, wie etwa eines später beschriebenen neuralen Netzes, ausführen.
  • Beim „unüberwachten Lernen“ wird der Maschinenlerneinrichtung lediglich eine große Menge Eingangsdaten zugeführt. Die Maschinenlerneinrichtung lernt die Verteilung der Eingangsdaten und wendet eine Komprimierung, Klassifizierung, Angleichung und dergleichen auf die Eingangsdaten an, ohne dass entsprechende Ausgangsdaten als Lehrer (Supervisor) zugeführt werden. Die Merkmale des Datensatzes können basierend auf ihrer Ähnlichkeit gruppiert werden oder dergleichen. Durch Verwenden dieser Ergebnisse unter Bereitstellung eines bestimmten Kriteriums wird ein Ausgang zugewiesen, um das Kriterium zu optimieren, was eine Vorhersage des Ausgangs ermöglicht. Außerdem gibt es als zwischengelagerte Problemstellung zwischen „überwachtem Lernen“ und „unüberwachtem Lernen“ ein als „halbüberwachtes Lernen“ bezeichnetes Verfahren, bei dem ein Teil der Daten Paare aus einem Eingang und einem Ausgang umfasst, während der andere Teil nur Eingänge umfasst. Bei dieser Ausführungsform werden Daten, die erhalten werden können, ohne die Komponentenmontageeinrichtung 10 tatsächlich zu betreiben, beim unüberwachten Lernen verwendet, um die Lerneffizienz zu verbessern.
  • Beim „bestärkenden Lernen“ werden Probleme wie folgt festgelegt:
    • - Die Steuereinrichtung überwacht einen Umgebungszustand und bestimmt eine Aktion.
    • - Die Umgebung ändert sich gemäß einer Regel und manchmal verändert die Aktion selbst die Umgebung.
    • - Immer wenn eine Aktion durchgeführt wird, wird ein Belohnungssignal zurückgeführt.
    • - Das Ziel besteht darin, eine zukünftige gesamte (diskontierte) Belohnung zu maximieren.
    • - Das Lernen beginnt in einem Zustand, in dem ein durch eine Aktion herbeigeführtes Ergebnis unbekannt oder unzureichend bekannt ist. Das Ergebnis wird erst nach einem tatsächlichen Betrieb der Komponentenmontageeinrichtung 10 als Daten erhalten. Mit anderen Worten, eine optimale Aktion muss durch Versuch und Irrtum ermittelt werden.
    • - Das Lernen kann in einem Anfangszustand durch Durchführen eines vorausgehenden Lernens (unter Verwendung des vorstehend beschriebenen überwachten Lernens oder eines inversen bestärkenden Lernverfahrens) an einem guten Ausgangspunkt gestartet werden, um die Tätigkeit (Aktion) eines Menschen nachzuahmen.
  • „Bestärkendes Lernen“ ist ein Verfahren zum Lernen optimaler Aktionen basierend nicht nur auf einer Bestimmung und Klassifizierung, sondern auch auf den Interaktionen zwischen einer Aktion und einer Umgebung durch Lernen von Aktionen, d.h. ein Lernverfahren zum Maximieren einer in Zukunft erhaltenen Gesamtbelohnung. Bei dieser Ausführungsform zeigt dies, dass Aktionen, die eine Auswirkung auf die Zukunft haben, erhalten werden können. Die folgende Beschreibung verwendet Q-Lernen als Beispiel, ist jedoch nicht darauf beschränkt.
  • Q-Lernen ist ein Verfahren zum Lernen eines Werts Q(s, a) zum Auswählen einer Aktion „a“ in einem bestimmten Umgebungszustand „s“. Mit anderen Worten, in einem bestimmten Zustand „s“ wird eine Aktion „a“ mit dem höchsten Wert Q(s, a) als optimale Aktion ausgewählt. Im Hinblick auf eine Kombination eines Zustands „s“ und einer Aktion „a“ ist ein korrekter Wert Q(s, a) anfangs jedoch völlig unbekannt. Daher wählt ein Agent (ein Subjekt einer Aktion) verschiedene Aktionen „a“ in einem bestimmten Zustand „s“ aus und erhält für jede Aktion „a“ eine Belohnung. Somit lernt der Agent, eine bessere Aktion, d.h. einen korrekten Wert Q(s, a), auszuwählen.
  • Das Ziel besteht darin, eine in Zukunft zu erhaltende Gesamtbelohnung zu maximieren, d.h. Q ( s ,a ) = E [ γ t r t ]
    Figure DE102017011754B4_0002
    als Ergebnis von Aktionen zu erhalten (ein Erwartungswert wird erzielt, wenn sich ein Zustand entsprechend optimalen Aktionen ändert; selbstverständlich sind die optimalen Aktionen noch nicht bekannt und müssen daher während des Lernens ermittelt werden). Eine Aktualisierungsgleichung für einen solchen Wert Q(s, a) lässt sich beispielsweise wie folgt (entspricht der vorstehenden Gleichung (1)) darstellen: Q ( s t ,a t ) < Q ( s t ,a t ) + α ( r t + 1 + γ maxQ α ( s t + 1 , a ) ( s t ,a t ) )
    Figure DE102017011754B4_0003
    wobei st einen Umgebungszustand zu einem Zeitpunkt t und at eine Aktion zum Zeitpunkt t darstellt. Durch Ausführen der Aktion at ändert sich der Zustand in st+1. „rt+1“ stellt eine durch die Zustandsänderung bereitgestellte Belohnung dar. Ein „max“ umfassender Term stellt das Produkt eines Q-Werts, wenn eine Aktion „a“, die den höchsten zu diesem Zeitpunkt bekannten Q-Wert aufweist, im Zustand st+1 ausgewählt wird, und y dar. „γ“ ist ein Parameter von 0 < γ ≤ 1, der als Diskontierungsfaktor bezeichnet wird. „α“ ist eine Lernrate in dem Bereich 0 < α ≤ 1.
  • Diese Gleichung gibt ein Verfahren zum Aktualisieren eines Bewertungswerts Q(st, at) einer Aktion at in einem Zustand st basierend auf einer als Ergebnis der Aktion at zurückgeführten Belohnung rt+1 an. Diese Aktualisierungsgleichung zeigt, dass, wenn ein Bewertungswert Q(st+1, max at+1) einer optimalen Aktion „max a“ im nächsten Zustand, der sich von einer Belohnung rt+1 und der Aktion „a“ ableitet, verglichen mit einem Bewertungswert Q(st, at) einer Aktion „a“ in einem Zustand „s“ höher ist, Q(st, at) erhöht wird. Wenn nicht, wird Q(st, at) verringert. Mit anderen Worten, der Wert einer Aktion in einem bestimmten Zustand wird an einen optimalen Aktionswert im nächsten Zustand angenähert, der von einer unverzüglich als Ergebnis der Aktion zurückgeführten Belohnung und der Aktion selbst abgeleitet wird.
  • Es gibt zwei Verfahren zum Darstellen von Q(s, a) auf einem Computer, d.h. ein Verfahren, bei dem die Q-Werte aller Zustands-/Aktionspaare (s, a) in einer Tabelle (Aktionswerttabelle) festgehalten werden, und ein Verfahren, bei dem eine Funktion zum Annähern von Q(s, a) erstellt wird. Bei letzterem Verfahren kann die vorstehend beschriebene Aktualisierungsgleichung durch Einstellen eines Parameters für eine Näherungsfunktion unter Verwendung eines stochastischen Gradientenabstiegsverfahrens oder dergleichen ausgeführt werden. Als Näherungsfunktion kann ein später beschriebenes neuronales Netz verwendet werden.
  • Beim überwachten Lernen, unüberwachten Lernen und bestärkenden Lernen kann ein neuronales Netz als Näherungsalgorithmus für eine Wertfunktion verwendet werden. Das neuronale Netz besteht beispielsweise aus einer Recheneinheit, einem Speicher und dergleichen, die ein in 7 gezeigtes Neuronenmodell imitieren. 7 ist eine schematische Darstellung eines Neuronenmodells.
  • Wie in 7 gezeigt, erzeugt ein Neuron in Antwort auf eine Mehrzahl Eingänge x (z.B. die Eingänge x1 bis x3) einen Ausgang y. Auf jeden der Eingänge x1 bis x3 wird ein dem Eingang x entsprechendes Gewicht w (w1 bis w3) angewandt. Dadurch erzeugt das Neuron den durch die folgende Gleichung dargestellten Ausgang y. Es wird darauf hingewiesen, dass der Eingang x, der Ausgang y und das Gewicht w allesamt Vektoren sind. y = f k (   i = 1 n x i w i θ )
    Figure DE102017011754B4_0004
    wobei θ eine systematische Messabweichung und fk eine Aktivierungsfunktion ist.
  • Nun wird unter Bezugnahme auf 8 ein dreischichtiges neuronales Netz mit den Gewichten von drei Schichten beschrieben, das durch eine Kombination der vorstehend beschriebenen Neuronen gebildet wird. 8 ist eine schematische Darstellung eines neuronalen Netzes mit den Gewichten der drei Schichten D1 bis D3.
  • Wie in 8 gezeigt, wird eine Mehrzahl Eingänge x (z.B. die Eingänge x1 bis x3) auf der linken Seite des neuronalen Netzes eingegeben und ein Ergebnis y (z.B. die Ergebnisse y1 bis y3) auf dessen rechter Seite ausgegeben.
  • Genauer gesagt werden die Eingänge x1 bis x3 in jedes der drei Neuronen N11 bis N13 eingegeben und gleichzeitig entsprechend gewichtet. Die auf die Eingänge angewandten Gewichte sind insgesamt durch W1 angegeben.
  • Die Neuronen N11 bis N13 geben jeweils die Vektoren z11 bis z13 aus. Die Vektoren z11 bis z13 werden insgesamt durch einen Merkmalsvektor Z1 angegeben, der als Vektor angesehen wird, der einen Merkmalsbetrag aus dem Eingangsvektor extrahiert. Der Merkmalsvektor Z1 ist ein Merkmalsvektor zwischen dem Gewicht W1 und einem Gewicht W2.
  • Die Vektoren z11 bis z13 werden in jedes von zwei Neuronen N21 und N22 eingegeben und gleichzeitig entsprechend gewichtet. Die auf die Merkmalsvektoren angewandten Gewichte sind insgesamt durch W2 angegeben.
  • Die Neuronen N21 und N22 geben jeweils die Vektoren z21 und z22 aus. Die Vektoren z21 und z22 sind insgesamt durch einen Merkmalsvektor Z2 angegeben. Der Merkmalsvektor Z2 ist ein Merkmalsvektor zwischen dem Gewicht W2 und einem Gewicht W3.
  • Die Merkmalsvektoren z21 und z22 werden in jedes von drei Neuronen N31 bis N33 eingegeben und gleichzeitig entsprechend gewichtet. Die auf die Merkmalsvektoren angewandten Gewichte sind insgesamt durch W3 angegeben.
  • Schließlich geben die Neuronen N31 bis N33 jeweils die Ergebnisse y1 bis y3 aus.
  • Das neuronale Netz hat einen Lernmodus und einen Wertvorhersagemodus. Im Lernmodus wird das Gewicht w unter Verwendung eines Lerndatensatzes gelernt. Im Wertvorhersagemodus wird die Aktion der Komponentenmontageeinrichtung 10 unter Verwendung des Parameters bestimmt (der Begriff „Vorhersage“ wird der Einfachheit halber verwendet, es können jedoch verschiedene Aufgaben durchgeführt werden, die eine Erfassung, Klassifizierung, Inferenz und dergleichen umfassen).
  • Im Wertvorhersagemodus können durch einen tatsächlichen Betrieb der Komponentenmontageeinrichtung 10 erhaltene Daten unverzüglich gelernt und in der nächsten Aktion reflektiert werden (Online-Lernen). Alternativ kann das Lernen insgesamt unter Verwendung einer vorab gesammelten Datengruppe durchgeführt werden und danach unter Verwendung des Parameters ein Erfassungsmodus ausgeführt werden (Batch-Lernen). Dazwischen kann der Lernmodus immer dann durchgeführt werden, wenn sich eine bestimmte Datenmenge angesammelt hat.
  • Die Gewichte W1 bis W3 können unter Verwendung eines Fehlerrückführungsalgorithmus (Rückwärtspropagierungsalgorithmus) gelernt werden. Fehlerinformationen werden von rechts eingegeben und nach links propagiert. Der Fehlerrückführungsalgorithmus stellt ein Verfahren dar, bei dem jedes Gewicht in Bezug auf jedes der Neuronen eingestellt (gelernt) wird, um die Differenz zwischen einem Ausgang y und einem tatsächlichen Ausgang y (Lehrer) in Antwort auf einen Eingang x zu minimieren.
  • Ein solches neuronales Netz kann mehr als drei Schichten aufweisen (als tiefes Lernen bezeichnet). Eine Recheneinheit, die anhand von Eingängen stufenweise eine Merkmalsextraktion und eine Regression von Ergebnissen durchführt, kann nur anhand der Lehrerdaten automatisch erhalten werden.
  • Demgemäß umfasst, wie in 4 gezeigt, die Maschinenlerneinrichtung 30 gemäß dieser Ausführungsform zum Durchführen des vorstehend beschriebenen Q-Lernens die Zustandsüberwachungseinheit 31, die Lerneinheit 35 und die Entscheidungseinheit 34. Ein auf die vorliegende Erfindung anwendbares Maschinenlernverfahren ist jedoch nicht auf Q-Lernen beschränkt. Im Falle des Anwendens überwachten Lernens entspricht beispielsweise eine Wertfunktion einem Lernmodell und eine Belohnung einem Fehler.
  • 9 ist ein Blockdiagramm einer Mehrzahl Komponentenmontagesysteme gemäß einer weiteren Ausführungsform. 9 zeigt eine Mehrzahl Komponentenmontagesysteme 1 und 1a bis 1n. Die Komponentenmontagesysteme 1 und 1a bis 1n umfassen jeweils Maschinenlerneinrichtungen 30 und 30a bis 30n. Die Maschinenierneinrichtungen 30 und 30a bis 30n umfassen, wie vorstehend beschrieben, jeweils Zustandsüberwachungseinheiten 31 und 31a bis 31n und dergleichen. Wie aus 9 ersichtlich, sind die Komponentenmontagesysteme 1 und 1a bis 1n über eine Kommunikationseinheit 60 miteinander verbunden. Die Kommunikationseinheit 60 ist ein drahtgebundenes oder drahtloses Netzwerk.
  • Durch mehrfaches Durchführen maschinellen Lernens werden verschiedene Befehlswerte in der Zustandsüberwachungseinheit 31 des Komponentenmontagesystems 1 gespeichert. In gleicher Weise speichert die Maschinenlerneinrichtung 30 des Komponentenmontagesystems 1 Lernergebnisse (Funktionen und dergleichen).
  • Daher können, selbst wenn die Maschinenlerneinrichtung 30a des Komponentenmontagesystems 1a kein maschinelles Lernen durchführt, beispielsweise die Befehlswerte und Lernergebnisse des Komponentenmontagesystems 1 über die Kommunikationseinheit 60 in die Zustandsüberwachungseinheit 31a und dergleichen des Komponentenmontagesystems 1a eingebracht werden. Daher kann die Maschinenlerneinrichtung 30a des Komponentenmontagesystems 1a die verlässlichen Lernergebnisse und dergleichen verwenden, ohne tatsächlich ein maschinelles Lernen durchzuführen. Dasselbe gilt für die anderen Komponentenmontagesysteme 1n und dergleichen.
  • Ferner ist in 9 ein Hostcomputer 50, z.B. ein Server, der eine Datenspeichereinheit 51 aufweist, drahtgebunden oder drahtlos mit der Kommunikationseinheit 60 verbunden. Es wird darauf hingewiesen, dass der Hostcomputer 50 beispielsweise mit einem der Komponentenmontagesysteme 1 und 1a bis 1n direkt verbunden sein kann.
  • Die in der Zustandsüberwachungseinheit 31 des Komponentenmontagesystems 1 gespeicherten Befehlswerte, Lernergebnisse und dergleichen können über die Kommunikationseinheit 60 in der Datenspeichereinheit 51 des Hostcomputers 50 gespeichert werden. In diesem Fall greift das Komponentenmontagesystem 1a auf die Datenspeichereinheit 51 des Hostcomputers 50 zu, um die Befehlswerte, Lernergebnisse und dergleichen in die Maschinenlerneinrichtung 30a einzubringen. Mit anderen Worten, selbst wenn das Komponentenmontagesystem 1 vorübergehend vom Netzwerk getrennt wird, kann das andere Komponentenmontagesystem 1a die Befehlswerte, Lernergebnisse und dergleichen erhalten.
  • Es wird darauf hingewiesen, dass, wenn die erste Komponente 41 ein Verbindungsteil und die zweite Komponente 42 ein Stift ist, wie unter Bezugnahme auf die 3A und 3B beschrieben, der Zustand der Baugruppe 40 den Überstandbetrag des Stifts 42 von einer Endfläche des Verbindungsteils 41 und das Positionsverhältnis zwischen der Durchgangsbohrung 45 und dem Stift 42 umfasst. Der Überstandbetrag und dergleichen werden in Schritt S12 von 6 mit jeweiligen vorgegebenen Bereichen verglichen und der Betrieb läuft in gleicher Weise weiter.
  • 10A ist eine Seitenansicht der ersten Komponente und der zweiten Komponente gemäß einem weiteren Beispiel und 10B eine Draufsicht von 10A. Die 10A und 10B zeigen Platten 41a und 41b, in denen Durchgangsbohrungen mit Schraubengewinden ausgebildet sind. Eine Schraube 42 wird mit den Schraubengewinden in Eingriff gebracht, um eine Baugruppe 40 zu bilden.
  • In diesem Fall entsprechen die zwei Platten 41a und 41b, die in einem einander überlagernden Zustand gegriffen werden, einer durch den Roboter 11 gegriffenen ersten Komponente 41. Die Schraube 42, d.h. die zweite Komponente 42, wird durch eine andere Arbeitsmaschine oder den Roboter 12 in Eingriff gebracht.
  • Bei dieser Ausführungsform kann die aus den zwei Platten 41a und 41b bestehende erste Komponente 41 vor einem Montagevorgang überwacht werden. Mit anderen Worten, das Positionsverhältnis (einschließlich eines Abweichungsbetrages) zwischen den Platten 41a und 41b, das Positionsverhältnis zwischen jeder Durchgangsbohrung und der Schraube 42, ein Abstand G, der Überstandbetrag B der Schraube 42, die Position der Baugruppe 40 von einem beliebigen Ursprungspunkt und dergleichen können unter Verwendung beispielsweise einer Kamera oder eines Vision-Sensors erfasst werden. Wie vorstehend beschrieben, können die erfassten Werte in die Zustandsüberwachungseinheit 31 eingegeben werden und die Lerneinheit 35 kann basierend auf den erfassten Werten ein Lernen durchführen. Ferner umfassen die vorstehend beschriebenen Informationen über eine Kraft ein Drehmoment zum Ineingriffbringen der Schraube 42. Das Drehmoment wird in Schritt S16 von 6 mit einem vorgegebenen Drehmomentbereich verglichen und der Betrieb läuft in gleicher Weise weiter.
  • Wie vorstehend beschrieben, sind die erste Komponente 41 und die zweite Komponente 42 nicht auf die in den Zeichnungen dargestellten Komponenten beschränkt, sondern umfassen verschiedene Arten von Komponenten, die miteinander in Eingriff gebracht werden können. Der Umfang der vorliegenden Erfindung umfasst solche Fälle.
  • Aspekte der Offenbarung
  • Ein erster Aspekt stellt eine Maschinenlerneinrichtung 30 bereit, die einen Montagevorgang lernt, bei dem wenigstens eine Arbeitsmaschine 11 und 12 eine erste Komponente 41 und eine zweite Komponente 42 montiert, um eine Baugruppe 40 herzustellen. Die Maschinenlerneinrichtung 30 umfasst eine Zustandsüberwachungseinheit 31 zum Überwachen von Zustandsgrößen, die den Zustand der Baugruppe, eine zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und/oder Informationen über eine zum Montieren der ersten und zweiten Komponente erforderliche Kraft, das Ergebnis einer Durchgangsprüfung der Baugruppe sowie Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang und/oder Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang umfassen; und eine Lerneinheit 35 zum Lernen, in einander zugeordneter Weise, des Zustands der Baugruppe, der zum Montieren der ersten und zweiten Komponente erforderlichen Zeitdauer und/oder der Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft, des Ergebnisses der Durchgangsprüfung der Baugruppe sowie der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang und/oder der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang, die durch die Zustandsüberwachungseinheit überwacht werden.
  • Gemäß einem zweiten Aspekt nach dem ersten Aspekt umfasst die Lerneinheit eine Belohnungsberechnungseinheit 32 zum Berechnen einer Belohnung basierend auf dem Zustand der Baugruppe, der zum Montieren der ersten und zweiten Komponente erforderlichen Zeitdauer und/oder den Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft sowie dem Ergebnis der Durchgangsprüfung der Baugruppe, die durch die Zustandsüberwachungseinheit überwacht werden; und eine Funktionsaktualisierungseinheit 33 zum Aktualisieren einer Funktion zum Bestimmen der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang und/oder der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang anhand der derzeitigen Zustandsgrößen basierend auf der durch die Belohnungsberechnungseinheit berechneten Belohnung.
  • Gemäß einem dritten Aspekt nach dem ersten oder zweiten Aspekt umfasst die Maschinenlerneinrichtung ferner eine Entscheidungseinheit 34 zum Bestimmen eines optimalen Werts der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang und/oder der Richtungs-, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang anhand der derzeitigen Zustandsgrößen basierend auf dem Lernergebnis der Lerneinheit.
  • Gemäß einem vierten Aspekt nach einem der ersten bis dritten Aspekte erhöht die Belohnungsberechnungseinheit die Belohnung, wenn der Zustand der Baugruppe, die zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und die Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft, die durch die Zustandsüberwachungseinheit überwacht werden, innerhalb jeweiliger zulässiger Bereiche liegen, während die Belohnungsberechnungseinheit die Belohnung verringert, wenn der Zustand der Baugruppe, die zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und die Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft außerhalb der jeweiligen zulässigen Bereiche liegen. Ferner erhöht die Belohnungsberechnungseinheit die Belohnung, wenn die Durchgangsprüfung der Baugruppe ein günstiges Ergebnis erzielt, während die Belohnungsberechnungseinheit die Belohnung verringert, wenn die Durchgangsprüfung der Baugruppe ein ungünstiges Ergebnis erzielt.
  • Gemäß einem fünften Aspekt nach einem der ersten bis vierten Aspekte berechnet die Lerneinheit die durch die Zustandsüberwachungseinheit überwachten Zustandsgrößen in einer mehrschichtigen Struktur und aktualisiert die Funktion in Echtzeit.
  • Gemäß einem sechsten Aspekt nach einem der ersten bis fünften Aspekte aktualisiert die Funktionsaktualisierungseinheit die Funktion unter Verwendung einer durch eine Funktionsaktualisierungseinheit einer anderen Maschinenlerneinrichtung aktualisierten Funktion.
  • Ein siebter Aspekt stellt ein Komponentenmontagesystem 1 bereit, das die Maschinenlerneinrichtung nach einem der ersten bis sechsten Aspekte umfasst.
  • Effekte der Aspekte
  • Die ersten bis dritten Aspekte dienen dazu, geeignetere Positions- und Stellungsbefehlswerte für jede der ersten und zweiten Komponenten vor dem Montagevorgang automatisch zu bestimmen, wodurch eine Verbesserung der Montagegenauigkeit der ersten und zweiten Komponente und eine Verringerung der Betriebszeit ermöglicht werden.
  • Der vierte Aspekt erleichtert eine geeignetere Bestimmung der Belohnung.
  • Der fünfte Aspekt erleichtert das Erhalten des geeigneten Lernergebnisses.
  • Gemäß dem sechsten Aspekt wird das Lernergebnis einer bestimmten Maschinenlerneinrichtung in eine andere Maschinenlerneinrichtung eingebracht, um verlässliche Lernergebnisse und dergleichen gemeinsam zu nutzen.
  • Der siebte Aspekt glättet automatisch Maßabweichungen der ersten und zweiten Komponente. Das Verwenden der Lernergebnisse der Maschinenlerneinrichtung beseitigt die Notwendigkeit, die Positionen und dergleichen der Komponenten manuell durch einen Bediener einzustellen. Folglich ist es möglich, die Montagedauer der ersten und zweiten Komponente zu verringern.
  • Die vorliegende Erfindung wurde unter Verwendung typischer Ausführungsformen beschrieben, für Fachleute auf dem Gebiet ist jedoch ersichtlich, dass, zusätzlich zu den vorstehend beschriebenen Abwandlungen, innerhalb des Umfangs der vorliegenden Erfindung verschiedene andere Abwandlungen, Weglassungen und Hinzufügungen vorgenommen werden können.

Claims (7)

  1. Maschinenlerneinrichtung (30) zum Lernen eines Montagevorgangs, bei dem wenigstens eine Arbeitsmaschine (11, 12) eine erste Komponente (41) und eine zweite Komponente (42) montiert, um eine Baugruppe (40) herzustellen, wobei die Maschinenlerneinrichtung umfasst: - eine Zustandsüberwachungseinheit (31) zum Überwachen von Zustandsgrößen, die den Zustand der Baugruppe, eine zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und/oder Informationen über eine zum Montieren der ersten und zweiten Komponente erforderliche Kraft, das Ergebnis einer Durchgangsprüfung der Baugruppe sowie Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang umfassen; und - eine Lerneinheit (35) zum Lernen, in einander zugeordneter Weise, des Zustands der Baugruppe, der zum Montieren der ersten und zweiten Komponente erforderlichen Zeitdauer und/oder der Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft, des Ergebnisses der Durchgangsprüfung der Baugruppe sowie der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang, die durch die Zustandsüberwachungseinheit überwacht werden; und wobei die erste Komponente (41) und die zweite Komponente (42) aus leitfähigen Materialien gefertigt sind.
  2. Maschinenlerneinrichtung nach Anspruch 1, wobei die Lerneinheit umfasst: - eine Belohnungsberechnungseinheit (32) zum Berechnen einer Belohnung basierend auf dem Zustand der Baugruppe, der zum Montieren der ersten und zweiten Komponente erforderlichen Zeitdauer und/oder den Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft sowie dem Ergebnis der Durchgangsprüfung der Baugruppe, die durch die Zustandsüberwachungseinheit überwacht werden; und - eine Funktionsaktualisierungseinheit (33) zum Aktualisieren einer Funktion zum Bestimmen der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang anhand der derzeitigen Zustandsgrößen basierend auf der durch die Belohnungsberechnungseinheit berechneten Belohnung.
  3. Maschinenlerneinrichtung nach Anspruch 1 oder 2, die ferner eine Entscheidungseinheit (34) zum Bestimmen eines optimalen Werts der Positions- und Stellungsbefehlswerte für die erste und/oder zweite Komponente vor dem Montagevorgang, Geschwindigkeits- und Kraftbefehlswerte für den Montagevorgang anhand der derzeitigen Zustandsgrößen basierend auf dem Lernergebnis der Lerneinheit umfasst.
  4. Maschinenlerneinrichtung nach Anspruch 2, wobei - die Belohnungsberechnungseinheit die Belohnung erhöht, wenn der Zustand der Baugruppe, die zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und die Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft, die durch die Zustandsüberwachungseinheit überwacht werden, innerhalb jeweiliger zulässiger Bereiche liegen, während die Belohnungsberechnungseinheit die Belohnung verringert, wenn der Zustand der Baugruppe, die zum Montieren der ersten und zweiten Komponente erforderliche Zeitdauer und die Informationen über die zum Montieren der ersten und zweiten Komponente erforderliche Kraft außerhalb der jeweiligen zulässigen Bereiche liegen; und - die Belohnungsberechnungseinheit die Belohnung erhöht, wenn die Durchgangsprüfung der Baugruppe ein günstiges Ergebnis erzielt, während die Belohnungsberechnungseinheit die Belohnung verringert, wenn die Durchgangsprüfung der Baugruppe ein ungünstiges Ergebnis erzielt.
  5. Maschinenlerneinrichtung nach Anspruch 2, wobei die Lerneinheit die durch die Zustandsüberwachungseinheit überwachten Zustandsgrößen in einer mehrschichtigen Struktur berechnet und die Funktion in Echtzeit aktualisiert.
  6. Maschinenlerneinrichtung nach Anspruch 2, wobei die Funktionsaktualisierungseinheit die Funktion unter Verwendung einer durch eine Funktionsaktualisierungseinheit einer anderen Maschinenlerneinrichtung aktualisierten Funktion aktualisiert.
  7. Komponentenmontagesystem (1), das die Maschinenlerneinrichtung nach einem der Ansprüche 1 bis 6 umfasst.
DE102017011754.3A 2016-12-26 2017-12-19 Maschinenlerneinrichtung zum Lernen eines Montagevorgangs und Komponentenmontagesystem Active DE102017011754B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016251868A JP6506245B2 (ja) 2016-12-26 2016-12-26 組付動作を学習する機械学習装置および部品組付システム
JP2016-251868 2016-12-26

Publications (2)

Publication Number Publication Date
DE102017011754A1 DE102017011754A1 (de) 2018-06-28
DE102017011754B4 true DE102017011754B4 (de) 2021-03-04

Family

ID=62509910

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017011754.3A Active DE102017011754B4 (de) 2016-12-26 2017-12-19 Maschinenlerneinrichtung zum Lernen eines Montagevorgangs und Komponentenmontagesystem

Country Status (4)

Country Link
US (1) US10502253B2 (de)
JP (1) JP6506245B2 (de)
CN (1) CN108241296A (de)
DE (1) DE102017011754B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022103503A1 (de) 2022-02-15 2023-08-17 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Verfahren, Roboteranlage und Computerprogramm zur automatisierten Montage von Bauteilen auf Tragschienen

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6542839B2 (ja) 2017-06-07 2019-07-10 ファナック株式会社 制御装置及び機械学習装置
US10754308B2 (en) * 2017-11-09 2020-08-25 International Business Machines Corporation Decomposed perturbation approach using memory based learning for compliant assembly tasks
JP6703020B2 (ja) * 2018-02-09 2020-06-03 ファナック株式会社 制御装置及び機械学習装置
JP7384575B2 (ja) * 2018-08-10 2023-11-21 川崎重工業株式会社 情報処理装置、仲介装置、シミュレートシステム、情報処理方法及びプログラム
CN109048924A (zh) * 2018-10-22 2018-12-21 深圳控石智能***有限公司 一种基于机器学习的智能机器人柔性作业装置及其方法
JP6868651B2 (ja) 2019-01-30 2021-05-12 矢崎総業株式会社 コネクタ嵌合装置
US11209795B2 (en) * 2019-02-28 2021-12-28 Nanotronics Imaging, Inc. Assembly error correction for assembly lines
US10481579B1 (en) 2019-02-28 2019-11-19 Nanotronics Imaging, Inc. Dynamic training for assembly lines
JP6816783B2 (ja) * 2019-03-20 2021-01-20 株式会社タダノ クレーン
JP6816784B2 (ja) * 2019-03-20 2021-01-20 株式会社タダノ クレーン
JP7339776B2 (ja) * 2019-05-28 2023-09-06 川崎重工業株式会社 制御システム、機械装置システム及び制御方法
WO2021046767A1 (zh) * 2019-09-11 2021-03-18 西门子(中国)有限公司 自主式机器人工装***、控制***、控制方法及存储介质
US11378942B2 (en) 2019-11-19 2022-07-05 International Business Machines Corporation Progressive guidance of digital twin model assembly
DE102020118805A1 (de) 2020-07-16 2022-01-20 Dr. Ing. H.C. F. Porsche Aktiengesellschaft System und Verfahren zum autonomen Konstruieren und/oder Designen von zumindest einer Komponente für ein Bauteil
EP3961327B1 (de) * 2020-08-27 2023-11-01 Omron Europe B.V. Montageunterstützungsvorrichtung und -verfahren
CN112965372B (zh) * 2021-02-01 2022-04-01 中国科学院自动化研究所 基于强化学习的微零件精密装配方法、装置和***
CN113065796A (zh) * 2021-04-22 2021-07-02 哈尔滨理工大学 基于q-学习算法的空间桁架在轨装配策略
US11715300B1 (en) * 2022-01-28 2023-08-01 Robert Bosch Gmbh Systems and methods for providing product assembly step recognition using augmented reality

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09319420A (ja) * 1996-05-31 1997-12-12 Ricoh Co Ltd 組立ロボット
DE102006017945A1 (de) * 2005-04-15 2006-12-14 Fanuc Robotics America, Inc., Rochester Hills Ein Verfahren zur Optimierung eines Roboterprogramms und eines Robotersystems
EP2314426A2 (de) * 2009-10-20 2011-04-27 Kabushiki Kaisha Yaskawa Denki Vorrichtung und Verfahren zur Anpassung der Impedanzsteuerungsparameter
DE112009003656T5 (de) * 2008-12-10 2012-08-02 Abb Research Ltd. Verfahren und System zur In-Produktionsoptimierung der Parameter eines zur Montage verwendeten Roboters
JP2014007890A (ja) * 2012-06-26 2014-01-16 Fanuc Ltd 接着剤付き雄ねじを使用する締結構造体を備える電動機
US20150160651A1 (en) * 2013-12-09 2015-06-11 Canon Kabushiki Kaisha Information processing apparatus, control method thereof, information processing system, and non-transitory computer-readable storage medium
JP5969676B1 (ja) * 2015-09-30 2016-08-17 ファナック株式会社 工作機械の工具補正の頻度を最適化する機械学習装置及び機械学習方法、並びに該機械学習装置を備えた工作機械
JP5997330B1 (ja) * 2015-07-31 2016-09-28 ファナック株式会社 主軸交換の要否を判定できる機械学習装置、主軸交換判定装置、制御装置、工作機械及び生産システム、並びに機械学習方法
JP6031202B1 (ja) * 2016-01-29 2016-11-24 ファナック株式会社 製造機械の異常の原因を発見するセル制御装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09258814A (ja) * 1996-03-22 1997-10-03 Kayaba Ind Co Ltd 組み立てロボットの位置決め制御装置及び位置決め制御方法
US20130298642A1 (en) * 2012-05-08 2013-11-14 Logimesh IP, LLC Remote air monitoring array system
CN103577792A (zh) * 2012-07-26 2014-02-12 北京三星通信技术研究有限公司 用于估计人体姿势的设备和方法
CN103431976B (zh) * 2013-07-19 2016-05-04 燕山大学 基于肌电信号反馈的下肢康复机器人***及其控制方法
JP2016043418A (ja) * 2014-08-19 2016-04-04 ニッタ株式会社 接続装置の接続不良検知システム及び接続不良検知方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09319420A (ja) * 1996-05-31 1997-12-12 Ricoh Co Ltd 組立ロボット
DE102006017945A1 (de) * 2005-04-15 2006-12-14 Fanuc Robotics America, Inc., Rochester Hills Ein Verfahren zur Optimierung eines Roboterprogramms und eines Robotersystems
DE112009003656T5 (de) * 2008-12-10 2012-08-02 Abb Research Ltd. Verfahren und System zur In-Produktionsoptimierung der Parameter eines zur Montage verwendeten Roboters
EP2314426A2 (de) * 2009-10-20 2011-04-27 Kabushiki Kaisha Yaskawa Denki Vorrichtung und Verfahren zur Anpassung der Impedanzsteuerungsparameter
JP2014007890A (ja) * 2012-06-26 2014-01-16 Fanuc Ltd 接着剤付き雄ねじを使用する締結構造体を備える電動機
US20150160651A1 (en) * 2013-12-09 2015-06-11 Canon Kabushiki Kaisha Information processing apparatus, control method thereof, information processing system, and non-transitory computer-readable storage medium
JP5997330B1 (ja) * 2015-07-31 2016-09-28 ファナック株式会社 主軸交換の要否を判定できる機械学習装置、主軸交換判定装置、制御装置、工作機械及び生産システム、並びに機械学習方法
JP5969676B1 (ja) * 2015-09-30 2016-08-17 ファナック株式会社 工作機械の工具補正の頻度を最適化する機械学習装置及び機械学習方法、並びに該機械学習装置を備えた工作機械
JP6031202B1 (ja) * 2016-01-29 2016-11-24 ファナック株式会社 製造機械の異常の原因を発見するセル制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022103503A1 (de) 2022-02-15 2023-08-17 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Verfahren, Roboteranlage und Computerprogramm zur automatisierten Montage von Bauteilen auf Tragschienen

Also Published As

Publication number Publication date
US10502253B2 (en) 2019-12-10
DE102017011754A1 (de) 2018-06-28
US20180180085A1 (en) 2018-06-28
JP6506245B2 (ja) 2019-04-24
JP2018103309A (ja) 2018-07-05
CN108241296A (zh) 2018-07-03

Similar Documents

Publication Publication Date Title
DE102017011754B4 (de) Maschinenlerneinrichtung zum Lernen eines Montagevorgangs und Komponentenmontagesystem
DE102017108169B4 (de) Produktionssystem, das einen Bestimmungswert einer Variablen in Bezug auf eine Produktabweichung festlegt
DE102017000536B4 (de) Zellsteuereinheit zum Feststellen einer Ursache einer Anomalie bei einer Fertigungsmaschine
DE102019002065B4 (de) Maschinelle Lernvorrichtung, Robotersteuervorrichtung und Robotervisionssystem, das eine maschinelle Lernvorrichtung verwendet, und maschinelles Lernverfahren
DE102017008836B4 (de) Maschinelle Lernvorrichtung und maschinelles Lernverfahren zum Lernen eines optimalen Objekt-Greifwegs
DE102016014264B4 (de) Maschinelle Lernvorrichtung, Blechpaketherstellungsvorrichtung, Blechpaketherstellungssystem und maschinelles Lernverfahren zum Erlernen des Stapelns von Paketblechen
DE102016011528B4 (de) Maschinelle Lernvorrichtung zur Optimierung der Zyklusprozesszeit einer Bearbeitungsmaschine, Motorsteuervorrichtung, Bearbeitungsmaschine und maschinelles Lernverfahren
DE102017010799B4 (de) Maschinenlernvorrichtung zum Lernen einer Bearbeitungsreihenfolge eines Robotersystems mit einer Mehrzahl von Laserbearbeitungsrobotern, dazugehöriges Robotersystem sowie Maschinenlernverfahren zum Lernen einer Bearbeitungsreihenfolge des Robotersystems mit einer Mehrzahl von Laserbearbeitungsrobotern
DE102016011532B4 (de) Maschinenlernvorrichtung und Maschinenlernverfahren zum Optimieren der Häufigkeit einer Werkzeugkorrektur einer Werkzeugmaschine und Werkzeugmaschine mit der Maschinenlernvorrichtung
DE102016015017B4 (de) Steuervorrichtung mit Lernfunktion zum Erfassen einer Rauschursache
DE112019001512T5 (de) EINSPRITZGIEßMASCHINENSYSTEM
DE102016011525B4 (de) Vorrichtung für maschinelles Lernen und Spulen-Produktionsvorrichtung
DE102018001571B4 (de) Laserverarbeitungsgerät und Vorrichtung zum maschinellen Lernen
DE102016011520B4 (de) Produktionsausrüstung mit Maschinenlernsystem und Montage-und Prüfeinheit
DE102017006054A1 (de) Maschinelle Lernvorrichtung, die eine geschätzte Lebensdauer eines Lagers lernt, Lebensdauer-Schätzvorrichtung und maschinelles Lernverfahren
DE102018006946A1 (de) Steuerung und maschinelle lernvorrichtung
DE102017108497B4 (de) Herstellungsanpassungssystem zur Anpassung des Zustands der Herstellung durch mehrere Maschinen
DE102016013985A1 (de) Vorrichtung für maschinelles Lernen und Verfahren zum Optimieren der Laufruhe des Vorschubs der Vorschubachse einer Maschine und eine die Vorrichtung für maschinelles Lernen umfassende Motorsteuervorrichtung
DE112019006789B4 (de) Arbeitsbestimmungsgerät und arbeitsbestimmungsverfahren
DE102016011523A1 (de) Motorantriebsvorrichtung mit vorbeugender Wartungsfunktion eines Gebläsemotors
EP3282399B1 (de) Verfahren zur verbesserten erkennung von prozessanomalien einer technischen anlage sowie entsprechendes diagnosesystem
DE102018002785B4 (de) 1 - 8CController und maschinelle Lernvorrichtung
DE102017003427A1 (de) Produktionssystem zur Durchführung eines Produktionsplans
DE102018001028B4 (de) Numerische Steuerung
DE102017000287A1 (de) Zellensteuerung und produktionssystem zum verwalten der arbeitssituation einer vielzahl von fertigungsmaschinen in einer fertigungszelle

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