MoRPI: Mobile Robot Pure Inertial Navigation

Mobile robots are used in industrial, leisure, and military applications. In some situations, a robot navigation solution relies only on inertial sensors and as a consequence, the navigation solution drifts in time. In this paper, we propose the MoRPI framework, a mobile robot pure inertial approach. Instead of travelling in a straight line trajectory, the robot moves in a periodic motion trajectory to enable peak-to-peak estimation. In this manner, instead of performing three integrations to calculate the robot position in a classical inertial solution, an empirical formula is used to estimate the travelled distance. Two types of MoRPI approaches are suggested, where one is based on both accelerometer and gyroscope readings while the other is only on gyroscopes. Closed form analytical solutions are derived to show that MoRPI produces lower position error compared to the classical pure inertial solution. In addition, to evaluate the proposed approach, field experiments were made with a mobile robot equipped with two types of inertial sensors. In total, 143 trajectories with a time duration of 75 minutes were collected and evaluated. The results show the benefits of using our approach. To facilitate further development of the proposed approach, both dataset and code are publicly available at https://github.com/ansfl/MoRPI.


I. INTRODUCTION
M OBILE robots are used in different applications while operating under various constraints. For example, they can be found in industry, hotels, and warehouses and can be used for delivery, agriculture, healthcare, and military applications. Besides the improvements in technology, price reductions for electronic sensors and devices have caused an increase in research and in demand. Therefore, many companies worldwide produce mobile robots to answer the demand and infiltrate new markets. In parallel, major breakthroughs in low cost inertial sensors based on micro-electrical-mechanical-system (MEMS) technology provide better accuracy and robustness. The inertial sensors-namely, the accelerometers and gyroscopes-are packed in an inertial measurement unit (IMU) that is relatively very small (mm in scale), has low power consumption, and can be deployed easily in a variety of devices. In pure inertial navigation, the inertial measurements are integrated to obtain the position, velocity, and orientation of the platform. However, as the inertial sensor measurements contain noise and other types of errors when integrated, they cause the navigation solution to drift over time.
To compensate for such drift, external sensors or vehicle constraints were suggested in the literature, and solutions have been proposed over the years. One method, described by [ is the use of absolute position measurements to obtain the location. A common approach is to use vision for navigation, [2], [3]. Similarly, Lidar [4], and Sonar [5] can be used for localization. Using these methods, a pre-stored map can be saved in the robot's memory, and the robot compares its location to the saved map. Another common way to use the sensors is by scanning the environment and creating a map so the robot can estimate its relative position to features and seek landmarks (SLAM) [6]. A disadvantage of these methods is the sensitivity to changes. For example, when furniture is moved, this can confuse the navigation system. Moreover, reflections or a lack of proper light can blind the sensors. Another approach is to use active beacons. Antennas, placed in known locations, can cover the environment so that triangulation [7] or trilateration [8] can be used to compute locations. GNSS is an example of this kind of navigation sensor. In order to obtain the location with beacons, they need to be situated in known locations, and eye contact between the robot receiver and the beacons is mandatory. Therefore, GPS cannot be used indoors, in urban canyons, or in outer space. Another kind of method is dead-reckoning. The IMU belongs to this group together with odometry. In odometry, sensors are installed next to the wheels [9], [10]. Relying on the predetermined wheel diameter and wheelbase, the position and heading are achieved. In some situations, external measurements are not available and the solution is based only on inertial sensors; hence, the navigation solution drifts in time. For example, GNSS signals are not available indoors and cameras suffer from lighting conditions. To cope with such situations, vehicle constraints could be applied. Several approaches were presented over the years using different types of prior knowledge as pseudomeasurements. For example, model of the vehicle dynamics and operating environment such that the vehicle travelling on a road [11], [12], using stationary updates for zero velocity and angular velocity [13], and modelling the sensor error [14].
In other navigation domains such as indoors, to cope with the navigation solution drift, instead of integrating the inertial sensor readings, an empirical formula estimates the drift in a pedestrian dead reckoning (PDR) framework [15]. In recent years, such empirical formulas have been replaced by machine learning approaches to regress the change in distance in any required time interval [16], [17]. Recently, the quadrotor dead reckoning (QDR) framework was developed for pure inertial navigation of quadrotors, employing PDR guidelines to improve position accuracy [18]. In this paper, inspired by PDR and QDR, we derive the MoRPI framework: a mobile robot pure inertial navigation solution that operates for short time periods to bound the navigation solution drift when external sensors are not available. The main idea is to drive the robot in a periodic motion instead arXiv:2207.02982v1 [cs.RO] 6 Jul 2022 of a straight line trajectory, as commonly the path planning of mobile robots made up of straight lines, and adjust some of the PDR and QDR principles. This is done in MoRPI-A where both accelerometer and gyroscopes readings are used to determine the robot's two-dimensional position. In some scenarios, like narrow corridors when the amplitude should be small, the periodic motion may not be reflected in the accelerometer readings due to their high noise characteristics, so we also offer MoRPI-G, which uses only the gyroscope measurements to calculate the position of the robot. The contributions of this paper: 1) The MorRPI framework copes with situations of pure inertial navigation in mobile robots. 2) MoRPI-G determines the mobile robot position using only gyroscope measurements. 3) An analytical error assessment of the MoRPI approach is provided and compared to the classical pure inertial solution. 4) Our dataset and code are publicly available and can be found here: https://github.com/ansfl/MoRPI. To evaluate the proposed approach, field experiments were made with a mobile robot equipped with two types of inertial sensors. In total, 143 trajectories with a time duration of 75 minutes were collected and evaluated. Comparisons to the classical inertial navigation solution were made in two and three dimensions. The rest of the paper is organized as follows: Section II presents the INS equations and the QDR method. Section III describes the proposed MoRPI approach and provides an analytical assessment of its position error. Section IV explains the experiments and gives the results, and Section V gives the conclusions of this paper.

II. PROBLEM FORMULATION
In this section, we address the process of inertial measurements within the inertial navigation system (INS) to calculate the robot navigation solution in three dimensions. Also, as mobile robots move in two dimensions, the INS equations are reduced to planar motion and presented here. Then, we briefly review the QDR approach.

A. Inertial Navigation System
The INS equations provide a solution for the position, velocity, and attitude based on the inertial sensor readings. As short time scenarios are addressed, the inertial frame (iframe) is defined at the robot's starting point, and the body frame (b-frame) coincides with the inertial sensors' sensitive axes. Let the accelerometer measurement vector, the specific force vector expressed in the body frame f b ib , be denoted as and the gyroscope measurement vector, the angular velocity vector expressed in the body frame ω b ib , as where the subscript ib stands for the body frame with respect to the inertial frame, and the superscript b denotes that the vector is resolved along the axes of the body frame. As our scenarios include low-cost inertial sensors and short time periods, the earth turn rate and the transport rate are neglected. Hence, the INS equations of motion are [19]: where p n is the position vector expressed in the navigation frame, v n is the velocity vector expressed in the navigation frame, g n is the gravity vector expressed in the navigation frame and assumed constant throughout the trajectory, C n b is the body to navigation orthonormal transformation matrix, and Ω b ib is the skew-symmetric matrix of the angular rate, defined as: where ω j=x,y,z are the gyroscope measurements as defined in equation (2).

B. Two-Dimensions INS
Leveraging the wheeled robot planner motion, it is assumed the robot moves with nearly zero roll and pitch angles and only the motion in the x − y plane is relevant. Therefore, the bodyto-navigation transformation matrix depends only on the yaw angle, ψ, and is given by [20]: Substituting (7) into (4) shows that f z has no influence on the velocity and the position in the x − y plane, and thus it is not needed in the inertial calculation. In addition, as only the yaw angle is taken into account, the gyro measurements in the x − y plane, i.e., ω x , ω y , are neglected and only ω z is considered.

C. Quadrotor Dead Reckoning
In [18], an adaptation of PDR principles was used to derive the QDR approach for situations of pure inertial navigation for quadrotors. To that end, the accelerometer readings were used to detect a peak-to-peak event. Then, using a step length estimation approach, the peak-to-peak distance was estimated. In their analysis, the Weinberg approach [21] was employed to estimate the peak-to-peak distance. Originally, it was developed to cope with constant stride length estimation approaches (based on user height). To that end, Weinberg proposed an empirical method taking into account the accelerometer readings during each stride. The underlying assumption of this approach is that the vertical bounce (impact) is proportional to the stride length. In the QDR approach, the peak-to-peak distance estimation is: where s w is the estimated peak-to-peak distance according to Weinberg's approach, and G w is the approach's gain.
To apply (8), the approach's gain needs to be determined prior to application. Once the peak-to-peak distance is found, it is used together with the gyro-based heading and initial conditions to propagate the quadrotor position by where k is the time index.

III. PROPOSED APPROACH
Motivated by the QDR approach, our goal is to derive an accurate navigation solution for mobile robots using only inertial sensors for short time periods. Compared to the QDR approach, the mobile robot maneuvers are limited due to the indoor environment (corridors, for example). As a consequence, the periodic motion requires fewer accelerations, which may not be sensed using low-cost MEMS accelerometers. To cope with this challenge, in addition to applying and modifying QDR for mobile robots (MoRPI-A), we propose a gyroscope-only solution for positioning the mobile robot (MoRPI-G). We argue that regardless of the limited space for maneuvering, the angular rate in the z direction (perpendicular to the robot's plane of motion) is dominant enough to be recognized and utilized for positioning the robot. Both of Our MoRPI approaches consist of the following phases: • Peak detection: The peaks during the motion are extracted as local maxima from the inertial measurements. • Gain calculation: Prior to the application of the proposed approach, the empirical gain is estimated by moving the robot at a known distance with a known number of periods while using the Weinberg approach. This procedure is repeated several times with slightly different maneuvers and the gain is taken as the average from all runs. Once obtained, this gain is used in real-time to estimate the peak-to-peak distance. • Peak-to-peak distance estimation: The 'step', in analogue to PDR, is the segment between two peaks. The peak-to-peak distance estimation is done using the Weinberg approach with the predefined gain and the inertial sensor readings. • Heading determination: We use the heading extracted from the transfer matrix C n b to project the peak-to-peak distance into local planar coordinates. • Position update: As a dead-reckoning method, the position is updated relative to the previous step while using the current heading angle and peak-to-peak distance. Our proposed approach is illustrated in Figure 1.
As discussed above, we distinguish between two MoRPI approaches based on the inertial sensors they employ for the peak-to-peak length estimation: 1) MoRPI-A: uses both accelerometers and gyroscopes. As applied in PDR and QDR, the advantage of this method over the INS is that it uses less integration on the inertial sensor readings and as a result reduces the position drift. For clarity, we define the body coordinate frame axes: the x-axis points towards the moving direction, the z-axis points downwards, and the y-axis completes the orthogonal set. In PDR, the motion is expressed in the vertical direction; thus, the accelerometer zaxis readings are used to determine the step length.
In QDR, the magnitude of the specific force vector is used instead. In the proposed approach, the y-axis accelerometer readings are used instead, as the applied periodic motion is exhibited and captured best in this direction. Thus, the peak-to-peak distance is calculated by where s A is the peak-to-peak distance and G A is the gain of MoRPI-A. In general, it is necessary to determine G A before using (11). To that end, the mobile robot is moved in a trajectory with the required dynamics, where the travelled distance of this trajectory is known. By plugging the accelerometer readings in each peak-topeak distance and summing the results, the gain value can be estimated. Commonly, this procedure is repeated to obtain a more accurate gain. 2) MoRPI-G: uses only gyroscopes. To cope with realworld situations of small amplitudes within the periodic motion (in the horizontal plane) that cannot be sensed by the accelerometers, we employ the gyro z-axis readings for estimating the robot's peak-to-peak distance using where s G is the peak-to-peak distance and G G is the gain of MoRPI-G. G G is extracted in the same manner as G A except here, instead of the accelerometer readings, the angular rate ω z is employed. Regardless of how the peak-to-peak distance was estimated, i.e., by (11) or (12), the robot position is calculated by where i = A, G depending on the approach. As relative positioning is used here, the initial position is set to zero.

