ELIMINATION WORK SIMULATOR APPARATUS

Abstract: An elimination work simulator has not only a difference operation processor (122) to attain a difference between work object space data and work space data but also a product operation processor (121) to execute a product operation therebetween. Elimination work space data outputted from the product operation processor is sequentially stored; whereas, at least the latent data of the work object space data outputted from the difference operation processor is stored so as to minimize the amount of data to be preserved. When displaying the work object space data, an animation display thereof can be conducted in the same or opposite direction of the order of the work operations by appropriately using the two kinds of data.

Description: The invention relates to an elimination work simulator, and in particular, to an elimination work simulator capable of keeping data of a shape or contour as a final result of the work and data of a shape as an intermediate result of the work. A conventional elimination work simulator apparatus has been described in pages 120 to 147 of the Computer Graphics And Image Processing 19, (1982). In this article, there is described an example in which a space data format called an octtree is applied to a numeric control (NC) work simulator. Although a method of computing a contour or shape as a result of a work has been described, a preservation or storage of the simulation result, particularly, the handling of information about intermediate results of the simulation has not been described. In addition, a conventional elimination work simulator apparatus has been described also in pages 15 to 20 of the ACM Siggraph '86, Volume 20, Number 4. In this article, an operation of sets and a display operation are achieved by use of a data store method called DEXEL; however, since the result of the operation of sets is updated for each work operation in this processing, the intermediate results of the simulation are not preserved. Referring now to the flowchart of FIG. 20, a flow of processing effected in a conventional elimination work simulator apparatus will be described. In the description, it is assumed that, when a work is effected in m work operation units of a working or machining device (cutting tool), work object space data associated with the work object or workpiece to be worked in a j-th work operation unit is represented as W j-1 and work space data is expressed as T j . First, in step H20, an initial value W₀ of the work object space data is supplied to work object space data store means. Next, in step H22, operation data is inputted to each work operation unit so as to generate working space data T j . Furthermore, step H25 effects an operation to attain a difference between the work object space data W j-1 associated with the preceding work and the work space data T j generated in the step H22 and then step 26 updates the result of the step H25 to attain new work object space data; thereafter, the result of the update is displayed in step H28. In general, when effecting a visual check on the appearance or state of a work object of an elimination work conducted by an elimination work simulator, if the display indicates a failure of work object space data gathered up to a certain work operation unit, it is desired to determine, in a short period of time, in which one of the work operation units work accomplished up to this point the failure has been caused and to display the work state for each work operation unit. In order to satisfy such a requirement, it is naturally necessary that the changing state of the work object in the elimination work simulator can be continuously displayed in the forward direction of the work operation as well as in the backward direction thereof; furthermore, that the work state of an arbitrary work operation unit can be directly displayed. However, in the conventional elimination work simulator described above, only the forward-directional processing is effected and hence in order to redisplay a state of a work object in a work operation unit i which precedes the present work operation unit j, the entire processing ranging from the first work operation unit to the (i-1)-th work operation unit is required to be executed again. In consequence, the prior art apparatus is attended with a problem that it takes a long period of time to redisplay the state of the work object in the work operation unit i. As a simple method to solve this problem, there is considered a method in which the work object space data W j attained in each work operation unit is preserved so as to display the whole or a part of the data when necessary. In this case, there arises a problem that the capacity of the storage required for this operation is considerably increased. The object of the invention is to provide an elimination work simulator apparatus capable of preserving, in a small amount of data, workpiece space data and elimination work space data in an arbitrary work operation unit and to provide an elimination work simulator apparatus with a small amount of data preservation capable of effecting at a high speed a display of workpiece space data in an arbitrary work operation unit and an animation display of the state of a workpiece under a work in the forward and backward directions. The object is solved according to the features of claim 1. Further developments and advantageous features are defined in the dependent claims 2 - 5. According to the invention, a set operation processor of an elimination work simulator comprises, in addition to a difference operation processor similar to one utilized in the prior art, a product operation processor and an elimination work space data storage preserving a result of a product operation. The elimination work simulator apparatus includes not only a processor to compute a difference between workpiece space data and working space data but also a processor to compute a product therebetween; furthermore, the latest workpiece space data as a result of the difference operation and the elimination work space data as a result of the product operation are stored in the respective storages. That is, in place of an operation to preserve a great amount of workpiece space data associated with all work operation units, there is preserved a small amount of data including the latest workpiece space data and the elimination work space data of each work operation unit which are mutually prime space data; in consequence, the amount of the preserved data is minimized. In addition, since two kinds of data described above are preserved as work information, workpiece space data of an arbitrary work operation unit can be displayed at a high speed by use of the data thus preserved; moreover, an animation display can be achieved at a high speed in the forward and backward directions by repeatedly effecting the display of the arbitrary work operation unit. The present invention will be apparent from the following detailed description taken in conjunction with the accompanying drawings in which: FIG. 1 is a block diagram schematically showing the configuration of an embodiment according to the present invention; FIG. 2 is a flowchart useful to explain the operation of the embodiment of FIG. 1; FIGS. 3 to 5 are schematic diagrams for explaining data of work processes in a case of a numeric control cutting work simulator; FIGS. 6 and 7 are schematic diagrams for explaining data of work processes in a case of an electric discharge machining simulator; FIG. 8 is a diagram showing a configuration example of means for storing elimination work space data in a case where an external file is employed; FIG. 9 is a diagram showing a configuration example of means for storing eliminatin work space data in a case where an internal memory is employed; FIG. 10 is a schematic diagram useful to explain the operation of a graphic display processor; FIG. 11 is a block diagram showing the configuration of an alternative embodiment according to the present invention in a case where the contour model is represented by use of an octtree; FIG. 12 is a schematic block diagram showing the configuration of an alternative embodiment according to the present invention in a case where the contour model is constituted by use of the boundary representation (B-rep); FIGS. 13 and 14 are flowcharts useful to explain operations of the embodiments of FIGS. 11 and 12, respectively; FIG. 15 is a flowchart for explaining the operation of the embodiment of FIG. 12 in a case where the graphic display is provided with a Z buffer; FIG. 16 is block diagram showing the configuration of an alternative embodiment according to the present invention in which intermediate results can be preserved; FIG. 17 is a schematic diagram showing a configuration example of means for storing work object space data in the embodiment of FIG. 16; FIGS. 18 and 19 are diagrams useful to explain data in machining work processes in the embodiment of FIG. 16; and FIG. 20 is a flowchart for explaining the operation of a conventional apparatus. Referring now to the drawings, description will be given of an embodiment according to the present invention. FIG. 1 is a block diagram showing a configuration example of an elimination work simulator as an embodiment according to the present invention. The constitution of FIG. 1 includes initial value data 100 of a work object space, data 101 representing a work operation, a work space data generator 11, a set operation processor 12, elimination work space data store means 131 as the second store means, work object space data store means 132 as the first store means, a graphic display processor 14, and a system controller 15 to control these components above. In addition, the set operation processor 12 comprises a product operation processor 121 and a difference operation processor 122. Furthermore, the space data to be handled here is of an n dimensions (n ≧ 2). FIG. 2 is a flowchart for explaining the operation of the embodiment of FIG. 1. Referring next to FIG. 2, description will be given of a flow of the processing in the elimination work simulator of the embodiment of FIG. 1. Assume here that when a work is effected through m work operation units of a working or machining device, work object space data associated with a work object in the j-th work operation unit is W j-1 , work space data corresponding to a space through which the machining device passes is represented as T j , and elimination work space data associated with the elimination of the work object space by the machining device is C j , where j indicates an order number of the work operation unit assigned to the machining operation j. (1) First, in step D20 of FIG. 2, a value W₀ of the initial data 100 associated with the work object space of FIG. 1 is inputted to the work object space data store means 132. (2) Next, in step D21, control is transferred to processing related to each work operation unit j. First, in step D22, operation data of the work operation unit j is inputted to generate work space data T j . (3) Thereafter, in step D23, a product is computed between the work object space data W j-1 and the work space data T j produced in the step D22, and then the product result is outputted to the elimination work space data store means 131 for an addition of the data. In addition, in parallel with the processing of the step D23, a difference is computed between the work object space data W j-1 and the work space data T j generated in the step D22 so as to assume the result to be the work object space data W j of the present work operation unit. (4) Furthermore, in step D26, the content of the work object space data W j-1 of the preceding work operation unit in the work object space data store means 132 is updated to be the content of W j thus produced. Thereafter, the value of j is updated in the step D21 and then control is passed to processing related to the next work operation unit. When the processing above is completed for all work operation units, the work object space data store means 132 is as a result loaded with the final work result W m , whereas the elimination work space data C j (j=1, m) of all work operation units are accumulated in the elimination work space data store means 131. (5) In step D27, the worked or machined state of the work object is displayed by use of the data stored in the two store means. Moreover, if a step D28 to display W j is added so as to follow the step D26, the display processing is also achieved together with the set operation. Next, description will be given of a case where a numeric control machining work is simulated by use of the elimination work simulator of FIG. 1. In this situation, the work object space is a contour of a raw material or workpiece, the work operation unit corresponds to a numeric control instruction block, a machining device is a machine tool, and the work space is associated with a tool envelope body comprising a space through which the tool passes during the 1-block operation. FIG. 3 shows a data example associated with a set operation processing in the apparatus of the embodiment. For simplification of explanation, it is assumed here that the contour as the object of the work is of two dimensions and the number of the working or machining operations is four. Referring next to FIG. 3, description will be given of the processing in the apparatus of the embodiment. In (a) to (e) of FIG. 3, W₀ is the processing data 100 of the work object space of FIG. 1 and represents the initial data of the contour of the raw material. Next, control is passed to a work operation of block 1. First, the tool locus data T₁ generated by the work space data generator 11 and W₀ are respectively subjected to the product operation W₀∩T₁ and the difference operation W₀ - T₁ in the product operation processor 121 and the difference operation processor 122 of FIG. 1. The result of the product operation is then supplied to the elimination work space data store means 131; whereas the result of the difference operation is outputted as the latest work object space data to the work object space data store means 132. The processing associated with the second and subsequent blocks is accomplished by repeatedly effecting the operation above. As a result, the elimination work space data of FIG. 4 is stored in the elimination work space data store means 131; whereas the final work result of FIG. 5 is accumulated in the work object space data store means 132. Next, description will be given of a case where the elimination work simulator is applied to an electric discharge machining. In this case, the work unit is to be effected in a fixed period of time beforehand determined and the work sapce corresponds to a space occuplied by the tool electrode and the gap between the tool electrode and the raw material as shown in FIG. 6. In (a) and (b) of FIG. 7, there are shown an operation example of the simulation of the electric discharge machining effected from time i to time i+1. Assuming in (a) of FIG. 7 that the work object space as a result of the cutting operation of the work space T i at time i is W i and that the work space T i+1 effects a machining operation on W i at time i+1, the product between W i and T i+1 is denoted as the elimination work space data C i+1 and the new work object space is represented as W i+1 . Next, description will be given of two embodiments associated with the elimination work space data store means 131 of FIG. 1. FIG. 8 shows an embodiment of the elimination work space data store means including a directory file 59 and m elimination work space data files 60. In this embodiment, the respective elimination work space data C j (j=1, m) are controlled by use of the directory file 59. Since an external storage is adopted in this embodiment, there is attained an effect that the system can cope with an increased amount of data, for example, in a case where a great amount of contour data is produced. In addition, FIG. 9 shows an alternative embodiment of the elimination work space data store means 131 implemented in a memory integrated in a computer. In this embodiment, there is disposed a table area 61 for controlling the elimination work space data such that pointers to a data area 62 representing the respective contour data are disposed in the table area 61. Although the amount of data to be processed is limited in this embodiment, there is attained an effect that the data can be accessed at a high speed when the data amount is small. Next, an operation example of the graphic display processor 14 is shown in FIG. 10 in which the worked state of the first block is displayed again by use of the elimination work space data of FIG. 4 and the work object space data of FIG. 5. This display can be achieved by computing the sum of sets between the final work result W₄ and the elimination work space data C₂, C₃, and C₄ associated with the first and subsequent blocks. Next, description will be given of the set operation processor according to the present invention and an alternative embodiment of the graphic display processor. FIG. 11 is a block diagram showing a configuration example including the set operation processor 12 in which the contours associated with the work object space data and the work space data are represented by use of an octtree model, the two data store means 131 and 132, and the graphic display processor 14. In this embodiment, the set operation processor 12 includes an octtree product operation processor 30 and an octtree difference operation processor 31, the two data store means 131 and 132 of FIG. 11 are respectively an octtree elimination work space data store means 32 and an octtree work object space data store means 33, and the graphic display processor 14 comprises an octtree union operation processor 34 and an octtree display processor 35. Incidentally, the octtree model has been described, for example, in pages 129 to 147 of the Computer Graphics And Image Processing 19, (1982). Referring now to the flowchart of FIG. 13(a), description will be given of a flow of the processing in a case where the display is effected in the forward direction by use of the graphic display processor. (1) First, j=1 is set in step E40, and then in step E41, the sum of sets or union is computed between the final work result W m and the elimination work space data C i (i=1, m) associated with the work operation units 1 to m by use of the octtree union operation processor 34 of FIG. 11, and then the result of the union is displayed in step E42. The display operation is accomplished by the octtree display processor 35, thereby displaying the first work object space data. (2) Next, the value of j is updated to be j=2 in the step E40 so as to compute the sum of sets between the final work result W m and the elimination work space data C i (i=2, m) associated with the work operation units 2 to m, and then the result is displayed, thereby displaying the work result of the first work operation. Subsequently, the operations above are repeatedly achieved to implement the forward-directional display. Next, referring to the flowchart of FIG. 13(b), description will be given of a flow of processing of the backward-directional display. (1) First, in step E45, the final work result W m accumulated in the octtree work object space data store means 33 is displayed by use of the octtree display processor 35. (2) Next, in step E47, the union is computed between the elimination work space data C m of the work operation unit m stored in the octtree elimination work space data store means 32 and the final work result W m , and then the result of the union is displayed by use of the octtree display processor 35, thereby displaying the work object space data W m-1 of the (m-1)-th operation. (3) Subsequently, the value of j is updated in the step E46, and then in step E47, the unions of W m and C m above and the elimination work space data C m-1 of the work operation unit (m-1) are respectively computed so as to display the result in the step E48, thereby displaying the work object space data W m of the (m-2)-th work operation. Subsequently, the backward-directional display can be implemented by repeatedly achieving the operations above. In this embodiment, there is required the processing to compute the sum of sets between the octtree work object space data W m and the octtree elimination work space data C j (j=1, m); however, since W m and C j (j=1, m) are spaces which are mutually prime, the processing to attain the union can be accomplished at a very high speed. In consequence, the animation display in the forward and backward directions can be effected at a high speed. Next, description will be given of an alternative embodiment according to the present invention in a case where the contour data is represented by use of the boundary representation (B-rep). The boundary representation, B-rep has been described, for example, in pages 88 to 90 of the Methodology of Automatic Design written by Norio Okino (Yokendo, 1982). FIG. 12 shows a configuration example of the contour data according to the boundary representation in which the set operation processor includes a B-rep product operation processor 36 and a B-rep difference operation processor 37, the data store means comprises a B-rep elimination work sapce data store means 38 and a B-rep work object space data store means 39, and the graphic display processor 14 includes a display patch generator 40 to generate a group of display patches from B-rep data, a patch selector 41 to select a group of patches therefrom for the display, and a patch display processor 42. Referring now to the flowchart of FIG. 14(a), description will be given of an operation exmaple in a case where the forward-direction display is accomplished in an elimination work simulator having the apparatus of FIG. 12. (1) In steps F50 and F51, the final work result W m and the elimination work space data C j (j=1, m) in the boundary representation are converted into groups of display patches. The conversion is effected by the display patch group generator 40 of FIG. 12. (2) Next, j=1 is set in step F54. In the subsequent step F52, the sum of sets is computed between W m and C i (i=j, m) in the form of converted patch groups such that a group of patches constituting the surfaces of the space represented by the sum of sets is selected by the display patch group selector 41 of FIG. 12. The selected patches are subjected to a concealed surface processing so as to be displayed in the patch display processor 42. However, since W m and C i (i=j, m) are spaces which are mutually prime, the operation to compute the sum of sets is not actually necessary, namely, surface patch data of the respective spaces need only be appropriately selected. (3) In the step F54, the value of j is updated so as to repeatedly achieve the operations above, thereby effecting the forward-directional display. FIG. 14(b) shows an operation example of the backward-directional display. In this flowchart, the processing from the step F50 to the step F53 to obtain a group of display patches through a conversion and to select a display patch group therefrom for the display thereof is the same as that of FIG. 14(a). For the backward-directional display, the update method of the value of j in the step F55 of FIG. 14(b) is reversed as compared with that employed in the step F54 of FIG. 14(a). The method of computing the sets is here also the same as that used in FIG. 14(a). According to the embodiment, since the worked or machined state is traced only through an appropriate selection of surface patches associated with W m and C i (i=j, m) which are mutually prime, the animation display in the forward and backward directions can be accomplished at a high speed. FIG. 15 is a flowchart showing a backward directional display in a case where the graphic display processor includes a Z buffer so as to effect a concealed surface erase processing mechanism. According to the embodiment, owing to the characteristic of the Z buffer concealed surface processing method like that described in pages 186 to 188 of the Basic Graphic written by Kawai (Shokodo, 1985), an image as a result of the union operation can be automatically attained only by sequentially superimposing C i (i=m,j) onto W m in the drawing operation, the animation display of the worked state in the backward direction can be achieved at a very high speed. FIG. 16 is a block diagram showing an alternative embodiment according to the present invention in a case where not only the final work result W m but also the work object space data as intermediate results of the work or machine operation are preserved. In the embodiment of FIG. 16, as compared with the work object space data store means 132 of FIG. 1, there is included work object space data store means 133 designed with considerations of an accumulation of several work object space data items W i as intermediate work results. FIG. 17 shows an embodiment of a store method of storing the work object space data items W i in which several work object space data W i in the work object space data store means 133 are controlled by means of a directory file 62. In addition, FIG. 18 shows data finally accumulated in the work object space data store means 133 when the processing similar to that described in conjunction with FIG. 3 is achieved by use of the simulator of FIG. 15 so as to preserve the work object space data of the second block. Furthermore, FIG. 19 is a display example of the work object space at an intermediate point of the machine work, the display implemented by use of the accumulated data. It can be seen from FIG. 19 that the display of W₁ can be accomplished by use of C₂ selected from the elimination work space data C j (j=1, 4) of FIG. 4 and the work object space data W₂ of FIG. 18. In this embodiment, as compared with a case where the work object space data at intermediate points of the work is not preserved, the number of elimination work space data items as an object of the display is decreased; consequently, the display operation can be accordingly effected at a higher speed. In addition, when compared with a case where W j of all work operation units are to be preserved, the capacity of the storage necessary for the operation is reduced, and hence there is implemented a system advantageous in two points, namely, the speed and the data amount, which leads to an effect that the animation display in the forward and backward directions can be accomplished at a very high speed.

