Automatic quality evaluation for a sequence of movement commands

Movement commands in a sequence of movement commands each define a position to be adopted by a tool of a processing machine relative to a workpiece. During the execution of the sequence of movement commands by a control device of the processing machine, the tool machines the workpiece at least intermittently. The movement commands, during their execution by the control device of the processing machine, are converted into a trajectory including the defined positions. A depiction of the trajectory defined by the sequence of movement commands is output to a user. The distances between the positions of directly successive movement commands are ascertained. Positions of directly successive movement commands whose distance is below a predetermined minimum distance are highlighted in the depiction by means of a marker.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is the U.S. National Stage of International Application No. PCT/EP2017/071402, filed Aug. 25, 2017, which designated the United States and has been published as international Publication No. WO 2018/050423 and which claims the priority of European Patent Application, Serial No. 16188667.8, filed Sep. 13, 2016, pursuant to 35 U.S.C. 119(a)-(d).

BACKGROUND OF THE INVENTION

The invention relates to an evaluation method for a sequence of movement commands,wherein the movement commands each define a position to be adopted by a tool of a processing machine relative to a workpiece,wherein during the execution of the sequence of movement commands by a control device of the processing machine, the tool machines the workpiece at least intermittently,wherein the movement commands, during their execution by the control device of the processing machine, are converted into a trajectory including the defined positions,wherein a depiction of the trajectory defined by the sequence of movement commands is output to a user.

Within the scope of the present invention, “positions” means exclusively a translational positioning of the tool relative to the workpiece. If an orientation of the tool relative to the workpiece is meant, the corresponding term (“orientation”) is also used. The term “position” can either be an exclusive translational positioning of the tool relative to the workpiece or a translational positioning of the tool relative to the workpiece, in which an orientation of the tool relative to the workpiece is additionally also set.

The present invention also starts from a computer program comprising machine code which can be executed by an arithmetic device, wherein the execution of the machine code by means of the arithmetic device causes the arithmetic device to execute such an evaluation method.

The present invention also starts from an arithmetic device, wherein the arithmetic device is programmed with a computer program such that it executes an evaluation method of this kind.

Within the framework of the creation of parts programs—in other words programs by means of which numerical control devices control processing machines, so that these machining operations can be carried out on workpieces—a CAD data set is generally created first of all (CAD=Computer Aided Design). The corresponding CAD data set defines the shape of the workpiece to be produced. However, it generally does not include any information about the machining processes required for this purpose. The CAD data set is therefore converted into a CAM data set by means of an arithmetic device (CAM=Computer Aided Manufacturing). The CAM data set defines the parts program to be executed later. It comprises a plurality of sequences of movement commands within the meaning of the present invention.

Theoretically, the conversion of the CAD data set into the CAM data set is perfect. The same applies to subsequent process steps. In practice, however, it can happen that subsequent machining of the workpiece leads to surface defects. The causes of such surface defects are diverse in nature. In particular, however, it can often no longer be possible to see on the workpiece which specific individual machining process has caused the respective surface defect.

A method for depicting, examining and optimizing a surface quality on the basis of CNC program data is known from EP 1 315 058 058 A1. In this method, the CNC program data describes track points of space curves. The associated normal vectors are determined and displayed for a plurality of adjacent track points. Normal vectors, which are directed substantially in the same direction, indicate regions of high surface quality, while normal vectors which point in (clearly) deviating directions indicate inaccuracies of the resulting surface.

The method of EP 1 315 058 A1 already leads to a significant improvement in the conversion of the CAD data set into the CAM data set. In particular, locations of the CAM data set which bring about an insufficient quality of the surface of the machined workpiece can be identified. However, the method of EP 1 315 058 A1 does not lead to the desired result in all cases.

The object of the present invention is to create an evaluation method with which the locations of the CAM data set, whose execution can lead to a reduced surface quality of the machine workpiece, can be reliably and comprehensively identified.

The object is achieved by an evaluation method having the features of claim1. Advantageous embodiments of the evaluation method are the subject matter of dependent claims2to13.

The object is achieved by an evaluation method of the type mentioned in the introduction and being inventively configured in thatthe distances between the positions of directly successive movement commands are ascertained,positions of directly successive movement commands, whose distance is below a predetermined minimum distance, are highlighted in the depiction by means of a marker.

Advantageous embodiments of the evaluation method are the subject matter of dependent claims.

This approach is based on the knowledge that, during the conversion of the CAD data set into the CAM data set, the support points (=defined positions), between which interpolation is carried out by the control device during the course of the execution of the sequence of movement commands, are generally far apart from each other for processing operations to be carried out without any problems. In the case of machining processes which are difficult to carry out, on the other hand, a large number of closely successive positions must be approached. Such facts often cause surface defects.

In some cases (for example in some three-axis machine tools) a movement of the tool relative to the workpiece is only possible in the three translational directions. In other cases (for example in the case of some five-axis machine tools) an adjustment of the orientation of the tool relative to the workpiece is also possible. In the last-mentioned cases, the movement commands also define an orientation to be adopted by the tool relative to the workpiece in addition to the respective position. Furthermore, in these cases the movement commands are converted during their execution by the control device of the processing machine in such a way that the tool adopts the corresponding orientation relative to the workpiece at the defined positions.

It is possible, even in such cases, to limit the evaluation to the position as such. Preferably, in such cases the method is, however, configured in thatIn addition, the change in the orientation of directly successive movement commands is determined andpositions of directly successive movement commands, whose change in orientation is above a first maximum change, are highlighted by means of a marker.

It is possible for the first maximum change to be predetermined, in other words, always to have the same value. Preferably, however, the first maximum change is determined as a function of the distance between the positions of the respective directly successive movement commands.

An even more extensive evaluation of the orientations is also possible. In particular it is possiblethat pairs of movement commands, whose respective position is below a predetermined first minimum distance, are respectively determined for the positions to be adopted by the tool,that the difference in the orientations to be adopted by the tool relative to the workpiece is determined for the pairs of movement commands, andthat positions of pairs of movement commands, in which the difference in the orientations is above a second maximum change, are highlighted by means of a marker.

This type of evaluation leads to an even more comprehensive evaluation of the movement commands.

Analogously to the first maximum change, it is possible that the second maximum change is determined as a function of the distance between the positions of the two movement commands of the respective pair of movement commands.

As a rule, the movement commands, in addition to the respective position, not only define an orientation to be adopted by the tool relative to the workpiece, but also a respective direction of movement. In particular, the movement commands are converted during their execution by the control device of the processing machine in such a way that the tool not only adopts the corresponding orientation relative to the workpiece at the defined positions, but also in the corresponding direction of movement. In this case, the evaluation method is preferably designed in such a way thatfor the positions to be adopted by the tool, in addition the cross product in the direction of movement and the orientation respectively is determined,the change in the direction of the cross product of directly successive movement commands is determined andpositions of directly successive movement commands, whose change in the direction of the cross product is above a third maximum change, are highlighted by means of a marker.

This type of evaluation leads to an even more comprehensive evaluation of the movement commands.

Analogously to the first maximum change it is possible that the third maximum change is determined as a function of the distance between the positions of the respective directly successive movement commands.

Just as with the orientations, it is possible thatpairs of movement commands, whose respective position is below a predetermined second minimum distance, are respectively determined for the positions to be adopted by the tool,the difference in the directions of the cross product is determined for the pairs of movement commands, andpositions of pairs of movement commands in which the difference in the directions of the cross products is above a fourth maximum change are highlighted by means of a marker.

This type of evaluation leads to an even more comprehensive evaluation of the movement commands.

Analogously to the second maximum change it is possible that the fourth maximum change is determined as a function of the distance between the positions of the two movement commands of the respective pair of movement commands.

If the movement commands, in addition to the respective position, define an orientation to be adopted by the tool relative to the workpiece and a respective direction of movement, the evaluation method can also be designed in such a way thatusing the direction of movement and the orientation, in addition a normal vector oriented orthogonally to the surface of the workpiece at the respective position is determined for the positions to be adopted by the tool,the change in the direction of the normal vector of directly successive movement commands is determined andpositions of directly successive movement commands, whose change in direction of the normal vector is above a fifth maximum change, are highlighted by means of a marker.

Analogously to the first maximum change it is possible that the fifth maximum change is determined as a function of the distance between the positions of the respective directly successive movement commands.

Furthermore, it is additionally possible in this case thatpairs of movement commands, whose respective position is below a predetermined third minimum distance, are respectively determined for the positions to be adopted by the tool,the difference in the directions of the normal vectors is determined for the pairs of movement commands andpositions of pairs of movement commands in which the difference in the directions of the normal vectors is above a sixth maximum change are highlighted by means of a marker.

Analogously to the first maximum change it is possible that the sixth maximum change is determined as a function of the distance between the positions of the respective directly successive movement commands.

The object is further achieved by a computer program including machine code which can be executed by an arithmetic device, in such a way that the execution of the computer program by means of the arithmetic device causes the arithmetic device to execute an inventive evaluation method.

The object is further achieved by an arithmetic device which is programmed with an inventive computer program so it executes an inventive evaluation method during operation.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

According toFIG. 1, an arithmetic device1is programmed with a computer program2. The computer program2comprises machine code3which can be executed by the arithmetic device1. Processing of the machine code3by the arithmetic device1causes the arithmetic device1to execute an evaluation method which is explained in more detail below in conjunction withFIG. 2and the further figures.

According toFIG. 2, a sequence of movement commands is known to the arithmetic device1in a step S1. For example, a parts program4(seeFIG. 1) which comprises the sequence can be known to the arithmetic device1in step S1.

According toFIG. 3, the parts program4and therewith also the sequence of movement commands are also associated with a control device5(for example a numerical control) which can execute the parts program4and therewith also the sequence of movement commands. The control devices5can be identical to the arithmetic device1. It is also possible for the control device5and the arithmetic device1to be combined in an integral unit. However, the control device5can also be a device different from the arithmetic device1.

During the course of the execution of the parts program4, the control device5determines, for a plurality of position-controlled axes A1to An of the processing machine, in each case the corresponding desired value for the respective position-controlled axis A1to An and controls the position-controlled axes A1to An according to the corresponding desired values. As a result, a tool6of the processing machine is at least translationally positioned relative to a workpiece7, optionally additionally also oriented. The movement commands therefore define a position p to be respectively adopted by a tool6relative to the workpiece7. Purely by way of example,FIGS. 4 and 5show some positions p of this kind in solid lines. The number n of position-controlled axes A1to An is generally at least three. If necessary, one or more rotational speed-controlled axes N can additionally be controlled by the control device5.

The control of the position-controlled axes A1to An, and therefore the execution of the sequence of movement commands, by the control device5of the processing machine has the effect that, as can be seen in particular by the depiction inFIGS. 3 and 4, during the execution of the sequence of movement commands, the tool6at least temporarily machines the workpiece7by means of the control device5. For example, the tool6can be engaged with the workpiece during these times. However, contact-free machining is also possible, for example a laser inscription.

Furthermore, it can be seen fromFIGS. 4 and 5that, during execution by the control device5, the movement commands are converted into a trajectory, which contains the defined positions p. The positions p are not shown individually inFIG. 4. InFIG. 5they are partially symbolized by small crosses.

In a step S2, the arithmetic device1selects the first movement command of the sequence of movement commands under consideration and determines the associated position p(1). In a step S3the arithmetic device1sets an index m to the value 2. The mthmovement command of the sequence of movement commands is also sometimes referred to as the reference character m in the following.

In a step S4the arithmetic device1selects the mthmovement command of the sequence under consideration and determines the associated position p(m). In a step S5the arithmetic device1determines the distance a of the position p(m) of the mthmovement command from the position p(m−1) of the m−1thmovement command. For example, the normal geometric (Euclidian) distance can be determined in step S5. Alternatively, the distance a can be determined by means of another type of standard. In a step S6the arithmetic device1checks whether the determined distance a is below a predetermined minimum distance a1. If this is the case, the arithmetic device1assigns a respective marker9in a step S7to at least one of the two relevant positions—in other words either the position p(m) of the mthmovement command or the position p(m−1) of the m−1thmovement command. The marker9is preferably assigned to both relevant positions p(m), p(m−1). Otherwise, step S7is skipped.

