MACHINE TOOL SETTING METHOD, COMPUTER, MACHINE TOOL, MACHINE TOOL SYSTEM, COMPUTER PROGRAM, AND COMPUTER READABLE MEDIUM

By creating three-dimensional virtual space and 3D models during the machine tool setting process, the computer automatically determines the location of the measurement points, solving the complex setting process and the need for high-skills in the existing technology, and achieving more intuitive and flexible setting operations.

JP7659139B1Active Publication Date: 2025-04-08YAMAZAKI MAZAK KK
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2024566370
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-03-12
Publication Date
2025-04-08
Estimated Expiration
2044-03-12

AI Technical Summary

Technical Problem

During the setup of existing machine tools, the operator needs to perform complex zero search and conversion of working coordinate systems and machine coordinate systems, resulting in cumbersome operations and requires high skills.

Method used

By creating a three-dimensional virtual space, use the computer to generate the first to third 3D models representing the desktop, workpiece and fixture of the machine tool, and set the corresponding position and orientation parameters. The computer determines the position of the measurement point based on the relative position of the program starting point and the parameters of the 3D model.

Benefits of technology

The setting process of machine tools is simplified, allowing operators to provide intuitive setting guidance through virtual reality, reducing operators' skill requirements, and when the working environment changes, the measurement points can be flexibly determined in CNC equipment without changing the program starting point.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007659139000023
    Figure 0007659139000023
  • Figure 0007659139000024
    Figure 0007659139000024
  • Figure 0007659139000025
    Figure 0007659139000025
Patent Text Reader

Abstract

A method for setting a machine tool includes having a computer generate a three-dimensional virtual space representing a virtual reality environment. The setting method includes having a computer prepare a first three-dimensional model reproducing a table of the machine tool, a second three-dimensional model reproducing a workpiece of the machine tool, a third three-dimensional model reproducing a jig for fixing the workpiece to the table, and a relative position of a program origin from a reference position of the second three-dimensional model in a machining program for machining the workpiece. The setting method includes having a computer set parameters representing the positions and orientations of each of the first to third three-dimensional models in the three-dimensional virtual space. The setting method includes having a computer obtain the positions in the three-dimensional virtual space of measurement points whose three-dimensional positions in real space are measured by contacting a probe that can be attached to the machine tool with the workpiece, based on the relative positions of the program origin, the first to third three-dimensional models, and the parameters.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a machine tool setting method, a computer, a machine tool, a machine tool system, a computer program, and a computer-readable medium. [Background technology]

[0002] Machining programs generally define the movement of the cutting edge in a workpiece coordinate system, and in actual machining, the machine tool must convert positions in the workpiece coordinate system to positions in the machine coordinate system.

[0003] For this conversion, it is necessary to measure in advance the relative positional relationship between the origin of the work coordinate system (called the program origin or work origin) and the origin of the machine coordinate system (machine origin). This type of measurement work is called the work's zero seek work. In this zero seek work, one of the work's feature points (for example, a feature point whose three-dimensional position in the machine coordinate system can be accurately measured by moving the probe from at least three directions, such as an end point where three planes intersect, a recessed point, or the center of the end face of a round bar-shaped work) is measured with the probe, and a point moved a predetermined offset from that feature point is often determined as the program origin. Such a work's feature point is called a measurement point.

[0004] The programmer decides in advance in what position and orientation the workpiece before machining will be attached to the jig and where the workpiece origin will be, and then creates a machining program so that the tool does not interfere with other parts other than the workpiece, such as the jig. On the other hand, the workpiece positioning work, which attaches the workpiece to the jig in a place where it is easy to set the origin and in the position and orientation intended by the programmer, and the above-mentioned origin setting work are often performed by an operator other than the programmer. For this reason, the programmer creates instructions for these tasks for the operator in addition to the machining program. After performing the workpiece positioning work according to the instructions, the operator performs the origin setting work while moving the probe. The operator further sets the conversion code (for example, G54) from the machine coordinate system to the workpiece coordinate system by registering the measurement position of the machine origin of the measurement point in the machine tool. This series of operator tasks is called the setup work. After executing the above-mentioned conversion code, the machine tool executes the machining program created by the programmer to machine the workpiece.

[0005] Patent Document 1 is a technology for reducing the burden on an operator in the work of finding the origin of a workpiece. The technology according to Patent Document 1 assumes that the center of a cylindrical groove or a cylindrical protrusion is the program origin, and requires advance preparation to place a workpiece including the cylindrical groove or the cylindrical protrusion, and to register the approximate center position of the cylindrical groove or the cylindrical protrusion of the placed workpiece and whether the model of the workpiece is a cylindrical groove or a cylindrical protrusion. Then, the machine tool according to Patent Document 1 determines the optimal measurement point based on the model, and the probe moves automatically based on the model to obtain the two-dimensional position of the machine coordinates of the program origin. Patent Document 2 is a technology for reducing the burden on an operator in the workpiece positioning work. The machine tool system according to Patent Document 2 photographs a workpiece placed in an ideal position and orientation with multiple cameras, and stores feature points such as the edges of the workpiece in a storage device. In the second and subsequent workpiece setups, the machine tool system makes it easier to position the workpiece by superimposing the feature points on the image of the workpiece taken by the camera and displaying it on the display. [Prior art documents] [Patent documents]

[0006] [Patent Document 1] Japanese Utility Model Application Publication No. 63-091351 [Patent Document 2] International Publication No. 2021 / 161530 Summary of the Invention [Problem to be solved by the invention]

[0007] In the machine tool according to Patent Document 1, the operator must not only adjust the posture so that the central axis of the cylindrical groove or cylindrical protrusion is roughly along the Z axis so that the center of the cylindrical groove or cylindrical protrusion can be measured, but must also measure the approximate center position and expected height of the cylindrical groove or cylindrical protrusion in advance. For this reason, the workpiece positioning work is inflexible, and the origin setting work also includes work requiring skilled techniques such as inputting the center position and expected height. In the machine tool system according to Patent Document 2, the operator must carefully perform the placement work while referring to the instruction manual until the workpiece is placed at the initial reference position, so the initial setup work cannot be made easy.

[0008] The purpose of the technology disclosed in this application is to facilitate the setting of a three-dimensional virtual space so that setup work can be intuitively performed by instructing the setup work using virtual reality. This allows even operators who do not have highly skilled skills to perform the setup work. In addition, even if the setup work cannot be performed as instructed due to circumstances such as the working environment of the machine tool, it is possible to determine alternative measurement points in the numerical control device of the machine tool without changing the program origin in the workpiece set by the programmer. [Means for solving the problem]

[0009] A setting method for a machine tool according to a first aspect of the present disclosure includes having a computer generate a three-dimensional virtual space representing a virtual reality environment. The setting method includes having a computer prepare a first three-dimensional model reproducing a table of the machine tool, a second three-dimensional model reproducing a workpiece of the machine tool, a third three-dimensional model reproducing a jig for fixing the workpiece to the table, and a relative position of a program origin of the second three-dimensional model from a reference position in a machining program for machining the workpiece. The setting method includes having a computer set parameters representing the positions and orientations of each of the first to third three-dimensional models in the three-dimensional virtual space. The setting method includes having a computer obtain a position in the three-dimensional virtual space of a measurement point whose three-dimensional position in real space is measured by contacting a probe that can be attached to the machine tool with the workpiece, based on the relative position of the program origin, the first to third three-dimensional models, and the parameters.

[0010] The computer may be a computer included in a numerical control device of a machine tool. Such a computer may also be called a computer numerical controller (CNC). The computer may also be a computer connected to the numerical control device via a communication network. The reference position of the second three-dimensional model may be the origin of a local coordinate system of an object of the second three-dimensional model. The relative position of the program origin from the reference position of the second three-dimensional model may be a coordinate value expressed in the local coordinate system, and may be a relative position expressed by the difference between the machine coordinate of the feature point and the machine coordinate of the program origin when the workpiece is placed in a certain position and orientation in real space with the feature point of the workpiece as the reference position. Having the computer prepare the relative position of the program origin from the reference position of the second three-dimensional model includes having the computer store the coordinate value of the program origin expressed in the local coordinate system in a storage device as separate data different from the second three-dimensional model.

[0011] The position of each of the first to third three-dimensional models in the three-dimensional virtual space may be a position expressed in a world coordinate system of the three-dimensional virtual space of a reference position of each of the first to third three-dimensional models. The orientation of each of the first to third three-dimensional models in the three-dimensional virtual space may be an orientation defined by a rotation angle around each coordinate axis of the world coordinate system from a reference orientation of each of the first to third three-dimensional models. Setting parameters representing the position and the orientation in a computer includes reading data describing parameters representing the position and the orientation by the computer, and accepting an input from an operator representing parameters representing the position and the orientation via a user interface of the computer.

[0012] Having a computer determine the position of the measurement point in the three-dimensional virtual space based on the relative position of the program origin, the first to third three-dimensional models, and parameters includes determining from the second three-dimensional model the vertices where at least three planes of the second three-dimensional model intersect and points on the plane that can be identified from the contour of the plane of the second three-dimensional model (for example, pointing to the center of the circle when the plane is a circular object), determining a measurement point from these points based on the relative position of the program origin and the parameters, and calculating the position of the determined measurement point.

[0013] According to a second aspect of the present disclosure, the setting method according to the first aspect further includes causing a computer to display on a display the first to third three-dimensional models, the measurement points, and the program origin in the three-dimensional virtual space in a manner in which the measurement points and the program origin are distinguishable from the first to third three-dimensional models. It is preferable that the computer displays on the display the first to third three-dimensional models, the measurement points, and the program origin using computer graphics.

[0014] According to a third aspect of the present disclosure, the setting method according to the first or second aspect further includes setting a movement model in a computer for moving the tip of the probe to obtain the three-dimensional position of the measurement point, and generating a movement procedure including a movement direction and a movement speed when moving the probe toward each of at least three movement targets on the surface of the workpiece to obtain the three-dimensional position of the measurement point based on the measurement point, the movement model, and the three-dimensional shape of the second three-dimensional model. The movement speed of the probe when the distance between the tip and the movement targets is within a predetermined threshold is set to be smaller than the movement speed of the probe when the distance between the tip and the movement targets is equal to or larger than the predetermined threshold.

[0015] According to a fourth aspect of the present disclosure, the computer is a computer included in a numerical control device of a machine tool, and the setting method of the third aspect further includes moving the probe according to a movement procedure to cause the computer to measure a three-dimensional position of the measurement point, determining machine coordinates of the program origin based on the three-dimensional position and the positional relationship between the measurement point and a program origin, and setting a correspondence relationship between a workpiece coordinate system and a machine coordinate system based on the program origin based on the machine coordinates of the program origin. Note that the three-dimensional position of the measurement point is preferably the three-dimensional position of the measurement point expressed in the machine coordinate system of the machine tool.

[0016] According to a fifth aspect of the present disclosure, the setting method according to the first aspect further includes having a computer determine a position in a three-dimensional virtual space of at least one optional point, including a measurement point, whose three-dimensional position in a real space can be measured by bringing a probe into contact with a workpiece, based on a relative position of a program origin, the first to third three-dimensional models, and parameters. Having a computer determine a position in a three-dimensional virtual space of at least one optional point based on a relative position of a program origin, the first to third three-dimensional models, and parameters includes determining, from the second three-dimensional model, vertices at which at least three planes of the second three-dimensional model intersect and points on the plane that can be specified from the contour of the plane of the second three-dimensional model (for example, a point indicating the center of a circle when the plane is a circular plane), determining at least one optional point from these points based on the relative position of the program origin and the parameters, and calculating a position of the determined at least one optional point.

[0017] According to a sixth aspect of the present disclosure, the setting method according to the fifth aspect further includes causing a computer to select one selected point from at least one optional point, and causing the computer to display on a display the first to third three-dimensional models, the selected point, and the program origin in the three-dimensional virtual space in a manner in which the selected point and the program origin are distinguishable from the first to third three-dimensional models. It is preferable that the computer displays on the display the first to third three-dimensional models, the selected point, and the program origin by computer graphics.

[0018] According to a seventh aspect of the present disclosure, the setting method of the fifth or sixth aspect further includes having a computer select one selected point from at least one optional point, having a computer set a movement model for moving the tip of the probe to obtain the three-dimensional position of the selected point, and having the computer generate a movement procedure including a movement direction and a movement speed when moving the probe toward each of at least three movement targets on the surface of the workpiece to obtain the three-dimensional position machine coordinate of the selected point based on the selected point, the movement model, and the three-dimensional shape of the second three-dimensional model. The movement speed of the probe when the distance between the tip and the movement target is within a predetermined threshold is set to be smaller than the movement speed of the probe when the distance between the tip and the movement target is equal to or larger than the predetermined threshold.

[0019] According to an eighth aspect of the present disclosure, the computer is a computer included in a numerical control device of a machine tool, and the setting method of the seventh aspect further includes having the computer determine a selected point as a measurement point, having the computer measure a three-dimensional position of the measurement point by moving a probe according to a movement procedure of the selected point, having the computer determine machine coordinates of the program origin based on the three-dimensional position and the positional relationship between the measurement point and a program origin, and having the computer set a correspondence relationship between a workpiece coordinate system and a machine coordinate system based on the program origin based on the machine coordinates of the program origin. Note that the three-dimensional position of the measurement point is preferably the three-dimensional position of the measurement point expressed in the machine coordinate system of the machine tool.

[0020] According to a ninth aspect of the present disclosure, the setting method according to the third or seventh aspect further includes causing a computer to display, on a display, information indicating a peripheral area of ​​a proximity trajectory within a threshold distance from each of the at least three moving targets among the trajectories moving in the moving direction toward each of the at least three moving targets. It is preferable that the computer displays the information indicating the peripheral area by computer graphics.

[0021] According to a tenth aspect of the present disclosure, the setting method according to the third, seventh or ninth aspect further includes having a computer prepare a fourth three-dimensional model reproducing the probe, and having the computer determine whether or not an interference state occurs in which the fourth three-dimensional model comes into contact with a three-dimensional model other than the fourth three-dimensional model when the tip is moved according to a movement procedure toward at least three moving targets, and having the computer display the first to fourth three-dimensional models, at least three moving directions, the moving targets corresponding to them, and the presence or absence of the interference state on a display in a three-dimensional virtual space. It is preferable that the computer display the first to fourth three-dimensional models, the at least three moving directions, and the moving targets corresponding to them on a display by computer graphics.

[0022] According to an eleventh aspect of the present disclosure, the setting method according to any one of the third, seventh, ninth, or tenth aspects further includes causing a computer to set a range of motion of the probe in a three-dimensional virtual space, causing the computer to determine whether the motion range of the probe according to the movement procedure belongs to the range of motion, and causing the computer to display on a display, in addition to the first to fourth three-dimensional models, at least three movement directions, and the corresponding movement targets, in the three-dimensional virtual space, information identifying whether the motion range belongs to the range of motion. It is preferable that the computer displays the information regarding the range of motion on the display by computer graphics.

[0023] In the second, sixth, ninth to eleventh aspects, the display may be a display for visually displaying the output of the numerical control device, or may be a display for visually displaying the output of a computer connected to the numerical control device via a communication network. The display may visually display the output of the computer executing the processes according to the first to twelfth aspects, or may visually display the output of a computer other than the computer executing the processes according to the first to twelfth aspects. When the display visually displays the output of a computer other than the computer executing the processes according to the first to twelfth aspects, the display may also be capable of receiving video signals from a plurality of computers and may visually display the output of the computer executing the processes according to the first to twelfth aspects. In addition, when the display visually displays the output of a computer other than the computer executing the processes according to the first to twelfth aspects (hereinafter, the first computer), a computer (hereinafter, the second computer) that outputs a video signal to the display may share a screen with the first computer by a screen sharing application such as remote desktop, and the first computer may transmit a screen to be displayed on the display in the second, sixth, ninth to eleventh aspects. Alternatively, the first computer may transmit some or all of the information generated by these aspects to the second computer, and the second computer may generate screens to be displayed in the second, sixth, ninth to eleventh aspects from the received information.

[0024] A computer according to a twelfth aspect of the present disclosure is a computer configured to execute the machine tool setting method of any of the first to third aspects, the fifth to seventh aspects, and the ninth to eleventh aspects.

[0025] A machine tool according to a thirteenth aspect of the present disclosure is a machine tool including a computer configured to execute the machine tool setting method according to any one of the first to eleventh aspects.

[0026] A machine tool system according to a seventeenth aspect of the present disclosure includes a computer configured to execute the machine tool setting method according to any one of the second, sixth, ninth to eleventh aspects, and a machine tool including a numerical control device connected to the computer via a communication network and a display capable of visually displaying the output of the numerical control device. In this case, the numerical control device may execute a screen sharing application such as a remote desktop, for example, and cause a screen generated by the computer to be displayed on the display of the machine tool. The display of the machine tool may be capable of receiving two systems, the video output of the numerical control device and the video output of the computer, in a switchable manner, and may display the screen generated by the computer after switching to input the video output from the computer. Alternatively, the numerical control device may be configured to execute the machine tool setting method of any one of the second, sixth, ninth to eleventh aspects, receive from the computer the first to fourth three-dimensional models, the relative position of the program origin, and an identifier designating a plane of the second three-dimensional model through which the tool passes before reaching the program origin for the first time, calculate the positions of the measurement points in the three-dimensional virtual space and the positions of at least one optional point in the three-dimensional virtual space based on these data, and generate a probe movement procedure, etc. Furthermore, the numerical control device may receive the position of at least one optional point in the three-dimensional virtual space calculated by the computer, and display at least one optional point or measurement point on a display of the machine tool based on the received position of the at least one optional point in the three-dimensional space.

[0027] A computer program according to a fifteenth aspect of the present disclosure comprises instructions which, when executed by a computer, cause the computer to carry out the machine tool setting method of claims 1 to 11.

[0028] A computer program readable medium according to a sixteenth aspect of the present disclosure comprises instructions which, when executed by a computer, cause the computer to carry out the machine tool setting method of claims 1 to 11.

[0029] In the setting method according to the first aspect, the computer according to the 12th aspect configured to execute the processing of the setting method according to the first aspect, the machine tool according to the 13th aspect including a computer configured to execute the processing of the setting method according to the first aspect, the computer program according to the 15th aspect including instructions to cause a computer to execute the setting method according to the first aspect, and the computer-readable medium according to the 16th aspect including instructions to cause a computer to execute the setting method according to the first aspect, once the positions and orientations of the first to third three-dimensional models in the three-dimensional virtual space are set, the position of the program origin in the three-dimensional virtual space is calculated without separately setting the position of the program origin, and a measurement point is determined based on the position of the program origin. Therefore, the programmer only needs to set the first to third three-dimensional models, and the program origin and the measurement point are automatically set, making it easy to set in the three-dimensional virtual space. In particular, by using the first to third three-dimensional models, it is effective in that when the program origin is inside the first three-dimensional model, the measurement point can be determined based on the positional relationship with the program origin. Furthermore, even if the instructions cannot be carried out as instructed due to circumstances such as the working environment of the machine tool, the operator can alternatively determine a measurement point in the numerical control device of the machine tool without changing the program origin in the workpiece set by the programmer.

[0030] In the setting method according to the second aspect, the computer according to the 12th aspect configured to execute the processing of the setting method according to the second aspect, the machine tool according to the 13th aspect including the computer configured to execute the processing of the setting method according to the second aspect, the machine tool system according to the 14th aspect including the computer and the machine tool configured to execute the processing of the setting method according to the second aspect, the computer program according to the 15th aspect including instructions for causing a computer to execute the setting method according to the second aspect, and the computer-readable medium according to the 16th aspect including instructions for causing a computer to execute the setting method according to the second aspect, the programmer can visually confirm the positions of the measurement points and the positions of the program origin, so that the programmer can confirm the setting of the setup work that he or she performed himself or herself. Also, the operator can confirm the setting of the setup work instructed by the programmer or the setting of the setup work that he or she modified himself or herself on the machine tool.

[0031] The setting method according to the third aspect, the computer according to the 12th aspect configured to execute processing of the setting method according to the third aspect, the machine tool according to the 13th aspect including a computer configured to execute processing of the setting method according to the third aspect, the computer program according to the 15th aspect including instructions for causing a computer to execute the setting method according to the third aspect, and the computer readable medium according to the 16th aspect including instructions for causing a computer to execute the setting method according to the third aspect, can utilize a three-dimensional model of the workpiece to set the movement direction perpendicular to the workpiece surface on which the moving target is located, and can automatically calculate the distance to the workpiece surface to set an appropriate deceleration timing for the probe.

[0032] With the setting method according to the fourth aspect, the machine tool according to the thirteenth aspect having a computer configured to execute processing of the setting method according to the fourth aspect, the computer program according to the fifteenth aspect having instructions for causing a computer to execute the setting method according to the fourth aspect, and the computer readable medium according to the sixteenth aspect having instructions for causing a computer to execute the setting method according to the fourth aspect, the three-dimensional position of the measurement point can be automatically measured by a probe, automating the work of finding the origin.

[0033] The setting method according to the fifth aspect, the computer according to the twelfth aspect configured to execute processing of the setting method according to the fifth aspect, the machine tool according to the thirteenth aspect comprising a computer configured to execute processing of the setting method according to the fifth aspect, the computer program according to the fifteenth aspect comprising instructions for causing a computer to execute the setting method according to the fifth aspect, and the computer readable medium according to the sixteenth aspect comprising instructions for causing a computer to execute the setting method according to the fifth aspect, enable measurement points to be flexibly determined by utilizing optional points that can be substituted as measurement points.

[0034] In the setting method according to the sixth aspect, the computer according to the twelfth aspect configured to execute the processing of the setting method according to the sixth aspect, the machine tool according to the thirteenth aspect including the computer configured to execute the processing of the setting method according to the sixth aspect, the machine tool system according to the fourteenth aspect including the computer and the machine tool configured to execute the processing of the setting method according to the sixth aspect, the computer program according to the fifteenth aspect including instructions for causing a computer to execute the setting method according to the sixth aspect, and the computer-readable medium according to the sixteenth aspect including instructions for causing a computer to execute the setting method according to the sixth aspect, the programmer can visually confirm the positions of the selected points and the position of the program origin, and therefore can confirm the settings of the setup work performed by the programmer himself / herself. Also, when the candidate of the measurement point initially specified by the programmer is inappropriate, the operator can easily confirm a point that can be used as an alternative measurement point while referring to the position of the program origin.

[0035] In the setting method according to the seventh aspect, the computer according to the twelfth aspect configured to execute processing of the setting method according to the seventh aspect, the machine tool according to the thirteenth aspect including a computer configured to execute processing of the setting method according to the seventh aspect, the computer program according to the fifteenth aspect including instructions for causing a computer to execute the setting method according to the seventh aspect, and the computer readable medium according to the sixteenth aspect including instructions for causing a computer to execute the setting method according to the seventh aspect, when the selected point is regarded as a measurement point, a three-dimensional model of the work can be used to set the movement direction perpendicular to the work surface on which the moving target is located, and the distance to the work surface can be automatically calculated to set an appropriate deceleration timing for the probe.

[0036] In the setting method according to the 8th aspect, the machine tool according to the 13th aspect having a computer configured to execute processing of the setting method according to the 8th aspect, the computer program according to the 15th aspect having instructions for causing a computer to execute the setting method according to the 8th aspect, and the computer readable medium according to the 16th aspect having instructions for causing a computer to execute the setting method according to the 8th aspect, the selected point is determined as a measurement point, and the three-dimensional position of the measurement point is automatically measured by a probe, thereby automating the origin setting work.

[0037] In the setting method according to the 9th aspect, the computer according to the 12th aspect configured to execute the processing of the setting method according to the 9th aspect, the machine tool according to the 13th aspect including the computer configured to execute the processing of the setting method according to the 9th aspect, the machine tool system according to the 14th aspect including the computer and the machine tool configured to execute the processing of the setting method according to the 9th aspect, the computer program according to the 15th aspect including instructions to cause the computer to execute the setting method according to the 9th aspect, and the computer-readable medium according to the 16th aspect including instructions to cause the computer to execute the setting method according to the 9th aspect, a user such as an operator or a programmer can check whether the surrounding area does not interfere with a jig or the like by referring to the virtual space. In addition, by outputting the result of the determination of whether the surrounding area contacts the first three-dimensional model or the third three-dimensional model to the output device of the computer, it is possible to easily check whether the surrounding area does not interfere with a jig or the like.

[0038] The setting method according to the 10th aspect, the computer according to the 12th aspect configured to execute the processing of the setting method according to the 10th aspect, the machine tool according to the 13th aspect including a computer configured to execute the processing of the setting method according to the 10th aspect, the machine tool system according to the 14th aspect including a computer and a machine tool configured to execute the processing of the setting method according to the 10th aspect, the computer program according to the 15th aspect including instructions for causing a computer to execute the setting method according to the 10th aspect, and the computer-readable medium according to the 16th aspect including instructions for causing a computer to execute the setting method according to the 10th aspect, allow a user to easily check an interference state. Furthermore, by displaying a 3D model of the probe in addition to the 3D models of the work, table, and jig and simulating the movement of the probe in a virtual space, the user can further easily check the interference state.

[0039] With the setting method according to the 11th aspect, the computer according to the 12th aspect configured to execute processing of the setting method according to the 11th aspect, the machine tool according to the 13th aspect including a computer configured to execute processing of the setting method according to the 11th aspect, the machine tool system according to the 14th aspect including a machine tool and a computer configured to execute processing of the setting method according to the 11th aspect, the computer program according to the 15th aspect including instructions for causing a computer to execute the setting method according to the 11th aspect, and the computer readable medium according to the 16th aspect including instructions for causing a computer to execute the setting method according to the 11th aspect, a user can confirm whether the motion range defined by the set movement procedure belongs to the movable range. Effect of the Invention

[0040] According to the technology disclosed in the present application, parameters representing the positions and orientations of the first to third three-dimensional models in the three-dimensional virtual space are set, and the three-dimensional position of the program origin is calculated by using the relative position of the program origin prepared in advance from the reference position of the second three-dimensional model, and the measurement point is determined based on the position of the program origin, so that the setting of the three-dimensional virtual space can be easily performed. In particular, by using the first to third three-dimensional models, it is effective in that the measurement point can be determined based on the positional relationship with the program origin when the program origin is inside the first three-dimensional model. Since the operator only needs to arrange the workpiece and the jig on the table of the machine tool according to the table, workpiece, and jig of the machine tool displayed in the virtual space, the operator can intuitively understand the setup work, and even an operator without high skills can easily perform the setup work. Furthermore, even if the setup cannot be performed as instructed on the table of the machine tool, by rearranging the three-dimensional models of the table, workpiece, and jig of the machine tool in the virtual space in the numerical control device, the machine tool can determine the approximate positions of the measurement points without the operator having to input the positions of the program origin and the measurement points in numbers. Therefore, alternative measurement points can be easily determined in the numerical control device of the machine tool, and setup work can be flexibly carried out. [Brief description of the drawings]

[0041] [Figure 1] FIG. 1 is a diagram showing a schematic configuration of a system including a machine tool according to an embodiment and a computer for generating a machining program for the machine tool. [Diagram 2] FIG. 2 is a diagram showing the configuration of an electronic circuit of the machine tool according to the embodiment. [Diagram 3] FIG. 3 is a cross-sectional view showing an outline of a machining head of the machine tool shown in FIG. [Figure 4] FIG. 4 is a diagram for explaining a program origin, at least one optional point, and a work coordinate system. [Diagram 5] FIG. 5 is an example of a graphic user interface for inputting parameters of the first 3D model and the third 3D model by the measurement point setting program. [Figure 6] FIG. 6 is an example of a graphic user interface of parameters of the second 3D model by the measurement point setting program. [Figure 7] FIG. 7 is an example of a graphic user interface for inputting settings for each program according to the embodiment. [Figure 8] FIG. 8 is a schematic diagram of a case where a probe is attached to a processing head. [Figure 9] FIG. 9 is a schematic diagram of a virtual space for determining a movement procedure. [Figure 10] FIG. 10 shows a method for determining a movement model when a vertex at which three or more planes intersect is set as a selected point PS. [Figure 11] FIG. 11 is a display example in which the surrounding area in the example of FIG. 10 is highlighted. [Figure 12] FIG. 12 is a display example showing a case where the motion range of the probe in the example of FIG. 10 is outside the movable range of the probe. [Figure 13] FIG. 13 shows a method for determining a movement model when a vertex at which three or more planes intersect in a rectangular groove is set as a selected point PS. [Figure 14] FIG. 14 shows a method for determining a movement model when the center of the circular base is set as the selected point PS. [Figure 15] FIG. 15 shows a method for determining a movement model when the center of the circular bottom surface of a circular groove is set as the selected point PS. [Figure 16] FIG. 16 is a flowchart showing the process flow of the measurement point setting program, the probe movement procedure generating program, and the movement simulation program according to this embodiment. [Figure 17] FIG. 17 is a flowchart showing the process flow of the measurement point setting program, the probe movement procedure generating program, and the movement simulation program according to this embodiment. [Figure 18] FIG. 18 is a flowchart showing the process flow of the measurement point setting program, the probe movement procedure generating program, and the movement simulation program according to this embodiment. [Figure 19] FIG. 19 is a flowchart showing the process flow of the measurement point setting program, the probe movement procedure generating program, and the movement simulation program according to this embodiment. [Figure 20] FIG. 20 is a flowchart showing the process flow of the measurement point setting program, the probe movement procedure generating program, and the movement simulation program according to this embodiment. [Figure 21] FIG. 21 is a flowchart showing the flow of processing of the program origin measuring program according to this embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0042] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will now be described in detail with reference to the drawings showing embodiments thereof. In the drawings, the same reference numerals indicate corresponding or substantially identical components. <Embodiment> <Configuration of machine tool 2>

[0043] Fig. 1 is a diagram showing the external configuration of a machine tool system 1 according to an embodiment of the present invention. Fig. 2 is a diagram showing the configuration of an electronic circuit of the machine tool system 1 according to the embodiment. With reference to Figs. 1 and 2, the machine tool system 1 includes a machine tool 2 equipped with a control computer 20, and a graphics processing computer device 4 equipped with a graphics processing computer 60 connected to the control computer 20 via a communication network 3. The machine tool 2 is, for example, a machining center. The communication network 3 may be a wired communication network such as an intranet or a wireless communication network such as a wireless LAN.

[0044] The machine tool 2 includes a control panel 10 including a control computer 20, an operator input interface 40, and a CNC monitor 50. The control computer 20 is generally a computer numerically controlled (CNC) device that controls the operation of the machine tool 2. The control computer 20 may simply be referred to as a numerical control device. The operator input interface 40 is composed of at least one of a touch panel, a key, a dial, a switch, and a button. The control computer 20 is configured to receive an input from an operator via the operator input interface 40. The CNC monitor 50 is capable of visually displaying the output of the control computer 20. The CNC monitor 50 is also capable of receiving a video signal from a graphics processing computer 60, which will be described later, and may be configured to display the output of the control computer 20 and the output of the graphics processing computer 60 in a switchable manner.

[0045] The graphics processing computer device 4 is utilized by a programmer to generate a machining program 101 and generate three-dimensional data for reproducing a setup work environment and instructing the setup work. The graphics processing computer device 4 includes a graphics processing computer 60, a programmer input interface 80, and a PC monitor 90. The graphics processing computer 60 may be a so-called general-purpose computer. The programmer input interface 80 includes a keyboard, a mouse, and the like. The graphics processing computer 60 is configured to receive input from a programmer via the programmer input interface 80. The PC monitor 90 is configured to visually display the output of the graphics processing computer 60.

[0046] In the following embodiments, the control computer 20 and the graphics processing computer 60 may be collectively referred to as the computer COM. When the computer COM is referred to as an operating subject, it means that either the control computer 20 or the graphics processing computer 60 can be the operating subject. The operator input interface 40 and the programmer input interface 80 may be collectively referred to as the input interface INT. In the following embodiments, when the input interface INT of the computer COM is referred to as an operating subject, it means that the input interface corresponding to the computer COM out of the operator input interface 40 and the programmer input interface 80 can be the operating subject. Also, when the input interface INT is simply referred to as an operating subject, it means that either the operator input interface 40 or the programmer input interface 80 can be the operating subject, regardless of whether it is the input interface INT of the computer COM or not.

[0047] The CNC monitor 50 and the PC monitor 90 may be collectively referred to as the display DIS. When the display DIS is simply referred to as the operating subject, it indicates that either the CNC monitor 50 or the PC monitor 90 can be the operating subject, regardless of whether it is a display DIS configured to visually display the output of the computer COM. When the display DIS of the computer COM is referred to as the operating subject, it indicates that the display of the CNC monitor 50 or the PC monitor 90 configured to visually display the output of the computer COM can be the operating subject. The CNC monitor 50 may be referred to as the display DIS of the control computer 20 (numerical control device), and the PC monitor 90 may be referred to as the display DIS of the graphics processing computer 60 (or a computer COM defined to be different from the control computer 20 (numerical control device)).

[0048] As shown in Fig. 1, the machine tool 2 includes a control panel 10, a table 11, a machining head 12, a tool magazine 15, a tool changer 16, and a jig 18. The machine tool 2 is provided with a machine origin O M With x as the origin, M Axis, Y M axis, Z M The machining head 12 has a machine coordinate system having an X axis. M Along the X axis M Direction, Y M Along the Y axis M Direction, Z M Along the Z axis M The table 11 is movable in each of the directions. The fixture 18 is configured to hold a workpiece W. The fixture 18 is attached to the table 11. The tool magazine 15 is capable of storing both a tool holder 17 that holds a tool T1 and a tool holder 17 that holds another tool T2. Although not shown in FIG. 1, the machine tool 2 may further include a cover that covers the above-mentioned components other than the control panel 10.

[0049] Referring to FIG. 2, the control computer 20 includes an electronic circuit 30 having a hardware processor 31, a memory 32, a bus 35, an input / output interface 36, and a communication interface 37. The input / output interface 36 connects the electronic circuit 30 to the operator input interface 40 and the CNC monitor 50 described above. The input / output interface 36 connects the electronic circuit 30 to the head drive mechanism 13 and the rotary drive device 14 described below. The communication interface 37 is configured to communicate with the graphics processing computer 60 via the communication network 3. The memory 32 stores a machining program 101 for machining the workpiece W generated in the graphics processing computer 60, etc. The memory 32 may be referred to as a storage device. The hardware processor 31 executes various programs. In the following embodiments, the hardware processor 31 may be simply referred to as the processor 31.

[0050] Fig. 3 is a cross-sectional view showing an overview of the machining head 12 of the machine tool 2 shown in Fig. 1. As shown in Fig. 3, the machining head 12 includes a hollow spindle frame 12a forming a housing, and a spindle 12b contained in the spindle frame 12a. The spindle frame 12a of the machining head 12 is attached to a head drive mechanism 13 shown in Fig. 2 and rotates in the X-direction. M Axis, Y M axis and Z M The position of the main shaft 12b is the center P of the taper gauge line. B When a command to return to the origin is issued in the machining program 101, the center P B The position of the machine origin O M The machining head 12 is moved so that it is positioned at the axis AX1. One end of the spindle 12b is connected to a rotary drive device 14 such as a motor, and configured to rotate around a rotation axis AX1. The rotary drive device 14 includes a stator 14s fixed to the spindle frame 12a and a rotor 14r fixed to the spindle 12b. The head drive mechanism 13 and the rotary drive device 14 are connected to a control computer 20 via an input / output interface 36.

[0051] A tool holder 17 is detachably attached to the lower end of the spindle 12b. FIG. 3 shows a tool T1 according to an embodiment. The tool T1 is, for example, a tool for cutting. The tool T1 is held by the tool holder 17. The tool holder 17 includes a holder shank 17S, a groove 17G, and a pull stud 17PS. The spindle 12b includes a collet chuck 12c that can be fitted with the pull stud 17PS, a receiving hole 12r into which the holder shank 17S can be inserted, and a key 12K that can be fitted with the groove 17G. The receiving hole 12r has a tapered shape in a cross-sectional view, and the closed curve at the lower end of the receiving hole 12r is called the taper gauge line described above. The collet chuck 12c can move in an axial direction DX along the rotation axis AX1 of the spindle 12b. The collet chuck 12c is configured to open in the radial direction with respect to the rotation axis AX1 when it is shifted in the first direction DR1 from the pull stud 17PS toward the tool T1 in the axial direction DX, and the pull stud 17PS can be attached and detached. The collet chuck 12c is configured to close in the radial direction with respect to the rotation axis AX1 when it is shifted in the second direction DR2 from the tool T1 toward the pull stud 17PS in the axial direction DX, and engages with the pull stud 17PS. The pull stud 17PS engages with the collet chuck 12c, and the tool holder 17 is fixed to the spindle 12b. At this time, the key 12K of the spindle 12b engages with the groove portion 17G of the tool holder 17, so that the rotation of the tool holder 17 with respect to the spindle 12b is restricted.

[0052] Referring to FIG. 2, the graphics processing computer 60 includes an electronic circuit 70 including a hardware processor 71, a memory 72, a system bus 75, an input / output interface 76, and a communication interface 77. The hardware processor 71, the memory 72, the system bus 75, the input / output interface 76, and the communication interface 77 have substantially the same functions as the hardware processor 31, the memory 32, the bus 35, the input / output interface 36, and the communication interface 37, respectively. The input / output interface 76 connects the above-mentioned programmer input interface 80 and the PC monitor 90 to the electronic circuit 70. The communication interface 77 is configured to communicate with the control computer 20 via the communication network 3. The memory 72 stores the machining program generation program 100 for generating the above-mentioned machining program 101, and the like. The memory 72 may be referred to as a storage device. The hardware processor 71 executes various programs. In the following embodiments, the hardware processor 71 may be simply referred to as the processor 71.

[0053] The machining program generation program 100 is, for example, the machining program generation program disclosed in WO2021-014571. When a three-dimensional model (3D model) 110 of a product is input, this machining program generation program 100 is a program that automatically generates a machining program 101 together with a 3D model of a workpiece W that contains the 3D model of the product. Hereinafter, the 3D model of the workpiece W is referred to as a second 3D model 112. The second 3D model 112 is a 3D model for reproducing the workpiece W in a three-dimensional virtual space VS described later. The processor 71 that executes the machining program generation program 100 automatically generates a machining program 101 from a program origin O when generating the machining program 101. P The relative position of the second 3D model 112 from the reference position is determined.

[0054] Figure 4 shows the program origin O P 1 is a diagram for explaining a reference plane BP, etc. In the machining program 101, a programmer sets a reference point that makes it easy to create a tool path (a moving path of a tool T1) as a program origin O.P As the program origin O P Work coordinate system O based on P -X P Y P Z P A machining program 101 is created while defining a tool path in the 3D model 112. On the other hand, the second 3D model 112 is created in a local coordinate system O for defining the relative positions of vertices and faces in the model. RW -X RW Y RW Z RW The local coordinate system is also called a model coordinate system. The reference position of the second 3D model 112 is preferably the origin O RW This is the position of the program origin O P The relative position of the second 3D model 112 from the reference position is the program origin O P The local coordinate system of the second 3D model 112 RW -X RW Y RW Z RW The local coordinates (X PR ,Y PR ,Z PR ).

[0055] The processor 71 that executes the machining program generation program 100 generates the machining program 101 by setting the program origin O P The local coordinates of (X PR ,Y PR ,Z PR ) may be stored in the virtual space management data 119 of the memory 72.

[0056] Returning to FIG. 2, the storage device (memory 32, memory 72) stores a measurement point setting program 102. The measurement point setting program 102 has a function of generating a three-dimensional virtual space VS that represents a virtual reality environment by utilizing computer graphics. A view VSV of the generated three-dimensional virtual space VS is displayed on the PC monitor 90 and the CNC monitor 50 in FIG. 1. Since the view VSV is generated by three-dimensional computer graphics, it is possible to change the view by changing the line of sight. The first 3D model 111 is a 3D model that reproduces the table 11 of the machine tool 2 in the three-dimensional virtual space VS. The third 3D model 113 is a 3D model that reproduces the jig 18 in the three-dimensional virtual space VS. For this purpose, the local coordinate system O of the first 3D model 111 is a 3D model that reproduces the table 11 of the machine tool 2 in the three-dimensional virtual space VS. RT -X RT Y RT Z RT Units of the second 3D model 112 local coordinate system O RW -X RW Y RW Z RW and the local coordinate system O of the third 3D model 113 RJ -X RJ Y RJ Z RJ The units are the machine coordinate system O of the table 11, the workpiece W, and the jig 18. M -X M Y M Z M The dimensions of the first to third 3D models 111 to 113 are determined so that they are the same as the units in the real space (units in real space, for example, mm). The virtual space management data 119 manages parameters that represent the positions and orientations of the first 3D model 111, the second 3D model 112, and the third 3D model 113 in the three-dimensional virtual space VS.

[0057] The first 3D model 111, the second 3D model 112, the third 3D model 113, and the virtual space management data 119 are preferably stored in the memory 32 of the control computer 20 and the memory 72 of the graphics processing computer 60. Preferably, the first 3D model 111, the second 3D model 112, the third 3D model 113, and the virtual space management data 119 are first generated or prepared by the graphics processing computer 60, and shared with the control computer 20 using a well-known file sharing application. In this manner, the computer COM that executes the measurement point setting program 102 stores the first 3D model 111, the second 3D model 112, the third 3D model 113, the program origin O, and the like. P A relative position of the second 3D model 112 from a reference position is prepared.

[0058] A computer COM that executes the measurement point setting program 102 reads the first 3D model 111, the second 3D model 112, the third 3D model 113, and virtual space management data 119 that manages parameters of the three-dimensional virtual space VS, generates the three-dimensional virtual space VS, and sets parameters that represent the positions and orientations of the first to third 3D models 111 to 113 in the three-dimensional virtual space VS. When an API used for drawing three-dimensional graphics such as OpenGL or DirectX is used, the local coordinate system O of the first 3D model 111 is used. RT -X RT Y RT Z RT The point (x T ,y T ,z T ), the local coordinate system O of the second 3D model 112 RW -X RW Y RW Z RW The point (x W ,y W ,z W ), the local coordinate system of the third 3D model 113 RJ -X RJ Y RJ Z RJ The point (x J ,y J,z J ) is expressed as the world coordinate system O, which is the reference for expressing the position and orientation in the three-dimensional virtual space VS, by the following formula: W -X W Y W Z W Coordinates (x WT ,y WT ,z WT ), (x WW ,y WW ,z WW ), (x WJ ,y WJ ,z WJ ) can be transformed into the world coordinate system O W -X W Y W Z W The units of the first 3D model are the local coordinate system O RT -X RT Y RT Z RT Units of the second 3D model 112 local coordinate system O RW -X RW Y RW Z RW and the local coordinate system O of the third 3D model 113 RJ -X RJ Y RJ Z RJ It is assumed that the units are defined to be the same as those of .

[0059] The local coordinate system of the first 3D model 111 RT -X RT Y RT Z RT Origin of O RT is the world coordinate system O W -X W Y W Z W Origin of O W From (a T ,b T ,c T ), and X W α around the right-hand thread with the axis as the center T , Y W β around the right-hand thread around the axis T , Z W γ around the right-hand thread around the axis TIf you rotate it by the local coordinate system O RT -X RT Y RT Z RT When the orientation of the light coincides with that of the object, the following equation (1) holds:

number

[0060] The local coordinate system of the second 3D model 112 RW -X RW Y RW Z RW Origin of O RW is the world coordinate system O W -X W Y W Z W Origin of O W From (a W ,b W ,c W ), and X W α around the right-hand thread with the axis as the center W , Y W β around the right-hand thread around the axis W , Z W γ around the right-hand thread around the axis W If you rotate it by the local coordinate system O RW -X RW Y RW Z RW When the orientation of the light coincides with that of the object, the following equation (2) holds:

number

[0061] Third, the local coordinate system of the 3D model 113 RJ -X RJ Y RJ Z RJ Origin of O RJ is the world coordinate system O W -X W Y W Z W Origin of O W From (a J ,b J ,c J ), and XW α around the right-hand thread with the axis as the center J , Y W β around the right-hand thread around the axis J , Z W γ around the right-hand thread around the axis J If you rotate it by the local coordinate system O RJ -X RJ Y RJ Z RJ When the direction of the light coincides with that of the light source, the following equation (3) holds:

number

[0062] However, Rot(Z W ,γ) Rot(Y W ,β) Rot(X W ,α)·Trans(a,b,c) is expressed by the following matrix:

number

number

number

number

[0063] In order to allow the operator to easily determine the correspondence between the three-dimensional virtual space VS and the real space on the table 11 of the machine tool 2, the X W Axis is X in the machine coordinate system M It is preferable that the axis is in the same direction as the Y axis of the world coordinate system. W Axis is Y in the machine coordinate system M It is preferable that the axis is in the same direction as the Z axis of the world coordinate system. W Axis is Z in the machine coordinate system M It is preferable that the axis is in the same direction as the origin O of the world coordinate system. W is the mechanical origin O M It is preferable that the above Rot(Z W ,γT )·Rot(Y W ,β T )·Rot(X W ,α T )·Trans(a T ,b T ,c T ), Rot(Z W ,γ W )·Rot(Y W ,β W )·Rot(X W ,α W )·Trans(a W ,b W ,c W ), Rot(Z W ,γ J )·Rot(Y W ,β J )·Rot(X W ,α J )·Trans(a J ,b J ,c J ) is called a homogeneous transformation matrix. The parameters representing the position and orientation of each of the 3D models 111 to 113 in the three-dimensional virtual space VS may be the homogeneous transformation matrix of each model, and (a T ,b T ,c T ,α T ,β T ,γ T )(a W ,b W ,c W ,α W ,β W ,γ W )(a J ,b J ,c J ,α J ,β J ,γ J ) may be used. When the virtual space management data 119 includes such parameters, the setting of these parameters may be realized by reading the virtual space management data 119 and executing drawing commands for the first to third 3D models 111 to 113 based on these parameters using an API used for drawing three-dimensional graphics.

[0064] When changing from the setting of the virtual space management data 119 or when there is no setting of the virtual space management data 119, the setting of these parameters may be executed by displaying a graphic user interface (GUI) as shown in Fig. 5 and Fig. 6 on the display DIS of the computer COM and further accepting an input from a user such as a programmer or an operator. Fig. 5 shows an example of a GUI for setting parameters representing the positions and orientations of the three-dimensional virtual space VS of the first 3D model 111 and the third 3D model 113. The GUI shown in Fig. 5 may be entirely contained in one window, or may be displayed separately in multiple windows. The computer COM executing the measurement point setting program 102 displays the GUI shown in Fig. 5.

[0065] This GUI includes text boxes 401 to 409, 421 to 428, and radio buttons 411, 412, and 431 to 434. The text boxes 401 to 409 are GUIs for setting each of a plurality of dimensions of the third 3D model 113 shown in the view JV shown to the right of the text boxes 401 to 409. The radio buttons 411 and 412 are GUIs for setting whether or not the third 3D model 113 includes a spacer object SPOBJ. Either one of the radio buttons 411 and 412 can be selected. When the radio button 411 is selected, a spacer object SPOBJ having dimensions set in the text boxes 421 and 422 is added to the third 3D model 113.

[0066] The computer graphics view TV shown in the lower part of FIG. 5 shows an object in which a third 3D model 113 is placed on a first 3D model 111 in a local coordinate system O of the first 3D model 111. RT -X RT Y RT Z RT Z RTThis is a view seen in the axial direction. The third 3D model 113 is placed on the first 3D model 111 so that its bottom surface BTP (see view JV) is oriented parallel to the placement surface MP (see Figures 1, 4, etc.) of the first 3D model 111. In order to easily realize this, the normal vector of the placement surface MP of the first 3D model 111 is set to Z RT The normal vector of the bottom surface BTP of the third 3D model 113 is in the negative direction of the axis, and the normal vector of the bottom surface BTP of the third 3D model 113 is in the local coordinate system O RJ -X RJ Y RJ Z RJ The direction of Z RJ It is preferable that a first 3D model 111 and a third 3D model 113 are prepared so as to face in the positive direction of the axis.

[0067] Third, the local coordinate system of the 3D model 113 RJ -X RJ Y RJ Z RJ The orientation of the first 3D model 111 is the orientation shown in the view JV, and the local coordinate system O RT -X RT Y RT Z RT Assuming that the orientation of the first 3D model 111 is the orientation shown on the view TV, the local coordinate system O RT -X RT Y RT Z RT The orientation of the third 3D model 113 is determined based on the local coordinate system O by selecting one of the radio buttons 431 to 434. RJ -X RJ Y RJ Z RJ Z RJ The orientation can be set by rotating the jig 18 by 0 degrees, 90 degrees, 180 degrees, or 270 degrees around the axis. Only one of the radio buttons 431 to 434 can be selected. Since the jig 18 can only be placed in one of the four orientations shown by the radio buttons 431 to 434 with respect to the table 11, the local coordinate system O of the third 3D model 113 RJ -X RJ Y RJ Z RJIt is preferable to set only the angles that can be arranged in this way based on the orientation of the device using radio buttons.

[0068] The text boxes 423 to 426 are X-ray images displayed on the view TV. RJ Coordinate, Y RJ The third 3D model 113 is set to be placed at the coordinate position. When the numerical value of any one of the text boxes 423 to 426 is changed, the computer COM executing the measurement point setting program 102 automatically corrects the remaining length based on the shape of the first 3D model 111 and the orientation selected by the radio buttons 431 to 434. The text box 428 represents the distance between the bottom surface BTP of the third 3D model 113 and the mounting surface MP of the first 3D model 111. Normally, 0 is set in the text box 428, but when a spacer is set between the jig 18 and the table 11, a value equal to or greater than 0 may be set.

[0069] Table 11 shows the machine coordinate system O M -X M Y M Z M X M In the three-dimensional virtual space VS, the first 3D model 111 is configured to be rotatable around the axis. RT -X RT Y RT Z RT X RT Axis is the world coordinate system O W -X W Y W Z W X W The orientation of the table 11 is specified along the X axis. M This represents the rotation angle of the table 11 around the rotation axis along the axis. Normally, 0 is set in the text box 427, but if the table 11 is rotated, a value other than 0 may be set.

[0070] FIG. 6 shows an example of a GUI for setting parameters representing the position and orientation of the second 3D model 112 relative to the third 3D model 113. The GUI shown in FIG. 6 may be entirely contained in one window, or may be displayed separately in multiple windows. A computer COM that executes the measurement point setting program 102 displays the GUI shown in FIG. 6. This GUI includes object operation buttons 441-445, view selection buttons 446-448, direction instruction buttons 451-454, operation amount instruction radio buttons 456, 457, and an operation amount instruction text box 458. The view selection buttons 446-448 are used to view an assembly model in which the first to third 3D models 111-113 are assembled, in the local coordinate system O of the third 3D model 113. RJ -X RJ Y RJ Z RJ X RJ Axis, Y RJ axis, Z RJ These buttons are used to select the direction along which the view is to be displayed as the view WV on the right side of FIG. 6. Only one of the view selection buttons 446 to 448 can be selected. FIG. 6 shows an example in which the button 448 is selected, and the button 448 is highlighted. When the button 446 is selected, RJ The view of the assembly model along the axis is displayed as the view WV. When button 447 is selected, the X RJ The view of the assembly model along the axis is displayed as the view WV. When button 448 is selected, the X RJ A view of the assembly model viewed in a direction along the axis is displayed as a view WV. Note that, by default, the view WV is displayed in the local coordinate system O of the second 3D model 112 among the faces of the second 3D model 112. RW -X RW Y RW Z RW Z RW The position and orientation of the second 3D model 112 are set so that the plane facing the negative direction of the axis is placed on the placement surface MB of the jig 18 (see view JV in FIG. 5).

[0071] The move button 441, the rotate button 442, and the surface matching button 443 are buttons that can be selected either one at a time. The plane button 444 and the point designation button 445 are valid only when the move button 441 is selected, and are invalid when either the rotate button 442 or the surface matching button 443 is selected. The plane button 444 and the point designation button 445 are buttons that can be selected either one at a time. When the move button 441 is selected, either one of the operation amount instruction radio buttons 456 and 457 can be selected. When the rotate button 442 is selected, the radio button 456 is automatically selected, and the radio button 457 is invalid. When the surface matching button 443 is selected, the radio buttons 456 and 457 and the text box 458 are invalid.

[0072] When the movement button 441 and the plane button 444 are selected, if any one of the direction instruction buttons 451 to 454 is pressed, the computer COM executing the measurement point setting program 102 moves the second 3D model 112 in the direction indicated by the direction instruction buttons 451 to 454 in the view WV. When the radio button 456 is selected, if any one of the direction instruction buttons 451 to 454 is selected once, the computer COM executing the measurement point setting program 102 moves the second 3D model 112 in the direction of the selected button by the numerical value indicated in the text box 458. When the radio button 457 is selected, if any one of the direction instruction buttons 451 to 454 is selected once, the computer COM executing the measurement point setting program 102 moves the second 3D model 112 in the direction of the selected button until it comes into contact with another object. Note that if no other object exists in the selected direction, the movement is invalidated.

[0073] When the move button 441 is selected and the point designation button 445 is selected, if one point in the area of ​​the second 3D model 112 in the view WV is selected by clicking, touching, etc., and another point in the view WV is selected by clicking, touching, etc., the computer COM executing the measurement point setting program 102 moves the second 3D model 112 so that the previously selected point moves to the later selected point. When the rotate button 442 is selected and the direction instruction button 452 is selected, the computer COM executing the measurement point setting program 102 rotates the second 3D model 112 counterclockwise about an axis along the viewing direction of the view WV by the numerical value shown in the text box 458. The unit of the numerical value in this case is degrees or radians. When the rotate button 442 is selected and the direction instruction button 454 is selected, the computer COM executing the measurement point setting program 102 rotates the second 3D model 112 clockwise about an axis along the viewing direction of the view WV by the numerical value shown in the text box 458.

[0074] When the face matching button 443 is selected and the direction instruction button 452 is selected, the computer COM executing the measurement point setting program 102 rotates the second 3D model 112 counterclockwise about an axis along the viewing direction of the view WV. At this time, the second 3D model 112 is rotated so that one of the planes (planes SF1 to SF4 in the example of FIG. 6) of the second 3D model 112 faces parallel to the mounting surface MB of the jig 18 (see the view JV in FIG. 5). In the example of FIG. 6, when the face matching button 443 is selected and the direction instruction button 452 is selected once, the second 3D model 112 is rotated so that the plane SF2 faces downward. When the face matching button 443 is selected and the direction instruction button 452 is selected twice, the second 3D model 112 is rotated so that the plane SF3 faces downward. When the face matching button 443 is selected and the direction button 452 is selected three times, the second 3D model 112 is rotated so that the plane SF4 faces downward.

[0075] When the surface matching button 443 is selected and the direction instruction button 454 is selected, the computer COM executing the measurement point setting program 102 rotates the second 3D model 112 clockwise about an axis along the viewing direction of the view WV. At this time, the second 3D model 112 is rotated so that one of the planes (planes SF1 to SF4 in the example of FIG. 6) of the second 3D model 112 faces parallel to the mounting surface MB of the jig 18 (see the view JV in FIG. 5). In the example of FIG. 6, when the surface matching button 443 is selected and the direction instruction button 454 is selected once, the second 3D model 112 is rotated so that the plane SF4 faces downward. When the surface matching button 443 is selected and the direction instruction button 454 is selected twice, the second 3D model 112 is rotated so that the plane SF3 faces downward. When the face matching button 443 is selected and the direction button 454 is selected three times, the second 3D model 112 is rotated so that the plane SF2 faces downward.

[0076] This rotation angle can be obtained, for example, as follows. All surfaces of the 3D model 112 are represented as a boundary representation (Brep) of the 3D model. The boundary representation (Brep) includes three elements: vertices, edges, and surfaces (faces). A face is an area surrounded by edges. Components of a face include normal vectors of the vertices and an equation of the face. In the technical field of three-dimensional graphics, a normal vector defined by a boundary representation is defined as a vector pointing toward the outside of a 3D object. The computer COM that executes the measurement point setting program 102 calculates the normal vector of the mounting surface MB of the jig 18. TIFF0007659139000008.tif1930 is obtained from the boundary representation (Brep) of the mounting surface MB of the third 3D model 113. The computer COM that executes the measurement point setting program 102 calculates normal vectors of each of the planes SF1, SF2, SF3, and SF4. TIFF0007659139000009.tif1872 are obtained from the respective boundary representations of the second 3D model 112. These normal vectors are typically expressed in the local coordinate system O RW-X RW Y RW Z RW Therefore, the computer COM that executes the measurement point setting program 102 is TIFF0007659139000010.tif1798. If at least one of the planes SF1 to SF4 is a curved surface, the normal vectors at the multiple vertices that make up that surface will be different. In that case, the vector obtained by combining these normal vectors can be regarded as the normal vector that represents the surface and used for rotation.

[0077] By using the rotation button 442 and the surface matching button 443, the programmer can set a surface (a reference plane BP described later) having points suitable for measuring the position by the probe 19 (see FIG. 8) among the multiple surfaces of the second 3D model 112 on the substantially opposite side of the surface facing the mounting surface MB of the jig 18. Since the programmer knows the tool path in the machining program 101, the programmer can set a reference plane BP suitable for machining. Since it is preferable that the operator who performs the setup work does not change the orientation of the second 3D model 112 set in this way, it is preferable that, among the GUIs shown in FIG. 5 and FIG. 6, only the GUIs related to the movement and rotation of the third 3D model 113 relative to the first 3D model 111 are valid when the control computer 20 executes the measurement point setting program 102.

[0078] As described above, when the positions and orientations of the first to third 3D models 111-113 are set, parameters representing the position and orientation of each of the first to third 3D models 111-113 in the three-dimensional virtual space VS are stored as virtual space management data 119. When the parameters are set, the computer COM executing the measurement point setting program 102 sets at least one optional point P whose three-dimensional position in real space can be measured by contacting the workpiece W with a probe 19 (see FIG. 8) that can be attached to the machine tool 2. O The position of the 3D virtual space VS is the program origin O PThe position is calculated based on the relative positions of the first to third 3D models 111 to 113 and parameters.

[0079] The computer COM that executes the measurement point setting program 102 stores at least one option point P O A movement model for moving the tip of the probe 19 to obtain the three-dimensional position of the workpiece W is set. A window 460 in FIG. 7 is an example of a GUI for inputting a movement model. The GUI includes, for example, radio buttons 461 to 464. At least one of the radio buttons 461 to 464 may be omitted, and a radio button for setting another movement model not shown in the radio buttons 461 to 464 may be added. The radio button 461 is a button for selecting a vertex of the workpiece W having a polyhedral shape as at least one optional point P. O The radio button 462 is a button for setting a model in which the corners of the square groove shown in FIG. 13 are set to at least one optional point P O The radio button 463 is a button for setting a model in which the center of the upper base of the cylinder shown in FIG. 14 is set to at least one optional point P O The radio button 464 is a button for setting a model in which the center of the bottom surface of the circular groove shown in FIG. 15 is set to at least one optional point P O This button is used to set the model to be used. The following mainly describes the case where radio button 461 is selected, and later describes the cases where radio buttons 462 to 464 are selected.

[0080] When the radio buttons 461 and 463 are selected, the computer COM executing the measurement point setting program 102 extracts the plane farthest from the mounting surface MB of the jig 18 among the planes represented by the boundary representation of the second 3D model 112 as the reference plane BP. Whether or not the surface is a plane can be determined from the equation of the plane. When the radio button 461 is selected, the distance between the mounting surface MB and the plane is obtained by the distance between the point indicated by the average value of each coordinate of the world coordinates of the vertices included in the plane and the mounting surface MB represented by the equation of the plane in the world coordinate system. Whether or not the plane is a polygon can be determined by whether or not the contour line connecting the edges from the boundary representation of the second 3D model 112 forms a polygon. When the radio button 463 is selected, the distance between the mounting surface MB and the plane is obtained by the distance between the center of the circular plane and the mounting surface MB represented by the equation of the plane in the world coordinate system. Whether or not the plane is circular can be determined by whether or not the contour line connecting the edges from the boundary representation of the second 3D model 112 forms a circle.

[0081] When the radio button 462 is selected, the computer COM executing the measurement point setting program 102 extracts a plane whose contour line connecting edges forms a polygon from the boundary representation of the second 3D model 112. Then, the computer COM determines whether or not a half-line extending from a vertex on the edge in a direction along the normal vector of a face that is in contact with the plane collides with the second 3D model 112. If a collision occurs, the plane is considered to be a face included in the recess. Furthermore, the computer COM determines whether or not a half-line extending from the center of the plane represented from the boundary representation of the second 3D model 112 (for example, a point represented by an average value at each coordinate of the world coordinates of each vertex) in a direction along the normal vector of the plane collides with the second 3D model 112. If a collision does not occur, it is found that the plane forming the polygon is a plane forming the bottom surface of the recess. If there are multiple polygonal planes constituting the bottom surface of the recess extracted in the above manner, the computer COM uses the algorithm described above to extract the plane among these multiple surfaces that is farthest from the mounting surface MB of the jig 18 as the reference plane BP.

[0082] When the radio button 464 is selected, the computer COM executing the measurement point setting program 102 extracts a plane whose contour line connecting edges forms a circle from the boundary representation of the second 3D model 112. Then, the computer COM determines whether or not a half line extending from the vertex on the edge of the circle in a direction along the normal vector of the face tangent to the plane collides with the second 3D model 112. If a collision occurs, the plane is considered to be a surface included in the recess. Furthermore, the computer COM determines whether or not a half line extending from the center of the circle represented from the boundary representation of the second 3D model 112 in a direction along the normal vector of the plane collides with the second 3D model 112. If a collision does not occur, it is found that the plane forming the circle is the plane forming the bottom surface of the recess. When there are multiple circular planes forming the bottom surface of the recess extracted in the above manner, the computer COM extracts the plane farthest from the mounting surface MB of the jig 18 among such multiple surfaces as the reference plane BP by the algorithm shown above.

[0083] When the radio buttons 461 and 462 are selected, the computer COM executing the measurement point setting program 102 sets the vertices included in the boundary representation of the reference plane BP as at least one optional point P O When the radio buttons 463 and 464 are selected, the computer COM executing the measurement point setting program 102 determines the center of a circle defined by the edge of the boundary representation of the reference plane BP as at least one optional point P O It can be calculated as:

[0084] Next, the computer COM executing the measurement point setting program 102 determines at least one optional point P based on the first to third 3D models 111 to 113 and the above parameters representing their positions and orientations. O The position of at least one optional point P in the three-dimensional virtual space VS can be obtained. O The position in the three-dimensional virtual space VS is determined by at least one option point P Oare the world coordinates of at least one optional point P O The world coordinates of are determined by at least one optional point P O The local coordinate system of the second 3D model 112 RW -X RW Y RW Z RW and the local coordinate system O of the second 3D model 112. RW -X RW Y RW Z RW in the world coordinate system O W -X W Y W Z W However, as shown in Fig. 5 and Fig. 6, the position and orientation of the second 3D model 112 is determined based on the relative position and orientation of the first 3D model 111 and the third 3D model 113. Therefore, at least one optional point P O It can be said that the position of the optional point P in the three-dimensional virtual space VS is determined based on the first 3D model 111 and the third 3D model 113. O The local coordinate system of the second 3D model 112 RW -X RW Y RW Z RW The local coordinates represented by are preferably stored in a storage device or are stored in a form of being externally referenced to a boundary representation of those points of the second 3D model 112. In this way, when the position and orientation of the second 3D model 112 is changed, at least one optional point P is transformed from a homogeneous transformation matrix based on the changed position and orientation of the second 3D model 112. O The world coordinates of can be calculated.

[0085] The computer COM that executes the measurement point setting program 102 sets first to third 3D models 111 to 113 and at least one optional point P in the three-dimensional virtual space VS. O One of the selected points P S and program origin O PThe first to third 3D models 111 to 113 and the selected point P are displayed on the PC monitor 90 and the CNC monitor 50 in FIG. S When the display DIS visually displays the output of the computer COM, the computer COM may transmit a computer graphics video signal related to the view VSV of the three-dimensional virtual space VS to the display DIS.

[0086] In the case where the computer COM is the graphics processing computer 60 and the display DIS is the CNC monitor 50, (1) the CNC monitor 50 may also receive a video signal from the graphics processing computer 60 and visually display the output of the graphics processing computer 60. Alternatively, (2) the control computer 20 may execute screen sharing with the graphics processing computer 60 by a screen sharing application such as remote desktop, and the control computer 20 may transmit a computer graphics screen of the three-dimensional virtual space VS generated by the graphics processing computer 60 to the CNC monitor 50. Alternatively, (3) the graphics processing computer 60 may transmit a part or all of the information for generating the three-dimensional virtual space VS to the control computer 20, and the control computer 20 may generate a view VSV of the three-dimensional virtual space VS from the received information. When the view VSV of the three-dimensional virtual space VS is displayed on the CNC monitor 50, it is preferable that the GUIs in Figs. 5 and 6 are displayed together with the display of the three-dimensional virtual space VS, or in a manner selectable from the view VSV of the three-dimensional virtual space VS. This allows the operator performing the setup work to accurately understand the settings of the jig 18.

[0087] Next, the computer COM that executes the measurement point setting program 102 sets at least one option point P O One selected point P from S The computer COM selects at least one option point P O The most program origin OP The point closest to the selected point P S At least one option point P O When there is only one option point P, the computer COM O The selected point P S In the example of FIG. 4, such a selected point P S and at least one optional point P O FIG. 1 shows an example of the selected point P shown in FIG. S 7 is displayed on the view VSV of the three-dimensional virtual space VS. The computer COM that executes the measurement point setting program 102 displays the window 470 of FIG. 7 adjacent to the view VSV of the three-dimensional virtual space VS. The window 470 displays the selected point P S The screen includes a world coordinate (machine coordinate) 471 and a change button 472. S When you want to change the selected point P, press the change button 472. S The change button 472 is an example of a GUI, and other GUIs may be used. The computer COM that executes the measurement point setting program 102 sets at least one option point P O One selected point P from S Accepts input to select at least one option point P based on the input. O One selected point P from S The computer COM that executes the measurement point setting program 102 selects the first to third 3D models 111 to 113 and at least one optional point P in the three-dimensional virtual space VS. O One of the selected points P S and the program origin O P and the selected point P S and program origin O P The selected point P is displayed on the display DIS in a manner that can be distinguished from the first to third 3D models 111 to 113. For example, the computer COM S A spherical object centered at and a program origin O PA spherical object with the center at is displayed on the display DIS.

[0088] Returning to FIG. 2, the storage device (memory 32, memory 72) stores a probe movement procedure generation program 103. The probe movement procedure generation program 103 is S The probe 19 is attached to the machining head 12 as shown in FIG. 8. The probe movement procedure generation program 103 determines the movement procedure of the probe 19 for obtaining the three-dimensional position (for example, machine coordinates) of the selected point P in real space. S The program 103 may receive the position (world coordinates) of the first 3D model 112 in the three-dimensional virtual space VS, the second 3D model 112, and the position and orientation (e.g., homogeneous transformation matrix) of the second 3D model 112 from the measurement point setting program 102, and execute the processing described below. Alternatively, the program 103 may be a library called from the measurement point setting program 102.

[0089] The computer COM that executes the probe movement procedure generation program 103 receives, for example, the selected point P from the measurement point setting program 102. S By receiving the information, at least one option point P O One selected point P from S The computer COM that executes the probe movement procedure generation program 103 reads the settings in the window 460 in FIG. S A movement model for moving the tip 19E of the probe 19 to obtain the three-dimensional position (for example, machine coordinates) of the probe 19 is set in the computer COM. The probe 19 has a spherical touch sensor attached to its tip 19E. The probe 19 is connected to the center P of the spherical touch sensor. E is moved so as to approach the target position of the workpiece. For the sake of the following explanation, the radius of the spherical touch sensor is assumed to be ROFF. For this reason, the computer COM executing the probe movement procedure generation program 103 calculates the selected point P SA movement model is set up to determine the optimal target position and movement direction based on the surrounding shape of the object.

[0090] This movement model is set based on the radio buttons 461 to 464 in Fig. 7. For example, when the radio button 461 is selected, the selected point P S When the radio button 462 is selected, the selected point P of the square groove is set as shown in FIG. S When the radio button 463 is selected, the probe 19 is moved perpendicularly to the three intersecting planes that form the vertices of the selected point P as shown in FIG. S A movement model is set that includes a trajectory in which the probe 19 is placed perpendicularly to the upper bottom surface of a circle centered at and a trajectory in which the probe 19 is placed in three directions against the side surfaces adjacent to the upper bottom surface. When the radio button 463 is selected, as shown in FIG. 15, the selected point P S A movement model is set that includes a trajectory in which the probe 19 is applied perpendicularly to a circular bottom surface centered at and a trajectory in which the probe 19 is applied in three directions to side surfaces adjacent to the bottom surface. Regarding the subsequent processing, the processing when the radio button 461 is selected will be explained in detail, and for the other movement models, the differences from the processing when the radio button 461 is selected will be briefly explained.

[0091] The computer COM that executes the probe movement procedure generation program 103 selects a selected point P S Based on the movement model and the three-dimensional shape of the second 3D model 112, a selected point P S In order to obtain the three-dimensional position (e.g., machine coordinates) of the workpiece W in real space, at least three moving targets P T1 ~P T3 (or P T1 ~P T4), a movement procedure including movement directions AV1 to AV3 (or AV1 to AV4) and movement speeds MV1 to MV3 (or MV1 to MV4) when moving the probe 19 toward each of the three planes is generated. FIG. 9 is a schematic diagram of a virtual space for determining a movement procedure. FIG. 10 shows a vertex where three or more planes intersect as a selected point P S The method for determining the movement model in this case is shown below.

[0092] First, the computer COM that executes the probe movement procedure generation program 103 selects a selected point P S Specifically, the computer COM executing the probe movement procedure generation program 103 extracts three planes forming the selected point P S In FIG. 10, the planes defined by the boundary representations extracted in this way are shown as a first plane PS1, a second plane PS2, and a third plane PS3. The first plane PS1 is the reference plane BP. Next, the computer COM executing the probe movement procedure generation program 103 calculates the normal vectors of the first plane PS1 (reference plane BP), the second plane PS2, and the third plane PS3. These normal vectors are typically calculated using the local coordinate system O of the second 3D model 112. RW -X RW Y RW Z RW It is expressed as:

[0093] Next, the computer COM executing the probe movement procedure generation program 103 determines the first movement direction AV1, the second movement direction AV2, and the third movement direction AV3 for moving the tip 19E of the probe 19 toward the first plane PS1, the second plane PS2, and the third plane PS3, based on the normal vectors determined previously. In the technical field of three-dimensional graphics, normal vectors defined by boundary representations are TIFF0007659139000012.tif1470 is defined as a vector pointing toward the outside of the 3D object. Therefore, the computer COM that executes the probe movement procedure generation program 103 calculates vectors in the opposite directions to the normal vectors of the first plane PS1 (reference plane BP), the second plane PS2, and the third plane PS3. TIFF0007659139000013.tif1470 is defined as a first movement direction AV1, a second movement direction AV2, and a third movement direction AV3. The vectors of the first movement direction AV1, the second movement direction AV2, and the third movement direction AV3 are defined as a local coordinate system O of the second 3D model 112. RW -X RW Y RW Z RW Each of the items represented by (V X1R ,V Y1R ,V Z1R )(V X2R ,V Y2R ,V Z2R )(V X3R ,V Y3R ,V Z3R ) The vectors of the first movement direction AV1, the second movement direction AV2, and the third movement direction AV3 are expressed as the local coordinate system O RW -X RW Y RW Z RW It is preferable that the vectors represented in the local coordinate system O are stored in a storage device. In this way, when the position and orientation of the second 3D model 112 are changed, it is possible to obtain vectors in the world coordinate system of the first movement direction AV1, the second movement direction AV2, and the third movement direction AV3 from the homogeneous transformation matrix based on the changed position and orientation of the second 3D model 112 and the vectors represented in the stored local coordinate system. The vectors in the first movement direction AV1, the second movement direction AV2, and the third movement direction AV3 are stored in the local coordinate system O. RW -X RW Y RW Z RW Once the vectors expressed in the world coordinate system are obtained, the computer COM executing the probe movement procedure generation program 103 uses a homogeneous transformation matrix to obtain vectors for the first movement direction AV1, the second movement direction AV2, and the third movement direction AV3 expressed in the world coordinate system.

[0094] Next, the computer COM executing the probe movement procedure generation program 103 extracts the selected point P from the boundary representation. S and the adjacent vertex P AS1 , P AS2 , P AS3 To do this, the computer COM first calculates a selected point P based on the boundary representation of the second 3D model 112. S Find three edges that pass through the selected point P S Another vertex P shared with AS1 , P AS2 , P AS3 Then, the computer COM determines the vertex P AS1 , P AS2 , P AS3 The local coordinate system of RW -X RW Y RW Z RW The local coordinates (X S1R ,Y S1R ,Z S1R )(X S2R ,Y S2R ,Z S2R )(X S3R ,Y S3R ,Z S3R ) and the selected point P S The local coordinate system of RW -X RW Y RW Z RW The local coordinates (X SR ,Y SR ,Z SR ) and so, P S From P AS1 The first vector (X S1R -X SR ,Y S1R -Z SR ,Z S1R -Z SR ), P S From P AS2 The second vector (X S2R -X SR ,Y S2R -Z SR ,Z S2R -Z SR ), P SFrom P AS3 A third vector (X S3R -X SR ,Y S3R -Z SR ,Z S3R -Z SR Then, the computer COM obtains a first normalized vector e1 by normalizing the first vector, a second normalized vector e2 by normalizing the second vector, and a third normalized vector e3 by normalizing the third vector.

[0095] Then, the computer COM executing the probe movement procedure generation program 103 calculates the movement target P T1 ~P T3 The local coordinates of (X PT1R ,Y PT1R ,Z PT1R )(X PT2R ,Y PT2R ,Z PT2R )(X PT3R ,Y PT3R ,Z PT3R ) is determined based on the following formula:

number

number

number

[0096] The coefficients k1 and k2 may be preset based on experience and stored in a storage device, or the computer COM executing the probe movement procedure generation program 103 may generate a GUI for receiving input of at least one of k1 and k2 from a user, as in the window 480 in Fig. 7, and set k1 and k2 based on the input. The window 480 includes text boxes 481 and 482 for inputting the values ​​of k1 and k2. The movement target P obtained in this way T1 ~P T3 The local coordinate system of RW -XRW Y RW Z RW It is preferable that the local coordinates represented by the homogeneous transformation matrix based on the changed position and orientation of the second 3D model 112 and the local coordinates represented by the homogeneous transformation matrix based on the changed position and orientation of the moving target P are stored in a storage device. T1 ~P T3 and the local coordinates of the moving target P T1 ~P T3 The world coordinates of can be calculated.

[0097] moving target P T1 ~P T3 When the local coordinates of are obtained, the computer COM executing the probe movement procedure generation program 103 calculates the local coordinates of the moving target P based on the homogeneous transformation matrix. T1 ~P T3 The computer COM displays the obtained moving target P in the window 480. T1 The world coordinates of 483, the moving target P T2 The world coordinates 484 and the moving target P T3 Next, the computer COM may display the world coordinates 485 of the center P of the touch sensor of the probe 19. E Moving target P T1 ~P T3 The approach start point P A1 ~P A3 The local coordinates of (X A1R ,Y A1R ,Z A1R )(X A2R ,Y A2R ,Z A2R )(X A3R ,Y A3R ,Z A3R ) is determined based on the following formula:

number

number

number

[0098] This coefficient D1 may be preset based on experience and stored in a storage device, or the computer COM executing the probe movement procedure generation program 103 may generate a GUI that accepts input from a user and set D1 based on the input. A1 ~P A3 The local coordinate system of RW -X RW Y RW Z RW It is preferable that the local coordinates represented by the homogeneous transformation matrix based on the changed position and orientation of the second 3D model 112 and the approach start point P are stored in a storage device. A1 ~P A3 and the local coordinates of the approach starting point P A1 ~P A3 The world coordinates of the approach start point P can be calculated. A1 ~P A3 When the local coordinates of are obtained, the computer COM executing the probe movement procedure generation program 103 calculates the approach start point P based on the homogeneous transformation matrix. A1 ~P A3 Find the world coordinates of .

[0099] Next, the computer COM detects the center P of the touch sensor of the probe 19. E Moving target P T1 ~P T3 The deceleration start point P at which deceleration begins while moving in the first movement direction AV1, the second movement direction AV2, and the third movement direction AV3 toward D1 ~P D3 The local coordinates of (X D1R ,Y D1R ,Z D1R )(X D2R ,Y D2R ,Z D2R )(X D3R ,YD3R ,Z D3R ) is determined based on the following formula:

number

number

number

[0100] The coefficient D2 may be empirically determined based on the tolerance of the workpiece W and the radius ROFF of the touch sensor. D1 ~P D3 The local coordinate system of RW -X RW Y RW Z RW It is preferable that the local coordinates represented by the deceleration start point P are stored in a storage device. In this way, when the position and orientation of the second 3D model 112 are changed, the homogeneous transformation matrix based on the changed position and orientation of the second 3D model 112 and the deceleration start point P D1 ~P D3 and the local coordinates of the deceleration start point P D1 ~P D3 The world coordinates of the deceleration start point P can be calculated. D1 ~P D3 When the local coordinates of are obtained, the computer COM executing the probe movement procedure generation program 103 calculates the deceleration start point P based on the homogeneous transformation matrix. D1 ~P D3 Find the world coordinates of .

[0101] The computer COM then generates the remaining movement procedure for the probe 19. T1 ~P T3 The computer COM moves the center P of the tip 19E of the probe 19 from the position of the spindle 12b that has been returned to the origin. E The position of the approach start point P A1~P A3 To achieve this, the computer COM generates a movement procedure for moving the main axis 12b until the approach start point P A1 ~P A3 X in the world coordinate system W Coordinates (machine coordinate system in real space) M -X M Y M Z M X in M coordinates), approach start point P A1 ~P A3 Y in the world coordinate system W Coordinates (Y in the machine coordinate system in real space M The center P of the tip 19E of the probe 19 corresponds to the coordinate E Move the spindle 12b to X W Axial direction, Y W It is advisable to generate a movement procedure for moving the robot at high speed in the axial direction. Next, the computer COM generates the approach start point P A1 ~P A3 Z in the world coordinate system W Coordinates (Z in the machine coordinate system in real space M The center P of the tip 19E of the probe 19 corresponds to the coordinate E The spindle 12b is moved to Z W It is preferable to generate a movement procedure for moving the probe 19 at high speed in the axial direction (path 1). When the movement procedure is generated in this manner, the risk of the probe 19 interfering with other obstacles can be reduced. Alternatively, the computer COM moves the probe 19 from the origin return position to the approach start point P A1 ~P A3 Alternatively, the main shaft 12b may be moved linearly to the position (path 2).

[0102] Center P of tip 19E of probe 19 E The position of the approach start point P A1 When the main shaft 12b is moved until the center P of the tip 19E of the probe 19 is parallel to the moving direction AV1, the main shaft 12b is oriented so that the center axis (rotation axis AX1) of the probe 19 is parallel to the moving direction AV1. E The position of the approach start point P A1When the spindle 12b is moved to the position shown in FIG. 1, the spindle 12b is oriented so that the center axis (rotation axis AX1) of the probe 19 is parallel to the moving direction AV1 (moving direction AV2, perpendicular to AV2). M In many cases, the position and orientation of the workpiece W is adjusted so that it is perpendicular to the axis, but the orientation of the probe 19 is not adjusted.

[0103] Next, the main shaft 12b is moved to the target P T1 ~P T3 The computer COM generates a procedure for moving the tip 19E in the moving direction AV1 toward the target P. T1 ~P T3 The distance between the tip 19E and the deceleration start point P is within a predetermined threshold (i.e., the tip 19E is D1 ~P D3 and moving target P T1 ~P T3 The moving speed of the probe 19 when the tip 19E is in the range of 0.5 to 1.5 mm is the moving speed of the probe 19 when the tip 19E is in the range of 0.5 to 1.5 mm. T1 The distance between the tip 19E and the approach start point P is greater than or equal to a predetermined threshold (i.e., the tip 19E is closer to the approach start point P A1 ~P A3 and deceleration start point P D1 ~P D3 This predetermined threshold value is preferably determined based on the tolerance of the workpiece W and the radius ROFF of the touch sensor. In this manner, the computer COM determines whether the center P E Moving target P T1 ~P T3 A movement procedure is generated for moving toward the target.

[0104] Next, the computer COM that executes the probe movement procedure generation program 103 calculates at least three movement targets P T1 ~P T3 (or P T1 ~P T4 ) toward each of the moving directions AV1 to AV3 (or AV1 to AV4), at least three moving targets P T1 ~P T3 (or PT1 ~P T4 ) is displayed on the display DIS, the peripheral area of ​​the proximity locus being within a threshold distance from each of the neighboring points D1 and D2. This threshold distance is preferably set to be equal to or greater than D2 and equal to or less than D1.

[0105] FIG. 11 is a display example of a view VSV in the example of FIG. 9, in which the peripheral region is highlighted and displayed within the three-dimensional virtual space VS. In FIG. 11, the highlighted region is indicated by hatching. In FIG. 11, a rectangular parallelepiped with the proximity trajectory at its center is shown as the peripheral region, but a cylinder with the proximity trajectory at its center may also be shown as the peripheral region. FIG. 11 also shows arrows indicating movement directions AV1 to AV3 and at least three movement targets P T1 ~P T3 In this case, the computer COM executing the probe movement procedure generation program 103 displays arrows indicating the movement directions AV1 to AV3 and at least three movement targets P T1 ~P T3 A view VSV with the points of interest omitted and at least three moving targets P T1 ~P T3 (or P T1 ~P T4 1. It is preferable to display the view VSV in which the view VSV of the three-dimensional virtual space VS shown in FIG. 1 is added with the direction of travel AV1 to AV3 (or AV1 to AV4) and the movement directions AV1 to AV3 (or AV1 to AV4) in addition to the view VSV of the three-dimensional virtual space VS shown in FIG. 1 in a switchable manner.

[0106] 2, the storage device (memory 32, memory 72) stores a movement simulation program 104. The movement simulation program 104 is executed when a well-known GUI such as a simulation execution button 491 shown in Fig. 7 is operated, and is used to determine whether or not the probe 19 interferes with an object other than the workpiece W when the probe 19 is moved according to the movement procedure generated by the probe movement procedure generation program 103, and whether or not the movement range of the probe 19 is within the movable range of the probe 19.

[0107] To achieve this, the computer COM executing the movement simulation program 104 prepares a fourth 3D model 114 that reproduces the probe 19, and another 3D model 115 that reproduces the range of motion of the probe 19 and other obstacles that may be placed therein. The fourth 3D model 114 may include a 3D model of the machining head 12 and the tool holder 17. The units of the local coordinate system of the fourth 3D model 114 and the units of the local coordinate system of the other 3D model 115 are expressed as the units of the machine coordinate system O of the probe 19, the range of motion, and the obstacles. M -X M Y M Z M The dimensions of the fourth 3D model 114 and the other 3D models 115 are determined so that they are the same as the units (units of real space, for example, mm) in the machine coordinate system O. M -X M Y M Z M Since the position and orientation of the probe 19 are fixed, it is not necessary to define a local coordinate system. The fourth 3D model 114 and the other 3D models 115 are stored in a storage device. By preparing a 3D model of the range of motion, the computer COM that executes the movement simulation program 104 sets the range of motion of the probe 19 in the three-dimensional virtual space VS.

[0108] The computer COM that executes the movement simulation program 104 moves the tip 19E of the probe 19 in at least three movement directions AV1 to AV3 and the corresponding movement targets P T1 ~P T3 When the fourth 3D model 114 is moved according to a movement procedure toward the fourth 3D model 114, it is judged whether or not an interference state occurs in which the fourth 3D model 114 comes into contact with the 3D models 111, 113, 115 other than the fourth 3D model 114. This judgment can be made using a well-known technology for collision judgment in computer graphics. The computer COM displays the first to fourth 3D models 111-114 (and other 3D models 115) and at least three movement directions AV1-AV3 and corresponding movement targets P in the three-dimensional virtual space VS. T1 ~P T3and whether or not there is an interference state is displayed on the display DIS.

[0109] For example, the computer COM may display on the display DIS an image in which a schematic diagram as shown in Fig. 9 is displayed in three-dimensional graphics. In Fig. 9, it is assumed that when the probe 19 is moved along a path 1, it does not come into contact with an obstacle (115), but when the probe 19 is moved along a path 2, it comes into contact with an obstacle (115). At this time, the computer COM displays an alarm ALA1, for example, at a location where the fourth 3D model 114 comes into contact with the 3D models 111, 113, and 115 other than the fourth 3D model 114. The computer COM may also notify the user of the alarm by text or sound.

[0110] Next, the computer COM judges whether or not the motion range of the probe 19 following the movement procedure belongs to the range of motion. For example, the 3D model (e.g., other 3D models 115) of the range of motion of the probe 19 includes a planar 3D model BD surrounding the outer edge of the range of motion, and the computer COM can judge whether or not the fourth 3D model 114 intersects with the 3D model BD of the outer edge of the range of motion using a well-known computer graphics intersection judgment technique. The computer COM creates the first to fourth 3D models 111 to 114, at least three movement directions AV1 to AV3, and a movement target P in the three-dimensional virtual space VS. T1 ~P T3 In addition, information identifying whether the motion range belongs to the range of motion or not is displayed on the display DIS.

[0111] For example, the computer COM may display three-dimensional graphics on the display DIS as shown in FIG. T3Assume that when the probe 19 is moved in the movement direction AV3 toward the fourth 3D model 114, it intersects with the 3D model BD at the outer edge of the range of motion. At this time, the computer COM displays an alarm ALA2, for example, at the location where the fourth 3D model 114 intersects with the 3D model BD at the outer edge of the range of motion. The computer COM may also notify the user of the alarm by text or sound.

[0112] The above-mentioned processing executed by the computer COM may be executed by either the control computer 20 or the graphics processing computer 60. Preferably, when the machining program 101 is generated, at least one optional point, a movement procedure, and a simulation are performed by the programmer using the graphics processing computer 60, and then the operator sets up the workpiece W, and at the same time, the selected point P among the at least one optional point is selected. S It is preferable that the selected point P S After the selection, when a well-known GUI such as the measurement start button 492 in Fig. 7 is operated, the control computer 20 executes the program origin measurement program 105 in Fig. 2. The program origin measurement program 105 is stored in the memory 32 and executed by the processor 31. Note that the program origin measurement program 105 does not have to be stored in the memory 72 of the graphics processing computer 60, and a well-known GUI such as the measurement start button 492 does not have to be generated by the graphics processing computer 60.

[0113] The control computer 20 (computer COM included in the numerical control device of the machine tool 2) that executes the program origin measurement program 105 detects the selected point P selected when the measurement start button 492 is pressed. S is determined as a measurement point whose three-dimensional position in real space is measured by contacting the workpiece W with the probe 19 that can be attached to the machine tool 2. That is, at least one optional point P O The control computer 20 includes the measurement point. SThe probe 19 is moved according to the movement procedure in order to measure the three-dimensional position of the measurement point. This three-dimensional position does not necessarily have to be in machine coordinates, but it is preferable that it is a position that has a certain relationship with machine coordinates and can be converted into machine coordinates.

[0114] The control computer 20 calculates the three-dimensional position and the measurement point and the program origin O. P Based on the positional relationship with the program origin O P As already explained, the machine coordinates of the measurement point (selected point P S ) local coordinate system O RW -X RW Y RW Z RW Local coordinates at and the program origin O P The local coordinate system of RW -X RW Y RW Z RW The local coordinates of the measurement point (selected point P S ) program origin O P The local coordinate system of RW -X RW Y RW Z RW The relative coordinates (vectors) in the local coordinate system O are stored in advance in the memory 32 (storage device). RW -X RW Y RW Z RW in the world coordinate system O W -X W Y W Z W and a homogeneous transformation matrix for transforming the program origin O P Furthermore, the control computer 20 can determine the machine coordinates of the program origin O P Based on the machine coordinates of the program origin P The work coordinate system O is based on P -X P Y P Z P and the machine coordinate system O M -XM Y M Z M Set the correspondence between the

[0115] A series of processes when radio button 461 is selected has been described above, but the processes that have not yet been described when radio buttons 462 to 464 are selected will be described below, focusing on the differences from when radio button 461 is selected. FIG. 13 shows a case where radio button 462 is selected and a vertex where three or more planes in a rectangular groove intersect is designated as a selected point P S A method for determining a movement model when at least one optional point P O is provided at the corner of the circular groove. At least one optional point P O are vertices included in the boundary representation of the reference plane BP. T2 , P T3 When approaching the target object, the main shaft 12b is oriented so that the central axis (rotation axis AX1) of the probe 19 is perpendicular to the moving direction AV1.

[0116] In FIG. 14, the radio button 463 is selected, and the center of the upper base of the circle is set to the selected point P S Here, we show how to determine the movement model when at least one option point P O Since there is only one point, this point is the selected point P S And it is the measurement point. Also, the program origin O P It is preferable that the moving target P is on the central axis AX of the cylindrical second 3D model 112. T1 The selected point P S Let P be the moving target. T2 ~P T4 is placed on the side surface SS of the curved surface adjacent to the reference plane BP. T2 ~P T4 It is preferable that the moving targets P are provided on the virtual curve VL at a distance d (corresponding to the above-mentioned k2) from the reference plane BP, and are provided at positions 120 degrees apart from each other with respect to the central axis AX. T2 ~PT4 When approaching the target P, the main shaft 12b is oriented so that the central axis (rotation axis AX1) of the probe 19 is perpendicular to the moving direction AV1. T1 ~P T4 Once the machine coordinates of the moving target P are obtained, T2 ~P T4 From the machine coordinates of the three points, the computer COM determines the center of gravity of the triangle formed by these three points. The computer COM then calculates the center of gravity and the moving target P T1 The center axis AX of the cylinder passes through the machine coordinate system. T1 and program origin O P Program origin O based on distance along central axis AX with P The machine coordinates of the position can be determined.

[0117] FIG. 15 shows the center of the circular bottom of the circular groove as the selected point P S Here we show how to determine the movement model when the following is true: O Since there is only one point, this point is the selected point P S And it is the measurement point. Also, the program origin O P It is preferable that the moving target P is on the central axis AX of the cylindrical second 3D model 112. T1 The selected point P S Let P be the moving target. T2 ~P T4 is placed on the side surface SS of the curved surface adjacent to the reference plane BP. T2 ~P T4 It is preferable that the moving targets P are provided on the virtual curve VL at a distance d (corresponding to the above-mentioned k2) from the reference plane BP, and are provided at positions 120 degrees apart from each other with respect to the central axis AX. T2 ~P T4 When approaching the target object, the main shaft 12b is oriented so that the central axis (rotation axis AX1) of the probe 19 is perpendicular to the moving direction AV1.

[0118] 16 to 20 are flowcharts showing the processing flows of the measurement point setting program 102, the probe movement procedure generating program 103, and the movement simulation program 104 according to this embodiment. Fig. 21 is a flowchart showing the processing flow of the program origin measuring program 105 according to this embodiment. In step S1 of Fig. 16, the computer COM that executes the measurement point setting program 102 generates a three-dimensional virtual space VS that represents the virtual reality environment. In other words, the setting method of the machine tool 2 according to this embodiment includes causing the computer COM to generate the three-dimensional virtual space VS that represents the virtual reality environment.

[0119] In step S2 of Fig. 16, the computer COM executing the measurement point setting program 102 prepares first to third 3D models 111 to 113. In step S3 of Fig. 16, the computer COM executing the measurement point setting program 102 prepares a program origin O in a machining program 101 for machining a workpiece W. P The relative position of the second 3D model 112 from the reference position (for example, the local coordinate system O of the second 3D model 112) RW -X RW Y RW Z RW The program origin O represented by P The local coordinates of (X PR ,Y PR ,Z PR That is, the method for setting the machine tool 2 according to this embodiment prepares the first to third 3D models 111 to 113 and the program origin O. P The method includes having the computer COM prepare the relative position of the second 3D model 112 from a reference position.

[0120] 16, the computer COM executing the measurement point setting program 102 sets parameters representing the position and orientation in the three-dimensional virtual space VS of each of the first to third 3D models 111-113 by accepting an input related to a GUI operation such as those shown in Fig. 5 and Fig. 6. That is, the setting method for the machine tool 2 according to this embodiment includes causing the computer COM to set parameters representing the position and orientation in the three-dimensional virtual space VS of each of the first to third 3D models 111-113.

[0121] In step S5 of Fig. 16, the computer COM executing the measurement point setting program 102 sets a movement model by accepting an input relating to the operation of the window 460 of Fig. 7, for example. The setting method of the machine tool 2 according to this embodiment includes setting a movement model to the computer COM. In step S6 of Fig. 16, the computer COM executing the measurement point setting program 102 sets at least one optional point P O The position of the 3D virtual space VS is the program origin O P The setting method of the machine tool 2 according to the present embodiment is based on the relative positions of the first to third 3D models 111 to 113 and the parameters. O The position of the 3D virtual space VS is the program origin O P The method includes having the computer COM determine the relative positions of the first to third 3D models 111 to 113 based on the parameters.

[0122] In step S7 of FIG. 16, the computer COM executing the measurement point setting program 102 accepts an input related to the operation of the change button 472 of FIG. 7, for example, to set at least one optional point P O One selected point P from S The method for setting the machine tool 2 according to the present embodiment selects at least one optional point P O One selected point P from SIn step S8 of FIG. 16, the computer COM executing the measurement point setting program 102 selects the first to third 3D models 111 to 113 and the selected point P in the three-dimensional virtual space VS. S and program origin O P and the selected point P S and program origin O P The computer COM displays the view VSV of the three-dimensional virtual space VS as shown in FIG. 1 on the display DIS in a manner that allows the first to third 3D models 111 to 113 to be distinguished from the first to third 3D models 111 to 113. For example, the computer COM displays the view VSV of the three-dimensional virtual space VS as shown in FIG. 1 on the display DIS. In other words, the setting method for the machine tool 2 according to this embodiment displays the first to third 3D models 111 to 113 and the selected point P in the three-dimensional virtual space VS. S and program origin O P and the selected point P S and program origin O P The method includes causing the computer COM to display the first to third 3D models 111 to 113 on the display DIS in a manner that can be distinguished from the first to third 3D models 111 to 113.

[0123] 17, when steps S1 to S7 common to those in FIG. 16 are executed, in step S9, the computer COM executing the probe movement procedure generation program 103 selects a selected point P S Based on the movement model and the three-dimensional shape of the second 3D model 112, a selected point P S To determine the three-dimensional position (e.g., machine coordinates) of at least three moving targets P on the surface of the workpiece W, T1 ~P T3 (or P T1 ~P T4 ), a movement procedure is generated that includes at least three movement directions AV1 to AV3 (or AV1 to AV4) and movement speeds when moving the probe 19 toward each of the selected points P S Based on the movement model and the three-dimensional shape of the second 3D model 112, a selected point P S To determine the three-dimensional position (e.g., machine coordinates) of at least three moving targets P on the surface of the workpiece W, T1 ~PT3 (or P T1 ~P T4 ), the computer COM generates a movement procedure including at least three movement directions AV1 to AV3 (or AV1 to AV4) and movement speeds when moving the probe 19 toward each of the three directions AV1 to AV3 (or AV1 to AV4).

[0124] In step S10 of FIG. 17, the computer COM executing the probe movement procedure generation program 103 generates at least three movement directions AV1 to AV3 (or AV1 to AV4) and corresponding movement targets P T1 ~P T3 (or P T1 ~P T4 ) on the display DIS. The setting method for the machine tool 2 according to this embodiment includes causing the computer COM to display at least three movement directions AV1 to AV3 (or AV1 to AV4) and their corresponding movement targets PT1 to PT3 (or PT1 to PT4) on the display DIS.

[0125] 18, when steps S1 to S7 and S9 common to those in FIG. 17 are executed, the computer COM executing the probe movement procedure generation program 103 generates a sequence of at least three movement targets P T1 ~P T3 (or P T1 ~P T4 ) toward each of the moving directions AV1 to AV3 (or AV1 to AV4), at least three moving targets P T1 ~P T3 (or P T1 ~P T4 ) is displayed on the display DIS (for example, hatching shown in FIG. 11 and FIG. 13 to FIG. 15).

[0126] 19, the computer COM executing the movement simulation program 104 prepares first to fourth 3D models 111-114 in step S2A instead of step S2. Furthermore, it is preferable that the computer COM executing the movement simulation program 104 also prepares another 3D model 115. The setting method of the machine tool 2 according to this embodiment includes having the computer COM prepare the first to fourth 3D models 111-114. It is preferable that the setting method of the machine tool 2 according to this embodiment includes having the computer COM prepare the fifth 3D model 115.

[0127] 17 are executed, the computer COM executing the movement simulation program 104 moves the tip 19E of the probe 19 in at least three movement directions AV1 to AV3 (or AV1 to AV4) and the corresponding movement targets P T1 ~P T3 (or P T1 ~P T4 ) according to a movement procedure, whether or not an interference state occurs in which the fourth 3D model 114 comes into contact with the 3D models 111, 113, and 114 other than the fourth 3D model 114. In the setting method for the machine tool 2 according to this embodiment, the tip 19E of the probe 19 is moved in at least three movement directions AV1 to AV3 (or AV1 to AV4) and the corresponding movement targets P T1 ~P T3 (or P T1 ~P T4 ) according to a movement procedure, the computer COM is caused to determine whether or not an interference state occurs in which the fourth 3D model 114 comes into contact with the 3D models 111, 113, and 114 other than the fourth 3D model 114.

[0128] Then, in step S13 of FIG. 19, the computer COM executing the movement simulation program 104 displays the first to fourth 3D models 111 to 114 and at least three movement directions AV1 to AV3 (or AV1 to AV4) and corresponding movement targets P in the three-dimensional virtual space VS. T1 ~P T3 (or P T1 ~P T4 ) and the presence or absence of an interference state (for example, an alarm ALA1 as shown in FIG. 9) on the display DIS. The setting method for the machine tool 2 according to this embodiment causes the computer COM to display first to fourth 3D models 111-114 and at least three movement directions AV1-AV3 (or AV1-AV4) and corresponding movement targets P T1 ~P T3 (or P T1 ~P T4 ) and the presence or absence of an interference state on a display DIS.

[0129] 20, the computer COM executing the movement simulation program 104 prepares first to fourth 3D models 111-114 and a 3D model of the range of motion (e.g., another 3D model 115) in step S2B instead of step S2. This allows the computer COM to set the range of motion of the probe 19 in the three-dimensional virtual space VS. In other words, the setting method of the machine tool 2 according to this embodiment includes having the computer COM set the range of motion of the probe 19 in the three-dimensional virtual space VS.

[0130] 17 are executed, the computer COM executing the movement simulation program 104 displays the first to fourth 3D models 111 to 114 and at least three movement directions AV1 to AV3 (or AV1 to AV4) and corresponding movement targets P in the three-dimensional virtual space VS in step S15 of FIG. T1 ~P T3 (or P T1 ~P T4), information for identifying whether the motion range belongs to the movable range or not (alarm ALA2 as shown in FIG. 12) is displayed on the display DIS. The setting method of the machine tool 2 according to this embodiment causes the computer COM to display first to fourth 3D models 111 to 114, at least three movement directions AV1 to AV3 (or AV1 to AV4) and corresponding movement targets P T1 ~P T3 (or P T1 ~P T4 ) In addition, the present invention includes displaying information on the display DIS that identifies whether the range of motion belongs to the range of motion or not.

[0131] At least two of step S8 in FIG. 16, steps S9 and S10 in FIG. 17, steps S9 and S11 in FIG. 18, steps S9, S12 and S13 in FIG. 19, and steps S9, S14 and S15 in FIG. 20 may be executed simultaneously or selectively. When step S8 in FIG. 16, step S10 in FIG. 17, step S11 in FIG. 18, step S13 in FIG. 19, and step S15 in FIG. 19 are executed, the process proceeds to step S21 in FIG. 21. In step S21, the computer COM (control computer 20) executing the program origin measuring program 105 determines whether or not an input that the measurement start button 492 has been operated has been received. If the measurement start button 492 has not been operated (No in step S21), step S21 is repeated. When the measurement start button 492 is operated (Yes in step S21), the computer COM (control computer 20) executing the program origin measurement program 105 starts the measurement of the selected point P S The method for setting the machine tool 2 according to the present embodiment is as follows: S This includes having a computer COM (control computer 20) determine as a measurement point.

[0132] That is, there is at least one option point P OSince one of the points is a measurement point, the computer COM executing the measurement point setting program 102 sets the position in the three-dimensional virtual space VS of the measurement point, the three-dimensional position of which in the real space is measured by contacting the workpiece W with the probe 19 that can be attached to the machine tool 2, to the program origin O. P It can be said that the setting method of the machine tool 2 according to this embodiment is to determine the position in the three-dimensional virtual space VS of a measurement point, the three-dimensional position of which in the real space is measured by bringing a probe 19 that can be attached to the machine tool 2 into contact with a workpiece W, based on the relative positions of the first to third 3D models 111 to 113 and parameters. P It can be said that this includes causing the computer COM to obtain the relative positions of the first to third 3D models 111 to 113 and parameters.

[0133] In addition, the computer COM that executes the measurement point setting program 102 sets the first to third 3D models 111 to 113, the measurement points, and the program origin O in the three-dimensional virtual space VS. P The measurement point and the program origin O P It can be said that the first to third 3D models 111 to 113 are displayed on the display DIS in a manner that allows them to be distinguished from the first to third 3D models 111 to 113. The setting method of the machine tool 2 according to this embodiment includes causing the computer COM to display the first to third 3D models 111 to 113, the measurement points, and the program origin O in the three-dimensional virtual space VS. P The measurement point and the program origin O P It can be said that this includes displaying the first to third 3D models 111 to 113 on the display DIS in a manner that makes them distinguishable from each other.

[0134] Furthermore, the computer COM executing the probe movement procedure generation program 103 sets a movement model for moving the tip 19E of the probe 19 to obtain the three-dimensional position of the measurement point, and based on the measurement point, the movement model, and the three-dimensional shape of the second 3D model 112, at least three movement targets P on the surface of the workpiece W are set to obtain the three-dimensional position of the measurement point. T1 ~P T3 (or P T1 ~P T4), the method for setting the machine tool 2 according to this embodiment generates a movement procedure including the movement directions AV1 to AV3 (or AV1 to AV4) and the movement speed when moving the probe 19 toward each of the first and second 3D models 112. The method for setting the machine tool 2 according to this embodiment causes the computer COM to set a movement model for moving the tip 19E of the probe 19 in order to obtain the three-dimensional position of the measurement point, and causes the computer COM to set at least three movement targets P on the surface of the workpiece W in order to obtain the three-dimensional position of the measurement point based on the measurement point, the movement model, and the three-dimensional shape of the second 3D model 112. T1 ~P T3 (or P T1 ~P T4 It can be said that the process includes causing the computer COM to generate a movement procedure including the movement directions AV1 to AV3 (or AV1 to AV4) and the movement speeds when moving the probe 19 toward each of the target points AV1 to AV4.

[0135] Returning to FIG. 21, in step S23 of FIG. 21, the computer COM (control computer 20) executing the program origin measurement program 105 determines the selected point P S In other words, it can be said that the computer COM (control computer 20) executing the program origin measurement program 105 measures the three-dimensional position of the measurement point by moving the probe 19 according to the measurement point movement procedure. S The method includes moving the probe 19 according to the movement procedure and having the computer COM (control computer 20) measure the three-dimensional position of the measurement point. S The procedure includes moving the probe 19 in accordance with the movement procedure and having the computer COM (control computer 20) measure the three-dimensional position of the measurement point.

[0136] In step S24 of FIG. 21, the computer COM (control computer 20) executing the program origin measurement program 105 calculates the three-dimensional position of the measurement point and the relationship between the measurement point and the program origin O. P Based on the positional relationship with the program origin O PThe method for setting the machine tool 2 according to this embodiment determines the three-dimensional position of the measurement point and the relationship between the measurement point and the program origin O. P Based on the positional relationship with the program origin O P This includes having the computer COM (control computer 20) determine the machine coordinates of the

[0137] In step S25 of FIG. 21, the computer COM (control computer 20) that executes the program origin measurement program 105 determines the program origin O P Based on the machine coordinates of the program origin P The correspondence relationship between the workpiece coordinate system and the machine coordinate system is set based on the program origin O. P Based on the machine coordinates of the program origin P This includes having the computer COM (control computer 20) set the correspondence between the workpiece coordinate system and the machine coordinate system based on the coordinate system. <Characteristics and Effects of the Machine Tool Control Method in the Present Embodiment>

[0138] In the present embodiment, the machine tool system 1, the machine tool 2, the graphics processing computer device 4, the setting method for the machine tool 2, and the programs 102-105 for causing the computer COM to execute the setting method are configured to set the positions and orientations of the first to third 3D models 111-113 in the three-dimensional virtual space VS, and then to set the program origin O. P Without having to set the position of the program origin O P Therefore, the programmer only needs to set the first to third three-dimensional models 111 to 113 to calculate the position of the program origin O. P Since the setting in the three-dimensional virtual space VS is automatically performed, the setting in the three-dimensional virtual space VS can be easily performed. In addition, even if the work environment of the machine tool 2 or other circumstances make it difficult to perform the operation as instructed, the program origin O in the workpiece W set by the programmer can be automatically set. P This allows the operator to alternatively determine the measurement points in the numerical control device of the machine tool 2 without changing the <Modification>

[0139] The GUIs such as radio buttons, text boxes, and buttons shown in the above-described embodiments are merely examples, and another well-known GUI having equivalent functions, or a command user interface (CUI), or other user interface may be used.

[0140] In the above-described embodiment, an example is shown in which the machine tool 2 is a vertical machining center, but the contents of this embodiment can also be applied to machine tools including the machine tool 2 being a horizontal machining center, a lathe, and an additive manufacturing device.

[0141] A part or all of the functions of the logic of the above-mentioned measurement point setting program 102, probe movement procedure generation program 103, movement simulation program 104, and program origin measurement program 105 of the computer COM may be realized by a dedicated processor or integrated circuit. The above-mentioned measurement point setting program 102, probe movement procedure generation program 103, movement simulation program 104, and program origin measurement program 105 may be recorded not only in the storage device (memory 32, 72) of the computer COM but also in a storage medium that is removable from the computer COM and readable by the computer COM, such as a floppy disk, optical disk, CD-ROM, magnetic disk, etc., an SD card, a USB memory, or an external hard disk.

[0142] In this application, the term "comprises" and its derivatives are open-ended terms that describe the presence of elements and do not exclude the presence of other elements not listed. This also applies to the terms "have", "include" and their derivatives.

[0143] The terms "member," "part," "element," "body," and "structure" may have multiple meanings, such as a single part or multiple parts.

[0144] Ordinal numbers such as "first" and "second" are merely terms used to identify components and do not have any other meaning (such as a particular order). For example, the presence of a "first element" does not imply the presence of a "second element," and the presence of a "second element" does not imply the presence of a "first element."

[0145] Words expressing degree, such as "substantially," "about," and "approximately," may mean a reasonable deviation that does not significantly change the final result, unless otherwise specified in the embodiment. All numerical values ​​described in this application may be interpreted to include words such as "substantially," "about," and "approximately."

[0146] In this application, the phrase "at least one of A and B" should be interpreted as including A only, B only, and both A and B.

[0147] It is apparent that various changes and modifications of the present invention are possible in light of the above disclosure, and therefore, the present invention may be practiced otherwise than as specifically disclosed herein without departing from the spirit and scope of the present invention.

Claims

1. causing a first computer to generate a machining program based on the three-dimensional model of the product and the three-dimensional model of the workpiece; causing the first computer to generate a three-dimensional virtual space representing a virtual reality environment; having the first computer prepare a first three-dimensional model reproducing a table of a machine tool, a second three-dimensional model reproducing the workpiece, a third three-dimensional model reproducing a jig for fixing the workpiece to the table, and a relative position of a program origin in the machining program from a reference position of the second three-dimensional model; setting, in the first computer, parameters representing positions and orientations of the first to third three-dimensional models in the three-dimensional virtual space; causing the first computer to determine a position in the three-dimensional virtual space of a measurement point, the three-dimensional position of which in real space is measured by bringing a probe mountable on the machine tool into contact with the workpiece, based on the relative position of the program origin, the first to third three-dimensional models, and the parameters; a movement model for moving the tip of the probe in order to obtain the three-dimensional position of the measurement point is set in the first computer; generating, in the first computer, a movement procedure including a movement direction and a movement speed when moving the probe toward each of the three-dimensional positions of at least three movement targets on the surface of the workpiece in order to obtain the three-dimensional position of the measurement point based on the measurement point, the movement model, and the three-dimensional shape of the second three-dimensional model; Data for displaying the first to third three-dimensional models and the measurement points within the three-dimensional virtual space on a monitor of the numerical control device is transmitted from the first computer to a second computer included in a numerical control device of the machine tool via a communication network, thereby displaying the first to third three-dimensional models and the measurement points within the three-dimensional virtual space on the monitor in a manner in which the measurement points are distinguishable from the first to third three-dimensional models. Including, How to set up machine tools.

2. The measurement points are characteristic points of the workpiece, The three-dimensional position of the feature point is identified from the three-dimensional positions of the at least three moving targets measured by the probe. The method for setting a machine tool according to claim 1.

3. the data transmitted to the second computer further includes data for displaying the program origin on the monitor; displaying the program origin on the monitor in a manner distinguishable from the first to third three-dimensional models; [0023] The method for setting a machine tool according to claim 1.

4. The moving speed of the probe when the distance between the tip and the moving target is within a predetermined threshold is set to be smaller than the moving speed of the probe when the distance between the tip and the moving target is equal to or larger than the predetermined threshold. The method for setting a machine tool according to claim 1.

5. moving the probe according to the movement procedure to cause the second computer to measure the three-dimensional position of the measurement point; causing the second computer to determine machine coordinates of the program origin based on the three-dimensional position and a positional relationship between the measurement point and the program origin; A correspondence relationship between a workpiece coordinate system and a machine coordinate system with the program origin as a reference is set in the second computer based on the machine coordinate of the program origin. The method of setting up a machine tool according to claim 4, further comprising:

6. and causing one of the first computer and the second computer to obtain a position in the three-dimensional virtual space of at least one optional point, the optional point being at least one point including the measurement point, the three-dimensional position of which in the real space can be measured by bringing the probe into contact with the workpiece, based on the relative position of the program origin, the first to third three-dimensional models, and the parameters. The method of claim 1 , further comprising:

7. causing the first computer to select a selected point from the at least one optional point; causing the first computer to display the first to third three-dimensional models and the selected point in the three-dimensional virtual space on a PC monitor provided in the first computer in such a manner that the selected point is distinguishable from the first to third three-dimensional models; [0023] The method for setting a machine tool according to claim 6.

8. causing the first computer to select a selected point from the at least one optional point; setting, in the first computer, a movement model for moving the tip of the probe in order to obtain the three-dimensional position of the selected point; The method further includes causing the first computer to generate a movement procedure including a movement direction and a movement speed when moving the probe toward each of at least three movement targets on the surface of the workpiece to obtain the three-dimensional position of the selected point based on the selected point, the movement model, and the three-dimensional shape of the second three-dimensional model; the moving speed of the probe when the distance between the tip and the moving target is within a predetermined threshold is set to be smaller than the moving speed of the probe when the distance between the tip and the moving target is equal to or larger than the predetermined threshold; The method for setting a machine tool according to claim 6.

9. causing the second computer to determine the selected point as the measurement point; moving the probe according to a moving procedure of the selected point to cause the second computer to measure the three-dimensional position of the measurement point; causing the second computer to determine machine coordinates of the program origin based on the three-dimensional position and a positional relationship between the measurement point and the program origin; A correspondence relationship between a workpiece coordinate system and a machine coordinate system with the program origin as a reference is set in the second computer based on the machine coordinate of the program origin. The method of setting up a machine tool according to claim 8, further comprising:

10. The first computer displays, on a PC monitor provided in the first computer, information indicating a peripheral area of ​​a proximity trajectory within a threshold distance from each of the at least three moving targets, among trajectories moving in the moving direction toward each of the at least three moving targets. The method of setting up a machine tool according to claim 4, further comprising:

11. causing the first computer to prepare a fourth three-dimensional model representing the probe; causing the first computer to determine whether or not an interference state occurs in which the fourth three-dimensional model comes into contact with a three-dimensional model other than the fourth three-dimensional model when the tip is moved toward the at least three movement targets in accordance with the movement procedure; and displaying, in the first computer, the first to fourth three-dimensional models, the at least three moving directions, the moving targets corresponding thereto, and the presence or absence of the interference state on a PC monitor provided in the first computer within the three-dimensional virtual space. The method for setting a machine tool according to claim 4.

12. causing the first computer to set a range of motion of the probe in the three-dimensional virtual space; causing the first computer to determine whether a motion range of the probe according to the movement procedure is within the movable range; The first computer displays, on a PC monitor provided in the first computer, the first to fourth three-dimensional models, the at least three movement directions, and the movement targets corresponding thereto, in the three-dimensional virtual space, as well as information identifying whether the motion range belongs to the range of motion. The method of setting up a machine tool according to claim 4, further comprising:

13. a memory that stores a three-dimensional model of a product, a first three-dimensional model that reproduces a table of a machine tool, a second three-dimensional model that reproduces a workpiece, a third three-dimensional model that reproduces a jig for fixing the workpiece to the table, and a relative position of a program origin in a machining program from a reference position of the second three-dimensional model; A processor; Equipped with The processor, generating the machining program based on the three-dimensional model of the product and a second three-dimensional model; generating a three-dimensional virtual space representing a virtual reality environment; and setting parameters representing positions and orientations of the first to third three-dimensional models in the three-dimensional virtual space; determining a position in the three-dimensional virtual space of a measurement point, the three-dimensional position of which in real space is measured by contacting a probe mountable on the machine tool with the workpiece, based on the relative position of the program origin, the first to third three-dimensional models, and the parameters; setting a movement model for moving the tip of the probe in order to obtain the three-dimensional position of the measurement point; generating a movement procedure including a movement direction and a movement speed when moving the probe toward each of the three-dimensional positions of at least three movement targets on the surface of the workpiece in order to obtain the three-dimensional position of the measurement point based on the measurement point, the movement model, and the three-dimensional shape of the second three-dimensional model; a second computer included in a numerical control device of the machine tool, the second computer being configured to transmit data for displaying the first to third three-dimensional models and the measurement points in the three-dimensional virtual space on a monitor of the numerical control device; computer.

14. A first computer; and a machine tool including a numerical control device connected to the first computer via a communication network and a monitor capable of visually displaying an output of the numerical control device; Equipped with The first computer a memory that stores a three-dimensional model of a product, a first three-dimensional model that reproduces a table of a machine tool, a second three-dimensional model that reproduces a workpiece, a third three-dimensional model that reproduces a jig for fixing the workpiece to the table, and a relative position of a program origin in a machining program from a reference position of the second three-dimensional model; a processor; The processor, generating the machining program based on the three-dimensional model of the product and a second three-dimensional model; generating a three-dimensional virtual space representing a virtual reality environment; and setting parameters representing positions and orientations of the first to third three-dimensional models in the three-dimensional virtual space; determining a position in the three-dimensional virtual space of a measurement point, the three-dimensional position of which in real space is measured by contacting a probe mountable on the machine tool with the workpiece, based on the relative position of the program origin, the first to third three-dimensional models, and the parameters; setting a movement model for moving the tip of the probe in order to obtain the three-dimensional position of the measurement point; a movement procedure including a movement direction and a movement speed when moving the probe toward each of the three-dimensional positions of at least three movement targets on the surface of the workpiece in order to obtain the three-dimensional position of the measurement point based on the measurement point, the movement model, and the three-dimensional shape of the second three-dimensional model; the monitor is configured to display the first to third three-dimensional models and the measurement points in the three-dimensional virtual space in a manner in which the measurement points are distinguishable from the first to third three-dimensional models; Machine tool systems.

15. When executed by a computer, read from the memory a three-dimensional model of a product, a first three-dimensional model reproducing a table of a machine tool, a second three-dimensional model reproducing a workpiece, a third three-dimensional model reproducing a jig for fixing the workpiece to the table, and a relative position of a program origin in a machining program from a reference position of the second three-dimensional model; generating the machining program based on the three-dimensional model of the product and a second three-dimensional model; generating a three-dimensional virtual space representing a virtual reality environment; and setting parameters representing positions and orientations of the first to third three-dimensional models in the three-dimensional virtual space; determining a position in the three-dimensional virtual space of a measurement point, the three-dimensional position of which in real space is measured by contacting a probe mountable on the machine tool with the workpiece, based on the relative position of the program origin, the first to third three-dimensional models, and the parameters; setting a movement model for moving the tip of the probe in order to obtain the three-dimensional position of the measurement point; generating a movement procedure including a movement direction and a movement speed when moving the probe toward each of the three-dimensional positions of at least three movement targets on the surface of the workpiece in order to obtain the three-dimensional position of the measurement point based on the measurement point, the movement model, and the three-dimensional shape of the second three-dimensional model; an instruction to cause a second computer included in a numerical control device of the machine tool to execute a process of transmitting data for displaying the first to third three-dimensional models and the measurement points in the three-dimensional virtual space on a monitor of the numerical control device; Computer program.

Citation Information

Patent Citations

  • Working system, information processing system, information processing apparatus, information processing program, and computer-readable recording medium

    JP2010117982A

  • Machine tool control system and workpiece origin setting method capable of acquiring workpiece origin

    JP2017021723A

  • Control method of machine-tool and control device of machine-tool

    JP2018045727A

  • An inspection program editing environment that provides a collision avoidance area defined by the user

    JP2018520332A

  • On-machine measurement method for machine tool and control device

    JP2019063914A