Skip to content

CollaborativeRoboticsLab/tmr_ros2

 
 

Repository files navigation

TMR ROS2 package

To view the original Readme.md click here

This package is a combination of documentation from OmronAPAC/Omron_TM_ROS2 and functionality of TechmanRobotInc/tmr_ros2

View Developer's Guide.

Branch ROS2 Version Compile
main Jazzy main
develop Jazzy develop
humble Humble humble

Setup

Create a workspace

mkdir -p omron_ws/src
cd omron_ws/src

Install dependencies

sudo apt install ros-humble-moveit ros-humble-controller-manager ros-humble-joint-trajectory-controller ros-humble-joint-state-broadcaster ros-humble-rmw-cyclonedds-cpp ros-humble-joint-state-publisher ros-humble-joint-state-publisher-gui ros-humble-vision-opencv

Clone the repositories into the src folder by

git clone https://github.com/CollaborativeRoboticsLab/tmr_ros2.git

Build by

cd ..
colcon build

Usage

Initialization

  1. Startup TMFLow software with a listener node

  2. Establish Remote connection to TM Robot

  3. Once the robot starts up, it needs to have the listner node loaded (via TMFlow) and should be in the auto mode. On the arm it needs to flash blue and red, while on the pendent a blue light should appear near letter A.

  4. If it is in manual mode (arm blinking green and pendent has a yellow light near letter M), press M/A button few seconds until the yellow button near M letter starts blinking and quickly enter the password (+-++-) on the pendent using pendent + and - keys.

Connect directly to the arm

Run the following command to connect to robot.

source install/setup.bash
ros2 run tm_driver tm_driver --ros-args -p tm_robot_ip:=<robot_ip_address>

TM Robot Arm with Moveit

TM driver node is included in the tm12x_run_move_group.launch.py file. Update the config/interface.yaml with robot ip address and set tm_use_simulation to false.

source install/setup.bash
ros2 launch tm12x_moveit_config tm12x_run_move_group.launch.py 

TM Robot Arm with Moveit (Simulation)

TM driver node is included in the tm12x_run_move_group.launch.py file.

source install/setup.bash
ros2 launch tm12x_moveit_config tm12x_run_move_group.launch.py tm_use_simulation:=true

TM Robot Arm with Moveit (Headless Companion Computer Configuration)

  1. TM driver node is included in the tm12x_run_move_group.launch.py file. To start the headless moveit server, uncomment the following line on the companion computer and update <robot_ip_address> with robot ip address.

    command:
    
    - ros2 launch tm12x_moveit_config tm12x_run_move_group_headless.launch.py tm_robot_ip:=<robot_ip_address> use_simulation:=false

    and run

    docker compose up
  2. On the remote computer run the following command,

    source install/setup.bash
    ros2 launch tm12x_moveit_config tm12x_run_move_group_visualize.launch.py

To Do List

  • Update TM driver to use standard ros2 parameters
  • Update launch files to use standard parameters and remove non-launch related python code
  • Create cascadeing launch files for TMDriver, Moveit and RVIZ
  • Add access to camera node on the arm and a standard image publisher to ros2

About

TM Robots supporting ROS2 drivers and some extended external applications for non-s models

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C++ 53.7%
  • Python 42.3%
  • CMake 3.7%
  • Dockerfile 0.3%