DE102015000291A1 - Method for controlling a processing machine - Google Patents

Method for controlling a processing machine Download PDF

Info

Publication number
DE102015000291A1
DE102015000291A1 DE102015000291.0A DE102015000291A DE102015000291A1 DE 102015000291 A1 DE102015000291 A1 DE 102015000291A1 DE 102015000291 A DE102015000291 A DE 102015000291A DE 102015000291 A1 DE102015000291 A1 DE 102015000291A1
Authority
DE
Germany
Prior art keywords
tool
processing machine
polynomial
starting point
end point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102015000291.0A
Other languages
German (de)
Inventor
Thomas Bosch
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.)
Mercedes Benz Group AG
Original Assignee
Daimler AG
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 Daimler AG filed Critical Daimler AG
Priority to DE102015000291.0A priority Critical patent/DE102015000291A1/en
Publication of DE102015000291A1 publication Critical patent/DE102015000291A1/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical 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 monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones
    • 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/49Nc machine tool, till multiple
    • G05B2219/49157Limitation, collision, interference, forbidden zones, avoid obstacles
    • 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/49Nc machine tool, till multiple
    • G05B2219/49363Minimalize time for tool movement between different positions, holes

Landscapes

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

Abstract

Die Erfindung betrifft ein Verfahren zur Steuerung einer Bearbeitungsmaschine, bei dem zumindest ein beweglich an der Bearbeitungsmaschine angeordnetes Werkzeug (1) von einem vorgegebenen Startpunkt (SP) zu mindestens einem vorgegebenen Endpunkt (EP) innerhalb eines Arbeitsraumes (R) automatisiert bewegt wird. Erfindungsgemäß wird innerhalb des Arbeitsraumes (R) eine Werkzeugbahn (B) ermittelt, entlang welcher das Werkzeug (1) kollisionsfrei in einer minimalen Zeit vom Startpunkt (SP) zum Endpunkt (EP) bewegt wird, wobei die Werkzeugbahn (B) mittels eines evolutionären Algorithmus ermittelt wird.The invention relates to a method for controlling a processing machine, in which at least one tool (1) arranged movably on the processing machine is automatically moved from a predetermined starting point (SP) to at least one predetermined end point (EP) within a working space (R). According to the invention, a tool path (B) is determined within the working space (R) along which the tool (1) is moved without collision in a minimum time from the starting point (SP) to the end point (EP), the tool path (B) being determined by means of an evolutionary algorithm is determined.

Description

Die Erfindung betrifft ein Verfahren zur Steuerung einer Bearbeitungsmaschine, bei dem zumindest ein beweglich an der Bearbeitungsmaschine angeordnetes Werkzeug von einem vorgegebenen Startpunkt zu mindestens einen vorgegebenen Endpunkt innerhalb eines Arbeitsraumes automatisiert bewegt wird.The invention relates to a method for controlling a processing machine, in which at least one tool movably arranged on the processing machine is automatically moved from a predetermined starting point to at least one predetermined end point within a working space.

Eine Effizienz von Fertigungsprozessen steht im Fokus einer heutigen Produktion. Um eine Fertigungszeit für ein Bauteil weiter zu reduzieren, ist es notwendig, nicht-wertschöpfende Tätigkeiten einer Bearbeitungsmaschine, insbesondere einer Werkzeugmaschine, zu minimieren. Ein Ansatzpunkt zur Reduktion der nicht wertschöpfenden Aktionen in einer Werkzeugmaschine ist eine Minimierung von technischen Nebenzeiten. Dabei spielt eine Bahnkurve oder Werkzeugbahn eines Werkzeugs und einer Spindel der Bearbeitungsmaschine eine sehr große Rolle.Efficiency of manufacturing processes is the focus of today's production. In order to further reduce a production time for a component, it is necessary to minimize non-value-adding activities of a processing machine, in particular of a machine tool. A starting point for the reduction of non-value-adding actions in a machine tool is a minimization of technical non-productive times. In this case, a trajectory or tool path of a tool and a spindle of the processing machine plays a very large role.

Zu diesem Zweck sind aus dem Stand der Technik verschiedene Verfahren bekannt. Ein solches Verfahren zur Steuerung einer Bearbeitungsmaschine beschreibt die DE 10 2013 021 653 A1 , wobei zumindest ein beweglich an der Bearbeitungsmaschine angeordnetes Werkzeug von einem vorgegebenen Startpunkt zu mindestens einem vorgegebenen Endpunkt innerhalb eines Arbeitsraumes automatisiert bewegt wird. Innerhalb des Arbeitsraumes wird ein Bewegungsraum zur freien Bewegung des Werkzeugs vorgegeben. Das heißt, die Steuerung der Bearbeitungsmaschine wird derart gestaltet, dass die Bewegung des Werkzeugs innerhalb des Arbeitsraumes nicht einer vordefinierten Verfahrbahn folgt, sondern nur innerhalb des Bewegungsraumes und anhand von Zielkoordinaten beschrieben wird.For this purpose, various methods are known from the prior art. Such a method for controlling a processing machine describes the DE 10 2013 021 653 A1 wherein at least one tool movably arranged on the processing machine is automatically moved from a predetermined starting point to at least one predetermined end point within a working space. Within the working space, a movement space for free movement of the tool is specified. That is, the control of the processing machine is designed such that the movement of the tool within the working space does not follow a predefined trajectory, but is described only within the movement space and on the basis of target coordinates.

