Method of controlling a shape measuring apparatus and non-transitory recording medium

By introducing synchronous control of translational movement and rotational drive mechanisms in the coordinate measuring machine and optimizing the motion path of the detector, the problem of fast and accurate measurement of workpieces with complex shapes is solved, measurement efficiency is improved and interference is reduced.

CN112729180BActive Publication Date: 2025-10-17MITUTOYO CORP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202011091350.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-10-14
Filing Date
2020-10-13
Publication Date
2025-10-17
Estimated Expiration
2040-10-13

AI Technical Summary

Technical Problem

When measuring objects with complex shapes, existing coordinate measuring machines have long measurement times and complex detector movements, which can easily interfere with the workpiece and make it difficult to achieve fast and accurate scanning measurements.

Method used

The translation mechanism and the rotation drive mechanism are used to synchronously control the detector to move along a preset scanning path. The translation velocity vector and the rotation drive command are combined to optimize the motion path of the detector to reduce the rotation amount and interference.

Benefits of technology

It improves the measurement efficiency of complex-shaped workpieces, shortens the measurement time, avoids interference between the detector and the workpiece, and realizes fast and accurate scanning measurement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112729180B_ABST
    Figure CN112729180B_ABST
Patent Text Reader

Abstract

A control method and recording medium for a shape measuring device, which uses a translational movement mechanism and a rotational drive mechanism to relatively move a probe and a workpiece, thereby scanning and measuring the workpiece by moving the probe along a preset scanning path. The method includes: an operator setting a scanning path and a rotation angle command for the rotational drive mechanism; dividing data regarding the scanning path into multiple segments, and setting a translational velocity pattern for the translational movement mechanism for each segment; calculating, for each segment, a rotational angle value at the start and end of the segment based on the rotational angle command, and generating an angular velocity pattern for each segment; correcting the translational velocity pattern to reduce the amount of rotation commanded by the angular velocity pattern, generating a corrected translational velocity pattern; and driving and controlling the translational movement mechanism based on a resultant velocity vector based on the corrected translational velocity pattern, while simultaneously driving and controlling the rotational drive mechanism based on an angular velocity command based on the angular velocity pattern.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to a control method of a shape measuring apparatus. BACKGROUND

[0002] There are known shape measuring apparatuses for measuring the shape of a measurement target object by moving a stylus tip along the surface of the measurement target object while scanning the surface of the measurement target object (see, for example, JP 5274782 B, JP 6030339 B, and JP 6063161 B). In order to perform the scanning measurement, it is necessary to set a path for the scanning measurement.

[0003] The apparatus disclosed in JP 5274782 B converts design data (for example, non-uniform rational B-spline (NURBS) data) related to a scanning path based on CAD data or the like into a set of polynomial curves having a predetermined degree.

[0004] The process is briefly explained below.

[0005] First, CAD data (for example, NURBS data) including path information is received from an external CAD system or the like, and the CAD data is converted into point group data.

[0006] The data of each point is a combination of coordinates (x, y, z) and a normal direction (P, Q, R), that is, (x, y, z, P, Q, R). In the present specification, the point group data including the information (x, y, z, P, Q, R) is referred to as contour point data.

[0007] Next, the coordinates of each point are offset by a predetermined amount in the normal direction. (The predetermined amount is specifically a stylus tip radius r - a reference deflection amount E0.) The point group data obtained in this way is referred to as offset contour point data.

[0008] Then, the offset contour point data is converted into a polynomial curve having a predetermined degree. Here, it is assumed that the polynomial is a cubic function, and the curve is a parametric cubic curve (PCC). A path for measuring a workpiece is generated based on the PCC. Further, the PCC is divided into divided PCCs.

[0009] A moving speed (moving vector) of the probe is obtained by calculating a speed curve in accordance with the divided PCC. (For example, the moving speed (moving vector) of the probe is set based on the curvature or the like of each segment of the divided PCC.) The probe is moved based on the moving speed so that the stylus tip scans the surface of the measurement target object, that is, passive nominal scanning measurement is performed.

[0010] Further, a method for performing a scan measurement while keeping the amount of deflection of a probe constant by correcting a trajectory by continuously calculating a deflection correction vector is known (JP 6030339 B). Hereinafter, such a nominal scan is referred to as an "active nominal scan measurement".

[0011] The active nominal scan measurement disclosed in JP 6030339 B is briefly explained below.

[0012] In the active nominal scan measurement, a resultant velocity vector V expressed by the following Expression 1 is a command for moving a probe. When the probe is moved based on the resultant velocity vector V, a workpiece surface scan measurement of moving the probe (stylus tip) along a PCC while keeping the amount of deflection constant, i.e., an "active nominal scan measurement", is performed.

[0013] V = Gf x Vf + Ge x Ve + Gc x Vc... (Expression 1)

[0014] Reference Figure 1 Expression 1 is briefly explained. In Figure 1 , a PCC (i.e., a scan path) is at a position offset from design data (profile point data) by a predetermined amount (stylus tip radius r - reference deflection amount E0). (Note that Figure 1 shows that an actual workpiece is slightly offset from design data due to a machining error or the like.

[0015] The vector Vf is a path velocity vector. The path velocity vector Vf has a direction from an interpolation point (i) on the PCC toward a next interpolation point (i+1).

[0016] Note that the magnitude of the path velocity vector Vf is determined based on, for example, the curvature of the PCC at the interpolation point (i) (e.g., JP 6063161 B).

[0017] The vector Ve is a deflection amount correction vector for keeping the deflection amount Ep of the probe to be a predetermined reference deflection amount E0 (e.g., 0.3 mm). (The deflection amount correction vector Ve must be parallel to the normal line of the surface of the workpiece.)

[0018] The vector Vc is a trajectory correction vector. The trajectory correction vector is parallel to a perpendicular line drawn from the position of the probe toward the PCC. In Expression 1, Gf, Ge, and Gc are a scan drive gain, a deflection direction correction gain, and a trajectory correction gain, respectively.

[0019] Figure 2 An example of a PCC is shown.

[0020] The PCC L_PCC is a line connecting from a point P1 to a point P7, and the PCC L_PCC is divided into a plurality of sections by P points. (Each section is also a PCC.)

[0021] The end point of each segment is the starting point of the next segment (PCC). The coordinates of the starting point of each segment are expressed as (K X0 ,K Y0 ,K Z0 ), and the length of the straight line between the start and end points of the PCC is expressed as D. According to this definition, the coefficient (K X3 ,K X2 ,…,K Z1 ,K Z0 )The coordinates {X(S), Y(S), Z(S)} at any point on the PCC are expressed by the following expression (2).

[0022] X(S)=K X3 S 3 +K X2 S 2 +K X1 S+K X0

[0023] Y(S)=K Y3 S 3 +K Y2 S 2 +K Y1 S+K Y0

[0024] Z(S)=K Z3 S 3 +K Z2 S 2 +K Z1 S+K Z0 …(Expression 2)

[0025] A path for scanning the object is generated using Expression (2), and the probe is controlled to perform scanning along the calculated PCC using the resultant velocity vector V (Expression 1). The measurement results of the scanning of the object are then obtained. Summary of the Invention

[0026] Recently, the shapes of measurement target objects have become quite complex, and it has been desired to perform fast and accurate scanning measurement on workpieces having complex shapes. Figure 3 Existing coordinate measuring machines (JP 5274782 B, JP 6030339 B, and JP 6063161 B) each have three perpendicular drive axes: an X-axis, a Y-axis, and a Z-axis. These axes are used to move a probe relative to an object being measured.

[0027] However, with the existing coordinate measuring machine, as the shape of the measured object becomes complex, the movement of the probe also becomes complex. Then, the moving speed of the probe becomes low, and it takes a long time to perform the measurement. In addition, depending on the shape of the workpiece, the stylus of the probe can interfere with the workpiece, and the measurement cannot be performed.

[0028] The present application provides a control method of a shape measuring apparatus, which can improve the measurement efficiency by shortening the measurement time even if the measured object has a complex shape.

[0029] The control method of a shape measuring apparatus according to an embodiment of the present application is a control method of a shape measuring apparatus configured to relatively move a probe and a workpiece by using a translational movement mechanism and a rotational drive mechanism to perform a scan measurement of the workpiece by moving the probe along a scan path set in advance, the control method comprising:

[0030] synchronizing a movement command for the translational movement mechanism with a rotation command for the rotational drive mechanism so that the scan measurement of the workpiece is performed by moving the probe along the scan path.

[0031] In an embodiment of the present application, the method can further comprise:

[0032] setting the scan path and a rotation angle command for the rotary stage by an operator;

[0033] generating a translational velocity vector command based on data related to the scan path, the translational velocity vector command being used to drive and control the translational movement mechanism so that the probe moves along the scan path;

[0034] generating a rotation command for the rotational drive mechanism based on the rotation angle command;

[0035] correcting the translational velocity vector command to reduce the amount of rotation of the rotation command, and generating a corrected translational velocity vector command; and

[0036] driving and controlling the rotational drive mechanism and the translational movement mechanism based on the rotation command and the corrected translational velocity vector command.

[0037] In an embodiment of the present application, the method can further comprise:

[0038] setting the scan path and a rotation angle command for the rotary stage by an operator;

[0039] correcting data related to the scan path to reduce the amount of rotation of the rotation command, and generating corrected scan path data;

[0040] generating a translation velocity vector command for driving and controlling the translation mechanism based on the corrected scan path data;

[0041] generating a rotation command for the rotary drive mechanism based on the rotation angle command; and

[0042] The rotation drive mechanism and the translation movement mechanism are driven and controlled based on the rotation command and the translation velocity vector command.

[0043] In an embodiment of the present invention, the method may further include:

[0044] The scanning path is set by the operator;

[0045] generating a translation velocity vector command based on data related to the scanning path, wherein the translation velocity vector command is used to drive and control the translation mechanism so that the detector moves along the scanning path;

[0046] generating a rotation command for the rotary drive mechanism based on the translational velocity vector command;

[0047] correcting the translation velocity vector command to reduce the rotation amount of the rotation command and generating a corrected translation velocity vector command; and

[0048] The rotation drive mechanism and the translation movement mechanism are driven and controlled based on the rotation command and the corrected translation velocity vector command.

[0049] In an embodiment of the present invention, preferably,

[0050] Generating a rotation command for the rotary drive mechanism based on the translation velocity vector command includes: generating a rotation command for the rotary drive mechanism based on a change in the direction of the path velocity vector Vf, and

[0051] The path velocity vector Vf is a vector having a direction from one interpolation point toward the next interpolation point on the scanning path.

[0052] In an embodiment of the present invention, preferably,

[0053] Generating a rotation command for the rotation drive mechanism based on the translation velocity vector command includes: generating a rotation command for the rotation drive mechanism based on an angle formed by a deflection amount correction vector Ve and an approach direction AP,

[0054] The approach direction AP is a predetermined direction in which the translational movement mechanism causes the probe to contact the workpiece, and

[0055] The deflection amount correction vector Ve is a vector for correcting the deflection amount Ep of the probe to a predetermined reference deflection amount E0, and has a direction parallel to a normal line of the workpiece at the contact point.

[0056] In an embodiment of the present application, preferably,

[0057] Generating a rotation command for the rotary drive mechanism based on the translation speed vector command includes:

[0058] Calculating a virtual circle C1 having a rotation center Oc of the rotary drive mechanism as a center and having a distance r1 between the contact point of the probe and the workpiece and the rotation center Oc as a radius;

[0059] Calculating a tangent line L1 of the virtual circle C1 at the contact point;

[0060] Calculating a rotation direction vector VL1 as an element of the translation speed vector command in a direction of the tangent line L1; and

[0061] Generating a rotation command for the rotary drive mechanism based on the rotation direction vector VL1.

[0062] In an embodiment of the present application, the method can further include:

[0063] Setting a scan path and a rotation angle command for the rotary drive mechanism by an operator;

[0064] Dividing data related to the scan path into a plurality of sections, and setting a translation speed pattern of the translation movement mechanism for each section based on a curvature of each section;

[0065] Based on the rotation angle command, calculating a rotation angle value at a start of each section and a rotation angle value at an end of each section, and generating an angular velocity pattern for each section;

[0066] Correcting the translation speed pattern to reduce a rotation amount of the rotation command given by the angular velocity pattern, and generating a corrected translation speed pattern; and

[0067] Driving and controlling the translation movement mechanism according to a resultant speed vector based on the corrected translation speed pattern, and simultaneously driving and controlling the rotary drive mechanism according to an angular velocity command based on the angular velocity pattern.

[0068] In an embodiment of the present application, the method can further include:

[0069] Setting a scan path and a rotation angle command for the rotary drive mechanism by an operator;

[0070] correcting data related to the scan path to reduce a rotation amount of the rotation angle command, and generating corrected scan path data;

[0071] dividing the corrected scan path data into a plurality of sections, and setting a translation speed pattern of the translation movement mechanism for each section based on a curvature of the section;

[0072] calculating, for each section, a rotation angle value at a start of the section and a rotation angle value at an end of the section based on the rotation angle command and the translation speed pattern of the section;

[0073] generating an angular velocity pattern for each section; and

[0074] driving and controlling the translation movement mechanism according to a resultant velocity vector based on the translation speed pattern, and simultaneously driving and controlling the rotation drive mechanism according to an angular velocity command based on the angular velocity pattern.

[0075] In embodiments of the present application, the method can further comprise:

[0076] setting a scan path by an operator;

[0077] dividing data related to the scan path into a plurality of sections, and setting a translation speed pattern of the translation movement mechanism for each section based on a curvature of the section;

[0078] generating a translation velocity vector command based on the data related to the scan path, the translation velocity vector command being used to drive and control the translation movement mechanism so that the probe moves along the scan path;

[0079] generating a rotation command for the rotation drive mechanism based on the translation velocity vector command;

[0080] calculating, for each section, a rotation angle value at a start of the section and a rotation angle value at an end of the section based on the rotation command, and generating an angular velocity pattern for each section;

[0081] correcting the translation speed pattern to reduce a rotation amount of the rotation command given by the angular velocity pattern, and generating a corrected translation speed pattern; and

[0082] driving and controlling the translation movement mechanism according to a resultant velocity vector based on the corrected translation speed pattern, and simultaneously driving and controlling the rotation drive mechanism according to an angular velocity command based on the angular velocity pattern.

[0083] In embodiments of the present application, preferably,

[0084] generating the angular velocity pattern for each section includes:

[0085] setting the magnitude of the angular acceleration to a predetermined fixed value; and

[0086] applying any one of a pattern for maintaining a constant angular velocity, a pattern for initially accelerating and then maintaining a constant angular velocity, and a pattern for initially maintaining a constant angular velocity and then decelerating to each section by calculating from the first section for generating the angular velocity pattern.

[0087] In an embodiment of the present invention, the method can further include:

[0088] after generating the angular velocity pattern for the last section, in the case where the angular velocity is not zero at the end point of the scan path, calculating a deceleration distance required for the rotary drive mechanism to stop at the end point of the scan path, and correcting the angular velocity pattern so that the rotary drive mechanism starts to decelerate from the required deceleration distance before the end point.

[0089] In an embodiment of the present invention, the method can further include:

[0090] chunking a plurality of the angular velocity patterns generated for each section; and

[0091] curving the acceleration / deceleration region of the chunked angular velocity pattern in an S shape. BRIEF DESCRIPTION OF DRAWINGS

[0092] Figure 1 is a diagram schematically showing the relationship between design data, a PCC, and a resultant vector;

[0093] Figure 2 is a diagram showing an example of a PCC;

[0094] Figure 3 is a diagram showing an example of a measurement target object;

[0095] Figure 4 is a diagram showing the structure of an entire shape measurement system;

[0096] Figure 5 is a functional block diagram of a host computer and a motion controller;

[0097] Figure 6 is a diagram showing an example of path meandering for performing scan measurement on the side surface of a columnar workpiece (measurement target object) W;

[0098] Figure 7is a diagram schematically showing setting of a rotation angle (rotation angle command) in a section of a scan path;

[0099] Figure 8 is a functional block diagram of a motion controller;

[0100] Figure 9 is a diagram showing an example of a translation speed pattern;

[0101] Figure 10 is a diagram showing an example of a pattern to which angle information is added to a translation speed pattern;

[0102] Figure 11 is a diagram showing addition of a movement distance Li, a start speed Vsi, an acceleration / deceleration time ta, a constant speed time tc, a final speed VFi, a start time ts, and an end time tf of each section to a translation speed pattern;

[0103] Figure 12 is a diagram showing an example of an angular velocity pattern to be applied to each section;

[0104] Figure 13 is a diagram showing an example of an angular velocity pattern of a rotary stage synchronized with a probe moved by a translation movement mechanism;

[0105] Figure 14 is a diagram showing an example of a scan measurement motion;

[0106] Figure 15 is a diagram showing an example of a scan measurement motion;

[0107] Figure 16 is a diagram showing an angular velocity pattern requiring correction;

[0108] Figure 17 is a diagram showing S-shaped acceleration / deceleration processing of a speed pattern given by a linear function;

[0109] Figure 18 is a diagram showing S-shaped acceleration / deceleration processing of a speed pattern given by a linear function;

[0110] Figure 19 is a diagram showing an example of a tilt rotary stage mechanism;

[0111] Figure 20 is a diagram showing an example of a probe having a rotation axis;

[0112] Figure 21 is a diagram showing an example of a relationship between measurement command data and corrected measurement command data in the fourth exemplary embodiment;

[0113] Figure 22is a graph showing an example of the corrected PCC;

[0114] Figure 23 is a functional block diagram of the motion controller;

[0115] Figure 24 is a graph showing an example of the speed pattern;

[0116] Figure 25 is a graph showing the structure of the motion controller in the fifth typical embodiment;

[0117] Figure 26 is a graph showing an example of the path used for the scan measurement;

[0118] Figure 27 is a graph showing a graph of along the Z axis; Figure 26

[0119] Figure 28 is a graph explaining the sixth typical embodiment; and

[0120] Figure 29 is a graph showing an example of calculating the rotation angle command from the resultant vector V.

[0121] Reference Signs List

[0122] 100 shape measurement system

[0123] 200 coordinate measuring machine

[0124] 210 measuring stage

[0125] 220 translational movement mechanism

[0126] 221 Y slide

[0127] 222 X slide

[0128] 223 Z-axis column

[0129] 224 Z main shaft

[0130] 230 probe

[0131] 231 stylus

[0132] 232 stylus tip

[0133] 233 support portion

[0134] 250 rotary stage mechanism

[0135] 251 rotary stage

[0136] 300 motion controller

[0137] ​310 measurement command acquisition unit

[0138] 330 counter unit

[0139] 340 drive command generation unit

[0140] 341 translational velocity pattern planning unit

[0141] 342 translational vector command generation unit

[0142] 343 translational vector command correction unit

[0143] 344 rotational command generation unit

[0144] 350 drive control unit

[0145] 351 translational moving mechanism control unit

[0146] 352 rotational drive control unit

[0147] 500 host computer

[0148] 520 storage unit

[0149] 530 shape analysis unit DETAILED DESCRIPTION

[0150] Embodiments of the present application will be exemplified and explained with reference to the reference numerals attached to the elements in the accompanying drawings.

[0151] (First Typical Embodiment)

[0152] Figure 4 is a diagram showing the structure of the entire shape measurement system 100. The shape measurement system 100 includes a coordinate measuring machine 200, a motion controller 300 for controlling the drive of the coordinate measuring machine 200, and a host computer 500 for controlling the motion controller 300 and performing the required data processing.

[0153] The coordinate measuring machine 200 includes a measurement table 210, a translational moving mechanism 220, a probe 230, and a rotary table mechanism 250.

[0154] The translational moving mechanism 220 includes a gate-shaped Y slide 221, an X slide 222, a Z-axis column 223, and a Z spindle 224. The Y slide 221 is provided in a manner slidable on the measurement table 210 in the Y direction. The X slide 222 slides along the beam of the Y slide 221 in the X direction. The Z-axis column 223 is fixed to the X slide 222. The Z spindle 224 moves up and down within the Z-axis column 223 in the Z direction.

[0155] On each of the Y slide 221, the X slide 222, and the Z spindle 224, a drive motor (not shown) and an encoder (not shown) are fixed. The drive motor is driven and controlled by a drive control signal from the motion controller 300. The encoder detects the amount of movement of each of the Y slide 221, the X slide 222, and the Z spindle 224, and outputs the detected value to the motion controller 300. The probe 230 is attached to the lower end of the Z spindle 224.

[0156] The probe 230 includes a stylus 231 and a support portion 233. The stylus 231 includes a stylus tip 232 at the front end side (-Z axis direction side). The support portion 233 supports the base end side (+Z axis direction side) of the stylus 231. The stylus tip 232 has a spherical shape, and contacts the measurement target object.

[0157] When an external force is applied to the stylus 231, that is, when the stylus tip 232 is brought into contact with the measurement target object, the support portion 233 supports the stylus 231 so that the stylus 231 is movable within a certain range in the X, Y, and Z axis directions. The support portion 233 includes a probe sensor (not shown) for detecting the position of the stylus 231 in each axis direction. The probe sensor outputs the detected value to the motion controller 300.

[0158] The rotary stage mechanism 250 is installed on the measurement stage, and rotates the rotary stage 251 with a built-in motor (not shown). Note that the rotation axis of the rotary stage 251 is parallel to the Z axis. The rotary stage mechanism 250 includes a rotary encoder (not shown) that outputs the detected value to the motion controller 300.

[0159] (Configuration of the host computer 500)

[0160] Next, the host computer 500 will be described below.

[0161] Figure 5 is a functional block diagram of the host computer 500 and the motion controller 300. The host computer 500 includes a central processing unit (CPU) 511 and a memory, and controls the coordinate measuring machine 200 through the motion controller 300. The CPU 511 executes a measurement control program, thereby realizing the measurement motion in the present embodiment. The host computer 500 is connected to an output device (a display and a printer) and an input device (a keyboard and a mouse) as needed.

[0162] The host computer 500 further includes a storage unit 520 and a shape analysis unit 530. The storage unit 520 stores design data (CAD data or NURBS data, etc.) related to the shape of the measurement target object (workpiece) W, measurement data obtained in measurement, and a measurement control program for controlling the entire measurement motion.

[0163] The shape analysis unit 530 calculates surface shape data relating to the measurement target object based on the measurement data output from the motion controller 300, and performs shape analysis to calculate errors or distortions, etc. of the calculated surface shape data relating to the measurement target object.

[0164] The shape analysis unit 530 further converts design data (CAD data or NURBS data, etc.) including information relating to the scan path into PCC to generate measurement command data. Here, the generation of the measurement command data is explained.

[0165] For example, assume that it is desired to perform scan measurement of a cylindrical workpiece (measurement target object) W by performing a snake motion on the side surface of the workpiece W as exemplified in Figure 6 In this case, with the conventional technique, the operator sets a scan path (snake motion path) as shown in Figure 6 , and the scan path has been set as CAD data, for example. In the present embodiment, the operator inputs the information relating to the scan path and the rotation angle value of the turntable 251 at that time as a command value.

[0166] For example, as shown in Figure 7 , the scan path is divided into a plurality of sections. Then, for each section, the rotation angle ΘS of the turntable 251 at the start point of the section and the rotation angle ΘF of the turntable 251 at the end point of the section are set. (The end point of the section is also the start point of the next section.) Assume that this rotation angle command is embedded in the information relating to the scan path in a manner linked to the CAD data. In the example of Figure 7 , the rotation angle of the turntable 251 is set to "0°" at the start point PS of the first section (section 1), and to "+10°" at the end point PF of the section, and so on. (In the actual scan measurement motion, the turntable 251 is rotated by 10° during the scan movement of the stylus tip 232 in the first section.)

[0167] The shape analysis unit 530 converts the CAD data into point group data (contour point data) → offset contour point data → PCC using a method as described in the related art.

[0168] However, the rotation angle command is extracted from the information relating to the scan path, and is added to the corresponding section of the PCC after the PCC is generated. The data obtained by adding the rotation angle command to the PCC is referred to as "measurement command data" in the present embodiment (see Figure 8 ).

[0169] Structure of the motion controller 300

[0170] Figure 8is a functional block diagram of the motion controller 300. The motion controller 300 is explained below. The motion controller 300 includes a measurement command acquisition unit 310, a counter unit 330, a drive command generation unit 340, and a drive control unit 350.

[0171] The measurement command acquisition unit 310 acquires measurement command data from the host computer 500.

[0172] (In the present embodiment, the measurement command data is data obtained by adding a rotation angle command to PCC data.)

[0173] The counter unit 330 counts detection signals output from encoders to measure displacement amounts of the respective sliders, and counts detection signals output from the probe sensor to measure a displacement amount of the probe 230 (stylus 231).

[0174] From the measured displacement amounts of the sliders and the probe 230, a coordinate position PP of the stylus tip 232 (hereinafter referred to as a probe position PP) is obtained.

[0175] In addition, from the displacement amount of the stylus 231 measured by the counter unit 330 (detection values (Px, Py, Pz) of the probe sensor), a deflection amount of the stylus tip 232 (absolute value of the vector Ep) is obtained. Also, the counter unit 330 counts detection signals detected by the rotary encoder to obtain a rotation angle of the rotary stage mechanism 250.

[0176] The drive command generation unit 340 includes a translation velocity pattern planning unit 341, a translation vector command generation unit 342, a rotation command generation unit 344, and a translation vector command correction unit 343.

[0177] The measurement command data is obtained by adding a rotation angle command to PCC data.

[0178] First, the translation velocity pattern planning unit 341 and the translation vector command generation unit 342 generate a resultant velocity vector V from the PCC in a conventional manner. That is, in the present embodiment, the translation velocity pattern planning unit 341 and the translation vector command generation unit 342 also generate a resultant velocity vector V from the PCC. The translation velocity pattern planning unit 341 divides the PCC into divided PCCs, and calculates a velocity profile from the divided PCCs to calculate a moving speed (moving vector) of the probe 230 moved by the translation moving mechanism 220 (see Figure 9 ). That is, the moving speed (moving vector) of the probe 230 moved by the translation moving mechanism 220 is set based on curvatures of sections of the divided PCCs, whereby a resultant velocity vector V is generated. Figure 9The illustrated translation speed pattern. The applicant discloses in detail how to apply the speed pattern to each section of the divided PCC and, for example, in JP 6063161 B Figure 9 The illustrated series of speed patterns (speed plan).

[0179] The rotation command generation unit 344 generates a rotation drive command for the rotary stage mechanism 250. Here, the rotation drive command for the rotary stage mechanism 250 need not be given as a coordinate value (an angle value), but needs to be given as a constantly changing "angular velocity". The rotation command generation unit 344 is required to convert the "rotation angle command" included in the measurement command data into an angular velocity command. In addition, the rotation command generation unit 344 is required to generate a rotation angle command so that the rotation of the rotary stage 251 is synchronized with the movement of the probe 230 using the translation movement mechanism 220, so that the probe 230 performs a scanning measurement of the surface of the workpiece along the scan path set by the operator.

[0180] The rotation command generation unit 344 acquires the measurement command data including the rotation angle command from the measurement command acquisition unit 310, and further acquires the translation speed pattern (Vp) from the translation speed pattern planning unit 341. The translation speed pattern (Vp) is shown in Figure 9 . The translation speed pattern acquired by the rotation command generation unit 344 is shown in Figure 10 . This pattern is the same as the translation speed pattern in Figure 9 generated by the translation speed pattern planning unit 341, but adds angle information to the translation speed pattern. In the measurement command data, the angle of the rotary stage 251 at the start point of the section 1 has been set to -10°, and the angle of the rotary stage 251 at the end point of the section 1 (the start point of the section 2) has been set to +10°. Here, the translation speed pattern planning unit 341 divides the scan path (corrected PCC) into a plurality of sections, and applies a translation speed pattern to each section. The rotation command generation unit 344 sets an angular velocity pattern for each section of the translation speed pattern so that the translation movement of the probe 230 using the translation movement mechanism 220 is synchronized with the rotation movement of the rotary stage 251.

[0181] When the translation speed pattern planning unit 341 generates the translation speed pattern, the movement distance Li, the start speed Vsi, the acceleration / deceleration time ta, the constant speed time tc, and the final speed VFi are calculated for each section Seg(i) (see Figure 11 ).

[0182] Since the acceleration / deceleration time ta and the constant speed time tc are calculated for each section Seg(i), the start time ts and the end time tf of each section are known, and the time T required for each section Seg(i) (section movement time Tseg) is also known.

[0183] The rotation command generation unit 344 assigns angle information to each segment Seg(i) based on this information.

[0184] The rotation command generation unit 344 calculates, for each segment, a rotation angle value θs at the start of the segment and a rotation angle value θf at the end of the segment.

[0185] The angle of the rotary table 251 at the start of the division 1 has been set to 10°, and the angle of the rotary table 251 at the end of the division 1 has been set to +10°.

[0186] Here, the division 1 has been divided into segments 1 to 4 by the translation speed pattern planning unit 341. Therefore, the rotation command generation unit 344 proportionally assigns the total rotation amount (10° in this specification) during the division 1 according to the time required for each segment (segment movement time T).

[0187] Therefore, as Figure 10 illustrated, the rotation angles θ1, θ2, θ3, etc. of the rotary table 251 at the start and end of each segment are obtained. Then, the rotation amount Θ (segment rotation amount Θ) of the rotary table 251 during each segment is also obtained.

[0188] The rotation command generation unit 344 applies an angular velocity command pattern to each segment. At this time, the rotation command generation unit 344 applies the angular velocity command pattern to the first segment Seg1 in order. This is because the end angular velocity ω F of the preceding segment Seg(i-1) becomes the start angular velocity ω S of the next segment Seg(i).

[0189] Here, as the angular velocity pattern to be applied to each segment, five patterns as shown in FIG. 8 are prepared. Figure 12

[0190] The first angular velocity pattern is an angular velocity pattern for rotating the rotary table 251 at a constant angular velocity ω.

[0191] The start angular velocity ω S of the segment is determined by the angular velocity pattern of the preceding segment Seg(i-1). That is, the end angular velocity ω F of the preceding segment Seg(i-1) is the start angular velocity of the next segment Seg(i), and if the first angular velocity pattern is applied, the start angular velocity ω S is maintained. If ω s × T = Θ holds, the first angular velocity pattern is applicable.

[0192] The second angular velocity pattern and the third angular velocity pattern are angular velocity patterns for initially accelerating and then maintaining a constant angular velocity ω. ​

[0193] Here, "acceleration" means increasing the absolute value of the angular velocity.

[0194] If the left turning direction is the positive direction, then accelerating in the right turning direction means "deceleration", but this is considered to be "acceleration" in the negative direction. Then, for example, considering the magnitude of the angular velocity ω (rotational speed), the second angular velocity pattern and the third angular velocity pattern can be considered to be the same because both patterns each have an adjustment period ta for initially increasing the rotational speed, and then a period with constant rotational speed. (That is, the two patterns differ only in the turning direction.)

[0195] Here, it is assumed that the first angular velocity pattern is applied to the section Seg(i), but this pattern is not sufficient for the section turning amount Θ. At this time, the acceleration time is denoted as ta, and the constant speed time is denoted as tc, and the following simultaneous equations are solved.

[0196] ta + tc = T

[0197] ω s · ta + (α · ta 2 / 2) + ω F · tc = Θ

[0198] ω F = ω s + α · ta

[0199] In these equations, α is the magnitude of the acceleration of the rotary table 251, and it is assumed that the magnitude of the acceleration of the rotary table 251 is fixed to a predetermined value. That is, the rotary table 251 accelerates or decelerates as fast as possible to reach the target angular velocity, and maintains the constant angular velocity as long as possible. (The magnitude of the acceleration is not adjusted.) Incidentally, the magnitude of the acceleration α is preferably set to about half of the resistance to the acceleration of the rotary table 251. This is because, although the calculation with the premise that the rotary table 251 linearly accelerates when generating the angular velocity pattern (speed pattern) is efficient, in actual motion control, the acceleration / deceleration curve is converted into an S-shaped curve to achieve smooth acceleration / deceleration control.

[0200] By solving the above equations, the acceleration time ta, the constant speed time tc, and the end angular velocity ω F are obtained. Note that in the second pattern and the third pattern, the case where acceleration is allowed to be maintained is allowed.

[0201] This is the case where ta = T (tc = 0).

[0202] The fourth angular velocity pattern and the fifth angular velocity pattern are angular velocity patterns in which the rotary table 251 initially turns at a constant angular velocity ω S and then decelerates.

[0203] Here, it is assumed that the first angular velocity pattern is applied to the section Seg(i), but the section rotation amount Θ is exceeded.

[0204] At this time, the constant velocity time is denoted as tc, the deceleration time is denoted as ta, and the following simultaneous equations are solved.

[0205] ta + tc = T

[0206] ω s · tc + ω s · ta - (α · ta 2 / 2) = Θ

[0207] ω F = ω s - α · ta

[0208] By solving the above equations, the constant velocity time tc, the deceleration time ta, and the end angular velocity ω F are obtained. Note that, in the fourth pattern and the fifth pattern, the case where deceleration is permitted to be maintained is permitted.

[0209] This is the case where ta = T (tc = 0).

[0210] In this way, when the angular velocity pattern is sequentially calculated from the first section, as Figure 13 indicated, the angular velocity pattern of the rotary table 251 that is synchronized with the movement of the probe 230 using the translational movement mechanism 220 is obtained.

[0211] After the translational velocity pattern is generated, the translational velocity pattern planning unit 341 combines the adjacent segments for blocking (JP 6063161 B), but the rotation command generation unit 344 preferably applies an angular velocity pattern to each segment based on the translational velocity pattern before blocking. It is possible to apply the angular velocity pattern to the translational velocity pattern after blocking in units of blocks, but if the block unit becomes large, the angular velocity pattern of the rotary stage 251 cannot be properly obtained. It is also possible that the angular acceleration a is variable or that more angular velocity patterns are prepared (for example, JP 6063161 B), but the calculation becomes very complicated. In the present embodiment, the angular velocity pattern is applied to each segment based on the translational velocity pattern before blocking, and the angular velocity pattern is applied with simple calculation by reducing the number of angular velocity patterns and setting the magnitude of acceleration to be constant. In addition, since the angular velocity pattern is applied to each segment, the number of divisions increases, so synchronization is easily performed. Note that the main purpose of the rotary stage 251 to rotate the workpiece W is to avoid interference between the probe 230 and the workpiece W, and when the workpiece W is rotated in a certain direction at a certain angular velocity for a certain time, interference can be basically avoided. Complex and subtle movements are mainly achieved by moving the probe along the corrected PCC by the translational movement mechanism 220 and deflection control in active scanning measurement.

[0212] Note that, in order to drive and control the rotary stage 251, it is preferable to block the angular velocity pattern. For example, all of the segments Segl to Seg6 shown in FIG. 6 can be blocked. For example, since the deceleration of the latter half of the segment Seg4 and the acceleration of the former half of the segment Seg5 are the same acceleration, it is preferable to treat these as one series of acceleration times. Figure 13

[0213] The translational vector command generation unit 342 generates a resultant velocity vector V based on the set scan path information (here, the corrected PCC) and the translational velocity pattern (translational velocity plan) shown in FIG. 6 as described in the related art. Figure 11

[0214] V = Gf x Vf + Ge x Ve + Gc x Vc... (Expression 1)

[0215] The translational vector command correction unit 343 corrects the resultant vector V generated by the translational vector command generation unit 342 to reduce the amount of rotation of the rotary stage 251, and generates a rotation-corrected resultant velocity vector V AMD (correction-after translational velocity vector command). Here, it is assumed that the translational movement mechanism 220 does not move the probe 230 in the right direction (arrow A), but the rotary stage 251 rotates in the left direction (arrow B) of Figure 14 . At this time, the resultant vector V is corrected to reduce the amount of rotation of the rotary stage 251.​​

[0216] Thus, a vector from the rotation axis of the rotary stage 251 to the probe 230 (stylus tip 232) in the state of the Figure 14 is referred to as a radius vector R. In addition, the angular velocity vector of the rotary stage 251 is denoted as ω.

[0217] The velocity (vector) of the rotary stage 251 at the position of the probe 230 (stylus tip 232) is denoted as Vθ= ω x R, and the post-rotation correction resultant velocity vector V is expressed by subtracting Vθfrom the resultant velocity vector V as follows AMD .

[0218] The post-rotation correction resultant velocity vector V AMD = Gf x Vf+ Ge x Ve+ Gc x Vc- Gθ x Vθ

[0219] The drive control unit 350 includes a translation mechanism control unit 351 for driving and controlling the translation movement mechanism 220, and a rotation drive control unit 352 for driving and controlling the rotary stage mechanism 250 (see Figure 8 ).

[0220] The translation vector command correction unit 343 supplies the post-rotation correction resultant velocity vector V AMD to the translation mechanism control unit 351.

[0221] The rotation command generation unit 344 supplies the angular velocity command as a rotation drive command to the rotation drive control unit 352.

[0222] The correspondence (linkage) between the resultant velocity vector based on the translation velocity mode and the rotation drive command (angular velocity command) based on the angular velocity mode is maintained, and the post-rotation correction resultant velocity vector V AMD and the rotation drive command synchronized with each other are supplied to the translation mechanism control unit 351 and the rotation drive control unit 352, respectively. Then, the translation mechanism control unit 351 supplies a translation movement signal based on the post-rotation correction resultant velocity vector V AMD to the translation movement mechanism 220, and the rotation drive control unit 352 supplies a rotation drive signal based on the rotation drive command to the rotary stage mechanism 250, and these signals are synchronized with each other.

[0223] The movement signal and the rotation drive signal generated in this way drive the translation movement mechanism 220 and the rotary stage mechanism 250, whereby, for example, the Figure 15The illustrated scanning measurement motion. That is, the probe 230 moved by the translational movement mechanism 220 is, for example, simply lowered straight down in the Z-axis direction. The rotary table 251 turns clockwise or counterclockwise in accordance with the movement of the probe 230. As a result, scanning measurement is performed with path snake motion on the side surface of the columnar workpiece W.

[0224] As measurement data, the three-dimensional coordinates of the stylus tip 232 are acquired using the encoder of the probe 230 and the encoder of the translational movement mechanism 220, and the amount of rotation of the rotary table mechanism 250 is acquired using a rotary encoder. In order to analyze the shape of the workpiece (measured object) W, it is necessary to take into account the amount of rotation of the rotary table mechanism 250.

[0225] According to the present embodiment having such a structure, scanning measurement using the rotation of the rotary table mechanism 250 can be performed.

[0226] In the conventional coordinate measuring machine, the probe 230 and the workpiece W are relatively moved using three drive axes perpendicular to each other, but in the present embodiment, the probe 230 and the workpiece W are relatively moved using four axes including the rotation axis of the rotary table mechanism 250 in addition to the three axes. In this way, the translational movement mechanism 220 having three axes perpendicular to each other cooperates with the rotationally driven rotary table mechanism 250, and the motion of the probe 230 can be reduced and simplified. This can shorten the measurement time and improve the measurement efficiency when scanning measurement is performed on a workpiece having a complex shape using a complex scanning path.

[0227] In the case of the roundness measuring machine as a comparative example, the probe of the roundness measuring machine moves only back and forth in the XZ plane. Alternatively, the movable direction of the probe is limited to a predetermined restriction surface. In addition, the rotation command for the rotary table mechanism and the movement command for the translational movement mechanism are not supplied synchronously. The rotary table mechanism and the translational movement mechanism are driven separately, and only the result of combining these two mechanisms.

[0228] In contrast, in the present application, the rotary table mechanism is fixed to the coordinate measuring machine. The probe can be moved naturally in the Y direction. By using the rotation command for the rotary table mechanism and the movement command for the translational movement mechanism synchronously, scanning measurement is performed with a desired scanning path. At this time, by using the rotation of the rotary table mechanism, the amount of movement of the probe of the translational movement mechanism can be reduced.

[0229] There are coordinate measuring machines that include both a translational movement mechanism and a rotary table mechanism. As a rotary table mechanism, there are rotary tables in the present embodiment, and there are also known multi-axis probes having a rotationally driven axis. However, it is difficult for an operator to write a scanning measurement command including rotational motion as a component program, and there are many restrictions. In particular, it is difficult to supply the rotation command as an angular velocity.

[0230] When scanning and measuring a workpiece by combining a translational movement mechanism with a rotary table mechanism, a measurement part program is typically written to cause the translational movement mechanism to move a probe to a desired position, stop translational movement, and then cause the rotary table mechanism to rotate the probe or rotary table at a predetermined angular velocity. In order for a coordinate measuring machine to perform scanning measurement motions along a relatively complex path while synchronizing translational and rotational movement, it is desirable that the angular information embedded in the scanning path information be similar to the coordinate commands of the coordinate measuring machine.

[0231] However, the rotation command to be supplied to the rotating stage mechanism 250 is an angular velocity command, and the rotation command generation unit 344 is required to generate an angular velocity command. In this regard, according to this embodiment, as long as the operator only sets the angle information in the scanning path, the rotation command generation unit 344 generates an angular velocity pattern synchronized with the translational velocity pattern, and performs scanning measurement with translational drive and rotational drive synchronized.

[0232] (Second exemplary embodiment)

[0233] In the first exemplary embodiment, the processing of the rotation command generation unit 344 for generating an angular velocity pattern is described.

[0234] The end point of the scan measurement is considered here.

[0235] When the front end of the probe 230 (the stylus tip 232 ) reaches the end point of the set scanning path, it is desirable that the movement of the probe 230 by the translational movement mechanism 220 and the rotational drive of the rotary stage 251 are suddenly stopped.

[0236] A velocity pattern is generated for the translation movement mechanism 220 and the rotation stage 251 to decelerate in the last section so as to stop at the end point of the scanning path, but the angular velocity cannot be sufficiently decelerated in the last section to be zero at the end point of the scanning path. For this reason, the rotation command generation unit 344 temporarily generates an angular velocity pattern for all sections including the last section, and in the case where the angular velocity cannot be sufficiently decelerated to be zero at the end point, the deceleration time (deceleration distance) required for stopping is calculated to correct the angular velocity pattern. For example, the angular velocity pattern initially generated is used Figure 16 The solid line shown indicates that the speed exceeds the end point. In this case, the angular velocity pattern is corrected to decelerate from one section before the end point, or if necessary, from two sections, so that the angular velocity reaches zero at the end point. Using this process for correcting the angular velocity pattern, when the probe 230 reaches the end point of the scan path, the movement of the probe 230 by the translational movement mechanism 220 and the rotation of the rotary stage 251 are stopped as desired by the operator.

[0237] (Third exemplary embodiment)

[0238] In the third typical embodiment, the S-shaped acceleration / deceleration process is explained.

[0239] In the first typical embodiment, the angular acceleration a is set to a predetermined fixed value, and the angular velocity of the acceleration / deceleration time is a linear function with respect to time. However, in the control of the rotary stage, it is preferable that the angular velocity gradually accelerates and gradually decelerates. The applicant discloses in JP 6050636 B an S-shaped acceleration / deceleration process on the speed pattern given by the linear function (see, for example, FIG. 6 of JP 6050636 B). Figure 17 With the S-shaped acceleration / deceleration process, it is possible to smoothly rotate the rotary stage and obtain an angular velocity pattern for smoothly changing the rotation direction as shown in FIG. 6 of JP 6050636 B. Figure 13 Figure 18

[0240] (Modified Example 1)

[0241] In the above-described embodiment, only one rotation axis of the rotary stage mechanism is provided, but two or more rotation axes can be provided.

[0242] For example, as shown in FIG. 7, a tilt rotary stage mechanism capable of further tilting the rotary stage can be employed. In this case, the number of rotation axes is two. Alternatively, as shown in FIG. 8, there is a known probe having two rotation axes, and a single-axis probe having one rotation axis can be employed, or a dual-axis probe having two rotation axes can be employed. In addition, as a variation of the combination, a single-axis probe having one rotation axis can be combined and employed with the rotary stage mechanism. Of course, a dual-axis probe having two rotation axes can be combined with the tilt rotary stage mechanism. Figure 19 Figure 20 When the scan path is set as a measurement command, the operator also sets a rotation angle command for each rotation axis. As described above, the angular velocity pattern of each rotation axis is calculated by the rotation command generation unit 344. If the number of rotation axes is two or more, the correction for reducing the rotation amount from the translation vector command is still valid.

[0243] When the scan path is set as a measurement command, the operator also sets a rotation angle command for each rotation axis. As described above, the angular velocity pattern of each rotation axis is calculated by the rotation command generation unit 344. If the number of rotation axes is two or more, the correction for reducing the rotation amount from the translation vector command is still valid.

[0244] (Fourth Typical Embodiment)

[0245] Next, the fourth typical embodiment of the present application is explained.

[0246] The basic structure in the fourth typical embodiment is the same as that in the first typical embodiment, but in the fourth typical embodiment, the shape analysis unit 530 of the host computer 500 corrects the PCC.

[0247] ​​​Now, reference will be made to Figure 21 .

[0248] The processing until the shape analysis unit 530 generates the PCC, and then generates the "measurement command data" by adding the rotation angle command to the corresponding partition of the PCC, is the same as the first typical embodiment. In the fourth typical embodiment, the shape analysis unit 530 generates the corrected PCC obtained by rotating the PCC and moving the rotation amount of the rotation angle command, to reduce the rotation amount of the rotation stage mechanism 250. (Such coordinate conversion processing is performed faster by the host computer 500 than by the motion controller 300.)

[0249] When the rotation amount of the rotation angle command is reduced from the PCC, the corrected PCC becomes a smooth curve as shown in Figure 22 . (That is, a curve that is moderated, has a small overall curvature, or has less change in curvature is expected to be obtained. If the rotation angle command is appropriately supplied, the corrected PCC can be a straight line in an extreme case.) The data obtained by adding the rotation angle command for each partition to the corrected PCC is referred to as "corrected measurement command data". The "corrected measurement command data" is transmitted from the host computer 500 (shape analysis unit) to the motion controller 300.

[0250] Next, the processing in the motion controller 300 will be described.

[0251] Reference will be made to Figure 23 .

[0252] The difference from the first typical embodiment ( Figure 8 ) is that the motion controller 300 in the fourth typical embodiment is not provided with the translation vector command correction unit 343. The translation speed pattern planning unit 341 and the translation vector command generation unit 342 generate the resultant velocity vector V from the corrected PCC using a conventional method. That is, the translation speed pattern planning unit 341 divides the corrected PCC into divided PCCs, and calculates a velocity curve from the divided PCCs to calculate the moving speed (moving vector) of the probe 230 (see Figure 24 ). The translation vector command generation unit 342 generates the resultant velocity vector V as described in the related art.

[0253] The processing itself is the same as the conventional method, and is the same as the processing in the first typical embodiment, but in the fourth typical embodiment, the PCC is corrected to be smooth. Therefore, if the speed pattern is generated with the same processing, the speed of the speed pattern is increased as a whole as shown in Figure 24 . The subsequent processing is the same as that in the first typical embodiment, and repeated description is omitted.

[0254] According to the fourth typical embodiment, the measurement time can be further shortened.

[0255] (Fifth Exemplary Embodiment)

[0256] Next, a fifth exemplary embodiment of the present invention is described below.

[0257] In the fifth exemplary embodiment, the operator does not set a rotation angle command, but the motion controller 300 (or the host computer 500) automatically generates a rotation angle command from the PCC as a scanning path.

[0258] In the fifth exemplary embodiment, the operator simply sets the scan path as in the conventional manner. The shape analysis unit 530 of the host computer 500 converts the scan path into PCC as measurement command data and supplies the data to the motion controller 300. The processing up to this point is the same as the conventional method.

[0259] Figure 25 The configuration of the motion controller 300 in the fifth exemplary embodiment is shown in FIG.

[0260] Here, it is assumed that the operator Figure 26 The path used for the scanning measurement is set as shown. Furthermore, assume that the interpolation points on the PCC are set to P1, P2, P3, and so on. In this case, the path velocity vector pointing from interpolation point P1 to interpolation point P2 is represented as Vf1. The processing until this vector is obtained is performed by the translation vector command generation unit 342. (The translation vector command generation unit 342 then generates the resultant velocity vector V. This processing is the same as the conventional method.)

[0261] The rotation command generation unit 344 uses the path velocity vectors Vf1 and Vf2 generated by the translation vector command generation unit 342 to generate a rotation angle command for the rotation stage mechanism 250. The path velocity vectors Vf1 and Vf2 represent the direction of travel of the probe 230 based on design values. For example, by comparing the path velocity vector Vf1 with the path velocity vector Vf2, the amount of change in the direction of travel is determined. By compensating for part or all of this change in the direction of travel by rotating the rotation stage mechanism 250, the amount of drive of the translational movement mechanism 220 is reduced accordingly.

[0262] The method for generating the rotation angle command for the rotary table mechanism 250 from the path velocity vectors Vf1 and Vf2 and the like is described as an example. Figure 27 It shows Figure 26a graph of the along the Z axis. (That is, it is assumed that the graph is projected on the XY plane.) Here, a vector parallel to the Z axis is called a vector Z. In addition, a cross product vector of the vector Z and the path velocity vector Vf1 is denoted as VR1. On the XY plane, an included angle formed by the vector VR1 and the path velocity vector Vf2 is denoted as θ1. When "θ1-90°" is calculated by subtracting 90° from θ1, the solution corresponds to a change from the path velocity vector Vf1 to the path velocity vector Vf2 in the direction of travel. (This means a change in the direction of the path velocity vector when viewed on the XY plane.)

[0263] Thus, the rotation angle command for the rotary stage mechanism 250 is f(θi) as a function of θ1. (Here, the suffix is i (i = 1, 2, 3,...). The coefficients and the like of the function f are appropriately determined.) Once the rotation angle command is determined, the translation vector command correction unit 343 reduces the rotation amount from the resultant velocity vector V to generate a rotation-corrected resultant velocity vector V AMD (correction-after translation velocity vector command). The subsequent processing has been described in the first typical embodiment and is omitted.

[0264] (Sixth Typical Embodiment)

[0265] In the fifth typical embodiment, the path velocity vector Vf is used, but in the sixth typical embodiment, the deflection amount correction vector Ve is used to calculate the rotation angle command for the rotary stage mechanism 250.

[0266] Reference Figure 28 The sixth typical embodiment is described below.

[0267] In this example, the direction from right to left (that is, the "-X direction") is called the predetermined approach direction AP.

[0268] When viewed on the XY plane, if the normal direction of the workpiece W is maintained parallel to the approach direction AP at the contact point of the probe 230 (stylus tip 232) and the workpiece W, the workpiece W can be measured with the probe 230 (stylus tip 232).

[0269] The deflection amount correction vector Ve is a vector of which the deflection amount Ep of the probe 230 is a predetermined reference deflection amount E0 (for example, 0.3 mm), and is calculated from the direction of displacement of the probe 230 (stylus tip 232). The deflection amount correction vector Ve must be a vector parallel to the normal line of the surface of the workpiece W. Therefore, the rotation command generation unit 344 calculates the angle formed by the vector AP in the approach direction (approach vector AP) and the deflection amount correction vector Ve to generate a rotation angle command for rotating the rotary stage 251 so that the approach vector AP is parallel to the deflection amount correction vector Ve. Once the rotation angle command is determined, the translation vector command correction unit 343 reduces this rotation amount from the resultant velocity vector V to generate a rotation-corrected resultant velocity vector V AMD (correction-after-translation velocity vector command). The subsequent processes have been described in the first typical embodiment, and are omitted.

[0270] (Seventh Typical Embodiment)

[0271] In the fifth typical embodiment, the path velocity vector Vf is used to calculate the rotation angle command for the rotary stage mechanism 250, and in the sixth typical embodiment, the deflection amount correction vector Ve is used to calculate the rotation angle command for the rotary stage mechanism 250, but in the seventh typical embodiment, the resultant velocity vector V is used to calculate the rotation angle command for the rotary stage mechanism 250.

[0272] It is assumed that the vector projection is on the XY plane.

[0273] In the seventh typical embodiment, the deflection amount correction vector Ve is calculated as follows. The deflection amount correction vector Ve is a vector of which the deflection amount Ep of the probe 230 is a predetermined reference deflection amount E0 (for example, 0.3 mm), and is calculated from the direction of displacement of the probe 230 (stylus tip 232). The deflection amount correction vector Ve must be a vector parallel to the normal line of the surface of the workpiece W. Therefore, the rotation command generation unit 344 calculates the angle formed by the vector AP in the approach direction (approach vector AP) and the deflection amount correction vector Ve to generate a rotation angle command for rotating the rotary stage 251 so that the approach vector AP is parallel to the deflection amount correction vector Ve. Once the rotation angle command is determined, the translation vector command correction unit 343 reduces this rotation amount from the resultant velocity vector V to generate a rotation-corrected resultant velocity vector V Figure 29 In the seventh typical embodiment, the deflection amount correction vector Ve is calculated as follows. The deflection amount correction vector Ve is a vector of which the deflection amount Ep of the probe 230 is a predetermined reference deflection amount E0 (for example, 0.3 mm), and is calculated from the direction of displacement of the probe 230 (stylus tip 232). The deflection amount correction vector Ve must be a vector parallel to the normal line of the surface of the workpiece W. Therefore, the rotation command generation unit 344 calculates the angle formed by the vector AP in the approach direction (approach vector AP) and the deflection amount correction vector Ve to generate a rotation angle command for rotating the rotary stage 251 so that the approach vector AP is parallel to the deflection amount correction vector Ve. Once the rotation angle command is determined, the translation vector command correction unit 343 reduces this rotation amount from the resultant velocity vector V to generate a rotation-corrected resultant velocity vector V

[0274] Here, in the elements of the resultant vector V1, the element in the rotation direction of the rotary stage mechanism 250 is handled by the rotary stage mechanism 250.

[0275] The rotation command generation unit 344 generates the rotation angle command, for example, as follows. It is assumed that the rotation center of the rotary stage mechanism 250 is denoted as OC, and the virtual circle Cl has the distance between the point Pl and the center Oc as the radius r1. By drawing a tangent line L1 of the virtual circle Cl at the point Pl, the element in the direction along the tangent line L1 in the elements of the resultant vector V1 is calculated. (To be precise, the resultant vector V1 is projected on the XY plane, and the vector projected on the tangent line L1 is calculated.) The vector calculated in this way is called the rotation direction vector VL1.

[0276] By reversing the rotation of the rotary stage mechanism 250 by the amount of rotation of the rotation direction vector VL1, the element in the rotation direction of the rotary stage becomes zero with respect to the translation movement mechanism 220. That is, the rotation command generation unit 344 generates a rotation angle command having a direction opposite to the rotation direction vector VL1 and for rotating the rotary stage 251 by the same amount of rotation of the rotation direction vector VL1. Once the rotation angle command is determined, the translation vector command correction unit 343 reduces the rotation amount from the resultant vector V to generate a rotation-corrected resultant velocity vector V AMD (correction-after translation velocity vector command). The subsequent processing has been described in the first typical embodiment and is omitted.

[0277] Note that the present application is not limited to the above-described embodiments, and can be appropriately modified without departing from the scope.

[0278] In the above-described embodiments, active nominal scanning measurement is exemplified, but passive nominal scanning measurement can be performed.

[0279] The motion controller 300 is separated from the host computer 500 as an example, but the motion controller 300 and the host computer 500 can be integrated, and constitute a controller of the coordinate measuring machine.

[0280] In the above-described embodiments, a probe having a stylus tip as a contact ball for detecting a measurement target object by contact with the object is exemplified. However, the probe is not limited to a contact probe, and includes a probe that detects the object when the stylus tip does not contact the object. As such a non-contact probe, there are known electrostatic capacity probes or optical probes.

[0281] The measurement control program can be installed in the storage unit of the host computer through a communication means such as the Internet or a (nonvolatile) recording medium such as a CD-ROM or a memory card. Alternatively, the measurement control program can be stored in a server or the like that can be prepared separately from the host computer, and each required part of the measurement control program can be loaded by the host computer in sequence through a communication means such as the Internet or LAN cable, or a telephone line. Alternatively, a server installed at a remote location from the coordinate measuring machine can directly control the coordinate measuring machine and the motion controller as the host computer.

[0282] Cross Reference to Related Applications

[0283] This application is based upon and claims the benefit of priority from Japanese Patent Applications 2019-188280 and 2019-188283 (DAS codes 77BD and F0CD), filed on October 14, 2019, the disclosures of which are incorporated herein in their entirety by reference.

Claims

1. A method for controlling a shape measuring device, wherein the shape measuring device is configured to relatively move a probe and a workpiece using a translational movement mechanism and a rotational drive mechanism to scan and measure the workpiece by moving the probe along a preset scanning path, the method comprising: Synchronizing a movement command for the translation movement mechanism with a rotation command for the rotation drive mechanism so as to perform scanning measurement on the workpiece by moving the probe along the scanning path, The control method further includes: The operator sets the scanning path and the rotation angle command for the rotary stage; generating a translation velocity vector command based on data related to the scanning path, wherein the translation velocity vector command is used to drive and control the translation mechanism so that the detector moves along the scanning path; generating a rotation command for the rotary drive mechanism based on the rotation angle command; correcting the translation velocity vector command to reduce the rotation amount of the rotation command and generating a corrected translation velocity vector command; and The rotation drive mechanism and the translation movement mechanism are driven and controlled based on the rotation command and the corrected translation velocity vector command.

2. A method for controlling a shape measuring device, wherein the shape measuring device is configured to use a translational movement mechanism and a rotational drive mechanism to relatively move a probe and a workpiece so as to scan and measure the workpiece by moving the probe along a preset scanning path, the method comprising: Synchronizing a movement command for the translation movement mechanism with a rotation command for the rotation drive mechanism so as to perform scanning measurement on the workpiece by moving the probe along the scanning path, The control method further includes: The operator sets the scanning path and the rotation angle command for the rotary stage; Correcting data related to the scanning path to reduce a rotation amount of the rotation command and generating corrected scanning path data; generating a translation velocity vector command for driving and controlling the translation mechanism based on the corrected scan path data; generating a rotation command for the rotary drive mechanism based on the rotation angle command; and The rotation drive mechanism and the translation movement mechanism are driven and controlled based on the rotation command and the translation velocity vector command.

3. A method for controlling a shape measuring device, the device being configured to use a translational movement mechanism and a rotational drive mechanism to relatively move a probe and a workpiece so as to scan and measure the workpiece by moving the probe along a preset scanning path, the method comprising: Synchronizing a movement command for the translation movement mechanism with a rotation command for the rotation drive mechanism so as to perform scanning measurement on the workpiece by moving the probe along the scanning path, The control method further includes: The scanning path is set by the operator; generating a translation velocity vector command based on data related to the scanning path, wherein the translation velocity vector command is used to drive and control the translation mechanism so that the detector moves along the scanning path; generating a rotation command for the rotary drive mechanism based on the translational velocity vector command; correcting the translation velocity vector command to reduce the rotation amount of the rotation command and generating a corrected translation velocity vector command; and The rotation drive mechanism and the translation movement mechanism are driven and controlled based on the rotation command and the corrected translation velocity vector command.

4. The control method of the shape measuring device according to claim 3, wherein: Generating a rotation command for the rotary drive mechanism based on the translation velocity vector command includes: generating a rotation command for the rotary drive mechanism based on a change in the direction of the path velocity vector Vf, and The path velocity vector Vf is a vector having a direction from one interpolation point toward the next interpolation point on the scanning path.

5. The control method of the shape measuring device according to claim 3, wherein: Generating a rotation command for the rotation drive mechanism based on the translation velocity vector command includes: generating a rotation command for the rotation drive mechanism based on an angle formed by a deflection amount correction vector Ve and an approach direction AP, The approach direction AP is a predetermined direction in which the translational movement mechanism causes the probe to contact the workpiece, and The deflection amount correction vector Ve is a vector for correcting the deflection amount Ep of the probe to a predetermined reference deflection amount E0, and has a direction parallel to the normal line of the workpiece at the contact point.

6. The control method of the shape measuring apparatus according to claim 3, wherein: Generating a rotation command for the rotary drive mechanism based on the translation velocity vector command includes: calculating a virtual circle C1 having a rotation center Oc of the rotary drive mechanism as a center and having a distance r1 between a contact point between the probe and the workpiece and the rotation center Oc as a radius; Calculating a tangent line L1 of the virtual circle C1 at the contact point; calculating a rotation direction vector VL1 as an element of the translation velocity vector command in the direction of the tangent line L1; and A rotation command for the rotary drive mechanism is generated based on the rotation direction vector VL1.

7. A method for controlling a shape measuring device, the device being configured to use a translational movement mechanism and a rotational drive mechanism to relatively move a probe and a workpiece so as to scan and measure the workpiece by moving the probe along a preset scanning path, the method comprising: Synchronizing a movement command for the translation movement mechanism with a rotation command for the rotation drive mechanism so as to perform scanning measurement on the workpiece by moving the probe along the scanning path, The control method further includes: An operator sets a scanning path and a rotation angle command for the rotary drive mechanism; dividing data related to the scanning path into a plurality of segments, and setting a translation speed pattern of the translation movement mechanism for each segment based on a curvature of each segment; Based on the rotation angle command, calculating, for each segment, a rotation angle value at the start of the segment and a rotation angle value at the end of the segment, and generating an angular velocity pattern for each segment; correcting the translational velocity pattern to reduce the rotation amount of the rotation command given by the angular velocity pattern, and generating a corrected translational velocity pattern; and The translational movement mechanism is driven and controlled according to a resultant velocity vector based on the corrected translational velocity pattern, and the rotational drive mechanism is simultaneously driven and controlled according to an angular velocity command based on the angular velocity pattern.

8. The control method of the shape measuring apparatus according to claim 7, wherein: Generating the angular velocity pattern for each segment includes: Setting the magnitude of the angular acceleration to a predetermined fixed value; and By starting calculation from the first section for generating the angular velocity pattern, any one of a pattern for maintaining a constant angular velocity, a pattern for initially accelerating and then maintaining a constant angular velocity, and a pattern for initially maintaining a constant angular velocity and then decelerating is applied to each section.

9. The control method of the shape measuring device according to claim 8, further comprising: After generating the angular velocity pattern of the last segment, when the angular velocity is not zero at the end point of the scanning path, the deceleration distance required for the rotary drive mechanism to stop at the end point of the scanning path is calculated, and the angular velocity pattern is corrected so that the rotary drive mechanism starts to decelerate from the required deceleration distance before the end point.

10. The control method of the shape measuring device according to claim 7, further comprising: Blocking the plurality of angular velocity patterns generated for each segment; as well as The acceleration / deceleration region of the blocked angular velocity pattern is curved in an S-shape.

11. A method for controlling a shape measuring device, the device being configured to use a translational movement mechanism and a rotational drive mechanism to relatively move a probe and a workpiece so as to scan and measure the workpiece by moving the probe along a preset scanning path, the method comprising: Synchronizing a movement command for the translation movement mechanism with a rotation command for the rotation drive mechanism so as to perform scanning measurement on the workpiece by moving the probe along the scanning path, The control method further includes: An operator sets a scanning path and a rotation angle command for the rotary drive mechanism; Correcting data related to the scanning path to reduce a rotation amount of the rotation angle command and generating corrected scanning path data; dividing the corrected scan path data into a plurality of segments, and setting a translation speed pattern of the translational movement mechanism for each segment based on a curvature of each segment; calculating, for each segment, a rotation angle value at the beginning of the segment and a rotation angle value at the end of the segment based on the rotation angle command and the translation speed pattern of each segment; generating an angular velocity pattern for each segment; and The translational movement mechanism is driven and controlled according to a resultant velocity vector based on the translational velocity pattern, and the rotational drive mechanism is simultaneously driven and controlled according to an angular velocity command based on the angular velocity pattern.

12. The control method of the shape measuring device according to claim 11, wherein: Generating the angular velocity pattern for each segment includes: Setting the magnitude of the angular acceleration to a predetermined fixed value; and By starting calculation from the first section for generating the angular velocity pattern, any one of a pattern for maintaining a constant angular velocity, a pattern for initially accelerating and then maintaining a constant angular velocity, and a pattern for initially maintaining a constant angular velocity and then decelerating is applied to each section.

13. The control method of the shape measuring device according to claim 12, further comprising: After generating the angular velocity pattern of the last segment, when the angular velocity is not zero at the end point of the scanning path, the deceleration distance required for the rotary drive mechanism to stop at the end point of the scanning path is calculated, and the angular velocity pattern is corrected so that the rotary drive mechanism starts to decelerate from the required deceleration distance before the end point.

14. A method for controlling a shape measuring device, the device being configured to use a translational movement mechanism and a rotational drive mechanism to relatively move a probe and a workpiece so as to scan and measure the workpiece by moving the probe along a preset scanning path, the method comprising: Synchronizing a movement command for the translation movement mechanism with a rotation command for the rotation drive mechanism so as to perform scanning measurement on the workpiece by moving the probe along the scanning path, The control method further includes: The scanning path is set by the operator; dividing data related to the scanning path into a plurality of segments, and setting a translation speed pattern of the translational movement mechanism for each segment based on a curvature of each segment; generating a translation velocity vector command based on data related to the scanning path, wherein the translation velocity vector command is used to drive and control the translation mechanism so that the detector moves along the scanning path; generating a rotation command for the rotary drive mechanism based on the translational velocity vector command; Based on the rotation command, calculating, for each segment, a rotation angle value at the beginning of the segment and a rotation angle value at the end of the segment, and generating an angular velocity pattern for each segment; correcting the translational velocity pattern to reduce the rotation amount of the rotation command given by the angular velocity pattern, and generating a corrected translational velocity pattern; and The translational movement mechanism is driven and controlled according to a resultant velocity vector based on the corrected translational velocity pattern, and the rotational drive mechanism is simultaneously driven and controlled according to an angular velocity command based on the angular velocity pattern.

15. The control method of the shape measuring apparatus according to claim 14, wherein: Generating the angular velocity pattern for each segment includes: Setting the magnitude of the angular acceleration to a predetermined fixed value; and By starting calculation from the first section for generating the angular velocity pattern, any one of a pattern for maintaining a constant angular velocity, a pattern for initially accelerating and then maintaining a constant angular velocity, and a pattern for initially maintaining a constant angular velocity and then decelerating is applied to each section.

16. The control method of the shape measuring device according to claim 15, further comprising: After generating the angular velocity pattern of the last segment, when the angular velocity is not zero at the end point of the scanning path, the deceleration distance required for the rotary drive mechanism to stop at the end point of the scanning path is calculated, and the angular velocity pattern is corrected so that the rotary drive mechanism starts to decelerate from the required deceleration distance before the end point. 17 . A nonvolatile recording medium having recorded thereon a measurement control program for causing a computer to execute the control method of the shape measuring apparatus according to claim 1 .

Citation Information

Patent Citations

  • Position determining controller

    JP1977074782A

  • JP1985030339A

  • Method for detecting tracking error of optical disc memory device

    JP1985050636A

  • Polyester film

    JP1985063161A

  • Purified water production apparatus

    JP2019188280A