Ich möchte LiDAR verwenden! Ich habe eine Umgebung auf einem industriellen Raspberry Pi erstellt.

Es besteht die Notwendigkeit, LiDAR mit dem industriellen Raspberry Pi zu betreiben. LiDAR misst die Entfernung eines Objekts mit Hilfe eines Laserstrahls und wird in selbstfahrenden Autos, Reinigungsrobotern, bei der Vermessung usw. eingesetzt. Der Laserstrahl wird auf 360°C fokussiert, erkennt Hindernisse und kartiert sie.
Das Wort „Sensor“ ist wahrscheinlich einfacher zu verstehen. Im weitesten Sinne ist es eine Form der Fernerkundung. Bei Radar handelt es sich übrigens um eine Radiowelle.

Für einen Moment scheinen Kameraaufnahmen besser zu sein, aber bei Videos gibt es zu viele Informationen, die Sie genau prüfen müssen. Mit LiDAR können Sie sofort erkennen, dass da etwas ist, bevor Sie überhaupt die Details kennen.

Noch wichtiger ist der Vorteil, dass Sie die Entfernung anhand der Zeit (oder Frequenz) messen können, die ein Lichtstrahl benötigt, um auf ein Objekt zu treffen und zurückzukehren. Es ist schwierig, die Entfernung mit Video zu messen.
Das System ermöglicht das 3D-Scannen, indem es eine Sammlung von Punkten im Raum abbildet, die von LiDAR gemessen werden sollen.

Zusätzliche Kamerabilder könnten ebenfalls verwendet werden, und ihre Nutzung könnte durch die Zusammenarbeit miteinander erweitert werden.
Wir befinden uns jetzt in einer Ära, in der LiDAR und KI als zusammenarbeitend betrachtet werden können.

Sie können es auf einem Raspberry Pi ausprobieren.

Ich halte es für sinnvoll, LiDAR auf einem industriellen Raspberry Pi zu betreiben. Wenn es sich um einen kleinen oder teilweisen Einsatz handelt, reicht ein einzelner Raspberry Pi aus.

Selbst für den industriellen Einsatz ist der Raspberry Pi kleiner und leichter als ein Notebook-PC. Jede Schnittstelle verfügt über die Grundlagen und kann bis zu einem gewissen Grad in Verbindung miteinander verwendet werden.

Der Grund dafür ist, dass das Basis-Betriebssystem Linux sein kann, einschließlich des Allzweck-Betriebssystems Ubuntu, und dass Open-Source-Software für das Mapping der Messdaten zur Verfügung steht.
Seit der Einführung des Pi 5/CM5 ist die Verarbeitungsgeschwindigkeit als Maschine praktischer als je zuvor geworden.

Der Preis von Geräten, die als LiDAR messen, variiert stark, aber preiswerte Geräte können zusammen mit einem industriellen Raspberry Pi ausprobiert werden.

Diesmal haben wir Ubuntu 24.04 als Betriebssystem installiert, damit es mit ROS 2 (Jazzy Jalisco), einer bekannten Middleware in der Robotik, umgehen kann.
ROS 2 ist als Binärpaket für Ubuntu verfügbar.
ROS 2 = Robot Operating System V2

Das Raspberry Pi Compute Module (im Folgenden CM genannt) verwendet vorab rpiboot, um das Betriebssystem auf die eMMC zu schreiben.
Wir werden Ihnen zeigen, wie Sie das Betriebssystem mit rpiboot installieren und sogar ROS2 installieren.

Sobald das LiDAR-Gerät mit dieser Umgebung verbunden ist, sind die Kartierungsdaten sofort verfügbar.

Zu installierende Umgebung

