Ping 360 time info/split image

Some initial data (from three trials of each) - Ping360 via ethernet connection:

Angular Step Size [gradians] Distance [m] Sample Period [ticks] Transmit Duration [us] Ping Viewer avg. time [s] Python avg. time [s] Python slower by
1 2 88 11 10.74 11.80 9.84%
1 20 888 107 20.57 21.61 5.04%
1 50 2222 267 37.6 38.42 2.17%
10 2 88 11 3.29 3.29 0.00%
10 20 888 107 4.19 4.32 3.18%
10 50 2222 267 5.89 6.01 1.98%

On average, Python was 3.70% slower (so, measurable, but not too bad).

Common testing parameters:

parameter value
gain 0 (low)
sector angle 360 degrees
speed of sound 1500
transmit freq 750kHz
number of samples 1200

I would note that the update to 0.1.2 included this PR, which provided a 27% speedup for a Ping360 (tested on a 2M baud USB-serial connection), so performance-wise that update is quite important for ping-python being anywhere close to the C++/Ping Viewer performance.

I should be able to change my interface over and do some USB-serial tests next week :slight_smile: