Patent Description:
A bending machine for bending a workpiece is controlled by a numerical control (NC) program of an NC device that is a control device. The NC device displays various programs designed and manufactured using a computer-aided design (CAD)/computer-aided manufacturing (CAM) system or the like on the program production side such as a design department. The NC device is configured to perform operations necessary for executing various programs.

The bending machine and the NC device are each provided with a display, a monitor device, and the like for displaying various operation screens and guide screens. Hence, for example, a bending machine is known that can provide appropriate guidance on various operations and processing details on the program production side and the processing site side through these screens, which enables real-time communication (see Patent Document <NUM>).

At the time of setting a workpiece on a bending machine, a workpiece loading device, or the like, the workpiece to be set is displayed in advance on a display screen of a display device such as a display, as in the bending machine disclosed in Patent Document <NUM>. This enables an operator to set the workpiece while confirming the orientation or the like of the workpiece at the time of setting. Usually, the workpiece is provided with a preformed hole or the like. Thus, the operator sets the workpiece on the bending machine using the hole or the like as a mark.

However, when the number of holes or the like in the workpiece is large, or when a feature that serves as a mark is difficult to find, the operator may not know how to set the workpiece on the bending machine or the like just by viewing the workpiece displayed on the display screen. When the operator performs a bending process with the workpiece set incorrectly, defective products will be produced in increasing numbers. Also, stopping the bending machine or the like and redoing the setting will result in reworking.

One aspect of the present invention is a workpiece display assistance device, a workpiece display assistance method, and a workpiece display assistance program that can prevent errors in workpiece setting by providing an operator with a good view of a feature point on a workpiece that serves as a mark.

According to one aspect of the present invention, it is possible to prevent errors in workpiece setting by providing the operator with a good view of a feature point on the workpiece that serves as a mark.

A workpiece display assistance device, a workpiece display assistance method, and a workpiece display assistance program according to each of embodiments of the present invention will be described in detail below with reference to the accompanying drawings. However, the following embodiments are not intended to limit the invention according to each claim, and not all the combinations of features described in the embodiments are essential to the solution of the invention. In the following embodiments, the scale or size of each component may be exaggerated, or some of the components may be omitted.

<FIG> is an explanatory diagram illustrating a basic configuration of a workpiece display assistance device according to a first embodiment of the present invention. <FIG> is an explanatory view schematically illustrating an example of how a workpiece is displayed by the workpiece display assistance device.

As illustrated in <FIG>, a workpiece display assistance device <NUM> according to the first embodiment basically includes: a first model generation unit <NUM> that obtains shape data of a workpiece W to be set (see <FIG>) and generates an original model <NUM> (see <FIG> and <FIG>) of the workpiece W based on the shape data; a second model generation unit <NUM> that generates a plurality of matching models <NUM> to <NUM> (see <FIG>) by rotating and/or inverting the original model <NUM>; an extraction unit <NUM> that matches the plurality of matching models <NUM> to <NUM> to the original model <NUM> and extracts the aligned portions of the respective matching models <NUM> to <NUM> with the original model <NUM> as matching sections <NUM> to <NUM> (see <FIG>); a model creation unit <NUM> that creates a matching aggregate model <NUM> (see <FIG>) by aggregating the extracted matching sections <NUM> to <NUM> in a state conforming to the original model <NUM> and synthesizing the aggregated matching sections <NUM> to <NUM>; a determination unit <NUM> that compares the original model <NUM> and the matching aggregate model <NUM> and makes a determination of a feature point P (see <FIG>) on the workpiece W; and a display unit <NUM> (see <FIG>) that displays the feature point P in a highlightable manner, along with an image of the workpiece W, on a display screen of a display device based on the determination result of the determination unit <NUM>.

Note that the shape data of the workpiece W may be numerical data created using a CAD/CAM system or the like, or data of an image captured by a camera or the like. The feature point is a singular portion (where there is no symmetry) in the matching aggregate model <NUM> with respect to the original model <NUM>, for example. Therefore, the feature point means a location (different point) where the shape changes from the original model <NUM> when the matching aggregate model <NUM> is rotated or inverted. The feature point in the present invention refers to a location representing a feature that serves as a mark when the workpiece W is set.

The workpiece display assistance device <NUM> can be installed at any location including a site where the workpiece W is set. As illustrated in <FIG>, the workpiece display assistance device <NUM> is installed at a location where at least the display unit <NUM> is visible to an operator M, for example, in a site where a workpiece loading device <NUM> including a workpiece turning device <NUM>, a magnetic floater <NUM>, and a pallet <NUM> is installed (near the workpiece loading device <NUM> or in other locations) in a so-called automatic machine (automated machine).

When the workpiece W is set on the workpiece loading device <NUM>, the image of the original model <NUM> of the workpiece W is displayed along with the highlighted feature point P on a display <NUM> that is the display device of the display unit <NUM> of the workpiece display assistance device <NUM>. This enables the operator M to set the workpiece W in a correct orientation on the workpiece loading device <NUM> using the highlighted feature point P as a mark.

In a so-called general-purpose machine (stand-alone machine), the workpiece display assistance device <NUM> may be installed so that at least the display unit <NUM> also has, for example, a function of a device operation panel (not illustrated). The workpiece display assistance device <NUM> may be configured to have a function of an NC device that controls the automatic machine or the general-purpose machine to perform bending and the like.

<FIG> is a configuration diagram schematically illustrating a hardware configuration of the workpiece display assistance device.

As illustrated in <FIG>, the workpiece display assistance device <NUM> includes, for example, a central processing unit (CPU) <NUM>, a random-access memory (RAM) <NUM>, a read-only memory (ROM) <NUM>, a hard disk drive (HDD) <NUM>, and a solid-state drive (SSD) <NUM> as the hardware configuration. The workpiece display assistance device <NUM> includes an input interface (I/F) <NUM>, an output interface (I/F) <NUM>, and a communication interface (I/F) <NUM>. Each of the components <NUM> to <NUM> is interconnected by a bus <NUM>. Therefore, the workpiece display assistance device <NUM> can be configured by an information processing device such as an existing personal computer, server device, or workstation.

The CPU101 executes various programs stored in the RAM <NUM>, the ROM <NUM>, the HDD <NUM>, the SSD <NUM>, and the like to control the entire workpiece display assistance device <NUM>, and executes a workpiece display assistance program to realize all the functions of the first model generation unit <NUM>, the second model generation unit <NUM>, the extraction unit <NUM>, the model creation unit <NUM>, and the determination unit <NUM>.

The RAM <NUM> can be used as a work area for the CPU101. The ROM <NUM> stores various programs such as a boot program, the workpiece display assistance program, and an NC program at least in a readable manner. The HDD <NUM> and the SSD <NUM> store various types of data such as shape data, model data, and image data in a readable and writable manner, and function as the storage unit of the workpiece display assistance device <NUM> along with the RAM <NUM> and the ROM <NUM>.

Input devices such as a keyboard <NUM> (see <FIG>) and a mouse (not illustrated) and a touch panel 109a are connected to the input I/F <NUM> to receive information associated with an operation input from the operator M or a user. The display <NUM> of the display unit <NUM> incorporated with, for example, a touch panel 109a is connected to the output I/F <NUM> and outputs various kinds of information including the image of the original model <NUM> to be displayed on a monitor. Note that the workpiece display assistance device <NUM> can be connected to a network such as the Internet (not illustrated) and an external terminal <NUM> such as a program execution terminal like the CAD/CAM system via the communication I/F <NUM>.

Next, a workpiece display assistance process procedure of the workpiece display assistance device <NUM> will be described.

<FIG> is a flowchart illustrating a workpiece display assistance process for realizing a workpiece display assistance method performed by the workpiece display assistance device. <FIG> is an explanatory diagram illustrating the original model of the workpiece W and a plurality of matching models.

As illustrated in <FIG>, in the workpiece display assistance device <NUM>, the first model generation unit <NUM> obtains the shape data of the workpiece W to be set (step S10). Based on the obtained shape data, the first model generation unit <NUM> generates the original model <NUM> as illustrated in <FIG>, for example (step S20).

The original model <NUM> is, for example, a picture (image) representing the front side of the workpiece W with no rotation (an angle of <NUM>°). The original model <NUM> is formed in a rectangular shape having a pair of long sides 10a, 10c and a pair of short sides 10b, 10d. The original model <NUM> shows a plurality of holes (five holes in <FIG>) h1 to h5 drilled at predetermined locations so as to penetrate, for example, the front and back of the workpiece W. In the following drawings including <FIG>, "front" indicates the front side of the workpiece W, and "back" indicates the back side of the workpiece W.

Next, as illustrated in <FIG>, the second model generation unit <NUM> rotates the original model <NUM> at a predetermined angle (here, <NUM>°) and inverts the front and back sides of the original model <NUM>, for example, (step S30) to generate a plurality of matching models <NUM> to <NUM> (step S40). The matching models <NUM> to <NUM> refers to one of the following: a picture (image) representing the front side of the workpiece W rotated, a picture (image) representing the back side of the workpiece W inverted front to back, or a picture (image) representing the back side of the inverted workpiece W rotated.

That is, the matching model <NUM> represents the front side of the original model <NUM> rotated <NUM>° to the left (see <FIG>). The matching model <NUM> represents the front side of the original model <NUM> rotated <NUM>° to the left (see <FIG>). The matching model <NUM> represents the front side of the original model <NUM> rotated <NUM>° to the left (see <FIG>).

On the other hand, the matching model <NUM> represents the back side of the original model <NUM> inverted front to back with no rotation (<NUM>° angle) (see <FIG>). The matching model <NUM> represents the back side of the original model <NUM> inverted front to back and rotated <NUM>° to the left (the matching model <NUM> rotated <NUM>° to the left) (see <FIG>).

The matching model <NUM> represents the back side of the original model <NUM> inverted front to back and rotated <NUM>° to the left (the matching model <NUM> rotated <NUM>° to the left) (see <FIG>). The matching model <NUM> represents the back side of the original model <NUM> inverted front to back and rotated <NUM>° to the left (the matching model <NUM> rotated <NUM>° to the left) (see <FIG>).

Note that the rotation angle in the second model generation unit <NUM> is not limited to this, and the rotation does not necessarily have to be performed at equal angles (equal intervals). When more matching models rotated with finer rotation angle settings are generated, it is possible to improve the accuracy of feature point determination. However, it is preferable to generate a plurality of matching models at appropriate rotation angles because generating more matching models increases the processing load such as arithmetic processing.

<FIG> is a diagram for explaining the outline of a matching process between the original model and each of the matching models. <FIG> is a diagram for explaining extracted matching sections and a matching aggregate model.

After each of the matching models <NUM> to <NUM> is generated, the extraction unit <NUM> matches each of the plurality of matching models <NUM> to <NUM> to the original model <NUM> as illustrated in <FIG> (see <FIG>).