In diesem Fall werden wir Ubuntu 24.04LTS Desktop Edition verwenden. Selbst mit dem gleichen Ubuntu besteht das Risiko, dass die Server- oder Core-Version aufgrund fehlender Module und Treiber nicht erfolgreich installiert werden kann. Wegen einiger Hürden, wie der Änderung des Gerätebaums, habe ich zur Sicherheit die Desktop-Version verwendet.
Installieren Sie in den eMMC-Bereich, nicht auf die microSD-Karte.

  • PL-R4″ mit ComputeModule 4 eMMC/32GB, RAM/8GB
  • USB Typ-C Kabel
  • Ubuntu 24.04.2LTS
  • ROS 2 Jazzy Jalisco

Da es sich um eine Ubuntu-Desktop-Umgebung und nicht um das übliche Raspberry Pi-Betriebssystem handelt, reichen 4 GB RAM nicht aus, um mit einem gewissen Maß an Komfort zu arbeiten. Das Modell mit 8 GB RAM ist verfügbar.
Die Version von ROS 2 wurde gerade am 23. Mai 2025 mit einer neuen „kilted“ Version veröffentlicht, aber dieses Mal haben wir die stabile „jazzy“ Version gewählt. Diesmal haben wir uns für „jazzy“ entschieden, die stabiler ist.

So installieren Sie auf eMMC

Um auf eMMC zu schreiben, verwenden Sie rpiboot und verbinden Sie sich mit einem USB Typ-C Kabel mit dem Host-Rechner.

Anders als die CM-Serie auf dem Markt kann die „PL-R4“ mit einem DIP-Schalter einfach zwischen Schreibaktivierung und Schreibdeaktivierung umgeschaltet werden.
Das microHDMI-Kabel und das Stromkabel sind ebenfalls nicht angeschlossen, und das Produkt wird allein mit einem einzigen USB Typ-C-Kabel an einen PC angeschlossen. _

Wechseln Sie zur schreibgeschützten Seite

Der Host-Rechner, auf dem der Raspberry Pi Imager läuft, ist nicht auf Windows beschränkt, sondern kann auch macOS oder Linux sein.
Jeder dieser Rechner hat eine andere Methode, rpiboot zu installieren und auszuführen.

rpiboot.exe (für Windows)

Wenn Sie Windows 11 als Host-Gerät verwenden möchten, können Sie mit dem Installationsprogramm beginnen.

URL herunterladen:
https://github.com/raspberrypi/usbboot/raw/master/win32/rpiboot_setup.exe

Wenn Sie das Programm ausführen, werden die zugehörigen Treiber und andere notwendige Elemente zusammen installiert.
Hinweis: Schließen Sie das Fenster, das während der Installation erscheint, nicht. _

Nach dem Neustart erkennt Windows die Hardware und konfiguriert die erforderlichen Treiber. So einfach ist das.

Um rpiboot zu starten, gehen Sie im Startmenü auf „Raspberry Pi – Massenspeicher-Gadget – 64-bit“.
Nach der Ausführung warten Sie einen Moment und die eMMC erscheint als USB-Massenspeichergerät.
Sie erscheint nun als Gadget mit seriellem Anschluss, genau wie beim Anschluss einer USB-Festplatte.

Nach dem Booten von rpiboot kann die Betriebssysteminstallation auf eMMC wie gewohnt auf den Raspberry Pi Imager geschrieben werden.
Wenn Sie als Schreibziel einen erkannten Festplattenbereich wählen, ist es nicht anders als sonst.

[Offiziell] So installieren und verbinden Sie rpiboot Linux macOS Windows
: https://www.raspberrypi.com/documentation/computers/compute-module.html#set-up-the-host-device

apt install (für Linux)

Es kann auch auf einem anderen Raspberry Pi als Host-Gerät durchgeführt werden.
Da das apt-Paket verfügbar ist, benötigen Sie nur den bekannten apt-Befehl für Raspberry Pi.

sudo apt install rpiboot

Der Start erfolgt über den Befehlsudo rpiboot

