DE112020005416T5 - Numerisches Steuerungsgerät und numerisches Steuerungsverfahren - Google Patents

Numerisches Steuerungsgerät und numerisches Steuerungsverfahren Download PDF

Info

Publication number
DE112020005416T5
DE112020005416T5 DE112020005416.0T DE112020005416T DE112020005416T5 DE 112020005416 T5 DE112020005416 T5 DE 112020005416T5 DE 112020005416 T DE112020005416 T DE 112020005416T DE 112020005416 T5 DE112020005416 T5 DE 112020005416T5
Authority
DE
Germany
Prior art keywords
machining
dimensional code
tool
diameter
holes
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
DE112020005416.0T
Other languages
English (en)
Inventor
Taichi Fujishita
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112020005416T5 publication Critical patent/DE112020005416T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23BTURNING; BORING
    • B23B35/00Methods for boring or drilling, or for working essentially requiring the use of boring or drilling machines; Use of auxiliary equipment in connection with such methods
    • 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
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23CMILLING
    • B23C3/00Milling particular work; Special milling operations; Machines therefor

Landscapes

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

Abstract

Ein numerisches Steuerungsgerät umfasst eine Speichereinheit, eine Zweidimensionaler-Code-Erzeugungseinheit, eine Maschinenbearbeitungskondition-Bestimmungseinheit und eine Maschinenbearbeitungssteuerungseinheit. Die Speichereinheit speichert eine Verfügbares-Werkzeug-Information und eine Endforminformation, welche die Endform jedes Werkzeugs angibt. Die Zweidimensionaler-Code-Erzeugungseinheit erzeugt einen zweidimensionalen Code durch zweidimensionales Codieren einer Eingabeinformation. Die Maschinenbearbeitungskondition-Bestimmungseinheit berechnet auf Grundlage der Anzahl von Zellen des zweidimensionalen Codes und einer Maschinenbearbeitungsbereich-Information, welche die Größe des Bereichs des Werkstücks enthält, auf welchem der zweidimensionale Code zu bilden ist, den Durchmesser von Löchern, welche den Zellen des zweidimensionalen Codes entsprechen, und das Intervall zwischen benachbarten Löchern der Löcher und wählt basierend auf der Verfügbares-Werkzeug-Information und der Endforminformation ein zum Erzeugen der Löcher mit dem Durchmesser geeignetes Werkzeug aus. Die Maschinenbearbeitungskondition-Bestimmungseinheit bestimmt auch einen Maschinenbearbeitungspfad basierend auf dem Durchmesser und dem Intervall der Löcher, dem ausgewählten Werkzeug und der Form des zweidimensionalen Codes, wobei der Maschinenbearbeitungspfad ein Pfad ist, entlang welchem der zweidimensionale Code auf dem Werkstück unter Verwendung des ausgewählten Werkzeugs gebildet wird. Die Maschinenbearbeitungssteuerungseinheit steuert die Maschinenbearbeitungseinheit basierend auf dem Maschinenbearbeitungspfad, um hierdurch eine Maschinenbearbeitung durchzuführen, welche die Form des zweidimensionalen Codes auf dem Werkstück erzeugt.