In a step S8the arithmetic device1checks whether it has already reached the last movement command of the sequence under consideration. If this is not the case, in a step S9the arithmetic device1increases the index m and then returns to step S4. Otherwise, the procedure ofFIG. 2is almost complete. In particular, the arithmetic device1skips only to a step S10in which the arithmetic device1outputs a depiction of the trajectory defined by the sequence of movement commands to a user8(seeFIG. 1). Within the sequence, those positions p whose distance a is below the minimum distance a1are highlighted by means of a marker9. For example, the corresponding positions p can be bordered in accordance with the depiction inFIG. 5. Other types of depiction are also possible. For example, the corresponding positions p can be displayed in a flashing manner or be displayed in a different color to the other positions p.

Owing to the movement of the tool6relative to the workpiece7, the movement commands, in accordance with the depiction inFIG. 6, also define a respective direction of movement r in addition to the respective position p. The movement commands are therefore converted during their execution by the control device5of the processing machine such that the tool6is moved relative to the workpiece7at the defined positions p in the corresponding direction of movement r.

In many cases the movement commands in accordance with the depiction inFIG. 6also define, in addition to the respective position p, an orientation α to be adopted by the tool6relative to the workpiece7. In this case the movement commands are additionally converted during their execution by the control device5of the processing machine in such a way that the tool6adopts the corresponding orientation α relative to the workpiece7at the defined positions p.

More extensive evaluations are possible if the movement commands also define the orientation α of the tool6relative to the workpiece7.

Therefore, for example, it is possible to modify the procedure ofFIG. 2in such a way as is explained in more detail below in conjunction withFIG. 7.

FIG. 7expands on the procedure ofFIG. 2. In particular, the procedure according toFIG. 7also comprises steps S1, S3and S5to S10. These steps will therefore not be explained again.

Steps S2and S4are replaced by steps S11and S12. In step S11the arithmetic device1selects—analogously to step S2ofFIG. 2—the first movement command of the sequence of movement commands under consideration and determines the associated position p(1). In addition, in step S11the arithmetic device1determines the associated orientation α(1) of the tool6relative to the workpiece7for the position p(1) of the first movement command. In a similar manner, in step S12the arithmetic device1selects—analogously to step S4ofFIG. 2—the m movement command of the sequence under consideration in step S12and determines the associated position p(m). In addition, the arithmetic device1determines the associated orientation α(m) of the tool6relative to the workpiece7for the position p(m) of the m movement command.

Furthermore, additional steps S13to S15are present. In step S13the arithmetic device1determines the change δα in orientation α(m), α(m−1) of directly successive movement commands m−1, m. In step S14the arithmetic device1checks whether the determined change δα is above a first maximum change501. If this is the case, in step S15the arithmetic device1assigns a respective marker9to at least one of the two respective positions—In other words either the position p(m) of the mthmovement command or the position p(m−1) of the m−1thmovement command. The marker9is preferably assigned to both relevant positions p(m), p(m−1). Otherwise, step S15is skipped.

Due to the presence of steps S11to S15, during the course of the execution of step S10not only those positions p whose distance a is below the minimum distance a1are therefore highlighted by means of a marker9. Rather, the positions p whose change δα in orientation is above the first maximum change501are additionally also highlighted by means of a marker9. As before, for example within the respective sequence, the corresponding positions p can be bordered in accordance with the depiction inFIG. 5. Other types of depiction are also possible. For example, the corresponding positions p can be displayed in a flashing manner or be displayed in another color. The type of marker can be the same as previously for the distances a but can alternatively be another marker.

In the simplest case the first maximum change501is a strictly predefined value. Preferably, however, a step S16is additionally present in accordance with the depiction inFIG. 7. In this case, in step S16the arithmetic device1determines the first maximum change δα1as a function of the distance a between the positions p(m), p(m−1) of the two directly successive movement commands m, m−1.

