RoboSense RS-Ruby User manual

RS-Ruby Users’ Manual
1

RS-Ruby Users’ Manual
Revision History
Revision Number
Description
Date
Edited by
1.0
Initial release
2019-11-20
PD

RS-Ruby Users’ Manual
Terminology
MSOP
Main data Stream Output Protocol
FOV
Field of View
Azimuth
Horizontal Angle of LiDAR
Timestamp
Time Point of Encapsulation of a UDP Packet
Header
The Header of a UDP Packet
Tail
The Tail of a UDP Packet
Thermolysis
Loss of Heat from the Object

RS-Ruby Users’ Manual
TABLE OF CONTENTS
1 Safety Notice..................................................................................................................................1
2 Introduction.....................................................................................................................................2
3 Product Specifications..................................................................................................................3
4 Interface..........................................................................................................................................4
4.1 Power supply......................................................................................................................4
4.2 Data Output interface of LiDAR.......................................................................................4
4.3 Interface Box...................................................................................................................... 5
4.4 Connection of Interface Box............................................................................................ 6
5 Communication Protocol..............................................................................................................7
5.1 MSOP.................................................................................................................................. 7
5.1.1 Header......................................................................................................................8
5.1.2 Data Field................................................................................................................ 9
5.1.3 Tail...........................................................................................................................10
5.1.4 MSOP Data Package.......................................................................................... 10
6 GPS Synchronization................................................................................................................. 12
6.1 Principle of GPS synchronization................................................................................. 12
6.2 GPS Usage.......................................................................................................................12
7 Key Specifications...................................................................................................................... 13
7.1 Return Mode.....................................................................................................................13
7.2 Phase Lock.......................................................................................................................13
8 Point Cloud...................................................................................................................................14
8.1 Coordinating Mapping.................................................................................................... 14
8.2 Laser Channel in spatial Distribution........................................................................... 15
9 Reflectivity....................................................................................................................................19
10 Troubleshooting........................................................................................................................ 20
Appendix A – the Format of all Register.....................................................................................22
A.1 UTC_TIME....................................................................................................................... 22
Appendix B RSView.......................................................................................................................24
B.1 Software Features...........................................................................................................24
B.2 Installation of RSView.................................................................................................... 24
B.3 Network Setup................................................................................................................. 24
B.4 Visualization of point cloud............................................................................................25
B.5 Save Streaming Sensor Data into PCAP File............................................................26
B.6 Replay Recorded Sensor Data from PCAP Files......................................................27
Appendix C RS-Ruby ROS Package..........................................................................................30
C.1 Software Installation.......................................................................................................30
C.2 Compile RS-Ruby ROS Package................................................................................ 30
C.3 Configure PC IP address...............................................................................................30
C.4 Display of the real-time data......................................................................................... 30
C.5 Offline Display the recorded PCAP File......................................................................31
Appendix D Dimension..................................................................................................................33
Appendix E Suggestion of Mechanical LiDAR Mount..............................................................34

RS-Ruby Users’ Manual
Appendix F Clean of LiDAR......................................................................................................... 35
F.1 Attention............................................................................................................................ 35
F.2 Required Materials.......................................................................................................... 35
F.3 Clean Method................................................................................................................... 35

RS-Ruby Users’ Manual
1
Congratulations on your purchase of a RS-Ruby Real-Time 3D LiDAR Sensor. Please
read carefully before operating the product. Wish you have a pleasurable product
experience with RS-Ruby.
1 Safety Notice
In order to reduce the risk of electric shock and to avoid violating the warranty, do not
open sensor housing.
Laser safety-The laser safety complies with IEC60825-1:2014.
Read Instructions-All safety and operating instructions should be read before
operating the product.
Follow the Instructions-All operating and use instructions should be followed.
Retain Instructions-The safety and operating instructions should be retained for
future reference.
Heed Warnings-All warnings on the product and in the operating instructions should
be adhered to.
Maintenance - The user should not attempt to maintain the product beyond what is
described in the operating instructions. All other Maintenance should be referred to
RoboSense.

