6DOF Electromagnetic Tracker Construction HOWTO
A basic 6DOF (six degrees of freedom: three of position and three of orientation) electromagnetic tracker contains the following parts:
- Transmitter contains three colocated orthogonal coils.
- Receiver contains three colocated orthogonal coils.
- Accuracy is poor for lined-up pose: receiver positioned on a transmitter-coil axis, with receiver oriented to make receiver-coil axes parallel with transmitter-coil axes. Some of the first-order partial derivatives go to zero in these cases, causing the position-and-orientation solution to separate into four separate partial solutions.
- Poses with poor tracking accuracy, should be good for coil characterization.
- The poor-accuracy poses can be reduced, by replacing the three-orthogonal-coil receiver with a receiver comprising four colocated coils (the transmitter remains three orthogonal coils). The four receiver coils point in the directions of the vertices of a regular tetrahedron. When the four-coil receiver is positioned on a transmitter-coil axis, with one receiver coil oriented parallel to a transmitter-coil axis, the remaining three receiver coils' axes cannot be parallel to transmitter-coil axes.
- Driver electronics provides three sinewaves at distinct frequencies through three series-tuning capacitors to the three transmitter coils.
- Operating frequencies are typically 30 Hz to 15000 Hz. 1000 Hz, 1300 Hz, and 1600 Hz are a good starting point. Higher frequencies give higher induced voltages, lower frequencies reduce error-causing eddy-current effects.
- Data-acquisition electronics measures the currents in the three transmitter coils, and measures the voltages induced in the three receiver coils. The voltage preamps should have 2 nV/sqrt(Hz) or lower input noise. The ADC (analog-to-digital converter) sampling rate must be high enough to capture the driver frequencies.
- 24-bit audio ADCs work well.
- A six-ADC electronics can measure three transmitter-coil currents and three receiver-coil voltages continually and simultaneously.
- Add three more ADCs for each additional receiver coil trio.
- A four-ADC electronics can use one channel to measure the currents periodically over time (The currents change slowly as the transmitter coils warm up.), and three channels to measure the three voltages continually and simultaneously.
- A single-ADC electronics can measure the currents and voltages sequentially, but this gives poor dynamic performance due to inconsistent data sets.
- The receiver coil voltages must be measured simultaneously if dynamic accuracy is needed. Sequential voltage measurements give inconsistent data sets, which are hard to interpolate between. This is analogous to the interlace artifacts seen in digital television.
- If the measurements are inconsistent, the algorithm will make compensating errors in both position and orientation, attempting to minimize the total error. The HFluxPerI's are only a factor of two away from being unable to separate position and orientation, even with fully accurate and consistent measurements.
- Signal-processing software converts the current and voltage measurements into measurements of the HFluxPerI coupling from each transmitter coil to each receiver coil. This gives a 3x3 matrix HFluxPerIMeasured for three-coil transmitter and three-coil receiver. This gives 3x4 or 4x3 matrix for three-coil transmitter and four-coil receiver.
- There is an inherent hemisphere ambiguity, since receiver at position = (Xo,Yo,Zo) and receiver at position = (-Xo,-Yo,-Zo) show identical HFluxPerIMeasured for identical orientations. This ambiguity can be resolved by using additional transmitter or receiver coils spaced away from the colocated transmitter or receiver coils.
- C. L. Dolph, "A current distribution for broadside arrays which optimizes the relationship between beam width and sidelobe level," Proc. IRE, Vol. 35, pp. 335-348, June, 1946. The original Dolph-Chebyshev window article. This window is capable of 140 dB rejection of out-of-band signals.
- Albert H. Nuttall, "Some Windows with Very Good Sidelobe Behavior", IEEE Transactions on Acoustics, Speech, and Signal Processing 29 (1) 84-91, February 1981, doi:10.1109/TASSP.1981.1163506, "U.S. Government work not subject to U.S. copyright". The window in Figure 10 of this paper is (for symmetrical limits |t|<=L/2): w(t) = (1/L)(10/32 + 15/32 cos(2pi t/L) + 6/32 cos(4pi t/L) + 1/32 cos(6pi t/L)), and is zero for all t outside the L/2 limits. The sidelobe peak four DFT bins from the central peak is 91 dB down from the central peak. This window function and its first through fifth derivatives are all continuous for all t, giving 42 dB/octave rolloff of sidelobes.
- Each component of HFLuxPerIMeasured is the H flux through one receiver coil, divided by the current I in one transmitter coil. HFLuxPerIMeasured has units of meters, and is a geometrical property of the coils' sizes, shapes, number of turns, positions, and orientations.
- Algorithm software converts HFluxPerIMeasured to estimated receiver position and orientation, using direct-solution algorithm in Raab's 1981 paper.
- Frederick H. Raab, "Quasi-Static Magnetic-Field Technique for Determining Position and Orientation", IEEE Transactions on Geoscience and Remote Sensing, Vol. GE-19, No. 4, October 1981, pages 235-243, describes closed-form algorithm good for moderate accuracy.
- File:Dry0097.c is a simulator program containing an implementation of Raab's algorithm. The straight-line-segment models require triple-precision floating-point calculation at large distances.
Much elaboration and extension is needed to give high accuracy with high convenience, but the above is the basic idea.
For example, U.S. Patent 4,109,199 describes the use of a calibration coil in the receiver to continually calibrate the gains of the electronics.
More elaborate algorithms provide higher accuracy at the expense of much more computation. See U.S. Patents 5,307,072 and 7,096,148 and 7,835,779 for examples.
Straight-line-segment models are very accurate for rectangular and square coils, but may require better-than-double-precision floating-point accuracy. X86 double precision is actually better than double precision, using 80 bits for internal calculations. The physically-accurate analytical equations suffer from numeric problem: small difference of large terms.
Better than 1 millimeter P95 accuracy is achievable, as reported in Nafis etal 2006 paper:
- C.A. Nafis, V. Jensen, L. Beauregard, P.T. Anderson, "Method for estimating dynamic EM tracking accuracy of Surgical Navigation tools", SPIE Medical Imaging Proceedings, 2006, preprint can be found [here].
Pete reported a 6DOF tracker using four-coil transmitter and four-coil receiver in his Ph.D. dissertation. Transmitter and receiver were each built from four triangular printed-circuit boards assembled into a tetrahedron. Each board contained a single triangular coil made of straight-line segments. Discussions of electronics design and of straight-line-segment calculations are included:
- Peter Traneus Anderson, "A Source of Accurately Calculable Quasi-Static Magnetic Fields", dissertation presented to the Faculty of the Graduate College of the University of Vermont, October 2001, available in the UVM library and [here]. The four missing figures are available [here]. A reference that should have been included: U.S. patent 1,172,017 for Reginald Fessenden's direct-conversion receiver using a commutator.