Here, the term "matching" refers to searching the original model <NUM> for a location most similar to each of the matching models <NUM> to <NUM>, that is, searching for a place with the highest similarity. In the case of the present embodiment, the place with the highest similarity is a point where the largest portions of lines are aligned. Thus, "matching" refers to comparing the lengths of aligned lines to find a point where the largest portions of the lines are aligned. For example, a known template matching method can be used for the matching process in the extraction unit <NUM>.

When the matching model <NUM> is matched to the original model <NUM>, as illustrated in <FIG>, the hole h1 of the original model <NUM> and the hole h3 of the matching model <NUM> are aligned. In addition, a part of the long side 10a and the entirety of the short side 10d, which are continuous with the vicinity of the holes h1, h3 as corners, are aligned.

In <FIG>, the original model <NUM> is indicated by the solid line, and the matching models <NUM> to <NUM> are indicated by the dashed lines. Portions drawn with these solid and dashed lines displaced and parallel to each other so that the lines are almost aligned, or portions drawn with solid and dashed circles intersecting each other so that the circles are almost aligned, represent aligned portions that are actually consistent perfectly and aligned.

When the matching model <NUM> is matched to the original model <NUM>, as illustrated in <FIG>, the hole h1 of the original model <NUM> and the hole h5 of the matching model <NUM> are aligned, and the hole h5 of the original model <NUM> and the hole h1 of the matching model <NUM> are aligned. The entirety of the long sides 10a, 10c and the short sides 10b, 10d of the original model <NUM> and the matching model <NUM> are aligned.

When the matching model <NUM> is matched to the original model <NUM>, as illustrated in <FIG>, the hole h5 of the original model <NUM> and the hole h3 of the matching model <NUM> are aligned. In addition, a part of the long side 10c and the entirety of the short side 10b, which are continuous with the vicinity of the holes h5, h3 as corners, are aligned.

On the other hand, when the matching model <NUM> is matched to the original model <NUM>, as illustrated in <FIG>, the hole h2 of the original model <NUM> and the hole h4 of the matching model <NUM> are aligned, and the hole h3 of the original model <NUM> and the hole h5 of the matching model <NUM> are aligned. The hole h4 of the original model <NUM> and the hole h2 of the matching model <NUM> are aligned, and the hole h5 of the original model <NUM> and the hole h3 of the matching model <NUM> are aligned. Further, the entirety of the long sides 10a, 10c and the short sides 10b, 10d of the original model <NUM> and the matching model <NUM> are aligned.

When the matching model <NUM> is matched to the original model <NUM>, as illustrated in <FIG>, the hole h1 of the original model <NUM> and the hole h5 of the matching model <NUM> are aligned. In addition, a part of the long side 10a and the entirety of the short side 10d, which are continuous with the vicinity of the holes h1, h5 as corners, are aligned.

When the matching model <NUM> is matched to the original model <NUM>, as illustrated in <FIG>, the hole h1 of the original model <NUM> and the hole h3 of the matching model <NUM> are aligned, and the hole h3 of the original model <NUM> and the hole h1 of the matching model <NUM> are aligned. The entirety of the long sides 10a, 10c and the short sides 10b, 10d of the original model <NUM> and the matching model <NUM> are aligned.

When the matching model <NUM> is matched to the original model <NUM>, as illustrated in <FIG>, the hole h1 of the original model <NUM> and the hole h1 of the matching model <NUM> are aligned. In addition, a part of the long side 10a and the entirety of the short side 10d, which are continuous with the vicinity of the holes h1, h1 as corners, are aligned.

After each of the matching models <NUM> to <NUM> is matched to the original model <NUM> in this manner, as illustrated in <FIG>, the aligned portions of the respective matching models <NUM> to <NUM> with the original model <NUM> illustrated in <FIG> are extracted as matching sections <NUM> to <NUM> (see <FIG>) (step S50). In <FIG>: in <FIG>, the original model <NUM> is indicated by the solid line; and in <FIG>, the matching sections <NUM> to <NUM>, aligned with the portions of the original model <NUM> indicated by the dashed lines, are indicated by the solid lines.

As illustrated in <FIG>, the matching section <NUM> includes the hole h1 of the original model <NUM>, and a part of the long side 10a and the entirety of the short side 10d which are continuous with the vicinity of the hole h1 as a corner. As illustrated in <FIG>, the matching section <NUM> includes the holes h1, h5 and the entirety of the long sides 10a, 10c, and short sides 10b, 10d of the original model <NUM>.

As illustrated in <FIG>, the matching section <NUM> includes the hole h5, and a part of the long side 10c and the entirety of the short side 10b which are continuous with the vicinity of the hole h5 as a corner. As illustrated in <FIG>, the matching section <NUM> includes the holes h2 to h5 and the entirety of the long sides 10a, 10c, and short sides 10b, 10d. As illustrated in <FIG>, the matching section <NUM> includes the hole h1, and a part of the long side 10a and the entirety of the short side 10d which are continuous with the vicinity of the hole h1 as a corner.

Further, as illustrated in <FIG>, the matching section <NUM> includes the holes h1, h3 and the entirety of the long sides 10a, 10c and the short sides 10b, 10d. As illustrated in <FIG>, the matching section <NUM> includes the hole h1, and a part of the long side 10a and the entirety of the short side 10d which are continuous with the vicinity of the hole h1 as a corner.

After the matching sections <NUM> to <NUM> are extracted, the model creation unit <NUM> aggregates the extracted matching sections <NUM> to <NUM> into a state conforming to the original model <NUM>, as illustrated in <FIG> (step S60). These are then synthesized to create the matching aggregate model <NUM> (step S70).

