DE112022000487T5 - Befehlserzeugungsvorrichtung und Computerprogramm - Google Patents

Befehlserzeugungsvorrichtung und Computerprogramm Download PDF

Info

Publication number
DE112022000487T5
DE112022000487T5 DE112022000487.8T DE112022000487T DE112022000487T5 DE 112022000487 T5 DE112022000487 T5 DE 112022000487T5 DE 112022000487 T DE112022000487 T DE 112022000487T DE 112022000487 T5 DE112022000487 T5 DE 112022000487T5
Authority
DE
Germany
Prior art keywords
robot
coordinate value
numerical control
type
unit
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.)
Pending
Application number
DE112022000487.8T
Other languages
English (en)
Inventor
Kazutaka IMANISHI
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 DE112022000487T5 publication Critical patent/DE112022000487T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0081Programme-controlled manipulators with master teach-in means
    • 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/408Numerical 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 data handling or data format, e.g. reading, buffering or conversion of data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39134Teach point, move workpiece, follow point with tip, place tip on next point

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)
  • Numerical Control (AREA)

Abstract

Es werden eine Befehlserzeugungsvorrichtung und ein Computerprogramm bereitgestellt, mit denen ein numerischer Roboter-Steuerbefehl erzeugt werden kann, ohne dass die Notwendigkeit besteht, Koordinatenwerte und Konfigurationsinformationen zu berücksichtigen. Eine numerische Steuervorrichtung 2 ist mit einer numerischen Roboter-Steuerbefehlserzeugungseinheit 22 ausgebildet, die einen numerischen Roboter-Steuerbefehl für einen Roboter gemäß einem numerischen Steuerprogramm erzeugt. Die numerische Roboter-Steuerbefehlserzeugungseinheit 22 erzeugt den numerischen Roboter-Steuerbefehl auf der Grundlage von: mindestens einem Element, umfassend einen Bewegungstyp eines Roboters 30, eine Bewegungsgeschwindigkeit des Roboters 30, einen Positionierungstyp des Roboters 30 und einen Koordinatenwerttyp des Roboters 30; Koordinatenwerten an einem Roboter-Einlernpunkt, die auf der Grundlage des Koordinatenwerttyps des Roboters 30 erfasst werden; und Konfigurationsinformationen, die sich auf den Roboter 30 am Roboter-Einlernpunkt beziehen.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft eine Vorrichtung zur Erzeugung von Befehlen und ein Computerprogramm.
  • Stand der Technik
  • In den letzten Jahren wurde zur Förderung der Automatisierung im Bereich der maschinellen Bearbeitung ein numerisches Steuersystem gefordert, das den Betrieb einer Werkzeugmaschine, die ein Werkstück bearbeitet, und den Betrieb eines Roboters, der in der Nähe der Werkzeugmaschine vorgesehen ist, in Verbindung miteinander steuert (siehe z. B. Patentschrift 1).
  • In der Regel sind ein numerisches Steuerungsprogramm zur Steuerung der Werkzeugmaschine und ein Roboterprogramm zur Steuerung des Roboters in einer Programmiersprache voneinander verschieden. Aus diesem Grund muss ein Bediener sowohl mit dem numerischen Steuerprogramm als auch mit dem Roboterprogramm vertraut sein, um die Werkzeugmaschine und den Roboter in Verbindung miteinander zu bedienen.
  • Patentdokument 1: Japanisches Patent Nr.5 752 179
  • Offenbarung der Erfindung
  • Durch die Erfindung zu lösende Probleme
  • Insbesondere besteht das Problem, dass bei der Beschreibung des Roboterbetriebs im numerischen Steuersystem ein Koordinatenwert in einem Koordinatensystem, wie z. B. einem orthogonalen Koordinatensystem oder einem Koordinatensystem für jede Achse, das normalerweise für die Robotersteuerung verwendet wird, nicht intuitiv eingegeben werden kann. Darüber hinaus müssen Roboterkonfigurationsinformationen angegeben werden, mit denen der Benutzer einer Werkzeugmaschine nicht vertraut ist, und aus diesem Grund besteht das Problem, dass ein Roboterbetriebsprogramm nicht einfach in einer Werkzeugmaschinensprache erzeugt werden kann.
  • Somit ist es eine Aufgabe der vorliegenden Erfindung, eine Befehlserzeugungsvorrichtung und ein Computerprogramm bereitzustellen, die in der Lage sind, einen numerischen Steuerbefehl für einen Roboter zu erzeugen, ohne einen Koordinatenwert und Konfigurationsinformationen zu berücksichtigen.
  • Mittel zur Lösung der Probleme
  • Ein Aspekt der vorliegenden Erfindung betrifft eine Befehlserzeugungsvorrichtung mit einer numerischen Roboter-Steuerbefehlserzeugungseinheit, die einen numerischen Roboter-Steuerbefehl für einen Roboter gemäß einem numerischen Steuerprogramm erzeugt. Die numerische Roboter-Steuerbefehlserzeugungseinheit erzeugt den numerischen Roboter-Steuerbefehl auf der Basis von: mindestens einem der folgenden Elemente, umfassend einen Betriebstyp des Roboters, eine Betriebsgeschwindigkeit des Roboters, einen Positionierungstyp des Roboters und einen Koordinatenwerttyp des Roboters; einem Koordinatenwert eines Roboter-Einlernpunktes, der auf der Basis des Koordinatenwerttyps des Roboters erfasst wird; und Konfigurationsinformationen, die sich auf den Roboter an dem Roboter-Einlernpunkt beziehen.
  • Ein weiterer Aspekt der vorliegenden Erfindung betrifft ein Computerprogramm, das einen Computer veranlasst, einen Schritt des Erzeugens eines numerischen Roboter-Steuerbefehls für einen Roboter gemäß einem numerischen Steuerprogramm auszuführen, auf der Basis von: mindestens einem der folgenden Elemente, umfassend einen Betriebstyp des Roboters, eine Betriebsgeschwindigkeit des Roboters, einen Positionierungstyp des Roboters und einen Koordinatenwerttyp des Roboters; einem Koordinatenwert eines Roboter-Einlernpunktes, der auf der Basis des Koordinatenwerttyps des Roboters erfasst wird; und Konfigurationsinformationen, die sich auf den Roboter an dem Roboter-Einlernpunkt beziehen.
  • Gemäß der vorliegenden Erfindung können die Befehlserzeugungsvorrichtung und das Computerprogramm bereitgestellt werden, die in der Lage sind, den numerischen Steuerbefehl für den Roboter zu erzeugen, ohne den Koordinatenwert und die Konfigurationsinformationen zu berücksichtigen.
  • Kurze Beschreibung der Zeichnungen
    • 1 ist eine schematische Ansicht eines numerischen Steuersystems gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 2 ist ein Funktionsblockdiagramm einer numerischen Steuervorrichtung und einer Roboter-Steuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung;
    • 3 ist eine Ansicht zur Beschreibung des reibungslosen Betriebs;
    • 4 ist ein Flussdiagramm, das den Ablauf der Erzeugung von numerischen Roboter-Steuerbefehlen zeigt;
    • 5 ist eine Ansicht, die ein Beispiel für einen Betriebsbildschirm der numerischen Steuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 6 ist ein Flussdiagramm, das den Vorgang der Auswahl des Betriebstyps zeigt;
    • 7 ist ein Flussdiagramm, das den Vorgang der Koordinatenwert-Auswahlverarbeitung zeigt; und
    • 8 ist ein Flussdiagramm, das den Vorgang der Auswahl des Positionierungstyps zeigt.
  • Bevorzugte Ausführungsform der Erfindung
  • Nachfolgend wird eine Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen im Detail beschrieben.
  • 1 ist eine schematische Ansicht eines numerischen Steuersystems 1 gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Das numerische Steuersystem 1 umfasst eine numerische Steuervorrichtung (CNC) 2, die eine Werkzeugmaschine 20 steuert, und eine Roboter-Steuervorrichtung 3, die kommunizierend mit der numerischen Steuervorrichtung 2 verbunden ist und einen in der Nähe der Werkzeugmaschine 20 vorgesehenen Roboter 30 steuert. Unter Verwendung der numerischen Steuervorrichtung 2 und der Roboter-Steuervorrichtung 3, die kommunizierend miteinander verbunden sind, steuert das numerische Steuersystem 1 gemäß der vorliegenden Ausführungsform den Betrieb der Werkzeugmaschine 20 und des Roboters 30 in Verbindung miteinander.
  • Die numerische Steuervorrichtung 2 erzeugt gemäß einem vorgegebenen numerischen Steuerprogramm ein Werkzeugmaschinen-Befehlssignal, das ein Befehl für die Werkzeugmaschine 20 ist, und ein Roboter-Befehlssignal, das ein Befehl für den Roboter 30 ist, und überträgt das Werkzeugmaschinen-Befehlssignal und das Roboter-Befehlssignal an die Werkzeugmaschine 20 und die Roboter-Steuervorrichtung 3. Die Roboter-Steuervorrichtung 3 steuert den Betrieb des Roboters 30 gemäß dem von der numerischen Steuervorrichtung 2 übertragenen Roboter-Befehlssignal.
  • Die Werkzeugmaschine 20 bearbeitet ein nicht dargestelltes Werkstück gemäß dem von der numerischen Steuervorrichtung 2 übertragenen Werkzeugmaschinen-Befehlssignal. Bei der Werkzeugmaschine 20 handelt es sich beispielsweise um eine Drehbank, eine Bohrmaschine, eine Fräsmaschine, eine Schleifmaschine, eine Laserstrahlmaschine oder eine Spritzgießmaschine, ohne darauf beschränkt zu sein.
  • Der Roboter 30 arbeitet unter der Steuerung der Roboter-Steuervorrichtung 3 und führt beispielsweise eine vorbestimmte Arbeit an dem Werkstück aus, das in der Werkzeugmaschine 20, beispielsweise einer Drehmaschine, bearbeitet wird. Der Roboter 30 ist beispielsweise ein Gelenkroboter, und ein Werkzeug 30b zum Greifen, Bearbeiten oder Prüfen des Werkstücks ist an einem Arm-Spitzendabschnitt 30a des Roboters 30 befestigt. Im Folgenden wird ein Fall beschrieben, in dem der Roboter 30 ein sechsachsiger Knickarmroboter ist, aber die vorliegende Erfindung ist nicht auf diesen Fall beschränkt. Auch der Fall, dass der Roboter 30 ein sechsachsiger Gelenkroboter ist, wird im Folgenden beschrieben, aber die Anzahl der Achsen ist nicht auf diesen Fall beschränkt.
  • 2 ist ein Funktionsblockdiagramm der numerischen Steuervorrichtung 2 und der Roboter-Steuervorrichtung 3 gemäß einer Ausführungsform der vorliegenden Erfindung.
  • In der vorliegenden Ausführungsform ist in der numerischen Steuervorrichtung 2 eine Befehlserzeugungsvorrichtung der vorliegenden Erfindung angeordnet, die einen numerischen Steuerbefehl für den Roboter gemäß dem numerischen Steuerprogramm erzeugt, aber die vorliegende Erfindung ist nicht darauf beschränkt. Beispielsweise kann die Befehlserzeugungsvorrichtung der vorliegenden Erfindung in einem PC vorgesehen sein. Nachfolgend wird ein Beispiel beschrieben, bei dem sich die Befehlserzeugungsvorrichtung der vorliegenden Erfindung in der numerischen Steuervorrichtung 2 befindet.
  • Sowohl die numerische Steuervorrichtung 2 als auch die Roboter-Steuervorrichtung 3 ist ein Computer mit Hardware, die z.B., einen arithmetischen Verarbeitungsabschnitt, wie z.B. eine Zentraleinheit (CPU), einen Hilfsspeicherabschnitt, der verschiedene Computerprogramme speichert, wie z.B. ein Festplattenlaufwerk (HDD) oder ein Festkörperlaufwerk (SSD), einen Hauptspeicherabschnitt, der Daten speichert, die vorübergehend für die Ausführung der Computerprogramme durch den arithmetischen Verarbeitungsabschnitt benötigt werden, wie z.B. einen Direktzugriffsspeicher (RAM), einen Bedienungsabschnitt, der von einem Bediener verwendet wird, um verschiedene Arten von Operationen durchzuführen, wie z.B. eine Tastatur, und einen Anzeigeabschnitt, der verschiedene Arten von Informationen für den Bediener anzeigt, wie z.B. ein Display, umfasst. Die numerische Steuervorrichtung 2 und die Roboter-Steuervorrichtung 3 können verschiedene Signale, z.B. über das Ethernet (eingetragenes Warenzeichen), austauschen.
  • Zunächst wird eine detaillierte Konfiguration der numerischen Steuervorrichtung 2 beschrieben. Die numerische Steuervorrichtung 2 implementiert durch die zuvor beschriebene Hardwarekonfiguration eine Werkzeugmaschinensteuerfunktion zur Steuerung des Betriebs der Werkzeugmaschine 20 und eine Roboterbefehlssignalerzeugungsfunktion zur Steuerung des Betriebs des Roboters 30 um dessen Steuerachse. Insbesondere implementiert die numerische Steuervorrichtung 2 verschiedene Funktionen wie eine Auswahleinheit 21, eine numerische Roboter-Steuerbefehlserzeugungseinheit 22, eine Speichereinheit 23, eine Programmeingabeeinheit 24, eine Analyseeinheit 25, eine Roboter-Befehlssignalerzeugungseinheit 26, eine Datenübertragungs-/Empfangseinheit 27, eine Roboterbetriebseinheit 28 und eine Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29.
  • Die Auswahleinheit 21 wählt mindestens eines der folgenden Elemente, umfassend den Betriebstyp des Roboters 30, die Betriebsgeschwindigkeit des Roboters 30, den Positionierungstyp des Roboters 30 oder den Koordinatenwerttyp des Roboters 30 aus. Genauer gesagt wählt die Auswahleinheit 21 gemäß der Eingabe durch den Bediener mindestens eines der folgenden Elemente, umfassend den Betriebstyp des Roboters 30, die Betriebsgeschwindigkeit des Roboters 30, den Positionierungstyp des Roboters 30 oder den Koordinatenwerttyp des Roboters 30 aus. Außerdem gibt die Auswahleinheit 21 ein Auswahlausgangsergebnis an die numerische Roboter-Steuerbefehlserzeugungseinheit 22 aus.
  • Insbesondere wählt und spezifiziert die Auswahleinheit 21 gemäß der Eingabe, die durch den Eingabevorgang des Bedieners erfolgt, einen beliebigen Betrieb, umfassend einen Betrieb jeder Achse bzw. Einzelachsenbetrieb, einen linearen Betrieb und einen gekrümmten Betrieb, als den Betriebstyp des Roboters 30. Dabei ist der Einzelachsenbetrieb ein Betriebstyp, bei dem jedes Gelenk des Roboters 30 um jede Achse arbeitet, ohne zusammenzuarbeiten. Der lineare Betrieb ist ein Betriebstyp, bei dem der Arm-Spitzendabschnitt 30a so arbeitet, dass eine Bewegungsbahn bzw. Pfad des an dem Arm-Spitzendabschnitt 30a des Roboters 30 befestigten Werkzeugs 30b eine gerade Strecke ist. Der gekrümmte Betrieb ist ein Betriebstyp, bei dem der Arm-Spitzenendabschnitt 30a so arbeitet, dass der Pfad des an dem Arm-Spitzenendabschnitt 30a des Roboters 30 befestigten Werkzeugs 30b ein gekrümmter bzw. gebogener Pfad ist.
  • Die Auswahleinheit 21 wählt und spezifiziert gemäß der Eingabe durch den Bediener einen beliebigen Roboterkoordinatensystem-Koordinatenwert eines Koordinatenwerts jeder Achse und eines orthogonalen Koordinatenwerts als den Koordinatenwerttyp des Roboters 30. Wenn die Auswahleinheit 21 ein Roboter-Koordinatensystem auswählt, erfasst die später beschriebene Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 einen Koordinatenwert eines Einlernpunktes des Roboters 30 und Konfigurationsinformationen bezüglich des Roboters 30 auf der Basis des ausgewählten Koordinatensystems.
  • Hier ist das Roboterkoordinatensystem ein Koordinatensystem, das als Ursprung einen Bezugspunkt aufweist, der auf dem Roboter 30 oder an einer beliebigen Position in der Nähe des Roboters 30 liegt. Nachfolgend wird ein Fall beschrieben, in dem sich das Roboterkoordinatensystem von einem Werkzeugmaschinenkoordinatensystem unterscheidet, aber die vorliegende Erfindung ist nicht auf diesen Fall beschränkt. Das Roboterkoordinatensystem kann mit dem Werkzeugmaschinenkoordinatensystem übereinstimmen. Mit anderen Worten, der Ursprung oder die Richtung der Koordinatenachse des Roboterkoordinatensystems kann mit dem Ursprung oder der Richtung der Koordinatenachse des Werkzeugmaschinenkoordinatensystems zusammenfallen.
  • Das Roboterkoordinatensystem ist zwischen zwei oder mehr Koordinatenformaten mit unterschiedlichen Steuerachsen umschaltbar. Genauer gesagt können die Position und die Lage eines Steuerpunktes des Roboters 30 durch ein orthogonales Koordinatenformat oder ein Koordinatenformat für jede Achse im numerischen Steuerungsprogramm angegeben werden.
  • Im Koordinatenformat für jede Achse werden die Position und die Haltung des Steuerpunktes des Roboters 30 durch die Summe von sechs reellen Zahlen von Koordinatenwerten angegeben, die als Komponenten Drehwinkelwerte (J1, J2, J3, J4, J5, J6) der sechs Gelenke des Roboters 30 aufweisen.
  • Im orthogonalen Koordinatenformat wird die Position und Haltung des Steuerpunktes des Roboters 30 durch die insgesamt sechs reellen Zahlen von Koordinatenwerten spezifiziert, die als Komponenten drei Koordinatenwerte (X, Y, Z) entlang dreier orthogonaler Koordinatenachsen und drei Drehwinkelwerte (A, B, C) um jede orthogonale Koordinatenachse aufweisen.
  • Im Koordinatenformat für jede Achse wird der Drehwinkel jedes Gelenks des Roboters 30 direkt angegeben, und daher sind die Wellenanordnung jedes Arms oder Handgelenks des Roboters 30 und die Rotationszahl eines Gelenks, das um 360 Grad oder mehr gedreht werden kann (im Folgenden gemeinsam als die „Konfiguration des Roboters 30“ bezeichnet), ebenfalls eindeutig festgelegt. Andererseits werden im orthogonalen Koordinatenformat die Position und die Haltung des Steuerpunktes des Roboters 30 durch die sechs Koordinatenwerte (X, Y, Z, A, B, C) angegeben, und daher kann die Konfiguration des Roboters 30 nicht eindeutig festgelegt werden. Daher kann im numerischen Steuerprogramm für den Roboter die Konfiguration des Roboters 30 durch einen Konfigurationswert P angegeben werden, der eine vorgegebene ganzzahlige Zahl ist. Somit werden die Position und die Haltung des Steuerpunktes des Roboters 30 und die Konfiguration des Roboters 30 durch die sechs Koordinatenwerte (J1, J2, J3, J4, J5, J6) im Koordinatenformat jeder Achse und durch die sechs Koordinatenwerte und den einen Konfigurationswert (X, Y, Z, A, B, C, P) im orthogonalen Koordinatenformat dargestellt.
  • Die Auswahleinheit 21 wählt gemäß der Eingabe durch den Bediener als Positionierungstyp des Roboters 30 einen Positionierungsbetrieb oder einen Gleichlaufbetrieb aus. Hier ist der Positionierungsbetrieb ein Positionierungstyp, bei dem in einem Fall, in dem drei Punkte, nämlich ein Startpunkt, ein Zielpunkt und ein nachfolgender Punkt, als Einlernpunkte des Roboters 30 festgelegt sind, der Betrieb durch jeden der drei Punkte durchgeführt wird.
  • 3 ist eine Ansicht zur Beschreibung des Gleichlaufbetriebs. Wie in 3 gezeigt, ist der Gleichlaufbetrieb ein Positionierungstyp, bei dem der Roboter 30, um einer Zykluszeit Vorrang zu geben, sich innerhalb einer Bahn bewegt, die durch drei Punkte, umfassend einen Startpunkt, einen Zielpunkt und einen nachfolgenden Punkt, verläuft, und gleichmäßig vom Startpunkt zum nachfolgenden Punkt betrieben wird, ohne den Zielpunkt zu passieren. Bei diesem Gleichlaufbetrieb wird eine R-Adresse als innerer Bewegungsgrad festgelegt. Wie in 3 gezeigt, bedeutet beispielsweise ein innerer Bewegungsgrad von 0, dass keine innere Bewegung, d.h. derselbe Betrieb wie bei der Positionierung, stattfindet, und ein höherer innerer Bewegungsgrad bedeutet einen höheren Grad an innerer Bewegung und einen gleichmäßigeren Betrieb. Die R-Adresse wird durch den Eingabevorgang des Bedieners eingegeben.
  • Die numerische Roboter-Steuerbefehlserzeugungseinheit 22 erzeugt den numerischen Roboter-Steuerbefehl für den Roboter 30 gemäß dem numerischen Steuerprogramm. Insbesondere erzeugt die numerische Roboter-Steuerbefehlserzeugungseinheit 22 den numerischen Roboter-Steuerbefehl auf der Basis von: mindestens einem Element, umfassend den Betriebstyp des Roboters 30, die Betriebsgeschwindigkeit des Roboters 30, den Positionierungstyp des Roboters 30 oder den Koordinatenwerttyp des Roboters 30; dem Koordinatenwert des Roboter-Einlernpunktes, der auf der Basis des Koordinatenwerttyps des Roboters 30 erfasst wird; und den Konfigurationsinformationen, die sich auf den Roboter 30 am Roboter-Einlernpunkt beziehen.
  • Der Betriebstyp des Roboters 30, die Betriebsgeschwindigkeit des Roboters 30, der Positionierungstyp des Roboters 30 und der Koordinatenwerttyp des Roboters 30 werden als die Auswahlergebnisse, die durch die Auswahl durch die Auswahleinheit 21 wie zuvor beschrieben erhalten wurden, in die numerische Roboter-Steuerbefehlserzeugungseinheit 22 eingegeben. Darüber hinaus werden der Koordinatenwert des Roboter-Einlernpunktes, der auf der Basis des Auswahlergebnisses des Koordinatenwerttyps des Roboters 30 erfasst wird, und die Konfigurationsinformationen, die sich auf den Roboter 30 am Roboter-Einlernpunkt beziehen, von der Roboter-Steuervorrichtung 3 durch die später beschriebene Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 erfasst und in die numerische Roboter-Steuerbefehlserzeugungseinheit 22 eingegeben. Wie zuvor beschrieben, werden in der numerischen Steuervorrichtung 2 gemäß der vorliegenden Ausführungsform die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit automatisch durch die Betriebsauswahl durch den Eingabevorgang des Bedieners erfasst. Mit dieser Konfiguration kann der numerische Steuerbefehl für den Roboter einfach erzeugt werden, ohne dass der Bediener den Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit berücksichtigen muss.
  • Die Speichereinheit 23 umfasst eine Programmspeichereinheit, eine Maschinenkoordinatenwertspeichereinheit, eine Roboterkoordinatenwertspeichereinheit und eine Roboterlernpositionsspeichereinheit, obwohl diese Einheiten in der Konfiguration nicht dargestellt sind.
  • Die Programmspeichereinheit speichert eine Vielzahl von numerischen Steuerungsprogrammen, die beispielsweise auf der Grundlage der Bedienung durch den Bediener erstellt werden. Genauer gesagt, speichert die Programmspeichereinheit ein numerisches Steuerprogramm, das eine Vielzahl von Werkzeugmaschinen-Befehlsblöcken 20 zur Steuerung des Betriebs der Werkzeugmaschine 20, eine Vielzahl von Roboter-Befehlsblöcken 30 zur Steuerung des Betriebs des Roboters 30 usw. enthält. Das in der Programmspeichereinheit gespeicherte numerische Steuerprogramm ist in einer bekannten Programmiersprache, wie z.B. G-Code oder M-Code, zur Steuerung des Betriebs der Werkzeugmaschine beschrieben.
  • Die Maschinenkoordinatenwert-Speichereinheit speichert Maschinenkoordinatenwerte, die die Positionen (d.h. die Positionen einer Werkzeugauflage, eines Tisches usw. der Werkzeugmaschine 20) verschiedener Wellen der Werkzeugmaschine 20 angeben, die unter dem zuvor beschriebenen numerischen Steuerprogramm betrieben werden. Es ist zu beachten, dass diese Maschinenkoordinatenwerte unter dem Werkzeugmaschinenkoordinatensystem definiert sind, das als Ursprung einen Bezugspunkt hat, der auf der Werkzeugmaschine oder an einer beliebigen Position in der Nähe der Werkzeugmaschine 20 liegt. Die Maschinenkoordinatenwert-Speichereinheit wird sequentiell aktualisiert, so dass der letzte Wert des Maschinenkoordinatenwertes, der sich im Rahmen des numerischen Steuerungsprogramms sequentiell ändert, gespeichert wird.
  • Die Roboterkoordinatenwert-Speichereinheit speichert Roboterkoordinatenwerte, die die Position und die Haltung des Steuerpunktes (z.B. des Arm-Spitzenendabschnitts 30a des Roboters 30) des Roboters 30 unter der Steuerung der Roboter-Steuervorrichtung 3 angeben, d.h. die Position des Roboters 30 um jede Steuerachse. Es sollte beachtet werden, dass diese Roboterkoordinatenwerte unter dem Roboterkoordinatensystem definiert sind, das sich vom Werkzeugmaschinenkoordinatensystem, wie zuvor beschrieben, unterscheidet. Die Roboterkoordinatenwert-Speichereinheit wird sequentiell auf den Roboterkoordinatenwert aktualisiert, der von der Roboter-Steuervorrichtung 3 durch eine nicht dargestellte Verarbeitung erfasst wird, so dass der neueste Wert des Roboterkoordinatenwertes, der sich sequentiell unter dem numerischen Steuerprogramm ändert, gespeichert wird.
  • Die Roboter-Einlernpositionsspeichereinheit speichert vom Bediener eingegebene Einlernpositionen, wie z.B. einen Startpunkt und einen Endpunkt, des Roboters 30, insbesondere über z.B. einen Einlernschalter eingegebene Einlernpositionen des Roboters 30 und über z.B. eine Tastatur eingegebene Einlernpositionen. Die T Einlernpositionen des Roboters 30 umfassen einen Roboterkoordinatenwert, der die Position des Roboters 30 um jede Steuerachse angibt, und diese Roboterkoordinatenwerte sind unter dem Roboter-Koordinatensystem definiert, das sich vom Koordinatensystem der Werkzeugmaschine unterscheidet.
  • Die Programmeingabeeinheit 24 liest das numerische Steuerprogramm aus der Programmspeichereinheit und gibt ein solches Programm sequentiell in die Analyseeinheit 25 ein.
  • Die Analyseeinheit 25 analysiert für jeden Befehlsblock einen Befehlstyp auf der Basis des von der Programmeingabeeinheit 24 eingegebenen numerischen Steuerprogramms und gibt ein Analyseergebnis an eine nicht dargestellte Werkzeugmaschinensteuereinheit und die später beschriebene Roboter-Befehlssignalerzeugungseinheit 26 aus. Genauer gesagt, in einem Fall, in dem der Befehlstyp des Befehlsblocks ein Befehl für die Werkzeugmaschine 20 ist, überträgt die Analyseeinheit 25 einen solchen Befehl an die Steuereinheit der Werkzeugmaschine. In einem Fall, in dem der Befehlstyp des Befehlsblocks ein Befehl für den Roboter 30 ist, gibt die Analyseeinheit 25 einen solchen Befehl an die Roboter-Befehlssignalerzeugungseinheit 26 aus.
  • Die nicht dargestellte Steuereinheit für die Werkzeugmaschine erzeugt ein Steuersignal für die Werkzeugmaschine zur Steuerung des Betriebs der Werkzeugmaschine 20 gemäß dem von der Analyseeinheit 25 übermittelten Analyseergebnis und gibt ein solches Signal an einen Aktuator weiter, der verschiedene Wellen der Werkzeugmaschine 20 antreibt. Die Werkzeugmaschine 20 arbeitet gemäß dem von der Steuereinheit der Werkzeugmaschine eingegebenen Steuersignal für die Werkzeugmaschine und bearbeitet dabei das nicht abgebildete Werkstück. Nachdem die Steuereinheit der Werkzeugmaschine 20 den Betrieb gemäß dem zuvor beschriebenen numerischen Steuerprogramm gesteuert hat, aktualisiert sie den in der Maschinenkoordinatenwert-Speichereinheit gespeicherten Maschinenkoordinatenwert auf den neuesten Maschinenkoordinatenwert.
  • Die Roboter-Befehlssignalerzeugungseinheit 26 erzeugt das Roboter-Befehlssignal gemäß dem Roboterprogramm, das in den in der Speichereinheit 23 gespeicherten Programmen enthalten ist und von der Analyseeinheit 25 als Befehlstyp des Befehlsblocks, der der Befehl für den Roboter 30 ist, analysiert wird. Das erzeugte Roboter-Befehlssignal enthält einen Roboterprogramm-Aktivierungsbefehl, der ein Auslöser für die Aktivierung eines in einer Speichereinheit 31 in der Roboter-Steuervorrichtung 3 gespeicherten Roboterprogramms ist. Die Roboter-Befehlssignalerzeugungseinheit 26 schreibt das erzeugte Roboter-Befehlssignal in die Datenübertragungs-/Empfangseinheit 27.
  • Die Datenübertragungs-/Empfangseinheit 27 tauscht verschiedene Befehle und verschiedene Arten von Daten mit einer Datenübertragungs-/Empfangseinheit 32 der Roboter-Steuervorrichtung 3 aus. Wenn die Roboter-Befehlssignalerzeugungseinheit 26 das Roboter-Befehlssignal schreibt, überträgt die Datenübertragungs-/Empfangseinheit 27 das Roboter-Befehlssignal an die Datenübertragungs-/Empfangseinheit 32 der Roboter-Steuervorrichtung 3. Wenn die später beschriebene Roboterbetriebseinheit 28 ein Positionierungsabschlusssignal schreibt und die Auswahleinheit 21 den Betrieb auswählt, empfängt die Datenübertragungs-/Empfangseinheit 27 den Koordinatenwert des Roboter-Einlernpunktes und die Konfigurationsinformationen bezüglich des Roboters 30 basierend auf dem ausgewählten Koordinatensystem von der Roboter-Steuervorrichtung 3 und gibt den Koordinatenwert und die Konfigurationsinformationen an die später beschriebene Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 aus.
  • Wenn der Bediener den Roboter 30 manuell bedient, um den Roboter 30 zu positionieren, schreibt die Roboterbetriebseinheit 28 das Positionierungsabschluss-Signal in die später beschriebene Datenübertragungs-/Empfangseinheit 27.
  • Die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 erfasst von der Roboter-Steuervorrichtung 3, die den Roboter 30 steuert, den Koordinatenwert des Roboter-Einlernpunktes und die Konfigurationsinformationen bezüglich des Roboters 30 basierend auf dem von der Auswahleinheit 21 ausgewählten Koordinatensystem über die zuvor beschriebene Datenübertragungs-/Empfangseinheit 27. Genauer gesagt, wenn die zuvor beschriebene Roboterbetriebseinheit 28 das Positionierungsabschlusssignal in die Datenübertragungs-/Empfangseinheit 27 schreibt und die zuvor beschriebene Auswahleinheit 21 das Roboter-Koordinatensystem auswählt, werden der Koordinatenwert des Roboter-Einlernpunktes des Roboters 30 und die sich auf den Roboter 30 beziehenden Konfigurationsinformationen auf der Grundlage des ausgewählten Koordinatensystems von der Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 erfasst.
  • Als nächstes wird die Konfiguration der Roboter-Steuervorrichtung 3 im Detail beschrieben. Wie in 2 gezeigt, implementiert die Roboter-Steuervorrichtung 3 durch die zuvor beschriebene Hardware-Konfiguration verschiedene Funktionen wie die Speichereinheit 31, die Datenübertragungs-/Empfangseinheit 32, eine Analyseeinheit 33, eine Roboter-Befehlserzeugungseinheit 34, eine Programmverwaltungseinheit 35, eine Pfad-Steuereinheit 36, eine Kinematik-Steuereinheit 37 und eine Servo-Steuereinheit 38. Insbesondere steuert die Roboter-Steuervorrichtung 3 unter Verwendung der Speichereinheit 31, der Datenübertragungs-/Empfangseinheit 32, der Analyseeinheit 33, der Roboterbefehlserzeugungseinheit 34, der Programmverwaltungseinheit 35, der Pfad-Steuereinheit 36, der Kinematik-Steuereinheit 37 und der Servo-Steuereinheit 38 den Betrieb des Roboters 30 auf der Basis des von der numerischen Steuervorrichtung 2 übertragenen Befehls.
  • Die Datenübertragungs-/Empfangseinheit 32 empfängt das von der Datenübertragungs-/Empfangseinheit 27 der numerischen Steuervorrichtung 2 übertragene Roboterbefehlssignal. Außerdem gibt die Datenübertragungs-/Empfangseinheit 32 das empfangene Roboterbefehlssignal sequentiell an die Analyseeinheit 33 aus.
  • Die Analyseeinheit 33 wertet das von der Datenübertragungs-/Empfangseinheit 32 eingegebene Roboterbefehlssignal aus. Außerdem gibt die Analyseeinheit 33 ein Analyseergebnis an die Roboterbefehlserzeugungseinheit 34 aus.
  • Die Roboterbefehlserzeugungseinheit 34 erzeugt einen Roboterbefehl gemäß dem Roboterbefehlssignal gemäß dem von der Analyseeinheit 33 eingegebenen Roboterbefehlssignal-Analyseergebnis. Die Roboterbefehlserzeugungseinheit 34 gibt den erzeugten Roboterbefehl an die Programmverwaltungseinheit 35 aus.
  • Beim Empfang des Roboterbefehls von der Roboterbefehlserzeugungseinheit 34 führt die Programmverwaltungseinheit 35 einen solchen Befehl sequentiell aus, wodurch ein Betriebskonzept für den Roboter 30 gemäß dem zuvor beschriebenen Roboterbefehlssignal erzeugt und das Betriebskonzept an die Pfad-Steuereinheit 36 ausgegeben wird.
  • Außerdem fügt die Programmverwaltungseinheit 35 in einem Fall, in dem der von der Roboterbefehlserzeugungseinheit 34 eingegebene Roboterbefehl ein Roboterbefehlsblock ist, den eingegebenen Roboterbefehlsblock zu dem in der Speichereinheit 31 gespeicherten Roboterprogramm hinzu. Dementsprechend wird das Roboterprogramm gemäß dem von der numerischen Steuervorrichtung 2 übertragenen Roboterbefehlssignal erzeugt und in der Speichereinheit 31 gespeichert. Das gespeicherte Roboterprogramm wird in Reaktion auf einen Roboterprogramm-Aktivierungsbefehl aktiviert, der als Roboterbefehl von der Programmverwaltungseinheit 35 empfangen wird.
  • Beim Empfang des Betriebskonzepts von der Programmverwaltungseinheit 35 berechnet die Pfad-Steuereinheit 36 Zeitreihendaten über den Steuerpunkt des Roboters 30 und gibt diese Daten an die Kinematik-Steuereinheit 37 aus.
  • Die Kinematik-Steuereinheit 37 berechnet den Sollwinkel jedes Gelenks des Roboters 30 aus den eingegebenen Zeitreihendaten und gibt den Sollwinkel an die Servo-Steuereinheit 38 aus.
  • Die Servo-Steuerungseinheit 38 führt eine Rückkopplungssteuerung für jeden Servomotor des Roboters 30 durch, so dass der von der Kinematik-Steuerungseinheit 37 eingegebene Sollwinkel erreicht wird, wodurch ein Roboter-Steuersignal für den Roboter 30 erzeugt und ein solches Signal in jeden Servomotor des Roboters 30 eingegeben wird.
  • Nachfolgend wird das Verfahren zur Erzeugung eines numerischen Roboter-Steuerbefehls gemäß der vorliegenden Ausführungsform im Detail beschrieben. 4 ist ein Flussdiagramm, das den Ablauf der Verarbeitung der numerischen Roboter-Steuerbefehle zeigt.
  • In Schritt S1 bedient der Bediener den Roboter 30 manuell, wodurch der Roboter 30 positioniert wird. Danach wird die Verarbeitung mit Schritt S2 fortgesetzt.
  • In Schritt S2 klickt der Bediener eine Softwaretaste auf einem Betriebsbildschirm der numerischen Steuervorrichtung 2 an, wodurch der Roboterbetrieb ausgewählt wird. Insbesondere wählt der Bediener durch Betätigung der Softwaretaste z.B. den Roboterbetriebstyp aus, der später in Schritt S3 verarbeitet werden soll, und gibt diesen ein. Danach wird die Verarbeitung mit Schritt S3 fortgesetzt.
  • 5 ist eine Ansicht, die ein Beispiel für den Betriebsbildschirm 200 der numerischen Steuervorrichtung 2 gemäß der vorliegenden Ausführungsform zeigt. Wie in 5 gezeigt, hat der Betriebsbildschirm 200 der numerischen Steuervorrichtung 2 gemäß der vorliegenden Ausführungsform eine Roboterkoordinatenwert-Anzeigeeinheit 201, die die Roboterkoordinatenwerte anzeigt, eine Programm-Aufbereiter-Einheit 202, die den numerischen Roboter-Steuerbefehl anzeit und bearbeitet, Softwaretasten 203 und einen Einabeuffer (Kev-In Buffer) 204, der einen Eingabewert vorübergehend speichert und anzeigt. Im obigen Schritt S2 klickt der Bediener auf die mehreren Softwaretasten 203, wodurch der Roboterbetriebstyp usw. gewählt und eingegeben wird.
  • In Schritt S3 wird die Auswahl des Roboterbetriebs durchgeführt. Insbesondere wird mindestens in Element, umfassend den Betriebstyp des Roboters 30, den Koordinatenwerttyp des Roboters 30, die Betriebsgeschwindigkeit des Roboters 30 oder den Positionierungstyp des Roboters 30, ausgewählt. Im Folgenden wird das Verfahren zur Auswahl des Betriebstyps des Roboters 30, zur Auswahl des Koordinatenwerttyps des Roboters 30 und zur Auswahl des Positionierungstyps des Roboters 30 unter Bezugnahme auf die 6 bis 8 im Detail beschrieben.
  • 6 ist ein Flussdiagramm, das den Ablauf der Betriebsartauswahlverarbeitung zeigt. Dieser Verarbeitungsablauf wird von der Auswahleinheit 21 gemäß der Betätigung der Softwaretasten 203 durch den Bediener ausgeführt. Darüber hinaus bildet dieser Verarbeitungsablauf die Unterroutine von Schritt S3 in der zuvor beschriebenen Befehlsgenerierung der numerischen Robotersteuerung.
  • In Schritt S11 wird bestimmt, ob der Betriebstyp des Roboters 30, der durch Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, der Einzelachsenbetrieb ist oder nicht. Wenn die Antwort JA ist, fährt die Verarbeitung mit Schritt S12 fort, G07.3 wird ausgewählt und als ein Befehlscode angegeben, und diese Verarbeitung endet.
  • Wenn die Antwort in Schritt S11 NEIN ist, fährt die Verarbeitung mit Schritt S13 fort, und es wird bestimmt, ob der Betriebstyp des Roboters 30, der durch Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, der lineare Betrieb ist oder nicht. Wenn die Antwort JA ist, fährt die Verarbeitung mit Schritt S14 fort, G01 wird ausgewählt und als der Befehlscode festgelegt, und diese Verarbeitung endet.
  • Wenn die Antwort in Schritt S13 NEIN ist, fährt die Verarbeitung mit Schritt S15 fort, und es wird bestimmt, ob der Betriebstyp des Roboters 30, der durch die Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, ein gekrümmter Betrieb im Uhrzeigersinn bzw. gekrümmter CW-Betrieb ist oder nicht. Wenn die Antwort JA ist, fährt die Verarbeitung mit Schritt S16 fort, G02 wird ausgewählt und als der Befehlscode angegeben, und diese Verarbeitung endet.
  • Wenn die Antwort in Schritt S15 NEIN lautet, fährt die Verarbeitung mit Schritt S17 fort. Da in diesem Fall festgestellt wird, dass der Betriebstyp des Roboters 30, der durch Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, ein gekrümmter Betrieb gegen den Uhrzeigersinn ist, wird G03 ausgewählt und als Befehlscode festgelegt, und diese Verarbeitung endet.
  • 7 ist ein Flussdiagramm, das den Ablauf der Koordinatenwerttyp-Auswahlverarbeitung zeigt. Dieser Verarbeitungsablauf wird, wie bei der zuvor beschriebenen Betriebsartauswahlverarbeitung, von der Auswahleinheit 21 gemäß der Betätigung der Softwaretasten 203 durch den Bediener ausgeführt. Darüber hinaus bildet dieser Verarbeitungsablauf die Unterroutine von Schritt S3 in der zuvor beschriebenen Verarbeitung zur Erzeugung von numerischen Roboter-Steuerbefehlen.
  • In Schritt S21 wird bestimmt, ob der Koordinatenwerttyp, der durch Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, der Koordinatenwert jeder Achse des Koordinatensystems jeder Achse ist oder nicht. Wenn die Antwort JA ist, fährt die Verarbeitung mit Schritt S22 fort, und die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 erfasst den Koordinatenwert jeder Achse des Lehrpunktes des Roboters 30 von der Roboter-Steuervorrichtung 3. Der erfasste Koordinatenwert für jede Achse des Einlernpunktes des Roboters 30 wird auf der Roboterkoordinatenwert-Anzeigeeinheit 201 angezeigt, wie in 5 gezeigt. Danach ist diese Verarbeitung beendet.
  • Wenn die Antwort in Schritt S21 NEIN ist, fährt die Verarbeitung mit Schritt S23 fort, und es wird bestimmt, ob der durch Betätigung der Softwaretasten 203 durch den Bediener eingegebene Koordinatenwerttyp der orthogonale Koordinatenwert des orthogonalen Koordinatensystems ist oder nicht. Wenn die Antwort JA ist, fährt die Verarbeitung mit Schritt S24 fort, und die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 erfasst den orthogonalen Koordinatenwert des Lehrpunktes des Roboters 30 von der Roboter-Steuervorrichtung 3. Der erfasste orthogonale Koordinatenwert des Einlernpunktes des Roboters 30 wird auf der Roboterkoordinatenwert-Anzeigeeinheit 201 angezeigt, wie in 5 gezeigt. Danach wird die Verarbeitung mit Schritt S25 fortgesetzt.
  • In Schritt S25 wird, da der Koordinatenwerttyp der orthogonale Koordinatenwert ist und die Position des Roboters 30 durch die sechs Koordinatenwerte und den einen Konfigurationswert (X, Y, Z, A, B, C, P) unter dem orthogonalen Koordinatensystem, wie zuvor beschrieben, dargestellt wird, der Konfigurationswert P als die Konfigurationsinformation in Bezug auf den Roboter 30 erfasst. Konkret erfasst die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 den Konfigurationswert P des Einlernpunktes des Roboters 30 von der Roboter-Steuervorrichtung 3. Der erfasste Konfigurationswert P des Einlernpunktes des Roboters 30 wird auf der Roboterkoordinatenwert-Anzeigeeinheit 201 angezeigt. Danach ist diese Verarbeitung beendet.
  • Wenn die Antwort in Schritt S23 NEIN ist, gibt es keine Eingabe des Koordinatenwerttyps durch den Bediener, und daher endet diese Verarbeitung. In diesem Fall werden der Koordinatenwerttyp und der Koordinatenwert, die in der vorherigen Verarbeitung ausgewählt wurden, effektiv als modale Information beibehalten.
  • 8 ist ein Flussdiagramm, das den Ablauf der Verarbeitung der Positionierungstypauswahl zeigt. Dieser Verarbeitungsablauf wird, wie bei der zuvor beschriebenen Betriebsartauswahlverarbeitung und der Koordinatenwertauswahlverarbeitung, von der Auswahleinheit 21 gemäß der Betätigung der Softwaretasten 203 durch den Bediener ausgeführt. Darüber hinaus bildet dieser Verarbeitungsablauf die Unterroutine von Schritt S3 in der zuvor beschriebenen Verarbeitung zur Erzeugung von numerischen Roboter-Steuerbefehlen.
  • In Schritt S31 wird bestimmt, ob der Positionierungstyp, der durch die Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, die Positionierungsoperation ist oder nicht. Wenn die Antwort JA ist, wird die Verarbeitung mit Schritt S32 fortgesetzt. Da es sich in diesem Fall nicht um den glatten Betrieb handelt und keine R-Adresse erforderlich ist, endet diese Verarbeitung, ohne dass der R-Adresswert zusätzlich angegeben wird.
  • Wenn die Antwort in Schritt S31 NEIN ist, fährt die Verarbeitung mit Schritt S33 fort, und es wird bestimmt, ob der Positionierungstyp, der durch die Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, der Gleichlaufbetrieb ist oder nicht. Wenn die Antwort JA ist, fährt die Verarbeitung mit Schritt S34 fort, die R-Adresse, die durch die Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, wird zusätzlich spezifiziert, und diese Verarbeitung endet. Es sollte beachtet werden, dass 4 ein Beispiel zeigt, bei dem ein innerer Bewegungsgrad von R46 als R-Adresse angegeben wird.
  • Wenn die Antwort in Schritt S33 NEIN ist, gibt es keine Eingabe des Positionierungstyps durch den Bediener, und daher endet diese Verarbeitung. In diesem Fall werden der Positionierungstyp und die R-Adresse, die in der vorherigen Verarbeitung ausgewählt wurden, effektiv als modale Information beibehalten.
  • Es sollte beachtet werden, dass das Flussdiagramm der Betriebsgeschwindigkeits-Auswahlverarbeitung für den Roboter 30 nicht gezeigt wird, aber dieser Verarbeitungsfluss wird, wie bei der zuvor beschriebenen Betriebstyp-Auswahlverarbeitung, Koordinatenwert-Auswahlverarbeitung und Positionierungstyp-Auswahlverarbeitung, von der Auswahleinheit 21 gemäß der Betätigung der Softwaretasten 203 durch den Bediener ausgeführt. Darüber hinaus bildet dieser Verarbeitungsablauf die Unterroutine von Schritt S3 in der zuvor beschriebenen Verarbeitung der numerischen Roboter-Steuerbefehle. Insbesondere wird in der Betriebsgeschwindigkeitsauswahlverarbeitung eine Betriebsgeschwindigkeit F, die durch Betätigung der Softwaretasten 203 durch den Bediener eingegeben wird, ausgewählt und festgelegt. Es sollte beachtet werden, dass 4 ein Beispiel zeigt, in dem 100 mm/min als Betriebsgeschwindigkeit F angegeben ist.
  • Unter erneuter Bezugnahme auf 4 klickt in Schritt S4 der Bediener auf eine Befehlserzeugungstaste, die eine der Softwaretasten 203 ist. Danach fährt die Verarbeitung mit Schritt S5 fort.
  • In Schritt S5 werden der Koordinatenwert des Einlernpunktes des Roboters 30 und die Konfigurationsinformationserfassungseinheit in Bezug auf den Roboter 30 erfasst. Insbesondere erfasst die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 den Koordinatenwert des Roboter-Einlernpunktes des Roboters 30 und die sich auf den Roboter 30 beziehenden Konfigurationsinformationen von der Roboter-Steuervorrichtung 3. Danach wird die Verarbeitung mit Schritt S6 fortgesetzt.
  • In Schritt S6 wird ein entsprechender Befehl in den Eingabepuffer 204 eingefügt. Hier ist der entsprechende Befehl ein numerischer Roboter-Steuerbefehl, der von der numerischen Roboter-Steuerbefehlserzeugungseinheit 22 gemäß den in den obigen Schritten S1 bis S5 ausgewählten und angegebenen Bedingungen erzeugt wird. Wie in 4 beispielhaft gezeigt, wird der numerische Roboter-Steuerbefehl durch den Betriebstyp (z.B. G01) + den Koordinatenwerttyp (z.B. X100.0 Y0.0 Z100.0 A-180.0 B0.0 C0.0 P1211546) + die Betriebsgeschwindigkeit (z.B. F100) + den Positionierungstyp (z.B. R46) spezifiziert. Der numerische Roboter-Steuerbefehl als der zuvor beschriebene entsprechende Befehl wird vorübergehend im Eingabepuffer 204 gespeichert und angezeigt. Danach wird die Verarbeitung mit Schritt S7 fortgesetzt.
  • Es sollte beachtet werden, dass der Konfigurationswert P als eine siebenstellige Zahl definiert ist, wie oben als ein Beispiel gezeigt. Insbesondere wird der Konfigurationswert P durch eine siebenstellige Zahl in der Reihenfolge Handgelenk oben und unten (1, 2), Arm rechts und links (1, 2), Arm oben und unten (1, 2), Arm vorne und hinten (1, 2), die Rotationszahl um die J4-Achse (4, 5, 6), die Rotationszahl um die J5-Achse (4, 5, 6) und die Rotationszahl um die J6-Achse (4, 5, 6) dargestellt. So bedeutet der Konfigurationswert P1211546 eines obigen Beispiels, dass das Handgelenk oben ist, der Arm rechts ist, der Arm oben ist, der Arm vorne ist, die Rotationszahl um die J4-Achse 5 ist, die Rotationszahl um die J5-Achse 4 ist und die Rotationszahl um die J6-Achse 6 ist.
  • Es ist zu beachten, dass in Schritt S6 der entsprechende Befehl direkt in die Programm-Aufbereiter-Einheit 202 eingefügt und auf dieser angezeigt werden kann, ohne dass er vorübergehend im Eingabepuffer 204 gespeichert und auf diesem angezeigt wird.
  • In Schritt S7 wird der numerische Roboter-Steuerbefehl, der vorübergehend im Eingabepuffer 204 gespeichert und angezeigt wird, vom Bediener überprüft, und wenn es kein Problem gibt, drückt der Bediener eine EINGABE-Taste, die eine der Softwaretasten 203 ist. Danach wird die Verarbeitung mit Schritt S8 fortgesetzt.
  • In Schritt S8 wird der numerische Roboter-Steuerbefehl, der der entsprechende Befehl ist, als Reaktion auf das Anklicken der EINGABE-Taste durch den Bediener in Schritt S7 zu einem Programm-Aufbereiter hinzugefügt. Dementsprechend wird der durch diese Verarbeitung erzeugte numerische Roboter-Steuerbefehl in der Programm-Aufbereiter-Einheit 202 angezeigt. Der Bediener betätigt die Softwaretasten 203 nach Bedarf und bearbeitet dadurch den auf der Programm-Aufbereiter-Einheit 202 angezeigten numerischen Roboter-Steuerbefehl. Auf diese Weise wird der numerische Roboter-Steuerbefehl erzeugt, und diese Verarbeitung endet.
  • Gemäß der vorliegenden Ausführungsform werden die folgenden vorteilhaften Effekte bereitgestellt. Gemäß der vorliegenden Ausführungsform wird der numerische Steuerbefehl für den Roboter auf der Basis von: mindestens einem Element, umfassend den Betriebstyp des Roboters 30, die Betriebsgeschwindigkeit des Roboters 30, den Positionierungstyp des Roboters 30 oder den Koordinatenwerttyp des Roboters 30; dem Koordinatenwert des Roboter-Einlernpunktes, der auf der Basis des Koordinatenwerttyps des Roboters 30 erfasst wird; und den Konfigurationsinformationen in Bezug auf den Roboter 30 am Roboter-Einlernpunkt erzeugt. Mit dieser Konfiguration kann der Koordinatenwert in einem Koordinatensystem wie dem orthogonalen Koordinatensystem oder dem Koordinatensystem für jede Achse intuitiv eingegeben werden, und die Konfigurationsinformationen, mit denen der Benutzer der Werkzeugmaschine nicht vertraut ist, können leicht eingestellt werden. So kann ein Betriebsprogramm für den Roboter 30 einfach in einer numerischen Steuerprogrammsprache für die Werkzeugmaschine erstellt werden.
  • Die vorliegende Erfindung ist nicht auf die zuvor beschriebene Ausführungsform beschränkt, und es können verschiedene Änderungen und Modifikationen vorgenommen werden. In der zuvor beschriebenen Ausführungsform wurde beispielsweise der Fall beschrieben, dass die vorliegende Erfindung durch das numerische Steuersystem 1 mit der numerischen Steuervorrichtung 2 und der Roboter-Steuervorrichtung 3 implementiert wird, aber die vorliegende Erfindung ist nicht auf diesen Fall beschränkt. Die vorliegende Erfindung kann auch durch ein Computerprogramm implementiert werden, das einen Computer veranlasst, verschiedene Funktionen der numerischen Steuervorrichtung 2 und der Roboter-Steuervorrichtung 3 zu realisieren.
  • In der zuvor beschriebenen Ausführungsform wird als Koordinatensystem für den Roboter 30 eines der beiden Achsenkoordinatensysteme und das orthogonale Koordinatensystem gewählt, aber die vorliegende Erfindung ist nicht auf diesen Fall beschränkt. Zum Beispiel kann auch ein Werkzeugkoordinatensystem gewählt werden. Dabei ist das Werkzeugkoordinatensystem ein Koordinatensystem, in dem die Position eines Werkzeugspitzen-Endpunktes (TCP) des Roboters 30 und die Haltung des Werkzeugs definiert sind. Das Werkzeugkoordinatensystem bezieht sich auf den Betrieb um ein mechanisches Schnittstellenkoordinatensystem (Handgelenkflanschfläche) des Roboters 30 und wird so eingestellt, dass ein Abweichungswert vom Ursprung des mechanischen Schnittstellenkoordinatensystems und ein Drehwinkel um jede Koordinatenachse eingestellt werden.
  • In der zuvor beschriebenen Ausführungsform erfasst die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 den Koordinatenwert des Roboter-Einlernpunktes und die Konfigurationsinformationen bezüglich des Roboters 30 von der Roboter-Steuervorrichtung 3, die den Roboter 30 steuert, aber die vorliegende Erfindung ist nicht darauf beschränkt. Beispielsweise kann die Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit 29 den Koordinatenwert und die Konfigurationsinformationen von einem Offline-Programmiergerät erfassen, das das Betriebsprogramm für den Roboter 30 offline erstellt.
  • Bezugszeichenliste
  • 1
    Numerisches Steuersystem
    2
    Numerische Steuervorrichtung (Befehlserzeugungsvorrichtung)
    3
    Roboter-Steuervorrichtung
    21
    Auswahleinheit
    22
    Numerische Roboter-Steuerbefehlserzeugungseinheit
    23
    Speichereinheit
    24
    Programmeingabeeinheit
    25
    Analyseeinheit
    26
    Roboter-Befehlssignalerzeugungseinheit
    27
    Datenübertragungs-/Empfangseinheit
    28
    Roboterbetriebseinheit
    29
    Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit
    30
    Roboter
    30a
    Arm-Spitzenendabschnitt
    30b
    Werkzeug
    31
    Speichereinheit
    32
    Datenübertragungs-/Empfangseinheit
    33
    Analyseeinheit
    35
    Programmverwaltungseinheit
    36
    Pfad-Steuereinheit
    37
    Kinematik-Steuereinheit
    38
    Servo-Steuerungseinheit
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 5752179 [0004]

