主要内容

日志和可视化三维数据从调速发电机激光雷达传感器

这个例子展示了如何从一个调速发电机激光雷达传感器获取激光雷达数据的设备。激光雷达传感器周围环境的创建一个3 d地图通过扫描激光束和飞行时间测量的距离。激光雷达系统被用于各种各样的应用领域,如3 d制图、测量、工业自动化和自主车辆导航。

一个调速发电机冰球(VLP-16)这个示例中所使用的传感器。这个模型有16个扫描激光束(渠道),360度水平视野FOV, 30度垂直视场,100米的范围内。的velodyneLidar在MATLAB接口支持各种调速发电机激光金宝app雷达模型。选择适合您的特定应用程序的传感器模型咨询仪器制造商提供的规格。

需求

这个例子需要:

  • MATLAB R2019a或更高版本。

  • 激光雷达的工具箱。

  • 激光雷达的工具箱支持包调速发金宝app电机激光雷达传感器。

  • 一个金宝app受支持的调速发电机激光雷达传感器。一个调速发电机冰球(VLP-16)是本例中使用。

设置和配置调速发电机激光雷达传感器

调速发电机冰球(VLP-16)传感器是一个以太网网络连接设备,它提供了一个集成的web服务器配置操作参数,如视场或旋转速度。查阅VLP-16用户手册为所需的网络设置和传感器参数配置。在这个例子中,VLP-16传感器直接连接到一台计算机专用的以太网适配器,和传感器的默认IP地址使用价值(192.168.0.201)。

配置传感器的参数,获得传感器的web界面打开传感器的web服务器URL (http://192.168.0.201/在一个web浏览器。测试传感器网络设置、配置和操作,使用VeloView,制造商提供的应用程序。

连接到调速发电机激光雷达传感器

创建一个velodynelidar对象从VLP-16设备接收数据。MATLAB使用默认的UDP端口2368从设备接收数据的价值。如果你的设备配置为不同的端口广播数据,您需要指定端口号作为一个额外的名称-值对的参数,例如,velodynelidar (“VLP16”、“端口”,2368年)

激光雷达= velodynelidar (“VLP16”);

预览住激光雷达数据

视图从激光雷达传感器获得的实时扫描数据使用预览函数。

预览(激光雷达)暂停(10)closePreview(激光雷达)

获得激光雷达数据

激光雷达传感器连续流的3 d地图环境数据的帧。每一个数据帧代表一个完整的扫描视场。的velodynelidar接口提供了一个连续收购缓冲功能,可以启动使用开始函数。激光雷达数据帧处理存储在一个输入缓冲区。

%开始收购开始(激光雷达)

从激光雷达传感器读取一个数据帧。每个数据帧在MATLAB表示pointCloud数据类型。数据值代表一个距离测量和默认单位是米(m)。

使用MATLAB函数读取数据帧到工作区。您可以使用可选的第二个参数读帧的时间戳。作为一个返回的时间戳datetime数据类型。

(框架、时间戳)=阅读(激光雷达,1)
帧= pointCloud属性:位置:[32×1846×3双)颜色:正常:[][]强度:[32×1846双]数:59072 XLimits: [-90.9482 - 83.9612] YLimits: [-103.9809 - 102.8859] ZLimits: [-3.2730 - 15.8287]
时间戳=datetime24 - 4月- 2019 12:20:15:622

想象获得的数据帧

显示数据帧(点云)使用pcplayer和使用限制的数据作为视图XYZ的限制。

lidarViewer = pcplayer (frame.XLimits frame.YLimits frame.ZLimits);视图(lidarViewer框架)

通过设置配置查看地区的利益pcplayer轴的限制。

lidarViewer.Axes。XLim = 30 [-30];lidarViewer.Axes。YLim = 30 [-30];lidarViewer.Axes。ZLim = -10 [10];

读一个帧序列

读了100帧序列。获得帧数据被表示为一个pointCloud数组,和获得的时间戳datetime数组中。

numFrames = 100;(框架,时间戳)=阅读(激光雷达,numFrames);

停止收购

停止收购,从激光雷达传感器断开。

停止(激光雷达)清晰激光雷达

保存了数据

保存了数据帧MAT-file和时间戳。

保存lidardata.mat时间戳

确定激光雷达的帧速率

您可以使用时间戳数据确定的数量获得激光雷达数据帧每秒的帧速率。激光雷达传感器的帧速率取决于配置的电机转速、视场和其他传感器参数。

fps = 1 /意味着(秒(diff(时间戳)))
fps = 11.6484

查看激光雷达数据的回放

使用现有的pcplayer对象(lidarViewer)重复获得帧动画。它使用一个自定义的helper函数(重播),这是包括在这个例子。

回放(lidarViewer、框架fps)

激光雷达数据处理和分析

以下工具箱提供专门的算法和工具进行处理和分析,激光雷达和三维点云数据:

  • 计算机视觉的工具箱

  • 自动驾驶的工具箱

本地函数

函数回放(lidarViewer、框架fps)%重播重播PCPLAYER图中的数据点云数组% LIDARVIEWER是现有PCPLAYER对象%的框架是一个pointCloud数组% FPS是近似播放帧率%%的示例用法:%激光雷达= velodynelidar (“VLP16”);%开始(激光雷达)%(框架,时间戳)=阅读(激光雷达,100);%停止(激光雷达)%清晰的激光雷达% fps = 1 /意味着(秒(diff(时间戳)));% lidarViewer = pcplayer (40 [-40]、[-40 40] -10 [10]);%回放(lidarViewer、框架fps);dt = 1 /帧;2 = 1:元素个数(帧)视图(lidarViewer帧(ii))暂停(dt)结束结束