DE102015217618B4 - Roboter - Google Patents

Roboter Download PDF

Info

Publication number
DE102015217618B4
DE102015217618B4 DE102015217618.5A DE102015217618A DE102015217618B4 DE 102015217618 B4 DE102015217618 B4 DE 102015217618B4 DE 102015217618 A DE102015217618 A DE 102015217618A DE 102015217618 B4 DE102015217618 B4 DE 102015217618B4
Authority
DE
Germany
Prior art keywords
driver
external instrument
data
work
point
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
DE102015217618.5A
Other languages
English (en)
Other versions
DE102015217618A1 (de
Inventor
Kenichiro Hiruma
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.)
Janome Corp
Original Assignee
Janome Sewing Machine Co Ltd
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 Janome Sewing Machine Co Ltd filed Critical Janome Sewing Machine Co Ltd
Publication of DE102015217618A1 publication Critical patent/DE102015217618A1/de
Application granted granted Critical
Publication of DE102015217618B4 publication Critical patent/DE102015217618B4/de
Active 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/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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/4093Numerical 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 part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • 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
    • 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
    • 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/40565Detect features of object, not position or orientation
    • 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/46Sensing device
    • Y10S901/47Optical

Landscapes

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

Abstract

Ein Roboter führt sequentielle Arbeiten an jedem Arbeitspunkt auf Grundlage von Punkt-basierten Arbeitsdaten aus. Ein externes Instrument, das an dem Roboter angebracht ist, führt eine Hauptarbeit an jedem Arbeitspunkt in den sequentiellen Arbeiten aus. Eine Steuerung steuert das externe Instrument auf Grundlage von Steuerdaten mit strukturellen Punktblöcken, die in einer Sequenz angeordnet sind, und bündelt die sequentiellen Arbeiten an jedem Arbeitspunkt. Ein Externes-Instrument-Treiber transformiert ein Datenformat, das zwischen dem externen Instrument und der Steuerung ausgetauscht wird. Ein Treibergenerator erzeugt Treiberdaten, die das Detail einer Transformation des Datenformats durch den Externes-Instrument-Treiber anzeigt. Das Treiberauswahlmittel wählt die Treiberdaten aus, die durch den Externes-Instrument-Treiber zu verwenden sind, in Übereinstimmung mit dem externen Instrument.

Description

  • Querverweis auf in Beziehung stehende Anmeldung
  • Diese Anmeldung beansprucht die Priorität der Japanischen Patentanmeldung mit der Nummer 2015-054559 , eingereicht am 18. März 2015, wobei deren gesamter Inhalt hier durch Bezug aufgenommen ist.
  • Erfindungsgebiet
  • Die vorliegende Erfindung betrifft einen Roboter, der eine Kommunikation zwischen einem externen Instrument und einer Steuerung durchführen kann.
  • Hintergrund
  • Es sind Roboter bekannt, die verschiedene Arten von Arbeiten, wie zum Beispiel eine visuelle Inspektion, Positionskorrektur und eine visuelle Erscheinungsbildgebung an einem Werkstück über verschiedene externe Instrumente durchführen. Wenn gemäß derartiger Roboter zum Beispiel eine Position eines Werkstücks zu korrigieren ist, sind die Roboter mit einer Kamera zur Aufnahme eines Bilds bereitgestellt, wodurch die Position des Werkstücks detektiert wird. Die Position des Werkstücks wird im Folgenden auf Grundlage der detektierten Position des Werkstücks korrigiert. Ein Bildprozessor wird in der Kamera bereitgestellt, und der Bildprozessor nimmt ein Bild auf Grundlage einer Bildaufnahmeanweisung von einer Steuerung des Roboters auf und gibt das Bildaufnahmeresultat an die Steuerung aus.
  • Wenn derartige Roboter mit verschiedenen Arten von Kameras kompatibel sind, können Nutzer und Einrichtungslieferanten ein kommerziell verfügbares Kameraprodukt in Übereinstimmung mit der Anwendung der Roboter und der verfügbaren Budgets auswählen, kaufen und anbringen. In diesem Fall verwenden die Bildprozessoren in den Kameras oft ein Kommunikationsprotokoll, das sich von dem des Roboters unterscheidet.
  • Das Kommunikationsprotokoll des Bildprozessors in der Kamera kann in Abhängigkeit von dem Kamerahersteller und der Modellnummer der Kamera variieren, obwohl der Hersteller der gleiche ist. Es ist daher nicht so schwierig, vorab Kommunikationsprotokolle an dem Roboter bereitzustellen, die mit den wesentlichen Herstellern und Kameras kompatibel sind, es ist jedoch oft schwierig, vorab Kommunikationsprotokolle zu präparieren, die mit allen Kameras kompatibel sind.
  • Die Schwierigkeit mit einer Kamera ist nur das Kommunikationsprotokoll des Bildprozessors, und der Kommunikationsinhalt unterscheidet sich nicht. Wenn somit ein Kommunikationsprotokoll in Übereinstimmung mit einer Kamera an dem Roboter präpariert werden kann, kann der Roboter mit der Kamera kommunizieren. Obwohl die Kamera als ein Beispiel der Erläuterung verwendet wurde, tritt ein ähnliches Problem auf, wenn das externe Instrument zum Beispiel ein Sensor ist.
  • Die vorliegende Erfindung dient der Behandlung der obigen technischen Probleme herkömmlicher Technologien, und es ist eine Aufgabe der vorliegenden Erfindung, einen hochgradig vielseitigen Roboter bereitzustellen, der es einem Nutzer ermöglicht, einen Treiber in Übereinstimmung mit einem externen Instrument, das zu verwenden ist, neu zu erzeugen, wodurch verschiedene Arten externer Instrumente verfügbar gemacht werden.
  • DE 11 2011 101 730 T5 betrifft einen Mechanismus zum robusten Kalibrieren eines Bildverarbeitungssystems und eines Roboters, so dass die Kalibrierung einer Vielzahl von Kameras in einem Roboterbasis-Koordinatensystem ermöglicht wird, um die genaue Bestimmung der Position von bestimmten Objekten innerhalb von Roboterbasis-Koordinaten zu ermöglichen.
  • Zusammenfassung der Erfindung
  • Um die obige Aufgabe zu erfüllen, führt ein Roboter gemäß der vorliegenden Erfindung alle Merkmale nach Anspruch 1 aus. Weitere vorteilhafte Ausführungsformen ergeben sich aus den Unteransprüchen.
  • Die sequentiellen Arbeiten können enthalten: die tatsächliche Arbeit, ausgeführt durch das externe Instrument, eine Vorarbeit und eine Nacharbeit vor und nach der Hauptarbeit, und eine Positionierung an einer Vielzahl von Arbeitspunkten für die Hauptarbeit umfassen; und den strukturellen Punktblock, der die Steuerdaten ausbildet, Daten speichert, die eine Arbeit in den sequentiellen Arbeiten und ein Detail der Bewegung anzeigt, sowie die Treiberdaten in Assoziation miteinander.
  • Der strukturelle Punktblock kann Punktaussagen enthalten, die alle Arbeitspunkte anzeigt, die während der sequentiellen Arbeiten zu positionieren sind, sowie Details der Arbeiten vor der Bewegung zu dem Punkt, während der Bewegung und nach der Bewegung, wobei die Punktaussagen in einer Sequenz in dem strukturellen Punktblock angeordnet sind; und wobei jede Punktaussage, in Assoziation miteinander, Daten speichern kann, die eine Arbeit in den sequentiellen Arbeiten und ein Detail der Bewegung und die Treiberdaten anzeigt.
  • Der Roboter kann ferner einen Externes-Instrument-Treiber-Speicher zum Speichern der Treiberdaten mit einem Identifikator zum Identifizieren der gespeicherten Treiberdaten enthalten, wobei in den Steuerdaten die zu verwendenden Treiberdaten durch den Identifikator bestimmt werden.
  • Die Treiberdaten können eine Reihenfolge zum Ausführen der Arbeiten enthalten, die durch das externe Instrument auszuführen sind, und eine Arbeitsanweisung, die bewirkt, dass das externe Instrument die Arbeit ausführt.
  • Die Treiberdaten können eine Variable enthalten, die verwendet wird, wenn Daten, die von dem externen Instrument übertragen werden, durch die Steuerung empfangen werden.
  • Die Treiberdaten können einen Externes-Instrument-Typ enthalten, die einen Typ des externen Instruments anzeigen; und der Roboter kann ferner ein Transformationskoeffizient-Berechnungsmittel zum Berechnen eines Transformationskoeffizienten umfassen, um ein Koordinatensystem, das durch das externe Instrument verwendet wird, angezeigt durch den Externes-Instrument-Typ, in ein Koordinatensystem zu transformieren, das durch die Steuerdaten verwendet wird.
  • Die Steuerdaten können eine Position des Arbeitspunkts enthalten, und eine Punktkorrektur, wobei es sich um eine Bedingung zum Berechnen einer Korrekturgröße in Übereinstimmung mit einer Verschiebungsgröße von einer Anordnungsposition eines Werkstücks, das der Arbeit unterworfen wird, handelt; und die Punktkorrektur kann eine Koordinate einer Referenzmarkierung enthalten, die dem Werkstück gegeben ist, und zu einer Referenz wird, wenn das Werkstück an einer geeigneten Anordnungsposition angeordnet ist, sowie den Externes-Instrument-Typ und den Transformationskoeffizienten.
  • Der Roboter kann ferner ein Nutzerverifizierungsmittel enthalten zum Verifizieren eines Accounts, der einem Nutzer gegeben wird, wobei der Treibergenerator die Treiberdaten in Übereinstimmung mit einer Eingabe, die durch den Nutzer gegeben wird, der den Account aufweist, erzeugt.
  • Es kann verschiedene Arten des Accounts geben, und eine Autorität mit unterschiedlichen Ebenen (engl. level) kann für jeden Account vergeben werden.
  • Das externe Instrument kann ein Sensor oder eine Kamera sein.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist eine Perspektivansicht zur Darstellung einer Struktur eines Roboters gemäß einer Ausführungsform;
  • 2 ist ein Blockdiagramm zur Darstellung einer Struktur einer Steuerung gemäß der Ausführungsform;
  • 3 ist ein funktionales Blockdiagramm zur Darstellung einer Funktion einer Steuerung gemäß der Ausführungsform;
  • 4 ist ein Blockdiagramm zur Darstellung einer Struktur eines Treibergenerators gemäß der Ausführungsform;
  • 5 ist ein Diagramm zur Darstellung von Beispieltreiberdaten gemäß der Ausführungsform;
  • 6 ist ein Blockdiagramm zur Darstellung einer Struktur von Steuerdaten gemäß der Ausführungsform;
  • 7 ist ein Diagramm zur Darstellung einer Beispielpunktkorrektur gemäß der Ausführungsform;
  • 8 ist eine Draufsicht zur Darstellung einer Struktur eines Werkstücks gemäß der Ausführungsform;
  • 9 ist ein Flussdiagramm zur Darstellung eines Treiberdaten-Erzeugungsprozesses gemäß der Ausführungsform;
  • 10 ist ein Flussdiagramm zur Darstellung eines Transformationskoeffizienten-Einstellprozesses in der Punktkorrektur gemäß der Ausführungsform;
  • 11 ist ein Flussdiagramm zur Darstellung eines Referenzmarkierungs-Positionseinstellprozesses in der Punktkorrektur gemäß der Ausführungsform;
  • 12 ist ein Diagramm zur Darstellung einer Beispielpunktaussage in den Steuerdaten gemäß der Ausführungsform;
  • 13 ist ein Diagramm zur Darstellung einer Beispielanzeigeform durch eine Anzeige gemäß der Ausführungsform;
  • 14 ist ein Diagramm zur Darstellung eines ersten modifizierten Beispiels der Steuerdaten gemäß der Ausführungsform;
  • 15 ist ein Diagramm zur Darstellung eines zweiten modifizierten Beispiels der Steuerdaten gemäß der Ausführungsform; und
  • 16 ist ein Diagramm zur Darstellung eines dritten modifizierten Beispiels der Steuerdaten gemäß der Ausführungsform.
  • Detaillierte Beschreibung der Ausführungsformen
  • Ausführungsformen eines Roboters gemäß der vorliegenden Erfindung werden im Folgenden detailliert mit Bezug auf die Figuren erläutert. In den folgenden Ausführungsformen wird eine wiederholte Erläuterung mit Bezug auf die Figuren vermieden.
  • Erste Ausführungsform
  • (1) Gesamtstruktur
  • 1 ist eine Perspektivansicht zur Darstellung einer Struktur eines Roboters gemäß dieser Ausführungsform. Wie in 1 dargestellt, enthält ein Roboter 1 externe Instrumente 2, eine Bewegungseinheit 3, die die externen Instrumente 2 bewegt, und eine Steuerung 4, welche die externen Instrumente 2 und die Bewegungseinheit 3 steuert. Der Roboter 1 steuert die Bewegungseinheit 3 und die externen Instrumente 2, um zu bewirken, dass das externe Instrument 2 eine Arbeit an einer gewünschten Position ausführt.
  • Das externe Instrument 2 ist ein Instrument, das einen vorbestimmten Betrieb in Übereinstimmung mit externen Steuersignalen durchführt. Das externe Instrument 2 führt nicht nur einfach verschiedene Operationen in Übereinstimmung mit den externen Steuersignalen durch, sondern steuert darüber hinaus die eigene Funktion des externen Instruments 2 gemäß externer Signale, und gibt das Steuerresultat nach außen aus. D. h., dass das externe Instrument 2 eine vorbestimmte Arbeit in Übereinstimmung mit Signalen von der Steuerung 4 ausführt, und das Steuerresultat an die Steuerung 4 ausgibt. Ein beispielhaftes externes Instrument 2, das verwendet wird, ist eine Kamera oder ein Sensor. Dieses externe Instrument 2 ist an der Bewegungseinheit 3 angebracht. Das externe Instrument 2 ist an einem Anbringungsteil der Bewegungseinheit 3 befestigt. Die Befestigung wird zum Beispiel durch Bolzen und Schrauben ausgeführt, und das externe Instrument 2 ist entfernbar.
  • Die Bewegungseinheit 3 bewegt das externe Instrument 2 in eine X-Achsenrichtung, eine Y-Achsenrichtung und eine Z-Achsenrichtung. Die Bewegungseinheit 3 positioniert als nächstes das externe Instrument 2 an einem bestimmten Punkt. Die X-Achsenrichtung ist eine axiale Richtung parallel mit einer horizontalen Ebene. Die Y-Achsenrichtung ist eine andere Axialrichtung, parallel mit der horizontalen Ebene, jedoch orthogonal zu der X-Achsenrichtung. Die Z-Achsenrichtung ist eine Höhenrichtung. Diese Bewegungseinheit 3 enthält einen X-Linearschieber 31, der das externe Instrument 2 in der X-Achsenrichtung bewegt, einen Y-Linearschieber 32, der das externe Instrument in der Y-Achsenrichtung bewegt, und einen Z-Linearschieber 33, der das externe Instrument 2 in der Z-Achsenrichtung bewegt.
  • Der X-Linearschieber 31 weist den Y-Linearschieber 32 auf, der auf einer Schiene verschiebbar bereitgestellt ist, die sich in der X-Achsenrichtung erstreckt, und wobei der Y-Linearschieber 32 mit einem Endlosband befestigt ist, das in der X-Achsenrichtung läuft, die orthogonal zu dem Y-Linearschieber 32 ist. Das Endlosband wird durch einen X-Achsenmotor zum Laufen gebracht, um den Y-Linearschieber 32 entlang der X-Achsenrichtung zu bewegen.
  • Der Y-Linearschieber 32 weist den Z-Linearschieber 33 auf, der auf einer auf einer Schiene verschiebbar bereitgestellt ist, die sich in der Y-Achsenrichtung erstreckt, und wobei der Z-Linearschieber 33 mit einem Endlosband befestigt ist, das in der Y-Achsenrichtung läuft. Das Endlosband wird durch einen Y-Achsenmotor zum Laufen gebracht, um den Z-Linearschieber 33 entlang der Y-Achsenrichtung zu bewegen. Eine beispielhafte Übertragungseinheit für die X- und Y-Linearschieber 31, 32 sind, zusätzlich zu Endlosbändern, verschiedene Aktuatoren mit einem Zylinder und einer Gewindespindel.
  • Der Z-Linearschieber 33 enthält einen Arm 331 mit einer Achse, die parallel mit der Z-Achsenrichtung ist, und eine Externe-Instrument-Anbringungsplatte 332, die an dem Führungsende dieses Arms 331 bereitgestellt ist (als R-Achse dienend). Der Arm 331 wird durch einen Z-Achsenmotor in der Z-Achsenrichtung bewegt. Die Externe-Instrument-Anbringungsplatte 332 bewegt sich durch diesen Z-Linearschieber 33 in der Z-Achsenrichtung. Darüber hinaus enthält der Z-Linearschieber 33 eine R-Achsen-Rotationseinheit, die den Arm 331 um das diesbezügliche Zentrum in einer R-Richtung rotiert. Die R-Achsen-Rotationseinheit bewirkt, dass die Externe-Instrument-Anbringungsplatte 332 des Arms 331 um das Zentrum des Arms 331 rotiert. Die Externe-Instrument-Anbringungsplatte 332 ist mit einer Vielzahl von Installationshalterungen 333 bereitgestellt, um die jeweiligen externen Instrumente 2 anzubringen. Der Roboter 1 kann verschiedene Arten von externen Instrumenten 2 an diesen Installationshalterungen 333 anbringen, und in dem Fall der 1 sind eine Kamera 2a und ein Applikator 2b installiert.
  • (2) Struktur der Steuerung
  • Die Steuerung 4 ist ein sogenannter Computer. 2 ist ein Blockdiagramm zur Darstellung einer Struktur der Steuerung 4. Wie in 2 dargestellt, enthält die Steuerung 4 eine CPU 41, die eine arithmetische Verarbeitung ausführt und Anweisungssignale in Übereinstimmung mit Steuerdaten 422 ausgibt, wobei es sich um ein Element eines Steuerprogramms 421 handelt, einen Speicher 42, der das Steuerprogramm 421 speichert, die Steuerdaten 422, Treiberdaten 433, ein Nutzer-ID/Passwort 424, das einem Nutzer gegeben wird, der die Treiberdaten 423 erzeugt, und eine Steueranweisung 425, einen Speicher 43, in den das Steuerprogramm 421 extrahiert wird und der das arithmetische Verarbeitungsresultat durch die CPU 41 temporär speichert, einen Externes-Instrument-Treiber 44, der die Anweisungssignale, die durch die CPU 41 ausgegeben werden, in ein Format transformiert, das für das externe Instrument 2 erkennbar ist, und der darüber hinaus das Format, das durch eine Datenausgabe durch das externe Instrument 2 eingesetzt wird, in ein Format transformiert, das für die arithmetische Verarbeitung durch die CPU 41 verfügbar ist, und einen Motortreiber 45, der Leistungspulse (engl. power pulses) an jeden Motor in Übereinstimmung mit den Anweisungssignalen, die durch die CPU 41 ausgegeben werden, liefert. Die Steuerung 4 enthält ferner periphere Einheiten, wobei es sich um eine Manipulationshardware 46 handelt, die zum Beispiel eine Maus, eine Tastatur, ein Programmierhandgerät 461 und eine Anzeige 352 wie zum Beispiel eine Flüssigkristallanzeige handelt.
  • 3 ist ein funktionales Blockdiagramm der Steuerung 4. Diese Steuerung 4 führt das Steuerprogramm 421 aus, das in dem Speicher 42 gespeichert ist, und arbeitet somit, in der Steuerung 4, als ein Treibergenerator 51, ein Steuerdatengenerator 52, ein Treiberauswahlmittel 53 und ein Steuerdatenextraktionsmittel 54.
  • Treibergenerator
  • Der Treibergenerator 51 erzeugt in Übereinstimmung mit einer Eingabe durch die Manipulationshardware 46 die Treiberdaten 423, die durch den Externes-Instrument-Treiber 44 verwendet werden. Die Treiberdaten 423, die durch den Treibergenerator 51 erzeugt werden, werden in einem Treiberdaten-Speicherbereich 42b in dem Speicher 42 gespeichert. Wie in 4 dargestellt, enthält der Treibergenerator 51 einen Account-Registrierungsabschnitt 51a, der dem Nutzer eine Autorität gibt, die Treiberdaten 423 zu erzeugen, einen Account-Verifizierungsabschnitt 51b, der den Nutzer-Account bzw. das Nutzerkonto zum Zeitpunkt der Erzeugung der Treiberdaten 423 verifiziert, einen Elementeinstellabschnitt 51c, der jedes Element in den Treiberdaten 423 einstellt, und einen Treiberregistrierungsabschnitt 51d, der die erzeugten Treiberdaten 423 in den Treiberdaten-Speicherbereich 42b in dem Speicher 42 registriert.
  • Der Account-Registrierungsabschnitt 51a gibt dem Nutzer, der einen Versuch unternimmt, die Treiberdaten 423 zu erzeugen, eine Autorität, die einer Erzeugung der Treiberdaten 423 ermöglicht. Bezüglich der Autorität werden eine „Nutzer-ID” und ein „Passwort” in Übereinstimmung mit den Eigenschaften des Nutzers in dem Account-Speicherbereich 42d an den Nutzer gegeben, der die Treiberdaten 423 erzeugen möchte. Die Eigenschaft des Nutzers kann zum Beispiel in den Hersteller des Roboters 1, einen Lieferanten, der den Roboter 1 von dem Roboterhersteller erwirbt und den Roboter 1 aufstellt, und einen Nutzer, der den Roboter 1 von dem Lieferanten erwirbt und den erworbenen Roboter 1 tatsächlich verwendet, klassifiziert werden.
  • Der Account-Verifizierungsabschnitt 51b überprüft, ob oder ob nicht der Nutzer die Autorität zum Erzeugen der Treiberdaten 423 hat. Der Account-Verifizierungsabschnitt 51b empfängt eine eingegebene Account-ID und ein Passwort von dem Nutzer. Der Account-Verifizierungsabschnitt 51b bestimmt als nächstes, ob oder ob nicht die Kombination der eingegebenen Account-ID und Passwort mit der Kombination der „Nutzer-ID” und „Passwort” übereinstimmt, die in dem Account-Speicherbereich 42c gespeichert sind. Wenn die eingegebene Kombination mit der registrierten Kombination der „Nutzer-ID” und dem „Passwort” übereinstimmt, erlaubt der Account-Verifizierungsabschnitt 51b dem Nutzer, der die Kombination der Account-ID und Passwort eingegeben hat, die Treiberdaten 423 zu erzeugen.
  • Der Elementeinstellabschnitt 51c empfängt eine Eingabe von dem authentifizierten Nutzer, und stellt jedes Element der neuen Treiberdaten 423 ein. 5 zeigt Einträge, die als die Treiberdaten 423 eingestellt werden. Wie in 5 dargestellt, enthalten die Treiberdaten 423 die jeweiligen Einträge, wobei es sich um „Nutzer-ID”, „Schutzmodus”, „Externes-Instrument-Typ-ID”, „Externes-Instrument-Typ”, „Kommunikationsinhalt”, „Externes-Instrument-Anweisung” und „Datenausleseformat” handelt.
  • Die „Nutzer-ID” ist die Account-ID, die dem Nutzer gegeben wird, der die Treiberdaten 423 erzeugt hat. Der „Schutzmodus” zeigt eine Verfügbarkeit der Steuerung der erzeugten Treiberdaten 423 für andere Accounts bzw. Konten an. Der „Schutzmodus” kann zum Beispiel wie folgt eingestellt werden.
    • (a) Unbeschränkt: Nutzer anderer Accounts können auf die Daten frei Bezug nehmen, diese ändern oder nutzen;
    • (b) Öffentlich: Nutzer anderer Accounts können auf die Daten verweisen oder diese verwenden;
    • (c) Geschützt: Nutzer anderer Accounts können die Daten nur verwenden; und
    • (d) Privat: Nutzer anderer Accounts sind daran gehindert, auf die Daten zu verweisen, diese zu ändern oder zu verwenden.
  • Die „Externes-Instrument-Typ-ID” ist eine Nummer, die zum Beispiel die Typnummer des externen Instruments 2 anzeigt. Der „Externes-Instrument-Typ” ist ein Name, der allen Treiberdaten 423 hinzugefügt wird. Der „Externes-Instrument-Typ” wird als ein Identifikator verwendet, der die Arten der Treiberdaten 423 anzeigt. Der „Kommunikationsinhalt” zeigt den Inhalt einer Kommunikation an, die durch die Steuerung 4 ausgegeben wird, um zu bewirken, dass das externe Instrument 2 eine Arbeit ausführt. Beispielinhalte der Kommunikation sind ein Zeitpunkt der Freigabe eines Speichers, eine Port # (Nummer), die für eine Ausgabe verwendet wird, eine Verzögerungszeit und ein Port # zum Ausgeben von Daten. Der „Kommunikationsinhalt” bestimmt die Reihenfolge einer Ausführung einer Arbeit durch das externe Instrument 2, und eine diesbezügliche notwendige Zeit. Als Kommunikationsinhalt wird das externe Instrument 2 zum Beispiel angewiesen, einen Speicher freizugeben, eine externe Anweisung auszuführen, d. h. „%S”, einen Standby für 300 Sekunden durchzuführen, und Daten zu erhalten, wobei es sich um ein Ausführungsresultat der externen Anweisung handelt, die „%S” ist.
  • Die „Externes-Instrument-Anweisung” ist eine Anweisung, die bewirkt, dass das externe Instrument 2 verschiedene Arbeiten ausführt. Die „Externes-Instrument-Anweisung” ist in einem Format, das durch das externe Instrument 2 lesbar ist. Wenn das externe Instrument 2 zum Beispiel eine Kamera 2a ist und eine Bildaufnahmeanweisung „%S” ist, wird die „Externes-Instrument-Anweisung”, die „%S” ist, eingestellt. Wenn der Externes-Instrument-Treiber 44 auf diese Treiberdaten 423 verweist, wird die Anweisung „%S” an die Kamera 2a ausgegeben, in Übereinstimmung mit einer empfangenen Anweisung an die Kamera 2a auf Grundlage einer Punktaussage 7.
  • Das „Datenausleseformat” zeigt das Format an, das durch eine Datenausgabe durch die Kamera 2a eingesetzt wird. Es wird zum Beispiel ein Kamera-Erfassungsdatenformat eingestellt, das „nn, x1x1x1x1. x1x1, y1y1y1y1. y1y1, r1r1r1. r1r1, x2x2x2x2. x2x2...”. nn ist eine Nummer von Einstellungen zum Identifizieren der Daten und x1, x2 sind X-Koordinaten in erhaltenen Daten. Y1 ist eine Y-Koordinate in den erhaltenen Daten und r1 ist ein Rotations [Grad] von Daten in den erhaltenen Daten. Der Externes-Instrument-Treiber 44 weist eine Funktion #numCameraData zum Extrahieren der Anzahl von Einstellungen von den erhaltenen Daten auf, sowie eine Funktion #CameraDataX[] zum Extrahieren der X-Koordinate, eine Funktion #CameraDataY[] zum Extrahieren der Y-Koordinate und eine Funktion #CameraDataT[] zum Extrahieren des Rotations [Grad]. Wenn der Externes-Instrument-Treiber 44 diese Treiberdaten 423 bestimmt, werden, mit Bezug auf das „Kamera-Erfassungsdatenformat” die Anzahl von Einstellungen, die X-Koordinate, die Y-Koordinate und der Rotations [Grad] aus den erhaltenen Daten extrahiert. Als nächstes werden diese Informationselemente in Übereinstimmung mit dem Datenformat ausgegeben, das durch die Punktaussage 7 verwendet wird.
  • Der Treiberregistrierungsabschnitt 51d speichert in dem Treiber-Speicherbereich 42b die Treiberdaten 423, die die jeweiligen Einträge aufweisen, die durch den Element-Einstellungsabschnitt 51c eingestellt sind. Die Treiberdaten 423 werden in einer Assoziation mit einem Identifikator zum Identifizieren dieser Daten gespeichert. Der Identifikator für die zu speichernden Treiberdaten 423 ist der „Externes-Instrument-Typ”, der durch den Element-Einstellungsabschnitt 51c eingestellt ist.
  • Steuerdatengenerator
  • Der Steuerdatengenerator 52 erzeugt die Steuerdaten 422 in Übereinstimmung mit einer Eingabe durch die Manipulationshardware 46. Die Steuerdaten 422, die durch den Steuerdatengenerator 52 erzeugt werden, werden in einem Steuerdaten-Speicherbereich 42a des Speichers 42 gespeichert. 6 ist ein Beispieldiagramm zur Darstellung einer Gesamtstruktur der Steuerdaten 422. Die Steuerdaten 422 zeichnen sequentiell Arbeiten an jedem Prozesspunkt auf. Diese Steuerdaten 422 weisen eine Vielzahl von strukturellen Punktblöcken 6 auf, die in einer Sequenz angeordnet sind. Der strukturelle Punktblock 6 zeichnet ein Bündel der sequentiellen Arbeiten für einen Prozesspunkt auf.
  • Die sequentiellen Arbeiten werden mit Punkt-basierten Satzstrukturen aufgezeichnet. D. h., dass der strukturelle Punktblock 6 Gesamtpunktaussagen 7 enthält, die jeweils die sequentiellen Arbeiten für einen Prozesspunkt repräsentieren. Jede Punktaussage 7 ist eine Information, die für jeden Punkt vorbereitet wird, der eine Positionierung benötigt, um die Hauptarbeit an dem Prozesspunkt zu beenden. Die Hauptarbeit verwendet Aktionen, die das externe Instrument 2 ursprünglich aufweist, zum Beispiel ist die Hauptarbeit ein Anziehen einer Schraube mit einem Schraubendreher, das Anbringen von Farbe an dem Werkstück mit einem Applikator 2b, und das Fotografieren mit einer Kamera 2a. Diese Punktaussage 7 enthält, einer Punktnummer 71 folgend, eine Punkttypoption 72, eine Punktkoordinate 73 und eine Punktgeschwindigkeit 74, die in einer Sequenz angeordnet sind. Die Punktaussage 7 enthält darüber hinaus, der Punktnummer 71 folgend, eine Arbeitstypoption 75, eine Arbeitsnummer 76 und eine Punktkorrektur 77, die in einer Sequenz angeordnet sind.
  • Die Punktnummer 71 bestätigt eine Angabe, dass die Punktaussage in einer Punkt-basierten Satzstruktur ist, und ein Abgrenzungselement. Die Punktnummer 71 unterteilt jede Punktaussage 7. Die Punkttypoption 72 zeigt eine Kombination der Punktart und des Bewegungsverfahrens an. Der Punktetyp enthält zum Beispiel einen Führungspunkt, den Startpunkt der Hauptarbeit und den Endpunkt der Hauptarbeit. Das Bewegungsverfahren ist zum Beispiel eine Bewegung für einen Punktauftrag, eine Bewegung zum Festziehen einer Schraube, eine PTP-Bewegung, eine lineare Interpolationsbewegung oder eine Kreisbogeninterpolation mit einem bestimmten Ergänzungspunkt. Eine Beispielbewegung für einen Punktauftrag ist ein Bewegungsverfahren, wobei es sich um eine Kombination eines PTP-Treibers und einer Punktauftragsarbeit nach dem PTP-Treiber handelt. Bezüglich der Aufzeichnung der Punkttypoption 72, die den Führungspunkt anzeigt, ist darüber hinaus das Aufzeichnen in einer Vielzahl von Punktkoordinaten 73 gestattet, die die jeweiligen Führungspunkte anzeigen.
  • Die Arbeitsnummer 76 ist ein Identifikator, der einen Anweisungssatz anzeigt, der die Arbeitsdetails des externen Werkzeugs 2 beschreibt. Der Anweisungssatz wird in einer Robotersprache beschrieben, wie zum Beispiel SLIM (engl. Standard Language for Industrial Manipulators), und wird vorab in einem Anweisungsspeicherbereich 42d des Speichers 42 gespeichert. Die Arbeitstypoption 75 zeigt eine Zeitperiode an, in der die durch die Arbeitsnummer 76 angezeigte Arbeit auszuführen ist. Diese Arbeitstypoption 75 zeigt eine Arbeit vor der Bewegung, eine Arbeit während der Bewegung, eine Arbeit an dem Startpunkt, eine Arbeit an dem Endpunkt oder die Hauptarbeit an.
  • Die Punktkorrektur 77 ist ein Identifikator, der eine Bedingung anzeigt, die zum Berechnen einer Korrekturgröße in der Punktkoordinate 73 verwendet wird, und die Korrekturgröße, die auf Grundlage dieser Bedingung berechnet wird. Die Bedingung und die Korrekturgröße in der Punktkorrektur 77 sind in einem Anweisungsspeicherbereich 42d gespeichert. Das Steuerdaten-Ausführungsmittel 54 bewirkt, dass das externe Instrument 2 die Arbeit an einer Koordinate ausführt, die bezüglich der Punktkoordinate 73 der Punktaussage 7 in den Steuerdaten 422 durch Wiedergeben der Korrekturgröße erhalten wird, die auf Grundlage der Bedingung berechnet wird, die in der Punktkorrektur 77 beschrieben ist. D. h., dass dann, wenn ein zu verarbeitendes Werkstück W an einer vorbestimmten Anordnungsposition angeordnet ist, und das externe Instrument 2 eine Arbeit an dem Werkstück W ausführt, die Punktkoordinate 73, die durch die Punktaussage 7 bestimmt wird, auf einer Annahme basiert, dass das Werkstück W an einer geeigneten Anordnungsposition angeordnet ist. Wenn somit das Werkstück W von der vorbestimmten Anordnungsposition versetzt wird, wird die Hauptarbeit an dem versetzten Werkstück W an einem Verarbeitungspunkt ausgeführt, bei dem es sich um die Punktkoordinate 73 auf Grundlage der Annahme handelt, dass das Werkstück W an einer geeigneten Auslenkungsposition angeordnet ist. Ein Resultat, das durch den Nutzer gewünscht wird, kann somit nicht erhalten werden. Wenn das Werkstück W daher von der beabsichtigten Anordnungsposition ausgelenkt wird, ist es daher erforderlich, die Verschiebungsgröße zu berechnen.
  • 7 zeigt einen Identifikator, der die Bedingung anzeigt, die zum Berechnen der Korrekturgröße verwendet wird. 7 zeigt darüber hinaus eine „Arbeitskorrektur (Nummer)”, die als die Punktkorrektur 77 gespeichert ist. Wie in 7 dargestellt, enthält die Punktkorrektur „Arbeitskorrektur #”, „Arbeitskorrekturtyp”, „Externes-Instrument-Typ”, „Transformationskoeffizient”, „erste Referenzmarkierungsposition” und „zweite Referenzmarkierungsposition”. Darüber hinaus wird diese Punktkorrektur 77 als „Arbeitskorrektur (Nummer)” mit dem Identifikator gespeichert, bei dem es sich um den Arbeitskorrektur # handelt.
  • Der „Arbeitskorrektur #” ist eine Identifizierungsnummer, die der Bedingung geben wird, die zum Berechnen der Korrekturgröße verwendet wird. Der „Arbeitskorrekturtyp” zeigt eine Art der Korrektur der Korrekturgröße an, wie zum Beispiel eine Kameraarbeitskorrektur durch die Kamera 2a, oder eine Sensorarbeitskorrektur durch Sensoren. Der „Externes-Instrument-Typ” zeigt die ID des externen Instruments 2 an, das für jede Arbeitskorrektur verwendet wird, und beispielhafte IDs sind, eine Typnummer, eine Produktseriennummer und der Externes-Instrument-Typ, der dem erzeugten Treiber gegeben wird, der später erläutert wird. Der „Transformationskoeffizient” ist ein Transformationskoeffizient, der verwendet wird, wenn das durch das externe Instrument 2 eingesetzte Koordinatensystem in ein Koordinatensystem transformiert wird, das durch die Steuerdaten 422 verwendet wird. Dieser Transformationskoeffizient registriert „12,58”, das über eine Kalibrierung berechnet wird, die später erläutert wird.
  • Die „Referenzmarkierungsposition” zeigt die Position einer Referenzmarkierung an, die eine Referenz zur Bestimmung ist, ob oder ob nicht das angeordnete Werkstück W in einer geeigneten Position und in einer geeigneten Lage ist. Die Referenzmarkierungsposition wird durch das Koordinatensystem bestimmt, das durch die Steuerdaten 422 verwendet wird. Wie in 8 dargestellt, werden zum Beispiel zwei Referenzmarkierungen 8 vorab an der Oberfläche des Werkstücks W gestellt. In diesem Fall werden zwei Arten von Koordinaten als die Referenzmarkierungspositionen registriert. D. h., dass die Koordinaten einer Referenzmarkierung 8a, wenn das Werkstück W an einer geeigneten Anordnungsposition und in einer geeigneten Lage angeordnet ist, als die Koordinaten der ersten Referenzmarkierung (d. h., X = 100,00, Y = 95,00) registriert werden, und die Koordinaten einer Referenzmarkierung 8b, wenn das Werkstück W an einer geeigneten Anordnungsposition angeordnet ist, als die Koordinaten der zweiten Referenzmarkierung (d. h., X = 98,00, Y = 92,00) registriert werden.
  • Treiberauswahlmittel
  • Das Treiberauswahlmittel 53 liest, in Übereinstimmung mit dem externen Instrumententyp, der in der Punkkorrektur 77 der Steuerdaten 422 beschrieben ist, die Treiberdaten 423, die mit dem externen Instrument 2 kompatibel sind, aus dem Treiberdaten-Speicherbereich 42b des Speichers 42 aus, und gibt den ausgelesenen Treiber an den Externes-Instrument-Treiber 44 wieder. D. h., dass dann, wenn die Punktkorrektur 77 der Punktaussage 7 mit der Punktnummer 2 in 6 eine Arbeitskorrektur 1 ist, das Treiberauswahlmittel 53 aus dem Treiberdaten-Speicherbereich 42b die Treiberdaten 423 mit dem Identifikator „CV-1000” ausliest, d. h., den externen Instrumententyp, der in der Arbeitskorrektur 1 eingestellt ist. Die Treiberdaten 423 werden daraufhin an den Externes-Instrument-Treiber 54 ausgegeben und der Inhalt des Externes-Instrument-Treiber 54 wird auf Grundlage der Treiberdaten 423 neu geschrieben.
  • Steuerdaten-Ausführungsmittel
  • Das Steuerdaten-Ausführungsmittel 54 gibt, in Übereinstimmung mit einer Eingabe durch die Manipulationshardware 46 Steueranweisungen an die Bewegungseinheit 3 und das externe Instrument 2 auf Grundlage der Steuerdaten 422 aus. Das Steuerdaten-Ausführungsmittel 54 führt eine sequentielle Ausführung von jeder der gesamten Punktaussagen 7 in den Steuerdaten 422 durch. D. h., dass das Steuerdaten-Ausführungsmittel 54 auf die strukturellen Punktblöcke 6 hintereinander ab dem Header-Punktblock verweist. Bezüglich der Referenz bzw. des Verweises auf die strukturellen Punkblöcke 6 verweist das Steuerdaten-Ausführungsmittel 54 auf die jeweiligen Punktaussagen 7 in dem strukturellen Punktblock 6 ab der Header-Punktaussage. Wenn der Steuerbetrieb ausgeführt wird, der durch die Punktaussage 6 angezeigt wird, und die Ausführung des Steuerbetriebs, der durch die gesamten Punktaussagen 7 angezeigt ist, abgeschlossen ist, kehrt der Prozess daraufhin zu der Hauptroutine zurück. Wenn der Prozess zu der Hauptroutine zurückkehrt, verweist das Steuerdaten-Ausführungsmittel 54 weiter auf den nächsten strukturellen Punktblock 6.
  • In dem Steuerdaten-Ausführungsmittel 54 wird die Steueranweisung, die auf Grundlage der Punktaussage 7 an die Bewegungseinheit 3 ausgegeben wird, durch den Motortreiber 45 ausgegeben. Die Steueranweisungen, die auf Grundlage der Punktaussage 7 an das externe Instrument 2 ausgegeben wird, wird darüber hinaus an das externe Instrument 2 über den Externes-Instrument-Treiber 44 ausgegeben. Die Steueranweisung, die auf Grundlage der Punktaussage 7 ausgegeben wird, wird transformiert und in dem Format ausgegeben, das durch eine Anweisung verwendet wird, um zu bewirken, dass das externe Instrument 2 eine Arbeit über den Externes-Instrument-Treiber 44 ausführt. Der Externes-Instrument-Treiber 44 gibt, mit anderen Worten, in Übereinstimmung mit dem lesbaren Format durch das externe Instrument 2 die Steuerdetails aus, die durch die Punktaussage 7 beschrieben werden. Wenn das externe Instrument 2 im Gegensatz dazu ein Steuerresultat ausgibt, transformiert der Externes-Instrument-Treiber 44 das Datenformat, das durch das Steuerresultat verwendet wird, in Übereinstimmung mit dem Format, das durch die Punktaussage 7 verwendet wird.
  • 1-2. Aktion
  • In Übereinstimmung mit dem Roboter 1 dieser Ausführungsform, der die obige Struktur verwendet bzw. einsetzt, wird das externe Instrument 2 dazu gebracht, eine Arbeit durch die folgenden Prozesse auszuführen.
    • (1) Erzeugungsprozess von Treiberdaten 423 in Übereinstimmung mit dem externen Instrument 2;
    • (2) Punktkorrektur-Einstellprozess zum Einstellen der Bedingung zum Berechnen der Korrekturgröße, die für die Steuerdaten 422 verwendet wird;
    • (3) Erzeugungsprozess von Steuerdaten 422, die ein zu steuerndes externes Instrument 2 mit Treiberdaten 423 assoziieren, die damit kompatibel sind; und
    • (4) Steuerprozess für Bewegungseinheit 3 und externes Instrument 2 auf Grundlage von Steuerdaten 422.
  • Um das Verständnis für die vorliegende Erfindung zu erleichtern, gibt die folgende Erläuterung Prozeduren an, die die Erzeugung der neuen Treiberdaten 423 für die Kamera 2a, eine Einstellung der Bedingung zum Berechnen einer korrigierten Position unter Verwendung der Kamera 2a, einer Erzeugung der Steuerdaten 422 mit einer Positionskorrektur, und eine Anwendung der Arbeit mit der Positionskorrektur, wenn die Kamera 2a und der Applikator 2b als die externen Instrumente 2 installiert sind, enthalten.
  • (1) Treiberdaten-Erzeugungsprozess
  • In dem Treiberdaten-Erzeugungsprozess werden die Treiberdaten 423 erzeugt, die mit der angebrachten Kamera 2a als das externe Instrument 2 kompatibel sind. Es wird zum Beispiel angenommen, dass das Format, das durch die Kamera 2a verwendet wird, die als das externe Instrument 2a angebracht ist, „KS UserCamera” ist, und die Treiberdaten 423, die mit dieser Kamera 2a kompatibel sind, noch nicht in dem Treiberdaten-Speicherbereich 42b gespeichert wurden. Neue Treiberdaten 423, die mit dem Kameraformat „KS UserCamera” kompatibel sind, werden durch Prozesse zum Registrieren des Accounts, Verifizieren des Accounts, Erzeugen des Treibers und Registrieren des Treibers erzeugt. 9 ist ein Flussdiagramm zur Darstellung einer Prozedur des Erzeugungsprozesses der Treiberdaten 423.
  • In dem Account-Registrierungsprozess wird ein Account zum Erzeugen der Treiberdaten 423 erzeugt. Zum Zeitpunkt der Erzeugung des Treibers wird dem Nutzer eine Autorität zum Erzeugen des externen Treibers gegeben, der einen Versuch unternimmt, den externen Treiber zu erzeugen. Bezüglich der Autorität werden dem Nutzer, der eine Autorität möchte, die „Nutzer-ID” und das „Passwort” gegeben, die beide in dem Account-Speicherbereich 42c sind (Schritt S01). Zum Beispiel werden einem Nutzer A eine Nutzer-ID (Account-ID) „Suzuki k” und ein Passwort „1234” gegeben.
  • In dem Account-Verifizierungsprozess wird verifiziert, ob oder ob nicht der Nutzer, der einen Versuch unternimmt, den Treiber zu erzeugen, die Autorität zum Erzeugen eines Treibers hat. Bezüglich der Verifizierung der Autorität werden die eingegebene „Account-ID” und „Passwort” von dem Nutzer empfangen, der einen Versuch unternimmt, den Treiber zu erzeugen. Es wird bestimmt, ob oder ob nicht die eingegebene „Account-ID” und das „Passwort” mit einer Kombination der „Nutzer-ID” und dem „Passwort” sind, die beide in dem Account-Speicherbereich 42c gespeichert sind. Wenn die eingegebene Kombination konsistent mit der registrierten Kombination ist, wird die Autorität bestätigt und dem Nutzer, der die Kombination der Account-ID und dem Passwort eingegeben hat, wird erlaubt, den Treiber zu erzeugen (Schritt S02). Der Nutzer A gibt zum Beispiel die Account-ID, d. h. „Suzuki k”, und das Passwort, d. h. „1234”, ein.
  • In dem Erzeugungsprozess der Treiberdaten 423 wird der eingegebene Inhalt von dem authentifizierten Nutzer empfangen und es wird ein neuer Treiber erzeugt. Bezüglich der Treiberdaten 423 werden Einträge eingestellt, bei denen es sich um die „Nutzer-ID”, den „Schutzmodus”, die „Externes-Instrument-Typ-ID”, den „Kommunikationsinhalt”, die „Externes-Instrument-Anweisung” und das „Datenausleseformat” handelt (Schritt S03). Wenn der Nutzer A einen Versuch unternimmt, den Treiber zu erzeugen, wird die „Nutzer-ID” in den Treiberdaten 423 als „Suzuki k” eingestellt. Der Nutzer A stellt als nächstes „CV-1000” als den „Externes-Instrument-Typ” ein, und stellt die anderen Einträge beliebig ein, wobei es sich um den „Schutzmodus”, „Externes-Instrument-Typ-ID”, „Kommunikationsinhalt”, „Externes-Instrument-Anweisung” und „Datenausleseformat” handelt.
  • In dem Treiberregistrierungsprozess wird der erzeugte externe Treiber in dem Treiberspeicherbereich 42b in dem Speicher 42 gespeichert (Schritt S04). Der externe Treiber wird mit dem Index, d. h. dem „Externes-Instrument-Typ” gespeichert.
  • (2) Punktkorrektur-Einstellprozess
  • Als nächstes erfolgt eine Einstellung für eine Punktkorrektur, wobei es sich um eine Einstellung der Bedingung zum Berechnen der Korrekturgröße handelt, die in den Steuerdaten 422 verwendet wird.
  • (a) Berechnung eines Transformationskoeffizienten
  • Als eine Punktkorrektur erfolgt zuerst eine Einstellung für die „Arbeitskorrektur #”, den „Arbeitskorrekturtyp” und den „Externes-Instrument-Typ”, und der „Transformationskoeffizient” wird berechnet. Der „Transformationskoeffizient” wird über eine sogenannte Kalibrierung berechnet. 10 ist ein Flussdiagramm zur Darstellung einer Prozedur zum Berechnen des „Transformationskoeffizienten” für die Punktkorrektur.
  • In dem „Transformationskoeffizienten”-Berechnungsprozess werden zuerst die „Arbeitskorrektur #”, wobei es sich um den Namen der Punktkorrektur handelt, der „Arbeitskorrekturtyp”, welcher anzeigt, durch welche Art von externem Instrument 2 die Punktkorrektur durchgeführt wird, und der „Externes-Instrument-Typ”, der die Typnummer des externen Instruments 2 anzeigt, das für jede Arbeitskorrektur verwendet wird, eingestellt (Schritt S11).
  • Wenn das Werkstück W an einer geeigneten Position und in einer geeigneten Lage angeordnet ist, wird die Bewegungseinheit 3 daraufhin durch die Funktion des Roboters 1 gesteuert und die Kamera 2a wird zu einer Kamerabildaufnahmeposition bewegt (Schritt S12). Die Kamerabildaufnahmeposition ist eine Position, die oberhalb des Anordnungspunkts des Werkstücks W bereitgestellt ist, und wird durch das Koordinatensystem angezeigt, das durch die Steuerdaten 422 verwendet wird.
  • Nachdem die Kamera 2a zu der Kamerabildaufnahmeposition bewegt wurde, wird bestimmt (Schritt S13), ob oder ob nicht die Kamera 2a, die mit dem „Externes-Instrument-Typ” eingestellt ist, den „Externes-Instrument-Typ” übereinstimmt, der in dem Treiber gegeben ist, der durch den Nutzer neu erzeugt wird. Wenn die Kamera 2a mit dem „Externes-Instrument-Typ” übereinstimmt, der in dem Treiber gegeben ist, der durch den Nutzer neu erzeugt wurde (Schritt S13: JA), wird eine Anweisung zur Bildaufnahme an die Kamera 2a ausgegeben (Schritt S14), in Übereinstimmung mit den Steuerdetails, die in den Treiberdaten 423 beschrieben sind. Die Kamera 2a gibt an die Steuerung 4 die Koordinaten der Referenzmarkierung in einem aufgenommenen Bild durch die eigene Funktion der Kamera aus. Die Steuerung 4 transformiert (Schritt S15) das Bildaufnahmeresultat, das durch die Steuerdaten 422 über den Externes-Instrument-Treiber 44 verwendet wird.
  • Wenn im Gegensatz dazu die Kamera 2a mit dem „Externes-Instrument-Typ” übereinstimmt, der vorab in dem Treiberdaten-Speicherbereich 42b in der Steuerung 4 gespeichert ist (Schritt S13: NEIN), wird eine Anweisung zur Bildaufnahme an die Kamera 2a ausgegeben (Schritt S16), in Übereinstimmung mit den Steuerdetails, die in den Treiberdaten 423 beschrieben sind. Die Kamera 2a gibt an die Steuerung 4 die Koordinaten der Referenzmarkierung in einem aufgenommenen Bild durch die eigene Funktion der Kamera aus. Die Steuerung 4 transformiert (Schritt S17) das Bildaufnahmeresultat in das Format, das durch die Steuerdaten 422 über den Externes-Instrument-Treiber 44 verwendet wird.
  • Durch die Prozesse in den Schritten S15 und S17 kann die Steuerung 4 die Position der Referenzmarkierung 8 in dem Koordinatensystem der Kamera 2a erhalten, wenn die Kamera 2a zu der Kamerabildaufnahmeposition bewegt wird.
  • Die Position der Referenzmarkierung in dem Koordinatensystem, das durch die Steuerdaten 422 verwendet wird, wird als nächstes erhalten. Als ein beispielhaftes Verfahren zum Erhalten der Position der Referenzmarkierung 8 in dem Koordinatensystem, das durch die Steuerdaten 422 verwendet wird, wird die Bewegungseinheit 3 des Roboters 1 manuell derart bewegt, dass die Position der Referenzmarkierung in dem visuellen Feld der Kamera 2a konsistent mit der Position der Referenzmarkierung an der Kamerabildaufnahmeposition in dem Schritt S12 wird (Schritt S18). Als ein Verfahren zum manuellen Bewegen der Kamera 2a wird die Kamera 2a in diesem Fall nicht direkt durch eine Hand bewegt, sondern ein Verfahren zum Bewegen der Kamera 2a durch eine Manipulation an der Manipulationshardware 46 wird eingesetzt. Die Position der Referenzmarkierung in dem Koordinatensystem, das durch die Steuerdaten 422 verwendet wird, kann somit erhalten werden.
  • Anschließend wird eine Variable berechnet, die für die Kalibrierung verwendet wird. In diesem Berechnungsprozess wird eine Variable berechnet, die die Koordinate der Referenzmarkierung, die in dem Schritt S12 aufgenommen wird, konsistent macht mit der Position der Referenzmarkierung, die durch Bewegung des Arms des Roboters 1 erhalten wird, und der berechnete Wert wird in der Punktkorrektur registriert (Schritt S19).
  • Die „Arbeitskorrektur #”, der „Arbeitskorrekturtyp”, der „Externes-Instrument-Typ” und der „Transformationskoeffizient”, die, wie oben erläutert, eingestellt werden, werden in dem Speicher 42 in Assoziation mit dem „Externes-Instrument-Typ” gespeichert. Der „Externes-Instrument-Typ” wird zu einem Identifikator, der die Punktkorrektur anzeigt.
  • (b) Registrierung einer Referenzmarkierungsposition
  • Als nächstes wird die Punktkorrektur berechnet, bei der es sich um die „Referenzmarkierungsposition” handelt. 11 ist ein Flussdiagramm zur Darstellung einer Prozedur des Referenzmarkierungs-Registrierungsprozesses. Bezüglich der Berechnung der Position der Referenzmarkierung wird das Werkstück W zuerst an einer geeigneten Position und in einer geeigneten Lage angeordnet. Die Steuerung 4 steuert als nächstes die Bewegungseinheit 3, um die Kamera 2a, d. h. das externe Instrument 2, zu der Kamerabildaufnahmeposition relativ zu der Referenzmarkierungsbewegung (Schritt S21). Die Kamerabildaufnahmeposition relativ zu der Referenzmarkierung ist eine Position, die oberhalb des Anordnungspunkts des Werkstücks W bereitgestellt ist, und wird durch das Koordinatensystem angezeigt, das durch die Steuerdaten 422 verwendet wird.
  • Nachdem die Kamera 2a zu der Kamerabildaufnahmeposition relativ zu der Referenzmarkierung bewegt wurde, wird bestimmt (Schritt S22), ob oder ob nicht die Kamera 2a, eingestellt mit dem „Externes-Instrument-Typ”, mit dem „Externes-Instrument-Typ” übereinstimmt, der in dem Treiber gegeben ist, der neu durch den Nutzer erzeugt wird. Wenn die Kamera 2a mit dem „Externes-Instrument-Typ” übereinstimmt, der in dem Treiber gegeben ist, der durch den Nutzer neu erzeugt wird (Schritt S22: JA), wird eine Anweisung zur Bildaufnahme an die Kamera 2a ausgegeben (Schritt S23), in Übereinstimmung mit den Steuerdetails, die in den Treiberdaten 423 beschrieben sind. Die Kamera 2a gibt an die Steuerung 4 die Koordinaten der Referenzmarkierung in einem aufgenommenen Bild durch die eigene Funktion der Kamera aus. Die Steuerung 4 transformiert (Schritt S24) das Bildaufnahmeresultat in das Format, das durch die Steuerdaten 422 durch den Externes-Instrument-Treiber 44 verwendet wird.
  • Wenn im Gegensatz dazu die Kamera 2a mit dem „Externes-Instrument-Typ” übereinstimmt, der vorab in dem Treiberdatenspeicherbereich 42b in der Steuerung 4 gespeichert ist (Schritt S22: NEIN), wird eine Anweisung zur Bildaufnahme an die Kamera 2a ausgegeben (Schritt S25), in Übereinstimmung mit den Steuerdetails, die in den Treiberdaten 523 beschrieben sind. Die Kamera 2a gibt an die Steuerung 4 die Koordinaten der Referenzmarkierung in einem aufgenommenen Bild über die eigene Funktion der Kamera aus. Die Steuerung 4 transformiert (Schritt S26) das Bildaufnahmeresultat in das Format, das durch die Steuerdaten 422 über den Externes-Instrument-Treiber 44 verwendet wird.
  • Durch die Prozesse in den Schritten S24 und S26 kann die Steuerung 4 die Position der Referenzmarkierung 8 in dem Koordinatensystem der Kamera 2a erhalten, wenn die Kamera 2a zu der Kamerabildaufnahmeposition relativ zu der Referenzmarkierung bewegt wird.
  • Als nächstes wird die Position der Referenzmarkierung in dem Koordinatensystem erhalten, das durch die Steuerdaten 422 verwendet wird. Als ein beispielhaftes Verfahren zum Erhalten der Position der Referenzmarkierung 8 in dem Koordinatensystem, das durch die Steuerdaten 422 verwendet wird, wird der Transformationskoeffizient für die Koordinate der Referenzmarkierung eingesetzt, die durch das durch die Kamera 2a verwendete Koordinatensystem gegeben ist, wodurch diese in die Koordinate in dem Koordinatensystem transformiert wird, das durch die Steuerdaten 422 verwendet wird (Schritt S27).
  • Die Koordinate der Referenzmarkierung in dem Koordinatensystem der Steuerdaten 422 wird anschließend registriert (Schritt S28), als die „Referenzmarkierungsposition” in der Punktkorrektur.
  • (3) Steuerdaten-Erzeugungsprozess
  • Wenn die Steuerdaten 422 erzeugt werden sollen, erfolgt zuerst eine Einstellung für die Punktkorrektur, und es erfolgt dann eine Einstellung für die „Hauptarbeit” an jedem Prozesspunkt, der „Koordinate” von jedem Prozesspunkt, und einer Arbeit nach der Beendigung der Arbeit an dem Arbeitspunkt. In diesem Fall wird zur Erleichterung des Verständnisses für die vorliegende Erfindung eine Erläuterung eines beispielhaften Falls gegeben, bei dem die Korrekturgröße auf Grundlage der Verschiebungsgröße des Werkstücks W berechnet wird, dass an der Anordnungsposition in einem ersten Prozesspunkt angeordnet ist, und eine Anwendungsarbeit wird an dem Werkstück W an einem zweiten Prozesspunkt in der Koordinate durchgeführt, die die Korrekturgröße wiedergibt, die an dem ersten Prozesspunkt berechnet wird. 12 ist ein Diagramm zur Darstellung beispielhafter Steuerdaten 422 dieser Ausführungsform.
  • Für den ersten Prozesspunkt erfolgt, wie in 12 dargestellt, eine Einstellung für die Punktaussage 7, die die Punktnummer 71 enthält, d. h. „#1”, die Punkttypoption 70, d. h. „PTP-Treiber”, die Punktkoordinate 73, d. h. „X = 100, Y = 100 und Z = 20”, die Punktgeschwindigkeit 74, d. h. „Geschwindigkeit 40”, die Arbeitstypoption 75, d. h. „Arbeit nach Bewegung”, die Arbeitsnummer 76, d. h. „1”, und die Punktkorrektur 77 „keine”. Die eingestellte Arbeitsnummer 76, d. h. „1”, ist ein Identifikator, der eine Anweisung gegeben ist, bei der es sich um takeCamera1 handelt. Die Anweisung takeCamera1 bewirkt, dass die Kamera 2a und die Steuerung 4 die folgenden Operation ausführt:
    • (a) Die Steuerung 4 gibt eine Bildaufnahmeanweisung an die Kamera 2a aus, um zu bewirken, dass die Kamera 2a ein Bild aufnimmt;
    • (b) Die Kamera 2a extrahiert die Referenzmarkierungskoordinate von einem aufgenommenen Bild, und gibt ein Extraktionsresultat an die Steuerung 4 aus; und
    • (c) Die Steuerung 4 vergleicht die Referenzmarkierungskoordinate, die ausgegeben wird durch die Kamera 2a, mit der vorab eingestellten Referenzmarkierungskoordinate, berechnet die Korrekturgröße auf Grundlage der Differenz und speichert die berechnete Korrekturgröße in dem Anweisungsspeicherbereich 42d als die Korrekturgröße für die Arbeitskorrektur 1.
  • Für den zweiten Prozesspunkt erfolgt darüber hinaus eine Einstellung für die Punktaussage 7, die die Punktnummer 71 enthält, d. h. „#2”, die Punkttypoption 72, d. h. „Punktauftrag”, die Punktkoordinate 73, d. h. „X = 100, Y = 140 und Z = 30”, die Punktgeschwindigkeit 74, d. h. „Geschwindigkeit 40”, die Arbeitstypoption 75, d. h. „keine”, die Arbeitsnummer 76, d. h. „keine”, und die Punktkorrektur 77, d. h. „Arbeitskorrektur 1”.
  • Über einen dritten Prozesspunkt erfolgt gleichermaßen eine Einstellung für die Punktaussage 7, die die Punktnummer 71 enthält, d. h. „#3”, die Punkttypoption 72, d. h. „PTP-Treiber”, die Punktkoordinate 73, d. h. „X = 150, Y = 100 und Z = 20”, die Punktgeschwindigkeit 74, d. h. „Geschwindigkeit 40”, die Arbeitstypoption 75, d. h. „Arbeit nach Bewegung”, die Arbeitsnummer 76, d. h. „1”, und die Punktkorrektur 77, d. h. „keine”. Über einen vierten Prozesspunkt erfolgt darüber hinaus eine Einstellung für die Punktaussage 7, die die Punktnummer 71 enthält, d. h. „#4”, die Punkttypoption 72, d. h. „Punktauftrag”, die Punktkoordinate 73, d. h. „X = 150, Y = 140 und Z = 30”, die Punktgeschwindigkeit 74, d. h. „Geschwindigkeit 40”, die Arbeitstypoption 75, d. h. „keine”, die Arbeitsnummer 76, d. h. „keine”, und die Punktkorrektur 77, d. h. „Arbeitskorrektur 1”.
  • (4) Steuerprozess für Bewegungseinheit und externes Instrument
  • In dem Steuerprozess für die Bewegungseinheit 3 und das externe Instrument 2, die derartige Arbeitsdaten verwendet, wird der Roboter 1 in Übereinstimmung mit den in 12 dargestellten Steuerdaten 422 betrieben. Der Roboter 1 arbeitet wie folgt.
  • Der Roboter 1 führt zuerst eine PTP-Bewegung an der Kamera 2a, bei der es sich um das externe Instrument 2 handelt, zu den Koordinaten durch, die als die Punktkoordinate 73 der Punktnummer 71, d. h. „#1” eingestellt sind, und die X = 100,00, Y = 100,00, Z = 20,000 und R = 0,0 sind.
  • Nach der Bewegung gibt die Steuerung 4 die Bildaufnahmeanweisung an die Kamera 2a aus. Diese Bildaufnahmeanweisung wird in die Bildaufnahmeanweisung für die Kamera 2a durch den Externes-Instrument-Treiber 44 transformiert. Die Kamera 2a, die die Bildaufnahmeanweisung empfangen hat, nimmt ein Bild auf, und extrahiert die Koordinate der Referenzmarkierung mit dem aufgenommenen Bild. Die Kamera 2a gibt an die Steuerung 4 ein Steuerresultat aus, d. h. die Koordinate der aufgenommenen Referenzmarkierung. In diesem Fall ist die Koordinate der Referenzmarkierung, die durch die Kamera 2a ausgegeben wird, die Koordinate, die durch das Koordinatensystem wiedergegeben wird, die durch die Kamera 2a verwendet wird.
  • Die Koordinate der Referenzmarkierung, die durch die Kamera 2a ausgegeben wird, wird in das Koordinatenformat transformiert, das durch die Steuerdaten 422 für die Steuerung 4 verwendet wird, durch den Externes-Instrument-Treiber 44 in der Steuerung 4. Die Steuerung 4 berechnet die Korrekturgröße auf Grundlage der Differenz zwischen der empfangenen Koordinate der Referenzmarkierung und der registrierten Koordinate der Referenzmarkierung in der Punktkorrektur 77. Diese Korrekturgröße wird in der Punktkorrektur 77 als die Korrekturgröße 1 aufgezeichnet.
  • Als nächstes bewegt die Steuerung 4 den Applikator 2b, bei dem es sich um ein anderes externes Instrument 2 handelt, zu den Koordinaten, die X = 100,00, Y = 100,00, Z = 20,000 und R = 0,0 sind, die als die Koordinaten des Punkts 2 eingestellt sind, und bewirkt, dass der Applikator 2b eine Anwendungsarbeit durchführt.
  • Wenn in der Anwendungsarbeit in dem Punkt 2 die Arbeitskorrekturnummer, d. h. die Punktkorrektur eingestellt ist, wird die Anwendungsarbeit an der Koordinate durchgeführt, die durch Wiedergeben, an der Koordinate, die als die Koordinate des Punkts 2 eingestellt ist, der Korrekturgröße erhalten wird, die auf Grundlage der Bedingung berechnet wird, die in der Punktkorrektur bestimmt ist. Selbst wenn die Position des Werkstücks W, das der Anwendungsarbeit unterworfen wird, von der Referenzposition verschoben wird, kann die Anwendungsarbeit somit an einer geeigneten Position durchgeführt werden.
  • 1-3 Effekt
  • Selbst dann, wenn ein externes Instrument 2 verwendet wird, das einen unerwarteten Typ aufweist, kann der Roboter 1 gemäß dem obigen Roboter 1 eine Arbeit durch dieses externe Instrument 2 ausführen, indem der Nutzer in die Lage versetzt wird, den Treiber zu erzeugen, der mit diesem externen Instrument 2 kompatibel ist.
  • D. h., dass es gemäß herkömmlicher Technologien notwendig ist, vorab den Treiber, der mit einem derartigen externen Instrument 2 kompatibel ist, in dem Speicher 42 zu speichern. Die Arten externer Instrumente 2 sind jedoch signifikant, und es ist schwierig, vorab Treiber zu präparieren, die mit allen Arten von externen Instrumenten 2 kompatibel sind. Gemäß dem Roboter 1 dieser Ausführungsform kann der Nutzer im Gegensatz dazu den Treiber erzeugen, der mit dem anzubringenden externen Instrument 2 kompatibel ist, und der erzeugte Treiber wird den Steuerdaten 422 hinzugefügt. Der Roboter 1 kann somit mit verschiedenen externen Instrumenten 2 kompatibel sein.
  • Gemäß dieser Ausführungsform wird darüber hinaus der Identifikator zum Identifizieren der Treiberdaten 423 zu diesen Daten gegeben. Eine Überlastung für den Nutzer, wenn die Arbeitsdetails mit den Treiberdaten 423 assoziiert sind, kann somit reduziert werden. 13 zeigt eine beispielhafte Anzeigeform durch die Manipulationshardware 46, wenn der Nutzer die Treiberdaten 423 auswählt. Wenn, wie in 13 dargestellt, der Externes-Instrument-Typ ausgewählt wird, kann der Nutzer die Art unter den auswählbaren Kandidaten auswählen.
  • Darüber hinaus können die folgenden modifizierten Beispiele für diese Ausführungsform eingesetzt werden.
    • (1) In der Ausführungsform wird der Identifikator, bei dem es sich um takeCamera1 handelt, als die Arbeitsnummer der Punktaussage 7 mit der Punktnummer 1 bestimmt. Wenn diese Anweisung, d. h. takeCamera1, ausgeführt wird, wird die Bildaufnahmeanweisung, die durch die Steuerung 4 ausgegeben wird, in den externen Treiber transformiert und ausgegeben, der die Treiberdaten 423 wiedergibt, die durch die Arbeitskorrektur 1 der Punktaussage 7 mit der Punktnummer 2 bestimmt sind. D. h., dass der Treiber durch die Punktaussage 7 mit der Punktnummer 2 bestimmt wird, wenn die Punktaussage 7 mit der Punktnummer 1 ausgeführt wird. In der Ausführungsform kann jedoch, wie in 14 dargestellt, der Externes-Instrument-Typ 78 bestimmt werden, der für jede Punktaussage 7 verwendet wird. Es wird dann, wenn eine Vielzahl von Kameras als die externen Instrumente 2 angeordnet sind, und die individuellen Kameras nacheinander verwendet werden, wird es gemäß dieser Struktur für den Roboter 1 möglich, die Treiberdaten 423 wiederzugeben, die mit der Kamera kompatibel sind, die an dem externen Treiber gesteuert werden.
    • (2) In der Ausführungsform sind die zu verwendenden Treiberdaten 423 in Übereinstimmung mit dem beschriebenen Inhalt der Punktaussage 7 assoziiert, die Art der Assoziierung der Treiberdaten 423 ist jedoch nicht auf diesen Fall beschränkt. Wie in 15 dargestellt, können zum Beispiel die zu verwendenden Treiberdaten 423 mit dem beschriebenen Inhalt des strukturellen Punktblocks 6 assoziiert sein. In diesem Fall werden die zu assoziierenden Treiberdaten 423 für jeden strukturellen Punktblock 6 in Übereinstimmung mit einer Eingabe durch die Manipulationshardware 46 bestimmt. Bezüglich der Art der Bestimmung der Treiberdaten 423 wird in dem strukturellen Punktblock 6 eine Tabelle 9 bereitgestellt und der Externes-Instrument-Typ 78 wird in dieser Tabelle 9 bestimmt. Dies ermöglicht es dem Roboter 1, den gemeinsamen Externes-Instrument-Typ 78 für die individuellen strukturellen Punktblöcke 6 einzustellen. Im Allgemeinen ist es ein seltener Fall, bei dem das externe Instrument 2 während der Ausführung nacheinander folgender Arbeiten geändert wird. Der Einstellung des Externen-Instrument-Typs 78 für jede Arbeit an einem Punkt stellt somit für einen Nutzer eine zeitaufwendige Manipulation dar. Der Roboter 1 kann im Gegensatz dazu kollektiv den Externes-Instrument-Typ 78 einstellen, der für die strukturellen Punktblöcke 6 verwendet wird, und das Ausmaß für den Nutzer für die zeitaufwendige Manipulation kann somit reduziert werden.
    • (3) Die Treiberdaten 423 können nicht mit dem strukturellen Punktblock 6 assoziiert sein, sondern können mit den Steuerdaten 422 assoziiert sein. Wie in 16 dargestellt, kann die Tabelle 9 zum Beispiel in den Steuerdaten 422 bereitgestellt sein, und die Treiberdaten 423, die gemeinsam für die Inhalte von Steuerdaten 423 sind, können bestimmt werden. Dies ermöglicht es, dem Roboter 1, die Treiberdaten 423 kollektiv einzustellen, die verwendet werden, wenn alle strukturellen Punktblöcke 6 in den Steuerdaten 422 ausgeführt werden. Wenn der Roboter 1 bewirkt, dass eine Art von einem externen Instrument 2 eine einzelne Arbeit ausführt, kann die Art des externen Treibers, der für eine Kommunikation zwischen der Steuerung 4 und dem externen Instrument 2 verwendet wird, eine einzelne Art sein. Wenn in diesem Fall der Treiber zu dem strukturellen Punktblock 6 hinzugefügt wird und zu der Arbeitsnummer an einem Punkt addiert wird, steigt die Anzahl der vorzunehmenden Treibereinstellungen an. In diesem Fall wird der Treiber zu den Arbeitsdaten hinzugefügt.
  • 2. Andere Ausführungsform
  • Die Ausführungsform der vorliegenden Erfindung wurde oben erläutert, jedoch können verschiedene Weglassungen, Ersetzungen und Modifikationen durchgeführt werden, ohne vom Umfang der vorliegenden Erfindung abzuweichen. Derartige Ausführungsformen und modifizierte Formen davon sind darüber hinaus im Umfang der vorliegenden Erfindung, und auch im Umfang der Erfindung, wie durch die begleitenden Ansprüche und den diesbezüglichen Äquivalenzbereich definiert.
    • (1) In der Ausführungsform wird zum Beispiel das externe Instrument 2, d. h. die Kamera 2a verwendet, und die Korrekturgröße wird auf Grundlage einer Verschiebegröße des Werkstücks W angesichts eines Bildaufnahmeresultats berechnet. Zusätzlich zu diesem Fall kann ein externes Instrument 2 ebenso verwendet werden, bei dem es sich um einen Lasersensor handelt. Unter Verwendung des Lasersensors kann die Höhe des Werkstücks W gemessen werden und es wird eine Korrektur in der Höhenrichtung auf Grundlage der gemessenen Höhe ermöglicht.
    • (2) In der Ausführungsform wird die Korrekturgröße für das Werkstück W berechnet, das an der Werkstück-Anordnungsposition angeordnet ist, und die Steuerung wird auf Grundlage der Korrekturgröße durchgeführt. Zusätzlich zu diesem Fall können durch eine Einstellung, in den Steuerdaten 422, der Steuerdetails für das externe Instrument 2 und für die Bewegungseinheit 3 die jeweiligen Koordinaten in einer Vielzahl von Werkstücken W, die zufällig angeordnet sind, berechnet werden, und jeweilige Arbeiten können auf Grundlage der jeweiligen berechneten Koordinaten ausgeführt werden.
    • (3) In der Ausführungsform wird eine Arbeitsnummer 76 in einer Punktaussage 7 eingestellt, es können jedoch eine Vielzahl von Arbeitsnummern bestimmt werden. Wenn eine erste Arbeitsnummer und eine zweite Arbeitsnummer für eine Punktaussage 7 bestimmt sind, können zwei Arten von Arbeiten an der gleichen Punktkoordinate ausgeführt werden.
    • (4) In der Ausführungsform wird die Schutzebene des Treibers, der durch den Nutzer erzeugt wird, eingestellt, jedoch kann die Autoritätsebene in Übereinstimmung mit dem Nutzer vergeben werden. D. h., dass die Autorität, die dem Nutzer gegeben wird, nacheinander unterschieden wird in Übereinstimmung mit der Charakteristik des Nutzers. Dem Nutzer, der eine starke Autorität aufweist, kann erlaubt werden, die Treiberdaten 423 anzusehen, zu editieren und zu löschen, ohne durch eine Schutzebene beschränkt zu sein, der für den Nutzer eingestellt ist, der eine geringe Autorität aufweist. Die höchste Schutzebene „A” kann zum Beispiel einem Hersteller gegeben werden, der den Roboter 1 herstellt, ein zweithöchste Schutzebene „B” kann einem Lieferanten gegeben werden, der den Roboter 1 von dem Hersteller erwirbt und den Roboter 1 aufstellt und eine dritthöchste Schutzebene „C” kann einem Käufer gegeben werden, der den Roboter 1 von dem Lieferanten erwirbt und den Roboter 1 über den Lieferanten aufstellt. Wenn gemäß dieser Struktur der Nutzer den Hersteller auffordert, den Roboter 1 zu reparieren oder in Stand zu halten, kann ein Ingenieur, der von dem Hersteller gesendet wird, die Treiberdaten 423 editieren, die durch den Nutzer eingestellt wurden.

Claims (11)

  1. Roboter (1), der sequentielle Arbeiten an jedem Arbeitspunkt ausführt, wobei der Roboter (1) umfasst: ein externes Instrument (2), das eine Hauptarbeit an dem jeden Arbeitspunkt in den sequentiellen Arbeiten ausführt; eine Steuerung (4) zum Steuern des externen Instruments (2) auf Grundlage von Steuerdaten (422), die strukturelle Punktblöcke (6) enthalten, die in einer Sequenz angeordnet sind, wobei die strukturellen Punktblöcke (6) die sequentiellen Arbeiten an dem jeden Arbeitspunkt bündeln; einen Externes-Instrument-Treiber (44) zum Transformieren eines Formats von Daten, die zwischen dem externen Instrument (2) und der Steuerung (4) ausgetauscht werden; einen Treibergenerator (51) zum Erzeugen von Treiberdaten (423), die ein Detail der Transformation des Datenformats durch den Externes-Instrument-Treiber (44) anzeigen; und ein Treiberauswahlmittel (53) zum Auswählen der Treiberdaten (423), die für den Externes-Instrument-Treiber (44) verwendet werden, in Übereinstimmung mit dem zu verwendenden externen Instrument (2).
  2. Roboter (1) nach Anspruch 1, wobei: die sequentiellen Arbeiten die Hauptarbeit, ausgeführt durch das externe Instrument (2), eine Vorarbeit und eine Nacharbeit vor und nach der Hauptarbeit, und eine Positionierung an einer Vielzahl von Arbeitspunkten für die Hauptarbeit umfassen; und der strukturelle Punktblock (6), der die Steuerdaten (422) ausbildet, Daten speichert, die eine Arbeit in den sequentiellen Arbeiten und ein Detail der Bewegung anzeigt, sowie die Treiberdaten (423) in Assoziation miteinander.
  3. Roboter (1) nach Anspruch 1, wobei: der strukturelle Punktblock (6) Punktaussagen enthält, die alle Arbeitspunkte anzeigt, die während der sequentiellen Arbeiten zu positionieren sind, sowie Details der Arbeiten vor der Bewegung zu dem Punkt, während der Bewegung und nach der Bewegung, wobei die Punktaussagen in einer Sequenz in dem strukturellen Punktblock (6) angeordnet sind; und die jede Punktaussage, in Assoziation miteinander, Daten speichert, die eine Arbeit in den sequentiellen Arbeiten und ein Detail der Bewegung und die Treiberdaten (423) anzeigt.
  4. Roboter (1) nach einem der Ansprüche 1 bis 3, ferner mit einem Externes-Instrument-Treiber-Speicher (42b) zum Speichern der Treiberdaten (423) mit einem Identifikator zum Identifizieren der gespeicherten Treiberdaten, wobei in den Steuerdaten (422) die zu verwendenden Treiberdaten durch den Identifikator bestimmt werden.
  5. Roboter (1) nach einem der Ansprüche 1 bis 4, wobei die Treiberdaten (423) eine Reihenfolge zum Ausführen der Arbeiten enthalten, die durch das externe Instrument (2) auszuführen sind, und eine Arbeitsanweisung, die bewirkt, dass das externe Instrument (2) die Arbeit ausführt.
  6. Roboter (1) nach einem der Ansprüche 1 bis 5, wobei die Treiberdaten (423) eine Variable enthalten, die verwendet wird, wenn Daten, die von dem externen Instrument (2) übertragen werden, durch die Steuerung (4) empfangen werden.
  7. Roboter (1) nach einem der Ansprüche 1 bis 6, wobei: die Treiberdaten (423) einen Externes-Instrument-Typ enthalten, der einen Typ des externen Instruments (2) anzeigt; und der Roboter (1) ferner ein Transformationskoeffizient-Berechnungsmittel zum Berechnen eines Transformationskoeffizienten umfasst, um ein Koordinatensystem, das durch das externe Instrument (2) verwendet wird, angezeigt durch den Externes-Instrument-Typ, in ein Koordinatensystem zu transformieren, das durch die Steuerdaten (422) verwendet wird.
  8. Roboter nach Anspruch 7, wobei: die Steuerdaten (422) eine Position des Arbeitspunkts enthalten, und eine Punktkorrektur, wobei es sich um eine Bedingung zum Berechnen einer Korrekturgröße in Übereinstimmung mit einer Verschiebungsgröße von einer Anordnungsposition eines Werkstücks (W), das der Arbeit unterworfen wird, handelt; und die Punktkorrektur eine Koordinate einer Referenzmarkierung enthält, die dem Werkstück (W) gegeben ist, und zu einer Referenz wird, wenn das Werkstück (W) an einer geeigneten Anordnungsposition angeordnet ist, sowie den Externes-Instrument-Typ und den Transformationskoeffizienten.
  9. Roboter (1) nach einem der Ansprüche 1 bis 8, ferner mit einem Nutzerverifizierungsmittel zum Verifizieren eines Accounts, der einem Nutzer gegeben wird, wobei der Treibergenerator (51) die Treiberdaten (423) in Übereinstimmung mit einer Eingabe, die durch den Nutzer gegeben wird, der den Account aufweist, erzeugt.
  10. Roboter (1) nach Anspruch 9, wobei es verschiedene Arten des Accounts gibt; und eine Autorität mit unterschiedlichen Ebenen für jeden Account gegeben ist.
  11. Roboter (1) nach einem der Ansprüche 1 bis 10, wobei das externe Instrument ein Sensor oder eine Kamera ist.
DE102015217618.5A 2015-03-18 2015-09-15 Roboter Active DE102015217618B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015054559A JP6562665B2 (ja) 2015-03-18 2015-03-18 ロボット
JP2015-054559 2015-03-18

Publications (2)

Publication Number Publication Date
DE102015217618A1 DE102015217618A1 (de) 2016-09-22
DE102015217618B4 true DE102015217618B4 (de) 2017-04-27

Family

ID=56853130

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015217618.5A Active DE102015217618B4 (de) 2015-03-18 2015-09-15 Roboter

Country Status (4)

Country Link
US (1) US9868216B2 (de)
JP (1) JP6562665B2 (de)
CN (1) CN105988418B (de)
DE (1) DE102015217618B4 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6710946B2 (ja) * 2015-12-01 2020-06-17 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
WO2018216183A1 (ja) * 2017-05-25 2018-11-29 武蔵エンジニアリング株式会社 液体材料塗布装置および液体材料塗布方法
JP6795471B2 (ja) * 2017-08-25 2020-12-02 ファナック株式会社 ロボットシステム
CN108806013A (zh) * 2018-04-04 2018-11-13 昆山市工研院智能制造技术有限公司 巡逻机器人生态系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112011101730T5 (de) * 2010-05-14 2013-06-27 Cognex Corporation System und Verfahren zur robusten Kalibrierung zwischen einem Bildverarbeitungssystem und einem Roboter

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11345018A (ja) * 1998-05-29 1999-12-14 Tokico Ltd ロボット制御装置
JP2000181522A (ja) * 1998-12-11 2000-06-30 Denso Corp ロボット装置
JP4667417B2 (ja) * 2000-08-25 2011-04-13 蛇の目ミシン工業株式会社 ロボットの動作設定方法
DE10192991B3 (de) * 2000-08-25 2015-02-05 Janome Sewing Machine Co., Ltd. Roboter
US7116993B2 (en) * 2002-09-27 2006-10-03 Rockwell Automation Technologies, Inc. System and method for providing location based information
US8060251B2 (en) * 2004-12-06 2011-11-15 Honda Motor Co., Ltd. Interface for robot motion control
US7584433B2 (en) * 2005-04-20 2009-09-01 Avp Ip Holding Co., Llc. Extendible and open camera connector system
JP4053550B2 (ja) * 2005-05-27 2008-02-27 ファナック株式会社 教示点を修正するための装置、プログラム、記録媒体及び方法
US7571027B2 (en) * 2005-05-31 2009-08-04 The Boeing Company Kinematic singular point compensation systems and methods
US8725283B2 (en) * 2006-08-04 2014-05-13 Hurco Companies, Inc. Generalized kinematics system
US8024068B2 (en) * 2006-08-04 2011-09-20 Hurco Companies, Inc. Machine tool control system
US7804194B2 (en) * 2007-07-18 2010-09-28 Odo Innovations Ltd. Device, system and method for charger switch adaptor
US8332071B2 (en) * 2007-08-20 2012-12-11 David Zeltzer System and method enabling sensorless actuator
JP4418841B2 (ja) * 2008-01-24 2010-02-24 キヤノン株式会社 作業装置及びその校正方法
CN102405447A (zh) * 2009-04-11 2012-04-04 Abb股份公司 机器人系统
US8568545B2 (en) * 2009-06-16 2013-10-29 The Boeing Company Automated material removal in composite structures
JP5619640B2 (ja) * 2011-01-28 2014-11-05 Dmg森精機株式会社 工作機械、加工方法、プログラム及びncデータ生成装置
DE102011084412A1 (de) * 2011-10-13 2013-04-18 Kuka Roboter Gmbh Robotersteuerungsverfahren
JP6228120B2 (ja) * 2012-08-02 2017-11-08 富士機械製造株式会社 多関節型ロボットを備えた作業機および電気部品装着機
JP5549749B1 (ja) * 2013-01-16 2014-07-16 株式会社安川電機 ロボット教示システム、ロボット教示プログラムの生成方法および教示ツール
JP5702811B2 (ja) * 2013-01-30 2015-04-15 ファナック株式会社 動作プログラム作成装置
JP6297792B2 (ja) * 2013-05-17 2018-03-20 蛇の目ミシン工業株式会社 ロボット、ロボットの制御方法、及びロボットの制御プログラム
JP5932741B2 (ja) 2013-09-10 2016-06-08 アルナ輸送機用品株式会社 車両用扉の製造方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112011101730T5 (de) * 2010-05-14 2013-06-27 Cognex Corporation System und Verfahren zur robusten Kalibrierung zwischen einem Bildverarbeitungssystem und einem Roboter

Also Published As

Publication number Publication date
US9868216B2 (en) 2018-01-16
JP2016172308A (ja) 2016-09-29
CN105988418A (zh) 2016-10-05
CN105988418B (zh) 2019-06-07
US20160271802A1 (en) 2016-09-22
JP6562665B2 (ja) 2019-08-21
DE102015217618A1 (de) 2016-09-22

Similar Documents

Publication Publication Date Title
DE102016116702B4 (de) Messsystem zum Kalibrieren der mechanischen Parameter eines Roboters
DE69223127T2 (de) Automatische kalibriereinrichtung
DE102015217618B4 (de) Roboter
DE102015015503B4 (de) Robotersystem, das eine mit erweiterter Realität kompatible Anzeige aufweist
DE102018000445B4 (de) Steuersystem mit Lernsteuerfunktionen und Steuerverfahren
DE69603066T2 (de) Vorrichtung und verfahren zum korrigieren der fortbewegungsroute eines roboters
DE102016220097B4 (de) Bestimmung einer Position eines beweglichen Teils eines Koordinatenmessgerätes
DE102016210096B4 (de) Roboter
DE102018001026A1 (de) Robotersystem mit einer lernenden steuerungsfunktion und lernendes steuerungsverfahren
DE102017219841B4 (de) Numerische Steuervorrichtung
DE102012025428B4 (de) Wegeanzeigevorrichtung, die Korrekturdaten berücksichtigt
DE102010036499A1 (de) Werkzeugvektor-Anzeigevorrichtung für eine Werkzeugmaschine mit Drehachse
DE102019007563A1 (de) Numerische Steuervorrichtung
DE102017124502A1 (de) Simulationsvorrichung und Simulationsverfahren, die eine Betriebssimulation eines Robotersystems ausführen, und Aufzeichnungsmedium, das ein Computerprogramm aufzeichnet
DE102014117346B4 (de) Roboter, Robotersteuerungsverfahren und Robotersteuerungsprogramm zur Werkstückkorrektur
DE102019001207A1 (de) Kollaborativer Roboter und Verfahren zum Betreiben eines kollaborativen Roboters und Verwendung zum Bearbeiten eines Werkstücks
DE102005037841B4 (de) Verfahren und Anordnung zur Bestimmung der relativen Lage eines ersten Objektes bezüglich eines zweiten Objektes, sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium
DE68926614T2 (de) Automatisches sollwert-bereitstellungsverfahren für ein sichtsensorsystem
DE102012220882A1 (de) System und Verfahren unter Verwendung eines Bearbeitungsinitialisierungsblocks in einer Teileprogramm-Bearbeitungsumgebung in einem Maschinenvisionssystem
DE102015011535A1 (de) Trajektorie-Anzeigevorrichtung zum Anzeigen von Motorende- und Maschinenende-Trajektorien
DE102018113589A1 (de) Vorrichtung und Programm zur Positionserfassung
DE102020122816A1 (de) Simulationsvorrichtung, numerische steuervorrichtung und simulationsverfahren
DE102019202908A1 (de) Numerisches Steuersystem
DE102018007287A1 (de) Roboter-Controller zum Durchführen einer Kalibrierung, Messsystem und Kalibrierverfahren
DE102019215634B4 (de) Wärmeverschiebungskompensationsvorrichtung und numerische Steuerung

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
R081 Change of applicant/patentee

Owner name: JANOME CORPORATION, JP

Free format text: FORMER OWNER: JANOME SEWING MACHINE CO., LTD., HACHIOJI-SHI, TOKYO, JP