SICK Telegram listing Operating instructions

Type
Operating instructions
T E C H N I C A L I N F O R M A T I O N
Telegram Listing LiDAR-LOC
LiDAR Localization Software
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
2
Subject to change without notice
Product described
LiDAR-LOC with localization controller and 2D LiDAR sensor
Manufacturer
SICK AG
Erwin-Sick-Str. 1
79183 Waldkirch
Germany
Legal notes
This work is protected by copyright. The associated rights are reserved by SICK AG. Reproduction of this docu-
ment or parts of this document is only permissible within the limits of the legal provisions of copyright law. Any
modification, abridgment, or translation of this document is prohibited without the express written permission
of SICK AG.
The trademarks mentioned in this document are the property of their respective owners.
© SICK AG. All rights reserved.
Original document
This document is an original document of SICK AG.
1 About this document
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
3
Subject to change without notice
Contents
1 About this document ................................................................................................................ 4
1.1 Function of this document ............................................................................................................... 4
2 LiDAR-LOC CoLa telegrams ..................................................................................................... 5
2.1 Example Start Sequence .................................................................................................................. 5
2.2 Switching states ................................................................................................................................ 7
2.2.1 Command: IsSystemReady ..................................................................................................................7
2.2.2 Command: LocState ..............................................................................................................................8
2.2.3 Command: LocStartLocalizing .............................................................................................................9
2.2.4 Command: LocStop ............................................................................................................................ 10
2.2.5 Command: LocStopAndSave ............................................................................................................. 11
2.3 Basic configuration ......................................................................................................................... 12
2.3.1 Command: DevSetLidarConfig .......................................................................................................... 12
2.3.2 Command: LocSetMap ....................................................................................................................... 14
2.3.3 Command: LocMapState ................................................................................................................... 15
2.3.4 Command: LocMap ............................................................................................................................. 16
2.3.5 Command: LocForceUpdate .............................................................................................................. 17
2.3.6 Command: LocSetPose ...................................................................................................................... 18
2.3.7 Command: LocSetReflectorsForSupportActive .............................................................................. 19
2.3.8 Command: SavePermanent .............................................................................................................. 20
2.3.9 Command: LocRequestTimestamp .................................................................................................. 21
2.4 Result Output Configuration .......................................................................................................... 22
2.4.1 Command: LocSetResultPort ............................................................................................................ 22
2.4.2 Command: LocSetResultMode ......................................................................................................... 23
2.4.3 Command: LocSetResultPoseEnabled ............................................................................................ 24
2.4.4 Command: LocSetResultEndianness ............................................................................................... 25
2.4.5 Command: LocSetResultPoseInterval ............................................................................................. 26
2.4.6 Command: LocRequestResultData .................................................................................................. 27
2.5 Debugging ........................................................................................................................................ 28
2.5.1 Command: DevGetLidarState ........................................................................................................... 28
2.5.2 Command: LocResultState ................................................................................................................ 29
2.5.3 Command: LocResultPort .................................................................................................................. 30
2.5.4 Command: LocResultMode ............................................................................................................... 31
2.5.5 Command: LocResultEndianness ..................................................................................................... 32
1 About this document
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
4
Subject to change without notice
1 About this document
1.1 Function of this document
This document lists the telegrams to communicate with LiDAR-LOC. The full operation instruction stated below
is explicitly required for the use of LIDAR-LOC:
Operating instructions (8024728)
Hardware Integration (8024819)
Descriptions of the commands, the parameters and the expected response after sending a telegram with the
compact command language CoLa-A (Command Language ASCII) are described here.
Some commands may change during SICK development processes. Please always use the latest
version of the “Telegram Listing” document.
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
5
Subject to change without notice
2 LiDAR-LOC CoLa telegrams
2.1 Example Start Sequence
The simplified start sequence (Figure 1) can be used if the localization system was previously configured via
SOPASair or CoLa Methods (sMN DevSetLidarConfig, sMN LocSetMap and sMN SavePermanent). Changes of
CoLa Methods sMN DevSetLidarConfig and sMN LocSetMap are only persistent after calling sMN SavePerma-
nent.
Start
Check if System Ready
sMN IsSystemReady
Check LocState
sRN LocState
BOOTING
IDLE
Start Localization
sMN LocStartLocalizing
Initialization
Finished
True
True
Ack ErrorFalse
LOCALIZING
Auto Start
Delay
Error or False
Delay
Initialize Pose
sMN LocSetPose
True
Ack ErrorFalse
Figure 1: Simplified start sequence (CoLa commands and results are written in blue.)
The advanced start sequence (Figure 2) can be used if the LiDAR sensor of the localization system were previ-
ously configured via SOPASair or CoLa Methods, but the map needs to be changed after start-up.
If you switch maps during operation, SICK recommends you to check the correct map is loaded. Request the
name of the map that is currently loaded by using the CoLa command sRN LocMap.
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
6
Subject to change without notice
Start
Check if System Ready
sMN IsSystemReady
A
A
Check LocState
sRN LocState
BOOTING
Check Map State
sRN LocMapState
IDLE
Check Map Name
sRN LocMap
MAP_NAME == Expected
True
True
Initialize Pose
sMN LocSetPose
True
Start Localization
sMN LocStartLocalizing
Initialization
Finished
True
True
Load Map
sMN LocSetMap
False
True, True
Ack Error
Ack Error
False
False
Configure LiDAR(s)
sMN DevSetLidarConfig
True, True
Start Localization
sMN LocStartLocalizing
True
Ack ErrorFalse
True, False
or
False, False
True, False
or
False, False
Check Map Name
sRN LocMap
MAP_NAME == Expected
LOCALIZING
True
False
Stop Localization
sMN LocStop
True
Ack Error
False
Auto Start
Ack ErrorFalse
Delay
Error or False
Delay
Figure 2: Advanced start sequence (CoLa commands and results are written in blue, external
checkings are written in green)
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
7
Subject to change without notice
2.2 Switching states
2.2.1 Command: IsSystemReady
Checks if the localization controller is booted and ready to process CoLa-A commands. An error code or a
false return value means that the localization controller is still booting and loading LiDAR-LOC.
Request Write
Telegram syntax: sMN IsSystemReady
Telegram part
Type
Range/Value
Command type
String
sMN
Command
String
IsSystemReady
Example:
Check if the system is ready.
Telegram:
sMN IsSystemReady
Response
Telegram syntax: sAN IsSystemReady
Telegram part
Type
Range/Value
Command type
String
sAN
Command
String
IsSystemReady
State
Bool_1
0 false: Localization controller
is booting or LiDAR-LOC is
loading
1 true: Localization controller
is ready for CoLa-A commands
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
8
Subject to change without notice
2.2.2 Command: LocState
Read the current state of the localization.
Request Write
Telegram syntax: sRN LocState
Telegram part
Description
Type
Range/Value
Command type
Read variable by name
String
sRN
Command
String
LocState
Example:
Read localization state.
Telegram
sRN LocState
Response
Telegram syntax: sRA LocState
Telegram part
Description
Type
Range/Value
Command type
Response (Read variable by name)
String
sRA
Command
String
LocState
State
Localization state
Enum
0 (BOOTING)
1 (IDLE)
2 (LOCALIZING)
3 (DEMO_MAPPING)
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
9
Subject to change without notice
2.2.3 Command: LocStartLocalizing
If all prerequisites are met, start the localization.
Request Write
Telegram syntax: sMN LocStartLocalizing
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
LocStartLocalizing
Example:
If all prerequisites are met, start the localization.
Telegram
sMN LocStartLocalizing
Response
Telegram syntax: sAN LocStartLocalizing
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
LocStartLocalizing
Result
The system started localizing.
Bool_1
0 failed
1 success
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
10
Subject to change without notice
2.2.4 Command: LocStop
Stop the localization or the demo mapping and return to IDLE state.
Request Write
Telegram syntax: sMN LocStop
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
LocStop
Example:
Stop the localization or the demo mapping.
Telegram
sMN LocStop
Response
Telegram syntax: sAN LocStop
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
LocStop
Result
The localization or demo mapping stopped.
Bool_1
0 failed
1 success
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
11
Subject to change without notice
2.2.5 Command: LocStopAndSave
Stop the localization and return to IDLE state. The current pose and map are saved for the next system
start. The system automatically goes into LOCALIZING state after restart.
Note
This function does not save configuration settings that were made with CoLa-A commands, see
savePermanet command.
Request Write
Telegram syntax: sMN LocStopAndSave
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
LocStopAndSave
Example:
Stop the localization and save before restart.
Telegram
sMN LocStopAndSave
Response
Telegram syntax: sAN LocStopAndSave
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
LocStopAndSave
Result
The localization stopped and settings are
saved before restart.
Bool_1
0 failed
1 success
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
12
Subject to change without notice
2.3 Basic configuration
2.3.1 Command: DevSetLidarConfig
Configure a 2D LiDAR sensor.
Request Write
Telegram syntax: sMN DevSetLidarConfig
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
DevSetLidarConfig
index
Index of the sensor you want to configure.
UInt_8
[0,1]
minRange
Beams with a range that is lower than this
distance will be discarded.
UInt_32
[mm]
maxRange
Beams with a range that is greater than this
distance will be discarded.
UInt_32
[mm]
minAngle
Beams with an angle that is lower than this
threshold will be discarded.
UInt_32
[-180000,180000] [mdeg]
maxAngle
Beams with an angle that is greater than
this threshold will be discarded.
UInt_32
[-180000,180000] [mdeg]
x
X position relative to vehicle coordinate sys-
tem.
UInt_32
[-50000,50000] [mm]
y
Y position relative to vehicle coordinate sys-
tem.
UInt_32
[-50000,50000] [mm]
yaw
Yaw angle relative to vehicle coordinate sys-
tem.
UInt_32
[-180000,180000] [mdeg]
upsideDown
Indicates if the sensor is mounted upside-
down.
Bool_1
0 false
1 true
IP
IP address of the sensor. Must be in the
same subnet as the port of the localization
controller to which the sensor is connected.
String
Max length = 15
Port
CoLa-A port of the sensor that is used for
communication. This is usually 2111 or
2122.
UInt_16
[0, 65535]
Interface Type
The interface type for the connection be-
tween LiDAR-LOC and the sensor.
Enum
0 TCP
Reserved
Reserved field set to 0
UInt_8
0
active
This sensor is used for localization. The sen-
sor with the index 0 always must be 1 (true).
Bool_1
0 false
1 true
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
13
Subject to change without notice
Example:
Configure first sensor with the following parameters:
LiDAR index: 0
min range: 0.3 m
max range: 100 m
min angle: -180 deg
max angle: 180 deg
mounting pose x: 1 m
mounting pose y: -0.3 m
mounting pose yaw: -45 deg
mounting pose upside down: false
IP: 192.168.0.30
port: 2122
interface type: TCP
Reserved: 0
active: true
Telegram
sMN DevSetLidarConfig +0 +300 +100000 -180000 +180000
+1000 -300 -45000 0 +12 192.168.0.30 +2122 0 0 1
The prefix of the string with the IP address is the length of the string, in this case 12 characters.
Response
Telegram syntax: sAN DevSetLidarConfig
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
DevSetLidarConfig
Set Result
The arguments were valid and have been
configured.
Bool_1
0 failed
1 success
Executed
Result
The sensor driver started and received data.
Bool_1
0 failed
1 success
Example:
Value description
Set result: 1
Executed result: 0
Response:
sAN DevSetLidarConfig 1 0
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
14
Subject to change without notice
2.3.2 Command: LocSetMap
Load a map.
Request Write
Telegram syntax: sMN LocSetMap
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
LocSetMap
mapFileName
The file name of the map that you want to
load.
String
Max length 255
Example:
Load a map with the following parameters:
Map file name: our_hall.smap
Telegram
sMN LocSetMap +13 our_hall.smap
The prefix of the string with the map file name is the length, in this case 13 characters.
Response
Telegram syntax: sAN LocSetMap
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
LocSetMap
Set Result
The arguments were valid and have been
configured.
Bool_1
0 failed
1 success
Executed
Result
The map is loaded.
Bool_1
0 failed
1 success
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
15
Subject to change without notice
2.3.3 Command: LocMapState
Read the current map state.
Request Write
Telegram syntax: sRN LocMapState
Telegram part
Description
Type
Range/Value
Command type
Read variable by name
String
sRN
Command
String
LocMapState
Example:
Read map state.
Telegram
sRN LocMapState
Response
Telegram syntax: sRA LocMapState
Telegram part
Description
Type
Range/Value
Command type
Response (Read variable by name)
String
sRA
Command
String
LocMapState
State
The map is active.
Bool_1
0 failed: not active
1 success: active
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
16
Subject to change without notice
2.3.4 Command: LocMap
Read the current map name. If this result map name is empty, no map is configured.
Request Write
Telegram syntax: sRN LocMap
Telegram part
Description
Type
Range/Value
Command type
Read variable by name
String
sRN
Command
String
LocMap
Example:
Read map name.
Telegram
sRN LocMap
Response
Telegram syntax: sRA LocMap
Telegram part
Description
Type
Range/Value
Command type
Response (Read variable by name)
String
sRA
Command
String
LocMap
Map name
The name of the map
String
Map_Name
The string has a prefix that
specifies the length of the
string in hexadecimal nota-
tion.
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
17
Subject to change without notice
2.3.5 Command: LocForceUpdate
Forces an update of the localization. Use the manual update cautiously. The vehicle may localize in a
wrong position. Visual inspection is needed. Slight rotatation of the vehicle on the spot or moving the vehi-
cle around the area by up to 5 meters is preferred.
Request Write
Telegram syntax: sMN LocForceUpdate
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
LocForceUpdate
Example:
Telegram
sMN LocForceUpdate
Response
Telegram syntax: sAN LocForceUpdate
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
LocForceUpdate
Result
The localization is updated
Bool_1
0 failed
1 success
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
18
Subject to change without notice
2.3.6 Command: LocSetPose
Initialize the vehicle pose of the localization.
Request Write
Telegram syntax: sMN LocSetPose
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
LocSetPose
Pose
X coordinate
Int_32
[mm]
Y coordinate
Int_32
[mm]
Yaw Angle
Int_32
[-180000,180000] [mdeg]
Uncertainty
Translation Uncertainty [mm]
The rotational uncertainty is fixed.
UInt_16
[1, 50000] [mm]
Example:
Set the pose with the following parameters:
X coordinate: 10.3 m
Y coordinate: -5.2 m
Yaw Angle: 30 deg
Translation Uncertainty: 1 m
Telegram
sMN LocSetPose +10300 -5200 +30000 +1000
Response
Telegram syntax: sAN LocSetPose
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
LocSetPose
Result
The initial pose is set.
Bool_1
0 failed
1 success
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
19
Subject to change without notice
2.3.7 Command: LocSetReflectorsForSupportActive
Enable or disable the use of mapped reflectors for map-based localization robustification.
Request Write
Telegram syntax: sMN LocSetReflectorsForSupportActive
Telegram
part
Description
Type
Range/Value
Command
type
Method by name
String
sMN
Command
String
LocSetReflectorsForSupportAc-
tive
Reflectors
The map-based localization uses mapped
reflectors for robustification.
Bool_1
0 false
1 true
Example:
Set the reflectors for support:
active: true
Telegram
sMN LocSetReflectorsForSupportActive 1
Response
Telegram syntax: sAN LocSetReflectorsForSupportActive
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
LocSetReflectorsForSup-
portActive
Result
The mapped reflectors are active.
Bool_1
0 failed
1 success
2 LiDAR-LOC CoLa telegrams
8024818 /2018-08-26 | SICK TECHNICAL INFORMATION | TELEGRAM LISTING LIDAR-LOC
20
Subject to change without notice
2.3.8 Command: SavePermanent
Save the configuration parameters that are set with CoLa-A telegrams permanently on the localization
controller. They are reloaded on restart.
Request Write
Telegram syntax: sMN SavePermanent
Telegram part
Description
Type
Range/Value
Command type
Method by name
String
sMN
Command
String
SavePermanent
Example:
Save the parameters permanently.
Telegram
sMN SavePermanent
Response
Telegram syntax: sAN SavePermanent
Telegram part
Description
Type
Range/Value
Command type
Response (Method by name)
String
sAN
Command
String
SavePermanent
Result
The parameters have been saved success-
fully.
Bool_1
0 failed
1 success
  • Page 1 1
  • Page 2 2
  • Page 3 3
  • Page 4 4
  • Page 5 5
  • Page 6 6
  • Page 7 7
  • Page 8 8
  • Page 9 9
  • Page 10 10
  • Page 11 11
  • Page 12 12
  • Page 13 13
  • Page 14 14
  • Page 15 15
  • Page 16 16
  • Page 17 17
  • Page 18 18
  • Page 19 19
  • Page 20 20
  • Page 21 21
  • Page 22 22
  • Page 23 23
  • Page 24 24
  • Page 25 25
  • Page 26 26
  • Page 27 27
  • Page 28 28
  • Page 29 29
  • Page 30 30
  • Page 31 31
  • Page 32 32
  • Page 33 33

SICK Telegram listing Operating instructions

Type
Operating instructions

Ask a question and I''ll find the answer in the document

Finding information in a document is now easier with AI