Nachdem Sie rpiboot gestartet haben, warten Sie hier wie auch in Windows ein wenig und die eMMC wird als USB-Massenspeichergerät angezeigt.
Geben Sie einfach das Schreibziel im Raspberry Pi Imager an.

Geben Sie zu diesem Zeitpunkt das Verzeichnis /dev an, z.B. /dev/sdaoder /dev/sdb, aber überprüfen Sie es vorsichtshalber.
lsblkFühren Sie den Befehl aus und suchen Sie nach einem Gerät mit einer Speicherkapazität, die mit der Kapazität der eMMC übereinstimmt. Es ist sehr schwierig, einen Fehler zu machen.

Nach der Erkennung erfolgt die Ubuntu-Installation auf die gleiche Weise wie bei Windows.

Verbinden mit rpiboot (macOS)

Für macOS wird die Anwendung nicht mitgeliefert, so dass Sie sie aus dem Quellcode erstellen müssen.
Wenn Sie die folgenden Schritte im Terminal ausführen, wird das Gerät als USB-Massenspeichergerät erkannt und auf die gleiche Weise eingehängt.

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

Bei Erfolg zeigt das Terminal Folgendes an und die Eingabeaufforderung kehrt zurück

# 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

In diesem Zustand wählen Sie einfach den vom Raspberry Pi Imager erkannten Festplattenbereich als Schreibziel aus.

Massenspeicher Gadget-Modus

Im Gegensatz zu früher erledigt dieses Massenspeicher-Gadget – 64-bit Schreibvorgänge in etwa einem Viertel der herkömmlichen Schreibgeschwindigkeit. Das ist viel einfacher.

Der CM4 kann nur über eine USB 2.0-Verbindung angeschlossen werden, so dass es etwa 12 Minuten gedauert hat, obwohl es immer noch ein langsamer Prozess ist. (Ubuntu OS schreiben)
Es war weniger umständlich, da das vorherige rpiboot weniger als eine Stunde dauerte.

Installieren und aktivieren Sie ssh

Sobald Ubuntu erfolgreich gebootet wurde, sollte ssh aktiviert sein. Überspringen Sie dies, wenn Sie es nicht brauchen.
Anders als das Raspberry Pi OS wird ssh nicht von Anfang an installiert.

Installieren Sie mit apt vom Befehl aus

sudo apt update
sudo apt install ssh

Selbst wenn ich den ssh-Dienst starte, wird er nach dem Ausschalten nicht automatisch gestartet. Das liegt daran, dass er immer noch deaktiviert ist.
Aktivieren Sie es.

sudo systemctl enable ssh

Prüfen Sie auch auf Fehler in den Statusbefehlen.

sudo systemctl status ssh

Ich denke, Sie haben bereits damit begonnen, aber wenn nicht, STARTEN Sie

sudo systemctl start ssh

Vorläufige Einrichtung – Installation von ROS 2

Die Installation von ROS auf „PL-R4“ Ubuntu 24.04 kann mit dem Befehl apt durchgeführt werden, aber vorher und nachher ist etwas Arbeit erforderlich.

Repository-Universum aktivieren

sudo add-apt-repository universe

ROS 2 GPG-Schlüssel (Signaturprüfschlüssel) hinzufügen

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 Quellcode-Repository hinzufügen

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

Aktualisieren Sie nun auch das neue Repository.

sudo apt update && sudo apt upgrade

Wir mussten zuerst pip installieren.

sudo apt install python3-pip

Die Installation von Entwicklungstools ist optional, aber nützlich.

sudo apt update && sudo apt install ros-dev-tools

Installation von ROS 2

Schließlich ist es an der Zeit, ROS 2 selbst zu installieren. Das wird etwa 10 Minuten dauern.

sudo apt install ros-jazzy-desktop

Es fehlten einige Pakete, daher werden wir zusätzliche Pakete installieren.

sudo apt install ~nros-jazzy-rqt*

Schließen Sie dann die Ersteinrichtung ab.