Der Erfindung liegt die Aufgabe zu Grunde, ein gegenüber dem Stand der Technik verbessertes Verfahren zur Steuerung einer Bearbeitungsmaschine anzugeben.The invention is based on the object to provide a comparison with the prior art improved method for controlling a processing machine.

Die Aufgabe wird erfindungsgemäß mit einem Verfahren gelöst, welches die im Anspruch 1 angegebenen Merkmale aufweist.The object is achieved by a method having the features specified in claim 1.

Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche.Advantageous embodiments of the invention are the subject of the dependent claims.

In einem Verfahren zur Steuerung einer Bearbeitungsmaschine wird zumindest ein beweglich an der Bearbeitungsmaschine angeordnetes Werkzeug von einem vorgegebenen Startpunkt zu mindestens einem vorgegebenen Endpunkt innerhalb eines Arbeitsraumes automatisiert bewegt.In a method for controlling a processing machine, at least one tool movably arranged on the processing machine is automatically moved from a predetermined starting point to at least one predetermined end point within a working space.

Erfindungsgemäß wird innerhalb des Arbeitsraumes eine Werkzeugbahn ermittelt, entlang welcher das Werkzeug kollisionsfrei in einer minimalen Zeit vom Startpunkt zum Endpunkt bewegt wird, wobei die Werkzeugbahn mittels eines evolutionären Algorithmus ermittelt wird.According to the invention, a tool path is determined within the working space, along which the tool is moved without collision in a minimum time from the starting point to the end point, the tool path being determined by means of an evolutionary algorithm.

Ein solcher evolutionärer Algorithmus oder genetischer Algorithmus bildet eine Klasse von stochastischen, metaheuristischen Optimierungsverfahren, deren Funktionsweise von der Evolution natürlicher Lebewesen inspiriert ist. In Anlehnung an die Natur werden Lösungskandidaten für ein bestimmtes Problem künstlich evolviert.Such an evolutionary algorithm or genetic algorithm forms a class of stochastic, metaheuristic optimization methods whose operation is inspired by the evolution of natural living beings. Based on nature, solution candidates for a specific problem are artificially evolved.

Mittels des erfindungsgemäßen Verfahrens ist es aufgrund der Ermittlung der Werkzeugbahn, entlang welcher das Werkzeug kollisionsfrei in einer minimalen Zeit vom Startpunkt zum Endpunkt bewegbar ist, möglich, nicht-wertschöpfende Tätigkeiten der Bearbeitungsmaschine zu minimieren und somit Taktzeiten bei der Bearbeitung von Werkstücken zu minimieren. Daraus folgend wird eine Fertigungszeit für ein Bauteil reduziert, so dass eine Effizienz von Fertigungsprozessen gesteigert wird. Aufgrund der Verwendung des evolutionären Algorithmus zur Ermittlung der Werkzeugbahn ist keine komplexe und kostenintensive Simulationssoftware zur Bewegungsoptimierung der Bearbeitungsmaschine erforderlich, da die mittels des evolutionären Algorithmus durchgeführte Optimierung der Werkzeugbahn unmittelbar in einer Steuerung der Bearbeitungsmaschine während einer Inbetriebnahme oder eines Betriebes der Bearbeitungsmaschine vollautomatisch ausführbar ist. Weiterhin wird ein Optimierungspotenzial der Werkzeugbahn mittels des evolutionären Algorithmus im Vergleich zum Stand der Technik in höherem Maße ausgeschöpft.By means of the method according to the invention, due to the determination of the tool path along which the tool is movable collision-free in a minimum time from the starting point to the end point, it is possible to minimize non-value-adding activities of the processing machine and thus to minimize cycle times during the machining of workpieces. As a result, a manufacturing time for a component is reduced, so that an efficiency of manufacturing processes is increased. Due to the use of the evolutionary algorithm for determining the tool path, no complex and costly simulation software for motion optimization of the processing machine is required, since the performed by the evolutionary algorithm optimization of the tool path directly in a control of the machine during commissioning or operation of the machine fully automatic executable. Furthermore, an optimization potential of the tool path is exhausted by the evolutionary algorithm in comparison to the prior art to a greater extent.

Ausführungsbeispiele der Erfindung werden im Folgenden anhand von Zeichnungen näher erläutert.Embodiments of the invention are explained in more detail below with reference to drawings.

Dabei zeigen:Showing:

1 schematisch ein Flussdiagramm eines evolutionären Algorithmus zur Ermittlung einer Werkzeugbahn, und 1 schematically a flowchart of an evolutionary algorithm for determining a tool path, and

2 schematisch einen Arbeitsraum mit einem Werkstück in Schnittdarstellung und einer vorgegebenen Werkzeugbahn für ein Werkzeug einer Bearbeitungsmaschine. 2 schematically a working space with a workpiece in a sectional view and a predetermined tool path for a tool of a processing machine.

Einander entsprechende Teile sind in allen Figuren mit den gleichen Bezugszeichen versehen.Corresponding parts are provided in all figures with the same reference numerals.

