SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
DOI : 10.5121/ijcses.2014.5201 1
Time Alignment Techniques for Experimental
Sensor Data
Matthew Rhudy
Lafayette College, Easton, PA, 18042, USA
ABSTRACT
Experimental data is subject to data loss, which presents a challenge for representing the data with a
proper time scale. Additionally, data from separate measurement systems need to be aligned in order to
use the data cooperatively. Due to the need for accurate time alignment, various practical techniques are
presented along with an illustrative example detailing each step of the time alignment procedure for actual
experimental data from an Unmanned Aerial Vehicle (UAV). Some example MATLAB code is also
provided.
KEYWORDS
Data Processing, Delay Systems, Time Series Analysis, Timing.
1. INTRODUCTION
It is important for experimental data to be properly aligned in time in order to conduct
accurate post-processing analysis. Measurement systems are subject to data loss with time, which
causes gaps in the data which need to be properly located and filled in order to maintain the
appropriate time scale. It is also important to identify delays between different measurement
systems in order to align each data set properly, so that the data from each individual system can
be combined and used together for analysis. This is especially important for information fusion
applications, which thrive on having as many sources of information as possible [1]. For example,
the alignment of measurements from Global Positioning System (GPS) and Inertial Navigation
System (INS) [2] is necessary for applications such as human lower limb kinematics [3],
positioning [4], and attitude estimation [5]. Distributed systems such as sensor networks also
require accurate time synchronization [6,7,8]. Time alignment techniques are also useful for
determining delays in a system, which can be an important consideration for certain problems,
such as acoustic wave propagation [9] and human pilot modeling [10]. This work addresses a few
techniques which are useful for time alignment, and aims to serve as an instructive guide for
using these techniques. Note that this work is intended only to provide some information about a
few time alignment techniques. Other more complex time alignment methods can be found e.g.
in [11,12,13].
The rest of this paper is organized as follows. The time alignment techniques are presented in
Section 2. In Section 3 the experimental platform is discussed, followed by a time alignment
example in Section 4. Section 5 provides a brief conclusion. Some example code using
MATLAB is provided in the Appendix.
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
2
2. TIME ALIGNMENT TECHNIQUES
2.1. Alignment of Two Signals using Correlation Functions
The pure time delay between two measurement signals can be captured using correlation
functions. These functions include the auto-correlation function Rxx(τ) and the cross-correlation
function Rxy(τ), of two signals x(t) and y(t), given by
0
1
( ) ( ) ( )
T
xxR x t x t dt
T
 = +∫ (1)
0
1
( ) ( ) ( )
T
xyR x t y t dt
T
 = +∫ (2)
Note that the auto-correlation function is just the cross-correlation function of a given signal with
itself. Note also that ( ) ( ),xy yxR R = − and the auto-correlation function is always an even
function. The auto-correlation function represents time properties in the data that are separated
by fixed time delays. For example, consider the auto-correlation function for a signal
( ) sin( )x t t= of length T, where n is an integer. For this example, the auto-correlation function is
given by
0
1
( ) sin( )sin( )
T
xxR t t dt
T
 = +∫ (3)
Using the trigonometric identity
[ ]
1
sin( )sin( ) cos( ) cos( )
2
u v u v u v= − − + (4)
and performing the integration, the auto-correlation function becomes
[ ]
1 1
( ) cos( ) sin( ) sin( 2 )
2 4
xxR T
T
   = + − + (5)
If the length of the signal T is a multiple of the period of the signal, i.e., T = 2πn, where n is an
integer, then the equation reduces to
1
( ) cos( )
2
xxR  = (6)
Therefore, the auto-correlation function of a sine wave has peaks at any time shift of 2πn, where n
is an integer. This corresponds to the signal aligning with itself due to its natural periodicity. An
illustration of this result is given in Figure 1. The auto-correlation functions for non-periodic
signals such as random noise or impulse noise are much different than that of periodic signals.
Consider, for example, data sampled from a standard normal distribution, i.e., Gaussian random
noise with zero mean and standard deviation one. The auto-correlation for this signal should only
align with itself when there is no time shift (τ = 0). When τ is nonzero, the randomness of the
signal forces the value of Rxx(τ) to approximately zero, as shown in Figure 2.
Another interesting type of signal to consider is an impulsive signal. The auto-correlation for
a signal of this type will have some peaks around τ = 0 due to the alignment of the absolute
maximum with the subsequent local maxima and minima. To help illustrate this, Figure 3 shows
an example military impulse wave [14]. The cross-correlation function between two signals
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
3
represents their similarity based on a time shift, τ. This can be useful for various applications,
including detection of time delays, noise source identification, and radar and sonar applications
[15]. In general, unlike the auto-correlation function, the cross-correlation function will not be an
even function. In fact, one useful feature of this function is measuring the value of τ where the
function is at its absolute maximum. This value represents a time delay between the two signals.
To help illustrate this concept, using the previous impulse signal from Figure 3, another signal
was created by delaying the original signal by 0.1 seconds. Figure 4 shows the original and
delayed signals together, as well as their cross-correlation function. The absolute maximum of
the cross-correlation function occurs at a value τ = -0.1 s, which agrees with the time delay
between the signals. Here the minus sign indicates that there is a lag in time as opposed to a
positive sign which would represent a lead in time. Notice that the cross-correlation function for
this example is the same as the auto-correlation function in Figure 3 except for the shift in time.
0 10 20 30 40 50 60
-1
-0.5
0
0.5
1
t
sin(t)
Plot of Signal and Auto-Correlation for Sine Wave
-60 -40 -20 0 20 40 60
-1
-0.5
0
0.5
1
τ
Auto-Correlation
Figure 1. Plot of Signal and Auto-Correlation for Sine Wave
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
4
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000
-4
-2
0
2
4
t
RandomSignal
Signal and Auto-Correlation for Standard Normal Random Noise
-5000 -4000 -3000 -2000 -1000 0 1000 2000 3000 4000 5000
-2000
0
2000
4000
6000
τ
Auto-Correlation
Figure 2. Plot of Signal and Auto-Correlation for Random Noise
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
-500
0
500
1000
t
ImpulseSignal
Signal and Auto-Correlation for Impulse Signal
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5
-2
0
2
4
6
x 10
7
τ
Auto-Correlation
Figure 3. Example Military Impulse Wave Signal with Auto-Correlation
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
5
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
-500
0
500
1000
t
ImpulseSignal
Signal and Cross-Correlation for Impulse Signals
Original
Delayed
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5
-2
0
2
4
6
x 10
7
τ
Cross-Correlation
Figure 4. Plot of Original and Delayed Signals with and Cross-Correlation
The calculation of the auto-correlation and cross-correlation functions can be visualized by a
shifting in time of one signal with respect to one another, while multiplying their corresponding
values. This process is similar to that of a convolution integral of two functions x(t) and h(t),
given by [16]
0
( ) ( ) ( )y x t h t dt

 = −∫ (7)
The primary difference between a convolution integral and a cross-correlation is the negative sign
in the convolution integral, which in effect is a reflection of one of the signals about t = 0 before
time shifting.
When dealing with discrete or digital data, the auto-correlation and cross-correlation
functions cannot be calculated exactly. In this case, the auto-correlation and cross-correlation
functions can be approximated by [17]
1
1ˆ ( )
N r
xx n n r
n
R r t x x
N r
−
+
=
∆ =
− ∑ (8)
1
1ˆ ( )
N r
xy n n r
n
R r t x y
N r
−
+
=
∆ =
− ∑ (9)
where r = 0, 1, 2, …, m, with m < N. Here, r represents the lag number, and Δt is the time step,
which is the inverse of the sampling frequency in Hz. The ^ symbol above the R denotes an
approximation. Note that these calculations can also be done using the xcorr command in
MATLAB. Another quantity of interest is the cross-correlation coefficient function ρxy(τ), given
by
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
6
( )
( )
(0) (0)
xy
xy
xx yy
R
R R

  = (1)
which can be approximated by
ˆ ( )
ˆ ( )
ˆ ˆ(0) (0)
xy
xy
xx yy
R r t
r t
R R

