DE102017005933B4 - Bearbeitungsprogrammeditiervorrichtung, Verfahren und Speichermedium - Google Patents

Bearbeitungsprogrammeditiervorrichtung, Verfahren und Speichermedium Download PDF

Info

Publication number
DE102017005933B4
DE102017005933B4 DE102017005933.0A DE102017005933A DE102017005933B4 DE 102017005933 B4 DE102017005933 B4 DE 102017005933B4 DE 102017005933 A DE102017005933 A DE 102017005933A DE 102017005933 B4 DE102017005933 B4 DE 102017005933B4
Authority
DE
Germany
Prior art keywords
machining program
machining
editing
unit
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102017005933.0A
Other languages
English (en)
Other versions
DE102017005933A1 (de
Inventor
Satoshi Kimura
Akira KANEMARU
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 DE102017005933A1 publication Critical patent/DE102017005933A1/de
Application granted granted Critical
Publication of DE102017005933B4 publication Critical patent/DE102017005933B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/4097Numerical 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 using design data to control NC machines, e.g. CAD/CAM
    • 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/32Operator till task planning
    • G05B2219/32128Gui graphical user interface
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35012Cad cam
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36266Tool path editor, for offset, multi-passes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

Bearbeitungsprogrammeditiervorrichtung (10) zum Editieren eines Bearbeitungsprogramms (P), das bewirkt, dass eine Werkzeugmaschine (16) ein Werkstück (W) entlang eines tatsächlichen Bearbeitungswegs (18) bearbeitet, der zwei oder mehr Abschnitte (61 bis 63) hat, die umfasst:eine Graphical User Interface Einheit (24), die dafür konfiguriert ist, einen ursprünglichen Bearbeitungsweg (52) in einem Anzeigebereich (50) anzuzeigen und eine Indikationsroute (70) mit einem beliebigen Punkt auf einem ersten Abschnitt, als Startpunkt (66), und einem beliebigen Punkt auf einem zweiten Abschnitt, als Endpunkt (68) die jeweils in dem ursprünglichen Bearbeitungsweg (52) enthalten sind, gemäß einem Eingabevorgang festzulegen, der von einer Bedienungsperson über den Anzeigebereich (50) ausgeführt wird;eine Programmeditiereinheit (34), die dafür konfiguriert ist, das Bearbeitungsprogramm (P) zu editieren, das den ursprünglichen Bearbeitungsweg (52) angibt, um dadurch einen neuen Bearbeitungsweg (84) durch Ersetzen eines Bereiches von dem Startpunkt (66) zu dem Endpunkt (68) auf dem ursprünglichen Bearbeitungsweg (52) zu bilden, wobei die Indikationsroute (70) von der Graphical User Interface Einheit (24) festgelegt wird, undeine Befehlsinformationserzeugungseinheit (38), die dafür konfiguriert ist, Befehlsinformation (C) zu erzeugen, die Blocknummern und Befehlsinhalt in dem Bearbeitungsprogramm (P) angibt;wobei die Programmeditiereinheit (34) gemäß dem Befehlsinhalt der von der Befehlsinformationserzeugungseinheit (38) erzeugten Befehlsinformation (C) eine Codeanweisung an einer Position, die jeder der Blocknummern entspricht, hinzufügt, ändert oder löscht, und das Bearbeitungsprogramm (P) editiert.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung:
  • Die vorliegende Erfindung betrifft eine Bearbeitungsprogrammeditiervorrichtung, ein Verfahren und ein Speichermedium, die ein Bearbeitungsprogramm editieren zum Bewirken, dass eine Werkzeugmaschine ein Werkstück entlang eines Bearbeitungswegs bearbeitet, der aus zwei oder mehr Abschnitten gebildet ist.
  • Beschreibung der verwandten Technik:
    • Herkömmlicherweise wurden eine Vielzahl von Bearbeitungsprogrammeditoren entwickelt, die das Editieren von Bearbeitungsprogrammen zum Steuern von Werkzeugmaschinen ermöglichen.
  • Die WO 2016 / 035 868 A1 offenbart eine Editierunterstützungsvorrichtung, die einen Bearbeitungsweg und eine Codeanweisung gleichzeitig anzeigt und einen Cursor in eine Position bewegt, die einem Punkt entspricht, der von der angezeigten Codeanweisung durch Benennen eines Teilweges des angezeigten Bearbeitungswegs benannt wird. Damit offenbart die Veröffentlichung ferner, dass eine Bedienungsperson den Bearbeitungsweg und die Codeanweisung in Beziehung zueinander verstehen kann, so dass diese Konfiguration das Editieren des Bearbeitungsprogramms unterstützen kann.
  • RAUCH, Matthieu [et al.]: Enhancing CNC manufacturing interoperability with STEP-NC. Status as of 07/12/2010 (HAL ID: hal-00501489). 13 pages. URL: https://hal.archivesouvertes.fr/hal-00501489 [accessed Oct. 23, 2020] betrifft eine Bearbeitungsprogrammeditiervorrichtung zum Editieren eines Bearbeitungsprogramms, das bewirkt, dass eine Werkzeugmaschine ein Werkstück entlang eines tatsächlichen Bearbeitungswegs bearbeitet, der zwei oder mehr Abschnitte hat. Eine Graphical User Interface Einheit ist dafür konfiguriert, einen ursprünglichen Bearbeitungsweg in einem Anzeigebereich anzuzeigen und eine Indikationsroute mit einem beliebigen Punkt auf einem ersten Abschnitt und einem beliebigen Punkt auf einem zweiten Abschnitt, der jeweils als ein Startpunkt und ein Endpunkt in dem ursprünglichen Bearbeitungsweg enthalten ist, gemäß einem Eingabevorgang festzulegen, der von einer Bedienungsperson über den Anzeigebereich ausgeführt wird. Eine CAD/ CAM-Kopplung wird mittels eines CAD-Programmes erreicht, das eine Benutzeroberfläche hat, der Bearbeitungsweg, den später die Bearbeitungsmaschine abfahren soll wird damit erstellt. Eine Programmeditiereinheit ist dafür konfiguriert, das Bearbeitungsprogramm zu editieren, das den ursprünglichen Bearbeitungsweg angibt, um dadurch einen neuen Bearbeitungsweg durch Ersetzen eines Bereiches von dem Startpunkt zu dem Endpunkt auf dem ursprünglichen Bearbeitungsweg zu bilden, wobei die Indikationsroute von der Graphical User Interface Einheit festgelegt wird.
  • KURZBESCHREIBUNG DER ERFINDUNG
  • In der WO 2016 / 035 868 A1 vorgeschlagenen Vorrichtungskonfiguration kann die Bedienungsperson jedoch die Beziehung zwischen dem Bearbeitungsweg und der Codeanweisung zwar verstehen, aber muss Einzelheiten von Änderungen bezüglich der Codeanweisungen vor und nach dem benannten Punkt entscheiden, den Cursor manuell bewegen und die Codeanweisungen editieren. Folglich bringt diese Vorrichtung das Problem mit sich, dass sie bei der Reduzierung von Arbeitszeit nicht so effektiv ist wie erwartet.
  • Die vorliegende Erfindung wurde zur Lösung des vorstehend beschriebenen Problems erdacht und es ist somit eine Aufgabe der vorliegenden Erfindung, eine Bearbeitungsprogrammeditiervorrichtung, ein Verfahren und ein Speichermedium bereitzustellen, die die Arbeitszeit zum Editieren eines Bearbeitungsprogramms reduzieren.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung ist eine Bearbeitungsprogrammeditiervorrichtung zum Editieren eines Bearbeitungsprogramms vorgesehen, die bewirkt, dass eine Werkzeugmaschine ein Werkstück entlang eines tatsächlichen Bearbeitungswegs bearbeitet, der zwei oder mehr Abschnitte hat, eine Graphical User Interface (GUI) Einheit umfasst, die dafür konfiguriert ist, einen ursprünglichen Bearbeitungsweg in einem Anzeigebereich anzuzeigen und eine Indikationsroute mit zwei Punkten, die sich jeweils als ein Startpunkt und ein Endpunkt auf dem ursprünglichen Bearbeitungsweg befinden, gemäß einem Eingabevorgang festzulegen, der von einer Bedienungsperson über den Anzeigebereich ausgeführt wird, und eine Programmeditiereinheit, die dafür konfiguriert ist, das Bearbeitungsprogramm zu editieren, das den ursprünglichen Bearbeitungsweg angibt, um dadurch einen neuen Bearbeitungsweg durch Ersetzen eines Bereiches von dem Startpunkt zu dem Endpunkt auf dem ursprünglichen Bearbeitungsweg zu bilden, wobei die Indikationsroute von der GUI-Einheit festgelegt wird.
  • Auf diese Weise kann ein neuer Bearbeitungsweg durch Ersetzen eines Bereiches von einem Startpunkt zu einem Endpunkt in dem ursprünglichen Bearbeitungsweg mit einer durch die GUI-Einheit festgelegten Indikationsroute geschaffen werden. Aus diesem Grund kann die Bedienungsperson das Editieren des Bearbeitungsprogramms automatisch ausführen, wie beabsichtigt durch den Eingabevorgang über eine optische leicht verständliche Schnittstelle, ohne Codeanweisungen des Bearbeitungsprogramms direkt zu behandeln. Folglich ist es möglich, die Arbeitszeit zum Editieren des Bearbeitungsprogramms wesentlich zu reduzieren.
  • In dem ersten Aspekt der vorliegenden Erfindung kann die Vorrichtung ferner eine Befehlsinformationserzeugungseinheit umfassen, die dafür konfiguriert ist, Befehlsinformation zu erzeugen, die für Blocknummern und Befehlsinhalt in dem Bearbeitungsprogramm angibt, und kann die Programmeditiereinheit gemäß dem Befehlsinhalt der von der Befehlsinformationserzeugungseinheit erzeugten Befehlsinformation eine Codeanweisung an einer Position, die jeder der Blocknummern entspricht, hinzufügen, ändern oder löschen, und das Bearbeitungsprogramm editieren.
  • Außerdem kann in dem ersten Aspekt der vorliegenden Erfindung die Befehlsinformationserzeugungseinheit die Befehlsinformation auf Grundlage der Koordinatenwerte des Startpunkts und der Koordinatenwerte des Endpunkts erzeugen, die durch die Codeanweisungen festgelegt werden, die jeder der Blocknummern entsprechen.
  • In dem ersten Aspekt der Erfindung kann die Vorrichtung ferner eine Datenbezugseinheit, die dafür konfiguriert ist, das Bearbeitungsprogramm zu analysieren und Suchdaten zu beziehen, in denen den Blocknummern Merkmalspunkte der Abschnitte zugeordnet sind, und eine Blockinformationssucheinheit, die dafür konfiguriert ist, die von der Datenbezugseinheit bezogenen Suchdaten für eine der Blocknummern zu suchen, in der einer der Merkmalspunkte der Abschnitte mit dem Startpunkt oder dem Endpunkt zusammenfällt, umfassen. Da, nachdem die Suchdaten, die die zum Editieren erforderlichen Daten enthalten, von dem Bearbeitungsprogramm mit einer großen Datenmenge bezogen werden, ein Suchprozess auf Grundlage der Suchdaten ausgeführt wird, wird es möglich, die zum Suchen nach Merkmalspunkten in den Abschnitten und Blocknummern erforderliche Zeit wesentlich zu reduzieren.
  • In dem ersten Aspekt der Erfindung kann die Programmeditiereinheit das Bearbeitungsprogramm durch Zuordnen eines spezifisches Zeichens für das teilweise Invalidieren des Auslesens der Daten zu der Codeanweisung editieren. Diese Konfiguration ermöglicht es, den Inhalt einer Codeanweisung durch anschließendes Löschen des spezifischen Zeichens einfach zu validieren.
  • Außerdem kann in dem ersten Aspekt der Erfindung die Programmeditiereinheit das Bearbeitungsprogramm durch Löschen der Codeanweisung, der das spezifische Zeichen zugeordnet ist, zusammen mit dem spezifischen Zeichen, gemäß einem Bestätigungsvorgang editieren, der von der Bedienungsperson unter Verwendung der GUI-Einheit ausgeführt wird. Dieses Merkmal ermöglicht es, eine automatische Bestätigung des editierten Inhaltes des Bearbeitungsprogramms gegen die Absicht der Bedienungsperson zu verhindern.
  • In dem ersten Aspekt der Erfindung kann die GUI-Einheit die Indikationsroute auf dem ursprünglichen Bearbeitungsweg in dem Anzeigebereich festlegen und die Indikationsroute in einer Anzeigeform anzeigen, die sich von der des Bereiches von dem Startpunkt zu dem Endpunkt auf dem ursprünglichen Bearbeitungsweg unterscheidet. Dies ermöglicht es der Bedienungsperson, den Unterschied zwischen den Bearbeitungswegen vor und nach der Modifizierung auf einen Blick zu ersehen.
  • Außerdem kann in dem ersten Aspekt der Erfindung die Vorrichtung ferner eine Kommunikationseinheit umfassen, die dafür konfiguriert ist, das von einer externen Vorrichtung erstellte Bearbeitungsprogramm zu empfangen und kann das von der Kommunikationseinheit empfangene Programm editiert werden. Aufgrund des vorstehend beschriebenen Merkmals ist es, wenn die Bearbeitungsprogrammeditiervorrichtung keine Bearbeitungsprogrammerstellungsfunktion hat, möglich, das Bearbeitungsprogramm durch die Vorrichtung alleine zu modifizieren und zu vervollständigen, ohne das Programm unter Verwendung einer externen Vorrichtung erneut zu erstellen.
  • Gemäß dem zweiten Aspekt der vorliegenden Erfindung ein Bearbeitungsprogrammeditierverfahren zum Editieren eines Bearbeitungsprogramms bereitgestellt, das bewirkt, dass eine Werkzeugmaschine ein Werkstück entlang eines tatsächlichen Bearbeitungswegs bearbeitet, der zwei oder mehr Abschnitte hat, wobei das Verfahren die von einer Bearbeitungsprogrammeditiervorrichtung umgesetzten Schritte, des Anzeigens eines ursprünglichen Bearbeitungswegs in einem Anzeigebereich einer GUI-Einheit, des Festlegens einer Indikationsroute mit zwei Punkten, die sich jeweils als ein Startpunkt und ein Endpunkt auf dem ursprünglichen Bearbeitungsweg befinden, gemäß einem Eingabevorgang, der von einer Bedienungsperson unter Verwendung der GUI-Einheit ausgeführt wird, und des Editierens des Bearbeitungsprogramms, das für den ursprünglichen Bearbeitungsweg angibt, um dadurch einen neuen Bearbeitungsweg durch Ersetzen eines Bereiches von dem Startpunkt zu den Endpunkt auf dem ursprünglichen Bearbeitungsweg mit der festgelegten Indikationsroute zu bilden, umfasst.
  • Gemäß dem dritten Aspekt der vorliegenden Erfindung ist ein Speichermedium vorgesehen, das ein Editierprogramm zum Editieren eines Bearbeitungsprogramms speichert, das bewirkt, dass eine Werkzeugmaschine ein Werkstück entlang eines tatsächlichen Bearbeitungswegs bearbeitet, der zwei oder mehr Abschnitte hat, und das Editierprogramm bewirkt, dass eine Bearbeitungsprogrammeditiervorrichtung ausführt: einen Anzeigeschritt des Anzeigens eines ursprünglichen Bearbeitungswegs in einem Anzeigebereich einer GUI-Einheit, einen Festlegungsschritt zum Festlegen einer Indikationsroute mit zwei Punkten, die sich jeweils als ein Startpunkt und ein Endpunkt auf dem ursprünglichen Bearbeitungsweg befinden, gemäß einem Eingabevorgang, der von einer Bedienungsperson unter Verwendung der GUI-Einheit ausgeführt wird, und einen Editierschritt zum Editieren des Bearbeitungsprogramms, das für den ursprünglichen Bearbeitungsweg angibt, um dadurch einen neuen Bearbeitungsweg durch Ersetzen eines Bereiches von dem Startpunkt zu den Endpunkt auf dem ursprünglichen Bearbeitungsweg mit der festgelegten Indikationsroute zu bilden.
  • Gemäß der Bearbeitungsprogrammeditiervorrichtung, dem Verfahren und dem Speichermedium der vorliegenden Erfindung ist es möglich, die Arbeitszeit zum Editieren des Bearbeitungsprogramms zu reduzieren.
  • Die vorstehend beschriebenen und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden Beschreibung in Verbindung mit den beiliegenden Zeichnungen ersichtlich werden, in denen eine bevorzugte Ausführungsform der vorliegenden Erfindung beispielhaft gezeigt ist.
  • Figurenliste
    • 1 ist ein Konfigurationsdiagramm, das eine numerische Steuerung als eine Bearbeitungsprogrammeditiervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 2 ist ein funktionelles Blockdiagramm, das die in 1 gezeigte numerische Steuerung zeigt;
    • 3 ist ein erstes Ablaufdiagramm zur Erläuterung des Betriebs der in 1 und 2 gezeigten numerischen Steuerung;
    • 4A ist ein Diagramm, das den Inhalt eines Bearbeitungsprogramms vor dem Editieren zeigt;
    • 4B ist ein Bildschirmdiagramm, das das Anzeigeergebnis eines ursprünglichen Bearbeitungswegs zeigt, der von dem Bearbeitungsprogramm vor dem in 4A gezeigten Editieren festgelegt wird;
    • 5 ist ein zweites Ablaufdiagramm zum Erläutern des Betriebs der in 1 und 2 gezeigten numerischen Steuerung;
    • 6A ist ein Bildschirmübergangsdiagramm durch den Eingabevorgang einer Bedienungsperson;
    • 6B ist ein Diagramm, das den Inhalt einer Anweisungsinformation zeigt;
    • 7 ist ein Erläutern des Diagramms, das ein Suchergebnis von einer Blockinformationssucheinheit zeigt;
    • 8 ist ein drittes Ablaufdiagramm zum Erläutern des Betriebs der in 1 und 2 gezeigten numerischen Steuerung;
    • 9A bis 9C sind Übergangsdiagramme, die einen Prozess der Aktualisierung von Blockinformation zeigen;
    • 10 ist ein viertes Ablaufdiagramm zum Erläutern des Betriebs der in 1 und 2 gezeigten numerischen Steuerung;
    • 11A bis 11C sind Übergangsdiagramme, die einen Prozess der Aktualisierung von Anweisungsinformation zeigen;
    • 12 ist ein fünftes Ablaufdiagramm zum Erläutern des Betriebs der in 1 und 2 gezeigten numerischen Steuerung;
    • 13A ist ein Diagramm, das den Endinhalt von Befehlsinformation zeigt;
    • 13B ist ein Diagramm, das den Inhalt eines Bearbeitungsprogramms beim Editieren zeigt;
    • 14A ist ein Bildschirmdiagramm, das das Anzeigeergebnis eines überlappenden Bearbeitungswegs zeigt;
    • 14B ist ein Bildschirmdiagramm, das das in einem Texteditionsbereich angezeigte Anzeigeergebnis zeigt;
    • 15A ist ein Diagramm, das den Inhalt eines Bearbeitungsprogramms nach dem Editieren zeigt; und
    • 15B ist ein Bildschirmdiagramm, dass das Anzeigeergebnis eines neuen Bearbeitungswegs zeigt, der von dem Bearbeitungsprogramm nach dem in 15A gezeigten Editieren festgelegt wird.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Eine bevorzugte Ausführungsform einer Bearbeitungsprogrammeditiervorrichtung gemäß der vorliegenden Erfindung wird nachstehend im Detail mit Bezugnahme auf die beiliegenden Zeichnungen bezüglich eines Bearbeitungsprogrammeditierverfahrens und eines Editierprogramms beschrieben.
  • [Konfigurationsdiagramm der numerischen Steuerung 10]
  • 1 ist ein Konfigurationsdiagramm einer numerischen Steuerung 10 als eine Bearbeitungsprogrammeditiervorrichtung in dieser Ausführungsform. Die numerische Steuerung 10 ist eine Host-Vorrichtung auf einer höheren Ebene, die ein Bearbeitungsprogramm P verwendet, das von einem CAD(Computer-Aided-Design)/CAM(Computer-Aided-Manufacturing)-Terminal 12 erstellt wird, um eine Werkzeugmaschine 16 (eine oder mehrere Vorrichtungen auf niedriger Ebene), die ein Werkzeug 14 hat, umfangreich zu steuern.
  • Nachstehend können zur klaren Unterscheidung von Unterschieden im Inhalt Bearbeitungsprogramme P vor dem Editieren, während des Editierens und nach dem Editieren als P1, P2 und P3 bezeichnet werden.
  • Gemäß dem Bearbeitungsprogramm P führt die Werkzeugmaschine 16 einen Bearbeitungsprozess auf einem Werkzeug W entlang eines tatsächlichen Bearbeitungswegs 18 aus, der aus einem oder mehreren Abschnitten gebildet ist, während das Werkzeug 14 relativ zu dem Werkzeug W bewegt wird.
  • Die numerische Steuerung 10 ist ein Computer, der eine Steuereinheit 20, eine Kommunikationseinheit 22, eine GUI(Graphical User Interface)-Einheit 24 und eine Speichereinheit (Speichermedium) 26 umfasst.
  • Die Kommunikationseinheit 22 ist eine Schnittstelle, die elektrische Signale bezüglich externen Vorrichtungen sendet und empfängt. Damit kann die numerische Steuerung 10 das Bearbeitungsprogramm P von dem CAD/CAM-Terminal 12 über die Kommunikationseinheit 22 beziehen und kann auch Steuersignale zum Steuern des Betriebs der Werkzeugmaschine 16 an die Werkzeugmaschine 16 ausgeben.
  • Die GUI-Einheit 24 ist eine Benutzerschnittstelle mit einer Eingabefunktion einer Eingabeeinheit 28 und einer Ausgabefunktion einer Anzeigeeinheit 30 (Anzeigevorrichtung) in Kombination. Die Eingabeeinheit 28 kann beispielsweise eine Maus, Tastatur, einen Berührungssensor und ein Mikrofon umfassen.
  • Die Speichereinheit 26 speichert Programme, Daten und dergleichen, die notwendig sind, damit die Steuereinheit 20 individuelle Komponenten steuern kann.
  • Die Speichereinheit 26 kann als ein nicht flüchtiges computerlesbares Speichermedium konfiguriert sein. In dem Beispiel dieser Figur werden das vorstehend beschriebene Bearbeitungsprogramm P oder die vorstehend beschriebenen Suchdaten L in der Speichereinheit 26 gespeichert.
  • Die Steuereinheit 20 ist aus einem Prozessor gebildet, entweder einer CPU (Central-Processing Unit) oder MPU (Micro-Processing Unit). Die Steuereinheit 20 liest und führt ein Programm (nicht gezeigt) aus, das in der Speichereinheit 26 gespeichert ist, um dadurch die Funktionen einer Programmverwaltungseinheit 32, einer Programmeditiereinheit 34, einer Blockinformationssucheinheit 36, einer Befehlsinformationserzeugungseinheit 38 und einer Datenbezugseinheit 40 umzusetzen.
  • [Funktionelles Blockdiagramm der numerischen Steuerung 10]
  • 2 ist ein funktionelles Blockdiagramm der in 1 gezeigten numerischen Steuerung 10. In dieser Figur zeigen die dicken durchgezogenen Pfeile Datenströme an, wohingegen die dünnen durchgezogenen Pfeile Befehlströme anzeigen.
  • Die Programmverwaltungseinheit 32 verwaltet das zu editierende Bearbeitungsprogramm P. Die Programmverwaltungseinheit 32 wählt ein geeignetes Bearbeitungsprogramm P1 oder P3 gemäß dem Betrieb der Bedienungsperson aus, die die GUI-Einheit 24 verwendet, und gibt es an die Datenbezugseinheit 40 aus.
  • Die Datenbezugseinheit 40 analysiert das Bearbeitungsprogramm P und bezieht Weginformation T, die den tatsächlichen Bearbeitungsweg 18 angibt (genau genommen den Bearbeitungsweg in Simulation). Dann erstellt die Datenbezugseinheit 40 Anzeigedaten L für ein sichtbares Bild des tatsächlichen Bearbeitungswegs 18 mit der Weginformation T und gibt die Anzeigedaten L an die GUI-Einheit 24 aus (Anzeigeeinheit 30).
  • Die Blockinformationssucheinheit 36 erstellt Anweisungsinformation I unter Verwendung von Betriebsdaten von der GUI-Einheit 24 und sucht nach Suchdaten L unter Verwendung der Anweisungsinformation I als einen Suchwert zur Erstellung von Blockinformation B. Hier sind die Suchdaten L Daten, die durch Zuordnen der vorstehend beschriebenen Weginformation T zu einer Blocknummer gebildet werden.
  • Die Befehlsinformationserzeugungseinheit 38 aktualisiert die Blockinformation B unter Verwendung der Anweisungsinformation I, erzeugt Befehlsinformation C aus der erlangten Blockinformation B und gibt die Befehlsinformation C an die Programmeditiereinheit 34 aus. Die Programmeditiereinheit 34 editiert das Bearbeitungsprogramm P1 gemäß der eingegebenen Befehlsinformation C, um dadurch das zu editierende Bearbeitungsprogramm P2 zu erlangen.
  • [Betrieb der numerischen Steuerung 10]
  • Die numerische Steuerung 10 gemäß dieser Ausführungsform ist dadurch konfiguriert. Als nächstes wird der Betrieb der numerischen Steuerung 10 mit Fokus auf den Editiervorgang des Bearbeitungsprogramms P mit Bezugnahme auf die Ablaufdiagramme aus 3, 5, 8, 10, und 12 beschrieben.
  • Im Folgenden wird angenommen, dass die numerische Steuerung 10 nicht die Funktion des Erzeugens des Bearbeitungsprogramms P hat, das Bearbeitungsprogramm P im Voraus empfängt, das von dem CAD/CAM-Terminal 12 erstellt wurde, und das Bearbeitungsprogramm P in der Speichereinheit 26 speichert.
  • <Erstes Ablaufdiagramm>
  • 3 ist ein Ablaufdiagramm, das eine Reihe von Vorgängen von der Datenbezugseinheit 40 und der GUI-Einheit 24 zum Beziehen von Betriebsdaten zeigt.
  • In Schritt S1 liest die Datenbezugseinheit 40 ein Bearbeitungsprogramm P1 vor dem Editieren aus der Speichereinheit 26. In Schritt S2 analysiert die Datenbezugseinheit 40 das in Schritt S1 ausgelesene Bearbeitungsprogramm P1 und bezieht die Weginformation T, die das Ziel des tatsächlichen Bearbeitungswegs 18 angibt. Hier umfasst die Weginformation T die Reihenfolge einzelner Abschnitte und Positionsinformation (Koordinatenwerte oder Bewegungsausmaße der Merkmalspunkte.
  • In Schritt S3 visualisiert die GUI-Einheit 24 auf Grundlage der in Schritt S2 erlangten Weginformation T das Ziel des tatsächlichen Bearbeitungswegs 18 (der nachstehend als ein ursprünglicher Bearbeitungsweg 52 bezeichnet wird) an, der vor dem Editieren von dem Bearbeitungsprogramm P1 festgelegt wird. Vor dieser Visualisierung erstellt die Datenbezugseinheit 40 die Anzeigedaten L für das sichtbare Bild des ursprünglichen Bearbeitungswegs 52 unter Verwendung der Weginformation T. Dann zeigt die Anzeigeeinheit 30 ein Bild auf Grundlage der Anzeigedaten L von der Datenbezugseinheit 40 an.
  • Wie in 4A gezeigt, umfasst das Bearbeitungsprogramm P1 ein Hauptprogramm, das als „00001“ bezeichnet wird und von einem Befehl „M30“ beendet wird. ,,00001" besteht aus Vier-Block-Codeanweisungen (oder NC Anweisungen) und die Ausgangsposition der Bearbeitung wird als als (X = 10,000, Y = 10,000) vorgegeben angenommen.
  • „00001“ umfasst drei Bewegungsbefehle auf der X-Y-Ebene. N001-Block zeigt einen absoluten Befehl (G90) einen Schnelldurchquerungsbewegungsbefehl (G00) und einen Bewegungsbefehl (X = 0,000, Y = 100,000) an. N002-Block zeigt einen Bewegungsbefehl (X = 100,000, Y = 0,000) an. N003-Block zeigt einen Bewegungsbefehl (X = 170,000, Y = 10,000) an.
  • Währenddessen wird zur Festlegung der Positionen der Blöcke jeder Block einem eindeutigen Identifikator (der nachstehend als eine Blocknummer bezeichnet wird) in dem Bearbeitungsprogramm P1 zugeordnet. Genauer sind, wenn die Blocknummer, der die Sequenznummer „N001“ entspricht, ,,0000001" ist, die Blocknummern, die „N002“ und „N003“ entsprechen, „0000002“ beziehungsweise „0000003“ .
  • Wie in 4B gezeigt, ist in einem Anzeigebereich 50 der GUI-Einheit 24 (der Anzeigeeinheit 30) ein Zeichenbereich 54 mit dem ursprünglichen Bearbeitungsweg 52 darauf gezeichnet angeordnet und sind außerdem drei Schaltflächen 56, 57 und 58 auf der unteren Seite des Zeichenbereichs 54 angeordnet. Die „EINGABE“ Schaltfläche 56 ist eine Nutzersteuertaste, um es dem Nutzer zu ermöglichen, den ursprünglichen Bearbeitungsweg 52 zu editieren. Die „LÖSCHEN“ Schaltfläche 57 ist eine Nutzersteuertaste, um den ursprünglichen Bearbeitungsweg 52 rückzusetzen. Die „EDITIERUNG DARSTELLEN“ Schaltfläche 58 ist eine Nutzersteuertaste zum Wiedergeben des Inhaltes des Editieren des ursprünglichen Bearbeitungswegs 52.
  • In dem Beispiel dieser Figur ist der ursprüngliche Bearbeitungsweg 52 aus drei sequenziell verbundenen linearen Abschnitten 61, 62 und 63 gebildet. Zur Klarstellung des Startpunkts und des Endpunkts sind die Abschnitte 61 bis 63 jeweils als ein Pfeil angezeigt. Der Abschnitt 61 entspricht einem Bewegungsbefehl in der Sequenznummer „N001“ (Blocknummer „0000001“). Der Abschnitt 62 entspricht einem Bewegungsbefehl in der Sequenznummer „N002“ (Blocknummer „0000002“). Der Abschnitt 63 entspricht einem Bewegungsbefehl in der Sequenznummer „N003“ (Blocknummer „0000003“).
  • In Schritt S4 bestimmt die Steuereinheit 20, ob ein von einer Bedienungsperson ausgeführter Eingabevorgang durch den Anzeigebereich 50, genauer ein Schreibvorgang in dem Zeichenbereich 54 und ein Berührungsvorgang der „EINGABE“ Schaltfläche 56, empfangen wurde. Wenn der vorstehend beschriebene Vorgang nicht empfangen wurde (Schritt S4: NEIN), kehrt die Steuerung zu Schritt S3 zurück und wird Schritt S3 wiederholt, bis dieser Vorgang empfangen wird. Andererseits fährt, wenn dieser Vorgang nicht empfangen wurde (Schritt S4: JA), die Steuerung mit dem nächsten Schritt S5 fort.
  • Beispielsweise entspricht, wie in 6A gezeigt, in einem Fall, in dem die Bedienungsperson einen Schreibvorgang der linearen Verfolgung einer Linie von einem Startpunkt 66 zu einem Endpunkt 68 unter Verwendung eines Stylusstifts 64 ausführt, dieser Vorgang einer Anweisung einer Bedienungsperson, einen Teil des ursprünglichen Bearbeitungswegs 52 zu ändern. Nachstehend wird der angewiesene (oder festgelegte) Teilweg als eine Indikationsroute 70 bezeichnet. Im Beispiel dieser Figur ist die Indikationsroute 70 aus einem linearen Abschnitt 72 (durch eine gestrichelte Linie gezeigt) gebildet.
  • In Schritt S5 gibt die Steuereinheit 20 die Betriebsdaten (einschließlich einer Mehrzahl von Koordinatenwerten), die durch den Eingabevorgang in Schritt S4 erlangt werden, an die Blockinformationssucheinheit 36 aus. Auf diese Weise werden die dem ersten Ablaufdiagramm (3) zugeordneten Vorgänge beendet.
  • < Zweites Ablaufdiagramm>
  • 5 ist ein Ablaufdiagramm, das eine Reihe von Vorgängen zum Erstellen von Blockinformation B durch die Blockinformationssucheinheit 36 zeigt.
  • In Schritt S6 klassifiziert die Blockinformationssucheinheit 36 die mehreren Merkmalspunkte, die von den in Schritt S5 ausgegebenen Betriebsdaten angezeigt werden, in drei Arten von Punkten, d.h. einen Startpunkt, einen Endpunkt und einen Relaispunkt. Dann erstellt die Blockinformationssucheinheit 36 Anweisungsinformation I, die jeden Merkmalspunkt seinem Typ zugeordnet.
  • Wie in 6B gezeigt, umfasst die Anweisungsinformation I „Koordinatenwerte“ (absolute Koordinatenwerte) der Merkmalspunkte und den „Typ“ der Merkmalspunkte. Wenn der erste Merkmalspunkt ein Startpunkt 66 ist, sind die Koordinatenwerte (X = 10,000, Y = 10,000) und ist der Typ „Startpunkt“. Wenn der zweite Merkmalspunkt ein Relaispunkt 74 ist, sind die Koordinatenwerte (X = 50,000, Y = 50,000) und ist der Typ „Relaispunkt“. Wenn der dritte Merkmalspunkt einen Endpunkt 68 ist, sind die Koordinatenwerte (X = 100,000, Y = 100,000) und ist der Typ „Endpunkt“.
  • In Schritt S7 bezieht die Blockinformationssucheinheit 36 Suchdaten L, die dem Bearbeitungsprogramm P1 vor dem Editieren entsprechen. Vor dem Bezug erstellt die Datenbezugseinheit 40 Suchdaten L, in denen die Weginformation T der Blocknummer zugeordnet ist, und speichert sie vorübergehend in der Speichereinheit 26. Dann liest die Blockinformationssucheinheit 36 die Suchdaten L aus der Speichereinheit 26 aus, um die Suchdaten L zu beziehen.
  • In Schritt S8 durchsucht die Blockinformationssucheinheit 36 sämtliche Blockdaten, die die Suchdaten L bilden. Genauer sucht die Blockinformationssucheinheit 36 die in Schritt S7 erlangten Suchdaten L für Blockdaten mit dem Typ (in diesem Fall „Startpunkt“) und den Koordinatenwerten, die der Anweisungsinformation I entsprechen (Suchwert).
  • Die Blockinformationssucheinheit 36 liest sequenziell die Blockdaten in eine vorbestimmte Suchrichtung (beispielsweise in aufsteigender Reihenfolge der Blocknummern) und bestimmt, ob es Daten gibt, die dem Suchwert entsprechen (Schritt S8a). Wenn bestimmt wird, dass solche Daten existieren (Schritt S8a: JA), speichert die Blockinformationssucheinheit 36 vorübergehend Blockdaten, die die Daten umfassen, als erste Blockdaten und fährt dann mit einer nächsten Suche fort (Schritt S8b). Andererseits fährt, wenn bestimmt wird, dass keine Daten existieren (Schritt S8a: NEIN), die Steuerung mit einer nächsten Suche fort, ohne Schritt S8b auszuführen.
  • Der Begriff „Entsprechung“ der Koordinatenwerte kann nicht nur den Fall umfassen, in dem die Koordinatenwerte gleich sind, sondern auch Fälle, in denen der Abstand zwischen den zwei Werten in einen zulässigen Bereich fällt. Dies ist, weil, wenn eine Bedienungsperson eine Position unter Verwendung des Stylusstifts 64 festlegt, ein Positionsfehler aufgrund der Betätigungsgenauigkeit der Bedienungsperson auftreten kann.
  • In Schritt S9 wählt, wenn es zwei oder mehr Kandidaten der ersten Blockdaten gibt, die Blockinformationssucheinheit 36 einen Kandidaten als die optimalen ersten Blockdaten entsprechend einer voreingestellten Prioritätenreihenfolge aus. In dem Fall, in dem es beispielsweise zwei oder mehr Kandidaten für den gleichen Startpunkt trifft, können Blockdaten mit dem kleinsten Abstand zu diesem Startpunkt ausgewählt werden.
  • In Schritt S10 sucht die Blockinformationssucheinheit 36 alle Blockdaten, die die Suchdaten L bilden. Genauer durchsucht die Blockinformationssucheinheit 36 die in Schritt S7 bezogenen Suchdaten L nach Blockdaten mit dem Typ (in diesem Fall „Endpunkt“) und den Koordinatenwerten des Merkmalspunkts, der der Anweisungsinformation I entspricht (Suchwert).
  • Die Blockinformationssucheinheit 36 liest sequenziell die Blockdaten in eine vorbestimmte Suchrichtung und überspringt die Suche nach Daten außerhalb des Bereiches (Schritt S10a). Genauer bleibt, wenn eine Blocknummer kleiner ist als die Blocknummer, die den ersten Blockdaten entspricht (Schritt S10a: NEIN), die Blockinformationssucheinheit 36 bei Schritt S10a. Andererseits fährt, wenn eine Blocknummer gleich oder größer ist als die Blocknummer, die den ersten Blockdaten entspricht (Schritt S10a: JA), die Steuerung mit dem nächsten Schritt S10b fort.
  • Die Blockinformationssucheinheit 36 liest sequenziell die Blockdaten in eine vorbestimmte Suchrichtung aus und bestimmt, ob es Daten gibt, die dem Suchwert entsprechen (Schritt S10b). Wenn bestimmt wird, dass solche Daten existieren (Schritt S10b: JA), speichert die Blockinformationssucheinheit 36 Blockdaten, die die Daten umfassen, vorübergehend als „zweite Blockdaten“ und fährt dann mit einer nächsten Suche fort (Schritt S10c). Andererseits fährt, wenn bestimmt wird, dass keine Daten existieren (Schritt S10c: NEIN), die Steuerung mit einer nächsten Suche fort, ohne Schritt S10c auszuführen.
  • In Schritt S11 kann die Blockinformationssucheinheit 36, wenn es zwei oder mehr Kandidaten für die zweiten Blockdaten gibt, einen Kandidaten als die optimalen zweiten Blockdaten gemäß der gleichen Prioritätsreihenfolge wie Schritt S9 oder einer anderen Prioritätsreihenfolge auswählen.
  • In Schritt S12 kombiniert die Blockinformationssucheinheit 36 die ersten in Schritt S9 erlangten Blockdaten und die zweiten in Schritt S11 erlangten Blockdaten, um die Blockinformation B zu erstellen. Dann gibt die Blockinformationssucheinheit 36 die erstellte Blockinformation B zusammen mit der Anweisungsinformation I an die Befehlsinformationserzeugungseinheit 38 aus. Auf diese Weise wird der Vorgang, der dem zweiten Ablaufdiagramm (5) zugeordnet ist, beendet.
  • 7 ist ein erläuterndes Diagramm, das ein Suchergebnis von der Blockinformationssucheinheit 36 zeigt. Es wird angenommen, dass Anweisungsinformation I und Suchdaten L, wie in dieser Figur gezeigt, vorgegeben sind. Vor dem Suchen der ersten Blockdaten (Schritt S8 in 5) aus der Anweisungsinformation I werden Blockdaten, deren ID „A“ ist, als ein Suchwert ausgewählt. Dann werden als ein Ergebnis der Ausführung einer Suche in die Suchrichtung Blockdaten erlangt, die einen Merkmalspunkt umfassen, dessen Typ (Startpunkt) und Koordinatenwerte (X = 10,000, Y = 10,000) dem Suchwert entsprechen. Nachstehend werden Daten mit der Schaltfläche „0000001“ und den Koordinatenwerten „X = 10,000, Y = 10,000“ als die ersten Blockdaten eingestellt.
  • Anschließend werden vor der Suche nach den zweiten Blockdaten (Schritt S10 in 5) aus der Anweisungsinformation I Blockdaten, deren ID „E“ ist, als ein Suchwert ausgewählt. Dann werden als ein Ergebnis der Ausführung einer Suche in die Suchrichtung Blockdaten erlangt, die einen Merkmalspunkt umfassen, dessen Typ (Endpunkt) und Koordinatenwerte (X = 100,000, Y = 100,000) dem Suchwert entsprechen. Nachstehend werden Daten mit der Blocknummer „0000002“ und Koordinatenwerte „X = 100,000, Y = 100,000“ als zweite Blockdaten eingestellt. Schließlich kann durch sequenzielles Kombinieren der ersten Blockdaten und der zweiten Blockdaten Blockinformation B (siehe 9A) erlangt werden.
  • <Drittes Ablaufdiagramm>
  • 8 ist ein Ablaufdiagramm, das eine Reihe von Vorgängen zeigt, um die Blockinformation B durch die Befehlsinformationserzeugungseinheit 38 zu aktualisieren. 9A bis 9C sind Übergangsdiagramme, die einen Prozess der Aktualisierung der Blockinformation B zeigen.
  • Im Schritt S13 fügt die Befehlsinformationserzeugungseinheit 38 ein Element (Datenbereich) „Befehlsinhalt“ der in Schritt S12 ausgegebenen Blockinformation B hinzu und ordnet alle Datenwerte dem Befehlsinhalt mit „Hinzufügen“ zu. In Schritt S14 fügt die Befehlsinformationserzeugungseinheit 38 Blockdaten, die einem Teil oder allen der Anweisungsinformation I entsprechen, zwischen den ersten Blockdaten und den zweiten Blockdaten ein.
  • Wie in 9A gezeigt, besteht die erste Blockinformation B aus zwei Blockdaten. Aus diesem Zustand [1] fügt die Befehlsinformationserzeugungseinheit 38 das Element „Befehlsinhalt“ hinzu (Schritt S13 in 8), [2] fügt zwei oder mehr Blockdaten hinzu (Schritt S14 in 8) und [3] dupliziert die Datenwerte von „Koordinatenwerten“ und „Typ“ in der Anweisungsinformation I in einer vorbestimmten Reihenfolge (Schritt S14 in 8).
  • Wie in 9B gezeigt, besteht die aktualisierte Blockinformation B aus 9A aus vier Blockdaten. In diesem Fall werden, da angenommen wird, dass der Startpunkt 66 und der Endpunkt 68 durch eine einzige gerade Linie verbunden sind, Blockdaten, die jeweils einem Teil der Anweisungsinformation I entsprechen (genauer zwei Blockdaten, die dem „Startpunkt“ bzw. „Endpunkt“ entsprechen), eingefügt. Anstattdessen ist es in dem Fall, in dem Blockdaten, die sämtlicher der Anweisungsinformation I entsprechen, eingefügt werden, möglich, die Form der Indikationsroute 70 auf zuverlässige Weise wiederzugeben.
  • In Schritten S15 und S16 bestimmt die Befehlsinformationserzeugungseinheit 38 den Typ des Merkmalspunkts in den ersten Blockdaten. Genauer bestimmt die Befehlsinformationserzeugungseinheit 38, ob der Typ „Startpunkt“ ist, (Schritt S15) und bestimmt weiter, ob der Typ „Endpunkt“ ist, wie erforderlich (Schritt S16).
  • Wenn der Typ „Startpunkt“ ist (Schritt S15: JA), wird ein Datenwert für „Löschen“ in den Befehlsinhalt in den ersten Blockdaten gespeichert (Schritt S17). Wenn der Typ „Endpunkt“ ist (Schritt S15: NEIN → Schritt: JA), wird ein Datenwert für „KEINF‟ in den Befehlsinhalt in den ersten Blockdaten gespeichert (Schritt S18). Wenn der Typ „Relaispunkt“ ist (Schritt S15: NEIN→ Schritt S16: NEIN), wird ein Datenwert von „Ändern“ in den Befehlsinhalt in den ersten Blockdaten gespeichert (Schritt S19).
  • In Schritten S20 und S21 bestimmt die Befehlsinformationserzeugungseinheit 38 den Typ des Merkmalspunkts in den zweiten Blockdaten. Genauer bestimmt die Befehlsinformationserzeugungseinheit 38, ob der Typ „Startpunkt“ ist, (Schritt S20) und bestimmt weiter, ob der Typ „Endpunkt“ ist, wie erforderlich (Schritt S21).
  • Wenn der Typ „Startpunkt“ ist (Schritt S20: JA), wird der Datenwert für „KEINF“ in den Befehlsinhalt in den zweiten Blockdaten gespeichert (Schritt S22). Wenn der Typ „Endpunkt“ ist (Schritt S20: NEIN → Schritt S 21: JA), wird der Datenwert für „Löschen“ in den Befehlsinhalt in den zweiten Blockdaten gespeichert (Schritt S23). Wenn der Typ „Relaispunkt“ ist (Schritt S20: NEIN → Schritt S21: NEIN), wird der Datenwert für „Ändern“ in den Befehlsinhalt in den zweiten Blockdaten gespeichert (Schritt S24). Auf diese Weise wird der dem dritten Ablaufdiagramm (8) zugeordnete Vorgang beendet.
  • Auf Grundlage des in 9B gezeigten Zustands [4] bestimmt die Befehlsinformationserzeugungseinheit 38 den Datenwert des „Befehlsinhalts“ in den ersten Blockdaten (Löschen; Schritt S17 in 8) und [5] bestimmt den Datenwert des „Befehlsinhalts“ in den zweiten Blockdaten (Löschen; Schritt S23 in 8).
  • Wie in 9C gezeigt, besteht die aktualisierte Blockinformation B aus 9B aus vier Blockdaten. Auf diese Weise werden alle Datenwerte der Blocknummer, der Koordinatenwerte, des Typs und des Befehlsinhalts bestimmt, wodurch die Blockinformation B vollendet wird.
  • In den ersten Blockdaten von oben ist die Blocknummer „0000001“ , sind die Koordinatenwerte (X = 10,000, Y = 10,000), die die Position des Startpunkts 66 darstellen, ist der Typ „Startpunkt“ und ist der Befehlsinhalt „Löschen“. In den zweiten Blockdaten von oben ist die Blocknummer „NULL“, sind die Koordinatenwerte (X = 10,000, Y = 10,000), die die Position des Startpunkts 66 darstellen, ist der Typ „Startpunkt“ und ist der Befehlsinhalt „Hinzufügen“.
  • In den dritten Blockdaten von oben ist die Blocknummer „NULL“, sind die Koordinatenwerte (X = 100,000, Y = 100,000), die die Position des Endpunkts 68 darstellen, ist der Typ „Endpunkt“ und ist der Befehlsinhalt „Hinzufügen“. In dem vierten Block von oben ist die Blocknummer „0000002“, sind die Koordinatenwerte (X = 100,000, Y = 100,000), die die Position des Endpunkts 68 darstellen, ist der Typ „Endpunkt“ und ist der Befehlsinhalt „Löschen“.
  • <Viertes Ablaufdiagramm>
  • 10 ist ein Ablaufdiagramm, das eine Reihe von Vorgängen (erste Hälfte) zum Erzeugen der Befehlsinformation C durch die Befehlsinformationserzeugungseinheit 38 zeigt. 11A bis 11C sind Übergangsdiagramme, die einen Aktualisierungsprozess der Befehlsinformation C zeigen. Hier ist sämtliche den ersten Blockdaten (Startpunkt 66) zugeordnete Information festgelegt.
  • Im Schritt S25 erstellt die Befehlsinformationserzeugungseinheit 38 eine Vorlage der Befehlsinformation C unter Verwendung der vervollständigten Blockinformation B. Die Befehlsinformation C ist ein Aggregat aus Blockdaten, die Blocknummern, Codeanweisungen und Befehlsinhalt umfassen. Im Schritt S26 bezieht die Befehlsinformationserzeugungseinheit 38 die ursprüngliche Codeanweisung, die der Blocknummer entspricht, von dem Bearbeitungsprogramm P1 und dupliziert die Codeanweisung an die entsprechende Stelle.
  • Wie in 11A gezeigt, hat die Befehlsinformation C nach Ausführung von Schritt S26 vier Blockdaten. In dieser Phase wurde der Inhalt der Codeanweisungen noch nicht in den zwei Blockdaten gespeichert, die jeweils die Blocknummer „NULL“ haben.
  • In Schritt S27 erstellt die Befehlsinformationserzeugungseinheit 38 eine Codeanweisung, die den Blockdaten entspricht, deren Blocknummer null ist (d.h., der Befehlsinhalt ist „Hinzufügen“). Insbesondere wird eine Codeanweisung erzeugt, die den Startpunkt 66 mit dem Endpunkt 68 in den eingefügten Blockdaten mit einer geraden Linie verbindet, um den Abschnitt 72 zu bilden. In dem Fall, in dem es z.B. keinen Relaispunkt 74 zwischen dem Startpunkt 66 und dem Endpunkt 68 oder dem Startpunkt 66 gibt, und der Endpunkt 68 und der Relaispunkt 74 auf der gleichen geraden Linie sind, ist anzumerken, dass Blockdaten in eins integriert sind.
  • Wie in 11B gezeigt, besteht die aus 11A aktualisierte Befehlsinformation C aus drei Blockdaten. Aus diesem Zustand modifiziert die Befehlsinformationserzeugungseinheit 38 [4] die Codeanweisung in den ersten Blockdaten etwas (Schritte S30 und S31 in 10). Dies wird ausgeführt, um die Konsistenz zwischen den mehreren einander benachbarten Codeanweisungen beim Löschen oder Ändern der ersten Blockdaten zum Editieren des Bearbeitungsprogramms P1 zu erhalten.
  • In Schritten S28 und S29 bestimmt die Befehlsinformationserzeugungseinheit 38 den Befehlsinhalt in den ersten Blockdaten. Insbesondere bestimmt die Befehlsinformationserzeugungseinheit 38, ob der Typ „Löschen“ ist (Schritt S28), und bestimmt weiter, ob der Typ „Ändern“ ist, wie erforderlich (Schritt S29).
  • Wenn der Befehlsinhalt „Löschen“ ist (Schritt S28: JA), wird eine leichte Modifizierung ausgeführt, um Teil der Codeanweisung in den ersten Blockdaten auf den Blockdaten neben den ersten Blockdaten wiederzugeben (Schritt S30). Insbesondere löscht die Befehlsinformationserzeugungseinheit 38 nur die Positionsinformation (Koordinatenwerte oder Bewegungsmenge) aus der ursprünglichen Codeanweisung, die den ersten Blockdaten entspricht, und bringt den restlichen Teil an die entsprechende Stelle in der in Schritt S27 erzeugten Codeanweisung.
  • Wenn der Befehlsinhalt „Ändern“ ist (Schritt S28: NEIN → Schritt S29: JA), wird eine leichte Modifizierung vorgenommen, um Teil der Codeanweisung neben den ersten Blockdaten auf den ersten Blockdaten wiederzugeben (Schritt S31). Insbesondere bezieht die Befehlsinformationserzeugungseinheit 38 die Koordinatenwerte des „Startpunkts“ von der in Schritt S27 erzeugten Codeanweisung und ersetzt die Koordinatenwerte des „Endpunkts“, die von der Codeanweisung in den ersten Blockdaten angegeben sind, mit den bezogenen Koordinatenwerten des „Startpunkts“ .
  • Wenn der Befehlsinhalt „Hinzufügen“ ist (Schritt S28: NEIN → Schritt S29: NO), besteht keine Notwendigkeit, die Codeanweisung zu modifizieren, und fährt die Steuerung direkt mit dem nächsten Schritt fort (S32). Auf diese Weise wird der dem vierten Ablaufdiagramm zugeordnete Vorgang (10) beendet.
  • Genauer ist 11A ein Diagramm, das die Befehlsinformation C nach Ausführung von Schritt S25 (die Erstellung der Vorlage) in 10 zeigt. 11B ist ein Diagramm, dass die Befehlsinformation C nach Ausführung von Schritt S27 (Erzeugung einer Codeanweisung) in 10 zeigt. Ferner ist 11C ein Diagramm, das die Befehlsinformation C nach Ausführung von Schritten S30 und S31 (leichte Modifizierung der Codeanweisung) in 10 zeigt.
  • Wie in 11C gezeigt, besteht die aus 11B aktualisierte Blockinformation B aus drei Blockdaten. Auf diese Weise wird durch Bestimmen der ersten und der zweiten Blocknummer von oben, deren Codeanweisungen und den Datenwerten des Befehlsinhalts ein Teil der Befehlsinformation C vervollständigt.
  • An dem ersten Block von oben ist in der Befehlsinformation C die Blocknummer „0000001“, ist die Codeanweisung die gleiche wie der Inhalt vor dem Editieren, d.h. „N001 G90 G00 Y100,000;“ und ist der Befehlsinhalt „Löschen“. In dem zweiten Block von oben ist die Blocknummer „NULL“, ist die Codeanweisung „N001 G90 G00 X 100,000 Y 100,000;“ und ist der Befehlsinhalt „Hinzufügen“. In dem dritten Block von oben ist die Blocknummer „0000002“, ist die Codeanweisung die gleiche wie der Inhalt vor dem Editieren, d.h. „N002 X100,000;“ und ist der Befehlsinhalt „Löschen“.
  • <Fünftes Ablaufdiagramm>
  • 12 ist ein Ablaufdiagramm, das eine Reihe von Vorgängen (die zweite Hälfte) zum Erzeugen der Befehlsinformation C durch die Befehlsinformationserzeugungseinheit 38 zeigt. Sämtliche den zweiten Blockdaten zugeordnete Information (Endpunkt 68) ist festgelegt.
  • Aus dem in 11C gezeigten Zustand modifiziert die Befehlsinformationserzeugungseinheit 38 [5] die Codeanweisung in den zweiten Blockdaten leicht (Schritte S34, S35 in 12). Dies wird ausgeführt, um die Konsistenz zwischen mehreren einander benachbarten Codeanweisungen beim Löschen oder Ändern der zweiten Blockdaten zum Zweck des Editierens des Bearbeitungsprogramms P1 zu erhalten, damit die Werkzeugmaschine 16 korrekt betätigt werden kann.
  • In Schritten S32 und S33 bestimmt die Befehlsinformationserzeugungseinheit 38 den Befehlsinhalt in den zweiten Blockdaten. Insbesondere bestimmt die Befehlsinformationserzeugungseinheit 38, ob der Typ „Löschen“ ist, (S32) und bestimmt ferner, ob der Typ „Ändern“ ist, wie erforderlich (Schritt S33).
  • Wenn der Befehlsinhalt „Löschen“ ist (Schritt S32: JA), dann wurde ein Blockdatenelement direkt nach den zweiten Blockdaten eingefügt und wird danach ein erwünschter Datenwert oder eine erwünschte Codeanweisung gespeichert (Schritt S34). Genauer speichert die Befehlsinformationserzeugungseinheit 38 den Datenwert für „Hinzufügen“ in den Befehlsinhalt und speichert auch den restlichen Teil nach Löschen der Positionsinformationen aus der ursprünglichen Codeanweisung, die den zweiten Blockdaten entspricht (Beispielsweise die Sequenznummer, Vorbereitungsfunktion, Hilfsfunktion) in der „Codeanweisung“.
  • Wenn der Befehlsinhalt „Ändern“ ist (Schritt S32: NEIN → Schritt S33: JA), wird eine leichte Modifizierung vorgenommen, so dass ein Teil der Codeanweisung in den zweiten Blockdaten auf den Blockdaten neben den zweiten Blockdaten wiedergegeben wird (Schritt S35). Insbesondere bezieht die Befehlsinformationserzeugungseinheit 38 die Koordinatenwerte des „Endpunkts“ aus der in Schritt S27 erzeugten Codeanweisung und ersetzt die Koordinatenwerte des „Startpunkts“, die von der Codeanweisung in den zweiten Blockdaten angegeben sind, durch die bezogenen Koordinatenwerte des „Endpunkts“.
  • Wenn der Befehlsinhalt „Hinzufügen“ ist (Schritt S32: NEIN → Schritt S33: NEIN), besteht keine Notwendigkeit, die Codeanweisung zu modifizieren, und fährt der Prozess direkt mit dem nächsten Schritt fort (S36).
  • Auf diese Weise werden sämtliche Datenwerte der dritten und der vierten Blocknummer von oben und die Codeanweisungen und der Befehlsinhalt davon festgelegt, so dass der restliche Teil der Befehlsinformation C vervollständigt wird.
  • Wie in 13A gezeigt, wird die Erläuterung bezüglich des ersten Blocks bis dritten Blocks von oben der Befehlsinformation C, da es keine Änderungen im Vergleich zu 11C gibt, weggelassen. In dem vierten Block von oben ist die Blocknummer „NULL“ und ist die Codeanweisung „N002“; und ist der Befehlsinhalt „Hinzufügen“ .
  • In Schritt S36 gibt die Befehlsinformationserzeugungseinheit 38 die vervollständigte Befehlsinformation C an die Programmeditiereinheit 34 aus. Auf diese Weise wird der dem fünften Ablaufdiagramm (12) zugeordnete Vorgang beendet.
  • <Beschreibung des Vorgangs während der Editierarbeit>
  • Anschließend editiert die Programmeditiereinheit 34 das Bearbeitungsprogramm P1 gemäß der Befehlsinformation C, wodurch das derzeit editierte Bearbeitungsprogramm P2 erlangt wird. Insbesondere liest die Programmeditiereinheit 34 sequenziell die Befehlsinformation C in Einheiten von Blockdaten aus und fügt hinzu, ändert oder löscht eine Codeanweisung an der Position der bezogenen Blocknummer gemäß dem bezogenen Befehlsinhalt. In diesem Fall von Blockdaten mit einer Blocknummer „NULL“ wird die Codeanweisung an der gegenwärtigen Stelle editiert (am Ende des kürzlich editierten Blocks).
  • 13A ist ein Diagramm, das den Endinhalt der Befehlsinformation C zeigt. 13B ist ein Diagramm, das den Inhalt des Bearbeitungsprogramms P2 beim Editieren zeigt. Wie aus den zwei Zeichnungen zu ersehen ist, wird, wenn der Befehlsinhalt „Löschen“ ist, eine Klammer auf „(„ am Anfang der ursprünglichen Codeanweisung gegeben, wohingegen eine Klammer zu „)“ am Ende gegeben wird.
  • Dann führt die Datenbezugseinheit 40 nach Bezug des derzeit editierten Bearbeitungsprogramms P2 die vorstehend beschriebenen Vorgänge in Schritten S1 bis S3 aus, um dadurch die Anzeigedaten D für das sichtbare Bild eines überlappenden Bearbeitungswegs 80 zu erstellen. Es ist anzumerken, dass die Datenbezugseinheit 40 das Lesen einer Zeichenkette (oder eines einzelnen Zeichens) innerhalb des Bereichs zwischen der Klammer auf und der Klammer zu überspringt.
  • Wie in 14A gezeigt, ist in dem Zeichenbereich 54, der Teil des Anzeigebereich 50 ist, ein überlappender Bearbeitungsweg 80 gezeichnet, in dem der ursprüngliche Bearbeitungsweg 52 und die Indikationsroute 70 überlappen. In dem überlappenden Bearbeitungsweg 80 sind zu löschende Abschnitte 61 und 62 durch Pfeile aus gestrichelten Linien angegeben, ist ein Abschnitt 63, der unverändert bleiben soll, durch einen Pfeil aus einer durchgezogenen Linie angezeigt, und ist ein hinzuzufügender Abschnitt 72 durch einen Pfeil aus einer durchgezogenen Linie angezeigt. In dem Beispiel dieser Zeichnung wird der hinzugefügte Abschnitt 72 im Vergleich zu den zu löschenden Abschnitten 61 und 62 relativ hervorgehoben.
  • Auf diese Weise kann die GUI-Einheit 24 die Indikationsroute 70 auf dem ursprünglichen Bearbeitungsweg 52 in dem Anzeigebereich 50 festlegen und die Indikationsroute 70 (d.h. Abschnitt 72) in einer anderen Anzeigeform als der eines Bereiches (d.h. Abschnitte 61, 62) von dem Startpunkt 66 zu dem Endpunkt 68 in dem ursprünglichen Bearbeitungsweg 52 anzeigen. Folglich kann die Bedienungsperson den Unterschied zwischen den Bearbeitungswegen vor und nach der Änderung auf einen Blick erkennen.
  • Außerdem kann, wie in 14B gezeigt, ein Texteditierbereich 82, der ein Texteditieren des Bearbeitungsprogramms P ermöglicht, in dem Anzeigebereich 50 zusammen mit dem vorstehend beschriebenen Zeichenbereich 54 vorgesehen sein. In diesem Fall kann die GUI-Einheit 24, ähnlich wie der Zeichenbereich 54, Blöcke (Codeanweisungen), die dem Abschnitt 72 entsprechen, in einer anderen Anzeige von Blöcken (Codeanweisung) anzeigen, die den Abschnitten 61 und 62 entsprechen.
  • < Bestätigung von Editierarbeit>
  • Die Bedienungsperson führt wiederholt Editieren, Simulation, Versuchsausführung und Versuchsbearbeitung des Bearbeitungsprogramms P aus, um dadurch ein Bearbeitungsprogramm P zu erlangen, das die optimalen Bearbeitungsbedingungen erfüllt. Zu diesem Zeitpunkt führt die Bedienungsperson einen Bestätigungsvorgang des Editierens über den Anzeigebereich 50, genauer einen Berührungsvorgang der „EDITIERUNG DARSTELLEN“ Schaltfläche 58 Figur (14A), aus.
  • Danach weist die Steuereinheit 20 nach Akzeptieren des Berührungsvorgangs die Programmeditiereinheit 34 an, den editierten Inhalt in Ordnung zu bringen. Dann führt die Programmeditiereinheit 34 das Editieren des Löschens der mit spezifischen Zeichen gegebenen Codeanweisungen zusammen mit den spezifischen Zeichen aus dem derzeit editierten Bearbeitungsprogramm P2 aus.
  • Auf diese Weise kann die Programmeditiereinheit 34 die Codeanweisungen mit angehängten spezifisches Zeichen und die spezifischen Zeichen als Reaktion auf den Bestätigungsvorgang der Bedienungsperson durch die GUI-Einheit 24 löschen, um dadurch das Bearbeitungsprogramm P zu editieren. Somit ist es möglich, zu verhindern, dass der editierte Inhalt des Bearbeitungsprogramms P entgegen der Absicht der Bedienungsperson automatisch bestimmt wird.
  • Nach Bezug des Bearbeitungsprogramms P3, wie in 15A gezeigt, führt die Datenbezugseinheit 40 die vorstehend beschriebenen Schritte S1 bis S3 aus. Folglich erstellt die Datenbezugseinheit 40 Anzeigedaten D für ein sichtbares Bild des Ziels eines tatsächlichen Bearbeitungswegs 18 (der nachstehend als ein neuer Bearbeitungsweg 84 bezeichnet wird), der von dem Bearbeitungsprogramm P3 nach dem Editieren festgelegt wird.
  • Wie in 15B gezeigt, wird ein neuer Bearbeitungsweg 84 in dem Zeichenbereich 54 gezeichnet, der sich von dem ursprünglichen Bearbeitungsweg 52 unterscheidet. Der neue Bearbeitungsweg 84 ist aus sequenziell verbundenen zwei Bereichen gerader Linien 72 und 63 gebildet. Abschnitt 72 entspricht einem neuen Bewegungsbefehl bei Sequenznummer „N001“. Der Abschnitt 63 entspricht dem ursprünglichen Bewegungsbefehl bei Sequenznummer „N003“. Sequenznummer „N002“ ist ein Dummy-Befehl ohne jeglichen Bearbeitungsvorgang.
  • Wie vorstehend beschrieben, umfasst die numerische Steuerung 10 ferner eine Kommunikationseinheit 22, die das von dem CAD/CAM-Terminal 12 (externe Vorrichtung) erstellte Bearbeitungsprogramm P empfangen kann, und kann das empfangene Bearbeitungsprogramm P editieren. Falls die numerische Steuerung 10 keine Funktion des Erstellens des Bearbeitungsprogramms P hat, ist es möglich, das Bearbeitungsprogramm P durch die numerische Steuerung alleine ohne erneute Erstellung des Programms unter Verwendung einer externen Vorrichtung zu modifizieren und vervollständigen.
  • <Löschen von editierter Arbeit>
  • Andererseits kann die Bedienungsperson als Ergebnis einer Wiederholung von Versuch und Irrtum zu dem Schluss kommen, dass es vorzuziehen ist, das nicht editierte Bearbeitungsprogramm P1 ohne jegliche Änderung zu verwenden. In diesem Fall führt die Bedienungsperson einen Löschvorgang des Editierens über den Anzeigebereich 50, genauer einen Berührungsvorgang der „LÖSCHEN“ Schaltfläche 57 (14A), aus.
  • Dann weist nach Akzeptieren des Berührungsvorgangs die Steuereinheit 20 die Programmeditiereinheit 34 an, sämtlichen editierten Inhalt zu löschen. Dann führt die Programmeditiereinheit 34 das Editieren des Extrahierens der von dem derzeit editierten Bearbeitungsprogramm P2 gegebenen Codeanweisungen mit spezifischen Zeichen und des Löschens nur der spezifischen Zeichen aus.
  • Auf diese Weise kann die Programmeditiereinheit 34 den Codeanweisungen spezifische Zeichen zuordnen, die teilweise das Ausgelesene invalidieren, um dadurch das Bearbeitungsprogramm P zu editieren. Durch späteres Löschen der spezifischen Zeichen kann der Inhalt der Codeanweisung leicht validiert werden. In diesem Fall werden, obwohl der Typ des spezifischen Zeichens nicht insbesondere beschränkt ist, in Anbetracht der Wiederherstellbarkeit der Daten vorzugsweise Zeichen (oder Zeichenketten) verwendet, die in der Regel in dem Bearbeitungsprogramm P nicht verwendet werden.
  • [Wirkung der Ausführungsform]
  • Wie vorstehend beschrieben, ist die numerische Steuerung 10 eine Bearbeitungsprogrammeditiervorrichtung, die ein Bearbeitungsprogramm P editiert, um zu bewirken, dass eine Werkzeugmaschine 16 ein Werkzeug W entlang eines tatsächlichen Bearbeitungswegs 18 bearbeitet, der aus zwei oder mehr Abschnitten besteht.
  • Die numerische Steuerung 10 umfasst: [1] eine GUI-Einheit 24, die dafür konfiguriert ist, einen ursprünglichen Bearbeitungsweg 52 in einem Anzeigebereich 50 anzuzeigen und eine Indikationsroute 70 mit zwei Punkten, die sich als ein Startpunkt 66 und ein Endpunkt 68 auf dem ursprünglichen Bearbeitungsweg 52 befinden, gemäß einem von einer Bedienungsperson durch den Anzeigebereich 50 ausgeführten Eingabevorgang festzulegen; und [2] eine Programmeditiereinheit 34, die dafür konfiguriert ist, ein Bearbeitungsprogramm P1 zu editieren, das den ursprünglichen Bearbeitungsweg 52 angibt, um dadurch einen neuen Bearbeitungsweg 84 durch Ersetzen eines Bereichs von dem Startpunkt 66 zu dem Endpunkt 68 auf dem ursprünglichen Bearbeitungsweg 52 zu bilden, wobei die Indikationsroute 70 durch die GUI-Einheit 24 festgelegt wird.
  • In dem vorstehend beschriebenen Bearbeitungsprogrammeditierverfahren und -editierprogramm führt die numerische Steuerung 10 (Bearbeitungsprogrammeditiervorrichtung) aus: [1] einen Anzeigeschritt zum Anzeigen eines ursprünglichen Bearbeitungswegs 52 (Schritt S3 in 3); [2] einen Festlegungsschritt zum Festlegen einer Indikationsroute 70 (Schritt S4 in 3); und [3] einen Editierschritt zum Editieren eines Bearbeitungsprogramms P1, um einen neuen Bearbeitungsweg 84 zu bilden (14A bis 15B).
  • Somit kann der neue Bearbeitungsweg 84 durch Ersetzen des Bereichs von dem Startpunkt 66 zu dem Endpunkt 68 in dem ursprünglichen Bearbeitungsweg 52 mit der durch die GUI-Einheit 24 festgelegten Indikationsroute 70 erstellt werden. Somit kann die Bedienungsperson das Editieren des Bearbeitungsprogramms automatisch wie beabsichtig durch einen Eingabevorgang durch eine visuell leicht zu verstehende Schnittstelle ausführen, ohne Codeanweisungen des Bearbeitungsprogramms P direkt zu verwalten. Folglich ist es möglich, die Arbeitszeit zum Editieren des Bearbeitungsprogramms P wesentlich zu reduzieren.
  • Die numerische Steuerung 10 kann ferner eine Befehlsinformationserzeugungseinheit 38 umfassen, die dafür konfiguriert ist, Befehlsinformation C zu erzeugen, die eine Blocknummer und einen Befehlsinhalt in dem Bearbeitungsprogramm P1 anzeigt, und die Programmeditiereinheit 34 kann gemäß der erzeugten Befehlsinformation C eine Codeanweisung in einer Position, die der Blocknummer entspricht, zum Editieren des Bearbeitungsprogramms P hinzufügen, ändern oder löschen.
  • Außerdem kann die Befehlsinformationserzeugungseinheit 38 die Befehlsinformation C auf Grundlage der Koordinatenwerte des Startpunkts 66 und der Koordinatenwerte des Endpunkts 68 erzeugen, die durch die Codeanweisung festgelegt werden, die der Blocknummer entspricht.
  • Die numerische Steuerung 10 kann ferner umfassen: eine Datenbezugseinheit 40, die dafür konfiguriert ist, das Bearbeitungsprogramm P zu analysieren und Suchdaten L zu beziehen, in denen die Merkmalspunkte der Abschnitte 61 bis 63 den Blocknummern zugeordnet sind; und eine Blockinformationsucheinheit 36, die dafür konfiguriert ist, die bezogenen Suchdaten L für die Blocknummer zu durchsuchen, in der der Merkmalspunkt in den Abschnitten 61 bis 63 mit dem Startpunkt 66 oder dem Endpunkt 68 zusammenfällt.
  • Nachdem die Suchdaten L, die die zum Editieren erforderlichen Daten umfassen, von dem Bearbeitungsprogramm P mit einer großen Datenmenge bezogen werden, wird ein Suchprozess auf Grundlage der Suchdaten L ausgeführt. Somit ist es möglich, die zum Suchen nach Merkmalspunkten in den Abschnitten 61 bis 63 und Blocknummern erforderliche Zeit wesentlich zu reduzieren.

Claims (9)

  1. Bearbeitungsprogrammeditiervorrichtung (10) zum Editieren eines Bearbeitungsprogramms (P), das bewirkt, dass eine Werkzeugmaschine (16) ein Werkstück (W) entlang eines tatsächlichen Bearbeitungswegs (18) bearbeitet, der zwei oder mehr Abschnitte (61 bis 63) hat, die umfasst: eine Graphical User Interface Einheit (24), die dafür konfiguriert ist, einen ursprünglichen Bearbeitungsweg (52) in einem Anzeigebereich (50) anzuzeigen und eine Indikationsroute (70) mit einem beliebigen Punkt auf einem ersten Abschnitt, als Startpunkt (66), und einem beliebigen Punkt auf einem zweiten Abschnitt, als Endpunkt (68) die jeweils in dem ursprünglichen Bearbeitungsweg (52) enthalten sind, gemäß einem Eingabevorgang festzulegen, der von einer Bedienungsperson über den Anzeigebereich (50) ausgeführt wird; eine Programmeditiereinheit (34), die dafür konfiguriert ist, das Bearbeitungsprogramm (P) zu editieren, das den ursprünglichen Bearbeitungsweg (52) angibt, um dadurch einen neuen Bearbeitungsweg (84) durch Ersetzen eines Bereiches von dem Startpunkt (66) zu dem Endpunkt (68) auf dem ursprünglichen Bearbeitungsweg (52) zu bilden, wobei die Indikationsroute (70) von der Graphical User Interface Einheit (24) festgelegt wird, und eine Befehlsinformationserzeugungseinheit (38), die dafür konfiguriert ist, Befehlsinformation (C) zu erzeugen, die Blocknummern und Befehlsinhalt in dem Bearbeitungsprogramm (P) angibt; wobei die Programmeditiereinheit (34) gemäß dem Befehlsinhalt der von der Befehlsinformationserzeugungseinheit (38) erzeugten Befehlsinformation (C) eine Codeanweisung an einer Position, die jeder der Blocknummern entspricht, hinzufügt, ändert oder löscht, und das Bearbeitungsprogramm (P) editiert.
  2. Bearbeitungsprogrammeditiervorrichtung (10) nach Anspruch 1, wobei die Befehlsinformationserzeugungseinheit (38) die Befehlsinformation (C) auf Grundlage von Koordinatenwerten des Startpunkts (66) und von Koordinatenwerten des Endpunkts (68) erzeugt, die durch die Codeanweisung festgelegt werden, die jeder der Blocknummern entspricht.
  3. Bearbeitungsprogrammeditiervorrichtung (10) nach Anspruch 2, die ferner umfasst: eine Datenbezugseinheit (40), die dafür konfiguriert ist, das Bearbeitungsprogramm (P) zu analysieren und Suchdaten (L) zu beziehen, in denen den Blocknummern Merkmalspunkte der Abschnitte (61 bis 63) zugeordnet sind, und eine Blockinformationssucheinheit (36), die dafür konfiguriert ist, die von der Datenbezugseinheit (40) bezogenen Suchdaten (L) für eine der Blocknummern zu suchen, in der einer der Merkmalspunkte der Abschnitte (61 bis 63) mit dem Startpunkt (66) oder dem Endpunkt (68) zusammenfällt.
  4. Bearbeitungsprogrammeditiervorrichtung (10) nach einem der Ansprüche 1 bis 3, wobei die Programmeditiereinheit (34) das Bearbeitungsprogramm (P) durch Zuordnen eines spezifischen Zeichens für das teilweise Invalidieren des Auslesens der Daten zu der Codeanweisung editiert.
  5. Bearbeitungsprogrammeditiervorrichtung (10) nach Anspruch 4, wobei die Programmeditiereinheit (34) das Bearbeitungsprogramm (P) durch Löschen der Codeanweisung, der das spezifische Zeichen zugeordnet ist, zusammen mit dem spezifischen Zeichen, gemäß einem Bestätigungsvorgang editiert, der von der Bedienungsperson unter Verwendung der Graphical User Interface Einheit (24) ausgeführt wird.
  6. Bearbeitungsprogrammeditiervorrichtung (10) nach einem der Ansprüche 1 bis 5, wobei die Graphical User Interface Einheit (24) die Indikationsroute (70) auf dem ursprünglichen Bearbeitungsweg (52) in dem Anzeigebereich (50) festlegt und die Indikationsroute (70) in einer Anzeigeform anzeigt, die sich von der Anzeigeform des Bereiches von dem Startpunkt (66) zu dem Endpunkt (68) auf dem ursprünglichen Bearbeitungsweg (52) unterscheidet.
  7. Bearbeitungsprogrammeditiervorrichtung (10) nach einem der Ansprüche 1 bis 6, die ferner umfasst: eine Kommunikationseinheit (22), die dafür konfiguriert ist, das von einer externen Vorrichtung (12) erstellte Bearbeitungsprogramm (P) zu empfangen, wobei das von der Kommunikationseinheit (22) empfangene Programm (P) editiert wird.
  8. Bearbeitungsprogrammeditierverfahren zum Editieren eines Bearbeitungsprogramms (P), das bewirkt, dass eine Werkzeugmaschine (16) ein Werkstück (W) entlang eines tatsächlichen Bearbeitungswegs (18) bearbeitet, der zwei oder mehr Abschnitte (61 bis 63) hat, wobei das Verfahren die von einer Bearbeitungsprogrammeditiervorrichtung (10) umgesetzten Schritte umfasst: Anzeigen eines ursprünglichen Bearbeitungswegs (52) in einem Anzeigebereich (50) einer Graphical User Interface Einheit (24), Festlegen einer Indikationsroute (70) mit einem beliebigen Punkt auf einem ersten Abschnitt, als Startpunkt (66), und einem beliebigen Punkt auf einem zweiten Abschnitt als Endpunkt (68), die jeweils in dem ursprünglichen Bearbeitungsweg (52) enthalten sind, gemäß einem Eingabevorgang, der von einer Bedienungsperson unter Verwendung der Graphical User Interface Einheit (24) ausgeführt wird, und Editieren des Bearbeitungsprogramms (P), das den ursprünglichen Bearbeitungsweg (52) angibt, um dadurch einen neuen Bearbeitungsweg (84) durch Ersetzen eines Bereiches von dem Startpunkt (66) zu dem Endpunkt (68) auf dem ursprünglichen Bearbeitungsweg (52) mit der festgelegten Indikationsroute (70) zu bilden; und Erzeugen einer Befehlsinformation (C), die Blocknummern und Befehlsinhalt in dem Bearbeitungsprogramm (P) angibt; wobei das Editieren des Bearbeitungsprogramms (P) umfasst, gemäß dem Befehlsinhalt von der Befehlsinformationserzeugungseinheit (38) erzeugten Befehlsinformation (C) eine Codeanweisung an einer Position hinzuzufügen, zu ändern oder zu löschen.
  9. Computerlesbares Speichermedium (26), das ein Editierprogramm zum Editieren eines Bearbeitungsprogramms (P) speichert, das bewirkt, dass eine Werkzeugmaschine (16) ein Werkstück (W) entlang eines tatsächlichen Bearbeitungswegs (18) bearbeitet, der zwei oder mehr Abschnitte (61 bis 63) hat, wobei das Editierprogramm bewirkt, dass eine Bearbeitungsprogrammeditiervorrichtung (10) ausführt: einen Anzeigeschritt des Anzeigens eines ursprünglichen Bearbeitungswegs (52) in einem Anzeigebereich (50) einer Graphical User Interface Einheit (24), einen Festlegungsschritt zum Festlegen einer Indikationsroute (70) mit einem beliebigen Punkt auf einem ersten Abschnitt, als Startpunkt (66), und einem beliebigen Punkt auf einem zweiten Abschnitt als Endpunkt (68), die jeweils in dem ursprünglichen Bearbeitungsweg (52) enthalten sind, gemäß einem Eingabevorgang, der von einer Bedienungsperson unter Verwendung der Graphical User Interface Einheit (24) ausgeführt wird, und einen Editierschritt zum Editieren des Bearbeitungsprogramms (P), das den ursprünglichen Bearbeitungsweg (52) angibt, um dadurch einen neuen Bearbeitungsweg (84) durch Ersetzen eines Bereiches von dem Startpunkt (66) zu dem Endpunkt (68) auf dem ursprünglichen Bearbeitungsweg (52) mit der festgelegten Indikationsroute (70) zu bilden; einen Schritt zum Erzeugen einer Befehlsinformation (C), die Blocknummern und Befehlsinhalt in dem Bearbeitungsprogramm (P) angibt; wobei das Editieren des Bearbeitungsprogramms (P) umfasst, gemäß dem Befehlsinhalt von der Befehlsinformationserzeugungseinheit (38) erzeugten Befehlsinformation (C) eine Codeanweisung an einer Position hinzuzufügen, zu ändern oder zu löschen.
DE102017005933.0A 2016-06-24 2017-06-22 Bearbeitungsprogrammeditiervorrichtung, Verfahren und Speichermedium Active DE102017005933B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-125541 2016-06-24
JP2016125541A JP6441262B2 (ja) 2016-06-24 2016-06-24 加工プログラム編集装置、方法、及び編集用プログラム

Publications (2)

Publication Number Publication Date
DE102017005933A1 DE102017005933A1 (de) 2017-12-28
DE102017005933B4 true DE102017005933B4 (de) 2021-06-02

Family

ID=60579877

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017005933.0A Active DE102017005933B4 (de) 2016-06-24 2017-06-22 Bearbeitungsprogrammeditiervorrichtung, Verfahren und Speichermedium

Country Status (4)

Country Link
US (1) US10534349B2 (de)
JP (1) JP6441262B2 (de)
CN (1) CN107544437B (de)
DE (1) DE102017005933B4 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6734314B2 (ja) * 2018-03-08 2020-08-05 ファナック株式会社 制御装置、データ作成装置、制御方法及び制御プログラム
JP6881380B2 (ja) * 2018-03-30 2021-06-02 ブラザー工業株式会社 工作機械、制御方法及びコンピュータプログラム
JP6860529B2 (ja) * 2018-07-20 2021-04-14 ファナック株式会社 数値制御装置及びデータ編集方法
JP6871280B2 (ja) * 2019-01-07 2021-05-12 ファナック株式会社 数値制御装置
JP7469022B2 (ja) * 2019-10-29 2024-04-16 ファナック株式会社 ロボットシステム
US11347199B2 (en) * 2019-11-08 2022-05-31 Fanuc Corporation Program editing device, wire electrical discharge machine and program editing method
JP7436797B2 (ja) * 2019-12-16 2024-02-22 株式会社デンソーウェーブ ロボットのプログラム作成支援装置
CN112859748B (zh) * 2020-12-30 2022-05-17 深圳市雷赛控制技术有限公司 G代码加工文件的生成方法、生成装置和处理器
CN113814795B (zh) * 2021-10-28 2023-02-10 徐州徐工挖掘机械有限公司 一种基于双通道在机测量的工件加工数据测量、修正、校验方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020031019A1 (en) * 2000-09-14 2002-03-14 Mori Seiki Co., Ltd. Automatic programming and simulation apparatus
EP2796953A1 (de) * 2013-04-23 2014-10-29 Siemens Aktiengesellschaft Numerische Steuerung mit Anzeige einer Vorschau bei Änderungen des Teileprogramms
US20150227133A1 (en) * 2014-02-13 2015-08-13 Fanuc Corporation Numerical controller capable of preventing wrong machining after machining condition change

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6131024A (ja) 1984-07-23 1986-02-13 吉本 直幸 着色培養土
JPS6131023A (ja) 1984-07-24 1986-02-13 明治薬品株式会社 有機ゲルマニウム水による麦芽の生産法
JPH06131024A (ja) * 1992-10-15 1994-05-13 Fanuc Ltd 形状入力方式
JPH06131023A (ja) * 1992-10-22 1994-05-13 Hitachi Comput Eng Corp Ltd Ncデータ作成装置
JPH07311612A (ja) * 1994-05-16 1995-11-28 Fanuc Ltd 数値制御装置における加工プログラム編集方法及びその装置
US6219055B1 (en) * 1995-12-20 2001-04-17 Solidworks Corporation Computer based forming tool
AU2003231468A1 (en) * 2002-10-25 2004-05-13 Sigma Inc. Cad system, program for executing same, and record medium where the program is recorded
ATE501472T1 (de) 2007-01-18 2011-03-15 Studer Ag Fritz Verfahren zum ansteuern eines verfahrbaren werkzeugs, eingabevorrichtung sowie bearbeitungsmaschine
CN100514234C (zh) * 2007-12-28 2009-07-15 哈尔滨工业大学 基于pc机的开放式数控系统
US20120022713A1 (en) * 2010-01-14 2012-01-26 Deaver Sr Brian J Power Flow Simulation System, Method and Device
JP5268974B2 (ja) * 2010-03-10 2013-08-21 三菱電機株式会社 数値制御装置および生産システム
CN104350437B (zh) * 2012-06-19 2018-02-02 德普技术公司 机器的cam集成cnc控制
CN102914994B (zh) * 2012-10-09 2014-10-22 苏州新代数控设备有限公司 用于立卧可调式加工中心的轴交换数值控制器
JP2015111338A (ja) 2013-12-06 2015-06-18 株式会社ツガミ 加工プログラム生成装置、加工システム、及び、加工プログラム生成用のプログラム
JP5911912B2 (ja) * 2014-06-04 2016-04-27 ファナック株式会社 ワイヤ放電加工機用の加工経路描画装置
WO2016035869A1 (ja) 2014-09-03 2016-03-10 ヤマザキマザック 株式会社 加工プログラム編集支援装置
CN106471430B (zh) * 2014-09-03 2018-01-02 山崎马扎克公司 加工程序编辑辅助装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020031019A1 (en) * 2000-09-14 2002-03-14 Mori Seiki Co., Ltd. Automatic programming and simulation apparatus
EP2796953A1 (de) * 2013-04-23 2014-10-29 Siemens Aktiengesellschaft Numerische Steuerung mit Anzeige einer Vorschau bei Änderungen des Teileprogramms
US20150227133A1 (en) * 2014-02-13 2015-08-13 Fanuc Corporation Numerical controller capable of preventing wrong machining after machining condition change

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RAUCH, Matthieu [et al.]: Enhancing CNC manufacturing interoperability with STEP-NC. Stand vom 12.07.2010 (HAL ID: hal-00501489). 13 Seiten. URL: https://hal.archives-ouvertes.fr/hal-00501489 [abgerufen am 23.10.2020] *

Also Published As

Publication number Publication date
DE102017005933A1 (de) 2017-12-28
JP6441262B2 (ja) 2018-12-19
US20170371316A1 (en) 2017-12-28
US10534349B2 (en) 2020-01-14
CN107544437A (zh) 2018-01-05
JP2017228210A (ja) 2017-12-28
CN107544437B (zh) 2021-02-12

Similar Documents

Publication Publication Date Title
DE102017005933B4 (de) Bearbeitungsprogrammeditiervorrichtung, Verfahren und Speichermedium
DE112010005023B4 (de) Verwendung einer programmerstellungsunterstützungsvorrichtung zum erstellen von programmen für zu steuernde anlagen
DE69233037T2 (de) Automatisiertes neues Layout mit dimensionaler Verknüpfung
DE112014002389B4 (de) Bearbeitungsumgebung für ein Programm für ein maschinelles Bilderkennungssystem, enthaltend ein betriebskontextbewusstes Kopier-und Einfüge-Merkmal
DE3410430C2 (de)
DE112013006481B4 (de) Systementwicklungsgerät, Systementwicklungsverfahren und Systementwicklungsprogramm
DE112013007346T5 (de) Programm zur Programmeditierung
DE112012003108T5 (de) Systemkonstruktionsunterstützungsvorrichtung und Systemkonstruktionserzeugungsverfahren
DE112017006457T5 (de) Bearbeitungsprogrammänderungsvorrichtung und Bearbeitungsprogrammänderungsverfahren
DE102019004458A1 (de) Numerische steuerung und dateneditierverfahren
DE112011105625T5 (de) Sequenzprogramm-Erzeugungsvorrichtung
DE102006001101A1 (de) Verfahren und System zur Umsetzung von Ladder Logic in Boolesche Logik in einem Prozesssteuersystem
DE102016014382A1 (de) Numerische Steuerung
DE10197097T5 (de) Programmierwerkzeug
DE112020000656T5 (de) Bearbeitungsprogrammumwandlungsvorrichtung, numerische Steuerung, Bearbeitungsprogrammumwandlungsverfahren und Vorrichtung für maschinelles Lernen
DE102020202087A1 (de) Bildschirminhalterstellungsvorrichtung und bildschirminhalterstellungssystem
EP0642067B1 (de) Dialogorientiertes Programmiersystem für eine CNC-Werkzeugmaschine
DE102016007651A1 (de) Numerische Steuerung mit Funktion zur automatischen Auswahl eines Speicherungsziels für ein Bearbeitungsprogramm
EP0643342B1 (de) Verfahren zur Erstellung und/oder Änderung von NC-Programmen
EP1450279A2 (de) Verfahren zur Projektierung eines elektrischen Systems
EP1402326B1 (de) Verfahren und datenverarbeitungseinrichtung zur inbetriebsetzung von manufacturing execution systems (mes) - komponenten
DE112012005821T5 (de) Bearbeitungsprogramm-Erzeugungsvorrichtung, Bearbeitungsprogramm-Erzeugungsverfahren und Bearbeitungsprogramm-Erzeugungsprogramm
DE102019201287A1 (de) Numerische Steuereinrichtung
DE102020124479A1 (de) Optimierungsvorrichtung
DE10108688A1 (de) Meßvorrichtung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final