In 1 ist ein Flussdiagramm eines evolutionären Algorithmus zur Ermittlung einer in 2 näher dargestellten Werkzeugbahn B eines Werkzeugs 1 einer nicht gezeigten Bearbeitungsmaschine gemäß einem möglichen Ausführungsbeispiel eines ertindungsgemäßen Verfahrens dargestellt. 2 zeigt einen Arbeitsraum R mit einem Werkstück 2 in Schnittdarstellung und die vorgegebene Werkzeugbahn B für das Werkzeug 1, welches insbesondere eine so genannte Spindel ist oder diese umfasst.In 1 is a flowchart of an evolutionary algorithm for determining an in 2 shown tool path B of a tool 1 a processing machine, not shown, according to a possible embodiment of a method according to the invention. 2 shows a working space R with a workpiece 2 in a sectional view and the predetermined tool path B for the tool 1 which is in particular a so-called spindle or comprises these.

Das Werkzeug 1 ist im dargestellten Ausführungsbeispiel zur Erzeugung von Bohrungen X1, X2 innerhalb des Werkstücks 2 vorgesehen und wird ausgehend von einer ersten Bohrung X1, welche einen Startpunkt SP der Werkzeugbahn B bildet, entlang der Werkzeugbahn B zu einem Endpunkt EP bewegt, an welcher eine zweite Bohrung X2 erzeugt wird. Zwischen dem Startpunkt SP und dem Endpunkt EP ist eine Störgeometrie 3 angeordnet oder ausgebildet, an welcher das Werkzeug 1 kollisionsfrei vorbeigeführt wird.The tool 1 is in the illustrated embodiment for producing holes X1, X2 within the workpiece 2 is provided and is starting from a first hole X1, which forms a starting point SP of the tool path B, moved along the tool path B to an end point EP on which a second bore X2 is generated. Between the starting point SP and the end point EP is a Störgeometrie 3 arranged or formed, on which the tool 1 passed without collision.

Um eine Fertigungszeit für ein Bauteil zu minimieren, ist es notwendig, nicht-wertschöpfende Tätigkeiten der Bearbeitungsmaschine zu minimieren. Um hierbei nicht wertschöpfende Aktionen der Bearbeitungsmaschine, im dargestellten Ausführungsbeispiel ein kollisionsfreies Vorbeiführen des Werkzeugs 1 an der Störgeometrie 3, zu minimieren, werden mittels einer Optimierung der Werkzeugbahn B, auch als Bahnkurve bezeichnet, technische Nebenzeiten minimiert.In order to minimize a manufacturing time for a component, it is necessary to minimize non-value-added activities of the processing machine. In this case non-value-added actions of the machine, in the illustrated embodiment, a collision-free passing of the tool 1 at the Störgeometrie 3 To minimize, by means of an optimization of the tool path B, also referred to as trajectory, technical non-productive times are minimized.

Hierzu ist vorgesehen, dass innerhalb des Arbeitsraumes R eine Werkzeugbahn B ermittelt wird, entlang welcher das Werkzeug 1 kollisionsfrei in einer minimalen Zeit vom Startpunkt SP zum Endpunkt EP bewegt wird, wobei die Werkzeugbahn B mittels eines evolutionären Algorithmus ermittelt wird. Hierbei werden mittels des Algorithmus zwei Stützpunkte P1, P2 gesucht, die es ermöglichen, die Störgeometrie 3 zeitoptimal und kollisionsfrei zu umfahren, wobei anhand des Startpunkts SP, der Stützpunkte P1, P2 und des Endpunkts EP die Werkzeugbahn B in Form eines Polynomzuges (englisch Spline) ermittelt wird.For this purpose, it is provided that within the working space R a tool path B is determined, along which the tool 1 is moved collision-free in a minimum time from the starting point SP to the end point EP, wherein the tool path B is determined by means of an evolutionary algorithm. In this case, the algorithm is used to search for two reference points P1, P2, which make it possible to determine the interference geometry 3 time-optimal and avoid collision, with the basis of the starting point SP, the bases P1, P2 and the end point EP, the tool path B in the form of a polynomial (spline English) is determined.

Der evolutionäre Algorithmus ist ein so genannter genetischer Algorithmus, welcher an einen so genannten Bergsteigeralgorithmus angelehnt ist. Unter einem solchen Bergsteigeralgorithmus wird ein einfaches, heuristisches Optimierungsverfahren verstanden, bei welchem eine potenzielle Lösung für ein gegebenes Problem schrittweise verbessert wird.The evolutionary algorithm is a so-called genetic algorithm, which is based on a so-called mountaineering algorithm. Such a mountaineering algorithm is understood to be a simple, heuristic optimization method in which a potential solution to a given problem is progressively improved.

Hierbei ist der Algorithmus in drei Phasen unterteilt. In einer ersten Phase werden in einem ersten Schritt S1 des Algorithmus Randbedingungen vorgegeben. Hierbei ist es möglich, dass ein Anwender vorgegebene Randbedingungen variiert oder unverändert übernimmt. Insbesondere hat der Anwender die Möglichkeit, Grenzwerte der Stützpunkte P1, P2 festzulegen. Hieraus ergibt sich, wie weit ein jeweiliger Stützpunkt P1, P2 dreidimensional im Raum verschoben werden darf. Maßgeblich für die Wahl der Grenzwerte ist eine Geometrie und Anordnung der Störgeometrie 3, um eine Kollision des Werkzeugs 1 mit dieser zu vermeiden.Here the algorithm is divided into three phases. In a first phase, boundary conditions are specified in a first step S1 of the algorithm. In this case, it is possible for a user to vary given boundary conditions or to accept them unchanged. In particular, the user has the option of setting limit values of the interpolation points P1, P2. From this it follows how far a respective support point P1, P2 may be moved three-dimensionally in space. Decisive for the choice of limit values is a geometry and arrangement of the interference geometry 3 to make a collision of the tool 1 to avoid this.

