Description

Driver to decode laser data from SICK LMS5xx laser scanners, through an Ethernet interface.

Laser stands for Light Amplification by Stimulated Emission of Radiation. Laser class used by the LMS5xx is 1 (IEC 60825-1 (2007-6)), which is eye-safe.

The scanner has a maximum scan range of 65 meters (newer scanners may scan 80 meters), and its full scan area covers 190°. The driver supports the so-called multi-echo technology, which means that each emitted pulse may provide up to five measurements, depending on the environmental conditions (rain, dust, etc.). The remission value (signal strength or reflectivity) for each pulse is also decoded.


On the left the LMS500 for using indoors, on the right the LMS511, which can be used outdoors (IP 67).

New

This driver supports the SICK LMS5xx since mid June 2011.
The newer SICK LMS511 PRO is supported since October 2013.

Driver Information

Driver SICK LMS500/LMS511 (XML)  Interface Type TCP/IP Driver Class Type Freebase/TCP
UTC Driver (question) Yes Input / Output Input/Output Executable DrvLaser.exe SICK_LMS500 
Related Systems
Related Pages

Decoding Notes

Data is always broadcast via TCP network. It is advisable to use a fast (at least 100Mbit) network card, due to real-time scanning and the huge amount of data. Communication via the USB or serial interface is not supported.

The actual raw datastream is in SICK's own format. This document does not describe this format.

Interfacing Notes

Timing

An LMS5xx unit does not support accurate timing by means of an external synchronization pulse (PPS), nor has it an accurate real-time clock inside.

Therefore the driver will time-stamp by default the data when received at the TCP port. This time-stamp may be corrected for a fixed latency, which can be provided by the manufacturer, or established by a latency calibration procedure.

It is however possible to synchronize the scanner with an external time and date stamp using the serial data link of the scanner. Outputted data will then contain time of transmission for each laser echo. The user is allowed to use this one for time-stamping the data, and therefore eliminating a possible jitter or variable latency d/t the TCP connection. A valid PPS system must be part of the template setup.

Network setup

All communication to and from the laser unit goes via the on-board LAN network, using the TCP protocol.

The exact LAN IP address of the laser unit should be provided by the manufacturer or your reseller. Normally SICK configure their laser units with IP address 192.168.0.1. The default TCP port number is 2111. See paragraph SOPAS settings below for more information about how to establish the exact IP address and port number.

The LAN IP address of your computer's network should be in the same range, except for the last digit. This must be a unique number! Use for the subnet mask the values 255.255.255.0

  • Windows XP:
    Control Panel, Network Connections, Click right-mouse on Local Area Connection, Properties, Internet Protocol (TCP/IP), Properties...
  • Windows Vista:
    Control Panel, Network and Sharing Center, Tasks, Manage network connections, Click right-mouse on Local Area Connection, Properties, Internet Protocol Version 4 (TCP/IPv4), Properties...
  • Windows 7:
    Control Panel, Network and Sharing Center, Change adapter settings, Click right-mouse on Local Area Connection, Properties, Internet Protocol Version 4 (TCP/IPv4), Properties...

It is recommended to 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 Taskbar, Run..., Cmd <Enter>, and 'ping' the IP address of your laser unit.
The network connection is okay when you receive a reply three times within a few milliseconds.

System Configuration

Use the official SICK SOPAS software to initialize the scanner with some necessary settings in order to operate it from QINSy.

Select Start, Programs, SICK, SOPAS Engineering Tool, SOPAS...

During start-up the program will scan automatically for any connected SICK device. If no results are displayed, check the network and/or power cable of the scanner. You may have to turn off your WiFi network in order to let the program find a device.

Enable the one found at port 2111 and select the Add button in order to continue.

The Data processing settings are the most important ones to check:

RemissionEncoder data and Time stamp must be enabled.

The Device name must be disabled and the Output interval must be 1.

The Output data range Start angle must be the minimum allowed -5° and the Stop angle must be the maximum allowed 185°.


In order to change these settings you need to login first. Select Login device from the Tools pull-down menu:

Set Userlevel to Authorized Client and login using password: client.


After changing the parameters select from the Communication pull-down menu the option Download all parameters to device.


