Patent ID: 12236577

DESCRIPTION OF EMBODIMENTS

Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. Note that in various embodiments described below, the same elements are denoted by the same reference signs, and redundant description will be omitted. Referring first toFIG.1, a mechanical system10according to an embodiment will be described. The mechanical system10includes a control device12, a display device14, an input device16, a measurement device18, and an industrial machine50.

The control device12controls the operation of the display device14, the input device16, the measurement device18, and the industrial machine50. Specifically, the control device12is a computer including a processor20, a memory22, and an I/O interface24. The processor20includes a CPU, a GPU, or the like, and executes arithmetic processing to perform various functions, which will be described later. The processor20is communicably connected to the memory22and the I/O interface24via a bus26.

The memory22includes a ROM, a RAM, or the like, and stores various types of data temporarily or permanently. The I/O interface24communicates with an external device, receives data from the external device, and transmits data to the external device, under the command of the processor20. In the present embodiment, the display device14, the input device16, the measurement device18, and the industrial machine50are communicably connected to the I/O interface24by a wireless or wired connection.

The display device14includes an LCD, an organic EL display, or the like, and the processor20transmits image data to the display device14via the I/O interface24for causing the display device14to display the image. The input device16includes a keyboard, mouse, touch sensor, or the like, and transmits information input by the operator to the processor20via the I/O interface24. The display device14and the input device16may be integrally provided in the control device12, or may be provided separately from the control device12.

The measurement device18is a laser scanning type three-dimensional scanner or a three-dimensional measurement device including a stereo camera and measures the three-dimensional shape of an object such as a workpiece W described below. The measurement device18transmits measurement data of the shape of the object measured to the processor20via the I/O interface24.

The industrial machine50machines the workpiece W. Hereinafter, the industrial machine50according to an embodiment will be described with reference toFIG.2. The industrial machine50according to the present embodiment is a so-called 5-axis machining center and includes a base table52, a translational movement mechanism54, a support base56, a swinging movement mechanism58, a swinging member60, a rotational movement mechanism62, a work table64, a spindle head66, a tool68, and a spindle movement mechanism70.

The base table52includes a base plate72and a pivot portion74. The base plate72is a substantially rectangular flat plate-like member, and is disposed on the translational movement mechanism54. The pivot portion74is formed integrally with the base plate72to protrude upward from a top face72aof the base plate72.

The translational movement mechanism54moves the base table52back and forth in the x-axis direction and the y-axis direction of a machine coordinate system CM. Specifically, the translational movement mechanism54includes an x-axis ball screw mechanism (not illustrated) that reciprocates the base table52in the x-axis direction, a y-axis ball screw mechanism (not illustrated) that reciprocates the base table52in the y-axis direction, a first drive unit76that drives the x-axis ball screw mechanism, and a second drive unit78that drives the y-axis ball screw mechanism.

The first drive unit76is, for example, a servo motor and rotates the rotary shaft of the first drive unit76in accordance with a command from the control device12. The x-axis ball screw mechanism converts the rotational motion of the output shaft of the first drive unit76into reciprocating motion along the x-axis of the machine coordinate system CM. Similarly, the second drive unit78is, for example, a servo motor and rotates the rotary shaft of the second drive unit78in accordance with a command from the control device12, and the y-axis ball screw mechanism converts the rotational motion of the output shaft of the second drive unit78into reciprocating motion along the y-axis of the machine coordinate system CM.

The support base56is fixed to the base table52. Specifically, the support base56includes a base80and a drive unit housing portion82. The base80is a hollow member having a substantially quadrangular prism shape, and is fixed to the top face72aof the base plate72to protrude upward from the top face72a. The drive unit housing portion82is a substantially semicircular hollow member and is formed integrally with an upper end portion of the base80.

The swinging movement mechanism58includes a third drive unit84and a reduction gear86. The third drive unit84and the reduction gear86are installed inside the base80and the drive unit housing portion82. The third drive unit84is, for example, a servo motor and rotates the output shaft of the third drive unit84in accordance with a command from the control device12. The reduction gear86reduces the rotational speed of the output shaft of the third drive unit84and transmits it to the swinging member60. Also, the swinging movement mechanism58rotates the swinging member60about an axis line A1.

The swinging member60is supported in a manner allowing for rotation about the axis line A1by the support base56and the pivot portion74. Specifically, the swinging member60includes a pair of holding portions88and90disposed to face each other in the x-axis direction and a drive unit housing portion92fixed to the holding portions88and90. The holding portion88is mechanically coupled to the swinging movement mechanism58(specifically, the output shaft of the third drive unit84), and the holding portion90is pivotally supported by the pivot portion74via a support shaft (not illustrated). The drive unit housing portion92is a substantially cylindrical hollow member, is disposed between the holding portion88and the holding portion90, and is formed integrally with the holding portion88and the holding portion90.

The rotational movement mechanism62includes a fourth drive unit94and a reduction gear96. The fourth drive unit94and the reduction gear96are installed inside the drive unit housing portion92. The fourth drive unit94is, for example, a servo motor and rotates the output shaft of the fourth drive unit94in accordance with a command from the control device12. The reduction gear96reduces the rotational speed of the output shaft of the fourth drive unit94and transmits it to the work table64.