In <FIG>, the matching aggregate model <NUM> is indicated by the solid line as in the original model <NUM> and has a pair of long sides 20a, 20c, a pair of short sides 20b, 20d, and holes h1a to h5a. Note that the original model <NUM>, the matching models <NUM> to <NUM>, the matching sections <NUM> to <NUM>, and the matching aggregate model <NUM> can be stored in a storage unit (not illustrated).

Once the matching aggregate model <NUM> is created, a feature point determination process (step S80) is performed by the determination unit <NUM>. In the determination process, first, the created matching aggregate model <NUM> is obtained and compared with the original model <NUM> to make a determination of the feature point on the workpiece W. Specifically, the determination is made on the feature point based on the presence or absence of a portion represented by a line, a point, or the like that remains after the matching aggregate model <NUM> is subtracted from the original model <NUM>.

Then, the display unit <NUM> displays the feature point P in a highlightable manner, along with the image of the original model <NUM> representing the workpiece W, on the display screen of the display <NUM> (display device) based on the determination result of the determination unit <NUM> (step S90), and the workpiece display assistance process according to this flowchart is terminated.

Here, the feature point determination process in step S80 above is described. <FIG> is a flowchart illustrating the determination process. <FIG> is a diagram illustrating an example of the determination result. <FIG> is a view illustrating an example of the display screen.

As illustrated in <FIG>, in the determination process, the determination unit <NUM> first determines the presence or absence of a feature point based on whether or not the matching aggregate model <NUM> is rotationally symmetric or inversely symmetric (front-to-back symmetric) to the original model <NUM> (step S100). Specifically, as illustrated in <FIG>, when the original model <NUM> and the matching aggregate model <NUM> are compared and determined to be rotationally symmetric (Yes in step S100), no feature point appears as in a comparison result model 29a indicated by the dashed line, and it is determined that there is no feature point (no feature point is present).

That is, for example, the matching aggregate model <NUM> having the holes h1a, h5a, the long sides 20a, 20c, and the short sides 20b, 20d is rotationally symmetric to the original model <NUM> having the holes h1, h5, the long sides 10a, 10c, and the short sides 10b, 10d. Thus, no feature point, including the holes h1, h5, appears in the comparison result model 29a.

Similarly, as illustrated in <FIG>, when the original model <NUM> and the matching aggregate model <NUM> are compared and determined to be inversely symmetric (Yes in step S100), no feature point appears as in a comparison result model 29b indicated by the dashed line, and it is determined that there is no feature point. That is, for example, the matching aggregate model <NUM> having the holes h2a to h5a, the long sides 20a, 20c, and the short sides 20b, 20d is inversely symmetric to the original model <NUM> having the holes h2 to h5, the long sides 10a, 10c, and the short sides 10b, 10d. Therefore, no feature point, including the holes h2 to h5, appears in the comparison result model 29b.

When the matching aggregate model <NUM> is rotationally symmetric or inversely symmetric to the original model <NUM> as described above (Yes in step S100), the image of the original model <NUM> is displayed with no feature point shown on the display screen of the display <NUM> in the display process of step S90 above based on the determination result (step S101).

On the other hand, when the matching aggregate model <NUM> is determined not to be rotationally symmetric or inversely symmetric to the original model <NUM> (No in step S100), it is further determined whether a feature point has been found (step S102). At this stage, when it is determined that a feature point has been found (Yes in step S102), it is determined that there is a feature point (a feature point is present). In this case, based on the determination result, the display unit <NUM> displays the image of the original model <NUM> with the feature point highlighted on the display screen of the display <NUM> in the display process of step S90 above (step S103).

That is, as illustrated in <FIG>, when the original model <NUM> having the holes h1, h3, h4, the long sides 10a, 10c, and the short sides 10b, 10d is compared with the matching aggregate model <NUM> having the holes h1a, h3a, the long sides 20a, 20c, and the short sides 20b, 20d, and the original model <NUM> and the matching aggregate model <NUM> are not rotationally symmetric or inversely symmetric (No in step S100) and when the hole h4 as a feature point is found (Yes in step S102), for example, the feature point P (hole h4) of the original model <NUM> as indicated by the solid line appears in a comparison result model 29c indicated by the dashed line.

Thus, as illustrated in <FIG>, in step S103 above, the display unit <NUM> displays the image of the original model <NUM> of the workpiece W on the display screen of the display <NUM> with the feature point P highlighted based on the determination result including the comparison result model 29c. Note that various display forms can be adopted for highlighting, such as changing only the color of the feature point P or making only the feature point P blink, as long as the display form is noticeable when in a visible state.

Therefore, by using the highlighted feature point P as a mark for the workpiece W, along with the image of the original model <NUM> displayed on the display screen, the operator M can determine the setting direction and orientation of the workpiece W and set the workpiece W without making errors. As described above, according to the workpiece display assistance device <NUM> of the first embodiment, the operator M can be provided with a good view of the feature point P on the workpiece W that serves as a mark, whereby errors in setting the workpiece W can be prevented as much as possible.

On the other hand, when it is determined that the matching aggregate model <NUM> is not rotationally symmetric or inversely symmetric (No in step S100) and that there is no feature point P (No in step S102), the determination unit <NUM> executes a secondary determination process. Note that it is also possible to choose to terminate the process itself without executing the secondary determination process, but further performing the feature point determination by the secondary determination process makes it possible to detect the feature point more reliably.