RS-Ruby Users’ Manual
2
2 Introduction
RS-Ruby, the 128-beam LiDAR developed by RoboSense, is the world leading
Multi-Beam LiDAR that is particular utilized in and perception of environment for
autonomous driving.
RS-Ruby is realized by solid-state hybrid LiDAR. The technical details are listed below:
Measurement rang 200 meters
Vertical angle resolution up to 0.1°
Accuracy ± 5 centimeter
Data rate up to 2,304,000 points/second
Horizontal field of view (FOV) of 360°
Vertical field of view (FOV) of -25°~15°
128 emitters in RS-Ruby can supply high-frequency laser impulse to scan environment
around LiDAR by rapidly spinning optical module. Advanced digital signal processing and
ranging algorithms calculate point cloud data and reflectivity of objects to enable the
machine to “see” the world and to provide reliable data for localization, navigation and
obstacle perception.
Figure 1. Representation of RS-Ruby Imaging.
The operating Instructions of LiDAR:
Connecting the device of RS-Ruby;
Parsing the data packets, in order to capturing the values of azimuth, measuring
distance and calibrated reflectivity;
Calculate X, Y, Z coordinates from reported azimuth, measured distance, and vertical
angle;
Storing the data of point cloud according to demand;
Checking the status of set-up information of device;
Resetting the status of network configuration, timing and rotation speed according to
demand.

RS-Ruby Users’ Manual
3
3 Product Specifications1
Table 1. Product Parameters.
Sensor
TOF measuring distance, including the reflectivity
128 channels
Range: from 3m to 230m (160m@10%)2
Accuracy: upto ±3cm (typical value)3
FOV(vertical): -25°~+15°
Angle resolution(vertical): at least 0.1°
FOV (horizontal): 360°
Angle resolution (horizontal/ azimuth): 0.2° (10 Hz)/0.4°
(20 Hz)
Rotation speed: 600/1200 rpm (corresponding to 10/20 Hz)
Laser
Class 1
Wave length: 905nm
Full angle of beam divergence:
horizontal 1.5 mrad, vertical 3.6 mrad
Output
Data rate: ~2.3 million points/second
1000Base-T1 Ethernet
Communication protocol: UDP
The Information that is included in Data Segment:
Distance
Rotation angle/Azimuth
Calibrated reflectivity
Synchronized timestamp (Timer resolution 1 μs)
Mechanical/
Electrical/
Operational
Power consumption: 45 W(typical)4
Working voltage: 9-32 VDC (19V is recommended)
Weight: 3.75kg (without cable)
Dimensions: Diameter 166mm × Height 148.5mm
Ingress Protection Rating: IP67
Operation temperature: -40℃~+60℃5
Storage temperature: -40℃~+85℃
1The following data is only for mass-produced products. Any samples, testing machines and
other non-mass-produced versions may not be referred to this specification. If you have any
questions, please contact RoboSense sales.
2The measurement target of rang 160 m is a 10% NIST Diffuse Reflectance Calibration
Targets, the test performance is depending on circumstance factors, not only temperature,
range and reflectivity but also including other uncontrollable factors.
3The measurement target of accuracy is a 50% NIST Diffuse Reflectance Calibration Targets,
the test performance is depending on circumstance factors, not only temperature, range and
reflectivity but also including other uncontrollable factors.
4The test performance of power consumption is depending on circumstance factors, not only
temperature, range and reflectivity but also including other uncontrollable factors.
5Device operating temperature is depending on circumstance, including but not limited to
ambient lighting, air flow and pressure etc.

RS-Ruby Users’ Manual
4
4 Interface
4.1 Power supply
The supply voltage should remain in the range of 9~32 VDC with utilization of
Interface-Box. The recommend supply voltage is 19 VDC. The power consumption is
about 45 W.
4.2 Data Output interface of LiDAR
The data output access of RS-Ruby is physically protected by an aviation terminal
connector. From the LiDAR to the aviation connector the cable length is 1 meter. The pins
of the aviation terminal connector are defined as follow:
PIN
Wire Color
Function
1
Black/Brown
GROUND
2
Black
Gigabit network differential signal
3
Brown
Gigabit network differential signal
4
Black/Green
GROUND
5
Red
Gigabit network differential signal
6
Orange
Gigabit network differential signal
7
White/Orange
GROUND
8
Yellow
Gigabit network differential signal
9
Green
Gigabit network differential signal
10
White/Purple
GROUND
11
Blue
Gigabit network differential signal
12
Purple
Gigabit network differential signal
13
Yellow/Brown
GROUND
14
Black/Red
GROUND
15
Black/Orange
PWR
16
Black/Yellow
PWR
17
White/Black
PWR
18
White/Brown
PWR
19
White/Red
PWR
20
White/Yellow
PWR
21
White/Green
Reserved serial signal
22
White/Blue
Reserved serial signal
23
Yellow/Green
GPS_PULSE

RS-Ruby Users’ Manual
5
24
Yellow/Gray
GPS_REC
25
Yellow/Blue
Reserved signal
26
Yellow/Purple
GROUND
Figure 2. Aviation Connector PIN Number
4.3 Interface Box
In order to connect the RS-Ruby conveniently, there is an interface box provided.
There are accesses for power supply, Ethernet and GPS on Interface Box. Meanwhile
there are also indicator LEDs for checking the status of power supply.
For those accesses, an SH1.0-6P female connector is the interface for GPS signal input.
Another interface is a DC 5.5~2.1 connector for power input. The last one is a RJ45
Ethernet connector for RS-Ruby data transport.
PIN No.
function
1
GPS_PULSE
2
+5V
3
GND
4
GPS_REC
5
GND
6
NC
Figure 3. Interface Definition of Interface Box.
Note: When RS-Ruby connects its grounding system with an external system, the external
power supply system should share the same grounding system with that of the GPS.
When the power input is in order, the red LED which indicates the power input status will
be lighted. Meanwhile the green LED which indicates the power output status will be
lighted, when the power output is in order. While red LED is bright and green LED is dark,
Interface Box is in Protection status. While red and green LEDs are all dark, please check
whether the power supply is out of order or damaged. If it is intact, that could prove that
the Interface Box is damaged. Please send the damaged Interface Box back to

RS-Ruby Users’ Manual
6
RoboSense Service.
GPS interface definition: GPS REC stands for GPS input, GPS PULSE stands for GPS
PPS input.
Interface of power supply is standard DC 5.5-2.1 connector.
4.4 Connection of Interface Box
Figure 4. Diagram of Interface Box connection.

RS-Ruby Users’ Manual
7
5 Communication Protocol
RS-Ruby adopts IP/UDP protocol and communicates with computer through gigabit
Ethernet. In this User Guide the length of UDP packet is set up to 1248 byte. The IP
address and port number of RS-Ruby is set in the factory as shown in the Table 2, but can
be changed by user as needed.
Table 2. The IP Address and Port Number Set in the Factory.
IP Address
MSOP Port No.
RS-Ruby
192.168.1.200
6699
PC
192.168.1.102
The default MAC Address of each RS-Ruby is already set up in the factory with
uniqueness. In order to establishing the communication between a RS-Ruby and a
computer, the IP Address of the computer should be set at the same network segment.
For instance, IP Address is 192.168.1.X (X can be taken by a value from 1~254), subnet
mask: 255.255.255.0. If the internet setting of the sensor is unknown, please set the
subnet mask as 0.0.0.0, connect the sensor to the computer, and capture UDP packet to
get the information of IP and Port through Wireshark.
The output message from RS-Ruby is called MSOP. The Information of MSOP is shown
as follow:
Table 3. Overview of the MSOP.
Protocol
Abbreviation
Function
Type
Size
Interval
Main data Stream
Output Protocol
MSOP
Scan Data Output
UDP
1248 byte
~167 μs
Note: in the following chapters only the valid payload (1248 byte) will be discussed.
5.1 MSOP
I/O type: Device outputs data and computer parses data.
Default port number is 6699.
MSOP packet outputs data information of the 3D environment. Each MSOP packet from
sensor is 1248-byte length and consists of reported distance, calibrated Reflectivity values,
azimuth values and a timestamp in UDP header.
Each MSOP packet payload is 1248-byte length and consists of an 80-byte header and a
1164-byte data field containing 3 blocks of 388-byte data records and a last 4-byte tail.
The basic data structure of a MSOP packet for single return is as shown in Figure 5:

RS-Ruby Users’ Manual
8
MSOP Packet(1248 byte)
4byte
80 byte
data packet
3*388byte= 1164byte
80 byte
(11~20
byte is
timestamp)
Header
4byte
(parity)
Tail
Figure 5. MSOP Packet of RS-Ruby in Single Return Mode.
5.1.1 Header
The 80-byte Header is used to mark the start position of data, return mode setting, sensor
temperature and timestamp. The detail of the header is as shown in Table 4.
Table 4. Format of Header.
Header(80bytes)
Header
Resv
Wave_Mode
Temp
Time
Resv
4bytes
3bytes
1bytes
2bytes
10bytes
60bytes
header: this can be used for packets identification: 0x55, 0xAA, 0x05, 0x5A (Default
Value)
wave_mode: Big-Endian mode, lower 4 bit is used to representing the return mode of the
LiDAR, for instance:
00000011 stands for that first and second return mode is chosen.
00000001 stands for that first return mode is chosen.
00000010 stands for that second return mode is chosen.
temp: the temperature of device;
time: it is used to save the timestamp. In the defined timestamp the system time is
recorded, resolution 1us, the definition of time can be found in the appendix A.9 and the
table 8 of this chapter.
resv: those bytes are reserved.
Azimuth 3
l data 1
channel data 1
0xFE
Data block 2
Ret_id
channel data 0
channel data ...
channel data 127
Azimuth 1
l data 1
channel data 1
0xFE
Data block 0
Ret_id
channel data 0
channel data ...
channel data 127
Azimuth 2
l data 1
channel data 1
0xFE
Data block 1
Ret_id
channel data 0
channel data ...
channel data 127

