Changeset 1230 in ntrip


Ignore:
Timestamp:
Nov 23, 2008, 12:13:21 PM (15 years ago)
Author:
weber
Message:

* empty log message *

Location:
trunk/BNC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/bnchelp.html

    r1220 r1230  
    3636<li>retrieve real-time GNSS data streams available through NTRIP transport protocol,</li>
    3737<li>generate high-rate RINEX Observation and Navigation files to support near real-time GNSS post-processing applications, and/or</li>
    38 <li>generate ephemeris and synchronized observations epoch by epoch through an IP port to support real-time GNSS engines, and/or</li>
     38<li>generate ephemeris and synchronized or unsynchronized observations epoch by epoch through an IP port to support real-time GNSS engines, and/or</li>
    3939<li>generate clock and orbit corrections to broadcast ephemeris through an IP port to support real-time Precise Point Positioning on GNSS rovers, and/or</li>
    4040<li>generate synchronized clock and orbit corrections to broadcast ephemeris epoch by epoch through an IP port to support the combination of such streams as coming simultaneously from various correction providers, and/or</li>
     
    9393&nbsp; &nbsp; &nbsp; 3.6.3. <a href=#ephport>Port</a><br>
    9494&nbsp; &nbsp; &nbsp; 3.6.4. <a href=#ephvers>Version</a><br>
    95 3.7. <a href=#syncout>Synchronized Observations</a><br>
    96 &nbsp; &nbsp; &nbsp; 3.7.1. <a href=#syncport>Port</a><br>
     953.7. <a href=#syncout>Feed Engine</a><br>
     96&nbsp; &nbsp; &nbsp; 3.7.1. <a href=#syncport>Port (synchronized)</a><br>
    9797&nbsp; &nbsp; &nbsp; 3.7.2. <a href=#syncwait>Wait for Full Epoch</a><br>
    98 &nbsp; &nbsp; &nbsp; 3.7.3. <a href=#syncfile>File</a><br>
    99 &nbsp; &nbsp; &nbsp; 3.7.4. <a href=#syncsample>Sampling</a><br>
     98&nbsp; &nbsp; &nbsp; 3.7.3. <a href=#syncuport>Port (unsynchronized)</a><br>
     99&nbsp; &nbsp; &nbsp; 3.7.4. <a href=#syncfile>File</a><br>
     100&nbsp; &nbsp; &nbsp; 3.7.5. <a href=#syncsample>Sampling</a><br>
    1001013.8. <a href=#correct>Ephemeris Corrections</a><br>
    101102&nbsp; &nbsp; &nbsp; 3.8.1. <a href=#corrdir>Directory</a><br>
     
    344345</p>
    345346
    346 <p><a name="syncout"><h4>3.7. Synchronized Observations</h4></p>
    347 <p>
    348 BNC can generate synchronized epoch by epoch observations from all stations and satellites. The output can be in either a plain ASCII format and/or a binary format. It comprises the following observations where available:</p>
    349 <p>
    350 StatID, SVPRN, GPSWeek, GPSWeeks, C1, C2, P1, P2, L1, L2, S1, S2, SNR1, SNR2
    351 </p>
    352 <p>
    353 Note that SNR stands for the signal-to-noise ratio 'S' mapped to integer numbers 1 to 9. In case an observation is not available, its value is set to zero '0.000'.
    354 </p>
    355 
    356 <p><a name="syncport"><h4>3.7.1 Port - optional</h4></p>
     347<p><a name="syncout"><h4>3.7. Feed Engine</h4></p>
     348<p>
     349BNC can generate synchronized or unsynchronized observations epoch by epoch from all stations and satellites to feed a real-time GNSS engine. The output can be produced in a binary format through an IP port and/or a plain ASCII format to save the observations in a local file. It comprises the following observations where available:</p>
     350<p>
     351StatID, SVPRN, GPSWeek, GPSWeeks, C1, C2, P1, P2, L1, L2, slip__cnt_L1, slip__cnt_L2, lock__timei_L1, lock__timei_L2, S1, S2, SNR1, SNR2
     352</p>
     353<p>
     354Note that slip_cnt stands for the cumulative loss of continuity indicator, lock_timei for the lock time indicator, and SNR for the signal-to-noise ratio 'S' mapped to integer numbers 1 to 9. In case an observation is not available, its value is set to zero '0.000'. Loss of continuity indicator and lock time indicator are set to nedative values if undefined.
     355</p>
     356
     357<p><a name="syncport"><h4>3.7.1 Port (synchronized) - optional</h4></p>
    357358<p>
    358359BNC can produce synchronized observations in binary format on your local host (IP 127.0.0.1) through an IP 'Port'. Specify an IP port number here to activate this function. The default is an empty option field, meaning that no binary output is generated.</p>
     
    403404
    404405<p>
    405 The source code for BNC comes with an example program called 'test_bnc_qt.cpp' that allows you to read BNC's binary observation output from the IP port (hard-coded to 1968) and save the observations in file 'obs.txt'.
    406 </p>
    407 <p>
    408 Note that any socket connection of an application to BNC's Synchronized Observations Port is recorded in the Log section on the bottom of the main window together with a connection counter, leading to log records like 'New Connection # 1'.
    409 </p>
    410 
    411 <p><a name="syncwait"><h4>3.7.2 Wait for Full Epoch - mandatory if 'Port' is set</h4></p>
    412 <p>
    413 When feeding a real-time GNSS engine waiting for input epoch by epoch, BNC drops whatever is received later than 'Wait for full epoch' seconds. A value of 3 to 5 seconds could be an appropriate choice for that, depending on the latency of the incoming streams and the delay acceptable for your real-time GNSS product. Default value for 'Wait for full epoch' is 5 seconds.
     406The source code for BNC comes with an example program called 'test_bnc_qt.cpp' that allows you to read BNC's binary observation output from the IP port and print the observations in a plain ASCII format on standard output.
     407</p>
     408<p>
     409Note that any socket connection of an application to BNC's synchronized observations 'Port' is recorded in the Log section on the bottom of the main window together with a connection counter, leading to log records like 'New Connection # 1'.
     410</p>
     411
     412<p><a name="syncwait"><h4>3.7.2 Wait for Full Epoch - mandatory if 'Port (synchronized)' is set</h4></p>
     413<p>
     414When feeding a real-time GNSS engine waiting for synchronized input epoch by epoch, BNC drops whatever is received later than 'Wait for full epoch' seconds. A value of 3 to 5 seconds could be an appropriate choice for that, depending on the latency of the incoming streams and the delay acceptable for your real-time GNSS product. Default value for 'Wait for full epoch' is 5 seconds.
    414415</p>
    415416<p>
     
    417418</p>
    418419
    419 <p><a name="syncfile"><h4>3.7.3 File - optional</h4></p>
    420 <p>
    421 Specifies 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.
     420<p><a name="syncuport"><h4>3.7.3 Port (unsynchronized) - optional</h4></p>
     421An application may want to receive unsynchronized observations from reference stations. If so, BNC can produce such unsynchronized observations in binary format on your local host (IP 127.0.0.1) through an IP 'Port'. Specify an IP port number here to activate this function. The default is an empty option field, meaning that no binary unsynchronized output is generated.</p>
     422
     423<p>
     424The example program 'test_bnc_qt.cpp' allows you to read BNC's unsynchronized binary observation output from the IP port and print the observations in a plain ASCII format on standard output.
     425</p>
     426<p>
     427Note that any socket connection of an application to BNC's unsynchronized observations 'Port' is recorded in the Log section on the bottom of the main window together with a connection counter, leading to log records like 'New Connection # 1'.
     428</p>
     429
     430
     431<p><a name="syncfile"><h4>3.7.4 File - optional</h4></p>
     432<p>
     433Specifies the full path to a 'File' where synchronized or unsynchronized observations are saved in plain ASCII format. The default value is an empty option field, meaning that no ASCII output file is created.
    422434</p>
    423435<p>
     
    425437</p>
    426438
    427 <p><a name="syncsample"><h4>3.7.4 Sampling - mandatory if 'File' or 'Port' is set</h4></p>
     439<p><a name="syncsample"><h4>3.7.5 Sampling - mandatory if 'File' or 'Port' is set</h4></p>
    428440<p>
    429441Select the observation output sampling interval in seconds. A value of zero '0' tells BNC to send/store all received epochs. This is the default value.
     
    812824<tr><td>Jul 2007 &nbsp;</td><td>Version 1.4 &nbsp;</td><td>[Bug] Skip messages from proxy server<br> [Bug] Call RINEX script through 'nohup'</td></tr>
    813825<tr><td>Apr 2008 &nbsp;</td><td>Version 1.5 &nbsp;</td><td>[Add] Handle ephemeris from RTCM Version 3.x streams<br> [Add] Upgrade to Qt Version 4.3.2<br> [Add] Optional RINEX v3 output<br> [Add] SBAS support<br> [Bug] RINEX skeleton download following stream outage<br> [Add] Handle ephemeris from RTIGS streams<br> [Add] Monitor stream failure/recovery and latency<br> [Mod] Redesign of main window<br> [Bug] Freezing of About window on Mac systems<br> [Bug] Fixed problem with PRN 32 in RTCMv2 decoder<br> [Bug] Fix for Trimble 4000SSI receivers in RTCMv2 decoder<br> [Mod] Major revision of input buffer in RTCMv2 decoder</td></tr>
    814 <tr><td>Nov 2008 &nbsp;</td><td>Version 1.6 &nbsp;</td><td>[Mod] Fill blanc columns in RINEXv3 with 0.000<br> [Add] RTCMv3 decoder for clock and orbit corrections<br>[Add] Check RTCMv3 streams for incoming message types<br> [Add] Decode RTCMv2 message types 3, 20, 21, and 22<br> [Add] Loss of lock and lock time indicator<br> [Bug] Rounding error in RTCMv3 decoder concerning GLONASS height<br> [Mod] Accept GLONASS in RTCMv3 when transmitted first<br> [Add] Leap second 1 January 2009<br> [Add] Offline mode, read data from file<br> [Add] Output antenna descriptor, coordinates and excentricities from RTCMv3<br> [Add] Re-configuration on-the-fly <br>[Mod] Binary ouput of synchronized observations</td></tr>
     826<tr><td>Nov 2008 &nbsp;</td><td>Version 1.6 &nbsp;</td><td>[Mod] Fill blanc columns in RINEXv3 with 0.000<br> [Add] RTCMv3 decoder for clock and orbit corrections<br>[Add] Check RTCMv3 streams for incoming message types<br> [Add] Decode RTCMv2 message types 3, 20, 21, and 22<br> [Add] Loss of lock and lock time indicator<br> [Bug] Rounding error in RTCMv3 decoder concerning GLONASS height<br> [Mod] Accept GLONASS in RTCMv3 when transmitted first<br> [Add] Leap second 1 January 2009<br> [Add] Offline mode, read data from file<br> [Add] Output antenna descriptor, coordinates and excentricities from RTCMv3<br> [Add] Re-configuration on-the-fly <br>[Mod] Binary ouput of synchronized observations <br> [Add] Binary output of unsynchronized observations</td></tr>
    815827</table>
    816828</p>
     
    10201032outFile=/home/user/ascii
    10211033outPort=2101
     1034outUPort=
    10221035perfIntr=
    10231036proxyHost=proxyhost
  • trunk/BNC/bncwindow.cpp

    r1222 r1230  
    263263  _proxyHostLineEdit->setWhatsThis(tr("<p>If you are running BNC 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 BNC. If you do not know the IP and port of your proxy server, check the proxy server settings in your Internet browser or ask your network administrator.</p><p>Note that IP streaming is sometimes 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 broadcasters. If these are not possible, you might need to run BNC outside your LAN on a network that has unobstructed connection to the Internet.</p>"));
    264264  _proxyPortLineEdit->setWhatsThis(tr("<p>If you are running BNC 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 BNC. If you do not know the IP and port of your proxy server, check the proxy server settings in your Internet browser or ask your network administrator.</p><p>Note that IP streaming is sometimes 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 broadcasters. If these are not possible, you might need to run BNC outside your LAN on a network that has unobstructed connection to the Internet.</p>"));
    265   _waitTimeSpinBox->setWhatsThis(tr("<p>When feeding a real-time GNSS engine waiting for input epoch by epoch, BNC drops whatever is received later than 'Wait for full epoch' seconds. A value of 3 to 5 seconds is recommended, depending on the latency of the incoming streams and the delay acceptable to your real-time GNSS engine or products.</p><p>Note that 'Wait for full epoch' does not effect the RINEX Observation file content. Observations received later than 'Wait for full epoch' seconds will still be included in the RINEX Observation files.</p>"));
     265  _waitTimeSpinBox->setWhatsThis(tr("<p>When feeding a real-time GNSS engine waiting for synchronized input epoch by epoch, BNC drops whatever is received later than 'Wait for full epoch' seconds. A value of 3 to 5 seconds is recommended, depending on the latency of the incoming streams and the delay acceptable to your real-time GNSS engine or products.</p><p>Note that 'Wait for full epoch' does not effect the RINEX Observation file content. Observations received later than 'Wait for full epoch' seconds will still be included in the RINEX Observation files.</p>"));
    266266  _outFileLineEdit->setWhatsThis(tr("Specify the full path to a file where synchronized observations are saved in plain ASCII format. Beware that the size of this file can rapidly increase depending on the number of incoming streams."));
    267267  _outPortLineEdit->setWhatsThis(tr("BNC can produce synchronized observations in binary format on your local host through an IP port. Specify a port number here to activate this function."));
    268   _outPortLineEdit->setWhatsThis(tr("Unsynchronized observations in binary format on your local host through an IP port. Specify a port number here to activate this function."));
     268  _outUPortLineEdit->setWhatsThis(tr("BNC can produce usynchronized observations in binary format on your local host through an IP port. Specify a port number here to activate this function."));
    269269  _outEphPortLineEdit->setWhatsThis(tr("BNC can produce ephemeris data in RINEX ASCII format on your local host through an IP port. Specify a port number here to activate this function."));
    270270  _corrPortLineEdit->setWhatsThis(tr("BNC can produce Broadcast Ephemeris Corrections on your local host through an IP port. Specify a port number here to activate this function."));
     
    313313  aogroup->addTab(ogroup,tr("RINEX Observations"));
    314314  aogroup->addTab(egroup,tr("RINEX Ephemeris"));
    315   aogroup->addTab(sgroup,tr("Synchronized Observations"));
     315  aogroup->addTab(sgroup,tr("Feed Engine"));
    316316  aogroup->addTab(cgroup,tr("Ephemeris Corrections"));
    317317  aogroup->addTab(agroup,tr("Monitor"));
     
    346346  QGridLayout* sLayout = new QGridLayout;
    347347  sLayout->setColumnMinimumWidth(0,14*ww);
    348   sLayout->addWidget(new QLabel("Port"),                          0, 0);
     348  sLayout->addWidget(new QLabel("Port (synchronized)"),            0, 0);
    349349  sLayout->addWidget(_outPortLineEdit,                            0, 1);
    350   sLayout->addWidget(new QLabel("Port (Unsynchronized)"),         0, 2);
    351   sLayout->addWidget(_outUPortLineEdit,                           0, 3);
    352   sLayout->addWidget(new QLabel("Wait for full epoch"),           1, 0);
    353   sLayout->addWidget(_waitTimeSpinBox,                            1, 1);
     350  sLayout->addWidget(new QLabel("Wait for full epoch"),           0, 2, Qt::AlignRight);
     351  sLayout->addWidget(_waitTimeSpinBox,                            0, 3, Qt::AlignLeft);
     352  sLayout->addWidget(new QLabel("Port (unsynchronized)"),         1, 0);
     353  sLayout->addWidget(_outUPortLineEdit,                           1, 1);
    354354  sLayout->addWidget(new QLabel("File (full path)"),              2, 0);
    355   sLayout->addWidget(_outFileLineEdit,                            2, 1, 1, 3);
    356   sLayout->addWidget(new QLabel("Sampling"),                      3, 0, Qt::AlignLeft);
    357   sLayout->addWidget(_binSamplSpinBox,                            3, 1, Qt::AlignLeft);
    358   sLayout->addWidget(new QLabel("Output synchronized observations epoch by epoch."),4,0,1,4,Qt::AlignLeft);
     355  sLayout->addWidget(_outFileLineEdit,                            2, 1, 1, 30);
     356  sLayout->addWidget(new QLabel("Sampling"),                      3, 0);
     357  sLayout->addWidget(_binSamplSpinBox,                            3, 1,1,1, Qt::AlignLeft);
     358  sLayout->addWidget(new QLabel("Output decoded synchronized or unsynchronized observations epoch by epoch to feed an engine."),4,0,1,30);
    359359  sLayout->addWidget(new QLabel("    "),5,0);
    360   sLayout->addWidget(new QLabel("    "),6,0);
    361360  sgroup->setLayout(sLayout);
     361
     362//QGridLayout* oLayout = new QGridLayout;
     363//oLayout->setColumnMinimumWidth(0,14*ww);
     364//oLayout->addWidget(new QLabel("Directory"),                     0, 0);
     365//oLayout->addWidget(_rnxPathLineEdit,                            0, 1,1,12);
     366//oLayout->addWidget(new QLabel("Interval"),                      1, 0);
     367//oLayout->addWidget(_rnxIntrComboBox,                            1, 1);
     368//oLayout->addWidget(new QLabel("Sampling"),                      1, 2, Qt::AlignRight);
     369//oLayout->addWidget(_rnxSamplSpinBox,                            1, 3, Qt::AlignLeft);
     370//oLayout->addWidget(new QLabel("Skeleton extension"),            2, 0);
     371//oLayout->addWidget(_rnxSkelLineEdit,                            2, 1,1,1, Qt::AlignLeft);
     372//oLayout->addWidget(new QLabel("Script (full path)"),            3, 0);
     373//oLayout->addWidget(_rnxScrpLineEdit,                            3, 1,1,12);
     374//oLayout->addWidget(new QLabel("Version 3"),                     4, 0);
     375//oLayout->addWidget(_rnxV3CheckBox,                              4, 1);
     376//oLayout->addWidget(new QLabel("Saving RINEX observation files."),5,0,1,12, Qt::AlignLeft);
     377//ogroup->setLayout(oLayout);
     378 
    362379
    363380  QGridLayout* eLayout = new QGridLayout;
Note: See TracChangeset for help on using the changeset viewer.