The ASL relies on a magnetic head-tracker to monitor the position and orientation of the head. An Ascension Technology magnetic field tracker (Model 6DFOB, "Flock") was used to monitor the position and orientation of the head and the hand. The transmitter unit was mounted above and in front of the subject's head. The transmitter contains three orthogonal coils that are energized in turn. The receiver unit contains three orthogonal 'antennae' coils which detect the transmitters' signals. Position and orientation of the receiver are determined from the absolute and relative strengths of the transmitter/receiver coil pairs. The position of the sensor is reported as (x, y, z), and its orientation as azimuth, elevation, and roll angles.
The Ascension 6DFOB uses an auto-ranging system to increase the useful range while keeping noise levels down. The maximum distance at which a clear signal can be detected varies with the strength of the transmitted signal, but too strong a signal saturates the receiver. To allow measurements over a range of transmitter to receiver distances, the Ascension 6DFOB adjusts the transmitter's field strength based on the distance of the receiver from the transmitter. The maximum field strength is 1 Earth field. Position and orientation values are encoded as 16-bit integers. Distances (x, y, z) are scaled from -36" to 36", yielding a precision of 0.001" (72"/216), or 0.003 cm. Orientation (azimuth, elevation, and roll) are scaled from -180deg. to 180deg., with a precision of 0.005deg. or 1/3 min arc.
The Ascension system has a range of temporal filter options that can be set with software commands. There are two classes of filters; 'AC' and 'DC.' The AC filters are band-block filters designed to filter out signals caused by environmental sources operating at around 60 Hz, (e.g., 120 VAC line supply, video monitors, and lighting equipment). There are three settings for the AC filters; i) 'AC filters off', ii) 'AC Narrow', and iii) 'AC Wide.' The two AC filter options (narrow and wide) differ in the width of the band of frequencies blocked by the filters. Removing frequency components in this range is not detrimental in itself because there is no appreciable component of head or hand movements beyond about 20 Hz [Rosenbaum 1991], but there is no way to implement such a filter in real-time without introducing a delay in the reported position and orientation values.
Unlike the 'AC' filters, the 'DC' filter does not filter out a fixed band of frequencies. Instead, it is an 'active filter' that monitors the sensor's reported values over a period, and adapts its time constant based on recent position/angle reports. If the sensor has shown little motion for a given period, the time constant is increased in an effort to reduce steady-state, or 'DC' position/orientation reports. When sensor movement is detected in this mode, it is at first suppressed by the long time constant on the presumption that it represents noise rather than real movement of the sensor. If the movement continues it is presumed to represent real motion of the sensor, and the time constant is reduced. The user can set upper and lower bounds on the time constant to limit the degree to which the 'active filter' can adapt to varying inputs, and the speed at which the filter adapts to sensor motion. The default filter configuration ('AC wide' and 'DC' filters on) produces very low noise output at the cost of increased temporal lag between sensor movement and position reporting. In addition, the actual lag introduced by of the 'DC' filter is not constant.
The "Flock" sensors used for head and hand tracking were characterized to determine the accuracy and noise in the measurement system with and without the default filters.
The first series of measurements was performed to measure the accuracy of the position signal of the magnetic tracker over a range of transmitter-to-receiver distances. Because the goal was to measure absolute distance errors (rather than noise characteristics), position data was collected with the default filter configuration ('AC wide' and 'DC' filters on) and the average of 100 samples is reported (see the next section for noise characteristics). Accuracy was measured in a 3-dimensional volume representing the task workspace by moving a test plane in depth through the space. Figure A. 1 shows the test plane used to calibrate the performance of the magnetic tracking system's position output. The 1.02 x 0.64 m array consisted of 54 target locations forming a 9 x 6 test grid, 12.8 cm on center.
Figure A. 2 shows the target volume consisting of 270 points. The plane was placed at five depth planes; -11 cm, 1 cm, 13 cm, 25 cm, and 37 cm (distances are reported with respect to the transmitter's center).
Figure A.1 A 9 x 6 target grid was used in each of 5 depth planes to calibrate the Ascension 6DFOB magnetic tracking system.
Figure A.2 The 54 target test plane was positioned at five depths, giving a total of 270 test positions in the test volume.
The magnetic field transmitter was mounted above the target planes (9.8 cm above the top row of the target plane #4). Plane #4 was below the transmitter. The smallest distance between transmitter and receiver (9.8 cm) was position 5 on plane #4. Points 46 and 54 were the farthest on that plane at 89.8 cm. The maximum range on any plane was 97.6 cm (points 46 and 54 on plane #1, 37 cm behind the transmitter). The Ascension 6DFOB is scaled to +/-36" (91 cm). The head sensor was always within 25 cm of the transmitter, and in most cases the hand sensor was within 60 cm.
Vertical and horizontal position were measured at each of the 270 points in the volume. The mean of 100 samples was calculated at each point in the volume. Three runs of the full 3D data set were completed. Before beginning the measurements, the test plane was adjusted in an attempt to make it's axes collinear with the transmitter's. Because the goal was to determine the limits of the Ascension 6DFOB's performance, errors due to misalignment of the test plane with respect to the transmitter were eliminated by finding the best fit (allowing translation and rotation of the target points) within the 5x4 'optimization window' shown in Figure A. 1. Figure A. 3 shows a sample calibration plane with the mean measured positions ('mean_x') and the best fit after translation and rotation transformation overlaid on the target positions. Figure A. 4 shows the remaining root-squared error [(xtarget - xreported)2 + (ytarget - yreported)2)0.5] in the plane for three trials with the test plane at position 4 (1 cm behind the transmitter center). Note that the errors rise dramatically beyond 50 cm. Figure A. 5 shows the same data plotted at 10x vertical scale to better show the magnitude of the errors at small distances. The mean error below 50 cm is approximately 1.5 mm.
Figure A.4 Root-square error as a function of distance from the transmitter for three trials at depth plane #4.
Figure A.5 Data from Figure A. 4 plotted at 10X vertical scale to show errors at smaller distances.
Errors in the other planes were similar at small transmitter/ receiver distances, but increased with distance. Figure A. 6 shows the errors for plane #1, the most distant. The maximum error nearly doubled, from 5 cm to 9 cm. The performance below 50 cm is very similar to that shown in Figure A. 5.
Each data point in Figure A. 4 through Figure A. 6 represents the average of 100 samples collected with the default 'AC' and 'DC' filters on. These data give a clear view of the accuracy of the magnetic tracking system, but not about the noise in the signal. The top trace in Figure A. 7 shows raw data collected over a 1 cm range at a distance of 65 cm with the default filters on. The lower trace shows data collected with all filters disabled (the vertical offset in the plot was introduced to allow both data sets to be seen). The effect of the filters is clear, though there is still residual noise present with the default filers engaged. The range of the unfiltered data (max - min over 100 samples at a constant distance) in Figure A. 7 is approximately 1.0 cm. The standard deviation of the 100 samples is approximately 3 the range, as expected for a large sample from a normal distribution.
Figure A.6 Root-square error as a function of distance from the transmitter for three trials at the most distant plane (#1).
Figure A.7 Position samples from the Ascension 6DFOB with default (top trace) and no filters.
Figure A. 8 shows how standard deviation and range values vary over transmitter to receiver distances of 10 to 85 cm. The local maxima evident in the graphs are due to the tracker's auto-ranging system, which adjusts the transmitter's power in discrete steps as the distance between transmitter and receiver changes.
The filters do not simply add a constant 'delay' to the signal; the adaptive
nature of the 'DC' filter changes the effective time constant of the filter
based on recent velocity measurements. If the sensor has been stable (or
moving at very low velocity) for a period of time, the time constant is
increased, on the assumption that any apparent movement is due to noise. After
several samples of higher velocity, the time constant is reduced, on the
assumption that apparent movements are real, and not due to noise. Figure A. 9
illustrates the effect. To examine the temporal delay introduced by the
filters, two receivers were attached together, and moved rapidly from rest to
the right. In the example shown, the receivers were moved approximately 60 cm,
at a peak velocity of approximately 5 m/s. Figure A. 10 shows the best-fit
cumulative Gaussians to the 'default filters' and 'no filters' data. The
temporal difference at half height (i.e., the difference in the Gaussians'
means) is 20 msec, and the difference at 10% of maximum is 38 msec.
Figure A. 8 Standard deviation and range of sample data with transmitter to receiver distances of 10 to 85 cm. Local extremes are due to the Flock's autoranging system.
Figure A.9 Variable delay caused by the adaptive 'DC' filter when the receiver is moved suddenly.
Figure A. 10
Figure A. 10Best-fit cumulative Gaussian to data shown in Figure A. 9
The Ascension 6DFOB sensor measures position and orientation, so in addition to measuring the Flock's positional accuracy, it was necessary to determine the accuracy and resolution of the Flock's orientation measurements. The 6DFOB can output orientation in several formats. In this series of experiments, and for all calibrations, the system was configured to "point/angle" mode, in which the device reports a 12 byte record consisting of 3 2-byte integers representing (x, y, & z) position, and 3 2-byte integers representing (azimuth, elevation, and roll). A jig was constructed to allow the 6DFOB receiver to be precisely oriented along a single rotational axis (Figure A. 11). A vernier scale allowed the orientation to be set in 5 arc minute increments.
Figure A. 12 shows the absolute error (in minutes of arc) as the receiver was rotated through 180deg. in 5deg. steps at a distance of 40 cm. Figure A. 13Figure A. 14 show the mean error magnitude, and the noise characteristics at 40 and 65 cm. As was true for the position measurements, noise increased at greater transmitter to receiver distances, though enabling the filters reduced the noise level.
Figure A. 11The Flock's orientation calibration was measured using a jig with a resolution of 5 minutes of arc.
Figure A. 12
Figure A. 12Absolute orientation error over 180deg. rotation with the receiver at a distance of 40 cm.
Figure A. 13
Figure A. 13Standard deviation, range, and error for all filter settings at a distance of 40 cm from the transmitter.
Figure A. 14
Figure A. 14Standard deviation, range, and error for each filter setting, at a distance of 65 cm from the transmitter.