MDC300上接入激光雷达大致分为两种:
- 使用激光雷达抽象
- 使用华为原生激光雷达抽象(支持禾赛40p)
- 模拟激光雷达抽象
- 使用透传模式
使用激光雷达抽象
使用华为原生激光雷达抽象
如果是使用华为原生的激光雷达抽象层(目前仅支持对禾赛pandar40p的数据抽象),则需要配置激光雷达IP地址和端口。分别配置lidar_2368.json、lidar_2369.json、lidar_2370.json、lidar_2371.json和lidar_2372.json,这代表5路激光雷达。具体的配置内容可以参考已有的配置文件。
激光雷达抽象层示例(禾赛pandar40P接入激光雷达通用端口1)
- 禾赛pandar40P激光雷达需要配置网络IP和端口:192.168.12.25:2369
- 配置lidar_2369.json(基本不用改):192.168.12.25:2369
- InstanceID:14
- 启动Mviz可视化:frame id = lidar_rear_node;topic = /lidar_side_rear
注意事项
- 激光雷达抽象服务不能与激光雷达数据透传服务同时使用。
- 对于抽象层脚本lidar_a_start.sh,用于接收激光雷达的原始数据,转为MDC能识别的PointCloud2的格式,通过DDS(instanceid = 13-17),发给需要订阅的AP应用。
- 对于Mviz的启动脚本lidar_mviz_start.sh,DDS接收激光雷达抽象层的点云数据,并发给MDC Mviz进行显示
模拟激光雷达抽象
模拟激光雷达抽象则需要使用MMC配置arxml文件,采用DDS通信,将接收到的激光雷达数据转成lidar_detect检测框架可接收的数据类型。
采用透传模式
透传模式其实与模拟激光雷达抽象类似,也需要配置DDS通信。只是透传采用的是真实的激光雷达,需要使用套接字接收激光雷达的原始数据。
在不使用激光雷达抽象层的情况下,需要配置激光雷达透传通路。
- 使用sshuser帐户通过SSH工具登录Host。
- 执行命令su切换到mdc帐户。
- 根据业务需要修改分发服务的配置文件“sensor_lidar_data_dispense_cfg.json”。
配置文件路径为“/opt/platform/mdc_platform/manual_service/lidar_data_dispense/conf”。具体的配置内容可以参考已有的配置文件,就是要配置监听的IP地址和端口。
Mini侧路径是“/opt/platform/mdc_platform/config/mini/lidar_data_dispense/conf”。
激光雷达透传示例(禾赛pandar40P接入激光雷达通用端口1)
4. 禾赛pandar40P激光雷达需要配置网络IP和端口:192.168.12.25:2369
5. 配置分发文件sensor_lidar_data_dispense_cfg.json(基本不更改):SERVER端为0.0.0.0:2369
CLIENT端(Host):192.168.1.6:5555。分发文件的目的是将激光雷达的数据分发到MDC上面来。
6. AP应用层监听的IP和端口:192.168.1.6:5555
注意事项
- 透传服务只能启动一次,再次启动将会失败
- AP应用层不能在线程中再启线程,否则编译会引起段错误
启动方法
使用透传模式:
在“/opt/platform/mdc_platform/script”路径下,执行脚本lidar_data_dispense.sh启用分发服务。
使用传感器数据抽象模式:
- 通过SSH工具登录MDC的Host/Mini环境,使用sshuser用户登录并切换至mdc用户。
- 执行命令ps -ef | grep lidar,确认激光雷达进程是否启动,避免重复启动,造成功能异常。
- 执行如下命令启动激光雷达进程。
/opt/platform/mdc_platform/script/lidar_a_start.sh - 重新执行2,确认激光雷达的相关进程是否启动成功。
2022.01.10
软件园