Weiterhin ist dabei eine Berücksichtigung einer Geometrie des Werkzeugs 1 und gegebenenfalls weiterer den Arbeitsraum R begrenzender Strukturen erforderlich.Furthermore, it is a consideration of a geometry of the tool 1 and possibly further the workspace R limiting structures required.

Zusätzlich ist es dem Anwender möglich, eine so genannte Startpopulation des Algorithmus zu beeinflussen oder festzulegen. Mittels der Startpopulation wird festgelegt, wie viele Paare von Stützpunkten P1, P2 zu Anfang zufällig innerhalb der vorgegebenen Grenzwerte erzeugt werden.In addition, it is possible for the user to influence or define a so-called starting population of the algorithm. By means of the starting population, it is determined how many pairs of bases P1, P2 are randomly generated at the beginning within the prescribed limits.

Ferner wird automatisch und/oder durch den Anwender eine anfängliche Schrittweite bei Verwendung einer Abstandsfunktion auf einer Definitionsmenge einer Wertelandschaft zur Erzeugung der Werkzeugbahn B durch zumindest einen Parameter festgelegt. Auch wird automatisch und/oder durch den Anwender ein Reduktionsfaktor festgelegt, um welchen die Schrittweite jeweils nach einem Durchlauf einer Optimierung reduziert wird.Furthermore, an initial step size is automatically and / or by the user when using a distance function on a definition set of a value landscape for generating the tool path B determined by at least one parameter. Also, a reduction factor is set automatically and / or by the user by which the step size is reduced after each pass of an optimization.

Zusätzlich wird weiterhin automatisch und/oder durch den Anwender eine minimale Schrittweite angegeben, deren Erreichen ein Abbruchkriterium darstellt.In addition, a minimum increment is automatically and / or specified by the user, the achievement of which represents a termination criterion.

Nach der Vorgabe der Randbedingungen im ersten Schritt S1 werden in einer zweiten Phase des Algorithmus in einem zweiten Schritt S2 zufällige Startwerte für jeweils zwei Stützpunkte P1, P2 für mehrere Polynomzüge im Arbeitsraum R erzeugt, entlang welcher das Werkzeug 1 kollisionsfrei vom Startpunkt SP zum Endpunkt EP bewegbar ist.After the specification of the boundary conditions in the first step S1, in a second phase of the algorithm in a second step S2, random starting values are generated for each two support points P1, P2 for a plurality of polynomial trains in the workspace R, along which the tool 1 collision-free from the starting point SP to the end point EP is movable.

In einem dritten Schritt S3 werden anschließend im Rahmen einer Optimierung alle zufälligen Polynomzüge abgefahren und es wird der Polynomzug mit dem zugehörigen Paar von Stützpunkten P1, P2 aus der Mehrzahl von Polynomzügen ermittelt und ausgewählt, welcher die kürzeste Zeitdauer zur kollisionsfreien Bewegung des Werkzeugs 1 vom Startpunkt SP zum Endpunkt EP aufweist. Die verbleibenden Polynomzüge und deren zugehörige Stützpunkte P1, P2 werden in einem vierten Schritt S4 verworfen.In a third step S3, all random polynomial trains are then traversed within the scope of an optimization, and the polynomial train with the associated pair of interpolation points P1, P2 is determined and selected from the plurality of polynomial trains, which selects the shortest time for the collision-free movement of the tool 1 from the starting point SP to the end point EP. The remaining polynomial trains and their associated interpolation points P1, P2 are discarded in a fourth step S4.

Anschließend wird in einem fünften Schritt S5 einer der Stützpunkte P1, P2 zu einer abwechselnden Variation von Koordinaten der beiden Stützpunkte P1, P2 im Arbeitsraum R ausgewählt.Subsequently, in a fifth step S5, one of the interpolation points P1, P2 is selected for an alternating variation of coordinates of the two interpolation points P1, P2 in the working space R.

In einem darauffolgenden sechsten Schritt S6 wird eine erste Achse gewählt, auf welcher der gewählte Stützpunkt P1, P2 zur Optimierung des Polynomzuges verschoben wird, bevor in einem siebten Schritt S7 geprüft wird, ob die im ersten Schritt S1 vorgegebenen Randbedingungen durch eine solche Verschiebung des Stützpunktes P1, P2 verletzt werden.In a subsequent sixth step S6, a first axis is selected, on which the selected interpolation point P1, P2 for optimizing the Polynomial train is moved before it is checked in a seventh step S7, whether the given in the first step S1 boundary conditions are violated by such a shift of the support point P1, P2.

