APT

Summary

The RBRconcerto APT is a deepwater high resolution bottom pressure recorder and triaxial accelerometer, capable of both observatory-connected and autonomous measurements at 20Hz. Data is always recorded internally, but may also be streamed in real time over the Ethernet connection.

The hardware structure of the instrument is shown in the block diagram below.

APT block diagram

Connections

The MINK connector is wired for ethernet and power.

Face view of the male MINK connector on the RBRconcerto APT:

Face view of the male MINK 10 pins connector

 Connector pinouts are shown in the table below:

Pin #Description
1PWR (min 9V max 17V)
2ETHERNET TX+ DATA TO RBR
3ETHERNET RX+ DATA FROM RBR
4ETHERNET TX- DATA TO RBR
5N.C.
6N.C.
7ETHERNET RX- DATA FROM RBR
8N.C.
9N.C.
10GND

IP connections to the instrument are made on two different ports. The first is the data port (23) which is a read-only socket where the client should simply listen for the measured data that is being streamed out. The second is the control port (2323) which permits some settings to be modified.

Performance and timing considerations

Logger

APT Logger Output Timeline

Logger readings will be timestamped no earlier than 50ms and no later than 100ms from when the reading was completed. The resolution of logger timestamps is 50ms. Logger output of the timestamped sample will occur within 50ms of the indicated timestamp.

Filtering

The network controller associates each sample received from the logger with an NTP-based timestamp upon receiving the first character of the line of data from the logger. The resolution of NTP-based timestamps is 5ms. After receiving the entire sample, it is buffered for filtering. After filtering, if there is an active connection to the data port, samples are sent to that connection. A output latency of (pre-buffer size) + (post-buffer size) + 2 samples is incurred by filtering; in the default case, this is 25 samples (or at a logging rate of 20Hz, 1.25 seconds).

Overall

In the default configuration, output from the instrument will occur within 1.4 seconds of when the reading was taken.

Starting up for the first time

In order to start the logger, use the transparent mode in the control interface and the following commands. These assume that the logger clock has been reset already, if of interest ( now command).

starttime 20000101000000
endtime 20991231000000
sampling mode = continuous, period = 50
enable erasememory = true

Configuring network settings

To configure the network controller, a Windows-only executable is required to run on a host on the same subnet (same UDP broadcast domain) as the instrument.

IPSetup binary

IPsetup URL

In its default state, the instrument will attempt to acquire network configuration information via DHCP. Using IPSetup, the static IP address, network mask, gateway, and DNS server of the instrument can be configured. No other settings in IPSetup should be changed at risk of an invalid configuration requiring the instrument be returned to RBR for service.

Periodic stop-erase-start procedure

stop
enable erasememory = true

As the instrument has a linear memory, in order to provide protection for a possible network outage it is important to periodically stop the logging, erase the memory, and restart. This process should take less than ten seconds, during which there will be no streaming data, nor logged data. As the logger memory will fill in ~25 days, this process should be followed every 20 days (or 3 weeks) to give some margin for human error.

After observatory outage procedure

<download while still running - may take hours or days>
// chunksize := 500
// offsetdataread := 0
>> meminfo
<< meminfo used = YYY
// totalsize := YYY
// while (offsetdataread < totalsize) {
// while (offsetdataread < totalsize) {
>> read data 1 chunksize offsetdataread
<< data 1 nbbytesread offsetread <cr><lf><bytes[0…nbbytesread]-of-data><crc>
// if crc ok
// {
// append bytes read to output file
// offsetdataread := offsetdataread + nbbytesread
// }
// }
>> meminfo
<< meminfo used = YYY
// totalsize := YYY
// }
<end of download>
>> stop
>> enable erasememory=true

The download can be performed by reading all the bytes in the dataset 1 and writing them in a *.bin file. Ruskin is able to read directly those files.

For more details on the read and meminfo commands and the CRC calculation, please refer to the L2 command reference.

Stopping the instruments and preparing for shipment