Description

  • Bereich
  • Die vorliegende Offenbarung betrifft ein numerisches Steuerungsgerät und ein numerisches Steuerungsverfahren zum Steuern eines Schneidvorgangs, welcher eine Form erzeugt, welche einen zweidimensionalen Code angibt.
  • Hintergrund
  • Zweidimensionale Codes werden erhalten, indem binäre Daten zweidimensional codiert werden. Ein zweidimensionaler Code besteht aus Zellen, welche Quadrate sind, welche in einem Gitter zweidimensional angeordnet sind. Jede Zelle ist eingefärbt, um ein binäres Datum zu repräsentieren. Quick Response (QR) Code (registrierte Marke) oder DataMatrix sind Beispiele eines zweidimensionalen Codes. Ein zweidimensionaler Code wird durch ein Abbildungsgerät erfasst, und anschließend wird die kodierte Information durch ein Informationsverarbeitungsgerät erkannt. Zweidimensionale Codes enthalten einen Fehlerkorrekturmechanismus. Selbst wenn ein zweidimensionaler Code einen Fleck oder eine Beschädigung aufweist, ist die kodierte Information daher durch ein Informationsverarbeitungsgerät erkennbar, solange der Fleck oder die Beschädigung durch Fehlerkorrektur korrigiert werden kann. Patentliteratur 1 offenbart eine Technik zum Bilden eines zweidimensionalen Codes auf einem Werkstück mittels durch ein numerisches Steuerungsgerät gesteuertem Fräsen.
  • Zitierungsliste
  • Patentliteratur
  • Patentliteratur 1: japanische Patentanmeldung, Veröffentlichungsnummer 2016-201075
  • Kurzbeschreibung
  • Technisches Problem
  • Wenn als Fräswerkzeug ein Schaftfräser verwendet wird, wird das Ende des Schaftfräsers zu einer vorbestimmten Tiefe unter die Oberfläche des Werkstücks abgesenkt und der Schaftfräser wird in eine zu der Oberfläche des Werkstücks parallele Richtung bewegt, wodurch das Werkstück geschnitten wird und ein zweidimensionaler Code darauf gebildet wird. Der Werkzeugdurchmesser des Schaftfräsers ist unabhängig von der Position von dem Ende konstant. Die in Patentliteratur 1 beschriebene Technik basiert daher auf der Voraussetzung, dass zum Bestimmen eines Maschinenbearbeitungspfads zum Bilden eines zweidimensionalen Codes ein Werkzeugdurchmesser mit der Größe von Zellen verglichen wird. Beispiele von Verfahren zum Bilden eines zweidimensionalen Codes auf einem Werkstück umfassen Bohren sowie das in Patentliteratur 1 beschriebene Verfahren unter Verwendung von Fräsen. Um ein Loch in einem Werkstück zu erzeugen, wird im Allgemeinen Bohren durchgeführt, indem das Werkzeug an der Zielposition auf dem Werkstück fixiert wird und das Werkzeug in der Tiefenrichtung des Werkstücks bewegt wird.
  • Ein mittels Bohren erzeugter zweidimensionaler Code umfasst Löcher, welche kreisförmige Ausnehmungen sind, welche Zellen repräsentieren, die ein binäres Datum angeben. Beim Bohren werden nicht nur Werkzeuge mit einem konstanten Werkzeugdurchmesser, sondern auch bohrerähnliche Werkzeuge verwendet, deren Durchmesser von der Spitze hin zu dem gegenüberliegenden Ende zunimmt und bezüglich des Schneidkörpers, der mit einem vorbestimmten Abstand von der Spitze angeordnet ist, konstant wird. Die Bildung eines Lochs mit einem bohrerähnlichen Werkzeug umfasst das Vertiefen des Loches, bis der Schneidkörper mit einem konstanten Durchmesser das Loch erreicht; daher wird der konstante Durchmesser manchmal als der Werkzeugdurchmesser behandelt. Es sei nun angenommen, dass dieser Werkzeugdurchmesser bei einer Bestimmung eines Maschinenbearbeitungspfads wie gemäß der Voraussetzung der in Patentliteratur 1 beschriebenen Technik mit dem Durchmesser von Löchern verglichen wird. Wenn in diesem Fall der Werkzeugdurchmesser, welcher als eine Referenz zur Werkzeugauswahl dient, mit dem Durchmesser von Löchern nicht übereinstimmt, wird bestimmt, dass kein Werkzeug geeignet ist, obwohl die Möglichkeit besteht, dass das Werkzeug tatsächlich zum Erzeugen des zweidimensionalen Codes verwendet werden kann und zwar durch Durchführen einer Maschinenbearbeitung an einem Abschnitt, welcher näher an der Spitze ist als der Abschnitt konstanten Durchmessers, d. h. ein Abschnitt mit einem kleineren Durchmesser als der Abschnitt konstanten Durchmessers. Daher muss der Nutzer des numerischen Steuerungsgerätes ein zusätzliches Werkzeug mit einem Werkzeugdurchmesser vorbereiten, welcher dem Durchmesser der zu erzeugenden Löcher entspricht. Dies kann eine effektive Verwendung verfügbarer Werkzeuge behindern, was problematisch ist.
  • Die vorliegende Offenbarung wurde in Anbetracht des Obigen gemacht, und ihr Ziel ist es, ein numerisches Steuerungsgerät zu erhalten, welches beim Erzeugen eines zweidimensionalen Codes auf einem Werkstück mittels Bohren von den für eine Maschinenbearbeitungseinheit verfügbaren Werkzeugen so weit wie möglich Gebrauch machen kann.
  • Lösung des Problems
  • Um die oben beschriebenen Probleme zu lösen und das Ziel zu erreichen, umfasst ein numerisches Steuerungsgerät gemäß der vorliegenden Offenbarung eine Speichereinheit, eine Zweidimensionaler-Code-Erzeugungseinheit, eine Maschinenbearbeitungskondition-Bestimmungseinheit und eine Maschinenbearbeitungssteuerungseinheit. Die Speichereinheit speichert eine Verfügbares-Werkzeug-Information, welche für eine Maschinenbearbeitungseinheit verfügbare Werkzeuge angibt, und eine Endforminformation, welche die Endform jedes der verfügbaren Werkzeuge angibt. Die Zweidimensionaler-Code-Erzeugungseinheit erzeugt durch zweidimensionales Codieren einer Eingabeinformation einen zweidimensionalen Code. Die Maschinenbearbeitungskondition-Bestimmungseinheit berechnet auf Grundlage der Anzahl von Zellen, welche die Gesamtanzahl von Zellen ist, welche den zweidimensionalen Code bilden, und einer Maschinenbearbeitungsbereich-Information, welche die Größe des Bereichs des Werkstücks angibt, auf welchem der zweidimensionale Code zu bilden ist, den Durchmesser von Löchern, welche den Zellen des zweidimensionalen Codes entsprechen, und das Intervall zwischen benachbarten Löchern der Löcher und wählt eines der zum Erzeugen der Löcher mit dem Durchmesser geeigneten Werkzeuge basierend auf der Verfügbares-Werkzeug-Information und der Endforminformation aus. Die Maschinenbearbeitungskondition-Bestimmungseinheit bestimmt basierend auf dem Durchmesser und dem Intervall der Löcher, dem ausgewählten Werkzeug und der Form des zweidimensionalen Codes zudem einen Maschinenbearbeitungspfad, wobei der Maschinenbearbeitungspfad ein Pfad ist, entlang welchem der zweidimensionale Code auf dem Werkstück unter Verwendung des ausgewählten Werkzeugs gebildet wird. Die Maschinenbearbeitungssteuerungseinheit steuert die Maschinenbearbeitungseinheit basierend auf dem Maschinenbearbeitungspfad, um hierdurch eine Maschinenbearbeitung durchzuführen, welche die Form des zweidimensionalen Codes auf dem Werkstück erzeugt.
  • Vorteilhafte Wirkungen der Erfindung
  • Das numerische Steuerungsgerät gemäß der vorliegenden Offenbarung kann die Wirkung erreichen, dass es beim Erzeugen eines zweidimensionalen Codes auf einem Werkstück mittels Bohren von den für eine Maschinenbearbeitungseinheit verfügbaren Werkzeugen so weit wie möglich Gebrauch macht.
  • Figurenliste
    • 1 ist ein Blockdiagramm, welches eine beispielhafte Konfiguration eines numerischen Steuerungsgeräts gemäß einer ersten Ausführungsform zeigt.
    • 2 ist ein Diagramm, welches ein Beispiel eines zweidimensionalen Codes zeigt.
    • 3 ist eine vergrößerte Ansicht, welche den Bereich R des zweidimensionalen Codes aus 2 zeigt.
    • 4 ist eine vergrößerte Ansicht, welche ein Beispiel des Bereichs, welcher dem Bereich R aus 2 entspricht, für den Fall zeigt, dass der zweidimensionale Code auf dem Werkstück mittels Bohren gebildet ist.
    • 5 ist ein Ablaufdiagramm, welches eine beispielhafte Prozedur eines numerischen Steuerungsverfahrens gemäß der ersten Ausführungsform zeigt.
    • 6 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes in Designdaten zeigt.
    • 7 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes für den Fall zeigt, dass der Durchmesser von Löchern bezogen auf das Intervall zwischen benachbarten Löchern sehr groß ist.
    • 8 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes für den Fall zeigt, dass der Durchmesser von Löchern bezogen auf das Intervall zwischen benachbarten Löchern ungeeignet klein ist.
    • 9 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes für den Fall zeigt, dass der Durchmesser von Löchern bezogen auf das Intervall zwischen benachbarten Löchern geeignet ist.
    • 10 ist eine Draufsicht, welche eine beispielhafte Maschinenbearbeitungsoberfläche schematisch zeigt, in welche ein Loch mit einem Werkzeug gebohrt wurde.
    • 11 ist eine Draufsicht, welche eine beispielhafte Maschinenbearbeitungsoberfläche schematisch zeigt, in welche ein Loch mit einem Werkzeug gebohrt wurde.
    • 12 ist eine Seitenansicht, welche ein Beispiel eines Werkzeugs zeigt.
    • 13 ist eine Seitenansicht, welche ein Beispiel eines Werkzeugs zeigt.
    • 14 ist ein Blockdiagramm, welches eine beispielhafte Konfiguration eines numerischen Steuerungsgeräts gemäß einer zweiten Ausführungsform zeigt.
    • 15 ist ein Diagramm, welches eine beispielhafte Konfiguration eines neuronalen Netzes zeigt, welches in der zweiten Ausführungsform zum Lernen verwendet wird.
  • Beschreibung von Ausführungsformen
  • Nachfolgend werden ein numerisches Steuerungsgerät und ein numerisches Steuerungsverfahren gemäß Ausführungsformen der vorliegenden Offenbarung im Detail mit Bezug zu den Zeichnungen beschrieben. Die vorliegende Offenbarung ist nicht auf die Ausführungsformen begrenzt.
  • Erste Ausführungsform.
  • 1 ist ein Blockdiagramm, welches eine beispielhafte Konfiguration eines numerischen Steuerungsgeräts gemäß der ersten Ausführungsform zeigt. Das numerische Steuerungsgerät 1 ist mit einer Maschinenbearbeitungseinheit 2 verbunden, welche ein Werkstück unter Verwendung eines Werkzeugs maschinenbearbeitet, und steuert die Maschinenbearbeitungseinheit 2. Das numerische Steuerungsgerät 1 umfasst eine Eingabeeinheit 11, einen Speicher 12, eine Zweidimensionaler-Code-Erzeugungseinheit 131, eine Maschinenbearbeitungskondition-Bestimmungseinheit 132, eine Maschinenbearbeitungssteuerungseinheit 133, eine Anzeigeeinheit 14 und eine Kommunikationsschnittstelle 15.
  • Die Eingabeeinheit 11 empfängt eine Eingabeinformation von dem Nutzer des numerischen Steuerungsgeräts 1. Die Eingabeinformation gemäß der ersten Ausführungsform enthält eine Zeichenkette, die in einen zweidimensionalen Code zu codieren ist, und eine Maschinenbearbeitungsbereich-Information, welche die Größe des Maschinenbearbeitungsbereichs auf dem Werkstück enthält, auf welchem der zweidimensionale Code gebildet wird. Wenn das Werkstück ein Produkt ist, sind sein Name, seine Modellnummer oder eine Produktinformation Beispiele der Zeichenkette, welche in einen zweidimensionalen Code zu kodieren ist. Die Produktinformation umfasst das Material, die Qualität und die Losnummer des Produkts. Die Maschinenbearbeitungsbereich-Information kann die Position des Bereichs umfassen, wo der zweidimensionale Code erzeugt wird. Die Eingabeeinheit 11 ist eine Tastatur, ein Knopf, ein Touchpad, eine Maus oder dergleichen.
  • Der Speicher 12 ist eine Speichereinheit, welche eine Werkzeuginformation 121 speichert, welche die in der Maschinenbearbeitungseinheit 2 bereitgestellten Werkzeuge betrifft. Die Werkzeuginformation 121 umfasst eine Verfügbares-Werkzeug-Information, welche in der Maschinenbearbeitungseinheit 2 installierte verfügbare Werkzeuge angibt, und eine Endforminformation, welche die Endformen dieser Werkzeuge angibt. Gemäß einem Beispiel ist die Verfügbares-Werkzeug-Information durch eine Identifikationsinformation zum Identifizieren des Werkzeugs oder durch den Namen des Werkzeugs angegeben. Die Endforminformation ist eine Information, welche die Form des Endteils des jeweiligen Werkzeugs angibt. Beispiele der Endforminformation eines bohrerähnlichen Werkzeugs, dessen Schneidendurchmesser hin zu der Spitze abnimmt, umfassen den maximalen Durchmesser der Schneide und die Länge der Schneide von der Spitze zu der Position, wo der Durchmesser das Maximum erreicht. Die Werkzeuginformation 121 kann eine Information sein, welche durch den Nutzer manuell eingegeben wird, oder kann eine Information sein, welche von der Maschinenbearbeitungseinheit 2 empfangen wird.
  • Die Zweidimensionaler-Code-Erzeugungseinheit 131 erzeugt einen zweidimensionalen Code basierend auf einer Information, welche die eingegebene Zeichenkette enthält. Insbesondere erzeugt die Zweidimensionaler-Code-Erzeugungseinheit 131 einen zweidimensionalen Code durch zweidimensionales Codieren der durch die Eingabeeinheit 11 empfangenen Zeichenkette unter Verwendung des Fehlerkorrekturlevels und der Anzahl von Zellen, welche durch die später beschriebene Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmt werden.
  • Die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmt basierend auf der durch die Eingabeeinheit 11 empfangenen Eingabeinformation, der in dem Speicher 12 gespeicherten Werkzeuginformation 121 und der durch die Zweidimensionaler-Code-Erzeugungseinheit 131 erzeugten Information Maschinenbearbeitungskonditionen, welche beim Bilden eines zweidimensionalen Codes auf dem Werkstück zu verwenden sind.
  • Die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmt Umwandlungskonditionen zum Umwandeln der zu codierenden Zeichenkette in einen zweidimensionalen Code. Das Fehlerkorrekturlevel und die Anzahl von Zellen sind Beispiele von Umwandlungskonditionen. Umwandlungskonditionen sind ein Beispiel von Maschinenbearbeitungskonditionen. Das Fehlerkorrekturlevel ist ein Standard zur Nutzung eines Mechanismus, welcher eine teilweise Beschädigung an dem zweidimensionalen Code durch Wiederherstellen von Information des beschädigten Teils handhabt, um ein normales Lesen sicherzustellen; das Fehlerkorrekturlevel gibt den Grad der Beschädigung an, welcher hinsichtlich der Lesbarkeit erlaubt ist. Mit steigendem Fehlerkorrekturlevel erhöht sich die Rate wiederherstellbarer Fehler, jedoch nimmt auch die Anzahl von Zellen zu, welche den zweidimensionalen Code bilden. In Fällen, in denen die Anzahl von Zellen steigt, ohne die Größe des Bereichs zu ändern, wo der zweidimensionale Code gebildet wird, nimmt zudem die Größe einer einzelnen Zelle ab. Gemäß einem Beispiel stellt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bei der anfänglichen Bestimmung von Maschinenbearbeitungskonditionen für den zweidimensionalen Code, welcher eine bestimmte Zeichenkette repräsentiert, das Fehlerkorrekturlevel auf den höchsten Standard aller möglichen Standards ein. Des Weiteren verringert die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bei der zweiten und nachfolgenden Bestimmungen von Maschinenbearbeitungskonditionen für den zweidimensionalen Code, welcher die bestimmte Zeichenkette repräsentiert, den Fehlerkorrekturlevel nach und nach.
  • Die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmt beim Bestimmen des Fehlerkorrekturlevels auch die Anzahl von Zellen. Die Anzahl von Zellen gibt die Gesamtanzahl von Zellen an, welche den zweidimensionalen Code bilden. Im Wesentlichen wird die Anzahl von Zellen auf Grundlage der Zeichenkette und des Fehlerkorrekturlevels automatisch bestimmt. Für einige Arten zweidimensionaler Codes, welche QR-Codes umfassen, bei denen die Anzahl von Zellen erhöht werden kann, ohne die Zeichenkette und das Fehlerkorrekturlevel zu ändern, bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 die Anzahl von Zellen jedoch auf Grundlage der Maschinenbearbeitungskonditionen. Die Zweidimensionaler-Code-Erzeugungseinheit 131 erzeugt einen zweidimensionalen Code basierend auf dem Fehlerkorrekturlevel und der hier bestimmten Anzahl von Zellen und der eingegebenen Zeichenkette.
  • 2 ist ein Diagramm, welches ein Beispiel eines zweidimensionalen Codes zeigt. 2 stellt einen QR-Code als Beispiel eines zweidimensionalen Codes dar. Der QR-Code 200 umfasst Zellen 201, welche Quadrate sind, die in einem Gitter in zwei zueinander orthogonalen Richtungen angeordnet sind. Die Zellen 201 geben eine Binärinformation an. Gemäß einem Beispiel wird ein Wert der Binärinformation durch schwarze Zellen repräsentiert und der andere Wert wird durch weiße Zellen repräsentiert. Es ist zu beachten, dass die Binärinformation nicht auf die Kombination aus Schwarz und Weiß begrenzt ist und eine Kombination aus beliebigen anderen Farben sein kann, solange diese durch ein Abbildungsgerät identifiziert werden können.
  • Der QR-Code 200 umfasst quadratische Positionsdetektionsmuster 202a, welche an drei Ecken angeordnet sind, und einen Datenbereich 202b, welcher mit einer großen Anzahl von Zellen 201 gefüllt ist. Der Datenbereich 202b umfasst Zeichenkettendaten, welche eine codierte Zeichenkette sind, und einen Fehlerkorrekturcode.
  • 3 ist eine vergrößerte Ansicht, welche den Bereich R des zweidimensionalen Codes aus 2 zeigt. Die 2 und 3 stellen die Form des auf dem Werkstück zu bildenden zweidimensionalen Codes dar, welche den Designdaten des zweidimensionalen Codes entspricht. In den Designdaten ist jede quadratische Zelle 201 entweder eine weiße Zelle 201a oder eine schwarze Zelle 201b. Es ist zu beachten, dass die Designdaten der zweidimensionale Code sein können, welcher durch die oben beschriebene Zweidimensionaler-Code-Erzeugungseinheit 131 erzeugt wird.
  • 4 ist eine vergrößerte Ansicht, welche ein Beispiel des Bereichs, welcher dem Bereich R in 2 entspricht, für den Fall zeigt, dass der zweidimensionale Code auf dem Werkstück mittels Bohren gebildet ist. In diesem Beispiel entsprechen die schwarze Zellen 201b in den 2 und 3 Löchern 211b, welche mittels Bohren gebildet sind. Die weißen Zellen 201a in den 2 und 3 entsprechen nicht-gebohrten Bereichen 211a.
  • Wie in 4 gezeigt ist, werden beim Bilden eines QR-Codes durch Bohren die Löcher 211b mit einer perfekten Kreisform in den Zellen 201 gebildet. In diesem Beispiel sind die Zellen 201b, welche, wie in den 2 und 3 gezeigt, ursprünglich quadratisch und in schwarz gefärbt sind, durch perfekte Kreise ausgedrückt. In Abhängigkeit des Durchmessers DA, d. h. der Größe der zu erzeugenden Löcher 21 1b, und dem Intervall d zwischen den benachbarten Löchern 211b kann ein großer Unterschied zwischen der Form des durch Bohren gebildeten zweidimensionalen Codes und der Form des zweidimensionalen Codes in den Designdaten vorliegen. Dies kann verhindern, dass der durch ein Abbildungsgerät erfasste zweidimensionale Code durch ein Informationsverarbeitungsgerät normal erkannt wird. Daher werden der Durchmesser DA der Löcher 211b und das Intervall d zwischen den benachbarten Löchern 211b so berechnet, dass die Form des zu bildenden zweidimensionalen Codes die Form des zweidimensionalen Codes in den Designdaten nachbildet. Insbesondere berechnet in der ersten Ausführungsform die Maschinenbearbeitungskondition-Bestimmungseinheit 132 als eine der Maschinenbearbeitungskonditionen den Durchmesser DA der Löcher 211b und das Intervall d zum Erzeugen des durch die Zweidimensionaler-Code-Erzeugungseinheit 131 erzeugten zweidimensionalen Codes auf dem Maschinenbearbeitungsbereich des Werkstücks. Es ist zu beachten, dass das Intervall zwischen den benachbarten Löchern 211b der Abstand zwischen zwei Löchern 211b, die zueinander benachbart sind, ist, welcher als die Länge ausgedrückt ist, welche die Mitten der benachbarten Löcher 211b verbindet. Daher ist das Intervall synonym zu der Länge einer einzelnen Zelle 201; daher ist in 4 die Länge einer einzelnen Zelle 201 durch ein Bezugszeichen „d“ angegeben, um das Intervall komfortabel zu repräsentieren.
  • Nach dem Berechnen des Durchmessers der Löcher 201b wählt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 basierend auf der Verfügbares-Werkzeug-Information und der Endforminformation, welche in der Werkzeuginformation 121 enthalten sind, ein zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser geeignetes Werkzeug aus. Das ausgewählte Werkzeug wird als das zu verwendende Werkzeug festgelegt. Das heißt, die Maschinenbearbeitungskondition-Bestimmungseinheit 132 wählt das zu verwendende Werkzeug als eine der Maschinenbearbeitungskonditionen aus. Für den Fall, dass festgestellt wird, dass selbst nach Ändern der Umwandlungskonditionen kein Werkzeug zum Herstellen des berechneten Durchmessers der Löcher 211b geeignet ist, gibt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 eine Warnungsinformation aus, welche angibt, dass die Form des auf Grundlage der empfangenen Eingabeinformation erzeugten zweidimensionalen Codes nicht erzeugt werden kann.
  • Nach dem Auswählen des zu verwendenden Werkzeugs bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 als eine der Maschinenbearbeitungskonditionen einen Maschinenbearbeitungspfad, welcher eine Trajektorie des Endes des zu verwendenden Werkzeugs zum Bilden des zweidimensionalen Codes ist. Das heißt, der Maschinenbearbeitungspfad ist ein Pfad, welcher die Bohrtiefe des zu verwendenden Werkzeugs und die Reihenfolge angibt, in welcher die Löcher 211b mit dem Werkzeug erzeugt werden, welches zum Bilden des zweidimensionalen Codes auf dem Werkstück mit dem zu verwendenden Werkzeug zu verwenden ist. Wie oben beschrieben ist, bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 in der ersten Ausführungsform das Fehlerkorrekturlevel, die Anzahl von Zellen, den Durchmesser der Löcher 211b, das Intervall zwischen den benachbarten Löchern 211b, das zu verwendende Werkzeug und den Maschinenbearbeitungspfad als die Maschinenbearbeitungskonditionen.
  • Die Maschinenbearbeitungssteuerungseinheit 133 steuert die Maschinenbearbeitungseinheit 2 basierend auf dem durch die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmten Maschinenbearbeitungspfad. Dementsprechend bildet die Maschinenbearbeitungseinheit 2 den zweidimensionalen Code auf dem Werkstück mit dem zu verwendenden Werkzeug. Des Weiteren kann die Maschinenbearbeitungssteuerungseinheit 133 die Maschinenbearbeitungseinheit 2 so steuern, dass das in der Maschinenbearbeitungseinheit 2 zur Verwendung zur Maschinenbearbeitung bereitgestellte Werkzeug durch das Werkzeug ersetzt wird, welches durch die Maschinenbearbeitungskondition-Bestimmungseinheit 132 als zu verwenden bestimmt wurde.
  • Die Anzeigeeinheit 14 zeigt dem Nutzer eine Information an, welche zum Verwenden des numerischen Steuerungsgeräts 1 erforderlich ist. Gemäß einem Beispiel kann die Anzeigeeinheit 14 die Eingabeinformation, die Maschinenbearbeitungskonditionen oder die Form des zweidimensionalen Codes anzeigen. Die Anzeigeeinheit 14 ist beispielsweise eine Flüssigkristallanzeige.
  • Die Kommunikationsschnittstelle 15 ist eine funktionelle Einheit, welche mit der Maschinenbearbeitungseinheit 2 durch ein drahtgebundenes oder drahtloses Kommunikationsmittel kommuniziert. Gemäß einem Beispiel wird ein Befehl von der Maschinenbearbeitungssteuerungseinheit 133 über die Kommunikationsschnittstelle 15 an die Maschinenbearbeitungseinheit 2 übertragen, und eine durch die Maschinenbearbeitungseinheit 2 bezogene Information wird über die Kommunikationsschnittstelle 15 empfangen.
  • Es ist zu beachten, dass das numerische Steuerungsgerät 1 durch einen Computer konfiguriert ist, welcher eine zentrale Verarbeitungseinheit (CPU) 13, welche diverse Prozesse ausführt, den Speicher 12, welcher Information speichert, die Eingabeeinheit 11, welche Information gemäß einer Nutzerbedienung eingibt, die Kommunikationsschnittstelle 15, welche eine Schnittstelle zum Verbinden mit Geräten ist, die zu dem numerischen Steuerungsgerät 1 extern sind, und die Anzeigeeinheit 14, welche Information anzeigt, umfasst.
  • Der Speicher 12 umfasst einen Direktzugriffsspeicher (RAM), einen nur lesbaren Speicher (ROM) oder ein externes Speichergerät. Ein Zweidimensionaler-Code-Bildungsprogramm wird zur Ausführung durch die CPU 13 in den RAM geladen, und Daten, welche durch die CPU 13 verwendet werden, werden temporär in dem RAM gehalten. Der ROM speichert ein Basis-Eingabe/Ausgabe-System (BIOS) oder ein UEFI (unified extensible firmware interface), welches ein Programm zum Steuern des grundlegenden Betriebs des Computers, nämlich des numerischen Steuerungsgeräts 1, ist. Das externe Speichergerät ist eine Festplatte (HDD) oder ein Festkörperspeicher (SSD). Das externe Speichergerät speichert das Zweidimensionaler-Code-Bildungsprogramm und diverse Daten. Es ist zu beachten, dass das Zweidimensionaler-Code-Bildungsprogramm in dem ROM gespeichert sein kann.
  • Programme, die in dem ROM und dem externen Speichergerät gespeichert sind, werden in den RAM geladen. Die CPU 13 lädt das Zweidimensionaler-Code-Bildungsprogramm in den RAM und führt diverse Prozesse aus. In der ersten Ausführungsform implementiert die CPU 13 die Funktionen der Verarbeitungseinheiten der Zweidimensionaler-Code-Erzeugungseinheit 131, der Maschinenbearbeitungskondition-Bestimmungseinheit 132 und der Maschinenbearbeitungssteuerungseinheit 133 durch Ausführen des Zweidimensionaler-Code-Bildungsprogramms, welches die Prozedur zum Bilden eines zweidimensionalen Codes beschreibt.
  • Das Zweidimensionaler-Code-Bildungsprogramm kann in einem Speichermedium gespeichert sein, welches durch den Computer lesbar ist. Das numerische Steuerungsgerät 1 kann das externe Speichergerät dazu veranlassen, das in dem Speichermedium gespeicherte Zweidimensionaler-Code-Bildungsprogramm zu speichern. Das Speichermedium kann ein tragbares Speichermedium sein, welches eine Diskette ist, oder ein Flash-Speicher, welcher ein Halbleiterspeicher ist. Das Zweidimensionaler-Code-Bildungsprogramm kann von einem anderen Computer oder Servergerät auf dem Computer, welcher das numerische Steuerungsgerät 1 ist, über ein Kommunikationsnetzwerk installiert werden.
  • Als Nächstes wird ein numerisches Steuerungsverfahren beschrieben, mit welchem das numerische Steuerungsgerät 1 auf einem Werkstück einen zweidimensionalen Code bildet. 5 ist ein Ablaufdiagramm, welches eine beispielhafte Prozedur des numerischen Steuerungsverfahrens gemäß der ersten Ausführungsform zeigt.
  • Zuerst bezieht das numerische Steuerungsgerät 1 eine Zeichenkette, die in einen zweidimensionalen Code zu kodieren ist, und eine Maschinenbearbeitungsbereich-Information für das Werkstück (Schritt S11). Die Maschinenbearbeitungsbereich-Information ist eine Information, welche die Größe des Maschinenbearbeitungsbereichs auf dem Werkstück enthält, auf welchem der zweidimensionale Code gebildet wird. Gemäß einem Beispiel werden die Zeichenkette und die Maschinenbearbeitungsbereich-Information durch den Nutzer über die Eingabeeinheit 11 eingegeben.
  • Als Nächstes bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 Zweidimensionale-Code-Umwandlungskonditionen, welche das Fehlerkorrekturlevel und die Anzahl von Zellen umfassen (Schritt S12). Bei der erstmaligen Ausführung von Schritt S12 an der in Schritt S11 bezogenen Zeichenkette stellt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 das Fehlerkorrekturlevel auf den höchsten Standard aller möglichen Standards ein und stellt die Anzahl von Zellen auf das Minimum innerhalb des Bereichs des eingestellten Fehlerkorrekturlevels ein.
  • Danach erzeugt die Zweidimensionaler-Code-Erzeugungseinheit 131 einen zweidimensionalen Code durch zweidimensionales Codieren der Zeichenkette unter Verwendung der bestimmten Umwandlungskonditionen (Schritt S13). Die Maschinenbearbeitungskondition-Bestimmungseinheit 132 berechnet den Durchmesser der Löcher 211b und das Intervall zwischen den benachbarten Löchern 211b aus der Form des in Schritt S13 erzeugten zweidimensionalen Codes auf Grundlage der Anzahl von Zellen und der Maschinenbearbeitungsbereich-Information (Schritt S14). In der ersten Ausführungsform entspricht das Intervall zwischen den Löchern 211b der Länge einer einzelnen Seite einer einzelnen Zelle 201.
  • 6 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes in Designdaten zeigt. Es ist ideal, die Löcher 211b in dem Werkstück in der Größe der durch die in 6 gezeigten Designdaten angegebenen schwarzen Zellen 201b zu erzeugen. Wie oben beschrieben ist, haben die Zellen 201 jedoch eine quadratische Form, wohingegen die Löcher 211b, welche an den Positionen des Werkstücks zu bilden sind, die den schwarzen Zellen 201b entsprechen, eine perfekte Kreisform haben.
  • 7 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes für den Fall zeigt, dass der Durchmesser von Löchern bezogen auf das Intervall zwischen benachbarten Löchern sehr groß ist. In dem Fall, in welchem der Durchmesser der Löcher 211b bezogen auf das Intervall zwischen den benachbarten Löchern 211b sehr groß ist, mit anderen Worten in dem Fall, in welchem der Durchmesser der Löcher 211b bezogen auf die Größe einer einzelnen Zelle 201 sehr groß ist, dringen die Löcher 211b in die benachbarten nicht-gebohrten Bereiche 211a ein, welche den weißen Zellen 201a entsprechen. Das heißt, das Verhältnis aus den nicht-gebohrten Bereichen 211a wird kleiner als das Verhältnis der durch die Designdaten angegebenen weißen Zellen 201a. Daraus ergibt sich ein großer Unterschied zwischen der Form des in 7 gezeigten zweidimensionalen Codes und der Form des in 6 gezeigten zweidimensionalen Codes der Designdaten.
  • 8 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes für den Fall zeigt, dass der Durchmesser von Löchern bezogen auf das Intervall zwischen benachbarten Löchern ungeeignet klein ist. In dem Fall, in welchem der Durchmesser der Löcher 211b bezogen auf das Intervall zwischen den benachbarten Löchern 211b ungeeignet klein ist, mit anderen Worten in dem Fall, in welchem der Durchmesser der Löcher 211b bezogen auf die Größe einer einzelnen Zelle 201 ungeeignet klein ist, enthalten die schwarzen Zellen 201b in einem großen Ausmaß nicht-gebohrte Teile. Das heißt, das Verhältnis der nicht-gebohrten Bereiche 211a ist größer als das Verhältnis der in den Designdaten angegebenen weißen Zellen 201a. Daraus ergibt sich ein großer Unterschied zwischen der Form des in 8 gezeigten zweidimensionalen Codes und der Form des in 6 gezeigten zweidimensionalen Codes der Designdaten. Wenn die Formen der in den 7 und 8 gezeigten zweidimensionalen Codes durch ein Abbildungsgerät erfasst werden, besteht eine geringe Wahrscheinlichkeit, dass die Codes durch ein Informationsverarbeitungsgerät normal erfasst werden können.
  • 9 ist ein Diagramm, welches ein Beispiel der Form eines zweidimensionalen Codes für den Fall zeigt, dass der Durchmesser von Löchern bezogen auf das Intervall zwischen benachbarten Löchern geeignet ist. In 9 haben die Löcher 211b, welche den Zellen 201 entsprechen, im Wesentlichen dieselbe Größe wie die schwarzen Zellen 201b. Hierdurch haben auch die nicht-gebohrten Bereiche 211a im Wesentlichen dieselbe Größe wie die weißen Zellen 201a. Auf diese Weise bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 sowohl das Intervall zwischen den benachbarten Löchern 211b als auch den Durchmesser der Löcher 211b so, dass der Durchmesser der Löcher 211b innerhalb eines geeigneten Bereichs eines Verhältnisses bezogen auf das Intervall zwischen den benachbarten Löchern 211b ist. Es ist zu beachten, dass ein geeigneter Bereich eines Verhältnisses zwischen dem Durchmesser der Löcher 211b und dem Intervall in Abhängigkeit des Materials des Werkstücks und dergleichen variiert, und daher im Vorhinein experimentell erhalten wird. Ein möglicher Weg, den Bereich eines Verhältnisses zu erhalten, ist es, das Verhältnis zwischen dem Durchmesser der Löcher 211b und dem Intervall so zu bestimmen, dass die schwarzen Zellen 201b in den Designdaten im Wesentlichen die gleiche Fläche wie die zu bildenden Löcher 211b haben. Vorliegend bedeutet der Begriff „im Wesentlichen die gleiche Fläche“, dass eine Differenz von zirka 10 % des Absolutwertes zwischen der Fläche der rechteckigen Zellen und der Fläche der kreisförmigen Löcher akzeptabel ist.
  • Wieder zurückkehrend auf 5 wählt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 basierend auf der Verfügbares-Werkzeug-Information und der Endforminformation, welche durch den Speicher 12 gehalten werden, ein zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser geeignetes Werkzeug aus (Schritt S15). Dabei wählt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 als ein verwendbares Werkzeug ein Werkzeug, dessen Werkzeugdurchmesser mit dem Durchmesser der Löcher 211b übereinstimmt, oder ein Werkzeug aus, dessen Werkzeugdurchmesser nicht mit dem Durchmesser der Löcher 211b übereinstimmt, jedoch zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser in Abhängigkeit des Maschinenbearbeitungspfads angewendet werden kann.
  • Die 10 und 11 sind Draufsichten, welche eine beispielhafte Maschinenbearbeitungsoberfläche schematisch zeigt, in welche ein Loch mit einem Werkzeug gebohrt wurde. Die 12 und 13 sind Seitenansichten, welche ein Beispiel eines Werkzeugs zeigen. 12 stellt ein Werkzeug 21 mit einem konstanten Werkzeugdurchmesser von „DT11“ dar. 13 stellt ein Werkzeug 22 dar, welches an einem Schneidkörper 222 einen konstanten Werkzeugdurchmesser von „DT21“ hat, jedoch nicht an einem Endteil 221, in welchem der Durchmesser von der Grenze zu dem Schneidkörper 222 hin zu einer Spitze 22a abnimmt. Bohren mit dem in 13 gezeigten Werkzeug 22 umfasst herkömmlicherweise das Vertiefen des Loches, bis eine Position mit dem konstanten Werkzeugdurchmesser „DT21“ erreicht wird, und daher wird der Werkzeugdurchmesser als „DT21“ bezeichnet.
  • Zum Erzeugen des Lochs 211b mit einem Durchmesser von „DA1“, welches in der in 10 gezeigten Maschinenbearbeitungsoberfläche 230 gebildet ist, kann ein Werkzeug verwendet werden, welches einen Werkzeugdurchmesser hat, welcher mit dem Durchmesser „DA1“ des Loches 211b übereinstimmt. Zum Beispiel, wenn der Werkzeugdurchmesser „DT11“ des in 12 gezeigten Werkzeugs 21 gleich dem Durchmesser „DA1“ des Loches 211b ist, kann das Werkzeug 21 verwendet werden. Des Weiteren, wenn der Werkzeugdurchmesser „DT21“ des in 13 gezeigten Werkzeugs 22 gleich dem Durchmesser „DA1“ des Loches 211b ist, kann das Loch 211b mit dem in 10 gezeigten Durchmesser „DA1“ erzeugt werden, indem das Loch vertieft wird, bis die Tiefe eine Position erreicht, welche von der Spitze 22a des Werkzeugs 22 einen Abstand von „A2“ hat.
  • Ferner, wenn der Werkzeugdurchmesser „DT11“ des in 12 gezeigten Werkzeugs 21 kleiner als der Durchmesser „DA1“ des Loches 211b ist und das Werkzeug 21 zum Fräsen verwendet werden kann, kann das Loch 211b mit dem in 10 gezeigten Durchmesser „DA1“ erzeugt werden, indem mit dem Werkzeug 21 in der Richtung, die zu der Maschinenbearbeitungsoberfläche 230 senkrecht ist, gebohrt wird und das Werkzeug 21 dann in der Richtung, die zu der Maschinenbearbeitungsoberfläche 230 horizontal ist, bewegt wird, um das Loch nachzuschneiden und zu erweitern. In einem solchen Fall ist das Werkzeug 21 in 12 ein Werkzeug, dessen Werkzeugdurchmesser „DT11“ mit dem Durchmesser „DA1“ des Loches 211b in 10 nicht übereinstimmt, jedoch zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser in Abhängigkeit des Maschinenbearbeitungspfads angewendet werden kann.
  • Der Durchmesser „DA2“ des Loches 211b, welches in der in 11 gezeigten Maschinenbearbeitungsoberfläche 230 gebildet ist, ist kleiner als der Werkzeugdurchmesser „DT11“ des Werkzeugs 21 in 12. Der Durchmesser „DA2“ ist auch kleiner als der Werkzeugdurchmesser „DT21“ des Werkzeugs 22 in 13. Wenn die Werkzeuge 21 und 22, welche in den 12 und 13 gezeigt sind, die einzigen Werkzeuge sind, die für die Maschinenbearbeitungseinheit 2 vorbereitet sind, gibt es kein Werkzeug mit einem Werkzeugdurchmesser, welcher mit dem Durchmesser „DA2“ des in 11 gezeigten Loches 211b übereinstimmt. Jedoch nimmt der Durchmesser des Endteils 221 des in 13 gezeigten Werkzeugs 22 von dem maximalen Werkzeugdurchmesser „DT21“ hin zu der Spitze 22a ab. Das heißt, der Endteil 221 des in 13 gezeigten Werkzeugs 22 hat an einer bestimmten Position den gleichen Durchmesser wie der Durchmesser „DA2“ des in 11 gezeigten Loches 211b. Wie in 13 gezeigt ist, sei angenommen, dass der Durchmesser „DT22“ des Teils, welcher von der Spitze 22a einen Abstand von „A1“ hat, gleich dem Durchmesser „DA2“ des Loches 211b in 11 ist. In diesem Fall kann das Loch 211b mit dem in 11 gezeigten Durchmesser „DA2“ erzeugt werden, indem das Loch vertieft wird, bis die Position erreicht wird, welche von der Spitze 22a einen Abstand von „A1“ hat, wo der Durchmesser gleich dem Durchmesser „DA2“ des Loches 211b in 11 ist, statt das Loch zu vertiefen, bis der Schneidkörper 222 erreicht wird, wo das Werkzeug 22 den maximalen Durchmesser „DT21“ hat. In einem solchen Fall ist das Werkzeug 22 in 13 ein Werkzeug, dessen Werkzeugdurchmesser „DT21“ mit dem Durchmesser „DA2“ des Loches 211b in 11 nicht übereinstimmt, welches jedoch zum Erzeugen des Loches 211b mit dem Durchmesser „DA2“ in 11 in Abhängigkeit des Maschinenbearbeitungspfads angewendet werden kann.
  • Daher enthält die Endforminformation eine Information zum Bestimmen des Durchmessers von Löchern, welche mit den Werkzeugen erzeugt werden können, welche aus der Verfügbares-Werkzeug-Information identifiziert werden. Beispiele der Endforminformation umfassen eine Information über den Werkzeugdurchmesser jedes Werkzeugs und eine Information darüber, ob das jeweilige Werkzeug einen Durchmesser erzeugen kann, der von dem Werkzeugdurchmesser verschieden ist. Die Information über den Werkzeugdurchmesser jedes Werkzeugs ist beispielsweise eine Information, welche „DT11“ oder „DT21“ der oben beschriebenen Werkzeuge entspricht. Die Information darüber, ob das jeweilige Werkzeug einen Durchmesser erzeugen kann, der von dem Werkzeugdurchmesser verschieden ist, ist beispielsweise eine Information darüber, ob das Werkzeug zum Fräsen designt ist, oder eine Information über den Werkzeugdurchmesser, welcher in Abhängigkeit des Abstands von der Spitze des Werkzeugs variiert.
  • Es ist zu beachten, dass die Information darüber, ob das Werkzeug zum Fräsen designt ist, eine Information sein kann, die durch einen Werkzeugtyp angegeben ist, oder eine Information darüber sein kann, ob das Werkzeug an seiner Seite eine Schneide hat. Des Weiteren kann die Information über den Werkzeugdurchmesser, welcher in Abhängigkeit des Abstands von der Spitze des Werkzeugs variiert, eine Information sein, in welcher ein Abstand von der Spitze des Werkzeugs mit dem Werkzeugdurchmesser an diesem Abstand assoziiert ist. In einem Fall, in welchem der Endteil des Werkzeugs, wie in 13 gezeigt, durch einen Kegel approximiert werden kann, kann die Information über den Werkzeugdurchmesser, welcher in Abhängigkeit des Abstands von der Spitze des Werkzeugs variiert, eine Information sein, welche eine Berechnungsformel speichert, die durch „r=h/cos(θ/2)×x/360“ angegeben ist, die auf dem Bodenradius r, der Höhe h, dem Scheitelwinkel θ und dem Mittelwinkel x des Segments des Kegels basiert, sodass der Durchmesser aus dem Radius der Bodenfläche des Kegels berechnet werden kann, indem der Abstand von der Spitze des Werkzeugs, beispielsweise oben beschriebenes „A1“, als die Höhe des Kegels geändert wird.
  • Wieder bezugnehmend auf 5 bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132, ob das Ergebnis aus Schritt S15 angibt, dass die Maschinenbearbeitungseinheit 2 ein geeignetes Werkzeug hat (Schritt S16). Als Reaktion auf die Bestimmung, dass es kein geeignetes Werkzeug gibt (Nein in Schritt S16), d. h., als Reaktion auf das Scheitern, ein zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser geeignetes Werkzeug in Schritt S15 auszuwählen, bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132, ob die Zweidimensionaler-Code-Umwandlungskonditionen geändert werden können (Schritt S17). Die Zweidimensionaler-Code-Umwandlungskonditionen enthalten das Fehlerkorrekturlevel und die Anzahl von Zellen, und es wird bestimmt, ob mindestens eines von diesen geändert werden kann. Als Reaktion auf die Bestimmung, dass die Zweidimensionaler-Code-Umwandlungskonditionen geändert werden können (Ja in Schritt S17), kehrt der Prozess zu Schritt S12 zurück. Dann werden die Schritte S12 bis S15 wiederholt durchgeführt, bis bestimmt wird, dass kein geeignetes Werkzeug verfügbar ist.
  • Nun werden Beispielprozesse beschrieben, in welchen es kein geeignetes Werkzeug gibt und die Zweidimensionaler-Code-Umwandlungskonditionen geändert werden können. Fälle, in denen es kein geeignetes Werkzeug gibt, umfassen Fälle, bei denen der Durchmesser der Löcher 211b zu klein ist, um mit dem verwendbaren Werkzeug erzeugt zu werden, und Fälle, in denen der Durchmesser der Löcher 211b zu groß ist, um mit dem verwendbaren Werkzeug erzeugt zu werden. Nachfolgend werden Prozeduren zum Auswählen eines geeigneten Werkzeugs für diese beiden Fälle beschrieben.
  • Zuerst, für den Fall, dass der Durchmesser der Löcher 211b zu klein ist, um mit dem verwendbaren Werkzeug erzeugt zu werden, kehrt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 zu Schritt S12 zurück, um die Zweidimensionaler-Code-Umwandlungskonditionen so zu ändern, dass der Durchmesser der Löcher 211b zunimmt. Gemäß einem Beispiel verringert die Maschinenbearbeitungskondition-Bestimmungseinheit 132 das Fehlerkorrekturlevel. Bei QR-Codes gilt: je höher das Fehlerkorrekturlevel, umso größer ist die Anzahl von Zellen. Insbesondere gilt: je höher das Fehlerkorrekturlevel, umso kleiner ist die Fläche einer einzelnen Zelle 201, welche Daten speichert. Durch Verringern des Fehlerkorrekturlevels nimmt daher die Anzahl von Zellen ab und die Fläche einer einzelnen Zelle 201 wird größer als vorher.
  • Für QR-Codes sind vier Standards eines Fehlerkorrekturlevels definiert. Insbesondere umfasst das Fehlerkorrekturlevel ein Level L mit einer Fehlerkorrekturfähigkeit von zirka 7 %, ein Level M mit einem Fehlerkorrekturlevel von zirka 15 %, ein Level Q mit einem Fehlerkorrekturlevel von zirka 25 % und ein Level H mit einem Fehlerkorrekturlevel von zirka 30 %. Wenn das aktuelle Fehlerkorrekturlevel das Level H ist, wird das Fehlerkorrekturlevel auf das Level Q geändert.
  • Dann werden Schritte S13 bis S15 auf gleiche Weise ausgeführt. Weil die Fläche einer einzelnen Zelle 201 größer als in dem Fall des vorher eingestellten Fehlerkorrekturlevels ist, werden dabei der Durchmesser der Löcher 211b und das Intervall zwischen den benachbarten Löchern 211b, welche in Schritt S14 berechnet werden, ebenfalls größer als vorher. Hierdurch ergibt sich eine erhöhte Wahrscheinlichkeit, dass es ein zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser geeignetes Werkzeug gibt. Der bisher beschriebene Prozess wird wiederholt, solange das Fehlerkorrekturlevel geändert werden kann.
  • Andererseits, wenn der Durchmesser der Löcher 211b zu groß ist, um mit dem nutzbaren Werkzeug erzeugt zu werden, kehrt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 zu Schritt S12 zurück, um die Zweidimensionaler-Code-Umwandlungskonditionen so zu ändern, dass der Durchmesser der Löcher 211b auf eine Größe reduziert wird, die mit dem verwendbaren Werkzeug gehandhabt werden kann. Gemäß einem Beispiel erhöht die Maschinenbearbeitungskondition-Bestimmungseinheit 132 die Anzahl von Zellen. Durch Erhöhen der Anzahl von Zellen wird die Fläche einer einzelnen Zelle 201 kleiner als vorher.
  • Dann werden die Schritte S13 bis S15 auf gleiche Weise ausgeführt. Weil die Fläche einer einzelnen Zelle 201 kleiner als in dem Fall der zuvor eingestellten Anzahl von Zellen ist, werden der Durchmesser der Löcher 211b und das Intervall zwischen den benachbarten Löchern 211b, welche in Schritt S14 berechnet werden, dabei ebenfalls kleiner als vorher. Daraus ergibt sich eine erhöhte Wahrscheinlichkeit, dass es ein zum Erzeugen der Löcher 211b mit dem reduzierten Durchmesser geeignetes Werkzeug gibt. Der soweit beschriebene Prozess wird wiederholt, solange die Anzahl von Zellen geändert werden kann.
  • Als Reaktion auf die Bestimmung in Schritt S17 hin, dass die Zweidimensionaler-Code-Umwandlungskonditionen nicht geändert werden können (Nein in Schritt S17), gibt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 eine Warnungsinformation aus, welche angibt, dass Bohren unter den in Schritt S11 bezogenen Konditionen nicht durchgeführt werden kann (Schritt S18). Fälle, in denen eine Maschinenbearbeitung selbst nach Ändern der Zweidimensionaler-Code-Umwandlungskonditionen nicht durchgeführt werden können, sind Fälle, in denen eine Maschinenbearbeitung selbst nach Verringern des Fehlerkorrekturlevels auf den geringsten Standard aller der möglichen Standards nicht durchgeführt werden kann, oder Fälle, in denen die Anzahl von Zellen nicht erhöht werden kann, ohne die Zeichenkette oder das Fehlerkorrekturlevel des zu erzeugenden zweidimensionalen Codes zu ändern. Eine Warnungsinformation kann eine beliebige Information sein, welche dem Nutzer eine Mitteilung gibt. In diesem Fall kann das numerische Steuerungsgerät 1 eine Mitteilungseinheit umfassen, welche eine Warnungsinformation ausgibt. Eine Warnungsinformation kann die Form von Buchstaben, Grafiken oder Klang annehmen. Ein Beispiel einer Mitteilungseinheit ist die Anzeigeeinheit 14. Des Weiteren kann das numerische Steuerungsgerät 1 eine Ausgabeeinheit umfassen, sodass ein Signal, welches eine Warnungsinformation enthält, über die Ausgabeeinheit an ein mit dem numerischen Steuerungsgerät 1 extern verbundenes Gerät ausgegeben werden kann. Ein Beispiel der Ausgabeeinheit ist die Kommunikationsschnittstelle 15. Dann endet der Prozess.
  • Als Reaktion auf die Bestimmung in Schritt S16 hin, dass es ein geeignetes Werkzeug gibt (Ja in Schritt S16), legt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 das ausgewählte Werkzeug als das zu verwendende Werkzeug fest (Schritt S19). Als Nächstes bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 einen Maschinenbearbeitungspfad basierend auf dem Durchmesser der Löcher 211b und dem Intervall zwischen den benachbarten Löchern 211b, welche in Schritt S14 berechnet wurden, dem in Schritt S19 als zu verwenden bestimmten Werkzeug und der Form des in Schritt S13 erzeugten zweidimensionalen Codes (Schritt S20). Vorliegend bestimmt die Maschinenbearbeitungskondition-Bestimmungseinheit 132 den Maschinenbearbeitungspfad unter Berücksichtigung der Endform des zu verwendenden Werkzeugs. Das heißt, die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmt den Maschinenbearbeitungspfad unter Verwendung der Endforminformation, welche dem zu verwendenden Werkzeug zugeordnet ist, die aus der Werkzeuginformation 121 bezogen wird. Gemäß einem Beispiel ist der Maschinenbearbeitungspfad ein Pfad zum Erzeugen der Löcher 211b, welche die schwarzen Zellen 201b in den Designdaten repräsentieren, des zweidimensionalen Codes mit dem als zu verwenden ausgewählten Werkzeug.
  • Der Maschinenbearbeitungspfad umfasst die Reihenfolge, in welcher die Löcher 211b erzeugt werden, und die Bohrtiefe des Endes des Werkzeugs bezogen auf die Oberfläche des Werkstücks zum Erzeugen der Löcher 211b. In dem Fall, in welchem das in 12 gezeigte Werkzeug 21 mit dem konstanten Werkzeugdurchmesser verwendet wird, kann die Bohrtiefe des Werkzeugs 21 auf eine willkürliche Position eingestellt sein. Andererseits kann in dem Fall, in welchem mit dem Endteil 221 gebohrt wird, dessen Durchmesser, wie in 13 gezeigt, zu der Spitze 22a hin abnimmt, das Loch 211b mit einer gewünschten Größe erzeugt werden, indem die Bohrtiefe des Werkzeugs 22 geeignet eingestellt wird. Beispielsweise ist in dem Fall, in welchem eine Maschinenbearbeitung an der Position durchgeführt wird, an welcher der Abstand von der Spitze 22a „A1“ ist, die Bohrtiefe auf „A1“ eingestellt, und in dem Fall, in welchem eine Maschinenbearbeitung an der Position durchgeführt wird, an welcher der Abstand von der Spitze 22a „A2“ ist, ist die Bohrtiefe auf „A2“ eingestellt.
  • Wenn das zu verwendende Werkzeug ein zum Fräsen designtes Werkzeug ist, kann der Maschinenbearbeitungspfad so bestimmt werden, dass die zueinander benachbarten Löcher 211b durchgängig erzeugt werden, ohne das an den Lochboden abgesenkte Werkzeug beim Erzeugen der zueinander benachbarten Löcher 211b anzuheben. Das heißt, der Maschinenbearbeitungspfad kann so bestimmt werden, dass das Werkzeug auf den Lochboden abgesenkt wird und danach hin zu der benachbarten Zelle 201 bewegt wird, um das Schneiden durchzuführen. Daher kann die Maschinenbearbeitungsdauer im Vergleich zu dem Fall reduziert werden, in welchem das auf den Lochboden abgesenkte Werkzeug jedes Mal angehoben wird, wenn eine nächste Maschinenbearbeitung durchgeführt wird. Zusätzlich zu den oben beschriebenen Konditionen kann des Weiteren, wenn der Werkzeugdurchmesser des zu verwendenden Werkzeugs kleiner als der Durchmesser der Löcher 211b ist, der Maschinenbearbeitungspfad so bestimmt werden, dass die Löcher 211b geschnitten und auf den Durchmesser der Löcher 211b erweitert werden. Selbst wenn die Löcher 211b einen großen Durchmesser haben, welcher mit keinem Werkzeugdurchmesser übereinstimmt, können die Löcher 211b daher unter Verwendung eines Werkzeugs erzeugt werden, welches schmaler als der Durchmesser der Löcher 211b ist. Dabei können die nachgeschnittenen und erweiterten Löcher 211b eine perfekte Kreisform oder eine quadratische Form haben. Es ist zu beachten, dass ein zum Fräsen designtes Werkzeug beispielsweise ein Schaftfräser oder dergleichen sein kann.
  • Als Nächstes wird das Werkzeug, welches in der Maschinenbearbeitungseinheit 2 zur Verwendung zur Maschinenbearbeitung bereitgestellt ist, durch das in Schritt S19 zu verwenden bestimmte Werkzeug ersetzt (Schritt S21). Vorliegend kann die Werkzeugersetzung durch den Nutzer manuell durchgeführt werden oder kann, wenn die Maschinenbearbeitungseinheit 2 eine Werkzeugersetzungsfunktion hat, durch die Maschinenbearbeitungseinheit 2 unter der Steuerung der Maschinenbearbeitungssteuerungseinheit 133 automatisch durchgeführt werden. Danach steuert die Maschinenbearbeitungssteuerungseinheit 133 die Maschinenbearbeitungseinheit 2 so, dass Schneiden basierend auf dem in Schritt S20 bestimmten Maschinenbearbeitungspfad durchgeführt wird (Schritt S22). Dann endet der Prozess.
  • In dem numerischen Steuerungsgerät 1 gemäß der ersten Ausführungsform wird ein zweidimensionaler Code aus einer Information erzeugt, welche eine Zeichenkette enthält, und der Durchmesser der Löcher 211b, welche der Form des erzeugten zweidimensionalen Codes entsprechen, und das Intervall zwischen den benachbarten Löchern 211b werden berechnet. Des Weiteren wird als das zu verwendende Werkzeug ein Werkzeug ausgewählt, welches zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser geeignet ist, und ein Maschinenbearbeitungspfad wird basierend auf dem Durchmesser der Löcher 211b, dem Intervall zwischen den benachbarten Löchern 21 1b, dem zu verwendenden Werkzeug und der Form des zweidimensionalen Codes bestimmt. Dann wird der zweidimensionale Code auf dem Werkstück basierend auf dem Maschinenbearbeitungspfad gebildet. Dies ist dahingehend vorteilhaft, dass die Löcher 211b mit einem der für die Maschinenbearbeitungseinheit 2 verfügbaren Werkzeuge erzeugt werden können. Zum Beispiel, selbst in einem Fall, in welchem die Löcher 211b mit einem Durchmesser berechnet werden, der kleiner als ein Werkzeugdurchmesser ist, und wenn es das Werkzeug 22 gibt, dessen Werkzeugdurchmesser größer als der Durchmesser der Löcher 211b ist und dessen Endteil 221 von dem Schneidkörper 222 hin zu der Spitze 22a schmaler wird, wird der Maschinenbearbeitungspfad so eingestellt, dass Bohren mit dem Endteil 221 des Werkzeugs 22 an der Position durchgeführt wird, an welcher ein Durchmesser gleich dem Durchmesser der Löcher 211b ist. Daher können die Löcher 211b mit einem Durchmesser, der kleiner als ein Werkzeugdurchmesser ist, erzeugt werden, ohne ein Werkzeug vorzubereiten, welches einen Werkzeugdurchmesser hat, welcher mit dem Durchmesser der Löcher 211b übereinstimmt. Das heißt, es ist möglich, beim Erzeugen eines zweidimensionalen Codes auf einem Werkstück mittels Bohren von den an der Maschinenbearbeitungseinheit 2 bereitgestellten verfügbaren Werkzeugen so weit wie möglich Gebrauch zu machen. Hierdurch ist es möglich, die Arbeit eines Nutzers zur Maschinenbearbeitungsvorbereitung des numerischen Steuerungsgeräts 1 zu reduzieren.
  • Des Weiteren werden in einem Fall, in welchem keines der für die Maschinenbearbeitungseinheit 2 verfügbaren Werkzeuge zum Erzeugen der Löcher 211b mit dem berechneten Durchmesser geeignet ist, die Zweidimensionaler-Code-Umwandlungskonditionen so geändert, dass der zweidimensionale Code neu erzeugt und ein anderer Durchmesser für die Löcher 211b berechnet wird. Daher ist es möglich, die Wahrscheinlichkeit zu erhöhen, dass aus den für die Maschinenbearbeitungseinheit 2 verfügbaren Werkzeugen ein Werkzeug ausgewählt wird, und das Auftreten einer Situation zu verhindern oder zu reduzieren, in welcher der Nutzer ein neues Werkzeug vorbereiten muss. Es ist auch möglich, das Aufkommen der Kosten zum Vorbereiten eines neuen Werkzeugs zum Bilden der Löcher 211b zu verhindern oder zu reduzieren.
  • Um einen erkennbaren zweidimensionalen Code auf Grundlage des zur Maschinenbearbeitung vorgesehenen Raums zu erzeugen, ist es ferner erforderlich, Maschinenbearbeitungskonditionen, wie beispielsweise die Größe von Löchern und das Intervall zwischen Löchern, geeignet einzustellen. Es erfordert Zeit und Aufwand, dies manuell zu implementieren. Hingegen werden in dem numerischen Steuerungsgerät 1 gemäß der ersten Ausführungsform der Durchmesser und das Intervall der Löcher 211b so berechnet, dass das Verhältnis zwischen dem Durchmesser und dem Intervall der Löcher 211b innerhalb eines vorbestimmten Bereichs ist. Dies ist dahingehend vorteilhaft, dass die Erkennungsrate des zweidimensionalen Codes in dem Prozess des Erkennens des erfassten zweidimensionalen Codes verbessert und die Arbeit des Nutzers reduziert werden kann.
  • Zweite Ausführungsform
  • 14 ist ein Blockdiagramm, welches eine beispielhafte Konfiguration eines numerischen Steuerungsgeräts gemäß der zweiten Ausführungsform zeigt. In der zweiten Ausführungsform umfasst das numerische Steuerungsgerät 1 ferner ein Maschinelles-Lernen-Gerät 30. Das Maschinelles-Lernen-Gerät 30 umfasst eine Zustandbeobachtungseinheit 31, eine Datenbezugseinheit 32 und eine Lerneinheit 33.
  • Die Zustandbeobachtungseinheit 31 beobachtet als Zustandsvariablen den Durchmesser der zu erzeugenden Löcher 211b, um die Zellen 201 des zweidimensionalen Codes zu repräsentieren, das Intervall zwischen benachbarten Löchern, den Maschinenbearbeitungspfad zum Bilden des zweidimensionalen Codes und die Endform des zu verwendenden Werkzeugs. Die Zustandbeobachtungseinheit 31 gibt die Zustandsvariablen an die Lerneinheit 33 aus.
  • Die Datenbezugseinheit 32 bezieht als Trainingsdaten eine Information darüber, ob der zweidimensionale Code erkennbar ist, welcher durch Schneiden basierend auf den Maschinenbearbeitungskonditionen erzeugt wurde, welche den durch die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmten Maschinenbearbeitungspfad enthalten. Die Datenbezugseinheit 32 gibt die Trainingsdaten an die Lerneinheit 33 aus. Gemäß einem Beispiel kann das Maschinelles-Lernen-Gerät 30 eine Erkennungseinheit umfassen, welche bestimmt, ob der zweidimensionale Code erkennbar ist, und die Datenbezugseinheit 32 kann das Ergebnis dieser Bestimmung empfangen. Alternativ kann ein anderes Gerät bestimmen, ob der zweidimensionale Code erkennbar ist, und die Datenbezugseinheit 32 kann das Ergebnis über eine Kommunikationsverbindung oder über eine Nutzereingabe empfangen. In der zweiten Ausführungsform ist die Erkennungseinheit in der Zeichnung weggelassen.
  • Die Lerneinheit 33 lernt, ob der zweidimensionale Code erkennbar ist, durch sogenanntes überwachtes Lernen, beispielsweise basierend auf einem neuronalen Netzmodell. Vorliegend bezeichnet überwachtes Lernen ein Modell, welches der Lerneinheit 33 eine große Anzahl von Datensätzen bereitstellt, um die Lerneinheit 33 zu veranlassen, Merkmale der Datensätze zu lernen und Ergebnisse aus Eingaben zu schätzen. Ein Datensatz sind Daten, in welchen Zustandsvariablen und Bestimmungsdaten miteinander assoziiert sind, und umfasst eine Eingabe und ein Label, das heißt ein Ergebnis, welches der Eingabe zugeordnet sind. In diesem Beispiel umfasst die Eingabe den Durchmesser und das Intervall der Löcher 211b, den Maschinenbearbeitungspfad und die Endform des zu verwendenden Werkzeugs, welche aus der Zustandbeobachtungseinheit 31 ausgegeben werden, und das Label umfasst eine von der Datenbezugseinheit 32 ausgegebene Information darüber, ob der gebildete zweidimensionale Code erkennbar ist.
  • 15 ist ein Diagramm, welches eine beispielhafte Konfiguration eines neuronalen Netzes zeigt, welches in der zweiten Ausführungsform zum Lernen verwendet wird. Das neuronale Netz 500 umfasst eine Eingabeschicht 510, welche aus einer Vielzahl von Neuronen 511 besteht, eine Zwischenschicht 520, welche aus einer Vielzahl von Neuronen 521 besteht, und eine Ausgabeschicht 530, welche aus einem oder mehr Neuronen 531 besteht. Die Zwischenschicht 520 wird auch als versteckte Schicht bezeichnet. Die Anzahl von Zwischenschichten 520 kann eins oder zwei oder mehr sein.
  • Wie in 15 gezeigt ist, lernt das neuronale Netz 500, ob der erzeugte zweidimensionale Code erkennbar ist, durch sogenanntes überwachtes Lernen auf Grundlage des Datensatzes, welcher basierend auf der Kombination eines Durchmessers 501 der Löcher 211b, einem Intervall 502 zwischen den Löchern 211b, einem Maschinenbearbeitungspfad 503 und einer Endform 504 des verwendeten Werkzeugs, welche durch die Zustandbeobachtungseinheit 31 beobachtet werden, und einer Information 541 darüber, ob der gebildete zweidimensionale Code erkennbar ist, welche durch die Datenbezugseinheit 32 bezogen wird, erzeugt ist.
  • Insbesondere lernt das neuronale Netz 500 durch Anpassen der Gewichte, mit welchen die von den Neuronen 511 und 521 ausgegebenen Werte multipliziert werden. Die Anpassung wird so vorgenommen, dass Ausgaben aus der Ausgabeschicht 530 als Reaktion auf Eingaben in die Eingabeschicht 510, welche den Durchmesser 501 der Löcher 211b, das Intervall 502 zwischen den Löchern 211b, den Maschinenbearbeitungspfad 503 und die Endform 504 des verwendeten Werkzeugs umfassen, die Trainingsdaten, nämlich die Information 541 darüber, ob der gebildete zweidimensionale Code erkennbar ist, anstreben.
  • Die Maschinenbearbeitungskondition-Bestimmungseinheit 132 bestimmt den Durchmesser und das Intervall der Löcher 211b und/oder den Maschinenbearbeitungspfad basierend auf dem Lernergebnis.
  • Das neuronale Netz 500 kann auch durch sogenanntes unüberwachtes Lernen lernen, ob der gebildete zweidimensionale Code erkennbar ist. Unüberwachtes Lernen ist eine Technik zum Bereitstellen einer großen Anzahl von lediglich Eingabedaten an das Maschinelles-Lernen-Gerät 30, um zu lernen, wie die Eingabedaten verteilt sind, und ein Gerät zu lernen, welches Komprimierung, Klassifikation, Formung oder dergleichen an den Eingabedaten ohne entsprechende Trainingsausgabedaten durchführt.
  • Ein Verfahren des unüberwachten Lernens ist Clustern, bei welchem Eingabedaten basierend auf der Ähnlichkeit der Eingabedaten gruppiert werden. Die Lerneinheit 33 verwendet das Ergebnis des Clustern, um Ausgabezuordnungen so durchzuführen, dass ein Kriterium optimiert wird, wodurch ein Ausgabevorhersagemodell erzeugt wird.
  • Des Weiteren kann die Lerneinheit 33 die Anwesenheit oder Abwesenheit einer Anomalie oder Messergebnisse durch teilüberwachtes Lernen lernen, das heißt einem Modell, bei welchem unüberwachtes Lernen und überwachtes Lernen kombiniert sind. Teilüberwachtes Lernen ist eine Art des Lernens, bei welcher einige Eingabedaten den Trainingsdaten, welche den Eingabedaten entsprechen, gegeben werden, während andere Trainingsdaten nicht gegeben werden.
  • Des Weiteren kann die Lerneinheit 33 auf Grundlage der Datensätze, die für eine Vielzahl von numerischen Steuerungsgeräten 1 erzeugt sind, lernen, ob der gebildete zweidimensionale Code erkennbar ist. Es ist zu beachten, dass die Lerneinheit 33 Datensätze von einer Vielzahl von numerischen Steuerungsgeräten 1, die an demselben Standort verwendet werden, beziehen kann oder Datensätze von einer Vielzahl von numerischen Steuerungsgeräten 1, welche unabhängig an verschiedenen Standorten arbeiten, beziehen kann.
  • Nachdem das Sammeln von Datensätzen von einem oder mehr numerischen Steuerungsgeräten 1 begonnen hat, kann des Weiteren ein neues numerisches Steuerungsgerät 1 zu der Liste von numerischen Steuerungsgeräten 1, von denen Datensätze gesammelt werden, hinzugefügt werden. Nachdem das Sammeln von Datensätzen von einer Vielzahl von numerischen Steuerungsgeräten 1 begonnen wurde, können des Weiteren einige der Vielzahl von numerischen Steuerungsgeräten 1 aus der Liste von numerischen Steuerungsgeräten 1, von welchen Datensätze gesammelt werden, entfernt werden.
  • Des Weiteren kann die Lerneinheit 33, welche aus einem numerischen Steuerungsgerät 1 gelernt hat, an einem anderen numerischen Steuerungsgerät 1 angebracht werden. Die an dem anderen numerischen Steuerungsgerät 1 angebrachte Lerneinheit 33 kann das Ausgabevorhersagemodell durch Neulernen von dem anderen numerischen Steuerungsgerät 1 aktualisieren.
  • Die Lerneinheit 33 kann einen auf Deep Learning basierenden Lernalgorithmus verwenden, welcher eine Merkmalextraktion lernt. Die Lerneinheit 33 kann maschinelles Lernen auf Grundlage jedes bekannten Verfahrens, das von Deep Learning verschieden ist, ausführen, beispielsweise genetischer Programmierung, funktionallogischer Programmierung, einer Supportvektormaschine oder dergleichen.
  • Es ist zu beachten, dass das Beispiel der 14 angibt, dass das Maschinelles-Lernen-Gerät 30 in dem numerischen Steuerungsgerät 1 enthalten ist, jedoch kann das Maschinelles-Lernen-Gerät 30 als ein von dem numerischen Steuerungsgerät 1 separates Gerät konfiguriert sein und über ein Netzwerk mit dem numerischen Steuerungsgerät 1 verbunden sein. Alternativ kann das Maschinelles-Lernen-Gerät 30 auf einem Cloudserver bereitgestellt sein.
  • In der zweiten Ausführungsform umfasst das numerische Steuerungsgerät 1 ferner das Maschinelles-Lernen-Gerät 30, welches aus dem Durchmesser und dem Intervall der Löcher 211b, dem Maschinenbearbeitungspfad und der Endform des zu verwendenden Werkzeugs vorhersagt, ob der gebildete zweidimensionale Code erkennbar ist. Daher ist es möglich, vor der tatsächlichen Maschinenbearbeitung festzustellen, ob der zu erzeugende zweidimensionale Code erkennbar ist. Durch Bestimmen des Durchmessers und des Intervalls der Löcher 211b, des Maschinenbearbeitungspfads und der Endform des zu verwendenden Werkzeugs derart, dass ein erkennbarer zweidimensionaler Code erhalten werden kann, ist es zudem möglich, die Erkennungsrate des gebildeten zweidimensionalen Codes weiter zu verbessern. Dabei können der Durchmesser und das Intervall der Löcher 211b, der Maschinenbearbeitungspfad und die Endform des zu verwendenden Werkzeugs durch den Nutzer basierend auf der von der Lerneinheit 33 ausgegebenen Information darüber, ob der gebildete zweidimensionale Code erkennbar ist, manuell eingegeben werden oder können durch die Maschinenbearbeitungskondition-Bestimmungseinheit 132 mit einem einzigen Befehl an das numerische Steuerungsgerät 1 automatisch bestimmt werden.
  • Die in den oben genannten Ausführungsformen beschriebenen Konfigurationen geben Beispiele an. Die Ausführungsformen können mit einer anderen wohlbekannten Technik und miteinander kombiniert werden, und einige der Konfigurationen können weggelassen oder in einem Umfang geändert werden, der nicht über den Geist hinausgeht.
  • Bezugszeichenliste
  • 1
    numerisches Steuerungsgerät;
    2
    Maschinenbearbeitungseinheit;
    11
    Eingabeeinheit;
    12
    Speicher;
    13
    CPU;
    14
    Anzeigeeinheit;
    15
    Kommunikationsschnittstelle;
    21, 22
    Werkzeug;
    22a
    Spitze;
    30
    Maschinelles-Lernen-Gerät;
    31
    Zustandbeobachtungseinheit;
    32
    Datenbezugseinheit;
    33
    Lerneinheit;
    121
    Werkzeuginformation;
    131
    Zweidimensionaler-Code-Erzeugungseinheit;
    132
    Maschinenbearbeitungskondition-Bestimmungseinheit;
    133
    Maschinenbearbeitungssteuerungseinheit;
    200
    QR-Code;
    201
    Zelle;
    201a
    weiße Zelle;
    201b
    schwarze Zelle;
    202a
    Positionsdetektionsmuster;
    202b
    Datenbereich;
    211a
    nicht-gebohrter Bereich;
    211b
    Loch;
    221
    Endteil;
    222
    Schneidkörper;
    230
    Maschinenbearbeitungsoberfläche;
    500
    neuronales Netz;
    510
    Eingabeschicht;
    511, 521, 531
    Neuron;
    520
    Zwischenschicht;
    530
    Ausgabeschicht.
  • 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 2016201075 [0003]

