有必要使用工业级 Raspberry Pi 运行激光雷达。激光雷达通过激光束测量物体的距离,可用于自动驾驶汽车、清洁机器人、测量等。激光束的聚焦温度为 360°C,可探测障碍物并绘制地图。
传感器 “这个词可能更容易想象。从广义上讲,它是遥感的一种形式。顺便说一下,雷达是一种无线电波。
一时间,摄像机镜头似乎更好,但对于视频来说,有太多信息需要仔细研究;而对于激光雷达来说,在了解细节之前,您就可以立即发现 “那里有什么东西”。
更重要的是,它的优势在于能够根据光线击中物体并返回的时间(或频率)来测量距离。使用视频很难测量距离。
该系统可通过绘制由激光雷达测量的空间点集合图来进行 3D 扫描。
我们现在已经进入了一个可以考虑将激光雷达和人工智能结合起来使用的时代。

您可以在 Raspberry Pi 上试用。
我认为在工业级 Raspberry Pi 上处理激光雷达是合理的。如果是小规模或局部工作,只需要一台 Raspberry Pi 就够了。
即使用于工业用途,Raspberry Pi 也比笔记本电脑更小更轻。每个接口都具备基本功能,并可在一定程度上相互配合使用。
这是因为基本操作系统可以是 Linux,包括通用的 Ubuntu,而且还可以使用用于绘制测量数据的开源软件。
自 Pi 5/CM5 推出以来,作为机器的处理速度比以往任何时候都更加实用。
测量激光雷达的设备价格差异很大,但可以用工业用 Raspberry Pi 低成本试用廉价的设备。
这次,我们安装了 Ubuntu 24.04 作为操作系统,这样它就可以处理机器人领域著名的中间件 ROS 2 (Jazzy Jalisco)。
ROS 2 是 Ubuntu 的二进制软件包。
ROS 2 = 机器人操作系统 V2
Raspberry Pi 计算模块(以下简称 CM)事先使用 rpiboot 将操作系统写入 eMMC。
我们将向你展示如何使用 rpiboot 安装操作系统,甚至如何安装 ROS2。
一旦将激光雷达设备连接到该环境,就可以立即获得测绘数据。
安装环境
在本例中,我们将使用 Ubuntu 24.04LTS 桌面版。即使是同样的 Ubuntu,也有可能因为缺少模块和驱动程序而无法成功安装服务器版或核心版。由于存在一些障碍,比如更改设备树,为了安全起见,我使用了桌面版。
安装到 eMMC 区域,而不是 microSD 卡。

- PL-R4″,配备 ComputeModule 4 eMMC/32GB、RAM/8GB
- USB Type-C 电缆
- Ubuntu 24.04.2LTS
- ROS 2 Jazzy Jalisco
由于这是 Ubuntu 桌面环境,而不是通常的 Raspberry Pi 操作系统,4GB 内存不足以让它运行自如。我们提供 8GB 内存的机型。
2025 年 5 月 23 日,ROS 2 刚刚发布了新的 “千鸟格 “版本,但这次我们选择了稳定的 “爵士格 “版本。这次,我们选择了更稳定的 “爵士 “版本。
如何在 eMMC 上安装

要写入 eMMC,请使用 rpiboot 并用 USB Type-C 电缆连接主机。
与市场上的 CM 系列产品不同,”PL-R4 “可以通过 DIP 开关在可写和不可写之间轻松切换。
_ 也没有连接 microHDMI 线缆和电源线,仅用一根 USB Type-C 线缆将产品与电脑连接。_

运行 Raspberry Pi Imager 的主机不仅限于 Windows,也可以是 macOS 或 Linux。
它们安装和运行 rpiboot 的方法各不相同,因此请根据要使用的主机准备 rpiboot。
rpiboot.exe(适用于 Windows)
如果要使用 Windows 11 作为主机设备,可以从安装程序开始。
下载 URL:https://github.com/raspberrypi/usbboot/raw/master/win32/rpiboot_setup.exe
如果运行该程序,相关驱动程序和其他必要项目将一并安装。
注意:请勿关闭安装过程中出现的窗口。_
重启后,Windows 将检测硬件并配置必要的驱动程序。就是这么简单。
要启动 rpiboot,请转到 “开始 “菜单中的 “Raspberry Pi – Mass Storage Gadget – 64-bit”。
执行后,稍等片刻,eMMC 将以 USB 大容量存储设备的形式出现。
它现在将以串口小工具的形式出现,就像连接 USB 硬盘时一样。
启动 rpiboot 后,操作系统安装到 eMMC 中的内容可以像往常一样写入 Raspberry Pi Imager。
如果选择的写入目标是已识别的磁盘区域,则与往常无异。

[官方] 如何安装和连接 rpiboot Linux macOS Windows
:https://www.raspberrypi.com/documentation/computers/compute-module.html#set-up-the-host-device
apt install(适用于 Linux)
也可以在作为主机设备的另一台 Raspberry Pi 上完成。
既然有 apt 软件包,你只需要熟悉的 Raspberry Pi 的 apt 命令即可。
sudo apt install rpiboot
启动来自命令sudo rpiboot
启动 rpiboot 后,和在 Windows 中一样稍等片刻,eMMC 将作为 USB 大容量存储设备出现。
在 Raspberry Pi Imager 中指定写入目标即可。
此时,请指定 /dev 目录,如/dev/sda
或/dev/sdb
,但一定要检查一下,以防万一。 lsblk
运行该命令,查找存储容量与 eMMC 容量相匹配的设备。这很难出错。
识别后,Ubuntu 的安装与 Windows 相同。
使用 rpiboot(macOS)连接
如果在终端中执行以下步骤,设备将被识别为 USB 大容量存储设备,并以相同方式加载。
git clone --recurse-submodules --shallow-submodules --depth=1 https://github.com/raspberrypi/usbboot
cd usbboot
brew install libusb
brew install pkg-config
make INSTALL_PREFIX=/usr/local
sudo ./rpiboot -d mass-storage-gadget64
如果成功,终端会显示以下内容,并返回提示符
# Successful Terminal Output
Loading: mass-storage-gadget64/bootfiles.bin
Using mass-storage-gadget64/bootfiles.bin
Waiting for BCM2835/6/7/2711/2712...
Sending bootcode.bin
Successful read 4 bytes
Waiting for BCM2835/6/7/2711/2712...
Second stage boot server
File read: mcb.bin
File read: memsys00.bin
File read: memsys01.bin
File read: memsys02.bin
File read: memsys03.bin
File read: bootmain
Loading: mass-storage-gadget64/config.txt
File read: config.txt
Loading: mass-storage-gadget64/boot.img
File read: boot.img
Second stage boot server done
在这种状态下,只需选择 Raspberry Pi 相机识别的磁盘区域作为写入目标即可。

大容量存储小工具模式
与以往不同的是,这款大容量存储小工具 – 64 位的写入速度仅为传统写入速度的四分之一。它要容易得多。
CM4 只能通过 USB 2.0 连接,因此虽然过程仍然很慢,但也花了大约 12 分钟。(写入 Ubuntu 操作系统)
由于之前的 rpiboot 用时不到一个小时,因此没有那么麻烦。

安装并激活 ssh
成功启动 Ubuntu 后,应启用 ssh。如果不需要,请跳过这一步。
与 Raspberry Pi 操作系统不同的是,ssh 最初并没有安装。
使用命令行中的 apt 安装
sudo apt update
sudo apt install ssh
即使我启动了 ssh 服务,关机后它也不会自动启动。这是因为它仍然处于禁用状态。
启用它。
sudo systemctl enable ssh
同样,检查状态命令中是否有错误。
sudo systemctl status ssh
我想你已经开始了,如果还没有,那就开始吧
sudo systemctl start ssh
初步设置 – 安装 ROS 2
在 “PL-R4 “Ubuntu 24.04 上安装 ROS 可以使用 apt 命令,但前后需要做一些工作。
启用版本库宇宙
sudo add-apt-repository universe
添加 ROS 2 GPG 密钥(签名验证密钥)
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
添加 ROS 2 源代码库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
现在也升级新版本库。
sudo apt update && sudo apt upgrade
我们必须先安装 pip。
sudo apt install python3-pip
安装开发工具是可选的,但很有用。
sudo apt update && sudo apt install ros-dev-tools
安装 ROS 2

最后,是安装 ROS 2 本身的时候了。大约需要 10 分钟。
sudo apt install ros-jazzy-desktop
缺少了一些软件包,因此我们将安装其他软件包。
sudo apt install ~nros-jazzy-rqt*
然后,完成初始设置。
ROS 2 初始化
设置一个源代码列表,如 python.yaml 或 base.yaml。
sudo rosdep init
rosdep update
参考资料:https://github.com/ros/rosdistro/blob/master/rosdep/base.yaml
然后,在官方文档中可以找到源代码命令 (source /opt/ros/jazzy/setup.bash
)。这是一个环境设置。
很难每次都使用它,因此请在~/.bashrc
注册。
cd
echo "source /opt/ros/jazzy/setup.bash" >> ~/.bashrc
source ~/.bashrc
工作目录(工作区)设置
接下来,准备一个工作目录。
由于 ROS 是使用 colcon 构建的,因此要在这里运行 colcon build。它可以在虚拟环境中运行,以解决软件包依赖性问题。
这里我们将工作区目录命名为 “ros2_ws”。
cd
mkdir -p ros2_ws/src
cd ros2_ws
colcon build
然后,注册 setup.bash,以便每次打开新终端时都能在该工作区中调用。
echo "source $HOME/ros_ws/install/setup.bash" >> ~/.bashrc
这样就不需要在每次启动终端时运行源代码命令了。
如果工作区的目录结构如下,则没有问题
./ros2_ws
├── build
├── install
├── log
│ ├── build_2025-05-25_16-19-14
│ ├── latest -> latest_build
│ └── latest_build -> build_2025-05-25_16-19-14
└── src
检查环境变量
如果遇到任何错误,可能与环境变量有关,因此最好使用以下命令进行检查。
printenv | grep -i ROS
它将显示如下。
ROS_VERSION=2
ROS_PYTHON_VERSION=3
GZ_CONFIG_PATH=/opt/ros/jazzy/opt/sdformat_vendor/share/gz
AMENT_PREFIX_PATH=/opt/ros/jazzy
CMAKE_PREFIX_PATH=/opt/ros/jazzy/opt/sdformat_vendor:/opt/ros/jazzy/opt/gz_math_vendor:/opt/ros/jazzy/opt/gz_utils_vendor:/opt/ros/jazzy/opt/gz_tools_vendor:/opt/ros/jazzy/opt/gz_cmake_vendor
ROS_AUTOMATIC_DISCOVERY_RANGE=SUBNET
PYTHONPATH=/opt/ros/jazzy/lib/python3.12/site-packages
LD_LIBRARY_PATH=/opt/ros/jazzy/opt/sdformat_vendor/lib:/opt/ros/jazzy/opt/rviz_ogre_vendor/lib:/opt/ros/jazzy/lib/aarch64-linux-gnu:/opt/ros/jazzy/opt/gz_math_vendor/lib:/opt/ros/jazzy/opt/gz_utils_vendor/lib:/opt/ros/jazzy/opt/gz_tools_vendor/lib:/opt/ros/jazzy/opt/gz_cmake_vendor/lib:/opt/ros/jazzy/lib
PATH=/opt/ros/jazzy/opt/gz_tools_vendor/bin:/opt/ros/jazzy/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
ROS_DISTRO=jazzy
OLDPWD=/home/raspida/ros2_ws
安装
这次的主题是如何将可以处理激光雷达及其环境的 ROS 2 中间件 Ubuntu 24.04 安装到 CM4 环境(PL-R4)中。
,由于使用 rpiboot 进行操作系统安装,并且需要进行 ROS 2 安装的前期工作和后期配置,因此有点费力且复杂。
,如果在安装过程中遇到错误,我们认为错误是由于缺少某些东西造成的。
在此过程中,我们没有遇到任何错误。
由于添加了版本库,如果订阅的不是所有更新或推荐更新,我在 Ubuntu 24.04 日程与更新设置中就会出现错误。
默认(标准)是所有更新,所以如果你没有更改任何内容,也没有关系。

根据激光雷达设备的不同,之后还需要进行一些配置。
这次是如何在 “PL-R4 “的 eMMC 上安装 Ubuntu,并构建 ROS 2 环境。
参考资料:https://docs.ros.org/en/rolling/index.html
文章由拉斯必达提供
非工程师也能愉快使用的 Raspberry Pi 信息网站 raspida.com一个非工程师也能享受和使用的 Raspberry Pi 信息网站。他还为 PiLink 网站提供有关工业用 Raspberry Pi 的技术博客文章。