![](https://i-blog.csdnimg.cn/blog_migrate/1bcaffc34749d738cec540f1b1a36f90.png)
简介
SICK LMS400是德国SICK公司生产的单线型激光传感器,主要应用于室内场景的测量,打出的激光是650nm可见红光,其主要参数如下:
- 性能:扫描频率300Hz-500Hz、角度分辨率0.1°-1.0°可选、工作区域0.7m-3.0m、水平测量角度70°、测量精度±4mm;
- 接口:Ethernet(TCP/IP协议)、RS232串口;
- 电子参数:供电电压24VDC、功耗25W、外壳防护等级IP65;
- 机械参数:外壳材质压铸铝、尺寸(长 x 宽 x 高)179 mm x 107 mm x 130 mm;
- 温度:工作环境温度0°C…+40°C,储存温度–20°C…+70°C;
- 最小可检测物体:30 mm x 30 mm;
LMS400扫描的结果是二维平面点云,其工作区域如下图所示,需要注意的是,当激光如下Fig.3图放置时,其坐标系是Y轴朝前为正、X朝右为正,而且扫描的点云结果是按照X坐标由大到小(如图从右往左)进行存储的,即下述代码中的lines.ranges.front()代表最右边的有效点,lines.ranges.back()代表最左边的有效点,千万不要搞反。
![](https://i-blog.csdnimg.cn/blog_migrate/6ce8e953d119b155943b20717488519d.png)
工作区域图表:
代码
环境:Win10+VS2015+PCL1.8
// LMS400连续扫描
#include<iostream>
#include<stdio.h>
#include<fstream>
//pcl
#include <pcl/point_types.h>
#include <pcl/visualization/cloud_viewer.h>
#include <pcl/io/io.h>
#include <pcl/io/pcd_io.h>
#include <conio.h>
#include "LMS400.h"
#define KEYDOWN( vk ) ( 0x8000 & ::GetAsyncKeyState( vk ) )
using namespace std;
int main(int argc, char** argv)
{
WSADATA wsaData;
WSAStartup