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.