Giter Site home page Giter Site logo

zjutongyang / allegro-hand-controller-dime Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nyu-robot-learning/allegro-hand-controller-dime

0.0 0.0 0.0 38.21 MB

Allegro hand controller package which works with ROS Noetic.

License: BSD 2-Clause "Simplified" License

C++ 75.24% Python 14.54% C 4.56% CMake 5.67%

allegro-hand-controller-dime's Introduction

Allegro Hand Controller - Noetic

This repository contains the information to setup the ROS Noetic based Allegro Hand controller package which is a part of the official implementation of DIME. We would advice you to run the setup.sh file in the base repository for convenience and use this as a debugging tool. The base repo containing all the information can be found at DIME - Models.

Contents

  1. Requirements
  2. Installing Drivers
  3. Setting up DART Sim
  4. Launching the Controller

Installation Requirements

  1. LibPCAN package
  2. Allegro Hand v4

Installing Drivers

Before setting up the controller, we need to ensure that we have all the drivers necessary for establishing communication over the PCAN channel. Make sure to install the following dependencies first before setting up the allegro controller package.

  1. Install these C++ dependencies:
    sudo apt-get install cmake gcc g++ libpopt-dev
    
  2. Set up the necessary drivers using the following commands:
    cd ../
    mkdir drivers && cd drivers
    
    wget https://www.peak-system.com/fileadmin/media/linux/files/peak-linux-driver-8.12.0.tar.gz
    tar -xvzf peak-linux-driver-8.12.0.tar.gz
    cd peak-linux-driver-8.12.0
    make clean
    make NET=NO_NETDEV_SUPPORT
    sudo make install 
    sudo modprobe pcan
    
    cd ..
    wget https://www.peak-system.com/quick/BasicLinux
    tar -xvzf BasicLinux
    cd PCAN-Basic_Linux-4.5.4/libpcanbasic
    make
    sudo make install
    
  3. Test the installation of the drivers using the following command:
    cat /proc/pcan
    
    You will be able to see the pcan driver stream data if you are connected to a PCAN device.
  4. You can also run the following command to list all the PCAN devices connected to the system:
    ls -l /dev/pcan*
    
  5. If you do not see any available files, you may need to run:
    sudo ./driver/pcan_make_devices 2
    
  6. After installing the drivers install ROS followed by it's PCAN package:
    sudo apt-get install ros-noetic-libpcan 
    

Setting up DART Sim

We need to setup DART Sim for the ll4ma-kdl packages to run. Run the following commands:

sudo apt-add-repository ppa:dartsim/ppa
sudo apt-get update
sudo apt-get install libdart6-all-dev

Launching the Controller

After setting up the drivers and DART sim, you can run catkin_make from the base controller directory (where you have both - Kinova JACO arm controller and Allegro Hand controller). Do the following from this directory:

cd <base-controller-dir>
catkin_make

After you make the binaries, you need to source the setup files using the below command:

source <base-controller-dir>/devel/setup.bash

Then you can launch the Allegro Hand's roslaunch file to start controlling the roslaunch file.

roslaunch allegro_hand allegro_hand.launch

If you want to launch the visualizer along with the roslaunch file, you can run the following command:

roslaunch allegro_hand allegro_hand.launch VISUALIZE:=true

Citation

If you use this repo in your research, please consider citing the paper as follows:

@article{arunachalam2022dime,
  title={Dexterous Imitation Made Easy: A Learning-Based Framework for Efficient Dexterous Manipulation},
  author={Sridhar Pandian Arunachalam and Sneha Silwal and Ben Evans and Lerrel Pinto},
  journal={arXiv preprint arXiv:2203.13251},
  year={2022}
}

allegro-hand-controller-dime's People

Contributors

sridharpandian avatar simlabrobotics avatar zihunkye avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.