<FIG> is a flowchart illustrating pre-processing and a secondary determination process according to a second embodiment of the present invention. <FIG> is a diagram for explaining matching sections ranked based on match rates. <FIG> is a diagram for explaining the sorting of the matching sections based on the match rates. <FIG> is a diagram for explaining non-matching sections ranked based on the match rates. In the following description including <FIG>, the same components as those of the first embodiment and the modification thereof are denoted by the same reference numerals, and hence the duplicated description will be omitted below.

In the above determination process, as illustrated in <FIG>, for example, when the original model <NUM> having the holes h1 to h5, the long sides 10a, 10c, and the short sides 10b, 10d is compared with the matching aggregate model <NUM> having the holes h1a to h5a, the long sides 20a, 20c, and the short sides 20b, 20d, and the original model <NUM> and the matching aggregate model <NUM> are not rotationally symmetric or inversely symmetric (No in step S100) and when it is found that there is no feature point because no feature point was found (No in step S102), at first glance, no feature point appears at all as in a comparison result model 29d indicated by the dashed line, for example.

However, this may not always mean that there is no feature point in the workpiece W. Therefore, in the above case, the secondary determination process based on the concept of combination is performed, which goes one step further from the extraction of the partially different point (feature point) by simple comparison between the original model <NUM> and the matching aggregate model <NUM> as described above.

First, prior to the secondary determination process, the extraction unit <NUM> makes ranks based on the match rates of matching sections <NUM> to <NUM> and extracts non-aligned portions of the respective matching models <NUM> to <NUM> with the original model <NUM> as non-matching sections <NUM> to <NUM>. The model creation unit <NUM> refers to a pattern table PT in which combination patterns obtained by combining the extracted non-matching sections <NUM> to <NUM> based on the ranks are arranged with use priorities added thereto, and creates a determination candidate model <NUM> by rotating and/or inverting the non-matching sections <NUM> to <NUM> that make up the combination patterns to return to the original states so as to conform to the original model <NUM>, and combining the non-matching sections <NUM> to <NUM>. In the secondary determination process, the determination unit <NUM> compares the determination candidate model <NUM> with each of the matching sections <NUM> to <NUM> and makes a determination of the feature point P.

That is, as illustrated in <FIG>, as pre-processing prior to the secondary determination process, for example, the matching sections <NUM> to <NUM> (see <FIG>) extracted by the extraction unit <NUM> in step S50 above are sorted in descending order of the match rates (step S110). Specifically, as illustrated in <FIG>, each of the matching sections <NUM> to <NUM> is first ranked with respect to the original model <NUM> illustrated in <FIG> based on the match rate (the amount of alignment of the aligned portion).

In <FIG>: in <FIG>, the original model <NUM> is indicated by the solid line; and in <FIG>, the matching sections <NUM> to <NUM>, aligned with the portions of the original model <NUM> indicated by the dashed lines, are indicated by the solid lines. The ranks are indicated by numbers in parentheses.

For example, the matching section <NUM> illustrated in <FIG> has a seventh match rate (<NUM>), and the matching section <NUM> illustrated in <FIG> has a third match rate (<NUM>). The matching section <NUM> illustrated in <FIG> has a fourth match rate (<NUM>), and the matching section <NUM> illustrated in <FIG> has a first match rate (<NUM>). Further, the matching section <NUM> illustrated in <FIG> has a fifth match rate (<NUM>), the matching section <NUM> illustrated in <FIG> has a second match rate (<NUM>), and the matching section <NUM> illustrated in <FIG> has a sixth match rate (<NUM>).

When the matching sections <NUM> to <NUM> ((<NUM>) to (<NUM>)) ranked in the above manner are sorted in descending order from the first to seventh match rates ((<NUM>) to (<NUM>)), the result is as illustrated in <FIG>. That is, the order is as follows: the matching section <NUM> has the first match rate, the matching section <NUM> has the second match rate, the matching section <NUM> has the third match rate, the matching section <NUM> has the fourth match rate, the matching section <NUM> has the fifth match rate, the matching section <NUM> has the sixth match rate, and the matching section <NUM> has the seventh match rate.

Note that the matching sections <NUM>, <NUM>, <NUM> and the matching sections <NUM>, <NUM>, which appear to have similar match rates in the figure, are ranked according to the differences in detailed match rates determined through calculation. The information of the sorted matching sections <NUM> to <NUM> and the match rates is then stored in the storage unit.

Next, as illustrated in <FIG>, the extraction unit <NUM> subtracts the matching sections <NUM> to <NUM> illustrated in <FIG> from the matching models <NUM> to <NUM> illustrated in <FIG>, thereby extracting the non-aligned portions with the original model <NUM> illustrated in <FIG> as the non-matching sections <NUM> to <NUM> (step S111).

In <FIG>: in <FIG>, the original model <NUM> is indicated by the solid line; and in <FIG>, the matching sections <NUM> to <NUM> are indicated by the dashed lines, and the non-matching sections <NUM> to <NUM> are illustrated by dash-dot-dot lines. The non-matching sections <NUM> to <NUM> are ranked according to the ranked match rates stored in the matching sections <NUM> to <NUM>.

As illustrated in <FIG>, the non-matching section <NUM> includes the holes h2 to h5, the entirety of the continuous long side 10c and short side 10b, and a part of the long side 10a of the original model <NUM>. As illustrated in <FIG>, the non-matching section <NUM> includes the holes h2 to h4 of the original model <NUM>. As illustrated in <FIG>, the non-matching section <NUM> includes the holes h1 to h4, the entirety of the continuous long side 10a and short side 10d, and a part of the long side 10c of the original model <NUM>.