Within the scope of step S16, for example in accordance with the depiction inFIGS. 8 and 9, the first maximum change δα1can have a maximum value as long as the distance a between the positions p(m), p(m−1) of the two directly successive movement commands m, m−1 is above a predetermined first limit distance. The maximum value can be 180°, for example. However, it can also have a different value. However, if the distance a becomes smaller, the first maximum change δα1is also reduced, starting from the maximum value. It is possible for the first maximum change δα1to decrease in a strictly monotonous manner as the distance a decreases. This is illustrated in solid lines inFIG. 8. Alternatively, it is possible for the first maximum change δα1to be reduced in sections as the distance a decreases. This is illustrated in broken lines inFIG. 8. According to the depiction inFIG. 9, the combination of these two measures is also possible.

The procedure ofFIG. 7can be expanded further. This is explained in more detail below in conjunction withFIG. 10.

In step S21for each position p, the arithmetic device1determines those positions p whose distance a is below a predetermined first minimum distance a2. The arithmetic device1stores the associated movement commands as a respective pair of movement commands.

In step S22the arithmetic device1selects one of the pairs of movement commands. In step S23the arithmetic device1determines the associated positions p for the selected pair of movement commands, hereinafter referred to as p′ and p″. Furthermore, in step S23the arithmetic device1determines the associated orientations α for the selected pair of movement commands, hereinafter referred to as α′ and α″. In step S24the arithmetic device1determines the distance a between the two positions p′, p″. In step S25the arithmetic device1determines the difference δα in the orientations α′, α″, moreover.

In step S26the arithmetic device1checks whether the determined difference δα is above a second maximum change δα2. If this is the case, in step s27the arithmetic device assigns a respective marker9to the two relevant positions p′ and p″. Otherwise, step S27is skipped.

In step S28, the arithmetic device1checks whether it has already executed steps S22to S27for all pairs of movement commands determined in step S21. If this is not the case, the arithmetic device1returns to step S22. With the renewed execution of step S22, a different pair of movement commands is of course selected for which steps S23to S27have not yet been carried out. Otherwise, the procedure ofFIG. 10is completed. In particular, the arithmetic device1skips only to step S10in which the arithmetic device1outputs the depiction of the trajectory defined by the sequence of movement commands to the user8.

Owing to the presence of steps S21to S28, during the course of the execution of step S10, the positions p′, p″, in which the difference δα in the orientations α′ and α″ is above the second maximum change δα2, are therefore additionally also highlighted by means of a marker9. As before, for example the corresponding positions p′, p″ can be bordered in accordance with the depiction inFIG. 5. Other types of depiction are also possible. For example, the corresponding positions p′, p″ can be displayed in a flashing manner or be displayed in a different color.

The type of marker can be the same as previously for the distances a but can alternatively be another marker.

In the simplest case the second maximum change δα2is a strictly predefined value. Preferably, however, a step S29is additionally present in accordance with the depiction inFIG. 8. In this case, in step S29the arithmetic device1determines the second maximum change δα2as a function of the distance a between the positions p′, p″ of the two movement commands of the respective pair of movement commands. The above statements relating to the type of dependence of the first maximum change δα1on the distance a of the positions p(m), p(m−1) of directly successive movement commands can also be applied in an analogous manner to the second maximum change δα2. The second maximum change δα2, viewed as a function of the distance a, can have the same profile as the first maximum change δα1. However, this is not absolutely necessary.

If the movement commands also define the orientation α of the tool6relative to the workpiece7, other evaluations are also possible. These evaluations can be carried out alternatively or in addition to the evaluations according toFIG. 7orFIG. 10. This other evaluation is explained in more detail below in conjunction withFIG. 11.

Steps S2and S4are replaced by steps S31and S32. In step S31the arithmetic device1selects—analogously to step S2ofFIG. 2—the first movement command of the sequence of movement commands under consideration and determines the associated position p(1). In addition, in step S31the arithmetic device1determines the associated orientation (α1) of the tool6relative to the workpiece7for the position p(1) of the first movement command. Furthermore, in step S31the arithmetic device1determines the associated direction of movement r(1) for the position p(1). Finally, in step S31the arithmetic device1determines the cross-product β(1) of the direction of movement r(1) and the orientation (α1). The cross product β(1) therefore indicates a direction which is orthogonal to the direction of movement r(1) of the tool6at the position p(1) and orthogonal to the orientation α(1) of the tool6at the position p(1). Step S32corresponds in content to step S31, but is executed in relation to the mthmovement command of the sequence under consideration.

