Simulator Status - Config Display

When the Config radio button is pressed, the status information displays the internal configuration of the sonar system. The display is updated when the Update button is pressed.

This information is helpful for verifying topside behavior. After a message is sent, it can be verified that the settings were correctly modified within the sonar program on this display.

Also included are many diagnostic values for internal testing purposes 

 

The “Config Item” combo box is used to select which details to display.

Summary: Overally summary status.  Among that items that can be useful here are the overflow counters which when incrementing indicate that data is being dropped somewhere in the processing chain, and time synchronization statistics.

Serial: Displays statistics of each enabled serial port device.

NMEA: Displays parsing info on NMEA strings.  This data is used to fill in some of the sonar header fields (such as latitude and longitude).

Sub: Displays details on the parameters currently set for a subsystem (eg ping rate).

Net: Displays network connection details.

More details on some items is included below:

Low Rate IO

This area displays the raw low rate IO analog data which includes temperature sensors. Used in a bottle system for health monitoring (eg Power supplies, power amp feedback).

Status

This area displays the values that would be returned from a SONAR_MESSAGE_SYSTEM_STATUS message.

128Buffers: This value indicates the total number of 128 sample buffers of data that have been acquired from all sources to date. When pinging for any subsystem is enabled this number should be incrementing over time.

OF Count: This value indicates the total number of errors detected to date.

LastErrors: The error codes from the most recent 10 errors. The currently defined error codes are:

Error Number

Description

0

No Error

1

Command Message Failed

2

Command Message Failed Data Size Differs from Expected Size

3

Subsystem Not Defined

4

Channel Not Defined

5

Unknown Message

6

Pulse File Load Failed

7

Reserved

8

Reserved

9

Reserved

10

Reserved

 

Main

This area summarizes some overall internal variables of the Sonar System.

Priority: Indicates the internal priority class of the sonar program, where 0 is normal, 1 is high, and 2 is time-critical.

Simulator: Indicates the behavior of the simulator data. A value of 2 will loop back the outgoing pulse with a random time delay back into the input. A value of 1 will send a periodic step wedge into the input. Since TVG and pulse compression is performed on the data by default, the data output to the topside is not identical to this. The option DspSimulator in the Sonar.Ini file sets this value.

NetCmd and NetData : Indicates whether these sockets are currently connected.

 

Overflow Counters

 

There is a processing pipeline which begins at a low level data acquisition card and completes with formatted data sent out the network.  At each stage there are performance counters that indicate if there are problems at that stage.  If data cannot be enquued to the next stage because a queue is full, and overflow counter is incremented.  The FinalQ counter is the network output queue, and the most common one to have a problem.  When connecting to the sonar, is it important to set the TCP/IP buffers to large values (eg 100,000 bytes on the data socket) because the default sizes are much too small to sustain sonar data rates.  The queue depth values can be used to determine if the throughput is adequate and is an early indication of a throughput problem.  In addition to the network queue, a second queue for local storage of sonar data is also present.

 

Time Sync

Most systems have a dedicated processor for real time control of the sonar ping timing as well as a higher level computer.  Since sonar records are time stamped at the lowest level, a sonar application has two time bases.  Time sync between the higher and lower levels is automatic, but a feed back loop is required to keep these in sync.  The time of the higher level computer can be set via NMEA strings or messages on the command socket.  The time sync statistics indicated how well these two time bases are kept in sync.  Min, max, and most recent errors in time sources are displayed here.

Last Delta: Indicates the correction factor in 0.5 ms of the last time sync message from the topside (SONAR_MESSAGE_TIME_DELTA). The LSB of this value is a counter and toggles between 0 and 1 to indicate new message arrivals. Therefore, subsequent messages from the topside will cause this value to change between even and odd numbers.

 

Net

Shows for both Command (C ) and data (D):

O : Connection counter which is incremented on each network connect and disconnect.

R : Received message counter

X : Transmitted message counter.

SUB #N:

This area lists the internal variables of a subsystem. The first subsystem is always 0.

SonarOn: Indicates the current ping state of the subsystem, where 0 is off and 1 is on. SONAR_MESSAGE_PING messages from the topside change this value.

