My Requests

Drivers Manual

Laser Scanning - 3D at Depth SL3 (Subsea LiDAR) - 20

Description

Driver to decode laser data from 3D at Depth Subsea LiDAR Laser Systems.

The driver currently supports the following models: SL3, SL4 and SL5.

The Subsea LiDAR Laser uses class 3B, which is not eye-safe so extra precautions should be taken

Driver Information

Driver 3D at Depth SL3 (Subsea LiDAR) Interface Type Freebase/TCP Driver Class Type Freebase 
UTC Driver Yes Input / Output  Input (TCP) Executable DrvLaser.exe SL3 RB
Related Systems
Related Pages


Note that Qinsy does not communicate directly to the hardware of the subsea components.

For a successful operation there are three pieces of software involved: 3D Collect GUI and the Real Time Viewer (RTV) both from manufacturer 3D at Depth and Qinsy.

 It is the 3D Collect GUI software that will establish a direct network connection with the scanner. The RTV software will establish a link with 3D Collect in order to receive the scanner's raw data via 3D Collect.

RTV will then convert the raw data and publish it for third party applications: in this case Qinsy. Therefore Qinsy needs to be interfaced to the computer running the RTV software which means that both the Qinsy computer as the RTV computer should share the same network.

Both parties will use the TCP/IP network protocol where RTV act as TCP Server and Qinsy as TCP Client. Note that the Qinsy driver does not send data nor commands to the server: after opening a connection it will wait and listen for any data packets coming in.

Setup

Use a fast (Gigabit) network card, due to the enormous amount of data to be expected.

By default the manufacturer configures their computer with the following subnet range: 192.168.168.2nn, but this can any address.

Make sure that the Qinsy network is in the same range except for the last digit: this must be different.

In the following example the Qinsy computer will have address 192.168.0.103. 

Leave the subnet mask at 255.255.255.0.


Always check the network connection between your computer and the laser unit before commencing any scan operation.

You may do this by using the ping command from the Windows Command Prompt:

Select Start from the Windows Task bar, Run..., Cmd <Enter>, and 'ping' the address of your laser unit:

The network connection is okay when you receive a reply three times within a few milliseconds.

Shared Computer Setup

Qinsy and RTV can run simultaneously on the same computer but such installation is not recommended: both programs use a lot of system resources so each program will affect the performance of the other one.

If you do need to run both programs on the same computer (e.g. for test purposes) then use IP address 127.0.0.1 in your Qinsy Config Database Setup.

A shared computer setup has not been tested at time of writing

Normally a Qinsy driver will time-stamp the data when received at the network port using the computer's own internal clock. Due to network characteristics in general this will result in inaccurate timing, e.g. because of network latencies.

Best scenario is that all systems should work in the same time frame. In practice this means that both Qinsy and the Subsea LiDAR scanner should use an accurate Time Synchronization system (a.k.a. PPS) using the same time source (ZDA).

In that case the Qinsy driver will use the decoded time stamp which is available in the published target data.

It does depends on the following two criteria:

  • Qinsy must be interfaced to a valid Time Synchronization system.
  • Online setting 'Use Time from Scanner' must be set to 'Yes'..

In case you don't trust the time of the SL (e.g. not using the same time frame as Qinsy) then set the online setting 'Use Time from Scanner' to 'No'.

Always check the timing status and more important the age of the decoded data with a Generic Display.


To see if your Subsea LiDAR scanner is using PPS and ZDA you can check if the two led indicators in the 3D Collect software are green:

You will find the laser system driver under category type Multibeam Echosounders because internally a laser sensor is treated as a multibeam system: creating multibeam x/y/z observations.

Multibeam versus Laser scanning terminology:

  • ping = scan = swath = line
  • footprint = pixel = pulse = fire = channel = return


Add a Multibeam Echosounder system to your template setup and select from the driver list "Laser Scanning - 3D at Depth SL3 (Subsea LiDAR)".

  • The Port number will by default be 2019. Make sure this number is the same as the TCP/IP Port set on the computer running the RTV software.
    Note that the RTV will stream so-called 'Scan Data' packets to this port 2019. These packets will be used by this driver.
    (RTV does also stream so-called 'Navigation' packets to port 2020 but this driver does decode nor use this data.)
  • Enter the exact IP Address of the computer running the RTV software .
    In this example it is 10.0.0.149.
  • Leave the Maximum update rate at zero.

  • Select the Transducer Node location that represents the sensor data origin (0, 0, 0) of the laser scanner.
  • The mounting angle offsets (Roll, Pitch and Heading offset) should be established with a calibration procedure.
    It is important to select the correct Scanner Mounting in the Qinsy Online setup: in that case you can leave the Roll, Pitch and Heading offsets close to zero so you don't have to use values anymore like +270 or -90, etc.
  • Leave the Max. beams per ping value at 14500.
    The actual number of beams will be variable and depends, for example, on the used on-line settings and on the targets being scanned. You will notice that under normal survey conditions the actual number of beams will be much lower.