Claims: An elimination work simulator in which a work is achieved through m operation units comprising: a first set operation processor (122) for attaining a difference space between n-dimensional (n>2, n = integer) work piece space data corresponding to workpieces in predetermined work operation units j (j = 1, 2, ..., m) and n-dimensional work space data T j corresponding to a space through which a cutting tool passes in the work operation units j; first store means (132) for storing therein the difference space as new workpiece space data W j ; a second set operation processor (121) for attaining a product space between the work piece space data W j-1 and the work space data T j ; second store means (131) for sequentially storing and retaining therein the product space, as elimination work space data C j for all of the m operation units, and a graphic display processor (14) for displaying work piece space data W k-1 in an arbitrary work operation unit k (k ≦ j) by use of the new work piece space data W j stored in the first store means (132) and the elimination work space data C k to C j stored in the second store means (131) and further serving to display in succession the work piece data for a sequence of operation units. Elimination work simulator according to claim 1, characterized in that the set operation processors (121, 122), the store means (131, 132) and the graphic display processor (14) are respectively octtree apparatuses. Elimination work simulator according to claim 1 or 2, characterized in that the work space data is represented by use of a boundary representation solid model. Elimination work simulator according to claims 1 - 3, characterized in that an animation display of the work piece space data W j is effected in the forward order of the operation units. Elimination work simulator according to claims 1 - 4, characterized in that an animation display of the work piece space data W j is effected in the reverse order of the operation units.

Inventors: ISHIDA, TOMOTOSHI, ITO, KUMIKO, KAWASHIMA, YASUMASA, NONAKA, SHIRO
Applicants: HITACHI, LTD.
Application year: 1988
Main classification: G05B19
IPC codes: G05B19