As illustrated in <FIG>, the non-matching section <NUM> includes the hole h1 of the original model <NUM>. As illustrated in <FIG>, the non-matching section <NUM> includes the holes h2 to h5, the entirety of the continuous long side 10c and short side 10b, and a part of the long side 10a of the original model <NUM>. As illustrated in <FIG>, the non-matching sections <NUM> include the holes h2, h4, h5 of the original model <NUM>. As illustrated in <FIG>, the non-matching section <NUM> includes a part of the holes h2 to h5, the continuous long side 10c, the short side 10b, and the long side 10a of the original model <NUM>.

<FIG> is a diagram for explaining a pattern table in which combination patterns are arranged. After the non-matching sections <NUM> to <NUM> are extracted as described above, for example, the extraction unit <NUM> or the model creation unit <NUM> creates a pattern table PT in which combination patterns obtained by combining the non-matching sections <NUM> to <NUM> based on ranks (<NUM>) to (<NUM>) are arranged, as illustrated in <FIG> (step S112).

A use priority is added to the pattern table PT for each combination pattern, and this determines the priority of the combination patterns (e.g., 1st to 20th). For example, a combination pattern obtained by combining the non-matching sections <NUM>, <NUM> with rank (<NUM>) and rank (<NUM>) has the first priority. A combination pattern obtained by combining the non-matching sections <NUM>, <NUM> with rank (<NUM>) and rank (<NUM>) has the second priority. Other combination patterns and priorities are illustrated in the figure.

<FIG> is a diagram for explaining an example of the combination pattern. <FIG> are diagrams for explaining the creation of the determination candidate model. In <FIG>, the non-matching sections <NUM> (hole h1), <NUM> (holes h2, h4, h5) that are not aligned with the portions of the original model <NUM> indicated by the dash-dot-dot lines are indicated by the solid lines.

As illustrated in <FIG>, for example, a combination pattern with the first priority in the pattern table PT is made up of the non-matching section <NUM> (hole h1) with rank (<NUM>) and the non-matching section <NUM> (holes h2, h4, h5) with rank (<NUM>). The model creation unit <NUM> reads the non-matching sections <NUM>, <NUM> from the storage unit, and rotates and/or inverts the non-matching sections <NUM>, <NUM> to return to the original states so as to conform to the original model <NUM>, as illustrated in <FIG>.

That is, since the non-matching section <NUM> represents the original model <NUM> inverted front to back with no rotation (i.e., <NUM>° angle), the non-matching section <NUM> is inverted to return to the original state (inverted back to front). Since the non-matching section <NUM> represents the original model <NUM> inverted front to back and rotated <NUM>° to the left, the non-matching section <NUM> is inverted to return to the original state (inverted back to front) and then rotated to return to the original state (rotated -<NUM>° = rotated <NUM>° to the right). The non-matching sections <NUM>, <NUM> returned in the above manner are combined (added up) as indicated by the arrows in the figure, to create the determination candidate model <NUM> as illustrated in <FIG> made up of holes h1b, h2b, h4b, h5b (step S113).

<FIG> is a diagram for explaining the secondary determination process. <FIG> is a diagram for explaining an example of a secondary determination result.

When the determination candidate model <NUM> is created, as illustrated in <FIG>, the determination unit <NUM> superimposes the determination candidate model <NUM> on each of the matching sections <NUM> to <NUM> as indicated by the arrows in <FIG> (step S114), compares the determination candidate model <NUM> with each of the matching sections <NUM> to <NUM>, detects a difference (step S115), and makes a determination of the feature point P in the secondary determination process.

In <FIG>, the original model <NUM> is not illustrated. In <FIG>, the holes h1b, h2b, h4b, h5b of the determination candidate model <NUM> in <FIG> are indicated by the solid lines. In <FIG>, the matching sections <NUM> to <NUM> are indicated by the solid lines. Of the holes h1b, h2b, h4b, h5b of the determination candidate model <NUM>, the holes that are aligned with the matching sections <NUM> to <NUM> are indicated by the thick lines, the holes that are not aligned with the matching sections <NUM> to <NUM> are indicated by the dash-dot-dot lines, and the other portions of the original model <NUM> are indicated by the dashed lines. Further, In <FIG>, of the holes h1b, h2b, h4b, h5b of the determination candidate model <NUM>, the holes that are not aligned with the respective matching sections <NUM> to <NUM> are indicated by the solid lines, and the other portions are indicated by the dashed lines.

As illustrated in <FIG>, in the matching section <NUM>, the hole h1b of the determination candidate model <NUM> is aligned with the hole h1, and the holes h2b, h4b, h5b are not aligned. Thus, as illustrated in <FIG>, the holes h2b, h4b, h5b of the determination candidate model <NUM> are detected as differences.

As illustrated in <FIG>, in the matching section <NUM>, the holes h1b, h5b of the determination candidate model <NUM> are aligned with the holes h1, h5, respectively, and the holes h2b, h4b are not aligned. Thus, as illustrated in <FIG>, the holes h2b, h4b of the determination candidate model <NUM> are detected as differences.

As illustrated in <FIG>, in the matching section <NUM>, the hole h5b of the determination candidate model <NUM> is aligned with the hole h5, and the holes h1b, h2b, h4b are not aligned. Thus, as illustrated in <FIG>, the holes h1b, h2b, h4b of the determination candidate model <NUM> are detected as differences.

