The present invention relates to a technology for creating a numerical control (NC) program using computer-aided-design (CAD) data, such as a product shape and a workpiece shape, with an automatic selection of an optimum workpiece corresponding to a product.
In a machine tool on which an NC unit (numerical control unit) is mounted, a workpiece is machined into a desired product shape by executing the NC program. To create the NC creation program for creating the NC machining program, recently, an automatic programming technique using a microcomputer referred to as an automatic programming apparatus has been frequently used.
The primitive automatic programming apparatuses were not connected to the CAD data, and hence, it was necessary to perform programming, while watching the machining shape in a drawing or the like. However, recently, some techniques relating to the automatic programming apparatus that creates the NC machining program by the CAD data have been proposed.
For example, in Japanese Patent Application Laid-open No. 2002-189510, feature data of a machined product is extracted from the CAD data to set a machining process and a machining area for each machining process, material data and a machining model for each machining process are created, the created machining process data and machining model data are stored, tool path data is created based on the machining process data, workpiece data, machining model data, tool data, and cutting condition data, to create virtual workpiece-shape data after completing the respective processes, as well as creating fabrication information based on the created process data, workpiece data, tool path data, and virtual workpiece-shape data.
In Japanese Patent Application Laid-open No. 2002-268718, when a machining path for machining a workpiece based on a three-dimensional CAD data of a part is created, machining information for all portions to be machined in a shape indicated by the three-dimensional CAD data is extracted, the extracted machining information is edited to determine a machining process, and the machining path is created based on the determined machining process.
In such type of automatic programming apparatus, it is desired to automatically select an optimum workpiece corresponding to a product easily.
In Japanese Patent Application Laid-open No. H10-207523, some workpiece-shapes expressed by a three-dimensional solid model are stored in a preparation workpiece-shape database, and workpiece-shape data specified by an operator is taken out from the preparation workpiece-shape database, deformed to a size instructed by the operator, and stored in the workpiece-shape database.
In Japanese Patent Application Laid-open No. H10-207523, however, since the operator selects the workpiece from the workpiece-shape data, long time is required for selecting the work, thereby deteriorating the working efficiency.
The present invention has been achieved in order to solve the above problems, and it is therefore an object of the invention to provide an automatic programming method and device that can automatically select optimum workpiece data from the workpiece database, thereby enabling efficient programming operation.
An automatic programming method according to one aspect of the present invention, which is for selecting workpiece data from a workpiece database in which a material, a shape, and a dimension of a workpiece are registered, creating a workpiece model for lathe turning based on the selected workpiece data, and creating a program for controlling a numerical control device based on a product model for lathe turning and the created workpiece model, includes workpiece selecting including selecting workpiece data involving a product shape and having a smallest diameter for lathe turning around a turning axis from the workpiece database, by comparing dimension data of the workpiece model with dimension data of the product model in a state in which the product model is arranged on the turning axis and the workpiece model is arranged so that a center axis of each workpiece matches a center of the turning axis, and selecting, when there is a plurality of workpiece data involving the product shape and having the smallest diameter for lathe turning around the turning axis, workpiece data having a length equal to or longer than the product shape and a shortest length; and creating the workpiece model for lathe turning based on the selected workpiece data.
According to the present invention, minimum workpiece data involving the product shape is automatically selected from the workpiece database, in the state that the product model is arranged on the turning axis for turning and the work model for turning created based on the workpiece data is arranged so that the central axis of each work matches the center of the turning axis for turning. As a result, optimum workpiece data can be selected in the state that a product and a work are actually arranged on a machine.
Exemplary embodiments of an automatic programming method and an automatic programming apparatus according to the present invention are explained below in detail with reference to the accompanying drawings.
The automatic programming apparatus 100 can be applied to a two-spindle machine tool having two spindles, that is, a main spindle and a sub-spindle, and a one-spindle machine tool having only the main spindle. However, the automatic programming apparatus applied to the two-spindle machine tool having twp spindles, the main spindle and the sub-spindle, will be explained in the first embodiment. The automatic programming apparatus applicable to both the two-spindle machine tool and the one-spindle machine tool will be explained in the second embodiment.
The automatic programming apparatus 100 is applicable to the machine tool that performs lathe-turning for rotating a workpiece and shaving it in a round shape, boring for rotating the workpiece and boring therein, milling for fixing the workpiece and rotating an edged tool to shave the work, and surface machining. The automatic programming apparatus 100 is also applicable to combined machining in which lathe-turning and milling are combined.
In
The microcomputer, in which the automatic programming apparatus is installed, includes a display apparatus 20, an input unit 21 such as a keyboard and a mouse, and an output unit 22 such as a printer, and the microcomputer is connected to external equipment such as the NC unit 200 via the communication interface 23.
A program unit, which is the basic component of the automatic programming apparatus 100, includes a product-shape-input processing unit 10, a workpiece-shape-input processing unit 11, a jig-setting processing unit 12, a registration processing unit 13, a process-division processing unit 14, a process-expansion processing unit 15, a tool-selection processing unit 16, a non-expandable-shape-editing processing unit 17, a program-editing processing unit 18, and a program-expansion processing unit 19.
The product-shape-input processing unit 10 displays a product shape input screen for selecting the product shape data (product model) by an operator, and when the operator selects the necessary product shape data from a plurality of product shape data formed of the product shape database 1 or three-dimensional solid model data stored in another optional memory, the product-shape-input processing unit 10 executes processing such as three-dimensionally displaying the selected product shape data.
The workpiece-shape-input processing unit 11 displays a workpiece-shape input screen for selecting the workpiece-shape data (workpiece model) by the operator, allows the necessary workpiece-shape data to be selected automatically or by the operator from the plurality of workpiece-shape data formed of the product shape database 1 or the three-dimensional solid model data stored in another optional memory, and executes processing such as three-dimensionally displaying the selected workpiece-shape data. The workpiece-shape-input processing unit 11 has a partial-workpiece setting function for creating thickened workpiece data used for casting and the like based on the product shape data.
The jig-setting processing unit 12 displays jig models formed of a chuck and a claw, and workpiece models, prepares a plurality of jig arrangement patterns corresponding to the workpiece-shapes, determines the jig arrangement by allowing the operator to select a jig arrangement pattern, and calculates a holding position and a holding diameter, to transmit the information to the NC side.
The registration processing unit 13 performs processing for automatically arranging the product model in the workpiece model held by a first chuck at a first process (step performed by the main spindle). The registration processing unit 13 also performs processing for automatically arranging the product model in the workpiece model held by a second chuck at a second process (step performed by a sub-spindle).
The process-division processing unit 14 performs process division processing at the time of machining by the two-spindle machine tool having two spindles, the main spindle and the sub-spindle, and process division processing at the time of machining by the one-spindle machine tool having only the main spindle. In the case of the two-spindle machine tool, the dividing position between the first process performed by the main spindle and the second process performed by the sub-spindle is specified by an outer diameter and an inner diameter. In the case of the one-spindle machine tool, the dividing position of the first process for performing machining by holding one end of a workpiece model by the main spindle, and the second process for performing machining by holding the other end of the workpiece model by the main spindle, is specified by an outer diameter and an inner diameter, respectively.
The process-expansion processing unit 15 executes processing for breaking down a series of machining operations including lathe-turning, point machining, surface machining, and chamfering, referred to as machining modes, into machining units in which continuous machining is performed with the same main spindle and the same tool.
The tool-selection processing unit 16 performs tool determination processing for selecting an optimum tool for each processing position (machining unit) from the tool database 3, and also determines cutting condition corresponding to the tool.
The program-expansion processing unit 19 creates an NC creation program described by the predetermined language based on a combination of a plurality of process-expanded machining units, the determined tool information, and the cutting condition.
The non-expandable-shape-editing processing unit 17 performs editing workpiece for converting the non-expandable shape, which cannot be automatically expanded into the machining unit in the process expansion processing, to some machining unit. The program-editing processing unit 18 is for performing the editing processing of the created NC creation program.
The automatic programming apparatus 100 is connected to the NC unit 200 via the communication interface 23 in
A menu selection main screen 8 displayed first when activating the automatic programming apparatus 100 will be explained.
As shown in
The menu display unit 6 includes a SET PRODUCT SHAPE button 6a, a SET WORKPIECE SHAPE button 6b, a SET FIXTURE button 6c, an ADJUST POSITION button 6d, a DIVIDE PROCESS button 6e, an EXPAND UNIT button 6f, an EDIT UNIT button 6g, a CREATE PROGRAM button 6h, and the like. The SET PRODUCT SHAPE button 6a is a button for shifting to a product shape setting mode, wherein processing such as reading a 3D-CAD model of the product shape is executed. The SET WORKPIECE SHAPE button 6b is a button for shifting to a workpiece-shape setting mode, wherein the workpiece-shape to be machined is selected and set. The SET FIXTURE button 6c is a button for shifting to a fixture setting mode, wherein a fixture (chuck, claw) for holding the workpiece is set. The ADJUST POSITION button 6d is a button for shifting to a registration mode, wherein positioning of the product and the workpiece is executed. The DIVIDE PROCESS button 6e is a button for shifting to a process dividing mode, wherein a dividing position of the first process and the second process is set. The EXPAND UNIT button 6f is a button for shifting to a unit expanding mode, wherein automatic expansion of the machining unit is executed from the set information. The EDIT UNIT button 6g is a button for shifting to a unit editing mode, wherein editing of the expanded machining unit is executed. The CREATE PROGRAM button 6h is a button for shifting to a program creating mode, wherein the NC creation program is created from the expanded and edited unit.
The menu display unit 6 includes a menu changeover button 6k. Other display menus shown in
In the automatic programming apparatus, each process is normally executed according to the procedure shown in
(1) Input of Product Shape (Step S100)
The product shape input processing is started by turning ON the SET PRODUCT SHAPE button 6a on the menu selection main screen 8 shown in
An operator operates the input unit 21, with the product shape read screen 30 for selecting the product shape data being displayed, to select three-dimensional CAD data (product model) corresponding to the product in the following manner.
First, the operator presses a READ PRODUCT SHAPE button 31 positioned on the leftmost side of a plurality of buttons arranged below the product shape read screen 30. As a result, a product shape-reading dialog 32 is displayed on the left side and a three-dimensional view 33 for displaying the product shape (product model) corresponding to the selected three-dimensional CAD data in a wire frame format is displayed on the right side.
The product shape-reading dialog 32 has a list box 34 for displaying a list of CAD files registered in the product shape database 1. When the operator has selected an optional file in the list box 34, a preview of the product shape corresponding to the selected file is displayed on the three-dimensional view 33. In the preview, respective dimensions of the product in the X, Y, and Z directions are displayed on the three-dimensional view 33. Respective three-dimensional CAD data has shape information and color information (display color), and attribute data relating to the machining is added to the respective pieces of shape information. The attribute data includes screw, coarseness signs, grinding off, chamfering, chamfering of holes, hole information (drill, reamer, end mill, boring, and tapping), part number, material, names of articles, and the like. Adjustment (change of machining order) of the process expansion result is executed by the attribute data. The CAD data includes the color information (display color), and the roughness of the finished surface can be identified according to the display color.
The current directory is displayed on a directory display unit 35 positioned above the list box 34 of the file list. The file list in the directory displayed on the directory display unit 35 is displayed in the list box 34. When the operator presses a CHANGE FOLDER button 36, a folder-changing dialog (not shown) is displayed, and the current directory can be changed by operating the dialog.
When the operator presses a SELECT button 37, the CAD file selected in the list box 34 is read into a storage area of the automatic programming apparatus, an image of the product corresponding to the read CAD file is created, and the created product shape (product model) is displayed on the three-dimensional view 33. At the time of display, respective dimensions of the product model in the X, Y, and Z directions are displayed on the three-dimensional view 33. Furthermore, an automatic adjustment mode at the time of creating the image of the product shape is included, and if the operator selects YES in item 29 in this automatic adjustment mode, the direction of the product and the display position of the product are automatically adjusted on the three-dimensional view 33, in the product shape creation processing.
One or more directories are provided inside or outside the computer as an area for the product shape database 1, so that an optional three-dimensional CAD data can be newly registered in these directories, or already registered product shape data can be changed and re-registered.
(2) Setting of Workpiece-Shape (Step S101)
The workpiece-shape setting processing is started by turning ON the SET WORKPIECE SHAPE button 6b on the menu selection main screen 8 shown in
A workpiece setting menu 9a is displayed on a workpiece-shape setting screen 9 shown in
The WORKPIECE DATABASE button 9b is a button for performing automatic selection of the work, described below. The SET PARTIAL WORKPIECE button 9c is a button for creating a workpiece model in which a product model used for casting or the like is partially thickened. The READ WORKPIECE MODEL button 9d is a button for reading workpiece data registered in the workpiece-shape database 2 or optional workpiece data stored in an external storage unit to set the workpiece data as a workpiece-shape. The SET WORKPIECE MATERIAL button 9e is a button for manually setting the material. The EDIT button 9f is a button for registering necessary workpiece data in the workpiece-shape database 2 or editing the registered workpiece data. The CHANGE MACHINING ALLOWANCE button 9g is a button for changing the set value for a machining allowance of an end face.
When the operator presses the WORKPIECE DATABASE button 9b, a workpiece database dialog 300 is displayed. The dimensions of the maximum outer diameter of the product shape in the X, Y, and Z directions, determined by the product shape input processing executed at step S100 are displayed in a product-shape-dimension display section 301 in the workpiece database dialog 300.
The workpiece-shape data registered in the workpiece-shape database 2 is displayed in a workpiece-list display section 302 in the workpiece database dialog 300. A workpiece having a minimum diameter including the outer diameter of the product is selected from the displayed workpiece-shape data, and the selected workpiece is highlighted as shown by reference sign 303. In this case, a round bar is selected by the operator as the workpiece-shape, the workpiece-shape data of the round-bar workpiece is displayed, and the workpiece having the minimum diameter including the outer diameter of the product is selected from the round-bar workpiece data, highlight-displayed. When the workpiece-shape is not specified, a workpiece having the minimum diameter including the outer diameter of the product is selected from all workpiece-shape data, such as round-bar work, square work, and hexagonal work, registered in the workpiece-shape database 2.
When the operator does not like the automatically selected and highlight-displayed workpiece data, the operator appropriately performs sorting by items of number, workpiece material, workpiece-shape, outer diameter, inner diameter, and length, to select desired workpiece data. When the operator presses an OK key 304, in a state with the desired workpiece data being selected (the selected workpiece data is highlight-displayed), the highlighted workpiece data is selected, and an end-face machining-allowance dialog 305 is opened.
In the end-face machining-allowance dialog 305, workpiece number, workpiece material, workpiece-shape, outer diameter, inner diameter, length, and end-face machining allowance of the selected workpiece are displayed, and in the initial state, the machining allowance is 0 millimeter.
The set value of the end-face machining allowance is for end-face machining for cutting off the workpiece end at the beginning of lathe-turning. That is, since the end of an unmachined workpiece is not cut off smoothly, end-face machining is executed at the beginning of lathe-turning. When the operator inputs a desired value as a set value of the end-face machining allowance, and presses the OK button, an end-face machining program for removing the set end-face machining allowance by lathe-turning is created at the time of creating the machining program.
Respective distances from a program origin Pc (preset in the product shape input processing) of the product model determined in the product shape input processing executed at step S100 to the fringe area of the product model in a direction perpendicular to a turning axis (Z axis) of the product model is calculated, to select the maximum distance Lmax from a plurality of calculated distances (step S120). That is, as shown in
A plurality of round bar data registered in the workpiece-shape database 2 is displayed in the workpiece-list display section 302 in the workpiece database dialog 300, and a round-bar workpiece whose radius equal to or larger than Lmax and having a minimum diameter is selected from the displayed round bar data (step S121).
When the selected round-bar workpiece is only one (step S122), the workpiece data corresponding to the selected round-bar workpiece is highlight-displayed in the workpiece-list display section 302 (step S124). However, when there is a plurality of selected round bar data, a round-bar workpiece having a length equal to or longer than the product model and shortest among the round-bar works (step S123). The workpiece data corresponding to the selected one or more round-bar works are highlight-displayed in the workpiece-list display section 302 (step S124).
A procedure in the automatic workpiece selection processing when a hexagonal bar is selected as the workpiece-shape will be explained with reference to
The respective sides of the hexagonal-bar workpiece model WM are shifted in parallel until the sides touch the product model SM, to determine distances L1 to L6 between the parallel-shifted respective line segments La1 to La6 and the program origin Pc of the product model SM in the direction perpendicular to the turning axis. The longest distance Lmax is then obtained from these distances (step S131).
Pieces of hexagonal bar data registered in the workpiece-shape database 2 are displayed in the workpiece-list display section 302 in the workpiece database dialog 300, to select a hexagonal-bar workpiece having an opposite side length (a distance between opposite sides) equal to or larger than 2 Lmax and the shortest opposite side length, from the displayed hexagonal bar data (step S132).
When only one hexagonal-bar workpiece is selected (step S133), the workpiece data corresponding to the selected hexagonal-bar workpiece is highlight-displayed in the workpiece-list display section 302 (step S135). However, when there is a plurality of selected hexagonal bar data, a hexagonal-bar workpiece having a length equal to or longer than the product model and shortest among the hexagonal-bar works is selected (step S134). The workpiece data corresponding to the selected one or more hexagonal-bar works are highlight-displayed in the workpiece-list display section 302 (step S135).
In the case of
Another embodiment of the workpiece model input setting processing will be explained with reference to FIGS. 15 to 18. The workpiece-shape setting screen shown in FIGS. 16 to 18 does not operate synchronized with the workpiece-shape setting screen 9 shown in
When the workpiece data is registered in the workpiece-shape database 2, upon pressing an appropriate button (not shown) (corresponding to the EDIT button 9f on the workpiece-shape setting screen 9 shown in
On the other hand, when the workpiece data is manually selected from the workpiece-shape database 2, the operator presses an appropriate button (corresponding to the READ WORKPIECE MODEL button 9d shown in
The workpiece-shape creating dialog 40 has a data input column 41 for inputting the workpiece material, workpiece-shape, outer diameter of the work, inner diameter of the work, length, and end-face machining allowance, a list box 42 in which data registered in the workpiece-shape database 2 is displayed, and a product-size display column 43 in which the XYZ dimensions of the product shape are displayed.
A workpiece-material input column 44 and a workpiece-shape input column 45 in the data input column 41 are formed of a combo box, and the operator selects the necessary one from the list in the combo box for the workpiece material and the workpiece-shape (round bar, square bar, and the like). An outer-diameter input column 46, an inner-diameter input column 47, a length input column 48, and an end-face machining-allowance input column 49 are formed of an edit box, and a required figure is directly input to each column.
When the operator selects a required material and a workpiece-shape in the workpiece-material input column 44 and the workpiece-shape input column 45, the workpiece-shape-input processing unit 11 searches the workpiece-shape database 2, using the selected material and workpiece-shape as a keyword, to extract the workpiece data matching the selected material and workpiece-shape, of multiple workpiece data in the workpiece-shape database 2, and lists/displays the extracted workpiece data in the list box 42.
The operator selects the required workpiece data from the list box 42, and for example, when the operator presses an input (enter) key on a keyboard, which is the input unit 21, the respective data in the outer-diameter input column 46, the inner-diameter input column 47, and the length input column 48 are automatically updated by the outer diameter, the inner diameter, and the length of the selected workpiece data. However, when the operator selects a workpiece having a zero length and presses an input key, the length of the workpiece is not changed.
The respective operation above can be performed by a pointer such as a mouse, but the following short cut key function can be provided. That is, when focus is in the workpiece-material input column 44 and the workpiece-shape input column 45, and for example, when a cursor shift key “↑” or “↓” is pressed, as shown in
Thus, the operator inputs appropriately desired data in the data input column 41 in the workpiece-shape creating dialog 40, so that the operator can manually set desired workpiece data.
After finishing data input setting to the data input column 41, when the operator presses a CREATE button 58, the input-set workpiece data is read into a storage area of the automatic programming apparatus from the workpiece-shape database 2, to create an image of a workpiece corresponding to the read workpiece data, and the created workpiece-shape is displayed on the three-dimensional view (not shown).
In the manual setting by the operator as described above, it is not assured that the optimum smallest workpiece that can be machined into a product shape can be selected. Therefore, in the product-size display column 43 in the workpiece-shape creating dialog 40, an APPLY PRODUCT SHAPE button 50 is provided for automatically selecting the optimum smallest workpiece that can be machined into the product shape selected by the operator. In the product-size display column 43, the XYZ dimensions of the product shape set in the product shape input processing at step S100 are displayed.
The automatic selection processing of a workpiece model based on pressing of the APPLY PRODUCT SHAPE button 50 will be explained with reference to
In this state, when the APPLY PRODUCT SHAPE button 50 is pressed (step S141), the workpiece-shape-input processing unit 11 searches the workpiece-shape database 2, using the material and workpiece-shape selected in the workpiece-material input column 44 and the workpiece-shape input column 45 as a keyword, to extract the workpiece data matching the selected material and workpiece-shape, of many workpiece data in the workpiece-shape database 2 (step S142). The workpiece-shape-input processing unit 11 selects a workpiece involving the product shape, that is, having a larger size than that of the product, from one or more extracted works extracted by comparing the dimension data of the extracted one or more works and the dimension data of the product, and further selects a workpiece having the minimum size from one or more works capable of involving the product shape (step S143). As a method of selecting the workpiece having the minimum size, the method explained with reference to
When the workpiece selection processing is finished, the workpiece-shape-input processing unit 11 updates the respective data in the outer-diameter input column 46, the inner-diameter input column 47, the length input column 48, and the end-face machining-allowance input column 49 with the values of the finally selected workpiece data. Thus, the optimum smallest workpiece capable of machining the product shape is automatically selected. A workpiece model is created based on the selected workpiece data.
Since the smallest workpiece data involving the product shape is automatically selected from the workpiece database, the time and labor of the operator to manually select the workpiece data can be saved, thereby enabling efficient programming operations.
A partial-workpiece setting mode executed by pressing the SET PARTIAL WORKPIECE button 9c on the workpiece-shape setting screen 9 shown in
In other words, in casting and molding material machining, products are often manufactured by creating a workpiece having a shape close to the desired product, and adding machining such as lathe-turning to the created work. The product manufacturer side asks a workpiece manufacturer to supply such a workpiece having a shape close to the desired product. On the other hand, in the automatic programming apparatus, a machining path and an NC creation program cannot be prepared, unless the product model and the workpiece model are defined. Therefore, it is necessary to define the workpiece model when performing casting and molding material machining. In the partial work-setting mode (thickening mode), a workpiece model for the casting and molding material machining can be easily created.
The operation procedure in the partial work-setting mode will be explained with reference to the flowchart shown in
When the SET PARTIAL WORKPIECE button 9c on the workpiece-shape setting-screen 9 shown in
In
The operator selects the color corresponding to the portion, which the operator wants to thicken, from the colors displayed in the color selection section 51a, to specify the necessary surface of the product model (step S150), and sets the thickness of the portion to be thickened in the machining-allowance setting section 51b (step S151). When the operator presses the OK button 51c, only the surface corresponding to the selected color of the product model displayed on the 3D display screen is thickened by the machining allowance set in the machining-allowance setting section 51b (step S152).
In the color selection section 51a, when there is another selected surface, the processing of from steps S150 to S152 is repeated similarly.
When all surface selection is finished, it is determined whether there are adjacent surfaces between the thickened surfaces (step S154). When there are no adjacent thickened surfaces, the thickened model created by (repetition of) the processing of from steps S150 to S152 is registered and set as the workpiece model (step S157).
On the other hand, when there are adjacent thickened surfaces, a dialog (not shown) for selecting either a curved surface (shown by solid line E1 in
In the above example, the color attribute is adopted as the display attribute for specifying the respective surfaces of the product model, so as to select the surface to be thickened by the color attribute set for the product model. However, various types of filling patterns such as hatching can be set as the display attribute for the respective surfaces of the product model, and a desired surface to be thickened can be selected by selecting these filling patterns. Furthermore, the surface to be thickened can be selected by an operation of an input unit such as a mouse, and a machining allowance can be set with respect to the selected surfaces.
In the partial-workpiece setting processing, a desired thickened model is created by specifying the surface to be thickened, of the respective surfaces of the product model, and the thickness of the specified surface to be thickened, so that the created thickened model can be registered as the workpiece model. As a result, a workpiece model to be used in casting or the like can be easily created.
(3) First Process Jig Setting Processing (Setting of First Chuck and Claw, Step S102)
The jig setting processing (fixture setting processing) is started by turning on the SET FIXTURE button 6c on the menu selection main screen 8 shown in
A jig model is formed of chuck models and claw models for holding the work. For the chuck shape data, in the case of the configuration of
In the fixture setting menu 52 shown in
In this case, since it is jig setting for the first process, the SET FIRST SPINDLE CLAW button 52d is turned on, and either one of the SELECT OUTER CLAW button 52a and the SELECT INNER CLAW button 52b is turned on.
When these buttons are turned on, the jig-setting processing unit 12 obtains the type (circular, square, hexagonal, and the like) of the end face of the workpiece and the dimension data of the workpiece model, from the workpiece model determined in the workpiece-shape setting processing at step S101 (step S160).
For the claw pattern displayed in the claw-pattern selection table 53 shown in
Not all claw patterns are displayed in the claw-pattern selection table 53, and only claw patterns corresponding to the type of the workpiece end face of the workpiece model, of claw patterns corresponding to the selected one of the SELECT OUTER CLAW button 52a and the SELECT INNER CLAW button 52b, are displayed. For example, when a workpiece model in a shape of quadratic prism is set, only three claw patterns in the middle row of the claw patterns shown in
When the claw pattern is selected, registered data of one or more claw models corresponding to the selected claw pattern is extracted from the whole registered data, and the extracted registered data is displayed in a list display section 54a in the fixture setting window 54 shown in
The list display section 54a includes a claw-number display section (claw number) in which a claw number of a registered claw model is displayed, a claw name display section in which the name of a registered claw shape (claw model) is displayed, a claw height display section in which the height of the registered claw shape is displayed, a claw length display section in which the length of the registered claw shape is displayed, a claw width display section in which the width of the registered claw shape is displayed, a Z-direction chucking allowance display section in which the chucking allowance in the Z direction of the registered claw shape is displayed, and an X-direction chucking allowance display section in which the chucking allowance in the X direction of the registered claw shape is displayed. That is, in the list display section 54a, the shape data of the selected claw model is displayed for each claw number.
The fixture setting window 54 further includes a claw type display section 54b in which whether the claw is an outer claw or an inner claw is identified and displayed, a holding-diameter display section 54c in which the holding diameter is displayed, a selected claw-number display section 54d in which the selected claw number is displayed, a claw-number display section 54e in which the number of claws of the selected claw pattern is displayed, and a fixture display section 54f in which the selected chuck model, the selected claw model, and the selected workpiece model are displayed in cross section or three-dimensionally displayed.
When the operator selects desired data from the registered data (claw model) of the claw displayed in the list display section 54a (step S164), the jig-setting processing unit 12 displays the selected claw number in the selected claw-number display section 54d, displays the number of claws in the claw-number display section 54e, and calculates a holding position coordinates and a holding diameter of the claw according to the procedure shown in
That is, as shown in
In this manner, when it is determined at which position at the end of the workpiece model the claw model is held, that is, when calculation of the holding position (holding diameter) of the claw is finished, the jig-setting processing unit 12 displays the calculated holding diameter value in the holding-diameter display section 54c, and displays the chuck model, the claw model, and the workpiece model in the fixture display section 54f, in a state with the claw model holding the workpiece model (step S165).
Thus, the workpiece model is arranged in the first jig model (in this case, a first chuck and claw). When the shape data, the number of claws, and the holding diameter of the selected claw model are to be changed, the operator presses the EDIT CLAW button 52f, or the CHANGE HOLDING DIAMETER/NUMBER OF CLAWS button 52c to open the edit dialog, and executes the edit processing by the edit dialog.
In this manner, since some jig arrangement patterns are prepared corresponding to the workpiece-shapes, and the operator selects a jig arrangement pattern to determine the jig arrangement, the jig arrangement becomes easy. Furthermore, since the holding position and the holding diameter of the claw are calculated on the workpiece model, if the calculation result is transmitted to the NC side, interference check between the tool and the jig (claw) on the NC side can be performed efficiently.
(4) Registration (Step S103)
The registration processing is started by turning on the ADJUST POSITION button 6d on the menu selection main screen 8 shown in
First, as shown in (a) of
At this time, the workpiece model WM held by the first jig model ZG is arranged at a predetermined position on the registration screen 55, but the product model SM is arranged at a position corresponding to the coordinate of the CAD data with respect to the origin of the CAD data. Therefore, when the product model SM and the workpiece model WM are initially displayed, the positions of the product model SM and the workpiece model WM normally do not match each other.
In this state, when the operator presses the automatic adjustment button (not shown) arranged in the lower part of the registration screen 55, the registration processing unit 13 executes the registration processing as shown in
At first, the registration processing unit 13 detects a lathe-turning surface having the largest diameter among one or more surfaces to be machined present in the product model SM, and determines a central axis of rotation of the detected lathe-turning surface having the largest diameter as a Z′ axis (turning axis) (step S180).
The lathe-turning surface is a surface, as shown in
The product model SM is then rotated and parallel-shifted so that the Z′ axis determined from the product model SM matches the Z axis (turning axis) of the workpiece model WM held by the first jig model ZG (step S181). Furthermore, the product model SM is parallel-shifted so that the end face of the product model SM in the Z′ axis direction matches the program origin O (Z=0) of the automatic programming apparatus (step S182).
The program origin O is preset at a position at the center of the workpiece model WM in the X-axis direction and at a predetermined distance from the end face of the workpiece model WM in the Z-axis direction, away from the first jig model, so that the product model SM is included in the workpiece model WM, when the end face of the product model SM in the Z′ direction is arranged so as to match the program origin O (Z=0). As a result, as shown in (b) of
However, at the time of rotation and parallel shift of the product model SM at step S181, it is not clear which one of the two end faces of the product model SM in the Z direction is arranged on the side close to the program origin O (on the right side in (b) of
This registration function includes a manual adjustment function for adjusting the arrangement of the product model SM by the operator. In this manual adjustment function, the direction of the product model SM can be selected, and the product model SM can be rotated or shifted in the X-, Y-, and Z-axis directions. The manual adjustment function is used when the operator judges that the chipped amount can be reduced by manual adjustment.
While the registration screen 55 is displayed, when the operator presses a shape shift key 56 (not shown) arranged on the lower part of the registration screen 55, a shape shift menu as shown in
The shape shift menu includes parallel shift button in the X-, Y-, and Z-axis directions, a rotation button in the X-, Y-, and Z-axis directions, and a shape shift finish button. When any button is pressed, a shape shift dialog for performing the shift or rotation of the shape as shown in
As shown in
In the shape selection check-box 60, the shape (model) with a check is parallel-shifted or rotated. When the operator inputs a shift amount of the model in the shift-amount input section 62, and presses the SHIFT button 63 or the input key, the parallel shift or rotation of the model is executed. When the shift amount is specified in the shift-amount input section 62 to shift the model, the model is shifted by the specified amount once.
When the operator inputs a step amount (unit shift amount) of the model in the step-amount input section 61, and presses the SHIFT button 63 or the input key, the parallel shift or rotation of the model is executed. When the operator inputs the step amount in the step-amount input section 61, and presses the cursor shift key “↑” or “↓”, while the focus is on the step-amount input section 61, the shape shift is executed. In the shape shift by inputting the step amount, a preview of the shape to be shifted is displayed, and the displayed preview is shifted. When the operator presses the cursor shift key “↑”, the shape is parallel-shifted in the “+” direction or rotated, and when the operator presses the cursor shift key “↓”, the shape is parallel-shifted in the “−” direction or rotated. When the operator presses the SHIFT button 63 or the input key, the shift of the preview by inputting the step amount is reflected on the shape, to complete the shape shift. Thus, when the model is step-shifted by specifying the step amount in the step-amount input section 61, the model is shifted by the specified step amount, every time the cursor shift key “↑” or “↓” is pressed.
In the above explanation, adjustment of the Z axis between the product model and the workpiece model and positioning of the end face of the product model in the Z-axis direction at the program origin are performed by one shape shift button, but the adjustment of the Z axis between the product model and the workpiece model can be performed by one button, and positioning of the end face of the product model in the Z-axis direction at the program origin can be performed by another button.
Since the product model is automatically arranged so as to be overlapped in the workpiece model held by the jig model, the time and labor of the operator to manually calculate the position of the product model with respect to the workpiece model can be saved, thereby enabling efficient programming operations.
(5) Process Dividing (Step S104)
The process dividing processing is started by turning on the DIVIDE PROCESS button 6e on the menu selection main screen 8 shown in
The process dividing processing will be explained according to
The operator refers to these displayed candidates for process division to select and specify desired process dividing spots for the inner diameter and the outer diameter (step S193). The process-division processing unit 14 calculates a coordinate position on the product model SM at the selected and specified process dividing spots (step S194). Thus, the process dividing position is determined (step S156).
A milling position 67 located on the first process side belongs to the first process, and a milling position 69 located on the second process side belongs to the second process. The process-division processing unit 14 determines the machining content such that at a milling position 68 in which the process dividing position 65 is present, the whole portion including the one belonging to the first process side is machined in the second process. This is because it is more efficient to perform milling after chipping the whole outer diameter, than performing milling in a state that the outer diameter is chipped to half.
On the other hand, when the automatic determination mode is selected at step S190, the process-division processing unit 14 executes the following processing. That is, the chucking allowance length La of the claw in the first process is calculated, and a length (La+α) is calculated by adding a predetermined margin α to the chucking allowance length La of the claw (step S195), to determine a position of the workpiece model WM away from the end face in the Z direction on the chuck side for the length (La+α), as the process dividing position (step S196). A region on the edge side from the determined dividing position is designated as a first process region to be machined in the first process, and a region on the base side (chuck side) from the dividing position is designated as a second process region to be machined in the second process. A plurality of different values is preset corresponding to the length in the Z direction of the product model or the workpiece model as the margin α, so that the margin α is changed corresponding to the length in the Z direction of the product model or the workpiece model.
Another example of the automatic determination processing for process division will be explained with reference to
As shown in
As shown in
Thus, since the process is automatically divided into the first process and the second process, the time and labor of the operator to divide the process manually can be saved, thereby enabling efficient programming operations.
In the case of
Furthermore, a position at which the volume of the whole machining area including the end-face machining area is divided into two can be designated as the process dividing position. In this case, the process dividing positions on the inner diameter side and the outer diameter side become the same position.
In the case of
(3)′ Second Process Jig Setting (Setting of Second Chuck and Claw, Step S105)
The second process jig setting is mainly executed by the jig-setting processing unit 12 in
In the second process jig setting processing, the operator turns on the SET FIXTURE button 6c on the menu selection main screen 8 shown in
However, at the time of fitting the workpiece to the sub-spindle, the first process has already been completed, and the holding diameter of the claw in the second process is determined by assuming the workpiece-shape after finishing machining in the first process. That is, as shown in
(4)′ Registration (Step S106)
The registration processing is mainly executed by the registration processing unit 13 in
(6) Process Expansion (Step S107)
The process expansion processing is started by turning on the EXPAND UNIT button 6f on the menu selection main screen 8 shown in
The process expansion processing is for breaking down a series of machining operation including lathe-turning, point machining, surface machining, chamfering and the like, referred to as machining modes, into machining units in which continuous machining is performed with the same main spindle and the same tool. The machining operation is formed as a combination of a plurality of machining units. In the process expansion processing, the machining operation both in the first process and the second process is expanded into a unit of machining units.
It is assumed that the default of the sequence in the automatic process expansion in the case of combined machining is lathe-turning→surface machining→point machining→chamfering, and this sequence can be optionally set by the operator. A rule for process-expanding only the point machining can be set by omitting lathe-turning, surface machining, and chamfering, in order to deal with machining for performing only hole drilling.
The default of the sequence in respective machining in the lathe-turning is end-face machining→lathe-turning drill (central hole)→machining of outer diameter of a bar→machining of inner diameter of the bar, and this sequence can be al optionally set by the operator. Therefore, even a sequence of end-face machining→machining of outer diameter of a bar→lathe-turning drill→machining of inner diameter of the bar is possible, and a sequence of end-face machining→lathe-turning drill→machining of inner diameter of the bar→machining of outer diameter of the bar is also possible.
The surface machining is process-expanded in order of from the one having a shallow machining depth. In the case of cylindrical shape, or cylindrical shape+conic shape, the point machining is expanded to drilling, and in the case of two cylindrical shapes having different diameters+conic shape, the point machining is expanded to a washer faced head. When machining attribute data is added to the CAD data, expansion to tapping, reaming, boring, and perfect circle is possible. The point machining is classified into four shape sequences of point, row, square, and lattice according to the array of holes having the same diameter, and the efficiency of point machining is improved by performing drilling in the sequence determined by the classified respective shape sequences. Furthermore, the diameter of the hole is compared with a threshold, to determine whether to perform point machining or pocket milling based on the comparison result, and either the point machining or pocket milling is executed according to the determination result. In this case, the threshold of the diameter can be optionally set.
In point machining, it is automatically determined whether each hole is a through hole that can be machined by one point machining as shown in
As shown in (a) of
The details of the process expansion processing are described in Japanese Patent Application Laid-Open No. 2003-241809 filed by the present applicant.
(7) Tool Selection (Step S108)
The process expansion processing described below is mainly executed by the tool-selection processing unit 16 in
At first, a finishing allowance expansion for determining a finishing allowance corresponding to a finish mark in the CAD data is performed (step S210). Tool type expansion for determining how many tools are to be used for machining the respective process-expanded portions to be machined is then performed (step S211). Tool determination processing for selecting an optimum tool for the respective portions to be machined from the tool database is performed next (step S212). Lastly, since the tools are determined, a cutting condition corresponding to the tool is determined (step S213).
(8) Program Expansion (Step S109)
The program expansion processing is started by turning on the CREATE PROGRAM button 6h on the menu selection main screen 8 shown in
In the program expansion processing, NC creation programs for the first and the second processes made of a predetermined language are created, based on the combination of the process-expanded machining units, the determined tool information, and the cutting condition. The NC creation programs are converted to NC programs as numerical programs on the NC unit 200 side or the second NC controller 201 side in
(9) Non-Expandable Shape Editing (Step S110)
The non-expandable shape editing processing is mainly executed by the non-expandable-shape-editing processing unit 17 in
The non-expandable shape includes a curved face, a shape requiring machining by a special tool, a shape that is not included in the machining units in the NC creation program created by the automatic programming apparatus, a tapered portion of a tapered pocket and the upper part thereof, an R portion and a fillet portion of a bottom R and a pocket with bottom fillet, and the upper part thereof.
The non-expandable shapes that cannot be automatically expanded to the machining unit are displayed, as shown in (a) of
In the machining shape tree 80, editing operation such as a change of the machining unit name, a sequence change of machining units, and switching of valid/invalid of the machining unit can be performed. In
The non-expandable shape can be expanded, as shown in (b) of
(10) Program Editing (Step S111)
The program edit processing is started by turning on the EDIT UNIT button 6g on the menu selection main screen 8 shown in
As shown in
The machining shape tree 80 hierarchically displays machining unit names, as also shown in
In the editor section 87, when the machining shape tree 80 is selected for display, machining unit data (data including the shape sequence indicating the machining shape and machining contents) corresponding to the machining unit name selected in the machining shape tree 80 is displayed, and when the program tree 85 is selected for display, a machining program corresponding to the program name (in the case of
First, highlighting display processing of the machining unit in the three-dimensional display section 86 will be explained with reference to
It is assumed that one machining unit name is selected in the machining shape tree 80 to display the machining unit data such as the shape sequence in the editor section 87, or one machining program name is selected on the program tree to display the machining program body in the editor section 87. The program-editing processing unit 18 detects this (step S220), and highlight-displays a machining unit 89 corresponding to the position of the cursor 88 in the editor section 87 in the three-dimensional display section 86 (step S221).
Thus, since the machining unit corresponding to the cursor position is highlight-displayed in the three-dimensional display section 86, it can be determined clearly to which machining unit the cursor position corresponds, thereby making the editing operation efficient, and reducing editing errors.
Insertion processing of the shape sequence constituting the machining unit data will be explained with reference to
First, the operator selects a machining unit name into which the operator wants to insert a shape sequence (in this case, it is assumed to be a non-expandable unit) on the program tree 85. The operator selects the whole shape of the non-expandable unit on the program tree 85 or the three-dimensional display section 86.
The operator then selects a shape element for which the operator wants to obtain a coordinate value (for example, one plane) in the three-dimensional display section 86 by a mouse or the like. A selected plane 90 is highlight-displayed in the three-dimensional display section 86, as shown in
In this state, after having shifted the cursor position in the editor section 87 to a desired position, when the operator presses a “INSERT SHAPE SEQUENCE” button (not shown) in the menu display section 91 on the program editing screen 84 (step S230), as shown in
Thus, since the shape selected in the three-dimensional display section 86 can be inserted in the cursor position in the editor section 87 as a shape sequence, editing operation of the non-expandable shape and the like can be performed efficiently. In the above explanation, the shape sequence in the machining unit data is inserted in the cursor position, but machining unit data corresponding to the machining unit selected in the three-dimensional display section 86 can be inserted in the cursor position.
The insertion processing of the machining program name and the machining program corresponding to the machining unit name selected in the machining shape tree 80 will be explained with reference to
The operator selects a machining unit name to be inserted in the machining shape tree 80 (see
In this state, when the operator presses a “INSERT UNIT” button (not shown) in the menu display section 91 on the program editing screen 84 (step S240), the machining program name corresponding to the machining unit name selected in the machining shape tree 80 is inserted in front of the machining program name selected on the program tree 85 in a unit of machining unit, and the machining program corresponding to the machining unit name selected in the machining shape tree 80 is inserted in front of the cursor position in the editor section 87 in a unit of machining unit.
Thus, since the machining program name and the machining program corresponding to the machining unit name can be easily inserted in a unit of machining unit, at a desired position on the program tree 85 and the editor section 87, the editing operation can be efficiently performed when a machining program for a machining unit is destroyed or the like. A program name next to the position to be inserted is first selected on the program tree 85, and then a machining unit name to be inserted next can be selected in the machining shape tree 80.
A second embodiment of the present invention will be explained with reference to
In the case of the two-spindle machine tool, machining in the first process and machining in the second process can be performed continuously by the main spindle side and the sub-spindle side. Therefore, in the automatic programming apparatus, one program for continuously executing the machining in the first process and the machining in the second process is created. In contrast, in the case of the one-spindle machine tool, after finishing machining in the first process, the workpiece is reversed and held again on the main spindle side to perform machining in the second process, in order to perform the machining in the first process and the machining in the second process only by the main spindle. Therefore, in the automatic programming apparatus, two machining programs, that is, a machining program in the first process and a machining program in the second process, are created.
In the case of a machine having only the main spindle, without the sub-spindle, after process 1 (corresponding to the first process) is finished, the workpiece model is reversed and the reversed workpiece model is held again by the chuck model of the main spindle, to execute process 2 (corresponding to the second process) for performing the machining for the remaining area. In other words, in the one-spindle machine tool, machining is performed by holding one end of the workpiece model by the first spindle machine in process 1, and machining is performed by holding the other end of the workpiece model by the first spindle machine in process 2.
As shown in
The operation of the automatic programming apparatus in the second embodiment will be explained with reference to the flowchart in
Thus, the automatic programming apparatus has first software (two-spindle-program creating unit 331) for creating an NC creation program for creating an NC program for machining a product from a work, for the two-spindle machine tool having two spindles of the main spindle and the sub-spindle as a control object, and second software (one-spindle-program creating unit 330) for creating an NC creation program for creating an NC program for machining a product from a work, for the one-spindle machine tool having the main spindle as a control object. At the time of startup of the program, the determining unit 340 determines which machine tool is to be controlled, of the one-spindle machine tool and the two-spindle machine tool, so as to start either the first software or the second software. The first software and the second software include many common parts.
When the determining unit 340 determines that a machine with the sub-spindle is to be controlled, as in the first embodiment, processing at steps S100 to S109 is executed by the first software (see
On the other hand, when the determining unit 340 determines that a one-spindle machine tool without having a sub-spindle is to be controlled, the following processing is performed by the second software. At first, the product shape input processing similar to that of step S100 is performed (step S401), the workpiece-shape setting processing similar to that of step S101 is performed (step S402), then are subsequently performed first process (process 1) jig setting processing similar to that of step S102 (step S403), registration processing similar to that of step S103 (step S404), and process dividing processing similar to that of step S104 (step S405).
When the one-spindle machine tool is to be controlled, process expansion and tool selection for process 1 only are executed (step S406). Program expansion for only process 1 is then executed (step S407). The workpiece model is then reversed by 180 degrees, and held again by the chuck model of the main spindle (step S408).
Second process (process 2) jig setting processing similar to that of step S105 (step S409), and registration processing similar to that of step S106 (step S410) are performed.
Process expansion and tool selection for only process 2 are executed (step S411), and program expansion for only process 2 is executed (step S412). The NC creation program including the process 1 program and the process 2 program is created in this manner.
According to the second embodiment, it is determined whether the machine tool to be controlled has a sub-spindle, and either the automatic programming apparatus for one-spindle machine or the automatic programming apparatus for two-spindle machine is operated according to the determination. As a result, an automatic programming apparatus applicable to the two-spindle machine tool having the main spindle and the sub-spindle, and the one-spindle machine tool having only the main spindle can be provided.
The automatic programming method and device according to the present invention is useful for software for creating an NC creation program for creating an NC program of an NC unit, for a two-spindle machine tool having the main spindle and the sub-spindle, or a one-spindle machine tool having only the main spindle as a control object.
Number | Date | Country | Kind |
---|---|---|---|
2003-192156 | Jul 2003 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP04/09588 | 6/30/2004 | WO | 1/4/2006 |