mjpye


LiDAR and Initial Vizanti setup

Github repo for slamtech LiDARs: https://github.com/Slamtec/sllidar_ros2 Link to purchase in Germany: https://eu.robotshop.com/de/products/rplidar-a1m8-360-grad-laserscanner-entwicklungskit or Amazon C1

Following the instructions on the GitHub page for the C1 LiDAR was enough to get the /scan showing in Rviz. Is running at 10Hz, look around in the GitHub after downloading to see where these parameters are set.

Create3 has a repo for 2D LiDAR SLAM already: https://github.com/iRobotEducation/create3_examples/tree/humble/create3_lidar_slam Looks like I just need to switch the rplidar package to sllidar_ros2, they both seem to publish to the scan topic.

Ran
rosdep install --from-path src --ignore-src -yi

which does
sudo -H apt-get install -y ros-humble-slam-toolbox

Example Occupancy grid map in JS, also allows you to click the canvas to set a new goal pose: https://tommycohn.com/Occupancy-Grid-SLAM-JS/

We want a canvas drawn in JS, which shows the occupancy grid data, Robot position. We then want to be able to click on the canvas and the robot will drive to that position. It seems like writing all this will be hard, but will give full flexibility.

LiDAR attached to RPi Can now start the LiDAR like so (without Rviz):

ros2 launch sllidar_ros2 sllidar_c1_launch.py

And with Thincast Remote Desktop client, we can launch the one with Rviz:

ros2 launch sllidar_ros2 view_sllidar_c1_launch.py

Vizanti

https://github.com/MoffKalast/vizanti/tree/ros2

sudo apt install ros-humble-rqt-reconfigure

Next try to embed this page in an iframe and see what is possible to control, first through direct connection to Pi and page, then through laptop with no VPN and reverse proxy.

With fastrtps we get the battery level. With cyclone we get the TF. <- Not sure if that is confirmed, need to echo topic.

Note: (this gets reverted back to cyclonedds) Changed to:

sudo apt install ros-$ROS_DISTRO-rmw-fastrtps-dynamic-cpp
export RMW_IMPLEMENTATION=rmw_fastrtps_dynamic_cpp

Then ran with the RWS launch instead, seems to work for TF, battery has wrong QoS it seems:

ros2 launch vizanti_server vizanti_rws.launch.py base_url:=/public

Until laser is added to TF

ros2 launch sllidar_ros2 sllidar_c1_launch.py frame_id:=base_link

Error with battery:

[rws_server-1] [WARN] [1731805610.686256228] [vizanti_rws_server]: New publisher discovered on topic '/battery_state', offering incompatible QoS. No messages will be sent to it. Last incompatible policy: RELIABILITY_QOS_POLICY

Note: Later on we switched back to cyclonedds.