WO2000057131A1 - Method for establishing a coordinate system - Google Patents
Method for establishing a coordinate system Download PDFInfo
- Publication number
- WO2000057131A1 WO2000057131A1 PCT/US2000/007445 US0007445W WO0057131A1 WO 2000057131 A1 WO2000057131 A1 WO 2000057131A1 US 0007445 W US0007445 W US 0007445W WO 0057131 A1 WO0057131 A1 WO 0057131A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- transmitter
- transmitters
- data
- optical
- detector
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S1/00—Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith
- G01S1/70—Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith using electromagnetic waves other than radio waves
- G01S1/703—Details
- G01S1/7032—Transmitters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C15/00—Surveying instruments or accessories not provided for in groups G01C1/00 - G01C13/00
- G01C15/002—Active optical surveying means
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S1/00—Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith
- G01S1/02—Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith using radio waves
- G01S1/08—Systems for determining direction or position line
- G01S1/44—Rotating or oscillating beam beacons defining directions in the plane of rotation or oscillation
- G01S1/54—Narrow-beam systems producing at a receiver a pulse-type envelope signal of the carrier wave of the beam, the timing of which is dependent upon the angle between the direction of the receiver from the beacon and a reference direction from the beacon; Overlapping broad beam systems defining a narrow zone and producing at a receiver a pulse-type envelope signal of the carrier wave of the beam, the timing of which is dependent upon the angle between the direction of the receiver from the beacon and a reference direction from the beacon
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/16—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S2201/00—Indexing scheme relating to beacons or beacon systems transmitting signals capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters
- G01S2201/01—Indexing scheme relating to beacons or beacon systems transmitting signals capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters adapted for specific applications or environments
- G01S2201/03—Construction sites
Definitions
- This invention relates in general to the field of precise position measurement in a three-dimensional workspace and more particularly to an improved apparatus and method of providing position-related information.
- a variety of endeavors require or are greatly aided by the ability to make a precise determination of position within a three-dimensional workspace. For example, laying out a construction site according to a blueprint requires the identification at the actual construction site of a number of actual positions that correspond to features of the building on the blueprint.
- Land surveying techniques fix position using a precision instrument known as a theodolite.
- the theodolite is both an expensive piece of equipment and requires substantial training to use.
- GPS equipment is relatively easy to use, but can be expensive and has limited accuracy on a small scale due to a certain amount of intentional error that is introduced by the military operators of GPS satellites.
- the present invention may be embodied and described as a position fixing system that includes, at a high level, several transmitters and a receiving instrument.
- the transmitters a preferably optical transmitters that transmit laser beams that have been fanned into a plane.
- the transmitters transmit signals from stationary locations and the receivers receive these signals. Consequently, the receiving instrument incorporates sensors, e.g., light detectors, that detect the signals from the transmitters.
- the receiving instrument determines a coordinate system and calculates its position and assorted other information of interest from these received signals.
- the receiving instrument displays this information through a user interface.
- the information may be, for example, the location of the receiving instrument or its distance relative to another location.
- the present invention can be applied to a variety of different fields, applications, industries, and technologies.
- the present invention can be used, without limitation, with any system in which information related to position must be determined, including without limitation movement, dimensional measurement, and position and orientation tracking. This includes without limitation many different processes and applications involved in myriad industries.
- film making digitizing models, virtual sets, camera tracking, automatic focusing
- construction trades, power tools, surveying, CAD, equipment control, construction measurement and layout
- robotics robot calibration, work cell configuration, mobile robot navigation, hazardous waste excavation
- law enforcement abident scene mapping, crime scene mapping, incident reconstruction
- computers 3D input devices, video games
- virtual reality augmented reality, virtual arcades, 3D Internet experiences
- manufacturing factory automation, facility decommissioning, parts inspection, facility maintenance, manufacturing tooling and inspection, manufacturing measurement
- medical surgical navigation, smart operating rooms, medical instrumentation
- defense ordnance modeling, simulation training, aircraft fit-checks, ship retrofit and repair, site remediation).
- the transmitter of the present invention includes a rotating head which sweeps one ore more, preferably two. fanned laser beams continually through the three- dimensional workspace in which the receiver will be used to make position determinations based on the optical signals received from the transmitter. In this way. the signals from the transmitter cover the entire three-dimensional workspace.
- the present invention can be used in conjunction with the techniques and apparatus described in previous provisional patent application U.S.S.N. 60/104,1 15 to Pratt, also assigned to the present assignee, filed on Oct. 13, 1998, and incorporated herein by reference.
- the receiver preferably has a clear optical path to each transmitter in the system during position fixing operation.
- One of the key advantages of the transmitters according to the present invention is the simplification of the optical paths as exemplified by the lasers rotating with the head. Additionally, there is no window in the preferred transmitter. Therefore, there is no distortion introduced by the movement of the laser across a window. As described in detail below, the preferred embodiment utilizes a lens or other device which rotates with the laser. Thus, there is no distortion caused, for example, by variable window characteristics or angles of incidence or between a rotating lens and a fixed laser.
- the lack of a fixed window also simplifies manufacture, maintenance, and operation. The lack of a fixed window does make it preferable that a rotating seal be added to the transmitter.
- the rotating head of the transmitter of the present invention and the lasers within it, rotate through a full 360 degrees at a constant, although configurable, velocity.
- each transmitter in the system needs to rotate at a different velocity. Therefore, each transmitter has a velocity that can be controlled by the user. Additionally, each transmitter has an easily quantifiable center of rotation which simplifies the algorithms for determining position and can simplify the set-up of the system.
- a separate synchronization signal also preferably an optical signal, fires in the preferred embodiment once per revolution of the rotating head to assist the receiver in using the information received from the transmitter.
- the velocity of the rotating head is configurable through the use of, in the preferred embodiment, a field programmable gate array ("FPGA' " ).
- FPGA' field programmable gate array
- Such configurable speed control allows the lasers, or other transmitters, to be differentiated by a receiver based on their differing speeds of rotation.
- the use of multiple transmitters as is appreciated by those of ordinary skill in the art, enhances position detection.
- Other advantages are obtained through the use of programmable electronics (FPGAs. flash memory, etc). Not only can the desired speed be set by changing the clock to the phase locked loop, but the overall gain of the control loop can be programmed to maximize performance at the velocity of interest.
- position detection is also enhanced by using multiple beams and controlling the shape of those beams. These beams may be in the same rotating head assembly or in separate rotating head assemblies.
- Two beams is the preferred number per rotating head assembly, however, more beams can be used.
- another embodiment uses four beams, two for short range and two for long range.
- the two short-range beams would have fan angles as large as possible. This will allow the user to operate near the transmitters, such as in a room. For long-range, the user would normally be operating away from the transmitters. Therefore, in that circumstance the vertical extent of the beams would be reduced to maximize the range of the system.
- the beams are, preferably, of type III laser. However, the rotation of the beams reduces their intensity to the fixed observer such that they can be classified as type I lasers. Safety features are integrated into the device to prevent the powering of the lasers when the rotating head is not in motion.
- At least two interlocks are utilized.
- the first depends on the phase lock loop.
- the lasers are turned off until the system is rotating in phase-lock for at least 1024 phase-clock-cycles (approximately 32 revolutions).
- the second is monitoring the absolute speed using the once-per-rev index on the encoder.
- a tolerance is programmed into the system, currently 1 -part-in- 1000. When the velocity is outside that window the laser is disabled and not allowed to operate.
- the Transmitter allows flexibility in setting beam characteristics as needed for the specific application of the invention.
- One advantage is that the beam shape can be modified.
- the key is that the beam shape should correspond with correctly filling the desired three-dimensional workspace. For construction trades this might be a room 20m x 20m x 5m in size. For construction machine control this might be a space 100m x 100m x 10m in size.
- the energy can be properly directed.
- the beam shape can also be controlled to differentiate beams. This can be done for multiple beams on a given transmitter or on different transmitters. For a given transmitter, the beam of the first and second beams must be differentiated.
- One technique uses their relative position with respect to the strobe in time. Another technique is to assure that the beams have different widths ("beam width” or "divergence angle"). Then, for instance, the first beam could be the "larger" of the two beams.
- Fanning the beam can be done using a variety of methods known in the art, including without limitation, rod lenses, pal lenses, and cylindrical lenses.
- the use of rod lenses offers a relatively simple approach, whereas the use of pal lenses offers greater control over the energy distribution.
- the beam typically is emitted from the source as a conical beam, then a collimating lens shapes the beam into a column, then the fanning lens fans the column.
- Rod lenses can be used to increase control on divergence.
- One of the major advantages of rod lenses for line generation is that they do not directly affect the quality of the beam in the measurement direction (beam direction). Therefore, they should not affect the divergence of the laser beam as set by the collimating optics.
- Pal lenses can be used to increase control of the energy distribution in the fan direction.
- PAL type lenses can even create "uniform" distributions, where the energy is uniform in the direction of the fan plane. A uniform distribution is often inefficient, however, if potential receivers are not uniformly distributed along the entire fan plane. In some implementations a "focus" must be created before the lens. In that implementation, the use of the PAL technique could affect the beam in the measurement direction.
- Gaussian beams can also be used to maximize the performance of the receiver.
- Gaussian beams are symmetric beams in that the energy distribution across the divergence angle or beam width is symmetric.
- a simple threshold technique is used in the receiver, it important that the pulses be symmetric and be without shoulders or sidelobes. It is also helpful if the distribution's shape does not change with range.
- the Gaussian distribution meets all of these criteria. With symmetric pulses that do not have shoulders or sidelobes, the receiver will be able to detect the center of the beam. Non- symmetric pulses, conversely, can cause the receiver to falsely identify the exact time when the beam center intersects the receiver.
- the synchronization signal is strobed and must be symmetric. Therefore, pulse shaping in the flash/strobe pulse generator for the synchronization signal is required.
- a square pulse with equal rise and fall times is the desired pulse shape.
- This pulse is preferably provided to a plurality of LEDs on the transmitter that are arranged to send out the synchronization pulse signal in a multitude of directions throughout the three-dimensional workspace. The light output of the LEDs is directly proportional to the current flowing through the LEDs. Because of the high currents involved in creating the strobe, a pulse-forming network must be used to assure that the current is a square wave as it passes through the diodes.
- a transmitter according to the present invention uses a serial port for communication and control. This allows calibration data and control parameters to easily be transferred. Recall that the transmitters are differentiated by their speeds. Therefore a technique must be put in place to simplify the speed changes. Additionally, a particular set of transmitter parameters must be made available to the receiver so that the receiver can calculate position based on the signals received from the transmitter.
- the preferred embodiment uses serial communication between the transmitter and the receiver or test equipment.
- the serial connection is a well-known RS-232 connection.
- the connection is preferably through an infrared serial port. This allows the transmitter to be sealed and yet communicate with the outside world. To avoid interference with the measurement technique, this port is only active when the lasers are off.
- the motor and the provision of power to the rotating head assembly are key components of a transmitter according to the preferred embodiment.
- a rotary transformer is used.
- Several techniques are available for powering devices in a rotating head. The most common is the use of slip rings. Unfortunately, slip rings require physical contact between the "brushes" and the “slip-ring”. This creates dust in the system and can cause friction in the motor.
- the preferred technique is to use a rotating transformer. The transformer technique will provide minimal drag on the motor. Additionally, through the use of flat signal transformers as power transformers, the technique is very compact. Fly-back control is used on the stator side of the transformer. To minimize the number of components in the rotating head, the voltage control is performed on the stator side of the transform. To optimize efficiency, a fly-back driving technique is utilized.
- a sine wave drive motor is a low-cost motor with good inherent stability intra-revolution and, as such, is useful in ensuring constant velocity rotation.
- the bearing separation should be maximized to achieve optimal results. Any precession and wobble (wow and flutter in a turntable) will be a source of error in the system. It will lead directly to an error in the "z" direction. Using two precision bearings and maximizing the distance between the bearings can minimize these errors.
- the strobe flashes of the synchronization signal are based on a once-per- revolution indicator tied to the motor shaft. There are many ways to create this shaft position index.
- the simplest and preferred technique is to use the index normally supplied with an optical encoder. This separate output of the encoder is directly equivalent to a shaft position index.
- An optical encoder disk is used to give rotation information.
- Other devices including without limitation, tachometers and synchros could be used.
- the optical encoder disk is typically made of glass and has a series of radial marks on it which are detected as the disk rotates. Additionally, the disk typically has a single "index" mark of a different radius which is used to detect complete rotations.
- the speed of the motor is controlled through a feedback phase-locked loop ("PLL") system.
- the disk system square wave is one input and a clock from the transmitter system is the other input.
- the transmitter clock has a selectable frequency.
- the output of the PLL is used to control the speed of the motor rotation such that the PLL remains locked at the selected frequency.
- the index mark of the disk can also be used to initiate the strobe pulse once/revolution.
- the receiver For the receiver to use the signals from the transmitter to accurately and precisely fix a position in the three-dimensional workspace, the receiver must have available a certain set of parameter characteristic of the transmitter. For example, as will be explained in detail below, the receiver must know the angles at which the laser beams are emitted from the transmitter head.
- the transmitter can be manufactured without such high precision and without requiring that the resulting transmitter conform to pre-specified parameters. Rather, the operating parameters of the transmitter required by the receiver are carefully measured after the transmitter is manufactured. This process, which will be referred to as transmitter calibration herein and described in more detail below, removes the expensive requirement of a precisely constructed transmitter. Consequently, the system of the present invention becomes much less expensive.
- each transmitter preferably incorporates a memory device in which the calibration parameters can be stored. These parameters can then be communicated to the receiver electronically through the serial port, optical or wired, of the transmitter described above.
- the receiver will have a corresponding serial port, optical or wired, for receiving data from the transmitter.
- these parameters are then stored in memory in a Position Calculation Engine (PCE) of the receiver and can be updated as required. For example, if a new transmitter is added to the system, then a new set of parameters needs to be loaded into the PCE from or for that transmitter. As an additional example, if the rotation speed of a transmitter is changed, then this information needs to be updated in the PCE.
- PCE Position Calculation Engine
- the receiver or receiving instrument is a wand, an example of which is illustrated in Fig. 17.
- the wand provides a light-weight, mobile receiving instrument that can be carried anywhere within the three-dimensional workspace.
- a tip of the wand is used as the point for which position within the workspace is determined based on the signals received from the system transmitter.
- the position of the tip can be continuously calculated by the receiver and displayed for the user on a display device provided on the receiver. Consequently, no extensive training is required to operate the position fixing system of the present invention once the system is set up and functioning.
- the wand preferably contains two receivers, which are light detectors if the transmitter is emitting optical signals as in the preferred embodiment.
- the Position Calculation Engine (“PCE") of the receiving instrument is a processor that performs most of the computations of the receiving instrument.
- the PCE supports any required set-up procedure as well as the subsequent tracking, position calculation, and information display functions.
- the receiving instrument and PCE will be described in detail below.
- the Smart Tip shown in Fig. 17, can also perform computations, as indicated by the FPGA (field-programmable gate array) and the "i Button" in each Smart Tip.
- the Smart Tip can be present at either end of the wand in the present system and the signal "Tip Present" indicates whether there is a Smart Tip on each of the receiving instrument ends.
- the setup procedure is described in detail below.
- the setup procedure places the transmitters in position and commences their operation.
- the setup procedure also allows the system to, among other things, define a useful coordinate system relative to the three-dimensional workspace and begin tracking the wand's location in that coordinate system.
- FIG. 1 is an illustration of an improved optical transmitter according to the present invention, contrasted with a conventional rotating laser;
- FIG. 2 is a schematic plan and sectional views illustrating the preferred embodiments of the optical transmitter apparatus of Fig. 1 according to the present invention;
- FIG. 3 is a block diagram of the improved optical transmitter for a position location system and method according to the present invention
- FIG. 4 is an illustration of the rotating optical head and corresponding frame of reference according to the transmitter of the present invention
- FIG. 5 is a graphic representation of a fan beam according to the present invention.
- FIG. 6 is a graphic representation of the fan beam of Fig. 5 rotated about the x axis
- FIG. 7 is a graphic representation of the fan beam of Figs. 5 & 6 further rotated about the z axis;
- FIG. 8 is a graphic representation of the plane of the fan beam intersecting a detector according to the present invention
- FIG. 9 is a graphic representation of the planes of two fan beams intersecting a detector according to the present invention.
- FIG. 10 is a Cartesian plot of vectors representing intersecting fan beam planes according to the present invention.
- FIG. 1 1 is a graphic representation of a single fan beam plane illuminating a detector according to the present invention
- FIG. 12 is an illustration of a three-transmitter position measurement system according to the present invention
- FIG. 13 is a linear time plot of a typical pulse sequence for pulses from an optical transmitter according to the present invention
- FIG. 14 is a time plot of the pulse sequence during a single rotation of an optical transmitter according to the present invention
- FIG. 15 is a graphical depiction of the pulses emitted during a single rotation of an optical transmitter according to the present invention.
- FIG. 16 is a plan view of the improved transmitter according to the present invention illustrating the preferred positioning of the transmitter front and the zero- azimuth plane of the improved transmitter;
- FIG. 17A is an illustration of a receiving instrument for a position measuring system according to the present invention.
- FIG. 17B is an detailed illustration of the detector and tip assembly of the receiving instrument of Fig. 17A according to the present invention.
- FIG. 17C is a block diagram of some of the important elements of the receiving instrument according to the present invention.
- FIG. 18 shows the data flow of the position measurement receiver according to the present invention
- FIG. 19 shows the data flow of pulse detection and tracking according to the present invention
- FIG. 20 is a block diagram of the Position Calculation Engine (PCE) of the receiving instrument according to the present invention.
- PCE Position Calculation Engine
- FIG. 21 is a block diagram of the field programmable gate array (FPGA) on the PCE of Fig. 20;
- FIG. 22 is a flowchart for Software Object Detector: :Entry which is executed by the receiving system according to the present invention
- FIG. 23A is a flowchart for Software Object PulseTrackManage ⁇ : Update which is executed by the receiving system according to the present invention:
- FIG. 23B is a continuation of the flowchart for Software Object
- FIG. 24 is a flowchart for Software Object PulseTrack:: Synchronize which is executed by the receiving system according to the present invention
- FIG. 25 is a flowchart for Software Object PulseTrack: :Track which is executed by the receiving system according to the present invention
- FIG. 26 is a flowchart for Software Object PulseTrack: :Predict which is executed by the receiving system according to the present invention
- FIG. 27 is a flowchart for Software Object PulseTrack:: Reconcile which is executed by the receiving system according to the present invention
- FIG. 28 is a flowchart for Software Object Transmitter: :Reconcile which is executed by the receiving system according to the present invention
- FIG. 29 is a flowchart for Software Object FlyingHeadTransmiterORPGWithDifferentCycle::postSynchronize which is executed by the receiving system according to the present invention
- FIG. 30 is a flowchart for Software Object PulseTrack: :isMultipath which is executed by the receiving system according to the present invention
- FIG. 31-1 is an illustration of a system according to the present invention which is being initialized using a Least Squares Resection method
- FIG. 31-2 is a mathematical illustration of a step in the Least Squares Resection method of initializing a position measuring system according to the present invention
- FIGS. 32-1 and 32-2 are illustrations of a system according to the present invention which is being initialized using a Quick Calc Method which is part of the present invention
- FIG. 32-3 is a mathematical illustration of a step in the Quick Calc Method of initializing a position measuring system according to the present invention
- FIG 32-4 is an illustration of a first transmitter identified in the Quick Calc
- FIGS. 32-5, 32-6, 32-7, 32-8, 32-9, 32-10, 32-1 1 and 32-12 are a mathematical illustrations steps in the Quick Calc Method of initializing a position measuring system according to the present invention. Detailed Description of the Preferred Embodiments
- a transmitter (10) according to the present invention is a device physically similar to a rotating laser (1 1), which is also illustrated in Fig. 1 for comparison.
- a conventional rotating laser (11) has a single rotating spot beam (12) that is swept through a plane as the head of the laser (1 1) rotates.
- the transmitter (10) of the present invention emits two rotating/ ⁇ beams (14 & 16). These fan beams (14 & 16) sweep through the three-dimensional workspace within which the system of the present invention can fix the position of the receiving instrument.
- Fig. 2 shows the preferred assembly of the transmitter (10), particularly the rotating head (7) of the transmitter (10), according to the present invention. As shown in Fig.
- the rotating head (7) of the transmitter (10) includes two fan lasers (201 & 202).
- ⁇ 0ff describes the angular separation between the two laser modules (201 & 202) in the rotating head (7) as viewed from above the transmitter (10).
- the lasers (201 & 202) are preferably disposed with optical axes at approximately 90° to each other, ⁇ , and ⁇ 2 describe the tilt of the fan plane of the lasers (201 & 202), respectively, with respect to a vertical plane.
- these two angles are measured from vertical, and are nominally set to -30° for beam 1 and +30° for beam 2.
- the actual values for ⁇ 0ff , ⁇ , and ⁇ 2 are determined through a factory calibration process and need not conform exactly to the preferred values described herein.
- the transmitter head (10) rotates, it scans the measurement field more fully described hereafter with the two planes of light (14 & 16) emitted by the fan lasers (201 & 202).
- the receiver or receiving instrument (24, Fig. 12) is illuminated by each laser's fan plane (14 & 16) exactly once during a rotation of the head (7).
- the transmitter (10) also fires an optical strobe as a synchronization signal to the receiver (24).
- the strobe is fired from a plurality of LED's (6, Fig. 3) disposed to emit light at a variety of angles from the transmitter (10) so as to cover the three-dimensional workspace.
- the synchronization signal is emitted at a fixed point in the head's revolution so as to be emitted once per revolution of the transmitter head (7).
- the strobe illuminates the receiver (24) and is used to provide a zero reference for the rotation of the head (7).
- Each transmitter (10) in the system rotates at a known and unique rate.
- This unique rotational rate allows the software in the receiver to differentiate between the transmitters surrounding the three-dimensional workspace. Knowing the speed of each transmitter and a zero point for the rotation of that transmitter given by the synchronization signal, the receiver knows when at what interval and time to expect to detect the first and second fan beams (14 & 16) emitted by any particular transmitter (10).
- beams detected at the expected interval and timing can be assigned as having come from a particular transmitter in the system based on the operating parameters of that transmitter known by the receiver, i.e., communicated to the receiver in the calibration processes mentioned above.
- a transmitter (10) of the present invention preferably includes the rotating head (7) and synchronization or reference signal emission assembly (6) as described above.
- a motor drive assembly (5) drives the rotating head (7).
- a motor velocity control circuit (4) is provided to provide power to and regulate the velocity of the motor drive assembly (5).
- the present invention preferably relies on a calibration procedure performed during the manufacture/assembly process to generate unique data for characterizing each optical transmitter (10) rather than employing a much higher cost precision assembly process.
- angular calibration data is generated during the manufacture/assembly process that includes ⁇ off , ⁇ , and ⁇ 2 (as defined above) for each transmitter (10).
- ⁇ 0ff describes the angular separation between the two laser modules
- This angular calibration data (9) is preferably stored in calibration data memory (2).
- data defining the setting for the rotational velocity can be preloaded during the manufacturing process and loaded into calibration data memory (2) or variable motor control memory (4). If the rotational velocity is adjusted by the user, the new rotational velocity value will be recorded in the data memory (2) or the motor control memory (4).
- a data processor (3) is also provided to control the motor velocity control unit (4) and the data calibration memory (2).
- the data processor (3) is preferably connected to a user interface (303), such as a keyboard, so that the calibration data can be entered for storage in the calibration memory (2) or so that the angular velocity of the motor drive assembly (5) can be changed and the new value stored in the appropriate memory
- data (8) that sets the velocity of the motor drive assembly (5) may be input directly to variable motor control unit (4) using a cable port (302) or optical port (301) of the transmitter. That velocity calibration data must likewise be stored in memory (4 and/or 2).
- calibration data (9) can be entered directly to the calibration memory (2) through a cable port (302) or optical port (301) of the transmitter.
- the processor (3). calibration memory (2) and velocity control logic/memory unit (4) each may be connected to the cable port (302) or optical port (301) of the transmitter so that data can be input or retrieved therefrom.
- Calibration data from the memories (2 & 4) can be output to the optical receiver (24: Fig. 12) in a measurement system of the present invention from the memory units (2 & 4) via the cable or optical output ports (302 & 301).
- the calibration data for that transmitter (10) must be transferred to or loaded into the receiver (24; Fig. 12).
- the scanning operation of the transmitter (10) is accomplished with the two laser fan beams (14 & 16) described above with reference to Figs. 1 and 2.
- Each of the fan beams (14 & 16) will be considered individually in this mathematical model.
- Each transmitter (10) has its own local reference frame, and these reference frames are different from the user's reference frame as will be explained hereinafter.
- the reference frames of the various transmitters (10) in the system will be related to the user ' s reference frame as described below.
- the head (7) preferably rotates in the positive direction about the z-axis according to the right hand rule.
- a vertical plane at y 0, i.e. a plane in the x-z axis as shown in Fig. 5.
- the plane can be uniquely represented by a vector normal to its surface. This plane corresponds to the plane in which light would be emitted by a fan laser that is oriented vertically.
- the plane of the fan beam is drawn as square, but in actuality the plane has a finite angular extent as shown by the dotted lines. This angular extent does not affect the mathematical model, but it does impact the angular field of view of the transmitter (10).
- the vector defining this plane is given below.
- This new plane represents a fan laser as inserted into the head of the transmitter (10).
- ⁇ is the physical slant angle described in the previous section.
- Each fan beam emitted from the transmitter (1) will have a different ⁇ , which is one of the calibration parameters determined during manufacture and communicated to the receiver (24) for use in calculating position.
- a positive ⁇ is a right-handed rotation about the x-axis, as shown in Fig. 6.
- this vector expression represents the laser fan plane at the point in time when it intersects the detector (24) as shown in Fig. 8.
- This vector expression " .
- the receiver system For each rotation of the transmitter head, the receiver system (24). as described below, calculates two " vectors, and " 2 , that describe the location of the two fan beams from each transmitter (10) at their intersection point with the detector (24) (See Fig. 12). Since ⁇ is a constant determined through factory calibration, each " vector depends solely on its corresponding scan angle 0, which in turn depends on timing measurements made by the receiver system (24) using the synchronization signal concurrently emitted by the transmitter (10).
- the theodolite network method is used because it is faster and more suited to the transmitter's unique design.
- the theodolite network method is used because it is faster and more suited to the transmitter's unique design.
- the receiver system would calculate the intersection between the measured azimuth-elevation vectors from each transmitter ( 10) to a signal detector as illustrated in Fig. 10.
- Fig. 9 shows both fan planes (26 & 28) of the respective fan beams (14 & 16) at their point of intersection with the light detector on the receiver (24).
- the fan planes (26 & 28) intersect one another in a line, and this line is a vector r that passes through the light detector:
- Figs. 9 and 10 illustrate the limitation of the theodolite method, i.e. it is only possible to determine two dimensions of the three dimensional distance between a single transmitter and the receiver system (24). We can determine the two angles to the receiver (24), i.e. azimuth and elevation, but not the distance.
- the next step in the theodolite network method is to calculate r vectors for all transmitters in the workspace and then calculate the intersection of these vectors. If the baseline between the two transmitters and the angles to a receiver from each transmitter are known, the position of the receiver can be calculated.
- a contains three unknowns, (x, y, z), so once again we do not yet have enough information to calculate the third dimension.
- Adding a third fan beam to the transmitter (10) would add a third row to the equation, but this equation would not be linearly- independent from the first two.
- Fig. 12 we have placed one transmitter (10-1) at the origin, a second transmitter (10-2) along the x axis, and a third transmitter (10-3) along the y axis. Only two transmitters are strictly required for operation of the system according to the present invention. However, three are illustrated here to indicate that additional transmitters can be used to improve the accuracy of the position determinations made by the system.
- the axis setup illustrated is arbitrary but is used to show that the transmitters are tied together in a common reference frame. As previously discussed, we call this common frame the user 's reference frame to differentiate it from the transmitters' reference frames described previously.
- R tx v » (p - p tx ) 0
- p is the location of a detector on the receiving instrument (24) in the user's reference frame and is the value we wish to calculate.
- R tx v is the vector describing the laser fan plane in the user ' s reference frame, whereas " itself describes the laser fan plane in the transmitter ' s reference frame .
- p - p t ⁇ is a vector from the transmitter's origin to the detector location in user ' s reference frame. For n > 2 transmitters, we have the following set of equations.
- the first subscript is the transmitter number and the second subscript on " is the laser beam number.
- the two " vectors from each transmitter (10) are based on the corresponding scan angles, ⁇ (t) and ⁇ 2 (t), for the two laser fan beams (14 & 16) of the transmitter (10).
- ⁇ (t) and ⁇ 2 (t) for the two laser fan beams (14 & 16) of the transmitter (10).
- the receiver system (24) calculates these two scan angles. Specifically, to calculate position for a single light detector on the receiver system (24), we need ⁇ (t) and 0 2 (t) for each transmitter (10) in the three- dimensional workspace (30).
- a typical receiver system (24), to be described hereinafter with reference to Fig. 21 includes a physical tool or wand on which are a measurement tip and photodiode detector circuitry, a Position Calculation Engine (PCE), and a user interface.
- PCE Position Calculation Engine
- the photodiode detector circuitry receives electrical pulses or strikes every time one of the planes of light or one of the optical synchronization strobes illuminates a light detector on the receiver (24).
- Fig. 13 illustrates a typical pulse sequence for a single rotation of the transmitter head (7).
- the time between reference pulses, as indicated by T, is the period of one transmitter head revolution.
- the reference pulse is preferably created by the optical strobe assembly (6, Fig. 3).
- the receiver system (24) makes two differential timing measurements, ⁇ f and ⁇ f 2 , for each rotation of the transmitter head (7). These timing measurements correspond to the times at which the light detector of the receiver system (24) detects each of the two fan beams from a transmitter (10).
- Fig. 14 relates these time differences to angular differences. We take the above plot in time and view it as a circle of 2 ⁇ radians representing one revolution of the transmitter head (7).
- a and a 2 we define two angular measurements, a and a 2 , as the angle between the optical reference signal detection pulse and the fan beam 1 and fan beam 2 detection pulses, respectively.
- the reader should not confuse this circle with the actual transmitter head.
- This circle shows a plot in time and angle as viewed by the llight detector on the receiver (24). Using the measured time intervals ⁇ f and ⁇ . 2 and the fact that the transmitter completes one revolution in seconds, we can calculate a and a 2 by splitting the circle into percentages, as shown in Fig. 15.
- a and a 2 are not exactly equivalent to the ⁇ off angles described in the transmitter model.
- the two beams are not separated in azimuth. Rather, they scan together while overlapped as illustrated in Fig. 9.
- ⁇ off we define this angular separation ⁇ off as described herein above. Therefore, we must subtract 0 Q from a 2 to line a 2 up with a .
- ⁇ Q is determined through factory calibration and is part of the calibration data stored in memory (2: Fig. 3).
- the a and a 2 angles are measured relative to the reference pulse as shown in Fig. 14. If we relate this measurement to the transmitter model, then the front of the transmitter — its local x-axis — is the point in the head ' s rotation when the reference pulse fires. Therefore, the reference pulse also defines the zero-azimuth plane, since azimuth is measured from the transmitter's x-axis. If a single transmitter is to be used for azimuth and elevation calculations, it is sometimes desirable to set the point on the transmitter (10) where the detector's azimuth will be zero. We establish this set point with a factory-calibrated constant called ⁇ RP . As shown in Fig.
- 0 RP is the angular separation between the desired front of the transmitter and the occurrence of the reference pulse.
- the sign of 0 RP is determined as illustrated.
- ⁇ RP is set to zero because azimuth-elevation measurements relative to a single transmitter are not required. Therefore, we convert a and a 2 to the desired the scan angles, 0 and ⁇ 2 , by using the following equations:
- these equations are used to calculate ⁇ and ⁇ 2 values for each transmitter that illuminates a light detector on the receiving instrument (24). Therefore, if there are two transmitters (10) set up in the workspace (30), four 0 angles will be calculated for each detector, and hence four " vectors will be calculated. Three transmitters would result in six " vectors, and so on. Using all of the calculated " vectors, the receiver system (24) then performs the matrix solve described above for each light detector on the receiving instrument (24).
- more accurate position information can be obtained by individually and separately calculating the position of each light detector on the instrument (24) and using those results to define the position of a particular point, e.g., the wand tip, of the receiving instrument.
- the receiver system (24), which includes the data gathering apparatus, may comprise the portable wand-shaped receiving instrument (70) shown in Fig. 17A.
- Receiver (70) includes a rod or wand-shaped section (72) and a handle section (74).
- Rod section (72) terminates in a sensor point (76) which is utilized to touch or contact a position within the measurement field for which x-y-z data is to be generated.
- the rod section (72) includes two spherically shaped, spaced apart optical or light detectors (78 & 80) and an electronics section (82).
- the proper alignment and positioning of the sensor point (76) with the detectors (78 & 80) can be mathematically expressed as: where:
- P I y 2 is the position of the detector 80 closest to the wand handle 82
- P ⁇ 2 ⁇ i s the position of the detector 78 closest to the tip 76 d ⁇ w is the distance 72 from detector-2 78 to the tip 76.
- Proper alignment and spacing of the detectors (78 & 80) relative to the sensor tip (76) along projection line (84) as shown in Fig. 17B is an important aspect of the present invention as it permits a user to take accurate measurements within a workspace or measurement field without having the receiving instrument (24), i.e., wand (70), positioned exactly perpendicular to a transmitter reference plane (See Fig. 12) or any particular user reference plane.
- utilizing a wand tip (76) designed as described permits a user to position the receiver/detector tip (76) and receiver/detector rod section (72) without concern for any particular alignment.
- Receiver handle section (74) includes a trigger switch (88) to activate the receiver (70) to initiate x-y-z data generation in response to illumination of detectors (78 & 80) by two or more transmitters (10).
- This x-y-z position data may be generated when electric signals emanating from detectors (78 & 80) activate or are inputted to an internal programmed computer (90), i.e. the Position Calculation Engine (PCE).
- PCE Position Calculation Engine
- the PCE (90) is schematically diagrammed for reference in Figs. 20 and 21.
- the x-y-z position data corresponding to the position of the sensor point tip (76) is calculated by the PCE (90) when the trigger (88) is activated.
- This position data may be displayed in a display panel (92) and/or transferred to another data processor, not shown, via output data port (94), as will be understood by those skilled in the data processing arts.
- the output data port (94) is a serial port and may be an optical or wired port.
- the port (94) is an optical port and can be used to receive the calibration data stored in each transmitter (10) via the optical serial port (301; Fig. 3) or wired serial port (302; Fig. 3) of each transmitter (10).
- the hand grip portion (74) of the receiving instrument (70) also preferably includes the power supply (96) for the instrument (70).
- the power supply (96) preferably includes a rechargeable battery pack (96A) that feeds power to the instrument (70), including the PCE (90), communication port (94) and display device (92).
- This section describes how the receiving instrument (24, 70) tracks its location as it is moved through the workspace (30). What is described explains, amongst other things, how the wand (24) uses the received laser beam strikes and strobe pulses from each transmitter (10) to determine its location.
- the PCE position calculation engine (90), as shown schematically in Figs. 20 and 21 , contains firmware which translates incoming pulse times into physical position in space.
- This code is partitioned into several major blocks, or tasks. One of the tasks performs the job of categorizing and associating these pulse times upon their arrival. This process is known as tracking.
- the following flowcharts and text describe the operation of the tracker. There is a separate tracker or tracking function for each physical light detector on the receiving instrument (70).
- each transmitter in the system emits a periodic stream of light pulses. Within one period, three pulses are emitted from each transmitter. Each transmitter maintains a unique and stable period, or rate of emission. This allows the firmware in the PCE to discriminate between transmitters.
- the tracking algorithm maintains an individual pulse tracker for each emitter, e.g., laser light source, on each transmitter.
- a pulse is received by the firmware, its timing characteristic is compared with each of the pulse trackers in the system in an attempt to associate it with a known pulse train.
- synchronization an attempt is made at pairing unknown pulses, within the preset parameters of the existing pulse trackers. Once this is accomplished, the tracking mode is entered, whereby successive pulses are associated with their assigned pulse trackers. If a sequence of assignment failures occurs, tracking mode is exited, and re-synchronization is attempted.
- a post-sync check is performed to ensure that the pulses have been identified in the correct order. If an inconsistency is found, the pulse trackers are swapped. This helps to avoid unnecessary re-synchronization cycles. Under some conditions, environmental interference such as noise and multipath reflections are experienced.
- a noise pulse is defined as a pulse which cannot be correlated with the period of an existing pulse tracker. Multipath occurs when unexpected pulses are detected at the period of a transmitter.
- Fig. 18 provides a diagram of the data flow accomplished in the tracking function.
- the flow represented in Fig. 18 from the detector (78) to the PCE (90) will be duplicated for each light detector on the instrument (70).
- the detector e.g., 78
- the tracking system 100
- the tracking system (100) outputs data to the PCE (90).
- the PCE (90) also has received the calibration data (9) from all the transmitters in the system.
- the PCE (90) uses the output of the tracking system (100) and the calibration data (9), the PCE (90) generates the x,y,z position (101) of the detector (78) in the transmitter's reference frame using the mathematical model described in detail above. This information is then transmitted using a data transfer protocol (102) over a communications link (103) to a user interface system (104).
- the user interface system (104) may either be mounted on the receiving instrument (70) or may be a separate system in communication with the instrument (70) via communications link (103).
- the data (101) is received (105).
- the data (101) is then mapped from the transmitter reference frame in which it was created into the user's reference frame (106).
- a user interface (107) is also part of the system (104) and allows the user to define the user's reference frame and the consequent mapping function performed in block (106).
- the data is then mapped for display (107) on a display device (108).
- the display device (108) and display mapping block (107) are also under control of the user (109) through the user interface (107). Consequently, the user can have the mapping block (107) map the data into the most useful format.
- the data may be mapped by block (107) into a numeric display of x, y and z values in the user reference frame for display on the display device (108).
- the data may be mapped by block (107) into a dot on a map displayed on the display (108) that indicates the current position of the detector (78). Any mapping of the data that is most useful to the user (109) can be effected by block (107) prior to display (108).
- Fig. 19 illustrates in greater detail the tracking block (100) of Fig. 18.
- each light detector in the system will output a signal (110) including square pulses indicative of the detecting of a light pulse from the transmitter having been received and detected by the detector.
- a Field Programmable Gate Array (FPGA) (1 11) will output a signal specifying a time (T,) corresponding to a rising edge of the detected light pulse and a time (T 2 ) corresponding to a falling edge of the detected light pulse.
- T, and T 2 are transmitted to the tracking software (112), typically executed by the PCE (90).
- the tracking software associates each pulse, defined by times (T, and T 2 ), with a particular transmitter (10). This is done as described above based on the time at which the pulse is received as matched against a time a which a pulse from a given transmitter is expected, knowing that transmitter's rotational velocity and consequent synchronization pulse duty cycle.
- that pulse is also then associated with the calibration data (9) for that transmitter.
- the PCE (90) Given the calibration data (9) for the transmitter (as described above) and the times (T, and T 2 ) for the two fanned light beams and the synchronization pulse for that transmitter, the PCE (90) can calculate the ⁇ value, as shown in Fig. 7, for each the plane of light which swept the detector (e.g, 78). Consequently, the position of the detector (78) can be calculated using the mathematical model described above.
- Detector : Entry Fig. 22 illustrates the main background loop for the system. It is an RTOS
- Thetas are the equivalent angles between the lasers and the reference pulse based upon pulse times and transmitter rotational rate. This is a basic calculation required for any subsequent calculations, and must be enabled for any output to be generated. If they are disabled, go back to looking for more pulse times. 4) Check that all interval data is valid. If not, clear the theta and azimuth/elevation data and check for new pulse times. 5) Perform the calculation to convert angles (thetas) into intervals.
- the update function of the present invention is shown in flowchart form in Figs. 23A and 23B.
- This routine receives pulse times from the Detector "Entry" routine of Fig. 22, and associates them with pulse trackers.
- An individual pulse tracker exists for each emitter (i.e., fanned laser light source) in the system, preferably two per transmitter and each reference pulse generator (one per transmitter). This accomplished, an attempt is made to reconcile a set of three pulses and associate them with a single transmitter.
- PulseTrack Synchronize
- the synchronizing function of the present invention is shown in flowchart form in Fig. 24.
- the synchronize routine attempts to associate an incoming pulse with an existing pulse tracker. Once a regular pattern of pulses has been established, the system leaves sync mode and enters track mode, whereby the "track” routine is invoked instead of "synchronize". As long as "track” continues to successfully classify incoming pulses, the sync function is no longer called. Should the tracker encounter difficulty in recognizing pulses as coming from a particular transmitter within the system, sync mode is re-invoked, and the system attempts to re-synchronize the pulse stream.
- Loss of synchronization may occur for number of reasons, including noise or reflections in the environment, or rapid movement of the receiving instrument (24,70). As shown in Fig. 24:
- a sync window is defined as the time it takes for the transmitter head to complete approximately 0.2% of a rotation.
- each pulse gets passed to the pulse trackers.
- the tracking function is shown in flowchart form in Fig. 25. If any pulse is received within an expected range of when the next pulse should occur based on the known parameters of the transmitter, that pulse is accepted as the next pulse for that transmitter and is accepted by the associated tracker.
- Each fan beam and the synchronization pulse from each transmitter has its own tracker in the receiving system. As shown in Fig. 25, tracking is performed as follows:
- a track window is defined as the time it takes for the transmitter head to complete approximately 0.2% of a rotation.
- noise is defined as multiple pulses within the "track window”). If so, reset pointer to previous pulse, and return "noise”. 3) If no noise is detected, store current pulse information, and return success.
- the predicting routine of the present invention is shown in flowchart form in Fig. 26.
- This routine interacts with the "Track" routine described above by attempting to predict when the next pulse from any given pulse source should occur. It then tries to correlate this expected time with the next actual pulse time, within a pre-determined tracking window.
- the Predicting routine is performed as follows: 1) Are there two pulses within one tracking window? If so. noise exists; return.
- the Reconciliation function of the present invention occurs in two phases.
- the first part is pulse tracker reconciliation (shown in flowchart form in Fig. 27), which performs pulse pair housekeeping within a particular pulse tracker.
- the other is transmitter level reconciliation (shown in flowchart form in Fig. 28), which associates a set of three pulses from a single transmit period with a transmitter.
- pulse tracker reconciliation proceeds as follows:
- transmitter reconciliation is performed as follows:
- the Post Synchronization routine of the present invention is used as a final check to make certain that three trackers have synchronized to a single transmitter in a consistent manner and is shown in flowchart form in Fig. 29.
- PulseTrack is Multipath
- the multipath function of the present invention checks to see if multipath interference exists; that is, whether some pulses reaching the detectors are reflections of the emitters rather than "line of sight" pulse strikes. This is accomplished by comparing the pulse currently being classified with previous pulse times and is shown in flowchart form in Fig. 30. As shown in Fig. 30, the multipath routine is performed as follows:
- the preceding material describes the operation of the position determining system of the present invention. However, before the system is fully operational. It is necessary to establish and define the user's frame of reference so that the position information generated by the system is actually useful to the user. There are at least two different means of setting up the system and defining an initial user's frame of reference: (1) Least Squares Resection and the (2) Quick Calc Method.
- the Quick Calc method is easier to perform and requires less time and effort than Least Squares Resection. Consequently, the Quick Calc method is preferred for purposes of the present invention and will be described in detail below. However, for completeness, the Least Squares Resection method of setting up the system of the present invention will also now be explained.
- LSR Least Squares Resection
- Fig. 31-1 shows the same three transmitters (10-1, 10-2 & 10-3) shown in Fig. 12, which are arranged in an arbitrary coordinate system relative to each other as was described with regard to Fig. 12.
- Each transmitter in the workspace has an associated position vector p te and rotation matrix R fe that relate the transmitter's local reference frame to the user's reference frame.
- p fe and R tx are used in the position calculation algorithm.
- the user In order to perform an LSR with the position measurement system of the present invention, the user must level a receiving instrument (24) with a single light (or other signal) detector over at a minimum of three known coordinates in the workspace as shown in Fig. 31-1.
- the receiver system (24) makes scan angle measurements (measurements of #., and ⁇ 2 ) for the detector at each location.
- the algorithm calculates an approximate guess location and orientation for each transmitter (10) relative to the user reference frame.
- the algorithm then individually calculates the location and orientation of each transmitter (10) using Newton-Raphson iteration.
- This approach is different from the preferred Quick Calc Setup algorithm to be described below. In the Quick Calc Setup method, all transmitter locations and orientations are solved for simultaneously.
- the first step in LSR is for the receiver system to take scan angle measurements with a leveled one-detector wand (24) at a minimum of three locations in the workspace for which the position is already known in the user's reference frame.
- the receiver system For each receiver (24) location, the receiver system records the scan angles ⁇ ⁇ and ⁇ 2 from each transmitter (10) to the detector on the receiver (24). These two scan angles are then converted to their corresponding plane vectors v ⁇ and v 2 .
- the user enters the known coordinate (x t ⁇ ,y t ⁇ p' z t ⁇ p) an d which the wand's tip (24) has been placed as shown in Fig.31-1. Since the wand (24) is leveled over this point, the receiver system calculates the coordinate of the tool's detector by making the assumption that the z-axis in the user reference frame is parallel to gravity. Since, the detector (10) is mechanically located at a distance toolLength from the wand tip, we can write the detector location c /oc as:
- the subscript convention is loc beam .
- the first subscript indicates the wand location, i e. this subscript counts observations.
- the second indicates the transmitter, and the third indicates beam 1 or beam 2 on the transmitter (10).
- LSR is a resection algorithm because is locates and orients a single transmitter (10) in a preexisting reference frame, just like a total station is aligned to a set of control points.
- Quick Calc Setup locates and orients all transmitters relative to one another in an arbitrarily defined reference frame.
- the LSR algorithm must solve for the locations and orientations of the other transmitters in the workspace. Therefore, we are solving for the following quantities:
- R tx Rx(/x to ) Ry(ry tx ) Rz ⁇ )
- the order of rotation used is called z-y-x fixed angle. This rotation order is chosen because the z rotation component is typically the largest rotation for a transmitter; i.e. the transmitters are usually close to level. Any rotation order can be used, though, as long as R tx is consistent between the LSR algorithm and the position calculation algorithm.
- a solution vector x to include the 6 unknowns for the transmitter:
- the LSR algorithm Before performing a Newton-Raphson iteration, the LSR algorithm generates a guess for this x vector based on the assumption that the transmitter (10) is leveled in the x-y plane.
- the x vector generated by the guess routine is:
- a diagram for two LSR observations (Ptl & Pt2) relative to the transmitter (Tx) can be drawn as shown in Fig. 31-2.
- This Fig. shows two triangles whose common base is parallel to the x-axis. Since the 0 angles (scan angles) are measured relative to the front of the transmitter and rz tx is the angle between the x-axis and the front of the transmitter when the transmitter is in the xy-plane, we have the following formulas for the two ⁇ angles:
- ⁇ 2 ⁇ 2 tx - i + rz tx
- This matrix can then be solved for the location estimate of the transmitter (x tx , y ) . To determine if the solution is valid, the following two inequalities are checked.
- the guess routine takes groups of three adjacent observations and calculates a transmitter location estimate for each of the three observation combinations. The sum of the distances between these three transmitter location estimates is defined as the residual error, and the guess routine picks the set of observations with the lowest residual error. The final transmitter location ( ⁇ ,y tx ) is then the average of the three transmitter locations from this chosen observation set.
- the guess algorithm tries different rz tx values in increments of 10° starting with 0° and ending with 350°. Using the residual check at each step, the best rz ⁇ is chosen. Those rz, x values that are mathematically impossible with fail the inequality checks given above.
- the Least Squares algorithm uses Newton-Raphson iteration to find the best solution for the given setup.
- Newton-Raphson uses a fill function that evaluates the function to be solved for a given solution vector x :
- the quantity for which a solution is found is the location of the detector p . All other quantities are known.
- the quantities for which a solution is required are the location of the transmitter p ⁇ and the orientation of the transmitter R tx .
- the vector p is simply the location of the LSR observation c m
- the vector ⁇ is the vector of the measured beam plane. Therefore, for m LSR observations, we can write the set of equations to be solved: RtxVMx ' iC - Ptx R t ⁇ VMx 2 ' ⁇ Cl - Ptx R t ⁇ V 2 tx ⁇ ⁇ ⁇ 2 - Ptx
- the Newton-Raphson iteration adjusts R te and p until F(x) is approximately zero.
- the guess algorithm and subsequent Newton-Raphson iteration are performed for all transmitters in the workspace.
- This procedure determines, amongst other things, the coordinate system desired by the user and the wand's location in that coordinate system.
- Fig. 32-1 shows an example of a user reference frame.
- Each transmitter in the workspace has an associated position vector r p lx and rotation matrix R, v that relate the transmitter's local reference frame to the user reference frame.
- p l and R lx are used in the position calculation algorithm.
- the user simply places the two-detector (78 & 80) receiving instrument (24) in a minimum of three different locations in the workspace as shown in Fig. 32-2.
- the receiver system makes scan angle measurements ( ⁇ measurements) for both detectors (78 & 80) on the tool at each location. After all of the measurements are taken, the algorithm calculates vectors from transmitter (10) to detector (78 or 80) for each of the detector measurements.
- the algorithm calculates two rough guesses for the locations and orientations of the transmitters (10) relative to one another. Using these guesses as a starting point, the algorithm performs a Newton-Raphson iteration to precisely locate and orient the transmitters (10) in a common user reference frame.
- the first step in the Quick Setup algorithm is for the receiver system to take scan angle measurements of the two-detector receiving instrument (24) at a minimum of three locations in the workspace. For each receiving instrument location, the receiver system records the scan angles, ⁇ ] and ⁇ 2 , from each transmitter (10) to each detector (78 & 80) on the wand (24). These scan angles are then converted to their corresponding plane vectors v, and v 2 . The plane vectors are then converted to a vector from transmitter (10) to detector (78 or 80) as shown in Fig. 32-3 yielding:
- the r vector is relative to the transmitter's local reference frame as shown in the Figures. This vector passes through the detector (78 or 80) but contains no distance information. Since there are two detectors (78 & 80) on the receiving instrument (24), there are two vectors calculated for each wand location. Therefore, for m different wand locations and n different transmitters (10), we have the following data set.
- the subscript convention is ⁇ (CJX ⁇ s .
- the first subscript indicates the wand location.
- the second indicates the transmitter, and the third indicates the detector on the wand (24) (Detector 1 (78) on the wand (24) is the detector closest to the handle.)
- Detector 1 (78) on the wand (24) is the detector closest to the handle.
- the receiver system also records the distance between the detectors (78 & 80) on the receiving instrument (24). This distance is used to provide scale to the iterative solution. The guess routines and Newton-Raphson iteration will use this distance for each location of the tool. We call each instance of this distance a scale bar observation. Therefore, for n different tool locations, we have n different scale bar observations.
- the user reference frame is a somewhat arbitrary frame that simply ties all transmitters in the workspace together. Once this frame is established, it is possible to make position calculation measurements relative to the frame's coordinate system. It is also possible to transform the coordinate system into another coordinate system, possibly a surveyed reference frame.
- the user reference frame is arbitrary because we can choose any origin and any orientation for the principal axes. The only requirement is that the various transmitters in the workspace are properly tied together.
- R 0 cos(r , v ) - sin(rx /v ) 0 1 0 sin(rz /r ) cos(rz A ) 0 0 sin(rx tt ) cos(rx, v ) - sin(ry, v ) 0 cos(ry 0 0 1
- the order of rotation used in the rotation matrix above is z-y-x fixed angle. This rotation order is chosen because the z rotation component is typically the largest rotation for a transmitter; i.e. the transmitters are usually close to level. Any rotation order can be used, though, as long as R u is consistent between the Quick Setup algorithm and the position calculation algorithm.
- a solution vector x to include the unknowns for all n transmitters:
- the Quick Setup algorithm generates two different guesses for the x vector above. Both guess routines are based on the following assumptions: 1. The transmitters are leveled in the x-y plane and are at the same z-axis location.
- the scale bars are placed vertically (perpendicular to the x-y plane) at each location. 3. The middle of each scale bar is located in the x-y plane.
- oc tx A vector in the direction of the center of the scale bar center.
- the vector ' s length is approximately the distance to the scale bar center (exactly if the assumptions above are met).
- the first index on these quantities is the receiving instrument location, and the second is the transmitter number.
- the first guess routine uses sets of three scale bar observations to guess the positions and orientations of the unknown transmitters. In this routine, only the t vectors calculated above are required. This guess routine is based on the intersection of three spheres in space. We show these spheres from in a plan view in Fig. 32-5. We define a sphere for each scale bar observation. The center of each sphere is located using the corresponding ⁇ vector from the first transmitter (10-1). Remember that the first transmitter (10-1) is our reference transmitter, and the final user reference frame is going to be based on this transmitter (10-1). The radius of each sphere is the distance from the unknown transmitter (10-?) to the scale bar observation, as given by the following:
- the next step in this first guess routine is to calculate the orientation of the unknown transmitter (10-?) relative to the first transmitter (10-1). Since we have calculated a guess location for the unknown transmitter (x lx ,y l ,z lx ) , we can also calculate vectors that locate the scale bars from the unknown transmitter as shown in Fig. 32. In this Fig., we define the s vectors as:
- This three-sphere guess routine calculates guesses for adjacent sets of three scale bars and then averages the guess values for each unknown transmitter (10-?). In other words, the routine uses the scale bars at locations 1 , 2, and 3 for the first guess, the scale bars at locations 2, 3, and 4 for the second guess, and so on. This averaging helps reduce the effects of errors in the calculations when the three assumptions above are not met.
- the second guess routine is similar to the first, except that the second routine finds a two-dimensional guess using two intersecting circles rather than a three- dimensional guess using three intersecting spheres.
- the second routine calculates guesses for x lx , y , and rz lx thereby only affecting position and orientation only in the x-y plane only.
- the z A , rx , and ry l are set to zero for this guess.
- the first step in this two-dimensional guess is to pick the two scale bar observations that have the largest included angle ⁇ h l between the two detectors on the scale bar.
- the two scale bars are chosen such that ⁇ hc l is large for both the first transmitter (10-1) and the unknown transmitter (10-?).
- the purpose of this criterion is to select scale bar observations that represent large angular extent between the top and bottom scale bar detectors and thus better resolution on the scale bar measurement. Because ⁇ lo lx must be large for both transmitters (10-1 & 10-?), this selection criterion will tend to pick the scale bar locations that are equally spaced between the two transmitters (10-1 & 10-?).
- the Quick Setup algorithm uses Newton-Raphson iteration to find the best solution for the given setup.
- the Newton-Raphson iteration method will be understood by those skilled in the art. Since we have two separate initial guess vectors, Quick Setup runs two separate iterations and then compares the solutions for both using the residual error from the fill functions described below. The solution with the lowest residual error is chosen.
- the solution vector for which we are trying to solve is given by x . From this solution vector, we construct a position vector p l and a rotation matrix R lx for each unknown transmitter. In other words, for a three-transmitter setup, the solution vector is:
- R, Rx(0)Ry(0)Rz(0)
- the target rays are multiplied by the corresponding transmitter rotation matrix so that the rays will be relative to the user reference frame.
- For scale bar observations we want to ensure that each recorded scale bar length is equal to the calculated scale bar length for the given locations and orientations of the transmitters in the workspace. Since the solution process is iterative, the rays to the detector targets on each scale bar are not going to intersect until the correct solution vector is found. Therefore, to check the scale, we must first calculate the closest point of intersection for two detector target rays.
- the final step in the Quick Setup algorithm is a cleanup step.
- the r vectors start at the transmitters (10) and go to the detector targets (78 & 80). This direction is important because it establishes the locations of the transmitters (10) relative to the observations.
- the two fill functions used in the Newton- Raphson iteration do not take into account the direction of the rays, only their distance apart. Therefore, there are two global minima in the solution space, one in which the F vectors go from transmitter (10) to detector (78 & 80), and one in which they go the other direction. In some cases, especially when the three assumptions previously described are not met, the iteration can go to the wrong minimum.
- Fig. 32-1 1 A simple example of such a solution is given in Fig. 32-1 1. Note that the unknown transmitter's orientation is correct. Only the transmitter's location gets mirrored. We can see from Fig. 32-1 1 that the mirrored solution uses the correct rays. The rays just go in the wrong direction. We check for a mirrored solution by calculating actual detector location given the transmitter solution and then comparing that solution with the actual ray as shown in Fig. 32-12. As evident from this Fig., we can simply check the sign on the dot product between these two vectors. If r • (p det - p lx ) is negative, then the solution is mirrored, and the coordinates of the unknown transmitter are negated.
- Pentium an application specific piece of hardware, or other suitable device.
- ASIC application specific integrated circuit
- PLD programmed programmable logic device
- the system will also include various hardware components which are well known in the art, such as connectors, cables, and the like.
- computer readable media also referred to as computer program products
- This functionality also may be embodied in computer readable media, or computer program products, such as a transmitted waveform to be used in transmitting the information or functionality.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA002366711A CA2366711A1 (en) | 1999-03-22 | 2000-03-22 | Method for establishing a coordinate system |
EP00921417A EP1166044A1 (en) | 1999-03-22 | 2000-03-22 | Method for establishing a coordinate system |
JP2000606958A JP4780629B2 (en) | 1999-03-22 | 2000-03-22 | Position optical detector device |
AU41741/00A AU4174100A (en) | 1999-03-22 | 2000-03-22 | Method for establishing a coordinate system |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12554599P | 1999-03-22 | 1999-03-22 | |
US60/125,545 | 1999-03-22 | ||
USPCT/US99/23615 | 1999-10-13 | ||
PCT/US1999/023615 WO2000022380A1 (en) | 1998-10-13 | 1999-10-13 | Rotating head optical transmitter for position measurement system |
US09/532,099 | 2000-03-21 | ||
US09/532,099 US6630993B1 (en) | 1999-03-22 | 2000-03-21 | Method and optical receiver with easy setup means for use in position measurement systems |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2000057131A1 true WO2000057131A1 (en) | 2000-09-28 |
Family
ID=27378779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2000/007445 WO2000057131A1 (en) | 1999-03-22 | 2000-03-22 | Method for establishing a coordinate system |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1166044A1 (en) |
AU (1) | AU4174100A (en) |
CA (1) | CA2366711A1 (en) |
WO (1) | WO2000057131A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111736113A (en) * | 2020-07-03 | 2020-10-02 | 苏州大学 | Three-dimensional wireless optical positioning system and method |
US20210026026A1 (en) * | 2018-03-23 | 2021-01-28 | Arizona Board Of Regents On Behalf Of The University Of Arizona | Calibration Method and System for Photon or Particle Counting Detectors |
CN114740798A (en) * | 2022-03-21 | 2022-07-12 | 成都飞机工业(集团)有限责任公司 | Method for constructing measurement field of numerical control equipment group collaborative production line |
CN115077560A (en) * | 2022-05-30 | 2022-09-20 | 中国卫星海上测控部 | Dynamic detection method for parallelism of optical axis of shipborne visible light and medium wave infrared system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2213673A (en) * | 1988-01-04 | 1989-08-16 | Nat Res Dev | Optical position finding |
US5100229A (en) * | 1990-08-17 | 1992-03-31 | Spatial Positioning Systems, Inc. | Spatial positioning system |
US5247487A (en) * | 1991-06-17 | 1993-09-21 | Spatial Positioning Systems, Inc. | Spatial measurement recovery system |
DE4415419A1 (en) * | 1994-05-02 | 1995-11-09 | Horn Wolfgang | Precision position measurement appts. for robotic container high-lift truck |
US5884239A (en) * | 1995-12-27 | 1999-03-16 | Romanik, Jr.; Carl J. | Optical system for accurate monitoring of the position and orientation of an object |
-
2000
- 2000-03-22 CA CA002366711A patent/CA2366711A1/en not_active Abandoned
- 2000-03-22 EP EP00921417A patent/EP1166044A1/en not_active Withdrawn
- 2000-03-22 WO PCT/US2000/007445 patent/WO2000057131A1/en active Application Filing
- 2000-03-22 AU AU41741/00A patent/AU4174100A/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2213673A (en) * | 1988-01-04 | 1989-08-16 | Nat Res Dev | Optical position finding |
US5100229A (en) * | 1990-08-17 | 1992-03-31 | Spatial Positioning Systems, Inc. | Spatial positioning system |
US5247487A (en) * | 1991-06-17 | 1993-09-21 | Spatial Positioning Systems, Inc. | Spatial measurement recovery system |
DE4415419A1 (en) * | 1994-05-02 | 1995-11-09 | Horn Wolfgang | Precision position measurement appts. for robotic container high-lift truck |
US5884239A (en) * | 1995-12-27 | 1999-03-16 | Romanik, Jr.; Carl J. | Optical system for accurate monitoring of the position and orientation of an object |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210026026A1 (en) * | 2018-03-23 | 2021-01-28 | Arizona Board Of Regents On Behalf Of The University Of Arizona | Calibration Method and System for Photon or Particle Counting Detectors |
US11531126B2 (en) * | 2018-03-23 | 2022-12-20 | Arizona Board Of Regents On Behalf Of The University Of Arizona | Calibration method and system for photon or particle counting detectors |
US12032108B2 (en) | 2018-03-23 | 2024-07-09 | Arizona Board Of Regents On Behalf Of The University Of Arizona | Calibration method and system for photon or particle counting detectors |
CN111736113A (en) * | 2020-07-03 | 2020-10-02 | 苏州大学 | Three-dimensional wireless optical positioning system and method |
CN111736113B (en) * | 2020-07-03 | 2023-11-24 | 苏州大学 | Three-dimensional wireless light positioning system |
CN114740798A (en) * | 2022-03-21 | 2022-07-12 | 成都飞机工业(集团)有限责任公司 | Method for constructing measurement field of numerical control equipment group collaborative production line |
CN114740798B (en) * | 2022-03-21 | 2023-11-10 | 成都飞机工业(集团)有限责任公司 | Method for constructing measuring field of numerical control equipment group cooperative production line |
CN115077560A (en) * | 2022-05-30 | 2022-09-20 | 中国卫星海上测控部 | Dynamic detection method for parallelism of optical axis of shipborne visible light and medium wave infrared system |
Also Published As
Publication number | Publication date |
---|---|
CA2366711A1 (en) | 2000-09-28 |
AU4174100A (en) | 2000-10-09 |
EP1166044A1 (en) | 2002-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6630993B1 (en) | Method and optical receiver with easy setup means for use in position measurement systems | |
US6535282B2 (en) | Position measurement system and method using cone math calibration | |
US6618133B2 (en) | Low cost transmitter with calibration means for use in position measurement systems | |
US6501543B2 (en) | Apparatus and method for determining position | |
US6545751B2 (en) | Low cost 2D position measurement system and method | |
CN109556580B (en) | Surveying instrument, AR system and method for positioning an AR device relative to a reference frame | |
EP2869024B1 (en) | Three-dimensional measuring method and surveying system | |
US7742176B2 (en) | Method and system for determining the spatial position of a hand-held measuring appliance | |
CN103983255B (en) | Moving field controller for measurement and remotely control | |
CN101421584B (en) | Handheld optical distance measurement device | |
US8724119B2 (en) | Method for using a handheld appliance to select, lock onto, and track a retroreflector with a laser tracker | |
CN106646513A (en) | Map construction system based on intelligent robot and map navigation method based on intelligent robot | |
EP3399327A1 (en) | Pose estimation using radio frequency identification (rfid) tags | |
Wagner et al. | Long-range geo-monitoring using image assisted total stations | |
Kaijaluoto | Precise indoor localization for mobile laser scanner | |
CN106291567A (en) | A kind of laser radar, laser radar system and data processing method | |
Giubilato et al. | Minivo: Minimalistic range enhanced monocular system for scale correct pose estimation | |
EP1166042B1 (en) | Calibration of optical transmitter for position measurement systems | |
EP1166044A1 (en) | Method for establishing a coordinate system | |
US20220182853A1 (en) | Automatic handling of network communication failure in two-dimensional and three-dimensional coordinate measurement devices | |
EP4024339A1 (en) | Automatic registration of multiple measurement devices | |
Kallio et al. | An Agile Method to Detect Deformations of the VLBI Dish | |
CN117930195A (en) | Point cloud auxiliary calibration of combined geodetic surveying instrument | |
Lambert | Automatic and Featureless Sim (3) Calibration of Planar Lidars to Egomotion Sensors | |
Chung et al. | Search and Rescue Autonomous Helicopter (SARAH) CPE Capstone |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
ENP | Entry into the national phase |
Ref document number: 2366711 Country of ref document: CA Ref country code: CA Ref document number: 2366711 Kind code of ref document: A Format of ref document f/p: F |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2000 606958 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2000921417 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2000921417 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |