Nothing Special   »   [go: up one dir, main page]

GB2632405A - Coordinate positioning machine - Google Patents

Coordinate positioning machine Download PDF

Info

Publication number
GB2632405A
GB2632405A GB2311762.5A GB202311762A GB2632405A GB 2632405 A GB2632405 A GB 2632405A GB 202311762 A GB202311762 A GB 202311762A GB 2632405 A GB2632405 A GB 2632405A
Authority
GB
United Kingdom
Prior art keywords
machine
parameters
platform
computer
coordinate positioning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
GB2311762.5A
Other versions
GB202311762D0 (en
Inventor
Mark Angood Stephen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renishaw PLC
Original Assignee
Renishaw PLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renishaw PLC filed Critical Renishaw PLC
Priority to GB2311762.5A priority Critical patent/GB2632405A/en
Publication of GB202311762D0 publication Critical patent/GB202311762D0/en
Priority to PCT/GB2024/052023 priority patent/WO2025027329A1/en
Publication of GB2632405A publication Critical patent/GB2632405A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q11/00Accessories fitted to machine tools for keeping tools or parts of the machine in good working condition or for cooling work; Safety devices specially combined with or arranged in, or specially adapted for use in connection with, machine tools
    • B23Q11/0003Arrangements for preventing undesired thermal effects on tools or parts of the machine
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B21/00Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
    • G01B21/02Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness
    • G01B21/04Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness by measuring coordinates of points
    • G01B21/042Calibration or calibration artifacts
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B21/00Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
    • G01B21/02Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness
    • G01B21/04Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness by measuring coordinates of points
    • G01B21/045Correction of measurements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B5/00Measuring arrangements characterised by the use of mechanical techniques
    • G01B5/0011Arrangements for eliminating or compensation of measuring errors due to temperature or weight
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B5/00Measuring arrangements characterised by the use of mechanical techniques
    • G01B5/0011Arrangements for eliminating or compensation of measuring errors due to temperature or weight
    • G01B5/0014Arrangements for eliminating or compensation of measuring errors due to temperature or weight due to temperature
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B5/00Measuring arrangements characterised by the use of mechanical techniques
    • G01B5/004Measuring arrangements characterised by the use of mechanical techniques for measuring coordinates of points
    • G01B5/008Measuring arrangements characterised by the use of mechanical techniques for measuring coordinates of points using coordinate measuring machines
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37211Measure temperature, compensate cmm program for temperature
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39192Compensate thermal effects, expansion of links
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49175Compensate for errors in cmm, especially mirror errors, not flat enough
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49207Compensate thermal displacement using measured distance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49219Compensation temperature, thermal displacement

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Automatic Control Of Machine Tools (AREA)
  • Numerical Control (AREA)

Abstract

A method is provided for compensating for thermal or temperature-related effects in a coordinate positioning machine, the geometry of the machine being characterized by a set of model parameters, wherein the method involves applying an adjustment to one or more of the parameters of the model based on a measure of temperature. The adjustment may be applied to one or more of the parameters alone or in combination, and either before or after applying them to the relevant machine coordinates. The machine coordinates may comprise a set of actuator encoder readings. The thermal compensation adjustments may be multiplicative, additive, or a combination of these, and the set of model parameters can be used to determine the pose of the machine. The coordinate positioning machine may be a hexapod having six actuators arranged in parallel (figure 1).

Description

Coordinate Positioning Machine The present invention relates to a coordinate positioning machine. The present invention relates in particular, but not exclusively, to a non-Cartesian coordinate positioning machine such as a hexapod or an articulated robot.
According to a first aspect of the present invention, there is provided a method of compensating for thermal or temperature-related effects in a coordinate positioning machine, wherein the geometry of the machine is characterised by a set of model parameters, and wherein the method comprises applying an adjustment to one or more of the parameters of the model based on a measure of temperature.
An adjustment may be applied to one or more of the parameters either alone or in combination.
An adjustment may be applied to one or more of the parameters either before or after applying them to the relevant machine coordinates.
The machine coordinates may comprise a set of actuator encoder readings.
The thermal compensation may be applied based on a thermal model of the machine or the relevant part thereof The thermal compensation may be applied based on one or more thermal compensation parameters that form part of the set of model parameters.
The thermal compensation adjustments may be multiplicative, additive, or a combination of these.
The method may comprise using temperature information from at least one temperature sensor on or associated with the relevant machine part, for example approximate a length or angle measuring transducer, or a temperature sensor located in a suitable location in or near a working volume of the machine.
The method may comprise using or applying the set of model parameters to determine the pose of the machine.
The machine may comprise a first platform that is moveable relative to a second platform.
The first platform may be a moving platform and the second platform may be a fixed platform.
The coordinate positioning machine may be a non-Cartesian and/or parallel kinematic machine, such as a hexapod having six (e.g. linear) actuators arranged in parallel or an articulated arm having a plurality of (e.g. rotary) actuators arranged in series.
According to a second aspect of the present invention, there is provided a computer program which, when run by a computer or a machine controller, causes the computer or machine controller to perform a method according to the first aspect of the present invention.
According to a third aspect of the present invention, there is provided a computer-readable medium having stored therein computer program instructions for controlling a computer or a machine controller to perform a method according to the first aspect of the present invention.
According to a fourth aspect of the present invention, there is provided a computer or machine controller configured to perform a method according to the first aspect of the present invention.
Reference will now be made, by way of example, to the accompanying drawings, in which: Figure 1 is schematic illustration of a non-Cartesian coordinate positioning machine; Figure 2 is a schematic illustration of a bottom-up arrangement for a non-Cartesian coordinate positioning machine, corresponding to the arrangement of Figure 1; Figure 3 is a schematic illustration of a top-down arrangement, which is an alternative to the bottom-up arrangement of Figure 2; and Figure 4 is a schematic illustration of a Cartesian coordinate positioning machine.
A non-Cartesian coordinate positioning machine 10 is illustrated schematically in Figure 1. The coordinate positioning machine 10 generally comprises a moveable platform 12 and a fixed platform 14 that are supported and moved relative to each other by a plurality of telescopic or extendable legs 16 provided between them.
The fixed platform 12 forms part of a fixed structure of the machine 10. The moveable and fixed platforms 12, 14 can also be referred to as stages (or structures or parts), and the extendable legs 16 can also be referred to as struts (or actuators). Where there are six such extendable legs 16 (as illustrated in Figure 2), the machine 10 is commonly called a hexapod.
The extendable legs 16 are typically mounted on the platforms 12, 14 via ball joints 18, with each leg 16 either having its own ball joint 18 at one or both ends thereof (as illustrated in Figure 2) or sharing a ball joint 18 with an adjacent leg 16 at one or both ends. Each extendible leg 16 is typically formed as a pair of tubes, with one tube being moved telescopically within the other by a drive mechanism (e.g. linear motor) to provide extension and retraction of the extendible leg 16, as indicated by the arrows within each extendible leg 16 and as described in more detail in WO 2017/174966. A degree of separation between the drive and metrology parts of each strut can also be provided, as described in WO 2007/144573. It is also possible to provide a drive arrangement that is not only separate from but also different to the metrology arrangement, as described in WO 2019/073246.
Various relative positions between the moveable platform 12 and the fixed platform 14 can be achieved by extending the legs 16 by differing amounts. The relative position at any instant is monitored by a plurality of length-measuring transducers 17, with one such transducer for each extendable leg 16. Each length-measuring transducer 17 may comprise an encoder scale paired with a readhead, with the encoder scale being mounted suitably to one of the pair of telescopic tubes and the readhead mounted suitably on the other. Extension of the leg 16 thus causes the encoder scale to move past the readhead thereby allowing the length of the extendible leg 16 to be measured (or derived from measurements).
A machine controller 15 operates to set the length of each extendible leg 16 to provide the required relative movement between the platforms 12, 14. By having six such length-measuring transducers 17, the relative position can be measured in six corresponding respective degrees of freedom (three translational degrees of freedom and three rotational degrees of freedom).
A workpiece 19 is mounted on the lower (fixed) platform 14 and a measurement probe 13 is mounted on the upper (moveable) platform 12. A working volume (or operating volume) 11 is defined between the upper (moveable) platform 12 and the lower (fixed) platform 14, with the measurement probe 13 being positioned (i.e. moved to a desired position) in the working volume 11 by operation of the extendible legs 16. The arrangement of Figure 1 can be referred to as a "bottom-up" arrangement because the extendible legs 16 extend up from the fixed platform 14 to the moveable platform 12. This arrangement is illustrated more schematically in Figure 2.
Alternatively, as illustrated schematically in Figure 3, with a "top-down" arrangement the extendible legs 16 extend down from the fixed structure 14 to the moveable platform 12, with the measurement probe 13 mounted to a lower surface of the moveable platform 12 and a workpiece mounted to another part of the fixed structure 14 below that. These types of arrangement are discussed in more detail in WO 2019/073246, which also describes the use of a non-hexapod drive arrangement in combination with an independent hexapod metrology arrangement.
A measurement probe 13 is just one example of an operating tool that can be mounted on the moveable platform 12 to enable an operation to be performed on the workpiece 19. Where a measurement probe 13 is used, the coordinate positioning machine 10 can be referred to also as a coordinate measuring machine. Depending on the intended application, the operating tool can be adapted for measuring, probing or scanning in the case of a coordinate measuring machine, or machining or drilling in the case of a machine tool. It is also possible to mount the workpiece 19 on the moveable platform 12 and the measurement probe 13 (or other operating tool) on the fixed platform 14.
The coordinate positioning machine 10 of Figure 1 can be referred to as a non-Cartesian coordinate positioning machine because, in contrast to a Cartesian machine such as a traditional three-axis (X, Y, Z) coordinate measuring machine (described below with reference to Figure 4), its axes are not arranged orthogonally according to a Cartesian coordinate system. The coordinate positioning machine 10 of Figure 1 can be considered to have six axes of movement (or six drive axes), corresponding to (and defined by) the six extendable legs 16. In this sense, an axis of a coordinate positioning machine can be considered to relate to a degree of freedom that is sensed (e.g. by a transducer or encoder), noting that an axis can be linear or rotary, and that a coordinate positioning machine can have a combination of linear and rotary axes.
The coordinate positioning machine 10 of Figure 1 can also be referred to as a "parallel kinematic" coordinate positioning machine, because its axes of movement are arranged in parallel. This is to be contrasted with a traditional three-axis Cartesian coordinate measuring machine, which can be referred to as a "serial kinematic" coordinate positioning machine because its axes of movement are arranged instead in series. Another type of serial kinematic machine is an inspection robot or a manual articulating arm, with multiple articulating arm members connected in series by multiple rotary joints.
Each joint or axis in a coordinate positioning machine contributes a positional error or uncertainty. In a serial kinematic machine, because of the serial nature of the linkages these errors are cumulative. Whilst this accumulation of positional errors does not occur in the same sense with a parallel kinematic machine such as that shown in Figure 1, regardless of machine type it is important to calibrate the machine in order to map out these errors or uncertainties.
Calibration of any type of non-Cartesian machine is a significant challenge, and particularly so for a parallel kinematic machine such as that illustrated in Figure 1 having a plurality of axes that are not fixed relative to one another and that can combine in complicated ways to position the moving platform 12 in the working volume 11. Calibration of a Cartesian machine is typically more straightforward, because such a machine has three well-defined axes that are fixed relative to one another in an orthogonal arrangement, with each axis being largely independent of another. With a parallel kinematic machine such as that of Figure 1, the position and orientation of each axis depends on the position and orientation of each other axis, so that the calibration will be different for each different machine pose, thus posing a significant calibration challenge.
Many calibration techniques have in common the goal of specifying a parametric model of the machine concerned, in which a plurality of model parameters is used to characterise the machine's geometry. The model parameters can also be referred to as machine parameters. Uncalibrated values are initially assigned to these parameters as a starting point for the machine geometry. During the calibration, the machine is moved into a variety of different poses (based on the current estimates of the machine parameters). For each pose, a calibrated measuring device is used to measure the actual pose, so that an indication of the en-or between the assumed machine pose and the actual machine pose can be determined.
The task of calibrating the machine then amounts to determining a set of values for the machine various parameters that minimises the errors, using known numerical optimisation or error minimisation techniques. An example of such a technique is the well-known Levenberg-Marquardt algorithm, which uses a least-squares approach to minimise errors knowing the derivatives of the errors according to each parameter optimised ("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 a maximum likelihood approach.
For a machine such as illustrated in Figure 1, these machine parameters might include various geometrical parameters such as the separation between each of the ball joints 18 and the offset of each of the length-measuring transducers or encoders 17 (with the reading from the encoder plus the calibrated offset being used to derive the actual strut extension), as well as various mechanical parameters such as joint compliance and friction. When properly calibrated, with all of these machine parameters known, it is possible to predict with more certainty in what position the measurement probe 13 (or other tool) will actually be when the various struts (or actuators) 16 are commanded by the machine controller 15 to extend by different respective amounts. In other words, the machine parameters resulting from such a calibration provide a more accurate characterisation of the machine geometry.
However, even using standard calibration techniques, due to the challenges associated with calibrating a non-Cartesian machine such as shown in Figure 1, errors will typically remain. As a result, the absolute accuracy of such a non-Cartesian machine is typically not as good as that of a traditional three-axis Cartesian machine, for example, meaning that a non-Cartesian machine typically finds use more as a comparator (comparing measurements made on a master workpiece with measurements made on workpieces coming off a production line in a factory, i.e. providing relative coordinate measurements) rather than as a coordinate measuring machine per se (i.e. providing absolute coordinate measurements).
Each extendible leg 16 would typically be associated with more than one model parameter. In this respect, in one example of a model for the machine geometry, the main mod& parameters used to characterise an extendible leg 16 (or indeed any actuator, whether linear or rotary) would be a scale parameter and an offset parameter. In simple terms, the total the length of an extendible leg 16 is determined by multiplying the raw encoder reading (from the corresponding length-measuring transducer 17) by the scale parameter and then adding the offset parameter, i.e. L = (k x r) + o, where L is the length of the extendible leg 15, k is the scale parameter, r is the linear encoder reading (a machine coordinate as referred to elsewhere herein), and o is the offset parameter, or alternatively adding the offset parameter to the encoder reading and then multiplying by the scale parameter, i.e. L = k x (r + o).
In this way, strut lengths (or changes in length) can be derived by applying the relevant model parameters to the raw values from the length-measuring transducers 17 shown in Figure 1. In other types of machine architecture having rotary joints instead of linear joints, such as in an articulated robot arm, the raw values would be from the angle encoders associated with the various rotary joints. This type of information, such as the linear encoder reading r in the above-mentioned expression L = (k x r) + o, can also be referred to as a set of machine coordinates, which in this context is intended to mean a set of coordinates or values representing the state of the machine (e.g. encoder readings for each joint) for a particular machine pose. In this respect, the various physical motion axes of a machine, such as the linear axes defined by the extendible legs 16 of a hexapod machine 10 or the rotary axes of an articulated robot arm, can be considered herein to define a machine coordinate system, hence the term machine coordinates in this context.
According to an embodiment of the present invention, thermal compensation can be applied to one of both of the scale and offset parameters mentioned above, for example based on readings from a temperature sensor on the extendible leg 16 (preferably near to the length-measuring transducer 17), or a temperature sensor located in a suitable location in or near the working volume 11, to account for the effect that temperature has on the length of the extendible leg 16. A calibration routine could be repeated for different temperatures, with the thermal compensation values effectively forming part of the model parameter set. Alternatively, temperature compensation could be applied based on a separate thermal model of the extendible leg 16. Thermal compensation can be applied to one or more of the parameters of the model, either alone or in combination, and either before or after applying them to the machine coordinates to determine the pose of the machine 10. For example, L = t r) + o) or L = ((tl x k x r) + t2 x o) where t, tl and t2 are thermal compensation parameters. The thermal compensation parameters could be multiplicative, additive, or a combination of both.
In addition to these six pairs of scale/offset parameters for the six extendible legs 16, for the machine 10 of Figure 10 there would be six further parameters representing the separation between the three balls of the ball joints 18 of the fixed platform 14 (three between pairs of balls along each side of the triangle and another three between pairs of balls at each corner of the triangle), and another six separation parameters for the ball joints 18 of the moving platform 12. There would typically also be three offset values that define where the origin of the tool frame is relative to the centre of the moving platform 12, for example the offset to a tool centre point. Again, thermal compensation can be applied to one or more of these parameters in a manner analogous to that described above for the scale and offset parameters of the extendible legs 16, using one or more temperature sensors on the fixed and/or moving platforms 14, 12, or a temperature sensor located in a suitable location in or near the working volume 11.
This amounts to at least 27 model parameters for a relatively simple model of the machine 10, and it is these model parameters that are optimised by a calibration routine. Before calibration, estimates for these parameters would be determined by other means, to use as a starting point for the calibration. It will be appreciated that the model parameters described above are intended only to be representative, purely for explanatory purposes, and it will be appreciated that different and/or additional model parameters can be included to define a more complicated machine geometry. For example, there may be additional model parameters to define the geometry of the fixed outer frame in a top-down arrangement as shown in Figure 3 (referred to above as the fixed structure 14), or this can be considered to be a separate model with its own set of model parameters, and thermal compensation can be applied to the parameters of this part of the overall model too An objective function can be defined which takes the raw encoder readings from each of the extendible legs 16, and which determines the length of each extendible leg 16 from these raw encoder readings using the scale and offset parameters mentioned above. The length of each extendible leg 16, together with the ball joint parameters that define the geometry of the platforms 12, 14, plus any other relevant model parameters, enables the expected relative position of the platforms 12, 24 to be determined. Use of the above-mentioned offset values for the reference point (e.g. tool centre point) would locate the reference point relative to the moving platform 12, and this would enable the position of the reference point to be determined relative to the fixed platform (i.e. within the machine 10). This expected position (based on the model parameters) would be compared against an actual measurement of the position (for example using a separate position sensing system) to derive an error value representing the difference between what has been measured and what is expected from the current model parameters.
The goal of the optimisation routine would then be to minimise the objective function (or the error returned by the objective function) by iteratively perturbing the model parameters in a way that will reduce the overall error at each iteration, or at least over a plurality of iterations if not for every iteration. By reducing this error function, a new set of model parameters is produced that fits or matches the recorded data (e.g. actuator extension values) better than the set of model parameters from the previous iteration. This iterative process can be repeated until a predetermined test is met, such as when the overall deviation (or error) is below a predetermined threshold. The final set of model parameters produced by the optimisation routine thereby characterises the geometry of the machine better than the existing or previous set of model parameters, and in doing so the machine 10 will be better calibrated than before and will accordingly be more accurate in terms of positioning performance.
It will be appreciated that the present invention is not limited to use in connection with a hexapod coordinate positioning machine, and would also be applicable to other types of coordinate positioning machine such as the Cartesian coordinate measuring machine 1 shown in Figure 4. The coordinate measuring machine 1 of Figure 4 has three linear axes x, y and z that are arranged orthogonally to one another in series, with the z axis being aligned with gravity g. A measurement probe 3 is mounted to a vertical column 8 which is slidable in the z direction within a carriage 2; this relative movement defines the z axis. The carriage 2 is itself supported on a horizontal beam 7 and is slidable in the y direction along the beam 7; this relative movement defines the y axis. In turn, the beam 7 is slidable in the x direction on a pair of rails 6; this relative movement defines the x axis. A computer controller 5 operates to drive each component (column 8, carriage 2, beam 7) along its corresponding respective axis to the appropriate position to place the measurement probe 3 in the desired position within a working volume 11 of the machine 1, and to move it into a sensing relationship with a workpiece 9 which is supported on a fixed platform 4. The measurement probe 3 may be mounted to the vertical column 8 in a fixed manner as shown, or it may be mounted to the vertical column 8 via an articulated probe head as shown in the inset part of Figure 4, with the articulated probe head providing two rotational axes a, b in addition to the three linear axes x, y, z Each axis x, y, z is driven independently of each other axis by a corresponding respective motor (not shown). Each axis x, y, z is also encoded or sensed independently of each other axis by a corresponding respective sensor, with the outputs from the sensors being used to determine the position of the measurement probe 3 (or whatever tool is attached to the column 8). Each axis is provided with a length-measuring transducer having an encoder scale (depicted schematically in Figure 4 as a series of parallel lines along each axis) paired with a readhead (not shown). To measure relative movement between two parts, the encoder scale is mounted suitably to one part and the readhead is mounted suitably on the other part.
As mentioned above in respect of the hexapod coordinate positioning machine 10 of Figure 1, the coordinate measuring machine 1 of Figure 4 would likewise have a geometry which can be characterised by a set of model parameters, and thermal compensation can be applied to one or more of these model parameters in an entirely equivalent way to what is described above. Accordingly, a detailed
description is not required.
A machine controller for controlling the operation of the coordinate positioning machine may be a dedicated electronic control system and/or may comprise a computer operating under control of a computer program. For example, the machine controller may comprise a real-time controller to provide low-level instructions to the coordinate positioning machine, and a PC to operate the real-time controller. It will be appreciated that operation of the coordinate positioning machine can be controlled by a program operating on the machine, and in particular by a program operating on a coordinate positioning machine controller such as the controller 5 or 15. Such a program can be stored on a computer-readable medium, or could, for example, be embodied in a signal such as a downloadable data signal provided from an Internet website. The appended claims are to be interpreted as covering a program by itself, or as a record on a carrier, or as a signal, or in any other form.

Claims (15)

  1. CLAIMS1. A method of compensating for thermal or temperature-related effects in a coordinate positioning machine, wherein the geometry of the machine is characterised by a set of model parameters, and wherein the method comprises applying an adjustment to one or more of the parameters of the model based on a measure of temperature.
  2. 2. A method as claimed in claim 1, wherein an adjustment is applied to one or more of the parameters either alone or in combination.
  3. 3. A method as claimed in claim 1 or 2, wherein an adjustment is applied to one or more of the parameters either before or after applying them to the relevant machine coordinates.
  4. 4. A method as claimed in claim 3, wherein the machine coordinates comprise a set of actuator encoder readings.
  5. 5. A method as claimed in any preceding claim, wherein the thermal compensation is applied based on a thermal model of the machine or the relevant part thereof
  6. 6. A method as claimed in any preceding claim, wherein the thermal compensation is applied based on one or more thermal compensation parameters that form part of the set of model parameters.
  7. 7. A method as claimed in any preceding claim, wherein the thermal compensation adjustments are multiplicative, additive, or a combination of these.
  8. 8. A method as claimed in any preceding claim, using temperature information from at least one temperature sensor on or associated with the relevant machine part, for example approximate a length or angle measuring transducer, or a temperature sensor located in a suitable location in or near a working volume of the machine.
  9. 9. A method as claimed in any preceding claim, comprising using or applying the set of model parameters to determine the pose of the machine.
  10. 10. A method as claimed in any preceding claim, wherein the machine comprises a first platform that is moveable relative to a second platform.
  11. 11. A method as claimed in claim 10, wherein the first platform is a moving platform and the second platform is a fixed platform.
  12. 12. A method as claimed in any preceding claim, wherein the coordinate positioning machine is a non-Cartesian and/or parallel kinematic machine, such as a hexapod having six actuators arranged in parallel or an articulated arm having a plurality of actuators arranged in series.
  13. 13. A computer program which, when run by a computer or a machine controller, causes the computer or machine controller to perform a method as claimed in any preceding claim.
  14. 14. A computer-readable medium having stored therein computer program instructions for controlling a computer or a machine controller to perform a method as claimed in any one of claims 1 to 12.
  15. 15. A computer or machine controller configured to perform a method as claimed in any one of claims 1 to 12.
GB2311762.5A 2023-07-31 2023-07-31 Coordinate positioning machine Pending GB2632405A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
GB2311762.5A GB2632405A (en) 2023-07-31 2023-07-31 Coordinate positioning machine
PCT/GB2024/052023 WO2025027329A1 (en) 2023-07-31 2024-07-31 Calibration and thermal compensation of a coordinate positioning machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB2311762.5A GB2632405A (en) 2023-07-31 2023-07-31 Coordinate positioning machine

Publications (2)

Publication Number Publication Date
GB202311762D0 GB202311762D0 (en) 2023-09-13
GB2632405A true GB2632405A (en) 2025-02-12

Family

ID=87929891

Family Applications (1)

Application Number Title Priority Date Filing Date
GB2311762.5A Pending GB2632405A (en) 2023-07-31 2023-07-31 Coordinate positioning machine

Country Status (2)

Country Link
GB (1) GB2632405A (en)
WO (1) WO2025027329A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100325907A1 (en) * 2009-06-30 2010-12-30 Hexagon Metrology Ab Coordinate measurement machine with vibration detection
WO2017080612A1 (en) * 2015-11-13 2017-05-18 Hexagon Technology Center Gmbh Error compensation for coordinate measuring machines using a reference module
EP3502611A1 (en) * 2017-12-21 2019-06-26 Hexagon Technology Center GmbH Machine geometry monitoring
EP4310441A1 (en) * 2022-07-18 2024-01-24 Hexagon Technology Center GmbH Active thermal management for coordinate measuring machines

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH672089A5 (en) 1985-12-16 1989-10-31 Sogeva Sa
WO1997043703A1 (en) * 1996-05-10 1997-11-20 Automated Precision, Inc. Real time machine tool error correction using global differential wet modeling
US6269284B1 (en) * 1997-05-09 2001-07-31 Kam C. Lau Real time machine tool error correction using global differential wet modeling
EP1414626A4 (en) 2001-07-05 2008-08-13 Microdexterity Systems Inc Parallel manipulator
GB0612914D0 (en) 2006-06-16 2006-08-09 Renishaw Plc Metrology apparatus
US7753642B2 (en) 2007-09-06 2010-07-13 Ohio University Apparatus and method associated with cable robot system
US10830567B2 (en) 2016-04-08 2020-11-10 Renishaw Plc Coordinate positioning machine
GB2568459B (en) 2017-10-13 2020-03-18 Renishaw Plc Coordinate positioning machine

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100325907A1 (en) * 2009-06-30 2010-12-30 Hexagon Metrology Ab Coordinate measurement machine with vibration detection
WO2017080612A1 (en) * 2015-11-13 2017-05-18 Hexagon Technology Center Gmbh Error compensation for coordinate measuring machines using a reference module
EP3502611A1 (en) * 2017-12-21 2019-06-26 Hexagon Technology Center GmbH Machine geometry monitoring
EP4310441A1 (en) * 2022-07-18 2024-01-24 Hexagon Technology Center GmbH Active thermal management for coordinate measuring machines

Also Published As

Publication number Publication date
GB202311762D0 (en) 2023-09-13
WO2025027329A1 (en) 2025-02-06

Similar Documents

Publication Publication Date Title
CN108351203B (en) Method for providing accurate coordinate measurement, independent reference module and coordinate measuring machine
US7131207B2 (en) Workpiece inspection method
CN105793666B (en) Calibrating a coordinate measuring machine using a calibration laser head at a tool center point
JP6420317B2 (en) Method and apparatus for inspecting a workpiece
JP6189921B2 (en) Method and apparatus for inspecting a workpiece
US20050283989A1 (en) Method of inspecting workpieces on a measuring machine
US20170363403A1 (en) Method and apparatus for inspecting workpieces
CN113195176B (en) Manufacturing system and method
WO1993008449A1 (en) Measuring the accuracy of multi-axis machines
WO2023170166A1 (en) System and method for calibration of an articulated robot arm
JP6735735B2 (en) A coordinate measuring method and apparatus for inspecting a workpiece, the method comprising generating a measurement correction value using a reference shape known not to substantially deviate from an ideal form, Coordinate measuring method and apparatus for inspecting a workpiece
JP7599393B2 (en) Method for calculating correction parameters for motion error in machine tool, machine tool
GB2632405A (en) Coordinate positioning machine
Klobucar et al. Automatic high resolution measurement set-up for calibrating precise line scales
EP3101384B1 (en) Calibration method for calibrating the drive axis of a machine tool
WO2024023310A1 (en) Coordinate positioning machine
WO2024157012A1 (en) Coordinate positioning machine
GB2632400A (en) Coordinate positioning machine
GB2632401A (en) Coordinate positioning machine
Wang et al. Measurement of 18 positioning errors using a simple laser Doppler displacement meter