Werden die Randbedingungen nicht verletzt (dargestellt durch einen Pfad N1), wird der gewählte Stützpunkt P1, P2 in einem achten Verfahrensschritt S8 um die gewählte Schrittweite entlang der gewählten Achse im Arbeitsraum R verschoben, bevor in einem neunten Schritt S9 geprüft wird, ob aufgrund der durchgeführten Verschiebung eine zeitliche Optimierung des Polynomzuges erfolgt.If the boundary conditions are not violated (represented by a path N1), the selected interpolation point P1, P2 is shifted in an eighth method step S8 by the selected step along the selected axis in the working space R, before it is checked in a ninth step S9 whether carried out a shift optimization of the polynomial train.

Liegt keine zeitliche Optimierung durch die Verschiebung vor (dargestellt durch einen Pfad N2), wird in einem zehnten Schritt S10 eine Verschiebungsrichtung auf der gewählten Achse geändert. Die Änderung der Verschiebungsrichtung im Schritt S10 erfolgt auch dann, wenn im siebten Schritt S7 die Randbedingungen verletzt werden (dargestellt durch einen Pfad J1).If there is no temporal optimization by the displacement (represented by a path N2), a displacement direction on the selected axis is changed in a tenth step S10. The change in the direction of displacement in step S10 also takes place if the boundary conditions are violated in the seventh step S7 (represented by a path J1).

Auch nach dem Wechsel der Verschiebungsrichtung im zehnten Schritt S10 wird in einem elften Schritt S11 überprüft, ob die im ersten Schritt S1 vorgegebenen Randbedingungen verletzt sind. Ist dies der Fall (dargestellt durch einen Pfad J2), erfolgt in einem zwölften Schritt S12 eine Wahl einer anderen Achse, entlang welcher der gewählte Stützpunkt P1, P2 innerhalb des Arbeitsraumes R verschoben wird.Even after the change of the shift direction in the tenth step S10, it is checked in an eleventh step S11 whether the boundary conditions specified in the first step S1 are violated. If this is the case (represented by a path J2), in a twelfth step S12 a selection of another axis takes place, along which the selected interpolation point P1, P2 is displaced within the working space R.

Werden die Randbedingungen dagegen nicht verletzt, wird in einem dreizehnten Schritt S13 eine Verschiebung des gewählten Stützpunktes P1, P2 um die gewählte Schrittweite durchgeführt und der Polynomzug wird ausgeführt bzw. abgefahren.On the other hand, if the boundary conditions are not violated, a shift of the selected interpolation point P1, P2 by the selected increment is performed in a thirteenth step S13 and the polynomial train is executed or traversed.

Der dreizehnte Schritt S13 wird auch dann ohne Ausführung der Schritte S10 und S11 unmittelbar im Anschluss an den neunten Schritt S9 ausgeführt (dargestellt durch einen Pfad J3), wenn durch die im achten Schritt S8 durchgeführte Verschiebung eine zeitliche Optimierung des Polynomzuges erfolgte.The thirteenth step S13 is also executed without executing steps S10 and S11 immediately following the ninth step S9 (represented by a path J3) when the polynomial train has been temporally optimized by the shift performed in the eighth step S8.

Im Anschluss an den dreizehnten Schritt S13 wird in einem vierzehnten Schritt S14 überprüft, ob aufgrund der durchgeführten Verschiebung eine zeitliche Optimierung des Polynomzuges erfolgt. Ist dies der Fall (dargestellt durch einen Pfad J4), werden die Schritte S13 und S14 solange wiederholt, bis im vierzehnten Schritt S14 festgestellt wird, dass keine Optimierung des Polynomzuges durch die Verschiebung entlang der gewählten Achse mehr möglich ist (dargestellt durch einen Pfad N3).Subsequent to the thirteenth step S13, it is checked in a fourteenth step S14 whether a temporal optimization of the polynomial train takes place due to the displacement carried out. If this is the case (represented by a path J4), the steps S13 and S14 are repeated until it is determined in the fourteenth step S14 that it is no longer possible to optimize the polynomial drag by shifting along the selected axis (represented by a path N3) ).

In diesem Fall wird in einem fünfzehnten Schritt S15 überprüft, ob eine zeitliche Optimierung durch Wahl einer anderen Achse, entlang welcher der gewählte Stützpunkt P1, P2 innerhalb des Arbeitsraumes R verschoben wird, realisierbar ist. Ist dies der Fall (dargestellt durch einen Pfad J5), wird erneut der sechste Schritt S6 durchgeführt.In this case, it is checked in a fifteenth step S15 whether a temporal optimization by selection of another axis, along which the selected support point P1, P2 is moved within the working space R, is feasible. If this is the case (represented by a path J5), the sixth step S6 is performed again.

Ist dies nicht der Fall (dargestellt durch einen Pfad N4) wird in einem sechszehnten Schritt S16 überprüft, ob bereits andere Achse betrachtet wurden. Wurden andere Achsen noch nicht betrachtet (dargestellt durch einen Pfad N5), wird erneut der zwölfte Schritt S12 ausgeführt.If this is not the case (represented by a path N4), it is checked in a sixteenth step S16 whether other axes have already been considered. If other axes have not yet been viewed (represented by a path N5), the twelfth step S12 is executed again.

