AUTOMATIC QUALITY EVALUATION FOR A SEQUENCE OF MOVEMENT
20190361423 ยท 2019-11-28
Assignee
Inventors
Cpc classification
G05B2219/35304
PHYSICS
G05B19/4068
PHYSICS
G05B2219/35349
PHYSICS
International classification
Abstract
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.
Claims
1.-15. (canceled)
16. A method for evaluating a sequence of movement commands which each define a position to be adopted by a tool of a processing machine relative to a workpiece, the method comprising: executing the sequence of movement commands with a control device of the processing machine so as to at least intermittently machining the workpiece with the tool, during execution of the movement commands, converting the movement commands into a trajectory which includes the defined positions, determining distances between the defined positions of directly consecutive movement commands, highlighting with a marker the defined positions of the directly consecutive movement commands having a distance less than a predetermined minimum distance, and outputting to a user a depiction of the trajectory with the marker.
17. The method of claim 16, further comprising: defining with the movement commands additionally an orientation to be adopted by the tool relative to the workpiece, during execution of the movement commands, converting the movement commands into a trajectory which includes the defined orientation. determining a change in the defined orientation of directly consecutive movement commands, and highlighting with a marker the defined positions of the directly successive movement commands when a change in the defined orientation is above a first maximum change distance.
18. The method of claim 17, further comprising determining the first maximum change distance as a function of the defined distance between the positions of the respective directly consecutive movement commands.
19. The method of claim 17, further comprising determining for the positions to be adopted by the tool pairs of movement commands having respective positions below a predetermined first minimum distance, determining for the pairs of movement commands a difference in the orientations to be adopted by the tool relative to the workpiece, and highlighting with a marker the positions of the pairs of movement commands wherein the difference of orientations is above a second maximum change.
20. The method of claim 19, wherein the second maximum change is determined as a function of the relative distance between the mutual positions of respective pairs of the movement commands.
21. The method of claim 17, further comprising: defining with the movement commands additionally a respective direction of movement to be adopted by the tool relative to the workpiece, during execution of the movement commands, converting the movement commands into a trajectory which includes the defined orientation and the respective direction of movement at the defined positions, and moving the tool in the corresponding direction of movement, determining for the positions to be adopted by the tool additionally a cross-product of the direction of movement and the orientation, determining a change in direction of the cross-product of directly consecutive movement commands, and highlighting with a marker the positions of directly consecutive movement commands wherein the change in the direction of the cross-product is above a third maximum change.
22. The method of claim 21, wherein the third maximum change is determined as a function of the distance between the positions of the respective directly consecutive movement commands.
23. The method of claim 21, further comprising: determining for the positions to be adopted by the tool pairs of movement commands having respective positions below a predetermined second minimum distance, determining for the pairs of movement commands a difference in directions of the cross-products of the direction of movement and the orientation, and highlighting with a marker the positions of pairs of movement commands wherein the difference in the directions of the cross-products is above a fourth maximum change.
24. The method of claim 23, wherein the fourth maximum change is determined as a function of the distance between the positions of the respective pair of directly consecutive movement commands.
25. The method of claim 17, further comprising: defining with the movement commands additionally a respective direction of movement to be adopted by the tool relative to the workpiece, during execution of the movement commands, converting the movement commands into a trajectory which includes the defined orientation and the respective direction of movement at the defined positions, and moving the tool in the corresponding direction of movement, determining for the positions to be adopted by the tool from the direction of movement and the orientation normal vector oriented orthogonally to the surface of the workpiece at the defined positions, determining a change in a direction of the normal vector of directly consecutive movement commands, and highlighting with a marker the positions of directly consecutive movement commands wherein the change in the direction of the normal vector is above a fifth maximum change.
26. The method of claim 25, wherein the fifth maximum change is determined as a function of the distance between the positions of a respective pair of directly consecutive movement commands.
27. The method of claim 25, further comprising: determining for the positions to be adopted by the tool pairs of movement commands, wherein the respective positions are below a predetermined third minimum distance, determining for the pairs of movement commands a difference in the directions of the normal vectors, and highlighting with a marker the positions of respective pairs of movement commands wherein the difference in the directions of the normal vectors is above a sixth maximum change.
28. The method of claim 27, wherein the sixth maximum change is determined as a function of the distance between the positions of a respective pair of directly consecutive movement commands.
29. A computer program comprising machine code stored on a machine-readable non-transitory medium, wherein the machine code, when loaded into a memory of an arithmetic device and executed by the arithmetic device, causes the arithmetic device to evaluate a sequence of movement commands which each define a position to be adopted by a tool of a processing machine relative to a workpiece, execute the sequence of movement commands with a control device of the processing machine, and at least intermittently machine the workpiece with the tool, during execution of the movement commands, convert the movement commands into a trajectory which includes the defined positions, determine distances between the defined positions of directly consecutive movement commands, highlight the defined positions of the directly consecutive movement commands having a distance less than a predetermined minimum distance with a marker, and output to a user a depiction of the trajectory with the marker.
30. An arithmetic device programmed with a computer program comprising machine code stored on a machine-readable non-transitory medium, wherein the machine code when loaded into a memory of the arithmetic device and executed by the arithmetic device, causes the arithmetic device during operation to evaluate a sequence of movement commands which each define a position to be adopted by a tool of a processing machine relative to a workpiece, execute the sequence of movement commands with a control device of the processing machine, and at least intermittently machine the workpiece with the tool, during execution of the movement commands, convert the movement commands into a trajectory which includes the defined positions, determine distances between the defined positions of directly consecutive movement commands, highlight the defined positions of the directly successive movement commands having a distance less than a predetermined minimum distance with a marker, and output to a user a depiction of the trajectory with the marker.
Description
[0054] The above-described properties, features and advantages of this invention and the manner in which they are achieved will become clearer and more understandable in connection with the following description of the exemplary embodiments which are explained in more detail in conjunction with the drawings. Schematically in the drawings:
[0055]
[0056]
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
[0063]
[0064]
[0065]
[0066]
[0067]
[0068]
[0069] According to
[0070] According to
[0071] According to
[0072] During the course of the execution of the parts program 4, the control device 5 determines, for a plurality of position-controlled axes A1 to An of the processing machine, in each case the corresponding desired value for the respective position-controlled axis A1 to An and controls the position-controlled axes A1 to An according to the corresponding desired values. As a result, a tool 6 of the processing machine is at least translationally positioned relative to a workpiece 7, optionally additionally also oriented. The movement commands therefore define a position p to be respectively adopted by a tool 6 relative to the workpiece 7. Purely by way of example,
[0073] The control of the position-controlled axes A1 to An, and therefore the execution of the sequence of movement commands, by the control device 5 of the processing machine has the effect that, as can be seen in particular by the depiction in
[0074] Furthermore, it can be seen from
[0075] In a step S2, the arithmetic device 1 selects the first movement command of the sequence of movement commands under consideration and determines the associated position p(l). In a step S3 the arithmetic device 1 sets an index m to the value 2. The m.sup.th movement command of the sequence of movement commands is also sometimes referred to as the reference character m in the following.
[0076] In a step S4 the arithmetic device 1 selects the m.sup.th movement command of the sequence under consideration and determines the associated position p(m). In a step S5 the arithmetic device 1 determines the distance a of the position p(m) of the m.sup.th movement command from the position p(m1) of the m1.sup.th movement 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 S6 the arithmetic device 1 checks whether the determined distance a is below a predetermined minimum distance a1. If this is the case, the arithmetic device 1 assigns a respective marker 9 in a step S7 to at least one of the two relevant positionsin other words either the position p(m) of the m.sup.th movement command or the position p(m1) of the m1.sup.th movement command. The marker 9 is preferably assigned to both relevant positions p(m), p(m1). Otherwise, step S7 is skipped.
[0077] In a step S8 the arithmetic device 1 checks whether it has already reached the last movement command of the sequence under consideration. If this is not the case, in a step S9 the arithmetic device 1 increases the index m and then returns to step S4. Otherwise, the procedure of
[0078] Owing to the movement of the tool 6 relative to the workpiece 7, the movement commands, in accordance with the depiction in
[0079] In many cases the movement commands in accordance with the depiction in
[0080] More extensive evaluations are possible if the movement commands also define the orientation of the tool 6 relative to the workpiece 7.
[0081] Therefore, for example, it is possible to modify the procedure of
[0082]
[0083] Steps S2 and S4 are replaced by steps S11 and S12. In step S11 the arithmetic device 1 selectsanalogously to step S2 of
[0084] Furthermore, additional steps S13 to S15 are present. In step S13 the arithmetic device 1 determines the change in orientation (m), (m1) of directly successive movement commands m1, m. In step S14 the arithmetic device 1 checks whether the determined change is above a first maximum change 501. If this is the case, in step S15 the arithmetic device 1 assigns a respective marker 9 to at least one of the two respective positionsIn other words either the position p(m) of the m.sup.th movement command or the position p(m1) of the m1.sup.th movement command. The marker 9 is preferably assigned to both relevant positions p(m), p(m1). Otherwise, step S15 is skipped.
[0085] Due to the presence of steps S11 to S15, during the course of the execution of step S10 not only those positions p whose distance a is below the minimum distance a1 are therefore highlighted by means of a marker 9. Rather, the positions p whose change in orientation is above the first maximum change 501 are additionally also highlighted by means of a marker 9. As before, for example within the respective sequence, the corresponding positions p can be bordered in accordance with the depiction in
[0086] In the simplest case the first maximum change 501 is a strictly predefined value. Preferably, however, a step S16 is additionally present in accordance with the depiction in
[0087] Within the scope of step S16, for example in accordance with the depiction in
[0088] The procedure of
[0089] According to
[0090] In step S21 for each position p, the arithmetic device 1 determines those positions p whose distance a is below a predetermined first minimum distance a2. The arithmetic device 1 stores the associated movement commands as a respective pair of movement commands.
[0091] In step S22 the arithmetic device 1 selects one of the pairs of movement commands. In step S23 the arithmetic device 1 determines the associated positions p for the selected pair of movement commands, hereinafter referred to as p and p. Furthermore, in step S23 the arithmetic device 1 determines the associated orientations for the selected pair of movement commands, hereinafter referred to as and . In step S24 the arithmetic device 1 determines the distance a between the two positions p, p. In step S25 the arithmetic device 1 determines the difference in the orientations , , moreover.
[0092] In step S26 the arithmetic device 1 checks whether the determined difference is above a second maximum change 2. If this is the case, in step s27 the arithmetic device assigns a respective marker 9 to the two relevant positions p and p. Otherwise, step S27 is skipped.
[0093] In step S28, the arithmetic device 1 checks whether it has already executed steps S22 to S27 for all pairs of movement commands determined in step S21. If this is not the case, the arithmetic device 1 returns to step S22. With the renewed execution of step S22, a different pair of movement commands is of course selected for which steps S23 to S27 have not yet been carried out. Otherwise, the procedure of
[0094] Owing to the presence of steps S21 to 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 marker 9. As before, for example the corresponding positions p, p can be bordered in accordance with the depiction in
[0095] The type of marker can be the same as previously for the distances a but can alternatively be another marker.
[0096] In the simplest case the second maximum change 2 is a strictly predefined value. Preferably, however, a step S29 is additionally present in accordance with the depiction in
[0097] If the movement commands also define the orientation of the tool 6 relative to the workpiece 7, other evaluations are also possible. These evaluations can be carried out alternatively or in addition to the evaluations according to
[0098]
[0099] Steps S2 and S4 are replaced by steps S31 and S32. In step S31 the arithmetic device 1 selectsanalogously to step S2 of
[0100] Furthermore, additional steps S33 to S35 are present. In step S33 the arithmetic device 1 determines the change in the cross product (m1), (m) of the two directly successive movement commands m1, m. In step S34 the arithmetic device 1 checks whether the determined change is above a third maximum change 6131. If this is the case, in step S35 the arithmetic device 1 assigns a marker 9 to at least one of the two relevant positionsin other words either the position p(m) of the m.sup.th movement command or the position p(m1) of the m1.sup.th movement command. The marker 9 is preferably assigned to both relevant positions p(m), p(m1). Otherwise, step S35 is skipped.
[0101] Owing to the presence of steps S31 to S35, during the course of the execution of step S10, the directly successive positions p whose change in the cross product (m), (m1) is above the third maximum change 1 are therefore additionally also highlighted by means of a marker 9. As before, for example within the respective sequence, the corresponding positions p can be bordered in accordance with the depiction in
[0102] In the simplest case the third maximum change 1 is a strictly predefined value. Preferably, however, a step S36 is additionally present in accordance with the depiction in
[0103] The procedure of
[0104] According to
[0105] In step s41 the arithmetic device 1 determines for each position p, the positions whose distance a is below a predetermined second minimum distance a3. The arithmetic device 1 stores the associated movement commands as a respective pair of movement commands.
[0106] In step S42 the arithmetic device 1 selects one of the pairs of movement commands. In step S43 the arithmetic device 1 determines the associated positions p for the selected pair of movement commands, hereinafter referred to as p and p. Furthermore, in step S43 the arithmetic device 1 determines the associated orientations for the selected pair of movement commands, hereinafter referred to as and . In step S43 the arithmetic device 1 also determines the associated directions r for the selected pair of movement commands, hereinafter referred to as r and r. Finally, in step S43 the arithmetic device 1 determines the associated cross products for the selected pair of movement commands, hereinafter referred to as and .
[0107] In step S44 the arithmetic device 1 determines the distance a between the two positions p and p. Furthermore, in step S45 the arithmetic device 1 determines the difference 65 in the cross products and .
[0108] In step S46 the arithmetic device 1 checks whether the detected difference is above a fourth maximum change 2. If this is the case, in step S47 the arithmetic device assigns a respective marker 9 to the two relevant positions p and p. Otherwise, step S47 is skipped.
[0109] In step S48 the arithmetic device 1 checks whether it has already executed steps S42 to S47 for all pairs of movement commands determined in step S41. If this is not the case, the arithmetic device 1 returns to step S42. With the renewed execution of step S42 a different pair of movement commands is of course selected, for which the steps S43 to S47 have not yet been carried out. Otherwise, the procedure of
[0110] Owing to the presence of steps S41 to S48, during the course of the execution of step S10 the positions p, p, in which the difference 61 in the cross products and Is above the fourth maximum change 612, are therefore additionally also highlighted by means of a marker 9. As before, for example the corresponding positions p, p, can be bordered in accordance with the depiction in
[0111] In the simplest case the fourth maximum change 2 is a strictly predefined value. Preferably, however, a step S49 is additionally present in accordance with the depiction in
[0112] Furthermore, it is possible to modify the procedure of
[0113]
[0114] Steps S2 and S4 are replaced by steps S51 and S52. In step S52, the arithmetic device 1analogously to step S2 of
[0115] Furthermore, additional steps S53 to S55 are present. In step S53 the arithmetic device 1 determines the change n in the normal vectors n(m), n(m1) of directly successive movement commands m1, m. In step S54 the arithmetic device 1 checks whether the determined change n is above a fifth maximum change 1. If this is the case, in step S55 the arithmetic device 1 assigns a respective marker 9 to at least one of the two relevant positionsin other words either the position p(m) of the m.sup.th movement command or the position p(m1) of the m1.sup.th movement command. The marker 9 is preferably assigned to the two relevant positions p(m), p(m1). Otherwise, step S55 is skipped.
[0116] On the basis of the presence of steps S51 to S55, during the course of execution of step S10 in addition, therefore, the positions p whose change n in the normal vector n is above the fifth maximum change n1 are also highlighted by means of a marker 9. As before, for example within the respective sequence, the corresponding positions p can be bordered in accordance with the depiction in
[0117] In the simplest case the fifth maximum change n1 is a strictly predefined value. Preferably, however, a step S56 is additionally present in accordance with the depiction in
[0118] The procedure of
[0119] According to
[0120] In step S61 the arithmetic device 1 determines for each position p, the positions p whose distance a is below a predetermined third minimum distance a4. The arithmetic device 1 stores the associated movement commands as a respective pair of movement commands.
[0121] In step S62 the arithmetic device 1 selects one of the pairs of movement commands. In step S63 the arithmetic device 1 determines the associated positions p for the selected pair of movement commands, hereinafter referred to as p and p. Furthermore, in step S63 the arithmetic device 1 determines the associated normal vectors n for the selected pair of movement commands, hereinafter referred to as n and n. In step S64 the arithmetic device 1 determines the distance a between the two positions p, p. In step S65 the arithmetic device 1 determines the difference 6n in the normal vectors n, n.
[0122] In step S66 the arithmetic device 1 checks whether the determined difference an is above a sixth maximum change n2. If this is the case, in step S67 the arithmetic device 1 assigns a respective marker 9 to the two relevant positions p and p. Otherwise, step s67 is skipped.
[0123] In step S68, the arithmetic device 1 checks whether it has already executed steps S62 to S67 for all pairs of movement commands determined in step S61. If this is not the case, the arithmetic device 1 returns to step S62. With the renewed execution of step S62, a different pair of movement commands is of course selected, for which steps S63 to S67 have not yet been carried out. Otherwise, the procedure of
[0124] Owing to the presence of steps S61 to S68, during the course of the execution of step S10, the positions p, p in which the difference 6n in the normal vectors n and n is above the sixth maximum change n2 are therefore additionally also highlighted by means of a marker 9.
[0125] As before, for example, the corresponding positions p, p can be bordered in accordance with the depiction in
[0126] In the simplest case the sixth maximum change n2 is a strictly predefined value. Preferably, however, a step S69 is additionally present in accordance with the depiction in
[0127] The embodiments of
[0128] To summarize, the present invention therefore relates to the following facts:
[0129] Movement commands of a sequence of movement commands each define a position p to be adopted by a tool 6 of a processing machine relative to a workpiece 7. During execution of the sequence of movement commands by means of a control device 5 of the processing machine, the tool 6 machines the workpiece 7 at least temporarily. The movement commands are converted during their execution by the control device 5 of 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 user 8. 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 marker 9.
[0130] The present invention has many advantages. In particular, those locations of the parts program 4 which are to be assessed as critical (in the sense of the surface quality achieved) can easily and readily be seen by the user 8. The inventive evaluation method can furthermore not only be carried out with the parts program 4 and the movement commands therein as such, but also with the movement commands which are determined on the basis of the parts program 4. 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 A1 to An.
[0131] 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.