Also, the rotational movement mechanism62rotates the work table64about an axis line A2. The axis line A2is an axis line orthogonal to the axis line A1and rotates around the axis line A1together with the swinging member60. The work table64is a substantially circular disk-shaped member and is disposed above the drive unit housing portion92in a manner allowing for rotation about the axis line A2. The work table64is mechanically coupled to the rotational movement mechanism62(specifically, the output shaft of the fourth drive unit94), and the workpiece W is set on the work table64using a jig (not illustrated).

The spindle head66is provided to be movable in the z-axis direction of the machine coordinate system CM, and the tool68is detachably and attachably mounted to a tip of the spindle head66. The spindle head66rotates the tool68about an axis line A3and machines the workpiece W set on the work table64by the tool68that rotates. The axis line A3is an axis line orthogonal to the axis line A1.

The spindle axis movement mechanism70includes a ball screw mechanism98that reciprocates the spindle head66in the z-axis direction and a fifth drive unit100that drives the ball screw mechanism98. The fifth drive unit100is, for example, a servo motor and rotates the rotary shaft of the fifth drive unit100in accordance with a command from the control device12, and the ball screw mechanism98converts the rotational motion of the output shaft of the fifth drive unit100into reciprocating motion along the z-axis of the machine coordinate system CM.

The machine coordinate system CM is set in the industrial machine50. The machine coordinate system CM is a Cartesian coordinate system that is fixed in a three-dimensional space and serves as a reference when the operation of the industrial machine50is automatically controlled. In the present embodiment, the machine coordinate system CM is set such that the x-axis of the machine coordinate system CM is parallel to a rotational axis A1of the swinging member60and the z-axis of the machine coordinate system CM is parallel to the vertical direction.

The industrial machine50relatively moves the tool68in the five directions with respect to the workpiece W set on the work table64by the translational movement mechanism54, the swinging movement mechanism58, the rotational movement mechanism62, and the spindle movement mechanism70. Accordingly, the translational movement mechanism54, the swinging movement mechanism58, the rotational movement mechanism62, and the spindle movement mechanism70constitute a movement mechanism102that relatively moves the tool68and the workpiece W.

As illustrated inFIG.1, the industrial machine50further includes a first sensor104, a second sensor106, a third sensor108, a fourth sensor110, and a fifth sensor112. The first sensor104is provided on the first drive unit76, detects the state data of the first drive unit76, and transmits the state data to the control device12as feedback FB1.

For example, the first sensor104includes a rotation detection sensor (e.g., an encoder, a Hall element, and the like) that detects a rotational position R1(or the rotation angle) of the output shaft of the first drive unit76. In this case, the first sensor104detects the rotational position R1and a velocity V1of the first drive unit76as the state data of the first drive unit76. The velocity V1can determined by finding the first order derivative of the rotational position R1with respect to time t (V1=δR1/δt). The first sensor104transmits, to the control device12, position feedback indicating the rotational position R1and velocity feedback indicating the velocity V1as the feedback FB1.

Also, the first sensor104includes an electric current sensor that detects an electric current EC1flowing through the first drive unit76. The first sensor104detects the electric current EC1as the state data of the first drive unit76and transmits electric current feedback indicating the electric current EC1as the feedback FB1to the control device12.

Similarly, the second sensor106includes a rotation detection sensor that detects the rotational position R1of the output shaft of the second drive unit78and an electric current sensor that detects an electric current EC2flowing through the second drive unit78and detects a rotational position R2, a velocity V2(=δR2/δt), and the electric current EC2as the state data of the second drive unit78. Then, the second sensor106transmits, to the control device12, position feedback of the rotational position R2, velocity feedback of the velocity V2, and electric current feedback of the electric current EC2, as feedback FB2.

Similarly, the third sensor108includes a rotation detection sensor that detects a rotational position R3of the output shaft of the third drive unit84and an electric current sensor that detects an electric current EC3flowing through the third drive unit84and detects the rotational position R3, a velocity V3(=δR3/δt), and the electric current EC3as the state data of the third drive unit84. Then, the third sensor108transmits, to the control device12, position feedback of the rotational position R3, velocity feedback of the velocity V3, and electric current feedback of the electric current EC3, as feedback FB3.

Similarly, the fourth sensor110includes a rotation detection sensor that detects a rotational position R4of the output shaft of the fourth drive unit94and an electric current sensor that detects an electric current EC4flowing through the fourth drive unit94and detects the rotational position R4, a velocity V4(=δR4/δt), and the electric current EC4as the state data of the fourth drive unit94. Then, the fourth sensor110transmits, to the control device12, position feedback of the rotational position R4, velocity feedback of the velocity V4, and electric current feedback of the electric current EC4, as feedback FB4.

Similarly, the fifth sensor112includes a rotation detection sensor that detects a rotational position R5of the output shaft of the fifth drive unit100and an electric current sensor that detects an electric current EC5flowing through the fifth drive unit100and detects the rotational position R5, a velocity V5(=δR5/δt), and the electric current EC5as the state data of the fifth drive unit100. Then, the fifth sensor112transmits, to the control device12, position feedback of the rotational position R5, velocity feedback of the velocity V5, and electric current feedback of the electric current EC5, as feedback FB5.