stop

The only command required to be sent to the logger (using the transparent mode in the control interface) is stop. The control interface will still be active but may be powered down by removing the MINK cable. The internal batteries will continue to provide backup power to the logger RTC (~10uA) and will last for many years in this state.

Control port commands

Upon connection to the control port (2323), there will be no immediate response nor banner. If the command required is known, it can be entered immediately (all commands are terminated with line-feed, and any carriage returns are ignored). If the commands are not known, the question mark ("?") command can be used to display the network controller control menu.

The control port connection supports a single connection. It is important that the connection is closed after use, permitting others to establish connections if necessary.

------  ACC.BPR NETWORK INTERFACE CONTROL MENU ------
 D: Display current settings
 A: Set filter pre-buffer window size
 B: Set filter post-buffer window size
 S: Set NTP source
 R: Set NTP refresh rate
 T: Enter transparent mode
 !: Exit transparent mode (once in transparent mode)
 Q: Close this connection
 #: Reset the ACC.BPR network interface
 ?: Print this menu

D: Display current settings

RBRconcerto ACC.BPR Network Interface v1.1.0
Uptime: 0 days 01:23:37.500
Current time: 2017-06-04 19:09:41.530
System parameters
-----------------
Filter pre-buffer window size (samples):  12
Filter post-buffer window size (samples): 11
NTP time sync rate (min):                 1
NTP source:                               NTP pool
Last valid time sync:                     2017-06-04 19:09:18.760

The current settings shown include

  • Uptime: approximate time since last reboot - either due to power up or the # reset command.
  • Current time: this clock is maintained according to the NTP settings.
  • Filter pre- and post-buffer window size: see A and B commands.
  • NTP time sync rate: frequency with which the NTP source is polled to correct for clock drift. See R command.
  • NTP source: Either the IP address of the NTP server or the phrase “NTP pool”. See the S command.
  • Last valid time sync: the last time at which a successful poll of the NTP source occurred.

A: Set filter pre-buffer window size

For filter pre-buffer window size A and post-buffer window size B:
	A, B > 0
	A + B <= 30
Enter the new filter pre-buffer window size (number of samples; default: 12):

The filter is used for the spike detection process. The factory default value is 12 and no changes are recommended.

Whenever this value is changed, the current contents of the filter buffer (pre-buffer window size + post-buffer window size + 2 samples) is discarded.

B: Set filter post-buffer window size

For filter pre-buffer window size A and post-buffer window size B:
	A, B > 0
	A + B <= 30
Enter the new filter post-buffer window size (number of samples; default: 11):

The filter is used for the spike detection process. The factory default value is 11 and no changes are recommended.

Whenever this value is changed, the current contents of the filter buffer (pre-buffer window size + post-buffer window size + 2 samples) is discarded.

S: Set NTP source

Enter NTP source (IP address, a.b.c.d).
To use pool.ntp.org, enter 0.

By default, the NTP Pool will be used as the source of NTP times. A custom NTP server can be used by providing its IP address.

Whenever this value is changed, an NTP poll is performed immediately and the schedule for polling is restarted.

R: Set NTP refresh rate

Enter the NTP refresh rate (number of minutes, 1-60; default: 1):

The frequency with which time is polled from the NTP source can be adjusted.

Whenever this value is changed, an NTP poll is performed immediately and the schedule for polling is restarted.

T: Enter transparent mode

Data streaming off
Transparent mode on

To communicate with the instrument directly, use the T command to enter transparent mode. Upon entering transparent mode, the instrument's streaming output will be automatically disabled. While in transparent mode no output will be sent to the data client; however, any connections to the data port will remain open and will resume receiving data when transparent mode is closed. Upon leaving transparent mode, the streaming output of the instrument will be automatically re-enabled (providing that the instrument is enabled).

There are two ways of leaving transparent mode: manually escaping with the ! character (described below), and an automatic idle timeout. If 10 seconds elapse without characters being received by the network controller, transparent mode will automatically be closed and streaming output will be restarted.