ROS 2 Initialisierung

Erstellen Sie eine Quellliste wie python.yaml oder base.yaml.

sudo rosdep init 
rosdep update

Referenz: https://github.com/ros/rosdistro/blob/master/rosdep/base.yaml

Dann finden Sie in der offiziellen Dokumentation den Befehl source ( source /opt/ros/jazzy/setup.bash). Dies ist eine Umgebungseinstellung.
Es ist schwer, diese jedes Mal zu treffen, also registrieren Sie sie unter ~/.bashrc.

cd 
echo "source /opt/ros/jazzy/setup.bash" >> ~/.bashrc
source ~/.bashrc

Einstellungen für das Arbeitsverzeichnis (Arbeitsbereich)

Als nächstes bereiten Sie ein Arbeitsverzeichnis vor.
Da ROS mit colcon erstellt wird, wird hier colcon build ausgeführt. Er kann in einer virtuellen Umgebung ausgeführt werden, um Paketabhängigkeiten aufzulösen.
Hier haben wir das Arbeitsbereich-Verzeichnis „ros2_ws“ genannt.

cd 
mkdir -p ros2_ws/src 
cd ros2_ws 
colcon build

Registrieren Sie dann setup.bash so, dass sie jedes Mal in diesem Arbeitsbereich aufgerufen wird, wenn Sie ein neues Terminal öffnen.

echo "source $HOME/ros_ws/install/setup.bash" >> ~/.bashrc

Damit entfällt die Notwendigkeit, den Befehl source jedes Mal auszuführen, wenn Sie das Terminal starten.

Es ist in Ordnung, wenn der Arbeitsbereich die folgende Verzeichnisstruktur hat

./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

Prüfen von Umgebungsvariablen

Wenn Sie auf Fehler stoßen, kann dies mit den Umgebungsvariablen zusammenhängen. Es ist daher ratsam, diese mit den folgenden Befehlen zu überprüfen.

printenv | grep -i ROS

Es sieht dann so aus.

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

Installieren Sie es.

Diesmal ging es darum, wie man die Middleware ROS 2, die mit LiDAR und seiner Umgebung umgehen kann, Ubuntu 24.04, in die CM4-Umgebung (PL-R4) installiert.
Es war etwas arbeitsintensiv und kompliziert, da rpiboot für die Installation des Betriebssystems verwendet wird und die ROS 2-Installation vor- und nachbearbeitet werden muss.
Wenn Sie während der Installation auf einen Fehler stoßen, gehen wir davon aus, dass der Fehler auf etwas Fehlendes zurückzuführen ist.

Bei dieser Prozedur sind keine Fehler aufgetreten.
Aufgrund der Hinzufügung des Repositorys erhalte ich einen Fehler in den Einstellungen von Ubuntu 24.04 Schedule & Update, wenn die Option Subscribed to nicht All updates oder recommends updates lautet.
Die Standardeinstellung (Standard) ist All updates, es spielt also keine Rolle, wenn Sie nichts geändert haben.

Eine Umgebung für den Umgang mit LiDAR-Geräten kann auch mit dem Compute Module des industriellen Raspberry Pi aufgebaut werden.
Je nach LiDAR-Gerät müssen danach noch einige Konfigurationen vorgenommen werden.

Diesmal ging es darum, wie man Ubuntu auf der eMMC des „PL-R4“ installiert und die ROS 2 Umgebung aufbaut.

Referenz: https://docs.ros.org/en/rolling/index.html


Artikel beigetragen von Raspida

Raspberry Pi-Informationsseite, die auch von Nicht-Ingenieuren genutzt werden kann raspida.com eine Raspberry Pi-Informationsseite, die auch für Nicht-Ingenieure interessant ist und mit der sie umgehen können. Er schreibt auch technische Blogartikel auf der PiLink-Website über den Raspberry Pi für den industriellen Einsatz.