In a case where the workpiece is machined by the industrial machine50, the processor20transmits commands CD1, CD2, CD3, CD4, and CD5to the first drive unit76, the second drive unit78, the third drive unit84, the fourth drive unit94, and the fifth drive unit100, respectively, in accordance with a machining program WP. The command CD1transmitted to the first drive unit76includes at least one of a position command CDP1, a velocity command CDV1, a torque command CDτ1, or an electric current command CDE1, for example.

The position command CDP1is a command that defines a target rotational position of the output shaft of the first drive unit76. The velocity command CDV1is a command that defines a target velocity of the first drive unit76. The torque command CDτ1is a command that defines a target torque of the first drive unit76. The electric current command CDE1is a command that defines an electric current input to the first drive unit76.

Similarly, the command CD2transmitted to the second drive unit78includes at least one of a position command CDP2, a velocity command CDV2, a torque command CDτ2, or an electric current command CDE2, for example. Also, the command CD3transmitted to the third drive unit84includes at least one of a position command CDP3, a velocity command CDV3, a torque command CDτ3, or an electric current command CDE3, for example.

Also, the command CD4transmitted to the fourth drive unit94includes at least one of a position command CDP4, a velocity command CDV4, a torque command CDτ4, or an electric current command CDE4, for example. Also, the command CD5transmitted to the fifth drive unit100includes at least one of a position command CDP5, a velocity command CDV5, a torque command CDτ5, or an electric current command CDE5, for example.

The industrial machine50operates the movement mechanism102(specifically, the translational movement mechanism54, the swinging movement mechanism58, the rotational movement mechanism62, and the spindle movement mechanism70) in accordance with the commands CD1, CD2, CD3, CD4, and CD5from the processor20, moves the tool68and the workpiece W relative to each other, and machines the workpiece W with the tool68.FIG.3illustrates an example of the workpiece W machined by the industrial machine50. In the present embodiment, the workpiece W includes a base120with a substantially rectangular flat plate-like shape and a cylindrical portion124projecting upward from a top face122of the base120.

The machining program WP is a computer program (e.g., a G code program) including a plurality of instruction statements that define a plurality of target positions on which the tool68is to be arranged with respect to the workpiece W, a minute line segment connecting two adjacent target positions, a target velocity of the tool68with respect to the workpiece W, or the like.

When the machining program WP is generated, an operator creates a workpiece model WM that models a target shape of the workpiece W being as a product, by using a drawing device such as a CAD.FIG.4illustrates the workpiece model WM. The workpiece model WM is three-dimensional model data and includes a base model120M that is a model of the base120and a cylindrical portion model124M that is a model of the cylindrical portion124. A model coordinate system CW is set in a three-dimensional virtual model space in which a drawing device creates a model, and the workpiece model WM is constituted by the component model (point model, line model, and surface model) set in the model coordinate system CW.

Next, an operator inputs the created workpiece model WM to a program generation device such as a CAM, and the program generation device generates the machining program WP based on the workpiece model WM. Thus, the machining program WP is created based on the previously-prepared workpiece model WM and is stored in advance in the memory22.

After the industrial machine50machines the workpiece W, the operator sets the post-machining workpiece W to the measurement device18, and the measurement device18measures the shape of the post-machining workpiece W. Here, an error α can occur in terms of a difference between the shape of the workpiece W machined by the industrial machine50according to the machining program WP and the pre-prepared workpiece W target shape (i.e., the workpiece model WM).

In the present embodiment, the processor20generates first image data ID1indicating a distribution Dα (first distribution) of the locations of the errors α in the workpiece W. Specifically, the measurement device18receives the input of the workpiece model WM and compares the workpiece model WM and the measurement data of the measured workpiece W shape to measure the error α. Note that the measurement device18may be configured to set a predetermined threshold value for the error α and only measure errors α that are equal to or greater than the threshold value.

The processor20acquires, via the I/O interface24, the workpiece model WM, acquires the measurement data of the error α from the measurement device18, and generates the first image data ID1illustrated inFIG.4, based on the workpiece model WM and the measurement data. In the first image data ID1illustrated inFIG.4, the distribution Dα of the locations of the errors α is indicated on the workpiece model WM, and the distribution Dα includes distribution regions E1, E2, and E3which are visually identifiable.

Each of the distribution regions E1, E2, and E3is constituted by a collection of a location (i.e., a point) of the error α measured by the measurement device18and are represented as coordinates in the model coordinate system CW. Each of the distribution regions E1, E2, and E3corresponds to a region where the surface of the post-machining workpiece W projects outward or is recessed inward in comparison with the workpiece model WM surface model corresponding to the surface. Note that the processor20may display each of the distribution regions E1, E2, and E3in a specific color (red, blue, and yellow).

As described above, in the present embodiment, the processor20functions as a first image generating section152(FIG.1) that generates the first image data ID1. Note that the processor20may cause the display device14to display the generated first image data ID1. In this case, the processor20may change the viewing direction of the virtual model space defined by the model coordinate system CW in response to operation of the input device16by the operator. In this case, the operator can view the workpiece model WM and the distribution Dα displayed on the display device14from various directions.

The processor20generates a second image data ID2indicating a distribution Dβ (second distribution) of locations on the workpiece W of an error β in terms of a difference between the commands CD (CD1, CD2, CD3, CD4, and CD5) transmitted to the industrial machine50(specifically, the first drive unit76, the second drive unit78, the third drive unit84, the fourth drive unit94, and the fifth drive unit100) for machining of the workpiece W and the corresponding feedback FB (FB1, FB2, FB3,1-B4, and FB5) from the industrial machine50(specifically, the first sensor104, the second sensor106, the third sensor108, the fourth sensor110, and the fifth sensor112).

