Laser Scanning - RIEGL VZ-2000 (UTC) - 20
Description
Driver to decode data from RIEGL VZ laser scanners.
All supported VZ scanners can operate in both long range and in short range mode.
In short range mode they can operate in 2D line scanning mode making them ideal for mobile scanning applications, where Qinsy will deliver geo-referenced point cloud co-ordinates, in real-time corrected for motion, heading and timing.
Laser stands for Light Amplification by Stimulated Emission of Radiation.
All RIEGL laser scanners are eye-safe (class 1R), except for the VZ-6000:
The VZ-6000 uses class 3B, which is not eye-safe, so extra precautions should be taken.
Characteristic of class 1R laser is that you will not receive any reflection from a water surface, which makes these VZ scanners ideal for combining with multibeam data acquisition surveys.
Note that class 3B is well suited for measuring long ranges in snowy and icy terrain.
It is highly recommended to interface the VZ scanner with a Time Synchronization pulse (aka PPS) in order to time-tag all data with UTC. Actually, this interfacing requirement is mandatory when using the scanner on a moving platform.
The pulse may come from an external GNSS receiver but VZ scanners have an internal GPS which makes interfacing the scanner to an external GNSS receiver obsolete.
In case you do not have a valid GNSS/GPS receiver (e.g. during testing or mobilization), or you use the scanner fixed on a tripod (so not on a moving platform), then you may select in your template setup the driver without "(With UTC)" in the driver name.
For further details please see System Interfacing paragraph below.
The following RIEGL 3D Terrestrial VZ scanners are supported:
VZ-400 | VZ-1000 | VZ-2000 | VZ-4000 | VZ-6000 |
---|---|---|---|---|
Short range (500m) | Long range (1400m) | Long Range (2000m) Very High Speed | Very long range (4000m) | Ultra long range (6000m) |
Contact QPS if you need support for a RIEGL scanner type which is not described in this document.
Special note for VZ-400i users: please use the related driver and documentation which can be found in the related pages below.
Driver Information
Driver | RIEGL VZ-400 / 1000 / 6000 | Interface Type | Freebase/TCP/IP/UDP | Driver Class Type | Freebase |
---|---|---|---|---|---|
UTC Driver | Yes | Input / Output | Input/Output | Executable | DrvLaser.exe RIEGL_VZxxxx |
Related Systems |
| ||||
Related Pages |
Decoding Notes
Data is always broadcast via TCP network. It is advisable to use a fast (gigabit) network card, due to the enormous amount of data to be expected. If an on-board wireless network is available, do not use this for real-time scanning.
The actual raw binary data stream is in so-called RXP format, a proprietary data format defined by RIEGL. This document does not describe the RXP format.
The driver is configured as a Multibeam System and creates XYZ 'multibeam' observations.
('multibeam' versus 'laser scanning' terminology: ping = scan (i.e. 1 vertical line scan), footprint = pixel = pulse, swath = line)
The number of points (beams, pixels) depends on the on-line used settings, like (user-definable) range mask, vertical angle mask, etc. See also Controller Setup below.
The maximum expected number of points per second will vary per scanner type:
- VZ-400 has two range modes: 42000 in long range mode and 125000 in short range (high speed) mode.
- VZ-1000 has four range modes: 29000 in longest range mode and up to 122000 in the shortest range (highest speed) mode.
- VZ-2000 has four range modes: 21000 in longest range mode and up to 396000 in the shortest range (highest speed) mode.
- VZ-4000 has four range modes: 23000 in longest range mode and up to 222000 in the shortest range (highest speed) mode.
- VZ-6000 has four range modes: 23000 in longest range mode and up to 222000 in the shortest range (highest speed) mode.
Notice that all VZ scanners do support another range mode: Reflector scanning. In this mode the laser output power will be reduced.
The actual number of beams per scan depends on the combination of user-definable settings. Under normal conditions you can expect values of up to three thousand pixels.
The number of scans (lines) per second also depends on the scanner type itself, and the combination of user-definable settings.
If you are using a VZ-2000, please see also the expected-results-table in the Additional Information section below.
Next to the pixel XYZ value, three other important attributes are stored, dealing with the reflection from the target's surface:
- Echo return type
The echo return type indicates whether the returned signal is a single, a first, an interior or a last echo from the same emitted pulse.
This means that one pulse may return multiple beams (pixels), e.g. the first return from a tree-leaf, an interior return type from another leaf, and a last return type from a wall. - Amplitude
The value of the pixel amplitude (returned power) is situation dependent and its range will be between 0 and 80 dB. - Reflection
More important and more usable is the reflectance, a kind of 'normalized' amplitude, which will always be in the range of -25 dB to 65 dB.
It is the received power relative to the power that would be received from a white diffuse target (0 dB) at the same distance. The surface normal of this target is assumed to be parallel to the laser beam direction.
Qinsy will store these attributes as follows:
The amplitude is stored as Quality.
If setting 'Modify Intensity Echo types' is enabled (see Online Setup below), it will be 255 in case of a last echo return type, and 0 (zero) in case of an interior echo return type. For first and single echo types it will be the exact value as reported by the scanner.
The reflection is stored as Intensity.
If setting 'Modify Intensity Echo types' is enabled (see Online Setup below), it will be the reflectance plus 1000 in case of a last echo return type, and reflectance minus 1000 in case of an interior echo return type. For first and single echo types it will be the exact value as reported by the scanner.
The Quality or Intensity value can be used for color-coding, e.g. when viewing the final point cloud in the Validator.
Interfacing Notes
By default, the driver will time-stamp the data when received at the UDP port.
However, due to network characteristics in general, this may result in inaccurate timing. Therefore timing via Time Synchronization pulse from GPS is highly advised, especially when you are scanning from a moving platform (vessel or car).
The internal GPS can be used for this, or you may use an external GPS/PPS connected to the Trig Socket port.
It is recommended to use the internal GPS receiver because of simplicity (no extra cables are needed).
Notice that for the integrity of the time-stamping it does not matter which GPS you use, external or internal.
When using GPS/PPS time stamping of the laser data (internal or external), it is important that
1) Laser driver '...(With UTC)' is selected in the template setup,
2) The Qinsy template setup also has a PPS Time Synchronization driver defined otherwise no data will be decoded at all, due to timing mismatches.
Database Setup
- Add a Multibeam Echosounder system to your Template Setup, and select the correct driver "Laser Scanning - RIEGL VZ-xx00 (With UTC)".
The Port number must be the same as the configuration port of the scanner, normally 20002. The driver will communicate (sending and receiving commands) via this configuration port of the scanner.
(The real-time line-stream is received via the data port, and is always the configuration port number minus one, so normally 20001. You don't have to enter this data port number in the setup)
It is important to enter for the IP Address the address of the scanner, by default this will be something like 192.168.0.125.
It is recommended to have a dedicated network interface between your computer and the scanner. However, in case your computer's network card subnet IP address differs from the scanner's IP address, and you can not change the address of your computer's network card (e.g. other network devices are also connected), it is possible to change the default IP address of the scanner. Please consult the laser scanner manual, or contact RIEGL support on how to do this.
The maximum update rate is not used, so leave it at zero. On the next page, the Transducer Location and Mounting Angles are important.
The exact values for the roll, pitch and heading offsets should be established with a calibration procedure.Before such a calibration please use values as accurate as possible:
E.g. when the connectors of the scanner are pointing in a certain direction use the table below:Connectors of the scanner pointing Heading offset Forward (bow) 0º Right (starboard side) 90º Backwards (aft) 180º Left (port side) 270º
Illustration showing the Scanner's Own Co-ordinate System (SOCS).
Notice that this XYZ co-ordinate system differs from the Qinsy XYZ system:Qinsy
VZ Scanner
X
-Y
Y
+X
Z
-Z
Set the Max. beams per Ping value to 40000.
The actual number of beams will be variable and depends for example on the on-line used settings, and on the targets being scanned.- Leave all other values on the next page(s) also at their 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.
First of all, a (TCP/IP) network connection has to be established between Qinsy and the laser unit. This has to be done every time you go on-line:
Change on the 'Control' tab page option 'Connected' to Yes and select the Apply button. Wait until you see in the Events list that a connection has been made successfully.
Connected | Connect (using TCP/IP) to the so-called LRC Server of the Laser Scanner. Make sure that the IP address entered in Database Setup is correct. |
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.
|
Scan Mode | Select the required measurement method: Line (2D), i.e. looking at one fixed direction, or Radar (3D), i.e. scanning 360° around. |
Scan Direction | Set the line scan direction in degrees. Valid values are from 0° to 360°. |
Continuous | When enabled, scanner will start endless scanning after [Start], until the [Stop] command is received. |
Lines | The maximum number of lines to scan after the [Start] command is received. |
Horizontal Area Selection | The horizontal scan area goes from 0 to 720°. |
Vertical Area Selection | Maximum vertical scan area goes from 30° to 130° (VZ-400, VZ-1000, VZ-2000) or from 60° to 120° (VZ-4000, VZ-6000). Select the required scheme from the list. Schemes are defined in the Laser Device Settings XML File. Excluded data due to this setting will not be recorded. |
Sector Reduction | Select the required scheme from the list. Schemes are defined in the Laser Device Settings XML File. |
Scan Resolution | Select the required vertical angle resolution, i.e. the angle increment between two consecutive pixels. If you are using a VZ-2000, please see also the expected-results-table in the Additional Information section below. |
Scan Rate | Select the required scanner measurement rate, i.e number of pixels / second.
|
Minimum Range | Set the minimum required range in meters. Valid Values: 1.5 to 500 (VZ-400), 2.5 to 1400 (VZ-1000), 2.5 to 2050 (VZ-2000) or 5 to 6000 (VZ-4000/VZ-6000) meters. |
Maximum Range | Set the maximum allowed range in meters. Valid Values: 1.5 to 500 (VZ-400), 2.5 to 1400 (VZ-1000), 2.5 to 2050 (VZ-2000) or 5 to 6000 ( VZ-4000/VZ-6000) meters. |
Minimum Amplitude | Set the minimum required amplitude (returned power in dB) value. |
Maximum Amplitude | Set the maximum allowed amplitude (in dB) value. |
Minimum Reflection | Set the minimum required reflection (in dB). The reflection is a 'normalized' amplitude, and values are in the range between -25 dB to 65 dB. It is the received power relative to the power that would be received from a white diffuse target (0 dB) at the same distance. The surface normal of this target is assumed to be parallel to the laser beam direction. |
Maximum Reflection | Set the maximum allowed reflection (in dB). The reflection is a 'normalized' amplitude, and values are in the range between -25 dB to 65 dB. It is the received power relative to the power that would be received from a white diffuse target (0 dB) at the same distance. The surface normal of this target is assumed to be parallel to the laser beam direction. |
Atmospheric Relative Humidity | Set the current atmospheric relative humidity. Valid values: 0% - 100%. Atmospheric parameters are needed when highly accurate range measurements are required. This option may not be available in your setup. In that case the default value will be used. |
Atmospheric Temperature | Set the current atmospheric temperature in degrees Celsius. Valid values: -50°C - 100°C. Atmospheric parameters are needed when highly accurate range measurements are required. This option may not be available in your setup. In that case the default value will be used. |
Atmospheric Pressure at Sealevel | Set the atmospheric pressure at sea level in mbar. Valid values: 0 - 1200 mbar. Atmospheric parameters are needed when highly accurate range measurements are required. This option may not be available in your setup. In that case the default value will be used. |
Height above Mean Sealevel | Set the height above mean sea level in meters. Valid values: 0 m - 1000 m. Atmospheric parameters are needed when highly accurate range measurements are required. This option may not be available in your setup. In that case the default value will be used. |
Multi Target Measurement | One emitted laser pulse may hit one or several targets, causing one or several echo pulses. Select here the type of echo pulse you want to decode. Notice that blocked data due to this setting will not be recorded. |
Modify Intensity Echo types | When enabled, the original reported intensity and quality value for interior and last echo types will be modified. Notice that the value for first and single echo types are never modified. See also the detailed explanation under Decoding Notes |
Store Laser Location | If enabled, an additional pixel with zero co-ordinates will be added to each line scan, in order to indicate the exact laser scanner location in the resulting point cloud. |
Use PPS (Time Synchronization) | Notice that this setting is only available when laser driver '...(With UTC)' has been selected in your template setup. |
PPS Trigger Edge | Select the used trigger edge of the external GPS PPS pulse. It depends on the external GPS receiver being used and you should therefore consult the GPS manual. |
GPS Baudrate | Select the baud rate of the external GPS receiver connected to the scanner |
GPS Format | Select the format of the external GPS message connected to the scanner:
|
PPS Pulse/Data Sequence | Select if the external Time Synchronization pulse comes before the GPS data string, or vice versa. |
Additional Information
VZ-2000 users may use the following table to see what the results will be for all the possible scan rate/resolution combinations:
Notice that any combination with a scan rate set to 580m - 1010 kHz may result in theoretically too many pixels that Qinsy may handle in real-time.
Qinsy handles only approximately 250 thousand measurements per second. However, this value can be safely much higher but depends highly on the used hardware.
Nevertheless it is important to prepare the project prior to the start of the scanning by optimizing all parameters to meet the necessary requirements:
Select the right scan rate, vertical area selection, sector reduction and/or range blocking in order to decrease the number of expected points per second.
An advanced user may overrule this limitation of max 250 thousand points per sec.
The best reason for doing this is to by-pass the check which is done by the driver every time prior to the Start command to see if the theoretically expected number of points per second does not exceed the limitation.
First go offline. Use a registry editor and change registry key:
HKEY_CURRENT_USER\Software\QPS\Qinsy\8.0\Drivers\DrvLaser\VZ-2000\<Your System Name>\Settings\QinsyMaxPixelPerSecond
You may enter a value up to 1 000 000. Please notice that when you do use a higher value, it is highly recommended to store only to db, and not to DTM nor Sounding Grid file, and only have a limited number of displays open. A DTM file (QPD) can always safely be created with Replay.
Check List
Please use at least the following checks prior to starting scanning and recording laser data:
- Is there a valid network connection between the scanner and the Qinsy computer?
Start a web browser (e.g. Internet Explorer), and type in the IP address of the scanner.
You should see the same HMI (Human Machine Interface) as on the scanner itself.
- Is the GPS and/or PPS timing okay at the scanner?
Start a web browser, type in the IP address of the scanner, and go to the GPS information page:
Home, Settings, Peripherals..., GPS...
Set the GPS Mode to 'INTERNAL_GPS', or to 'EXTERNAL_GPS' in case the scanner receives the Time Synchronization and GGA message from an external source.
Check that you see a valid UTC Time and WGS84 Position, and that Synchronization is Ok.
- After starting scanning, do you see a low Ping Age, using a Generic Display?
This ping age value must be around zero, e.g. 0.08, or 0.02.
Further, make sure that the Status Flag value is 2, meaning 'PPS OKAY'.
If the Status Flag is 0 then this either means that or
- you are using driver "Laser Scanning - RIEGL VZ-xx00" without "(With UTC)" (not recommended), or
- your template setup has no Time Synchronization system defined (not recommended), or
- your Qinsy Time Synchronization system is not working (please check), or
- the GPS Sync Led on the VZ scanner is not green, or
- the internal reported GPS_STATUS from the RIEGL data stream is not 0x3.
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.
Note: You need internet access in order to download this example file.
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 section you'll find the information on where to find this daily laser log file
Network Problems
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:
Go offline, open the PC Settings (Start menu, Settings)
Select Windows Firewall (Update & Security, Windows Security, Firewall & network protection)
Select Advanced settings
Select Inbound Rules, highlight all 'Driver for Laser Scanning' entries and delete them using the right mouse popup menu (or Del key)
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
Controller 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 Min/Max Range limits, 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 and more important: do not use the options 'Show Big Dots' or 'Draw Lines'.
Navigation Display
Open only one Navigation Display.
Preferably disable DXF and TIFF layers or other big background files. Note that 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, unless 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 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 updated with a delay then please increase the cell-size or disable the storage completely.
Note that in Replay (offline) 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.
COMPUTATION SETUP
While working online, disabling the laser system in your Computation Setup will have the most effect on the performance
The final footprints will not be geo-referenced, nor corrected for motion, heading or timing in real-time, which 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.
In order to create a final DTM and/or Sounding Grid file you just need to Replay the recorded databases afterwards.