Wurden dagegen bereits alle andere Achsen betrachtet (dargestellt durch einen Pfad J6), wird in einem siebzehnten Schritt S17 ermittelt, ob durch Wahl des jeweils noch nicht betrachteten Stützpunktes P1, P2 und dessen Verschiebung entlang von Achsen in Arbeitsraum R eine zeitliche Optimierung des Polynomzuges realisierbar ist. Ist dies der Fall (dargestellt durch einen Pfad J7), wird der fünfte Schritt S5 für den jeweils verbleibenden Stützpunkt P1, P2 ausgeführt.On the other hand, if all the other axes have already been considered (represented by a path J6), a seventeenth step S17 determines whether a temporal optimization of the polynomial pull can be achieved by selecting the respective not yet considered support point P1, P2 and its displacement along axes in working space R. is. If this is the case (represented by a path J7), the fifth step S5 is carried out for the respectively remaining support point P1, P2.

Ist das Ergebnis des siebzehnten Schritts S17 negativ (dargestellt durch einen Pfad N6), wird in einem achtzehnten Schritt S18 überprüft, ob bereits alle Stützpunkte P1, P2 betrachtet wurden. Ist dies nicht der Fall (dargestellt durch einen Pfad N7) erfolgt in einem neunzehnten Schritt S19 die Wahl eines verbleibenden Stützpunktes P1, P2 und anschließend die Durchführung des sechsten Schritts S6.If the result of the seventeenth step S17 is negative (represented by a path N6), it is checked in an eighteenth step S18 whether all the interpolation points P1, P2 have already been considered. If this is not the case (represented by a path N7), the selection of a remaining support point P1, P2 takes place in a nineteenth step S19 and then the execution of the sixth step S6.

Wurden dagegen bereits alle Stützpunkte P1, P2 betrachtet, wird in einem zwanzigsten Schritt S20 die Schrittweite um den Reduktionsfaktor verringert.On the other hand, if all interpolation points P1, P2 have already been considered, the increment is reduced by the reduction factor in a twentieth step S20.

In einem 21. Schritt S21 wird überprüft, ob das Abbruchkriterium, d. h. ein Erreichen der vorgegebenen minimalen Schrittweite, vorliegt. Ist dies nicht der Fall (dargestellt durch einen Pfad N8), wird der fünfte Schritt S5 erneut mit verringerter Schrittweite durchgeführt. Ist das Abbruchkriterium dagegen erreicht (dargestellt durch einen Pfad J8), wird die zeitliche Optimierung des Polynomzuges in einem 22. Schritt S22 beendet.In a 21st step S21, it is checked whether the termination criterion, i. H. reaching the predetermined minimum increment, is present. If this is not the case (represented by a path N8), the fifth step S5 is performed again with a reduced step size. On the other hand, if the abort criterion is reached (represented by a path J8), the temporal optimization of the polynomial train is ended in a 22nd step S22.

Der Algorithmus wird somit in der Art ausgeführt, dass beginnend mit einer Achse eine Koordinate des gewählten Stützpunktes P1, P2 um die anfängliche Schrittweite verschoben wird. Kann eine zeitliche Verbesserung durch Abfahren des Polynomzuges erzielt werden, so wird im nachfolgenden Schritt die Koordinate wieder um einen Abschnitt verschoben. Dies passiert solange bis die erzielte Zeit wieder steigt oder eine Randbedingung verletzt wird. Wurde schon im ersten Schritt eine Verschlechterung erzielt, so wird die Verschiebung der Koordinate des Stützpunktes P1, P2 in die andere Richtung auf derselben Achse durchgeführt. Dieses Verschieben der Koordinate entlang einer Achse wird anschließend für die verbleibenden anderen beiden Achsen des Arbeitsraumes R auch durchgeführt. Konnte keine zeitliche Optimierung des Polynomzuges erreicht werden, so wird der verbleibende Stützpunkt P1, P2 variiert. Wurde aber für eine der Achsen eine zeitliche Verbesserung erreicht, so erfolgt eine erneute Variation der beiden anderen Achsen.The algorithm is thus executed in such a way that, beginning with an axis, a coordinate of the selected interpolation point P1, P2 is shifted by the initial increment. If a temporal improvement can be achieved by traversing the polynomial train, then the coordinate is shifted again by one section in the following step. This happens until the achieved time increases again or a boundary condition is violated. If a deterioration has already been achieved in the first step, the displacement of the coordinate of the point P1, P2 in the other direction is carried out on the same axis. This move the Coordinate along one axis is then also performed for the remaining other two axes of the working space R. If no temporal optimization of the polynomial train could be achieved, the remaining interpolation point P1, P2 is varied. But if a temporal improvement was achieved for one of the axles, a further variation of the other two axles takes place.

Sollte durch die Variation des weiteren Stützpunktes P1, P2 eine Verbesserung erreicht werden, so muss auch wieder der zuerst geprüfte Stützpunkt P1, P2 variiert werden. Konnte aber für alle drei Achsen im Arbeitsraum R der beiden Stützpunkte P1, P2 keine zeitliche Verbesserung mehr erzielt werden, folgt die Verringerung der Schrittweite um den zuvor definierten Reduktionsfaktor und die Verschiebung der Koordinaten der Stützpunkte P1, P2 beginnt erneut. Erreicht die Schrittweite das Abbruchkriterium, so wird die Optimierung letztmalig durchlaufen und endet, sobald eine weitere Verkleinerung erfolgen müsste.Should an improvement be achieved by the variation of the further interpolation point P1, P2, the interpolation point P1, P2 tested first must also be varied again. However, if no time improvement could be achieved for all three axes in the working space R of the two interpolation points P1, P2, the reduction of the step size follows the previously defined reduction factor and the shifting of the coordinates of the interpolation points P1, P2 starts again. If the step size reaches the abort criterion, the optimization is run through for the last time and ends as soon as a further reduction would have to take place.