As illustrated in <FIG>, in the matching section <NUM>, the holes h2b, h4b, h5b of the determination candidate model <NUM> are aligned with the holes h2, h4, h5, respectively, and the hole h1b is not aligned. Therefore, as illustrated in Figure <NUM>(e), the hole h1b of the determination candidate model <NUM> is detected as a difference.

As illustrated in <FIG>, in the matching section <NUM>, the hole h1b of the determination candidate model <NUM> is aligned with the hole h1, and the holes h2b, h4b, h5b are not aligned. Thus, as illustrated in <FIG>, the holes h2b, h4b, h5b of the determination candidate model <NUM> are detected as differences. Here, when a difference is detected (Yes in step S115), it means the same as that it is determined that the feature point P is present. Hence the display process of step S90 above may be performed at this stage.

In the display process, although not illustrated, the image of the original model <NUM> of the workpiece W is displayed on the display screen of the display <NUM> while, for example, four feature points P (holes h1, h2, h4, h5) corresponding to the holes h1b, h2b, h4b, h5b of the determination candidate model <NUM> are highlighted.

On the other hand, when no difference is detected (No in step S115), it is determined that there is no feature point P in the determination candidate model <NUM> based on the combination pattern with the first priority. Therefore, the priority is lowered (step S116), the process shifts to step S113 above, and the subsequent processes are repeated.

<FIG> is a diagram for explaining another example of the combination pattern. Note that <FIG> illustrates the non-matching sections <NUM>, <NUM> that have already been rotated and/or inverted to return to the original states as described above.

As illustrated in <FIG>, for example, the combination pattern with the second priority in the pattern table PT is made up of the non-matching section <NUM> (hole h1) with rank (<NUM>) and the non-matching section <NUM> (holes h2, h3, h4) with rank (<NUM>). By combining these, the determination candidate model <NUM> made up of the holes h1b to h4b is created. Then, the determination unit <NUM> executes the secondary determination process again using the determination candidate model <NUM> created by lowering the priorities.

In this manner, when no difference is detected (No in step S115), the model creation unit <NUM> sequentially creates the determination candidate model <NUM> based on the use priority. Then, up to a time point when the feature point P is found by the secondary determination process, the model creation unit <NUM> continuously creates the determination candidate model <NUM> until the determination candidate model <NUM> of the combination pattern with the lowest use priority is created.

Accordingly, even when it is determined in step S102 above that there is no feature point P, the determination candidate models <NUM> can be created as many as the number of the combination patterns arranged in the pattern table PT and the determination can be repeated, thereby enabling the search for the feature point P to be performed to a deeper level.

The secondary determination process includes: a thinning process of extracting a location that representing the feature point P that meets a predetermined condition, for each of the non-matching sections that make up the combination pattern of the determination candidate model <NUM>; and a checking process of inspecting the suitability of the determination candidate model <NUM> indicated by the combination pattern made up of the non-matching sections after thinning. Hereinafter, the thinning process and the checking process will be described using the determination candidate model <NUM> with the first priority as an example.

<FIG> are diagrams for explaining the concept of the thinning process for the determination candidate model.

When differences are detected in step S115 above (Yes in step S115), the holes h1b, h2b, h4b, h5b can be recognized as the feature points P in the determination candidate model <NUM> with the first priority illustrated in <FIG>.

However, when there are many feature points P, it may be difficult for the operator M to accurately recognize the feature points P on the workpiece W as marks. Therefore, in order to lessen the attention workload for the operator M and others, as illustrated in <FIG>, the determination unit <NUM> executes the thinning process (step S117) to leave the specific holes h1b, h5b (specifically, the most characteristic locations) that meet the predetermined condition as the feature points P among the holes h1b, h2b, h4b, h5b of the determination candidate model <NUM>.

That is, the thinning process refers to a process of erasing (thinning out) excess lines from the determination candidate model <NUM> created by the model creation unit <NUM>. The fewer the number of elements to be combined (added up) in the non-matching sections <NUM>, <NUM> that make up the determination candidate model <NUM>, the fewer the number of feature points P that the operator M needs to pay attention to.

In the thinning process, a predetermined evaluation function for erasing lines can be used. Examples of the thinning policy (the above predetermined condition) based on the evaluation function include: (<NUM>) leaving the line that ensures the largest area and erasing the other lines; and (<NUM>) leaving the line closest to or farthest from the largest area and erasing the other lines.

The reasons for the above are that in case (<NUM>), the line that ensures the largest area is noticeable as the feature point P to the operator M, and in case (<NUM>), the line closest to the largest area is noticeable as the feature point P to the operator M who considers the closer mark easier to view, and the line farthest from the largest area is noticeable as the feature point P to the operator M who considers the farther mark easier to view. Other examples of the thinning policy (the predetermined condition) include: leaving a circular line and erasing the other lines; leaving a square line and erasing the other lines; and not performing thinning and leaving all the lines. Hereinafter, a description will be given using case (<NUM>) as an example.

In the thinning process, first, as illustrated in <FIG>, the determination unit <NUM> focuses on the non-matching section <NUM> (hole h1) with rank (<NUM>), as indicated by an attention frame <NUM>, out of the non-matching sections <NUM>, <NUM> that make up the determination candidate model <NUM> with the first priority. Next, the determination unit <NUM> detects the contour of the non-matching section <NUM> (hole h1) by known image processing and calculates the area of a region h1c surrounded by the detected contour as, for example, a convex hull as illustrated in <FIG>.

Here, the convex hull refers to a minimum convex polygon (a figure covered so as not to be concave) including all the given points. Then, the contour of the one having the largest area is left. The non-matching section <NUM> illustrated in <FIG> is made up of one hole h1, so that the non-matching section <NUM> (hole h1) itself is left as the feature point P.

Next, as illustrated in <FIG>, the non-matching section <NUM> (holes h2, h4, h5) with rank (<NUM>) indicated by the attention frame <NUM> is the focus of attention. The determination unit <NUM> detects the contour of the non-matching section <NUM> (holes h2, h4, h5) and calculates the areas of the regions h2c, h4c, h5c surrounded by the detected contours as convex hulls, as illustrated in <FIG>.

When a plurality of regions h2c, h4c, h5c surrounded by the contours are detected as in the case of the non-matching section <NUM>, the areas are obtained in order according to the detection order or the like as appropriate. Then, the contour of the one having the largest area is left. When the areas are all equal, it is possible to take measures such as leaving the contour of the first one detected.

In the non-matching section <NUM> illustrated in <FIG>, the regions h2c, h4c, h5c surrounded by three contours are detected, but when it is assumed that the region h5c surrounded by the contour has the largest area, the non-matching section <NUM> (hole h5) illustrated in <FIG> is left as the feature point P, and the holes h2, h4 are erased (thinned out).

<FIG> is a diagram for explaining the concept of the checking process for the determination candidate model. <FIG> is a view illustrating an example of the display screen. <FIG> is a diagram for explaining holes h and feature points P on the workpiece W.

As illustrated in <FIG>, the checking process (step S118) is executed on the non-matching sections <NUM>, <NUM> that have undergone the thinning process. In the checking process, the determination candidate model <NUM> of the combination pattern made up of the non-matching sections <NUM>, <NUM> after thinning is superimposed on each of the matching sections <NUM> to <NUM> described with reference to <FIG> for comparison.

When the same difference as the difference (non-aligned hole) as described with reference to <FIG> is detected as a result, it is NG (No in step S118). For example, when the determination candidate model <NUM> before thinning has differences indicated by the holes h1b, h5b, and the determination candidate model <NUM> after thinning has a difference indicated by two holes h1b, h5b, it is NG. In this case, of the erased holes h2, h4, for example, a hole having an area next to the area h5c surrounded by the contour (e.g., hole h4) is restored as the feature point P, and the checking process is executed again in step S118.

On the other hand, when a difference is detected that is different from the difference (non-aligned hole) as described with reference to <FIG>, it is OK (Yes in step S118). For example, when the determination candidate model <NUM> before thinning has differences indicated by two holes h1b, h5b, and the determination candidate model <NUM> after thinning has differences indicated by three holes h1b, h4b, h5b, it is OK.

By the determination unit <NUM> performing the thinning process and checking process thus described, it is possible to adopt, for example, the determination candidate model <NUM> made up of the holes h1b, h4b, h5b with the hole h2b thinned out, from the original determination candidate model <NUM> made up of the holes h1b, h2b, h4b, h5b.

In this case, the feature points P (holes h1, h4, h5) of the original model <NUM> appear, and hence the process shifts to step S103 above. In step S103, as illustrated in <FIG>, the image of the original model <NUM> of the workpiece W is displayed on the display screen of the display <NUM> while three feature points P (holes h1, h4, h5) corresponding to the holes h1b, h4b, h5b of the determination candidate model <NUM> after thinning are highlighted.

In the workpiece display assistance device <NUM> of the second embodiment, the same effect can be achieved as the effect in the first embodiment that the operator M can be provided with a good view of the feature point P on the workpiece W that serves as a mark, whereby errors in setting the workpiece W can be prevented as much as possible.

According to the second embodiment, it is particularly useful when many determined feature points P appear, such as when many holes h are present in the workpiece W, as illustrated in <FIG>. Even in such a case, as illustrated in <FIG>, the feature points P of the workpiece w can be thinned out for display, so that errors in setting the workpiece W can be prevented as much as possible.

By preventing errors (misplacement) in the setting the workpiece W, for example, it is possible to reduce the occurrence of alarms during processing and reduce delays in the processing time caused by such alarms. The operator M can set the workpiece W without hesitation while the generation of defective products is reduced effectively, so that it is possible to shorten the time required for setting and improve work efficiency.

Claim 1:
A workpiece display assistance device comprising:
a first model generation unit (<NUM>) configured to obtain shape data of a workpiece to be set and generate an original model (<NUM>) of the workpiece based on the shape data;
a second model generation unit (<NUM>) configured to generate a plurality of matching models (<NUM>-<NUM>) by rotating and/or inverting the original model (<NUM>);
an extraction unit (<NUM>) configured to match each of the plurality of matching models (<NUM>-<NUM>) to the original model (<NUM>) and extract aligned portions of the respective matching models (<NUM>-<NUM>) with the original model (<NUM>) as matching sections;
a model creation unit (<NUM>) configured to create a matching aggregate model (<NUM>) by aggregating the matching sections extracted in a state conforming to the original model (<NUM>) and synthesizing the matching sections;
characterized in that the display assistance device further comprises:
a determination unit (<NUM>) configured to compare the original model (<NUM>) with the matching
aggregate model (<NUM>) and make a determination of a feature point on the workpiece (W), wherein said feature point refers to a location representing a feature that serves as a mark when setting the workpiece (W), and wherein said feature point is a singular portion where there is no rotational or inverse symmetry;
a display unit (<NUM>) configured to display the feature point in a highlighted manner, along with an image of the workpiece, on a display screen of a display device based on a determination result of the determination unit (<NUM>) so as to enable an operator (M) to set the workpiece (W) in a correct orientation using the highlighted feature point (P) as a mark.