Furthermore, additional steps S33to S35are present. In step S33the arithmetic device1determines the change δβ in the cross product β(m−1), β(m) of the two directly successive movement commands m−1, m. In step S34the arithmetic device1checks whether the determined change δβ is above a third maximum change6131. If this is the case, in step S35the arithmetic device1assigns a marker9to at least one of the two relevant positions—in other words either the position p(m) of the mthmovement command or the position p(m−1) of the m−1thmovement command. The marker9is preferably assigned to both relevant positions p(m), p(m−1). Otherwise, step S35is skipped.

Owing to the presence of steps S31to S35, during the course of the execution of step S10, the directly successive positions p whose change δβ in the cross product β(m), β(m−1) is above the third maximum change δβ1are therefore additionally also highlighted by means of a marker9. As before, for example within the respective sequence, the corresponding positions p can be bordered in accordance with the depiction inFIG. 5. Other types of depiction are also possible. For example, the corresponding positions p can be displayed in a flashing manner or be displayed in a different color. The type of marker can be the same as before. However, it can alternatively be another marker.

In the simplest case the third maximum change δβ1is a strictly predefined value. Preferably, however, a step S36is additionally present in accordance with the depiction inFIG. 11. In this case, in step S36the arithmetic device1determines the third maximum change δβ1as a function of the distance a between the positions p(m), p(m−1). The above statements relating to the type of dependence of the first maximum change δα1on the distance a of the positions p(m), p(m−1) of directly successive movement commands can also be applied in an analogous manner to the third maximum change δβ1. The third maximum change δβ1—viewed as a function of the distance a—can have the same profile as the first or the second maximum change δα1, δα2. However, this is not absolutely necessary.

The procedure ofFIG. 11can be expanded further. This is explained in more detail below in conjunction withFIG. 12.

In step s41the arithmetic device1determines for each position p, the positions whose distance a is below a predetermined second minimum distance a3. The arithmetic device1stores the associated movement commands as a respective pair of movement commands.

In step S42the arithmetic device1selects one of the pairs of movement commands. In step S43the arithmetic device1determines the associated positions p for the selected pair of movement commands, hereinafter referred to as p′ and p″. Furthermore, in step S43the arithmetic device1determines the associated orientations α for the selected pair of movement commands, hereinafter referred to as α′ and α″. In step S43the arithmetic device1also determines the associated directions r for the selected pair of movement commands, hereinafter referred to as r′ and r″. Finally, in step S43the arithmetic device1determines the associated cross products β for the selected pair of movement commands, hereinafter referred to as β′ and β″.

In step S44the arithmetic device1determines the distance a between the two positions p′ and p″. Furthermore, in step S45the arithmetic device1determines the difference65in the cross products β′ and β″.

In step S46the arithmetic device1checks whether the detected difference δβ is above a fourth maximum change δβ2. If this is the case, in step S47the arithmetic device assigns a respective marker9to the two relevant positions p′ and p″. Otherwise, step S47is skipped.

In step S48the arithmetic device1checks whether it has already executed steps S42to S47for all pairs of movement commands determined in step S41. If this is not the case, the arithmetic device1returns to step S42. With the renewed execution of step S42a different pair of movement commands is of course selected, for which the steps S43to S47have not yet been carried out. Otherwise, the procedure ofFIG. 12is completed. In particular, the arithmetic device1skips only to step S10in which the arithmetic device1outputs the depiction of the trajectory defined by the sequence of movement commands to the user8.

Owing to the presence of steps S41to S48, during the course of the execution of step S10the positions p′, p″, in which the difference61in the cross products β′ and β″ Is above the fourth maximum change612, are therefore additionally also highlighted by means of a marker9. As before, for example the corresponding positions p′, p″, can be bordered in accordance with the depiction inFIG. 5. Other types of depiction are also possible. For example, the corresponding positions p′, p″ can be displayed in a flashing manner or be displayed in a different color. The type of marker can be the same as previously for the distances a but can alternatively be another marker.