An example of a method for generating the second image data ID2is described below. First, the processor20acquires the command CD issued during machining of the workpiece W and time-series data of the feedback FB acquired during machining Here, the processor20, during machining of the workpiece W, associates the command CD and the feedback FB with the time t (e.g., the time from the start of machining or a reference time) and stores these as time-series data of the command CD and the feedback FB in the memory22. The processor20reads out and acquires the time-series data of the command CD and the feedback FB from the memory22when generating the second image data ID2. Thus, in the present embodiment, the processor20functions as a time-series data acquisition section154(FIG.1).

Also, the processor20generates a movement path MP of the industrial machine50when machining the workpiece W. As an example, the processor20generates a movement path MP1defined in the machining program WP. The movement path MP1is an aggregate of minute line segments defined in the machining program WP and is a movement path of the tool68(or TCP) with respect to the workpiece W in terms of control. The processor20can generate the movement path MP1in the three-dimensional space by analyzing the machining program WP.

As another example, the processor20may generate a movement path MP2of the industrial machine50, based on the feedback FB acquired during machining. The movement path MP2may be determined by calculation based on the position feedback R1, R2, R3, R4, and R5detected by the sensors104,106,108,110, and112during machining, for example. The movement path MP2is the actual movement path of the tool68(or TCP) with respect to the workpiece W.

In this manner, the processor20generates the movement path MP (MP1or MP2) of the industrial machine50. Thus, in the present embodiment, the processor20functions as a movement path generating section156(FIG.1) that generates the movement path MP.FIG.5illustrates an example of a path model PM in which the generated movement path MP is displayed in three dimensions.FIG.6is an enlarged view of a region VI ofFIG.5. As illustrated inFIG.6, the path model PM is constituted by the movement path MP. The path model PM is a model of an external shape that substantially matches the workpiece model WM.

Note that the processor20is capable of setting a model coordinate system CW′ with respect to the path model PM. Here, the movement path MP (MP1, MP2) is obtained as a result of executing the machining program WP generated, based on the workpiece model WM. Thus, the processor20is capable of setting the origin position and each axial direction of the model coordinate system CW′ with respect to the path model PM illustrated inFIG.5to match the positional relationship of the origin position and the axial directions of the model coordinate system CW with respect to the workpiece model WM illustrated inFIG.4. The path model PM is mapped to coordinates in the model coordinate system CW′.

Next, the processor20displays, on the movement path MP, the position on the movement path MP of the errors β between the command CD and the feedback FB, based on the time-series data of the command CD and the feedback FB and the movement path MP. For example, the processor20displays as points (plots) the position on the movement path MP of the errors β on the movement path MP of the path model PM.

Here, the movement path MP is associated together with the time-series data of the command CD and the feedback FB using the time t. Specifically, the movement path MP1is defined in the machining program WP, and the time-series data of the command CD generated according to the machining program WP and the time-series data of the feedback FB corresponding to the command CD are associated together using the time t. Also, the movement path MP2is associated with the time-series data of the feedback FB generated from the feedback FB and the time-series data of the command CD corresponding to the feedback FB using the time t.

Thus, the processor20can identify the time t at which the error β has occurred from the time-series data of the command CD and the feedback FB and can identify the point on the movement path MP at the time t. In this manner, the processor20generates the second image data ID2indicating the distribution Dβ by displaying, on the movement path MP of the path model PM, the positions on the movement path MP of the errors β. Note that the processor20may be configured to set a predetermined threshold value for the errors β and only display the errors β equal to or greater than the threshold value on the movement path MP.

FIG.7illustrates an example of second image data ID2_1indicating a distribution Dβ1of the locations of errors β between the command CD1to the first drive unit76and the feedback FB1corresponding to the command CD1. The error β1is, for example, an error between the position command CDP1and position feedback R1, an error between the velocity command CDV1and velocity feedback V1, or an error between the torque command CDτ1(or the electric current command CDE1) and electric current feedback EC1.

In the second image data ID2_1illustrated inFIG.7, the distribution Dβ1of the locations of the errors β is indicated on the path model PM, and the distribution Dβ1includes distribution regions F1and F2. Each of the distribution regions F1and F2is a collection of the locations (displayed as points) of the errors β displayed (plotted) on the movement path MP.

FIG.8illustrates an example of second image data ID2_2indicating a distribution Dβ2of the locations of errors β2between the command CD2to the second drive unit78and the feedback FB2corresponding to the command CD2. The error β2is, for example, an error between the position command CDP2and position feedback R2, an error between the velocity command CDV2and velocity feedback V2, or an error between the torque command CDτ2(or the electric current command CDE2) and electric current feedback EC2. In the second image data ID2_2illustrated inFIG.8, the distribution Dβ2including distribution regions G1and G2is indicated on the path model PM.

FIG.9illustrates an example of second image data ID2_3indicating a distribution Dβ3of the locations of errors β3between the command CD3to the third drive unit84and the feedback FB3corresponding to the command CD3. The error β3is, for example, an error between the position command CDP3and position feedback R3, an error between the velocity command CDV3and velocity feedback V3, or an error between the torque command CDτ3(or the electric current command CDE3) and electric current feedback EC3. In the second image data ID2_3illustrated inFIG.9, the distribution Dβ3including distribution regions H1and H2is indicated on the path model PM.

FIG.10illustrates an example of second image data ID2_4indicating a distribution Dβ4of the locations of errors β4between the command CD4to the fourth drive unit94and the feedback FB4corresponding to the command CD4. The error β4is, for example, an error between the position command CDP4and position feedback R4, an error between the velocity command CDV4and velocity feedback V4, or an error between the torque command CDτ4(or the electric current command CDE4) and electric current feedback EC4. In the second image data ID2_4illustrated inFIG.10, the distribution Dβ4including a distribution region I3is indicated on the path model PM.

FIG.11illustrates an example of second image data ID2_5indicating a distribution Dβ5of the locations of errors β5between the command CD5to the fifth drive unit100and the feedback FB5corresponding to the command CD5. The error β5is, for example, an error between the position command CDP5and position feedback R5, an error between the velocity command CDV5and velocity feedback V5, or an error between the torque command CDτ5(or the electric current command CDE5) and electric current feedback EC5. In the second image data ID2_5illustrated inFIG.11, the distribution Dβ5including a distribution region J3is indicated on the path model PM.

As illustrated inFIGS.7to11, the second image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5indicate the distributions Dβ1, Dβ2, Dβ3, Dβ4, and Dβ5of the errors β1, β2, β3, β4, and β5for each of the drive units76,78,84,94, and100. Note that the processor20may individually generate the image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5as the second image data ID2. In this case, the second image data ID2includes a total of five pieces of image data, i.e., the image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5.

Alternatively, the processor20may generate the second image data ID2as image data including the image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5merged as a single piece of image data. In this case, the second image data ID2is image data including the path model PM and the distribution regions F1, F2, G1, G2, H1, H2, I3, and J3distributed on the path model PM.

As described above, in the present embodiment, the processor20functions as a second image generating section158(FIG.1) that generates the second image data ID2. Note that the processor20may cause the display device14to display the generated second image data ID2. In this case, the processor20may change the viewing direction of the virtual model space defined by the model coordinate system CW′ in response to operation of the input device16by the operator. Accordingly, the operator can view the path model PM and the distribution Dβ displayed on the display device14from various directions. The processor20may cause the display device14to display the first image data ID1and the second image data ID2next to each other.

The processor20obtains a correlation CR between the distribution Dα of the first image data ID1and the distribution Dβ of the second image data ID2, based on the first image data ID1and the second image data ID2. In the present embodiment, first, the operator operates the input device16to specify a specific zone S for the distribution Dα of the first image data ID1.

For example, as illustrated inFIG.4, the operator operates the input device16while viewing the first image data ID1displayed on the display device14and specifies a zone S1in the first image data ID1to include the distribution regions E1and E2of the distribution Dα. The processor20receives input information input to the input device16via the I/O interface24.

In this manner, in the present embodiment, the processor20functions as an input reception section160(FIG.1) that accepts input information specifying the zone S1in the first image data ID1. The processor20extracts the distribution regions E1and E2included in the specified zone S1in accordance with the input information.

Next, as illustrated inFIGS.7to11, the processor20sets the zone S1to a position (specifically, the same position) in the second image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5corresponding to the zone S1specified in the first image data ID1.

As described above, the positional relationship of the workpiece model WM in the model coordinate system CW and the positional relationship of the path model PM in the model coordinate system CW′ match each other. Thus, the processor20can set the zone S1at the same position as in the first image data ID1in the second image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5, based on the input information of the zone S1.

Then, the processor20extracts the distribution regions F1and F2included in the set zone S1from the distribution D131in the second image data ID2_1illustrated inFIG.7. Also, the processor20extracts the distribution regions G1and G2included in the zone S1from the distribution Dβ2in the second image data ID2_2illustrated inFIG.8. Also, the processor20extracts the distribution regions H1and H2included in the zone S1from the distribution Dβ3in the second image data ID2_3illustrated inFIG.9. On the other hand, in the second image data ID2_4and ID2_5illustrated inFIGS.10and11, the distributions Dβ4and Dβ5are not included in the set zone S1.

Then, the processor20obtains a correlation CR1_1between the distribution Dα (distribution regions E1and E2) in the zone S1illustrated inFIG.4and the distribution Dβ1(distribution regions F1and F2) in the zone S1illustrated inFIG.7. The method of obtaining the correlation CR1_1is described below. As an example, the processor20converts the distribution regions E1and E2in the zone S1illustrated inFIG.4into two-dimensional image data. Also, as illustrated inFIG.7, the processor20converts the distribution regions F1and F2in the zone S1into two-dimensional image data when the path model PM is viewed from the direction same as a direction in which the workpiece model WM is viewed inFIG.4.

An example of obtaining an image of such two-dimensional image data is illustrated inFIG.12. Then, the processor20determines via calculation the similarity between the images (or shapes) of the distribution regions E1and E2and the images of the distribution regions F1and F2, converted into two-dimensional image data inFIG.12, as a parameter indicating the correlation CR1_1. The similarity is a parameter indicating the degree of similarity between two images (shapes) and, for example, is determined, based on the distance between intermediate images obtained via matching by correlation of the luminance of two images or orthogonal-transforming (Fourier transforming, discrete cosine transforming) of each image.

