RPLidar A3 Inbetriebnahme unter ROS kinetic

Für ein aktuelles Projekt wird ein RPLidar A3 unter ROS benötigt. Von den Daten her ist er für ein Low-Budget Lidar ganz brauchbar:

  • Entfernung: 10-25m
  • Abtastrate: 16.000-10.000 Mal pro Sekunde
  • Abtastrate: 10-20 Hz
  • Winkelauflösung: 0,3375°, 0,54°
  • Unterstützt frühere SDK-Protokolle

Basierend auf der Anleitung unter https://blog.zhaw.ch/icclab/rplidar/ bin ich entsprechend ans Werk gegangen.

### init ros
sudo rosdep init
rosdep update
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt-get install python-rosinstall
### Create a ROS Workspace
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace

Entgegen der ursprünglichen Anleitung habe ich ein anderes Repository genommen. Als Quelle diente mir die ROS-Webseite http://wiki.ros.org/rplidar_ros. Darin befindet

cd ~/catkin_ws/src
git clone https://github.com/Slamtec/rplidar_ros.git

Nun gilt es “alles” zu bauen und die Umgebungsvariablen zu setzen

### Build with catkin
cd ~/catkin_ws/
catkin_make

### Set environment when build is complete
source devel/setup.bash

Gestartet wird nun RViz mit dem entsprechenden Launcher

### Launch demo with rviz
roslaunch rplidar_ros view_rplidar.launch

Und so sieht es dann aus, wenn alles funktioniert:

Welche Probleme sind mit während der Inbetriebnahme entstanden

  • Zugriffsrechte auf das /dev/ttyUSB0 device waren fehlerhaft. Hier gibt es verschiedene Möglichkeiten. Bitte daran denken, nach dem Ändern der Gruppenberechtigungen, einmal ausloggen und neu einloggen!
    • den eigenen Benutzer in die dialout-gruppe hinzuzufügen, durch modifizieren der Datei /etc/group.
    • oder mit Hilfe des Folgenden Befehls
      sudo gpasswd –add ${USER} dialout
  • Standardmäßig ist die /dev/ttyUSB0 auf 115000Baud eingestellt, dies Funktioniert auch für den A1 und A2. Da ich aber den A3 hatte, musste dies auf 256000Baudumgestellt werden. Dazu habe ich folgende Datei verändert:
    nano ~/catkin_ws/src/rplidar_ros/launch/rplidar.launch
    Die Zeile mit den 115000 habe ich entfernt und die 256000 Zeile entsprechend hereingenommen.

Und wie ich nun am Ende mitbekommen habe, gibt es auch ein entsprechendes ROS paket, welches ich installiere.