RS-Ruby Users’ Manual
9
5.1.2 Data Field
The value of measurement result is saved in the data field, in total 1164 byte. It consists of
3 data blocks, the length of each data block is 388 bytes. Each block stands for a
complete round of distance measuring for all 128 channel. The definition is shown as
follow:
Table 5. Data Block Definition
Data block n(388bytes)
Symbol
Ret_id
Azimuth
Channel0_data
...
Channel127_data
1bytes
1bytes
2bytes
3byte
...
3bytes
Symbol: identification bit, default value: 0xfe;
Ret_id: it is used to represent which echo measurement is for this block;
Azimuth: the information of horizontal rotation angle. This angle information will be used
to calculate the 3D coordinate with all following 128 channel data in the same block. In
following section, it will be completely explained.
Channel data: the length of each channel data is 3 bytes, each block includes 128
channel data (further details could be seen in Table 6). (The relationship between the
number of channel and vertical angle can be found in chapter 8.)
5.1.2.1 Calculation of the Azimuth
In each data block the value of azimuth is measured once and this azimuth corresponds to
the first position of the first laser emission (the first channel data in this block). The rotation
angle is recorded by angle encoder. The zero position of angle encoder is the zero degree
of azimuth. The resolution of resolution angle is 0.01°.
For instance, in figure 6, the azimuth value is calculated as follow:
Get azimuth values (HEX): 0x59, 0x39
Combine to a 16bit, unsigned integer (HEX): 0x 5939
Convert the value to decimal (DEC): 22841
Division by 100 (DEC): 228.41°
Hence, the angle value in this block is 228.41°.
Note: the 0°axis of azimuth is co-axis and same positive direction with the Y axis in Figure
8.

RS-Ruby Users’ Manual
10
5.1.2.2 Channel Data
Channel data is 3 bytes. The higher 2 bytes of them are used to save the distance
information. The lower one byte stands for reflectivity.
Table 6. The Format of Channel Data.
Channel data n(3 byte)
Distance(2 byte)
Reflectivity(1 byte)
Distance1[15:8]
Distance2[7:0]
Reflectivity [7:0]
Distance is 2 bytes, resolution: 0.5 cm.
For instance, in figure 6, the explanation of Channel data is as follow:
Get the higher 2 bytes(HEX): 0x08 (Distance 1), 0x4b (Distance 2).
Combine to a 16-bit unsigned integer (HEX):0x084b
Convert the value to decimal (DEC):2123
According to the resolution 0.5 cm, change to meter: 2123 * 0.005 = 10.615 m
Hence, the distance between sensor and measurement object is 10.615 m.
Reflectivity is a relative value, please find the concrete definition in “chapter 9 Reflectivity”,
Reflectivity could show energy of the light return from measuring object in the real
circumstance. Through analytic of reflectivity, the object of different materials can be
distinguished.
5.1.3 Tail
The 4-byte Tail is reserved to identification.
5.1.4 MSOP Data Package
The following figure shows the format of MSOP data packet and relevant parsing
processes.

RS-Ruby Users’ Manual
11
Figure 6. MSOP Packet of RS-Ruby in Single Return Mode.
Data block 0
Channel 1 data calculation
distance byte: 0x08, 0x4b; Atten byte :0x08
combine the byte: 0x084b; get atten :0x08
get distance: 0x084b; combine the byte :0x08
convert to decimal :2123; convert to decimal :8
multiply by :0.5cm; result :8
result :10.615m;
Header:0x55,0xaa,0x05,0x5a
Data block 1
Azimuth 2 calculation
second azimuth :0x5939
get azimuth :0x59 & 0x39
combine the byte :0x5939
convert to decimal :22841
divide by :100
result :228.41°

