Modular inspection system for measuring an object

Aspects of the present disclosure provide a system for measuring an object, the system including a plurality of frame segments. The frame segments are configured to mechanically couple together to form a frame. The plurality of frame segments includes a plurality of measurement device link segments and each of the plurality of measurement device link segments includes a measurement device which together form a plurality of measurement devices having a field of view within or adjacent to the frame. Each of the plurality of measurement devices is operable to measure three-dimensional (3D) coordinates for a plurality of points on the object. The system further includes a computing device to receive data from the plurality of measurement devices via a network established by the plurality of measurement device link segments.

BACKGROUND

The subject matter disclosed herein relates to a modular inspection system for measuring an object.

Triangulation scanners generally include at least one projector and at least one camera, the projector and camera separated by a baseline distance. Such scanners use a triangulation calculation to determine 3D coordinates of points on an object based at least in part on the projected pattern of light and the captured camera image. One category of triangulation scanner, referred to herein as a single-shot scanner, obtains 3D coordinates of the object points based on a single projected pattern of light. Another category of triangulation scanner, referred to herein as a sequential scanner, obtains 3D coordinates of the object points based on a sequence of projected patterns from a stationary projector onto the object.

In the case of a single-shot triangulation scanner, the triangulation calculation is based at least in part on a determined correspondence among elements in each of two patterns. The two patterns may include a pattern projected by the projector and a pattern captured by the camera. Alternatively, the two patterns may include a first pattern captured by a first camera and a second pattern captured by a second camera. In either case, the determination of 3D coordinates by the triangulation calculation provides that a correspondence be determined between pattern elements in each of the two patterns. In most cases, the correspondence is obtained by matching pattern elements in the projected or captured pattern. An alternative approach is described in U.S. Pat. No. 9,599,455 ('455) to Heidemann, et al., the contents of which are incorporated by reference herein. In this approach, the correspondence is determined, not by matching pattern elements, but by identifying spots at the intersection of epipolar lines from two cameras and a projector or from two projectors and a camera. In an embodiment, supplementary 2D camera images may further be used to register multiple collected point clouds together in a common frame of reference. For the system described in Patent '455, the three camera and projector elements are arranged in a triangle, which enables the intersection of the epipolar lines.

BRIEF DESCRIPTION

According to one aspect of the invention, a system for measuring an object includes a plurality of frame segments, the frame segments being configured to mechanically couple together to form a frame, the plurality of frame segments comprising a plurality of measurement device link segments, each of the plurality of measurement device link segments comprising a measurement device which together form a plurality of measurement devices having a field of view within or adjacent to the frame, each of the plurality of measurement devices being operable to measure three-dimensional (3D) coordinates for a plurality of points on the object. The system further includes a computing device to receive data from the plurality of measurement devices via a network established by the plurality of measurement device link segments.

According to another aspect of the invention, a method includes: arranging a plurality of frame segments to form a first frame having a first shape, the plurality of frame segments comprising a plurality of measurement device link segments and a plurality of joint link segments, each of the plurality of measurement device link segments comprising a measurement device which together form a plurality of measurement devices having a field of view within or adjacent to the first frame, each of the plurality of measurement devices being operable to measure three-dimensional (3D) coordinates for a plurality of points on an object. The method further includes establishing a network among the plurality of frame segments when the frame segments are arranged in the first shape to transmit data to a computing device. The method further includes receiving, by the computing device, data from the plurality of measurement devices via the network established by the plurality of frame segments when the plurality of frame segments are arranged in the first shape.

DETAILED DESCRIPTION

It may be desired to capture three-dimensional (3D) measurements of objects. However, depending on the size, shape, orientation, etc., of the objects, the mechanical arrangement for different 3D measurement devices (also referred to as scanners or sensors) may need to change. For example, a particular mechanical arrangement of measurement devices for scanning one object may not be suitable for scanning another object.

Embodiments disclosed herein provide advantages in enabling 3D measurements to be obtained of varying objects by using a modular inspection system having multiple measurement devices for measuring and providing a multi-angle scan of such objects. Embodiments further provide for measuring objects that are larger than a field-of-view of a single measurement device. The modular inspection system according to embodiments described herein can be configured and reconfigured in various physical arrangements to accommodate objects of different sizes and shapes. Thus, different measurement devices can be arranged together at different angles to one another, and the modular inspection system has a sensor array outlook depending on the application or object being scanned. A further advantage of embodiments disclosed herein includes creating a network (i.e., a communication network, such as a local area network, wide area network, personal area network, intranet, etc.) among the measurement devices to transmit captured data to a computing device shared among the measurement devices for fast and efficient processing. The network enables large amounts of data to be transferred to the computing device for processing.

In an embodiment illustrated inFIGS.1A,1B,1C,1D, a triangulation scanner1includes a body5, a projector20, a first camera30, and a second camera40. In an embodiment, the projector optical axis22of the projector20, the first-camera optical axis32of the first camera30, and the second-camera optical axis42of the second camera40all lie on a common plane50, as shown inFIGS.1C,1D. In some embodiments, an optical axis passes through a center of symmetry of an optical system which might be a projector or a camera, for example. For example, an optical axis may pass through a center of curvature of lens surfaces or mirror surfaces in an optical system. The common plane50, also referred to as a first plane50, extends perpendicular into and out of the paper inFIG.1D.

In an embodiment, the body5includes a bottom support structure6, a top support structure7, spacers8, camera mounting plates9, bottom mounts10, dress cover11, windows12for the projector and cameras, Ethernet connectors13, and GPIO connector14. In addition, the body includes a front side15and a back side16. In an embodiment, the bottom support structure6and the top support structure7are flat plates made of carbon-fiber composite material. In an embodiment, the carbon-fiber composite material has a low coefficient of thermal expansion (CTE). In an embodiment, the spacers8are made of aluminum and are sized to provide a common separation between the bottom support structure6and the top support structure7.

In an embodiment, the projector20includes a projector body24and a projector front surface26. In an embodiment, the projector20includes a light source25that attaches to the projector body24that includes a turning mirror and a diffractive optical element (DOE), as explained herein below with respect toFIGS.5A,5B,5C. The light source25may be a laser, a superluminescent diode, or a partially coherent LED, for example. In an embodiment, the DOE produces an array of spots arranged in a regular pattern. In an embodiment, the projector20emits light at a near infrared wavelength.

In an embodiment, the first camera30includes a first-camera body34and a first-camera front surface36. In an embodiment, the first camera includes a lens, a photosensitive array, and camera electronics. The first camera30forms on the photosensitive array a first image of the uncoded spots projected onto an object by the projector20. In an embodiment, the first camera responds to near infrared light.

In an embodiment, the second camera40includes a second-camera body44and a second-camera front surface46. In an embodiment, the second camera includes a lens, a photosensitive array, and camera electronics. The second camera40forms a second image of the uncoded spots projected onto an object by the projector20. In an embodiment, the second camera responds to light in the near infrared spectrum. In an embodiment, a processor2is used to determine 3D coordinates of points on an object according to methods described herein below. The processor2may be included inside the body5or may be external to the body. In further embodiments, more than one processor is used. In still further embodiments, the processor2may be remotely located from the triangulation scanner.

FIG.1Eis a top view of the triangulation scanner1. A projector ray28extends along the projector optical axis from the body of the projector24through the projector front surface26. In doing so, the projector ray28passes through the front side15. A first-camera ray38extends along the first-camera optical axis32from the body of the first camera34through the first-camera front surface36. In doing so, the front-camera ray38passes through the front side15. A second-camera ray48extends along the second-camera optical axis42from the body of the second camera44through the second-camera front surface46. In doing so, the second-camera ray48passes through the front side15.

FIG.2shows elements of a triangulation scanner200that might, for example, be the triangulation scanner1shown inFIGS.1A,1B,1C,1D,1E. In an embodiment, the triangulation scanner200includes a projector250, a first camera210, and a second camera230. In an embodiment, the projector250creates a pattern of light on a pattern generator plane252. An exemplary corrected point253on the pattern projects a ray of light251through the perspective center258(point D) of the lens254onto an object surface270at a point272(point F). The point272is imaged by the first camera210by receiving a ray of light from the point272through the perspective center218(point E) of the lens214onto the surface of a photosensitive array212of the camera as a corrected point220. The point220is corrected in the read-out data by applying a correction value to remove the effects of lens aberrations. The point272is likewise imaged by the second camera230by receiving a ray of light from the point272through the perspective center238(point C) of the lens234onto the surface of the photosensitive array232of the second camera as a corrected point235. It should be understood that as used herein any reference to a lens includes any type of lens system whether a single lens or multiple lens elements, including an aperture within the lens system. It should be understood that any reference to a projector in this document refers not only to a system projecting with a lens or lens system an image plane to an object plane. The projector does not necessarily have a physical pattern-generating plane252but may have any other set of elements that generate a pattern. For example, in a projector having a DOE, the diverging spots of light may be traced backward to obtain a perspective center for the projector and also to obtain a reference projector plane that appears to generate the pattern. In most cases, the projectors described herein propagate uncoded spots of light in an uncoded pattern. However, a projector may further be operable to project coded spots of light, to project in a coded pattern, or to project coded spots of light in a coded pattern. In other words, in some aspects of the disclosed embodiments, the projector is at least operable to project uncoded spots in an uncoded pattern but may in addition project in other coded elements and coded patterns.

In an embodiment where the triangulation scanner200ofFIG.2is a single-shot scanner that determines 3D coordinates based on a single projection of a projection pattern and a single image captured by each of the two cameras, then a correspondence between the projector point253, the image point220, and the image point235may be obtained by matching a coded pattern projected by the projector250and received by the two cameras210,230. Alternatively, the coded pattern may be matched for two of the three elements—for example, the two cameras210,230or for the projector250and one of the two cameras210or230. This is possible in a single-shot triangulation scanner because of coding in the projected elements or in the projected pattern or both.

After a correspondence is determined among projected and imaged elements, a triangulation calculation is performed to determine 3D coordinates of the projected element on an object. ForFIG.2, the elements are uncoded spots projected in a uncoded pattern. In an embodiment, a triangulation calculation is performed based on selection of a spot for which correspondence has been obtained on each of two cameras. In this embodiment, the relative position and orientation of the two cameras is used. For example, the baseline distance B3between the perspective centers218and238is used to perform a triangulation calculation based on the first image of the first camera210and on the second image of the second camera230. Likewise, the baseline B1is used to perform a triangulation calculation based on the projected pattern of the projector250and on the second image of the second camera230. Similarly, the baseline B2is used to perform a triangulation calculation based on the projected pattern of the projector250and on the first image of the first camera210. In an embodiment, the correspondence is determined based at least on an uncoded pattern of uncoded elements projected by the projector, a first image of the uncoded pattern captured by the first camera, and a second image of the uncoded pattern captured by the second camera. In an embodiment, the correspondence is further based at least in part on a position of the projector, the first camera, and the second camera. In a further embodiment, the correspondence is further based at least in part on an orientation of the projector, the first camera, and the second camera.

The term “uncoded element” or “uncoded spot” as used herein refers to a projected or imaged element that includes no internal structure that enables it to be distinguished from other uncoded elements that are projected or imaged. The term “uncoded pattern” as used herein refers to a pattern in which information is not encoded in the relative positions of projected or imaged elements. For example, one method for encoding information into a projected pattern is to project a quasi-random pattern of “dots” in which the relative position of the dots is known ahead of time and can be used to determine correspondence of elements in two images or in a projection and an image. Such a quasi-random pattern contains information that may be used to establish correspondence among points and hence is not an example of a uncoded pattern. An example of an uncoded pattern is a rectilinear pattern of projected pattern elements.

In an embodiment, uncoded spots are projected in an uncoded pattern as illustrated in the scanner system100ofFIG.2B. In an embodiment, the scanner system100includes a projector110, a first camera130, a second camera140, and a processor150. The projector projects an uncoded pattern of uncoded spots off a projector reference plane114. In an embodiment illustrated inFIGS.2B and2C, the uncoded pattern of uncoded spots is a rectilinear array111of circular spots that form illuminated object spots121on the object120. In an embodiment, the rectilinear array of spots111arriving at the object120is modified or distorted into the pattern of illuminated object spots121according to the characteristics of the object120. An exemplary uncoded spot112from within the projected rectilinear array111is projected onto the object120as a spot122. The direction from the projector spot112to the illuminated object spot122may be found by drawing a straight line124from the projector spot112on the reference plane114through the projector perspective center116. The location of the projector perspective center116is determined by the characteristics of the projector optical system.

In an embodiment, the illuminated object spot122produces a first image spot134on the first image plane136of the first camera130. The direction from the first image spot to the illuminated object spot122may be found by drawing a straight line126from the first image spot134through the first camera perspective center132. The location of the first camera perspective center132is determined by the characteristics of the first camera optical system.

In an embodiment, the illuminated object spot122produces a second image spot144on the second image plane146of the second camera140. The direction from the second image spot144to the illuminated object spot122may be found by drawing a straight line126from the second image spot144through the second camera perspective center142. The location of the second camera perspective center142is determined by the characteristics of the second camera optical system.

In an embodiment, a processor150is in communication with the projector110, the first camera130, and the second camera140. Either wired or wireless channels151may be used to establish connection among the processor150, the projector110, the first camera130, and the second camera140. The processor may include a single processing unit or multiple processing units and may include components such as microprocessors, field programmable gate arrays (FPGAs), digital signal processors (DSPs), and other electrical components. The processor may be local to a scanner system that includes the projector, first camera, and second camera, or it may be distributed and may include networked processors. The term processor encompasses any type of computational electronics and may include memory storage elements.

FIG.2Eshows elements of a method180for determining 3D coordinates of points on an object. An element182includes projecting, with a projector, a first uncoded pattern of uncoded spots to form illuminated object spots on an object.FIGS.2B,2Cillustrate this element182using an embodiment100in which a projector110projects a first uncoded pattern of uncoded spots111to form illuminated object spots121on an object120.

A method element184includes capturing with a first camera the illuminated object spots as first-image spots in a first image. This element is illustrated inFIG.2Busing an embodiment in which a first camera130captures illuminated object spots121, including the first-image spot134, which is an image of the illuminated object spot122. A method element186includes capturing with a second camera the illuminated object spots as second-image spots in a second image. This element is illustrated inFIG.2Busing an embodiment in which a second camera140captures illuminated object spots121, including the second-image spot144, which is an image of the illuminated object spot122.

A first aspect of method element188includes determining with a processor 3D coordinates of a first collection of points on the object based at least in part on the first uncoded pattern of uncoded spots, the first image, the second image, the relative positions of the projector, the first camera, and the second camera, and a selected plurality of intersection sets. This aspect of the element188is illustrated inFIGS.2B,2Cusing an embodiment in which the processor150determines the 3D coordinates of a first collection of points corresponding to object spots121on the object120based at least in the first uncoded pattern of uncoded spots111, the first image136, the second image146, the relative positions of the projector110, the first camera130, and the second camera140, and a selected plurality of intersection sets. An example fromFIG.2Bof an intersection set is the set that includes the points112,134, and144. Any two of these three points may be used to perform a triangulation calculation to obtain 3D coordinates of the illuminated object spot122as discussed herein above in reference toFIGS.2A,2B.

A second aspect of the method element188includes selecting with the processor a plurality of intersection sets, each intersection set including a first spot, a second spot, and a third spot, the first spot being one of the uncoded spots in the projector reference plane, the second spot being one of the first-image spots, the third spot being one of the second-image spots, the selecting of each intersection set based at least in part on the nearness of intersection of a first line, a second line, and a third line, the first line being a line drawn from the first spot through the projector perspective center, the second line being a line drawn from the second spot through the first-camera perspective center, the third line being a line drawn from the third spot through the second-camera perspective center. This aspect of the element188is illustrated inFIG.2Busing an embodiment in which one intersection set includes the first spot112, the second spot134, and the third spot144. In this embodiment, the first line is the line124, the second line is the line126, and the third line is the line128. The first line124is drawn from the uncoded spot112in the projector reference plane114through the projector perspective center116. The second line126is drawn from the first-image spot134through the first-camera perspective center132. The third line128is drawn from the second-image spot144through the second-camera perspective center142. The processor150selects intersection sets based at least in part on the nearness of intersection of the first line124, the second line126, and the third line128.

The processor150may determine the nearness of intersection of the first line, the second line, and the third line based on any of a variety of criteria. For example, in an embodiment, the criterion for the nearness of intersection is based on a distance between a first 3D point and a second 3D point. In an embodiment, the first 3D point is found by performing a triangulation calculation using the first image point134and the second image point144, with the baseline distance used in the triangulation calculation being the distance between the perspective centers132and142. In the embodiment, the second 3D point is found by performing a triangulation calculation using the first image point134and the projector point112, with the baseline distance used in the triangulation calculation being the distance between the perspective centers134and116. If the three lines124,126, and128nearly intersect at the object point122, then the calculation of the distance between the first 3D point and the second 3D point will result in a relatively small distance. On the other hand, a relatively large distance between the first 3D point and the second 3D would indicate that the points112,134, and144did not all correspond to the object point122.

As another example, in an embodiment, the criterion for the nearness of the intersection is based on a maximum of closest-approach distances between each of the three pairs of lines. This situation is illustrated inFIG.2D. A line of closest approach125is drawn between the lines124and126. The line125is perpendicular to each of the lines124,126and has a nearness-of-intersection length a. A line of closest approach127is drawn between the lines126and128. The line127is perpendicular to each of the lines126,128and has length b. A line of closest approach129is drawn between the lines124and128. The line129is perpendicular to each of the lines124,128and has length c. According to the criterion described in the embodiment above, the value to be considered is the maximum of a, b, and c. A relatively small maximum value would indicate that points112,134, and144have been correctly selected as corresponding to the illuminated object point122. A relatively large maximum value would indicate that points112,134, and144were incorrectly selected as corresponding to the illuminated object point122.

The processor150may use many other criteria to establish the nearness of intersection. For example, for the case in which the three lines were coplanar, a circle inscribed in a triangle formed from the intersecting lines would be expected to have a relatively small radius if the three points112,134,144corresponded to the object point122. For the case in which the three lines were not coplanar, a sphere having tangent points contacting the three lines would be expected to have a relatively small radius.

It should be noted that the selecting of intersection sets based at least in part on a nearness of intersection of the first line, the second line, and the third line is not used in most other projector-camera methods based on triangulation. For example, for the case in which the projected points are coded points, which is to say, recognizable as corresponding when compared on projection and image planes, there is no need to determine a nearness of intersection of the projected and imaged elements. Likewise, when a sequential method is used, such as the sequential projection of phase-shifted sinusoidal patterns, there is no need to determine the nearness of intersection as the correspondence among projected and imaged points is determined based on a pixel-by-pixel comparison of phase determined based on sequential readings of optical power projected by the projector and received by the camera(s). The method element190includes storing 3D coordinates of the first collection of points.

An alternative method that uses the intersection of epipolar lines on epipolar planes to establish correspondence among uncoded points projected in an uncoded pattern is described in Patent '455, referenced herein above. In an embodiment of the method described in Patent '455, a triangulation scanner places a projector and two cameras in a triangular pattern. An example of a triangulation scanner300having such a triangular pattern is shown inFIG.3. The triangulation scanner300includes a projector350, a first camera310, and a second camera330arranged in a triangle having sides A1-A2-A3. In an embodiment, the triangulation scanner300may further include an additional camera390not used for triangulation but to assist in registration and colorization.

Referring now toFIG.4the epipolar relationships for a 3D imager (triangulation scanner)490correspond with 3D imager300ofFIG.3in which two cameras and one projector are arranged in the shape of a triangle having sides402,404,406. In general, the device1, device2, and device3may be any combination of cameras and projectors as long as at least one of the devices is a camera. Each of the three devices491,492,493has a perspective center O1, O2, O3, respectively, and a reference plane460,470, and480, respectively. InFIG.4, the reference planes460,470,480are epipolar planes corresponding to physical planes such as an image plane of a photosensitive array or a projector plane of a projector pattern generator surface but with the planes projected to mathematically equivalent positions opposite the perspective centers O1, O2, O3. Each pair of devices has a pair of epipoles, which are points at which lines drawn between perspective centers intersect the epipolar planes. Device1and device2have epipoles E12, E21on the planes460,470, respectively. Device1and device3have epipoles E13, E31, respectively on the planes460,480, respectively. Device2and device3have epipoles E23, E32on the planes470,480, respectively. In other words, each reference plane includes two epipoles. The reference plane for device1includes epipoles E12and E13. The reference plane for device2includes epipoles E21and E23. The reference plane for device3includes epipoles E31and E32.

In an embodiment, the device3is a projector493, the device1is a first camera491, and the device2is a second camera492. Suppose that a projection point P3, a first image point P1, and a second image point P2are obtained in a measurement. These results can be checked for consistency in the following way.

To check the consistency of the image point P1, intersect the plane P3-E31-E13with the reference plane460to obtain the epipolar line464. Intersect the plane P2-E21-E12to obtain the epipolar line462. If the image point P1has been determined consistently, the observed image point P1will lie on the intersection of the determined epipolar lines462and464.

To check the consistency of the image point P2, intersect the plane P3-E32-E23with the reference plane470to obtain the epipolar line474. Intersect the plane P1-E12-E21to obtain the epipolar line472. If the image point P2has been determined consistently, the observed image point P2will lie on the intersection of the determined epipolar lines472and474.

To check the consistency of the projection point P3, intersect the plane P2-E23-E32with the reference plane480to obtain the epipolar line484. Intersect the plane P1-E13-E31to obtain the epipolar line482. If the projection point P3has been determined consistently, the projection point P3will lie on the intersection of the determined epipolar lines482and484.

It should be appreciated that since the geometric configuration of device1, device2and device3are known, when the projector493emits a point of light onto a point on an object that is imaged by cameras491,492, the 3D coordinates of the point in the frame of reference of the 3D imager490may be determined using triangulation methods.

Note that the approach described herein above with respect toFIG.4may not be used to determine 3D coordinates of a point lying on a plane that includes the optical axes of device1, device2, and device3since the epipolar lines are degenerate (fall on top of one another) in this case. In other words, in this case, intersection of epipolar lines is no longer obtained. Instead, in an embodiment, determining self-consistency of the positions of an uncoded spot on the projection plane of the projector and the image planes of the first and second cameras is used to determine correspondence among uncoded spots, as described herein above in reference toFIGS.2B,2C,2D,2E.

FIGS.5A,5B,5C,5D,5Eare schematic illustrations of alternative embodiments of the projector20. InFIG.5A, a projector500includes a light source, mirror504, and diffractive optical element (DOE)506. The light source502may be a laser, a superluminescent diode, or a partially coherent LED, for example. The light source502emits a beam of light510that reflects off mirror504and passes through the DOE. In an embodiment, the DOE506produces an array of diverging and uniformly distributed light spots512. InFIG.5B, a projector520includes the light source502, mirror504, and DOE506as inFIG.5A. However, in system520ofFIG.5B, the mirror504is attached to an actuator522that causes rotation524or some other motion (such as translation) in the mirror. In response to the rotation524, the reflected beam off the mirror504is redirected or steered to a new position before reaching the DOE506and producing the collection of light spots512. In system530ofFIG.5C, the actuator is applied to a mirror532that redirects the beam512into a beam536. Other types of steering mechanisms such as those that employ mechanical, optical, or electro-optical mechanisms may alternatively be employed in the systems ofFIGS.5A,5B,5C. In other embodiments, the light passes first through the pattern generating element506and then through the mirror504or is directed towards the object space without a mirror504.

In the system540ofFIG.5D, an electrical signal is provided by the electronics544to drive a projector pattern generator542, which may be a pixel display such as a Liquid Crystal on Silicon (LCoS) display to serve as a pattern generator unit, for example. The light545from the LCoS display542is directed through the perspective center547from which it emerges as a diverging collection of uncoded spots548. In system550ofFIG.5E, a source is light552may emit light that may be sent through or reflected off of a pattern generating unit554. In an embodiment, the source of light552sends light to a digital micromirror device (DMD), which reflects the light555through a lens556. In an embodiment, the light is directed through a perspective center557from which it emerges as a diverging collection of uncoded spots558in an uncoded pattern. In another embodiment, the source of light562passes through a slide554having an uncoded pattern of dots before passing through a lens556and proceeding as an uncoded pattern of light558. In another embodiment, the light from the light source552passes through a lenslet array554before being redirected into the pattern558. In this case, inclusion of the lens556is optional.

The actuators522,534, also referred to as beam steering mechanisms, may be any of several types such as a piezo actuator, a microelectromechanical system (MEMS) device, a magnetic coil, or a solid-state deflector.

FIG.6Ais an isometric view of a triangulation scanner600that includes a single camera602and two projectors604,606, these having windows603,605,607, respectively. In the system600, the projected uncoded spots by the projectors604,606are distinguished by the camera602. This may be the result of a difference in a characteristic in the uncoded projected spots. For example, the spots projected by the projector604may be a different color than the spots projected by the projector606if the camera602is a color camera. In another embodiment, the triangulation scanner600and the object under test are stationary during a measurement, which enables images projected by the projectors604,606to be collected sequentially by the camera602. The methods of determining correspondence among uncoded spots and afterwards in determining 3D coordinates are the same as those described earlier inFIG.2for the case of two cameras and one projector. In an embodiment, the system600includes a processor2that carries out computational tasks such as determining correspondence among uncoded spots in projected and image planes and in determining 3D coordinates of the projected spots.

FIG.6Bis an isometric view of a triangulation scanner620that includes a projector622and in addition includes three cameras: a first camera624, a second camera626, and a third camera628. These aforementioned projector and cameras are covered by windows623,625,627,629, respectively. In the case of a triangulation scanner having three cameras and one projector, it is possible to determine the 3D coordinates of projected spots of uncoded light without knowing in advance the pattern of dots emitted from the projector. In this case, lines can be drawn from an uncoded spot on an object through the perspective center of each of the three cameras. The drawn lines may each intersect with an uncoded spot on each of the three cameras. Triangulation calculations can then be performed to determine the 3D coordinates of points on the object surface. In an embodiment, the system620includes the processor2that carries out operational methods such as verifying correspondence among uncoded spots in three image planes and in determining 3D coordinates of projected spots on the object.

FIG.6Cis an isometric view of a triangulation scanner640like that ofFIG.1Aexcept that it further includes a camera642, which is coupled to the triangulation scanner640. In an embodiment the camera642is a color camera that provides colorization to the captured 3D image. In a further embodiment, the camera642assists in registration when the camera642is moved—for example, when moved by an operator or by a robot.

FIGS.7A,7Billustrate two different embodiments for using the triangulation scanner1in an automated environment.FIG.7Aillustrates an embodiment in which a scanner1is fixed in position and an object under test702is moved, such as on a conveyor belt700or other transport device. The scanner1obtains 3D coordinates for the object702. In an embodiment, a processor, either internal or external to the scanner1, further determines whether the object702meets its dimensional specifications. In some embodiments, the scanner1is fixed in place, such as in a factory or factory cell for example, and used to monitor activities. In one embodiment, the processor2monitors whether there is risk of contact with humans from moving equipment in a factory environment and, in response, issue warnings, alarms, or cause equipment to stop moving.

FIG.7Billustrates an embodiment in which a triangulation scanner1is attached to a robot end effector710, which may include a mounting plate712and robot arm714. The robot may be moved to measure dimensional characteristics of one or more objects under test. In further embodiments, the robot end effector is replaced by another type of moving structure. For example, the triangulation scanner1may be mounted on a moving portion of a machine tool.

FIG.8is a schematic isometric drawing of a measurement application800that may be suited to the triangulation scanners described herein above. In an embodiment, a triangulation scanner1sends uncoded spots of light onto a sheet of translucent or nearly transparent material810such as glass. The uncoded spots of light802on the glass front surface812arrive at an angle to a normal vector of the glass front surface812. Part of the optical power in the uncoded spots of light802pass through the front surface812, are reflected off the back surface814of the glass, and arrive a second time at the front surface812to produce reflected spots of light804, represented inFIG.8as dashed circles. Because the uncoded spots of light802arrive at an angle with respect to a normal of the front surface812, the spots of light804are shifted laterally with respect to the spots of light802. If the reflectance of the glass surfaces is relatively high, multiple reflections between the front and back glass surfaces may be picked up by the triangulation scanner1.

The uncoded spots of lights802at the front surface812satisfy the criterion described with respect toFIG.2in being intersected by lines drawn through perspective centers of the projector and two cameras of the scanner. For example, consider the case in which inFIG.2the element250is a projector, the elements210,230are cameras, and the object surface270represents the glass front surface270. InFIG.2, the projector250sends light from a point253through the perspective center258onto the object270at the position272. Let the point253represent the center of a spot of light802inFIG.8. The object point272passes through the perspective center218of the first camera onto the first image point220. It also passes through the perspective center238of the second camera230onto the second image point235. The image points200,235represent points at the center of the uncoded spots802. By this method, the correspondence in the projector and two cameras is confirmed for an uncoded spot802on the glass front surface812. However, for the spots of light804on the front surface that first reflect off the back surface, there is no projector spot that corresponds to the imaged spots. In other words, in the representation ofFIG.2, there is no condition in which the lines211,231,251intersect in a single point272for the reflected spot204. Hence, using this method, the spots at the front surface may be distinguished from the spots at the back surface, which is to say that the 3D coordinates of the front surface are determined without contamination by reflections from the back surface. This is possible as long as the thickness of the glass is large enough and the glass is tilted enough relative to normal incidence. Separation of points reflected off front and back glass surfaces is further enhanced by a relatively wide spacing of uncoded spots in the projected uncoded pattern as illustrated inFIG.8. Although the method ofFIG.8was described with respect to the scanner1, the method would work equally well for other scanner embodiments such as the scanners600,620,640ofFIGS.6A,6B,6C, respectively.

FIG.9depicts a modular inspection system900according to an embodiment.FIG.10depicts an exploded view of the modular inspection system900ofFIG.9according to an embodiment. The modular inspection system900includes frame segments that mechanically and electrically couple together to form a frame902.

The frame segments can include one or more measurement device link segments904a,904b,904c(collectively referred to as “measurement device link segments904”).FIGS.11-13depict various views of a possible configuration of one of the measurement device link segment904ofFIG.9. The frame segments can also include one or more joint link segments906a,906b(collectively referred to as “joint link segments906”).FIGS.14A,14B,14C,14D,14E,14F,16,17A, and17Bdepict various views of different possible configurations of one of the joint link segments906ofFIG.9according to an embodiment.

The measurement device link segments904include one or more measurement devices. Examples of measurement devices are described herein and can include: the triangulation scanner1shown inFIGS.1A,1B,1C,1D,1E; the triangulation scanner200shown inFIG.2A; the triangulation scanner300shown inFIG.3; the triangulation scanner600shown inFIG.6A; the triangulation scanner620shown inFIG.6B; the triangulation scanner640shown inFIG.6C; or the like.

Measurement devices, such as the triangulation scanners described herein, are often used in the inspection of objects to determine in the object is in conformance with specifications. When objects are large, such as with automobiles for example, these inspections may be difficult and time consuming. To assist in these inspections, sometimes non-contact three-dimensional (3D) coordinate measurement devices are used in the inspection process. An example of such a measurement device is a 3D laser scanner time-of-flight (TOF) coordinate measurement device. A 3D laser scanner of this type steers a beam of light to a non-cooperative target such as a diffusely scattering surface of an object (e.g. the surface of the automobile). A distance meter in the device measures a distance to the object, and angular encoders measure the angles of rotation of two axles in the device. The measured distance and two angles enable a computing device910to determine the 3D coordinates of the target.

In the illustrated embodiment ofFIG.9, the measurement devices of the measurement device link segments904are triangulation or area scanners, such as that described in commonly owned United States Patent Application 2017/0054965 or United States Patent Application 2018/0321383, the contents of both of which are incorporated herein by reference. In an embodiment, an area scanner emits a pattern of light from a projector onto a surface of an object and acquires a pair of images of the pattern on the surface. In at least some instances, the 3D coordinates of the elements of the pattern are able to be determined. In other embodiments, the area scanner may include two projectors and one camera or other suitable combinations of projector(s) and camera(s).

The measurement device link segments904also include electrical components to enable data to be transmitted from the measurement devices of the measurement device link segments904to the computing device910or another suitable device. Such electrical components are depicted inFIG.13, for example, and are described in more detail herein. The joint link segments906can also include electrical components to enable the data to be transmitted from measurement devices of the measurement device link segments904to the computing device910.

The frame segments, including one or more of the measurement device link segments904and/or one or more of the joint link segments906, can be partially or wholly contained in or connected to one or more base stands908a,908b. The base stands908a,908bprovide support for the frame902and can be of various sizes, shapes, dimensions, orientations, etc., to provide support for the frame902. The base stands908a,908bcan include or be connected to one or more leveling feet909a,909b, which can be adjusted to level the frame902or otherwise change the orientation of the frame902relative to a surface (not shown) upon which the frame902is placed. Although not shown, the base stands908a,908bcan include one or more measurement devices.

FIG.11depicts an isometric view of one of the measurement device link segments904ofFIG.9according to an embodiment. The measurement device link segment904includes a body portion1102extending between a first end portion1104and a second end portion1106.

The body portion1102of the measurement device link segment904includes a housing1108to house one or more measurement devices. Although one housing1108is shown, it should be appreciated that additional housings for housing additional measurement devices can be included in the measurement device link segment904.

The first end portion1104and the second end portion1106include mechanical connectors (couplings) and electrical connectors (couplings) to enable the measurement device link segment904to be coupled (mechanically and electrically) to other measurement device link segments and/or to joint link segments. For example, as shown in the embodiment ofFIG.9, the measurement device link segment904bis coupled to the joint link segment906aand to the joint link segment906b. The joint link segments906a,906bare also respectively coupled to the measurement device link segments904a,904c. Thus, the frame902is formed and supported by the base stands908a,908b. In examples, other configurations are possible such that the shape of the frame902can vary. For example, different numbers and arrangements of measurement device link segments904and/or joint link segments906can be used. Examples of different arrangements of measurement device link segments904and joint link segments are depicted inFIGS.18and19, which are further discussed herein.

According to examples, the first end portion1104forms an angle relative to the body portion1102of the measurement device link segment904. Similarly, the second end portion1106forms an angle relative to the body portion1102of the measurement device link segment904. The angle can vary in different examples. For example, the angle can be 22.5 degrees, 45 degrees, 90 degrees, 135 degrees, 157.5 degrees, etc. The different angular configurations enable different frame configurations to be created.

The first end portion1104can be configured as a “mating end” and the second end portion1106can be configured as a “receiving end.” Other of the measurement device link segments904(and also the joint link segments906) can be similarly arranged. This enables the first end portion1104(mating end) to be coupled to a receiving end of another measurement device link segment904or to a receiving end of a joint link segment906.

The mechanical connectors can include receivers1140, which are configured to receive a mating mechanical connector associated with a mating end of another frame segment.FIG.14A, which depicts an example of the joint link segment906, includes mating mechanical connectors1441, which can be received by the receivers1140of the measurement device link segment904. Together, receivers1140and the mating mechanical connectors1441create a mechanical connector that can be used to mechanically couple the respective measurement device link segment904to the joint link segment906. Although four receivers1140and a corresponding four mating mechanical connectors1441are depicted, other numbers, configurations, and types of mechanical connectors (or fasteners) can be utilized to mechanically couple frame segments together.

The electrical connectors can include electrical receiver1144, which is configured to receive a mating electrical connector associated with a mating end of another frame segment. As used herein, electrical connectors can include fiber optical connectors. With reference toFIG.14A, the joint link segment906includes a mating electrical connector1445. Together, the electrical receiver1144and the mating electrical connector1445create an electrical connection that can be used to electrically couple the respective measurement device link segment904to the joint link segment906. The electrical connectors enable data, power, etc., to be transmitted by one frame segment to another frame segment. Different types of electrical connectors can include Ethernet connectors, coaxial connectors, optical connectors, and the like. In some examples, as shown inFIG.11, a second electrical receiver1146can be included. In such examples, the electrical receiver1144and the second electrical receiver1146can be of different types (e.g., the electrical receiver1144can be used to form an optical connection and the second electrical receiver1146can be used to form an electrical connection (e.g., Ethernet)).

In the example ofFIG.11, the measurement device link segment904includes a power connector1142, which is configured to receive an end of a power cable via a power slot1443ofFIG.14Aor a power connector on another frame segment. This enables power to be transmitted between frame segments to power electrical components within the frame segments.

FIG.12depicts an exploded view of one of the measurement device link segments904ofFIG.9according to an embodiment.FIG.13depicts a cross-sectional view of one of the measurement device link segments904ofFIG.9according to an embodiment.

The measurement device link segment904includes a body portion1102extending between the first end portion1104and the second end portion1106. In this example, the body portion1102is a two-piece body portion that includes a first body portion section1202aand a second body portion section1202b. The body portion1102is configured to house several electrical components including fans1210a,1210b(contained in fan housings1211a,1211brespectively) for circulating air and dissipating heat, a network switch1212for facilitating the transfer of data, and a measurement device1220for collecting measurement data about an object. In some examples, a measurement device link segment904can include more or fewer of these components (e.g., a measurement device link segment904can include two or more network switches).

Although not shown, the electrical receiver1144and/or the second electrical receiver1146can be electrically coupled to the switch1212. The measurement device1220can also be electrically coupled to the switch1212. Accordingly, the measurement device1220can transmit data to and receive data from other devices (e.g., other measurement devices, the computing device910, etc.) via the switch1212. In some examples, multiple electrical connections (such as electrical cables) are connected between the switch1212and the measurement device. This enables the measurement device to transmit and receive large volumes of data.

FIG.14Adepicts an isometric view an example joint link segment906of one of the joint link segments ofFIG.9according to an embodiment.FIG.14Bdepicts an isometric view of another example joint link segment906according to an embodiment.FIG.14Cdepicts an exploded view the example joint link segment906ofFIG.14Aaccording to an embodiment, andFIG.14Ddepicts a side view of the example joint link segment906ofFIG.14Aaccording to an embodiment.FIG.14Edepicts an exploded view the example joint link segment906ofFIG.14Baccording to an embodiment, andFIG.14Fdepicts a side view of the example joint link segment906ofFIG.14Baccording to an embodiment.

The joint link segment906ofFIGS.14A-14Fincludes a body portion1402(which can include a base portion1403(seeFIG.14C)) disposed between a first end portion1404and a second end portion1406. The first end portion1404and the second end portion1406include mechanical connectors and electrical connectors as discussed herein with reference toFIG.11. Alignment pins1446can also be included to aid in aligning ends of two frame segments. For example, the second end portion1406(a mating end) includes two alignment pins1446, which can be received by corresponding receivers on a receiving end of another frame segment.

In some embodiments, the first end portion1404and the second end portion1406can both be configured as mating ends and can be received by receiving ends on other frame segments. Conversely, the first end portion1404and the second end portion1406can both be configured as receiving ends and can receive mating ends of other frame segments. Although these variations are described with reference to the joint link segment906, such variations are also applicable to measurement device link segments904, and more generally, to any of the frame segments.

FIG.15depicts an exploded view of a mating end1500of a frame segment according to an embodiment. The mating end1400includes mating mechanical connectors1441, a mating electrical connector1445, and alignment pins1446.

FIG.16depicts an isometric view another example configuration of one of the joint link segments906ofFIG.9according to an embodiment. The example joint link segment906depicted inFIG.16includes a body portion1602(which can include a base portion1603), a first end portion1604, and a second end portion1606.

FIG.17Adepicts an exploded view another example configuration of one of the joint link segments906ofFIG.9according to an embodiment.FIG.17Bdepicts a side view of the example joint link segment906ofFIG.17Aaccording to an embodiment. The example joint link segment906depicted inFIGS.17A and17Bincludes a body portion1702(which can include a base portion1703), a first end portion1704, and a second end portion1706.

FIG.18depicts a portion1800of a frame of a modular inspection system according to an embodiment. The portion1800includes measurement device link segments1804a,1804b,1804cand joint link segments1806a,1806cconfigured and arranged as shown. The measurement device link segment1804ais electrically and mechanically coupled to the joint link segment1806awhich is electrically and mechanically coupled to the measurement device link segment1804bin a substantially 45-degree relationship. The measurement device link segment1804bis electrically and mechanically coupled to the joint link segment1806b, which is electrically and mechanically coupled to the measurement device link segment1804cin a substantially 45-degree relationship. It should be appreciated that the measurement device link segments1804a,1804care at a substantially 90-degree relationship to one another. In the example ofFIG.18, a field-of-view of a measurement device of the measurement device link segment1804aoverlaps a field-of-view of a measurement device of the measurement device link segment1804b. Similarly, a field-of-view of a measurement device of the measurement device link segment1804coverlaps a field-of-view of a measurement device of the measurement device link segment1804b. Other configurations are also possible, and the example configuration ofFIG.18is merely for illustrative purposes.

For example,FIG.19depicts a portion1900of a frame of a modular inspection system according to an embodiment. The portion1900includes measurement device link segments1904a,1904band a joint link segment1906configured and arranged as shown in a substantially straight relationship to one another. The measurement device link segment1904ais electrically and mechanically coupled to the joint link segment1906which is electrically and mechanically coupled to the measurement device link segment1904b. In the example ofFIG.19, a field-of-view of a measurement device of the measurement device link segment1904aoverlaps a field-of-view of a measurement device of the measurement device link segment1904b. Other configurations are also possible, and the example configuration ofFIG.19is merely for illustrative purposes.

FIG.20is a list of elements in a method2000for arranging frame segments to form a modular inspection system according to an embodiment. A method element2002of the method2000includes arranging a plurality of frame segments to form a first frame (e.g., the frame902) having a first shape. The plurality of frame segments can include a plurality of measurement device link segments (e.g., the measurement device link segments904) and a plurality of joint link segments (e.g., the joint link segments906). Each of the plurality of measurement device link segments can include a measurement device (e.g., the measurement device1220) which together form a plurality of measurement devices having a field of view within or adjacent to the first frame. Each of the plurality of measurement devices is operable to measure three-dimensional (3D) coordinates for a plurality of points on an object as described herein.

A method element2004of the method2000includes establishing a computer communications network among the plurality of frame segments when the frame segments are arranged in the first shape to transmit data to a computing device (e.g., the computing device910). A method element2006of the method2000includes receiving, by the computing device, data from the plurality of measurement devices via the network established by the plurality of frame segments when the plurality of frame segments are arranged in the first shape. A method element2008of the method2000includes an optional rearranging the plurality of frame segments to form a second frame having a second shape. It should be appreciated that the rearranging of the frame segments provides flexibility in allowing different objects to be inspected.

In some examples, the method2000further includes reestablishing the network among the plurality of frame segments when the plurality of frame segments are arranged in the second shape to transmit data to the computing device. Such examples of the method2000further include receiving, by the computing device, data from the plurality of measurement devices via the network reestablished by the plurality of frame segments when the plurality of frame segments are arranged in the second shape.

In some examples, each of the plurality of frame segments comprises an electrical path to establish (or reestablish) the network. In some examples, each of the plurality of frame segments comprises an optical path to establish the network. In yet additional examples, the network can be established (or reestablished) by a combination of electrical paths and optical paths. As used herein, the term electrical paths describes the paths that data signals travel through cabling, networking equipment, etc. Similarly, the term optical paths describe the paths that light signals travel through cabling, networking equipment, etc. The network, utilizing electrical paths and/or optical paths, enables the transmission of data, such as from a measurement device to a computing device, from one measurement device to another measurement device, from the computing device to a measurement device, and the like. The network can be, for example, a gigabit network enabled to transmit data at speeds of approximately one gigabit per second (Gbps). The network can also be, for example, a ten gigabit network enabled to transmit data at speeds of approximately 10 Gbps. It should be appreciated that other network speeds can be supported and are within the scope of the disclosed embodiments.