Recherche Images Maps Play YouTube Actualités Gmail Drive Plus »
Connexion
Les utilisateurs de lecteurs d'écran peuvent cliquer sur ce lien pour activer le mode d'accessibilité. Celui-ci propose les mêmes fonctionnalités principales, mais il est optimisé pour votre lecteur d'écran.

Brevets

  1. Recherche avancée dans les brevets
Numéro de publicationUS20110178763 A1
Type de publicationDemande
Numéro de demandeUS 13/006,458
Date de publication21 juil. 2011
Date de dépôt14 janv. 2011
Date de priorité20 janv. 2010
Autre référence de publicationCN102597895A, CN102597896A, CN102639959A, CN102639959B, CN102656422A, CN102687433A, CN102712091A, CN102713498A, CN102713498B, CN102713499A, CN102713499B, CN102713500A, CN102713500B, CN102725702A, CN102725702B, CN102771079A, CN102844642A, CN102844642B, CN102859314A, CN104075638A, DE112011100193B4, DE112011100193T5, DE112011100289B4, DE112011100289T5, DE112011100291T5, DE112011100292B4, DE112011100292T5, DE112011100293T5, DE112011100295T5, DE112011100296T5, DE112011100299T5, DE112011100300T5, DE112011100302T5, DE112011100304B4, DE112011100304T5, DE112011100308T5, DE112011100310B4, DE112011100310B8, DE112011100310T5, US8001697, US8028432, US8171650, US8276286, US8601702, US8763266, US8942940, US9009000, US20110173823, US20110173824, US20110173825, US20110173826, US20110173828, US20110175745, US20110178753, US20110178754, US20110178755, US20110178758, US20110178762, US20110178765, US20110178766, US20130025143, WO2011090887A1, WO2011090889A1, WO2011090890A1, WO2011090891A1, WO2011090894A1, WO2011090894A4, WO2011090896A1, WO2011090897A1, WO2011090897A4, WO2011090898A1, WO2011090899A1, WO2011090900A1, WO2011090901A1, WO2011090902A1, WO2011090903A1, WO2011090903A4, WO2011091096A2, WO2011091096A3, WO2011091096A4
Numéro de publication006458, 13006458, US 2011/0178763 A1, US 2011/178763 A1, US 20110178763 A1, US 20110178763A1, US 2011178763 A1, US 2011178763A1, US-A1-20110178763, US-A1-2011178763, US2011/0178763A1, US2011/178763A1, US20110178763 A1, US20110178763A1, US2011178763 A1, US2011178763A1
InventeursRobert E. Bridges, David H. Parker
Cessionnaire d'origineFaro Technologies, Inc.
Exporter la citationBiBTeX, EndNote, RefMan
Liens externes: USPTO, Cession USPTO, Espacenet
Use of inclinometers to improve relocation of a portable articulated arm coordinate measuring machine
US 20110178763 A1
Résumé
A method of relocating a portable articulated arm coordinate measuring machine (AACMM) from a first location to a second location, wherein the AACMM has, at the first location, a first origin point and a first frame of reference and, at the second location, a second origin point and a second frame of reference, the method including the steps of: measuring an amount of tilt of the portable AACMM along two perpendicular directions, each of which are approximately perpendicular to a gravity vector, with the portable AACMM in each of the first and second locations; measuring a first target and a second target with the portable AACMM in the first location to obtain, in the first frame of reference, a first set of x, y, and z coordinates and a second set of x, y, and z coordinates; measuring the first target and the second target with the portable AACMM in the second location to obtain, in the second frame of reference, a third set of x, y, and z coordinates and a fourth set of x, y, and z coordinates; and finding x, y, and z coordinates of the second origin point with respect to the first frame of reference, wherein the x, y, and z coordinates of the second origin point are found using the first, second, third, and fourth sets of x, y, and z coordinates but without using additional x, y, and z coordinates of a third target measured with the AACMM at the first location and at the second location.
Images(13)
Previous page
Next page
Revendications(16)
1. A method of relocating a portable articulated arm coordinate measuring machine (AACMM) from a first location to a second location, wherein the AACMM has, at the first location, a first origin point and a first frame of reference and, at the second location, a second origin point and a second frame of reference, the method comprising the steps of:
measuring, with the portable AACMM in the first location, an amount of tilt of the portable AACMM along a first set of two perpendicular directions, each direction approximately perpendicular to a gravity vector;
measuring, with the portable AACMM in the second location, an amount of tilt of the portable AACMM along a second set of two perpendicular directions, each direction approximately perpendicular to the gravity vector;
measuring a first target and a second target with the portable AACMM in the first location to obtain, in the first frame of reference, a first set of x, y, and z coordinates and a second set of x, y, and z coordinates;
measuring the first target and the second target with the portable AACMM in the second location to obtain, in the second frame of reference, a third set of x, y, and z coordinates and a fourth set of x, y, and z coordinates; and
finding x, y and z coordinates of the second origin point with respect to the first frame of reference, wherein the x, y, and z coordinates of the second origin point are found using the first, second, third, and fourth sets of x, y, and z coordinates but without using additional x, y, and z coordinates of a third target measured with the AACMM at the first location and at the second location.
2. The method of claim 1, further comprising the step of:
identifying a first gravity frame of reference of the AACMM in the first location as that frame of reference resulting from application of the measured amount of tilt along the first set of two perpendicular directions to rotate x, y, and z axes of the first frame of reference into transformed x, y, and z axes of the first gravity frame of reference in such a way that the transformed z axis of the first gravity frame of reference is aligned with the gravity vector.
3. The method of claim 2, further comprising the step of:
identifying a second gravity frame of reference of the AACMM in the second location as that frame of reference resulting from application of the measured amount of tilt along the second set of two perpendicular directions to rotate x, y, and z axes of the second frame of reference into transformed x, y, and z axes of the second gravity frame of reference in such a way that the transformed z axis of the second gravity frame of reference is aligned with the gravity vector.
4. The method of claim 3, further comprising the step of:
determining a yaw angle of the portable AACMM in the second location, wherein the determined yaw angle comprises an amount of rotation about the transformed z axis of the second gravity frame of reference to make the transformed x and y axes of the second gravity frame of reference parallel to the transformed x and y axes of the first gravity frame of reference.
5. The method of claim 3, further comprising the steps of:
converting the first set of x, y, and z coordinates into a first set of transformed x, y, and z coordinates in the first gravity frame of reference;
converting the second set of x, y, and z coordinates into a second set of transformed x, y, and z coordinates in the first gravity frame of reference;
converting the third set of x, y, and z coordinates into a third set of transformed x, y, and z coordinates in the second gravity frame of reference; and
converting the fourth set of x, y, and z coordinates into a fourth set of transformed x, y, and z coordinates in the second gravity frame of reference.
6. The method of claim 5, further comprising the step of:
calculating the z coordinate of the second origin point in the first frame of reference using the transformed z coordinates from the first set of transformed x, y, and z coordinates and the third set of transformed x, y, and z coordinates.
7. The method of claim 6, further comprising the step of:
calculating the z coordinate of the second origin point in the first frame of reference using the transformed z coordinates from the second set of transformed x, y, and z coordinates and the fourth set of transformed x, y, and z coordinates.
8. The method of claim 7, further comprising the step of:
calculating the z coordinate of the second origin point in the first frame of reference by taking an average of the z coordinate calculated in claim 6 and the z coordinate calculated in claim 7.
9. The method of claim 5, further comprising the step of:
finding the x and y coordinates of the second origin point in the first frame of reference by solving two equations simultaneously, wherein the first equation includes transformed x and y coordinates from the first and third sets of transformed x, y, and z coordinates and the second equation includes transformed x and y coordinates from the second and fourth sets of transformed x, y, and z coordinates.
10. The method of claim 4, further comprising the step of:
transforming coordinate data collected by the AACMM in the first location and the second location into a common global frame of reference.
11. A computer program product comprising a storage medium having computer-readable program code embodied thereon, which when executed by a computer causes the computer to implement a method of relocating a portable articulated arm coordinate measuring machine (AACMM) from a first location to a second location, wherein the AACMM has, at the first location, a first origin point and a first frame of reference and, at the second location, a second origin point and a second frame of reference, the method including the steps of:
measuring, with the portable AACMM in the first location, an amount of tilt of the portable AACMM along a first set of two perpendicular directions, each direction approximately perpendicular to a gravity vector;
measuring, with the portable AACMM in the second location, an amount of tilt of the portable AACMM along a second set of two perpendicular directions, each direction approximately perpendicular to the gravity vector;
identifying a first gravity frame of reference of the AACMM in the first location as that frame of reference resulting from application of the measured amount of tilt along the first set of two perpendicular directions to rotate x, y, and z axes of the first frame of reference into transformed x, y, and z axes of the first gravity frame of reference in such a way that the transformed z axis of the first gravity frame of reference is aligned with the gravity vector;
identifying a second gravity frame of reference of the AACMM in the second location as that frame of reference resulting from application of the measured amount of tilt along the second set of two perpendicular directions to rotate x, y, and z axes of the second frame of reference into transformed x, y, and z axes of the second gravity frame of reference in such a way that the transformed z axis of the second gravity frame of reference is aligned with the gravity vector;
measuring a first target and a second target with the portable AACMM in the first location to obtain, in the first frame of reference, a first set of x, y, and z coordinates and a second set of x, y, and z coordinates;
measuring the first target and the second target with the portable AACMM in the second location to obtain, in the second frame of reference, a third set of x, y, and z coordinates and a fourth set of x, y, and z coordinates;
finding x, y and z coordinates of the second origin point with respect to the first frame of reference, wherein the x, y, and z coordinates of the second origin point are found using the first, second, third, and fourth sets of x, y, and z coordinates but without using additional x, y, and z coordinates of a third target measured with the AACMM at the first location and at the second location; and
determining a yaw angle of the portable AACMM in the second location, wherein the determined yaw angle comprises an amount of rotation about the transformed z axis of the second gravity frame of reference to make the transformed x and y axes of the second gravity frame of reference parallel to the transformed x and y axes of the first gravity frame of reference.
12. The computer program product of claim 11, in which the method further comprises the step of:
calculating the z coordinate of the second origin point in the first frame of reference using the transformed z coordinates from the first set of transformed x, y, and z coordinates and the third set of transformed x, y, and z coordinates.
13. The computer program product of claim 12, in which the method further comprises the step of:
calculating the z coordinate of the second origin point in the first frame of reference using the transformed z coordinates from the second set of transformed x, y, and z coordinates and the fourth set of transformed x, y, and z coordinates.
14. The computer program product of claim 13, in which the method further comprises the step of:
calculating the z coordinate of the second origin point in the first frame of reference by taking an average of the z coordinate calculated in claim 12 and the z coordinate calculated in claim 13.
15. The computer program product of claim 11, in which the method further comprises the step of:
finding the x and y coordinates of the second origin point in the first frame of reference by solving two equations simultaneously, wherein the first equation includes transformed x and y coordinates from the first and third sets of transformed x, y, and z coordinates and the second equation includes transformed x and y coordinates from the second and fourth sets of transformed x, y, and z coordinates.
16. The computer program product of claim 11, in which the method further comprises the step of:
transforming coordinate data collected by the AACMM in the first location and the second location into a common global frame of reference.
Description
    CROSS-REFERENCE TO RELATED APPLICATIONS
  • [0001]
    The present application claims the benefit of provisional application No. 61/296,555 filed Jan. 20, 2010, the content of which is hereby incorporated by reference in its entirety.
  • BACKGROUND
  • [0002]
    The present disclosure relates to coordinate measuring machines, and more particularly to a portable articulated arm coordinate measuring machine having one or more inclinometers located on or within the portable articulated arm coordinate measuring machine and which may be used to improve the accuracy of a relocation of the portable articulated arm coordinate measuring machine between different locations.
  • [0003]
    Portable articulated arm coordinate measuring machines (AACMMs) have found widespread use in the manufacturing or production of parts where there is a need to rapidly and accurately verify the dimensions of the part during various stages of the manufacturing or production (e.g., machining) of the part. Portable AACMMs represent a vast improvement over known stationary or fixed, cost-intensive and relatively difficult to use measurement installations, particularly in the amount of time it takes to perform dimensional measurements of relatively complex parts. Typically, a user of a portable AACMM simply guides a probe along the surface of the part or object to be measured. The measurement data are then recorded and provided to the user. In some cases, the data are provided to the user in visual form, for example, three-dimensional (3-D) form on a computer screen. In other cases, the data are provided to the user in numeric form, for example when measuring the diameter of a hole, the text “Diameter=1.0034” is displayed on a computer screen.
  • [0004]
    An example of a prior art portable articulated arm CMM is disclosed in commonly assigned U.S. Pat. No. 5,402,582 ('582), which is incorporated herein by reference in its entirety. The '582 patent discloses a 3-D measuring system comprised of a manually-operated articulated arm CMM having a support base on one end and a measurement probe at the other end. Commonly assigned U.S. Pat. No. 5,611,147 ('147), which is incorporated herein by reference in its entirety, discloses a similar articulated arm CMM. In the '147 patent, the articulated arm CMM includes a number of features including an additional rotational axis at the probe end, thereby providing for an arm with either a two-two-two or a two-two-three axis configuration (the latter case being a seven axis arm).
  • [0005]
    What is needed is a portable AACMM that includes one or more inclinometers located on or within the portable AACMM and which may be used to improve the accuracy of a relocation of the portable AACMM, and/or may be used to reduce the number of targets (e.g., nests, seats, or fixtures) required for the portable AACMM to complete a relocation of itself when measurement of a relatively large part by the portable AACMM requires that the portable AACMM to be physically moved between different locations to complete the measurement.
  • SUMMARY OF THE INVENTION
  • [0006]
    A method of relocating a portable articulated arm coordinate measuring machine (AACMM) from a first location to a second location, wherein the AACMM has, at the first location, a first origin point and a first frame of reference and, at the second location, a second origin point and a second frame of reference, the method including the steps of: measuring an amount of tilt of the portable AACMM along two perpendicular directions, each of which are approximately perpendicular to a gravity vector, with the portable AACMM in each of the first and second locations; measuring a first target and a second target with the portable AACMM in the first location to obtain, in the first frame of reference, a first set of x, y, and z coordinates and a second set of x, y, and z coordinates; measuring the first target and the second target with the portable AACMM in the second location to obtain, in the second frame of reference, a third set of x, y, and z coordinates and a fourth set of x, y, and z coordinates; and finding x, y, and z coordinates of the second origin point with respect to the first frame of reference, wherein the x, y, and z coordinates of the second origin point are found using the first, second, third, and fourth sets of x, y, and z coordinates but without using additional x, y, and z coordinates of a third target measured with the AACMM at the first location and at the second location.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • [0007]
    Referring now to the drawings, exemplary embodiments are shown which should not be construed to be limiting regarding the entire scope of the disclosure, and wherein the elements are numbered alike in several FIGURES:
  • [0008]
    FIG. 1, including FIGS. 1A and 1B, are perspective views of a portable articulated arm coordinate measuring machine (AACMM) having embodiments of various aspects of the present invention therewithin;
  • [0009]
    FIG. 2, including FIGS. 2A-2D taken together, is a block diagram of electronics utilized as part of the AACMM of FIG. 1 in accordance with an embodiment;
  • [0010]
    FIG. 3, including FIGS. 3A and 3B taken together, is a block diagram describing detailed features of the electronic data processing system of FIG. 2 in accordance with an embodiment;
  • [0011]
    FIG. 4 illustrates the portable AACMM of FIG. 1 in a first or initial location during performance of a method of relocation of the portable AACMM using two targets according to embodiments of the present invention;
  • [0012]
    FIG. 5 illustrates the portable AACMM of FIG. 1 in a second location during performance of the method of relocation using two targets according to embodiments of the present invention;
  • [0013]
    FIG. 6 is a front view of the mathematical coordinates of the portable AACMM of FIG. 1 in the first or initial location of FIG. 4 during performance of the method of relocation using two targets according to embodiments of the present invention;
  • [0014]
    FIG. 7 is a front view of the mathematical coordinates of the portable AACMM of FIG. 1 in the second location of FIG. 5 during performance of the method of relocation using two targets according to embodiments of the present invention;
  • [0015]
    FIG. 8 is a top view of the mathematical coordinates of the portable AACMM of FIG. 1 in the first or initial location of FIG. 4 during performance of the method of relocation using two targets according to embodiments of the present invention;
  • [0016]
    FIG. 9 is a top view of the mathematical coordinates of the portable AACMM of FIG. 1 in the second location of FIG. 5 during performance of the method of relocation using two targets according to embodiments of the present invention; and
  • [0017]
    FIG. 10 is a flow chart of steps within a method for performing a relocation of a portable AACMM between at least two different physical locations while the portable AACMM is measuring a relatively large part.
  • DETAILED DESCRIPTION
  • [0018]
    Embodiments of the present invention include one or more inclinometers located on or within a portable AACMM and which may be used to improve the accuracy of a relocation of the portable AACMM, and/or may be used to reduce the number of targets (e.g., nests, seats, or fixtures) required for the portable AACMM to complete a relocation of the portable AACMM when measurement of a relatively large part by the portable AACMM requires that the portable AACMM to be physically moved between different locations to complete the measurement.
  • [0019]
    FIGS. 1A and 1B illustrate, in perspective, a portable articulated arm coordinate measuring machine (AACMM) 100 according to various embodiments of the present invention, an articulated arm being one type of coordinate measuring machine. As shown in FIGS. 1A and 1B, the exemplary AACMM 100 may comprise a six or seven axis articulated measurement device having a measurement probe housing 102 coupled to an arm portion 104 of the AACMM 100 at one end. The arm portion 104 comprises a first arm segment 106 coupled to a second arm segment 108 by a first grouping of bearing cartridges 110 (e.g., two bearing cartridges). A second grouping of bearing cartridges 112 (e.g., two bearing cartridges) couples the second arm segment 108 to the measurement probe housing 102. A third grouping of bearing cartridges 114 (e.g., three bearing cartridges) couples the first arm segment 106 to a base 116 located at the other end of the arm portion 104 of the AACMM 100. Each grouping of bearing cartridges 110, 112, 114 provides for multiple axes of articulated movement. Also, the measurement probe housing 102 may comprise the shaft of the seventh axis portion of the AACMM 100 (e.g., a cartridge containing an encoder system that determines movement of the measurement device, for example a probe 118, in the seventh axis of the AACMM 100). In use of the AACMM 100, the base 116 is typically affixed to a work surface.
  • [0020]
    Each bearing cartridge within each bearing cartridge grouping 110, 112, 114 typically contains an encoder system (e.g., an optical angular encoder system). The encoder system (i.e., transducer) provides an indication of the position of the respective arm segments 106, 108 and corresponding bearing cartridge groupings 110, 112, 114 that all together provide an indication of the position of the probe 118 with respect to the base 116 (and, thus, the position of the object being measured by the AACMM 100 in a certain frame of reference—for example a local or global frame of reference). The arm segments 106, 108 may be made from a suitably rigid material such as but not limited to a carbon composite material for example. A portable AACMM 100 with six or seven axes of articulated movement (i.e., degrees of freedom) provides advantages in allowing the operator to position the probe 118 in a desired location within a 360° area about the base 116 while providing an arm portion 104 that may be easily handled by the operator. However, it should be appreciated that the illustration of an arm portion 104 having two arm segments 106, 108 is for exemplary purposes, and the claimed invention should not be so limited. An AACMM 100 may have any number of arm segments coupled together by bearing cartridges (and, thus, more or less than six or seven axes of articulated movement or degrees of freedom).
  • [0021]
    The probe 118 is detachably mounted to the measurement probe housing 102, which is connected to bearing cartridge grouping 112. A handle 126 is removable with respect to the measurement probe housing 102 by way of, for example, a quick-connect interface. The handle 126 may be replaced with another device (e.g., a laser line probe, a bar code reader), thereby providing advantages in allowing the operator to use different measurement devices with the same AACMM 100. In exemplary embodiments, the probe housing 102 houses a removable probe 118, which is a contacting measurement device and may have different tips 118 that physically contact the object to be measured, including, but not limited to: ball, touch-sensitive, curved and extension type probes. In other embodiments, the measurement is performed, for example, by a non-contacting device such as a laser line probe (LLP). In an embodiment, the handle 126 is replaced with the LLP using the quick-connect interface. Other types of measurement devices may replace the removable handle 126 to provide additional functionality. Examples of such measurement devices include, but are not limited to, one or more illumination lights, a temperature sensor, a thermal scanner, a bar code scanner, a projector, a paint sprayer, a camera, or the like, for example.
  • [0022]
    As shown in FIGS. 1A and 1B, the AACMM 100 includes the removable handle 126 that provides advantages in allowing accessories or functionality to be changed without removing the measurement probe housing 102 from the bearing cartridge grouping 112. As discussed in more detail below with respect to FIG. 2, the removable handle 126 may also include an electrical connector that allows electrical power and data to be exchanged with the handle 126 and the corresponding electronics located in the probe end.
  • [0023]
    In various embodiments, each grouping of bearing cartridges 110, 112, 114 allows the arm portion 104 of the AACMM 100 to move about multiple axes of rotation. As mentioned, each bearing cartridge grouping 110, 112, 114 includes corresponding encoder systems, such as optical angular encoders for example, that are each arranged coaxially with the corresponding axis of rotation of, e.g., the arm segments 106, 108. The optical encoder system detects rotational (swivel) or transverse (hinge) movement of, e.g., each one of the arm segments 106, 108 about the corresponding axis and transmits a signal to an electronic data processing system within the AACMM 100 as described in more detail herein below. Each individual raw encoder count is sent separately to the electronic data processing system as a signal where it is further processed into measurement data. No position calculator separate from the AACMM 100 itself (e.g., a serial box) is required, as disclosed in commonly assigned U.S. Pat. No. 5,402,582 ('582).
  • [0024]
    The base 116 may include an attachment device or mounting device 120. The mounting device 120 allows the AACMM 100 to be removably mounted to a desired location, such as an inspection table, a machining center, a wall or the floor for example. In one embodiment, the base 116 includes a handle portion 122 that provides a convenient location for the operator to hold the base 116 as the AACMM 100 is being moved. In one embodiment, the base 116 further includes a movable cover portion 124 that folds down to reveal a user interface, such as a display screen.
  • [0025]
    In accordance with an embodiment, the base 116 of the portable AACMM 100 contains or houses an electronic data processing system that includes two primary components: a base processing system that processes the data from the various encoder systems within the AACMM 100 as well as data representing other arm parameters to support three-dimensional (3-D) positional calculations; and a user interface processing system that includes an on-board operating system, a touch screen display, and resident application software that allows for relatively complete metrology functions to be implemented within the AACMM 100 without the need for connection to an external computer.
  • [0026]
    The electronic data processing system in the base 116 may communicate with the encoder systems, sensors, and other peripheral hardware located away from the base 116 (e.g., a LLP that can be mounted to the removable handle 126 on the AACMM 100). The electronics that support these peripheral hardware devices or features may be located in each of the bearing cartridge groupings 110, 112, 114 located within the portable AACMM 100.
  • [0027]
    FIG. 2 is a block diagram of electronics utilized in an AACMM 100 in accordance with an embodiment. The embodiment shown in FIG. 2 includes an electronic data processing system 210 including a base processor board 204 for implementing the base processing system, a user interface board 202, a base power board 206 for providing power, a Bluetooth module 232, and a base tilt board 208. The user interface board 202 includes a computer processor for executing application software to perform user interface, display, and other functions described herein.
  • [0028]
    As shown in FIG. 2, the electronic data processing system 210 is in communication with the aforementioned plurality of encoder systems via one or more arm buses 218. In the embodiment depicted in FIG. 2, each encoder system generates encoder data and includes: an encoder arm bus interface 214, an encoder digital signal processor (DSP) 216, an encoder read head interface 234, and a temperature sensor 212. Other devices, such as strain sensors, may be attached to the arm bus 218.
  • [0029]
    Also shown in FIG. 2 are probe end electronics 230 that are in communication with the arm bus 218. The probe end electronics 230 include a probe end DSP 228, a temperature sensor 212, a handle/LLP interface bus 240 that connects with the handle 126 or the LLP 242 via the quick-connect interface in an embodiment, and a probe interface 226. The quick-connect interface allows access by the handle 126 to the data bus, control lines, and power bus used by the LLP 242 and other accessories. In an embodiment, the probe end electronics 230 are located in the measurement probe housing 102 on the AACMM 100. In an embodiment, the handle 126 may be removed from the quick-connect interface and measurement may be performed by the laser line probe (LLP) 242 communicating with the probe end electronics 230 of the AACMM 100 via the handle/LLP interface bus 240. In an embodiment, the electronic data processing system 210 is located in the base 116 of the AACMM 100, the probe end electronics 230 are located in the measurement probe housing 102 of the AACMM 100, and the encoder systems are located in the bearing cartridge groupings 110, 112, 114. The probe interface 226 may connect with the probe end DSP 228 by any suitable communications protocol, including commercially-available products from Maxim Integrated Products, Inc. that embody the 1-Wire® communications protocol 236.
  • [0030]
    FIG. 3 is a block diagram describing detailed features of the electronic data processing system 210 of the AACMM 100 in accordance with an embodiment. In an embodiment, the electronic data processing system 210 is located in the base 116 of the AACMM 100 and includes the base processor board 204, the user interface board 202, a base power board 206, a Bluetooth module 232, and a base tilt module 208.
  • [0031]
    In an embodiment shown in FIG. 3, the base processor board 204 includes the various functional blocks illustrated therein. For example, a base processor function 302 is utilized to support the collection of measurement data from the AACMM 100 and receives raw arm data (e.g., encoder system data) via the arm bus 218 and a bus control module function 308. The memory function 304 stores programs and static arm configuration data. The base processor board 204 also includes an external hardware option port function 310 for communicating with any external hardware devices or accessories such as an LLP 242. A real time clock (RTC) and log 306, a battery pack interface (IF) 316, and a diagnostic port 318 are also included in the functionality in an embodiment of the base processor board 204 depicted in FIG. 3.
  • [0032]
    The base processor board 204 also manages all the wired and wireless data communication with external (host computer) and internal (display processor 202) devices. The base processor board 204 has the capability of communicating with an Ethernet network via an Ethernet function 320 (e.g., using a clock synchronization standard such as Institute of Electrical and Electronics Engineers (IEEE) 1588), with a wireless local area network (WLAN) via a LAN function 322, and with Bluetooth module 232 via a parallel to serial communications (PSC) function 314. The base processor board 204 also includes a connection to a universal serial bus (USB) device 312.
  • [0033]
    The base processor board 204 transmits and collects raw measurement data (e.g., encoder system counts, temperature readings) for processing into measurement data without the need for any preprocessing, such as disclosed in the serial box of the aforementioned '582 patent. The base processor 204 sends the processed data to the display processor 328 on the user interface board 202 via an RS485 interface (IF) 326. In an embodiment, the base processor 204 also sends the raw measurement data to an external computer.
  • [0034]
    Turning now to the user interface board 202 in FIG. 3, the angle and positional data received by the base processor is utilized by applications executing on the display processor 328 to provide an autonomous metrology system within the AACMM 100. Applications may be executed on the display processor 328 to support functions such as, but not limited to: measurement of features, guidance and training graphics, remote diagnostics, temperature corrections, control of various operational features, connection to various networks, and display of measured objects. Along with the display processor 328 and a liquid crystal display (LCD) 338 (e.g., a touch screen LCD) user interface, the user interface board 202 includes several interface options including a secure digital (SD) card interface 330, a memory 332, a USB Host interface 334, a diagnostic port 336, a camera port 340, an audio/video interface 342, a dial-up/cell modem 344 and a global positioning system (GPS) port 346.
  • [0035]
    The electronic data processing system 210 shown in FIG. 3 also includes a base power board 206 with an environmental recorder 362 for recording environmental data. The base power board 206 also provides power to the electronic data processing system 210 using an AC/DC converter 358 and a battery charger control 360. The base power board 206 communicates with the base processor board 204 using inter-integrated circuit (I2C) serial single ended bus 354 as well as via a DMA serial peripheral interface (DSPI) 356. The base power board 206 is connected to a tilt sensor and radio frequency identification (RFID) module 208 via an input/output (I/O) expansion function 364 implemented in the base power board 206.
  • [0036]
    Though shown as separate components, in other embodiments all or a subset of the components may be physically located in different locations and/or functions combined in different manners than that shown in FIG. 3. For example, in one embodiment, the base processor board 204 and the user interface board 202 are combined into one physical board.
  • [0037]
    Referring to FIGS. 4-10, embodiments of the present invention include the incorporation of one or more inclinometers within the portable AACMM 100 of FIGS. 1A and 1B to more accurately physically relocate the portable AACMM 100, for example during a measurement of a relatively large part or object (e.g., an automobile) that requires the portable AACMM 100 to be moved between different locations to adequately complete the part measurement. The portable AACMM 100 of FIGS. 1A and 1B is shown in simplified form in FIGS. 4-5. The inclinometers may be used to improve the accuracy of relocation of the portable AACMM 100, and/or may be used to reduce the number of targets (e.g., nests, seats, or fixtures) required for the portable AACMM 100 to complete a relocation of itself when measurement of a relatively large part requires that the portable AACMM 100 be physically moved between two or more different locations with respect to the part being measured by the portable AACMM 100.
  • [0038]
    In exemplary embodiments, an inclinometer, which may have at least one measuring axis, but having two measuring axes in exemplary embodiments, may be placed within or on the portable AACMM 100. The inclinometer may be placed anywhere in or on the portable AACMM 100, but may be placed within the bearing cartridge grouping 114 located above the base 116. Another alternative embodiment is to place the inclinometer within the base 116 of the portable AACMM 100. Thus, in these exemplary embodiments, the inclinometer is not visible in FIG. 4 or 5. The inclinometer may be used to improve the accuracy of a relocation of the portable AACMM and/or to reduce the number of targets required for the portable AACMM 100 to complete a relocation of itself.
  • [0039]
    Relocation is typically defined to be a procedure in which the portable AACMM 100 is moved from an initial or first physical location with respect to the part being measured to one or more subsequent different physical locations with respect to the part being measured while retaining the same global frame of reference during the measurement process. By performing a relocation, a portable AACMM 100 may access a greater portion (preferably all or the entirety) of a relatively large object (e.g., an automobile) for measurement purposes. Without performing a relocation, the portable AACMM 100 being held in only one physical location may not be able to access, and thus measure, the entire part or object, as the total distance between the measurement probe 118 and the base 116 of the portable AACMM 100 with the arm segments 106, 108 fully extended may typically be only several feet, as is common with modern portable AACMMs 100, which may not be adequate to measure the entire part. In addition, using previous relocation methods, a minimum of three targets was required to perform relocation. Using a two-axis inclinometer with the method described herein according to embodiments of the present invention, a relocation of the portable AACMM 100 may be obtained using just two targets.
  • [0040]
    A common method of relocation of a portable AACMM 100 is usually referred to as the “leapfrog” method. With this method, three or more targets are placed on a stationary object. A portable AACMM 100 located in a first or initial location is used to measure the coordinates of these three or more targets. The portable AACMM 100 is then moved to a second location, where it is again used to measure the coordinates of the three or more targets. Mathematical methods are used to adjust the frame of reference of the portable AACMM 100 in the second position 430 to that of the portable AACMM 100 in the first location or to some other global frame of reference.
  • [0041]
    A related method of portable AACMM relocation uses targets permanently attached to a grid in the vicinity in which the portable AACMM 100 is used. However, floors typically suffer from thermal expansion and other defects. Another related method has the portable AACMM 100 measure the vertices of a small pyramid, which may be made of a relatively low coefficient of thermal expansion (CTE) material. Such artifacts have the undesirable characteristics of being small and expensive. All of the above methods have the disadvantage of increasing error each time a leapfrog operation is performed. Due to the fact that six degrees of freedom (three translational and three orientational degrees of freedom) must be obtained each time relocation is performed (i.e., for a six axis portable AACMM 100), the resulting errors in the global frame of reference often are about as large as the errors in the portable AACMM 100 itself. With each succeeding leapfrog operation, errors in the global frame of reference increase. Another disadvantage of the above mentioned methods is that they tend to be time-consuming. Usually many targets must be measured to obtain the information needed for a single relocation.
  • [0042]
    In embodiments of the present invention, benefits include improved accuracy and reduced measurement time. In exemplary embodiments, a two-axis inclinometer may be used. In this case, both axes of the inclinometer lie in a plane that is approximately parallel to the floor or other surface (e.g., table top) upon or to which the portable AACMM 100 is mounted. The inclinometer may be placed within the bearing cartridge grouping 114 located above the base 116 of the portable AACMM 100. By then rotating this axis, the readings of the inclinometer can be taken as a function of the rotation angle. By using this information, it is possible to compensate for systematic errors in the inclinometer sensor. After performing this compensation, it is usually possible to limit errors in the inclinometer readings to less than one arc second, even with some relatively inexpensive inclinometers.
  • [0043]
    By using a two-axis inclinometer, two of the six degrees of freedom can be eliminated from the relocation calculations. There are many known mathematical methods that can be used to perform relocation. The most common method fits the collected data to equations that relate the measured coordinates. This type of calculation is known as an optimization or best-fit calculation, and for a specific case in which the portable AACMM 100 is moved to two or more different locations, is often called a “bundle adjustment.”
  • [0044]
    In accordance with embodiments of the present invention, a relatively simple mathematical method demonstrates the performance of a relocation of a portable AACMM 100 using two targets, rather than the usual three (or more) targets as described herein above, for the case in which the portable AACMM 100 is equipped with a dual axis inclinometer. FIG. 4 shows a portable AACMM 100 in its initial physical location, referred to herein as “first position” 400. The portable AACMM 100 is measuring a target referred to herein as “Nest A” 410, and will also measure another target referred to herein as “Nest B” 420 before the portable AACMM 100 is moved to “second position” 430, as shown in FIG. 5. It should be understood that as used herein “first position” and “second position” refer to different physical locations of the entirety of the portable AACMM 100, or that portion of the portable AACMM 100 that out carries the normal part measurement process (for example the arm itself is relocated to different physical locations but a laptop computer remains in the same location throughout). That is, “first position” and “second position” do not refer to the portable AACMM 100 being held in a single physical location while one or more portions of the portable AACMM 100 (e.g., the arm portion 104, the probe 118, etc.) are moved by the user to different positions.
  • [0045]
    The targets 410, 420 may each comprise a relatively rigid device, such as a nest, seat or fixture. The probe tip 118 of the portable AACMM 100 may be placed in a relative secure manner within each nest, seat or fixture (Nest A 410, Nest B 420) during the execution of the method of embodiments of the present invention. The AACMM 100 measures the position of the probe 118 with respect to the origin of the AACMM 100 (which might be located in the base 116, for example) when the AACMM 100 is in first position 400 and the probe 118 is first seated in Nest A 410 and is then seated in Nest B 420.
  • [0046]
    After the portable AACMM 100 is moved to second position 430, as shown in FIG. 5, the portable AACMM 100 will measure the positions of the probe 118 in Nest A 410 and then in Nest B 420. The portable AACMM 100 will use the coordinates of these two measured nests 410, 420, as measured from the AACMM 100 located in first and second positions, together with the information from the dual-axis inclinometer, to place the AACMM measurements made at second position 430 within the global frame of reference, which in this case is the frame of reference of the portable AACMM 100 at first position 400.
  • [0047]
    A method for obtaining this result according to embodiments of this aspect of the present invention is described with reference to FIGS. 6-9. The objective of the calculation is to obtain four quantities: the coordinates of the origin point of the portable AACMM 100 at second position 430 relative to first position 400 [coordinates X, Y, and Z] and the yaw angle δ of the portable AACMM 100 at second position 430. The yaw angle is the angle or rotation of the x and y axes of the portable AACMM 100 at second position 430 (in the gravity frame of reference) to place these axes parallel to the x and y axes at first position 400. In the embodiments of the present invention, the Z axis is in the direction perpendicular to the base 116 of the portable AACMM 110. Typically, the portable AACMM 100 is in an upright position during use (and, thus, during the relocation method of embodiments of the present invention). As such, the Z axis corresponds approximately with the gravity vector. The x, y and z axis vectors can also be seen in the front views of FIGS. 6 and 7, and in the top views of FIGS. 8 and 9.
  • [0048]
    The AACMM 100 has a local frame of reference, which is the frame of reference with which measurements of the articulated arm are referred. For example, in the local frame of reference, a simple choice (shown in FIGS. 6 and 8 for the AACMM in first position 400) is for the local frame of reference to have x, y, z coordinates of (0, 0, 0). As stated hereinabove, in most cases, the AACMM 100 is mounted upright so that the z axis of the local frame of reference is approximately aligned with the gravity vector and the x and y axes are in a plane that is approximately horizontal. The x and y axes of the AACMM 100 will rotate as the arm is rotated about the vertical direction.
  • [0049]
    When the AACMM 100 is moved to second position 430, the z axis in the new local frame of reference will again be approximately aligned with the gravity vector, and the x and y axes will again be in a plane that is approximately horizontal. The x and y axes in the local frame of reference at second position 430 will probably not be parallel to the corresponding x and y axes of the local frame of reference at first position 400. In order to convert the coordinate data collected in positions 1 and 2 by AACMM 100, a method is needed to display the measured data in the same frame of reference. In other words, collected coordinate data needs to be transformed into a common frame of reference.
  • [0050]
    There are many ways to do such a transformation. A simple way is to first convert the local frame of reference of the AACMM 100 at first position 400 into a gravity frame of reference at first position 400. This is done by rotating the z axis in such a way as to align it with the gravity vector. The information needed to perform such a mathematical rotation is provided by the 2-axis inclinometer. Similarly, the local frame of reference of the AACMM 100 at second position 430 can be converted into a gravity frame of reference at second position 430 by using the information provided by the inclinometer. The rotational matrix that is used to rotate the local frame of reference of the AACMM 100 at first position 400 to the gravity frame of reference at first position 400 can also be applied to all of the coordinates measured by the AACMM 100 at first position 400. The result is that all of the measured points are given in the gravity frame of reference of the AACMM 100 at first position 400.
  • [0051]
    The rotational matrix that is used to rotate the local frame of reference of the AACMM 100 at second position 430 to the gravity frame of reference at second position 430 can also be applied to all of the points measured by the AACMM 100 at second position 430. The result is that all of the measured points are given in the gravity frame of reference of the AACMM 100 at second position 430. To move the data measured by the AACMM 100 at second position 430 into the frame of reference of the AACMM 100 at first position 400, two further transformations are needed. First, all of the coordinate data collected by the AACMM 100 at second position 430 needs to be translated or shifted along the x, y, and z directions of the gravity frame of reference of the AACMM 100 at first position 400 by an amount that would cause the origin of the AACMM 100 at second position 430 to coincide with the origin at first position 400. Second, all of the coordinate data needs to be rotated about the gravity vector by an amount that would cause the x and y axes in the gravity frame of reference of the AACMM 100 at second position 430 to be parallel to the corresponding x and y axes in the gravity frame of reference of the AACMM 100 at first position 400. The amount of rotation about the gravity vector is called the yaw angle.
  • [0052]
    To summarize, one way to transform data so that it can be compared in a common frame of reference is to first use the tilt angles measured by the inclinometer to rotate coordinate data into the gravity frame of reference of first position 400, which is the common frame of reference for the combined data. Next, the tilt angles measured by the inclinometer are used to rotate the coordinate data into the gravity frame of reference of second position 430. The data are translated by an appropriate amount in the x, y, and z directions, and the x and y data are rotated about the z axis.
  • [0053]
    Methods for doing rotations and translations of coordinate data are well known to those of ordinary skill in the art. A rotation in three dimensional space may be obtained by multiplying a 3×3 rotation matrix by a 3 element coordinate vector. Translation and rotation steps can be combined in a single 4×4 matrix. Because these methods are so well known, they are not discussed further here.
  • [0054]
    It is also possible to move data collected with the AACMM 100 in two different positions by using different types of transformations. For example, it would be possible to compare the data collected by the AACMM 100 at second position 430 to the local frame of reference of the AACMM 100 at first position 400 rather than to the gravity frame of reference of the AACMM 100 at first position 400. A single matrix rotation is sufficient to transform the data in a gravity frame of reference into a local frame of reference. Similarly, it would be possible to convert coordinate data into an arbitrary global frame of reference. In this case, suitable additional rotations and translations are applied to the coordinate data from the AACMM 100 at the first and second positions. By the same token, it will obvious to one of ordinary skill in the art that additional relocations are possible to a third position, a fourth position, and so forth. The same mathematical methods are used for each successive relocation.
  • [0055]
    Embodiments of the method of the present invention may be embodied in software or firmware that may be stored internal to the AACMM 100, for example, as instructions stored within memory 332 on the user interface board 202 (FIG. 3) or stored within some other memory or other device internal or external to the AACMM 100. The software may then be executed by, e.g., the display processor 328 or another processor, and user instructions along with the results of the method may be visually displayed to the user via the color LCD 338 (FIG. 3) onboard the AACMM 100 or may be conveyed to the user by some other means, visual or otherwise. In the alternative, the method may be stored and executed as software by an external computer (e.g., a laptop) connected with the AACMM 100 as is common in the art, and instructions and results may be displayed on the screen of the laptop computer. In either case, the software that embodies the method of the present invention may be embodied as a utility application for the AACMM 100 that the user may invoke to perform the method of embodiments of the present invention.
  • [0056]
    Referring also to FIG. 10, according to embodiments of the present invention, the method 1000 includes the following steps:
  • [0057]
    The inclinometer is used in a step 1010 to measure the tilt of the portable AACMM 100 along the x and y directions at first and second positions. Then, in step 1020, each of the AACMM readings is corrected to be in the gravity frame of reference, where z in the new AACMM frame of reference coincides with the gravity vector. The new x and y vectors are perpendicular to the gravity vector.
  • [0058]
    In this instance, the tilt sensor is used to measure the tilt in two directions with respect to the gravity vector. This may be done by using a two-axis tilt sensor in the base. Alternatively a single axis tilt sensor may be located in the rotating portion of bearing cartridge grouping 114. In the latter case, the inclinometer is used to measure the tilt angle at two or more positions as the operator rotates the arm in an appropriate way.
  • [0059]
    Next, in step 1030, the coordinates of Nests A and B 410, 420 (in the gravity frame of reference) are read with the portable AACMM 100 at first position 400. These coordinates may be referred to as (xA, yA, zA) and (xB, yB, zB). In step 1040, step 1030 is repeated with the portable AACMM 100 at second position 430 to obtain coordinates (xA′, yA′, zA′) and (xB′, yB′, zB′).
  • [0060]
    The coordinates of the origin point of the portable AACMM 100 at first position 400 are (0, 0, 0). Next, in step 1050, as shown in FIGS. 5 and 6, the coordinate Z of the origin point of the portable AACMM 100 at second position 430 in the global frame of reference can be calculated using Nest A 420 alone with the formula Z=zA′−zA or alternatively using Nest B 420 alone with the formula Z=zB′−zB. To get better accuracy, the average of these two quantities may be taken.
  • [0061]
    As shown in top views of FIGS. 8 and 9, the displacement from the origin of the portable AACMM 100 at first and second positions to Nest A 410 or Nest B 420 can be represented as a two-dimensional vector. In step 1060, the vector components X and Y can be found by solving the following two simultaneous equations, which follow immediately from FIGS. 8 and 9:
  • [0000]

    (X−x A)2+(Y−y A)2=(x A′)2+(y A′)2  (Eq. 1)
  • [0000]

    (X−x B)2+(Y−y B)2=(x B′)2+(y B′)2  (Eq. 2)
  • [0062]
    The analytical solution to Equations 1 and 2 contain many terms. Numerical methods for solving these equations are relatively fast and are preferred. There are two possible solutions for X and Y from these equations, but only one of these solutions will be reasonable, and the other possible solution can be eliminated.
  • [0063]
    The x and y components of the vector from Nest B 420 to Nest A 410 are xA−xB and yA−yB, respectively. Next, in step 1070 the yaw angle θ of the portable AACMM 100 at second position 430 is selected to match these vector x and y components. The errors in the x and y components are given by the following equations:
  • [0000]

    E x=(x A ′−x B′)cos θ+(y A ′−y B′)sin θ−(x A −x B)  (Eq. 3)
  • [0000]

    E y=(x A ′−x B′)(−sin θ)+(y A ′−y B′)cos θ−(y A −y B)  (Eq. 4)
  • [0064]
    To find the relatively best value for 0, the standard method of minimizing the squared error of these two terms may be used in step 1070. In other words, θ can be found by minimizing the error in Ex 2+Ey 2.
  • [0065]
    It should be noted that the order of the actions in FIG. 10 may be changed. For example, step 1010 is to measure tilt of AACMM 100 along x and y directions at first and second positions. However, step 1010 could be modified to measure tilt of AACMM 100 along x and y direction for first position 400 only. Then measurement of x and y directions at second position 430 could be carried out between steps 1030 and 1040.
  • [0066]
    Although a detailed procedure has been given herein above to demonstrate that use of inclinometers in the portable AACMM 100 makes it possible to relocate the portable AACMM 100 using only two targets in accordance with embodiments of the present invention, the specific method of calculation set forth herein is merely exemplary, as other methods may be used to mathematically extract the four relevant parameters for the coordinates of the portable AACMM 100 at second position 430 and for the yaw angle. In addition, an equivalent method may be used to move or relocate the portable AACMM 100 to a third different location, a fourth different location, and so on, although detailed steps have not been given for this, yet these steps should be obvious to one of ordinary skill in the art. Embodiments of this aspect of the present invention have utility in that they improve the accuracy of the relocation process and that they reduce the amount of time required to perform the relocation procedure.
  • [0067]
    The mathematical methods described above provides a fast and accurate method for finding the four quantities X, Y, Z, and a However, these four quantities can be found with other mathematical methods. For example, it is possible to write equations that can be solved using an iterative optimization procedure for all four variables. Therefore, the mathematical computation should not be limited to that described by Equations (1)-(4).
  • [0068]
    Technical effects and benefits include the inclusion of one or more inclinometers located on or within a portable AACMM and which may be used to improve the accuracy of relocation of the portable AACMM, and/or may be used to reduce the number of targets (e.g., nests, seats, or fixtures) required for the portable AACMM 100 to complete a relocation of itself when measurement of a large part by the portable AACMM 100 requires that the portable AACMM 100 to be physically moved between different locations.
  • [0069]
    As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method, or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
  • [0070]
    Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that may contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • [0071]
    A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • [0072]
    Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
  • [0073]
    Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++, C# or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
  • [0074]
    Aspects of the present invention are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, may be implemented by computer program instructions.
  • [0075]
    These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer program instructions may also be stored in a computer readable medium that may direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
  • [0076]
    The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
  • [0077]
    The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, may be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
  • [0078]
    While the invention has been described with reference to example embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include all embodiments falling within the scope of the appended claims. Moreover, the use of the terms first, second, etc. do not denote any order or importance, but rather the terms first, second, etc. are used to distinguish one element from another. Furthermore, the use of the terms a, an, etc. do not denote a limitation of quantity, but rather denote the presence of at least one of the referenced item.
Citations de brevets
Brevet cité Date de dépôt Date de publication Déposant Titre
US1918813 *2 févr. 193218 juil. 1933Jacob KinzyCamera case
US2316573 *1 avr. 194013 avr. 1943W & L E GurleyInstrument case
US2702683 *17 août 195122 févr. 1955Harold L GreenMagnetic holder for gasoline filling spout caps
US2748926 *17 mars 19525 juin 1956Leahy Matthew TMicrometer support
US2924495 *15 sept. 19589 févr. 1960Merz Engineering IncInstrument case
US2966257 *3 nov. 195927 déc. 1960Gen Radio CoInstrument carrying case
US2983367 *25 juin 19589 mai 1961Lee W ParmaterPlural instrument carrying case
US3066790 *13 nov. 19614 déc. 1962American Optical CorpInstrument carrying case
US3458167 *28 déc. 196629 juil. 1969Fmc CorpBalancing mechanism
US4340008 *22 sept. 198020 juil. 1982Mendelson Ralph RTilt indicator for shipping containers
US4379461 *17 janv. 198012 avr. 1983Nilsson Erling SThermographic apparatus
US4424899 *8 mars 198210 janv. 1984Western Electric Co., Inc.Instrument carrying case
US4430796 *3 févr. 198214 févr. 1984Kosaka Laboratory Ltd.Method and apparatus for determining the location of points on a three dimensional thing
US4457625 *13 juil. 19813 juil. 1984Itek CorporationSelf calibrating contour measuring system using fringe counting interferometers
US4506448 *26 oct. 198226 mars 1985British Aerospace Public Limited CompanyTeaching robots
US4537233 *21 juin 198327 août 1985Continental Emsco CompanySpring balance assembly
US4606696 *25 juin 198419 août 1986Slocum Alexander HMechanism to determine position and orientation in space
US4659280 *22 janv. 198521 avr. 1987Gmf Robotics CorporationRobot with balancing mechanism having a variable counterbalance force
US4663852 *19 sept. 198512 mai 1987Digital Electronic Automation, IncActive error compensation in a coordinated measuring machine
US4664588 *3 janv. 198612 mai 1987Applied Robotics Inc.Apparatus and method for connecting and exchanging remote manipulable elements to a central control source
US4676002 *20 déc. 198530 juin 1987Slocum Alexander HMechanisms to determine position and orientation in space
US4714339 *28 févr. 198622 déc. 1987The United States Of America As Represented By The Secretary Of CommerceThree and five axis laser tracking systems
US4790651 *30 sept. 198713 déc. 1988Chesapeake Laser Systems, Inc.Tracking laser interferometer
US4816822 *14 févr. 198628 mars 1989Ryan Instruments, Inc.Remote environmental monitor system
US4882806 *11 juil. 198828 nov. 1989Davis Thomas JCounterbalancing torsion spring mechanism for devices which move up and down and method of setting the torsion springs thereof
US4954952 *2 oct. 19894 sept. 1990Trw Inc.Robotic arm systems
US4996909 *27 mars 19895 mars 1991Vache John PHousing for remote environmental monitor system
US5025966 *7 mai 199025 juin 1991Potter Stephen BMagnetic tool holder
US5027951 *20 juin 19892 juil. 1991Johnson Level & Tool Mfg. Co., Inc.Apparatus and method for packaging of articles
US5189797 *4 mars 19922 mars 1993RomerApparatus for measuring the shape or position of an object
US5205111 *22 avr. 199127 avr. 1993Johnson Level & Tool Mfg. Co., Inc.Packaging method for a level and case
US5211476 *3 mars 199218 mai 1993Allflex Europe S.A.Temperature recording system
US5213240 *6 mai 199125 mai 1993H. Dietz & Company, Inc.Magnetic tool holder
US5219423 *20 nov. 199115 juin 1993Sony CorporationCarrying system
US5239855 *12 juil. 199131 août 1993Hewlett-Packard CompanyPositional calibration of robotic arm joints relative to the gravity vector
US5289264 *25 sept. 199222 févr. 1994Hans SteinbichlerMethod and apparatus for ascertaining the absolute coordinates of an object
US5319445 *8 sept. 19927 juin 1994Fitts John MHidden change distribution grating and use in 3D moire measurement sensors and CMM applications
US5332315 *27 avr. 199226 juil. 1994Gec Avery LimitedApparatus and sensor unit for monitoring changes in a physical quantity with time
US5372250 *24 nov. 199213 déc. 1994Johnson Level & Tool Mfg. Co., Inc.Level and case package
US5373346 *18 oct. 199313 déc. 1994Onset Computer Corp.Data gathering computer and analysis display computer interface system and methodology
US5402582 *23 févr. 19934 avr. 1995Faro Technologies Inc.Three dimensional coordinate measuring apparatus
US5412880 *26 août 19939 mai 1995Faro Technologies Inc.Method of constructing a 3-dimensional map of a measurable quantity using three dimensional coordinate measuring apparatus
US5430384 *22 juil. 19944 juil. 1995Onset Computer Corp.Temperature compensated soil moisture sensor
US5455670 *27 mai 19933 oct. 1995Associated Universities, Inc.Optical electronic distance measuring apparatus with movable mirror
US5510977 *2 août 199423 avr. 1996Faro Technologies Inc.Method and apparatus for measuring features of a part or item
US5528505 *19 sept. 199418 juin 1996RomerPosition-marking method for a machine that measures in three dimensions, and apparatus for implementing the method
US5535524 *27 janv. 199516 juil. 1996Brown & Sharpe Manufacturing CompanyVibration damper for coordinate measuring machine
US5611147 *3 mars 199518 mars 1997Faro Technologies, Inc.Three dimensional coordinate measuring apparatus
US5623416 *6 janv. 199522 avr. 1997Onset Computer CorporationContact closure data logger
US5682508 *23 mars 199528 oct. 1997Onset Computer CorporationUART protocol that provides predictable delay for communication between computers of disparate ability
US5724264 *7 août 19953 mars 1998Immersion Human Interface Corp.Method and apparatus for tracking the position and orientation of a stylus and for digitizing a 3-D object
US5752112 *6 nov. 199612 mai 1998George Paddock, Inc.Mounting system for body mounted camera equipment
US5754449 *25 avr. 199519 mai 1998Instrumented Sensor Technology, Inc.Method and apparatus for recording time history data of physical variables
US5768792 *9 févr. 199623 juin 1998Faro Technologies Inc.Method and apparatus for measuring and tube fitting
US5829148 *23 avr. 19963 nov. 1998Eaton; Homer L.Spatial measuring device
US5832416 *1 sept. 19953 nov. 1998Brown & Sharpe Manufacturing CompanyCalibration system for coordinate measuring machine
US5926782 *12 nov. 199620 juil. 1999Faro Technologies IncConvertible three dimensional coordinate measuring machine
US5956857 *19 mai 199728 sept. 1999Faro Technologies, Inc.Mounting device for a coordinate measuring machine
US5973788 *10 oct. 199626 oct. 1999Metronor AsaSystem for point-by-point measuring of spatial coordinates
US5978748 *7 juil. 19982 nov. 1999Faro Technologies, Inc.Host independent articulated arm
US5983936 *12 juin 199716 nov. 1999The Dover CorporationTorsion spring balance assembly and adjustment method
US5997779 *29 avr. 19987 déc. 1999Aki Dryer Manufacturer, Inc.Temperature monitor for gypsum board manufacturing
US6060889 *11 févr. 19989 mai 2000Onset Computer CorporationSensing water and moisture using a delay line
US6067116 *26 sept. 199723 mai 2000Ricoh Company, Ltd.Digital camera
US6125337 *15 déc. 199826 sept. 2000Microscribe, LlcProbe apparatus and method for tracking the position and orientation of a stylus and controlling a cursor
US6131299 *1 juil. 199817 oct. 2000Faro Technologies, Inc.Display device for a coordinate measurement machine
US6151789 *1 juil. 199828 nov. 2000Faro Technologies Inc.Adjustable handgrip for a coordinate measurement machine
US6163294 *10 sept. 199819 déc. 2000Trimble Navigation LimitedTime-tagging electronic distance measurement instrument measurements to serve as legal evidence of calibration
US6166504 *10 nov. 199926 déc. 2000Denso CorporationControl apparatus for robot having an arm moving within allowable working area
US6166809 *27 juil. 199926 déc. 2000Metronor AsaSystem for point-by-point measuring of spatial coordinates
US6166811 *12 août 199926 déc. 2000Perceptron, Inc.Robot-based gauging system for determining three-dimensional measurement data
US6219928 *8 juil. 199824 avr. 2001Faro Technologies Inc.Serial network for coordinate measurement apparatus
US6240651 *17 juin 19995 juin 2001Mycrona GmbhCoordinate measuring machine having a non-sensing probe
US6253458 *22 nov. 19993 juil. 2001Faro Technologies, Inc.Adjustable counterbalance mechanism for a coordinate measurement machine
US6282195 *9 janv. 199728 août 2001Silicon Graphics, Inc.Packetized data transmissions in a switched router architecture
US6298569 *22 nov. 20009 oct. 2001Faro Technologies, Inc.Adjustable counterbalance mechanism for a coordinate measurement machine
US6366831 *12 janv. 19992 avr. 2002Faro Technologies Inc.Coordinate measurement machine with articulated arm and software interface
US6418774 *17 avr. 200116 juil. 2002Abb AbDevice and a method for calibration of an industrial robot
US6438856 *11 oct. 200027 août 2002Leica Microsystems Wetzlar GmbhApparatus for fine positioning of a component, and coordinate measuring machine having an apparatus for fine positioning of a component
US6442419 *24 nov. 200027 août 2002Industrial Technology Research InstituteInfrared 3D scanning system
US6470584 *26 nov. 199929 oct. 2002Renishaw, PlcLocating arm for a probe on a coordinate positioning machine
US6477784 *24 avr. 200112 nov. 2002Mycrona GmbhCoordinate measuring machine having a non-sensing probe
US6519860 *19 oct. 200018 févr. 2003Sandia CorporationPosition feedback control system
US6547397 *19 avr. 200015 avr. 2003Laser Projection Technologies, Inc.Apparatus and method for projecting a 3D image
US6598306 *17 avr. 200129 juil. 2003Homer L. EatonSelf-loading spatial reference point array
US6611346 *15 mars 200126 août 2003Romain GrangerSystem for identifying the position of a three-dimensional machine in a fixed frame of reference
US6611617 *25 juil. 199626 août 2003Stephen James CramptonScanning apparatus and method
US7805851 *2 avr. 20095 oct. 2010Leica Geosystems AgArticulated arm coordinate measuring machine
US20010004269 *12 déc. 200021 juin 2001Junichiro ShibataPortable terminal
US20020032541 *1 févr. 200114 mars 2002Simon RaabMethod, system and storage medium for providing an executable program to a coordinate measurement system
US20020087233 *15 janv. 20024 juil. 2002Simon RaabPortable coordinate measurement machine with pre-stressed bearings
US20020128790 *9 mars 200112 sept. 2002Donald WoodmanseeSystem and method of automated part evaluation including inspection, disposition recommendation and refurbishment process determination
US20030033104 *30 août 200113 févr. 2003Gooche Richard MichaelMarking out method and system
US20030053037 *20 août 200220 mars 2003Leica Microsystems Semiconductor GmbhCoordinate measuring stage and coordinate measuring instrument
US20030125901 *15 nov. 20023 juil. 2003Kenneth SteffeyMethod and system for assisting a user taking measurements using a coordinate measurement machine
US20080204699 *16 mai 200628 août 2008Leica Geosystems AgMethod and System for Determining the Position of a Receiver Unit
USD423534 *19 févr. 199925 avr. 2000Faro Technologies, Inc.Articulated arm
USD441632 *19 févr. 19998 mai 2001Faro Technologies Inc.Adjustable handgrip
USD472824 *14 févr. 20028 avr. 2003Faro Technologies, Inc.Portable coordinate measurement machine
Référencé par
Brevet citant Date de dépôt Date de publication Déposant Titre
US8127458 *2 sept. 20106 mars 2012Hexagon Metrology, Inc.Mounting apparatus for articulated arm laser scanner
US8176646 *28 janv. 201115 mai 2012Hexagon Metrology, Inc.Articulating measuring arm with laser scanner
US8276286 *14 janv. 20112 oct. 2012Faro Technologies, Inc.Display for coordinate measuring machine
US842982825 janv. 201230 avr. 2013Hexagon Metrology, Inc.Mounting apparatus for articulated arm laser scanner
US843874717 avr. 201214 mai 2013Hexagon Metrology, Inc.Articulating measuring arm with laser scanner
US895522917 avr. 201317 févr. 2015Hexagon Metrology, Inc.Articulating measuring arm with optical scanner
US96183306 janv. 201511 avr. 2017Hexagon Metrology, Inc.Articulating measuring arm with laser scanner
US20110173826 *14 janv. 201121 juil. 2011Faro Technologies, Inc.Display for coordinate measuring machine
US20110192043 *28 janv. 201111 août 2011Hexagon Metrology, Inc.Articulating measuring arm with laser scanner
US20160313114 *21 avr. 201627 oct. 2016Faro Technologies, Inc.Two-camera triangulation scanner with detachable coupling mechanism
DE112012001721B4 *11 avr. 20128 sept. 2016Faro Technologies, Inc.Lasertracker mit sechs Freiheitsgraden, der mit einem entfernt befindlichen Projektor zusammenwirkt, um Informationen zu übertragen.
Classifications
Classification aux États-Unis702/152, 33/503
Classification internationaleG06F15/00, G01B5/008
Classification coopérativeG05B19/406, G05B2219/40233, G05B2219/37193, G01B21/047, G05B2219/45061, G01B11/007, G05B2219/40596, G01B5/012, G05B19/401, G05B2219/24067
Classification européenneG05B19/406, G05B19/401, G01B21/04D, G01B11/00D1B, G01B5/012
Événements juridiques
DateCodeÉvénementDescription
14 janv. 2011ASAssignment
Owner name: FARO TECHNOLOGIES, INC., FLORIDA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BRIDGES, ROBERT E.;PARKER, DAVID H.;SIGNING DATES FROM 20101220 TO 20101221;REEL/FRAME:025639/0004