一、编译lsx10包
1.复制lsx10包到工作空间src里
2.运行终端并编译
先联网运行以下命令安装依赖
sudo apt-get install libpcap-dev
然后返回工作空间的根目录并在该目录下打开一个终端,先执行
catkin_make -DCATKIN_WHITELIST_PACKAGES=lslidar_msgs
命令先编译msgs,然后执行
catkin_make -DCATKIN_WHITELIST_PACKAGES=lslidar_driver
编译driver功能包。
二、Ubuntu CH9102 驱动安装
可以通过在终端执行 lsmod|grep ch343 命令确认系统是否已经有该驱动模块。
1.解压驱动压缩包
首先解压“ch343ser_linux(CH9102 的 linux 驱动).zip”到 Ubuntu 系统中。
compilation error on pop os 21.10 with kernal 5.16.15 · Issue #8 · WCHSoftGroup/ch343ser_linux · GitHubI have an esp32 with ch9102x chip so I looked for a driver and found this repo but I'm not sure why I'm getting this compilation error if you could please help me out that'd be great make[1]: Entering directory '/usr/src/linux-headers-5....https://github.com/WCHSoftGroup/ch343ser_linux/issues/8
2.移除 cdc_acm 模块
首先运行 lsmod | grep cdc_acm 检查是否有加载 cdc_acm 模块,此模块一
般为 Linux 自带模块,可用于注册相应 USB 设备驱动等。如果显示已加载到
内核的模块有 cdc_acm,则运行 sudo rmmod cdc_acm 先将其 rmmod,如果未显
示相应模块则无需 rmmod。
3.安装驱动
在 driver 路径下终端输入 make 根据文件夹内的编译规则对.c 文件进行
编译,会相应生成.ko 等文件
make
完成编译后需要将模块载入,具体细节可参照 Makefile,这里不再展开
sudo make load
模块载入后再将文件安装到指定位置:
sudo make install
为了方便后续系统启动会自动加载 ch343.ko,需要在/etc/modules 文件里加
入 ch343 在终端输入:
sudo gedit /etc/modules
新增 ch343 在最后一行后保存并退出重启系统,则系统会默认自动加载
ch343 驱动,重启后在终端输入命令查看是否自动加载:
lsmod | grep ch343
三、使用 ROS 包驱动 N10 雷达
1.将雷达连接至 Ubuntu 系统
至此已经安装完 CH9102 的 Linux 驱动,安装完成后记得重启系统检查设
备能否正常加载,在终端输入命令可查看设备已识别成 ttyCH343USB。
ll /dev | grep ttyCH343USB

2.配置 N10 ROS 驱动包
这里我用 vscode 打开 N10 的 ROS 包,方便查看文件目录结构和文件内容。
我们打开 lsx10/lslidar_driver/launch 文件夹下的 lslidar_serial.launch 进行查看,这
个 launch 文件也是我们之后要运行的启动雷达的文件。
用 lslidar_serial.launch 开启 N10 雷达前需要先确认雷达在 ubuntu 中的串口。
我们可以通过 ll /dev/|grep ttyCH343USB 命令查看。一般情况下串口名为
ttyCH343USB。这里我通过创建串口别名将其串口名重映射为 wheeltec_lidar (这
一步不是必须的)。
注:串口别名的创建可以参考雷达资料包根目录中的“wheeltec_udev.sh”脚
本。本质是通过设备属性来定位设备并为其创建命名规则。
接下来将 lslidar_serial.launch 中对应的 serial_port 的值改为雷达的串口名,
串口名即为我们上图查看到的,这个参数一般不需要修改,一般默认的串口名就
是“/dev/ttyUSB0”。这里我进行了串口别名,所以也可以将其改为 wheeltec_lidar。
3.启动雷达
在配置完 launch 文件后,我们打开一个终端,执行以下命令:
roslaunch lslidar_driver lslidar_serial.launch
成功启动后终端会出现以下字样。
4.雷达数据查看
在 ROS 中雷达数据的展示形式可以是文本形式,也可以是点云图像形式。
当运行 lslidar_serial.launch 启动雷达后,/lslidar_serial_node 节点便会在 ros
中发布一个/scan 话题。
我们可以通过执行
rostopic echo /scan
命令直接进行雷达数据的查看。/scan话题中的消息类型是 LaserScan。
除了直接通过话题查看文本形式的雷达数据,我们也可以通过 rviz 来查看雷达的点云图像。直接在终端输入 rviz 并执行。打开 rviz 后,先将 Fixed Frame 后面对应的值修改为 lslidar_serial.launch 中 frame_id 对应的 value 值。
之后点击 Rviz 左下角的 Add 按键,在弹出的窗口中点击 By topic 选中/scan
话题下的 LaserScan 并点击 OK。
成功添加 LaserScan 后我们便可以在 Rviz 中看到这样的雷达点云图像。
5.雷达数据在 ros 的应用
当/lslidar_serial_node 节点通过话题发布 N10 雷达的数据之后,我们就可以
通过订阅它发出的/scan 话题在不同的功能中获取使用雷达的数据。比如建图、
导航避障、雷达跟随等等。
话题名默认情况下为/scan,但我们也可以通过手动修改 lslidar_serial.launch
中的 scan_topic 的值来修改启动后发布的雷达话题名。