Ouster LiDAR 激光雷达 ROS2 驱动启动步骤

ROS 开源组织发布的 ROS 版本到 Noetic 就不再出新了,而是不断地开始推出 ROS 改进版 ROS2了。目前也已经有了令人眼花缭乱得很多个版本 Distro,比如 Foxy,Galactic,Humble,Iron 还有 Rolling。

那我們究竟该用哪个版本呢?我感觉这个还是有讲究的,窃以为用那种已经发布,但仍然在 EOL 时间期限之内的版本。如果有好几个版本,都在 EOL 时间期限内,那该肿么选呢?那当然是选那个到 EOL 期限时间最久的那个版本喽。
用那些还没有到 EOL,但是离 EOL 时间比较近的版本也不是不可以,只是到了 EOL 之后,ROS开源组织对这个 ROS2 Distro 版本停止更新和支持后,有些产品的供应商发布的 ros2 驱动可能有些千奇百怪的依赖,就不能很好很顺畅的在这些已经停更的 ROS2 系统中安装使用了。
如果说,还有些筒子用的 ROS2 Distro 版本是上古的,已经过了该版本 EOL 期限很久的那种(比如Ardent),还需要我给建议么?赶紧更新啊!除非你的 ROS2 系统以后不再用了,连接的产品之后也不再换新了。否则,难道还留着这个老的 ROS2 Distro 版本过年吗?要知道提供产品的那个公司,开发 Ardent ros2 驱动的程序猿/媛、攻城狮都可能都已经换了好几茬了,遇到问题估计都没得人支持了。

说了这么多,我也不藏着掖着了,我推荐使用 ROS2 Distro 的筒子们,首选 Humble,毕竟它到2027年才到 EOL 期限。用这个版本呢,主要是它生命周期长,各个产品供应商支持这个版本的 ros2驱动也会比较容易得到,这样可以免去长期使用过程中一些因为更新换代而导致的杂七杂八的问题。

很不幸,我安装的时候,不小心安装了 Rolling Distro。不过,我只是闹着玩的,树莓配随时准备重新刷机,不是 Humble,Rolling 也就凑合着用呗。
但是,让人感觉运气还不错的是,这次测试的 Ouster 激光雷达,提供支持 Rolling ROS2 Distro 的 驱动。这真是,真的是,天助我也!!!不然,你懂的,重装 ROS2 Distro 又会占用我本该用来刷手机的宝贵时间。

直接过渡,切入正题。不然已经看到这里的筒子们感觉废话这么多,直接找窗口右上角的叉号了。

和 Ouster ROS 驱动一样,如果要找 Ouster 的 ROS2 驱动,也是到 GitHub 的这个站点:

https://github.com/ouster-lidar/ouster-ros

不同的 branch 自己点选项找哦。知道了 ouster-ros2 驱动所在,那么接下来就是安装编译了。
但是,但是,但是(重要的事情说三遍),在安装编译 ouster-ros2 驱动之前,请务必确保所用的电脑中已经安装了ouster-ros2驱动能支持的 ROS2 Distro版本,并且是更新不带 ROS2 相关报错的那种。准备完善了,后续的进展才会顺利。当然,这也不是说,这点准备结束了,就可以直接上马了,当心前边有坑。

首先呢,还要安装一些必要的 ROS2 package:

sudo apt install -y             \
    ros-$ROS_DISTRO-pcl-ros     \
    ros-$ROS_DISTRO-tf2-eigen   \
    ros-$ROS_DISTRO-rviz2

请根据你电脑中已安装的 ROS2 Distro,将上边安装命令中的 $ROS_DISTRO 替换掉。比如,你电脑中已安装的是 Humble,那么就用 humble 替换 $ROS_DISTRO。通常来说,如果 ROS2 安装的是 desktop 桌面版的话,上边的 package 在安装 ROS2 Distro 的时候也安装好了。
接下来需要提前安装一些编译 ouster-ros2 驱动所必须的一些依赖:

sudo apt install -y         \
    build-essential         \
    libeigen3-dev           \
    libjsoncpp-dev          \
    libspdlog-dev           \
    libcurl4-openssl-dev    \
    cmake                   \
    python3-colcon-common-extensions

这些依赖安装妥当之后,就可以安装下载编译 ouster-ros2 驱动了。

如果你用的是 Humble ROS2 Distro,那么就可以通过这两行命令开始下载之旅了。

mkdir -p ros2_ws/src && cd ros2_ws/src
git clone -b ros2 --recurse-submodules https://github.com/ouster-lidar/ouster-ros.git

我用的是 Rolling ROS2 Distro,所用的下载命令稍有不同:

mkdir -p ros2_ws/src && cd ros2_ws/src
git clone -b ros2 --recurse-submodules https://github.com/ouster-lidar/ouster-ros/tree/rolling-devel.git

 鄙人经验,这个时候,网络连接真的很关键,如果你网页登录 GitHub 都困难的话,那么下载 ouster-ros2 驱动绝必是一个很折磨人的过程。这个时候,如果你的网络连接信号满格的话,可以网络上搜索一些大神对电脑作些设置,然后登录 GitHub 的操作。
免责声明:这些网上搜到的操作说明,个人判断哈,鄙人不知道哪个效果好,也不知道参考了哪个会把电脑设置的恢复不过来,带来更大的问题。
如果下载顺利的话,那么在刚才建好的工作空间下的 /src 路径就可以看到 ouster-ros2 驱动的程序包了。

(鄙人电脑中 ouster-ros2 驱动包下载完毕的图片)

接下来回到建好的工作空间,也就是 /src 的上一级路径 ros2_ws,执行下边的命令:

source /opt/ros/<ros-distro>/setup.bash

如果你电脑中安装的是 Humble Distro,请用 humble 替换上边指令中的 <ros-distro>。

接下来就是编译了,通过这个指令来执行编译操作:

colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

这个用 --symlink-install 选项编译驱动的方式在 install 目前创建了一些驱动包中文件的链接。这种方式的优劣,深度熟悉 ROS2 的筒子们自己感受吧,我暂不作评论。

(鄙人电脑中输入编译指令时的图片)

还是那句话,编译需要一些时间,可以喝口水,上个卫生间。等回到电脑前之后,看到编译 100% 通过,那么恭喜你了,你可以接下来运行 ROS2 驱动来启动 Ouster 激光雷达了。

(鄙人电脑中输入编译开始到结束的图片)

在运行 ouster ros2 驱动,启动激光雷达之前,请首先确保激光雷达已经完成了必要的准备工作,包括接线、供电、网络连接可 ping 通。此外,需确保激光雷达能正常运行。根据以往经验,如果激光雷达在报错,那么用 ROS2 驱动启动雷达,肯定也会出现报错。
鄙人建议可以参考我之前发布的《Ouster 激光雷达 Web 浏览器操作一览》,通过浏览器连接雷达,然后再通过 ros2 指令启动雷达,即使在启动雷达期间或者点云已经在 rviz2 可视化之后,都可以通过时不时刷新网页,查看激光雷达的最新状态。

运行指令启动雷达之前,需要在工作空间首先执行这条指令:

source install/setup.bash

然后输入这条指令:

ros2 launch ouster_ros sensor.launch.xml sensor_hostname:=<LiDAR IPv4 地址>

(鄙人电脑中启动雷达时执行指令的图片)

本人启动时,仍然是通过使用指定 xml 格式的 launch 文件的命令进行(没办法 ROS1 遗留的习惯,实际上本人也只熟悉这个)。ouster-ros2 驱动除了提供了 xml 格式的 launch 文件外,也提供了 python 语言的 launch 文件。(听说 ROS2 提供对 python 格式的 launch 文件的支持,可以提供更多的灵活性和便利性。本人还没有感觉到,只是发现又得研究学习新的 launch 文件该怎么改动了,如果需要的话。)

如果没有意外,稍等片刻之后,点云就将呈现在 rviz2 窗口上了。

  • 17
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值