source: ntrip/trunk/BNC/txt/frankfurt.tex@ 5638

Last change on this file since 5638 was 5638, checked in by mervart, 10 years ago
File size: 31.6 KB
Line 
1
2\documentclass[10pt]{beamer}
3\usetheme{umbc2}
4\useinnertheme{umbcboxes}
5\setbeamercolor{umbcboxes}{bg=violet!12,fg=black}
6
7\usepackage{longtable}
8\usepackage{tabu}
9\usepackage{subeqnar}
10
11\newcommand{\ul}{\underline}
12\newcommand{\be}{\begin{equation}}
13\newcommand{\ee}{\end{equation}}
14\newcommand{\bdm}{\begin{displaymath}}
15\newcommand{\edm}{\end{displaymath}}
16\newcommand{\bea}{\begin{eqnarray}}
17\newcommand{\eea}{\end{eqnarray}}
18\newcommand{\bsea}{\begin{subeqnarray*}}
19\newcommand{\esea}{\end{subeqnarray*}}
20\newcommand{\mb}[1]{\mbox{#1}}
21\newcommand{\mc}[3]{\multicolumn{#1}{#2}{#3}}
22\newcommand{\bm}[1]{\mbox{\bf #1}}
23\newcommand{\bmm}[1]{\mbox{\boldmath$#1$\unboldmath}}
24\newcommand{\bmell}{\bmm\ell}
25\newcommand{\hateps}{\widehat{\bmm\varepsilon}}
26\newcommand{\graybox}[1]{\psboxit{box .9 setgray fill}{\fbox{#1}}}
27\newcommand{\mdeg}[1]{\mbox{$#1^{\mbox{\scriptsize o}}$}}
28\newcommand{\dd}{\mbox{\footnotesize{$\nabla \! \Delta$}}}
29\newcommand{\p}{\partial\,}
30\renewcommand{\d}{\mbox{d}}
31\newcommand{\dspfrac}{\displaystyle\frac}
32\newcommand{\nl}{\\[4mm]}
33
34\title{Processing GNSS Data in Real-Time}
35
36\author{Leo\v{s} Mervart}
37
38\institute{TU Prague}
39
40\date{Frankfurt, January 2014}
41
42% \AtBeginSection[]
43% {
44% \begin{frame}
45% \frametitle{Table of Contents}
46% \tableofcontents[currentsection]
47% \end{frame}
48% }
49
50\begin{document}
51
52%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
53
54\begin{frame}
55 \titlepage
56\end{frame}
57
58%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
59
60\begin{frame}
61\frametitle{Medieval Times of GNSS (personal memories)}
62
63\begin{description}
64\item[1991] Prof. Gerhard Beutler became the director of the Astronomical Institute, University of
65 Berne. The so-called Bernese GPS Software started to be used for (post-processing) analyzes of
66 GNSS data.
67\item[1992] LM started his PhD study at AIUB.
68\item[1992] Center for Orbit Determination in Europe (consortium of AIUB, Swisstopo, BKG, IGN, and
69 IAPG/TUM) established. Roughly at that time LM met Dr. Georg Weber for the first time.
70\item[1993] International GPS Service formally recognized by the IAG.
71\item[1994] IGS began providing GPS orbits and other products routinely (January, 1).
72\item[1995] GPS declared fully operational.
73\end{description}
74
75\end{frame}
76
77%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
78
79\begin{frame}
80\frametitle{CODE-Related Works in 1990's}
81
82\begin{itemize}
83\item The Bernese GPS Software was the primary tool for CODE analyzes (Fortran~77).
84\item IGS reference network was sparse.
85\item Real-time data transmission limited (Internet was still young, TCP/IP widely accepted 1989).
86\item CPU power of then computers was limited (VAX/VMS OS used at AIUB).
87\end{itemize}
88
89In 1990's high precision GPS analyzes were almost exclusively performed in post-processing mode.
90The typical precise application of GPS at that time was the processing of a network of static
91GPS-only receivers for the estimation of station coordinates.
92
93\end{frame}
94
95%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
96
97\begin{frame}
98\frametitle{Tempora mutantur (and maybe ``nos mutamur in illis'')}
99
100\includegraphics[width=0.7\textwidth,angle=0]{pp_vs_rt.png}
101
102\vspace*{-2cm}
103\hspace*{6cm}
104\includegraphics[width=0.4\textwidth,angle=0]{ea_ztd_21h.png}
105
106
107\end{frame}
108
109
110%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
111
112\begin{frame}
113\frametitle{O tempora! O mores!}
114
115\begin{itemize}
116\item people want more and more \ldots
117\item everybody wants everything immediately \ldots
118\item \hspace*{2cm} and, of course, free of charge \ldots
119\end{itemize}
120\vspace*{5mm}
121In GNSS-world it means:
122\begin{itemize}
123\item There are many new kinds of GNSS applications - positioning is becoming just one of many
124 purposes of GNSS usage.
125\item Many results of GNSS processing are required in real-time (or, at least, with very small
126 delay).
127\item GPS is not the only positioning system. Other GNSS are being established (for practical but
128 also for political reasons).
129\item People are used that many GNSS services are available free of charge (but the development and
130 maintenance has to be funded).
131\end{itemize}
132
133\begin{block}{But \ldots}
134\end{block}
135
136\end{frame}
137
138%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
139
140\begin{frame}
141\frametitle{Nihil novi sub sole}
142
143Each GNSS-application is based on processing code and/or phase observations
144\vspace*{-3mm}
145 \begin{eqnarray*}
146 P^i & = & \varrho^i + c\;\delta - c\;\delta^i + T^i + I^i + b_P \\
147 L^i & = & \varrho^i + c\;\delta - c\;\delta^i + T^i - I^i + b^i
148 \end{eqnarray*}
149 where
150 \begin{tabbing}
151 $P^i$, $L^i$ ~~~~~~~ \= are the code and phase measurements, \\
152 $\varrho^i$ \> is the travel distance between the satellite
153 and the receiver, \\
154 $\delta$, $\delta^i$ \> are the receiver and satellite clock errors, \\
155 $I^i$ \> is the ionospheric delay, \\
156 $T^i$ \> is the tropospheric delay, \\
157 $b_P$ \> is the code bias, and \\
158 $b^i$ \> is the phase bias (including initial
159 phase ambiguity).
160 \end{tabbing}
161Observation equations reveal what information can be gained from processing GNSS data:
162\begin{itemize}
163\item geometry (receiver positions, satellite orbits), and
164\item state of atmosphere (both dispersive and non-dispersive part)
165\end{itemize}
166The observation equations also show that, in principle, GNSS is an
167\textcolor{blue!90}{interferometric} technique -- precise results are actually always relative.
168
169\end{frame}
170
171%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
172
173\begin{frame}
174\frametitle{Challenges of Real-Time GNSS Application}
175\begin{itemize}
176\item Suitable algorithms for the parameter adjustment have to be used (filter techniques instead
177 of classical least-squares).
178\item Reliable data links have to been established (between rover station and a reference station,
179 between receivers and processing center, or between processing center and DGPS correction
180 provider).
181\item Software tools for handling real-time data (Fortran is not the best language for that).
182\item Fast CPUs.
183\end{itemize}
184
185As said above -- GNSS is an interferometric technique. Processing of a single station cannot give
186precise results. However, data of reference station(s) can be replaced by the so-called corrections
187(DGPS corrections, precise-point positioning etc.) These techniques are particularly suited for
188real-time applications because the amount of data being transferred can be considerably reduced.
189
190\end{frame}
191
192%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
193
194\begin{frame}
195\frametitle{Algorithms -- Kalman Filter}
196
197\begin{small}
198
199State vectors $\bmm{x}$ at two subsequent epochs are
200related to each other by the following linear equation:
201\bdm
202\bmm{x}(n) = \bmm{\Phi}\; \bmm{x}(n-1) + \bmm{\Gamma}\;\bmm{w}(n)~,
203\edm
204where $\Phi$ and $\Gamma$ are known matrices and {\em white noise} $\bmm{w}(n)$ is a random
205vector with the following statistical properties:
206\bsea
207E(\bmm{w}) & = & \bmm{0} \\
208E(\bmm{w}(n)\;\bmm{w}^T(m)) & = & \bmm{0} ~~ \mbox{for $m \neq n$} \\
209E(\bmm{w}(n)\;\bmm{w^T}(n)) & = & \bm{Q}_s(n) ~.
210\esea
211
212Observations $\bmm{l}(n)$ and the state vector $\bmm{x}(n)$ are related to
213each other by the linearized {\em observation equations} of form
214\bdm \label{eq:KF:obseqn}
215 \bmm{l}(n) = \bm{A}\;\bmm{x}(n) + \bmm{v}(n) ~ ,
216\edm
217where $\bm{A}$ is a known matrix (the so-called {\em first-design matrix}) and
218$\bmm{v}(n)$ is a vector of random errors with the following properties:
219\bsea\label{eq:KF:resid}
220E(\bmm{v}) & = & \bmm{0} \\
221E(\bmm{v}(n)\;\bmm{v}^T(m)) & = & \bmm{0} ~~ \mbox{for $m \neq n$} \\
222E(\bmm{v}(n)\;\bmm{v^T}(n)) & = & \bm{Q}_l(n) ~.
223\esea
224
225\end{small}
226
227\end{frame}
228
229%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
230
231\begin{frame}
232\frametitle{Classical KF Form}
233
234Minimum Mean Square Error (MMSE) estimate $\widehat{\bmm{x}}(n)$ of vector
235$\bmm{x}(n)$ meets the condition
236$E\left((\bmm{x} - \widehat{\bmm{x}})(\bmm{x} - \widehat{\bmm{x}})^T\right) =
237\mbox{min}$ and is given by
238\begin{subeqnarray}\label{eq:KF:prediction}
239 \widehat{\bmm{x}}^-(n) & = & \bmm{\Phi} \widehat{\bmm{x}}(n-1) \\
240 \bm{Q}^-(n) & = & \bmm{\Phi} \bm{Q}(n-1) \bmm{\Phi}^T +
241 \bmm{\Gamma} \bm{Q}_s(n) \bmm{\Gamma}^T
242\end{subeqnarray}
243\begin{subeqnarray}\label{eq:KF:update}
244 \widehat{\bmm{x}}(n) & = & \widehat{\bmm{x}}^-(n) +
245 \bm{K}\left(\bmm{l} -
246 \bm{A}\widehat{\bmm{x}}(n-1)\right) \\
247 \bm{Q}(n) & = & \bm{Q}^-(n) - \bm{K}\bm{A}\bm{Q}^-(n) ~,
248\end{subeqnarray}
249where
250\bdm \label{eq:KF:KandH}
251 \bm{K} = \bm{Q}^-(n)\bm{A}^T\bm{H}^{-1}, \quad
252 \bm{H} = \bm{Q}_l(n) + \bm{A}\bm{Q}^-(n)\bm{A}^T ~.
253\edm
254Equations (\ref{eq:KF:prediction}) are called {\em prediction},
255equations (\ref{eq:KF:update}) are called {\em update} step of Kalman filter.
256
257\end{frame}
258
259%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
260
261\begin{frame}
262\frametitle{Square-Root Filter} \label{sec:SRF}
263\begin{small}
264Algorithms based on equations (\ref{eq:KF:prediction}) and
265(\ref{eq:KF:update}) may suffer from numerical instabilities that are primarily
266caused by the subtraction in (\ref{eq:KF:update}b). This deficiency may be
267overcome by the so-called {\em square-root} formulation of the Kalman filter
268that is based on the so-called {\em QR-Decomposition}. Assuming the
269Cholesky decompositions
270\be \label{eq:SRF:defsym}
271 \bm{Q}(n) = \bm{S}^{T} \bm{S} , \quad
272 \bm{Q}_l(n) = \bm{S}^T_l \bm{S}_l, \quad
273 \bm{Q}^-(n) = \bm{S}^{-T}\bm{S}^-
274\ee
275we can create the following block matrix and its QR-Decomposition:
276\be \label{eq:SRF:main}
277 \left(\begin{array}{ll}
278 \bm{S}_l & \bm{0} \\
279 \bm{S}^-\bm{A}^T & \bm{S}^-
280 \end{array}\right)
281=
282 N \left(\begin{array}{cc}
283 \bm{X} & \bm{Y} \\
284 \bm{0} & \bm{Z}
285 \end{array}\right) ~ .
286\ee
287It can be easily verified that
288\bsea\label{eq:SRF:HK}
289 \bm{H} & = & \bm{X}^T\bm{X} \\
290 \bm{K}^T & = & \bm{X}^{-1}\bm{Y}\\
291 \bm{S} & = & \bm{Z} \\
292 \bm{Q}(n) & = & \bm{Z}^T\bm{Z} ~ .
293\esea
294State vector $\widehat{\bmm{x}}(n)$ is computed in a usual way using the
295equation (\ref{eq:KF:update}a).
296\end{small}
297\end{frame}
298
299%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
300
301\begin{frame}
302\frametitle{Data Transfer -- NTRIP}
303
304In order to be useful data have to be provided in a well-defined \textcolor{blue}{format}.
305RTCM (Radio Technical Commission for Maritime Services) messages are widely used for GNSS data in
306real-time.
307
308\vspace*{5mm}
309
310In addition to a format the so-called \textcolor{blue}{protocol} has to be defined. Using a given
311protocol the data user communicates with the data provider.
312
313For GNSS data, the so-called \textcolor{blue}{NTRIP} streaming protocol is used.
314\begin{itemize}
315\item NTRIP stands for Networked Transport of RTCM via Internet Protocol.
316\item NTRIP is in principle a layer on top of TCP/IP.
317\item NTRIP has been developed at BKG (together with TU Dortmund).
318\item NTRIP is capable of handling hundreds of data streams simultaneously delivering the data
319to thousands of users.
320\item NTRIP is world-wide accepted (great success of BKG).
321\end{itemize}
322
323\end{frame}
324
325%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
326
327\begin{frame}
328\frametitle{NTRIP}
329
330Efficiency of data transfer using NTRIP is achieved thanks to the GNSS Internet Radio /
331IP-Streaming architecture:
332
333\begin{center}
334\includegraphics[width=0.7\textwidth,angle=0]{ntrip.png}
335\end{center}
336
337\end{frame}
338
339%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
340
341\begin{frame}
342\frametitle{NTRIP Users}
343
344\includegraphics[width=0.5\textwidth,angle=0]{numberRegisteredUsers_1.png}
345\includegraphics[width=0.5\textwidth,angle=0]{activeClients_month_1.png}
346\begin{center}
347\includegraphics[width=0.5\textwidth,angle=0]{casterTransfer_1.png}
348\end{center}
349
350\end{frame}
351
352%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
353
354\begin{frame}
355\frametitle{BKG Ntrip Client (BNC)}
356
357An important reason why NTRIP has been widely accepted is that BKG provided high-quality public
358license software tools for its usage. One of these tools is the so-called \textcolor{blue}{BKG
359Ntrip Client}.
360
361 \begin{itemize}
362 \item BNC source consists currently of approximately 50.000 lines of code
363 \item development started 2005 (LM and Georg Weber)
364 \item BNC uses a few third-party pieces of software (e.g. RTCM decoders/encoders)
365 \item BNC has a good documentation (thanks Georg Weber)
366 \end{itemize}
367
368 \begin{block}{BNC is intended to be}
369 \begin{itemize}
370 \item user-friendly
371 \item cross-platform
372 \item easily modifiable (by students, GNSS beginners)
373 \item useful (at least a little bit ...)
374 \end{itemize}
375 \end{block}
376
377 \begin{block}{BNC is not only an NTRIP client \ldots}
378 \end{block}
379
380\end{frame}
381
382%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
383
384\begin{frame}
385\frametitle{BNC Basic Usage}
386\includegraphics[width=0.6\textwidth,angle=0]{screenshot12.png}
387
388\vspace*{-4cm}
389\hspace*{4cm}
390\includegraphics[width=0.5\textwidth,angle=0]{screenshot24.png}
391\end {frame}
392
393%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
394
395\begin{frame}
396\frametitle{PPP -- Server-Side}
397 \begin{center}
398 \includegraphics[width=0.9\textwidth,angle=0]{bnc_feed.png}
399 \end{center}
400\end{frame}
401
402%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
403
404\begin{frame}
405 \frametitle{Data QC in BNC}
406 \begin{center}
407 \includegraphics[width=0.9\textwidth,angle=0]{bnc_qc2.png}
408 \end{center}
409\end {frame}
410
411%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
412
413\begin{frame}
414 \frametitle{Data QC in BNC}
415 \begin{center}
416 \includegraphics[width=0.9\textwidth,angle=0]{bnc_qc1.png}
417 \end{center}
418\end {frame}
419
420%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
421
422\begin{frame}
423 \frametitle{Precise Point Positioning with PPP}
424 \begin{center}
425 \includegraphics[width=0.9\textwidth,angle=0]{ppp1.png}
426 \end{center}
427\end {frame}
428
429%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
430
431\begin{frame}
432\frametitle{Principles of Precise Point Positioning}
433\framesubtitle{Observation Equations}
434
435The PPP is based on the processing of the ionosphere-free linear combination of phase
436observations
437\be
438L^{ij}_3 = \varrho^{ij} - c\delta^{ij} + T^{ij} + \bar{N}^{ij}_3 ~,
439\ee
440where the ambiguity term is given by
441\be
442\bar{N}^{ij}_3 = N^{ij}_3 - l^{ij}_3
443 = \frac{c\;f_2}{f^2_1-f^2_2}\;(n^{ij}_1-n^{ij}_2) + \lambda_3\;n^{ij}_1 - l^{ij}_3
444\ee
445and (optionally) the ionosphere-free linear combination of code observations
446\be
447P^{ij}_3 = \varrho^{ij} - c\delta^{ij} + T^{ij} + p^{ij}_3 ~,
448\ee
449where the code bias $p^{ij}_3$ is the linear combination of biases
450$p^{ij}_1,p^{ij}_2$
451\end{frame}
452
453%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
454
455\begin{frame}
456\frametitle{Principles of PPP Service}
457
458The server has to provide the orbit corrections and the satellite clock corrections
459$c\delta^{ij}$. That is sufficient for a client processing phase observations only.
460
461Using the code observations on the client-side is not mandatory. After an initial convergence
462period (tens of minutes) there is almost no difference between a phase-only client and the client
463that uses also the code observations. However, correct utilization of accurate code observations
464improves the positioning results during the convergence period.
465
466Client which processes code observations either
467\begin{enumerate}
468\item has to know the value $p^{ij}_3$ (the value must be provided by the server -- the most
469 correct approach), or
470\item has to estimate terms $p^{ij}_3$, or
471\item neglect the bias (de-weight the code observations -- not fully correct).
472\end{enumerate}
473Options (2) and (3) mean that the benefit of using the code observations on the client-side (in
474addition to phase observations) is minor only.
475
476\end{frame}
477
478%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
479
480\begin{frame}
481 \frametitle{PPP Options in BNC}
482 \begin{itemize}
483 \item single station, SPP or PPP
484 \item real-time or post-processing
485 \item processing of code and phase ionosphere-free combinations, GPS,
486 Glonass, and Galileo
487 \end{itemize}
488 \begin{center}
489 \includegraphics[width=0.9\textwidth,angle=0]{ppp_opt1.png} \\[2mm]
490 \includegraphics[width=0.9\textwidth,angle=0]{ppp_opt2.png}
491 \end{center}
492\end {frame}
493
494%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
495
496\begin{frame}
497\frametitle{PPP of Moving Receiver by BNC}
498 \begin{center}
499 \includegraphics[width=0.6\textwidth,angle=0]{screenshot32.png}
500 \end{center}
501\end{frame}
502
503%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
504
505\begin{frame}
506\frametitle{PPP -- Server-Side}
507
508\includegraphics[width=0.8\textwidth,angle=0]{igs_map.png}
509
510\vspace*{-2cm}
511
512\hspace*{2cm}
513\includegraphics[width=0.8\textwidth,angle=0]{bnc_rtnet_flow.png}
514
515\end{frame}
516
517%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
518
519\begin{frame}
520\frametitle{Server-Side -- RTNet (www.gps-solutions.com)}
521\includegraphics[width=0.9\textwidth,angle=0]{GPSS_home.png}
522\end{frame}
523
524%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
525
526\begin{frame}
527\frametitle{Server-Side -- RTNet (www.gps-solutions.com)}
528\includegraphics[width=0.9\textwidth,angle=0]{gpss_team.png}
529\end{frame}
530
531%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
532
533\begin{frame}
534\frametitle{Server-Side -- RTNet (www.gps-solutions.com)}
535\includegraphics[width=0.7\textwidth,angle=0]{rtnet_menu.png}
536
537\vspace*{-3cm}
538\hspace*{4cm}
539\includegraphics[width=0.7\textwidth,angle=0]{rtnet_schema.png}
540\end{frame}
541
542%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
543
544\begin{frame}
545\frametitle{Server-Side -- RTNet (www.gps-solutions.com)}
546\includegraphics[width=0.5\textwidth,angle=0]{eq_monitoring.png}
547\includegraphics[width=0.5\textwidth,angle=0]{tsunami.png}
548\begin{center}
549\includegraphics[width=0.4\textwidth,angle=0]{veripos.png}
550\end{center}
551\end{frame}
552
553%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
554
555\begin{frame}
556\frametitle{PPP -- Server-Side}
557 \begin{center}
558 \includegraphics[width=0.9\textwidth,angle=0]{ac_results.png}
559 \end{center}
560\end{frame}
561
562%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
563
564\begin{frame}
565\frametitle{PPP -- Server-Side}
566 \begin{center}
567 \includegraphics[width=0.9\textwidth,angle=0]{ac_results2.png}
568 \end{center}
569\end{frame}
570
571%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
572
573\begin{frame}
574 \frametitle{Combination using Kalman filtering}
575 The combination is performed in two steps
576 \begin{itemize}
577 \item[1.] The satellite clock corrections that refer to different broadcast
578 messages (different IODs) are modified in such a way that they all refer
579 to common broadcast clock value (common IOD is that of the selected
580 ``master'' analysis center).
581 \item[2.] The corrections are used as pseudo-observations for Kalman filter
582 using the following model (observation equation):
583 \begin{displaymath}
584 c_a^s = c^s + o_a + o_a^s
585 \end{displaymath}
586 where
587 \begin{tabbing}
588 $c_a^s$ ~~ \= is the clock correction for satellite s estimated by \\
589 \> the analysis center a, \\
590 $c^s$ \> is the resulting (combined) clock correction for
591 satellite s, \\
592 $o_a$ \> is the AC-specific offset
593 (common for all satellites), and \\
594 $o_a^s$ \> is the satellite and AC-specific offset.
595 \end{tabbing}
596 \end{itemize}
597 The three types of unknown parameters $c^s$, $o_a$, $o_a^s$ differ in their
598 stochastic properties: the parameters $c^s$ and $o_a$ are considered to be
599 epoch-specific while the satellite and AC-specific offset $o_a^s$ is assumed
600 to be a static parameter.
601\end{frame}
602
603%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
604
605\begin{frame}
606\frametitle{PPP -- Combination of Corrections}
607 \begin{center}
608 \includegraphics[width=0.9\textwidth,angle=0]{combination_1.png}
609 \end{center}
610\end{frame}
611
612%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
613
614\begin{frame}
615\frametitle{PPP -- Combination of Corrections}
616 \begin{center}
617 \includegraphics[width=0.9\textwidth,angle=0]{combination_2.png}
618
619 \includegraphics[width=0.6\textwidth,angle=0]{dailyRMS_GLONASS.png}
620 \end{center}
621\end{frame}
622
623%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
624
625\begin{frame}
626\frametitle{PPP -- Combination of Corrections}
627 \begin{center}
628 \includegraphics[width=0.8\textwidth,angle=0]{combination_3.png}
629 \end{center}
630\end{frame}
631
632%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
633
634\begin{frame}
635\frametitle{PPP -- Estimated Troposphere}
636\includegraphics[width=0.5\textwidth,angle=0]{tropo1.png}
637\includegraphics[width=0.5\textwidth,angle=0]{tropo2.png}
638
639\includegraphics[width=0.5\textwidth,angle=0]{tropo3.png}
640\end{frame}
641
642%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
643
644\begin{frame}
645 \frametitle{PPP with Ambiguity Resolution (PPPAR or PPP-RTK)}
646 For a dual-band GPS receiver, the observation equations may read as
647 \begin{eqnarray*}
648 P^i & = & \varrho^i + c\;\delta - c\;\delta^i + T^i + b_P \\
649 L^i & = & \varrho^i + c\;\delta - c\;\delta^i + T^i + b^i
650 \end{eqnarray*}
651 where
652 \begin{tabbing}
653 $P^i$, $L^i$ ~~~~~~~ \= are the ionosphere-free code and phase measurements, \\
654 $\varrho^i$ \> is the travel distance between the satellite
655 and the receiver, \\
656 $\delta$, $\delta^i$ \> are the receiver and satellite clock errors, \\
657 $T^i$ \> is the tropospheric delay, \\
658 $b_P$ \> is the code bias, and \\
659 $b^i$ \> is the phase bias (including initial
660 phase ambiguity).
661 \end{tabbing}
662 The single-difference bias $b^{ij} = b^i - b^j$ is given by
663 \begin{displaymath}
664 b^{ij} = \displaystyle\frac{\lambda_5-\lambda_3}{2}\;(n_5^{ij} + b_5^{ij})
665 + \lambda_3\;(n_1^{ij} + b_1^{ij})
666 \end{displaymath}
667 where
668 \begin{tabbing}
669 $n_1^{ij}$, $n_5^{ij}$ ~~~~ \= are the narrow-lane and wide-lane integer ambiguities \\
670 $b_1^{ij}$ \> is the narrow-lane (receiver-independent) SD bias \\
671 $b_5^{ij}$ \> is the wide-lane (receiver-independent) SD bias
672 \end{tabbing}
673\end{frame}
674
675%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
676
677\begin{frame}
678 \frametitle{PPPAR Algorithm (cont.)}
679 Receiver-independent single-difference biases $b_1^{ij}$ and $b_5^{ij}$ have
680 to be estimated on the server-side.
681 \begin{itemize}
682 \item Narrow-lane bias $b_1^{ij}$ may be combined with satellite clock
683 corrections $\Longrightarrow$ \textbf{modified satellite clock corrections.}
684 \item Wide-lane bias have to be transmitted from the server to the client
685 (this bias is stable in time and can thus be transmitted in lower rate).
686 \end{itemize}
687
688 On the client-side the biases $b_1^{ij}$ and $b_5^{ij}$ are used as known
689 quantities. It allows fixing the integer ambiguities $n_5^{ij}$ and
690 $n_1^{ij}$. The technique is called Precise Point Positioning with Ambiguity
691 Resolution (PPP~AR) or PPP~RTK, or zero-difference ambiguity
692 fixing (the latter term not fully correct because the ambiguities are
693 actually being fixed on single-difference level).
694\end{frame}
695
696%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
697
698\begin{frame}
699 \frametitle{Performance}
700 \begin{center}
701 \includegraphics[width=0.75\textwidth]{kir0.png}
702 \end{center}
703 \vspace*{-5mm}
704 \begin{block}{Standard deviations (N,E,U)}
705 \vspace*{3mm}
706 \begin{small}
707 \hspace*{2cm}
708 \begin{tabular}{l|ccc|ccc}
709 \mbox{} & \multicolumn{3}{c|}{10-60 min} & \multicolumn{3}{c}{30-60 min} \\
710 float & 0.034 & 0.026 & 0.026 & 0.010 & 0.009 & 0.011 \\
711 fix & 0.007 & 0.003 & 0.016 & 0.007 & 0.003 & 0.012
712 \end{tabular}
713 \end{small}
714 \end{block}
715\end{frame}
716
717%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
718
719\begin{frame}
720 \frametitle{Challenges}
721 There are still both principal and technical problems and challenges:
722 \begin{itemize}
723 \item Principal problems:
724 \begin{itemize}
725 \item Convergence time: PPP~RTK in the form outlined above provides
726 accuracy similar (or even slightly better) to RTK but the convergence
727 time is longer.
728 \item There is a degradation in accuracy with the age of corrections.
729 \item Glonass ambiguity resolution: is it possible to resolve Glonass
730 ambiguities? (yes, it is possible but it implicates introducing new
731 parameters - does it really improve the results?)
732 \item ...
733 \end{itemize}
734 \item Technical problems:
735 \begin{itemize}
736 \item Availability of data in real time (reference network, high-precision
737 satellite orbits).
738 \item Very high CPU requirements on the server-side.
739 \item Solution robustness on the server-side
740 (problems with reliable DD ambiguity resolution).
741 \item ...
742 \end{itemize}
743 \end{itemize}
744\end{frame}
745
746%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
747
748\begin{frame}
749 \frametitle{Challenges (cont.)}
750 \begin{block}{Longer convergence time}
751 In case of a standard RTK the very short convergence time is being achieved
752 thanks to the combined DD ambiguity resolution on both $L_1$ and $L_2$ when
753 the differential ionospheric bias can either be neglected (short baselines)
754 or its influence is mitigated (stochastic ionosphere estimation with
755 constraints).
756
757 On the contrary, the outlined PPP~RTK algorithm is in principle based on
758 processing single (ionosphere-free) linear combination and resolving only
759 one set of (narrow-lane) initial phase ambiguities.
760 \end{block}
761 \begin{block}{Possible solutions}
762 \begin{itemize}
763 \item third carrier
764 \item multiple GNSS (Glonass ambiguity resolution?)
765 \item processing original carriers (instead of ionosphere-free linear
766 combination) and modeling the ionosphere?
767 \item ?
768 \end{itemize}
769 \end{block}
770\end{frame}
771
772%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
773
774\begin{frame}
775 \frametitle{Challenges (cont.)}
776 \begin{block}{Age of corrections 0 s}
777 \begin{center}
778 \includegraphics[width=0.6\textwidth]{age1.png}
779 \end{center}
780 \end{block}
781\end{frame}
782
783%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
784
785\begin{frame}
786 \frametitle{Challenges (cont.)}
787 \begin{block}{Age of corrections up to 35 s}
788 \begin{center}
789 \includegraphics[width=0.6\textwidth]{age2.png}
790 \end{center}
791 \end{block}
792\end{frame}
793
794%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
795
796\begin{frame}
797 \frametitle{Real-Time Data Availability}
798 \framesubtitle{IGS network: very good global coverage:}
799 \vspace*{-5.5cm}
800 \begin{center}
801 \includegraphics[width=0.9\textwidth]{map.pdf}
802 \end{center}
803\end{frame}
804
805%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
806
807\begin{frame}
808 \frametitle{Real-Time Data Availability (cont.)}
809 \begin{tabular}{cc}
810 \includegraphics[width=0.4\textwidth]{100A_lat.png} &
811 \includegraphics[width=0.4\textwidth]{101A_lat.png} \\
812 \includegraphics[width=0.4\textwidth]{102A_lat.png} &
813 \includegraphics[width=0.4\textwidth]{104A_lat.png}
814 \end{tabular}
815
816 Gaps in reference network data may degrade the PPP~RTK server performance
817 considerably!
818\end{frame}
819
820%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
821
822\begin{frame}
823 \frametitle{Technical issues}
824 \begin{block}{CPU-requirements on the server-side}
825 Processing a global reference network is a very CPU-intensive
826 task. Numerically stable forms of the Kalman filter (square-root, UDU
827 factorization etc.) require very fast hardware.
828
829 Possible solutions:
830 \begin{itemize}
831 \item Processing optimization (estimating various kinds of parameters in
832 different rates)
833 \item Parallel processing
834 \item Advanced hardware (GPS Solutions uses GPU-accelerated library)
835 \end{itemize}
836 \end{block}
837 \begin{block}{Reliable DD ambiguity resolution on the server-side}
838 Reliable double-difference ambiguity resolution on the server-side remains
839 the crucial issue of the PPP~RTK technique.
840 \end{block}
841 \begin{block}{Dissemination of PPP~RTK corrections}
842 \begin{itemize}
843 \item data links
844 \item formats (standardization?)
845 \item optimization of correction rates (bandwidth)
846 \end{itemize}
847 \end{block}
848\end{frame}
849
850%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
851
852\begin{frame}
853 \frametitle{Satellite orbits}
854
855 Predicted part of the IGS ultra-rapid orbits (available in real-time) is
856 sometimes not sufficient for the processing of a global reference network
857 (with narrow-lane ambiguity resolution). We have been forced to implement
858 the real-time orbit determination capability in our main processing tool
859 RTNet (Real-Time Network software).
860 \begin{center}
861 \includegraphics[width=0.75\textwidth]{rtnet_pod.png}
862 \end{center}
863\end{frame}
864
865%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
866
867\begin{frame}
868 \frametitle{Regional versus global PPP~RTK services}
869 Currently we are routinely running both regional and global PPP~RTK service
870 demonstrators in real-time (some of the results will be shown below).
871 \begin{itemize}
872 \item in principal there is no difference between a global and regional
873 service as far as the data processing, algorithms etc. is concerned
874 \item global PPP~RTK service has at least the following two advantages
875 \begin{itemize}
876 \item[1.] a single correction stream can serve all users
877 \item[2.] all satellites are tracked permanently (helps ambiguity
878 resolution)
879 \end{itemize}
880 \item global PPP~RTK service is much more challenging (data availability,
881 CPU-requirements on the server-side, DD ambiguity resolution on long
882 baselines, the highest requirements for the accuracy of the satellite
883 orbits)
884 \end{itemize}
885
886\end{frame}
887
888%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
889
890\begin{frame}
891 \frametitle{Services monitoring}
892 Reliable, production-quality PPP~RTK service requires sophisticated
893 monitoring tools.
894 \begin{tabular}{cc}
895 \includegraphics[width=0.6\textwidth]{monitor1.png} & \\[-1.5cm]
896 & \hspace*{-3cm} \includegraphics[width=0.6\textwidth]{monitor2.png}
897 \end{tabular}
898
899\end{frame}
900
901%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
902
903\begin{frame}
904 \frametitle{Results}
905 \includegraphics[width=0.6\textwidth]{tsunami.pdf}
906
907\vspace*{-5mm}
908\hspace*{4cm}
909 \includegraphics[width=0.6\textwidth]{301C_RAR_POS_2014-01-22.png}
910\end{frame}
911
912%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
913
914\begin{frame}
915 \frametitle{Results (cont.)}
916 \begin{center}
917 \includegraphics[width=0.9\textwidth]{nrcan.png}
918 \end{center}
919\end{frame}
920
921%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
922
923\begin{frame}
924 \frametitle{New Project - GNSS Center}
925\hspace*{-5mm}
926 \includegraphics[height=0.8\textheight]{gnsscenter.png}
927\end{frame}
928
929\end{document}
Note: See TracBrowser for help on using the repository browser.