The configuration file is used to identify the cameras and sensors to use on your system. You can have multiple sensors and cameras physically connected to the board, but your system only uses the ones identified in this configuration file.
You can configure as few as one camera or sensor. For testing purposes, you can simulate a camera or sensor by specifying a file. The file can contain sensor information, such as lidar data or compressed/uncompressed video for playback.
begin SENSOR_UNIT_3 type = file_camera name = left address = /accounts/1000/shared/videos/frontviewvideo1.mp4 default_video_format = rgb8888 default_video_resolution = 640, 480 end SENSOR_UNIT_3 begin SENSOR_UNIT_1 type = file_data name = vlp-16 address = /accounts/1000/shared/videos/capture_data.mp4 playback_group = 1 direction = 0,0,0 position = 1000,0,1100 end SENSOR_UNIT_1 begin SENSOR_UNIT_2 type = radar name = front direction = 0,0,0 position = 3760,0,0 address = /dev/usb/io-usb-otg, -1, -1, -1, -1, 0, delphi_esr packet_size = 64 data_format = SENSOR_FORMAT_RADAR_POLAR end SENSOR_UNIT_2
Type | Format for address | |
---|---|---|
usb_camera | driver_path, bus, device, vendorID, deviceID | This format is necessary to identify the camera when you have more
than one USB camera connected to your system.
You can use a wild card (-1) to accept
any USB camera found on the system. If you have only one
USB camera connected, using a wild card value of -1 for all
fields correctly works, however, if you have more than one USB camera, you must specify non-wild card
values for at least the bus/device parameter pair or
vendorID/deviceID. For example, if you have more than one
camera of the same make or model, you must specify the bus and
device because specifying vendorID/deviceID
parameter doesn't uniquely identify the camera.
|
sensor_camera | cameraId, input | This format is necessary to identify a specific sensor camera when you have
more than one camera connected to the system. The format that's used to identify the
sensor camera is as follows:
|
file_camera | /path/to/file/video.mp4 | This format can be a RAW, LZ4, GZ, MP4 (H.264 encoded video), UCV, or MOV (uncompressed video) file. The prerecorded file can be created using APIs from the Camera or Sensor library. |
file_data | /path/to/file/data.lz4 | Prerecorded file containing sensor data, which can be raw binary (RAW). It can be also encoded (lossless compression) as a GZIP (GZ) or LZ4 file. |
imu |
driver_path, bus, device, vendorID, deviceID, model
or driver_path, model |
You can use a wild card (-1) to accept
any IMU found on the system. If you have only one
IMU connected, using a wild card value of -1 for all
fields correctly works, however, if you
have more than one IMU connected, you must specify non-wild card
values for at least the vendorID/deviceID
parameter pair or vendorID/deviceID.
For example, if you have more than one sensor of the same make or model,
you must specify the bus and device
because specifying vendorID/deviceID
parameter doesn't uniquely identify the sensor.
|
ip_camera | ip_address, type_of_camera, [serial_num] | The ip_address segment represents the IP address of the camera. If you don't know the IP address, use 0.0.0.0 to use auto-discovery. When you use auto-discovery, the optional serial_num segment isn't required. When you use a valid IP address, you don't need to specify a value in the serial_num segment. The type_of_camera segment specifies the camera type, which can be onvif for an ONVIF-compliant camera or gige_vision for a GigE vision-compliant camera. The serial_num is an optional segment. It represents the serial number of the camera. When you use auto-discovery (i.e., you had configured the ip_address segment to 0.0.0.0), it matches the specified serial number. If this segment is left blank when using auto-discovery, the first camera that's found on the system is used, which is typical when you have one camera connected to your system. |
lidar |
ip_address, ip_based_lidar_model
or serial_driver_path, device_address, serial_based_lidar_model |
When you want to configure an IP-based lidar,
the ip_address segment must be a valid IP address
because it broadcasts the data over UDP. For the ip_based_lidar_model segment,
you can use the string velodyne_vlp-16 or velodyne_vlp-16-high-res to the IP-based lidar from Velodyne. Ensure that you use the string to match the model that you have connected to your target.
When you want to configure serial-based lidar, the serial_driver_path segment is specified as a /dev/serX (where X is the prt and depends on your configuration). For the device_address segment, specify the device address assigned to the lidar. For the lidar_model segment, you can use leddartech_vu8 to specify a serial-based lidar from Leddartech. |
radar | driver_path, bus, device, vendorID, deviceID, channelID, model | This format is necessary to identify
the radar system when you have more than
one radar sensor to your system. You can
use a wild card (-1) to
accept any radar system connected to the
system. If you have only one radar sensor connected,
using a wild card value of -1 for all
fields correctly works, however, if you have more than one radar
sensor, you must specify non-wild card values for
at least the bus/device
parameter pair or deviceID. For example,
if you have more than one
radar sensor of the same make/model, you must specify the bus and
device because specifying the deviceID
parameter doesn't uniquely identify the radar.
|
gps |
driver_path, bus, device, vendorID, deviceID, model
or driver_path, model |
You can use a wild card (-1) to accept
any GPS system found on the system. If you have only one
GPS system connected, using a wild card value of -1
for all fields correctly works, however, if you
have more than one GPS unit connected, you must specify non-wild card
values for at least the
vendorID/deviceID
parameter pair or
vendorID/deviceID. For example, if you have more than one
sensor of the same make or model, you must specify the bus and
device because specifying vendorID/deviceID
parameter doesn't uniquely identify the sensor.
|
external_camera | driver_path, input |
|
external_sensor | driver_path | The driver_path specifies the path of the user-provided library that's used for external sensors on the system. This library must provide implementation according to the functions defined in external_sensor_api.h. See Using external sensor drivers in the Sensor Developer's Guide. |
Type | Format |
---|---|
lidar |
|
radar |
|
gps, imu |
|
For a XSens MTi 100-series GPS, these are the values you can use. For more information, see the XSesns MTi 100-series GPS documentation on the XSens website (https://www.xsens.com/):
For Velodyne lidar sensors, lidar_fov specifies the horizontal rotation (i.e., the difference between FOV End and FOV Start) that you configured by using the Velodyne webserver user interface. Valid rotations are in the range [1..360].
For Leddartech lidar sensors, lidar_fov specifies the horizontal rotation that's supported by the sensor. For example, Leddartech's Vu8 is available in different configurations that can support 20, 48, or 100.
... reference_clock = external reference_clock_library = /usr/lib/libexternal_clock_example.so ...
You can configure each sensor to use a different external clock library, or multiple sensors can share one external clock library. You may provide multiple external clock libraries.
See Using external clocks in the Sensor Developer's Guide.