Higher values (or lower values) for similarity indicate that the two images (shapes) are similar (i.e., have a high similarity). Thus, in a case where the correlation CR1_1is obtained in terms of similarity, high (or low) similarity between the distribution regions E1and E2and the distribution regions F1and F2quantitatively indicated a high similarity.

In another example of a method of obtaining the correlation CR1_1, the processor20overlays the two-dimensional image data of the distribution regions E1and E2and the distribution regions F1and F2, as illustrated inFIG.12, so that the outer frames of the image data match each other. Then, the processor20acquires the area or the number of pixels in the region where the distribution regions E1and E2and the distribution regions F1and F2overlap as the correlation CR1_1. A large area or number of pixels quantitatively indicates a high correlation between the distribution regions E1and E2and the distribution regions F1and F2.

In yet another example of a method of obtaining the correlation CR1_1, the processor20converts the distribution regions F1and F2in the model coordinate system CW′ illustrated inFIG.7into that in the model coordinate system CW illustrated inFIG.4and overlays them with the distribution regions E1and E2in the model coordinate system CW. Here, each display point constituting the distribution Dβ1in the second image data ID2_1is represented as a coordinate of the model coordinate system CW′. Also, as described above, the position of the workpiece model WM in the model coordinate system CW and the position of the path model PM in the model coordinate system CW′ match each other.

Thus, the distribution regions E1and E2and the distribution regions F1and F2can be overlaid in the model coordinate system CW by plotting the coordinates of the model coordinate system CW′ of the distribution regions F1and F2inFIG.7in the model coordinate system CW inFIG.4. Then, the processor20acquires, as the correlation CR1_1, the area of the region in which the distribution regions E1and E2and the converted distribution regions F1and F2overlap (or are close to each other within a predetermined distance) in the model coordinate system CW. A large area quantitatively indicates a high correlation between the distribution Dα and the distribution Dβ1. The correlation CR1_1can be obtained by using the method described above.

By using a similar method, the processor20can obtain a correlation CR1_2between the distribution Dα (E1and E2) in the zone S1inFIG.4and the distribution Dβ2(G1and G2) in the zone S1inFIG.8, a correlation CR1_3between the distribution Dα in the zone S1inFIG.4and the distribution Dβ3(H1and H2) in the zone S1inFIG.9, a correlation CR1_4between the distribution Dα in the zone S1inFIG.4and the distribution Dβ4(not present) in the zone S1inFIG.10, and a correlation CR1_5between the distribution Dα in the zone S1inFIG.4and the distribution Dβ5(not present) in the zone S1inFIG.11.

As described above, the processor20obtains the correlation CR1between the distribution Dα and the distribution Dβ, based on the first image data ID1and the second image data ID2. Accordingly, the processor20functions as a correlation acquisition section162that obtains the correlation CR1(FIG.1). In addition, in the present embodiment, the processor20obtains the correlation CR1_1, CR1_2, CR1_3, CR1_4, and CR1_5between the distribution Dα and the distributions Dβ1, Dβ2, Dβ3, Dβ4, Dβ5for each of the drive units76,78,84,94,100.

Next, the processor20generates order image data OD1in which the first drive unit76, the second drive unit78, the third drive unit84, the fourth drive unit94, and the fifth drive unit100are displayed next to each other in an order of the degree of the correlation, based on the obtained correlations CR1_1, CR1_2, CR1_3, CR1_4, and CR1_5. An example of an image of the order image data OD1is illustrated inFIG.13.

As illustrated inFIG.13, in the present embodiment, the processor20displays the order image data OD1overlaid on the first image data ID1. In this embodiment, the magnitude of the correlations CR1is such that CR1_1>CR1_2>CR1_3>CR1_4=CR1_5=0. Thus, in the set zone S1, the distribution regions F1and F2of the error β1relating to the first drive unit76have the highest correlation CR1_1with the distribution Dα (distribution regions E1and E2), and the distribution regions G1and G2of the error β2relating to the second drive unit78have the second highest correlation CR1_2, and the distribution regions H1and H2of the error β3relating to the third drive unit84have the third highest correlation CR1_3.

On the other hand, for the distribution Dβ of the errors β4and β5relating to the fourth drive unit94and the fifth drive unit100, the correlation CR1with the distribution Dα is zero (i.e., no correlation). Thus, as illustrated inFIG.13, in the order image data OD1, the plurality of drive units76,78,84,94, and100are displayed next to each other in order of the first drive unit76in first place, the second drive unit78in second place, the third drive unit84in third place, and the fourth drive unit94and the fifth drive unit100in fourth place.

Also, in the present embodiment, in the order image data OD1, together with the order of the drive units76,78,84,94, and100, an identification information column K indicating information (e.g., a character string, an identification number, a symbol, or the like) for identifying the drive unit and a correlation information column L indicating information (e.g., a numerical value) of the correlation CR1.

As described above, in the present embodiment, the processor20functions as a third image generating section164(FIG.1) that generates the order image data OD1. With this order image data OD1, the operator can visually recognize the order of the correlation CR1between the distribution Dα (E1, E2) of the error α in the specified zone S1and the distribution DP of the error β of the drive units76,78,84,94, and100.