Claims (11)

  1. Numerisches Steuerungsgerät, umfassend: eine Speichereinheit, welche eine Verfügbares-Werkzeug-Information und eine Endforminformation speichert, wobei die Verfügbares-Werkzeug-Information für eine Maschinenbearbeitungseinheit verfügbare Werkzeuge angibt, wobei die Endforminformation eine Endform jedes der verfügbaren Werkzeuge angibt; eine Zweidimensionaler-Code-Erzeugungseinheit, welche durch zweidimensionales Codieren einer Eingabeinformation einen zweidimensionalen Code erzeugt; eine Maschinenbearbeitungskondition-Bestimmungseinheit, welche: auf Grundlage einer Anzahl von Zellen, welche eine Gesamtanzahl von den zweidimensionalen Code bildenden Zellen ist, und einer Maschinenbearbeitungsbereich-Information, welche eine Größe eines Bereiches eines Werkstücks enthält, auf welchem der zweidimensionale Code zu bilden ist, einen Durchmesser von Löchern, welche den Zellen des zweidimensionalen Codes entsprechen, und ein Intervall zwischen benachbarten Löchern der Löcher berechnet; eines von zum Erzeugen der Löcher mit dem Durchmesser geeigneten Werkzeugen basierend auf der Verfügbares-Werkzeug-Information und der Endforminformation auswählt; und einen Maschinenbearbeitungspfad basierend auf dem Durchmesser und dem Intervall der Löcher, dem ausgewählten Werkzeug und einer Form des zweidimensionalen Codes bestimmt, wobei der Maschinenbearbeitungspfad ein Pfad ist, entlang welchem der zweidimensionale Code auf dem Werkstück unter Verwendung des ausgewählten Werkzeugs gebildet wird; und eine Maschinenbearbeitungssteuerungseinheit, welche die Maschinenbearbeitungseinheit basierend auf dem Maschinenbearbeitungspfad steuert, um hierdurch eine Maschinenbearbeitung durchzuführen, welche die Form des zweidimensionalen Codes auf dem Werkstück erzeugt.
  2. Numerisches Steuerungsgerät gemäß Anspruch 1, wobei die Maschinenbearbeitungskondition-Bestimmungseinheit konfiguriert ist: beim Auswählen des Werkzeugs auf die Endforminformation Bezug zu nehmen, um hierdurch ein Werkzeug auszuwählen, dessen Durchmesser von einem Schneidkörper des Werkzeugs hin zu einer Spitze abnimmt und an einer ersten Position, welche einen ersten Abstand von der Spitze hat, mit dem Durchmesser der Löcher übereinstimmt; und beim Bestimmen des Maschinenbearbeitungspfads den Maschinenbearbeitungspfad so zu bestimmen, dass Bohren an der ersten Position des ausgewählten Werkzeugs durchgeführt wird.
  3. Numerisches Steuerungsgerät gemäß Anspruch 1, wobei die Maschinenbearbeitungskondition-Bestimmungseinheit beim Bestimmen des Maschinenbearbeitungspfads den Maschinenbearbeitungspfad so bestimmt, dass, wenn als Teil der Maschinenbearbeitung Bohren an einer Position einer Zelle, an welcher die Maschinenbearbeitung durchgeführt wird, durchgeführt wird, ein durch das Bohren gebildetes Loch erweitert wird.
  4. Numerisches Steuerungsgerät gemäß Anspruch 1 oder 2, wobei, wenn als Teil der Maschinenbearbeitung an einer ersten Zelle Bohren durchzuführen ist und das Bohren auch an einer zu der ersten Zelle benachbarten zweiten Zelle durchzuführen ist, die Maschinenbearbeitungskondition-Bestimmungseinheit den Maschinenbearbeitungspfad so bestimmt, dass nach Durchführung des Bohrens an der ersten Zelle Schneiden hin zu der zweiten Zelle durchgeführt wird.
  5. Numerisches Steuerungsgerät gemäß einem der Ansprüche 1 bis 4, wobei die Maschinenbearbeitungskondition-Bestimmungseinheit beim Berechnen des Durchmessers und des Intervalls der Löcher den Durchmesser und das Intervall der Löcher so berechnet, dass ein Verhältnis des Durchmessers und des Intervalls der Löcher innerhalb eines vorbestimmten Bereichs ist.
  6. Numerisches Steuerungsgerät gemäß einem der Ansprüche 1 bis 5, wobei die Zweidimensionaler-Code-Erzeugungseinheit den zweidimensionalen Code basierend auf Umwandlungskonditionen erzeugt, welche ein Fehlerkorrekturlevel für den zweidimensionalen Code und die Anzahl der Zellen enthalten, und die Maschinenbearbeitungskondition-Bestimmungseinheit die Umwandlungskonditionen ändert, wenn kein zum Erzeugen der Löcher mit dem berechneten Durchmesser geeignetes Werkzeug auswählbar ist.
  7. Numerisches Steuerungsgerät gemäß Anspruch 6, wobei die Maschinenbearbeitungskondition-Bestimmungseinheit das Fehlerkorrekturlevel verringert, wenn ein Durchmesser der Werkzeuge größer als der Durchmesser der Löcher ist.
  8. Numerisches Steuerungsgerät gemäß Anspruch 6, wobei die Maschinenbearbeitungskondition-Bestimmungseinheit die Anzahl von Zellen erhöht, wenn ein Durchmesser der Werkzeuge kleiner als der Durchmesser der Löcher ist.
  9. Numerisches Steuerungsgerät gemäß einem der Ansprüche 1 bis 8, wobei die Maschinenbearbeitungssteuerungseinheit die Maschinenbearbeitungseinheit steuert, auf das durch die Maschinenbearbeitungskondition-Bestimmungseinheit ausgewählte Werkzeug zu wechseln.
  10. Numerisches Steuerungsgerät gemäß einem der Ansprüche 1 bis 9, ferner umfassend: eine Zustandbeobachtungseinheit, welche als Zustandsvariablen den Durchmesser der Löcher, das Intervall, den Maschinenbearbeitungspfad und eine Endform des ausgewählten Werkzeugs beobachtet; eine Datenbezugseinheit, welche Trainingsdaten bezieht, welche Daten sind, welche angeben, ob der auf dem Werkstück erzeugte zweidimensionale Code erkennbar ist; und eine Lerneinheit, welche auf Grundlage eines Datensatzes, welcher basierend auf einer Kombination aus den Trainingsdaten und den Zustandsvariablen, welche den Durchmesser der Löcher, das Intervall, den Maschinenbearbeitungspfad und die Endform des ausgewählten Werkzeugs umfassen, erzeugt ist, lernt, ob der zweidimensionale Code erkennbar ist, wobei die Maschinenbearbeitungskondition-Bestimmungseinheit mindestens eines aus dem Durchmesser der Löcher, dem Intervall und dem Maschinenbearbeitungspfad basierend auf einem Ergebnis des Lernens durch die Lerneinheit bestimmt.
  11. Numerisches Steuerungsverfahren, umfassend: einen Schritt des Erzeugens eines zweidimensionalen Codes durch zweidimensionales Codieren einer Eingabeinformation; einen Schritt des Berechnens, auf Grundlage einer Anzahl von den zweidimensionalen Code bildenden Zellen und einer Maschinenbearbeitungsbereich-Information, welche eine Größe eines Bereiches eines Werkstücks enthält, auf welchem der zweidimensionale Code zu bilden ist, eines Durchmessers von Löchern, welche den Zellen des zweidimensionalen Codes entsprechen, und eines Intervalls zwischen benachbarten Löchern der Löcher; einen Schritt des Auswählens eines zum Erzeugen der Löcher mit dem Durchmesser geeigneten Werkzeugs basierend auf einer Verfügbares-Werkzeug-Information und einer Endforminformation, wobei die Verfügbares-Werkzeug-Information für eine Maschinenbearbeitungseinheit verfügbare Werkzeuge angibt, wobei die Endforminformation eine Endform jedes der verfügbaren Werkzeuge angibt; einen Schritt des Bestimmens eines Maschinenbearbeitungspfads basierend auf dem Durchmesser und dem Intervall der Löcher, dem ausgewählten Werkzeug und einer Form des zweidimensionalen Codes, wobei der Maschinenbearbeitungspfad ein Pfad ist, entlang welchem der zweidimensionale Code auf dem Werkstück unter Verwendung des ausgewählten Werkzeugs gebildet wird; und einen Schritt des Steuerns der Maschinenbearbeitungseinheit basierend auf dem Maschinenbearbeitungspfad, um hierdurch eine Maschinenbearbeitung durchzuführen, welche die Form des zweidimensionalen Codes auf dem Werkstück erzeugt.