Example Scanner Setup:

In this setup the sensor has been mounted e.g. on the front of an ROV but looking downward in order to scan the seabed for exposed pipelines.
Therefore you will need to select in the online setup for the Scanner Mounting setting "Downward Looking", so the default mounting angle offsets will stay close to 0° after calibration.

  • You may leave all parameters at their defaults and continue to the last wizard page.

  • Leave all parameters at their defaults and press Finish.


Controller

Select Echosounder Settings, click on the Laser System icon and select the 'Control' tab page.

Note that you can't use Qinsy to physically control the scanner (like start and stop scanning). For this you will need to use 3D at Depth's own software (e.g. RTV and/or 3D Collect)

Control Device Settings
Connected

In order to communicate with the scanner, the driver must make a network connection first.
This attempt to connect will always be done automatically when going online.

  • No
    This means that there is no TCP network connection between the driver and the laser unit and therefore no laser firing data will be received.
  • Yes
    Check this every time when you go online with the Controller in order to communicate with the scanner. If no connection could be made, a notification message will be displayed in the Events list.
    Under normal circumstances a connection will be established within a second and if the connection is successful it will also be displayed in the Events list.
    Note that the driver will act as a TCP Client.
  • [ Set to Not Connected at startup ]
    Select this option (only once, and hit the Apply button) if you want to disable the 'Auto Connect' option. This means that every time you go online with the Controller, you must make a connection yourself by selecting 'Yes' from this list.
  • [ Set to Auto Connect at startup ]
    Select this option (only once, and hit the Apply button) and the next time that you go online with the Controller, the driver will try to connect to the laser unit immediately.
  • [ View Log File ]
    This will open the daily laser log file using the standard Windows text editor, e.g. Notepad.
    More information about the laser log file can be found in the Additional Info pane of this document under section Troubleshooting.
  • [ Open Log File folder ]
    This will open the current project's LogFiles folder using Windows Explorer. This folder contains the daily laser log file.
    More information about the laser log file can be found in the Additional Info pane of this document under section Troubleshooting.

When you go offline the driver will automatically disconnect the network connection but you may also manually disconnect first by selecting No.

Always check the 'CCI Communication' indicator in the RTV software. The led should turn green when there is a successful connection:

Scanner Mounting

This is a very important setting and it informs the driver how the scanner is physically mounted on the vehicle, with respect to its heading.
This setting is used i.c.w. the mounting alignment corrections (roll, pitch and heading offset) from your database system setup. 
It means that when the selected scanner mounting is correct, your alignment corrections will be around zero.

  • Downward Looking
    Select this when the scanner is mounted looking straight down.
    In the picture depicted as the center image with an angle of 0 degrees.
  • Forward Looking
    Select this when your scanner is mounted on the front side of your vehicle, 'looking' forward in the vehicle's moving direction.
    In the picture depicted as the first image with an angle of +90 degrees.
  • Backward Looking
    Select this when your scanner is 'looking' backwards (opposite to the vehicle moving direction).
    In the picture depicted as the last image with an angle of -90 degrees.
  • Forward Down Looking
    Select this when your scanner is mounted on the front side of your vehicle, 'looking' forward in the vehicle's moving direction but with an angle of +45 degrees. 
  • Backward Down Looking
    Select this when your scanner is 'looking' backwards (opposite to the vehicle moving direction) but with an angle of -45 degrees.

You can only change this setting when not connected.

Minimum Range


Maximum Range

Set the minimum required / maximum allowed range in meters. Valid values: 1 to 45 meters.

Using this setting is recommended, but be careful: blocked data due to this setting (i.e. all returns outside these range limits) will not be recorded!

Minimum Intensity


Maximum Intensity

Set the minimum required and maximum allowed intensity.

Note that blocked data due to this setting (i.e. all returns outside these intensity limits) will not be recorded!

Multiple Return Measurement

