source: ntrip/trunk/BNS/bnshelp.html@ 1873

Last change on this file since 1873 was 1873, checked in by weber, 15 years ago

* empty log message *

File size: 41.8 KB
Line 
1<h3>BKG Ntrip State Space Server (BNS) Version 1.1</h3>
2
3<p>
4The BKG Ntrip State Space Server (BNS) is a program for transforming GNSS satellite clocks and orbits into corrections to Broadcast Ephemeris. These corrections are then encode in a (premature) RTCM Version 3.x format and uploaded to NTRIP broadcasters like <u>http://www.euref-ip.net/home</u> or <u>http://www.igs-ip.net/home.</u> BNS is created as a tool for service providers with real-time access to a network of continentally or globally distributed GNSS reference stations.
5</p>
6
7<p>
8BNS has been developed for the Federal Agency for Cartography and Geodesy (BKG) within the framework of EUREF's Real-time GNSS Project (EUREF-IP, IP for Internet Protocol) and the Real-Time IGS Pilot Project (RTIGS PP).
9</p>
10
11<p>
12BNS is released under the GNU General Public License (GPL). Binaries for BNS are available for Windows, 32-bit and 64-bit Linux (compiled under -m32 32-bit compatibility mode), Solaris, and Mac OS X systems. The MinGW compiler (Version 5.3.1) is used to produce the Windows binary. It is likely that BNS can be compiled on other systems where a GNU compiler and Qt Version 4.4.3 are available.
13</p>
14
15<p>
16Before running, please ensure that you have installed the latest version available. This can be obtained from <u>http://igs.bkg.bund.de/index_ntrip_down.htm</u>. We are continuously working on the program and would appreciate any comments, suggestions, or bug reports. They can be emailed to [euref-ip@bkg.bund.de] or [igs-ip@bkg.bund.de].
17</p>
18
19<h3>Contents</h3>
20<p>
21<h4>
22<a href=#purpose>1. Purpose</a><br>
23<a href=#function>2. Functioning</a><br>
24<a href=#resources>3. Modes & Resources</a><br>
25<a href=#options>4. Options</a><br>
26<a href=#limits>5. Limitations</a><br>
27<a href=#authors>6. Authors</a><br>
28<a href=#annex>7. Annex</a><br>
29</h4>
30</p>
31
32<p><a name="purpose"><h3>1. Purpose</h3></p>
33<p>
34Differential GNSS and RTK operation using RTCM streams is currently based on corrections and/or raw measurements from single or multiple reference stations. This approach to differential positioning is using 'observation space' information. The representation with the RTCM standard can be called 'Observation Space Representation' (OSR).
35</p>
36<p>
37An alternative to the observation space approach is the so called 'sate space' approach. The principle here is to provide information on individual error sources and can be called 'State Space Representation' (SSR). For a rover position, state space information concerning precise satellite clocks, orbits, ionosphere, troposphere et cetera can be converted into observation space and used to correct the rover observables for more accurate positioning. Alternatively the state information can directly be used in the rover's processing or adjustment model.
38</p>
39
40<p>In order to support applications following the state space approach, the purpose of BNS is to
41
42<ul>
43<li>read GNSS clocks and orbits in SP3 format from an IP port. They can be produced by a real-time GNSS engine such as RTNet and should be referenced to the IGS Earth-Centered-Earth-Fixed (ECEF) reference system.</li>
44<li>read GNSS Broadcast Ephemeris in RINEX Navigation format from an IP port. This information can be provided in real-time by the 'BKG Ntrip Client' (BNC) program.</li>
45<li>convert the IGS Earth-Centered-Earth-Fixed clocks and and orbits into corrections to Broadcast Ephemeris with radial, along-track and cross-track components.</li>
46<li>refer the clock and orbit corretions to a specific reference system.</li>
47<li>upload the clock and orbit corrections as an RTCM Version 3.x stream to an NTRIP Broadcaster.</li>
48<li>log the Broadcast Ephemeris clock corrections as files in Clock RINEX files.</li>
49<li>log the Broadcast Ephemeris orbit corrections as files in SP3 files.</li>
50</ul>
51</p>
52
53<p><a name="function"><h3>2. Functioning</h3></p>
54<p>
55The procedures taken by BNS to generate clock and orbit corrections to Broadcast Ephemeris in radial, along-track and cross-track components are as follow:
56</p>
57<p>
58<ul>
59<li>Continuously receive up-to-date Broadcast Ephemeris carrying approximate orbits and clocks for all satellites. Receive them in RINEX Version 3 Navigation file format. Read new Broadcast Ephemeris immediately whenever they become available. Tools like the 'BKG Ntrip Client' (BNC) provide this information.</li>
60</ul>
61</p>
62<p>
63Then, epoch by epoch:
64<ul>
65<li>Continuously receive the best available clock and orbit estimates for all satellites in X,Y,Z Earth-Centered-Earth-Fixed IGS05 reference system. Receive them every epoch in SP3 format as provided by a real-time GNSS engine such as RTNet.</li>
66<li>Calculate X,Y,Z coordinates from Broadcast Ephemeris orbits.</li>
67<li>Calculate differences dX,dY,dZ between Broadcast Ephemeris and IGS05 orbits.</li>
68<li>Tranform these differences into radial, along-track and cross-track corrections to Broadcast Ephemeris orbits.</li>
69<li>Calculate corrections to Broadcast Ephemeris clocks as differences between Broadcast Ephemeris and IGS05 clocks.</li>
70<li>Encode Broadcast Ephemeris clock and orbit corrections in RTCM Version 3.x format.</li>
71<li>Upload corrections stream to NTRIP Broadcaster.</li>
72</ul>
73</p>
74<p>
75Although it is not compulsory, because BNS puts a significant load on the communication link, it is recommended that BNS, the Broadcast Ephemeris server (i.e. BNC), and the server providing orbits and clocks (i.e. RTNet) are run on the same host.
76</p>
77
78<p><a name="resources"><h3>3. Modes & Resources</h3></p>
79<p>
80Apart from its regular window mode, BNS can be run as a background job in a 'no window' mode using processing options from a previously saved configuration.
81</p>
82<p>
83BNS requires access to the Internet with a minimum of about 1 kbits/sec per stream depending on the number of GNSS systems. You need to make sure that the connection can sustain the required bandwidth.
84</p>
85<p>
86It requires the clock of the host computer to be properly synchronized.
87</p>
88
89<p><a name="options"><h3>4. Options</h3></p>
90
91<p>
92This section describes BNS's top menu bar, its processing options and its bottom menu bar.
93</p>
94
95<p>
96The usual handling of BNS is that you first select severs for 'RINEX Ephemeris' and 'Clocks & Orbits'. You then select an NTRIP broadcaster for stream upload ('Broadcast Corrections') before you start the program ('Start'). Records of BNS's activities are shown in the 'Logs' canvas in the middle of the main window.
97</p>
98
99<p>
100As a default, configuration files for running BNS on Unix/Linux/Mac systems are saved in directory '${HOME}/.config/BKG'. On Windows systems, they are typically saved in directory 'C:/Documents and Settings/Username/.config/BKG'. The default configuration file name is 'BNS.ini'.
101</p>
102
103<p>
104The default file name 'BNS.ini' can be changed and the file contents can easily be edited. On graphical user interfaces it is possible to Drag & Drop a configuration file icon to start BNS. See annexed 'Configuration Example' for a complete set of configuration options.
105</p>
106
107<p>
1084.1. <a href=#topmenu>Top Menu Bar</a><br>
1094.1.1 <a href=#file>File</a><br>
1104.1.2 <a href=#help>Help</a><br>
1114.2. <a href=#proxy>Proxy</a><br>
1124.3. <a href=#general>General</a><br>
113&nbsp; &nbsp; &nbsp; 4.3.1. <a href=#logfile>Logfile</a><br>
114&nbsp; &nbsp; &nbsp; 4.3.2. <a href=#appfile>Append Files</a><br>
115&nbsp; &nbsp; &nbsp; 4.3.3. <a href=#genstart>Auto Start</a><br>
1164.4. <a href=#eph>RINEX Ephemeris</a><br>
117&nbsp; &nbsp; &nbsp; 4.4.1. <a href=#ephserver>Host & Port</a><br>
118&nbsp; &nbsp; &nbsp; 4.4.2. <a href=#ephsave>Save</a><br>
1194.5. <a href=#co>Clocks & Orbits</a><br>
120&nbsp; &nbsp; &nbsp; 4.5.1. <a href=#coport>Listening Port</a><br>
121&nbsp; &nbsp; &nbsp; 4.5.2. <a href=#cosave>Save</a><br>
1224.6. <a href=#ephc>Broadcast Corrections</a><br>
123&nbsp; &nbsp; &nbsp; 4.6.1. <a href=#ephcserver>Host & Port</a><br>
124&nbsp; &nbsp; &nbsp; 4.6.2. <a href=#ephcmount>Mountpoint & Password</a><br>
125&nbsp; &nbsp; &nbsp; 4.6.3. <a href=#ephcsys>System</a><br>
126&nbsp; &nbsp; &nbsp; 4.6.4. <a href=#ephcsave>Save</a><br>
127&nbsp; &nbsp; &nbsp; 4.6.5. <a href=#ephbec>Broadcast Clocks</a><br>
1284.7. <a href=#brdc>Broadcast Ephemeris</a><br>
129&nbsp; &nbsp; &nbsp; 4.7.1. <a href=#brdcserver>Host & Port</a><br>
130&nbsp; &nbsp; &nbsp; 4.7.2. <a href=#brdcmount>Mountpoint & Password</a><br>
131&nbsp; &nbsp; &nbsp; 4.7.3. <a href=#brdcsmpl>Sampling</a><br>
1324.8. <a href=#clkrnx>RINEX Clocks</a><br>
133&nbsp; &nbsp; &nbsp; 4.8.1. <a href=#clkdir>Directory</a><br>
134&nbsp; &nbsp; &nbsp; 4.8.2. <a href=#clkint>Interval & Sampling</a><br>
1354.9. <a href=#orb>SP3 Orbits</a><br>
136&nbsp; &nbsp; &nbsp; 4.9.1. <a href=#orbdir>Directory</a><br>
137&nbsp; &nbsp; &nbsp; 4.9.2. <a href=#orbint>Interval & Sampling</a><br>
1384.10. <a href=#bottom>Bottom Menu Bar</a><br>
1394.10.1 <a href=#start>Start</a><br>
1404.10.2 <a href=#stop>Stop</a><br>
1414.11. <a href=#cmd>Command Line Options</a><br>
1424.11.1 <a href=#nw>No Window</a><br>
1434.11.2 <a href=#conffile>Configuration File</a>
144</p>
145
146<p><a name="topmenu"><h4>4.1. Top Menu Bar</h4></p>
147<p>
148The top menu bar allows to select a font for the BNS windows, save configured options or quit
149 the program execution. It also provides access to a program documentation.
150</p>
151
152<p><a name="file"><h4>4.1.1 File</h4></p>
153
154<p>
155The 'File' button lets you
156<ul>
157<li>
158select an appropriate font.<br>
159Use smaller font size if the BNS main window extends beyond the size of your screen.
160</li>
161<li> save selected options in configuration file.
162</li>
163<li>
164quit the BNS program.
165</li>
166</ul>
167</p>
168
169<p><a name="help"><h4>4.1.2 Help</h4></p>
170
171<p>
172The 'Help' button provides access to
173<ul>
174<li>
175help contents.<br>
176You may keep the 'Help Contents' window open while configuring BNS.
177</li>
178<li>
179a 'Flow Chart' showing BNS linked to tools like BNC and a real-time GNSS engine such as RTNet.
180</li>
181<li>
182general information about BNS.<br>
183Close the 'About BNS' window to continue working with BNS.
184</li>
185</ul>
186</p>
187<p>
188BNS comes with a help system providing online information about its functionality and usage. Short descriptions are available for any widget. Focus to the relevant widget and press Shift+F1 to request help information. A help text will appear immediately; it disappears as soon as the focus is shifted to something else. The dialogs on some operating systems may provide a "?" button that users can click; they then click the relevant widget to pop up the help text.
189</p>
190
191<p><a name="proxy"><h4>4.2. Proxy - for usage in a protected LAN</h4></p>
192
193<p>
194If you are running BNS within a protected Local Area Network (LAN), you might need to use a proxy server to access the Internet. Enter your proxy server IP and port number in case one is operated in front of BNS. If you don't know the address and port of your proxy server, check the proxy server settings in your Internet browser or ask your network administrator.
195</p>
196<p>
197Note that IP streaming is often not allowed in a LAN. In this case you need to ask your network administrator for an appropriate modification of the local security policy or for the installation of a TCP relay to the NTRIP Casters. If these are not possible, you might need to run BNS outside your LAN on a host that has unobstructed connection to the Internet.
198</p>
199<p><a name="general"><h4>4.3. General Options</h4></p>
200<p>
201The following describes general settings for BNC's logfile, file handling and auto-start.
202</p>
203
204<p><a name="logfile"><h4>4.3.1 Logfile - optional</h4></p>
205<p>
206Records of BNS's activities are shown in the Log section on the bottom of the main window. These logs can be saved into a file when a valid path is specified in the 'Log (full path)' field. The message log covers the communication status between BNS and the NTRIP broadcaster as well as problems that may occur in the communication link, stream availability, stream delay, stream conversion etc. All times are given in UTC. The default value for 'Log (full path)' is an empty option field, meaning that BNS logs will not saved into a file.
207</p>
208
209<p><a name="appfile"><h4>4.3.2 Append Files</h4></p>
210<p>
211When BNS is started, new files are created by default and any existing files with the same name will be overwritten. However, users might want to append existing files following a restart of BNS, a system crash or when BNS had crashed. Tick 'Append files' to continue with existing files and keep what has been recorded so far. Note that option 'Append files' affects all types of files created by BNS.
212</p>
213
214<p><a name="genstart"><h4>4.3.3 Auto Start - optional</h4></p>
215<p>
216You may like to auto-start BNS at startup time in window mode with preassigned configuration options. This may be required i.e. immediately after booting your system. Tick 'Autostart' to supersede the usage of the 'Start' button. Make sure that you maintain a link to BNS for that in your Autostart directory (Windows systems) or call BNS in a script below directory /etc/init.d (Unix/Linux/Mac systems).
217</p>
218
219<p><a name="eph"><h4>4.4. RINEX Ephemeris</h4></p>
220<p>
221BNS requires GNSS Broadcast Ephemeris in RINEX Version 3 Navigation file format from an IP address and port. This information can be provided in real-time by the 'BKG Ntrip Client' (BNC) program. Note that whenever a new set of Broadcast Ephemeris becomes available, BNS needs it immediately.
222</p>
223
224<p>
225The following is an example log of Broadcast Ephemeris records in RINEX Version 3 Navigation file format for satellite GPS PRN32 and GLONASS PRN04:
226</p>
227
228<p>
229<pre>
230G32 2008 07 22 12 00 00 3.08818183839e-04 2.72848410532e-12 0.00000000000e+00
231 1.10000000000e+01 -4.00312500000e+01 4.63269297026e-09 9.74027926504e-01
232 -2.19419598579e-06 1.39143558918e-02 8.25151801109e-06 5.15381674576e+03
233 2.16000000000e+05 -8.56816768646e-08 -3.26801342873e-02 -2.94297933578e-07
234 9.68688494953e-01 2.30468750000e+02 -1.30607654294e+00 -8.26105839196e-09
235 -3.62872257943e-10 1.00000000000e+00 1.48900000000e+03 0.00000000000e+00
236 2.00000000000e+00 0.00000000000e+00 -2.79396772385e-09 1.10000000000e+01
237 0.00000000000e+00 0.00000000000e+00
238R04 2008 07 22 08 15 14 4.76110726595e-05 0.00000000000e+00 2.88600000000e+04
239 -1.76267827148e+04 -4.64202880859e-01 1.86264514923e-09 0.00000000000e+00
240 -1.79631489258e+04 -3.41343879700e-01 -2.79396772385e-09 6.00000000000e+00
241 -4.20270556641e+03 3.50097942352e+00 0.00000000000e+00 0.00000000000e+00
242</pre>
243</p>
244
245<p><a name="ephserver"><h4>4.4.1 Host & Port - mandatory</h4></p>
246<p>
247Enter the IP address and port number of a Broadcast Ephemeris server like BNC to establish a persistent socket connection, see section 'Flow Chart' under 'Help' for socket communication details. If BNS runs on the same host as BNC, 127.0.0.1 should be used as the server's IP address. Make sure that this server is up and running before you start BNS.
248</p>
249
250<p><a name="ephsave"><h4>4.4.2 Save - optional</h4></p>
251</p>
252Specify the full path to a file where received Broadcast Ephemeris will be logged. Beware that the size of this file can rapidly increase. Default is an empty option field meaning that logging is disabled.
253</p>
254
255<p><a name="co"><h4>4.5. Clocks & Orbits</h4></p>
256<p>
257BNS requires GNSS clocks and orbits in the IGS Earth-Centered-Earth-Fixed (ECEF) reference system in SP3 format. They can be provided by a real-time GNSS engine such as RTNet. The sampling rate should not be much greater than 10 sec. Note that otherwise in IP streaming involved tools on the NTRIP Broadcaster or client side may respond with a timeout.
258</p>
259
260<p>
261Below you find an example of precise clocks and orbits coming in SP3 format from a real-time GNSS engine. Each epoch starts with an asterisk character followed by GPS Week, Second in GPS Week and Number of satellites. Subsequent records provide the following set of parameters for each satellite:
262</p>
263
264<p>
265<ul>
266<li>GNSS Indicator and Satellite Vehicle Pseudo Random Number</li>
267<li>X,Y,Z coordinates in Earth-Centered-Earth-Fixed system [km]</li>
268<li>Satellite clock error [microsecond]</li>
269</ul>
270</p>
271
272</p>
273<p>
274<pre>
275* 2008 11 15 23 9 40.00000000
276PG02 9913.526202 -14009.502013 20043.508402 172.954389
277PG04 23093.835904 -6682.421653 11570.857634 -233.598390
278PG07 24249.710621 7319.754680 8146.397178 23.216940
279PG08 26390.024445 40.546316 -4908.638575 -178.106488
280PG10 1835.245663 -21440.492626 15205.319419 -7.272325
281PG13 12906.569448 6704.608105 22108.581216 277.382794
282PG16 -6605.961090 17147.164247 19156.319313 95.078459
283PG20 13676.316680 22650.428992 2457.051428 98.981972
284PG23 6709.764296 15204.810711 20604.601368 380.096453
285PG25 19695.705366 9866.220333 15065.609012 26.781926
286PG27 25598.219004 4571.609372 6357.551439 0.304345
287PG29 -12376.531693 -8988.235685 21818.571434 -29.839454
288PR04 9918.187580 23513.478040 319.847487 151.558351
289PR06 8858.433630 -7341.610546 22646.535467 -244.283462
290PR07 -2285.074648 -21548.431780 13471.401525 -122.300100
291PR14 -4723.060343 10040.375495 22946.780676 -113.677871
292PR15 14469.798068 10358.339867 18230.729298 79.645569
293PR20 17648.744681 -16698.956975 -7876.252525 -62.588294
294PR21 10448.514425 -21096.368284 9681.207096 -122.789091
295PR22 -2707.192952 -13243.085608 21689.194398 -170.976408
296PR23 -14575.573714 2817.925995 20728.130339 -263.187906
297</pre>
298</p>
299
300<p><a name="coport"><h4>4.5.1 Listening Port - mandatory</h4></p>
301<p>
302BNS is listening at an IP port for incoming GNSS clocks and orbits in SP3 format. Enter the respective IP port number to setup a server socket for incoming data, see section 'Flow Chart' under 'Help' for socket communication details. Make sure that the software providing clocks and orbits is up and running before you start BNS.
303</p>
304
305<p><a name="cosave"><h4>4.5.2 Save - optional</h4></p>
306<p>
307Specify the full path to a file where received clocks and orbits from a real-time engine will be logged. Beware that the size of this file can rapidly increase. Default is an empty option field meaning that logging is disabled.
308</p>
309
310<p><a name="ephc"><h4>4.6. Broadcast Corrections</h4></p>
311<p>
312BNS can upload the resulting stream(s) of clock and orbit corrections to Broadcast Ephemeris to an NTRIP Broadcaster. Both EUREF and IGS operate an NTRIP broadcaster at <u>http://www.euref-ip.net/home</u> and <u>http://www.igs-ip.net/home</u> which can be used for stream upload. The stream's format is RTCM Version 3.x.
313</p>
314<p>
315BNS allows to configure two Broadcast Corrections streams refering do different reference systems for upload to different NTRIP broadcasters. You may use this functionality for parallel support of a backup NTRIP broadcaster or for simultaneous support of two reference systems.
316</p>
317
318<p>
319When using clocks from Broadcast Ephemeris (with or without applied corrections) or clocks from SP3 files, it may be important to understand that they are not corrected for the 2nd-order relativistic effect. The 2nd-order relativistic effect is a priodic time correction defined as -2 (R * V) / c^2 and includes the scalar product of satallite position and velocity divided by the speed of light raised to the second power.
320</p>
321
322<p><a name="ephcserver"><h4>4.6.1 Host & Port - optional</h4></p>
323<p>
324Specify the 'Host' IP name or number of an NTRIP Broadcaster to upload the stream. An empty option field means that you don't want to upload corrections to Broadcast Ephemeris.
325</p>
326<p>
327Enter the NTRIP Caster's IP 'Port' number for stream upload. Note that NTRIP Casters are often configured to provide access on more than one port, usually port 80 and 2101. If you experience communication problems on port 80, you should try to use the alternative port(s).
328</p>
329
330<p><a name="ephcmount"><h4>4.6.2 Mountpoint & Password - mandatory if 'Host' is set</h4></p>
331<p>
332Each stream on an NTRIP Caster is defined using a unique source ID called mountpoint. An NTRIP Server like BNS uploads a stream to the Caster by referring to a dedicated mountpoint that has been set by the Caster operator. Specify here the mountpoint based on the details you received for your stream from the operator. It is often a four character ID (capital letters) plus an integer number.
333<p>
334</p>
335In NTRIP Version 1.0 stream upload may be protected through an upload 'Password'. Enter the password you received from the Caster operator along with the mountpoint(s).
336</p>
337
338<p><a name="ephcsys"><h4>4.6.3 System - mandatory if 'Host' is set</h4></p>
339<p>
340BNS refers its clock and orbit corrections to a specific reference system. Available options are
341<p>
342<ul>
343<li>IGS05 which stands for the GNSS-based IGS realization of the International Terrestrial Reference Frame 2005 (ITRF2005), and</li>
344<li>ETRF2000 which stands for the European Terestrial Reference Frame 2000 adopted by EUREF, and</li>
345<li>'Custom' which allows a transformation of Broadcast Corrections from the IGS05 system to any other system through specifying up to 14 Helmert Transformation Parameters.</li>
346</ul>
347</p>
348
349<p>
350<u>IGS05:</u> As the clocks and orbits coming from real-time GNSS engine are expected to be in the IGS05 system, no transformation is carried out if this option is selected.
351</p>
352<p>
353<u>ETRF2000:</u> The formulars for the transformation 'ITRF2005->ETRF2000' are taken from 'Claude Boucher and Zuheir Altamimi 2008: Specifications for reference frame fixing in the analysis of EUREF GPS campaign', see <u>http://etrs89.ensg.ign.fr/memo-V7.pdf</u>. The following 14 Helmert Transformation Parameters were introduced:
354</p>
355<p>
356<pre>
357Translation in X at epoch To: 0.0541 m
358Translation in Y at epoch To: 0.0502 m
359Translation in Z at epoch To: -0.0538 m
360Translation rate in X: -0.0002 m/y
361Translation rate in Y: 0.0001 m/y
362Translation rate in Z: -0.0018 m/y
363Rotation in X at epoch To: 0.891 mas
364Rotation in Y at epoch To: 5.390 mas
365Rotation in Z at epoch To: -8.712 mas
366Rotation rate in X: 0.081 mas/y
367Rotation rate in Y: 0.490 mas/y
368Rotation rate in Z: -0.792 mas/y
369Scale at epoch To : 0.00000000040
370Scale rate: 0.00000000008 /y
371To: 2000.0
372</pre>
373</p>
374<p>
375<u>Custom:</u> The default numbers shown as examples are those for a transformation from ITRF2005 to ETRF2000'.
376</p>
377
378
379<p><a name="ephcsave"><h4>4.6.4 Save - optional</h4></p>
380<p>
381The clock and orbit corrections streamed by BNS to the NTRIP Caster can be logged locally. Specify a full 'Save stream' path here to save this information to a local file. Default value for 'Save stream' is an empty option field, meaning that logging is disabled.
382</p>
383<p>
384The file is in plain ASCII format comprising records containing the following set of parameters:
385</p>
386
387<p>
388<ul>
389<li>GPS Week</li>
390<li>Second in GPS Week</li>
391<li>GNSS Indicator and Satellite Vehicle Pseudo Random Number</li>
392<li>IOD referring to Broadcast Ephemeris set</li>
393<li>Clock Correction to Broadcast Ephemeris [m]</li>
394<li>Radial Component of Orbit Correction to Broadcast Ephemeris [m]</li>
395<li>Along-track Component of Orbit Correction to Broadcast Ephemeris [m]</li>
396<li>Cross-track Component of Orbit Correction to Broadcast Ephemeris [m]</li>
397</ul>
398</p>
399<p>
400The following is an example file contents based on combined orbit and clock corrections for GPS and GLONASS carried in RTCM Version 3.x message Type 1060 and 1066:
401</p>
402<p>
403<pre>
4041489 325606.0 G31 18 -1.021 0.110 -1.308 -0.120
4051489 412006.0 R10 18 7.342 1.393 4.858 -2.634
4061489 412006.0 R19 18 4.696 2.358 1.707 -2.907
407...
4081489 325607.0 G30 80 6.022 0.591 -0.318 0.022
4091489 325607.0 G31 18 -1.022 0.110 -1.308 -0.120
4101489 412007.0 R10 18 7.341 1.390 4.860 -2.636
4111489 412007.0 R19 18 4.698 2.356 1.706 -2.906
412...
413</pre>
414</p>
415
416<p><a name="ephbec"><h4>4.6.5 Broadcast Clocks - optional</h4></p>
417<p>
418Tick 'Broadcast clocks" to ignore incoming clock estimates and send broadcast clocks instead of broadcast clock corrections.</p><p>This option is implemented to enable comparison with IGS post processing products. For that these clocks will not be corrected for the 2nd order relativistic effect.
419</p>
420
421<p><a name="brdc"><h4>4.7. Broadcast Ephemeris</h4></p>
422<p>
423BNS can upload a stream carrying Broadcast Ephemeris in RTCM Version 3 format to an NTRIP Caster.
424</p>
425
426<p><a name="brdcserver"><h4>4.7.1 Host & Port - optional</h4></p>
427<p>
428Specify the 'Host' IP name or number of an NTRIP Broadcaster to upload the stream. An empty option field means that you don't want to upload Broadcast Ephemeris.
429</p>
430<p>
431Enter the NTRIP Caster's IP 'Port' number for stream upload. Note that NTRIP Casters are often configured to provide access on more than one port, usually port 80 and 2101. If you experience communication problems on port 80, you should try to use the alternative port(s).
432</p>
433
434<p><a name="brdcmount"><h4>4.7.2 Mountpoint & Password - mandatory if 'Host' is set</h4></p>
435<p>
436Each stream on an NTRIP Caster is defined using a unique source ID called mountpoint. An NTRIP Server like BNS uploads a stream to the Caster by referring to a dedicated mountpoint that has been set by the Caster operator. Specify here the mountpoint based on the details you received for your stream from the operator. It is often a four character ID (capital letters) plus an integer number.
437</p>
438
439<p><a name="brdcsmpl"><h4>4.7.3 Sampling - mandatory if 'Host' is set</h4></p>
440Select the Broadcast Ephemeris sampling interval in seconds. Defaut is '5' meaning that a complete set of Broadcast Ephemeris is uploaded every 5 seconds.
441</p>
442
443<p><a name="clkrnx"><h4>4.8. RINEX Clocks</h4></p>
444<p>
445The clock corrections generated by BNS can be logged separately in Clock RINEX format. The file naming follows the RINEX convention.
446<p>
447
448</p>
449Note that clocks in the Clock RINEX files are not corrected for the 2nd-order relativistic effect.
450</p>
451
452<p><a name="clkdir"><h4>4.8.1 Directory - optional</h4></p>
453<p>
454Here you can specify the path to where the Clock RINEX files will be stored. If the specified directory does not exist, BNS will not create Clock RINEX files. Default value for 'Directory' is an empty option field, meaning that logging of Clock RINEX files is disabled.
455</p>
456
457<p><a name="clkint"><h4>4.8.2 Interval & Sampling - mandatory if 'Directory' is set</h4></p>
458<p>
459Select the length of the Clock RINEX file generated. The default value is 1 day.
460</p>
461
462<p>
463Select the Clock RINEX sampling interval in seconds. A value of zero '0' tells BNS to store all received epochs into Clock RINEX. This is the default value.
464</p>
465
466<p><a name="orb"><h4>4.9. SP3 Orbits</h4></p>
467<p>
468The orbit corrections generated by BNS can be logged separately in SP3 Orbit files. The file naming follows the IGS convention.
469</p>
470</p>
471Note that clocks in the SP3 Orbit files are not corrected for the 2nd-order relativistic effect.
472</p>
473
474<p><a name="orbdir"><h4>4.9.1 Directory - optional</h4></p>
475<p>
476Here you can specify the path to where the SP3 Orbit files will be stored. If the specified directory does not exist, BNS will not create SP3 Orbit files. Default value for 'Directory' is an empty option field, meaning that logging of SP3 Orbit files is disabled.
477</p>
478
479<p><a name="orbint"><h4>4.9.2 Interval & Sampling - mandatory if 'Directory' is set</h4></p>
480<p>
481Select the length of the SP3 Orbit file generated. The default value is 1 day.
482</p>
483<p>
484Select the SP3 Orbit file sampling interval in seconds. A value of zero '0' tells BNS to store all received epochs into SP3 Orbit files. This is the default value.
485</p>
486
487<p><a name="bottom"><h4>4.10. Bottom Menu Bar</h4></p>
488<p>
489The bottom menu bar allows to start or stop the execution of BNS and provides access to BNC's online help funtion.
490</p>
491
492<p><a name="start"><h4>4.10.1 Start</h4></p>
493<p>
494Hit 'Start' to start receiving IGS orbits and clocks and convert them into corrections to Broadcast Ephemeris. Note that when started, BNS by default will begin with new files which might overwrite existing files when necessary unless the option 'Append files' is ticked.
495</p>
496
497<p><a name="stop"><h4>4.10.2 Stop</h4></p>
498<p>
499Hit the 'Stop' button in order to stop BNS.
500</p>
501
502<p><a name="cmd"><h4>4.11. Command Line Options</h4></p>
503<p>
504Command line options are available to run BNS in 'no window' mode or let it read a specific configuration file. Note that the self-explaining contents of the configuration file can easily be edited. It is possible to introduce a specific configuration file name instead of using the default name 'BNS.ini'.
505</p>
506
507<p><a name="nw"><h4>4.11.1 No Window - optional</h4></p>
508<p>
509Apart from its regular windows mode, BNS can be started on all systems as a background job with command line option '-nw'. BNS will then run in 'no window' mode, using processing options from its configuration file on disk. Terminate BNS using Windows Task Manager when running it in 'no window' mode on Windows systems.
510</p>
511<p>
512Example:<br><br>
513bns.exe -nw
514</p>
515
516<p><a name="conffile"><h4>4.11.2 Configuration File - optional</h4></p>
517The default configuration file name is 'BNS.ini'. You may change this name at startup time using the command line option '--conf &#060;<u>confFileName</u>&#062;'. This allows to run several BNS jobs in parallel on the same host using different sets of configuration options. <u>confFileName</u> stands either for the full path to a configuration file or just for a file name. If you introduce only a filename, the corresponding file will be saved in the current working directory from where BNS is started.
518</p>
519<p>
520Example:<br><br>
521./bns --conf MyConfig.ini
522</p>
523<p>
524This leads to a BNS job using configuration file 'MyConfig.ini'. The configuration file will be saved in the current working directory.
525</p>
526
527
528</p>
529<p><a name="limits"><h3>5. Limitations</h3></p>
530<ul>
531<li>
532In Qt-based desktop environments (such as KDE) on Unix/Linux/Mac platforms users may experience a crash at startup even when BNS is run in the background using the '-nw' option. This is a known bug most likely resulting from an incompatibility of Qt libraries in the environment and in BNS. Entering the command 'unset SESSION_MANAGER' before running BNS may help as a work-around.
533</li>
534<li>
535Currently BNS can only generate premature RTCM Version 3.x message Type 1057-1068 (see RTCM document 091-2009-SC104-542 'Version 3 Proposed Messages – Set 10') . Note that what is implemented in BNS is just a temporary solution.
536</li>
537<li>
538We experienced some limitation with the Standard Version of Microsoft Windows related to socket communication where sockets are not always handled properly. Since BNS makes intensive use of communication through sockets, we recommend to use the Server Version of Microsoft Windows when running BNS continuously for extended period on a Windows platform.
539</li>
540<li>
541Once BNS has been started, its configuration can not be changed unless without a restart. An on-the-fly reconfiguration is not implemented.
542</li>
543<br>
544</ul>
545<p><a name="authors"><h3>6. Authors</h3></p>
546<p>
547The BKG Ntrip State Space Server (BNS) Qt Graphic User Interface (GUI) has been developed for the Federal Agency for Cartography and Geodesy (BKG) by Leos Mervart, Czech Technical University Prague, Department of Geodesy. BNS includes a GNU GPL open source RTCM 3.x encoder, written for BKG by Dirk Stoecker, Alberding GmbH, Schoenefeld.
548</p>
549<p>
550Georg Weber<br>
551Federal Agency for Cartography and Geodesy (BKG)<br>
552Frankfurt, Germany<br>
553[euref-ip@bkg.bund.de] or [igs-ip@bkg.bund.de]
554</p>
555
556<p><a name="annex"><h3>7. Annex</h3></p>
557<p>
5587.1. <a href=#history>Revision History</a><br>
5597.2. <a href=#rtcm>RTCM</a><br>
560&nbsp; &nbsp; &nbsp; 7.2.1 RTCM <a href=#ntrip>NTRIP</a><br>
561&nbsp; &nbsp; &nbsp; 7.2.2 RTCM <a href=#rtcm3>Version 3.x</a><br>
5627.3. <a href=#config>Configuration Example</a><br>
5637.4. <a href=#links>Links</a><br>
564</p>
565
566<p><a name=history><h4>7.1 Revision History</h4></p>
567</p>
568<table>
569<tr></tr>
570
571<tr>
572<td>Dec 2008 &nbsp;</td><td>Version 1.0 &nbsp;</td>
573<td>[Add] Source code and binaries published.</td>
574</tr>
575
576<tr>
577<td>July 2009 &nbsp;</td><td>Version 1.1 &nbsp;</td>
578<td>[Add] Upgrade to Qt Version 4.4.3<br> [Add] Enable/disable tab widgets<br> [Add] User defined configuration file name<br> [mod] Switch to configuration files in ini-Format<br> [Add] Auto start<br> [Add] Drag and drop ini files<br> [Add] Send broadcast clocks<br> [Mod] Update following RTCM 091-2009-SC104-542 document</td>
579</tr>
580
581</table>
582</p>
583
584<p><a name="rtcm"><h4>7.2. RTCM</h4></p>
585
586<p>
587The Radio Technical Commission for Maritime Services (RTCM) is an international non-profit scientific, professional and educational organization. Special Committees provide a forum in which governmental and non-governmental members work together to develop technical standards and consensus recommendations in regard to issues of particular concern. RTCM is engaged in the development of international standards for maritime radionavigation and radiocommunication systems. The output documents and reports prepared by RTCM Committees are published as RTCM Recommended Standards. Topics concerning Differential Global Navigation Satellite Systems (DGNSS) are handled by the Special Committee SC 104.
588</p>
589<p>
590Personal copies of RTCM Recommended Standards can be ordered through <u>http://www.rtcm.org/orderinfo.php</u>.
591</p>
592
593<p><a name="ntrip"><h4>7.2.1 NTRIP</h4></p>
594
595<p>
596'Networked Transport of RTCM via Internet Protocol' Version 1.0 (NTRIP) stands for an application-level protocol streaming Global Navigation Satellite System (GNSS) data over the Internet. NTRIP is a generic, stateless protocol based on the Hypertext Transfer Protocol HTTP/1.1. The HTTP objects are enhanced to GNSS data streams.
597</p>
598
599<p>
600NTRIP Version 1.0 is an RTCM standard designed for disseminating differential correction data (e.g. in the RTCM-104 format) or other kinds of GNSS streaming data to stationary or mobile users over the Internet, allowing simultaneous PC, Laptop, PDA, or receiver connections to a broadcasting host. NTRIP supports wireless Internet access through Mobile IP Networks like GSM, GPRS, EDGE, or UMTS.
601</p>
602
603<p>
604NTRIP is implemented in three system software components: NTRIP clients, NTRIP servers and NTRIP broadcasters. The NTRIP broadcaster is the actual HTTP server program whereas NTRIP client and NTRIP server are acting as HTTP clients. The NTRIP broadcaster maintains a source-table containing information on available NTRIP streams, networks of NTRIP streams and NTRIP broadcasters. The source-table is sent to an NTRIP client on request.
605</p>
606
607<p>
608NTRIP is an open none-proprietary protocol. Major characteristics of NTRIP's dissemination technique are:
609<ul>
610<li>Based on the popular HTTP streaming standard; comparatively easy to implement when having limited client and server platform resources available.</li>
611<li>Application not limited to one particular plain or coded stream content; ability to distribute any kind of GNSS data.</li>
612<li>Potential to support mass usage; disseminating hundreds of streams simultaneously for thousands of users possible when applying modified Internet Radio broadcasting software.</li>
613<li>Considering security needs; stream providers and users don't necessarily get into contact, streams often not blocked by firewalls or proxy servers protecting Local Area Networks.</li>
614<li>Enables streaming over mobile IP networks because of using TCP/IP.</li>
615</ul>
616</p>
617
618<p>
619The NTRIP Version 2 transport protocol is not implemented in BNS.
620</p>
621
622<p><a name="rtcm3"><h4>7.2.2 RTCM Version 3.x</h4></p>
623<p>
624RTCM Version 3.x has been developed as a better alternative to RTCM Version 2.x. Service providers and vendors have asked for a standard that would be efficient, easy to use, and easily adaptable to new situations.
625</p>
626RTCM is in the process of developing new Version 3 message types to carry satellite clock and orbit corrections in real-time. Based on the latest available proposal, the following premature messages currently under discussion of relevance to BNS are listed here:
627<p>
628<ul>
629<li>Message type 1057: GPS orbit corrections to Broadcast Ephemeris</li>
630<li>Message type 1058: GPS clock corrections to Broadcast Ephemeris</li>
631<li>Message type 1059: GPS code biases</li>
632<li>Message type 1060: Combined orbit and clock corrections to GPS Broadcast Ephemeris</li>
633<li>Message type 1061: GPS User Range Accuracy (URA)</li>
634<li>Message type 1062: High-rate GPS clock corrections to Broadcast Ephemeris</li>
635<li>Message type 1063: GLONASS orbit corrections to Broadcast Ephemeris</li>
636<li>Message type 1064: GLONASS clock corrections to Broadcast Ephemeris</li>
637<li>Message type 1065: GLONASS code biases</li>
638<li>Message type 1066: Combined orbit and clock corrections to GLONASS Broadcast Ephemeris</li>
639<li>Message type 1067: GLONASS User Range Accuracy (URA)</li>
640<li>Message type 1068: High-rate GLONASS clock corrections to Broadcast Ephemeris</li>
641</ul>
642</p>
643<p>
644RTCM Version 3.x streams carrying these messages may be used for example to support real-time Precise Point Positioning (PPP) applications using the 'state space' approach.
645</p>
646
647<p><a name="config"><h4>7.3. Configuration Example</h4></p>
648<p>
649The following table's left column is an example for the contents of a configuration file 'BNS.ini'. It enables the upload of streams CLCK1 and CLCK2 to www.igs-ip.net. Clock RINEX files and SP3 Orbit files are saved to a directory /home/weber/rinex :
650</p>
651<table>
652<tr></tr>
653<tr><td><b>Option</b></td><td><b>Affiliation</b></td></tr>
654<tr><td>[General]</td><td>Settings: Group</td></tr>
655<tr><td>proxyHost=</td><td>Proxy: Host</td></tr>
656<tr><td>proxyPort=</td><td>Proxy: Port</td></tr>
657<tr><td>logFile=/home/weber/rinex/bns.log</td><td>General: Logfile (full path)</td></tr>
658<tr><td>fileAppend=0</td><td>General: Append files</td></tr>
659<tr><td>autoStart=0</td><td>General: Auto start</td></tr>
660<tr><td>ephHost=clock-ip.bkg.bund.de</td><td>RINEX Ephemeris: Host</td></tr>
661<tr><td>ephPort=6000</td><td>RINEX Ephemeris: Port</td></tr>
662<tr><td>ephEcho=/home/weber/rinex/eph.rnx</td><td>RINEX Ephemeris: Save (full path)</td></tr>
663<tr><td>clkPort=7000</td><td>Clocks & Orbits: Listening port</td></tr>
664<tr><td>inpEcho=/home/weber/rinex/ClocksOrbits.dat</td><td>Clocks & Orbits: Save (full path)</td></tr>
665<tr><td>outHost1=www.igs-ip.net</td><td>Broadcast Corrections I: Host</td></tr>
666<tr><td>outPort1=2101</td><td>Broadcast Corrections I: Port</td></tr>
667<tr><td>mountpoint_1=CLCK1</td><td>Broadcast Corrections I: Mountpoint</td></tr>
668<tr><td>password1=pw</td><td>Broadcast Corrections I: Password</td></tr>
669<tr><td>refSys_1=IGS05</td><td>Broadcast Corrections I: System</td></tr>
670<tr><td>outFile_1=/home/weber/rinex/CLCK1</td><td>Broadcast Corrections I: Save (full path)</td></tr>
671<tr><td>beClocks1=0</td><td>Broadcast Corrections I: Broadcast clocks</td></tr>
672<tr><td>outHost2=www.igs-.net</td><td>Broadcast Corrections II: Host</td></tr>
673<tr><td>outPort2=2101</td><td>Broadcast Corrections II: Port</td></tr>
674<tr><td>mountpoint_2=CLCK2</td><td>Broadcast Corrections II: Mountpoint</td></tr>
675<tr><td>password2=pw</td><td>Broadcast Corrections II: Password</td></tr>
676<tr><td>refSys_2=ETRF2000</td><td>Broadcast Corrections II: System</td></tr>
677<tr><td>outFile_2=/home/weber/rinex/CLCK2</td><td>Broadcast Corrections II: Save (full path)</td></tr>
678<tr><td>beClocks2=0</td><td>Broadcast Corrections II: Broadcast clocks</td></tr>
679<tr><td>outHost3=www.igs-.net</td><td>Broadcast Corrections III: Host</td></tr>
680<tr><td>outPort3=2101</td><td>Broadcast Corrections III: Port</td></tr>
681<tr><td>mountpoint_3=CLCK3</td><td>Broadcast Corrections III: Mountpoint</td></tr>
682<tr><td>password3=pw</td><td>Broadcast Corrections III: Password</td></tr>
683<tr><td>refSys_3=ETRF2000</td><td>Broadcast Corrections III: System</td></tr>
684<tr><td>outFile_3=/home/weber/rinex/CLCK3</td><td>Broadcast Corrections III: Save (full path)</td></tr>
685<tr><td>beClocks3=0</td><td>Broadcast Corrections III: Broadcast clocks</td></tr>
686<tr><td>outHostEph=www.igs-ip.net</td><td>Broadcast Ephemeris: Host</td></tr>
687<tr><td>outPortEph=2101</td><td>Broadcast Ephemeris: Port</td></tr>
688<tr><td>mountpoint_Eph=BRDC0</td><td>Broadcast Ephemeris: Mountpoint</td></tr>
689<tr><td>passwordEph=pass</td><td>Broadcast Ephemeris: Password</td></tr>
690<tr><td>samplEph=5</td><td>Broadcast Ephemeris: Sampling</td></tr>
691<tr><td>trafo_dx=0.0541</td><td>Broadcast Corrections: System > Custom</td></tr>
692<tr><td>trafo_dy=0.0502</td><td>Broadcast Corrections: System > Custom</td></tr>
693<tr><td>trafo_dz=-0.0538</td><td>Broadcast Corrections: System > Custom</td></tr>
694<tr><td>trafo_dxr=-0.0002</td><td>Broadcast Corrections: System > Custom</td></tr>
695<tr><td>trafo_dyr=0.0001</td><td>Broadcast Corrections: System > Custom</td></tr>
696<tr><td>trafo_dzr=-0.0018</td><td>Broadcast Corrections: System > Custom</td></tr>
697<tr><td>trafo_ox=0.000891</td><td>Broadcast Corrections: System > Custom</td></tr>
698<tr><td>trafo_oy=0.005390</td><td>Broadcast Corrections: System > Custom</td></tr>
699<tr><td>trafo_oz=-0.008712</td><td>Broadcast Corrections: System > Custom</td></tr>
700<tr><td>trafo_oxr=0.000081</td><td>Broadcast Corrections: System > Custom</td></tr>
701<tr><td>trafo_oyr=0.000490</td><td>Broadcast Corrections: System > Custom</td></tr>
702<tr><td>trafo_ozr=-0.000792</td><td>Broadcast Corrections: System > Custom</td></tr>
703<tr><td>trafo_sc=0.40</td><td>Broadcast Corrections: System > Custom</td></tr>
704<tr><td>trafo_scr=0.08</td><td>Broadcast Corrections: System > Custom</td></tr>
705<tr><td>trafo_t0=2000.0</td><td>Broadcast Corrections: System > Custom</td></tr>
706<tr><td>rnxPath=/home/weber/rinex</td><td>RINEX Clocks: Directory</td></tr>
707<tr><td>rnxIntr=1 day</td><td>RINEX Clocks: Interval</td></tr>
708<tr><td>rnxSampl=30</td><td>RINEX Clocks: Sampling</td></tr>
709<tr><td>sp3Path=/home/weber/rinex</td><td>SP3 Orbits: Directory</td></tr>
710<tr><td>sp3Intr=1 day</td><td>SP3 Orbits: Interval</td></tr>
711<tr><td>sp3Sampl=300</td><td>SP3 Orbits: Sampling</td></tr>
712<tr><td>startTab=0</td><td>Internal memory: Top tab</td></tr>
713<tr><td>font="Helvetica [Adobe],8,-1,5,75,0,0,0,0,0"</td><td>Internal memory: Used font</td></tr>
714</table>
715
716<p><a name="links"><h4>7.4 Links</h4></p>
717<table>
718<tr></tr>
719<tr><td>NTRIP &nbsp;</td><td><u>http://igs.bkg.bund.de/index_ntrip.htm</u></td></tr>
720<tr><td>EUREF-IP NTRIP broadcaster &nbsp;</td><td><u>http://www.euref-ip.net/home</u></td></tr>
721<tr><td>IGS-IP NTRIP broadcaster &nbsp;</td><td><u>http://www.igs-ip.net/home</u></td></tr>
722<tr><td>NTRIP broadcaster overview &nbsp;</td><td><u>http://www.rtcm-ntrip.org/home</u></td></tr>
723<tr><td>EUREF-IP Project &nbsp;</td><td><u>http://www.epncb.oma.be/euref_IP</u></td></tr>
724<tr><td>Real-time IGS Pilot Project &nbsp;</td><td><u>http://www.rtigs.net/pilot</u></td></tr>
725<tr><td>Radio Technical Commission<br>for Maritime Services &nbsp;</td><td><u>http://www.rtcm.org</u>
726</table>
727
Note: See TracBrowser for help on using the repository browser.