Trigger: Indicates the current trigger mode, where 0 is internal and 1 is external. SONAR_MESSAGE_PING_TRIGGER messages from the topside change this value.

Samp/Ping: Indicates the total ADC samples per ping for internal triggering. The actual ping interval will be this many samples at the current ADC sample rate as specified by IO channel 0. This value is effected by the pulse selected, the current data windows for all channels, and the requested ping rate.

BufReq: Indicates the state of a special diagnostic variable which is used to set the ping rate for internal testing purposes.

FreqReq: Indicates the ping rate, as requested by the topside. The actual ping rate may be longer than the requested amount if the data window requested by the topside for any channel requires a longer data collection interval. SONAR_MESSAGE_PING_RATE messages change this value.

DigOut: Indicates the current value of some digital outputs. Most systems do not use these outputs.

ADCChan: Indicates the value of an internal configuration register which is used to select different ADC custom configurations. The normal value is 0 or 1.

Timer5: Indicates the value of an internal timer configuration register. The normal value is 0.

AnalogCard: Indicates the value of an internal configuration register which is used to select different hardware custom configurations. The normal value is 0 or 1.

Pulse: Indicates the file name of the current pulse. SONAR_MESSAGE_PING_SELECT messages modify this value. Note that any pulse must pass validity checks before it is accepted. This value is the last known good pulse.

Find: Indicates the search criteria for pulses for this subsystem.

SubType: Internal value which indicates the type of hardware used to implement this subsystem.

SubNum: Logical subsystem number which must be present for every topside message which wishes to modify this subsystem.

Card: DSP card that this subsystem is mapped to.

Shadow Card: Secondary DSP card for this subsystem if more than 1 card is required.

SUB N IO M:

Configuration details for each IO channel are listed here. The first channel is always 0

NetCnt: Total number of data packets transmitted up to a topside, if connected for this channel. When this value is incremented, new data packs could have been or have been sent to the topside for this channel

DskCnt: Total number of data packets written to local internal disk for this channel.

ADCDecimate, DACRate, ADCRate, FTSize, IFSize, FTDec, SaveSize, DataType, FirstCoef, MinSave, Anhilate, PulseSize, PulseType, PulseOffset, DacGain0: Internal data acquisition and processing parameters which are affected by the current pulse selection.

AGC: When set to 0 the automatic gain control algorithm is disabled. When set to 1 the AGC is enabled. SONAR_MESSAGE_ADC_AGC messages modify this value.

ADCGain: Log2 of the current ADC gain. The minimum gain is 0. SONAR_MESSAGE_ADC_GAIN messages modify this value.

DACGain: Outgoing pulse attenuation factor. SONAR_MESSAGE_PING_GAIN messages modify this value.

Shadow (Card Channel): Internal configuration parameters for some advanced multi DSP card subsystems.

CalConst: Calibration constant. This value scales all data sent to the topside. SONAR_MESSAGE_PROCESSING_CALCONST message modifies this value.

TVGDelay: Time variable spherical correction factor. A value of -1 will disable TVG. 0 applies the normal spherical correction factor to data. A positive value will initiate the spherical correction factor at that count. SONAR_MESSAGE_PROCESSING_PAKDELAY modify this value.

AGCDelay: Number of samples to ignore at the start of a pulse for the AGC algorithm. These samples represent the direct path. Modified by the SONAR_MESSAGE_PROCESSING_DIRECT_PATH message.

Disk On: When 1 data is stored on an internal hard disk. When 0 data is not stored.

Disk Window: Current data window for disk storage. The values are the sample and ping decimation factors, first sample to save, total samples to save, and max packet size.

Net On: When 1 data is sent up the network to a topside. When 0 data is not sent to the topside.

Net Window: Current data window for network data. The values are the sample and ping decimation factors, first sample to save, total samples to save, and max packet size. Modified by the SONAR_MESSAGE_DATA_NETWORK_WINDOW message.

Actual(DAC ADC): Internal parameters for locating resources for pulse transmission and acquisition.

MinBlock MaxBlock: Internal parameters for region of interest for acquired data. This is effected by the current data windows and the ping rate.