# A Real-Time GNSS/PDR Navigation System for Mobile Devices
## 2 Materials and Methods
### Methods
#### 2.2.2 Step Detection  
In order to perform an effective pedestrian dead reckoning algorithm, the design of a procedure capable of determining the occurrence of each step performed by the user becomes crucial. The step identification from the acquired inertial data can be achieved by means of various techniques that are referred in the literature, including the identification of peaks on the acceleration signal, the use of phase-locked loop (PLL) systems to build a signal that is easier to analyze [13], or the use of wavelet transform to detect the step boundaries over time [14; 15]. All these systems are based on a preliminary gait analysis: in fact the signals coming from the inertial sensors strongly depend on the area of body in which the device is worn and its relative orientation between this part and the direction of motion. The study done in Section 2.2.1 allows us not to worry about the orientation as it is possible to bring the data from the sensor body frame to a reference fixed one, so permitting to consider only the area of the body where the device is worn. In this work, the device is considered worn in the pocket of the user who is assumed to perform a walking activity or to remain stationary. Particular actions or movements such as jumping, sitting down or standing up are not taken into consideration in this work. A discrete Fourier transform (DFT) analysis has been performed off-line on the available data referred to the vertical acceleration in NED frame. The aim of this evaluation is to indicate where the dominant frequencies associated to the step frequency can lie in the frequency domain. The results show a main harmonic component at 1.8 Hz which is used by the system in the real-time implementation to initialize the free running frequency of the PLL. In addition to the main harmonic component, the vertical acceleration presents higher frequency content for several reasons: the oscillatory motion of the pelvis, the vibration due to a device not rigidly attached to the body, and the noise. In order to highlight the main harmonic component associated to the step frequency, the vertical acceleration in the NED frame has been pre-processed through a low-pass filtering operation. A Chebyshev low-pass infinite impulse response (IIR) filter with a cut-off frequency of 15 Hz has been used. Since the group delay of the IIR filter is not constant, the latency introduced by the filtering depends on the frequency of the input signal; for what concerns the input signal considered in this work, the mean latency is about 0.4 s. The cut-off frequency of 15 Hz has been chosen because the principal information content in the frequency domain of the acquired vertical acceleration signal lies on the 0-15 Hz interval, as shown in Figure 4. Therefore, the frequency content above 15 Hz has been considered as a noise signal. The main harmonic component of the signal represents the step frequency and each maximum acceleration peak identifies the step event. A suitable PLL has been developed  
Figure 4: Representation in the time and frequency domains of the vertical acceleration during a walking activity. Vertical refers to the down direction of the NED frame. in order to create a sinusoidal signal which is locked in phase to the vertical acceleration signal with a free running frequency close to that considered valid for walking, i.e., equal to 1.8 Hz. Figure 5 compares the vertical acceleration in the NED frame and the sinusoidal signal that is the output of the PLL. The latter simplifies the identification of the steps occurred by coupling them with the relative maxima in a real-time implementation. In order to avoid that the PLL locks onto signals that are not related to walking, it is useful to implement a logic circuitry that automatically recognizes the carried out activity. Therefore, the variance of the vertical acceleration in the NED frame has been considered to evaluate the motion intensity of the user.