A. Analytical Assessment
In this section, we offer an analytical assessment of the expected position error using two and three dimensional INS while the robot moves in a straight line trajectory compared to our proposed approach where the robot moves in a periodic motion trajectory with the same distance. Maintaining consistency with Section II, the earth and transport rates are neglected in the analysis. We employ the 15 error state model [22], [23] expressed in the navigation frame with the following error state vector: where δp n is the position error vector expressed in the navigation frame, δv n is the velocity error vector expressed in the navigation frame, n is the misalignment vector, b a is the accelerometer bias residuals, and the gyro bias residuals is b g , as expressed in the body frame. As short time periods are considered, we assume constant biases during the analysis.
The resulting error state model is where F is the system matrix and − (f n ×) is the skew-symmetric form of the specific force vector expressed in the navigation frame. The solution of the set of first order differential equations (16) is where δx t0 is the initial condition vector of the system and Φ is the transition matrix. A closed form solution of the transition matrix in (18) was offered in [24], [25]: where As a straight line trajectory for short time periods is considered, we assume that the body and navigation frame coincide: and, as a consequence where b a,x , b a,y , and b a,z are the biases of the accelerometer in the x, y, and z axes, respectively. Finally, as for both INS and MoRPI approaches the initial position and misalignment errors have the same influence on the position error, we assume zero initial position and misalignment errors. Yet, the initial velocity error influences only the INS approaches due to the integration on the velocity states. In the MoRPI approach, the position is obtained from an empirical formula without the need to integrate velocity errors. Thus, only the initial velocity error is considered in our analysis. Taking into account (23)-(25), when solving (19), the position error is: The heading error is the same for the all methods we examined. Therefore, the elements that depend on b g,z were discarded. The resulting distance error is: e 3D = δv 2 t0,x + δv 2 t0,y t 2 + (δv t0,x b a,x + δv t0,y b a,y ) t 3 where α g + b a,z . When considering the two dimensional INS b g,x , b g,y and b a,z are not relevant for the position estimation, thus the distance error (28) reduces to e 2D = δv 2 t0,x + δv 2 t0,y t 2 + (δv t0,x b a,x + δv t0,y b a,y ) t 3 As a consequence, the expected error of the two-dimensional INS is smaller than the three dimensional one. In our MoRPI approaches, the distance error is based on the peak-to-peak distance based on the Weinberg approach (11) for MoRPI-A and (12) for MoRPI-G. In this analysis, we focus only on MoRPI-A as the same procedure can be applied exactly on MoRPI-G. As shown in (11), the peak-topeak distance is a function of the gain and the specific force readings in the y-axis between the peaks. Let Note that as constant biases are addressed they are cancelled out in (30) and therefore have no influence on the distance error. Substituting (30) into (11) and linearizing to obtain the peakto-peak error at peak k gives where s A,k is the true k-th peak-to-peak value, δs k is the peak-to-peak error, and δG A reflects the error of the actual gain that should have been applied, depending on the actual periodic motion, which differs from the expected one.
Removing the true values of (11) in (32) yields That is, the peak-to-peak distance error of the MoRPI-A approach depends only on the gain error and not on the biases of the accelerometers. The distance error of the whole trajectory is the sum of all peak-to-peak distance errors: where N is the number of peaks.
To summarize, the 3D INS distance error (28) and the 2D INS distance error (29) are polynomial in time and therefore expected to diverge much faster than the MoRPI-A approach. This is illustrated in Figure 2 using numerical values as described later in Section IV. In addition, the gain choice should fit the expected dynamics to obtain the best performance, otherwise performance degradation should be expected [26]. Hence, in practice moving the vehicle differently than planned, will yield a position error. This behaviour corresponds to working with erroneous gain instead of the expected one. Therefore, to evaluate the gain error, we used δG A = 5% and δG A = 10% from the true gain.

A. Field Experiment Setup
A remote control car and a smartphone were used to perform the experiments and record the inertial data to create our dataset. The smartphone was rigidly attached to the car as shown in Figure 3. The model of the RC car we used is a STORM Electric 4WD Climbing car. The car dimensions are 385 × 260 × 205mm with a wheelbase of 253mm and tire diameter of 110mm. The car has a realistic suspension system that enables it to reach up to 40kph and cross rough terrain. Two different smartphones, with different inertial sensors, were used in our experiments: 1) A Samsung Galaxy S8 Smartphone with an IMU model of LSM6DSL manufactured by STMicroelectronics. 2) A Samsung Galaxy S6 smartphone with an IMU model of MPU-6500 manufactured by TDK InvenSense. The error parameters of both sensors are presented in Table I. In both smartphones, the inertial sensor readings were recorded with a sampling rate of 100Hz. The smartphone was placed on the top of the car with the screen facing upward. At the starting point, the car was directed to the end point and the phone accelerometer on the x-axis was aligned to the direction of movement. At the beginning of each recording, the phone was mounted parallel to the floor.

B. Dataset
Five types of trajectories were made during the field experiments.

1) Straight Line:
To evaluate the INS solution, 24 recordings of driving in a straight line were made with the Samsung Galaxy S8 cellphone as part of the autonomous platform's inertial dataset [27]. The length of the straight line trajectory was 6.3m and the recordings were done indoors. Each of the recordings contains at least three seconds of stationary conditions at the beginning and end of the trajectory. An example of typical recordings of this trajectory type is presented in Figures 4 and 5 for the accelerometers and gyroscopes, respectively. The direction of the motion is along the x-axis, therefore there is a spike in the specific force in that axis at the beginning of the motion, and then decreases towards zero because we tried to keep a constant velocity during the experiments. At the end of the motion, deceleration slowed down the car until it came to a complete halt. A slight force in the y and x axes can be observed as it was difficult to maintain a straight line along the course. 2) Periodic Motion -Short Route: To evaluate our proposed approach, a sine shaped trajectory was recorded 23 and 30 times with the two smartphones: Samsung Galaxy s8 and s6, respectively. The start and end points of the trajectory were the same as for the straight line trajectory, with the same distance of 6.3m. The recordings were done indoors with three seconds of stationary conditions at the beginning and end of the trajectory. An amplitude of approximately 0.1m was applied in periods of 1m length, with different velocities of the mobile robot. An illustration of this trajectory type with a straight line trajectory is presented in Figure 6. In addition, another 26 recordings were gathered using only the Samsung Galaxy S8 smartphone with longer periods of 1.5m and 0.2m of amplitude on the same route. The average time of the trajectories with periodic motion is 11s for 1.5m peaks and about 14.5s for the 1m peak trajectories. It is more than twice than in the straight line trajectories, which have an average duration of 5s for the same travelled distance (start to end point).
3) Periodic Motion -Long Route: In the same manner, as the short route, a sine shape trajectory was recorded ten times with the Samsung Galaxy s8 and ten times with the Samsung Galaxy s6 for a longer distance of 13m, which is about twice the short route. An amplitude of approximately 0.1m was examined with periods of 1m, with different velocities. These recordings were taken outdoors. The smartphones were placed together on the car, with the s8 in the same spot as in the short route recordings and the s6 on the front of the car, as shown in Figure 7. An example of the inertial sensor recordings during this Fig. 7. Setup of the RC car with two phones. trajectory is presented in Figures 8-9. The periodic motion is seen in the specific force f y and in the gyro ω z readings.