In the simplest case the fourth maximum change δβ2is a strictly predefined value. Preferably, however, a step S49is additionally present in accordance with the depiction inFIG. 8. In this case, n step S49the arithmetic device1determines the fourth maximum change δβ2as a function of the distance a between the positions p′, p″ of the two movement commands of the respective pair of movement commands. The above statements relating to the type of dependence of the first maximum change δα1on the distance a of the positions p(m), p(m−1) of directly successive movement commands can also be applied in an analogous manner to the fourth maximum change δβ2. The fourth maximum change δβ2—viewed as a function of the distance a—can have the same profile as the first, the second or the third maximum change δα1, δα2, δβ1. However, this is not absolutely necessary.

Furthermore, it is possible to modify the procedure ofFIG. 2in such a way as is explained in more detail below in conjunction withFIG. 13.

FIG. 13expands on the procedure ofFIG. 2. In particular, the procedure according toFIG. 7also comprises steps S1, S3and S5to S10. These steps are therefore not explained again.

Steps S2and S4are replaced by steps S51and S52. In step S52, the arithmetic device1—analogously to step S2ofFIG. 2—selects the first movement command of the sequence of movement commands under consideration and determines the associated position p(1). In addition, in step S11the arithmetic device1determines a normal vector n(1) for the position p(1) of the first movement command. The normal vector n(1) is oriented orthogonally to the surface of the workpiece7at the position p(1) in accordance with the depiction inFIG. 6. The normal vector n(1) can be determined on the basis of the direction of movement r(1) and the orientation α(1). For example, starting from the cross product β(1), the cross product with the direction of movement r(1) can be determined once again. The resulting vector corresponds to the normal vector n(1) after a standardization to a predetermined length. Alternatively, the component of the orientation α(1) which is directed parallel to the direction of movement r(1) can be subtracted from the orientation α(1). After standardization to the predetermined length the result of the subtraction likewise corresponds to the normal vector n(1). The step S52corresponds in content to step S51but is executed in relation to the mthmovement command of the sequence under consideration.

Furthermore, additional steps S53to S55are present. In step S53the arithmetic device1determines the change δn in the normal vectors n(m), n(m−1) of directly successive movement commands m−1, m. In step S54the arithmetic device1checks whether the determined change δn is above a fifth maximum change δη1. If this is the case, in step S55the arithmetic device1assigns a respective marker9to at least one of the two relevant positions—in other words either the position p(m) of the mthmovement command or the position p(m−1) of the m−1thmovement command. The marker9is preferably assigned to the two relevant positions p(m), p(m−1). Otherwise, step S55is skipped.

On the basis of the presence of steps S51to S55, during the course of execution of step S10in addition, therefore, the positions p whose change δn in the normal vector n is above the fifth maximum change δn1are also highlighted by means of a marker9. As before, for example within the respective sequence, the corresponding positions p can be bordered in accordance with the depiction inFIG. 5. Other types of depiction are also possible. For example, the corresponding positions p can be displayed in a flashing manner or be displayed in another color. The type of marker can be the same as previously for the distances a but can alternatively be another marker.

In the simplest case the fifth maximum change δn1is a strictly predefined value. Preferably, however, a step S56is additionally present in accordance with the depiction inFIG. 13. In this case, in step S56the arithmetic device1determines the fifth maximum change δn as a function of the distance a of the positions p(m), p(m−1) of the two directly successive movement commands m, m−1. The fifth maximum change δβ1—as a function of the distance a—can have the same profile as one of the other maximum changes δα1, δα2, δβ1, δβ2. However, this is not absolutely necessary.

The procedure ofFIG. 13can be expanded even further. This is explained in more detail below in conjunction withFIG. 14.

In step S61the arithmetic device1determines for each position p, the positions p whose distance a is below a predetermined third minimum distance a4. The arithmetic device1stores the associated movement commands as a respective pair of movement commands.