RS-Ruby Users’ Manual
12
6 GPS Synchronization
RS-Ruby supports external GPS receiver connections. With GPS connections, we can
synchronize the RS-Ruby system time to GPS global time.
6.1 Principle of GPS synchronization
The GPS receiver keeps generating synchronization Pulse Per Second (PPS) signal and
GPRMC message and send them to the sensor. The pulse width of the PPS should
between 20ms to 200ms, and the GPRMC message should be received within 500ms
after the PPS signal is generated.
6.2 GPS Usage
GPS_REC receives the signal from GPS module with Standard serial RS232
communication protocol.
GPS PULSE receives the PPS from the GPS module and requests voltage between 3.0 V
~ 15.0 V.
PIN +5V of GPS interface can supply power to GPS module. (If GPS module is only
allowed to use +3V as power supply, please don’t use this +5V PIN on Interface Box.
Please exchange the +5V to +3V)
PIN GND is connected to the GPS receives ground wire.
The GPS module should set to 9600bps baud rate, 8-bit data bit, no parity and 1 stop bit.
RS-LiDAR-Ruby only read the GPRMC message from GPS module., the GPSMRC
message format is shown as below:
$GPRMC, <1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh
<1>UTC time
<2>validity-A-ok, V-invalid
<3>Latitude
<4>North/South
<5>Longitude
<6>East/West
<7>Ground Speed
<8>True course
<9>UTC date
<10>Variation
<11>East/West
<12>Mode(A/D/E/N=)
*hh checksum from $ to*
The different GPS module could send out different GPRMC message length, the RS-Ruby
could be compatible with the most GPS modules on the market. Please contact
RoboSense of technical support when it is incompatible.

RS-Ruby Users’ Manual
13
7 Key Specifications
7.1 Return Mode
There are two return modes on RS-Ruby: strongest return and last return mode. Because
of laser divergence, after any laser emission the sensor can receive always more than
one return signals. If return mode is set up to the strongest return mode, only the
strongest return signal can be seen as useful signal in distance calculating. Similarly, if the
setting is the last return mode, only the last return signal can be used to calculate
distance.
7.2 Phase Lock
The Phase Lock feature can be used to make the sensor rotating to the specific position
when the PPS signal is triggered. To operate correctly, the PPS signal must be present
and locked stable.
In figure 7 different Phase Lock is shown as red arrow. When PPS is triggered, sensor can
rotate to the 0°, 135°or 270°.
Figure 7. Different phase lock angles 0°/135°/270°.
In RSVIEW Client “Tools > RS-LiDAR Information”, a parameter “Phase Lock” can be
set up. Here, Phase can be set in the input range of 0°~ 359°.

RS-Ruby Users’ Manual
14
8 Point Cloud
8.1 Coordinating Mapping
In data packet including the measured azimuth and distance, in order to calculating the
point cloud, the coordinate in polar coordinate system should be transferred to the 3D
XYZ coordinate in Cartesian Coordinate System, as shown in figure 8. The function of
how to transfer the information is as shown below:
Here is the reported distance,
is the vertical angle/elevation of the laser (which is
fixed and is given by the Laser ID), and
is the horizontal angle/azimuth reported at the
beginning of every other firing sequence.
is the angle offset of the azimuth. x, y, z
values are the projection of the polar coordinates on the XYZ Cartesian Coordinate
System.
The value of and defined in Table 7.
Figure 8. Coordinate system mapping between polar system and XYZ system.
Note 1: In the RS-Ruby ROS package, the coordinate system must be transferred to the ROS
right-hand Coordinate system.
The ROS-X axis is co-axis with the Y-axis and with same direction as Figure 8.
The ROS-Y axis is co-axis with the X-axis but the positive direction is reverse as Figure 8.
The Z axis is same before and after transformation.
Note 2: The origin of the LiDAR coordinate is defined at the center of the LiDAR structure, with
68 mm high to the bottom of the LiDAR.

RS-Ruby Users’ Manual
15
8.2 Laser Channel in spatial Distribution
128 lasers in RS-Ruby are defined as 128 channels. The vertical angle of those lasers
distribute in the range of -25°~+15°. The distribution of the angles is non-uniform.
According to table 7 the corresponding channel and vertical angle are as follow.
Table 7. Serial number of laser channel and corresponding horizontal angles.
Channel No.
Vertical Angle
Horizontal Offset Angle
1
-13.565
5.95
2
-1.09
4.25
3
-4.39
2.55
4
1.91
0.85
5
-6.65
5.95
6
-0.29
4.25
7
-3.59
2.55
8
2.71
0.85
9
-5.79
5.95
10
0.51
4.25
11
-2.79
2.55
12
3.51
0.85
13
-4.99
5.95
14
1.31
4.25
15
-1.99
2.55
16
5.06
0.85
17
-4.19
5.95
18
2.11
4.25
19
-19.582
2.55
20
-1.29
0.85
21
-3.39
5.95
22
2.91
4.25
23
-7.15
2.55
24
-0.49
0.85
25
-2.59
5.95
26
3.71
4.25
27
-5.99
2.55
28
0.31
0.85
29
-1.79
5.95
30
5.96
4.25
31
-5.19
2.55
32
1.11
0.85
Table of contents
Other RoboSense Accessories manuals