Nach der während eines Betriebs der Bearbeitungsmaschine oder bei deren Inbetriebnahme automatisch durchgeführten Optimierung werden in einer dritten Phase des Algorithmus die Stützpunkte P1, P2 des Polynomzuges mit der minimalen Zeit an eine nicht gezeigte Steuereinheit zur Steuerung der Bearbeitungsmaschine übertragen. Die Steuereinheit, welche insbesondere Bestandteil der Bearbeitungsmaschine ist, steuert diese anhand der Stützpunkte P1, P2 derart an, dass das Werkzeug 1 entlang der Werkzeugbahn B kollisionsfrei in der minimalen Zeit vom Startpunkt SP zum Endpunkt EP bewegt wird.After the optimization carried out automatically during operation of the processing machine or during its startup, in a third phase of the algorithm, the interpolation points P1, P2 of the polynomial traction are transmitted with the minimum time to a control unit (not shown) for controlling the processing machine. The control unit, which is in particular part of the processing machine, controls it on the basis of the support points P1, P2 such that the tool 1 along the tool path B is moved without collision in the minimum time from the starting point SP to the end point EP.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

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.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • DE 102013021653 A1 [0003] DE 102013021653 A1 [0003]

Claims (8)

Verfahren zur Steuerung einer Bearbeitungsmaschine, bei dem zumindest ein beweglich an der Bearbeitungsmaschine angeordnetes Werkzeug (1) von einem vorgegebenen Startpunkt (SP) zu mindestens einem vorgegebenen Endpunkt (EP) innerhalb eines Arbeitsraumes (R) automatisiert bewegt wird, dadurch gekennzeichnet, dass innerhalb des Arbeitsraumes (R) eine Werkzeugbahn (B) ermittelt wird, entlang welcher das Werkzeug (1) kollisionsfrei in einer minimalen Zeit vom Startpunkt (SP) zum Endpunkt (EP) bewegt wird, wobei die Werkzeugbahn (B) mittels eines evolutionären Algorithmus ermittelt wird.Method for controlling a processing machine, in which at least one tool movably arranged on the processing machine ( 1 ) is automatically moved from a predetermined starting point (SP) to at least one predetermined end point (EP) within a working space (R), characterized in that within the working space (R) a tool path (B) is determined, along which the tool ( 1 ) is moved without collision in a minimum time from the starting point (SP) to the end point (EP), the tool path (B) being determined by means of an evolutionary algorithm. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Werkzeugbahn (B) während eines Betriebs der Bearbeitungsmaschine automatisch ermittelt wird.A method according to claim 1, characterized in that the tool path (B) is automatically determined during operation of the processing machine. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Werkzeugbahn (B) in Form eines Polynomzuges ermittelt wird.A method according to claim 1 or 2, characterized in that the tool path (B) is determined in the form of a polynomial. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass in einer ersten Phase des Algorithmus Randbedingungen vorgegeben werden, wobei als Randbedingungen zumindest Grenzwerte für Stützpunkte (P1, P2) zumindest eines Polynomzuges vorgegeben werden.Method according to Claim 3, characterized in that boundary conditions are specified in a first phase of the algorithm, boundary conditions stipulating at least limit values for interpolation points (P1, P2) of at least one polynomial traction. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass in Abhängigkeit der Stützpunkte (P1, P2) mehrere Polynomzüge ermittelt werden, entlang welcher das Werkzeug (1) kollisionsfrei vom Startpunkt (SP) zum Endpunkt (EP) bewegbar ist.Method according to Claim 4, characterized in that a number of polynomial trains are determined as a function of the interpolation points (P1, P2), along which the tool ( 1 ) is collision-free from the starting point (SP) to the end point (EP) is movable. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass in einer zweiten Phase des Algorithmus aus der Mehrzahl von Polynomzügen der Polynomzug gewählt wird, welcher die kürzeste Zeitdauer zur kollisionsfreien Bewegung des Werkzeugs (1) vom Startpunkt (SP) zum Endpunkt (EP) aufweist.A method according to claim 5, characterized in that in a second phase of the algorithm of the plurality of polynomial trains the polynomial train is selected, which is the shortest time for collision-free movement of the tool ( 1 ) from the starting point (SP) to the end point (EP). Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass in der zweiten Phase des Algorithmus zumindest einer der Stützpunkte (P1, P2) des gewählten Polynomzugs solange dreidimensional im Arbeitsraum (R) verschoben wird, bis die Zeit, in welcher das Werkzeug (1) kollisionsfrei vom Startpunkt (SP) zum Endpunkt (EP) bewegbar ist, minimiert ist.Method according to Claim 6, characterized in that, in the second phase of the algorithm, at least one of the interpolation points (P1, P2) of the selected polynomial train is displaced three-dimensionally in the working space (R) until the time in which the tool ( 1 ) is collision-free from the starting point (SP) to the end point (EP), is minimized. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass die Stützpunkte (P1, P2) des Polynomzuges mit der minimalen Zeit an eine Steuereinheit zur Steuerung der Bearbeitungsmaschine übertragen werden, welche die Bearbeitungsmaschine anhand der Stützpunkte (P1, P2) derart ansteuert, dass das Werkzeug (1) entlang der Werkzeugbahn (B) kollisionsfrei in der minimalen Zeit vom Startpunkt (SP) zum Endpunkt (EP) bewegt wird.A method according to claim 7, characterized in that the support points (P1, P2) of the polynomial with the minimum time are transmitted to a control unit for controlling the processing machine, which controls the processing machine based on the support points (P1, P2) such that the tool ( 1 ) is moved along the tool path (B) without collision in the minimum time from the starting point (SP) to the end point (EP).
DE102015000291.0A 2015-01-10 2015-01-10 Method for controlling a processing machine Withdrawn DE102015000291A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015000291.0A DE102015000291A1 (en) 2015-01-10 2015-01-10 Method for controlling a processing machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015000291.0A DE102015000291A1 (en) 2015-01-10 2015-01-10 Method for controlling a processing machine

