Application of Kalman filter in GPS
Abstract
We assume that we have a moving user who is needed to keep track of the
position by GPS. The velocity of user is unchanged. Therefore, there will have an
acceleration error in x, y, z axis (the velocity is changed). GPS receivers are installed in
users to update their positions continuously. However, measurement errors and
transmission errors affect to the estimation of user’s positions. Measurement position
and real position are a little bit different. To reduce the difference, we propose to use
Linear Kalman Filter (LKF) and Extended Kalman Filter (EKF) to keep track of moving
users. We used C and Matlab programming language to write the codes and simulate
them. We obtain the great results. By using Linear Kalman Filter (LKF) and Extended
Kalman Filter (EKF), the user’s position is closer to the real position.
Besides, we realize that GPS signal power is very weak so that it cannot go
through obstacles. As the results, GPS is useless in indoor environment. Moreover, when
indoor users can receive the GPS signal, it’s still useless. The reason is that the GPS
errors are rather high (even several hundred meters) for free users. In other words, it
depends on the weather and the policy of US Defense Department. In conclusion, GPS is
useless in indoor environment. Therefore, people are still lost in huge terminal or
supermarket, etc. Indeed, we need to find out a solution to solve this problem. To meet
the locating in indoor environment, we establish new locating system based on GPS
model. It was called GPS-indoor.
We assume that there’s a moving user in indoor environment with constant
velocity. Thus, the acceleration noise in x, y, z directions make the velocity changes.
Indoor-GPS system uses RFID equipment to guarantee the receivers can always receive
the signals from 4 points in space like 4 satellites in GPS. The difference here is Indoor
GPS uses RSSI to determine the distance while GPS uses TOA. The moving users update
their positions continuously. However, the measurement errors and transmission errors
affect so much to the results. The measurement position and true position are different.
To reduce the difference, we propose to use Extended Kalman Filter (EKF) to keep track
of moving users. We also use Matlab programming language to write the code and
simulate it. From the stimulation results, it shows that the error between measurement
position and real position is improved.
In addition, we developed Kalman Filter algorithm furthermore on hardware
based on TMS320C6713 DSP card. To do that, we wrote Kalman Filter algorithm in C
language. Then we used CCS (Code Composer Studio) to compile, build, and run the
codes on DSP card. Next step, we tried to show the output from DSP card. By using
MATLAB and Link for Code Composer Studio, MathWorks tools, CCS IDE and RTDX
work together to help us test and analyze the processing algorithms in MATLAB
workspace.