Skip to content

Asynchronous Multi-Body Framework - Programming Robots in ROS Controlling KUKA LBR iiwa Arm with 7 Degrees of Freedom

Notifications You must be signed in to change notification settings

nashunor/ambf_kuka_lwr_ik

Repository files navigation

Asynchronous Multi-Body Framework (AMBF)

Author: Adnan Munawar

Description:

This multi-body framework offer real-time dynamic simulation of multi-bodies (robots, free bodies and multi-link puzzles) and real-time haptic interaction with multiple haptic devices (CHAI-3D) including dVRK Manipulators. It also provides a python client for training NN and RL Agents on real-time data from running simulation. This framework is built around several external tools that include an extended version of CHAI-3D, BULLET-Physics, Open-GL, GLFW to name a few.

Usage:

Building:

To build the framework (Linux and Mac-OS):

cd ~
git clone https://github.com/WPI-AIM/ambf.git
cd ambf && mkdir build
cd build
cmake ..
make

If you are using Linux, then after succesful build, source the devel to add the ros modules is the workspace using

source ./devel/setup.bash

Running the Simulator:

After successful build, running the simulator is easy. Follow the steps below. Depending on what OS you're using.

cd ~/ambf/bin/<os>
./ambf_simulator

Note:

The AMBF Simulator uses the yaml file located in ambf/ambf_models/descriptions/launch.yaml to load all the runtime models, haptic device end-effectors and the world. You can see the contents of this file by opening it in the text editor of your choice. The most important thing to see is the field multibody configs:. The uncommented config file will be run at runtime and multiple config files can be run at the same time by uncommenting them. You can play around with a few config files to see how they work.

Interacting with the Robots/Multi-Bodies in the Simulator:

There are multiple way of interacting with the bodies in simulator. If you are using Linux, the best and most convinient way is to use ros messages. \ TODO : How to control the robots using message publishers

About

Asynchronous Multi-Body Framework - Programming Robots in ROS Controlling KUKA LBR iiwa Arm with 7 Degrees of Freedom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 76.6%
  • Python 18.2%
  • CMake 4.2%
  • GLSL 0.4%
  • C 0.4%
  • Dockerfile 0.1%
  • Shell 0.1%