Publications (1)

Publication Number Publication Date
DE102015000291A1 true DE102015000291A1 (en) 2015-07-02

Family

ID=53372335

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015000291.0A Withdrawn DE102015000291A1 (en) 2015-01-10 2015-01-10 Method for controlling a processing machine

Country Status (1)

Country Link
DE (1) DE102015000291A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3115857A1 (en) * 2015-07-09 2017-01-11 Siemens Aktiengesellschaft Trajectory determining method for in addition to secondary processing movements
EP3115856A1 (en) * 2015-07-09 2017-01-11 Siemens Aktiengesellschaft Trajectory determining method for in addition to secondary processing movements

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013021653A1 (en) 2013-12-19 2014-07-31 Daimler Ag Method of controlling workpiece processing machine comprising machine tool such as drill, involves determining the movement space of machine tool, for the free movement of the tool in the working space

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013021653A1 (en) 2013-12-19 2014-07-31 Daimler Ag Method of controlling workpiece processing machine comprising machine tool such as drill, involves determining the movement space of machine tool, for the free movement of the tool in the working space

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3115857A1 (en) * 2015-07-09 2017-01-11 Siemens Aktiengesellschaft Trajectory determining method for in addition to secondary processing movements
EP3115856A1 (en) * 2015-07-09 2017-01-11 Siemens Aktiengesellschaft Trajectory determining method for in addition to secondary processing movements
WO2017005428A1 (en) * 2015-07-09 2017-01-12 Siemens Aktiengesellschaft Trajectory determination method for non-productive movements
CN107850885A (en) * 2015-07-09 2018-03-27 西门子公司 For nonproductive time, the track of motion determines method
CN107850884A (en) * 2015-07-09 2018-03-27 西门子公司 For nonproductive time, the track of motion determines method
US10513034B2 (en) 2015-07-09 2019-12-24 Siemens Aktiengesellschaft Trajectory determination method for non-productive movements
US10556341B2 (en) 2015-07-09 2020-02-11 Siemens Aktiengesellschaft Trajectory determination method for non-productive movements
CN107850885B (en) * 2015-07-09 2020-11-10 西门子公司 Trajectory determination method for non-productive time motion

Similar Documents

Publication Publication Date Title
DE102015004932B4 (en) Simulation device for several robots
EP3050659B1 (en) Method and device for gear cutting a workpiece by means of a diagonal generating method
EP1963935A1 (en) Method for the determination of a rough trajectory to be followed in a positionally guided manner
DE102015013582B4 (en) Numerical control device
EP2789419B1 (en) Tool and method for machining threads
EP2796952A1 (en) Numerical controller capable of changing the sub-program
DE102013010464A1 (en) Method for operating robots in production plant, involves determining scale factors, such that time interval of planned movement phases are extended without extending determined total minimum period of forthcoming production cycle
DE102012012617A1 (en) A method of generating a gearing and gearing machine operable with this method
DE102012110227A1 (en) Motor control device with zero range processing
DE102016003642A1 (en) Servo control device for a learning control by changing a reference axis
EP3818420B1 (en) Time-optimized guidance of movement between rail sections
DE102015000291A1 (en) Method for controlling a processing machine
DE102014008572A1 (en) Numerical control unit having a function of smoothly changing the feed rate when an override is changed
EP3300521B1 (en) Alignment method for workpieces
EP3629116B1 (en) Method and device for a wear analysis on a machine tool
DE102016220577A1 (en) Method for optimizing the motion contours of a manipulator
EP2796953B1 (en) Numerical controller with indicator for preview in case of changes to the part program
DE102018121788A1 (en) Method for machining a workpiece
EP0417337B1 (en) Method for running a digitally controlled machine tool or a robot
EP2623271B1 (en) Method for operating a processing machine
DE102013225890A1 (en) Method for controlling a manipulator
DE102013021653A1 (en) Method of controlling workpiece processing machine comprising machine tool such as drill, involves determining the movement space of machine tool, for the free movement of the tool in the working space
DE102014206622A1 (en) Process for the production of parts, in particular bent parts
EP2557465B1 (en) Method and device for controlling a movement cycle of a machine element
DE102015014313A1 (en) Method for producing or processing toothings on workpieces

Legal Events

Date Code Title Description
R230 Request for early publication
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee