УДК 004
РАЗРАБОТКА И ОЦЕНКА СРЕДСТВ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ МОДЕЛИРОВАНИЯ ИСХОДНЫХ ДАННЫХ (SIMA) ДЛЯ МУЛЬТИСЕНСОРНЫХ НАВИГАЦИОННЫХ ПЛАТФОРМ С УПОРОМ НА ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ НАВИГАЦИОННЫХ СИГНАЛОВ ГНСС
Райнер Ягер
Университет прикладных наук Карлсруэ, Германия, Moltkestr. 30, 76133 Karlsruhe, директор Института геоматики, профессор, доктор-инженер, тел: +49 (0)721 925 2620,
факс: +49 (0)721 925 2597, email: [email protected], web site: www.navka.de
Юлия Дикерт
Университет прикладных наук Карлсруэ, Германия, Moltkestr. 30, 76133 Karlsruhe, дипломированный инженер, научный сотрудник, тел: +49 (0)721 925 2329,
факс: +49 (0)721 925 2329, e-mail: [email protected], web site: www.navka.de
Андреас Хосциславски
Университет прикладных наук Карлсруэ, Германия, Moltkestr. 30, 76133 Karlsruhe, магистр, научный сотрудник, тел: +49 (0)721 925 2586, факс: +49 (0)721 925 2586,
e-mail: [email protected], web site: www.navka.de
Ян Цвинер
Университет прикладных наук Карлсруэ, Германия, Moltkestr. 30, 76133 Karlsruhe, магистр, научный сотрудник, тел: +49 (0)721 925 2329, факс: +49 (0)721 925 2329,
e-mail: [email protected], web site: www.navka.de
Для оценки местоположения, скорости и направления движущегося объекта, например, беспилотных воздушных, наземных или водных транспортных средств, требуется обработка данные наблюдений нескольких сенсоров, расположенных на навигационной платформе. Как правило, в зависимости от типа применения (автомобиль, самолет, корабль, пешеход, ...) должна быть разработана оптимальная платформа с сенсорами и адаптирован соответствующий алгоритм навигации, что позволит добиться требуемой точности и робастности. Сюда же входит и выбор типа сенсора, его местоположение и ориентация на платформе и количество одинаковых по типу сенсоров.
Для сравнения и анализа производительности различных платформ с сенсорами и алгоритмов, особенно для избыточных или более конкретного случая, алгоритмы должны запускаться с одинаковыми данными наблюдений сенсоров. Это позволит избежать дорогостоящего создания реальной платформы и только с помощью ПО для имитации работы сенсоров, вычисления наблюдений сенсоров для произвольных траекторий и конструкций платформ с сенсорами. Следовательно, моделирования реальных наблюдений серии сенсоров позволят разработать и оптимизировать платформы и алгоритмы в соответствии с требованиями точности и надежности.
В данной статье описывается основная концепция моделирования наблюдений сенсоров, размещенных на подвижной навигационной платформе, вместе с расстояниями от центра тяжести сечения растянутой арматуры до точки приложения равнодействующей сжимающих напряжений в зависимости от пространственного положения сенсоров. Основное внимание уделяется моделированию GNSS наблюдений. Другие сенсоры -акселерометры, гироскопы, магнитометры и инклинометры описаны в работе (Jager et al., 2012).
Ключевые слова: GNSS, INS, моделирование исходных данных сенсоров,
мультисенсорная навигация, расстояние от центра тяжести сечения растянутой арматуры до
точки приложения равнодействующей сжимающих напряжений, разработка алгоритма, согласование сенсорных данных, оптимальная конструкция платформы, самокалибрующиеся платформы.
DEVELOPMENT AND VALIDATION OF THE RAW DATA SIMULATION SOFTWARE (SIMA) FOR MULTI-SENSOR NAVIGATION PLATFORMS WITH EMPHASIS ON THE PART OF GNSS SIMULATION
Reiner Jager
University of Applied Sciences Karlsruhe, Germany, Moltkestr. 30, 76133 Karlsruhe, Prof. Dr-Ing., Head of Geomatics Institute at IAF, tel: +49 (0)721 925 2620, fax: +49 (0)721 925 2597, e-mail: [email protected], web site: www.navka.de
Julia Diekert
University of Applied Sciences Karlsruhe, Germany, Moltkestr. 30, 76133 Karlsruhe, Dipl.-Ing. (FH), research associate, tel: +49 (0)721 925 2329, fax: +49 (0)721 925 2329,
e-mail: [email protected], web site: www.navka.de
Andreas Hoscislawski
University of Applied Sciences Karlsruhe, Germany, Moltkestr. 30, 76133 Karlsruhe, M.Sc., research associate, tel: +49 (0)721 925 2586, fax: +49 (0)721 925 2586,
e-mail: [email protected], web site: www.navka.de
Jan Zwiener
University of Applied Sciences Karlsruhe, Germany, Moltkestr. 30, 76133 Karlsruhe, M.Sc., research associate, tel: +49 (0)721 925 2329, fax: +49 (0)721 925 2329, email: [email protected], web site: www.navka.de
For the estimation of the position, velocity and orientation of a moving object, e.g. an unmanned air, ground or water vehicle, the observation data of multiple sensors on a navigation platform have to be processed. Typically for every different type application (automotive, aircraft, ship, pedestrian, ...) a specific optimal sensor platform has to be designed, and the proper navigation algorithm has to be adapted, to keep the required specifications in terms of accuracy and robustness. This includes the choice of the sensor type, its position and orientation on the platform and the number of the sensors of the same type.
To compare and analyze the performance of different sensor platforms and algorithms, especially for a redundant or over determined case, the algorithms have to be run with the same sensor data observation. This can be achieved without the cost of building a real platform by using a sensor simulation software, which calculates the sensor observations for arbitrary trajectories and sensor platform designs. Consequently, the simulation of realistic sensor array observations can boost the development and optimization of navigation platforms and algorithms in respect to required accuracy and reliability.
In this contribution the basic concept to model the observations of the sensors on a moving navigation platform is described in consideration of the lever-arms, which result from the spatial arrangement of the sensors on the platform. The focus is on the modeling of the GNSS observations. Other sensors like accelerometers, gyroscopes, magnetometers and inclinometers where already described in (Jager et al., 2012).
Key words: GNSS, INS, sensor raw data simulation, multi-sensor navigation, lever arms, algorithms development, tight and deep coupling of sensor data, optimal platform design, self-calibrating platforms.
1. INTRODUCTION
In many applications such as for controlling the attitude of UAVs or the geo-referencing of laser scanner data on-site it is not sufficient to estimate a precise position of a body (b). Rather the complete navigation state vector
[ ( B , L, h)e | (vN,vE , vD ) n | ( r, p ,y) n] T is needed, which contains additionally the bodys velocity and orientation . Due to the fact, that there is no single
sensor which is able to observe the complete navigation state vector, the data of different sensors mounted on a common sensor platform have to be fused together to an optimal solution.
The development and optimization of such sensor platforms and of the appropriate algorithms to estimate a navigation solution depends on many different things. At first the type of sensor has to be chosen. Some sensors for example can only be used under certain conditions because they need extern information which is not always available. This is the case for GNSS, which works usually only outside of buildings. Others are instead very sensitive to the dynamics of the bodys trajectory like accelerometers, which can directly observe the roll and pitch only at rest. Furthermore the sensors differ in their specific error properties and their sensitivity to external error influences, which require a further optimization of the platform. Additionally the accuracy of the navigation solution and the observability of the state vector depends on the optimal choice of the position and orientation of a sensor on the platform.
For the analysis and comparison of the performance of different optimized sensor platforms and algorithms the same set of observation data is needed. Since there are only multi-sensor platforms with a standard, non-redundant sensor design on the market, which consists of one GNSS receiver and a three axes inertial measurement unit (IMU) and since additionally collecting real data with multi-sensor platforms and the corresponding precise reference data takes a lot of time and effort, raw data simulation tools are consequently required for the development, validation and analysis of new navigation algorithms in regard of achievable accuracy, precision, reliability, robustness against sensor errors and self-calibration of redundant platforms. Therefore the simulation tool SIMA (SImulation of Multisensor Arrays) was developed at the IAF (Institute for Applied Sciences) at the University of Applied Sciences Karlsruhe. With that tool the senor raw data for an indefinitely far extended platform can be simulated based on a user defined trajectory and a specific platform design, because the lever-arm effects, which occur in the sensors outside of the bodies origin, are considered. The available sensors are accelerometers, gyroscopes, magnetometers, inclinometers and GNSS with positions, velocities, code, carrier phase and Doppler observations. The consideration of individual parameterized sensor errors like biases, drifts, sensor or satellite clock errors and the possibility to create occasional gross errors results in realistic scenarios, that allow the performance analysis of different navigation algorithms.
The focus of this paper is on the simulation and determination of GNSS observations for a sensor redundant platform in consideration of the so-called lever arms among the sensors, which are examined in chapter two. Chapter three describes the modeling of the bodys trajectory since the observations are a function of that. In chapter four the simulation of the GNSS observations is explained. This implies the
simulation of the satellite orbits and the modeling of the influences of the atmosphere, relativistic effects and other systematic errors. The simulation flow is given in chapter five. Chapter six discusses the results of the simulation and verifies it with an external positioning software.
2. LEVER ARM CONCEPT
For the determination of the complete navigation state of the body (b) multiple sensors j (j=1..n) and different types of sensors have to be integrated to estimate an optimal navigation solution . For this purpose a multi-sensor multiplatform concept is used, where the sensors are mounted on i (i=1..i) platforms and these in turn are attached to the body (b) (fig. 1). The observations of the sensors are principally a function of their location and orientation. Since the amount of space and volume on a platform is limited and all sensors cannot be installed at the center of the body (b) by practical reasons, the sensor distance from sensor to platform center, and the distance between platform and b-frame, that are combined in the so-called lever arm, have to be considered in the navigation algorithms and in the simulation of the observations. Thereby on the one hand, systematic effects can be avoided in the estimation of the navigation state, on the other hand the lever arms are straight necessary to get a good solution, e.g. in case of the attitude estimation with two or more GNSS receivers and they offer the chance for the optimization of the sensor design on a platform (p) or a body (b) respectively.
For the lever arm modelling the sensor position and orientation
of the j-th sensor on the i-th platform [t pe n s 0 r, R ( a, 5 ) p ] is parametrized in the p-
frame (fig. 1) with and as angles between sensitive sensor axis and xy-plane respectively xz-plane of the platform frame (p). The transformation between platform and body is defined with six additional parameters: Position and orientation Rp ( £x, £y, £z) of the i-th platform (p) on the body.
The position of the sensor (fig. 1) in the e-frame is presented under
consideration of the lever arms, which consists of tplat and t(t)eens0r and reads:
^OOsensor — x(t)body "I" tplat ^OOsensor ^m_origin ^m^body
RemR(t)^R
P tplat
+ Rem R (t) S’RpR(t)PtSenso (2.1)
In equation (2.1) the motion-frame (m-frame) is introduced. This frame is similar to the position dependent n-frame, but does not follow the navigated body. Instead it is in the context with raw sensor data simulation fixed to a predefined position on earth with constant rotation matrix . Since this frame is tangential
to the earth’s surface the modeling of a trajectory in the local tangential area of the m-frame is very intuitive.
body
s sensitive sensor axis
X ^ ~y\ GNSS
platform i
0,
accelerometer / gyroscope
Figure 1: Geometry and lever arm parametrization in a multi-sensor multi-platform
navigation design
The velocity (eq. 2.2) and the acceleration (eq. 2.3) respectively, which appear on the specific location of sensor j on platform i, are obtained by derivation of equation (2.1) in respect to time t, taking into account that position and orientation of the platform i regarding the body (b) are constant. For a sensor j it is assumed instead, that its position and orientation on the platform i are able to change with time. A reason to create time-dynamic sensor-platform-parameters can be to calibrate specific sensor errors, for example, if the sensitive axes have to be coupled to the gravity vector (Wendel, 2007). Because the sensor calibration on the fly depends on the body trajectory, some sensors can only be calibrated poorly. With a rotation of the sensor axis on the platform the self-calibration of a platform could be optimized further. For the velocity and acceleration of the sensor we get from (2.1):
\d
kx(t)
e
sensor
= x(t)
e
sensor
m
mAbody
b
mb
RpR?ts
s *-sensor
+ R^RhRnRcflnct,
lp"s “ps*-sensor
+ RmR™RnRctS
s *-sensor
(2.2)
and
\d .
— x(t)sens0r — ^OOsensor
__ ne v;m . ne nirifjb /-»b pbf-P i ne pm/Sb pbf-P
- Kmxbody KmKb 4£mb4£mbKpi;plat "l" KmKb 4£mbKpi;plat
-I- Re Rmf)k RbRPj-s I Re nm/jb RbnP|S
t *'mIvb iimbiimbI'pI's Lsensor ~ Ivmivb ilmbIvpI's Lsensor
-I- Re RmO^ R^R^Os ts -I- Re RmO^ RbRPts t *'mIvb itmbIxpIxsitpsLsensor ~ Ivmivb ilmbI'pI's Lsensor
-I- Re RmO^ R^R^Os ts -I- Re RmRbRPf)s Os ts t *'mIvb itmbIxpIxsitpsLsensor ~ Ivmivb IxpIxsitpsitpsLsensor
I ne RmRbnPf)S |-s I ne RmRb rP Os tS n
rvm^b ^p1' s“p s1- s ens o r ' ^m^b ^p1' s“p s1- s ens o r (2.3)
-I- Re Rmf)k RbRPfs -I- Re RmRbRPns ts
t *'mIvb ilmbI'pI's Lsensor ~ Ivmivb IxpIxsitpsLsensor
-I- Re RmR^RPts t *'mIvb IvpIvs Lsensor
i.J
3. MODELLING THE NAVIGATION STATE WITH A GIVEN TRAJECTORY
In the SIMA concept the sensor observations can be uniquely derived from the extended state vector y e (t) in the e-frame with Cartesian coordinates, reading:
ye (t) = [x(Qbody *(Qbody x(C)body R(t)b n(t)bb n(t)bb] (3.1)
It consists of the bodys position x (t) b o dy, velocity X (t) b o dy, acceleration x (t) b o dy, orientation R (t) b, rotation rate O(t) bb and change of rotation rate 0(t) bb of the body (b) at time t in the e-frame. Alternatively the state vector is defined in respect to the above local m-frame, which is defined to be a frame tangential to the earth’s surface at a fix point ( B m _fram e, Lm_frame,h)e. Then e would be replaced with m in equation (3.1). Based on (3.1) the sensor observations 1 (t) are modeled as a function of the state y (t) with
1 (t)=/ (y (t) ) . (3.2)
The navigation state vector y (t) in equation (3.2) is used for modeling the
sensor raw data . At the same time it provides the reference state for the
navigated body (b) and thus for the navigation algorithm solution. If a navigation
solution, that has only the sensor observations as input, is close or equal to the reference state, then it can be considered as successful.
The state vector is modeled in the SIMA concept by a predefined trajectory
and orientation along the track by the user dependent on time t. The trajectory can
either be modeled by a predefined analytic curve like a circle, a straight line, a helix
or a composition of them, where the specific curve parameters like the radius of a
circle or the pitch can be varied (Jager et al., 2012), where the mathematical representation and thus the implementation is quite simple. A disadvantage is that the observations created by this curves show some systematic effects like constant rotation rates or repeating accelerations. Another possibility is to use a spline curve, where the shape of the curve can be defined by way points. The advantage of the
spline is its flexibility, which enables a model of a more realistic curve (fig. 2).
The orientation of the body and its change with time can basically
be described in two ways. The
orientation can be totally independent from the movement characteristic of the body where the body can spin around its axis while it is moving with a constant velocity on a curve. On the contrary it can be assumed that the body is in the so-called ’’automotive mode”, where the x-axis or roll-axis of the body is always aligned to the main moving direction X (t) b o dy of the body. Here the Figure 2: Spline curve defined by waypoints orientation is not independent from the with the local Frenet-Serretframe trajectory anymore. This can be the case
for the sensor raw data simulation of a navigation platform (p) or single sensors (j) installed in cars or tractors.
In the “automotive mode” the relation between the trajectory and the orientation
of the body R (t) b is given by the well-known Frenet-Serret frame. It describes a local Cartesian coordinate system in point which is defined by the tangent unit vector t, the normal unit vector n and the binormal unit vector b. The orientation matrix R(t)b
R(t)b = [t n b]
(3.3)
can directly be created by the Frenet-Serret frame (eq. 3.3), because it is an orthonormal base with
b =
vxa
vxa
n = b x t
(3.4)
and and .
With the general relation for time-varying rotation matrices
(Jekeli, 2001) the rotation rates 12^ can be calculated with equation (3.5) from (3.3) and its derivation as:
= R(t)STR(t)£ =
tt tn tb~ 0 tn tb~
nt nil nb — nt 0 nb
-bt bn bb- -bt bn 0 -
(3.5)
The above change of the orientation of the body with time t in equation (3.5) holding the first derivative of (3.3), is given by equation (3.6) as:
^R(t)b = R(t)b = [t n b].
(3.6)
It can be shown that
. _ a|v|-v(ta)
^ I i n
vxa|vxa|-(vxa)
|vxa|
(3.7)
The change of the rotation rate is the result of the derivation of equation
(3.5) with time, where the vectors t, b and n are the result of the derivation of equations (3.7) once again in respect to t. We arrive at:
0 in + tri tb + tb
bt + b'i bn + bii 0
4. SIMULATION OF GNSS OBSERVATIONS
In navigation algorithms the fusion of GNSS receiver observations with other sensor data can be done in various levels of integration. On the level of loose coupled integration schemes only the calculated position and velocity solution of a GNSS receiver is considered. On the level of tight or deep coupling the GNSS raw data observations (pseudorange, carrier phase and Doppler frequency) are integrated into the navigation algorithms.
GNSS position and velocity observation modeling
The position and velocity solution of a real GNSS receiver is commonly provided in the e-frame. Since the position x (t) b o dy and velocity X (t) b o dy of a simulated object is known as a time-dependent function of the object’s trajectory according to chapter 3, the simulation of such a position and velocity observation for the GNSS receiver j in the e-frame has to consider only the individual lever arm of the GNSS sensor j.
For the modeling of the GNSS position xGNSS_pos we start from equation (2.1). The position of a platform i is defined in the b-frame, the position of the sensor j in the p-frame. Assuming the position and orientation of a GNSS receiver are constant in respect to the platform, equation (4.1) can be obtained.
e
GNSS-pos
X(t)b„dy + RmRCOb tplat + RJnRMS’R^: 1 X(t)body + LAl't)pos]ij
mr»bf-P
p ‘•sensor
(4.1)
Individual sensor noise n Q n s s _ p o s can be added to sensor j in equation (4.1) and with equation (4.2) the final equation to simulate the GNSS position observation
[ 1 G N S s _ p o s ] .. is given.
GNSS-pos + nGNSS—posj j j
(4.2)
Starting with equation (2.2) and similar to the GNSS position, the GNSS velocity observation is simulated by equation (4.3) as:
Individual sensor noise n Q n s s _vel can be added, too, so the final GNSS velocity observation [1 Q N S S _ ve i] jj is given by equation (4.4) as:
Representation of satellite orbits
In contrast to the simulation of position and velocity observations the simulation of GNSS pseudoranges, carrier phase measurements and Doppler frequency shifts requires additionally the position and velocity of the satellites x eat.
There are three sets of data available to determine the satellites positions: almanac data, broadcast ephemerides and precise ephemerides. These data sets differ mainly in the mathematical representation of the satellite orbits and in the accuracy of the resulting positions. The almanac data and the broadcast ephemerides, respectively, represent the orbit with the Keplerian orbit element plus satellite clock error and drift terms for all satellites of one satellite system, e.g. GPS. The almanac data is part of the satellite message and is provided for example by the Navigation Center of U.S Department of Homeland Security (http://www.navcen.uscg.gov/, 02/20/2013) with a position uncertainty of some kilometers. The broadcast ephemerides contain additionally to the six Keplerian parameters nine correction terms, which consider the perturbation effects of nonsphericity of the earth or the direct tidal effect. The uncertainty of the resulting positions is better than 1m. Precise ephemerides with an uncertainty of about 2.5 cm are provided for example by the International IGS (http://igscb.jpl.nasa.gov/components/prods.html, 02/20/2012). Here the orbit is represented by time discrete interpolation points every fifteen minutes. Using e.g. the Lagrange interpolation the satellite position can be determined at any given time t.
Even though the precise ephemerides provide a more accurate calculation of the satellite positions, for the simulation of observations it is sufficient to use the less accurate almanac data. The reason is that simulation is a kind of planning tool where usually approximate values are used to get a rough geometrical design for the observations. It is more important, that in the navigation algorithm the same parameters are used for the satellite position calculation.
sensor
(4.3)
(4.4)
Simulation of pseudoranges, carrier phase observations and Doppler frequency
The pseudorange [ I ( t) P^] jJjfc from satellite k to the GNSS receiver j on platform i can be simulated with the well-known observation equation for pseudoranges (Hofmann-Wellenhof, 1992):
[Kt)pR]i,j,k = [|x(t)|NSS-posj -R(^)3x(t-T)®atk|
+ c (AtGNSS_posj - Atsatjk)]. + Alon + ATrop + nPR
(4.5)
XOOgNSS—pos j represents the position of GNSS receiver j at simulation time t, which is known from equation (4.1). x (t — t) eat k is the position of satellite k at time t — t calculated from the Keplerian elements, where t is the propagation delay of the signal from satellite k to the receiver j. This implies that a receiver j measures at time the distance between itself and the satellite k at time . Unfortunately both the
propagation delay , and thus the satellite position, are unknown at simulation time t,
hence an iterative process is chosen to calculate .
Assuming a satellite distance of 20.000 km and the vacuum speed of light c with m/s an
approximate signal delay of s and so an approximate satellite position is calculated.
With that position a new delay with
the formula in figure (f. 3) is
estimated. If the difference | t ,— t0 | between both is smaller than
the iteration is stopped and the searched delay is , else and the calculation is
started with a new approximate position and new t.
The rotation matrix in
equation (4.5) considers the fact, that Figure 3:Iterative satellite position
the calculation of the satellite position calculation
at time and the receiver position at time t are in different reference frames
because of the rotation of the earth in span of time . Consequently, every satellite k position has to be corrected with the reference frame rotation dependent on its specific t fc and the earth rotation rate o £. The relevant rotation matrix in (4.5) reads:
R(a)£Tfc) 3 —
cos(a)£Tfc) sin(a)£Tfc) 0
- sin(a)£Tfc) cos(a)£Tfc) 0
0 0 1
(4.6)
The satellite clock error is modeled with equation (4.7). The parameter a 0 is the satellite clock offset, the satellite clock drift coefficient, the time of simulation
and the reference epoch within the current week. For the simulation the simplified model in equation (4.7) was chosen, because only the two clock error parameters a 0 and a , are part of the almanac data.
Atsat,k = ao + a^t- ta) + Srel
(4.7)
(4.8)
In equation (4.7) a relativistic effect Srel is considered, which results from the
fact, that the satellite clock runs more slowly, when the satellite is in the perigee and more fast when it is at apogee, dependent on the satellite velocity and the gravity potential on its position. represents the gravitational constant, the semimajor
axis of the satellite orbit, the satellite orbital eccentricity and the eccentric
anomaly of the satellite orbit.
The receiver clock error At G N S S _ p 0 s j is modeled with a linear drift. Additional errors coming from ionosphere and troposphere are integrated by using
standard models like Klobuchar and Saastamoinen.
The phase measurements [l ^ _ Lj] ^kcan be simulated analogue to (4.5) directly
from the known receiver and satellite positions for both GNSS frequencies with equation 4.9. The parameter N ^ _ t is the number of integer ambiguities between satellite k and receiver j at the begin of the simulation t 0. D Ljtj represents the Doppler count from t 0 until present time of simulation t.
For the simulation of the Doppler frequency [l (t) A f] k (eq. 4.10) of a received signal the satellites and receivers position are used to calculate the direction to the satellite k. The receiver velocity is known from the trajectory model and
the considered lever arms (eq. 4.2).
[l(t)<|,,Li]Uk = [|X(t)GNSS—posj - R(0)£T)3X(t- T)®atk|
+ C (AtGNSS_p0S j — Atsat k) — (^Li^Li)to _ (^Li^Li)t],
— Alon + ATrop +
with Al j= wave length of GNSS carrier signal
(4.9)
XOOgNSS—pos j
R(a)£T)3x(t-T)^atk
H(t)Af] tj.fc ^satk
+ nAf
(4.10)
with fs at= frequency of satellite and re = n o r m
The velocity of the satellite can also be calculated from the Keplerian
elements. For that purpose Remondi (2004) derived a set of equations which allow one to compute the velocity vector of a satellite using the time derivatives of the Keplerian elements and correction terms broadcast from the GPS satellites.
5. SIMA - SIMULATION OF MULTISENSOR ARRAYS
For the validation of new so-called NAVKA navigation algorithms for GNSS and MEMS-based multi sensor navigation platforms the sensor raw data simulation tool ”SIMA” was developed. SIMA provides individual sensor raw data for a platform i with an arbitrary number of virtual GNSS-sensors (l QN S S _ p 0 s, l Q N S S _vel, , , ), accelerometers ( ), gyroscopes ( ), magnetometers ( ) and/or
inclinometers (l q ) to estimate of the state vector y (t) .
Additionally and simultaneously to the observation data SIMA provides the reference data of the bodies trajectory for the implementation and
verification of new navigation algorithms. These include the standard navigation parameters position , velocity and orientation of the
standard state vector , additional parameter like current rotation rates, accelerations of the extended navigation state vector (3.1) and the defined sensor errors like sensor biases of MEMS sensors, or cycleslips for GNSS observations, which have to be detected ”on-the-fly” by the navigation algorithms. For the processing of the GNSS raw data observations the satellite ephemerides are provided in a file format related to the RINEX navigation file. This can be converted to a regular RINEX 2.10 file.
Before the begin of the simulation the platform has to be equiped with the virtual sensors by the user according to the lever arm concept described in chapter two. A virtual platforms i can be positioned and orientated individually on the body (b) with lever arm parameters . On each platform i any number of
sensors can be positioned and orientated with the parameters . So
all in all eleven lever arm parameters are part of the NAVKA algorithms.
Then the simulation of raw data is performed in three steps at every point of time . In step one the trajectory of a body (b) is modeled either in the m- or the e-frame. For that purpose SIMA uses a predefined analytic curve like a circle, a straight line, a helix or a 3D-trajectory, which can be defined by waypoints and additional assumptions for the movement characteristics of the body orientation. Here several modes can be configured in SIMA (aeroplane, pedestrian, automotive, ...).
In the second step the sensor raw data are calculated at every simulation time t with different frequencies either for a standard sensor configuration with one GNSS and one IMU triad or optionally for an over-determined case according to chapter
four for the GNSS sensors. The simulation of the other sensor types is described in (Jager et al., 2012) and is not intended to be part of this paper.
In step three the individual sensor errors parametrized by bias, scale factor or specific sensor noise is added to every sensor j on the i-th platform that leads to sensor specific observations. Additional occasional gross sensor errors can also be simulated in SIMA.
6. VERIFICATION OF THE GNSS OBSERVATIONS SIMULATION
The final and probably most important step is to proof the functionality of the SIMA concept and the mathematical models to ensure that all relevant influences to the satellite signals are considered in the simulated observations and correctly implemented in the SIMA software. For this purpose the GPS observations have to be verified by an extern and independent analysis software like Leica Geo Office or the RTKLIB, an open source program package for GNSS positioning (Takasu, 2009). This means that in contrast to the SIMA simulation, where the GPS raw data are generated dependent on the body state y (t) (3.5) (position, velocity, etc.), now the state y (t) of the body (b) is calculated from the simulated observations with positioning software independent from SIMA. Since the extern reference software is designed to process real world GPS data, we can assume that the simulated observations are generated correctly and the models for ionospheric, tropospheric and relativistic effects are accurately implemented, if the output of the reference software coincides with the predefined reference trajectory in SIMA.
As one example for the verification of SIMA a trajectory was simulated where the body drives a circle with radius of 500 m and a velocity of 2 m/s (fig. 3). Its midpoint was defined to be in the near of the castle of Karlsruhe, Germany. One GPS receiver A was virtually placed in the origin of platform p, which was mounted parallel to the body without a translation in respect to the body. A second receiver B was placed outside the body in the circles midpoint as local reference station. For both receivers a receiver clock bias, ionospheric and tropospheric effects, relativistic effect and satellite clock errors where simulated. The observation noise was defined to be zero so that the result of the reference analysis software represents only the model and numerical errors and is thus comparable with the true predefined trajectory in SIMA. The data were simulated for one hour with a rate of 1 Hz.
Figure 3: Example trajectory for the body simulated with SIMA
For the analysis of the observations the SIMA data were converted to the RINEX 2.10 file format and then processed with two different modes by the RTKLIB. For the validation of the code observations the positioning mode “Single” was used for frequency L1 with the option “Broadcast” for the ionospheric corrections and the Satellite ephemeris and clock. For the troposphere the Saastamoinen model was chosen.
Figure 4: Position differences of SIMA Figure 5: Position differences of SIMA
reference and RTKLIB processing result reference and RTKLIB processing result for “Single ” mode for “Kinematic ” mode
Fig. 4 presents the differences between the calculated positions from the RTKLIB und the SIMA reference positions of the body for all three axis over a period of one hour with a maximum difference of about 4.5 mm and a mean error of 0.9 mm.
The settings for the validation of the carrier phase are the same as for the code observations. Only the analysis mode was changed to “Kinematic”. The differences between both data are presented in figure five. Here the maximum error is 1.5 mm and the mean error is 0.5 mm.
The differences in both plots are all in the lower range of the millimeter. For the code observations they could come from some numerical differences between the simulation and the analysis software, whereas this effect seems to be disappeared in the carrier phase observations what could be the result of differential observation modeling. Here it seems, that the systematic effects of the internal Kalman filter of the RTKLIB were made visible, because the frequency of the errors is equal to the circle frequency of the trajectory.
Thus both the remaining errors for the code observations and for the carrier phase observations are lower than the observation noise of the real code and phase observations, where we assume a noise of 20 cm for the code and 2 mm for the phase observations. So the functionality and correctness of the GNSS observation simulation is proven.
7. SUMMARY
SIMA allows the development and validation of loose, tight and deep coupled navigations algorithms based on simulated raw data and a predefined reference trajectory [y (t) ] ref. In particular SIMA is suitable for the development of OPPP-(Online Precise Point Positioning) , DGNSS- and Moving-Base-Algorithms, where the bodys orientation is estimated with two or more GNSS receivers on one or more platforms. In every sensor j SIMA considers the specific lever arm effects without any constraints to the geomatrical design and the number of sensors. Additionally to the already implemented sensors like GNSS, INS, magnetometer and inclinometers, the stepwise software concept allows an integration of further observation types e.g. barometers and more sophisticated error models dependent on time, driving forces or temperature. Furthermore SIMA can be extended with other trajectories.
The functionality of SIMA was demonstrated within this contribution for the GNSS sensor observations by processing the simulated data with the open source GNSS processing software RTKLIB. The result was compared to the reference data from SIMA. The properness of the other sensors was show in the previous paper (Jager et al., 2012). Thus SIMA is fully operable.
8. ACKNOWLEDGEMENT
The funding of the Joint Research Project „GNSS/INS and multi-sensor navigation algorithms and platforms for mobile navigation and object geo-referencing“ for three years (2011-2013) by the Ministry of Economics and the navigation and mobile IT industry of Baden-Wurttemberg is gratefully acknowledged. The objective of the research team ‘NAVKA’ at the central research center at the Institute of Applied Research (IAF) at University of Applied Sciences Karlsruhe is to develop robust algorithms for multi-sensor GNSS and MEMS-based platforms (p) for the navigation of arbitrary bodies (b) and for mobile indoor and outdoor geo-referencing applications independent from extern infrastructure.
REFERENCES
[1] Hofmann-Wellenhof B., Lichtenegger H., Collins J. (1992): GPS - Theory and Practice, 3.rd edition, Springer Verlag New York
[2] Jager R., Diekert J., Hoscislawski A., Zwiener J. (2012): SIMA - Raw Data Simulation Software for the Development and Validation of Algorithms for GNSS and MEMS based Multi-Sensor Navigation Platforms, FIG Working Week 2012, Rome
[3] Jekeli C. (2001): Inertial Navigation Systems with Geodetic Applications, Walter de Gruyter, Berlin
[4] Remondi B.W. (2004): Computing satellite velocity using the broadcast ephemeris, GPS Solutions, 8:181-183
[5] Takasu, T., Yasuda, A. (2009): Development of the low-cost RTK-GPS receiver with an open source program package RTKLIB. Proceedings of international symposium on GPS/GNSS, Jeju, Korea
[6] Wendel J. (2007): Integrierte Navigationssysteme, Oldenbourg Verlag, Munchen
BIOGRAPHICAL NOTES
Prof. Dr.-Ing. Reiner Jager
Professor for Satellite and Mathematical Geodesy, Adjustment and Software Development at Karlsruhe University of Applied Sciences (HSKA)
Head of the Laboratory of GNSS and Navigation, of the Institute of Geomatics at IAF and of the joint RaD project "GNSS-supported low cost multisensor systems for mobile platform navigation and object geo-referencing” (www.navka.de)
Member FIG Commission 5 WG 5.4 Kinematic Measurements
CONTACTS
M.Sc. Andreas Hoscislawski
University of Applied Sciences - Institute of Applied Research (IAF)
MoltkestraBe 30 76133 Karlsruhe Germany
Tel. +49 (0)721 925-2586
Fax +49 (0)721 925-2927
Email: Andreas .Hosci slawski@HS-Karl sruhe.de
Web site: www.navka.de
© R. Jager, J. Diekert, A. Hoscislawski, J. Zwiener, 2013