Claims (7)

  1. Befehlserzeugungsvorrichtung mit einer numerischen Roboter-Steuerbefehlserzeugungseinheit, die einen numerischen Roboter-Steuerbefehl für einen Roboter gemäß einem numerischen Steuerprogramm erzeugt, wobei die numerische Roboter-Steuerbefehlserzeugungseinheit den numerischen Roboter-Steuerbefehl erzeugt auf der Basis von: mindestens einem Element, umfassend einen Betriebstyp des Roboters, eine Betriebsgeschwindigkeit des Roboters, einen Positionierungstyp des Roboters oder einen Koordinatenwerttyp des Roboters; einem Koordinatenwert eines Roboter-Einlernpunktes, der auf der Grundlage des Koordinatenwerttyps des Roboters erfasst wird; und Konfigurationsinformationen, die sich auf den Roboter am Roboter-Einlernpunkt beziehen.
  2. Befehlserzeugungsvorrichtung gemäß Anspruch 1, ferner umfassend: eine Auswahleinheit, die mindestens ein Element, umfassend den Betriebstyp des Roboters, die Betriebsgeschwindigkeit des Roboters, den Positionierungstyp des Roboters oder den Koordinatenwerttyp des Roboters, auswählt und ein Auswahlergebnis an die Befehlserzeugungseinheit der numerischen Roboter-Steuerbefehlserzeugungseinheit ausgibt.
  3. Befehlserzeugungsvorrichtung gemäß Anspruch 2, wobei die Auswahleinheit als Betriebstyp des Roboters einen Betrieb für jede Achse oder einen linearen Betrieb oder einen gekrümmten Betrieb auswählt.
  4. Befehlserzeugungsvorrichtung gemäß Anspruch 2 oder 3, wobei die Auswahleinheit als Koordinatenwerttyp des Roboters einen Koordinatenwert für jede Achse oder einen orthogonalen Koordinatenwert auswählt.
  5. Befehlserzeugungsvorrichtung gemäß einem der Ansprüche 2 bis 4, wobei die Auswahleinheit als Positionierungstyp des Roboters einen Positionierungsbetrieb oder einen Gleichlaufbetrieb auswählt.
  6. Befehlserzeugungsvorrichtung gemäß einem der Ansprüche 1 bis 5, ferner umfassend: eine Roboterkoordinatenwert-/Konfigurationsinformationserfassungseinheit, die den Koordinatenwert des Roboter-Einlernpunktes und die Konfigurationsinformationen bezüglich des Roboters von einer Roboter-Steuervorrichtung, die den Roboter steuert, oder einer Offline-Programmiervorrichtung, die ein Betriebsprogramm für den Roboter offline erstellt, erfasst.
  7. Computerprogramm, das einen Computer veranlasst, einen Schritt zur Erzeugung eines numerischen Robotersteuerbefehls für einen Roboter gemäß einem numerischen Steuerprogramm auszuführen, auf der Basis von: mindestens einem Element, umfassend einen Betriebstyp des Roboters, eine Betriebsgeschwindigkeit des Roboters, einen Positionierungstyp des Roboters oder einen Koordinatenwerttyp des Roboters; einem Koordinatenwert eines Roboter-Einlernpunktes, der auf der Grundlage des Koordinatenwerttyps des Roboters erfasst wird; und Konfigurationsinformationen, die sich auf den Roboter am Roboter-Einlernpunkt beziehen.
