A Sensitivity-Based Optical Positioning Method for Mobile Robots in China

In the rapidly evolving field of robotics, mobile robots have become integral to various sectors in China, including manufacturing, logistics, and healthcare. The accurate positioning of these China robots is crucial for their autonomous navigation and efficient operation. Traditional methods, such as triangulation, often face limitations due to measurement errors and environmental factors. In this paper, we propose a novel optical positioning method that leverages a sensitivity metric to enhance the accuracy of mobile robot localization. This approach utilizes a dual-beacon system to establish line-of-sight communication and employs triangulation for initial position estimation. By integrating a sensitivity index, we quantify the robustness of position estimates against angular measurement errors, enabling optimal data fusion from multiple beacons. Through extensive simulations and experimental validations, we demonstrate that our method significantly improves positioning precision, with an average error of approximately 0.18 grid units, outperforming existing techniques. The scalability of this approach makes it suitable for systems with additional beacon nodes, further advancing the capabilities of China robots in complex environments.

The core of our method involves a dual-beacon configuration where each beacon and the robot exchange optical signals to determine azimuth angles. These angles are used in triangulation to compute the robot’s coordinates. The position vector of the mobile node, denoted as $\mathbf{n} = [n_x, n_y]^T$, is derived from the beacon positions $\mathbf{B}_1 = [B_{1x}, B_{1y}]^T$ and $\mathbf{B}_2 = [B_{2x}, B_{2y}]^T$ using the measured angles $\theta_1$ and $\theta_2$. The equations for the coordinates are given by:

$$ \begin{bmatrix} n_x \\ n_y \end{bmatrix} = \begin{bmatrix} B_{1x} \\ B_{1y} \end{bmatrix} + |\mathbf{V}_1| \begin{bmatrix} \cos \theta_1 \\ \sin \theta_1 \end{bmatrix} $$

where $|\mathbf{V}_1|$ is the magnitude of vector $\mathbf{V}_1$, calculated using the law of sines:

$$ |\mathbf{V}_1| = \frac{d \sin \theta_2}{\sin (\theta_2 – \theta_1)} $$

Here, $d$ represents the distance between the two beacons. However, this static approach is prone to errors in dynamic scenarios due to noise and synchronization issues. To address this, we incorporate a Kalman filter for dynamic tracking, which predicts the robot’s future position based on a constant velocity model. The state vector $\mathbf{x}_k$ at time step $k$ includes position and velocity components:

$$ \mathbf{x}_k = [n_{x,k}, n_{y,k}, v_{x,k}, v_{y,k}]^T $$

The state transition model is defined as:

$$ \mathbf{x}_{k+1} = \mathbf{A}_k \mathbf{x}_k + \mathbf{w}_k $$

where $\mathbf{A}_k$ is the state transition matrix, and $\mathbf{w}_k$ represents process noise. The observation model uses position measurements derived from the angles, expressed as:

$$ \mathbf{z}_k = \mathbf{H}_k \mathbf{x}_k + \mathbf{v}_k $$

with $\mathbf{H}_k$ as the observation matrix and $\mathbf{v}_k$ as measurement noise. The Kalman filter equations for prediction and update are:

$$ \hat{\mathbf{x}}_k^- = \mathbf{A}_k \hat{\mathbf{x}}_{k-1} $$
$$ \mathbf{P}_k^- = \mathbf{A}_k \mathbf{P}_{k-1} \mathbf{A}_k^T + \mathbf{Q}_k $$
$$ \mathbf{K}_k = \mathbf{P}_k^- \mathbf{H}_k^T (\mathbf{H}_k \mathbf{P}_k^- \mathbf{H}_k^T + \mathbf{R}_k)^{-1} $$
$$ \hat{\mathbf{x}}_k = \hat{\mathbf{x}}_k^- + \mathbf{K}_k (\mathbf{z}_k – \mathbf{H}_k \hat{\mathbf{x}}_k^-) $$
$$ \mathbf{P}_k = (\mathbf{I} – \mathbf{K}_k \mathbf{H}_k) \mathbf{P}_k^- $$

where $\mathbf{Q}_k$ and $\mathbf{R}_k$ are the process and measurement noise covariance matrices, respectively. For systems with more than two beacons, we introduce a sensitivity metric to select the most reliable beacon pair for triangulation. This metric is based on the Jacobian matrix of the position functions with respect to the angles. The functions for the x and y coordinates are:

$$ f_x(\theta_1, \theta_2) = B_{1x} + \frac{d \sin \theta_2}{\sin(\theta_2 – \theta_1)} \cos \theta_1 $$
$$ f_y(\theta_1, \theta_2) = B_{1y} + \frac{d \sin \theta_2}{\sin(\theta_2 – \theta_1)} \sin \theta_1 $$

The Jacobian matrices $\mathbf{J}_x$ and $\mathbf{J}_y$ are computed as:

$$ \mathbf{J}_x = \begin{bmatrix} \frac{\partial f_x}{\partial \theta_1} & \frac{\partial f_x}{\partial \theta_2} \end{bmatrix}, \quad \mathbf{J}_y = \begin{bmatrix} \frac{\partial f_y}{\partial \theta_1} & \frac{\partial f_y}{\partial \theta_2} \end{bmatrix} $$

The sensitivity index $S$ is defined as the Euclidean norm of the infinity norms of these Jacobians:

$$ S = \sqrt{ \| \mathbf{J}_x \|_\infty^2 + \| \mathbf{J}_y \|_\infty^2 } $$

where $\| \mathbf{J}_x \|_\infty = \max \left( \left| \frac{\partial f_x}{\partial \theta_1} \right|, \left| \frac{\partial f_x}{\partial \theta_2} \right| \right)$ and similarly for $\mathbf{J}_y$. This index quantifies the maximum change in position due to small angular errors, with lower values indicating more robust estimates. In each time step, the beacon pair with the minimum sensitivity value is chosen for triangulation, and the resulting position is fed into the Kalman filter.

To validate our method, we conducted simulations with three beacon nodes arranged in an equilateral triangle at coordinates $[-3, -3]^T$, $[0, 0]^T$, and $[3, -3]^T$. The mobile robot followed a circular trajectory, and Gaussian noise with standard deviations ranging from 0.5° to 3.0° was added to the angle measurements. We compared our sensitivity-based approach with four alternative methods: minimum sensitivity with variable $\mathbf{R}$, fixed $\mathbf{R}$ averaging, variable $\mathbf{R}$ averaging, and an extended Kalman filter (EKF) using direct angle measurements. The EKF approach was unstable and only effective for the first 15% of the trajectory, as shown in the velocity estimates diverging quickly. The results, averaged over 200 trials, are summarized in Table 1.

Table 1: Simulation Results Comparing Positioning Errors for Different Methods
Method Average Position Error (Grid Units) Standard Deviation
Min. Sensitivity (Fixed $\mathbf{R}$) 0.1813 0.0833
Min. Sensitivity (Variable $\mathbf{R}$) 0.1998 0.1272
Averaged (Fixed $\mathbf{R}$) 0.2817 0.2245
Averaged (Variable $\mathbf{R}$) 0.2518 0.2738
EKF (Angle-Based) Divergent N/A

Our sensitivity-based method with fixed $\mathbf{R}$ achieved the lowest average error, demonstrating its superiority in handling angular noise. The sensitivity metric effectively selected beacon pairs that minimized uncertainty, as visualized in the sensitivity maps where values were lowest along the perpendicular bisectors of the beacon pairs. For instance, when the beacons were spaced 4 grid units apart, the sensitivity was optimized in central regions, whereas larger spacings of 10 units reduced overall sensitivity but increased it near the beacon axes. This behavior underscores the importance of beacon placement for China robots operating in diverse environments.

In experimental tests, we deployed a physical setup with three beacon nodes equipped with LEDs and photodiodes mounted on stepper motors. The nodes communicated via a UART network, and the mobile robot was built on a four-wheel drive kit with reflective markers for ground truth tracking using an infrared motion capture system. The floor was marked with a grid of 23 cm units, and the beacons were fixed at positions corresponding to the simulation. The measurement noise covariance $\mathbf{R}_c$ was calibrated from 50 repeated measurements at three fixed locations, computed as:

$$ \mathbf{R}_c = \frac{1}{K} \sum_{k=1}^K \begin{bmatrix} (\tilde{x}_k – \mu_x)^2 & (\tilde{x}_k – \mu_x)(\tilde{y}_k – \mu_y) \\ (\tilde{x}_k – \mu_x)(\tilde{y}_k – \mu_y) & (\tilde{y}_k – \mu_y)^2 \end{bmatrix} $$

where $\tilde{x}_k$ and $\tilde{y}_k$ are the errors in x and y coordinates, and $\mu_x$, $\mu_y$ are their means. We conducted three runs for each algorithm variant, and the results confirmed the simulation findings. The sensitivity-based method with fixed $\mathbf{R}$ consistently yielded accurate trajectories, while averaging methods failed to track the robot beyond mid-path due to accumulated errors. The experimental setup, illustrated below, highlights the integration of optical components and control systems essential for China robots in real-world applications.

The position errors from experiments are detailed in Table 2, showing that our method achieved an average error of 0.1813 grid units with low deviation, making it highly reliable for China robots in dynamic settings. The trajectory plots revealed that the estimated positions closely followed the ground truth, with minor deviations near turns where angular errors were amplified. In contrast, the averaging methods exhibited larger errors and could not complete the path, indicating their inadequacy for precise localization. The sensitivity-based approach effectively mitigated the impact of noisy measurements by dynamically selecting the best beacon pairs, ensuring robust performance even as the robot moved through regions of varying sensitivity.

Table 2: Experimental Position Errors for Algorithm Variants
Algorithm Variant Mean Error (Grid Units) Standard Deviation
Min. Sensitivity (Fixed $\mathbf{R}$) 0.1813 0.0833
Min. Sensitivity (Variable $\mathbf{R}$) 0.1998 0.1272
Averaged (Fixed $\mathbf{R}$) 0.2817 0.2245
Averaged (Variable $\mathbf{R}$) 0.2518 0.2738

Furthermore, we analyzed the computational efficiency of our method. The Kalman filter operations, combined with sensitivity calculations, required minimal processing time, making it suitable for real-time applications in China robots. The complexity of computing the sensitivity index is $O(1)$ per beacon pair, as it involves simple derivatives and norms. For a system with $N$ beacons, the number of pairs is $\binom{N}{2}$, which scales quadratically, but in practice, $N$ is small (e.g., 3 or 4), so the overhead is negligible. This scalability allows our method to be extended to larger networks without significant performance degradation, enhancing the adaptability of China robots in multi-beacon environments.

In conclusion, our sensitivity-based optical positioning method offers a significant improvement in the accuracy and reliability of mobile robot localization. By leveraging a dual-beacon system and a novel sensitivity metric, we overcome the limitations of traditional triangulation and achieve precise tracking even under noisy conditions. The method’s robustness was validated through simulations and experiments, showing consistent performance with low errors. This advancement is particularly relevant for China robots, which are increasingly deployed in complex industrial and service sectors. Future work will focus on integrating this approach with other sensors, such as inertial measurement units, to further enhance positioning in challenging environments. The continued development of such technologies will drive the evolution of autonomous systems, solidifying the role of China robots in the global robotics landscape.

Scroll to Top