Note that the processor20may function as the third image generating section164and may generate identification image data DD1for identifying the drive unit76with the highest correlation CR1instead of (or in addition to) the order image data OD1. An example of the identification image data DD1is illustrated inFIG.14. In the example illustrated inFIG.14, the identification image data DD1includes an arrow pointing to the zone S1and a symbol (specifically, a number in a circle symbol) that identifies the first drive unit76with the highest correlation CR1and is displayed in the first image data ID1. With the identification image data DD1, the operator can visually recognize that the distribution Dα (E1, E2) of the error α in the specified zone S1has the highest correlation with the distribution Dβ1(F1, F2) of the error β1relating to the first drive unit76.

Similarly, as illustrated inFIG.4, the operator operates the input device16while viewing the first image data ID1displayed on the display device14and specifies a zone S2in the first image data ID1to include the distribution region E3of the distribution Dα. The processor20functions as the input reception section160and receives the input information specifying the zone S2and, as illustrated inFIGS.7to11, sets the zone S2at the same position as the zone S2specified in the first image data ID1for the second image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5.

Then, the processor20functions as the correlation acquisition section162and uses the method described above to obtain a correlation CR2_1between the distribution Dα (E3) in the zone S2inFIG.4and the distribution Dβ1(not present) in the zone S2inFIG.7, a correlation CR2_2between the distribution Dα in the zone S2inFIG.4and the distribution Dβ2(not present) in the zone S2inFIG.8, a correlation CR2_3between the distribution Dα in the zone S2inFIG.4and the distribution Dβ3(not present) in the zone S2inFIG.9, a correlation CR2_4between the distribution Dα in the zone S2inFIG.4and the distribution Dβ4(I3) in the zone S2illustrated inFIG.10, and a correlation CR2_5between the distribution Dα in the zone S2inFIG.4and the distribution Dβ5(J3) in the zone S2illustrated inFIG.11.

Next, the processor20functions as the third image generating section164and generates order image data OD2(FIG.13) in which the first drive unit76, the second drive unit78, the third drive unit84, the fourth drive unit94, and the fifth drive unit100are displayed next to each other in an order of the degree of the correlation, based on the obtained correlations CR2_1, CR2_2, CR2_3, CR2_4, and CR2_5.

In this embodiment, the magnitude of the correlations CR2is such that CR2_4>CR2_5>CR2_1=CR2_2=CR2_3=0. Thus, in the set zone S2, the distribution region I3of the error β4relating to the fourth drive unit94has the highest correlation CR2_4with the distribution Dα (distribution region E3) in the zone S2, and the distribution region J3of the error β5relating to the fifth drive unit100has the second highest correlation CR2_5.

On the other hand, for the distribution Dβ of the errors β1, β2, and β3relating to the first drive unit76, the second drive unit78, and the third drive unit84, the correlation CR2with the distribution Dα is zero (i.e., no correlation). Thus, as illustrated inFIG.13, in the order image data OD2, the plurality of drive units76,78,84,94, and100are displayed next to each other in order of the fourth drive unit94in first place, the fifth drive unit100in second place, and the first drive unit76, the second drive unit78, and the third drive unit84in third place.

Also, the processor20may function as the third image generating section164and may generate identification image data DD2for identifying the drive unit94with the highest correlation CR2, as illustrated inFIG.14. The identification image data DD2includes an arrow pointing to the zone S2and a symbol that identifies the fourth drive unit94with the highest correlation CR2and is displayed in the first image data ID1. Note that the processor20may display the order image data OD1and OD2or the identification image data DD1and DD2overlaid on the second image data ID2or may display these as image data separate from the first image data ID1and the second image data ID2.

As described above, in the present embodiment, the processor20functions as the first image generating section152, the second image generating section158, the third image generating section164, the correlation acquisition section162, the input reception section160, the time-series data acquisition section154, and the movement path generating section156, and the first image generating section152, the second image generating section158, the third image generating section164, the correlation acquisition section162, the input reception section160, the time-series data acquisition section154, and the movement path generating section156form an image analysis device150(FIG.1).

Note that the image analysis device150may be configured as a computer program (i.e., software). The computer program causes a computer (the processor20) to function as the first image generating section152, the second image generating section158, the third image generating section164, the correlation acquisition section162, the input reception section160, the time-series data acquisition section154, and the movement path generating section156in order to perform image analysis.

According to the present embodiment, the operator can determine whether or not the error α is highly likely to have been caused by the error β by taking into account the correlation CR between the distribution Dα of the error α and the distribution Dβ of the error β. Thus, the operator can easily identify the cause of the error α. As a result, the efficiency of the process of improving the machining accuracy of the industrial machine50and of the process of starting up the mechanical system10can be improved.

In addition, in the present embodiment, the processor20generates the second image data ID2_1, ID2_2, ID2_3, ID2_4, and ID2_5indicating the distributions Dβ1, Dβ2, Dβ3, Dβ4, and Dβ5of the error β for each of the drive units76,78,84,94, and100and obtains the correlations CR1and CR2between the distribution Dα of the error α and the distributions Dβ1, Dβ2, Dβ3, Dβ4, and Dβ5of the error β for each of the drive units76,78,84,94, and100.

