-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die Erfindung betrifft ein numerisches Steuersystem und insbesondere ein numerisches Steuersystem, welches den Betriebszustand einer Werkzeugmaschine durch Wechsel von Lernmodellen bestimmt.
-
Zum Stand der Technik
-
Bei Werkzeugmaschinen, welche ein Werkstück bearbeiten durch Bewegung eines Werkzeuges relativ zum Werkstück (beispielsweise ein sogenanntes Bearbeitungszentrum, eine Drehmaschine und dergleichen) sind Techniken im Einsatz zum Bestimmen eines gestörten Betriebszustandes der Werkzeugmaschine, wenn beispielsweise eine große Last anliegt an einem eine Spindel drehenden Motor (einem Spindelmotor) oder an einem das Werkzeug bewegenden Motor (Vorschubachsenmotor) bei der Bearbeitung einer Werkstückes, wenn eine anormale Temperatur detektiert wird oder wenn ein Schlag oder ein anormales Geräusch oder dergleichen detektiert werden (siehe beispielsweise offengelegte
japanische Patentanmeldung 2009 -
080752 , offengelegte
japanische Patentanmeldung 2008-110435 , offengelegte japanische Patentanmeldung 2007-072879,
japanisches Patent H09-076144 und weiteres).
-
Wird eine Unregelmäßigkeit bezüglich des Betriebszustandes einer Werkzeugmaschine auf Basis von Informationen ermittelt, die bei einer Bearbeitung extern ermittelt werden, dann variiert aber die extern gewonnene Information bezüglich des anormalen Betriebszustandes der Werkzeugmaschine in Abhängigkeit von Einzelheiten der Bearbeitung (Grobbearbeitung, Feinbearbeitung oder dergleichen). Im Einzelnen: die Zustandsinformationen bezüglich einer Bearbeitung, die extern ermittelt werden, unterscheiden sich in Abhängigkeit von dem Motor-Betriebsmuster, wie der Rotationsgeschwindigkeit, der Vorschubrate oder dergleichen der bei der Bearbeitung eingesetzten Spindel, der Art des für die Bearbeitung eingesetzten Werkzeuges, dem Material des bearbeiteten Werkstückes etc. Es ist deshalb schwierig, eine universelle maschinelle Lernvorrichtung bereitzustellen (ein universelles Lernmodell), welche eingesetzt werden kann zum Detektieren einer Unregelmäßigkeit (Anomalie) des Betriebszustandes einer Werkzeugmaschine in Verknüpfung mit den genannten unterschiedlichen Situationen, weil eine sehr große Menge an Zustandsinformationen erforderlich ist, die in den einzelnen Situationen detektiert werden.
-
KURZBESCHREIBUNG DER ERFINDUNG
-
Dementsprechend besteht ein Bedarf an einem numerischen Steuersystem, welches in einem weiten Bereich eine Anomalie (eine Unregelmäßigkeit) bezüglich des Betriebszustandes einer Werkzeugmaschine detektieren kann, auch wenn ein Motor-Betriebsmuster, ein Werkzeug, ein Werkstück oder dergleichen bei der Bearbeitung sehr verschieden sind.
-
Ein numerisches Steuersystem gemäß einer Variante der Erfindung löst das obige Problem durch Änderung eines Extraktionsverfahrens bezüglich Zustandsdaten in einem Prozess des maschinellen Lernens (Lernen oder Schlussfolgern) entsprechend einem Kontext (Zusammenhang), welcher den Betriebszustand angibt einschließlich eines Motor-Betriebsmusters bei der Bearbeitung oder einen Zustand bezüglich der Art des bei der Bearbeitung eingesetzten Werkzeuges, der Art des zu bearbeitenden Werkstückes oder dergleichen. Insbesondere extrahiert das numerische Steuersystem gemäß einer Variante der Erfindung Zustandsdaten aus einem Zustandsbetrag, der bei der Bearbeitung ermittelt wird unter Einsatz eines Extraktionsmusters auf Basis eines Kontextes (Zusammenhangs) und wählt aus einer Mehrzahl von Extraktionsmustern entsprechend dem Kontext ein Extraktionsmuster aus, welches für die Extraktion der Zustandsdaten verwendet wird.
-
Eine weitere Variante der Erfindung ist ein numerisches Steuersystem, welches den Betriebszustand einer Werkzeugmaschine ermittelt, wobei das numerische Steuersystem enthält: eine Kontextgewinnungseinheit (Zusammenhangsgewinnungseinheit), welche einen Kontext in einem Bearbeitungsbetrieb einer Werkzeugmaschine gewinnt; eine Zustandsbetragsdetektionseinheit, welche einen Steuerzustandsbetrag ermittelt bezüglich jeder Achse der Werkzeugmaschine; eine Zustandsdatenextraktionseinheit, welche Zustandsdaten aus dem Zustandsbetrag extrahiert unter Verwendung eines Extraktionsmusters auf Basis des Kontextes in dem Bearbeitungsbetrieb, wie durch die Kontextgewinnungseinheit gewonnen ist; eine Merkmalsbetragserzeugungseinheit, welche einen Merkmalsbetrag erzeugt, der den Betriebszustand der Werkzeugmaschine entsprechend den Zustandsdaten angibt; eine Schlussfolgerungsberechnungseinheit, welche einen Beurteilungswert berechnet bezüglich des Betriebszustandes der Werkzeugmaschine auf Basis des Merkmalsbetrages; und eine Störungsbestimmungseinheit, welche den Betriebszustand der Werkzeugmaschine bestimmt auf Basis eines Rechenergebnisses der Schlussfolgerungsberechnungseinheit.
-
Mit einer Variante der vorliegenden Erfindung ist es möglich, einen Prozess maschinellen Lernens effektiv auszuführen (Lernen oder Schlussfolgern), weil es möglich ist, Zustandsdaten zu extrahieren entsprechend der jeweiligen Situation durch Auswahl eines Extraktionsmusters entsprechend einem Kontext (Zusammenhang) des Betriebszustandes der Werkzeugmaschine, eines Zustandes der Umgebung oder dergleichen bei der Bearbeitung.
-
Figurenliste
-
Obige sowie weitere Ziele und Merkmale der Erfindung werden noch deutlicher aus der nachfolgenden Beschreibung von Ausführungsbeispielen mit Blick auf die Figuren:
- 1 zeigt schematisch den gerätetechnischen Aufbau zur Erläuterung von Hauptbestandteilen eines numerischen Steuersystems gemäß einem Ausführungsbeispiel;
- 2 ist ein schematisches Funktionsblockdiagramm des numerischen Steuersystems gemäß einem ersten Ausführungsbeispiel;
- 3A erläutert einen Extraktionsprozess für Zustandsdaten, wobei ein Extraktionsmuster gemäß einer Variante der vorliegenden Erfindung nicht eingesetzt wird;
- 3B erläutert einen Extraktionsprozess für Zustandsdaten, wobei ein Extraktionsmuster gemäß einer Variante der vorliegenden Erfindung nicht eingesetzt wird;
- 3C erläutert einen Extraktionsprozess für Zustandsdaten, wobei ein Extraktionsmuster gemäß einer Variante der vorliegenden Erfindung nicht eingesetzt wird;
- 4A erläutert einen Extraktionsprozess für Zustandsdaten, wobei ein Extraktionsmuster gemäß einer Variante der vorliegenden Erfindung eingesetzt wird;
- 4B erläutert einen Extraktionsprozess für Zustandsdaten, wobei ein Extraktionsmuster gemäß einer Variante der vorliegenden Erfindung eingesetzt wird;
- 4C erläutert einen Extraktionsprozess für Zustandsdaten, wobei ein Extraktionsmuster gemäß einer Variante der vorliegenden Erfindung eingesetzt wird;
- 5 ist ein schematisches Funktionsblockdiagramm eines numerischen Steuersystems gemäß einem zweiten Ausführungsbeispiel;
- 6 ist ein schematisches Funktionsblockdiagramm eines numerischen Steuersystems gemäß einem dritten Ausführungsbeispiel;
- 7 ist ein schematisches Funktionsblockdiagramm zur Erläuterung eines abgewandelten Beispiels eines numerischen Steuersystems gemäß einem vierten Ausführungsbeispiel; und
- 8 ist ein schematisches Funktionsblockdiagramm eines numerischen Steuersystems gemäß einem fünften Ausführungsbeispiel.
-
BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSBEISPIELE IM EINZELNEN
-
Ausführungsbeispiele der vorliegenden Erfindung werden nunmehr im Zusammenhang mit den Figuren näher beschrieben.
-
1 zeigt schematisch die Hardware-Konfiguration zur Erläuterung hauptsächlicher Komponenten der numerischen Steuerung und einer maschinellen Lernvorrichtung, welche das numerisches Steuersystem 1 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung bilden. Eine CPU 11 in der numerischen Steuerung 2 gemäß dem vorliegenden Ausführungsbeispiel ist ein Prozessor, der insgesamt die numerische Steuerung 2 steuert. Die CPU 11 liest ein in einem Speicher ROM 12 gespeichertes Systemprogramm und steuert die gesamte numerische Steuerung 2 entsprechend dem Systemprogramm. Ein RAM 13 speichert zeitweise Rechendaten oder Anzeigedaten, sowie durch eine Bedienungsperson über eine Eingabeeinheit (nicht dargestellt) eingegebene Daten etc. Die numerische Steuerung 2 kann einen nicht-flüchtigen Speicher 14 enthalten. Der nicht-flüchtige Speicher 14 wird durch eine Batterie (nicht dargestellt) gestützt und behält seinen Speicherzustand, auch wenn die Stromversorgung der numerischen Steuerung ausgeschaltet ist. Die numerische Steuerung 2 hat eine I/O-Einheit (Eingabe/Ausgabe-Einheit) 17 und gibt Signale an eine externe Einrichtung (nicht dargestellt).
-
Eine Anzeigeeinrichtung 70 ist als Flüssigkristallanzeigeeinrichtung oder dergleichen ausgebildet. Auf der Anzeigeeinrichtung 70 kann ein unmittelbarer Wert oder ein Ablauf von abgeleiteten Beurteilungswerten angezeigt werden, welche den Abnutzungszustand eines Werkzeuges anzeigen. Bei einer Implementierung eines vorgeschlagenen Systems kann das Endergebnis gewonnen werden mit verschiedenen Verfahren, wie einem Schwellenwert-Bestimmungsmodell, einem Verlaufsgraphen-Bestimmungsmodell, einem zusammenfassenden Überwachungsmodell oder dergleichen. Durch Sichtbarmachung eines Teils des Verlaufs vor dem Gewinnen des endgültigen Ergebnisses kann eine Bedienungsperson, welche die Werkzeugmaschine bei der Produktion bedient, ein Ergebnis erhalten, welches mit den angestrebten Zielen übereinstimmt.
-
Eine Achsensteuerschaltung 30 zum Steuern einer Achse in der Werkzeugmaschine gibt einen Befehl bezüglich der Achse an einen Servoverstärker 40 entsprechend dem Empfang eines Bewegungsbefehlsbetrages bezüglich der Achse von der CPU 11. Entsprechend einem solchen Befehl treibt der Servoverstärker 40 einen Motor 120, welcher die Achse in der bearbeitenden Maschine bewegt. Der Motor 120 der Achse hat einen eingebauten Detektor für Position/Geschwindigkeit und ein Rückmeldungssignal bezüglich Position/Geschwindigkeit von diesem Detektor wird rückgeführt zur Achsensteuerschaltung 30, so dass eine Rückmeldungssteuerung (Regelung) bezüglich Position und Geschwindigkeit ausgeführt wird. In der Hardware-Konfiguration gemäß 1 sind zwar nur eine einzige Achsensteuerschaltung 30, ein einziger Servoverstärker 40 und ein einziger Motor 120 dargestellt, jedoch liegen diese Komponenten entsprechend der Anzahl der Achsen in der zu steuernden Werkzeugmaschine vor.
-
Eine Schnittstelle 21 wird eingesetzt zum Verbinden der numerischen Steuerung 2 mit einer maschinellen Lernvorrichtung 3. Die maschinelle Lernvorrichtung 3 hat einen Prozessor 80, welcher die gesamte maschinelle Lernvorrichtung 3 insgesamt steuert, einen ROM 81, welcher ein Systemprogramm, ein Lernmodell oder dergleichen abspeichert, und einen RAM 82, welcher im Verlauf des maschinellen Lernens zeitweise Daten abspeichert. Die maschinelle Lernvorrichtung 3 überträgt verschiedene Daten über eine Schnittstelle 84 und die Schnittstelle 21 zur numerischen Steuerung 2. Das Ergebnis eines mit der maschinellen Lernvorrichtung 3 ausgeführten Prozesses kann zur Überprüfung auf einer Anzeigeeinrichtung 72 dargestellt werden. Die maschinelle Lernvorrichtung 3 kann einen nicht-flüchtigen Speicher 83 aufweisen. Der nicht-flüchtige Speicher 83 wird durch eine Batterie (nicht dargestellt) gestützt und behält seinen Speicherzustand bei, auch wenn die Stromversorgung für die maschinelle Lernvorrichtung 3 ausgeschaltet ist.
-
2 ist ein schematisches funktionales Blockdiagramm des numerischen Steuersystems 1 gemäß dem ersten Ausführungsbeispiel. Jeder der in 2 dargestellten Funktionsblöcke wird implementiert, wenn die in der numerischen Steuerung 2 vorgesehene CPU 11 oder der Prozessor 80 in der maschinellen Lernvorrichtung 3, die in einem Rechner, wie einem Fog-Computer, einem Cloud-Server oder dergleichen konfiguriert sind, den Betrieb der einzelnen Komponenten der Vorrichtungen entsprechend den jeweiligen Systemprogrammen steuert.
-
Das numerische Steuersystem 1 des vorliegenden Ausführungsbeispieles enthält eine numerische Steuereinheit 100, eine Kontextgewinnungseinheit 110 und eine Zustandsbetragsdetektionseinheit 140 in der numerischen Steuerung 2 als sogenannte Edge-Einrichtung, die eingesetzt wird für die Überwachung und die Ableitung bezüglich zumindest der Zustände. Weiterhin hat das numerische Steuersystem 1 eine Schlussfolgerungseinheit 400, welche Schlussfolgerungen ausführt bezüglich des Zustandes der Edge-Einrichtung und einer Merkmalsmodell-Speichereinheit 350, welche mehrere Merkmalsmodelle speichert und verwaltet. Das numerische Steuersystem 1 des vorliegenden Ausführungsbeispiels hat weiterhin eine Zustandsdatenextraktionseinheit 210, welche Zustandsdaten extrahiert, die für einen Prozess eingesetzt werden, wie eine Schlussfolgerung aus einem Zustandsbetrag gemäß Bestimmung durch die Zustandsbetragsdetektionseinheit 140, eine Störungsbestimmungseinheit 240, welche eine Unregelmäßigkeit bezüglich des Betriebszustandes der Werkzeugmaschine detektiert auf Basis eines Ergebnisses, welches mit der Schlussfolgerungseinheit 400 für den Zustand der Edge-Einrichtung ermittelt worden ist, eine Schlussfolgerungsberechnungsanzeigeeinheit 250, mit der die Schlussfolgerungseinheit 400 eine Schlussfolgerungsrechnung auf einer Anzeigeeinrichtung oder dergleichen bezüglich des Zustandes der Edge-Einrichtung anzeigt, und eine Merkmalsmodellerzeugungseinheit 230, welche ein Merkmalsmodell erzeugt und aktualisiert, welches in der Merkmalsmodell-Speichereinheit 350 abgespeichert wird.
-
Die numerische Steuereinheit 100 des vorliegenden Ausführungsbeispieles führt einen Block eines Bearbeitungsprogrammes aus, der in einer Speichereinrichtung (nicht dargestellt) abgespeichert ist, und damit wird eine Werkzeugmaschine bei der Bearbeitung eines Werkstückes gesteuert. Die numerische Steuereinheit 100 liest aus und analysiert den in der Speichereinrichtung (nicht dargestellt) abgespeicherten Block des Bearbeitungsprogrammes, berechnet einen Bewegungsbetrag für den Motor 120 für einen Steuerzyklus auf Basis des analysierten Ergebnisses und steuert den Motor 120 entsprechend dem berechneten Bewegungsbetrag pro Steuerzyklus. Die von der numerischen Steuereinheit 100 gesteuerte Werkzeugmaschine enthält eine Mechanik 130, die durch den Motor 120 angetrieben ist. Bei Antrieb der Mechanik 130 werden ein Werkzeug und ein Werkstück relativ zueinander bewegt und das Werkstück wird bearbeitet. In 2 nicht näher dargestellt ist, dass ein Motor 120 jeweils für eine Anzahl von Achsen in der Mechanik 130 der Werkzeugmaschine vorgesehen ist. Die Mechanik 130 enthält einen Kugelgewindetrieb, der eingesetzt wird als Vorschubachse oder als Mechanik für eine Spindel, als Beispiel. Eine einzelne Mechanik der genannten Art kann durch mehrere Motoren angetrieben werden.
-
Die Kontextgewinnungseinheit 110 gewinnt einen Kontext (Zusammenhang) (Bearbeitungszustand, Betriebszustand, Umgebungszustand oder dergleichen) bei einem Bearbeitungsbetrieb, der durch die numerische Steuereinheit 100 ausgeführt wird (und durch eine mit der numerischen Steuereinheit 100 gesteuerte Werkzeugmaschine) und gibt den ermittelten Kontext (Zusammenhang) an die maschinelle Lernvorrichtung 3. Der Kontext bei einem Bearbeitungsbetrieb kann beispielsweise ein Motorbetriebsmuster bei der Bearbeitung (eine Spindel-Rotationsgeschwindigkeit, eine Vorschubgeschwindigkeit oder dergleichen), ein Ziel der gerade ausgeführten Bearbeitung (Grobbearbeitung, Endbearbeitung oder dergleichen), ein Ziel des gerade ausgeführten Antriebs eines bewegbaren Teils (schneller Vorlauf, Schneid-Vorschub oder dergleichen), eine Art des bei der Bearbeitung eingesetzten Werkzeugs, Informationen bezüglich des Werkstückes, die eine Härte, ein Material oder dergleichen desselben angeben, usw. sein.
-
Die Kontextgewinnungseinheit 110 gewinnt einen Kontext in einem Bearbeitungsbetrieb, in dem der Kontext umfassend bestimmt ist auf Basis einer Bearbeitungsbedingung, die durch das Bearbeitungsprogramm vorgegeben ist, von Einstellungsinformationen, die der numerischen Steuereinheit 100 durch eine Bedienungsperson über eine Eingabeeinrichtung (nicht dargestellt) eingegeben sind, weiterhin auf Basis von Einstellungsinformationen, die der numerischen Steuereinheit 100 durch einen anderen Rechner eingegeben sind, der über ein Netzwerk oder dergleichen angeschlossen ist, Informationen, die durch eine Einrichtung, wie einen Sensor, detektiert sind, welcher gesondert in der numerischen Steuereinheit 100 vorgegeben ist, und/oder auf Basis des Wertes eines Signals, welches von einer programmierbaren logischen Steuerung (PLC) oder dergleichen gewonnen ist. Die Kontextgewinnungseinheit 110 gibt dann den Kontext bezüglich des Bearbeitungsbetriebes an die Merkmalsmodellspeichereinheit 350, die Zustandsdatenextraktionseinheit 210 und die Merkmalsmodellerzeugungseinheit 230. Die Kontextgewinnungseinheit 110 hat die Aufgabe der Unterrichtung einer jeden Einheit im numerischen Steuersystem 10 bezüglich des Kontextes in dem laufenden Bearbeitungsbetrieb bezüglich der numerischen Steuereinheit 100, welche hier als Edge-Einrichtung dient, wobei ein Kontext in einem Bearbeitungsbetrieb eingesetzt wird zum Auswählen eines Extraktionsmusters.
-
Die Zustandsbetragsdetektionseinheit 140 bestimmt den Zustand eines durch die numerische Steuereinheit 100 (und eine durch die numerische Steuereinheit 100 gesteuerte Werkzeugmaschine) ausgeführten Bearbeitungsbetriebs als einen Zustandsbetrag des Bearbeitungsbetriebs. Der Zustandsbetrag eines Bearbeitungsbetriebs kann beispielsweise sein: eine Last an der Spindel (Strom), eine Last an der Vorschubachse (Strom), eine Spindel-Rotationsgeschwindigkeit, eine Vorschubachsengeschwindigkeit, eine Vorschubachsenposition, eine Temperatur des Motors 120, ein Vibrationswert, ein Geräusch oder dergleichen. Die Zustandsbetragsdetektionseinheit 140 ermittelt als den Zustandsbetrag des Bearbeitungsbetriebs einen in der numerischen Steuereinheit 100 fließenden Strom oder einen durch den Motor 120 fließenden Strom, welcher die Mechanik 130 der durch die numerische Steuereinheit 100 gesteuerten Werkzeugmaschine antreibt, oder es wird ein Detektionswert ermittelt, der durch eine Einrichtung, wie einen gesondert in der betreffenden Einheit vorgesehenen Sensor, bestimmt ist. Der durch die Zustandsbetragsdetektionseinheit 140 ermittelte Zustandsbetrag des Bearbeitungsbetriebs wird an die Zustandsdatenextraktionseinheit 210 gegeben.
-
Die Zustandsdatenextraktionseinheit 210 extrahiert Zustandsdaten, die eingesetzt werden für einen Schlussfolgerungsprozess oder dergleichen, welcher durch die Schlussfolgerungseinheit 400 ausgeführt wird entsprechend dem Zustandsbetrag des Bearbeitungsbetriebs, wie er durch die Zustandsbetragsdetektionseinheit 140 ermittelt ist. Die Zustandsdatenextraktionseinheit 210 extrahiert für den Schlussfolgerungsprozess oder dergleichen verwendete Zustandsdaten aus dem Zustandsbetrag des Bearbeitungsbetriebs, wie er durch die Zustandsbetragsdetektionseinheit 140 ermittelt ist, entsprechend einem vorgegebenen Extraktionsmuster basierend auf dem Kontext des Bearbeitungsbetriebs, wie er durch die Kontextgewinnungseinheit 110 eingegeben ist.
-
Das durch die Zustandsdatenextraktionseinheit 210 verwendete Extraktionsmuster ist ein vorgegebenes Datenverarbeitungsverfahren, bei dem Parameter bestimmt werden auf Basis eines Kontextes des Bearbeitungsbetriebs. Bei dem Extraktionsmuster kann es sich beispielsweise handeln um Einstellungen eines Extraktionsabschnittes von zeitseriellen Daten, die aus einem Kontext des Bearbeitungsbetriebs abgeleitet werden, um eine Auswahl von Daten, eine Datenedition, wie beispielsweise Skalierungsänderung bezüglich des Zustandsbetrages entsprechend einem Kontext des Bearbeitungsbetriebs oder dergleichen. Beim vorliegenden Ausführungsbeispiel kann beispielsweise durch eine Bedienungsperson im Voraus das durch die Zustandsdatenextraktionseinheit 210 eingesetzte Extraktionsmuster eingegeben und in einem Speicher registriert werden.
-
Ein Extraktionsverfahren für Zustandsdaten aus einem Zustandsbetrag entsprechend einem vorgegebenen Extraktionsmuster auf Basis eines Kontextes des Bearbeitungsbetriebs wird nunmehr näher beschrieben mit Bezug auf die 3A bis 3C und die 4A bis 4C. Die 3A bis 3C erläutern Beispiele, bei denen zeitserielle Daten der Rotationsrate und des Drehmomentes eines mit einem Werkzeug verbundenen Spindelmotors als Zustandsbetrag bei der Bearbeitung durch die Werkzeugmaschine bestimmt werden. Jeder Satz von zeitseriellen Daten bezüglich Rotationsgeschwindigkeit und Drehmoment des Spindelmotors gemäß 3A, 3B, 3C wird beim Betrieb des Spindelmotors zu vorgegebenen Zeiten gewonnen. Für dieses Extraktionsverfahren werden die nachfolgenden Verhältnisse angenommen. Aus dem oben genannten Zustandsbetrag wird eine vorgegebene Länge von zeitseriellen Daten, die gewonnen werden wenn der Spindelmotor mit konstanter Rotationsgeschwindigkeit von etwa 4000 UpM rotiert und frei läuft, als Zustandsdaten extrahiert, die in eine maschinelle Lernvorrichtung eingegeben werden. In diesem Fall können als Beispiel die zeitseriellen Daten über einen vorgegebenen Abschnitt, in dem der Spindelmotor mit etwa 4000 U/min rotiert und der Drehmomentwert unter einem vorgegebenen Schwellenwert liegt, als Zustandsdaten gewonnen werden. Werden also beispielsweise zeitserielle Daten aus dem durch eine gestrichelte Linie in 3A bzw. 3B umschlossenen Bereich extrahiert, können damit die angestrebten Zustandsdaten gewonnen werden.
-
Bei einem solchen Prozess kann es aber schwierig sein, die angestrebten Zustandsdaten zu gewinnen, wenn eine Änderung im Wert des gewonnenen Zustandsbetrages nicht deutlich erkennbar ist. Wenn beispielsweise gemäß dem in 3 dargestellten Fall die Änderung im Drehmoment zwischen dem Drehmoment zur Zeit eines Freilaufs und dem Drehmoment zur Zeit einer Bearbeitung klein ist und wenn der Schwellenwert bezüglich des Drehmomentes nicht im Voraus geeignet eingestellt ist, können zeitserielle Daten eines Abschnittes, in dem der Spindelmotor mit konstanter Rotationsgeschwindigkeit bei etwa 4000 U/min rotiert, aber das an der Spindel angebrachte Werkzeug nicht frei läuft (also eine Bearbeitung ausführt), wie in 3C gezeigt ist, fälschlich als angestrebte Zustandsdaten extrahiert werden.
-
Die 4A bis 4C zeigen Beispiele, bei denen bei einem Bearbeitungsbetrieb zeitserielle Daten bezüglich der Rotationsgeschwindigkeit und des Drehmomentes eines mit einem Werkzeug verbundenen Spindelmotors einer Werkzeugmaschine während der Bearbeitung ermittelt werden und ein Schneidsignal gewonnen wird als Kontext. Bei den Beispielen gemäß den 4A bis 4C wird das Schneidsignal, also ein Signal, welches anzeigt, ob die Bearbeitung ausgeführt wird oder nicht, als ein Kontext bei dem Bearbeitungsbetrieb gewonnen und ein Abschnitt, in dem Zustandsdaten aus einem Zustandsbetrag des Bearbeitungsbetriebs extrahiert werden, kann unter Verwendung dieses Kontextes bestimmt werden. Wird beispielsweise im Voraus folgendes Extraktionsmuster eingegeben: „Extrahiere als Zustandsdaten einen vorgegebenen Abschnitt unmittelbar bevor ein Schneidsignal im Zusammenhang mit einem Bearbeitungsbetrieb umgeschaltet wird von Freilauf (0.0) zu Schneiden (1.0)“, können angestrebte Zustandsdaten bei allen Beispielen gemäß den 4A bis 4C ohne Weiteres extrahiert werden.
-
Die Schlussfolgerungseinheit 400 des vorliegenden Ausführungsbeispieles überwacht den Zustand der numerischen Steuereinheit 100 (und einer durch die numerische Steuereinheit 100 gesteuerten Werkzeugmaschine), welche hier eine Edge-Einrichtung ist (also hier ein Endgerät am Rande des Netzwerkes), und leitet einen Zustand der numerischen Steuereinheit 100 (einen Zustand der Bearbeitung) auf Basis des ermittelten Ergebnisses ab.
-
Die Merkmalsbetragserzeugungseinheit 410 in der Schlussfolgerungseinheit 400 erzeugt einen Merkmalsbetrag, der ein Merkmal des Betriebszustandes der Werkzeugmaschine mit der numerischen Steuereinheit 100 anzeigt, auf Basis der mit der Zustandsdatenextraktionseinheit 210 extrahierten Zustandsdaten. Der Merkmalsbetrag, welcher ein Merkmal des Betriebszustandes der Werkzeugmaschine angibt und welcher durch die Merkmalsbetragserzeugungseinheit 410 erzeugt ist, stellt eine Information dar, die einsetzbar ist als eine Basis zur Bestimmung und Detektion einer Störung (Regelwidrigkeit) bezüglich des Betriebszustandes einer Werkzeugmaschine beim Bearbeitungsbetrieb unter Steuerung durch die numerische Steuereinheit 100 und Ausführung durch die damit gesteuerte Werkzeugmaschine. Der Merkmalsbetrag, welcher ein Merkmal des Betriebszustandes der Werkzeugmaschine angibt und durch die Merkmalsbetragserzeugungseinheit 410 erzeugt ist, bildet Eingabedaten, wenn die Schlussfolgerungsberechnungseinheit 420 eine Schlussfolgerung ausführt unter Verwendung eines weiter unten näher beschriebenen Lernmodells.
-
Der Merkmalsbetrag, welcher ein Merkmal bezüglich des Betriebszustandes der Werkzeugmaschine angibt und welcher durch die Merkmalsbetragserzeugungseinheit 410 erzeugt ist, kann beispielsweise ein Wert sein, der gewonnen wird durch Aufnehmen der Last an der Spindel als mit der Zustandsdatenextraktionseinheit 210 extrahierte Zustandsdaten entsprechend einem vorgegebenen Aufnahmezyklus über eine abgelaufene, vorgegebene Zeitspanne, beispielsweise entsprechend einem Spitzenwert der Vibrationswerte des Motors 120 als durch die Zustandsdatenextraktionseinheit 210 extrahierte und bestimmte Zustandsdaten innerhalb einer abgelaufenen, vorgegebenen Zeitspanne, oder es kann sich beispielsweise um einen Wert handeln, der gewonnen wird durch eine Kombination einer Signalbearbeitung, wie einer Integrationskonversion der jeweiligen Zustandsdaten, wie sie durch die Zustandsdatenextraktionseinheit 210 extrahiert sind, eine Normierung der Amplitude oder der Leistungsdichte, eine Anpassung an eine Übertragungsfunktion, eine Reduktion der Dimensionen auf eine bestimmte Zeit- oder Frequenzbreite, oder dergleichen. Die Merkmalsbetragserzeugungseinheit 410 führt eine Vorverarbeitung aus bezüglich der durch die Zustandsdatenextraktionseinheit 210 extrahierten Zustandsdaten, so dass diese durch die Schlussfolgerungsberechnungseinheit 420 verrechnet werden können, wobei die vorverarbeiteten Zustandsdaten normiert werden.
-
Die Schlussfolgerungsberechnungseinheit 420 in der Schlussfolgerungseinheit 400 erschließt einen Beurteilungswert bezüglich des Betriebszustandes der Werkzeugmaschine unter Steuerung durch die numerische Steuereinheit 100 auf Basis eines Merkmalsmodells, welches ausgewählt ist aus einer Merkmalsmodell-Speichereinheit 350 auf Basis eines Kontextes des Bearbeitungsbetriebes der Werkzeugmaschine, wie er durch die Kontextgewinnungseinheit 110 eingegeben ist, und eines Merkmalsbetrages, wie er durch die Merkmalsbetragerzeugungseinheit 410 erzeugt ist.
-
Die Schlussfolgerungsberechnungseinheit 420 arbeitet durch Anwendung eines in der Merkmalsmodellspeichereinheit 350 gespeicherten Merkmalsmodells derart, dass ein Schlussfolgerungsprozess durch maschinelles Lernen ausgeführt werden kann. Beispielsweise kann die Schlussfolgerungsberechnungseinheit 420 einen Schlussfolgerungsprozess ausführen unter Verwendung eines mehrschichtigen neuronalen Netzwerkes oder es kann ein Schlussfolgerungsverfahren ausgeführt werden unter Verwendung eines bekannten Lernalgorithmus für das maschinelle Lernen, wie ein Bayes-Netzwerk, eine Support-Vektor-Maschine (Stützvektormaschine), ein gemischtes Gauss-Modell oder dergleichen. Weiterhin kann die Schlussfolgerungsberechnungseinheit 420 den Schlussfolgerungsprozess ausführen unter Verwendung eines Lern-Algorithmus, wie einem supervised learning (überwachtes Lernen), unsupervised learning, bestärkendes Lernen oder dergleichen, jeweils als Beispiel. Auch kann die Schlussfolgerungsberechnungseinheit 420 eingerichtet sein, den Schlussfolgerungsprozess auszuführen auf Basis von mehreren Arten von Lern-Algorithmen.
-
Die Schlussfolgerungsberechnungseinheit 420 schlussfolgert einen Beurteilungswert bezüglich des Betriebszustandes der durch die numerische Steuereinheit 100 gesteuerten Werkzeugmaschine durch Konfiguration der maschinellen Lernvorrichtung auf Basis eines Merkmalsmodells, welches ausgewählt ist aus einer Merkmalsmodell-Speichereinheit 350 und durch Ausführung eines Schlussfolgerungsprozesses unter Einsatz eines Merkmalbetrags, der durch die Merkmalsbetragerzeugungseinheit 410 erzeugt ist, wobei Letztere die Eingabedaten in die maschinelle Lernvorrichtung sind. Der Beurteilungswert als durch die Schlussfolgerungsberechnungseinheit 420 gewonnenes Ergebnis kann beispielsweise eine Klassifizierung beinhalten darüber, ob der Betriebszustand der Werkzeugmaschine normal ist oder anormal, weiterhin kann er beinhalten eine Information über eine gestörte Komponente der Werkzeugmaschine im Betriebszustand (beispielsweise eine Störung eines Lagers des Motors 120, einen Ausfall eines Verbindungsteils zwischen dem Motor 120 und der Mechanik 130), oder der Beurteilungswert kann eine Information beinhalten, die einen Zustand angibt, wie eine Distanz zwischen dem momentanen Betriebszustand der Werkzeugmaschine und einem normalen Betriebszustand der Werkzeugmaschine.
-
Die Merkmalsmodell-Speichereinheit 350 des vorliegenden Ausführungsbeispiels kann mehrere Merkmalsmodelle abspeichern, die verknüpft sind mit einer Kombination von Kontexten bezüglich des Bearbeitungsbetriebes, gemäß Eingabe durch die Kontextgewinnungseinheit 110. Die Merkmalsmodell-Speichereinheit 350 kann implementiert sein beispielsweise als eine numerische Steuerung, ein Zellcomputer, ein Fog-Computer, ein Cloud-Server, ein Datenbasis-Server oder dergleichen.
-
Die Merkmalsmodell-Speichereinheit 350 speichert mehrere Modelle 1, 2, ..., M, die jeweils verknüpft sind mit einer Kombination von Kontexten (Bearbeitungszustand, Betriebszustand, Umgebungszustand oder dergleichen) beim Bearbeitungsbetrieb, wie er durch die Kontextgewinnungseinheit 110 spezifiziert ist. Die Kombination von Kontexten (Bearbeitungszustand, Betriebszustand, Umgebungszustand oder dergleichen) bei einem Bearbeitungsbetrieb bedeutet hier eine Kombination bezüglich Werten, eines Bereichs von Werten oder einer Liste von Werten, welche sich ergeben aus den jeweiligen Kontexten der Bearbeitungsbetriebe. Handelt es sich beispielsweise bei der Kombination von Kontexten um eine Kombination aus Spindel-Rotationsgeschwindigkeit, Vorschubrate, Schneidsignal, Werkzeugtyp und Werkstückinformation, also beispielsweise „Spindeldrehgeschwindigkeit: 500 bis 1000 [min-1], Vorschubrate: 200 bis 300 [mm/min], im Schneidbetrieb, Bohrwerkzeug, Aluminium/Stahl“, dann kann eine derartige Kombination von Kontexten des Bearbeitungsbetriebs eingesetzt werden.
-
Ein Merkmalsmodell in der Merkmalsmodell-Speichereinheit 350 ist an den Schlussfolgerungsprozess in der Schlussfolgerungsberechnungseinheit 420 angepasst und konfigurierbar gespeichert. Bei Konfiguration als Merkmalsmodell, welches einen Lern-Algorithmus mit einem vielschichtigen neuronalen Netzwerk als Beispiel einsetzt, kann das in der Merkmalsmodell-Speichereinheit 350 abgespeicherte Merkmalsmodell in Form der Anzahl der Neuronen (Perzeptronen) in jeder Schicht abgespeichert werden, weiterhin mit den Wichtungsparametern zwischen den Neuronen (Perzeptronen) in jeder Schicht oder dergleichen. Bei Einsatz eines Merkmalsmodells unter Verwendung eines Lern-Algorithmus im Bayes-Netzwerk kann das Merkmalsmodell abgespeichert werden auf Basis der Übergangswahrscheinlichkeiten zwischen Knoten, welche das Bayes-Netzwerk bilden.
-
Die einzelnen in der Merkmalsmodell-Speichereinheit 350 abgespeicherten Merkmalsmodelle können den gleichen Lern-Algorithmus benutzen oder sie können auch Merkmalsmodelle mit verschiedenen Lern-Algorithmen sein, solange nur der Lern-Algorithmus für den Schlussfolgerungsprozess in der Schlussfolgerungsberechnungseinheit 420 einsetzbar ist.
-
Die Merkmalsmodell-Speichereinheit 350 kann ein einziges Merkmalsmodell abspeichern in Verknüpfung mit einer Kombination von Kontexten in einem einzigen Bearbeitungsbetrieb oder sie kann Merkmalsmodelle abspeichern, die zwei oder mehr verschiedene Lern-Algorithmen in Verknüpfung mit einer Kombination von Kontexten in einem einzigen Bearbeitungsbetrieb enthalten. Die Merkmalsmodell-Speichereinheit 350 kann Merkmalsmodelle abspeichern, die verschiedene Algorithmen in Verknüpfung mit jeweiligen Kombinationen von Kontexten in einer Mehrzahl von Bearbeitungsbetrieben einsetzen, wobei sich die Bereiche der Kombinationen überlappen. Durch Definition von Einsatzerfordernissen, wie einer erforderlichen Bearbeitungskapazität, einer Art des Lern-Algorithmus oder dergleichen bezüglich eines Merkmalsmodells entsprechend einer Kombination von Kontexten in einem Bearbeitungsbetrieb, kann die Merkmalsmodell-Speichereinheit 350 ein Merkmalsmodell auswählen, wobei die Schlussfolgerungsberechnungseinheit 420 verschiedene ausführbare Schlussfolgerungsprozesse oder Prozesskapazitäten bezüglich einer Kombination von Kontexten in einem Bearbeitungsbetrieb aufweist.
-
Bei Empfang einer Lese-/Schreibanforderung von außen bezüglich eines Merkmalsmodells einschließlich einer Kombination von Kontexten in einem Bearbeitungsbetrieb führt die Merkmalsmodell-Speichereinheit 350 einen Lese-/Schreibvorgang aus bezüglich eines Merkmalsmodells, welches in Verknüpfung mit der Kombination von Kontexten in dem Bearbeitungsbetrieb abgespeichert ist.
-
Dabei können in der Lese-/Schreibanforderung eines Merkmalsmodells Daten bezüglich eines ausführbaren Schlussfolgerungsprozesses oder bezüglich der Prozesskapazität der Schlussfolgerungsberechnungseinheit 420 enthalten sein und in einem solchen Fall führt die Merkmalsmodell-Speichereinheit 350 einen Lese-/Schreibvorgang aus bezüglich eines Merkmalsmodells, welches verknüpft ist sowohl mit einer Kombination von Kontexten in einem Bearbeitungsbetrieb und einem ausführbaren Schlussfolgerungsprozess oder einer Bearbeitungskapazität der Schlussfolgerungsberechnungseinheit 420. Die Merkmalsmodell-Speichereinheit 350 kann eine Funktion aufweisen, mit der ein Lese-/Schreibvorgang ausgeführt wird bezüglich eines Merkmalsmodells, das verknüpft ist mit (einer Kombination von) Kontexten in dem Bearbeitungsbetrieb auf Basis der Kontexte in dem Bearbeitungsbetrieb, wie von der Kontextgewinnungseinheit 110 in Ansprache auf die externe Lese-/Schreibanforderung eines Merkmalsmodells eingegeben ist. Mit einer derartigen Funktion ist es nicht mehr erforderlich, zusätzlich eine Funktion bereitzustellen zum Anfordern eines Merkmalsmodells auf Basis eines Kontextes in einem Bearbeitungsbetrieb, welche von der Kontextgewinnungseinheit 110 an die Schlussfolgerungsberechnungseinheit 420 oder an die Merkmalsmodell-Erzeugungseinheit 230 gegeben ist.
-
Die Merkmalsmodell-Speichereinheit 350 kann ein Merkmalsmodell, welches durch die Merkmalsmodell-Erzeugungseinheit erzeugt ist, verschlüsseln und abspeichern und sodann das verschlüsselte Merkmalsmodell entschlüsseln, wenn das Merkmalsmodell durch die Schlussfolgerungsberechnungseinheit 420 ausgelesen wird.
-
Die Störungsbestimmungseinheit 240 ermittelt den Betriebszustand (eine Regelwidrigkeit der Maschine oder dergleichen) der numerischen Steuereinheit 100 (einschließlich der durch die numerische Steuereinheit 100 gesteuerten Werkzeugmaschine) auf Basis eines Beurteilungswertes bezüglich des Betriebszustandes der Werkzeugmaschine, der durch die Schlussfolgerungseinheit 400 erschlossen wird. Beispielsweise ermittelt die Störungsbestimmungseinheit 240, dass der Betriebszustand der Werkzeugmaschine normal bzw. anormal ist in Abhängigkeit von dem Inhalt des Beurteilungswertes, welcher ein Schlussfolgerungsergebnis darstellt und durch die Schlussfolgerungsberechnungseinheit 420 ausgegeben wird. Beispielsweise kann die Störungsbestimmungseinheit 240 feststellen, dass der Betriebszustand der Werkzeugmaschine anormal ist, wenn der momentane Betriebszustand der Werkzeugmaschine gemäß Schlussfolgerung durch die Schlussfolgerungseinheit 400 als anormaler Zustand klassifiziert ist, während andernfalls festgestellt wird, dass der Betriebszustand der Werkzeugmaschine normal ist. Beispielsweise kann die Störungsbestimmungseinheit 240 feststellen, dass der Betriebszustand der Werkzeugmaschine anormal ist, wenn die Distanz zwischen dem momentanen Betriebszustand der Werkzeugmaschine und möglichen normalen Betriebszuständen der Werkzeugmaschine einen vorgegebenen Schwellenwert überschreitet, der im Voraus festgelegt ist, während andernfalls festgestellt wird, dass der Betriebszustand der Werkzeugmaschine normal ist.
-
Die Störungsbestimmungseinheit 240 kann eine Bedienungsperson über eine Regelwidrigkeit bezüglich des Betriebszustandes der Werkzeugmaschine unterrichten mittels einer Anzeigeeinrichtung, einer Lampe, einer akustischen Ausgabeeinheit oder dergleichen (nicht dargestellt), wenn festgestellt wird, dass der Betriebszustand der Werkzeugmaschine anormal ist. Weiterhin kann die Störungsbestimmungseinheit 240 die numerische Steuereinheit 100 anweisen, die Bearbeitung auszusetzen, wenn festgestellt wird, dass der Betriebszustand der Werkzeugmaschine anormal ist.
-
Die Schlussfolgerungsberechnungsanzeigeeinheit 250 zeigt einen Beurteilungswert bezüglich des Betriebszustandes der Werkzeugmaschine gemäß Berechnung durch die Schlussfolgerungsberechnungseinheit 420 auf einem Anzeigefeld 70 oder einer Anzeigeeinrichtung 72 an in Verknüpfung mit einem Zustandsbetrag oder einem Kontext beim Bearbeitungsbetrieb. Die Schlussfolgerungsberechnungsanzeigeeinheit 250 kann einen Beurteilungswert bezüglich des Betriebszustandes der Werkzeugmaschine anzeigen in Verknüpfung mit zeitseriellen Daten des Zustandsbetrages oder eines Kontextes in dem Bearbeitungsbetrieb. Weiterhin kann die Schlussfolgerungsberechnungsanzeigeeinheit 250 einen Beurteilungswert bezüglich des Betriebszustandes der Werkzeugmaschine anzeigen in Verbindung mit einem Befehl des Bearbeitungsprogrammes, der in einem der Kontexte in dem Bearbeitungsbetrieb beispielsweise enthalten ist. Mit einer solchen Anzeige ist die Bedienungsperson in der Lage, klar zu erkennen, in welchem Abschnitt des Betriebszustandes der Werkzeugmaschine Normalität gegeben ist und in welchem Abschnitt des Betriebszustandes der Werkzeugmaschine eine Störung vorliegt.
-
Die Merkmalsmodell-Erzeugungseinheit 230 führt eine Erzeugung oder eine Aktualisierung (maschinelles Lernen) eines in der Merkmalsmodell-Speichereinheit 350 abgespeicherten Merkmalsmodells aus auf Basis eines Kontextes in einem Bearbeitungsbetrieb, der von der Kontextgewinnungseinheit 110 eingegeben wird, und eines Merkmalsbetrages, der ein Merkmal des Betriebszustandes der Werkzeugmaschine angibt und durch die Merkmalsbetragerzeugungseinheit 410 erzeugt ist. Die Merkmalsmodell-Erzeugungseinheit 230 selektiert ein Merkmalsmodell, welches als Ziel gesetzt ist für die Erzeugung oder die Aktualisierung auf Basis eines Kontextes in dem Bearbeitungsbetrieb gemäß Eingabe von der Kontextgewinnungseinheit 110 und (die Merkmalsmodell-Erzeugungseinheit 230) führt bezüglich des ausgewählten Merkmalsmodells einen maschinellen Lernprozess aus mit einem Merkmalsbetrag, der ein Merkmal des Zustandes des Bearbeitungsbetriebes anzeigt gemäß Erzeugung durch die Merkmalsbetragserzeugungseinheit 410. Ist ein Merkmalsmodell in Verknüpfung mit (einer Kombination von) Kontexten in einem Bearbeitungsbetrieb gemäß Eingabe durch die Kontextgewinnungseinheit 110 nicht in der Merkmalsmodell-Speichereinheit 350 abgespeichert, erzeugt die Merkmalsmodell-Erzeugungseinheit 230 auf das Neue ein Merkmalsmodell, welches verknüpft ist mit (einer Kombination von) Kontexten im Bearbeitungsbetrieb. Wenn ein Merkmalsmodell mit (einer Kombination von) Kontexten in einem Bearbeitungsbetrieb von der Kontextgewinnungseinheit 110 in der Merkmalsmodell-Speichereinheit 350 abgespeichert wird, aktualisiert die Merkmalsmodell-Erzeugungseinheit 230 das Merkmalsmodell durch Ausführung eines maschinellen Lernprozesses für das Merkmalsmodell. Sind eine Mehrzahl von Merkmalsmodellen, die mit (einer Kombination von) Kontexten in einem Bearbeitungsbetrieb verknüpft sind und die von der Kontextgewinnungseinheit 110 eingegeben werden, in der Merkmalsmodell-Speichereinheit 350 abgespeichert, kann die Merkmalsmodell-Erzeugungseinheit 230 einen maschinellen Lernprozess ausführen bezüglich der jeweiligen Merkmalsmodelle oder sie kann einen maschinellen Lernprozess ausführen bezüglich nur einiger der Merkmalsmodelle auf Basis des jeweils ausführbaren Lernprozesses oder der Bearbeitungskapazität der Merkmalsmodell-Erzeugungseinheit 230.
-
5 ist ein schematisches funktionales Blockdiagramm eines numerischen Steuersystems 1 gemäß einem zweiten Ausführungsbeispiel. Jeder in 5 dargestellte Funktionsblock wird realisiert, wenn die CPU 11 in der die numerische Steuerung 2 des numerischen Steuersystems 1 gemäß 1 oder ein Prozessor, wie eine GPU, in der maschinellen Lernvorrichtung 3, konfiguriert in einem Rechner, wie einem Fog-Computer, einem Cloud-Server oder dergleichen, den Betrieb der jeweiligen Komponenten der Einrichtungen entsprechend jeweiligen Systemprogrammen steuert.
-
Das numerische Steuersystem 1 des vorliegenden Ausführungsbeispieles enthält eine Extraktionsmusterspeichereinheit 300, welche mehrere Extraktionsmuster abspeichert und verwaltet, und eine Extraktionsmustererzeugungseinheit 220, welche Extraktionsmuster, die in der Extraktionsmusterspeichereinheit 300 abgespeichert sind, erzeugt und aktualisiert über die Konfiguration gemäß dem numerischen Steuersystem nach dem ersten Ausführungsbeispiel hinaus.
-
Die Extraktionsmusterspeichereinheit 300 des vorliegenden Ausführungsbeispiels kann mehrere Extraktionsmuster abspeichern, die verknüpft sind mit einer Kombination von Kontexten einem Bearbeitungsbetrieb gemäß Eingabe durch die Kontextgewinnungseinheit 110. Die Extraktionsmusterspeichereinheit 300 kann beispielsweise implementiert sein durch eine numerische Steuerung, einen Zellcomputer, einen Fog-Computer, einen Cloud-Server, einen Datenbasis-Server oder dergleichen.
-
Die Extraktionsmusterspeichereinheit 300 speichert eine Mehrzahl von Extraktionsmustern 1, 2, ..., N, die verknüpft sind mit einer Kombination von Kontexten (Bearbeitungszustand, Betriebszustand, Umgebungszustand oder dergleichen) in einem Bearbeitungsbetrieb gemäß Spezifizierung durch die Kontextgewinnungseinheit 110. Die Kombination von Kontexten (Bearbeitungszustand, Betriebszustand, Umgebungszustand oder dergleichen) einem Bearbeitungsbetrieb bedeutet hier eine Kombination bezüglich Werten, eines Bereichs von Werten oder einer Liste von Werten, die sich aus den jeweiligen Kontexten im Bearbeitungsbetrieb ergeben. Wenn beispielsweise die Kombination von Kontexten eine Spindelrotationsgeschwindigkeit, eine Vorschubrate, ein Schneidsignal, einen Werkzeugtyp und Werkstückinformationen beinhaltet, dann kann beispielsweise „Spindelrotationsgeschwindigkeit: 500 bis 1000 [min-1], Vorschubrate: 200 bis 300 [mm/min], Schneidbetrieb, Bohrwerkzeug, Aluminium/Stahl“ verwendet werden als eine der Kontextkombinationen in dem Bearbeitungsbetrieb.
-
Von den in der Extraktionsmusterspeichereinheit 300 abgespeicherten Extraktionsmustern ist ein Extraktionsmuster, welches eingesetzt wird für die Extraktion von Zustandsdaten in der Zustandsdatenextraktionseinheit 210 konfigurierbar abgespeichert. Jedes der in der Extraktionsmusterspeichereinheit 300 abgespeicherten Extraktionsmuster entspricht einem vorgegebenen Datenverarbeitungsverfahren, bei dem der Parameter bestimmt ist auf Basis eines Kontextes in einem Bearbeitungsbetrieb, entsprechend etwa der Einstellung eines Extraktionsabschnittes bezüglich zeitserieller Daten, die auf Basis eines Kontextes in einem Bearbeitungsbetrieb abgeleitet sind, einer Selektion von Daten, einer Edition von Daten, wie einer Skalierungsänderung des Zustandsbetrages auf Basis eines Kontextes in einem Bearbeitungsbetrieb oder dergleichen, jeweils als Beispiele. Die einzelnen Extraktionsmuster, die in der Extraktionsmusterspeichereinheit 300 abgespeichert sind, können den gleichen Algorithmus benutzen oder sie können verschiedene Algorithmen benutzen.
-
Bei externem Empfang einer Lese-/Schreibanforderung eines Extraktionsmusters einschließlich einer Kombination von Kontexten in einem Bearbeitungsbetrieb, führt die Extraktionsmusterspeichereinheit 300 einen Lese-/Schreibbetrieb aus bezüglich der Extraktion eines Extraktionsmusters, welches in Verknüpfung mit der Kombination von Kontexten in dem Bearbeitungsbetrieb abgespeichert ist. Die Extraktionsmusterspeichereinheit 300 kann eine Funktion haben, mit der das Lesen/Schreiben ausgeführt wird bezüglich eines Extraktionsmusters in Verknüpfung mit (einer Kombination von) Kontexten in dem Bearbeitungsbetrieb auf Basis der Kontexte in dem Bearbeitungsbetrieb, wie sie durch die Kontextgewinnungseinheit 110 eingegeben sind, in Antwort auf die externe Lese-/Schreibanforderung bezüglich eines Extraktionsmusters. Mit einer solchen Funktion ist es nicht mehr erforderlich, zusätzlich eine Funktion bereitzustellen zum Anfordern eines Extraktionsmusters auf Basis eines Kontextes, der von der Kontextgewinnungseinheit 110 in die Zustandsdatenextraktionseinheit 210 oder die Extraktionsmustererzeugungseinheit 210 eingegeben wird.
-
Die Extraktionsmusterspeichereinheit 300 kann ein Extraktionsmuster, welches durch die Extraktionsmustererzeugungseinheit 220 erzeugt ist, verschlüsseln und abspeichern und das verschlüsselte Extraktionsmuster entschlüsseln, wenn es durch die Zustandsdatenextraktionseinheit 210 ausgelesen wird.
-
Die Extraktionsmustererzeugungseinheit 220 führt eine Erzeugung oder Aktualisierung von in der Extraktionsmusterspeichereinheit 300 abgespeicherten Extraktionsmustern aus auf Basis eines Kontextes in einem Bearbeitungsbetrieb gemäß Eingabe durch die Kontextgewinnungseinheit 110 und eines Zustandsbetrages des Betriebszustandes der Werkzeugmaschine gemäß Detektion durch die Zustandsbetragsdetektionseinheit 140. Die Extraktionsmustererzeugungseinheit 220 selektiert ein Merkmalsmodell, welches zur Erzeugung oder Aktualisierung dient auf Basis eines Kontextes in einem Bearbeitungsbetrieb gemäß Eingabe von der Kontextgewinnungseinheit 110 und stellt ein Dateneditionsverfahren ein zum Bestimmen, wie die Zustandsdaten aus dem Zustandsbetrag extrahiert werden, welcher bestimmt ist durch die Zustandsbetragsdetektionseinheit 140 auf Basis eines Kontextes in dem Bearbeitungsbetrieb für das ausgewählte Extraktionsmuster. Typischerweise führt die Extraktionsmustererzeugungseinheit 220 eine Erzeugung und Aktualisierung von Extraktionsmustern aus auf Basis einer Bedienung einer Eingabeeinheit (nicht dargestellt) durch eine Bedienungsperson oder dergleichen. Ist ein Extraktionsmuster in Verknüpfung mit (einer Kombination von) Kontexten in einem Bearbeitungsbetrieb gemäß Eingabe durch die Kontextgewinnungseinheit 110 nicht in der Extraktionsmusterspeichereinheit 300 abgespeichert, erzeugt die Extraktionsmustererzeugungseinheit 220 neuerlich ein Extraktionsmuster, welches mit (einer Kombination von) Kontexten in dem Bearbeitungsbetrieb verknüpft ist, entsprechend einer Eingabe seitens einer Bedienungsperson oder dergleichen. Ist ein Extraktionsmuster in Verknüpfung mit (einer Kombination von) Kontexten in einem Bearbeitungsbetrieb gemäß Eingabe durch die Kontextgewinnungseinheit 110 in der Extraktionsmusterspeichereinheit 300 abgespeichert, aktualisiert die Extraktionsmustererzeugungseinheit 220 das Extraktionsmuster durch Einstellung desselben oder dergleichen auf Basis einer Eingabe durch die Bedienungsperson oder dergleichen bezüglich des Extraktionsmusters.
-
Mit dem numerischen Steuersystem 1 gemäß dem vorliegenden Ausführungsbeispiel mit obiger Konfiguration können entsprechend dem Extraktionsmuster, welches die Zustandsdatenextraktionseinheit 210 extrahiert, Zustandsdaten aus einem durch die Zustandsbetragsdetektionseinheit 140 bestimmten Zustandsbetrag ermittelt werden auf Basis des Kontextes in einem Bearbeitungsbetrieb, der von der Kontextgewinnungseinheit 110 eingegeben wird. Bei Bestimmung des Betriebszustandes einer Werkzeugmaschine kann es erwünscht sein, die Zeitfolge oder den Abschnitt der zu extrahierenden Zustandsdaten oder den Typ des Zustandsbetrages, der bei der Bestimmung des Betriebszustandes der Werkzeugmaschine in den jeweiligen Kontexten der Bearbeitungsbetriebe eingesetzt wird, zu ändern. Ist zum Beispiel angestrebt, den Betrieb einer Spindel zu bestimmen in einer Testbetriebssituation, weil gerade keine Bearbeitung eines Werkstückes oder dergleichen erfolgt, dann kann ein Extraktionsmuster zum Extrahieren eines Zustandsbetrages in einem Abschnitt, wo ein im Voraus vorgegebenes Erfordernis (dass die Spindel mit 4000 U/min rotiert) erfüllt ist, wahlfrei bezüglich der Zustandsdaten eingesetzt werden. Ist aber angestrebt, die gleiche Bestimmung während der Bearbeitung eines Werkstückes gemäß 4 auszuführen, ist es zum Extrahieren des Zustandsbetrages in einem Abschnitt, wo das Werkzeug inaktiv ist und keine Bearbeitung ausführt, anzustreben, ein Extraktionsmuster einzusetzen zum Begrenzen auf einen Abschnitt, aus dem ein entsprechendes Signal bezüglich eines Schneidvorganges im Kontext des Bearbeitungsbetriebes als Parameter extrahiert ist. Ist es erwünscht, den Betriebszustand einer Werkzeugmaschine (den Anbringungszustand eines Werkzeuges) zu ermitteln nachdem ein Werkzeug ausgetauscht worden ist, dann ist es erforderlich, ein Extraktionsmuster einzusetzen zum Extrahieren von Zustandsdaten in einem Abschnitt unmittelbar nach Beendigung des Austausches des Werkzeuges aus einem Zustandsbetrag, der in seinem Typ verschieden ist von dem Typ, der bei der Bestimmung des Betriebszustandes der Spindel eingesetzt worden ist (das Merkmalsmodell, welches eingesetzt wird für den Schlussfolgerungsprozess durch die Schlussfolgerungsberechnungseinheit 420, wird dabei entsprechend umgeschaltet auf ein Merkmalsmodell, welches eingesetzt wird zum Prüfen des Anbringungszustandes des Werkzeuges). Wie oben erläutert, ändert die Zustandsdatenextraktionseinheit 210 das Extraktionsmuster, welches eingesetzt wird zum Extrahieren von Zustandsdaten aus einem Zustandsbetrag entsprechend einem Kontext in dem Bearbeitungsbetrieb gemäß Eingabe durch die Kontextgewinnungseinheit 110 und damit ist es möglich, eine Extraktion von geeigneten Zustandsdaten auszuführen in Anpassung an die Situation und es ist möglich, effizient und genau einen maschinellen Lernprozess auszuführen mittels der Merkmalsmodell-Erzeugungseinheit 230 auf Basis von Zustandsdaten oder auch einen Schlussfolgerungsprozess, der durch die Schlussfolgerungsberechnungseinheit 420 ausgeführt wird.
-
Ein Extraktionsmuster, welches in der Extraktionsmusterspeichereinheit 300 gemäß dem vorliegenden Ausführungsbeispiel abgespeichert ist, kann so konfiguriert sein, dass es ein sogenanntes Lernmodell für maschinelles Lernen in gleicher Weise wie das Merkmalsmodell enthält. Ist ein Extraktionsmuster unter Einschluss eines Lernmodells konfiguriert, dann kann das Extraktionsmuster für ein einziges Lernmodell eingerichtet sein, in dem ein vorgegebener Zustandsbetrag und ein Kontext in einem vorgegebenen Bearbeitungsbetrieb eingegeben sind, und die zu extrahierenden Zustandsdaten bilden den Ausgang, oder es kann auch ein Extraktionsmuster konfiguriert sein durch Kombination einer Regel für die Auswahl von Zustandsdaten aus einem Zustandsbetrag mit einem oder mit mehreren Lernmodellen, wobei ein ausgewählter Zustandsbetrag und ein vorgegebener Kontext der Eingang sind und die zu extrahierenden Zustandsdaten der Ausgang sind. Bei Konfiguration als ein Modell mit Einsatz eines Lern-Algorithmus mit einem mehrschichtigen neuronalen Netzwerk kann beispielsweise das in der Extraktionsmusterspeichereinheit 300 abgespeicherte Extraktionsmuster entsprechend der Anzahl der Neuronen (Perzeptronen) in jeder Schicht abgespeichert werden sowie mit Wichtungsparametern zwischen den Neuronen (Perzeptronen) in jeder Schicht. Bei Konfiguration als Modell mit Einsatz eines Lern-Algorithmus gemäß einem Bayes-Netzwerk, kann das Extraktionsmuster abgespeichert werden entsprechend einer Übertragungswahrscheinlichkeit zwischen Knoten, die das Bayes-Netzwerk bilden. Bei einer solchen Konfiguration können die jeweiligen, in der Extraktionsmusterspeichereinheit 300 abgespeicherten Extraktionsmuster den gleichen Lern-Algorithmus verwenden oder sie können verschiedene Lern-Algorithmen verwenden; es kann also ein jeder Lern-Algorithmus eingesetzt werden, solange nur er eingesetzt werden kann für den Zustandsdatenextraktionsprozess, wie er durch die Zustandsdatenextraktionseinheit 210 ausgeführt wird.
-
6 zeigt schematisch das Blockdiagramm eines numerischen Steuersystems 1 gemäß einem dritten Ausführungsbeispiel. Bei dem numerischen Steuersystem 1 gemäß diesem Ausführungsbeispiel sind alle Funktionsblöcke in einer einzigen Komponente der numerischen Steuerung 2 implementiert. Mit einer solchen Konfiguration kann beispielsweise das numerische Steuersystem 1 gemäß diesem Ausführungsbeispiel Zustandsdaten extrahieren unter Einsatz eines geeigneten Extraktionsmusters entsprechend einem Kontext in dem Bearbeitungsbetrieb, wie ein Betriebsmuster des Motors 120 beim Bearbeitungsbetrieb einer Werkzeugmaschine, die durch die numerische Steuerung 2 gesteuert wird, dem Typ des bei der Bearbeitung eingesetzten Werkzeuges oder dem Material des Werkstückes, und es kann der Betriebszustand der Werkzeugmaschine mit einem geeigneten Merkmalsmodell bestimmt werden. Die jeweiligen Extraktionsmuster oder Lernmodelle können erzeugt/aktualisiert werden entsprechend dem Kontext im Bearbeitungsbetrieb unter Verwendung einer einzigen numerischen Steuerung 2.
-
7 zeigt ein schematisches Blockdiagramm eines numerischen Steuersystems 1 gemäß einem vierten Ausführungsbeispiel. Bei dem numerischen Steuersystem 1 dieses Ausführungsbeispieles sind die Schlussfolgerungseinheit 200, die Störungsbestimmungseinheit 240 und die Schlussfolgerungsberechnungsanzeigeeinheit 250 in der numerischen Steuerung 2 implementiert und die Extraktionsmusterspeichereinheit 300, die Merkmalsmodellspeichereinheit 350 oder dergleichen sind in der maschinellen Lernvorrichtung 3 implementiert, die über eine Schnittstelle oder ein Netzwerk an die numerische Steuerung 2 angeschlossen ist. Die maschinelle Lernvorrichtung 3 kann in einem Zellcomputer, einem Fog-Computer, einem Cloud-Server oder einem Datenbasis-Server implementiert sein. Da mit einer derartigen Konfiguration der Schlussfolgerungsprozess mit Einsatz eines Merkmalsmodells mit relativ geringeren Rechenanforderungen in der numerischen Steuerung 2 ausgeführt werden kann und der Prozess der Erzeugung/Aktualisierung eines Modells als relativ aufwändigerer Prozess in der maschinellen Lernvorrichtung 3 ausgeführt werden kann, ist es möglich, das numerische Steuersystem 1 zu betreiben, ohne dass es dabei zu unerwünschten Einflüssen auf einen Prozess der Steuerung der Werkzeugmaschine durch die numerische Steuerung 2 kommt.
-
8 zeigt ein schematisches Blockdiagramm eines numerischen Steuersystems 1 gemäß einem fünften Ausführungsbeispiel. In dem numerischen Steuersystem 1 dieses Ausführungsbeispiels sind alle Funktionsblöcke in einer einzigen Komponente der numerischen Steuerung 2 implementiert. Bei dem numerischen Steuersystem 1 dieses Ausführungsbeispiels wird angenommen, dass eine Mehrzahl von Extraktionsmustern und eine Mehrzahl von Merkmalsmodellen in Verknüpfung mit Kombinationen von Kontexten in den jeweiligen Bearbeitungsbetrieben bereits in der Extraktionsmusterspeichereinheit 300 und in der Merkmalsmodellspeichereinheit 350 abgespeichert sind und keine Erzeugung/Aktualisierung bezüglich der Extraktionsmuster oder Merkmalsmodelle ausgeführt wird und somit kann die Konfiguration bezüglich der Extraktionsmustererzeugungseinheit 220 und der Merkmalsmodellerzeugungseinheit 230 außer Betracht bleiben. Eine solche Konfiguration ermöglicht dem numerischen Steuersystem 1 dieses Ausführungsbeispieles eine Bestimmung des Betriebszustandes der Werkzeugmaschine unter Einsatz eines Extraktionsmusters oder eines Merkmalsmodells, welche verschieden sein können in Abhängigkeit von dem Kontext, wie dem Typ des in der Werkzeugmaschine, die von der numerischen Steuerung 2 gesteuert wird, angebrachten Werkzeuges, dem Material des Werkstückes oder dergleichen. Eine nicht autorisierte Aktualisierung des Extraktionsmusters oder des Merkmalsmodells kann nicht ausgeführt werden, so dass die obigen Konfigurationen für eine numerische Steuerung 2 eingesetzt werden können, welche für einen Kunden ausgeliefert wird.
-
Die vorliegende Erfindung ist nicht auf die oben beschriebenen Ausführungsbeispiele beschränkt, vielmehr kann sie in verschiedenen Ausgestaltungen mit jeweils passenden Änderungen realisiert werden.
-
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 2009 [0002]
- JP 080752 [0002]
- JP 2008110435 [0002]
- JP H09076144 [0002]