LODESTONETechnical report TR-2026-01 · revision 3Հայերեն
Contents
  1. Cover and contents
  2. 1Introduction
  3. 2State of the art
  4. 3Physics of detection and identification
  5. 4System architecture
  6. 5Induction subsystem
  7. 6Radar subsystem
  8. 7Positioning and timing
  9. 8Signal processing and machine learning
  10. 9Work plan
  11. 10Team and responsibilities
  12. 11Budget and funding
  13. 12Risks, safety and quality
  14. AAppendices
Chapter 7

Positioning and timing

Centimetre-level pose of the sensor head on a common GPS time base.

The positioning subsystem records where the sensor head is, and how it is oriented, at every measurement block. This turns a moving sensor into a set of measurements from many known positions. It also gives an estimate of target depth that does not depend on the signal amplitude.

7.1Why position matters

When the sensor passes over a target at constant height, the received signal as a function of position forms a peak. Its width is set by geometry. For a coincident coil over a small sphere, the full width at half maximum equals 0.90 times the depth.

Figure 7.1.Computed signal along a straight pass over a small sphere at 10, 20 and 30 cm depth, each normalised to its own maximum. The width is proportional to depth.

Depth obtained from the width does not depend on the size of the target. This matters because signal amplitude alone cannot separate a small shallow object from a larger deep one (Chapter 3). With depth known, amplitude gives size, and size together with the product \(\sigma a^2\) from the spectrum gives an estimate of conductivity.

The measurement also depends strongly on coil height. From \(|V| \propto r^{-6}\), a change in distance \(\mathrm{d}r\) changes the signal by \(\mathrm{d}V/V = -6\,\mathrm{d}r/r\). At 20 cm, raising the coil by 1 cm reduces the signal by about 30%. Coil height is therefore measured directly with a time-of-flight ranger.

With 21.3 ms blocks and a walking speed of 0.5 m/s the sensor moves 1.1 cm per block, which samples the peak adequately. With pose known for every block, a head with one transmitter and three receivers views the target from many directions during a pass. This provides the tensor columns that it cannot measure from a single position (Chapter 5).

7.2Sensors

7.2.1Inertial measurement unit

Integrating acceleration twice converts an uncorrected accelerometer bias \(b\) into a position error of \(\tfrac12 b t^2\). For a bias of 1 mg this reaches 2 cm after 2 s, 12 cm after 5 s and 49 cm after 10 s. The IMU is therefore used only to interpolate between absolute position fixes and to measure tilt.

Figure 7.2.Position error against time since the last fix, for inertial dead reckoning with 1 mg and 5 mg bias, for standard GNSS and for RTK GNSS. Between RTK fixes at 10 Hz the IMU error stays below 1 cm.

7.2.2Magnetometer

The magnetometer measures heading from the Earth's static field. Close to the transmit coil the coil's own alternating field dominates: with a moment of 0.9 A·m² it is 181 µT at 10 cm, compared with the Earth's 50 µT. The coil field falls as \(1/r^3\). At 50 cm it is 1.45 µT, which limits the heading error to 3.3°, and at 1 m it is 0.18 µT (0.4°). The magnetometer is therefore mounted at least 50 cm above the coil. Heading is also disturbed by steel near the survey area and is treated as a slowly corrected estimate.

Figure 7.3.Field of the transmit coil along the pole compared with the Earth's field. Within about 15 cm the coil field exceeds the Earth's field.

7.2.3Satellite positioning

Table 7.1.Satellite positioning options.

ReceiverHorizontal errorSuitability
Standard GNSS (phone class)2 to 5 mUnsuitable; larger than the signal peak by two orders of magnitude
RTK GNSS, dual-frequency receiver with base station1 to 2 cmRequired
PPK (same hardware, corrections applied afterwards)1 to 2 cmAlternative without a radio link; no live map

The RTK antenna is mounted at the top of the pole for a clear view of the sky, about 1.5 m above the coil. An unmeasured tilt \(\theta\) moves the coil by \(L\sin\theta\) relative to the antenna, which is 2.6 cm per degree and 13 cm at 5°. The IMU tilt estimate is used to project the antenna position down to the coil.

7.2.4Camera

A camera facing the ground tracks surface texture from frame to frame (visual odometry). Its drift grows with distance travelled, typically 0.5 to 1%, and not with time. Combined with the IMU it continues to work under tree cover, where RTK degrades. A single camera cannot measure absolute scale, but the time-of-flight ranger measures the camera height and provides it. A global-shutter camera is used because a rolling shutter distorts images under vibration. Visual odometry fails on featureless or moving surfaces and in poor light; the IMU bridges such periods.

7.3Mechanical arrangement

RTK antenna · fix 1–2 cm sky view · PPS out IMU + magnetometer ≥ 50 cm above the coil: coil field ≤ 1.45 µT coil head · 1 TX + 3 RX ToF height ranger 1 cm height ≈ 30% signal lever arm L ≈ 1.5 m 5° tilt error → 13 cm IMU tilt projects antenna to coil walking: one 21 ms block per 1.1 cm target each tracked position adds one measurement geometry
Figure 7.4.Sensor pole. The RTK antenna is at the top, the IMU and magnetometer at least 50 cm above the coil, and the coil head with the height sensor at the bottom. The faint outlines show the same pole at earlier times during a pass.

The pole and all mountings near the coils are non-metallic. The lever arm from antenna to coil centre is measured to the millimetre during assembly and verified by the rotation test in task T3.1.

7.4Timing and fusion

Position fixes come from the GNSS clock, induction samples from the codec clock and video frames from the camera clock. The GNSS pulse-per-second signal connects them. It is recorded on a codec input, which places GPS time in the audio stream with one-sample resolution (20.8 µs at 48 kHz). It also drives an LED in the camera's field of view, so each frame can be assigned a GPS time. The AC coupling of the codec input converts the pulse into a pair of spikes; edges are detected rather than levels.

IMU · 200 Hz accel + gyro RTK GNSS · 10 Hz position 1–2 cm · PPS magnetometer heading · mounted high ToF ranger coil height, mm-level camera · ground view VIO: drift ≤1% of distance EKF fusion position + tilt + heading antenna → coil lever arm audio blocks 21.3 ms · 12-tone spectra codec clock PPS → spare input geo-tagged spectra (x, y, height, tilt) + response → live map · dataset · model repeated passes over one target: consistency check
Figure 7.5.Fusion and synchronisation. An extended Kalman filter combines IMU, RTK, magnetometer, camera and height data into the pose of the coil. Pose is attached to every induction block. Repeated passes over one target provide a consistency check.

Table 7.2.Positioning performance targets (milestone M2).

QuantityTargetVerification
Horizontal position of coil centre≤ 2 cm (1σ)Ten passes over a marked target from different headings
Coil height above ground≤ 3 mmComparison with a measured reference surface
Timing between induction and pose≤ 1 samplePPS edge in audio stream against GNSS time tag
Depth from peak width at 20 cm±1.5 cmBuried calibration sphere at known depth