{'fraction_non_alphanumeric': 0.019778099372889532, 'fraction_numerical': 0.009044862518089725, 'mean_word_length': 5.1022810890360555, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Sensor fusion system to estimate the trajectory of a low cost mobile robotic platform using an Inertial Measurement Unit

In this paper, the development and implementation of an algorithm is presented to identify the trajectory of a mobile robot based on data from an Inertial Measurement Unit with nine degrees of freedom consisting of a 3-axis accelerometers, an 3-axis gyroscopes, an 3- axis magnetometers, and an additional temperature sensor to compensate for temperature errors. The combined information from this set of sensors allows determining the trajectory and orientation of the robot at any moment to complement the information from its navigation system. Initially, it was necessary to build controlled test environments that allow observing and getting to know the trajectory and the dimensions thereof for capturing the raw data of the mobile robotic platform. Then, the data obtained form the sensor was processed off-line applying a Kalman filter with the aim to remove Gaussian noise; to estimating the trajectory and the absolute orientation of the mobile robotic platform the proposed algorithm was implemented. This implementation used the hardware elements are inexpensive, thus allowing the necessary testing, the data analysis and the interpretation of the outcome to be replicable and to be used as an educational tool within courses of undergraduate and master level. The elements of hardware used in this implementation are cheap, allowing its reproduction for the analysis and interpretation of data and can be used as an educational tool in courses of undergraduate and master level.


Introduction
The miniaturization of electronic devices, including micromachined sensors [1], and the increase in the processing capacity of low-cost embedded systems have allowed the development of new applications by capturing physical information using processing algorithms in the area of sensor fusion [2,3]. This fusion allows the derivation of information from measures and reduces the estimation error by combining observations or by integrating algorithms. Particularly in recent years, Inertial Measurement Units have been developed, accompanied by sensor fusion techniques to derive all kinds of mechanical variables used nowadays in almost every mobile consumer device to interpret motion variables. One of the areas of further exploration is the monitoring of human activity [4], [5], [6], sports [7], [8], and to assist in the treatment and diagnosis of many diseases [9], [10], [11]. In addition to global positioning systems [3], [12], or simply as absolute guidance system [13], [14]. All these lines of research make it necessary to progress in sensor fusion algorithms and optimization models to deploy applications in simple systems. Furthermore, the mobile robotic platforms have focused increasingly on daily life applications; it is estimated that in 2013 more than 6 million of those units were in use. Growth in this segment also encouraged the development of an area of research aimed at the design and implementation of navigation systems that enable robots to map the environment and to identify and overcome obstacles to perform their specific task. Until now, most of the operating units derive information about the spatial location and obstacles from encoder signals from the wheels or collisions with objects to complement the inertial measurement system [15], and using Unscented Kalman Filter (UKF) [16], [17] . Although this method has proven effective in domestic applications, it is certain that sensory fusion can optimize currently present problems and eliminate encoders to reduce costs, for this reason we carried out the here described study. In this paper, the development and implementation of an algorithm is presented to identify the trajectory of a mobile robot based on data from an Inertial Measurement Unit with nine degrees of freedom consisting of three accelerometers, three gyroscopes, three magnetometers, and an additional temperature sensor to compensate for temperature errors. The combined information from this set of sensors allows determining the trajectory and orientation of the robot at any moment to complement the information from its navigation system. Initially, it was necessary to build controlled test environments that allow observing and getting to know the trajectory and the dimensions thereof for capturing the raw data of the mobile robotic platform. Subsequently, the data was processed off-line implementing a Kalman filter [18] to remove Gaussian noise from the signal; then the sensor fusion algorithm was implemented allowing estimating the trajectory and the absolute orientation of the mobile robotic platform. It is worth mentioning that all the hardware elements used in the development of this idea are inexpensive, thus allowing the necessary testing, the data analysis and the interpretation of the outcome to be replicable and to be used as an educational tool within courses of undergraduate and master level. Finally, this initiative aims to explore the link between mobile robotics and Inertial Measurement Units to determine the trajectory and the absolute orientation as well as encouraging future studies where this system can be used to detect errors of other typical navigation systems, e.g. to determine the required power according to the inclination of the surface and to detect collisions, among many other applications.

1D Kalman Filter
The output signal of the accelerometer has a high noise component that can be characterized as Gaussian noise. Therefore, it was necessary to implement a 1D Kalman filter. The equations are shown in Equation 1 whereX k is the estimated value, Z k is the measured value and K k is the Kalman gain.X To calculate K k it is necessary to know or to estimate the error covariance of the process P , the error covariance of the observation R that in the case of the accelerometers can be obtained with the probability density function of the data while the accelerometer is static. If the value of R is known, the process shown in Equation 2 will be used, where m is a vector of previously acquired raw samples to obtain the nature of the noise. Note that in this case, since the application of the filter in a one-dimensional signal is scaled, the matrixA = 1, and the deviation Q should be adjusted to the speed of the system.

Orientation and magnitude
After applying the calibration procedures [18], and implement 1D Kalman filter, model described in Equation 3 can be applied to estimate the trajectory of the mobile platform. Importantly calibration algorithms are essential to the correct functioning of this model [18].

Results
To apply the linear Kalman filter, it must be absolutely assured that the nature of the noise is Gaussian. Figure 1 shows the PDF of the static signal of IMU9150 on the x-, y-and z-axis (accelerometer) before and after applying the Kalman filter. These results were obtained by placing the accelerometer on an anti-vibration table with a sampling frequency of 150 Hz.

Conclusions
In this paper a model to approximate the path of a mobile robot is presented using data from a magnetometer and a gyroscope; and further to approximate the size of the path with the values of the accelerometer. This work is presented as a first approximation to a model that allows for absolute tracking of a mobile robot. Testing the implementation of a 1D Kalman filter was performed for each of the three accelerometer measures and their effectiveness was shown. Importantly, the models effectiveness depends heavily on the quality of the measured signal. Finally, the approach shown in this article allows demonstrating the utility of the Inertial Measurement Units for kinematic models. Advances in this area are adaptable to the applications mentioned above such as sports, the analysis of human activity and the treatment and diagnosis of diseases.

Acknowledgments
This work is part of the project "Development of an inertial measurement to obtain and record biomechanical variables in athletes" with ID 1102-626-38784, of the Automática y Electrónica Group COL0053581 attached to the Instituto Tecnológico Metropolitano and co-financed by the Liga de Natación de Antioquia and Fundación Universitaria Luis Amigó.