A characteristic of this Subsea LiDAR scanner is that each omitted laser pulse may result in up to five returns where each return has its own range and intensity.

Not all returns will contain valid data and in general you can say that the first return is the strongest one with a valid range.

The more returns you allow with this setting the more data you will get (bigger file size) and it may also introduce more noise in your data (because of invalid returns).
But in combination with properly set min/max range/intensity thresholds (see above) you may get scanned targets with higher densities and more details.

  • First Return (Strongest)
    This is the default setting: from the five possible returns only the first one will be used.
  • First two returns
    Only the first two returns will be used.
  • First three returns
    Only the first three returns will be used.
  • All returns accepted
    All five possible returns will be used.

Bear in mind to define a proper minimum range/intensity threshold, otherwise your final point cloud may contain a lot of noise.

Note that blocked data due to this setting (i.e. returns outside the selection) will not be recorded!

Store Laser Location

If enabled, an additional pixel with zero range will be added to each line scan, in order to indicate the exact laser scanner location in the resulting point cloud.

This extra pixel will always have beam number 0 with intensity 2040 and quality value 255.

Use Time from Scanner

This setting is highly recommended in order to use exact time stamping of the laser data.

When enabled, the laser unit must receive a valid PPS/Time Synchronization pulse from an external GNSS receiver and UTC time-tag message.

See Timing in the System Interfacing section for more information.

Note that this option is disabled while connected, so change setting Connected first from Yes to No in order to change it.

Latency

Enter a fixed latency value in milliseconds. When PPS/Time Synchronization is not used, time stamping of the data is done when the data packet is received at the TCP port.
The time will be corrected by subtracting this value.

A latency can be provided by the manufacturer or you may establish a value using a latency calibration procedure.

This option is only available when PPS is not used for timing.

Session Storage Format Specifier

This format specifier can be used in combination with the Controller Session Storage Format Specifier #E

The following specifiers are supported (plus your own free text):

#N: Name of the system
#M: Scanner Mounting
#R: Range limits
#I: Intensity limits
#T: Multi Target Measurement
#D: Data Type
#P: Use PPS

The format specifiers are case-sensitive. If you use lower-case then only a value or index number will be displayed.

So if you use #E in the Session Storage Setup the filename of the newly recorded database will automatically contain the scanner settings that you were using.

Generic Display

Use a Generic Display for showing various numerical values decoded from each scan:

the number of beams (laser returns) per second, the ping rate (number of scan lines per second), the ping age (sec), status indicators, etc.

  • The Ping Age is the difference between the current Qinsy computer time and the time of the last received data package.
    This value should be small, around zero! So it is an important value to monitor especially when the setting 'Use Time from Scanner' is enabled.

    So, for example, if you notice a very high Ping Age value (+ve or -ve), then this is a severe indication that the initial timing inside the laser unit is wrong.

  • Use the Status Flag value as an indicator whether NMEA/PPS is accepted or not.

    When NMEA/PPS is used and accepted then the status flag value will be 2 and otherwise 0.

Raw Multibeam Display

Use this display to visualize the raw incoming laser points, relative to the laser center and still uncorrected for motion.

The display will give you a good indication of

a) whether data is coming in
b) what the approximate width and height extents of the data are and
c) the intensity distribution.

Use the Auto Scale button to show all data from the last ping inside the view, but bear in mind that all 3D laser data is presented in a 2D way.

The following View Properties are quite useful when you want to color code the points on Intensity (like in the example above on the right side):

  • Select for Color Coding Backscatter which means that the intensity attribute will be used.
  • Set the Backscatter Intensity min/max scale between 0 and the maximum expected intensity value (in this example 800).
    To determine the maximum intensity value use the Average Beam Intensity Distribution View: press toolbar button 'D' or use pull-down menu View, View Mode, Average Beam Intensity Distribution.
    The X-scale (horizontal scale) contains the intensity value.
  • For a static scan (scanner not moving) you could use Waterfall scrolling with 0 pixels for both directions.

Swath System Display

Use this display to visualize the calculated DTM results.

DTM results are the final geo-referenced laser points and fully corrected for motion and timing.

Here you can show data from multiple systems, for example your laser scanner simultaneously with a subsurface multibeam system.

It is recommended to enable the Scaled Display setting to have a preserved aspect ratio of the vertical and horizontal axes.

3D Point Cloud Display

Use this display to visualize the calculated DTM results in a 3D environment.

DTM results are the final geo-referenced laser points fully corrected for motion and timing.