DE112020005416.0T 2020-01-15 2020-01-15 Numerisches Steuerungsgerät und numerisches Steuerungsverfahren Pending DE112020005416T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/001118 WO2021144891A1 (ja) 2020-01-15 2020-01-15 数値制御装置および数値制御方法

Publications (1)

Publication Number Publication Date
DE112020005416T5 true DE112020005416T5 (de) 2022-08-25

Family

ID=72333524

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020005416.0T Pending DE112020005416T5 (de) 2020-01-15 2020-01-15 Numerisches Steuerungsgerät und numerisches Steuerungsverfahren

Country Status (4)

Country Link
JP (1) JP6752398B1 (de)
CN (1) CN114902148B (de)
DE (1) DE112020005416T5 (de)
WO (1) WO2021144891A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI829148B (zh) * 2022-04-25 2024-01-11 上博科技股份有限公司 主動式整合刀具資料與加工條件之暖機時間控制方法
WO2024004041A1 (ja) * 2022-06-28 2024-01-04 ファナック株式会社 加工時間推定装置、制御装置及びプログラム
WO2024004046A1 (ja) * 2022-06-28 2024-01-04 ファナック株式会社 加工制御装置及びプログラム
JP2024033059A (ja) * 2022-08-30 2024-03-13 スター精密株式会社 工作機械、及び、管理システム
WO2024079784A1 (ja) * 2022-10-11 2024-04-18 ファナック株式会社 数値制御装置および工作機械

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016201075A (ja) 2015-04-14 2016-12-01 株式会社Kmc Nc制御プログラム、nc制御装置、nc加工システム、nc制御方法、二次元コードの製造方法、二次元コード及び金属部品

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3019614B2 (ja) * 1992-07-20 2000-03-13 松下電器産業株式会社 ラベルと印刷配線基板と符号の形成方法
JP3010293B1 (ja) * 1999-01-28 2000-02-21 一男 佐藤 二次元コ―ドの形成方法
JP2008183706A (ja) * 2003-01-31 2008-08-14 Fujitsu Ltd 加工制御装置、工具決定方法および工具決定プログラム
US7640074B2 (en) * 2007-11-13 2009-12-29 The Boeing Company Method and apparatus for generation of datamatrix barcodes utilizing numerical control drilling patterns
CN101700584B (zh) * 2009-07-31 2011-02-09 南车戚墅堰机车车辆工艺研究所有限公司 平面网纹加工方法
CN103116316B (zh) * 2013-01-06 2015-07-15 兰州交通大学 一种适应刀具类型或尺寸变化的数控加工控制方法
US10335842B2 (en) * 2014-10-03 2019-07-02 Larry J. Costa Method and apparatus for encoding data on a work piece
CN104317249B (zh) * 2014-11-03 2017-02-01 南京航空航天大学 基于特征的板类零件槽特征自动分组加工方法
JP6108639B1 (ja) * 2015-10-14 2017-04-05 株式会社Kmc 識別板及びその製造方法
KR20190013993A (ko) * 2016-07-15 2019-02-11 가부시키가이샤 마키노 후라이스 세이사쿠쇼 가공 프로그램 생성 장치 및 가공 방법
JP6557198B2 (ja) * 2016-09-06 2019-08-07 ファナック株式会社 数値制御装置
CN109318051A (zh) * 2018-10-17 2019-02-12 芜湖常瑞汽车部件有限公司 一种曲面零件数控加工定位方法
CN109794988A (zh) * 2019-02-13 2019-05-24 深南电路股份有限公司 穿孔二维码的加工方法、装置及计算机可读存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016201075A (ja) 2015-04-14 2016-12-01 株式会社Kmc Nc制御プログラム、nc制御装置、nc加工システム、nc制御方法、二次元コードの製造方法、二次元コード及び金属部品

Also Published As

Publication number Publication date
WO2021144891A1 (ja) 2021-07-22
CN114902148A (zh) 2022-08-12
JPWO2021144891A1 (de) 2021-07-22
JP6752398B1 (ja) 2020-09-09
CN114902148B (zh) 2023-08-22

Similar Documents

Publication Publication Date Title
DE112020005416T5 (de) Numerisches Steuerungsgerät und numerisches Steuerungsverfahren
DE102018105334B4 (de) Bildverarbeitungsvorrichtung und Bildverarbeitungsverfahren zur Berechnung der Bildwahrscheinlichkeit eines aus einem Eingangsbild erfassten Zielobjekts
DE102005054650B4 (de) NC-Lochbearbeitungs-Programmiervorrichtung
DE102017002996A1 (de) Maschinenlernvorrichtung, die ein lernen unter verwendung eines simulationsergebnisses durchführt, maschinensystem, herstellungssystem und maschinenlernverfahren
DE102016120559A1 (de) Verfahren und System zur Steuerung eines Roboters
DE102017210692B4 (de) Lebensdauerbestimmungsvorrichtung; Lebensdauerbestimmungsverfahren, und Programm für Schneidwerkzeug
DE102005046747B3 (de) Verfahren zum rechnergestützten Lernen eines neuronalen Netzes und neuronales Netz
DE4432002A1 (de) Verfahren zur Rekonstruktion von in Rasterform vorliegenden Linienstrukturen
WO2002021427A2 (de) Auswerten von kantenrichtungsinformation
EP4172556B1 (de) Vorrichtung zur lage- und positionserkennung von markierungen und computerprogrammprodukt
EP2787485B1 (de) Verfahren und Vorrichtung zur automatischen Fehlerstellenerkennung bei biegeschlaffen Körpern
DE112019007889T5 (de) Bearbeitungsprogramm-umwandlungseinrichtung, numerische-steuereinrichtung und bearbeitungsprogramm-umwandlungsverfahren
EP3596564A1 (de) Biegeschritt-auswahlverfahren, ausgeführt auf einem steuerungssystem einer biegemaschine
DE102011085531A1 (de) Vorrichtung und Verfahren zum automatischen Extrahieren einer Sweep/Extrusion/Revolve Merkmal Form von atypischen digitalen Daten
DE102020126993A1 (de) Adaptive bahnerzeugung für bearbeitung mit cnc-steuerung
DE102019107363B4 (de) Verfahren und System zum Bestimmen einer Eigenschaft einer Maschine, insbesondere einer Werkzeugmaschine, ohne messtechnisches Erfassen der Eigenschaft sowie Verfahren zum Bestimmen eines voraussichtlichen Qualitätszustands eines mit einer Maschine gefertigten Bauteils
DE10044516A1 (de) Prozeßausrüstungsauswahlsystem und Auswahlverfahren für Prozeßausrüstung
DE202022106040U1 (de) Handschrifterkennungssystem auf der Grundlage eines neuronalen Netzwerks
DE102013225768A1 (de) Verfahren und Vorrichtung zum Ermitteln eines LOLIMOT-Modells
DE102020213889A1 (de) Verfahren zum Validieren von Simulationsmodellen
WO2021063571A1 (de) Verfahren und vorrichtung zum betreiben eines elektrochemischen bearbeitungssystems
WO2021148252A1 (de) Ein verfahren, eine vorrichtung und ein computerprogramm zur erkennung eines objekts
DE102021201031A1 (de) Programmerstellungsvorrichtung, Objekterkennungssystem, Ankersetzverfahren und Ankersetzprogramm
DE69819980T2 (de) Verfahren zur Bestimmung eines Lederschnittmusters
DE102020200849A1 (de) Verfahren und Vorrichtung zur Prozessoptimierung einer Fertigungsprozesskette

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication