Coordinate positioning machine
By installing sensors on non-Cartesian coordinate positioning machines and utilizing servo feedback loops and error minimization techniques, the problem of large calibration errors in non-Cartesian machines is solved, and their absolute accuracy is improved, making them suitable for the precise calibration and characterization of parallel kinematic machines.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- RENISHAW PLC
- Filing Date
- 2024-07-31
- Publication Date
- 2026-04-28
AI Technical Summary
Existing calibration methods for non-Cartesian coordinate positioning machines have large errors and are difficult to achieve the absolute accuracy of traditional triaxial Cartesian machines. In particular, the calibration challenges of parallel kinematic machines are complex, resulting in insufficient accuracy in absolute coordinate measurements.
By installing sensors on the machine and using a servo feedback loop to control the rotation and movement of the platform, calibration data is collected, and model parameters are updated using error minimization techniques. By combining the servo feedback loop and sensor signals, a precise characterization of the machine's geometry can be achieved.
It improves the absolute accuracy of non-Cartesian coordinate positioning machines, reduces errors, enhances their precision in absolute coordinate measurements, and is suitable for the calibration and characterization of non-Cartesian machines.
Smart Images

Figure CN121941897A_ABST
Abstract
Description
[0001] This invention relates to a coordinate positioning machine. The invention particularly, but not exclusively, relates to the calibration of at least some aspects of non-Cartesian coordinate positioning machines (such as hexapods or articulated robots).
[0002] In the attached diagram Figure 1 The diagram schematically illustrates a non-Cartesian coordinate positioning machine 10. The coordinate positioning machine 10 generally comprises a movable platform 12 and a fixed platform 14, which are supported by a plurality of telescopic or extendable legs 16 disposed between them and move relative to each other. The fixed platform 12 forms part of the fixed structure of the machine 10. The movable platform 12 and the fixed platform 14 may also be referred to as worktables (or structures or parts), and the extendable legs 16 may also be referred to as supports (or actuators). When there are six such extendable legs 16 (e.g....), Figure 2 As shown), machine 10 is commonly referred to as a hexapod machine.
[0003] Extendable legs 16 are typically mounted on platforms 12, 14 via ball joints 18, wherein each leg 16 has its own ball joint 18 at one or both ends (e.g., Figure 2 (as shown), or share a ball joint 18 with adjacent legs 16 at one or both ends. Each extendable leg 16 is typically formed as a pair of tubes, wherein one tube is telescopically moved within the other tube by a drive mechanism (e.g., a linear motor) to provide extension and retraction of the extendable leg 16, as indicated by arrows within each extendable leg 16, and as described in more detail in WO 2017 / 174966. As described in WO 2007 / 144573, a degree of separation may also be provided between the drive components and measuring components of each strut. As described in WO 2019 / 073246, a drive arrangement that is not only separate from the measuring arrangement but also different may also be provided.
[0004] Different relative positions between the movable platform 12 and the fixed platform 14 can be achieved by extending the legs 16 by different amounts. The relative position at any given time is monitored by a plurality of length-measuring transducers 17, one such transducer for each extendable leg 16. Each length-measuring transducer 17 may include an encoder scale paired with a reading head, wherein the encoder scale is suitably mounted on one of a pair of telescopic tubes, and the reading head is suitably mounted on the other telescopic tube. The extension of the leg 16 thus causes the encoder scale to move past the reading head, thereby allowing the measurement (or determination based on the measurement) of the length of the extendable leg 16. The machine controller 15 operates to set the length of each extendable leg 16 to provide the desired relative movement between platforms 12, 14. With six such length-measuring transducers 17, the relative position can be measured in six corresponding degrees of freedom (three translational degrees of freedom and three rotational degrees of freedom).
[0005] A workpiece 19 is mounted on a lower (fixed) platform 14, and a measuring probe 13 is mounted on an upper (movable) platform 12. A working volume (or operating volume) 11 is defined between the upper (movable) platform 12 and the lower (fixed) platform 14, wherein the measuring probe 13 is positioned (i.e. moved to the desired position) within the working volume 11 by operating these extendable legs 16. Figure 1 The arrangement can be described as a "bottom-up" arrangement because the extendable leg 16 extends upward from the fixed platform 14 to the movable platform 12. (See attached figures.) Figure 2 The image further illustrates this arrangement.
[0006] Alternatively, as shown in the attached figure Figure 3 The diagram schematically illustrates a top-down arrangement where the extendable leg 16 extends downward from the fixed structure 14 to the movable platform 12, wherein the measuring probe 13 is mounted to the lower surface of the movable platform 12, and the workpiece is mounted to another portion of the fixed structure 14 below the movable platform. These types of arrangements are discussed in more detail in WO 2019 / 073246, which also describes the combined use of non-hexapod driven arrangements and independent hexapod measuring arrangements.
[0007] The measuring probe 13 is merely one example of a manipulator, which can be mounted on the movable platform 12 to enable operations to be performed on the workpiece 19. When using the measuring probe 13, the coordinate positioning machine 10 can also be referred to as a coordinate measuring machine. Depending on the intended application, in the case of a coordinate measuring machine, the manipulator can be adapted for measuring, probing, or scanning, or in the case of a machine tool, for machining or drilling. Alternatively, the workpiece 19 can be mounted on the movable platform 12, and the measuring probe 13 (or other manipulator) can be mounted on a fixed platform 14.
[0008] Figure 1 The coordinate positioning machine 10 can be called a non-Cartesian coordinate positioning machine because, unlike traditional three-axis (X, Y, Z) coordinate measuring machines (see, for example, WO 2021 / 074625), it is different. Figure 1 Compared to Cartesian machines, its axes are not orthogonally arranged according to the Cartesian coordinate system. Figure 1 The coordinate positioning machine 10 can be considered to have six movement axes (or six drive axes) corresponding to (and defined by) six extendable legs 16. In this sense, the axes of the coordinate positioning machine can be considered to be related to the degrees of freedom sensed (e.g., by transducers or encoders), and note that the axes can be linear or rotational, and the coordinate positioning machine can have a combination of linear and rotational axes.
[0009] Figure 1 The coordinate positioning machine 10 can also be called a "parallel kinematics" coordinate positioning machine because its axes of motion are arranged in parallel. This contrasts with the traditional three-axis Cartesian coordinate measuring machine, which can be called a "serial kinematics" coordinate positioning machine because its axes of motion are arranged in series. Another type of serial kinematic machine is an inspection robot or manual articulated arm, which has multiple articulated arm components connected in series via multiple rotary joints.
[0010] In coordinate positioning machines, each joint or axis contributes to positional errors or uncertainties. In series kinematic machines, these errors are cumulative due to the serial nature of the linkages. While in the same sense, parallel kinematic machines (e.g., Figure 1 The parallel kinematic machine shown does not experience this accumulation of positional errors, but regardless of the machine type, it is important to calibrate the machine in order to plot these errors or uncertainties.
[0011] Calibrating any type of non-Cartesian machine is a significant challenge, and for example... Figure 1 This is particularly true of the parallel kinematic machine shown, which has multiple axes that are not fixed relative to each other and can be combined in complex ways to place the moving platform 12 within the working volume 11. Calibration of Cartesian machines is generally more straightforward because such machines have three well-defined axes that are fixed relative to each other in an orthogonal arrangement, each axis being largely independent of the others. For example... Figure 1 Parallel kinematic machines, where the position and orientation of each axis depends on the position and orientation of each other axis, will require different calibrations for each different machine posture, thus posing a significant calibration challenge.
[0012] A common goal of many calibration techniques is to specify a parametric model of the machine, where multiple model parameters characterize the machine's geometry. These model parameters are also called machine parameters. Initially, uncalibrated values are assigned to these parameters as a starting point for the machine's geometry. During calibration, the machine is moved to several different poses (based on current estimates of the machine parameters). For each pose, the actual pose is measured using calibrated measuring devices, allowing an indication of the error between the assumed and actual machine poses to be determined.
[0013] The task of calibrating the machine then becomes equivalent to determining a set of values for various machine parameters used to minimize the error using known numerical optimization or error minimization techniques. An example of such a technique is the well-known Levenberg-Marquardt algorithm, which minimizes the error using the least squares criterion given the derivative of the error according to each optimization parameter (“A Method for the Solution of Certain Non-Linear Problems in Least Squares”, Kenneth Levenberg, 1944, Quarterly of Applied Mathematics, 2: 164-168; and “An Algorithm for Least-Squares Estimation of Nonlinear Parameters”, Donald Marquardt, 1963, SIAM Journal on Applied Mathematics, 11 (2): 431–441). Other techniques are also possible, including those based on the maximum likelihood method.
[0014] For example Figure 1 The machine parameters demonstrated may include a variety of geometric parameters, such as the spacing and length measurement of each of the ball joints 18, the offset of each of the transducers or encoders 17 (where readings from the encoders are added to the calibrated offset to derive the actual strut extension amount), and various mechanical parameters (such as joint compliance and friction). When properly calibrated, with all these machine parameters known, it is possible to predict more definitively where the measuring probe 13 (or other tool) will actually be when the machine controller 15 commands the individual struts (or actuators) 16 to extend by different corresponding amounts. In other words, the machine parameters derived from this calibration provide a more accurate characterization of the machine geometry.
[0015] However, even when using standard calibration techniques, due to differences in calibration, for example... Figure 1The challenges associated with non-Cartesian machines, as illustrated, often include the presence of errors. Therefore, the absolute accuracy of such non-Cartesian machines is generally not as good as that of traditional three-axis Cartesian machines. For example, this means that non-Cartesian machines are often found more as comparators (comparing measurements taken on a master workpiece to measurements taken on workpieces produced on a production line in a factory, i.e., providing relative coordinate measurements) than as coordinate measuring machines themselves (i.e., providing absolute coordinate measurements).
[0016] Given the above, it is desirable to find improved methods for calibration, for example... Figure 1 The method and system for positioning a non-Cartesian coordinate machine are shown. This method and system can also be more broadly applied to other types of coordinate positioning machines.
[0017] According to a first principal aspect of the invention, a method is provided for calibrating or otherwise characterizing a coordinate positioning machine having a first platform movable relative to a second platform, wherein the geometry of the machine is characterized by a set of model parameters. A sensor is provided operable to output a signal dependent on the position of a calibration point fixed in the coordinate system (and / or the working coordinate system) of the second platform relative to a reference point fixed in the coordinate system of the first platform (and / or the sensor's coordinate system). The machine is controlled to perform rotational movement of the first platform relative to the second platform based on a series of position requirements, wherein each (or at least some) of the position requirements has a rotational component for generating the rotational movement and a translational component based on a servo feedback loop designed to maintain a constant (or at least known) output signal from the sensor. Calibration data is collected and / or recorded and / or stored during this movement. Based on the calibration data (and existing model parameters) collected during step (b), the machine is calibrated or otherwise characterized, taking into account how the reference point is constrained relative to the calibration point and / or how it is constrained during rotational movement (i.e., when the associated calibration data is collected).
[0018] It should be understood that, since the translational component of each of the position requirements in step (b) is not predetermined but rather based on the current state of the servo feedback loop, at different times during the rotational movement, the translational component of one or more position requirements may be exactly zero (or at least close to zero), i.e., during these times, the first platform moves little or no translation relative to the second platform, depending on, for example, the nature of the rotational movement and how well the current set of model parameters characterizes the geometry of the machine. However, it can still be said that any such translational component of a position requirement is based on the servo feedback loop, i.e., it is not simply fixed to zero as if the requirement were predetermined to alternate between providing rotational motion and providing translational movement.
[0019] The method may include controlling the machine to move a first platform relative to a second platform so that reference points and calibration points are within the sensor's measurement range. The method may include activating the sensor to begin outputting a signal. The method may further include activating a servo feedback loop designed to maintain a constant (or predetermined or known) output signal from the sensor. The servo feedback loop may operate continuously, at least until deactivated.
[0020] The sensor can be a contact sensor or a non-contact sensor. The sensor can be a position sensor. The sensor can be a touch probe. The sensor can be supported on a first platform. The sensor can be operable to output a signal that depends on the position of the calibration point relative to a reference point within the coordinate system of the first platform or the sensor (e.g., the XYZ position within the sensor's coordinate system). The sensor can be operable to output this signal at least when both the calibration point and the reference point are within the sensor's measurement range. The position of the calibration point relative to the reference point can be determined by a vision-based sensor system in which a camera system captures images of both the calibration point and the reference point, and is operable to determine their relative position using an image-based method or photogrammetry. In other words, the sensor does not necessarily have to be supported on the first platform (and movable with the first platform), but can be positioned separately from the first platform.
[0021] In step (b), the machine can be controlled to perform continuous and / or smooth rotational movements of the first platform relative to the second platform based on a series of positional requirements, wherein each (or at least some) of the positional requirements in the series has a rotational component (at least in the coordinate system of the second platform) for generating (or to generate) the rotational movement and a translational component (at least in the coordinate system of the second platform) based on a servo feedback loop. There may be other additional positional requirements that are not part of this series of positional requirements.
[0022] The servo feedback loop can be designed to maintain a constant (or at least known) output signal (or response) from the sensor. The servo feedback loop can operate continuously and / or independently of the actuator servo loop. Actuator requirements can be determined, generated, or calculated based on existing set of model parameters. The target output signal from the sensor does not need to be constant and can vary in a known manner, as long as the operation of the servo feedback loop provides known constraints on the position of the calibration point relative to the reference point in the three translational degrees of freedom (e.g., XYZ), which can be taken into account in step (c).
[0023] Step (c) may include, for example, determining a new set of model parameters based on an objective function, which will fit the recorded calibration data better than the existing set of model parameters, and thus characterize the geometry of the machine better than the existing set of model parameters.
[0024] Step (c) may include determining a new set of model parameters that, compared to the existing set of model parameters, results in a smaller total deviation from the constant (or at least known) expected position of the reference point (at least in the case of rotation around the reference point).
[0025] Step (c) may include iteratively updating the model parameters (e.g., using error minimization or optimization routines) until a predetermined test is met (e.g., based on the output of the objective function and / or, for example, when the total deviation is below a predetermined threshold).
[0026] Step (c) may include determining one or more new values for only a subset of the model parameters.
[0027] Step (c) may include characterizing the machine based on sensor values, for example, in cases where these sensor values deviate from the expected or required sensor values of the servo loop (e.g., when the servo loop lags).
[0028] The method may include changing the velocity and / or acceleration of the first platform relative to the second platform in step (b) based on sensor values, such as the degree to which the sensor values deviate from the desired or required sensor values of the servo feedback loop.
[0029] Step (b) may further include controlling the machine to perform a dwell operation to keep the first platform substantially stable relative to the second platform for a period of time (with substantially no rotational movement), wherein the position requirement during this period is determined (only) based on the servo feedback loop. Additional calibration data may be collected during the dwell operation for use in step (c).
[0030] The method may include repeating step (b) for multiple calibration points within the working volume of the machine, and step (c) may include characterizing the machine based on calibration data collected from each execution of step (b).
[0031] The method may include receiving additional calibration data from an external and / or independent coordinate measuring machine, the additional calibration data specifying an actual (or at least independently measured) distance (or from which the actual distance can be derived) between a pair of calibration points or each pair of calibration points for at least one pair of calibration points.
[0032] Step (c) may include calibrating or otherwise characterizing the machine by taking into account, for the pair of calibration points or each pair of calibration points, the operation of the servo feedback loop (when associated calibration data is collected), how the reference point is constrained relative to the calibration points in the pair of calibration points, and also taking into account the actual spacing of the pair of calibration points from additional calibration data.
[0033] When taking into account the actual spacing from additional calibration data, the calibration data used in step (c) may include calibration data collected during a dwell operation performed on each of the pair of calibration points and / or calibration data collected during a rotational movement performed on each of the pair of calibration points.
[0034] Step (c) may include determining a new set of model parameters that will fit the recorded calibration data and additional calibration data better than the existing set of model parameters.
[0035] The method may include using a calibration article that defines at least some of a plurality of calibration points, wherein the calibration points are arranged in fixed positions relative to each other on the calibration article.
[0036] The method may include using temperature information from at least one temperature sensor on or associated with the calibration article to compensate for the effect of thermal expansion or contraction of the calibration article on the actual spacing represented by additional calibration data.
[0037] The method may include moving the calibration article to multiple different locations within the working volume (the locations are defined in this context on six degrees of freedom) to define additional calibration points among the multiple calibration points.
[0038] The calibration article can be supported on a support arrangement that defines several different article positions.
[0039] Support arrangements can define multiple kinematic positions of the article.
[0040] The method may include controlling the machine to move the calibration article between different positions using relative movement between a first platform and a second platform, for example by applying a force to the calibration article to move it between different positions.
[0041] Position requirements can be actuator position requirements (e.g., in model parameter-based applications). X arrive P The Pd for the actuator servo loop, as described below after mapping. n (Values), or can be represented as a set of coordinate values in the working coordinate system (or the coordinate system of the second platform), for example X arrive P Before mapping X need.
[0042] Calibration data may include one or more of the following: machine coordinates; data representing the state or orientation of the machine; actuator data; actuator measurements; encoder values associated with multiple actuators used to move the first platform relative to the second platform; rotary joint angles; and linear joint extensions.
[0043] Calibration data includes position feedback data from actuator servo loops (or those associated with or derived from actuator servo loops) or measurement data (e.g., sensor values) used as the basis for position feedback data. These actuator servo loops control multiple actuators that are operable to move a first platform relative to a second platform. In this context, position feedback data can be considered as the data at the output side of the feedback loop, i.e., from the actuator servo loop based on model parameters. P arrive X Pf before transformation n value.
[0044] The rotational component (used to generate rotational movement) can be generated, for example, by a profilometer or trajectory generator independently of the translational component generated (or produced, contributed, or derived) by the servo feedback loop.
[0045] The servo feedback loop can operate substantially continuously during rotational movement in order to be ready to provide (or contribute) a suitable translational component for (or corresponding to) each rotational component, or at least operate at a clock rate different from and / or faster than that of the part that generates the rotational component (e.g., a profilometer or trajectory generator) and / or in parallel with that part.
[0046] The sensor can be mounted on the first platform.
[0047] The sensor can be a position sensor.
[0048] The calibration point, or each calibration point, may be defined by a calibration component.
[0049] The calibration component, or each calibration component, may be a calibration sphere (or at least a partially spherical object).
[0050] The sensor can be a measurement probe (e.g., a touch probe) having a deflectable stylus and a sensing element, such as a stylus tip.
[0051] The reference point can be the undeflected (or zero) position of the sensing element.
[0052] The sensing element may include a cluster of spheres (or at least partially spherical objects), wherein the reference point is defined relative to the cluster of spheres.
[0053] The reference point can be defined at the center of a reference sphere (e.g., a hypothetical reference sphere) embedded in a cluster of spheres, wherein the reference sphere has the same diameter as the calibration sphere.
[0054] The coordinate positioning machine is operable to allow the first platform to move in six degrees of freedom relative to the second platform.
[0055] The machine may have a metric frame (for measuring the position of the first platform relative to the second platform in up to six degrees of freedom), which is substantially independent of the drive frame (for moving the first platform relative to the second platform in up to six degrees of freedom).
[0056] The rotational movement of the first platform relative to the second platform can be a rotational movement in at least one rotational degree of freedom.
[0057] The rotational movement of the first platform relative to the second platform can be a rotational movement in at least two rotational degrees of freedom (e.g., two rotational degrees of freedom).
[0058] The rotational movement of the first platform relative to the second platform can be a rotational movement in three rotational degrees of freedom.
[0059] In this context, the rotational degree of freedom may not be of the type of rotational movement obtained from a spindle (or similar) in a machining machine such as a lathe or machine tool (i.e., in the case of a separate rotating component mounted on a first platform). Instead, the rotational degree of freedom involves the relative movement of the first and second platforms.
[0060] Rotational movement can be, or at least approximately, about a reference point and / or a calibration point (as the origin of rotation). However, rotation can be about another point, such as a point near the reference point and / or calibration point. This point even needs to be a fixed point in any coordinate system.
[0061] Sensor signals can be represented as a set of XYZ coordinate values, such as the deflection of a probe or stylus along the XYZ axis. These coordinate values can be in the sensor coordinate system or the coordinate system of the first platform.
[0062] The rotational component can be based on a set of ABC coordinate values (e.g., from a profilometer or trajectory generator). These coordinate values can be in the working coordinate system, for example, before being mapped to actuator position requirements.
[0063] Translation components can be based on a set of XYZ coordinate values. These coordinate values can be in the working coordinate system, for example, before mapping to the actuator position requirements. They can further be based on a set of XYZ coordinate values from the sensor, for example, in the sensor coordinate system or the coordinate system of the first platform.
[0064] The first platform can be a mobile platform. The second platform can be a fixed platform. The second platform can be fixed relative to the machine, for example, fixed within the working coordinate system.
[0065] Rotational movement can be continuous and / or smooth, or at least a digital continuous and / or smooth approximation based, for example, on a series or a sequence of discrete clock cycles and / or a series or a sequence of discrete position requirements.
[0066] The change in rotation angle of rotational movement from one clock cycle to the next clock cycle or from one position demand to the next position demand can (e.g., on average, mostly, or always) be less than 5°, more preferably less than 1°, more preferably less than 0.5°, and more preferably less than 0.1°.
[0067] Each position requirement in this series can define a single motion or a single type of motion, for example, in contrast to a series or sequence of motions. Each position requirement in this series can be defined by a single set of coordinates or coordinate values. In other words, a series of combinations of rotational requirements only and translational requirements only cannot be considered a single requirement in this context.
[0068] Each position requirement in this series of position requirements can be used as the basis and / or input of an actuator servo loop or a set of actuator servo loops, wherein the actuator servo loops are those actuator servo loops used to control one or more actuators of the machine, wherein the actuators are operable to move a first platform relative to a second platform.
[0069] Calibration or other characterization of a machine may include one or more of calibrating, verifying, certifying, and checking the performance of the machine.
[0070] Coordinate positioning machines can be non-Cartesian and / or parallel kinematic machines, such as a hexapod with six (linear) actuators arranged in parallel or an articulated arm (or robotic arm) with multiple (rotary) actuators arranged in series.
[0071] According to another aspect of the invention, a computer program is provided that, when run by a computer or machine controller, causes the computer or machine controller to perform one or more steps of the method according to the first aspect of the invention.
[0072] According to another aspect of the present invention, a computer-readable medium is provided, which stores computer program instructions for controlling a computer or machine controller to perform one or more steps of the method according to the first aspect of the present invention.
[0073] According to another aspect of the invention, a computer or machine controller is provided, which is configured to perform one or more steps of the method according to the first aspect of the invention.
[0074] According to another aspect of the invention, a system for calibrating or otherwise characterizing a coordinate positioning machine is provided, the system comprising devices for performing one or more steps of the method according to the first aspect of the invention.
[0075] According to another aspect of the invention, a method for controlling a coordinate positioning machine is provided, the coordinate positioning machine having been calibrated or otherwise characterized by performing one or more steps of the method according to the first aspect of the invention.
[0076] According to another aspect of the invention, a coordinate positioning machine is provided, which has been calibrated or otherwise characterized by performing one or more steps of the method according to the first aspect of the invention.
[0077] According to a second principal aspect of the invention, a support arrangement is provided for supporting an article within a coordinate positioning machine, the support arrangement being used for calibrating or otherwise characterizing a method of the machine (using the article), wherein the support arrangement is adapted to provide multiple kinematically defined positions (or kinematic locations) of the article within the machine (and the article can move between these positions) via multiple kinematic couplings arranged in series between the machine and the article.
[0078] The features of the second aspect of the present invention may be used independently of the features of the first aspect of the present invention or in combination with the features of the first aspect of the present invention.
[0079] Each of a plurality of kinematically defined positions may be different from or differ from at least one other kinematically defined position in at least one rotational degree of freedom.
[0080] Each of a plurality of kinematically defined positions may be different from or differ from at least two rotational degrees of freedom of at least one other kinematically defined position.
[0081] The calibration article can be easily connected to the support arrangement via a predetermined connection in the series (such as the final connection in the series from the machine to the article in sequence) and easily disconnected from the support arrangement.
[0082] At least one (or each) of the links in the series is arranged at an angle (non-zero angle) relative to at least one (or each) of the adjacent links in the series. The angle may be defined with reference to a plane defined by the link characteristics that define the links.
[0083] At least one connection arranged at a certain angle may include a predetermined connection.
[0084] The angle can be acute, such as less than 60 degrees, less than 45 degrees or less than 30 degrees, greater than 5 degrees, greater than 10 degrees, such as 15 degrees (plus or minus 0.5 degrees).
[0085] Each connection in a connection can be adapted to provide at least one kinematically defined relative position (for the components of the connection).
[0086] At least one connection can be adapted to provide multiple kinematically defined relative positions (for the components of the connection).
[0087] The support arrangement may include a motion system operable to disengage at least one coupled member, maintain support while moving, or at least allow these members to move relative to each other to another kinematically defined relative position, and then operable to recouple these members in the new kinematically defined relative position. The motion system may be automated without manual intervention.
[0088] Each of at least two of the connections in a connection can be adapted to provide multiple kinematically defined relative positions (for the components of the connection). At least one connection can have more than 6, 12, or even more than 18 kinematically defined relative positions, such as 24 kinematically defined relative positions. At least one connection can also have fewer than 8, or even fewer than 4 kinematically defined relative positions, such as 2 kinematically defined relative positions.
[0089] Each of at least two connections in a connection can provide a different number of kinematically defined relative positions.
[0090] Multiple kinematically defined relative positions can differ from each other in at least one rotational degree of freedom (and possibly at least one translational degree of freedom), for example, allowing the article to rotate effectively between different kinematic positions.
[0091] The relative positions of multiple kinematic definitions can differ from each other essentially only in one degree of freedom (e.g., rotational degree of freedom).
[0092] Rotational degrees of freedom can be about an axis orthogonal to (or at least transverse to) the connection (or the plane defined by the connection feature forming the connection).
[0093] At least two of the connections can be adapted to provide this rotational degree of freedom and can be arranged at an angle relative to each other.
[0094] The motion system may include a rotary mechanism (such as a mechanical rotary mechanism, which may include, for example, a rotatable shaft) for providing or at least allowing rotation (of the connected components) about a rotational degree of freedom.
[0095] The rotating mechanism can be power-driven (e.g., driven by a rotary motor) or passively operable, such as by controlling a machine to push the connected components relative to each other around the rotating mechanism.
[0096] The support arrangement may include at least three connections in the connection.
[0097] At least three connections can form at least two pairs of connections. The angle between one pair of connections can be substantially the same as the angle between another pair of connections, thereby allowing the first and last connections of the at least three connections to be arranged in parallel (with a suitable kinematic position defined for the associated connections).
[0098] This product can be a calibration product.
[0099] The product can be a verification or certification product, such as a measuring instrument.
[0100] The support arrangement may include multiple support members connected in series between the machine and the workpiece via multiple connections, wherein each of the multiple connections is disposed between a different pair of adjacent support members or between a support member and the workpiece.
[0101] The support arrangement may include a rigid connection between the support arrangement and the machine (e.g., between the support arrangement and a fixed platform of the machine).
[0102] The support arrangement may include a first support member and a second support member, wherein the first connection in the connection is defined between the first member and the article and adapted to provide at least one kinematically defined position of the article relative to the first support member, and wherein the second connection in the connection is defined between the first support member and the second support member and adapted to provide multiple kinematically defined positions of the first support member relative to the second support member.
[0103] The support arrangement may include a third (base) support member, wherein the third connection in the connection is defined between the second support member and the third (base) support member and is adapted to provide multiple kinematically defined positions of the second support member relative to the third (base) support member.
[0104] The rotating mechanism described above can be configured in conjunction with a third connection.
[0105] According to another aspect of the invention, a kit is provided, which includes a support arrangement according to a second aspect of the invention and at least one calibration article.
[0106] The kit may include multiple different calibration products or different types of calibration products.
[0107] At least one of the multiple calibration articles can be a verification or certification article, such as a measuring instrument article (e.g., for verification or certification of a machine).
[0108] According to another aspect of the present invention, a coordinate positioning machine is provided, which includes a kit according to the above aspects of the present invention.
[0109] This paper also describes a support arrangement for supporting a calibration article within a coordinate positioning machine during a method of calibrating or otherwise characterizing the machine, wherein the support arrangement is adapted to provide multiple stable and / or discrete and / or repeatable positions of the article within the machine (between which the article may move), and to provide stable and / or discrete and / or repeatable mounting positions of the article relative to the support arrangement (and wherein the calibration article can be easily and removably coupled to the support arrangement via the mounting positions). This position is defined in six degrees of freedom in this context.
[0110] This document also describes a support arrangement for supporting calibration articles within a coordinate positioning machine (for a calibration method), wherein the support arrangement is adapted (the support arrangement includes coupling features or at least two couplings adapted to) provide multiple discrete and / or repeatable positions (or locations) of the article within the machine (in each of these positions or locations, the relative position is defined in six degrees of freedom), and wherein the calibration article can be easily (or readily, e.g., without tools) and removably coupled to the support arrangement at discrete and / or repeatable relative positions (or locations). This allows any of multiple different calibration articles or different types of calibration articles (e.g., metrology articles) to be coupled to the support arrangement. The relative position is defined in six degrees of freedom in this context.
[0111] Discrete (relative) positions can also be referred to as scaled positions, and will be contrasted, for example, with continuous or continuously variable (relative) positions.
[0112] In this context, repeatable (relative) positioning can be understood as meaning that the (relative) position can be consistently reproduced or copied, implying that the joining process can be performed multiple times with consistent and reliable results. This indicates that the two components can be joined to each other at a specific relative position, and that this positioning can be reliably maintained or copied each time the joining is performed again.
[0113] Therefore, discrete and repeatable (relative) positions indicate that two related components can be joined together at specific, distinguishable and reproducible (relative) positions.
[0114] It should be noted that, in the context of this invention, "repeatable" does not necessarily mean "repeatable" in a strictly metric sense. Sufficient repeatability is sufficient for the machine to control the first platform, causing the reference point to move sufficiently close to the calibration point defined on the work-in-progress, to achieve the purpose of the calibration method described herein, particularly enabling the sensor to provide an output signal and the servo feedback loop to become active.
[0115] In this context, "easily connectable or disconnectable" can be understood to mean that it can be easily connected or disconnected, or quickly and / or effortlessly connected or disconnected, or connected or disconnected without the use of any tools (or at least without the use of any specialized tools) and / or without the use of excessive force (e.g., only a force sufficient to disengage the magnetic force used to bias the two related components together).
[0116] Now, let's refer to the attached diagram as an example, in which:
[0117] The above discussion Figure 1 A schematic diagram of a machine that uses non-Cartesian coordinate positioning;
[0118] The above discussion Figure 2 It corresponds to Figure 1 A schematic diagram of the bottom-up arrangement of a non-Cartesian coordinate positioning machine;
[0119] The above discussion Figure 3 This is a schematic diagram showing the arrangement from top to bottom. Figure 2 An alternative to a bottom-up layout;
[0120] Figure 4 This invention embodies the purpose of calibration, for example... Figures 1 to 3 A schematic diagram of the system used in the coordinate positioning machine method shown.
[0121] Figure 5 Showing Figure 4 Alternative configurations for sensing and calibration components;
[0122] Figure 6 The diagram illustrates a probe rotating or rotatably moving around one of the calibration components, during which calibration data is collected or recorded.
[0123] Figure 7 For the sake of simplicity, Figure 6 The three-dimensional rotational motion is represented as a simplified two-dimensional rotational motion;
[0124] Figure 8 Showing the target Figure 7 The last three rotations require the stylus;
[0125] Figure 9 This demonstrates how the probe provides an output signal based on the position of the calibration point relative to the reference point;
[0126] Figure 10 This demonstrates how the output signal of a probe in one step can be used to apply position correction in subsequent steps; embodiments of the invention are designed to avoid certain types of movement.
[0127] Figure 11 Showed in more detail Figure 10 The displayed movement type also indicates when calibration data was recorded;
[0128] Figure 12 A series of movements performed according to embodiments of the invention are shown to collect calibration data for calibrating or otherwise characterizing a coordinate positioning machine;
[0129] Figure 13 and Figure 14 A schematic representation of the actuator servo circuit operating during normal operation of a coordinate positioning machine is provided;
[0130] Figure 15 illustrates how the embodiments of the present invention are modified. Figure 13 and Figure 14 The standard servo feedback scheme is incorporated into an additional servo feedback loop (servo zero-position loop).
[0131] Figure 16 A modified version of Figure 15 is shown to explain how the model parameters need to be adjusted during normal operation to compensate for position adjustments lacking a servo zero-point loop.
[0132] Figure 17 The steps performed in the method according to an embodiment of the present invention are summarized in flowchart format;
[0133] Figure 18 The support arrangement embodying the invention is shown being added to Figure 4 The calibration system is used to provide multiple different locations within the working volume for the calibration article;
[0134] Figure 19A and Figure 19B The limitations are shown in more detail. Figure 18 The connection features of the first connection of the support arrangement;
[0135] Figure 20A and Figure 20B The limitations are shown in more detail. Figure 18 The connection features of the second connection in the support arrangement;
[0136] Figure 21A and Figure 21B The limitations are shown in more detail. Figure 18 The connection features of the third connection in the support arrangement;
[0137] Figures 22 to 24 The process for moving a calibration article from a horizontal orientation to an angular orientation using a second connection is demonstrated.
[0138] Figures 25 to 27 The process for moving a calibration article between different rotational positions using a second coupling is demonstrated.
[0139] Figure 28 It shows that it was subjected to in sequence Figures 22 to 27 The operation shown is located in a new position within the working volume. Figure 18 Calibration products;
[0140] Figures 29 to 31 It demonstrates how the first connection allows calibration artifacts to be easily and readily replaced by different calibration artifacts, even those of different types.
[0141] Figure 32 This demonstrates the positioning features that assist in connecting the two parts of the second connection to each other; and
[0142] Figures 33 to 36 Embodiments of the invention are shown in a less illustrative form than in the previous drawings.
[0143] Figure 4 It is used for calibration, as mentioned in the reference above. Figures 1 to 3 A schematic side view of the system 100 of the coordinate positioning machine 10 discussed above. The machine 10 includes a movable platform 12 and a fixed platform 14, as well as a plurality of extendable legs 16 that are operated to move the platform 12 relative to the platform 14, as discussed above. In this example, the machine 10 is positioned as described above. Figure 3 In the “top-down” configuration discussed, the extendable leg 16 is arranged above the movable platform 12, and the working volume is arranged below the movable platform 12.
[0144] Figure 4 The calibration system 100 comprises two main parts: a probe 20 and a calibration article 30. In this embodiment, the calibration article 30 is directly supported on the fixed platform 14, but an alternative support arrangement 90 will be further described below.
[0145] like Figure 4 The depicted probe 20 is essentially modular, comprising three parts: a probe body module 21, a scanning module 22, and a stylus module 23 (hereinafter referred to as stylus 23 for brevity). As will be discussed in more detail below, probe 20 provides a position sensor for use in the calibration method embodying the present invention, wherein stylus 23 is deflectable when it contacts an object, thereby providing a signal that can be used to determine the position of the object (or the position of features associated with the object).
[0146] Figure 4 The probe 20 depicted generally corresponds to the SP25 modular scanning probe system available from Renishaw plc. Therefore, probe 20 is a scanning probe designed to provide a continuous signal (which can be digital or analog) as the machine 10 moves the probe 20 while keeping the stylus 23 in contact with the object, thereby collecting a large amount of measurement data in a short time. This contrasts with touch-triggered probes, which are more often designed for static position measurements, contacting the object to trigger a signal from the probe (and the corresponding position measurement), then moving away from the object and returning to contact at a different position to trigger another position measurement, and so on.
[0147] A deflectable stylus of a measuring probe typically includes a single spherical tip (or stylus ball) that is the portion intended to contact the object being measured. However, in this example, stylus 23 includes a plurality of stylus balls 24 arranged in a cluster, and stylus 23 may be referred to accordingly as clustered stylus 23.
[0148] The calibration item 30 includes a plate 32 and multiple calibration balls 34. For example... Figure 5 As shown, and as will be discussed in more detail below, each calibration ball 34 is intended to be a target of a cluster of stylus balls 24 on the end of the stylus 23, wherein the target calibration ball 34 is embedded in the cluster of stylus balls 24 when the probe 20 and the calibration ball 34 are in a sensing arrangement relative to each other.
[0149] In a basic embodiment of the invention, the calibration article 30 may have only a single calibration ball 24, but as will be apparent from the following description, better calibration will be obtained by using multiple calibration balls 24 (preferably with known / calibrated spacing) or by using at least a single calibration ball 24 moved to multiple locations within the working volume 11.
[0150] refer to Figure 5 It should also be noted that each calibration point on the calibration article 30 can be set with a cluster of calibration balls 35, instead of as shown in the image. Figure 4 The single calibration ball 34 shown is provided, wherein the end of the stylus 23 is a single stylus ball 25. With this reverse arrangement, the stylus ball 25 at the end of the stylus 23 and the cluster of calibration balls 35 on the calibration article 30 are in a sensing arrangement relative to each other, with the stylus ball embedded in the cluster of calibration balls. Figure 4 The nominal center of the clustered stylus balls 24 (i.e., the location of the center of the embedded calibration ball 34, around which the stylus 23 rotates) is equivalent to Figure 5 The center of the stylus ball 25. These two features (i.e., Figure 4 Clustered stinging balls 24 and Figure 5 The stylus ball 25 can be referred to as the sensing element 26 of the stylus 23 (or probe 20), and references to the center of the sensing element 26 should be understood accordingly. The sensing element 26 can also be referred to as the stylus tip 26 or the probe tip 26. References to the location of the sensing element 26 should be interpreted as the location of the center of the sensing element 26. This will be equivalently applied to Figure 4 Calibration ball 34 and Figure 5The cluster of calibration spheres 35, both of which can be referred to as calibration elements 36 of calibration article 30, are understood to have a center similar to the center of sensing element 26. Therefore, calibration element 36 defines a calibration point, in this embodiment, which is addressed by probe 20 by placing sensing element 26 in a sensing relationship with calibration element 36, wherein the nominal center of sensing element 26 coincides with the calibration point (which is located at the nominal center of calibration element 36).
[0151] Back Figure 4 The arrangement shown, and now refer to Figure 6 The calibration method according to an embodiment of the invention involves collecting calibration data while rotating a mobile platform 12 about a calibration ball 34 relative to a fixed platform 14, wherein the calibration ball 34 remains embedded in a cluster of stylus balls 24 during the rotational movement. This is a continuous and smooth rotational movement, wherein calibration data (e.g., encoder data from the extendable leg 16) is collected during the movement and used to update the model parameters of the machine 10, as will be discussed in detail below. In a preferred embodiment, the rotational motion is about a fixed axis of rotation S, wherein each point on the mobile platform 12 moves in a circular motion about the axis of rotation S. This process is repeated for each calibration ball 34 on the article 30, or a desired number of calibration balls. The angle of the axis of rotation S can be variable rather than fixed. The path around which the calibration ball 34 is moved can also be a shallow spiral rather than a circle, which is advantageous because a wider range of angles will be used. A generally circular path minimizes dynamic errors caused by rapid changes in orientation, but theoretically any path can be followed if the movement is slow enough, such as scanning from one side to the other in a sweeping motion. All that is needed is a rotational component in the positional requirement for controlling the movement of the mobile platform 12 relative to the fixed platform 14, thereby generating some form of rotational motion around the calibration ball 34.
[0152] The motion of the coordinate positioning machine 10 is controlled by position requirements specified in a coordinate system of type XYZABC, where a set of values (or position requirements) for each of XYZABC specifies the position and orientation (which may be referred to as the pose of the machine 10) of the moving platform 12 relative to the fixed platform 14. The position requirements have translational (XYZ) and rotational (ABC) components, thus allowing the platform 12 to move relative to the fixed platform 14 in all six degrees of freedom. XYZ values are used to control the position of a reference point (e.g., the center of the moving platform 12) (in the working coordinate system), and ABC values are used to control the rotation of that part around the reference point (about the corresponding axes of the working coordinate system). The ABC values can be defined as corresponding to rotations about the ZYX axes (in that order) respectively, but this can be defined differently (e.g., where ABC corresponds to rotations about XYZ respectively). The Cartesian coordinate system is thus used for translation, while Euler angles or Tet-Brian angles are used for rotation. This type of coordinate system is commonly used to control non-Cartesian coordinate positioning machines (such as hexapods and articulated robots), but it should be noted that the invention is not limited to this coordinate system or any particular type of coordinate system.
[0153] The aforementioned reference point can be considered the origin of the coordinate system, and it defines not only the reference point for translational motion in the XYZ coordinate system (i.e., these values specify the desired position of the reference point within the working coordinate system), but also the center of rotational motion in the ABC coordinate system (i.e., these values specify the desired rotation around the reference point). As mentioned above, this origin or reference point can be the center of the moving platform 12, but in this embodiment, the origin of the coordinate system is set to the zero position (i.e., the stationary position or undeflected position) of the sensing member 26. This reference point (i.e., the zero position of the sensing member 26) is considered herein to be a noteworthy reference point within the coordinate system of the moving platform 12.
[0154] Therefore, the translation requirement (XYZ) nominally controls the position of the reference point (the zero position of the sensing member 26), and the rotation requirement (ABC) nominally controls the rotation of the moving platform 12 around the reference point (the zero position of the sensing member 26). The three-dimensional offset from the previous reference point on the moving platform 12 to the new reference point is defined by three values, and these offset values form part of the model parameters that characterize the geometry of the machine 10 and are optimized by calibration routines in this embodiment of the invention (even though these model parameters are only relevant when the same probe 20 is attached, thus actually forming part of the machine 10). The requirement values can be applied in the order CBAZYX, such that, with the coordinate system of the moving platform 12 coinciding with the coordinate system of the fixed platform 14, this would involve first twisting along C (around Z), then rotating along B (around Y), and then rotating along A (around X) (where the rotation is around the origin defined by the probe offset), and then translating along XYZ.
[0155] For the sake of simplicity, Figure 7 Will Figure 6 The three-dimensional rotary motion is represented as a simplified two-dimensional rotational motion, illustrating the result of controller 15 ideally controlling a series of five positional requirements for the rotational motion. For simplicity, Figure 7 Only the scanning module 22, stylus 23, and sensing element 26 (stylus ball 24) from probe 20 are shown. The controller 15 achieves the rotational movement of the moving platform 12 (and the supported stylus 23) via a series of rotational position requirements: -2β, -β, 0, +β, +2β. If the X-axis is considered to be in-page (parallel to calibration article 30) and the Y-axis normal to the page, these rotational position requirements will correspond to, for example, the B component of ABC, since the rotational movement is about the Y-axis (at least where ABC corresponds to rotations about ZYX respectively). Based on the current model parameters of machine 10, the controller 15 translates each rotational position requirement into multiple actuator position requirements, which control the extension of the extendable leg (or actuator) 16 to achieve a desired angle, for example, for... Figure 7 The first requirement in the series of requirements shown is -2β. Because... Figure 7 The rotational motion shown is nominally centered on the aforementioned reference point (the zero position of the sensing element 26) which is co-located with the center of the calibration element 36 (calibration ball 34). Therefore, this ideally results in a rotation entirely centered on the calibration ball 34, such as... Figure 7 What is shown.
[0156] However, the model parameters characterizing the geometry of machine 10 are not perfect, especially before machine 10 has been properly calibrated. As a result, positional errors will occur, causing the reference point (the zero position of sensing element 26) to be in the expected position based on the model parameters (although if the initial model parameters are reasonably matched with the actual machine geometry, there will usually be only a relatively small positional error).
[0157] This can be used as a reference. Figure 8 To explain, the diagram shows the target Figure 7 The last three rotational demands (i.e., 0, +β, +2β) are met by the stylus 23. After the machine 10 has moved based on the 0 rotational demand, the stylus 23 exhibits exactly a zero deflection (or zero deflection). However, after the machine 10 has moved based on the +β rotational demand, it can be seen that the stylus support (in this case, Figure 4 The scanning module 22 (along the XYZ) is slightly ahead of its proper position. Because the calibration ball 34 is embedded in the stylus ball 24 such that the center of the sensing member 26 remains aligned with the center of the calibration ball 34, this causes the stylus 23 to deflect relative to the stylus support (scanning module 22), and in this example, this deflection is measured as θ by the probe 20.
[0158] The deflection data from probe 20 can be used as part of the calibration method to update the model parameters, thereby avoiding (or at least reducing) these positional errors in the future. In fact, the deflection data can be used in the calibration method embodying the invention, as explained below. However, the calibration method embodying the invention is characterized in that each movement (e.g., as...) Figure 8 The final movement (as shown) includes not only a rotational component based on the rotation (ABC) requirement (i.e., +2β in this example), but also a translational (XYZ) adjustment based on the current position error (measured in this example by probe deflection θ) to maintain the zero-position deflection of stylus 23 during the rotational movement. In other words, in the calibration method according to an embodiment of the invention, each position requirement has both a rotational component (for generating the rotational movement) and a translational component (for maintaining the zero-position probe deflection). How this translational adjustment is implemented will be described in more detail below.
[0159] It should be noted that the deflection of stylus 23 can be measured not only in the lateral or transverse direction (e.g., along the generally longitudinal axis of stylus 23) but also in the longitudinal direction (e.g., along the generally longitudinal axis of stylus 23), although for a typical measuring probe, there would be a larger measurable range of deflection in the lateral or transverse direction. Therefore, probe 20 provides a three-dimensional position measurement, thereby providing a response that allows for translational adjustments in all three translational degrees of freedom. Probe 20 effectively provides a sensor operable to generate an output signal or response (probe deflection) that depends on the position of the calibration point (the center of calibration member 36) relative to a reference point (the center of sensing member 26 in its zero position), wherein the calibration point is fixed in the coordinate system of the fixed platform 14 and the reference point is fixed in the coordinate system of the moving platform 12.
[0160] This concept is in Figure 9 The diagram is shown schematically. The first fixed point R in the coordinate system of the first (movable) platform 12 corresponds to the zero position (or undeflected) position of the sensing member 26, and the second fixed point C in the coordinate system of the second (fixed) platform 14 corresponds to the position of the calibration member 36. Figure 9 The first part shows the following situation: probe 20 is in a zero position (or undeflected) configuration such that the two points R and C coincide, and probe 20 provides a zero position output. Figure 9 The second part illustrates the following situation: due to the positional error described above, probe 20 is in a non-zero position (or deflection) configuration, where stylus 23 deflects by an angle θ. In this second configuration, probe 20 provides an output that can be converted into appropriate x, y, z adjustments, which are then returned to... Figure 9 The first part shows the required zero position. The x, y, z values from probe 20 are initially in the coordinate system of probe 20, but these values can be transformed into the coordinate system of machine 10 (or the working coordinate system), as discussed in more detail below.
[0161] For example, refer to Figure 10 Probe 20 starts from the zero position and is then commanded to rotate by +β. Ideally, (in Figure 9 The two points R and C mentioned above should coincide, but due to the non-ideal machine calibration discussed above, a gap may appear between these two points, resulting in a positional error. dx (Underlined text indicates this is a 3D vector). Position error dx The measurement is made by probe 20 (or determined based on the deflection data output from probe 20), and this is used to apply a translational adjustment (without any rotational component) in the next movement to bring the two points back to coincide, thus fulfilling the +β requirement.
[0162] Figure 10This can be considered the basis for the calibration method embodying the present invention, wherein translational adjustment is based on the output of the position sensor (probe 20) to account for positional errors caused by rotational movement due to non-ideal machine calibration, particularly to prevent probe 20 from deviating from the zero position. However, it should be noted that embodiments of the present invention are intended to avoid Figure 10 The specific type of movement shown (where rotational movement and translational adjustment are performed independently and alternately) causes the machine to repeatedly stop and start in a halting manner.
[0163] exist Figure 11 This type of movement is shown in more detail in the figure, which not only shows the movement that was made, but also indicates when calibration data was recorded. Figure 11 The sequence shown starts from probe 20 in vertical orientation and zero deflection. dx0 Begin. Record calibration data at this location (e.g., encoder data from the extendable leg 16, or measurement data obtained from the encoder data), as indicated by the star symbol below the figure. In the next step, apply a rotational demand of +2β, causing the probe to deflect, and determine the required adjustment based on the probe deflection. dx1 The position is adjusted so that the sensing element 26 returns to coincide with the calibration element 36. No calibration data is recorded in this step because the sensing element 26 is not centered on the calibration element 36. In the next two steps, calibration is applied iteratively (e.g., via a servo feedback loop, which will be described in more detail below). dx1 The position is adjusted, with +0.5 in each of the two steps. dx1 Partial adjustments are made. When the sensing element 26 coincides with the calibration element 36 again, calibration data is recorded, as indicated by the star below, and this calibration data is correlated with the total rotation of +2β. This process is repeated in the next step, i.e., rotating another +2β, calculating the applied force in both steps. dx2 Adjustments are made. Total rotation or cumulative rotation is also shown at the bottom.
[0164] Figure 11The motion is inherently intermittent, requiring machine 10 to stop after each rotational movement, then perform a series of translational adjustments to return to its proper position, before performing another rotational movement, and so on. This results in highly erratic, discontinuous motion, where machine 10 alternates between rotation and translation. To avoid dynamic measurement errors caused by this erratic motion, machine 10 may need to pause for a period of time before recording calibration data to allow the machine to stabilize. Consequently, the overall calibration procedure will be slow and may require larger angular increments to at least partially compensate for this, resulting in fewer data points, less calibration data for performing model parameter optimization, and a longer overall calibration time. The goal is to reduce calibration time, which would not only encourage more frequent calibrations but also allow for the collection of more calibration data for better calibration.
[0165] and Figure 11 To create a contrast, Figure 12 The diagram illustrates a series of movements performed according to an embodiment of the invention. In this method, machine 10 is controlled to perform continuous (and smooth) rotational movements of a first (movable) platform 12 relative to a second (fixed) platform 14 based on a series of positional requirements, wherein each of the positional requirements has a rotational component for generating the rotational movement (e.g., based on...). Figure 12 β in the intermediate steps) and translation components used for position adjustment (e.g., based on Figure 12 In the intermediate steps dx1 The translation component of each step is based on a servo feedback loop (also referred to herein as a servo zero-position loop), which operates continuously and independently of the actuator servo loop (for the extendable leg 16) to maintain the zero-position output signal from the sensor (probe). References will follow below. Figures 13 to 1 5. Describe the operation of these servo loops. The intention is for the servo feedback loops to operate continuously, adjusting their position with each rotational movement. Therefore, rotational increments can be small and frequent, and the adjustments from the servo feedback loops can be correspondingly small and frequent. This results in a very tight motion control loop, thus producing very smooth and continuous motion. Of course, Figure 12 The probe deflections shown are exaggerated, and in practice, these deflections are typically small enough that it can be assumed that the probe deflection is always zero. However, any residual deflection can also be considered during the optimization process.
[0166] The method according to embodiments of the invention allows for accelerated movement during calibration data collection without the need to stop between movements for readjustment, enabling the collection of large amounts of data points and calibration data for optimizing model parameters. No stopping is required to record calibration data because the movement is smooth and not erratic, thus reducing dynamic errors. Recording is possible. Figure 12The calibration data for each step in the steps shown, and not just as... Figure 11 Some of the steps shown. For example, with Figure 11 Compared to (three batches of calibration data), in Figure 12 The sequence shown records more calibration data (five batches of calibration data) and requires fewer steps for the same total rotational range (0 to +4β) (and therefore faster, assuming each step takes the same amount of time). Probe 10 in this embodiment is a scanning probe that can continuously collect data during continuous rotational motion, such as... Figure 12 As shown. Using this motion control scheme during calibration data collection results in better overall calibration in a shorter time, thus providing more accurate coordinate positioning for the machine 10 with less downtime.
[0167] Figure 12 Another advantage of the continuous scanning method (with) Figure 11 Compared to the stop / start method, this reduces problems caused by friction in the joints when there is continuous movement of machine parts. In this respect, when the moving platform 12 stops after performing a movement, it is left in an uncertain position due to friction in the joints, the effects of which are not easily determined or estimated. However, when the machine moves continuously, this friction is effectively released, making the calibration data more reliable and representative. Furthermore, as mentioned above, more data can be collected within the same time frame through continuous scanning, thereby improving calibration performance. However, since moving / accelerating too quickly may introduce undesirable dynamic errors, a balance needs to be struck.
[0168] The servo feedback loop used to derive the required translation components for each step will be described below with reference to Figure 15. This servo feedback loop may be referred to as the "servo zero-position loop" because it is designed to maintain the zero-position (or zero) probe deflection. However, since the actuator servo loop is also related to the control scheme used during calibration data collection, reference will be made first to... Figure 13 and Figure 14 Descriptions are provided of actuator servo circuits that operate during normal operation of the coordinate positioning machine 10 (i.e., when the calibration method embodying the present invention is not performed to collect calibration data).
[0169] like Figure 13 As shown on the left, a profilometer unit (e.g., as part of controller 15) is provided for generating a series of XYZABC requirements, which are in... Figure 13 In the middle of the vector XThese indicate how the mobile platform 12 moves relative to the fixed platform 14, for example, based on a path that has been determined to move the tool within the working volume 11 to perform a specific task, wherein the tool is supported on the mobile platform 12. The profilometer can also be referred to as a trajectory generator and is a common component of the machine's motion control system.
[0170] In order to determine what will be activated to produce by X The required length (or length variation) of each of the extendable legs (actuators) 16 representing the motion demand, so that... X The demand is processed through a transformation unit, which will... X Transform into P ,in, P This represents the position requirement Pd for multiple actuators. 1-6 The vector. Each actuator position requires Pd. n This represents the value representing the required length or length variation of the corresponding extendable leg (or actuator) 16, such that for a hexapod coordinate positioning machine 10, there are six such actuator requirement values Pd. n As those skilled in the art will well understand, the current set of model parameters is used as input to this transformation, because the transformation requires knowledge of machine geometry to determine how each actuator should be controlled to achieve the desired result. X The desired position is indicated.
[0171] These actuator requirements are Pd n It is transmitted to six actuator servo loops, one of which is in Figure 14 This is illustrated in more detail below. This is a standard type of servo feedback loop, therefore a detailed description is unnecessary. However, in general, the actuator servo loop receives the actuator demand Pd for the actuator it controls. n The feedback loop itself includes a controller (e.g., a PID controller), an actuator (e.g., a linear motor in the extendable leg 16), and sensors (e.g., an encoder and a readout head) for measuring the actual extension (or change in extension), wherein the sensor outputs the measured extension (or change) as a position feedback value Pf. n The goal is to make Pf n Precisely match Pd n This ensures that the extendable leg 16 extends precisely to the correct amount. This is achieved in incremental steps, where the controller is based on Pf n With Pd n The error value e between them nTo determine the amplitude and direction of each step. Position requirement can also be referred to as position command or desired position, while position feedback can also be referred to as actual position or measured position. In the context of the extendable leg 16, the actuator can be a linear motor, and in this context, position can be the length of the extendable leg 16 or a variation of that length.
[0172] Controller in Figure 13 In servo control, a PID controller, or proportional-integral-derivative (PID) controller, uses three control terms (proportional, integral, and derivative) to influence the controller output in order to achieve accurate and optimal motion control. Typically, tuning a servo system involves adjusting the gain in the motion controller to minimize the servo system's response time, settling time, and overshoot. The goal of servo tuning is to minimize (but not necessarily eliminate) the error between the commanded position (or velocity or torque) and the achieved actual value. The most common type of control loop or algorithm used for servo tuning is the PID loop, where "P" stands for proportional gain, "I" for integral gain, and "D" for derivative gain. Gain is essentially the ratio of output to input, and in a servo control loop, gain determines how and to what extent the controller attempts to correct the error detected by the feedback device. The amount of proportional gain in the control loop determines how much restoring force is applied to overcome the error between the commanded and actual values. The proportional gain is multiplied by the error and contributes to the output in the next time interval. The term "proportional" is used because at any given time, the amount of restoring force is proportional to the amount of error. PID controllers provide a well-known type of control loop mechanism, so further detail is unnecessary here.
[0173] Integral gain is used to "push" the system to zero error at the end of a shift. The integral gain value increases over time—hence the term "integral." However, because the integral gain increases at the end of a shift, it can cause system overshoot or oscillation. Conversely, if the integral gain is too low, the system response time will be slowed. Integral gain is primarily used when the system is subjected to static torque loads.
[0174] The differential gain is proportional to the rate of change of the error (derivative). It is often used in conjunction with the proportional gain to reduce overshoot and provide damping. However, excessively high differential gain can shorten the system response time and cause oscillations.
[0175] Position feedback value Pf from the actuator servo loop 1-6 The set can be passed to another transformation unit, causing it to transform back to the set with respect to the set. X In a coordinate system with the same requirements, thus providing the current coordinates in the XYZABC coordinate system. X Position (e.g., measured by actuator sensors). This transformation again uses the current model parameters as input. Due to the operation of the servo feedback loop, the output... XThe position will follow but lag behind the input. X Requirements, but ultimately should match (or at least come close to).
[0176] It should be noted that Figure 13 and Figure 14 The servo feedback scheme described is not specific to hexapod coordinate positioning machines, but is more generally applicable to any type of coordinate positioning machine that has a set of actuators (whether linear, rotary, or a combination thereof) that can be controlled via the same servo feedback scheme.
[0177] Considering the standard servo feedback scheme described above, now refer to Figure 15, which illustrates how the standard servo feedback scheme can be modified to incorporate an additional servo zero-position loop for the translation adjustment discussed above, which is mainly shown in the upper part of Figure 15.
[0178] The lower part of Figure 15 closely corresponds to Figure 13 The standard actuator servo solution differs in that the profilometer is only responsible for generating... X The rotation (ABC) component of the demand, while X The translational (XYZ) component of the demand is instead derived from a separate servo zero-position loop. The servo zero-position feedback loop operates continuously and independently of the actuator servo loop and is designed to maintain the zero-position output signal from the associated sensor (in this case, probe 20). The zero-position output signal can be expressed, for example, as [XYZ] = [0 0 300] µm, i.e., a constant lateral deflection of 0 µm in the X and Y directions and a constant deflection of 300 µm in the Z direction (along the probe axis), note that this is in the sensor coordinate system (and also note that these values are merely representative and not intended to be limiting). This is the servo zero-position demand input to a PID servo loop similar to the one described above, which is designed to control the actuator so that the sensor feedback value [XYZ] (again, in the sensor coordinate system) matches the servo zero-position demand (e.g., [0 0 300]). Using a small (300 µm) deflection in the Z direction (along the longitudinal axis of probe 20) is beneficial because the sensing element 26 of probe 20 will then be slightly biased into the calibration element 36, i.e., pushed into the calibration element with a slight force, thereby allowing some movement in either direction along the Z axis around the zero position of 300 µm without losing contact.
[0179] The servo zero-position loop is associated with the actuator servo loop, meaning they both control the same actuator; therefore, the actuator section of the servo zero-position loop is shown as a dashed outline. Instead of directly controlling the actuator, the output from the controller in the servo zero-position loop is used to determine... XThe required XYZ (translation) components. Since the [XYZ] output from the controller of the servo zero-position loop is in the sensor coordinate system, it is transformed (rotated) to the working coordinate system by a transformation (rotation) unit located between the upper servo zero-position loop and the lower actuator servo loop. These transformed (rotated) values are then used as... X The required XYZ (translation) components, where the ABC (rotation) components come from the profilometer unit as described above.
[0180] To perform the transformation (rotation) from the sensor coordinate system to the working coordinate system, as depicted in Figure 15, a signal from the actuator servo loop output was used. X The current ABC value of the position, as this provides information about how the sensor (probe 20) is oriented in the working coordinate system. However, the ABC information used for this transformation between the actuator loop and the servo zero-position loop can alternatively come from the input side of the actuator servo loop (i.e., from...). X Demand), rather than feedback (i.e., actual or measured). X (Position). These two sides are usually closely matched, as this is precisely the purpose of the servo feedback loop, but one will lag slightly behind the other; however, in some cases, this lag can be beneficial. Similarly, the XYZ information used for transformation (rotation) to the working coordinate system can come from sensor feedback, rather than from the controller as depicted in Figure 15.
[0181] It will be apparent from the above that in the calibration method embodying the present invention, (when collecting calibration data) it is in conjunction with... Figure 14 The machine is controlled in a similar manner as shown, because the actuator (extendable leg 16) operates based on a series of positional requirements, each having both rotational and translational components (i.e., in all six degrees of freedom). However, in the method embodying the invention, the translational (XYZ) components do not originate from the profilometer, but rather from a servo zero-position loop that operates continuously during the collection of calibration data. The profilometer outputs the required rotational (ABC) components at regular intervals, for example, based on a clock signal, and for each of these rotational components, the translational (XYZ) component is filled based on the current output from the servo zero-position loop. These two parts can be considered independent and can even operate at different clock rates. The servo zero-position loop is enabled in the calibration routine to keep the sensing element 26 centered on the currently calibrated element 36 while performing rotational motion to collect calibration data, and is subsequently deactivated.
[0182] This rotational movement is performed sequentially for each available calibration element 36 on the calibration article 30, or for a deemed necessary number of calibration elements. The calibration article 30 may also be moved to different positions and orientations within the working volume 11, and the process is repeated for each calibration element 36 in the new position and orientation. The model parameters are then updated in the optimization routine using all the calibration data collected during these operations to produce better calibration for the machine 10.
[0183] As described above, probe servo zeroing is a process of servo-controlling the deflection of probe 20 by controlling the XYZ position of sensing element 26 (probe tip) to maintain a constant deflection of probe 20 (e.g., [0 0 300] µm). Servo zeroing is particularly beneficial in this context because when calibrating a new machine, since the machine is not yet calibrated, the probe cannot be calibrated either, leaving no choice but to calibrate the probe with an uncalibrated machine. Therefore, if the deflection of probe 20 is allowed to accumulate while moving around calibration element 36 along ABC, significant errors will be introduced. However, by using probe servo zeroing, these errors are largely avoided. Another source of error is that even if the probe is perfectly calibrated, the combination of machine and probe will not be perfect because the machine is not calibrated.
[0184] However, it should be understood that although the intention is to maintain a zero-point deflection of probe 20 throughout the rotational motion, the nature of the servo control loop means that the position on the feedback side will lag slightly behind the position on the demand side, and this becomes more pronounced as the movement speed increases. Therefore, in practice, the probe deflection may sometimes deviate slightly from zero. However, this probe deflection data itself can be used as part of the calibration data in optimization methods, for example, as part of the objective function for error minimization. This is acceptable, at least for relatively small deflections (e.g., less than 5 µm), because it may be acceptable within such a small deflection range even though the probe is not calibrated, and it is generally better to account for these non-zero-point deflections than not.
[0185] exist Figure 12 The calibration data collected during the routine shown (using reference) Figures 13 to 1 The servo loop described in 5 is used, for example, based on an objective function of an optimization routine (such as the Levonburg-Marquardt algorithm described above) to determine a new set of model parameters that will fit the recorded calibration data better than the existing set of model parameters. The calibration data may, for example, include the actuator position feedback value Pf from the actuator servo loop. 1-6These actuator position feedback values are based on measurements from or derived from the actual sensors (encoders) of the actuator (extendable leg 16). Alternatively or additionally, calibration data may include the actuator position requirement value Pd. 1-6 These actuator position requirements and position feedback values Pf 1-6 Close alignment is necessary because the purpose of the servo feedback loop is to make the input and output equal (although sometimes slightly lagging).
[0186] Optimization is performed not only based on the collected calibration data, but also under the understanding that during calibration data collection, the reference point (i.e., the center of the sensing member 26 at the zero position) is always constrained relative to the calibration point (i.e., the center of the calibration member 36) through the operation of the servo feedback loop during rotational movement. Specifically, at least in this embodiment, it is known that position adjustments are continuously performed during the calibration routine to keep the sensing member 26 aligned with the calibration member 36 and the probe deflected to zero (i.e., the reference point is in a constant position). Therefore, it is known that (regardless of any defects in machine calibration) the rotational movement performed during the calibration routine is actually performed around a fixed point.
[0187] However, such rotational movement around a fixed point can only be achieved by taking into account translation (XYZ) adjustments or corrections from the servo zero-position loop. Assuming the translation (XYZ) adjustments from the servo zero-position loop are non-zero (which would certainly be non-zero when starting from an uncalibrated machine 10), it can be deduced that if rotational movement is performed solely based on the rotational requirements (ABC), the rotation will not occur around the fixed point. Conversely, if rotation around the fixed point is expected using only the rotational requirements (ABC) based on the current model parameters (since the origin of the coordinate system is set accordingly), it can be deduced that using the full (XYZABC) input requirements based on the current model parameters will not expect rotation around the fixed point. Therefore, the goal of the optimization routine is to determine a new set of model parameters that, without any position adjustments or corrections from the servo zero-position loop, better fits the recorded calibration data than the existing set of model parameters.
[0188] This is Figure 16 As shown, this diagram is actually a labeled version of Figure 15. Recall that in this embodiment, the rotational movement is around the reference point (the zero position of the sensing element 26) and nominally centered on the calibration point; therefore, for perfect calibration, no position adjustment from the servo zero-position loop is required. Compared to Figure 15, in Figure 16 The servo zero-position loop is omitted (because it does not exist during normal operation of machine 10). Therefore, there is no XYZ position requirement, i.e., no translation component (regardless of whether it is in the XYZ position). Xarrive P (Before or after the transformation), and therefore there are no longer any artificial constraints to keep the reference point and calibration point aligned. However, we still hope to eventually obtain the same actuator position requirement Pd as before. 1-6 (i.e., from) X arrive P (the output of the transformation), because we know that these actuator position requirements Pd from the calibration data. 1-6 It does indeed achieve rotation around a fixed point, which is exactly what was desired. Therefore, in order to compensate for the entry... X arrive P The transformation lacks a translation (XYZ) component, and in order to obtain the same result from... X arrive P The output of the transformation needs to be adjusted. X arrive P Another input to the transformation is the model parameters. This is the goal of the optimization routine (although not necessarily the method used by the optimization routine): to find a new set of model parameters that will fit the calibration data better than the existing set, so that position adjustments from the servo zero loop are not required.
[0189] The ABC requirements from the profilometer are typically not recorded as part of the calibration data, and therefore are not directly used as part of the objective function in any optimization routine to determine the new set of model parameters. Calibration data may include measurements of the strut length (or length variation) for each calibration data item, or measurements from... Figure 1 The raw values of the length measuring transducer 17 shown can be used to deduce the strut length (or length variation) based on model parameters. Storing the raw values is equivalent to storing the position feedback value Pf from the actuator servo loop. 1-6 As part of the calibration data, in other types of machine architectures with rotary joints instead of linear joints (such as in articulated robotic arms), the calibration data may include values from angle encoders associated with each rotary joint (which again corresponds to storing the position feedback value Pf from the actuator servo loop). 1-6The calibration data reflects or represents the (recordable) state of the machine for each rotational position of rotational movement (or, if not for each rotational position, based on some other sampling rate). This type of information (forming part of the calibration data) is also referred to herein as machine coordinates, which in this context are intended to mean a set of coordinates or values (e.g., encoder readings for each joint) representing the state of the machine in a particular posture. In this respect, the various physical axes of motion of the machine (such as linear axes defined by the extendable legs 16 of the hexapod 10 or rotational axes of an articulated robotic arm) can be considered herein to define the machine coordinate system, and thus define the term machine coordinates. Instead of, for example, a specified value in XYZ and ABC, it is alternatively a specified (or recorded in the calibration data) value for each of the machine axes, such as the extension amount of the extendable legs 16 of the hexapod 10 (or encoder values associated with achieving these extension amounts).
[0190] Each extendable leg 16 is typically associated with more than one model parameter. In this regard, in an example of a model of machine geometry, the primary model parameters used to characterize the extendable leg 16 (or virtually any actuator, whether linear or rotary) would be the scaling parameter and the offset parameter. Simply put, the total length of the extendable leg 16 is determined by multiplying the original encoder reading (from the corresponding length-measuring transducer 17) by the scaling parameter and then adding the offset parameter, i.e., L = (k × r) + o, where L is the length of the extendable leg 15, k is the scaling parameter, r is the linear encoder reading (as mentioned elsewhere in this document in machine coordinates), and o is the offset parameter; or, alternatively, by adding the offset parameter to the encoder reading and then multiplying by the scaling parameter, i.e., L = k × (r + o).
[0191] In addition to these six pairs of proportional / offset parameters used for the six extendable legs 16, for Figure 10 Machine 10 will have six additional parameters representing the spacing between the three balls of ball joint 18 of fixed platform 14 (three between ball pairs along each side of the triangle, and another three between ball pairs at each corner of the triangle), and six additional spacing parameters for ball joint 18 of moving platform 12. There are also three offset values (as discussed above) to define the position of the reference point (the origin of XYZ, ABC movement) relative to the center of moving platform 12.
[0192] For the relatively simple model of Machine 10, this equates to at least 27 model parameters, and the calibration routine described herein optimizes these parameters. Prior to calibration, estimates of these parameters are determined by other means to serve as a starting point for calibration. It should be understood that the model parameters described above are intended to be representative only and are purely for illustrative purposes, and that different and / or additional model parameters may be included to define more complex machine geometry. For example, additional model parameters may exist to define a more complex machine geometry, such as... Figure 3 The geometry of the fixed outer frame arranged from top to bottom (referred to above as fixed structure 14) can be considered as a separate model with its own set of model parameters. For structural rigidity, the outer frame (fixed structure 14) itself can be formed by a set of rigid legs or struts arranged in a six-legged configuration.
[0193] An objective function can be defined that takes raw encoder readings from each of the extendable legs 16, and uses the aforementioned scaling and offset parameters to determine the length of each extendable leg 16 based on these raw encoder readings. These derived length values can be stored in the calibration data itself, rather than (or simultaneously) storing the raw sensor (actuator) values, i.e., storing the length values or linear joint extensions (or, in the case of an articulated robotic arm, the rotary joint angles) derived from the raw values and model parameters. This information about the length of each extendable leg 16, along with the ball joint parameters defining the geometry of platforms 12, 14, and the offset values of the reference point, plus any other relevant model parameters, makes it possible to determine the expected position of the reference point for the recorded position represented in the calibration data. This mapping is effectively equivalent to... Figures 13 to 16 of P arrive X Transformation.
[0194] For each of the recorded positions represented in the calibration data, the expected position of the reference point is determined, thus effectively creating a point cloud with a large number of points. It is now known that during rotational movement (i.e., when collecting calibration data), the reference point is constrained to coincide with the calibration point through the operation of the zero-position servo feedback loop. Therefore, it can be determined that the expected positions determined solely from the calibration data should coincide with each other. For optimization purposes, the absolute position of the clustered points of the expected positions is not important; what is important is that any rotational position around the calibration point should remain consistent. Therefore, the points in the point cloud should be tightly clustered around a fixed position. In reality, due to imperfections in calibration, the expected positions determined based on the model parameters and the calibration data (in this example, the raw encoder readings) will have a certain dispersion or deviation from the fixed position (whatever that position may be), and this dispersion or deviation will form the basis of the error value determined by the objective function. Thus, the objective of the optimization routine would be to iteratively perturb the model parameters to reduce the total error in each iteration, or (if not for each iteration) at least in several iterations, thereby minimizing the objective function (or the error returned by the objective function). By reducing this error function, a new set of model parameters is generated that better fits or matches the recorded calibration data (e.g., actuator extension values) than the set of model parameters from previous iterations. This iterative process can be repeated until a predetermined test is met, such as when the total deviation (or error) falls below a predetermined threshold.
[0195] Therefore, the final set of model parameters generated by the optimization routine better characterizes the machine's geometry than existing or previous sets of model parameters, resulting in better calibration of machine 10 and thus greater accuracy in positioning performance. Thus, after optimization, using the new model parameters from recorded calibration data (e.g., related to the extension of each leg 16), the position of the moving platform 12 (and the reference point) should cause rotation around the calibration point, and the reference point should always remain aligned with the calibration, even without translation correction from the servo zero-position loop. Those skilled in optimization techniques and / or machine calibration will understand how to implement these kinds of optimization routines, and this will not require further description.
[0196] It should be understood that when collecting calibration data, rotation does not need to be planned around a reference point. Instead, rotation can be around a nearby fixed point, or even around a moving point. This is because the servo zero-position loop operates continuously "in the background," and therefore, as long as the sensing element 26 is in a sensing relationship with the calibration element 36, allowing the servo zero-position loop to receive sensor data from the probe 20, the servo zero-position loop will continue to operate to keep the sensing element 26 centered on the calibration element 36, regardless of the specific manner in which the machine 10 is attempting to rotate the moving platform 12. Therefore, the calibration data will still provide the same useful information as before, namely, it will provide the actuator position feedback value Pf known to be associated with rotation around the fixed point (i.e., the calibration point). 1-6 The set of all actuator position feedback values Pf 1-6 All "point" to the same location. In other words, what matters is the fixed nature of the calibration point and the constraint effect of the servo zero-position loop on the position of the reference point relative to the calibration point, rather than the specific form of the rotational movement originally planned for the profilometer. Rotation around points other than the reference point (the zero-position of probe 20) can be achieved by setting different positions (or offsets) for the origin of the XYZABC coordinate system (refer to the relevant discussion above), such that a change in each of the ABC coordinates will at least nominally cause a rotation around that point rather than the reference point. This is especially important when the rotational movement is not centered on the reference point during calibration data collection. Figure 16 The diagram will not be applicable because, without translation adjustment from the servo zero-position loop, the position requirement Pd from the calibration data is insufficient. 1-6 (or location feedback value Pf) 1-6 This will not meet expectations.
[0197] Furthermore, although the servo feedback loop is described as designed to maintain a constant output, it should be understood that the output is not necessarily constant, but should at least be known and / or predetermined. If the output is not constant, such that the rotation does not revolve around a fixed point, then data relating to how the position of the expected reference point changes relative to the calibration point will be used as input to the optimization routine method. Theoretically, it is even possible that the position of the calibration point itself is not fixed in the coordinate system of the fixed platform 14, but changes in a known manner, and this will also be used as input to the optimization routine.
[0198] In the brief description above of how the objective function for the error minimization routine can be formulated, it is generally assumed that the zero-position servo loop can maintain perfect coincidence between the reference point and the calibration point throughout the rotational movement used to collect calibration data. This will be a valid assumption in many cases, especially when platform 12 moves without significant acceleration. In practice, there is usually some residual stylus deflection because the nature of the servo feedback loop is that the feedback side lags slightly behind the demand side. Therefore, the calibration data can also include deflection data (sensor data), and this can be used to refine the calculations for the various positions relative to the reference point before determining the deviation or error value as previously described. This deflection can be built into the model geometry, effectively another input variable (such as actuator data), and the probe itself is defined by one or more additional model parameters. As mentioned earlier, maintaining zero-position stylus deflection is beneficial for a reason, but if this is not the case, the residual deflection data can be used as part of the optimization.
[0199] The preceding text described how calibration data is collected for the optimization routine by performing continuous rotations around each of a plurality of calibration points (while simultaneously running the servo zero-position loop in parallel). The optimization routine then attempts to find model parameters for the machine that cause the expected position of the reference point (the zero-position of sensing element 26) to cluster as closely as possible around the fixed calibration point, because regardless of any defects in the current model parameters, the operation of the servo zero-position loop confirms that the rotation does indeed occur around the fixed point. For this part of the calibration, the absolute or even relative position of the calibration point is irrelevant, as the key factor is only that each rotational movement occurs around the fixed calibration point, not where that fixed calibration point is located.
[0200] However, it is also possible (and often beneficial) to collect additional calibration data for the optimization routine, which can be compared with the calibrated values of the spacing between pairs of calibration points (i.e., where these spacings are measured using independent and fully calibrated coordinate measuring machines). The objective function for this part of the calibration may involve the difference or error between the independently calibrated spacing and the spacing calculated (based on the current model parameters) from the recorded calibration data, so that the model parameters can be optimized to reduce the total error. The objective function for this part of the calibration can be combined with the objective function of the previous part, where the two optimized parts are actually performed in parallel (or in combination), or they can be performed serially (or separately).
[0201] In this second part of the calibration routine, machine 10 is controlled to remain briefly on the first calibration member 36 (i.e., maintain its position and orientation without any rotation or translational movement), and then moves to the second calibration member 36 and performs the same operation. The spacing between the first and second calibration points can be determined based on the collected calibration data and the current model parameters. For an ideal calibration, this will precisely match the pre-calibrated (known) spacing of this pair of calibration members 36. If not, the model parameters are updated to better match, i.e., the calibration is improved. This process is repeated for multiple pairs of calibration points, allowing optimization to consider multiple spacings. Weighting can be applied to prioritize the rotational portion of the calibration (first part) over the distance portion (second part), and vice versa. Performing the second part of the calibration can significantly improve the accuracy of machine 10 in absolute distance or length measurements, making machine 10 sufficiently accurate to be used as a coordinate measuring machine rather than just as a comparator.
[0202] The second part of the calibration routine can be combined with the first part, for example, causing the machine to rotate around a calibration point (collecting calibration data for the first part), then pause for a period of time (collecting calibration data for the second part), then move to the next calibration point, perform the rotational movement (first part), then pause (second part), and so on. Alternatively, the second part of the routine can be performed after the first part has been completed. Furthermore, instead of pausing at each calibration point to collect calibration data specific to the second part, the relative position can be determined based on the rotational calibration data already collected via the rotational movement. This can be achieved by examining the average position of a reference point (the zero position of the sensing element 26) determined based on the data collected from the rotational movement around each calibration point, and using this average position as the position of the relevant calibration point so that the calculated spacing can be compared with the known spacing from the independent calibration data.
[0203] Figure 17 The above steps are summarized in flowchart format. The steps described above are... Figure 17 The correspondence between the steps shown in the flowchart is self-evident without further explanation. Regarding the step of inquiring whether there are any additional positions for the calibration article, this refers to the possibility mentioned above: moving the calibration article 30 to different positions within the working volume 11 (in up to six degrees of freedom), thereby effectively creating more calibration points. Calibration methods are performed at these points to collect calibration data for optimizing the routine, and thus machine calibration is improved by ensuring that different combinations of actuator lengths are represented as widely as possible. An alternative support arrangement 90 for supporting the calibration article 30 on the fixed platform 14 was also mentioned above, and will now be referred to... Figure 18This will be described in conjunction with the accompanying drawings. The support arrangement 90 provides a convenient way to move the article 30 to different locations within the working volume 11.
[0204] exist Figure 4 In the illustrated embodiment, the calibration article 30 is directly supported at a single position on the fixed platform 14. However, to improve the calibration of the machine 10, the applicant has recognized that it would be advantageous if the calibration article 30 could take on multiple different discrete positions (in up to six degrees of freedom) within the working volume 11. The applicant has also recognized that it would be advantageous if the calibration article 30 were in a stable position relative to the fixed platform 14 in each of these discrete positions, so that it would not be easily and unintentionally moved out of position (relative to the fixed platform 14) during the execution of the calibration method. The applicant has also recognized that it would be advantageous if the calibration article 30 could be easily coupled to and decoupled from the support arrangement 90, for example, so that different calibration articles, or even different types of calibration articles (e.g., measuring instrument articles), could be easily installed in place of the current calibration article 30.
[0205] These objectives are achieved through Figure 18 The illustrated embodiment implements this, wherein the calibration article 30 is supported on the fixed platform 14 via a support arrangement 90. As will be explained further below, the support arrangement 90 is adapted to provide a plurality of cascaded kinematic connections between the machine 10 and the calibration article 30. The support arrangement 90 is adapted to provide a plurality of kinematically defined calibration positions for the calibration article 30 within the machine 10, and the article 30 is movable between these calibration positions, wherein the positions are defined in this context in up to six degrees of freedom (i.e., covering position and / or orientation). Furthermore, the support arrangement 90 is also adapted to provide kinematically defined mounting positions for the calibration article 30 relative to the support arrangement 90 itself (and therefore the fixed platform 14), wherein the calibration article 30 can be easily and removably coupled to the support arrangement 90 via the kinematically defined mounting positions. The meaning of kinematic connections and kinematically defined positions in this context will now be explained.
[0206] In the context of positioning a first body relative to a second body, kinematic design considerations are satisfied by constraining the degrees of freedom of motion of the first body relative to the second body using a minimum number of constraints (also known as precise constraints). When there are excessive constraints in the connection between the two bodies—that is, when the connection provides more than the minimum number of constraints by providing at least one redundant constraint—it is impossible to determine with any certainty which combination of constraints will determine the actual position of the first body relative to the second body. Therefore, the position of the first body relative to the second body is non-repeatable because it is unknown which of several possible positions the first body will stop at relative to the second body when they reunite.
[0207] Furthermore, in the presence of excessive constraints, the first body will not assume a stable position relative to the second body because, when a force is applied, the first body may move between two or more different possible positions. An example of this is a four-legged table, which, when placed on a flat surface, will typically wobble between two different positions. This is because, in this context, the minimum number of constraints is three to constrain relative motion in three corresponding degrees of freedom (two rotational degrees of freedom and one translational degree of freedom), while the four-legged table has four constraints (generated by the contact between each of the four legs and the flat surface), making the connection between the table and the flat surface excessively constrained.
[0208] Generally, each degree of freedom to be constrained requires a single constraint, and a single point contact between two bodies generates a single constraint. Therefore, in order to constrain the first body relative to the second body in all six degrees of freedom, the connection between them will need to define six contact points, arranged relative to each other in six corresponding degrees of freedom without any redundancy. It will be understood that these contact points need not be (and in practice will not be) purely mathematical points. Instead, in practice, each of these points is typically a small region of proximity. However, even if each contact point may not be purely mathematical, the connection can still be called a kinematic connection because it can still be considered to follow kinematic design principles. The term "kinematic" as used in this paper in the context of a connection between two bodies should be interpreted accordingly to mean kinematic or at least pseudo-kinematic, as should similar terms such as "kinematically."
[0209] Given the foregoing, it will be understood that the kinematic connection between the first and second entities provides a kinematically defined position of the first entity relative to the second entity, a position that is unique, discrete, repeatable, predictable, and stable, at least in terms of the degrees of freedom constrained by the connection (i.e., ignoring any unconstrained degrees of freedom). Unless otherwise stated, the kinematic connection referred to herein should be understood as providing relative constraints on all six degrees of freedom, where the kinematically defined position is also interpreted as relating to the relative position of the kinematically defined position on all six degrees of freedom. The kinematically defined position can also be simply referred to as the kinematic position.
[0210] Because it relies on the principle of precise constraints, the kinematic connection between two bodies is inherently easy to join and disjoint. This is because, to prevent the two bodies from deviating from the constraints defining their relative positions, it would be necessary to provide additional (and opposite) constraints (such as clamps), which themselves would lead to over-constraint and thus transform it from a kinematic connection into a non-kinematic connection. Nevertheless, kinematic connections generally do require some form of nesting force (or biasing force) to hold the joined bodies together, but without creating additional constraints. In this respect, the theoretical constraint includes not only the contact point itself but also the corresponding nesting force maintaining the contact. Nesting forces are force vectors normal to the contact surfaces and passing through the contact point, but these force vectors can be vectorarily combined into a single force. For example, gravity or magnetic force can be used as nesting forces.
[0211] With further background information, these ideas are explored in the following literature: (a) H.J. Braddick, “Mechanical Design of Laboratory Apparatus”, Chapman & Hall, London, 1960, pp. 11–30; (b) James G. Skakoon, “Exact constraint”, *Mechanical Engineering*, September 2009; (c) Alexander Slocum, “Kinematic Couplings: A Review of Design Principles and Applications”, *International Journal of Machine Tools and Manufacture*, 50.4 (2010): 310–327; and (d) Layton C. Hale, “Principles and Techniques for Designing Precision Machines”, Massachusetts Institute of Technology. Doctoral dissertation (Technology), February 1999.
[0212] It should be noted that Figure 18The support arrangement 90 can be used in conjunction with any calibration method, and is not limited to the calibration methods described herein. Therefore, the calibration methods and support arrangements set forth herein should be considered as independent aspects of the invention.
[0213] Figure 18 The support arrangement 90 comprises three main parts: an upper support member 40, a lower support member 50, and a base support member 60. The upper support member 40 includes a plate 42 and a block 44, wherein the plate 42 is arranged above the block 44 when in the working orientation. The lower support member 50 similarly includes a plate 52 and a block 54, but is inverted compared to the upper support member 40.
[0214] The base support member 60 includes a plate 62, a shaft housing 64 on the underside of the plate 62, and a shaft 65 rotatable and slidable within the shaft housing 64. The base support member 60 also includes a plurality of fixed legs 66 providing support for the plate 62. The fixed legs 66 of the base support member 60 are arranged in a hexapod configuration for structural rigidity and also provide an open structure, allowing the support arrangement 90 to be mounted onto the fixed platform 14 of the machine 10 around other components that can be supported on the fixed platform 14, without having to first remove those other components.
[0215] A first connection 81 is provided between the plate 42 of the upper support member 40 and the plate 32 of the calibration product 30, a second connection 82 is provided between the block 54 of the lower support member 50 and the block 44 of the upper support member 40, and a third connection 83 is provided between the plate 62 of the base support member 60 and the plate 52 of the lower support member 50. Figure 18 The diagram also schematically illustrates the kinematic connection features associated with each of the three connections 81, 82, and 83, but these are not labeled to avoid clutter.
[0216] The first connection 81 provides a kinematically defined mounting position for the calibration article 30 relative to the upper support member 40, wherein the calibration article 30 can be easily and removably connected to the upper support member 40 via this kinematically defined mounting position. Figure 19A and Figure 19B The connection features of the plate 42 (of the upper support member 40) and the plate 32 (of the calibration article 30) forming the first connection 81 are shown in more detail.
[0217] The connecting features of plate 32 engage with the connecting features of plate 42 to form a kinematic or at least pseudo-kinematic connection between the two parts. Three protruding spheres are provided on plate 32, and these spheres engage with three kinematic features on plate 42 arranged in corresponding triangles. The three kinematic features on plate 42 are a cluster of three protruding spheres (creating three contact points or constraints when engaging with corresponding spheres on plate 32), a V-shaped feature formed by two protruding cylinders (creating two contact points or constraints when engaging with corresponding spheres on plate 32), and a flat feature (creating a single contact point or constraint when engaging with corresponding spheres on plate 32). According to the kinematic design principles described above, these features define six contact points (arranged in a 3-2-1 configuration) when in the connected state, thereby creating six constraints on the relative movement between plates 32 and 42.
[0218] The first connection 81 not only provides a stable and repeatable mounting position for the calibration article 30, but also allows the calibration article 30 to be easily removed and reused. Figures 29 to 31 The different calibration articles 30a shown are replacements. The calibration articles 30a shown in these figures include multiple verification components 36a (multiple gauge blocks 34a in this example), and therefore can also be referred to as verification or certification articles 30a. Certification or verification of machine 20 can then be performed with gauge blocks 34a in place, for example, to verify the machine according to ISO 10360-2 (published by the International Organization for Standardization). Gauge blocks 34a will be measured in advance using independent CMMs, and the dimensional measurements of gauge blocks 34a using machine 10 will be compared with the independent measurements to verify or certify machine 10. A different set of kinematic connection features can be used to mount the certification article 30a to avoid wear on the kinematic connection features used for the calibration article 30, as the certification article 30a is typically heavier. It should be noted that although the calibration article 30a is called a calibration article, it is generally not used for calibration itself, but rather for verification or certification.
[0219] The second connection 82 provides two kinematically defined mounting positions for the upper support member 40 relative to the lower support member 50, wherein the two mounting positions are 180 degrees apart. Figure 20A and Figure 20BThe connection features of block 54 (of the lower support member 50) and block 44 (of the upper support member 40) forming the second connection 82 are shown in more detail. Six protruding balls are provided on block 44, thus providing two sets of three balls, each set engaging with three kinematic features on block 54 arranged in a corresponding triangle, thereby providing two different mounting positions of the upper support member 40 relative to the lower support member 50. The three kinematic features on block 54 are three V-shaped features, each of which provides two contact points with the corresponding ball on block 44. According to the kinematic design principles described above, these features define six contact points (arranged in a 2-2-2 pattern) when in the connected state, thereby creating six constraints on the relative movement between blocks 44 and 54.
[0220] Blocks 44 and 54 can be considered together to form a “split-block” arrangement, which is actually a single block with angled cracks provided by the second coupling 82. When the upper support member 40 and the lower support member 50 are disengaged and reconnected in another available relative position, this causes a change in the angle of plate 42 relative to plate 52, and therefore also a change in the angle of the calibration article 30 (which is supported on the upper support member 40 via the first coupling 81). Figures 22 to 24 The process is illustrated in the image, showing that due to the arrangement of the separate blocks, the calibration product 30 has been... Figure 22 Horizontal orientation in Figure 24 The angular orientation within. Similarly, each of these positions is stable and repeatable due to the properties of kinematic connections.
[0221] It can also provide positioning features to help position blocks 44 and 54 relative to each other, for example, Figure 32 Locating pins 56 are shown on block 54, which are positioned in locating recesses 46 in block 44. Although these locating features 54, 56 may contact each other during the coupling operation to help guide the kinematic coupling features toward each other so that they properly engage, when in the fully coupled state, these locating features 54, 56 will no longer contact each other to avoid creating any additional constraints, as this would otherwise result in excessive constraints in the second coupling 82.
[0222] The third connection 83 provides several different kinematically defined angular positions of the lower support member 50 relative to the base support member 60. Figure 21A and Figure 21BThe connection features of plate 62 (of the base support member 60) and plate 52 (of the lower support member 50) forming the third connection 83 are shown in more detail. In the example shown, a total of twenty-four discrete mounting positions are created, spaced 15 degrees apart. Twenty-four protruding balls are provided on plate 52, thus providing twenty-four sets of three balls, each of which engages with three kinematic features on plate 62 arranged in corresponding triangles, thereby providing twenty-four different mounting positions of the lower support member 50 relative to the base support member 60. The three kinematic features on plate 62 are three V-shaped features, each of which provides two contact points with the corresponding ball on plate 52. According to the kinematic design principles described above, these features define six contact points (arranged in a 2-2-2 pattern) when in the connected state, thereby creating six constraints on the relative movement between plates 52 and 62.
[0223] like Figure 25 As shown, the third connection 83 is disengaged by sliding the shaft 65 upward within the shaft housing 64, thereby decoupling the lower support member 50 from the base support member 60 while still maintaining support for the lower support member 50. The shaft housing 64 and the shaft 65 can be considered as part of a motion system for moving the lower support member 50 and the base support member 60 to different relative positions. When decoupled, the lower support member 50 can rotate about the base support member 60 to another of twenty-four kinematically defined positions, such as... Figure 26 As shown. The rotating mechanism can be power-driven, such as using a rotary motor. Alternatively, the rotating mechanism can include a passive rotating joint, wherein the machine 10 is controlled to move platforms 12, 14 relative to each other, such that the probe 20 applies a force to one side of the lower support member 50 (e.g., by gently pushing on one side of the article 30 coupled to the lower support member 50 via the upper support member 40), thereby causing the support members 50, 60 to rotate relative to each other about the shaft 65. The shaft 65 can then be lowered within the shaft housing 64 to recouple the lower support member 50 to the base support member 60 in a new kinematically defined position, as... Figure 27 As shown. Shaft 65 and shaft housing 64 preferably have a clearance to ensure that the bearing does not dominate the position and that kinematic alignment can be achieved. This disengagement, rotation, and re-engagement process can be fully automated, or some parts of it can be manually operated (e.g., rotating to a new position). By using kinematic couplings to facilitate the automation (or partial automation) of this process, these kinematic couplings can be easily disengaged and then re-engaged without complex tools or operations. Disengagement requires only the application of a force greater than the biasing or nesting force (gravity and / or magnetic force) that holds the kinematic couplings together.
[0224] Thus, the combination of the two kinematically defined positions defined by the second connection 82 and the twenty-four kinematically defined positions of the third connection 83 defines a total of 48 kinematically defined positions for the calibration article 30 relative to the support arrangement 90 and thereby relative to the fixed platform 14 of the machine 10. For example, Figure 18 The calibration article 30 is shown in a horizontal orientation, while Figure 28 It shows that it went through in sequence Figures 22 to 27 The operation shown is performed on the calibrated article 30 which is at an angle.
[0225] Each of the calibration balls 34 is labeled with the letters A through G to aid in visualizing these calibration balls. Figures 22 to 27 How does the position of each element change? Figure 28 In the process, a rotational calibration routine is performed on calibration ball 34, marked B, which is positioned relative to... Figure 18 Similar angular positions, but the calibrated product 30 is now at a certain angle. Figure 28 It also demonstrates that the axis of rotation does not need to be vertical, but can be at an angle to the vertical, as shown in the rotation calibration operation performed on calibration ball 34 marked E.
[0226] Figure 28 The diagram also shows three planes P1, P2, and P3 defined by the connection features of the first connection 81, the second connection 82, and the third connection 83, respectively. In this respect, the connection features of each of the three connections 81, 82, and 83 are arranged substantially in a plane, such that each connection 81, 82, and 83 can be represented as a plane or a planar surface. The three planes P1, P2, and P3 pass through the connection features of the first connection 81, the second connection 82, and the third connection 83, respectively, at least during connection. The first connection 81, the second connection 82, and the third connection 83 are arranged in series between the fixed platform 14 of the machine 10 and the article 30, and correspondingly, the planes P1, P2, and P3 are also arranged in series. Each of these planes P1, P2, and P3 is at an angle relative to the preceding (or following) plane in the series (i.e., pairs of P1, P2 and pairs of P2, P3 are at an angle). Figure 28 The diagram also shows the corresponding axes A1, A2, and A3 that are orthogonal to planes P1, P2, and P3, respectively. Each of these axes A1, A2, and A3 is also at an angle relative to the preceding (or following) axis in the series (i.e., pairs of A1 and A2 and pairs of A2 and A3 are at an angle).
[0227] In this embodiment, rotation is provided between different kinematic positions about axes A2 and A3, and since these axes A2 and A3 are at an angle to each other, these axes together provide rotation of article 30 between two kinematically defined positions with different rotational degrees of freedom in the working volume 11. Figure 23 The rotation R shown is about axis A2 (but translational degrees of freedom may also exist, depending on where different kinematic positions are provided; i.e., it is not necessarily a pure rotation), while Figure 26 The rotation R shown is about axis A3 (which theoretically has no translational degree of freedom because it is theoretically a constrained rotation about axis 65, wherein the kinematic position of the third connection 83 is rotationally symmetric about axis A3). Rotation about axis A1 can also be provided to the article 30 by using a first connection 81 of different forms having two kinematic positions, for example, 180 degrees apart. This would thus provide rotation of the article 30 between different kinematically defined positions in the working volume 11 with different rotational degrees of freedom.
[0228] It should be understood that the kinematic connection features of each of the connections 81, 82, and 83 shown in the above figures can be reversed from one side of the connection to the other. The movement of one side of each of connections 81, 82, and 83 relative to the other side can be motorized or manually operated. For example... Figure 25 and Figure 27 The linear movement of the shaft 65 shown within the shaft housing 64 can be motorized, while Figure 26 The rotational movement shown can be manual. Alternatively, Figure 26 The rotational movement shown can be provided by controlling the machine 10 to move the probe 20 into lateral contact with the calibration article 30, thereby causing the lower support member 50 to rotate about axis 65 relative to the base support member 60; only a gentle lateral contact is required, which will not be sufficient to remove the calibration article 30 from the upper support member 40.
[0229] Using the support arrangement 90, the machine 10 can be used to move the calibration article 30 to cover most of the working volume 11, using the split kinematics of the second connection 82 to produce both flat and angled runs. Figure 18 The support arrangement 90) places the article 30 in many positions, as well as in only one position (such as...). Figure 4 Compared to (as shown), a much higher level of accuracy can be achieved with machine 10. Alternatively, a single, complex calibration artifact covering more of the volume could be used, but such an artifact is bulky, heavy, inconvenient to carry, and not convenient for on-site calibration of the machine.
[0230] The first connection 81 described above can be replaced by a fixed and / or rigid connection, while the second connection 82 and the third connection 83 are as previously described. In this way, the upper support member 40 will effectively form part of the calibration article 30, while the support arrangement 90 will essentially consist only of the lower support member 50 and the base support member 60. This will still be a useful embodiment of the invention because it will still allow the calibration article 30 to move between multiple different kinematic positions, and it will also still allow the calibration article 30 to be easily coupled to and disengaged from the support arrangement 90 via the second connection 82. This is true even though the second connection 82 only provides a single kinematic position of the calibration article 30 relative to the lower support member 50, because multiple kinematic positions are still available to the article 30 via the third connection 83 between the lower support member 50 and the base support member 60.
[0231] It should be understood that the absolute angular differences between different indexing positions are not important, because the purpose of the support arrangement 90 is only to provide different positions for calibrating the article 30. However, if these angular differences are measured independently, they can also be used in the cost function of the optimization routine by comparing angles such as those determined by machine 10 with the independently measured angles.
[0232] It should be understood that while the repeatability provided by various kinematic connections is useful, this is not the sole, or even the primary, reason for favoring the use of kinematic connections. In this respect, it is useful that the parts can be decoupled and recoupled back to the same repeatable relative positions. However, repeatability in a metric sense is not particularly necessary; more useful is repeatability that is at least sufficient to ensure that sensing element 26 establishes a sensing relationship with calibration element 36 (thus enabling servo zeroing), even based on a pre-written control routine executed by controller 15, meaning that the features are at least approximately in their expected positions. Therefore, no additional probing is required beforehand to determine the position of calibration element 36.
[0233] Alternatively, the kinematic properties of various connections may contribute more to the stability provided by kinematic connections than to their repeatability. In this respect, as explained in more detail above, kinematic connections provide a precise form of constraint, thereby preventing the kind of swaying or other types of uncontrolled movement associated with connections that provide excessive constraint. During the collection of calibration data, swaying of the calibration article 30 between two different positions would be undesirable because the position of the calibration member 36 would not be constant, and this potential problem is overcome by using a kinematically defined position.
[0234] However, it should be understood that the characteristics of kinematic connections independently provide useful benefits such as stability, repeatability, and determinism. For example, stability can be provided simply by tightly clamping a non-kinematic connection, but this sacrifices repeatability; for example, simply clamping two flat plates together to conform them to each other would mean that it is no longer known where the calibration member 36 will be placed within the working volume 11. Another advantage of using kinematic connections is that the connected components can be easily disconnected and reconnected to each other in different configurations (due to the precise nature of the constraints) without manual intervention. This enables the automation of the process of disconnecting, moving, and reconnecting the individual components of the support arrangement 90, such as the shaft 65 associated with the third connection 83 between the base support member 60 and the lower support member 50 as described above. Kinematic connections can be easily disconnected (e.g., without manually loosening the clamps) and then reformed, knowing that the reformed connection will be stable (the connected components will not wobble or slip), without the need for tightening clamps or similar rigid constraints.
[0235] To ensure clarity, the diagrams cited above are essentially illustrative. Figures 33 to 36 A more realistic embodiment is shown, in which the same reference numerals are used for the same parts, so that they do not need to be described in detail. Figure 33 and Figure 36 The calibration article 30 shown includes gauge block 38, which is not shown in previous figures of the calibration article 30. Gauge block 38 can be relatively small, for example, about 10 mm in each dimension, and can be configured such that the calibration article 30 can be used not only for the aforementioned rotational type calibration routines using calibration ball 34, but also for verification or certification routines using gauge block 38 (similar to those described above regarding...). Figure 30 and Figure 31 As described in calibration article 30a, this results in a very versatile form of calibration article that can serve multiple purposes within a single calibration routine.
[0236] like Figure 33 As shown, the support arrangement 90 can be easily placed on any existing object in the workspace without having to remove them first. For example, in Figure 33 In this configuration, a support arrangement 90 is positioned above a workpiece loading system 70, which includes a track 72 and workpiece support members 74 movable along the track 72. Other noteworthy features include the use of asymmetry in the various sections of the support arrangement 90 to provide balance and prevent damage, and the use of magnets to provide preload between the two halves of each coupling 81, 82, 83. Advantageously, it can be seen that calibration members 36 are recessed within the plate 32 of the calibration article 30 for protection, making them less susceptible to accidental displacement.
[0237] It should be understood that calibration article 30 does not need to provide multiple calibration elements 36 (multiple calibration points). Calibration article 30 may provide only a single calibration point, while multiple calibration points are generated through the operation of support arrangement 90.
[0238] One or more temperature sensors may be disposed within the calibration plate 32, and these temperature sensors may also be mounted on the calibration plate. These temperature sensors can be used to perform thermal compensation or correction, or temperature-based compensation or correction, on the pre-calibrated ball spacing data used in the second part of the optimization described above. The calibrated spacing is measured at a specific temperature, and these spacings will also change as the operating temperature varies due to the expansion and contraction of the article 30. This can be compensated for by the temperature values from the temperature sensors.
[0239] Probe 20, described above, corresponds to the SP25 modular scanning probe system available from Renishaw; however, it should be understood that other types of probe systems are also suitable for use in embodiments of the invention. Non-contact probes, such as optical probes or camera probes, can be used. The sensor used to provide a signal that depends on the position of a calibration point (e.g., the center of calibration member 36) in the coordinate system of the fixed platform 14 relative to a reference point (e.g., the center of sensing member 26) in the coordinate system of the moving platform 12 can be, for example, a fixed-vision-based system arranged on one side of the working volume.
[0240] However, the design of the SP25 scanning probe is advantageous in the context of this invention because it provides dual support when the sensing member 26 contacts the calibration member 36. In this respect, errors can be introduced when rotating the probe 20, as gravity causes the probe 20 to deform at an angle relative to gravity. The SP25 probe's stylus support (scanning module 22) forms a pivot on one side (through the interaction between the sensing member 26 and the calibration member 36 during rotational movement) and a second pivot on the other side via a spring. The probe, with its stylus 23 supported by two pivot points (one at each end), reduces bending forces on the probe 20 and makes the probe less susceptible to forces caused by gravity.
[0241] Using a deflectable stylus as a position sensor is preferred over position sensors of the type such as a linear variable differential transformer (LVDT) because LVDTs have inherent friction, and therefore their readings are not always accurate. Probes with deflectable styluses overcome this problem. Furthermore, by utilizing a deflectable stylus 23 with clustered stylus balls 24 as described herein, very small diameter calibration balls 34 (or vice versa), such as 3 mm or 6 mm, can be used. Such a small-scale LVDT cluster arrangement is not feasible. Additionally, a bulky sensor arrangement near the rotation point would limit the range of angles the probe can rotate; in the embodiments described herein, the large structure is spaced apart from the rotation point, thus allowing for a larger rotation angle.
[0242] Although the servo zero-position loop has been described above as designed to maintain zero deflection or zero offset (which is equivalent to zero distance between the calibration point and the reference point), it can alternatively be operated to maintain a predetermined or known deflection that can be any fixed value; this can still be referred to as the zero-position. This was already anticipated to some extent in the example where the zero-position is set to [0 0 300] µm, since in that example the zero-position in the Z direction (in the sensor coordinate system) is non-zero. But even the X and Y zero-position deflection values can be non-zero. Even a time-varying target position can be used for the zero-position servo loop, as long as how that target position changes over time is known. This information will effectively form part of the calibration data for finding new model parameters in optimization routines.
[0243] Referring again to the XYZABC coordinate system described above, the center of the moving coordinate system is typically the center of platform 12. Therefore, a "probe offset" is added to move the origin to the center of sensing element 26. Thus, the change in ABC will result in a rotation about sensing element 26. A separate calibration routine can be performed to determine the probe offset (e.g., by touching around a calibration ball to determine the position of sensing element 26). However, it should be understood that it is not important that the rotation is not exactly around the zero position of the probe tip of sensing element 26, because the servo zero-position loop will continuously adjust for any such errors. In fact, if the servo zero-position loop is extremely fast and efficient, the rotation can be around any point, because it is known that the servo zero-position loop will bring it to where it should be.
[0244] The servo loops used in Figure 15 (especially the servo zero-position loop) should ideally operate continuously, just like traditional analog servo loops. However, in practice, these servo loops will be their digital and clock-controlled versions, resulting in a clock signal that operates, for example, every 0.5 ms, which is actually as close to continuous as possible within hardware and processing constraints.
[0245] As mentioned above, the length of the support can be derived from encoder readings using scale and offset parameters. In addition, each support can be laser-mapped before use using a laser calibration device (such as Renishaw's XL-80) to create an error map (or lookup table) between the leg length (at multiple extensions) derived from the scale / offset parameters and the actual length measured by the laser calibrator. This mapping can be applied over the length value calculated from the scale / offset parameters.
[0246] In the above embodiments, calibration data was collected for all calibration points and then processed together in an optimization routine. Alternatively, it is possible to analyze the calibration data associated with each calibration ball or calibration article location separately, while optimizing the model parameters after each analysis. It should also be understood that minimizing a first objective function and maximizing a second objective function defined in the opposite sense to the first objective function are considered equivalent. The objective function may also be referred to as a loss function or cost function, and the optimization routine may also be referred to as an optimization method or optimization algorithm.
[0247] It should be understood that this invention can be applied not only to machine calibration, but also to machine verification, certification, or performance checks. The terms calibration method, calibration article, calibration component, calibration data, calibration point, etc., used herein should be interpreted broadly according to the intended application and are therefore not limited to calibration. In other words, the concepts described herein are suitable not only for updating model parameters (calibration) but also for checking or verifying model parameters (verification or certification). Therefore, these terms should be understood in the context of calibrating or otherwise characterizing a machine. As an example, the term calibration article includes, within its scope, measuring instrument articles. The terms target point, target article, and target component can be used instead of calibration point, calibration article, and calibration component, respectively.
[0248] A machine controller for controlling the operation of a coordinate positioning machine may be a dedicated electronic control system and / or may include a computer operating under the control of a computer program. For example, the machine controller may include a real-time controller for providing low-level instructions to the coordinate positioning machine and a PC for operating the real-time controller. It should be understood that the operation of the coordinate positioning machine can be controlled by a program operating on the machine, particularly by a program operating on the coordinate positioning machine controller (e.g., controller 15). Such a program may be stored on a computer-readable medium or may be embodied, for example, in a downloadable data signal provided, such as from an internet website. The appended claims should be construed as covering the program itself, or as a record on a medium, or as a signal, or in any other form.
Claims
1. A support arrangement for supporting an article within a coordinate positioning machine, the support arrangement being used for calibrating or otherwise characterizing the machine, wherein, The support arrangement is adapted to provide multiple kinematically defined positions of the article within the machine via multiple kinematic couplings arranged in series between the machine and the article.
2. The support arrangement as described in claim 1, wherein, Each of the plurality of kinematically defined positions differs from or differs from at least one other kinematically defined position in at least one rotational degree of freedom.
3. The support arrangement as described in claim 1 or 2, wherein, Each of the plurality of kinematically defined positions differs from or is at least two rotational degrees of freedom from at least one other kinematically defined position.
4. The support arrangement as described in claim 1, 2, or 3, wherein, The calibration article can be easily connected to the support arrangement via a predetermined connection in the series, such as the final connection in the series sequentially from machine to article, and can be easily disconnected from the support arrangement.
5. The support arrangement as described in any of the preceding claims, wherein, At least one connection in the series is arranged at an angle relative to at least one adjacent connection in the series.
6. The support arrangement as described in claim 5 when dependent on claim 4, wherein, The at least one connection arranged at a certain angle includes the predetermined connection.
7. The support arrangement as described in claim 5 or 6, wherein, The angle mentioned is an acute angle.
8. The support arrangement as described in any of the preceding claims, wherein, Each of the connections is adapted to provide at least one kinematically defined relative position.
9. The support arrangement as described in any of the preceding claims, wherein, At least one connection is adapted to provide relative positions with multiple kinematic definitions.
10. The support arrangement of claim 9, comprising a motion system operable to disengage the at least one coupled member, maintain support while moving, or at least allow the member to move relative to each other to another kinematically defined relative position, and then operable to recouple the member at the new kinematically defined relative position.
11. The support arrangement as described in claim 9 or 10, wherein, Each of at least two of the connections is adapted to provide multiple kinematically defined relative positions.
12. The support arrangement as described in claim 11, wherein, Each of at least two of the connections provides a different number of kinematically defined relative positions.
13. The support arrangement as described in any one of claims 9 to 12, wherein, The relative positions defined by the plurality of kinematics are different from each other in at least one rotational degree of freedom.
14. The support arrangement as described in claim 13, wherein, The relative positions of the multiple kinematic definitions are essentially different from each other only in one degree of freedom.
15. The support arrangement as described in claim 13 or 14, wherein, The rotational degrees of freedom are about an axis orthogonal to the connection.
16. The support arrangement as described in claim 13, 14, or 15 when dependent on claim 5, wherein, At least two of the connections are adapted to provide this rotational degree of freedom and are arranged at an angle relative to each other.
17. The support arrangement as described in any one of claims 13 to 16 when dependent on claim 10, wherein, The motion system includes a rotation mechanism for providing or at least allowing rotation about the rotational degree of freedom.
18. The support arrangement as described in claim 17, wherein, The rotating mechanism is either power-driven or passively operable, for example, by controlling the machine to push the connected components relative to each other around the rotating mechanism.
19. The support arrangement as described in any of the preceding claims, comprising at least three of the connections.
20. The support arrangement as described in claim 19, wherein, The at least three connections form at least two pairs of connections, wherein the angle between one pair of connections is substantially the same as the angle between the other pair of connections, thereby enabling the first and last connections of the at least three connections to be arranged in parallel.
21. The support arrangement as described in any of the preceding claims, wherein, The product in question is a calibration product.
22. The support arrangement as described in claim 21, wherein, The product in question is a verification or certification product, such as a measuring instrument product.
23. The support arrangement as described in any of the preceding claims, comprising a plurality of support members connected in series between the machine and the article of manufacture via the plurality of connections, wherein, Each of the plurality of connections is disposed between a different pair of adjacent support members or between a support member and the article.
24. The support arrangement as claimed in claim 23, comprising a rigid connection between the support arrangement and the machine.
25. The support arrangement as described in any of the preceding claims, comprising a first support member and a second support member, wherein, The first connection in the connection is defined between the first member and the article and is adapted to provide at least one kinematically defined position of the article relative to the first support member, and wherein the second connection in the connection is defined between the first support member and the second support member and is adapted to provide multiple kinematically defined positions of the first support member relative to the second support member.
26. The support arrangement as described in claim 25, comprising a third support member, wherein, The third connection in the connection is defined between the second support member and the third support member and is adapted to provide a plurality of kinematically defined positions of the second support member relative to the third support member.
27. The support arrangement as claimed in claim 26 when dependent on claim 17, wherein, This rotating mechanism is configured in association with the third connection.
28. A kit comprising a support arrangement as described in any of the preceding claims and at least one calibration article.
29. The kit of claim 28, comprising multiple different calibration articles or different types of calibration articles.
30. The kit of claim 29, wherein, At least one of the plurality of calibration articles is a verification or certification article, such as a measuring instrument article.
31. A coordinate positioning machine, the coordinate positioning machine comprising the kit as described in claim 28, 29 or 30.
Citation Information
Patent Citations
Metrology apparatus
WO2007144573A1
Coordinate positioning machine
WO2017174966A1
Coordinate positioning machine
WO2019073246A1
Coordinate positioning machine
WO2021074625A1