∆
∆ = (2)
This quantity always satisfies -1 ≤ ρxy(τ) ≤ 1 [17]. Since the cross-correlation coefficient is a
normalized quantity, it is ideal for use in comparing different waveforms. This value is a
measurement of the agreement between the two signals as a function of the time delay. For time
alignment, this value can be used to gauge how well the signals are aligned, with 1 indicating
perfect positive correlation, -1 indicating perfect negative correlation (same signal, but reflected
about the x-axis), and 0 indicating no correlation.
2.2. Aligning a Signal with the Proper Time Scale
A problem that can occur with real measurement systems is the loss of information with time.
I.e., the data recording system might miss a packet (or more) of information, either due to delays
in the system or processing constraints. Typically in this situation, the measurement system
simply skips the missed packet and logs the next data point instead. For example, if a data stream
is supposed to be (1, 2, 3, 4, 5, …), and the 3rd
packet is skipped, the data will be logged as (1, 2,
4, 5, …). As this occurs over time, the data loss accumulates and therefore compresses the data
along the time scale. To restore the true time vector, an accurate time reference is needed.
Because of this, it is useful to obtain some information about the timing of the data in each packet
of information, such as from a counter on a microprocessor or an independent timing source, e.g.
in GPS data, the GPS time is encoded in each data packet. Using this independent timing source,
the locations of skipped data packets can be identified. These locations can be found easily by
taking the difference in successive time steps of the counter.
Consider the following example of a counter which skips packet 3 and packet 10. Figure 5
shows the true ideal counter (blue) and the recorded counter from the measurement system (red).
Taking the difference between successive time steps gives Figure 6, which shows that 2 steps
occurred in the counter instead of 1 at time steps 2 and 8. Note that it is time step 2, because data
packet three was skipped, therefore at step 2 it skipped 3 and went to 4. For time step 8, it is off
by an additional time step because of the previous data loss at time step 2. These points can be
used to identify the jumps in the data. Then, the data stream can be “stretched” out in time by the
number of data losses, and then these gaps can be filled in using interpolation.
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
7
0 5 10 15
0
5
10
15
Time Step
Counter
Ideal
Recorded
Figure 5. Data Packet Loss Example: Ideal and Recorded Counter Signals
0 2 4 6 8 10 12
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2
Time Step
∆Counter
Figure 6. Data Packet Loss Example: Difference between Time Steps
2.3. Precision Time Alignment using Pulse Per Second (PPS) Signals
When aligning signals from two different data streams, a precision time alignment method
can be used to align these measurements using a Pulse Per Second (PPS) signal. First a coarse
time alignment method should be applied to align the signals within one second of accuracy.
Then, a fine alignment can be performed using a PPS signal, which is an electrical signal that
precisely indicates the start of a second. This signal takes the shape of a square wave, with period
of 1 second. A PPS signal should be generated within the first data system and sent to the other
data system for logging. Then this gives two sources of the same information, which can then be
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
8
aligned in order to obtain precisely aligned measurements. Any phase shift between the two
signals is eliminated by shifting one of the signals until a perfect time alignment is achieved. For
this time alignment, the cross-correlation technique can be used.
3. EXPERIMENTAL PLATFORM
The flight data used for this study were collected with the Red Phastball aircraft which was
designed, manufactured, and instrumented by researchers at the Flight Control Systems
Laboratory (FCSL) at West Virginia University (WVU). The avionic payload includes a custom
designed printed circuit board (PCB) featuring four Analog Devices® Inertial Measurement Units
(IMUs) and a Novatel OEM-V1 GPS receiver, as shown in Figure7.
MicroSD Data Recorders
MOD5213-Microprocessor 1
IMU 1 (ADIS16405)
IMU 2 (ADIS16405)
IMU 3 (ADIS16405)
IMU 4 (ADIS16355)
MOD5213-Microprocessor 2
Figure 7. WVU Phastball Aircraft and Avionics
The PCB shown in Figure 7 records measurements using two MicroSD data loggers which are
interfaced with the various measurement systems using two MOD-5213 microprocessors. The
GPS data is recorded on a third MicroSD data logger. Of the four IMUs implemented in this
system, three are ADIS16405, and one is an ADIS16355. Although each IMU has an actual
resolution of 14-bit, the resolution is improved by oversampling the signals at 200 Hz, then
averaging down to 50 Hz, thus achieving 16-bit resolution. A Pulse Per Second (PPS) signal
from the GPS receiver is recorded with the IMU data using an Analog to Digital (A/D) port on
the MOD-5213 microprocessor. This PPS signal is utilized for precision time alignment between
the IMU and GPS data. The GPS receiver uses satellite information to calculate Cartesian
position and velocity. In addition to IMU and GPS data, a high-quality Goodrich® mechanical
vertical gyroscope was used to obtain direct measurements of the roll and pitch of the aircraft,
which are used as ‘truth’ measurements for this study. These measurements are recorded using a
3.3 V A/D at 16-bit resolution. All data were recorded at 50 Hz.
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
9
4. TIME ALIGNMENT RESULTS USING EXPERIMENTAL SENSOR DATA
This section goes through an example time alignment procedure using a data set collected with
the measurement system described in Section 3. The first step in the time alignment procedure is
to align each data stream individually with the proper time scale. First, the GPS data is
considered. The GPS time is logged with each GPS packet, and is shown in Figure 8 (left). The
difference in successive time steps is shown in Figure 8 (right), which shows were data loss
occurred, and how much time was lost. A zoomed in segment of this data is shown in Figure 9
Figurein order to provide an example of a typical data loss. Using the method described in
Section 2.2, the GPS data can be reconstructed with the proper time scale. Note that the data
“stretching” is applied to all of the channels in the GPS data, not just the GPS time.
0 100 200 300 400 500 600 700 800 900 1000
1200
1400
1600
1800
2000
2200
2400
Secondssince13:00
Time (sec)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
x 10
4
0
0.02
0.04
0.06
0.08
0.1
Sample
∆GPSTime(sec)
Figure 8. GPS Time (left) and Change in Time (right)
42 42.5 43 43.5 44
1368
1369
1370
1371
1372
1373
Secondssince13:00
Time (sec)
2100 2120 2140 2160 2180 2200
0
0.2
0.4
0.6
0.8
1
Sample
∆GPSTime(sec)
Figure 9. Example of GPS Data Loss
Similarly as for the GPS, the microprocessor data is subject to packet loss with time. The
microprocessor logs a counter at each time step, which is used to identify locations of data loss.
The counter is shown in Figure 10 (left) while the change in counter is in Figure 10 (right). A
zoomed in segment of this data is shown in Figure 11 in order to provide an example of a typical
data loss. Using the method described in Section II B, the microprocessor data can be
reconstructed with the proper time scale. Note that the data “stretching” is applied to all of the
channels in the microprocessor data, not just the counter. See Example Code 1 in the Appendix
for more information about how to perform time alignment using a counter.
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
10
0 1 2 3 4 5 6
x 10
4
0
1
2
3
4
5
6
x 10
4
Sample
Counter
0 1 2 3 4 5 6
x 10
4
0.5
1
1.5
2
2.5
3
3.5
Sample
∆Counter
Figure 10. Microprocessor Counter (left) and Change in Counter (right)
1.612 1.6122 1.6124 1.6126 1.6128 1.613 1.6132 1.6134
x 10
4
1.617
1.6175
1.618
1.6185
1.619
x 10
4
Sample
Counter
1.612 1.6122 1.6124 1.6126 1.6128 1.613 1.6132 1.6134
x 10
4
0.8
1
1.2
1.4
1.6
1.8
2
2.2
Sample
∆Counter
Figure 11. Example of Microprocessor Data Loss
Since this data set contains measurements from two different microprocessors, each needs to
be individually aligned in time. Then, these two measurement systems must be aligned with one
another. For this application, each measurement system contains an IMU, which measures
equivalent values on each system. Therefore, the time alignment between these two measurement
systems can be done using cross-correlations between common channels between the two
systems. An example of this time alignment is shown in Figure 12, where the cross-correlation
function is shown, while the aligned signals are shown in Figure 13 after shifting by the
maximum of the cross-correlation. See Example Code 2 in the Appendix for more information
about how to align different measurement systems using cross-correlations.
1500 1600 1700 1800 1900 2000 2100
-2
0
2
4
6
8
10
12
14
x 10
6
X: 1904
Y: 1.204e+007
Sample Lags
Cross-Correlation
Figure 12. Cross-Correlation between Redundant Measurements
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
11
2.4 2.402 2.404 2.406 2.408 2.41 2.412 2.414 2.416
x 10
4
-150
-100
-50
0
50
100
150
Sample
RollRate,p(deg/s)
IMU 1
IMU 2
Figure 13. Aligned Redundant Measurement Signals
Now, each individual measurement system has been aligned with a proper time scale, and the two
microprocessors are aligned. Next, the GPS needs to be aligned with the microprocessors. In
order to apply the fine time alignment technique of Section 2.3, a PPS signal was programmed on
a GPS receiver to trigger a digital high at the beginning of a second and a digital low at half of a
second. This digital signal was recorded by an Analog to Digital (A/D) converter on a Netburner
microprocessor and was stored with the other data channels. For the fine time alignment, an
artificial PPS signal is constructed for the GPS data based on the time recorded in each packet.
This artificial PPS signal is then compared with the measured PPS signal in the microprocessor
data stream. Figure 14 shows the unmatched PPS signals (left), and the PPS signals after final
alignment (right).
10 10.5 11 11.5 12 12.5 13 13.5 14 14.5 15
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Time (sec)
PPS
Netburner
GPS
10 10.5 11 11.5 12 12.5 13 13.5 14 14.5 15
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Time (sec)
PPS
Netburner
GPS
Figure 14. PPS Precision Time Alignment
Another problem that is important to consider is the possibility of spikes in the data. This is
particularly important for GPS data, which is prone to data spikes. To remove data spikes, an
appropriate threshold can be selected in order to limit the maximum change in the data between
time steps. Then large data spikes can be identified and eliminated using a zero-order hold, i.e.
when a spike occurs, just use the previous value again. An example of data spikes and their
removal is shown in Figure 15.
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
12
0 1 2 3 4 5 6
x 10
4
-250
-200
-150
-100
-50
0
50
100
150
200
250
Sample
GPSy-position(m)
Original
Filtered
Figure 15. Example Spike Removal
350 400 450 500 550 600 650
0
50
100
150
200
250
Time (sec)
Altitude(m)
Laser Rangefinder
GPS
Figure 16. Example Time Alignment Check
See Example Code 3 in the Appendix for more details about how to remove spikes. Once the
data has been cleaned of all spikes, and the signals have been aligned, it is useful to verify the
time alignment somehow. For this particular example, the GPS has measurements of the altitude
of the aircraft, while the microprocessor has measurements from a laser rangefinder which is
pointing directly downward from the aircraft. While these measurements are not of exactly the
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
13
same quantity, they are correlated in time, and therefore can be used to validate the accuracy of
the time alignment, as shown in Figure 16.
5. CONCLUSIONS
This article developed the use of different techniques for time alignment of experimental sensor
data. The presented approaches were based on practical experience obtained while working with
flight data from an experimental UAV. The techniques presented in this article were developed
in an instructive manner in order to provide a practical resource for working with multiple
measurement systems.
ACKNOWLEDGEMENTS
The author would like to thank Francis J. Barchesky, Dr. Haiyang Chao, Dr. Jason N. Gross, Dr.
Yu Gu, Dr. Srikanth Gururajan, and Dr. Jeffrey Vipperman for their help in deriving this work.
REFERENCES
[1] Rogova, G. L., and Nimier, V., “Reliability in Information Fusion: Literature Survey,” Proc. 7th Int.
Conf. Inf. Fusion, Stockholm, Sweden, 2004, pp. 1158-1165.
[2] Grewal, M. S., Weill, L. R and Andrew, A.P., Global Positioning, Inertial Navigation & Integration,
2nd. Ed., John Wiley & Sons, New York, NY, 2007.
[3] Kwakkel, S. P., “Human Lower Limb Kinematics Using GPS/INS,” M.S. Thesis, University of
Calgary, 2009.
[4] Li, Y., Mumford, P., Wang, J., Rizos, C., and Ding, W., “Time Synchronisation Analysis of an FPGA
based GPS/INS Integrated System,” International Global Navigation Satellite Systems Society IGNSS
Symposium, Surfers Paradise, Australia, July 2006.
[5] Gross, J., Gu, Y., Rhudy, M., Gururajan, S., and Napolitano, M., “Flight test evaluation of GPS/INS
sensor fusion algorithms for attitude estimation,” IEEE Trans. on Aerospace Electronic Systems, Vol.
48, No. 3, July 2012, pp. 2128-2139.
[6] Sivrikaya, F., and Yener, Bülent, “Time Synchronization in Sensor Networks: A Survey,” IEEE
Network, Vol. 18, 2004, pp. 45-50.
[7] Elson, J. E., “Time Synchronization in Wireless Sensor Networks,” Ph.D. Dissertation, University of
California, 2003.
[8] Sichitiu, M. H., and Veerarittiphan, C., “Simple, Accurate Time Synchronization for Wireless Sensor
Networks,” Proc. IEEE Wireless Communications and Networking Conference, 2003, pp. 1266–1273.
[9] Rhudy, M., Bucci, B., Vipperman, J., Allanach, J., and Abraham, B., “Microphone Array Analysis
Methods Using Cross-Correlations.” IMECE2009-10798, Proceedings of IMECE 09: 2009 ASME
International Mechanical Engineering Congress, November 13-19, 2009, Lake Buena Vista, Florida.
[10] Mandal, T., Gu, Y., Chao, H., and Rhudy, M, “Flight Data Analysis of Pilot-Induced-Oscillations of a
Remotely Piloted Aircraft,” AIAA Guidance Navigation and Control Conference, Boston, MA, 2013.
[11] Haffner, P., Franzini, M., and Waibel, A., “Integrating Time Alignment and Neural Networks for
High Performance Continuous Speech Recognition,” Proc. IEEE International Conference of
Acoustics, Speech, and Signal Processing, Toronto, Ontario, Canada, April 1991, pp. 105-109.
[12] Shimodaira, H., Noma, K-I., Nakai, M., and Sagayama, S., “Dynamic time-alignment kernel is
support vector machine,” Advances in Neural Information Processing Systems 14, Vol. 2, Cambridge,
MA: MIT Press, 2002, pp. 921-928.
[13] Cao, H., Tehrani, A. S., Nemati, H. M., Fager, C., Eriksson, T., Zirath, H., “Time Alignment in a
Dynamic Load Modulation Transmitter Architecture,” Proc. of the 39th European Microwave
Conference, Rome, Italy, 2009, pp. 1211-1214.
[14] Rhudy, M., “Real Time Implementation of a Military Impulse Noise Classifier”, M.S. Thesis,
University of Pittsburgh, 2009.
[15] Norton, M., and Carczub, D., Fundamentals of Noise and Vibration Analysis for Engineers,
Cambridge University Press, New York, NY, 2nd Ed., 2003.
International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014
14
[16] Rao, S. S., Mechanical Vibrations, Pearson Education, Inc., Upper Saddle River, NJ, 4th Ed., 2004.
[17] Bendat, J., and Piersol, A., Random Data: Analysis and Measurement Procedures, John Wiley and
Sons, Inc., New York, NY, 2nd Ed., 1986.
APPENDIX
Example Code 1: Time Alignment with Counter
Example Code 2: Alignment of Signals using Correlations
Example Code 3: Spike Removal Function
Authors
Matthew B. Rhudy received a Bachelor's of Science in mechanical engineering in
2008 from The Pennsylvania State University, State College, PA, a Master's of
Science in mechanical engineering in 2009 from the University of Pittsburgh,
Pittsburgh, PA, and a Ph.D in aerospace engineering in 2013 from West Virginia
University, Morgantown, WV.
Since 2013, he has been a Visiting Assistant Professor in the Department of
Mechanical Engineering at Lafayette College in Easton, PA.