4) L-Shaped -Straight Lines:
To examine the robustness of our method, an L-shaped trajectory was examined. The trajectory consists of an 18m straight line segment followed by a 90 degrees turn and a 10m straight line segment (L-shape trajectory). This trajectory was carried out on an asphalt surface, with a slope of approximately 15°downhill along the first 5m of the first segment. The total length of the trajectory, 28m, is more than twice the long route presented in Section IV-B3. Ten recordings were gathered using a Galaxy S6 smartphone. The smartphone was located on the front of the mobile robot similar to the location used in the long route. 5) L-Shaped -Periodic Motion: The same L-shaped trajectory, as in the previous section, using the Galaxy S6 smartphone, is used. Instead of moving in straight lines, a periodic motion was applied with periods of 1m and an amplitude of 0.1m. This trajectory was recorded ten times. 6) Summary: A total of 143 experiments with a total of 75 minutes were made. Among them, 83 experiments were recorded with the Samsung Galaxy S8 smartphone and 60 with the Samsung Galaxy S6 smartphone. One hundred and three experiments were made indoors on a floor, while 40 experiments were recorded outdoors on an asphalt surface. The number of experiments varies between the different types of trajectories because of unusable recordings due to the manual operation of the robot. The dataset is publicly available and can be downloaded from https://github.com/ansfl/MoRPI. The dataset of the periodic movement was split to have a variety of velocities in both train and test sets, where the train was used to determine the gain, and the test to examine our method. The groups were divided almost equally.
C. Indoor Experiments 1) Straight Line Trajectory: Equations (3)-(5) were used for calculating the mobile robot location in the INS mechanism. First, the raw inertial sensors readings were plugged into those equations in a naive approach denoted as RD for raw data. Second, to improve performance, zero-order calibration for the gyroscopes was made by utilizing the stationary conditions at the beginning of the trajectory and addressing the mean value in each axis as the bias. In addition, it was assumed that the smartphone is perfectly parallel to the floor, thereby aligning the z-axis with the direction of gravity. As a consequence, a zero-order calibration was also applied for the accelerometers, taking into account the local gravity value. This gyro and accelerometer calibration approach is denoted as (GAC). The same procedure was applied in the two-dimensional INS mechanism as described in Section II-B. The results with the three and two dimensional INS with the RD and GAC approaches are given in Table II. Using the raw data without any calibrations, the 3D INS obtained an error of 3.38m, corresponding to 53.7% of the travelled distance, while the 2D INS obtained a higher error of 3.91m, corresponding to 62%. Applying zero order calibration in the GAC approach has less influence over the 3D INS. Yet, the 2D INS error of the travelled distance was reduced from 62% to 28.6%. Those results show that after removing the biases of the inertial sensors, the 2D assumptions hold and therefore the performance improves. A typical plot of the 2D and 3D   TABLE II  INS ERRORS AT THE END OF THE TRAJECTORY PRESENTED AS   PERCENTAGES OF THE TRAVELLED  INS solutions with RD and GAC approaches is presented in Figure 10 to demonstrate the results discussed above. 2) Periodic Motion: All of the periodic motion recordings were analyzed to extract the peaks, the start point, and the end point of the motion. Then, for each segment, the peak-topeak distance was calculated for the MoRPI-A method using (8) and for MoRPI-G using (12). To calculate the gain of each approach, the training dataset was used with the known travelled distance, allowing to solve for the gain in each equation. The results provided in this section are for the test dataset only. The heading angle at each epoch, ∆ψ k , was calculated, as in the INS mechanism, using (5). Besides using the raw data (RD) in MoRPI approaches, we also examined the influence of the gyroscope calibration (GC). Note that when using accelerometer and gyroscopes readings in the INS equations, integration is made on both of the sensor readings, which is the reason that GAC was applied in the straight line trajectories. However, in the proposed MoRPI approaches, the accelerometer readings are used only to detect the peaks and to determine the peak-to-peak distance using an empiric formula without any integration; therefore, only GC was applied. The calibration process was done in the same manner as the INS method, using the first three seconds of the recordings when the robot was in stationary conditions. Eventually, using the peak-to-peak distance and heading angle, the total distance of the trajectory was calculated using (9)-(10), for both MoRPI approaches.
The results of the test dataset of the short route are presented in Table III for both smartphones and both MoRPI approaches as a function of the raw data used, RD, or GC, and as the designed peak-to-peak distance. As observed from the table, the proposed MoRPI approaches in all examined configurations greatly improved the 3D and 2D INS solutions. In particular, MoRPI-G obtained the best performance for both smartphone types, with gyro calibration, with a distance error of 4.60%-4.76% compared to the travelled distance. This corresponds to an improvement of the best INS result (2D INS with GAC) by approximately a factor of five. It is important to note that the variance of the results in each configuration shown in Table III is less than 2.5cm. The consequence of these results is that the gyroscope is more sensitive than the accelerometer in this process. Thus, peak detection is easier because the peaks are more discernible, so we received more uniform peaks. This also affected the gain calculation in addition to more robustness over different velocities.  best approach with each method; i.e., the GAC from 3D and 2D INS, and GC from MoRPI-A and MoRPI-G, relative to the end point of 6.3m in the x-axis, and the improvement in percentages of each method relative to the others. Despite the longer time duration in periodic motion trajectories, compared to the straight line, the position error was significantly lower as described in Section IV-B2 and as expected from our analytical assessment in Section III-A. D. Outdoor Experiments 1) Periodic Motion: To further evaluate our approach, we performed outdoor experiments that differ from the indoor ones, by surface type (asphalt instead of a tiled floor) and trajectory distance (13m instead of 6.3m). Based on the analysis of the indoor experiments' results, we examine here only the 1m desired peak-to-peak distance using both smartphones. In addition, the gain that was calculated in the indoor experiments was used for fair comparison; i.e., all outdoor experiments were treated as a new test dataset to examine the robustness of the proposed approach. Finally, we examined the MoRPI-A and MoRPI-G methods with RD and GC approaches, as in the indoor experiments. The results, presented in Table V, show the same behaviour as in the indoor experiments: an improvement when using calibration and an improvement using MoRPI-G, and with similar accuracy. This is consistent with our assumption of linear error in the proposed method. There is a small difference in the error percentages in the long route, where the main cause is the human factor in the experiments, which becomes more significant as the distance increases. In addition, the poor outdoor conditions, where the ground is not level and included obstacles such as cracks and loose gravel, contributed to the error. Moreover, the setup of the recordings, with two phones recording simultaneously, changed the dynamics of the robot and influenced the results. 2) L-Shaped Trajectory: In the same manner as in the straight line trajectory, Section IV-C1, the INS equations were used with the two types of configuration: RD or GAC, and 2D or 3D. The error was calculated by the Euclidean distance of the achieved end point relative to the real end point coordinates (28m distance). The results, given in Table VI, show that without any calibration the errors are huge in both cases of pure inertial navigation, 2D and 3D, with 1523% and 1123%, respectively. Using zero-order calibration improves the results to 156% and 161%, for 2D and 3D, respectively, but they are still unusable for most applications. To evaluate MoRPI approaches on the L-shaped trajectory,  Table VII. The results show the same behaviour as in the indoor and outdoor experiments: an improvement using calibration and improvement using MoRPI-G. In particular, the lowest error, when using a pure inertial navigation approach was 156% while MoRPI-G reduced the error to 8.2%.
Focusing on MoRPI approaches, in this experiment, there is a degradation in accuracy compared to the short and long trajectories. The reasons for the degradation are: 1) A slope of 15 degrees in the first 5m of the trajectory.
2) The presence of a 90 degrees turn.
3) This experiment included a longer distance than the previous one and the errors caused by the manual operation were more significant. Despite all of the above issues, and the fact that this experiment was treated as a test, the results show that MoRPI approaches are robust even to complicated scenarios and greatly improve the standalone pure inertial solution. V. CONCLUSION To reduce the error drift in situations of pure inertial navigation we proposed MoRPI, a mobile robot pure inertial approach. To evaluate MorPI and baseline approaches, two different smartphones were mounted on a mobile robot and their inertial sensors were recorded in two different types of periodic motion, differing in surface type and length. A total of 143 trajectories were recorded with a total time of 75 minutes. Our results showed that the 2D INS with accelerometer and gyroscope calibration obtained the best performance in the baseline approaches, achieving an error of 1.8m for the 6.3m trajectory, which corresponds to 28.6% of the travelled distance. Using the MoRPI-A approach, the average error using the two smartphones was 6.5% of the travelled distance, while MoRPI-G obtained the overall best performance with an error of 4.68% of the travelled distance. This means that our proposed approach improved the INS approach by a factor of six. We showed that even for twice the distance, and as a consequence of a longer duration of movement, the error increased in a linear manner. For example, the error over 6.3m was 4.76% using the Samsung s8, and over 13m the error was 4.46%. Finally, an L-shaped trajectory, including a slope and a 90 degrees turn, was also examined. As in the other trajectories, MoRPI approaches greatly improved the pure inertial solution. The above experiment results and characteristics coincide with our analytical assessment closed form solution for the position error of the INS and MoRPI approaches. To conclude, in scenarios where pure inertial navigation is needed, our proposed approaches, MoRPI-A and MoRPI-G, provide a lower position error compared to the INS solution. In particular, MoRPI-G obtained the best performance using only the gyroscopes readings. All of the recorded data and code used for our evaluations are publicly available at https://github.com/ansfl/MoRPI. He is currently an Assistant Professor, heading the Autonomous Navigation and Sensor Fusion Laboratory, at the Hatter Department of Marine Technologies, University of Haifa, Israel. His research interests include data-driven based navigation, novel inertial navigation architectures, autonomous underwater vehicles, sensor fusion, and estimation theory.