Transparent mode is maintained across multiple control client connections. If the control client is disconnected without escaping from transparent mode (i.e., by abruptly terminating the socket connection), future connections will be placed directly into transparent mode (unless the idle timeout has been exceeded).

!: Exit transparent mode (once in transparent mode)

Data streaming on
Transparent mode off

When in transparent mode, send a ! character to immediately leave the mode and restart instrument streaming.

See the notes for the T command for details on the behaviour of the data port upon leaving transparent mode.

Q: Close this connection

Connection closed by foreign host.

Explicitly close the connection to the control port.

#: Reset the APT network controller

Resetting server. All connections will be lost!
Connection closed by foreign host.

The control interface is reset by this command, a process that takes <10s. All network connections are lost and will have to be re-established. The network controller clock is reset to the beginning of 1970, but the first NTP sync should be done by the time the first connection is made.

?: Print this menu

Displays the menu as shown above.

Data port format

The data port provides read-only data, and does not respond to any commands.

Sample data

The format of the data is as follows:

Sample data example
2017-06-04 17:30:08.465, 2017-06-04 17:30:07.850, 31148211.201652884, 29783712.802454829, 30011780.709028244, 5835509.616881609, 29921534.573659300, 5855125.165544451
2017-06-04 17:30:08.520, 2017-06-04 17:30:07.900, 31148065.347224470, 29783600.540831685, 30011831.102892756, 5835509.600583464, 29921532.785519957, 5855125.144589693
2017-06-04 17:30:08.565, 2017-06-04 17:30:07.950, 31148131.489753723, 29783480.716869235, 30011743.260547518, 5835509.607568384, 29921535.439789295, 5855125.137604773


#NameFormatNotes
1Logger time NTP offset correctedYYYY-MM-DD HH:MM:SS.sss format.The time that the internal logger reports corrected with the latest NTP offset. The current NTP time may be examined using the D command via the control interface.
2Logger timeYYYY-MM-DD HH:MM:SS.sss format. The time that the internal logger reports. This clock may be read and set using the now command via transparent mode. Drift should be ±60s/year.
3Accelerometer X period (ps)Double precision (64 bit) floating point number.The period of the X (first) channel of the triax accelerometer.
4Accelerometer X period (ps)Double precision (64 bit) floating point number.The period of the Y (second) channel of the triax accelerometer.
5Accelerometer X period (ps)Double precision (64 bit) floating point number.The period of the Z (third) channel of the triax accelerometer.
6Accelerometer temperature period (ps)Double precision (64 bit) floating point number.The period of the temperature (fourth) channel of the triax accelerometer.
7BPR pressure period (ps)Double precision (64 bit) floating point number.The period of the pressure (first) channel of the BPR.
8BPR temperature period (ps)Double precision (64 bit) floating point number.The period of the temperature (first) channel of the BPR.


One variation to the normal data format will occur when an internal error occurs. This error usually happens on a single channel at a time, and is most often caused by a failed electrical connection so that no valid readings are available. If this occurs, it will look like the following:

Sensor errors example
2017-06-04 17:30:08.465, 2017-06-04 17:30:07.850, Error-9, 29783712.802454829, 30011780.709028244, 5835509.616881609, 29921534.573659300, 5855125.165544451

All errors should be reported to RBR for investigation.

Events

All events obey the following format:

Abnormal data - spike correction
#EVENT_NAME, timestamp, eventPayload1, eventPayload2, ..., eventPayloadn- 1, eventPayloadn

EVENT_NAME is a string name for the event
timestamp is the time at which the event occurred; depending on the event type, this may correspond to a corrected sample time
eventPayload1—eventPayloadn are the payload values for the event

Outlier detection event 