Further, double click on the Ethernet settings in the tree to check the IP address and Ethernet aux port (default 2111) which is needed to enter in the QINSy template setup for the Laser system.

In case you want to synchronize the time externally by using a serial data cable connected between your PC COMport and the IO Data link, double click on the Serial settings in order to check the required baud-rate settings. Default these will be 57600, 8, 1, none.

Database Setup

The driver is internally treated as a multibeam system, creating multibeam 'range' and 'angle' observations, therefore you will find the laser system drivers under category type Multibeam Echosounders.

Terminology 'Multibeam' versus 'Laser scanning'

Multibeam

Laser scanning

Ping

Scan (i.e. full 190°)

Footprint or Beam

Pixel, Pulse or Echo

Swath

Line or Scan

1. Edit System Wizard

Add a Multibeam Echosounder system to your template setup, and select driver "Laser Scanning - SICK LMS500/LMS511 (XML)".

  • The Port number must be the same as the configuration port of the scanner. The driver will communicate via this configuration port of the scanner. Ask the manufacturer or reseller what the exact port number should be. Normally it will be 2111.
  • Also important is to enter the exact IP Address of the scanner. Each scanner should have its own unique IP address. See Network Setup for more information.
  • Leave the maximum update rate at zero. 

2. Multibeam Echosounder Parameters

Important are the Transducer Location (Node) and Mounting Angles (offsets) on the second wizard page.

  • As a rule of thumb, when you mount the laser unit backwards on your moving vehicle (connectors and cables pointing to bow), and the face (scan area) of the unit is pointing downwards, then you may leave the Roll, the Pitch and the Heading offset zero. A scanned profile as seen in a Raw Multibeam display should then be as in the real world. 
    As another example, if you mount the scanner backwards, but with the face pointing to port, then you should enter already a Roll offset of 90°. When the face is pointing to starboard, use a Roll offset of 270°.
  • Leave the Max. beams per ping value to 5706
    The actual number of beams will be variable, and depends for example on the used on-line settings and on the targets being scanned. 

3. Echosounder Accuracy Parameters
  • You may leave all values on the third wizard page at defaults.
4. Multibeam Echosounder Corrections
  • You may leave all values on the last wizard page at defaults.

Online

When on-line, the laser unit can be controlled using the Controller: 
Select Echosounder Settings, click on the Laser System icon, and select the 'Control' tab page. 

Control

Device Settings

Connected