For point color coding use the Sensor's settings to select your Color scheme attribute: e.g. color coding on Depth as in the example below or on Intensity .

 

Also use the Sensor settings to show or hide the ping fan.

When you experience performance problems it is advisable not to use this display at all, especially when recording laser data.
Therefore only use this display if you have a high-end spec video card.

During replay and offline processing there shouldn't be any restrictions for using this display.

Network

Specific

This driver will establish a network connection with the RTV software at initialization time or on user's action.

When both are successfully connected, you should see the following indication:

The driver says 'Connected: Yes' and the RTV software's CCI communication led is green.


However (for performance reasons) this driver does not continuously check if the connection is still open.

So if  the connection is broken (most likely because the RTV software has exited) then the driver will keep on showing 'Connected: Yes'.
If you then re-start the RTV software you'll notice that the CCI communication led stays red:

As workaround you could go offline with the Controller and come back online but much faster would be to select 'Connected: No', press the Apply button and then select 'Connected: Yes' again and pressing the Apply button.

If all is okay then you will see the CCI communication led turn green automatically and in the event list of the driver it should mention that the TCP connection is successful:

General


Network Problems

If you experience problems using your laser scanner in combination with this driver or if you need additional information or support, then please attach the daily laser log-file when submitting your JIRA support ticket.

At the bottom of this page you'll find the information on where to find this daily laser log file.

Windows Firewall