DE112022000487.8T 2021-03-05 2022-03-02 Befehlserzeugungsvorrichtung und Computerprogramm Pending DE112022000487T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2021-035417 2021-03-05
JP2021035417 2021-03-05
PCT/JP2022/008788 WO2022186255A1 (ja) 2021-03-05 2022-03-02 指令生成装置及びコンピュータプログラム

Publications (1)

Publication Number Publication Date
DE112022000487T5 true DE112022000487T5 (de) 2023-12-07

Family

ID=83154607

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112022000487.8T Pending DE112022000487T5 (de) 2021-03-05 2022-03-02 Befehlserzeugungsvorrichtung und Computerprogramm

Country Status (5)

Country Link
JP (1) JPWO2022186255A1 (de)
CN (1) CN116964537A (de)
DE (1) DE112022000487T5 (de)
TW (1) TW202236035A (de)
WO (1) WO2022186255A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5752179B2 (ja) 2013-06-11 2015-07-22 ファナック株式会社 工作機械とロボットを制御する制御装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6557282B2 (ja) * 2017-05-17 2019-08-07 ファナック株式会社 工作機械制御装置及び生産システム
WO2020144772A1 (ja) * 2019-01-09 2020-07-16 三菱電機株式会社 数値制御装置および数値制御方法
JP7060540B2 (ja) * 2019-04-03 2022-04-26 ファナック株式会社 加工制御システム及び加工システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5752179B2 (ja) 2013-06-11 2015-07-22 ファナック株式会社 工作機械とロボットを制御する制御装置