Contenu connexe

Tendances

HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...
HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...
HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...cscpconf
 
Computational Method to Solve the Partial Differential Equations (PDEs)
Computational Method to Solve the Partial Differential  Equations (PDEs)Computational Method to Solve the Partial Differential  Equations (PDEs)
Computational Method to Solve the Partial Differential Equations (PDEs)Dr. Khurram Mehboob
 
Firefly Algorithm: Recent Advances and Applications
Firefly Algorithm: Recent Advances and ApplicationsFirefly Algorithm: Recent Advances and Applications
Firefly Algorithm: Recent Advances and ApplicationsXin-She Yang
 
2.time domain analysis of lti systems
2.time domain analysis of lti systems2.time domain analysis of lti systems
2.time domain analysis of lti systemsINDIAN NAVY
 
A Novel Algorithm to Estimate Closely Spaced Source DOA
A Novel Algorithm to Estimate Closely Spaced Source DOA  A Novel Algorithm to Estimate Closely Spaced Source DOA
A Novel Algorithm to Estimate Closely Spaced Source DOA IJECEIAES
 
Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]
Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]
Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]AI Robotics KR
 
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...sipij
 
Vidyalankar final-essentials of communication systems
Vidyalankar final-essentials of communication systemsVidyalankar final-essentials of communication systems
Vidyalankar final-essentials of communication systemsanilkurhekar
 
Presentacion limac-unc
Presentacion limac-uncPresentacion limac-unc
Presentacion limac-uncPucheta Julian
 
Discrete Signal Processing
Discrete Signal ProcessingDiscrete Signal Processing
Discrete Signal Processingmargretrosy
 
Physics Research Summer2009
Physics Research Summer2009Physics Research Summer2009
Physics Research Summer2009Ryan Melvin
 
Training the neural network using levenberg marquardt’s algorithm to optimize
Training the neural network using levenberg marquardt’s algorithm to optimizeTraining the neural network using levenberg marquardt’s algorithm to optimize
Training the neural network using levenberg marquardt’s algorithm to optimizeIAEME Publication
 
Finite DIfference Methods Mathematica
Finite DIfference Methods MathematicaFinite DIfference Methods Mathematica
Finite DIfference Methods Mathematicaguest56708a
 
Accelerating Dynamic Time Warping Subsequence Search with GPU
Accelerating Dynamic Time Warping Subsequence Search with GPUAccelerating Dynamic Time Warping Subsequence Search with GPU
Accelerating Dynamic Time Warping Subsequence Search with GPUDavide Nardone
 
The Chaos and Stability of Firefly Algorithm Adjacent Individual
The Chaos and Stability of Firefly Algorithm Adjacent IndividualThe Chaos and Stability of Firefly Algorithm Adjacent Individual
The Chaos and Stability of Firefly Algorithm Adjacent IndividualTELKOMNIKA JOURNAL
 
Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]
Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]
Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]AI Robotics KR
 

Tendances (20)

HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...
HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...
HEATED WIND PARTICLE’S BEHAVIOURAL STUDY BY THE CONTINUOUS WAVELET TRANSFORM ...
 
Computational Method to Solve the Partial Differential Equations (PDEs)
Computational Method to Solve the Partial Differential  Equations (PDEs)Computational Method to Solve the Partial Differential  Equations (PDEs)
Computational Method to Solve the Partial Differential Equations (PDEs)
 
Firefly Algorithm: Recent Advances and Applications
Firefly Algorithm: Recent Advances and ApplicationsFirefly Algorithm: Recent Advances and Applications
Firefly Algorithm: Recent Advances and Applications
 
1308.3898
1308.38981308.3898
1308.3898
 
2.time domain analysis of lti systems
2.time domain analysis of lti systems2.time domain analysis of lti systems
2.time domain analysis of lti systems
 
A Novel Algorithm to Estimate Closely Spaced Source DOA
A Novel Algorithm to Estimate Closely Spaced Source DOA  A Novel Algorithm to Estimate Closely Spaced Source DOA
A Novel Algorithm to Estimate Closely Spaced Source DOA
 
Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]
Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]
Sensor Fusion Study - Ch3. Least Square Estimation [강소라, Stella, Hayden]
 
DSP 08 _ Sheet Eight
DSP 08 _ Sheet EightDSP 08 _ Sheet Eight
DSP 08 _ Sheet Eight
 
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
 
Impulse Response ppt
Impulse Response pptImpulse Response ppt
Impulse Response ppt
 
Vidyalankar final-essentials of communication systems
Vidyalankar final-essentials of communication systemsVidyalankar final-essentials of communication systems
Vidyalankar final-essentials of communication systems
 
Presentacion limac-unc
Presentacion limac-uncPresentacion limac-unc
Presentacion limac-unc
 
MPC
MPCMPC
MPC
 
Discrete Signal Processing
Discrete Signal ProcessingDiscrete Signal Processing
Discrete Signal Processing
 
Physics Research Summer2009
Physics Research Summer2009Physics Research Summer2009
Physics Research Summer2009
 
Training the neural network using levenberg marquardt’s algorithm to optimize
Training the neural network using levenberg marquardt’s algorithm to optimizeTraining the neural network using levenberg marquardt’s algorithm to optimize
Training the neural network using levenberg marquardt’s algorithm to optimize
 
Finite DIfference Methods Mathematica
Finite DIfference Methods MathematicaFinite DIfference Methods Mathematica
Finite DIfference Methods Mathematica
 
Accelerating Dynamic Time Warping Subsequence Search with GPU
Accelerating Dynamic Time Warping Subsequence Search with GPUAccelerating Dynamic Time Warping Subsequence Search with GPU
Accelerating Dynamic Time Warping Subsequence Search with GPU
 
The Chaos and Stability of Firefly Algorithm Adjacent Individual
The Chaos and Stability of Firefly Algorithm Adjacent IndividualThe Chaos and Stability of Firefly Algorithm Adjacent Individual
The Chaos and Stability of Firefly Algorithm Adjacent Individual
 
Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]
Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]
Sensor Fusion Study - Ch8. The Continuous-Time Kalman Filter [이해구]
 

En vedette

STUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOT
STUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOTSTUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOT
STUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOTIJCSES Journal
 
PERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNEL
PERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNELPERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNEL
PERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNELIJCSES Journal
 
Sept 2014 cloud security presentation
Sept 2014   cloud security presentationSept 2014   cloud security presentation
Sept 2014 cloud security presentationJoan Dembowski
 
PENSE QUE ME MORIA
PENSE QUE ME MORIA PENSE QUE ME MORIA
PENSE QUE ME MORIA David Rivero
 
Semantic web service discovery approaches
Semantic web service discovery approachesSemantic web service discovery approaches
Semantic web service discovery approachesIJCSES Journal
 
A vague improved markov model approach for web page prediction
A vague improved markov model approach for web page predictionA vague improved markov model approach for web page prediction
A vague improved markov model approach for web page predictionIJCSES Journal
 
Pcf investigation to improve the
Pcf investigation to improve thePcf investigation to improve the
Pcf investigation to improve theIJCSES Journal
 
発声練習用スライド
発声練習用スライド発声練習用スライド
発声練習用スライドaika_a
 
STUDY OF VARIOUS INTERNET OF THINGS PLATFORMS
STUDY OF VARIOUS INTERNET OF THINGS PLATFORMSSTUDY OF VARIOUS INTERNET OF THINGS PLATFORMS
STUDY OF VARIOUS INTERNET OF THINGS PLATFORMSIJCSES Journal
 
Jpeg image compression using discrete cosine transform a survey
Jpeg image compression using discrete cosine transform   a surveyJpeg image compression using discrete cosine transform   a survey
Jpeg image compression using discrete cosine transform a surveyIJCSES Journal
 
ADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSA
ADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSAADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSA
ADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSAIJCSES Journal
 
FZahir Technology Final
FZahir Technology FinalFZahir Technology Final
FZahir Technology Finalfareehazahir23
 
Introduction to Quality Improvement
Introduction to Quality ImprovementIntroduction to Quality Improvement
Introduction to Quality ImprovementJoan Dembowski
 

En vedette (18)

STUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOT
STUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOTSTUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOT
STUDY ON THE PATH TRACKING AND POSITIONING METHOD OF WHEELED MOBILE ROBOT
 
Community fresh organics 3
Community fresh organics 3Community fresh organics 3
Community fresh organics 3
 
PERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNEL
PERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNELPERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNEL
PERFORMANCE EVALUATION OF MC-CDMA SYSTEM OVER RAYLEIGH FADING CHANNEL
 
Sept 2014 cloud security presentation
Sept 2014   cloud security presentationSept 2014   cloud security presentation
Sept 2014 cloud security presentation
 
PENSE QUE ME MORIA
PENSE QUE ME MORIA PENSE QUE ME MORIA
PENSE QUE ME MORIA
 
Tf2 helloween
Tf2 helloweenTf2 helloween
Tf2 helloween
 
Sav efinal
Sav efinalSav efinal
Sav efinal
 
Semantic web service discovery approaches
Semantic web service discovery approachesSemantic web service discovery approaches
Semantic web service discovery approaches
 
A vague improved markov model approach for web page prediction
A vague improved markov model approach for web page predictionA vague improved markov model approach for web page prediction
A vague improved markov model approach for web page prediction
 
Pcf investigation to improve the
Pcf investigation to improve thePcf investigation to improve the
Pcf investigation to improve the
 
Feedback that works
Feedback that worksFeedback that works
Feedback that works
 
発声練習用スライド
発声練習用スライド発声練習用スライド
発声練習用スライド
 
STUDY OF VARIOUS INTERNET OF THINGS PLATFORMS
STUDY OF VARIOUS INTERNET OF THINGS PLATFORMSSTUDY OF VARIOUS INTERNET OF THINGS PLATFORMS
STUDY OF VARIOUS INTERNET OF THINGS PLATFORMS
 
Jpeg image compression using discrete cosine transform a survey
Jpeg image compression using discrete cosine transform   a surveyJpeg image compression using discrete cosine transform   a survey
Jpeg image compression using discrete cosine transform a survey
 
ADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSA
ADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSAADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSA
ADVANCES IN HIGHER EDUCATIONAL RESOURCE SHARING AND CLOUD SERVICES FOR KSA
 
FZahir Technology Final
FZahir Technology FinalFZahir Technology Final
FZahir Technology Final
 
Introduction to Quality Improvement
Introduction to Quality ImprovementIntroduction to Quality Improvement
Introduction to Quality Improvement
 
Examen resuelto
Examen resueltoExamen resuelto
Examen resuelto
 

Similaire à Time alignment techniques for experimental sensor data

Adaptive blind multiuser detection under impulsive noise using principal comp...
Adaptive blind multiuser detection under impulsive noise using principal comp...Adaptive blind multiuser detection under impulsive noise using principal comp...
Adaptive blind multiuser detection under impulsive noise using principal comp...csandit
 
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...csandit
 
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...cscpconf
 
Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...
Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...
Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...BRNSS Publication Hub
 
GEOframe-NewAge: documentation for probabilitiesbackward component
GEOframe-NewAge: documentation for probabilitiesbackward componentGEOframe-NewAge: documentation for probabilitiesbackward component
GEOframe-NewAge: documentation for probabilitiesbackward componentMarialaura Bancheri
 
Joint Timing and Frequency Synchronization in OFDM
Joint Timing and Frequency Synchronization in OFDMJoint Timing and Frequency Synchronization in OFDM
Joint Timing and Frequency Synchronization in OFDMidescitation
 
Anomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language ModelsAnomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language ModelsCynthia Freeman
 
JGrass-NewAge probabilities backward component
JGrass-NewAge probabilities backward component JGrass-NewAge probabilities backward component
JGrass-NewAge probabilities backward component Marialaura Bancheri
 
Clock Skew Compensation Algorithm Immune to Floating-Point Precision Loss
Clock Skew Compensation Algorithm Immune to Floating-Point Precision LossClock Skew Compensation Algorithm Immune to Floating-Point Precision Loss
Clock Skew Compensation Algorithm Immune to Floating-Point Precision LossXi'an Jiaotong-Liverpool University
 
17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)IAESIJEECS
 
17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)IAESIJEECS
 
Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...
Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...
Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...Piero Belforte
 
Design of optimized Interval Arithmetic Multiplier
Design of optimized Interval Arithmetic MultiplierDesign of optimized Interval Arithmetic Multiplier
Design of optimized Interval Arithmetic MultiplierVLSICS Design
 
EBDSS Max Research Report - Final
EBDSS  Max  Research Report - FinalEBDSS  Max  Research Report - Final
EBDSS Max Research Report - FinalMax Robertson
 
Mathematical support for preventive maintenance periodicity optimization of r...
Mathematical support for preventive maintenance periodicity optimization of r...Mathematical support for preventive maintenance periodicity optimization of r...
Mathematical support for preventive maintenance periodicity optimization of r...Alexander Lyubchenko
 
Exact network reconstruction from consensus signals and one eigen value
Exact network reconstruction from consensus signals and one eigen valueExact network reconstruction from consensus signals and one eigen value
Exact network reconstruction from consensus signals and one eigen valueIJCNCJournal
 

Similaire à Time alignment techniques for experimental sensor data (20)

04_AJMS_288_20.pdf
04_AJMS_288_20.pdf04_AJMS_288_20.pdf
04_AJMS_288_20.pdf
 
Adaptive blind multiuser detection under impulsive noise using principal comp...
Adaptive blind multiuser detection under impulsive noise using principal comp...Adaptive blind multiuser detection under impulsive noise using principal comp...
Adaptive blind multiuser detection under impulsive noise using principal comp...
 
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
 
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
ADAPTIVE BLIND MULTIUSER DETECTION UNDER IMPULSIVE NOISE USING PRINCIPAL COMP...
 
Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...
Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...
Investigation of Parameter Behaviors in Stationarity of Autoregressive and Mo...
 
GEOframe-NewAge: documentation for probabilitiesbackward component
GEOframe-NewAge: documentation for probabilitiesbackward componentGEOframe-NewAge: documentation for probabilitiesbackward component
GEOframe-NewAge: documentation for probabilitiesbackward component
 
Joint Timing and Frequency Synchronization in OFDM
Joint Timing and Frequency Synchronization in OFDMJoint Timing and Frequency Synchronization in OFDM
Joint Timing and Frequency Synchronization in OFDM
 
Anomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language ModelsAnomaly Detection in Sequences of Short Text Using Iterative Language Models
Anomaly Detection in Sequences of Short Text Using Iterative Language Models
 
JGrass-NewAge probabilities backward component
JGrass-NewAge probabilities backward component JGrass-NewAge probabilities backward component
JGrass-NewAge probabilities backward component
 
multiscale_tutorial.pdf
multiscale_tutorial.pdfmultiscale_tutorial.pdf
multiscale_tutorial.pdf
 
Clock Skew Compensation Algorithm Immune to Floating-Point Precision Loss
Clock Skew Compensation Algorithm Immune to Floating-Point Precision LossClock Skew Compensation Algorithm Immune to Floating-Point Precision Loss
Clock Skew Compensation Algorithm Immune to Floating-Point Precision Loss
 
17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)
 
17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)17 16512 32451-1-sm (edit ari)
17 16512 32451-1-sm (edit ari)
 
Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...
Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...
Frequency domain behavior of S-parameters piecewise-linear fitting in a digit...
 
V01 i010401
V01 i010401V01 i010401
V01 i010401
 
50120130405032
5012013040503250120130405032
50120130405032
 
Design of optimized Interval Arithmetic Multiplier
Design of optimized Interval Arithmetic MultiplierDesign of optimized Interval Arithmetic Multiplier
Design of optimized Interval Arithmetic Multiplier
 
EBDSS Max Research Report - Final
EBDSS  Max  Research Report - FinalEBDSS  Max  Research Report - Final
EBDSS Max Research Report - Final
 
Mathematical support for preventive maintenance periodicity optimization of r...
Mathematical support for preventive maintenance periodicity optimization of r...Mathematical support for preventive maintenance periodicity optimization of r...
Mathematical support for preventive maintenance periodicity optimization of r...
 
Exact network reconstruction from consensus signals and one eigen value
Exact network reconstruction from consensus signals and one eigen valueExact network reconstruction from consensus signals and one eigen value
Exact network reconstruction from consensus signals and one eigen value
 

Dernier

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 

Dernier (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 

Time alignment techniques for experimental sensor data

  • 1. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 DOI : 10.5121/ijcses.2014.5201 1 Time Alignment Techniques for Experimental Sensor Data Matthew Rhudy Lafayette College, Easton, PA, 18042, USA ABSTRACT Experimental data is subject to data loss, which presents a challenge for representing the data with a proper time scale. Additionally, data from separate measurement systems need to be aligned in order to use the data cooperatively. Due to the need for accurate time alignment, various practical techniques are presented along with an illustrative example detailing each step of the time alignment procedure for actual experimental data from an Unmanned Aerial Vehicle (UAV). Some example MATLAB code is also provided. KEYWORDS Data Processing, Delay Systems, Time Series Analysis, Timing. 1. INTRODUCTION It is important for experimental data to be properly aligned in time in order to conduct accurate post-processing analysis. Measurement systems are subject to data loss with time, which causes gaps in the data which need to be properly located and filled in order to maintain the appropriate time scale. It is also important to identify delays between different measurement systems in order to align each data set properly, so that the data from each individual system can be combined and used together for analysis. This is especially important for information fusion applications, which thrive on having as many sources of information as possible [1]. For example, the alignment of measurements from Global Positioning System (GPS) and Inertial Navigation System (INS) [2] is necessary for applications such as human lower limb kinematics [3], positioning [4], and attitude estimation [5]. Distributed systems such as sensor networks also require accurate time synchronization [6,7,8]. Time alignment techniques are also useful for determining delays in a system, which can be an important consideration for certain problems, such as acoustic wave propagation [9] and human pilot modeling [10]. This work addresses a few techniques which are useful for time alignment, and aims to serve as an instructive guide for using these techniques. Note that this work is intended only to provide some information about a few time alignment techniques. Other more complex time alignment methods can be found e.g. in [11,12,13]. The rest of this paper is organized as follows. The time alignment techniques are presented in Section 2. In Section 3 the experimental platform is discussed, followed by a time alignment example in Section 4. Section 5 provides a brief conclusion. Some example code using MATLAB is provided in the Appendix.
  • 2. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 2 2. TIME ALIGNMENT TECHNIQUES 2.1. Alignment of Two Signals using Correlation Functions The pure time delay between two measurement signals can be captured using correlation functions. These functions include the auto-correlation function Rxx(τ) and the cross-correlation function Rxy(τ), of two signals x(t) and y(t), given by 0 1 ( ) ( ) ( ) T xxR x t x t dt T  = +∫ (1) 0 1 ( ) ( ) ( ) T xyR x t y t dt T  = +∫ (2) Note that the auto-correlation function is just the cross-correlation function of a given signal with itself. Note also that ( ) ( ),xy yxR R = − and the auto-correlation function is always an even function. The auto-correlation function represents time properties in the data that are separated by fixed time delays. For example, consider the auto-correlation function for a signal ( ) sin( )x t t= of length T, where n is an integer. For this example, the auto-correlation function is given by 0 1 ( ) sin( )sin( ) T xxR t t dt T  = +∫ (3) Using the trigonometric identity [ ] 1 sin( )sin( ) cos( ) cos( ) 2 u v u v u v= − − + (4) and performing the integration, the auto-correlation function becomes [ ] 1 1 ( ) cos( ) sin( ) sin( 2 ) 2 4 xxR T T    = + − + (5) If the length of the signal T is a multiple of the period of the signal, i.e., T = 2πn, where n is an integer, then the equation reduces to 1 ( ) cos( ) 2 xxR  = (6) Therefore, the auto-correlation function of a sine wave has peaks at any time shift of 2πn, where n is an integer. This corresponds to the signal aligning with itself due to its natural periodicity. An illustration of this result is given in Figure 1. The auto-correlation functions for non-periodic signals such as random noise or impulse noise are much different than that of periodic signals. Consider, for example, data sampled from a standard normal distribution, i.e., Gaussian random noise with zero mean and standard deviation one. The auto-correlation for this signal should only align with itself when there is no time shift (τ = 0). When τ is nonzero, the randomness of the signal forces the value of Rxx(τ) to approximately zero, as shown in Figure 2. Another interesting type of signal to consider is an impulsive signal. The auto-correlation for a signal of this type will have some peaks around τ = 0 due to the alignment of the absolute maximum with the subsequent local maxima and minima. To help illustrate this, Figure 3 shows an example military impulse wave [14]. The cross-correlation function between two signals
  • 3. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 3 represents their similarity based on a time shift, τ. This can be useful for various applications, including detection of time delays, noise source identification, and radar and sonar applications [15]. In general, unlike the auto-correlation function, the cross-correlation function will not be an even function. In fact, one useful feature of this function is measuring the value of τ where the function is at its absolute maximum. This value represents a time delay between the two signals. To help illustrate this concept, using the previous impulse signal from Figure 3, another signal was created by delaying the original signal by 0.1 seconds. Figure 4 shows the original and delayed signals together, as well as their cross-correlation function. The absolute maximum of the cross-correlation function occurs at a value τ = -0.1 s, which agrees with the time delay between the signals. Here the minus sign indicates that there is a lag in time as opposed to a positive sign which would represent a lead in time. Notice that the cross-correlation function for this example is the same as the auto-correlation function in Figure 3 except for the shift in time. 0 10 20 30 40 50 60 -1 -0.5 0 0.5 1 t sin(t) Plot of Signal and Auto-Correlation for Sine Wave -60 -40 -20 0 20 40 60 -1 -0.5 0 0.5 1 τ Auto-Correlation Figure 1. Plot of Signal and Auto-Correlation for Sine Wave
  • 4. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 4 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 -4 -2 0 2 4 t RandomSignal Signal and Auto-Correlation for Standard Normal Random Noise -5000 -4000 -3000 -2000 -1000 0 1000 2000 3000 4000 5000 -2000 0 2000 4000 6000 τ Auto-Correlation Figure 2. Plot of Signal and Auto-Correlation for Random Noise 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 -500 0 500 1000 t ImpulseSignal Signal and Auto-Correlation for Impulse Signal -0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5 -2 0 2 4 6 x 10 7 τ Auto-Correlation Figure 3. Example Military Impulse Wave Signal with Auto-Correlation
  • 5. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 5 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 -500 0 500 1000 t ImpulseSignal Signal and Cross-Correlation for Impulse Signals Original Delayed -0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5 -2 0 2 4 6 x 10 7 τ Cross-Correlation Figure 4. Plot of Original and Delayed Signals with and Cross-Correlation The calculation of the auto-correlation and cross-correlation functions can be visualized by a shifting in time of one signal with respect to one another, while multiplying their corresponding values. This process is similar to that of a convolution integral of two functions x(t) and h(t), given by [16] 0 ( ) ( ) ( )y x t h t dt   = −∫ (7) The primary difference between a convolution integral and a cross-correlation is the negative sign in the convolution integral, which in effect is a reflection of one of the signals about t = 0 before time shifting. When dealing with discrete or digital data, the auto-correlation and cross-correlation functions cannot be calculated exactly. In this case, the auto-correlation and cross-correlation functions can be approximated by [17] 1 1ˆ ( ) N r xx n n r n R r t x x N r − + = ∆ = − ∑ (8) 1 1ˆ ( ) N r xy n n r n R r t x y N r − + = ∆ = − ∑ (9) where r = 0, 1, 2, …, m, with m < N. Here, r represents the lag number, and Δt is the time step, which is the inverse of the sampling frequency in Hz. The ^ symbol above the R denotes an approximation. Note that these calculations can also be done using the xcorr command in MATLAB. Another quantity of interest is the cross-correlation coefficient function ρxy(τ), given by
  • 6. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 6 ( ) ( ) (0) (0) xy xy xx yy R R R    = (1) which can be approximated by ˆ ( ) ˆ ( ) ˆ ˆ(0) (0) xy xy xx yy R r t r t R R  ∆ ∆ = (2) This quantity always satisfies -1 ≤ ρxy(τ) ≤ 1 [17]. Since the cross-correlation coefficient is a normalized quantity, it is ideal for use in comparing different waveforms. This value is a measurement of the agreement between the two signals as a function of the time delay. For time alignment, this value can be used to gauge how well the signals are aligned, with 1 indicating perfect positive correlation, -1 indicating perfect negative correlation (same signal, but reflected about the x-axis), and 0 indicating no correlation. 2.2. Aligning a Signal with the Proper Time Scale A problem that can occur with real measurement systems is the loss of information with time. I.e., the data recording system might miss a packet (or more) of information, either due to delays in the system or processing constraints. Typically in this situation, the measurement system simply skips the missed packet and logs the next data point instead. For example, if a data stream is supposed to be (1, 2, 3, 4, 5, …), and the 3rd packet is skipped, the data will be logged as (1, 2, 4, 5, …). As this occurs over time, the data loss accumulates and therefore compresses the data along the time scale. To restore the true time vector, an accurate time reference is needed. Because of this, it is useful to obtain some information about the timing of the data in each packet of information, such as from a counter on a microprocessor or an independent timing source, e.g. in GPS data, the GPS time is encoded in each data packet. Using this independent timing source, the locations of skipped data packets can be identified. These locations can be found easily by taking the difference in successive time steps of the counter. Consider the following example of a counter which skips packet 3 and packet 10. Figure 5 shows the true ideal counter (blue) and the recorded counter from the measurement system (red). Taking the difference between successive time steps gives Figure 6, which shows that 2 steps occurred in the counter instead of 1 at time steps 2 and 8. Note that it is time step 2, because data packet three was skipped, therefore at step 2 it skipped 3 and went to 4. For time step 8, it is off by an additional time step because of the previous data loss at time step 2. These points can be used to identify the jumps in the data. Then, the data stream can be “stretched” out in time by the number of data losses, and then these gaps can be filled in using interpolation.
  • 7. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 7 0 5 10 15 0 5 10 15 Time Step Counter Ideal Recorded Figure 5. Data Packet Loss Example: Ideal and Recorded Counter Signals 0 2 4 6 8 10 12 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 Time Step ∆Counter Figure 6. Data Packet Loss Example: Difference between Time Steps 2.3. Precision Time Alignment using Pulse Per Second (PPS) Signals When aligning signals from two different data streams, a precision time alignment method can be used to align these measurements using a Pulse Per Second (PPS) signal. First a coarse time alignment method should be applied to align the signals within one second of accuracy. Then, a fine alignment can be performed using a PPS signal, which is an electrical signal that precisely indicates the start of a second. This signal takes the shape of a square wave, with period of 1 second. A PPS signal should be generated within the first data system and sent to the other data system for logging. Then this gives two sources of the same information, which can then be
  • 8. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 8 aligned in order to obtain precisely aligned measurements. Any phase shift between the two signals is eliminated by shifting one of the signals until a perfect time alignment is achieved. For this time alignment, the cross-correlation technique can be used. 3. EXPERIMENTAL PLATFORM The flight data used for this study were collected with the Red Phastball aircraft which was designed, manufactured, and instrumented by researchers at the Flight Control Systems Laboratory (FCSL) at West Virginia University (WVU). The avionic payload includes a custom designed printed circuit board (PCB) featuring four Analog Devices® Inertial Measurement Units (IMUs) and a Novatel OEM-V1 GPS receiver, as shown in Figure7. MicroSD Data Recorders MOD5213-Microprocessor 1 IMU 1 (ADIS16405) IMU 2 (ADIS16405) IMU 3 (ADIS16405) IMU 4 (ADIS16355) MOD5213-Microprocessor 2 Figure 7. WVU Phastball Aircraft and Avionics The PCB shown in Figure 7 records measurements using two MicroSD data loggers which are interfaced with the various measurement systems using two MOD-5213 microprocessors. The GPS data is recorded on a third MicroSD data logger. Of the four IMUs implemented in this system, three are ADIS16405, and one is an ADIS16355. Although each IMU has an actual resolution of 14-bit, the resolution is improved by oversampling the signals at 200 Hz, then averaging down to 50 Hz, thus achieving 16-bit resolution. A Pulse Per Second (PPS) signal from the GPS receiver is recorded with the IMU data using an Analog to Digital (A/D) port on the MOD-5213 microprocessor. This PPS signal is utilized for precision time alignment between the IMU and GPS data. The GPS receiver uses satellite information to calculate Cartesian position and velocity. In addition to IMU and GPS data, a high-quality Goodrich® mechanical vertical gyroscope was used to obtain direct measurements of the roll and pitch of the aircraft, which are used as ‘truth’ measurements for this study. These measurements are recorded using a 3.3 V A/D at 16-bit resolution. All data were recorded at 50 Hz.
  • 9. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 9 4. TIME ALIGNMENT RESULTS USING EXPERIMENTAL SENSOR DATA This section goes through an example time alignment procedure using a data set collected with the measurement system described in Section 3. The first step in the time alignment procedure is to align each data stream individually with the proper time scale. First, the GPS data is considered. The GPS time is logged with each GPS packet, and is shown in Figure 8 (left). The difference in successive time steps is shown in Figure 8 (right), which shows were data loss occurred, and how much time was lost. A zoomed in segment of this data is shown in Figure 9 Figurein order to provide an example of a typical data loss. Using the method described in Section 2.2, the GPS data can be reconstructed with the proper time scale. Note that the data “stretching” is applied to all of the channels in the GPS data, not just the GPS time. 0 100 200 300 400 500 600 700 800 900 1000 1200 1400 1600 1800 2000 2200 2400 Secondssince13:00 Time (sec) 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 x 10 4 0 0.02 0.04 0.06 0.08 0.1 Sample ∆GPSTime(sec) Figure 8. GPS Time (left) and Change in Time (right) 42 42.5 43 43.5 44 1368 1369 1370 1371 1372 1373 Secondssince13:00 Time (sec) 2100 2120 2140 2160 2180 2200 0 0.2 0.4 0.6 0.8 1 Sample ∆GPSTime(sec) Figure 9. Example of GPS Data Loss Similarly as for the GPS, the microprocessor data is subject to packet loss with time. The microprocessor logs a counter at each time step, which is used to identify locations of data loss. The counter is shown in Figure 10 (left) while the change in counter is in Figure 10 (right). A zoomed in segment of this data is shown in Figure 11 in order to provide an example of a typical data loss. Using the method described in Section II B, the microprocessor data can be reconstructed with the proper time scale. Note that the data “stretching” is applied to all of the channels in the microprocessor data, not just the counter. See Example Code 1 in the Appendix for more information about how to perform time alignment using a counter.
  • 10. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 10 0 1 2 3 4 5 6 x 10 4 0 1 2 3 4 5 6 x 10 4 Sample Counter 0 1 2 3 4 5 6 x 10 4 0.5 1 1.5 2 2.5 3 3.5 Sample ∆Counter Figure 10. Microprocessor Counter (left) and Change in Counter (right) 1.612 1.6122 1.6124 1.6126 1.6128 1.613 1.6132 1.6134 x 10 4 1.617 1.6175 1.618 1.6185 1.619 x 10 4 Sample Counter 1.612 1.6122 1.6124 1.6126 1.6128 1.613 1.6132 1.6134 x 10 4 0.8 1 1.2 1.4 1.6 1.8 2 2.2 Sample ∆Counter Figure 11. Example of Microprocessor Data Loss Since this data set contains measurements from two different microprocessors, each needs to be individually aligned in time. Then, these two measurement systems must be aligned with one another. For this application, each measurement system contains an IMU, which measures equivalent values on each system. Therefore, the time alignment between these two measurement systems can be done using cross-correlations between common channels between the two systems. An example of this time alignment is shown in Figure 12, where the cross-correlation function is shown, while the aligned signals are shown in Figure 13 after shifting by the maximum of the cross-correlation. See Example Code 2 in the Appendix for more information about how to align different measurement systems using cross-correlations. 1500 1600 1700 1800 1900 2000 2100 -2 0 2 4 6 8 10 12 14 x 10 6 X: 1904 Y: 1.204e+007 Sample Lags Cross-Correlation Figure 12. Cross-Correlation between Redundant Measurements
  • 11. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 11 2.4 2.402 2.404 2.406 2.408 2.41 2.412 2.414 2.416 x 10 4 -150 -100 -50 0 50 100 150 Sample RollRate,p(deg/s) IMU 1 IMU 2 Figure 13. Aligned Redundant Measurement Signals Now, each individual measurement system has been aligned with a proper time scale, and the two microprocessors are aligned. Next, the GPS needs to be aligned with the microprocessors. In order to apply the fine time alignment technique of Section 2.3, a PPS signal was programmed on a GPS receiver to trigger a digital high at the beginning of a second and a digital low at half of a second. This digital signal was recorded by an Analog to Digital (A/D) converter on a Netburner microprocessor and was stored with the other data channels. For the fine time alignment, an artificial PPS signal is constructed for the GPS data based on the time recorded in each packet. This artificial PPS signal is then compared with the measured PPS signal in the microprocessor data stream. Figure 14 shows the unmatched PPS signals (left), and the PPS signals after final alignment (right). 10 10.5 11 11.5 12 12.5 13 13.5 14 14.5 15 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 Time (sec) PPS Netburner GPS 10 10.5 11 11.5 12 12.5 13 13.5 14 14.5 15 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 Time (sec) PPS Netburner GPS Figure 14. PPS Precision Time Alignment Another problem that is important to consider is the possibility of spikes in the data. This is particularly important for GPS data, which is prone to data spikes. To remove data spikes, an appropriate threshold can be selected in order to limit the maximum change in the data between time steps. Then large data spikes can be identified and eliminated using a zero-order hold, i.e. when a spike occurs, just use the previous value again. An example of data spikes and their removal is shown in Figure 15.
  • 12. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 12 0 1 2 3 4 5 6 x 10 4 -250 -200 -150 -100 -50 0 50 100 150 200 250 Sample GPSy-position(m) Original Filtered Figure 15. Example Spike Removal 350 400 450 500 550 600 650 0 50 100 150 200 250 Time (sec) Altitude(m) Laser Rangefinder GPS Figure 16. Example Time Alignment Check See Example Code 3 in the Appendix for more details about how to remove spikes. Once the data has been cleaned of all spikes, and the signals have been aligned, it is useful to verify the time alignment somehow. For this particular example, the GPS has measurements of the altitude of the aircraft, while the microprocessor has measurements from a laser rangefinder which is pointing directly downward from the aircraft. While these measurements are not of exactly the
  • 13. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 13 same quantity, they are correlated in time, and therefore can be used to validate the accuracy of the time alignment, as shown in Figure 16. 5. CONCLUSIONS This article developed the use of different techniques for time alignment of experimental sensor data. The presented approaches were based on practical experience obtained while working with flight data from an experimental UAV. The techniques presented in this article were developed in an instructive manner in order to provide a practical resource for working with multiple measurement systems. ACKNOWLEDGEMENTS The author would like to thank Francis J. Barchesky, Dr. Haiyang Chao, Dr. Jason N. Gross, Dr. Yu Gu, Dr. Srikanth Gururajan, and Dr. Jeffrey Vipperman for their help in deriving this work. REFERENCES [1] Rogova, G. L., and Nimier, V., “Reliability in Information Fusion: Literature Survey,” Proc. 7th Int. Conf. Inf. Fusion, Stockholm, Sweden, 2004, pp. 1158-1165. [2] Grewal, M. S., Weill, L. R and Andrew, A.P., Global Positioning, Inertial Navigation & Integration, 2nd. Ed., John Wiley & Sons, New York, NY, 2007. [3] Kwakkel, S. P., “Human Lower Limb Kinematics Using GPS/INS,” M.S. Thesis, University of Calgary, 2009. [4] Li, Y., Mumford, P., Wang, J., Rizos, C., and Ding, W., “Time Synchronisation Analysis of an FPGA based GPS/INS Integrated System,” International Global Navigation Satellite Systems Society IGNSS Symposium, Surfers Paradise, Australia, July 2006. [5] Gross, J., Gu, Y., Rhudy, M., Gururajan, S., and Napolitano, M., “Flight test evaluation of GPS/INS sensor fusion algorithms for attitude estimation,” IEEE Trans. on Aerospace Electronic Systems, Vol. 48, No. 3, July 2012, pp. 2128-2139. [6] Sivrikaya, F., and Yener, Bülent, “Time Synchronization in Sensor Networks: A Survey,” IEEE Network, Vol. 18, 2004, pp. 45-50. [7] Elson, J. E., “Time Synchronization in Wireless Sensor Networks,” Ph.D. Dissertation, University of California, 2003. [8] Sichitiu, M. H., and Veerarittiphan, C., “Simple, Accurate Time Synchronization for Wireless Sensor Networks,” Proc. IEEE Wireless Communications and Networking Conference, 2003, pp. 1266–1273. [9] Rhudy, M., Bucci, B., Vipperman, J., Allanach, J., and Abraham, B., “Microphone Array Analysis Methods Using Cross-Correlations.” IMECE2009-10798, Proceedings of IMECE 09: 2009 ASME International Mechanical Engineering Congress, November 13-19, 2009, Lake Buena Vista, Florida. [10] Mandal, T., Gu, Y., Chao, H., and Rhudy, M, “Flight Data Analysis of Pilot-Induced-Oscillations of a Remotely Piloted Aircraft,” AIAA Guidance Navigation and Control Conference, Boston, MA, 2013. [11] Haffner, P., Franzini, M., and Waibel, A., “Integrating Time Alignment and Neural Networks for High Performance Continuous Speech Recognition,” Proc. IEEE International Conference of Acoustics, Speech, and Signal Processing, Toronto, Ontario, Canada, April 1991, pp. 105-109. [12] Shimodaira, H., Noma, K-I., Nakai, M., and Sagayama, S., “Dynamic time-alignment kernel is support vector machine,” Advances in Neural Information Processing Systems 14, Vol. 2, Cambridge, MA: MIT Press, 2002, pp. 921-928. [13] Cao, H., Tehrani, A. S., Nemati, H. M., Fager, C., Eriksson, T., Zirath, H., “Time Alignment in a Dynamic Load Modulation Transmitter Architecture,” Proc. of the 39th European Microwave Conference, Rome, Italy, 2009, pp. 1211-1214. [14] Rhudy, M., “Real Time Implementation of a Military Impulse Noise Classifier”, M.S. Thesis, University of Pittsburgh, 2009. [15] Norton, M., and Carczub, D., Fundamentals of Noise and Vibration Analysis for Engineers, Cambridge University Press, New York, NY, 2nd Ed., 2003.
  • 14. International Journal of Computer Science & Engineering Survey (IJCSES) Vol.5, No.2, April 2014 14 [16] Rao, S. S., Mechanical Vibrations, Pearson Education, Inc., Upper Saddle River, NJ, 4th Ed., 2004. [17] Bendat, J., and Piersol, A., Random Data: Analysis and Measurement Procedures, John Wiley and Sons, Inc., New York, NY, 2nd Ed., 1986. APPENDIX Example Code 1: Time Alignment with Counter Example Code 2: Alignment of Signals using Correlations Example Code 3: Spike Removal Function Authors Matthew B. Rhudy received a Bachelor's of Science in mechanical engineering in 2008 from The Pennsylvania State University, State College, PA, a Master's of Science in mechanical engineering in 2009 from the University of Pittsburgh, Pittsburgh, PA, and a Ph.D in aerospace engineering in 2013 from West Virginia University, Morgantown, WV. Since 2013, he has been a Visiting Assistant Professor in the Department of Mechanical Engineering at Lafayette College in Easton, PA.