-
Notifications
You must be signed in to change notification settings - Fork 73
Installing AMBF
AMBF has been tested on Ubuntu 16.04, Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04 and Ubuntu 24.04.
AMBF can be compiled without ROS support on Mac OS (Intel and Apple Silicon), please ask for instructions.
Make sure to follow only the appropriate ROS 1 or ROS 2 instructions below, and not both.
Install the following dependencies if not present:
sudo apt install libasound2-dev libgl1-mesa-dev xorg-dev
Install the appropriate ROS 1 or ROS 2 version for your specific Linux distribution based on the instructions here http://wiki.ros.org/ROS/Installation.
Now we can proceed to clone AMBF to ROS workspace:
cd ~
mkdir -p ros_ambf_ws/src && cd ros_ambf_ws/src
git clone https://github.com/WPI-AIM/ambf.git
If using ROS 1, change to appropriate ROS 1 version which could be either melodic or noetic
source /opt/ros/<version>/setup.bash
cd ~/ros_ambf_ws
catkin_make
If using ROS 2, change to appropriate ROS 2 version which could be either humble or jazzy. This should also work with foxy and possibly future versions of ROS 2.
source /opt/ros/<version>/setup.bash
cd ~/ros_ambf_ws
colcon build
Source the correct folder to achieve system-wide availability of AMBF and its ROS modules. This step needs to be run every time you open a new terminal and need to use AMBF or one of its modules.
For ROS 1, this should be:
source ~/ros_ambf_ws/<version>/devel/setup.bashFor ROS 2, this should be:
source ~/ros_ambf_ws/<version>/install/setup.bashYou can also permanently add the install location in your ~/.bashrc with the following command, so that you do not need to re-source (Step 3) every time you open a new terminal.
For ROS 1
echo "source ~/ros_ambf_ws/devel/setup.bash" >> ~/.bashrcOr For ROS 2
echo "source ~/ros_ambf_ws/install/setup.bash" >> ~/.bashrcReload any already open terminals or run . ~/.bashrc in them to make AMBF and its modules available in those terminals. New terminals from this point do not need Step 3 anymore.
The AMBF Simulator
Introduction
- Installing AMBF
- Launching the Simulator
- Selecting Robot(s) to Launch
- The Python Client
- Understanding the Input Device Specification
- Understanding Command Line Arguments
- Keyboard and Mouse Shortcuts
- Mouse Control Multipliers
Useful Tools
- Creating Robots and environments for AMBF using Blender AMBF Addon
- Convert NRRD volumes to ADF for AMBF
- Import volume from 3D Slicer
- Drawing a 3D Curve
Concepts:
- Collision Filtering
- Preprocessing Shaders
- Publishing Camera Feed and Depth Point Cloud
- Setting Per Object or Per Model Level Gravity
- Camera intrinsics or projection matrix
Examples