Changeset 5662 in ntrip


Ignore:
Timestamp:
May 8, 2014, 3:22:32 PM (11 years ago)
Author:
stuerze
Message:

trafo parameter for ITRF2008=>SIRGAS2000 adjusted with respect to reference document www.ibge.gov.br/home/geociencias/geodesia/ppp/manual_ppp.pdf

Location:
trunk/BNC/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/bnchelp.html

    r5651 r5662  
    5050</p>
    5151<p>
    52 BNC includes the following GNU GPL software components: 
    53 <ul>
    54 <li> RTCM 2 decoder, written by Oliver Montenbruck, German Space Operations Center, DLR, Oberpfaffenhofen, Germany;</li> 
     52BNC includes the following GNU GPL software components:
     53<ul>
     54<li> RTCM 2 decoder, written by Oliver Montenbruck, German Space Operations Center, DLR, Oberpfaffenhofen, Germany;</li>
    5555<li> RTCM 3 decoder for conventional and MSM observation messages and a RTCM 3 encoder & decoder for SSR messages, both written for BKG by Dirk Stoecker, Alberding GmbH, Schoenefeld, Germany.</li>
    5656</ul>
     
    126126<p>
    127127<ul>
    128 <li>RTCM Version 2 message types for GPS and GLONASS observations; </li> 
     128<li>RTCM Version 2 message types for GPS and GLONASS observations; </li>
    129129<li>RTCM Version 3 'conventional' message types for observations and Broadcast Ephemeris for GPS and GLONASS;</li>
    130130<li>RTCM Version 3 'State Space Representation' (SSR) messages for GPS and GLONASS;</li>
     
    424424<li> select an appropriate font.<br>
    425425Use smaller font size if the BNC main window exceeds the size of your screen.
    426 </li> 
     426</li>
    427427<li> reread and save selected options in configuration file.<br>
    428428When using 'Reread &amp; Save Configuration' while BNC is already processing data, some configuration options become immediately effective on-the-fly without interrupting uninvolved threads while all of them are saved on disk. See annexed section 'Configuration Examples' for a list of on-the-fly changeable configuration options.
    429429</li>
    430430<li> quit the BNC program.
    431 </li> 
     431</li>
    432432</ul>
    433433</p>
     
    441441help contents.<br>
    442442You may keep the 'Help Contents' window open while configuring BNC.
    443 </li> 
     443</li>
    444444<li>
    445445a 'Flow Chart' showing BNC linked to a real-time GNSS network engine such as RTNet.
     
    448448general information about BNC.<br>
    449449Close the 'About BNC' window to continue working with BNC.
    450 </li> 
     450</li>
    451451</ul>
    452452</p>
     
    483483<p>
    484484When BNC 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 BNC, a system crash or when BNC 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 BNC.
    485 </p> 
     485</p>
    486486
    487487<p><a name="genconf"><h4>3.3.3 Reread Configuration - optional</h4></p>
    488488<p>
    489489When operating BNC online in 'no window' mode (command line option -nw), some configuration options can nevertheless be changed on-the-fly without interrupting the running process. For that you force the program to reread parts of its configuration in pre-defined intervals from the disk. Select '1 min', '1 hour', or '1 day' to let BNC reread on-the-fly changeable configuration options every full minute, hour, or day. This lets in between edited options become effective without interrupting uninvolved threads. See annexed section 'Configuration Examples' for a configuration file example and a list of on-the-fly changeable options.
    490 </p> 
     490</p>
    491491
    492492<p><a name="genstart"><h4>3.3.4 Auto Start - optional</h4></p>
     
    518518<p>
    519519Observations will be converted to RINEX if they come in either RTCM Version 2 or RTCM Version 3 format. Depending on the RINEX version and incoming RTCM message types, files generated by BNC may contain data from GPS, GLONASS, Galileo, SBAS, QZSS and BeiDou. In case an observation type is listed in the RINEX header but the corresponding observation is unavailable, its value is set to zero '0.000'. Note that the 'RINEX TYPE' field in the RINEX Version 3 Observation file header is always set to 'M(MIXED)' or 'Mixed' even if the file only contains data from one system.
    520 </p> 
     520</p>
    521521<p>
    522522It is important to understand that converting RTCM streams to RINEX files requires a-priori information on observation types for specifying a complete RINEX header. Regarding the RINEX Version 2 file header, BNC simply introduces all observation types defined in the Version 2 standard and later reports "0.000" for all observations which are not received. However, following this approach is not possible for RINEX Version 3 files from RTCM Version 3 MSM streams because of the huge number of observation types which might in principle show up. The solution implemented in BNC is to start with RINEX Version 3 observation type records from skeleton files (see section 'Skeleton Extension') and switch to a default selection of observation types when such skeleton file is not available or it does not contain the required information. The 'Default selection of observation types specified' for a RINEX Version 3 file would be as follows:
     
    550550</p>
    551551<p>
    552 where 'ddd' is the day of year, 'h' is a letter which corresponds to an hour long UTC time block and 'yy' is the year. 
     552where 'ddd' is the day of year, 'h' is a letter which corresponds to an hour long UTC time block and 'yy' is the year.
    553553</p>
    554554<p>
     
    576576<p>
    577577Here you can specify the path to where the RINEX Observation files will be stored. If the specified directory does not exist, BNC will not create RINEX Observation files. Default value for 'Directory' is an empty option field, meaning that no RINEX Observation files will be written.
    578 </p> 
     578</p>
    579579
    580580<p><a name="rnxinterval"><h4>3.4.3 File Interval - mandatory if 'Directory' is set</h4></p>
    581581<p>
    582582Select the length of the RINEX Observation file generated. The default value is 15 minutes.
    583 </p> 
     583</p>
    584584
    585585<p><a name="rnxsample"><h4>3.4.4 Sampling - mandatory if 'Directory' is set </h4></p>
    586586<p>
    587587Select the RINEX Observation sampling interval in seconds. A value of zero '0' tells BNC to store all received epochs into RINEX. This is the default value.
    588 </p> 
     588</p>
    589589
    590590<p><a name="rnxskl"><h4>3.4.5 Skeleton Extension - optional</h4></p>
    591591<p>
    592 Whenever BNC starts generating RINEX Observation files (and then once every day at midnight), it first tries to retrieve information needed for RINEX headers from so-called public RINEX header skeleton files which are derived from sitelogs. A HTTP link to a directory containing these skeleton files may be available through data field number 7 of the affected NET record in the source-table. See <u>http://www.epncb.oma.be:80/stations/log/skl/brus.skl</u> for an example of a public RINEX header skeleton file for the Brussels EPN station. 
     592Whenever BNC starts generating RINEX Observation files (and then once every day at midnight), it first tries to retrieve information needed for RINEX headers from so-called public RINEX header skeleton files which are derived from sitelogs. A HTTP link to a directory containing these skeleton files may be available through data field number 7 of the affected NET record in the source-table. See <u>http://www.epncb.oma.be:80/stations/log/skl/brus.skl</u> for an example of a public RINEX header skeleton file for the Brussels EPN station.
    593593</p>
    594594<p>
     
    605605<p>
    606606if 'Skeleton extension' is set to 'skl'.
    607 </p> 
    608 <p> 
     607</p>
     608<p>
    609609Note the following regulations regarding personal RINEX header skeleton files:
    610610<ul>
     
    628628<br>- &nbsp; # / TYPES OF OBSERV (only RINEX Version 2, will be ignored when writing RINEX Version 3 files)
    629629<br>BNC will include these lines in the final RINEX file header together with an additional
    630 <br>- &nbsp; COMMENT 
     630<br>- &nbsp; COMMENT
    631631<br>line describing the source of the stream.</li>
    632632<li>They should finally contain an empty header record of type
     
    669669<p>
    670670Whenever a RINEX Observation file is saved, you might want to compress copy or upload it immediately via FTP. BNC allows you to execute a script/batch file to carry out these operations. To do that, specify the full path of the script/batch file here. BNC will pass the RINEX Observation file path to the script as a command line parameter (%1 on Windows systems, $1 on Unix/Linux/Mac OS X systems).
    671 </p> 
    672 <p> 
     671</p>
     672<p>
    673673The triggering event for calling the script or batch file is the end of a RINEX Observation file 'Interval'. If that is overridden by a stream outage, the triggering event is the stream reconnection.
    674 </p> 
    675 <p> 
     674</p>
     675<p>
    676676As an alternative to initiating file uploads through BNC, you may like to call an upload script or batch file through your crontable or Task Scheduler (independent from BNC) once every one or two minutes after the end of each RINEX file 'Interval'.
    677 </p> 
     677</p>
    678678
    679679<p><a name="rnxvers"><h4>3.4.7 Version - optional</h4></p>
    680680<p>
    681681The default format for RINEX Observation files is RINEX Version 2.11. Select 'Version 3' if you would like to save observations in RINEX Version 3 format.
    682 </p> 
     682</p>
    683683
    684684<p><a name="ephemeris"><h4>3.5. RINEX Ephemeris</h4></p>
     
    689689<li>'N' or 'G' for GPS or GLONASS ephemeris in two separate RINEX Version 2.11 Navigation files, or</li>
    690690<li>'P' for GPS plus GLONASS plus Galileo ephemeris saved together in one RINEX Version 3 Navigation file.
    691 </ul> 
     691</ul>
    692692
    693693<p>
     
    698698<p>
    699699Specify a path for saving Broadcast Ephemeris data as RINEX Navigation files. If the specified directory does not exist, BNC will not create RINEX Navigation files. Default value for Ephemeris 'Directory' is an empty option field, meaning that no RINEX Navigation files will be created.
    700 </p> 
     700</p>
    701701
    702702<p><a name="ephint"><h4>3.5.2 Interval - mandatory if 'Directory' is set</h4></p>
    703703<p>
    704704Select the length of the RINEX Navigation file generated. The default value is 1 day.
    705 </p> 
     705</p>
    706706
    707707<p><a name="ephport"><h4>3.5.3 Port - optional</h4></p>
     
    719719<p>
    720720Note that this does not concern the Broadcast Ephemeris output through IP port which is always in RINEX Version 3 format.
    721 </p> 
     721</p>
    722722
    723723<p><a name="reqc"><h4>3.6. RINEX Editing & QC</h4></p>
     
    784784<p><a name="reqcinput"><h4>3.6.4 Input Files - mandatory if 'Action' is set</h4></p>
    785785<p>
    786 Specify full path to input RINEX Observation file(s), and<br> 
     786Specify full path to input RINEX Observation file(s), and<br>
    787787specify full path to input RINEX Navigation file(s).
    788 </p> 
     788</p>
    789789<p>When specifying several input files BNC will concatenate their contents. Note that you may specify several RINEX Version 2 Navigation files for GPS and GLONASS.</p>
    790790
    791791<p><a name="reqcoutput"><h4>3.6.5 Output Files - mandatory if 'Action' is set</h4></p>
    792792<p>
    793 If 'Edit/Concatenate' is selected, specifying the a path to output RINEX Observation file(s) and specifying a full path to output RINEX Navigation file(s) is mandatory.</p> 
     793If 'Edit/Concatenate' is selected, specifying the a path to output RINEX Observation file(s) and specifying a full path to output RINEX Navigation file(s) is mandatory.</p>
    794794
    795795<p><img src="IMG/screenshot25.png"/></p>
     
    824824<p><a name="reqcplots"><h4>3.6.6 Directory for Plots - optional if 'Action' is set</h4></p>
    825825<p>
    826 If 'Analyze' is selected, specifying the path to a directory where plot files will be saved is optional. File names will be composed from the RINEX input file name(s) plus suffix 'PNG' to indicate the plot file format in use. </p> 
     826If 'Analyze' is selected, specifying the path to a directory where plot files will be saved is optional. File names will be composed from the RINEX input file name(s) plus suffix 'PNG' to indicate the plot file format in use. </p>
    827827
    828828<p><img src="IMG/screenshot29.png"/></p>
     
    898898<p><a name="correct"><h4>3.7. Broadcast Corrections</h4></p>
    899899<p>
    900 Differential 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 'ObservationSpace Representation' (OSR). 
    901 </p>
    902 <p>
    903 An alternative to the observation space approach is the so called 'sate space' approach. The principle here is to provide information on individual error sources. It 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. 
     900Differential 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 'ObservationSpace Representation' (OSR).
     901</p>
     902<p>
     903An alternative to the observation space approach is the so called 'sate space' approach. The principle here is to provide information on individual error sources. It 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.
    904904</p>
    905905<p>
     
    914914</ul>
    915915<p>
    916 RTCM Version 3 streams carrying these messages may be used i.e. to support real-time Precise Point Positioning (PPP) applications. 
     916RTCM Version 3 streams carrying these messages may be used i.e. to support real-time Precise Point Positioning (PPP) applications.
    917917</p>
    918918<p>
     
    944944! Orbits/Clocks: 0 GPS 19 Glonass CLK11
    945945<p>
    946 Such line informs you about the number of records (here 30 and 19) carrying GPS or GLONASS related parameters you should receive next. 
     946Such line informs you about the number of records (here 30 and 19) carrying GPS or GLONASS related parameters you should receive next.
    947947</p>
    948948<p>
     
    10721072<pre>
    10731073...
    1074 1059 0 1538 211151.0 G18 2 0   -0.010 11   -0.750 
     10741059 0 1538 211151.0 G18 2 0   -0.010 11   -0.750
    107510751059 0 1538 211151.0 G16 2 0   -0.040 11   -0.430
    107610761059 0 1538 211151.0 G22 2 0   -0.630 11   -2.400
     
    12381238<p>
    12391239Note that 'Wait for full obs epoch' does not affect the RINEX Observation file content. Observations received later than 'Wait for full obs epoch' seconds will still be included in the RINEX Observation files.
    1240 </p> 
     1240</p>
    12411241
    12421242<p><a name="syncsample"><h4>3.8.3 Sampling - mandatory if 'File' or 'Port' is set</h4></p>
     
    12471247<p><a name="syncfile"><h4>3.8.4 File - optional</h4></p>
    12481248<p>
    1249 Specify the full path to a 'File' where synchronized observations are saved in plain ASCII format. The default value is an empty option field, meaning that no ASCII output file is created. 
     1249Specify the full path to a 'File' where synchronized observations are saved in plain ASCII format. The default value is an empty option field, meaning that no ASCII output file is created.
    12501250</p>
    12511251<p>
     
    12601260<p><a name="serial"><h4>3.9. Serial Output</h4></p>
    12611261<p>
    1262 You may use BNC to feed a serial connected device like a GNSS receiver. For that an incoming stream can be forwarded to a serial port. The following figure shows the screenshot of an example situation where BNC pulls a VRS stream from an NTRIP Broadcaster to feed a serial connected RTK rover. 
     1262You may use BNC to feed a serial connected device like a GNSS receiver. For that an incoming stream can be forwarded to a serial port. The following figure shows the screenshot of an example situation where BNC pulls a VRS stream from an NTRIP Broadcaster to feed a serial connected RTK rover.
    12631263</p>
    12641264<p><img src="IMG/screenshot11.png"/></p>
     
    13551355<p>
    13561356BNC can collect all returns (success or failure) coming from a decoder within a certain short time span to then decide whether a stream has an outage or its content is corrupted. This procedure needs a rough a priory estimate of the expected observation rate of the incoming streams.</p><p>An empty option field (default) means that you don't want explicit information from BNC about stream outages and incoming streams that cannot be decoded.
    1357 </p> 
     1357</p>
    13581358
    13591359<p><a name="advfail"><h4>3.10.2 Failure Threshold - optional</h4></p>
     
    13791379<p>
    13801380Leave the 'Script' field empty if you do not wish to use this option. An invalid path will also disable this option.
    1381 </p> 
     1381</p>
    13821382<p>
    13831383Examples for command line parameter strings passed on to the advisory 'Script' are:
     
    14001400!
    14011401</pre>
    1402 </p> 
    1403 <p> 
     1402</p>
     1403<p>
    14041404Note the sleep command in this script which causes the system to wait for a random period of up to 60 seconds before sending the email. This should avoid overloading your mail server in case of a simultaneous failure of many streams.
    1405 </p> 
     1405</p>
    14061406
    14071407<p><a name="misc"><h4>3.11. Miscellaneous</h4></p>
     
    14371437</pre>
    14381438<p>
    1439 <u>Statistics:</u> BNC counts the number of GPS seconds covered by at least one observation. It also estimates an observation rate (independent from the a priory specified 'Observation rate') from all observations received throughout the first full 'Log latency' interval. Based on this rate, BNC estimates the number of data gaps when appearing in subsequent intervals. 
     1439<u>Statistics:</u> BNC counts the number of GPS seconds covered by at least one observation. It also estimates an observation rate (independent from the a priory specified 'Observation rate') from all observations received throughout the first full 'Log latency' interval. Based on this rate, BNC estimates the number of data gaps when appearing in subsequent intervals.
    14401440</p>
    14411441<p>
     
    14751475<p>
    14761476
    1477 <p>Logged time stamps refer to message reception time and allow understanding repetition rates. Enter 'ALL' if you want to log this information from all configured streams. Beware that the size of the logfile can rapidly increase depending on the number of incoming RTCM streams. 
    1478 </p>
    1479 <p>This option is primarily meant for testing and evaluation. Use it to figure out what exactly is produced by a specific GNSS receiver's configuration. An empty option field (default) means that you don't want BNC to print the message type numbers and antenna information carried in RTCM streams. 
     1477<p>Logged time stamps refer to message reception time and allow understanding repetition rates. Enter 'ALL' if you want to log this information from all configured streams. Beware that the size of the logfile can rapidly increase depending on the number of incoming RTCM streams.
     1478</p>
     1479<p>This option is primarily meant for testing and evaluation. Use it to figure out what exactly is produced by a specific GNSS receiver's configuration. An empty option field (default) means that you don't want BNC to print the message type numbers and antenna information carried in RTCM streams.
    14801480</p>
    14811481
     
    15261526<li>code and phase residuals for GPS and GLONASS and Galileo in [m], </li>
    15271527<li>receiver clock errors in [m], </li>
    1528 <li>a-priori and correction values of tropospheric zenith delay in [m], 
    1529 <li>time offset between GPS time and Galileo time in [m], 
     1528<li>a-priori and correction values of tropospheric zenith delay in [m],
     1529<li>time offset between GPS time and Galileo time in [m],
    15301530<li>L3 biases, also known as 'floated ambiguities', given per satellite.
    15311531</ul>
     
    16061606
    16071607<p>
    1608 Note that for debugging or Post Processing purposes BNC's 'PPP' functionality option can also be used offline. 
     1608Note that for debugging or Post Processing purposes BNC's 'PPP' functionality option can also be used offline.
    16091609<ul>
    16101610<li>
     
    16461646<p><a name="pppobsmount"><h4>3.12.1.2 Obs Mountpoint - optional</h4></p>
    16471647<p>
    1648 Specify an 'Observations Mountpoint' from the list of selected 'Streams' you are pulling if you want BNC to derive coordinates for the affected rover position through a Point Positioning solution. 
     1648Specify an 'Observations Mountpoint' from the list of selected 'Streams' you are pulling if you want BNC to derive coordinates for the affected rover position through a Point Positioning solution.
    16491649</p>
    16501650
     
    16561656<p><a name="pppxyz"><h4>3.12.2 Marker Coordinates - optional</h4></p>
    16571657<p>
    1658 Enter the reference coordinate XYZ of the receiver's position in meters if known. This option makes only sense for static observations. Defaults are empty option fields, meaning that the antenna's XYZ position is unknown. 
     1658Enter the reference coordinate XYZ of the receiver's position in meters if known. This option makes only sense for static observations. Defaults are empty option fields, meaning that the antenna's XYZ position is unknown.
    16591659</p>
    16601660<p>
     
    16751675<p><a name="pppoutput"><h4>3.12.4 NMEA Output - optional</h4></p>
    16761676<p>
    1677 BNC allows to output results from Precise Point Positioning in NMEA format. 
     1677BNC allows to output results from Precise Point Positioning in NMEA format.
    16781678</p>
    16791679<p>
     
    16831683<p><a name="pppnmeafile"><h4>3.12.4.1 NMEA File - optional</h4></p>
    16841684<p>
    1685 The NMEA sentences generated about once per second are pairs of 
     1685The NMEA sentences generated about once per second are pairs of
    16861686<ul>
    16871687<li> GPGGA sentences which mainly carry the estimated latitude, longitude, and height values, plus</li>
     
    16951695<p><a name="pppnmeaport"><h4>3.12.4.2 NMEA Port - optional</h4></p>
    16961696<p>
    1697 Specify the IP port number of a local port where Point Positioning results become available as NMEA messages. The default value for 'NMEA Port' is an empty option field, meaning that BNC does not provide NMEA messages vi IP port. Note that the NMEA file output and the NMEA IP port output are the same. 
     1697Specify the IP port number of a local port where Point Positioning results become available as NMEA messages. The default value for 'NMEA Port' is an empty option field, meaning that BNC does not provide NMEA messages vi IP port. Note that the NMEA file output and the NMEA IP port output are the same.
    16981698</p>
    16991699<p>
     
    19291929<li>The software with its Graphic User Interface and wide range of supported Operating Systems represents a perfect platform to process many Broadcast Correction streams in parallel;</li>
    19301930<li>Outages of single AC product streams can be mitigated through merging several incoming streams into a combined product;</li>
    1931 <li>Generating a combination product from several AC products allows detecting and rejecting outliers;</li> 
     1931<li>Generating a combination product from several AC products allows detecting and rejecting outliers;</li>
    19321932<li>A Combination Center (CC) can operate BNC to globally disseminate a combination product via NTRIP broadcast;</li>
    19331933<li>An individual AC could prefer to disseminate a stream combined from primary and backup IT resources to reduce outages;</li>
     
    19501950</p>
    19511951<p>
    1952 This comment applies in situations where we have a limited number of solutions to combine and their quality varies significantly. The situation may be different when the total number of ACs is larger and the range of AC variation is smaller. In that case, a standard full combination is probably the best. 
     1952This comment applies in situations where we have a limited number of solutions to combine and their quality varies significantly. The situation may be different when the total number of ACs is larger and the range of AC variation is smaller. In that case, a standard full combination is probably the best.
    19531953</p>
    19541954<p>
     
    19961996
    19971997<p>
    1998 The following screenshots describe an example setup of BNC when combining Broadcast Correction streams and uploading them to an NTRIP Broadcaster. Note that it requires specifying options under tabs 'Combine Corrections' and 'Upload Corrections'. The example uses the combination product to simultaneously carry out an 'INTERNAL' PPP solution in 'Quick-Start' mode which allows monitoring the quality of the combination product in the space domain. 
     1998The following screenshots describe an example setup of BNC when combining Broadcast Correction streams and uploading them to an NTRIP Broadcaster. Note that it requires specifying options under tabs 'Combine Corrections' and 'Upload Corrections'. The example uses the combination product to simultaneously carry out an 'INTERNAL' PPP solution in 'Quick-Start' mode which allows monitoring the quality of the combination product in the space domain.
    19991999</p>
    20002000
     
    20262026<p><a name="upclk"><h4>3.14. Upload Corrections</h4></p>
    20272027<p>
    2028 BNC can upload streams carrying orbit and clock corrections to Broadcast Ephemeris in radial, along-track and cross-track components if they are<ol type=a> 
     2028BNC can upload streams carrying orbit and clock corrections to Broadcast Ephemeris in radial, along-track and cross-track components if they are<ol type=a>
    20292029<li>
    20302030either generated by BNC as a combination of several individual Broadcast Correction streams coming from an number of real-time Analysis Centers (ACs), see section 'Combine Corrections',</li>
     
    20362036<li>Continuously receive up-to-date Broadcast Ephemeris carrying approximate orbits and clocks for all satellites. Read new Broadcast Ephemeris immediately whenever they become available. This information may come via a stream of RTCM messages generated from another BNC instance.</li>
    20372037</ul>
    2038 Then, epoch by epoch: 
     2038Then, epoch by epoch:
    20392039<ul>
    20402040<li>Continuously receive the best available orbit and clock estimates for all satellites in XYZ Earth-Centered-Earth-Fixed IGS08 reference system. Receive them every epoch in plain ASCII format as provided by a real-time GNSS engine such as RTNet or generate them following a combination approach. </li>
     
    20532053</p>
    20542054<p>
    2055 The usual handling of BNC when uploading a stream with Broadcast Corrections is that you first specify Broadcast Ephemeris and Broadcast Correction streams. You then specify an NTRIP Broadcaster for stream upload before you start the program. 
     2055The usual handling of BNC when uploading a stream with Broadcast Corrections is that you first specify Broadcast Ephemeris and Broadcast Correction streams. You then specify an NTRIP Broadcaster for stream upload before you start the program.
    20562056</p>
    20572057<p>
    20582058<u>'RTNET' Stream Format</u><br>
    2059 When uploading an SSR stream generated according to b. then  BNC requires precise GNSS orbits and clocks in the IGS Earth-Centered-Earth-Fixed (ECEF) reference system and in a specific ASCII format named 'RTNET' because the data may come from a real-time engine such as RTNet. The sampling interval for data transmission should not exceed 15 sec. Note that otherwise tools involved in IP streaming such as NTRIP Broadcasters or NTRIP Clients may respond with a timeout. 
    2060 </p>
    2061 <p>
    2062 Below you find an example for the 'RTNET' ASCII format coming from a real-time GNSS engine. Each epoch begins with an asterisk character followed by the time as year, month, day of month, hour, minute and second. Subsequent records provide the following set of parameters for each satellite: 
     2059When uploading an SSR stream generated according to b. then  BNC requires precise GNSS orbits and clocks in the IGS Earth-Centered-Earth-Fixed (ECEF) reference system and in a specific ASCII format named 'RTNET' because the data may come from a real-time engine such as RTNet. The sampling interval for data transmission should not exceed 15 sec. Note that otherwise tools involved in IP streaming such as NTRIP Broadcasters or NTRIP Clients may respond with a timeout.
     2060</p>
     2061<p>
     2062Below you find an example for the 'RTNET' ASCII format coming from a real-time GNSS engine. Each epoch begins with an asterisk character followed by the time as year, month, day of month, hour, minute and second. Subsequent records provide the following set of parameters for each satellite:
    20632063</p>
    20642064<p>
     
    20872087<p>
    20882088<pre>
    2089 *  2013  3 21  7 19 55.00000000 
     2089*  2013  3 21  7 19 55.00000000
    20902090G01 APC 3   19869258.4381   9158001.1526  15095321.8460 Clk 1       2755.5447 Vel 3        977.3298      1661.2202     -2283.9009 CoM 3   19869259.6565   9158001.3302  15095322.8837 CodeBias 2 1C     .3149 2P  -11.7432
    20912091G02 APC 3  -13043930.7341 -22955958.1832   4995469.3779 Clk 1     126894.0959 Vel 3        601.6561       298.3845      3009.2928 CoM 3  -13043931.1120 -22955958.8484   4995469.5227 CodeBias 2 1C    -.8828 2P    1.7301
     
    21072107R24 APC 3   21300823.5162   8426171.8952 -11241665.2306 Clk 1     -27112.9305 Vel 3      -1498.4393      -376.6107     -3125.3066 CoM 3   21300825.4800   8426173.2206 -11241666.1521
    21082108EOE
    2109 *  2013  3 21  7 20  0.00000000 
     2109*  2013  3 21  7 20  0.00000000
    21102110G01 APC 3   19874144.1634   9166303.6499  15083898.3374 Clk 1       2755.5498 Vel 3        976.9602      1659.7789     -2285.5025 CoM 3   19874145.3821   9166303.8281  15083899.3746 CodeBias 2 1C     .3151 2P  -11.7430
    21112111G02 APC 3  -13040919.4263 -22954462.9892   5010514.5569 Clk 1     126894.1080 Vel 3        602.8672       299.6930      3008.7787 CoM 3  -13040919.8041 -22954463.6543   5010514.7021 CodeBias 2 1C    -.8829 2P    1.7303
     
    21362136<p>The stream upload may be protected through an upload 'Password'. Enter the password you received from the NTRIP Broadcaster operator along with the mountpoint(s).</p>
    21372137<p>
    2138 If 'Host', 'Port', 'Mountpoint' and 'Password' are set, the stream will be encoded in RTCM's 'State Space Representation' (SSR) messages and uploaded to the specified broadcaster following the NTRIP Version 1 transport protocol. 
     2138If 'Host', 'Port', 'Mountpoint' and 'Password' are set, the stream will be encoded in RTCM's 'State Space Representation' (SSR) messages and uploaded to the specified broadcaster following the NTRIP Version 1 transport protocol.
    21392139</p>
    21402140
     
    21622162</pre>
    21632163<p>
    2164 where s is the transformation scale, c is the speed of light, and &rho; are the topocentric distance between an (approximate) center of the transformation's validity area and the satellite. 
     2164where s is the transformation scale, c is the speed of light, and &rho; are the topocentric distance between an (approximate) center of the transformation's validity area and the satellite.
    21652165</p>
    21662166<p>
     
    21862186Rotation in Y at epoch To:  5.390 mas
    21872187Rotation in Z at epoch To: -8.712 mas
    2188 Rotation rate in X:  0.081 mas/y 
     2188Rotation rate in X:  0.081 mas/y
    21892189Rotation rate in Y:  0.490 mas/y
    21902190Rotation rate in Z: -0.792 mas/y
     
    22092209Rotation in Y at epoch To:  -9.42645 mas
    22102210Rotation in Z at epoch To: -11.59935 mas
    2211 Rotation rate in X: -0.06667 mas/y 
     2211Rotation rate in X: -0.06667 mas/y
    22122212Rotation rate in Y:  0.75744 mas/y
    22132213Rotation rate in Z:  0.05133 mas/y
     
    22322232Rotation in Y at epoch To: -2.2578 mas
    22332233Rotation in Z at epoch To: -2.4015 mas
    2234 Rotation rate in X: -1.5461 mas/y 
     2234Rotation rate in X: -1.5461 mas/y
    22352235Rotation rate in Y: -1.1820 mas/y
    22362236Rotation rate in Z: -1.1551 mas/y
     
    22552255Rotation in Y at epoch To: -0.030 mas
    22562256Rotation in Z at epoch To:  0.070 mas
    2257 Rotation rate in X:  0.000 mas/y 
     2257Rotation rate in X:  0.000 mas/y
    22582258Rotation rate in Y:  0.000 mas/y
    22592259Rotation rate in Z:  0.000 mas/y
    2260 Scale at epoch To : 0.000000000000
     2260Scale at epoch To : -0.000000001000
    22612261Scale rate: 0.000000000000 /y
    22622262To: 0000.0
     
    22782278Rotation in Y at epoch To:  0.000 mas
    22792279Rotation in Z at epoch To: -0.003 mas
    2280 Rotation rate in X:  0.000 mas/y 
     2280Rotation rate in X:  0.000 mas/y
    22812281Rotation rate in Y:  0.000 mas/y
    22822282Rotation rate in Z:  0.000 mas/y
     
    22882288
    22892289<p>
    2290 <u>DREF91:</u> 'Referenzkoordinaten für SAPOS, Empfehlungen der Projektgruppe SAPOS-Koordinatenmonitoring 2008', Personal communication with Peter Franke, BKG, Germany. The following 14 Helmert Transformation Parameters were introduced: 
     2290<u>DREF91:</u> 'Referenzkoordinaten für SAPOS, Empfehlungen der Projektgruppe SAPOS-Koordinatenmonitoring 2008', Personal communication with Peter Franke, BKG, Germany. The following 14 Helmert Transformation Parameters were introduced:
    22912291</p>
    22922292<p>
     
    23012301Rotation in Y at epoch To:   6.190 mas
    23022302Rotation in Z at epoch To: -11.012 mas
    2303 Rotation rate in X:  0.081 mas/y 
     2303Rotation rate in X:  0.081 mas/y
    23042304Rotation rate in Y:  0.490 mas/y
    23052305Rotation rate in Z: -0.792 mas/y
     
    23252325</p>
    23262326<p>
    2327 As an SP3 file contents should be referred to the satellites Center of Mass (CoM) while Broadcast Corrections are referred to the satellites APC, an offset has to be applied which is available from an IGS ANTEX file (see section 'ANTEX File'). You should therefore specify the 'ANTEX File' path under tab 'PPP (2)' if you want to save the stream contents in SP3 format. If you don't specify an 'ANTEX File' path there, the SP3 file contents will be referred to the satellites APCs. 
     2327As an SP3 file contents should be referred to the satellites Center of Mass (CoM) while Broadcast Corrections are referred to the satellites APC, an offset has to be applied which is available from an IGS ANTEX file (see section 'ANTEX File'). You should therefore specify the 'ANTEX File' path under tab 'PPP (2)' if you want to save the stream contents in SP3 format. If you don't specify an 'ANTEX File' path there, the SP3 file contents will be referred to the satellites APCs.
    23282328</p>
    23292329<p>
     
    23352335
    23362336<p>
    2337 Note that BNC outputs a complete list of SP3 'Epoch Header Records' even if no 'Position and Clock Records' are available for certain epochs because of stream outages. Note further that the 'Number of Epochs' in the first SP3 header record may not be correct because that number is not available when the file is created. Depending on your processing software (e.g. Bernese GNSS Software, BSW) it could therefore be necessary to correct an incorrect 'Number of Epochs' in the file before you use in Post Processing. 
     2337Note that BNC outputs a complete list of SP3 'Epoch Header Records' even if no 'Position and Clock Records' are available for certain epochs because of stream outages. Note further that the 'Number of Epochs' in the first SP3 header record may not be correct because that number is not available when the file is created. Depending on your processing software (e.g. Bernese GNSS Software, BSW) it could therefore be necessary to correct an incorrect 'Number of Epochs' in the file before you use in Post Processing.
    23382338</p>
    23392339
     
    23722372
    23732373<p>
    2374 The following screenshot shows the encoding and uploading of a stream of precise orbits and clocks coming from a real-time engine in 'RTNET' ASCII format. The stream is uploaded to NTRIP Broadcaster 'products.igs-ip.net'. It is referred to APC and IGS08. Uploaded data are locally saved in SP3 and Clock RINEX format. The SSR Provider ID is set to 3. The SSR Solution ID is and the Issue of Data SSR are set to 1. Required Broadcast Ephemeris are received via stream 'RTCM3EPH'. 
     2374The following screenshot shows the encoding and uploading of a stream of precise orbits and clocks coming from a real-time engine in 'RTNET' ASCII format. The stream is uploaded to NTRIP Broadcaster 'products.igs-ip.net'. It is referred to APC and IGS08. Uploaded data are locally saved in SP3 and Clock RINEX format. The SSR Provider ID is set to 3. The SSR Solution ID is and the Issue of Data SSR are set to 1. Required Broadcast Ephemeris are received via stream 'RTCM3EPH'.
    23752375</p>
    23762376<p><img src="IMG/screenshot26.png"/></p>
     
    24382438<br>Note that when running BNC in a Local Area Network (LAN), NMEA strings may be blocked by a proxy server, firewall or virus scanner when not using the NTRIP Version 2 transport protocol..
    24392439</li>
    2440 </ul> 
     2440</ul>
    24412441
    24422442<p><a name="streamdelete"><h4>3.16.2 Delete Stream</h4></p>
     
    25042504<p>
    25052505Button 'Add Stream' &gt; 'Coming from Caster' then opens a window that allows user to select data streams from an NTRIP Broadcaster according to their mountpoints and show a distribution map of offered streams.
    2506 </p> 
     2506</p>
    25072507
    25082508<p><a name="streamhost"><h4>3.18.1.1.1 Caster Host and Port - mandatory</h4></p>
    25092509<p>
    25102510Enter the NTRIP Broadcaster host IP and port number. Note that EUREF and IGS operate NTRIP Broadcasters at <u>http://www.euref-ip.net/home</u>, <u>http://www.igs-ip.net/home</u>, <u>http://www.products.igs-ip.net/home</u> and <u>http://mgex.igs-ip.net/home</u>.
    2511 </p> 
     2511</p>
    25122512
    25132513<p><a name="streamtable"><h4>3.18.1.1.2 Casters Table - optional</h4></p>
    25142514<p>
    25152515It may be that you are not sure about your NTRIP Broadcasters host and port number or you are interested in other broadcaster installations operated elsewhere. Hit 'Show' for a table of known broadcasters maintained at <u>www.rtcm-ntrip.org/home</u>. A window opens which allows selecting a broadcaster for stream retrieval, see figure below.
    2516 </p> 
     2516</p>
    25172517</p>
    25182518<p><img src="IMG/screenshot04.png"/></p>
     
    25232523<p>
    25242524Some streams on NTRIP Broadcasters may be restricted. Enter a valid 'User' ID and 'Password' for access to protected streams. Accounts are usually provided per NTRIP Broadcaster through a registration procedure. Register through <u>http://igs.bkg.bund.de/ntrip/registeruser</u> for access to protected streams from EUREF and IGS.
    2525 </p> 
     2525</p>
    25262526
    25272527<p><a name="gettable"><h4>3.18.1.1.4 Get Table</h4></p>
    25282528<p>
    25292529Use the 'Get Table' button to download the source-table from the NTRIP Broadcaster. Pay attention to data fields 'format' and 'format-details'. Keep in mind that BNC can only decode and convert streams that come in RTCM Version 2, RTCM Version 3, or RTNET format. For access to observations, Broadcast Ephemeris and Broadcast Corrections in RTCM format streams must contain a selection of appropriate message types as listed in the Annex, cf. data field 'format-details' for available message types and their repetition rates in brackets. Note that in order to produce RINEX Navigation files RTCM Version 3 streams containing message types 1019 (GPS) and 1020 (GLONASS) and 1045, 1046 (Galileo) are required. Select your streams line by line, use +Shift and +Ctrl when necessary. The figure below provides an example source-table.
    2530 </p> 
     2530</p>
    25312531<p>
    25322532The contents of data field 'nmea' tells you whether a stream retrieval needs to be initiated by BNC through sending an NMEA-GGA message carrying approximate position coordinates (virtual reference station).
     
    25342534<p>
    25352535Hit 'OK' to return to the main window. If you wish you can click on 'Add Stream' and repeat the process again to retrieve streams from different casters.
    2536 </p> 
     2536</p>
    25372537<p><img src="IMG/screenshot05.png"/></p>
    25382538<p><u>Figure 30:</u> Broadcaster source-table.</p>
     
    26292629</p>
    26302630<p>
    2631 When selecting one of the serial communication options listed above, make sure that you pick those configured to the serial connected GNSS receiver. 
     2631When selecting one of the serial communication options listed above, make sure that you pick those configured to the serial connected GNSS receiver.
    26322632</p>
    26332633
     
    26552655<p>
    26562656Hit 'Start' to start retrieving, decoding or converting GNSS data streams in real-time. Note that 'Start' generally forces BNC to begin with fresh RINEX which might overwrite existing files when necessary unless the option 'Append files' is ticked.
    2657 </p> 
     2657</p>
    26582658
    26592659<p><a name="stop"><h4>3.18.5 Stop</h4></p>
    26602660<p>
    2661 Hit the 'Stop' button in order to stop BNC. 
    2662 </p> 
     2661Hit the 'Stop' button in order to stop BNC.
     2662</p>
    26632663
    26642664<p><a name="cmd"><h4>3.19. Command Line Options</h4></p>
    2665 <p> 
     2665<p>
    26662666Command line options are available to run BNC in 'no window' mode or let it read data offline from one or several files for debugging or Post Processing purposes. BNC will then use processing options from the involved 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 'BNC.bnc'.
    2667 </p> 
     2667</p>
    26682668
    26692669<p><a name="nw"><h4>3.19.1 No Window Mode - optional</h4></p>
    26702670<p>
    26712671Apart from its regular windows mode, BNC can be started on all systems as a batch job with command line option '-nw'. BNC will then run in 'no window' mode, using processing options from its configuration file on disk. Terminate BNC using Windows Task Manager when running it in 'no window' mode on Windows systems.
    2672 </p> 
    2673 <p> 
     2672</p>
     2673<p>
    26742674Example:<br><br>
    26752675bnc.exe -nw
     
    27162716</p>
    27172717<p>Note further that option '--file' forces BNC to appy the '-nw' option for running in 'no window' mode.
    2718 </p> 
     2718</p>
    27192719
    27202720<p><a name="conffile"><h4>3.19.3 Configuration File - optional</h4></p>
     
    27242724Example:<br><br>
    27252725./bnc --conf MyConfig.bnc
    2726 </p> 
    2727 <p> 
     2726</p>
     2727<p>
    27282728This leads to a BNC job using configuration file 'MyConfig.bnc'. The configuration file will be saved in the current working directory.
    2729 </p> 
     2729</p>
    27302730
    27312731<p><a name="confopt"><h4>3.19.4 Configuration Options - optional</h4></p>
    2732 <p> 
     2732<p>
    27332733BNC applies options from the configuration file but allows updating every one of them on the command line while the contents of the configuration file remains unchanged. The command line syntax for that looks as follows
    27342734</p>
     
    27472747<p>
    27482748./bnc --conf CONFIG.bnc --key proxyPort 8001 --key rnxIntr "1 day"
    2749 </p> 
     2749</p>
    27502750
    27512751<p><a name="limits"><h3>4. Limitations</h3></p>
    27522752<ul>
    27532753<li>
    2754 In Qt-based desktop environments (like KDE) on Unix/Linux platforms it may happen that you experience a crash of BNC at startup even when running the program 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 BNC. Entering the command 'unset SESSION_MANAGER' before running BNC may help as a work-around. 
     2754In Qt-based desktop environments (like KDE) on Unix/Linux platforms it may happen that you experience a crash of BNC at startup even when running the program 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 BNC. Entering the command 'unset SESSION_MANAGER' before running BNC may help as a work-around.
    27552755</li>
    27562756
     
    30063006</li>
    30073007<li>
    3008 Type 23 message provides the information on the antenna type used on the reference station. 
     3008Type 23 message provides the information on the antenna type used on the reference station.
    30093009</li>
    30103010<li>
     
    31193119
    31203120<p>
    3121 BNC comes with a number of configuration examples which can be used on all operating systems. Copy the complete directory 'Example_Configs' which comes with the software including sub-directories 'Input' and 'Output' to your disc. There are two ways to start BNC using one of the example configurations: 
     3121BNC comes with a number of configuration examples which can be used on all operating systems. Copy the complete directory 'Example_Configs' which comes with the software including sub-directories 'Input' and 'Output' to your disc. There are two ways to start BNC using one of the example configurations:
    31223122</p>
    31233123<ul>
     
    31353135
    31363136<p>
    3137 We furthermore suggest for convenience reasons that you configure your system to automatically start BNC when you double-click a file with the file name extension '.bnc'. The following describes what to do on Windows systems to associate the BNC program to such configuration files: 
     3137We furthermore suggest for convenience reasons that you configure your system to automatically start BNC when you double-click a file with the file name extension '.bnc'. The following describes what to do on Windows systems to associate the BNC program to such configuration files:
    31383138</p>
    31393139
     
    31483148
    31493149<p>
    3150 Some of the presented example configuration files contain a user ID 'Example' with a password 'Configs' for accessing a few GNSS streams from public Ntrip Broadcasters. This generic account is arranged for convenience reasons only. Please be so kind as to replace the generic account details as well as the place holders 'User' and 'Pass' by the personal user ID and password you receive following an online registration through <u>http://register.rtcm-ntrip.org</u>. 
    3151 </p>
    3152 
    3153 <p>
    3154 Note that the account for an Ntrip Broadcaster is usually limited to pulling a specified maximum number of streams at the same time. As running some of the example configurations requires pulling several streams, it is suggested to make sure that you don't exceed your account's limits. 
    3155 </p>
    3156 
    3157 <p>
    3158 Make also sure that sub-directories 'Input' and 'Output' which are part of the example configurations exist on your system or adjust the affected example configuration options according to your needs. 
    3159 </p>
    3160 
    3161 <p>
    3162 Some BNC options require antenna phase center variations as made available from IGS through so-called ANTEX files at <u>ftp://igs.org/pub/station/general</u>. An example ANTEX file 'igs08.atx' is part of the BNC package for convenience. 
    3163 </p>
    3164 
    3165 <p>
    3166 The example configurations assume that no proxy protects your BNC host. Should a proxy be operated in front of BNC then you need to introduce its IP and port in the 'Network' tab. 
     3150Some of the presented example configuration files contain a user ID 'Example' with a password 'Configs' for accessing a few GNSS streams from public Ntrip Broadcasters. This generic account is arranged for convenience reasons only. Please be so kind as to replace the generic account details as well as the place holders 'User' and 'Pass' by the personal user ID and password you receive following an online registration through <u>http://register.rtcm-ntrip.org</u>.
     3151</p>
     3152
     3153<p>
     3154Note that the account for an Ntrip Broadcaster is usually limited to pulling a specified maximum number of streams at the same time. As running some of the example configurations requires pulling several streams, it is suggested to make sure that you don't exceed your account's limits.
     3155</p>
     3156
     3157<p>
     3158Make also sure that sub-directories 'Input' and 'Output' which are part of the example configurations exist on your system or adjust the affected example configuration options according to your needs.
     3159</p>
     3160
     3161<p>
     3162Some BNC options require antenna phase center variations as made available from IGS through so-called ANTEX files at <u>ftp://igs.org/pub/station/general</u>. An example ANTEX file 'igs08.atx' is part of the BNC package for convenience.
     3163</p>
     3164
     3165<p>
     3166The example configurations assume that no proxy protects your BNC host. Should a proxy be operated in front of BNC then you need to introduce its IP and port in the 'Network' tab.
    31673167</p>
    31683168
     
    31733173
    31743174<li>File 'RinexObs.bnc'<br>
    3175 The purpose of this configuration is showing how to convert RTCM streams to RINEX Observation files. The configuration pulls streams from Ntrip Broadcasters using Ntrip version 1 to generate 15min 1Hz RINEX Version 3 Observation files. See http://igs.bkg.bund.de/ntrip/observations for observation stream resources. 
     3175The purpose of this configuration is showing how to convert RTCM streams to RINEX Observation files. The configuration pulls streams from Ntrip Broadcasters using Ntrip version 1 to generate 15min 1Hz RINEX Version 3 Observation files. See http://igs.bkg.bund.de/ntrip/observations for observation stream resources.
    31763176</li><br>
    31773177
    31783178<li>File 'RinexEph.bnc'<br>
    3179 The purpose of this configuration is showing how to convert a RTCM stream carrying navigation messages to a RINEX Navigation files. The configuration pulls an RTCM Version 3 stream with Broadcast Ephemeris coming from the real-time EUREF and IGS networks. It saves hourly RINEX Version 3 Navigation files. See http://igs.bkg.bund.de/ntrip/ephemeris for further real-time Broadcast Ephemeris resources. 
     3179The purpose of this configuration is showing how to convert a RTCM stream carrying navigation messages to a RINEX Navigation files. The configuration pulls an RTCM Version 3 stream with Broadcast Ephemeris coming from the real-time EUREF and IGS networks. It saves hourly RINEX Version 3 Navigation files. See http://igs.bkg.bund.de/ntrip/ephemeris for further real-time Broadcast Ephemeris resources.
    31803180</li><br>
    31813181
    31823182<li>File 'BrdcCorr.bnc'<br>
    3183 The purpose of this configuration is to save Broadcast Corrections from RTCM SSR messages in a plain ASCII format as hourly files. See http://igs.bkg.bund.de/ntrip/orbits for further real-time IGS or EUREF orbit/clock products. 
     3183The purpose of this configuration is to save Broadcast Corrections from RTCM SSR messages in a plain ASCII format as hourly files. See http://igs.bkg.bund.de/ntrip/orbits for further real-time IGS or EUREF orbit/clock products.
    31843184</li><br>
    31853185
    31863186<li>File 'RinexConcat.bnc'<br>
    3187 The purpose of this configuration is to concatenate RINEX Version 3 files to produce a concatenated file and edit the marker name in the file header. The sampling interval is set to 30 seconds. See section 'RINEX Editing & QC' in the documentation for examples on how to call BNC from command line in 'no window' mode for RINEX file editing, concatenation and quality checks. 
     3187The purpose of this configuration is to concatenate RINEX Version 3 files to produce a concatenated file and edit the marker name in the file header. The sampling interval is set to 30 seconds. See section 'RINEX Editing & QC' in the documentation for examples on how to call BNC from command line in 'no window' mode for RINEX file editing, concatenation and quality checks.
    31883188</li><br>
    31893189
    31903190<li>File 'RinexQC.bnc'<br>
    3191 The purpose of this configuration is to check the quality of a RINEX Version 3 file through a multipath analysis. The results is saved in disk in terms of a plot in PNG format. See section 'RINEX Editing & QC' in the documentation for examples on how to call BNC from command line in 'no window' mode for RINEX file editing, concatenation and quality checks. 
     3191The purpose of this configuration is to check the quality of a RINEX Version 3 file through a multipath analysis. The results is saved in disk in terms of a plot in PNG format. See section 'RINEX Editing & QC' in the documentation for examples on how to call BNC from command line in 'no window' mode for RINEX file editing, concatenation and quality checks.
    31923192</li><br>
    31933193
    31943194<li>File 'RTK.bnc'<br>
    3195 The purpose of this configuration is to feed a serial connected receiver with observations from a reference station for conventional RTK. The stream is scanned for RTCM messages. Message type numbers and latencies of incoming observation are reported in BNC's logfile. 
     3195The purpose of this configuration is to feed a serial connected receiver with observations from a reference station for conventional RTK. The stream is scanned for RTCM messages. Message type numbers and latencies of incoming observation are reported in BNC's logfile.
    31963196</li><br>
    31973197
    31983198<li>File 'FeedEngine.bnc'<br>
    3199 The purpose of this configuration is to feed a real-time GNSS engine with observations from a remote reference stations. The configuration pulls a single stream from an NTRIP Broadcasters. It would of course be possible to pull several streams from different casters. Incoming observations are decoded, synchronized and output through a local IP port and saved into a file. Failure and recovery thresholds are specified to inform about outages. 
     3199The purpose of this configuration is to feed a real-time GNSS engine with observations from a remote reference stations. The configuration pulls a single stream from an NTRIP Broadcasters. It would of course be possible to pull several streams from different casters. Incoming observations are decoded, synchronized and output through a local IP port and saved into a file. Failure and recovery thresholds are specified to inform about outages.
    32003200</li><br>
    32013201
    32023202<li>File 'PPP.bnc'<br>
    3203 The purpose of this configuration is Precise Point Positioning from observations of a rover receiver. The configuration reads RTCM Version 3 observations, a Broadcast Ephemeris stream and a stream with Broadcast Corrections. Positions are saved in the logfile. 
     3203The purpose of this configuration is Precise Point Positioning from observations of a rover receiver. The configuration reads RTCM Version 3 observations, a Broadcast Ephemeris stream and a stream with Broadcast Corrections. Positions are saved in the logfile.
    32043204</li><br>
    32053205
     
    32093209
    32103210<li>File 'PPPPostProc.bnc'<br>
    3211 The purpose of this configuration is Precise Point Positioning in Post Processing mode. BNC reads a RINEX Observation and a RINEX Version 3 Navigation files and a Broadcast Corrections files. PPP processing options are set to support the Quick-Start mode. The output is saved in a specific Post Processing logfile and contains the coordinates derived over time following the implemented PPP filter algorithm. 
     3211The purpose of this configuration is Precise Point Positioning in Post Processing mode. BNC reads a RINEX Observation and a RINEX Version 3 Navigation files and a Broadcast Corrections files. PPP processing options are set to support the Quick-Start mode. The output is saved in a specific Post Processing logfile and contains the coordinates derived over time following the implemented PPP filter algorithm.
    32123212</li><br>
    32133213
     
    32213221
    32223222<li>File 'Sp3.bnc'<br>
    3223 The purpose of this configuration is to produce SP3 files from a Broadcast Ephemeris stream and a Broadcast Corrections stream. The Broadcast Corrections stream is formally introduced in BNC's 'Combine Corrections' table. Note that producing SP3 requires an ANTEX file because SP3 file contents should be referred to CoM. 
     3223The purpose of this configuration is to produce SP3 files from a Broadcast Ephemeris stream and a Broadcast Corrections stream. The Broadcast Corrections stream is formally introduced in BNC's 'Combine Corrections' table. Note that producing SP3 requires an ANTEX file because SP3 file contents should be referred to CoM.
    32243224</li><br>
    3225  
     3225
    32263226<li>File 'Sp3ETRF2000PPP.bnc'<br>
    3227 The purpose of this configuration is to produce SP3 files from a Broadcast Ephemeris stream and a stream carrying ETRF2000 Broadcast Corrections. The Broadcast Corrections stream is formally introduced in BNC's 'Combine Corrections' table. This leads to an SP3 file containing orbits referred also to ETRF2000. Pulling in addition observations from a reference station at precisely known ETRF2000 position allows comparing an 'INTERNAL' PPP solution with ETRF2000 reference coordinates. 
     3227The purpose of this configuration is to produce SP3 files from a Broadcast Ephemeris stream and a stream carrying ETRF2000 Broadcast Corrections. The Broadcast Corrections stream is formally introduced in BNC's 'Combine Corrections' table. This leads to an SP3 file containing orbits referred also to ETRF2000. Pulling in addition observations from a reference station at precisely known ETRF2000 position allows comparing an 'INTERNAL' PPP solution with ETRF2000 reference coordinates.
    32283228</li><br>
    32293229
    32303230<li>File 'Upload.bnc'<br>
    3231 The purpose of this configuration is to upload orbits and clocks from a real-time GNSS engine to an NTRIP Broadcaster. For that the configuration reads precise orbits and clocks in RTNET format. It also reads a stream carrying Broadcast Ephemeris. BNC converts the orbits and clocks into Broadcast Corrections and encodes them in RTCM Version 3 SSR messages to upload them to an NTRIP Broadcaster. The Broadcast Corrections stream is referred to satellite Antenna Phase Center (APC) and IGS08. Orbits are saved on disk in SP3 format and clocks in Clock RINEX format. 
     3231The purpose of this configuration is to upload orbits and clocks from a real-time GNSS engine to an NTRIP Broadcaster. For that the configuration reads precise orbits and clocks in RTNET format. It also reads a stream carrying Broadcast Ephemeris. BNC converts the orbits and clocks into Broadcast Corrections and encodes them in RTCM Version 3 SSR messages to upload them to an NTRIP Broadcaster. The Broadcast Corrections stream is referred to satellite Antenna Phase Center (APC) and IGS08. Orbits are saved on disk in SP3 format and clocks in Clock RINEX format.
    32323232</li><br>
    32333233
     
    32353235This configuration equals the 'Upload.bnc' configuration. However, the Broadcast Corrections are in addition used for an 'INTERNAL' PPP solution based on observations from a static reference station with known precise coordinates. This allows a continuous quality check of the Broadcast Corrections through observing coordinate displacements.
    32363236</li><br>
    3237  
     3237
    32383238<li>File 'Combi.bnc'<br>
    3239 The purpose of this configuration is to pull several streams carrying Broadcast Corrections and a Broadcast Ephemeris stream from an NTRIP Broadcaster to produce a combined Broadcast Corrections stream. BNC encodes the combination product in RTCM Version 3 SSR messages and uploads that to an Ntrip Broadcaster. The Broadcast Corrections stream is not referred to satellite Center of Mass (CoM). It is referred to IGS08. Orbits are saved in SP3 format and clocks in Clock RINEX format. 
     3239The purpose of this configuration is to pull several streams carrying Broadcast Corrections and a Broadcast Ephemeris stream from an NTRIP Broadcaster to produce a combined Broadcast Corrections stream. BNC encodes the combination product in RTCM Version 3 SSR messages and uploads that to an Ntrip Broadcaster. The Broadcast Corrections stream is not referred to satellite Center of Mass (CoM). It is referred to IGS08. Orbits are saved in SP3 format and clocks in Clock RINEX format.
    32403240</li><br>
    32413241
    32423242<li>File 'CombiPPP.bnc'<br>
    3243 This configuration equals the 'Combi.bnc' configuration. However, the combined Broadcast Corrections are in addition used for an 'INTERNAL' PPP solutions based on observations from a static reference station with known precise coordinates. This allows a continuous quality check of the combination product through observing coordinate displacements. 
     3243This configuration equals the 'Combi.bnc' configuration. However, the combined Broadcast Corrections are in addition used for an 'INTERNAL' PPP solutions based on observations from a static reference station with known precise coordinates. This allows a continuous quality check of the combination product through observing coordinate displacements.
    32443244</li><br>
    32453245
    32463246<li>File 'UploadEph.bnc'<br>
    3247 The purpose of this configuration is to pull a number of streams from reference stations to get hold of contained Broadcast Ephemeris messages. These are encoded then in a RTCM Version 3 stream which only provides Broadcast Ephemeris with an update rate of 5 seconds. 
     3247The purpose of this configuration is to pull a number of streams from reference stations to get hold of contained Broadcast Ephemeris messages. These are encoded then in a RTCM Version 3 stream which only provides Broadcast Ephemeris with an update rate of 5 seconds.
    32483248</li>
    32493249
     
    34153415</p>
    34163416<p>
    3417 Note that the following configuration options saved on disk can be changed/edited on-the-fly while BNC is already processing data: 
     3417Note that the following configuration options saved on disk can be changed/edited on-the-fly while BNC is already processing data:
    34183418</p>
    34193419<p>
     
    34223422<li>'waitTime' to change the 'Wait for full obs epoch' option, see section 'Feed Engine';</li>
    34233423<li>'binSampl' to change the 'Sampling' option, see section 'Feed Engine'.</li>
    3424 <li>'outFile' to change the 'File' name where synchronized observations are saved in plain ASCII format.</li> 
     3424<li>'outFile' to change the 'File' name where synchronized observations are saved in plain ASCII format.</li>
    34253425</ul>
    34263426</p>
     
    34703470</table>
    34713471
    3472  
     3472
  • trunk/BNC/src/upload/bncrtnetuploadcaster.cpp

    r5655 r5662  
    1111 * Created:    29-Mar-2011
    1212 *
    13  * Changes:   
     13 * Changes:
    1414 *
    1515 * -----------------------------------------------------------------------*/
    1616
    1717#include <math.h>
    18 #include "bncrtnetuploadcaster.h" 
     18#include "bncrtnetuploadcaster.h"
    1919#include "bncsettings.h"
    2020#include "bncephuser.h"
     
    2828bncRtnetUploadCaster::bncRtnetUploadCaster(const QString& mountpoint,
    2929                                 const QString& outHost, int outPort,
    30                                  const QString& password, 
    31                                  const QString& crdTrafo, bool  CoM, 
     30                                 const QString& password,
     31                                 const QString& crdTrafo, bool  CoM,
    3232                                 const QString& sp3FileName,
    3333                                 const QString& rnxFileName,
     
    156156    _oyr =  0.000000;
    157157    _ozr =  0.000000;
    158     _sc  =     0.000;
     158    _sc  =    -1.000;
    159159    _scr =     0.000;
    160160    _t0  =    0000.0;
     
    225225}
    226226
    227 // 
     227//
    228228////////////////////////////////////////////////////////////////////////////
    229229void bncRtnetUploadCaster::decodeRtnetStream(char* buffer, int bufLen) {
    230                                        
     230
    231231  QMutexLocker locker(&_mutex);
    232232
     
    274274  bncTime epoTime; epoTime.set( year, month, day, hour, min, sec);
    275275
    276   emit(newMessage("bncRtnetUploadCaster: decode " + 
     276  emit(newMessage("bncRtnetUploadCaster: decode " +
    277277                  QByteArray(epoTime.datestr().c_str()) + " " +
    278                   QByteArray(epoTime.timestr().c_str()) + " " + 
     278                  QByteArray(epoTime.timestr().c_str()) + " " +
    279279                  _casterID.toAscii(), false));
    280280
     
    290290  co.SSRProviderID     = _PID; // 256 .. BKG,  257 ... EUREF
    291291  co.SSRSolutionID     = _SID;
    292  
     292
    293293  struct Bias bias;
    294294  memset(&bias, 0, sizeof(bias));
    295295  bias.GPSEpochTime     = co.GPSEpochTime;
    296296  bias.GLONASSEpochTime = co.GLONASSEpochTime;
    297  
     297
    298298  // Default Update Interval
    299299  // -----------------------
     
    332332
    333333  for (int ii = 1; ii < lines.size(); ii++) {
    334  
     334
    335335    QString      prn;
    336336    ColumnVector rtnAPC;
     
    338338    ColumnVector rtnCoM;
    339339    double       rtnClk;
    340  
     340
    341341    QTextStream in(lines[ii].toAscii());
    342342
     
    418418          }
    419419        }
    420       } 
     420      }
    421421      struct ClockOrbit::SatData* sd = 0;
    422422      if      (prn[0] == 'G') {
     
    430430      if (sd) {
    431431        QString outLine;
    432         processSatellite(eph, epoTime.gpsw(), epoTime.gpssec(), prn, 
     432        processSatellite(eph, epoTime.gpsw(), epoTime.gpssec(), prn,
    433433                         rtnAPC, rtnClk, rtnVel, rtnCoM, sd, outLine);
    434434      }
    435  
     435
    436436      struct Bias::BiasSat* biasSat = 0;
    437437      if      (prn[0] == 'G') {
     
    443443        ++bias.NumberOfGLONASSSat;
    444444      }
    445  
     445
    446446      // Code Biases
    447447      // -----------
     
    567567  }
    568568
    569   QByteArray hlpBufferCo; 
     569  QByteArray hlpBufferCo;
    570570
    571571  // Orbit and Clock Corrections together
     
    616616    }
    617617  }
    618  
     618
    619619  // Biases
    620620  // ------
    621   QByteArray hlpBufferBias; 
     621  QByteArray hlpBufferBias;
    622622  if (bias.NumberOfGPSSat > 0 || bias.NumberOfGLONASSSat > 0) {
    623623    char obuffer[CLOCKORBIT_BUFFERSIZE];
     
    631631}
    632632
    633 // 
     633//
    634634////////////////////////////////////////////////////////////////////////////
    635 void bncRtnetUploadCaster::processSatellite(t_eph* eph, int GPSweek, 
     635void bncRtnetUploadCaster::processSatellite(t_eph* eph, int GPSweek,
    636636                                            double GPSweeks, const QString& prn,
    637637                                            const ColumnVector& rtnAPC,
     
    647647  ColumnVector vB(3);
    648648  eph->position(GPSweek, GPSweeks, xB.data(), vB.data());
    649  
     649
    650650  // Precise Position
    651651  // ----------------
    652652  ColumnVector xP = _CoM ? rtnCoM : rtnAPC;
    653653
    654   double dc = 0.0;   
     654  double dc = 0.0;
    655655  if (_crdTrafo != "IGS08") {
    656656    crdTrafo(GPSweek, xP, dc);
    657657  }
    658  
     658
    659659  // Difference in xyz
    660660  // -----------------
    661661  ColumnVector dx = xB.Rows(1,3) - xP;
    662662  ColumnVector dv = vB           - rtnVel;
    663  
     663
    664664  // Difference in RSW
    665665  // -----------------
     
    688688  }
    689689
    690   outLine.sprintf("%d %.1f %s  %3d  %10.3f  %8.3f %8.3f %8.3f\n", 
     690  outLine.sprintf("%d %.1f %s  %3d  %10.3f  %8.3f %8.3f %8.3f\n",
    691691                  GPSweek, GPSweeks, eph->prn().toAscii().data(),
    692692                  eph->IOD(), dClk, rsw(1), rsw(2), rsw(3));
     
    705705// Transform Coordinates
    706706////////////////////////////////////////////////////////////////////////////
    707 void bncRtnetUploadCaster::crdTrafo(int GPSWeek, ColumnVector& xyz, 
     707void bncRtnetUploadCaster::crdTrafo(int GPSWeek, ColumnVector& xyz,
    708708                                    double& dc) {
    709709
Note: See TracChangeset for help on using the changeset viewer.