A commonly reported problem is that network data is blocked by the Windows Firewall.
When this happens you may see that data does come in using other utilities (like the I/O Tester or the manufacturer's own software), but that the Qinsy driver does not accept any data.

The following (Windows 10) steps may solve this:

  1. Go offline, open the PC Settings (Start menu, Settings)
  2. Select Windows Firewall (Update & Security, Windows Security, Firewall & network protection)
  3. Select Advanced settings
  4. Select Inbound Rules, highlight all 'Driver for Laser Scanning' entries and delete them using the right mouse popup menu (or Del key)
  5. If you now go online, the Windows Security Alert message will pop up: It is important to tick all three check boxes!

Multiple Network Cards

Another possible problem could be that your computer has more than one network card installed (e.g. LAN and WIFI), but within the same sub-net mask range (255.255.255.0).
It is recommended to make the first three digits unique for each network card IP address.
You may check the daily laser log-file, it will show the IP addresses for all available network adapters and indicates which one the driver will use:


Please check that the driver is using the correct one!

Missing Data

If you occasionally experience gaps in your data, this may be caused by a general Windows setting that affects the data throughput of your network card.

Change the following registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\NetworkThrottlingIndex

Set the new value to ffffffff (which will tell Windows to disable network throttling) and restart the computer.

Note that disabling network throttling may affect playing multimedia on your computer, but for laser scanning operations it is advisable to have a maximum data throughput of your network.

Daily Laser Log File

All user actions, system information and reported errors are logged in a daily laser log file which can be found in the current project's LogFiles subfolder.

The filename convention for this ASCII log-file is <System Name> DD-MM-YYYY.log, so every day there will be a new one.

Note that all time stamps in this log file are by default in UTC. An advanced user may change this to local time zone (LTZ) by changing the registry key:
HKEY_CURRENT_USER\Software\QPS\QINSy\8.0\Drivers\DrvLaser\Settings\TimeLogFileUtc value from 1 to 0.

Improve Performance

Due to the enormous amount of data to be expected while scanning and recording, it is recommended to keep the system overhead as low as possible.

Here you'll find some tips and tricks in order to fine-tune your setup.

However, these are not strict rules, because each project is different and depends on the current situation and hardware being used. Your goal should be to keep your system CPU usage as low as possible.

HARDWARE

Storage

Make use of Solid State Drive (SSD), or fast SATA hard drive (7200 - 10000 rpm).

Network

Your network card speed should never be lower than the scanner's network speed. Use a network card that can be configured for 100Mbit or 1Gbit speed. Do not use USB Networking Adapters, because this may result in loss of data when huge amounts of data are being broadcast.

Virus Scanner

Disable Virus Scanner, or at least the setting 'Scan Files when Writing/Reading to/from disk'.

Task Manager CPU

General Task Manager CPU Usage should be less than 50%. CPU load of each display must be less than 10-15%.

Make sure that the 'Working Set (Memory)' column for process Multibeamer.exe and/or DrvResultOut.exe is not constantly increasing, especially during recording.
For detailed information about this see the section Real-time Performance Monitoring below.

PROJECT PREPARATION

Laser Device Settings

During project preparation, establish the optimum settings in order to achieve the required results.

The most benefit you will gain from setting the Scan Speed, Scan Rate, Scan Resolution, Angle Resolution, Vertical Area Selection, Scan Area Selection and Sector Reduction as well as possible.

Especially the Vertical or Scan Area Selection is very important. Make use of Mask schemes to define areas which you don't want to scan.

 ONLINE

Raw Multibeam Display

Open only one Raw Multibeam Display.

Disable the options 'Show Big Dots' and 'Draw Lines'.

Navigation Display

Open only one Navigation Display.

Preferably disable DXF and TIFF layers or other big background files. These layers should only be used during project preparation.

When 'object tracking' is enabled, do not zoom in too close. Keep in mind that the display should not be 'refreshed' more than 1x per second.

3D Point Cloud Display

It is not recommended to use a 3D Point Cloud Display.

If you do so, make sure your hardware contains a high-spec video card.

Under Sensor settings set the Time window setting to a short period, e.g. 10 sec

- Sounding Grid

- Dynamic Surface

Storage to a Sounding Grid is not recommended, and should be purely for display purposes: e.g. for checking the scan coverage or for showing the 95% Confidence Level statistics.

If you do want to see the scan coverage then it is advisable to store to a sounding grid and not to the dynamic surface

Do not use a small cell-size, preferably not less than 1.0 meter.

If you notice in the Navigation Display that the real-time sounding grid is drawn/updated with a delay, then please increase the cell-size or disable the storage completely.

Offline (Replay) there are no limitations and you may use small cell-sizes, e.g. 0.10 meter.

 OFFLINE

Replay

In Replay there are no limitations as mentioned above: use as many displays as you like, store to sounding grids with small cell-sizes, update the dynamic surface, etc.

All this may only affect the replay speed, but the data integrity of your final DTM processing files should be fine.


Controller Computation Setup

While working online, disabling the laser system in your Computation Setup will have the most effect on the performance

Footprints will not be geo-referenced, nor corrected for motion, heading or timing in real-time. This will save a tremendous amount of CPU power and memory usage.

This tip allows you to get the most out of your scanner: maximum scanning speed and maximum scanning rate, without the risk of losing scans due to performance issues.


Drawback is that no DTM file (e.g. QPD) is created, nor a sounding grid is filled, while working online.

To create a final DTM and/or Sounding Grid file you need to Replay the recorded databases afterwards.



Real-time Performance Monitoring

When the scan data rate is too high, the other core Qinsy processes may not be able to handle the amount of data published by the driver (too many pixels/sec.) and in the past it would eventually crash the system.

An extra safety check has been implemented in order to prevent crashing of Qinsy: abnormal memory usage will be detected and when it exceeds a certain threshold limit a Stop command will be sent automatically to the scanner.

When that happens, the following message is displayed in the Events list in order to inform the user:

"SCANNING ABORTED"
"PROCESS MULTIBEAMER.EXE EXCEEDED CRITICAL MEMORY 1.7GB"

Whether such an event may occur is very much hardware dependent and/or on which settings are used.


You can check yourself if your setup is vulnerable: open the Windows Task Manager and monitor process Multibeamer.exe and/or DrvResultOut.exe while scanning. Under normal conditions the memory used by these processes should be constant.
If you notice that column Working Set (Memory) is constantly increasing, then the process will eventually crash when it exceeds 2GB and you will have to restart Qinsy. Note that 2GB is the maximum memory allowed for a 32bit process.


There may be situations that the default 1.7GB threshold is a little too low, or that the Stop scanning command must be sent earlier, e.g after exceeding a memory usage of 1GB.
So as an advanced user you may modify the following registry key in order to increase this threshold:
HKEY_CURRENT_USER\Software\QPS\QINSy\8.0\Drivers\DrvLaser\Settings\ProcessMemoryLimit

Note:

  • If you enter a value (in bytes) higher than 2GB it won't be accepted and the default will be used. You may try the following key value: 2000000000
  • If the value is set to zero, no monitoring of the Multibeamer.exe or DrvResultOut.exe process memory usage will be done. This is at your own risk because it may cause a crash when the memory usage exceeds 2GB.

But most important

Try to prevent having such events happening in your setup:

  • Check all your hardware and upgrade where possible. (Especially CPU power, Memory installed, Network card, Hard disk storage, etc.)
  • Read carefully the Improve Performance paragraph and try to follow up all the tips.