...
Code Block |
---|
git clone https://github.com/lp-research/lpslam_interfaces cd lpslam_interfaces colcon build --symlink-install source ./install/setup.bash |
Conan
...
Build Instructions
(Recommended)
The instructions below build the OpenVSLAM-ROS wrapper and install the remaining dependencies automatically in the workspace with conan package manager
OpenVSLAM-ROS
...
Wrapper
Make sure to source ROS2 & lpslam_interfaces beforehand.
...
Problems loading some libraries when running the node.
error while loading shared libraries: ... .so : cannot open shared object file: No such file or directory
Can be solved by appending theLD_LIBRARY_PATH
with the path to the new libraries as follows:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INSTALL_ROOT/lib
or usingldconfig
.
Manual
...
Build Instructions
Note |
---|
The manual build is work in progress. |
Dependencies
Below are the instructions to build the dependencies one by one from source and install them in a custom ${INSTALL_ROOT}.
If no custom root is provided, the dependencies will be installed system wide (default to /usr/local
), use sudo make install
to install them in this case.
...
Code Block |
---|
git clone https://github.com/lp-research/openvslam.git cd openvslam git checkout feature/lpr-mods mkdir build && cd build cmake \ -DBUILD_WITH_MARCH_NATIVE=OFF \ -DUSE_PANGOLIN_VIEWER=ON \ -DUSE_SOCKET_PUBLISHER=OFF \ -DUSE_STACK_TRACE_LOGGER=ON \ -DBOW_FRAMEWORK=DBoW2 \ -DBUILD_EXAMPLES=ON \ -DBUILD_TESTS=ON \ -DINSTALL_PANGOLIN_VIEWER=ON \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${INSTALL_ROOT} \ .. make make install |
OpenVSLAM-ROS
...
Wrapper
Make sure to source ROS2 & lpslam_interfaces beforehand
...
Code Block |
---|
git clone https://github.com/lp-research/lpslam_node.git git submodule update --init --recursive colcon build --symlink-install \ --cmake-args -DUSE_PANGOLIN_VIEWER=ON -DUSE_SOCKET_PUBLISHER=OFF \ -DBUILD_WITH_MARCH_NATIVE=OFF -DCMAKE_LIBRARY_PATH=${INSTALL_ROOT}/lib \ -DLPSLAM_BUILD_OPENVSLAM=OFF -DLPSLAM_BUILD_OPENVSLAM_PANGOLIN=OFF |
Testing
...
Your Setup
Testing
...
LPSLAM on
...
Simulation
One quick way to test lpslam LPSLAM is run it on simulation. We created a Turtlebot3 Waffle simulation with Stereo Camera just for that! We also provide the needed launch and configuration files for lpslam integration.
...
Code Block |
---|
source /usr/share/gazebo/setup.bash export TURTLEBOT3_MODEL=waffle_stereo ros2 launch turtlebot3_gazebo turtlebot3_house.launch.py |
Source the lpslam and lpslam_interfaces packages then run the lpslam node with the proper configuration.
For the configuration files, make sure to change the path forconfigFromFile
andvocabFile
here.
Code Block |
---|
source path_to_lpslam_ws/lpslam_interfaces/install/setup.bash source path_to_lpslam_ws/lpslam_node/install/setup.bash ros2 launch turtlebot3_lpslam lpslam_gazebo.launch.py |
Finally, run teleoperation node to move the robot around
Code Block |
---|
ros2 run teleop_twist_keyboard teleop_twist_keyboard # Or ros2 run turtlebot3_teleop teleop_keyboard |
Note: We provide a vocab file (orb_vocab.dbow2) temporarily to make things fast but it can be easily generated. Refer to the following discussion.
Testing
...
LPSLAM on
...
Your Robot
Coming soon..