From time to time, the controller will detect one outlier in the data (spike) via its spike-detection algorithm. When this event occurs, the normal data value for the 'spiky' channel will be replaced by a first-order linear interpolation of the value on each side of the spike. At 20Hz, the spikes always occur as double readings, so readings #2 and #3 are replaced with interpolated data between reading #1 and #4. The uncorrected data is also output for convenience, but marked by "#SPIKE" at the beginning. While the timestamp sequence may appear to be out of order, the timestamps are still trustworthy and thus one can tell exactly which sample has had a spike-correction performed. In the following example, it is column 3 (accelerometer X) that has been replaced. All other readings were unmodified.

Outlier detection event example
#SPIKE, 2017-06-04 17:17:08.485, 2017-06-04 17:17:07.650, 29457180.723547935, 29410719.443112611, 29410732.975229620, 8300059.863831848, 29410730.339586734, 8300056.860316545
#SPIKE, 2017-06-04 17:17:08.535, 2017-06-04 17:17:07.700, 29362765.708938241, 29410748.146474361, 29410761.576145887, 8299964.333418757, 29410758.772864937, 8299965.653568507
2017-06-04 17:17:07.885, 2017-06-04 17:17:07.050, 29410554.356873035, 29410540.321841835, 29410553.881898522, 8299818.804953248, 29410551.032051444, 8299820.485990494
....<snip>....
2017-06-04 17:17:08.385, 2017-06-04 17:17:07.550, 29410608.951002359, 29410595.633089542, 29410609.276965260, 8299926.484469325, 29410606.352612376, 8299923.087470234
2017-06-04 17:17:08.435, 2017-06-04 17:17:07.600, 29410635.130479931, 29410620.853304862, 29410634.711384773, 8300060.054752976, 29410631.926730275, 8300060.690380633
2017-06-04 17:17:08.485, 2017-06-04 17:17:07.650, 29410670.967772603, 29410719.443112611, 29410732.975229620, 8300059.863831848, 29410730.339586734, 8300056.860316545
2017-06-04 17:17:08.535, 2017-06-04 17:17:07.700, 29410706.805065274, 29410748.146474361, 29410761.576145887, 8299964.333418757, 29410758.772864937, 8299965.653568507
2017-06-04 17:17:08.585, 2017-06-04 17:17:07.750, 29410742.642357945, 29410729.166120290, 29410743.117332458, 8299944.282043726, 29410740.481689572, 8299943.096935749
2017-06-04 17:17:08.635, 2017-06-04 17:17:07.800, 29410794.721916314, 29410780.891776084, 29410794.340074062, 8299878.805410117, 29410791.276022791, 8299878.763500601

NTP synchronization events

When an NTP synchronization occurs, one event #NTPSYNC event will be generated on the output:

#NTPSYNC, which corresponds to an NTP offset adjustment; its timestamp is the logger time for the sample on which synchronization occured corrected with the new NTP offset , eventPayload1 is the the logger time for the sample on which synchronization occured, and eventPayload2 is the new NTP offset in milliseconds.

NTP synchronization event example
2017-06-04 17:17:08.535, 2017-06-04 17:17:07.700, 29410706.805065274, 29410748.146474361, 29410761.576145887, 8299964.333418757, 29410758.772864937, 8299965.653568507
#NTPSYNC, 2017-06-04 17:17:08.589, 2017-06-04 17:17:07.750, 839
2017-06-04 17:17:08.589, 2017-06-04 17:17:07.750, 29410554.356873035, 29410540.321841835, 29410553.881898522, 8299818.804953248, 29410551.032051444, 8299820.485990494

Power consumption 

The power consumption when the external power is present is ~1.5W continuous.

Battery life 

The logger will switch to its internal battery and continue recording when external power is not present. The network controller will shutdown automatically under this condition.

There is enough internal batteries for the logger to continue recording for 250 hours (~210 mW power consumption in such case).

Calibration certificates

Each instrument contains one pressure sensor and one accelerometer. The calibration certificates, containing the coefficients necessary for both temperature compensation and conversion to engineering values, are in the following table.

RBR instrument s/nNetwork MAC AddressBPR s/nCertificateACC s/nCertificate
6305500:03:F4:09:A8:DA138787

501015

6305600:03:F4:0A:06:74138788

501017

6305700:03:F4:09:A8:FA138789

501047

6308000:03:F4:0B:1C:0B143140

501069



Maintenance

How to disassemble the housing

IMPORTANT: Do not unscrew housings while the two halves of the instrument are together; unscrewing will twist sensitive wire assemblies inside the instrument and damage them.

  1. Locate the nylon locking strap located approximately half way down the outside of the instrument. One side of the nylon has a hole in it. Using a pair of pliers pull the nylon strap out of it's locking groove by the end with the hole in it.
    1. It is normal to have a little o-ring grease on this strap to help with it's insertion/removal from the groove
  2. The two halves can now be gently pulled apart. The wire assemblies allow for about 60mm of distance between the two halves.
  3. Remove the strain relief lacing tape and nylon straps from the two wire assemblies.
  4. Using tweezers, separate the wire assembly connectors from the PCB's. Do not pull by the wires, it is easy to pull the wires from their crimps.
  5. Once the two wire assemblies are disconnected the two halves of the instrument can be handled independently.

How to change the batteries

  1. Disassemble the housing as described above.
  2. The half of the instrument with the nosecone contains the accelerometer, battery carriage assembly, CPU and it's power supply.
  3. Remove the coupling piece to expose the battery carriage assembly.
  4. The door may be opened by pushing the door to unlatch it and sliding the door up; the door will open as shown.
  5. Remove eight CR-123 batteries.
  6. Replace with eight new CR-123 batteries, be sure to install all batteries with the positive end towards the battery door.
  7. Close the battery door again.
  8. Check the coupling housing o-ring to ensure that it is clean, undamaged, and properly lubricated.
    1. There should be no cuts, nicks, or excessive flashing.
    2. The o-ring should be slightly lubricated with silicone o-ring grease.
  9. Check the threads on the housing and the coupling housing to ensure they are clean and undamaged.
  10. Screw the coupling housing back onto the instrument half with the nosecone.
  11. Reassemble instrument as described below.

How to change the desiccant

  1. Disassemble the housing as described above.
  2. The half of the instrument with the MINK connector contains two desiccant capsules.
  3. Remove the old capsules by gently pulling them from the plastic carriage.
  4. Push two new capsules into the plastic carriage.
  5. Reassemble unit as described below.

How to reassemble the housing

  1. Ensure that all o-rings that have been exposed are clean, lightly lubricated with silicone o-ring grease, and without cuts, nicks, excessive flashing or any other damage. Replace if necessary.
  2. Ensure that the backing o-rings are all on the "low pressure" side of the housing.
  3. Connect the 5-pin connector to the small lower board first. Strain relieve with lacing tape or nylon strap.
  4. Connect the 6-pin connector to the larger board second. Strain relieve with lacing tape or nylon strap.
  5. Ensure that two fresh desiccant containers are held in the exposed chassis.
  6. With removable marker, mark the location of the dowel pin on the outside of its coupler. Also mark the location of the mating dowel pin hole on the outside of its coupler.
  7. Gently push the two halves together taking care to not misalign and damage the o-ring. Use the two dowel pin marking locations (from step 6) to align the dowel pin to its hole.
  8. Push the nylon locking strap into the slot, with the chamfered end first. Ensure that the strap is pushed all the way in. This is best done with pliers.

Location of o-rings

Parker 2-225 N70 o-rings and 8-225 back up rings are used at every joint in the housing. Only o-rings that are exposed during maintenance need to be checked before reassembly.

  • O-rings must have no cuts, nicks or excessive flashing. If in doubt, replace the o-ring.
  • O-rings should be slightly lubricated with silicone o-ring grease.
  • When replacing o-rings near external threads, protect the o-rings by covering the threads with electrical tape temporarily.
  • Backing o-rings should be placed on the low-pressure (inner) side of the o-ring, with their flat side against the o-ring groove in the Ti housing piece.