Skip to content

ColumbiaCGUI/roam-blmm

Repository files navigation

Repository for Bimanual Manipulation Teleoperation

Single Arm Teleoperation (single_arm_teleoperation):

Sandbox for single arm teleoperation.

Using package:

Control simulated UR5 robot via cartesian control in rviz using an interactive marker:

roslaunch teleop ur5_cc_sim.launch

Control actual UR5 robot via cartesian control in rviz using an interactive marker:

roslaunch teleop ur5_cc_real.launch

To use trakstar:

Launch trakstar to get sensor transforms:

roslaunch trakstar trakstar.launch 

Control simulated UR5 robot via cartesian control in rviz using Trakstar:

roslaunch teleop ur5_trakstar_sim.launch

Control actual UR5 robot via cartesian control in rviz using Trakstar:

roslaunch teleop ur5_trakstar_real.launch

Structure:

/single_arm_teleop
    /robot_sim
    /teleop
        /scripts
            /arm_teleop
            /mp                     -- > # motion planning functionality, not used for teleoperation.
            /trakstar
        /src
            /control
            /scene
            /utils
    /ur5_files
    /urdf_parser_py

Data Collection (data_collection):

Requirements:

To use a realsense camera during data collection, the following package must be installed:

sudo apt-get install ros-$ROS_DISTRO-realsense2-camera

Using Package:

To start data collection:

roslaunch data_collection data_collection.launch

Policy Deployment (policy_deployment):

To test out a new policy, first run the (1) launch file for sim or real robot inside the teleop package, and then run the (2) policy controller.

(1) Launch file in teleop:

Control simulated UR5 robot using policy:

roslaunch teleop ur5_policy_sim.launch

Control actual UR5 robot using policy:

roslaunch teleop ur5_policy_real.launch

(2) Run policy controller:

rosrun single_arm policy_controller.py

Submodules:

CPT:

Policy repo.

Trakstar_ros

Ros package to publish trakstar sensor transforms over tf2.

ROAM BiMM Gripper:

For custom gripper use.

Direct Teleop (direct_teleop):

Ignore directory.

Baxter Robot Workstation Setup

Most setup instruction can be found on the website.

  • During Step 1, use Ubuntu 20.04. Skip this step on roam-bimm machine because it has been installed.
  • During Step 2, use ROS Noetic. Skip this step on roam-bimm machine because it has been installed.
  • During Step 3, instead of $ mkdir, simply clone this directory.
    To run $ catkin_make and $ catkin_make install on the roam-bimm machine:
    1. Run $ sudo su.
    2. Run $ source /opt/ros/noetic/setup.sh.
    3. Run $ catkin_make and then $ catkin_make install.
  • During Step 4, use ROS Noetic packages. Skip this step on roam-bimm machine because they have been installed.
  • During Step 5, use ROS Noetic and the instruction in Step 3. Skip "Install Baxter SDK" because they are included in this repo.
  • During Step 6, to customize the baxter.sh:
    • baxter_hostname="011410P0022.local"
    • your_hostname="roambimm-computer.local" and comment out your_ip line.
    • ros_version="noetic"
  • Addtional steps:
    • On roam-bimm machine, run $ sudo ufw disable to disable firewall.
    • Modify all the #!/usr/bin/python2 instances in baxter packages to #!/usr/bin/python3.
    • Modify all the deprecated python2 syntax to python3.
  • Diagnostic tools (to be used after running baxter.sh):
    • Ssh into the robot ssh ruser@011303P0017.local with password rethink
    • Ping the robot from machine: ping 011410P0022.local
    • Ping the machine from robot: ping roambimm-computer.local
    • Use roswtf on both the robot and the machine for general ROS diagnosis.
    • Use rostopic info to check node connectivity.
    • Use rostopic pub to publish topic through command lines.
    • To perform a factory reset on baxter robot, press Shift+S during booting, and type reset-live when prompted.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •