scieee AI-readable full text Open interactive document viewer

Deep learning-based UWB-IMU data fusion for indoor positioning in industrial scenario

Muthineni, Karthik,Artemenko, Alexander,Vidal Manzano, José,Nájar Martón, Montserrat,Catalán Cid, Marisa,Paradells Aspas, Josep

Abstract

Accurate and precise wireless infrastructure-based positioning systems become crucial as industries move towards flexible, portable, and autonomous transportation systems such as Automated Guided Vehicles (AGVs). Multipath-dominant dynamic environments like industries present significant challenges for wireless signal propagation and affect wireless positioning accuracy due to the interplay of reflected signals from obstacles. The achievable indoor positioning accuracy of the target AGV can be enhanced by fusing the measurements from the wireless infrastructure with the target's onboard sensor data. Nevertheless, the lack of correspondence between the wireless infrastructure and the target's onboard sensors causes the measurements from these two systems to arrive at irregular time steps. Using asynchronous measurements in the data fusion process can degrade the overall positioning accuracy of the target AGV. This paper proposes a novel deep learning-based data fusion approach to deal with asynchronous measurements from the wireless infrastructure Ultra-Wideband (UWB) and the target's onboard Inertial Measurement Unit (IMU) sensor to achieve enhanced positioning accuracy of the target AGV. In particular, a two-stage cascaded Deep Neural Network (DNN) is proposed to deal with the asynchronized measurements from UWB and IMU sensors. The first stage of the DNN is used to obtain the initial position estimate of the AGV by processing the measurements from UWB. Subsequently, the second stage of the DNN fuses the initial position estimate of the AGV with the IMU sensor data to obtain the final enhanced position estimate. The proposed approach is validated with real-world experiments in an indoor industrial scenario using UWB technology in channel 2 (3.7-4.2 GHz) and an IMU sensor placed on an AGV. Moreover, the achievable positioning accuracy and the computational runtime to provide the position estimates with the proposed approach are analyzed. The experimental results show that the proposed approach achieves a mean absolute error of less than 10 cm, outperforming the considered baseline methods, Extended Kalman Filter (EKF) and Long Short-Term Memory (LSTM).

Full text

Received 14 April 2025; accepted 29 April 2025. Date of publication 5 May 2025; date of current version 20 May 2025. The review of this article was coordinated by Editor Prashant Sharma. Digital Object Identifier 10.1109/OJVT.2025.3566888 Deep Learning-Based UWB-IMU Data Fusion for Indoor Positioning in Industrial Scenario KARTHIK MUTHINENI 1,2, ALEXANDER ARTEMENKO 3, JOSEP VIDAL 4(Senior Member, IEEE), MONTSE NÁJAR4, MARISA CATALAN 5, AND JOSEP PARADELLS6 1Corporate Sector Research and Advance Engineering, Robert Bosch GmbH, 71272 Renningen, Germany 2Department of Signal Theory and Communications, Universitat Politècnica de Catalunya (UPC), 08034 Barcelona, Spain 3Corporate Sector Research and Advance Engineering, Robert Bosch GmbH, 71272 Renningen, Germany 4Department of Signal Theory and Communications, Universitat Politècnica de Catalunya (UPC), 08034 Barcelona, Spain 5i2CAT Foundation, 08034 Barcelona, Spain 6Department of Network Engineering, Universitat Politècnica de Catalunya (UPC), 08034 Barcelona, Spain CORRESPONDING AUTHOR: KARTHIK MUTHINENI (e-mail: kar[email protected]). The work of Josep Paradells was supported in part by the Spanish MCIU/AEI/10.13039/501100011033/FEDER/UE through Project PID2023-146378NB-I00 and in part by the Secretaria d’Universitats i Recerca del departament d’Empresa i Coneixement de la Generalitat de Catalunya under Grant 2021 SGR 00330. This work was supported in part by the European Union’s Horizon 2020 Research and Innovation Programme through the Marie Sklodowska-Curie under Grant 956670, in part by Project 6-SENSES under Grant PID2022-138648OB-I00 funded by MCIN/AEI/10.13039/501100011033, and in part by ERDF A way of making Europe. ABSTRACT Accurate and precise wireless infrastructure-based positioning systems become crucial as industries move towards flexible, portable, and autonomous transportation systems such as Automated Guided Vehicles (AGVs). Multipath-dominant dynamic environments like industries present significant challenges for wireless signal propagation and affect wireless positioning accuracy due to the interplay of reflected signals from obstacles. The achievable indoor positioning accuracy of the target AGV can be enhanced by fusing the measurements from the wireless infrastructure with the target’s onboard sensor data. Nevertheless, the lack of correspondence between the wireless infrastructure and the target’s onboard sensors causes the measurements from these two systems to arrive at irregular time steps. Using asynchronous measurements in the data fusion process can degrade the overall positioning accuracy of the target AGV. This paper proposes a novel deep learning-based data fusion approach to deal with asynchronous measurements from the wireless infrastructure Ultra-Wideband (UWB) and the target’s onboard Inertial Measurement Unit (IMU) sensor to achieve enhanced positioning accuracy of the target AGV. In particular, a two-stage cascaded Deep Neural Network (DNN) is proposed to deal with the asynchronized measurements from UWB and IMU sensors. The first stage of the DNN is used to obtain the initial position estimate of the AGV by processing the measurements from UWB. Subsequently, the second stage of the DNN fuses the initial position estimate of the AGV with the IMU sensor data to obtain the final enhanced position estimate. The proposed approach is validated with real-world experiments in an indoor industrial scenario using UWB technology in channel 2(3.7–4.2 GHz) and an IMU sensor placed on an AGV. Moreover, the achievable positioning accuracy and the computational runtime to provide the position estimates with the proposed approach are analyzed. The experimental results show that the proposed approach achieves a mean absolute error of less than 10 cm, outperforming the considered baseline methods, Extended Kalman Filter (EKF) and Long Short-Term Memory (LSTM). INDEX TERMS Autonomous transportation systems, data synchronization, deep neural networks, industries, inertial measurement units, ultra-wideband, wireless infrastructure-based positioning. I. INTRODUCTION Wireless networks are becoming the central nervous system for industrial applications, enabling efficient communications and control of manufacturing processes [1]. Positioning and/or tracking of industrial assets using wireless technologies is one such field of application in the industry that is investigated widely [2]. However, the complex layout of the industry with heavy metallic obstacles hinders wireless signal © 2025 The Authors. This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ VOLUME 6, 2025 1209 MUTHINENI ET AL.: DEEP LEARNING-BASED UWB-IMU DATA FUSION FOR INDOOR POSITIONING IN INDUSTRIAL SCENARIO propagation. Especially, the Non-Line-of-Sight (NLoS) and multipath phenomenon impede the interpretation of positional information from wireless signals, leading to inaccurate results [3]. Over the years, the focus has been dedicated to the accurate estimation of positional information like Time of Arrival (ToA) of Line-of-Sight (LoS) paths, which could be used in determining the User Equipment (UE) positions [4], [5],[6],[7],[8]. These works identify NLoS paths and eliminate the bias caused by the NLoS propagation. However, the efficiency of these approaches in a large-scale multipath dominant dynamic changing industrial environment is yet to be known. An alternative way of enhancing the accuracy of wireless positioning is to complement the radio signal measurements from the wireless infrastructure with the recorded data from UE onboard sensors through the data fusion technique. A. PRIOR ART 1) MODEL-BASED DATA FUSION The model-based approach follows a recursive mechanism to provide the position estimates by combining the motion model of a vehicle with the measurement model. The well-known algorithms under this category include Kalman Filters and their non-linear variants [9],[10],[11],[12],[13],[14],[15], [16], Particle Filters [17],[18],[19],[20],[21],[22], and Multi-Bernoulli Filters [23],[24]. The prior information of the vehicle is formulated in the form of a motion model, which is used to predict its initial position. On the other hand, the sensor’s measurements are used to update the initial position. The fusion occurs in the update step by integrating measurements from multiple sensors [15].In[9] and [14], information from the inertial sensors is fused with the range measurements of the wireless infrastructure using EKF to achieve a better position estimate of the user location. Enhancing the Ultra-Wideband (UWB) based positioning accuracy with inertial sensors in a mixed environment of LoS/NLoS scenarios and using a non-linear version of the Kalman Filter, UKF for data fusion was explored in [11] and [13] respectively. Authors in [12] proposed an EKF-based positioning approach by using the Inertial Measurement Unit (IMU) measurements to predict the vehicle’s state involving 2D position and the UWB measurements to update the vehicle’s state. In [20],a cascaded positioning solution with UKF and Particle Filter was presented. To solve the problem of particle degeneracy in Particle Filters, authors in [22] proposed a Dynamic Feasible Region-based Particle Filter (DFRPF). The proposed method utilizes IMU measurements to predict the position of the person. The UWB anchors in LoS are identified with prior information, and the corresponding LoS range estimates are used to resample the particles. The significant drawbacks of these approaches are their nature of handling non-linear measurements and assumptions about noise. The performance of EKF is limited in terms of linearizing the non-linear system through approximations. If the system is highly non-linear, similar to Automated Guided Vehicle (AGV), with complex motion patterns in the industrial environments, it can lead to inaccurate results. Moreover, EKF assumes the noise model to be Gaussian. The noise affecting the sensor measurements in the complex multipath-dominant industrial environment might not constitute Gaussian. As a result, the performance of the EKF can degrade. On the other hand, the UKF requires well-defined state-space mathematical models for fusing measurements from multiple sensors, and using asynchronous measurements in the fusion could result in significant errors. In contrast to model-based approaches, data-driven approaches can capture non-linear relationships from input sensor data, learn to be robust to noisy data from training on noisy datasets, and be easily integrated with multiple sensors. Therefore, the dynamic behavior of indoor environments with obstacles exhibiting non-linear dynamics, the unpredictable non-Gaussian noise arising from the environmental factors, and the requirement for efficient data fusion approaches involving sensors with asynchronous measurements motivate the study of data-driven approaches. 2) DATA-DRIVEN BASED DATA FUSION The role of data-driven approaches can be witnessed across various industrial applications, harnessing their capability to solve complex models and optimization problems [25],[26]. The advancements in machine learning inspired researchers to apply these approaches to achieve precise positioning in scenarios where traditional techniques do not work efficiently. The reasons favoring machine learning approaches for positioning include their ability to learn non-linear relationships directly through the training phase, fusing multimodal data through feature extraction layers, and implementing a modelfree positioning system [15]. Different techniques, including supervised, self-supervised, and unsupervised learning, have been used to fuse the measurements from multiple sensors and achieve precise positioning. Using supervised learning, authors in [27] implemented a positioning solution by fusing the Wireless Fidelity (WiFi) signal strength measurements with the inertial sensors of a mobile phone using neural networks. The ability of the neural network to model the non-linear relationship was used to correct the non-linear approximation errors of EKF. In [28], authors proposed a two-stage localization framework consisting of coarse localization and refined localization modules. The smartphone’s Long-Term Evolution (LTE) signal draws a region of the user’s possible initial location. Thereby, the WiFi signals and camera images are fused through neural networks to estimate the final position of the user. The work in [29] utilized visual, IMU, and UWB sensors for positioning and proposed a DNN-based data fusion solution (VIU-Net) to achieve enhanced positioning results. Positioning with UWB ToA measurements using deep learning techniques, including the Long Short-Term Memory (LSTM) networks and Convolutional Neural Networks (CNN), are considered to achieve better positioning accuracy in [30] and [31] respectively. Techniques to generate ground truth labels directly from the input data with self-supervised 1210 VOLUME 6, 2025 learning were also explored in the literature. In [32],the motion features of a vehicle extracted from the camera and IMU sensors are fused with Recurrent Neural Network (RNN) to predict the vehicle position. The augmented views of the camera images and IMU readings are used to generate pseudo labels, which are used to train the model. Fusing the visual and inertial measurements using DNNs to achieve precise positioning with an unsupervised learning approach was presented in [33]. B. LIMITATIONS OF PRIOR ART The works in the prior art considered multimodal sensors, which provide distinct measurements at different output frequencies or sampling rates (we stick to the word sampling rates for the rest of the paper). As a result, there is no time correspondence between the sensor measurements, leading to data synchronization issues. In addition, data from the sensors might not arrive simultaneously due to different sampling rates, especially for wireless measurements, which can be affected by environmental factors. In such cases, using asynchronous measurements in the data fusion process can lead to inaccurate positioning results. However, despite its relevance in real-world scenarios, less emphasis has been placed on multimodal data fusion with asynchronous measurements and its impact on positioning accuracy. For instance, industries operate AGVs with multimodal sensors from different manufacturers. These sensors do not operate at the same sampling rates. Therefore, the industrial application that uses the sensory data from AGVs needs to work with the existing setup, avoiding adjusting the sampling rate of each sensor. C. NOVELTY AND CONTRIBUTIONS In this paper, we improve the mobile target’s achievable wireless infrastructure-based indoor positioning accuracy through a data fusion approach and demonstrate the results through real-world experiments. To this end, we present a detailed investigation into the application of DNNs as a powerful tool for fusing measurements from the wireless infrastructure and the mobile target’s onboard sensors to achieve enhanced position estimates of the target. The key questions related to DNNbased multimodal data fusion for indoor positioning are: (i) How to provide position estimations with the DNNs, relying on the fact that different sensors generate data at various sampling rates and manually adjusting the output sampling rate of each sensor is not possible in the real-world scenario? (ii) What performance gain in positioning accuracy can be achieved with DNN-based data fusion compared to a conventional model-based approach such as EKF and a data-driven approach such as LSTM? This paper answers the questions mentioned above by demonstrating the efficiency of DNN-based data fusion using UWB and IMU measurements, with an AGV being the target UE to be positioned. The key contributions of this work are outlined below. 1) We propose a novel and efficient data fusion solution for the measurements between the wireless infrastructure and the UE sensor technology. Opposed to the works of prior art, which rely on a model-based approach for data fusion [12] and assume the underlying system dynamics to be partially known [34], our proposed data-driven DNN-based data fusion solution learns the system dynamics from the input measurements. Moreover, our approach can fuse the measurements without manually adjusting the output sampling rate of each source of measurement. We implement our proposed data fusion solution on the application of indoor positioning to enhance the positioning accuracy of an AGV. 2) In addition to the DNN-based data fusion solution, we propose and implement two other solutions based on EKF and LSTM approaches. We validate the performance of our proposed data fusion and positioning approaches in terms of achievable positioning accuracy and the computational runtime for providing position estimates through real-world experiments in the industrial environment. The rest of the paper is organized as follows. Section II describes the system model, including the details of the wireless infrastructure and the UE sensor technology under consideration. The problem under investigation is elaborated in Section III. The proposed DNN-based multimodal data fusion and positioning solution to the problem is presented in Section IV. In Section V, we analyze the positioning accuracy achieved with our proposed solution compared to the benchmarks considered. The significant learnings are summarized in Section VI. Lastly, Section VII concludes the work with a few recommendations for future research. II. SYSTEM MODEL In this work, we consider the UWB system as a wireless infrastructure with a set of nodes. Each of the nodes is configured either as an anchor or tag. The anchors are deployed in the Area of Interest (AoI) for performing positioning with known position coordinates {pac =(pxac ,pyac ),pac ∈ R2,ac ∈{1,2, ..., M}}, with M being the maximum number of anchors, which is six. On the other hand, the tag is connected to the target AGV, whose position needs to be determined {ptag =(pxtag ,pytag ),ptag ∈R2}. Each of the nodes in the UWB network is provided with a scheduled time interval to transmit or receive messages to/from neighboring nodes. The scheduling is done using the Time Division Multiple Access (TDMA) scheme consisting of beacons sent at periodic intervals and frames with duration τas shown in Fig. 1. The beacons are sent by the master anchor periodically at an interval of Tsto synchronize other anchors in the network. The time duration between two beacons defines a superframe. Furthermore, the superframe comprises K TDMA frames. As shown in Fig. 1, each TDMA frame contains a broadcast slot, allowing the tag to broadcast a message, followed by the response slots for receiving messages from the M anchors. It is to be noted that the master anchor allocates each response slot to a single anchor. In this work, only one tag is used, and the tag is provided with a fixed slot to broadcast VOLUME 6, 2025 1211 MUTHINENI ET AL.: DEEP LEARNING-BASED UWB-IMU DATA FUSION FOR INDOOR POSITIONING IN INDUSTRIAL SCENARIO FIGURE 1. Time Division Multiple Access (TDMA) scheduling in Ultra-Wideband (UWB) network. the message in a repeated TDMA frame cycle. Providing more slots to the tag in a repeated TDMA cycle is possible. However, a single slot per tag in a repeated TDMA cycle was used in this work to ensure a controlled and interference-free environment, i.e., minimizing the likelihood of interference with other devices operating in the same frequency range of UWB. At the end of each TDMA frame, the tag obtains M responses with messages corresponding to each anchor in the UWB network. As the tag knows the start time of each response slot and the anchor to which it is allotted, upon receiving messages from M anchors, the M Times-of-Flight (ToF) are computed by the tag. The M ToFs are, in turn, used to estimate M distances using Single-Sided Two-Way Ranging (SS-TWR) as mentioned in [35],[36]. The distances obtained by the tag are relatively in 3D due to differences in the heights of the deployed anchors and the tag. As the focus of our work is 2D positioning, the obtained 3D distances need to be transformed to 2D as d2D =((d3D)2−(h)2)1 2, where hrepresents the difference in heights between the anchors and tag. We consider 2D positioning in this work because the mobile target AGV operates only in 2D space, requiring position estimates to be obtained in 2D. Moreover, the ground truth sensor, LiDAR, is designed to provide position estimates in 2D, making 3D positioning validation difficult. For UE sensor technology, we use the IMU sensor, which consists of an accelerometer and a gyroscope and their corresponding measurements. It is to be noted that the IMU sensor has a specific coordinate frame called the local frame, and it moves following the movement of the AGV to which it is attached. On the other hand, the position coordinates of the deployed UWB anchors define the global coordinate frame of the AoI, which is fixed and does not change with the AGV’s movement. We use the global coordinates as the frame of reference for positioning. The measurements provided by the IMU sensor correspond to the local coordinate frame, which needs to be mapped to a global coordinate frame using a rotation matrix given by R=⎡ ⎢ ⎣ cos () cos ()−sin () cos ()+sin () sin ()sin()−cos ()sin()+cos () 00 1 ⎤ ⎥ ⎦, (1) where denotes the yaw angle, which is obtained by integrating the z-axis angular velocity from the gyroscope over time. Specifically, the yaw angle at time step tis computed as t=t−1+ωzt·t,(2) where t−1indicates the yaw angle at the previous time step, ωztrepresents the angular velocity along z-axis at time step tfrom the gyroscope, and trefers to the sampling period. It is to be noted that the yaw angle at the initial time step is already known in advance. On the other hand, the influence of gravity imposed on the acceleration measurements in the x and yaxes needs to be removed. To do so, the gravity in the global coordinate frame gG=[0 ,0,−9.8]Tis transformed to the local frame by gL=R−1·gG.(3) Thereafter, the effect of gravity is removed from the accelerometer measurements by acorrected =ameasured −gL,(4) where ameasured corresponds to the actual measurements recorded by the accelerometer in the local coordinate frame. Lastly, the corrected accelerometer measurements are transformed to the global coordinate frame by aG=R·acorrected (5) where aG=[ax,ay,az]Tindicates the acceleration measurements in the global coordinate frame. The IMU anomalies, such as accelerometer bias and gyroscope drift, can still be evident in the IMU measurements. However, the proposed deep learning-based positioning approach can learn the IMU anomalies from the input data. To maximize the fusion performance of our algorithm, we translate the global accelerations into the distance traversed by AGV as dimu = vt+1 2a(t)2, where vand trefers to the velocity and the time interval between IMU measurements, which are known parameters. The term aindicates the total acceleration given by a=((axG)2+(ayG)2) 1 2. The choice of using dimu comes from the fact that adding raw accelerations and orientation information from the IMU sensor as input to the DNN does not enhance the positioning performance. The acceleration measurements recorded by the IMU sensor remain constant if the AGV does not change its velocity during its movement along a trajectory. Moreover, the orientation measurements recorded by the IMU sensor also remain constant if the AGV does not make turns while moving along a trajectory. In our specific industrial environment, the AGV maintains constant movement (most of the time in a given trajectory) with minimal variations in acceleration and taking turns. In such cases, adding raw IMU sensor data as input does not help the DNN to learn to provide the position estimates as the output. Therefore, to have a reliable input feature through which the DNN can learn, we translate the measurements from the IMU sensor to a new measurement dimu and feed it as input to the DNN. The UWB tag provides the measurements at an output sampling rate of 10 Hz approximately. On the other hand, the 1212 VOLUME 6, 2025 FIGURE 2. Deep Neural Network (DNN) based multimodal data fusion architecture for indoor positioning. measurements from the IMU sensor are obtained at a much higher output sampling rate, i.e., 50 Hz. The measurements from these two systems are not obtained at the same timestamps, leading to asynchrony and temporal misalignment of the measurements. Integrating asynchronous measurements in the data fusion and position estimation process can impact the achievable positioning accuracy of the target. III. PROBLEM FORMULATION We consider an AGV equipped with three different sensors S∈{s1,s 2,s 3}: UWB tag, IMU, and Light Detection and Ranging (LiDAR), which provide measurements at different sampling rates. The measurements from the sensors are represented by (S) ={(S) 1, (S) 2, ...,  (S) N}, where (S) i represents the measurement from the sensors S at i-th time, with N being the maximum. The measurement is defined by (S) i={t,x}, where tis the timestamp of the measurement and xis the state vector. For the UWB tag, the state vector includes the 2D distances obtained through SSTWR between the UWB tag and a total of M UWB anchors xtag =[d1,d2, ..., dM]T. For the IMU sensor, the state vector includes accelerations from the accelerometer and angular velocities from gyroscope ximu =[ax,ay,az,gx,gy,gz]T. Lastly, the state vector for LiDAR includes the position coordinates of the AGV xlidar =[px,py]T, which is used as a ground truth. The LiDAR sensor provides position estimates of the AGV as the output using the LiDAR-Simultaneous Localization and Mapping (SLAM) algorithm [37]. The problem of interest is given the measurements (S) at discrete times {ti}N i=1with asynchronized samples from UWB and IMU sensors, how to fuse the measurements from both sensors to provide the position estimations of AGV over a continuous trajectory? We formulate this as (S) i,tiN i=1→{pi}N i=1,(6) where {pi}N i=1=[ˆpx,ˆpy]Trepresents the estimated position of the AGV in 2D coordinates at time ti. IV. DEEP LEARNING-BASED MULTIMODAL DATA FUSION The architecture for enhancing the indoor positioning accuracy of the AGV by fusing the measurements from UWB and IMU sensors using DNNs is illustrated in Fig. 2.Inthe subsequent sections, we go through Fig. 2, introducing the steps involved in the data fusion process and procedures for training. A. DEEP CASCADED POSITIONING The DNNs are the specialized architectures in deep learning with multiple layers of neurons, allowing the network to learn complex data representations. The proposed deeplearning-based data fusion and positioning solution uses two DNNs cascaded together, allowing the information to flow from the first DNN to the second DNN. This architecture is motivated by the industrial requirement to have a high positioning update rate of the AGV and solve the problem of fusing measurements from sensors with different sampling rates. In addition, the cascaded DNNs offer modularity, flexibility, and performance benefits. (i) The complex problem can be split into subproblems, focusing on learning positional features from each sensor and their respective measurements. (ii) Offering plug-and-play design, allowing modification of the parameters of one of the DNNs without affecting the overall architecture. (iii) The architecture enables progressive refinement, where the coarse output produced by the first DNN can be refined in the second DNN to improve the precision. First stage of DNN: The first stage of the DNN is used to process the measurements from the UWB network. We use the distances (2D) computed by the tag to the M anchors in the AoI using SS-TWR as inputs. Moreover, to VOLUME 6, 2025 1213 MUTHINENI ET AL.: DEEP LEARNING-BASED UWB-IMU DATA FUSION FOR INDOOR POSITIONING IN INDUSTRIAL SCENARIO enable the network to learn the temporal dependencies, we also add the previous position of the AGV in xand ycoordinates as additional inputs to the first DNN. To this end, the input vector to the first DNN (D1) at time tcomprises xD1 t=[pxt−1,pyt−1,d1, ... , dM]Tas shown in Fig. 2.The first DNN is trained to estimate the initial position of the AGV. The ground truth positions of the AGV obtained from the LiDAR sensor are used for supervised learning during the training procedure. Each neuron in the layer limplements an activation function to introduce non-linearity and learn complex patterns. In particular, if xrs tdefines the input vector for the r-th neuron in s-th hidden layer, then the output for the respective neuron is interpreted as yrs =frs(wT rsxrs t+brs), where wrs and brs indicates weights and bias associated with the neuron. The activation function is represented by frs(·). The input vector is passed through all the hidden layers to provide the initial position of the AGV [ ˆpinitial x,ˆpinitial y]Tas the output of the first DNN, illustrated in Fig. 2. Second stage of DNN: The second DNN is used to fuse the measurements from the UWB and IMU sensors. The second DNN takes the estimated position of the AGV in xand ycoordinates as well as the measurement conveying the distance traversedbytheAGVdimu, computed from the IMU measurements (discussed in Section II) as the inputs. To this end, the input vector to the second DNN (D2) comprises xD2 t= [ˆpx,ˆpy,dimu]T. The second DNN is trained to estimate the final position of the AGV, which is the result of the data fusion. The selected inputs can contribute to DNN learning in reliable trajectory estimation even when the trajectories are not straight (e.g., circular trajectories). Since the accelerations in the local coordinate frame from the IMU sensor are transformed into the global coordinate frame using the yaw angle, it helps correctly align the AGV’s movement in the global coordinate frame. The transformed accelerations in the global coordinate frame are then used to compute dimu. Therefore, the sequences of distances obtained over multiple time steps give insights into the motion of the AGV in a circular trajectory. The ground truth positions of the AGV obtained from the LiDAR sensor are used for supervised learning during the training procedure. The activation function frs(·) captures the non-linear dependencies. Thereafter, the input vector is passed through all the hidden layers to provide the final position of the AGV [ ˆ ˆpfinal x,ˆ ˆpfinal y]Tas the output of the second DNN, depicted in Fig. 2. Cascading the DNNs: The first and second DNNs are cascaded through a gate, which controls the flow of information to the second DNN as shown in Fig. 2. It is important to recall that the IMU sensor provides more output measurements per time unit (50 Hz) than the UWB tag (approx. 10 Hz). Therefore, the key idea is that whenever the measurement from the UWB tag is available, we fuse it with the IMU measurement to enhance the position estimation of the AGV. In those time instances when the measurement from the UWB tag is not available, we rely on the IMU to estimate the position of the AGV. For example, let’s assume that at the current time step t, we obtain the measurement from the UWB Algorithm 1: Proposed Algorithm for the Problem (6). tag (s1) t. This measurement corresponds to distances to a set of M anchors, which are given to the first DNN along with the previous position of the AGV as inputs. Based on its learning experience, the first DNN estimates the initial position of the AGV [ ˆpinitial x,ˆpinitial y]Tfor the current time step t. Thereafter, the initial estimated position is given as input to the second DNN along with the IMU measurement (s2) t, i.e., distance traversed by the AGV dimu. Subsequently, the second DNN provides the final estimated position of the AGV [ ˆ ˆpfinal x,ˆ ˆpfinal y]T. However, at the current time step t,if the measurement from the UWB tag is unavailable, the first DNN becomes inactive, and only the second DNN is used for the AGV position estimation. Nonetheless, the second DNN requires the position of AGV as one of the inputs. Thus, the final position estimated by the cascaded DNNs during the previous time step t−1, [ ˆ ˆpfinal xt−1,ˆ ˆpfinal yt−1]Tis used as the input to the second DNN along with dimu. The entire process is summarized in Algorithm 1. To this end, the gate is used to select the latest available position of AGV, which can be from the first DNN or the cascaded DNNs (from the previous time step t−1), and provide it as input to the second DNN according to the following condition. (ˆpx,ˆpy)=⎧ ⎨ ⎩ˆpinitial x,ˆpinitial y,if UWB data is available, ˆ ˆpfinal xt−1,ˆ ˆpfinal yt−1,otherwise . (7) B. TRAINING PROCEDURE We consider an offline training procedure described in Algorithm 1, where the data required for training the cascaded DNNs are collected beforehand through a measurement campaign. The key steps in the training procedure include data collection and model training. 1214 VOLUME 6, 2025 FIGURE 3. Run 1−Training trajectory of the Automated Guided Vehicle (AGV) for data collection. In addition, the figure shows the surrounding objects detected by the Light Detection and Ranging (LiDAR) sensor onboard the AGV. 1) DATA COLLECTION The UWB anchors are installed in the AoI for positioning, and the UWB tag is connected to the AGV. In addition, the AGV is also equipped with IMU and LiDAR sensors, is controlled by Robot Operating System 2 (ROS2), and is provided with a pre-defined trajectory to traverse in the given AoI as shown in Fig. 3. As the AGV follows the training route, the UWB tag, IMU, and LiDAR sensors collect their respective measurements and are logged into the AGV’s control computer. Subsequently, the IMU measurements are translated into dimu as described in Section II. It is to be noted that the training data also involves asynchronous measurements from the UWB and IMU sensors. The measurements are divided into training (80%) and validation sets (20%). 2) MODEL TRAINING The measurements collected by the AGV along the training trajectory are used to train each of the DNNs separately. The inputs to the first DNN include the previous position of the AGV and distances from the AGV to M anchors. The LiDAR position estimates are used as the ground truth labels. We adopt the Mean Square Error (MSE) as the loss function, which is defined as LMSE()=E{||p−ˆ p||2 2},(8) where pis the vector containing the ground truth position of AGV in xand ydirections. The estimated position is ˆ p. The trainable parameters containing weights and biases of the neural network are represented by . The deep learning model is implemented in Python with the Keras framework, which consists of five layers with {8,128,64,32,2}neurons per layer. The Rectification Linear Unit (ReLu) function is used as the activation function, and Adaptive Moment Estimation (ADAM) is used as the optimizer with a learning rate of 10−3. The DNN is trained with a batch size of 32 for 100 epochs. The number of layers, neurons per layer, batch size, and epochs are decided based on experimentation. The second DNN takes the estimated position of AGV and the distance traversed by AGV as inputs. The LiDAR position estimates FIGURE 4. AGV mounted with UWB, Inertial Measurement Unit (IMU), and LiDAR sensors (left). The considered industrial scenario (right). are used as ground truth labels with MSE as the loss function defined as LMSE()=E{||p−ˆ ˆ p||2 2},(9) where ˆ ˆ pis the vector containing the estimated position of AGV, which is the result of the data fusion. The DNN comprises five layers with {3,128,64,32,2}neurons per layer. All the training settings remain the same as that of the first DNN. V. PERFORMANCE EVALUATION This section presents the results of our analysis of the positioning performance. First, we describe the experimental setup used in the study. Next, we consider and provide details on fusing measurements with two benchmarks: EKF [12] and LSTM. Lastly, we compare the achievable positioning accuracy of AGV using our proposed solution against the benchmarks. A. EXPERIMENTAL SETUP In this study, we have used the ActiveShuttle from Bosch Rexroth as the test AGV [2]. The AGV is controlled by an onboard computer with ROS2 and is equipped with UWB tag, IMU, and LiDAR sensors, as shown in Fig. 4.TheUWB tag employed is Qorvo DWM1001C, which works in channel 2 with a center frequency of 3.9 GHz and a bandwidth of 500 MHz. The IMU sensor corresponds to STMicroelectronics LSM6DS3, featuring a 3-axis digital accelerometer and a 3-axis digital gyroscope. The safety laser LiDAR scanner on the AGV is used to obtain the ground truth data, i.e., position estimates of the AGV. The LiDAR uses the LiDAR-SLAM algorithm to provide the position estimates of the AGV [37].A detailed description of the LiDAR-SLAM algorithm is beyond the scope of this paper. The experimental AoI corresponds to an industrial scenario with dimensions of 9 m ×12 m × 3.3 m approximately. A concrete wall, metal cupboards, metal tables, plastic containers, and other robots are present around the AoI. Six UWB anchors were deployed around the AoI on the aluminum frame at a height of 2 m. The UWB tag is installed on the AGV at a height of 1 m from the ground level. VOLUME 6, 2025 1215 MUTHINENI ET AL.: DEEP LEARNING-BASED UWB-IMU DATA FUSION FOR INDOOR POSITIONING IN INDUSTRIAL SCENARIO Algorithm 2: Extended Kalman Filter Algorithm. B. BENCHMARKS In this study, we validate the performance of our proposed data fusion and positioning solution against the following benchmarks. 1) EXTENDED KALMAN FILTER We use the approach in [12] to fuse the UWB and IMU measurements. In the prediction step of EKF, we rely on the IMU measurements to estimate the position of AGV. In particular, the accelerations in the global coordinate frame [ax,ay]T Gfrom the IMU are used to predict the AGV’s position, following the motion model. In the update step of EKF, we use the UWB measurements to correct and compute the position of AGV. To this end, the state vector of the AGV includes its position and velocity in xand ydirections at time t,xt=[px,py,vx,vy]T. The IMU accelerations are used as control inputs to predict the new state or future state of the AGV ˆ xt+1, following the state transition equation ˆ xt+1=Axt+But+wt, where the state transition matrix A, the control input matrix B, and the control input vector utare given as A=⎡ ⎢ ⎢ ⎢ ⎣ 10t0 01 0 t 00 1 0 00 0 1 ⎤ ⎥ ⎥ ⎥ ⎦ ,B=⎡ ⎢ ⎢ ⎢ ⎣ t2 20 0t2 2 t0 0t ⎤ ⎥ ⎥ ⎥ ⎦ ,ut=ax ayG , (10) where tis the interval between two consecutive IMU measurements. In addition, the process noise wt∼N(μ, σ 2) is assumed to be Gaussian with mean μand variance σ2. Thereafter, the error in the state prediction known as state covariance is computed as ˆ ϒt+1=AϒtAT+Cx, with Cx being the process noise covariance representing uncertainties in IMU readings. The Cxis parameterized as Cx=Cmotion +Cw,(11) where Cmotion and Cwrepresents the noise due to uncertainities in IMU measurements and process noise wt, given as Cmotion =⎡ ⎢ ⎢ ⎢ ⎢ ⎣ t4 4σ2 ax0t3 2σ2 ax0 0t4 4σ2 ay0t3 2σ2 ay t3 2σ2 ax0t2σ2 ax0 0t3 2σ2 ay0t2σ2 ay ⎤ ⎥ ⎥ ⎥ ⎥ ⎦ ,(12) where σ2 axand σ2 ayrepresents the variance of IMU acceleration noise in xand y, respectively. Cw=diag σ2 px,σ2 py,σ2 vx,σ2 vy,(13) where σ2 pxand σ2 pydescribes position noise variance in xand y, respectively. Furthermore, σ2 vxand σ2 vyindicates velocity noise variance in xand y, respectively. The UWB measurements are used to update the state vector. In particular, the distances computed by the tag to each of the M anchors are used in the observation vector zt+1. The distance to anchor M can be mathematically represented as dM=((px−pxM)2+ (py−pyM)2)1 2, where (px,py) indicates the position of the AGV and (pxM,pyM) represents the known position of the anchor M. The EKF computes residual vt+1=zt+1−h(ˆ xt+1), representing the difference between the observation vector zt+1and the predicted measurements at time t+1, h(ˆ xt+1). To obtain the predicted measurements, the observation vector needs to be linearized around the state vector ˆ xt+1.Todothis, the Jacobian Ht+1is computed as Ht+1=∂h ∂ˆ xt+1 =⎡ ⎢ ⎢ ⎣ px−px1 d1 py−py1 d100 . . .. . .. . .. . . px−pxM dM py−pyM dM00 ⎤ ⎥ ⎥ ⎦ ,(14) Subsequently, the state is updated as ˆ x∗ t+1=ˆ xt+1+Kt+1 (zt+1−h(ˆ xt+1)), where Kt+1=ˆ ϒt+1HT t+1(Ht+1ˆ ϒt+1HT t+1+ Cr)−1is the Kalman gain and Cris the measurement noise covariance representing the uncertainty in the UWB measurements. The Cris a diagonal matrix, representing the uncertainty in UWB distance measurement to each anchor and is given by Cr=diag(σ2 1,σ2 2,...,σ2 M) (15) Lastly, the error in the state estimation is also updated as ϒ∗ t+1=(I−Kt+1Ht+1)ˆ ϒt+1. The entire process is summarized in Algorithm 2. 2) LONG SHORT-TERM MEMORY The second benchmark considered in this work is LSTM. We use an approach similar to the cascaded DNNs (discussed 1216 VOLUME 6, 2025 Algorithm 3: Long Short-Term Memory Algorithm. in Section IV) for fusing UWB and IMU measurements. To this end, a two-stage cascaded LSTM is used to estimate the position of the AGV. The first stage of the LSTM network is used to map the inputs of UWB SS-TWR distances to the initial position of the AGV. After that, the second LSTM network is used to fuse AGV’s initial position with the IMU measurements to obtain the enhanced position estimation of the AGV. The first stage of the LSTM (LS1) network consists of four layers, including one input layer, two LSTM layers, and one dense layer. The input layer takes UWB SS-TWR distances computed by the tag to M anchors xLS1 t=[d1,d2,...,dM]T at timestep tas the inputs. The inputs to the LSTM are provided in the form of structured data sequences. Each data sequence contains measurements corresponding to different timestamps. In this work, we consider the data sequence length of 2, representing the LSTM layer that takes 2 consecutive time steps of input measurements to provide the output. For instance, the first data sequence contains seq1= [xt1,xt2]Tas the input measurements for timesteps t1and t2, fed to the first stage of the LSTM network. Consequently, the initial estimated position of the AGV is obtained as the output. Next, the second data sequence contains seq2=[xt3,xt4]Tas the input measurements, fed to the first stage of the LSTM network to obtain the initial position estimate. The cycle continues till all the data sequences have been processed. The structure of the LSTM layer is shown in Fig. 5, which provides the cell state cstand the hidden state hstas the outputs. The cell state cstrepresents the long-term of the LSTM network. Specifically, it monitors the input measurements at each timestep and updates its memory by removing irrelevant information or adding relevant information. In short, the cell state holds the cumulative information from the data sequence. On the other hand, the hidden state hstrepresents the FIGURE 5. The Long Short-Term Memory (LSTM) cell structure with forget, input, and output gates. short-term memory of the LSTM network. It holds the information corresponding to the current timestep, which is necessary to generate the current output. Three gates, the forget gate, input gate, and output gate, have been used in the LSTM network to enable the network to control the information flow. The forget gate takes the input xt1and decides how much of the information has to be retained by computing ft1=σ(wT fxt1+bf),(16) where σis the ReLu activation function, wfand bfare the weights and bias of the forget gate. The input gate decides how much of the information from the input xt1has to be added to the cell state by computing it1=σ(wT ixt1+bi),(17) where wiand biare the weights and bias of the input gate. Subsequently, the cell state cstis updated based on the previous cell state cst0and the input gate it1as cst1=ft1cst0+it1˜ cst1,(18) ˜ cst1=tanh(wT csxt1+bcs),(19) where ˜ cst1is the input to the cell state. Finally, the output gate ot1and the hidden state hst1are computed as ot1=σ(wT oxt1+bo),(20) hst1=ot1tanh(cst1).(21) Therefore, the hidden state holds the initial position estimate of the AGV, which is given as input to the second stage of the LSTM. In particular, the second stage of the LSTM also contains one input layer, two LSTM layers, and one dense layer with the same processing steps as the first LSTM. However, the inputs to the second stage of the LSTM (LS2) network are xLS2 t=[ˆpinitial x,ˆpinitial y,dimu]Twith a data sequence length of 2. In addition, similar to the cascaded DNNs, the gate is used to select the latest available position of the AGV as input to the second stage of LSTM based on (7). The data collected during the measurement campaign is divided into training (80%) and validation (20%) datasets. The LSTM model is implemented in Python, and MSE is used as the loss function. The entire procedure is summarized in Algorithm 3. VOLUME 6, 2025 1217