In order to communicate with the scanner, you must make a network connection first.

  • No
    This means that there is no TCP network connection between the driver and the laser unit.
  • Yes
    Select this every time 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.
  • [ Set to Nothing at startup ]
    Select this option (only one time, 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 one time, 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.
  • [ Set to Auto Start at startup ]
    Select this option (only one time, 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, and if successful, it will start the scanner using its last scan settings.
    Notice that this selection may not be present in your setup
    .

Action

Selected action will be sent to the laser unit, immediately after hitting the Apply or OK button. You must be connected first in order to select an action.

Notice that any selection will always revert back to [None], after each selected action.

It is recommended to wait a few moments after each action, until the status in the Event list is updated with a message, because it takes some time for the unit to handle each command (action).

  • [None]
    This will be the selection after each action. Nothing will happen when you hit the Apply or OK button.
  • Start
    Select this action in order to start scanning. Scanning should be started immediately after hitting the Apply or OK button, and the updated laser data should be visible e.g. in a Raw Multibeam Display. If you notice that nothing happens, check the notification messages in the Events list in order to pinpoint the problem.

    When started successfully, the upper-right LED indicator on the unit should turn to green.
  • Stop
    Select this action in order to stop scanning. Scanning will be stopped immediately, after hitting the Apply or OK button. The laser will also stop scanning automatically when you disconnect, or when going offline with the Controller.

    Notice that stop scanning only means that the laser unit does not output telegram messages anymore. The mirror inside continues rotating at current Scan Rate speed

    When stopped successfully, the upper-left LED indicator on the unit should turn to red, and the bottom segment of the 7-segment display must be flashing.
  • [ REQUEST STATUS ]
    Select this action in order to retrieve some additional information about the scanner's current state.
    Temperature Okay means that the scanner's internal temperature is within its operating temperature range.
    Pollution No Error means there are no contamination warnings. If it indicates a warning or error, you may have to clean the front screen of the scanner.
    Notice that this information is also requested when making a network connection with the scanner. Sometimes not all information will be returned, especially when the scanner is busy. In that case try the request again.
  • [ REBOOT ]
    Select this action to reboot the laser unit, if needed for whatever reason.
    It takes at least half a minute before the LED indicators on the unit will be turned off. After that they will automatically turn on.
    It takes at least one minute before the unit is up and running. After all this, you must re-connect manually.

Scan Mode

Select the required combination of Scan Rate and Angular Resolution.
Notice that the list is limited to only valid combinations, others are not accepted by the LMS5xx.

The selected combination will have effect on the maximum number of expected pixels per second. See therefore the table under Additional Information .

Changing the scan mode is allowed while already scanning, but increasing or decreasing to another scan rate may take up to 20 seconds before receiving new scan data.
Warning: This delay may cause wrong timing when using 'Use Time from Scanner'. Therefore it is recommended to change the scan mode while not scanning, in case Use Time from Scanner is enabled.

Scan Interval

Leave this value to 1, in order to receive all scans that belongs to the selected scan rate. However if you wish to decrease the predefined scan rate, you may want to set a value in order to use every nth scan.
For example, if the current scan rate is 25 Hz, and you set the Scan Interval to 5, the resulting scan rate will be 1 Hz

Changing the scan interval is allowed while scanning. After hitting the Apply or OK button, results should be seen immediately when monitoring e.g. the Ping Rate and/or Beams Per Second using a Generic Display.

Multi Target Measurement

One single emitted pulse may produce several echoes, due to hitting a rain drop, a sand dust particle, glass, the edge of a tree leaf, etc.
An LMS5xx laser scanner can measure up to 5 reflected pulses (echoes) from one emitted pulse.

  • First Echo
    Only measurements are accepted received from the very first reflected pulse.
  • Last Echo
    Only measurements are accepted received from the last valid reflected pulse.
  • All Echoes
    All measurements are accepted. This selection may result in decoded beams (pixels) having the same angle, but with a different range.

The index of the echo is stored as Quality value for each laser pulse. This means that the quality for a first echo will be 1, the 2nd echo will be 2, and so on. So if you color-code the point cloud data using the Quality you should use a color range scale between 1 and  5.

Scan Area Selection

The maximum physical scan area covers 190°, and it goes counter-clockwise from 95° to 265°.
Therefore 0° means looking straight ahead (center of the scan field), 90° means looking starboard and 270° means looking port.
Notice that 180° is physically masked.

  • Full Scan Area
    All data within the entire physical area is accepted.
  • Port
    Only data within the sector between 265° and 360° (clock-wise) is accepted.
  • Starboard
    .
    Only data within the sector between 0° and 95° (clock-wise) is accepted.
  • Narrow Ahead
    Only data within the sector between 315° and 45° (clock-wise) is accepted.

    Select the required scheme from the list. Schemes are defined in the Laser Device Settings XML File.

    Excluded data d/t this setting will not be recorded!

Minimum Range

Set the minimum required range in meters. Valid values: 0 to 65 meters.

Using this setting is recommended, but be careful: Blocked data due to this setting (i.e. all pixels less than this range) will not be recorded!

Maximum Range

Set the maximum allowed range in meters. Valid values: 0 to 65 meters.

Using this setting is recommended, but be careful: Blocked data due to this setting (i.e. all pixels more than this range) will not be recorded!

Minimum Intensity

Set the minimum required intensity (RSSI or signal strength). Valid values: 0 to 255.

The LMS5xx reports 0 for 'No Signal', 1 - 254 for a 'Valid Measurement' and 255 for 'Dazzled'.

Notice that blocked data due to this setting will not be recorded!


This option may not be available in your setup. In that case all signal strength values will be accepted.

Maximum Intensity Set the maximum allowed intensity (RSSI signal strength). Valid values: 0 to 255.

The LMS5xx reports 0 for 'No Signal', 1 - 254 for a 'Valid Measurement' and 255 for 'Dazzled'.

Notice that blocked data due to this setting will not be recorded!

This option may not be available in your setup. In that case all signal strength values will be accepted.

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, and its intensity and quality value will be zero.

Use Time from Scanner

It is recommended not to use the time of the scanner, but to use the time of arrival.

When enabled, time-stamping of the data will be done using the decoded time fields from the telegram messages. However, this synchronization can not be done accurately, due to the lack of support for an external pulse (PPS) by this scanner type. See Timing for more information.

A valid PPS system must be part of the template setup, otherwise time of arrival will be used for time-stamping.

This option may not be available in your setup. In that case time of arrival will be used for time-stamping.

Latency

Enter a fixed latency value in milliseconds. 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.

Synchronize Scanner Time

This option is only visible in combination with the 'Use Time from Scanner' enabled.

When enabled, the laser unit will be synchronized with the computer's clock when the scanner is started.
However, this synchronization can not be done accurately, due to the lack of support for an external pulse (PPS) by this scanner type. See Timing for more information.

Capture Raw Data

Enable this option if you want to store the raw binary data stream coming straight from the unit to a log file on disk.
This may be useful for debugging purposes, or to load the data into other software.

This binary log file will be located in the current project's log-file folder and the naming convention will be <System Name> - DD-MM-YYYY - <Sequence>.bin. The sequence number is incremented after every Start/Stop scanning action.

Please note that this binary file is of no use for QINSy, and it may effect the online performance because of the extra hard disk activity.

This option may not be available in your setup. In that case no raw data will be captured.

Generic Display

The Generic Display can be used to show the numerical values for the number of beams (pixels) being scanned per ping (scan), the number of beams being scanned per second, the ping rate (scan rate in Hz), range values, etc.

Important value to monitor is the Ping Age, especially when setting 'Use Time from Scanner' is enabled. This value should be small, around zero. 
A Status Flag value of 2 means that the time from the scanner is used. If not, it will be 0.
You may use the attached example Generic Display Layout file as example: Copy this layout (Use 'Save Link As...') to your current Project's Settings\Display folder and open it using a new Generic Display. You only have to select the correct laser system as defined in your template setup.

Additional Information

The LMS5xx has the following features and limitations:

  • The maximum scanning range is 65 meters (213 feet) or 80 meters (262 feet) which depends on the selected angular resolution. The accuracy may depend on your exact scanner type.
  • The maximum scan area covers 190° (clockwise from 265° via 0° to 95°)
  • The highest angle resolution will be 0.1667°, the lowest is 1.0°
  • The decoded remission (intensity/reflectivity) value is a value between 0 and 255, and depends on the target's surface being hit, and the distance to this target. I.e. that a white surface will return a higher remission value than a dark surface. Also, a surface closer by will return a higher remission than the same surface at larger distance. This remission is also stored as intensity value for each laser pulse. So if you color-code the point cloud data using the Intensity you should use a color range scale between 0 and  255.
  • The number of scans per second can be 25, 35, 50, 75 or 100 Hz. (user-defineable) 
    Not all combinations between an angle resolution and scans per second are allowed. This driver only allows you to select valid combinations.
  • The maximum expected number of beams (pixels) per second is 28500 (theoretically). 
  • The actual number of beams depends on the on-line used settings, like scan mode, scan interval, scan area and/or the multi-target measurement selection. See Online Setup for more information.


Problems

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


  • The most 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 IO Tester or the manufacturer's own software), but that the Qinsy driver does not accept any data.

    The following (Windows 7) steps may solve this:
  1. Go offline, open the Control Panel (Start menu, Settings, Control Panel)
  2. Select Windows Firewall (System and Security)
  3. Select Advanced Settings (Upper left corner)
  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 check all three check boxes!
  • Another possible problem could be that your computer has more than one network cards 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.

Daily Laser Log File

All user actions are logged in a daily laser log file. You will find this file in the current project's LogFiles folder.
The filename convention for this ASCII log-file is <System Name> DD-MM-YYYY.log.

Notice 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.1\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.

Virus Scanner

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

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.

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.

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.

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. 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.

Sounding Grid

Storage to a Sounding Grid while on-line is not recommended, and should be purely for display purposes. E.g. for checking the scan coverage, or to show the 95% Confidence Level statistics.

Do not use a cell-size less than 0.5 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. Offline (i.e. Replay) you may use small cell-sizes, e.g. 0.10 meter.

   
Controller Computation Setup

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.