55
Ensemble.BS3AmplitudeAvailable = false;
Ensemble.BS4Available = false;
Ensemble.BS4AmplitudeAvailable = false;
Ensemble.MostBins = 0;
PacketPointer = 0;//point to first byte of the data buffer
//get Header
Ensemble.Header_Type = (ulong)ByteArrayToLong(packet);
Ensemble.Header_PayloadSize = (ushort)ByteArrayToShort(packet);
PacketP= 2;
//decode the linked list
uint PayloadStart = PacketPointer;
uint NextID = PacketPointer;
bool done = false;
ushort TempBytes;
while (!done)
{
PacketPointer = NextID;
ushort ID = (ushort)ByteArrayToShort(packet);
if(ID < MaxDataTypes)
DataTypeAvailable[ID] = true;
switch (ID)
{
case SYSTEM_CHECKSUM:
done = true;
break;
default://unknown ID
TempBytes = (ushort)ByteArrayToShort(packet);
NextID = PacketP TempBytes;
break;
case VERTICAL_STAGE:
Ensemble.StageAvailable = true;
Ensemble.Stage_ID = ID;
Ensemble.Stage_Bytes = (ushort)ByteArrayToShort(packet);
NextID = PacketP Ensemble.Stage_Bytes;
Ensemble.Stage_PingCount = (ushort)ByteArrayToShort(packet);
Ensemble.Stage_Range = ByteArrayToFloat(packet);
Ensemble.Stage_RangeSTD = ByteArrayToFloat(packet);
Ensemble.Stage_RangeSNR = ByteArrayToFloat(packet);
Ensemble.Stage_RangePingsGood = (ushort)ByteArrayToShort(packet);
Summary of Contents for HASCP
Page 26: ...26 Figure 15 Firmware Tab in the RTI HASCP software...
Page 68: ...68 8 Cable Wiring Diagrams This section outlines the HASCP communication cable wiring...
Page 73: ...73 10 Mechanical Drawings and Assembly Figure 23 Outline drawing of the HASCP unit MCBH 10M...
Page 74: ...74 Figure 24 Location of transducer beams in the HASCP unit...
Page 76: ...76 Figure 26 Exploded view of the HASCP unit showing the details of the hardware used...
Page 78: ...78 Figure 28 HASCP mounted on a pole used for internal testing at RTI...