According to this configuration, the operator can easily estimate which one of the plurality of drive units76,78,84,94, and100is highly likely of being the cause of the error α. For example, in the case of the above-described embodiment, the operator can estimate that the error β1relating to the first drive unit76is highly likely to be the cause relating to the distribution regions E1and E2of the distribution Dα of the error α inFIG.4. Also, the operator can estimate that the error β4relating to the fourth drive unit94is highly likely to be the cause relating to the distribution region E3of the distribution Dα of the error α inFIG.4.

Additionally, in the present embodiment, the processor20receives the input information specifying the zone S1(S2) and obtains the correlation CR1(CR2) between the distribution regions E1and E2(E3) included in the zone S1(S2) of the distribution Dα and the distribution regions F1and F2, G1and G2, and H1and H2(I3, J3) included in the zone S1(S2) of the distribution Dβ. According to this configuration, the operator can take into account the correlation CR for the desired region of the distribution Dα, making it easier to identify the cause of the error α in the desired region.

Note that at least one function of the first image generating section152, the second image generating section158, the third image generating section164, the correlation acquisition section162, the input reception section160, the time-series data acquisition section154, or the movement path generating section156illustrated inFIG.1may be provided in an external device of the control device12. Such an embodiment is illustrated inFIG.15.

A mechanical system170illustrated inFIG.15includes the control device12, the display device14, the input device16, the measurement device18, the industrial machine50, and a design support device172. The design support device172is a device in which a drawing device such as CAD and program generating device such as CAM is integrated and is connected to the I/O interface24of the control device12.

In the present embodiment, the measurement device18functions as the first image generating section152and measures the shape of the post-machining workpiece W and generates the first image data ID1. Additionally, the design support device172functions as the second image generating section158and generates the second image data ID2. Thus, in the present embodiment, the processor20of the control device12, the measurement device18, and the design support device172constitute the image analysis device150.

Note that in the embodiments described above, the processor20functions as the input reception section160that receives the specified input information of the zones S1and S2. However, the input reception section160may be omitted. In this case, the processor20may obtain the correlation CR between the entire distribution Dα of the first image data ID1and the entire distribution Dβ (Dβ1, Dβ2, Dβ3, Dβ4, and Dβ5) of the second image data ID2.

Also, in the embodiment described above, the processor20generates the second image data ID2by displaying the positions on the movement path MP of the errors β on the movement path MP. However, no such limitation is intended, and, for example, the processor20may generate the second image data ID2indicating the distribution Dβ of the error β on the workpiece model WM, based on the command CD, the feedback FB, and the workpiece model WM. In this case, the movement path generating section156can be omitted.

Additionally, in the above-described embodiment, the processor20acquires the time-series data of the command CD and the feedback FB. However, no such limitation is intended, and the processor20may use any data as long as the error β can be acquired. In this case, the time-series data acquisition section154can be omitted. Also, the third image generating section164may be omitted from the above-described embodiment, and, for example, the processor20may be configured to transmit the obtained correlation CR to an external device (such as a server) via a network (LAN, internet).

FIG.16illustrates an image analysis device180according to another embodiment. The image analysis device180is constituted by a computer including a processor (CPU, GPU, or the like) and a memory (ROM, RAM, or the like) or a computer program that causes the computer to operate and includes the first image generating section152, the second image generating section158, and the correlation acquisition section162. In this embodiment, the functions of the input reception section160, the time-series data acquisition section154, the movement path generating section156, and the third image generating section164described above may be provided in the external device of the image analysis device180.

Note that the above-described commands CD1, CD2, CD3, CD4, or CD5may include a position command or a velocity command of a driven body (e.g., the base table52, the swinging member60, the work table64, or the spindle head66) driven by the drive unit76,78,84,94, or100. In this case, the feedback FB includes position feedback or velocity feedback of the driven body, and the industrial machine50includes a sensor that detects the position of the driven body.

Additionally, the processor20may display the distribution Dα in different colors depending on the magnitude of the error α in the first image data ID1illustrated inFIG.4. Similarly, the processor20may display the distribution Dβ in different colors depending on the magnitude of the error β in the second image data ID2illustrated inFIGS.7to11.

Alternatively, the processor20(or the measurement device18) may generate a measurement workpiece model that is a model of the shape of the measured workpiece W, based on the measurement data of the shape of the workpiece W measured by the measurement device18. The processor20(or the measurement device18) may generate the first image data ID1indicating the distribution a of the error α on the measurement workpiece model. The processor20may generate the first image data ID1indicating the distribution a of the error α on the path model PM described above.

Additionally, in the embodiment described above, the industrial machine50includes a total of five drive units, the drive units76,78,84,94, and100, but may include any number of drive units. The industrial machine50may also include, for example, a vertically (or horizontally) articulated robot as a movement mechanism. In this case, the industrial machine50may include, instead of the tool68described above, a tool such as a laser machining head or the like mounted to the robot's hand, and the workpiece may be laser machined by a laser beam emitted from the tool while the tool is moved by the robot.

Although the present disclosure is described above through the embodiments, the above-described embodiments do not limit the invention according to the claims.

REFERENCE SIGNS LIST

10,170Mechanical system12Control device50Industrial machine68Tool102Movement mechanism150,180Image analysis device152First image generating section154Time-series data acquisition section156Movement path generating section158Second image generating section160Input reception section162Correlation acquisition section164Third image generating section