In step S62the arithmetic device1selects one of the pairs of movement commands. In step S63the arithmetic device1determines the associated positions p for the selected pair of movement commands, hereinafter referred to as p′ and p″. Furthermore, in step S63the arithmetic device1determines the associated normal vectors n for the selected pair of movement commands, hereinafter referred to as n′ and n″. In step S64the arithmetic device1determines the distance a between the two positions p′, p′. In step S65the arithmetic device1determines the difference δn in the normal vectors n′, n″.

In step S66the arithmetic device1checks whether the determined difference an is above a sixth maximum change n2. If this is the case, in step S67the arithmetic device1assigns a respective marker9to the two relevant positions p′ and p″. Otherwise, step s67is skipped.

In step S68, the arithmetic device1checks whether it has already executed steps S62to S67for all pairs of movement commands determined in step S61. If this is not the case, the arithmetic device1returns to step S62. With the renewed execution of step S62, a different pair of movement commands is of course selected, for which steps S63to S67have not yet been carried out. Otherwise, the procedure ofFIG. 10is completed. In particular, the arithmetic device1skips only to step S10in which the arithmetic device1outputs the depiction of the trajectory defined by the sequence of movement commands to the user8.

Owing to the presence of steps S61to S68, during the course of the execution of step S10, the positions p′, p″ in which the difference δn in the normal vectors n′ and n″ is above the sixth maximum change δn2are therefore additionally also highlighted by means of a marker9.

As before, for example, the corresponding positions p′, p″ can be bordered in accordance with the depiction inFIG. 5. Other types of depiction are also possible. For example, the corresponding positions p′, p″ can be displayed in a flashing manner or be displayed in another color. The type of marker can be the same as previously for the distances a but can alternatively be another marker.

In the simplest case the sixth maximum change δn2is a strictly predefined value. Preferably, however, a step S69is additionally present in accordance with the depiction inFIG. 8. In this case, in step S69the arithmetic device determines the sixth maximum change δn2as a function of the distance a between the positions p′, p″ of the two movement commands of the respective pair of movement commands. The above statements relating to the type of dependence of the first maximum change δα1on the distance a of the positions p(m), p(m−1) of directly successive movement commands can also be applied in an analogous manner to the sixth maximum change δn2. The sixth maximum change δn2—viewed as a function of the distance a—can have the same profile as one of the other maximum changes δα1, δα2, δβ1, δβ2, δn1. However, this is not absolutely necessary.

The embodiments ofFIGS. 7 and 10can be implemented as required alternatively or in addition to the embodiments ofFIGS. 10 and 12and/or alternatively or In addition to the embodiments ofFIGS. 13 and 14. The embodiments ofFIGS. 10 and 12can likewise be implemented as required alternatively or in addition to the embodiments ofFIGS. 13 and 14.

To summarize, the present invention therefore relates to the following facts:

Movement commands of a sequence of movement commands each define a position p to be adopted by a tool6of a processing machine relative to a workpiece7. During execution of the sequence of movement commands by means of a control device5of the processing machine, the tool6machines the workpiece7at least temporarily. The movement commands are converted during their execution by the control device5of the processing machine into a trajectory containing the defined positions p. A depiction of the trajectory defined by the sequence of movement commands is output to a user8. The distances a between the positions p of directly successive movement commands are determined. Positions p of directly successive movement commands, whose distance a is below a predetermined minimum distance a1, are highlighted in the depiction by means of a marker9.

The present invention has many advantages. In particular, those locations of the parts program4which are to be assessed as critical (in the sense of the surface quality achieved) can easily and readily be seen by the user8. The inventive evaluation method can furthermore not only be carried out with the parts program4and the movement commands therein as such, but also with the movement commands which are determined on the basis of the parts program4. Examples of such sequences of movement commands are the intermediate outputs after the compressor of the numerical control and even the sequences of desired values which are output to the position-controlled axes A1to An.

Although the invention has been illustrated and described in detail by the preferred exemplary embodiment, it is not restricted by the disclosed examples and a person skilled in the art can derive other variations herefrom without departing from the scope of protection of the invention.