Also Published As

Publication number Publication date
JPWO2022186255A1 (de) 2022-09-09
CN116964537A (zh) 2023-10-27
TW202236035A (zh) 2022-09-16
WO2022186255A1 (ja) 2022-09-09
US20240134342A1 (en) 2024-04-25

Similar Documents

Publication Publication Date Title
DE602006000648T2 (de) Offline-Lehrgerät für einen Roboter
DE102017011251B4 (de) Robotersteuerung mit Funktion, die ein Lernen vereinfacht, und Robotersteuerverfahren
DE102010036499B4 (de) Werkzeugvektor-Anzeigevorrichtung für eine Werkzeugmaschine mit Drehachse
DE102012218297B4 (de) Verfahren zur dynamischen Optimierung einer Robotersteuerschnittstelle
DE102015105687B4 (de) Roboter
EP2285537B1 (de) Vorrichtung und verfahren zur rechnergestützten generierung einer manipulatorbahn
DE102012021374B4 (de) Roboterprogrammiervorrichtung
DE69032185T2 (de) Verfahren und Vorrichtung zur Kontrolle der Bearbeitungsspur eines Industrieroboters
DE60025683T2 (de) Graphische Anzeigevorrichtung für ein Robotersystem
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE112008003963B4 (de) System und Verfahren zur Off-line-Programmierung eines Industrieroboters
DE102012112900A1 (de) Numerische Steuerungsprogrammausrichtung durch Roboter
DE112017000203B4 (de) Numerische Steuerung und numerisches Steuerungsverfahren
DE112021007017T5 (de) Numerik-Steuervorrichtung und Numerik-Steuersystem
DE112009004603T5 (de) Numerische Steuervorrichtung und Verfahren zum Steuern dernumerischen Steuervorrichtung
DE102017124502A1 (de) Simulationsvorrichung und Simulationsverfahren, die eine Betriebssimulation eines Robotersystems ausführen, und Aufzeichnungsmedium, das ein Computerprogramm aufzeichnet
DE102019001207A1 (de) Kollaborativer Roboter und Verfahren zum Betreiben eines kollaborativen Roboters und Verwendung zum Bearbeiten eines Werkstücks
DE10393527T5 (de) Systeme und Verfahren zur Darstellung komplexer n-Kurven für die Direktsteuerung einer Werkzeugbewegung
EP1592527A2 (de) Verfahren und vorrichtung zum fräsen von freiformflächen
DE112021004248T5 (de) Numerisches Steuersystem und Robotersteuerverfahren
DE112021005055T5 (de) Numerisches Steuersystem und Verfahren zum Steuern von Industriemaschinen
DE112021003517T5 (de) Numerisches Steuersystem
DE112019007579B4 (de) Numerische-Steuerung-Vorrichtung und Maschinelles-Lernen-Gerät
DE102020122847A1 (de) Steuersystem, steuerapparatur und roboter
DE102020002382A1 (de) Werkzeugmaschinen-steuervorrichtung und werkzeugmaschine