Original packages are from OmronAPAC
This repository allows controlling a Omron MoMa (Omron Mobile Manipulator) using packages that bridges,
- Omron_AMR_ROS2 package
- Omron_TM_ROS2 package
- tmr_ros2 package
For supported features and limitations, see the individual repositories on the features supported by the MoMa.
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/Omron_MoMa_ROS2.git
git clone https://github.com/CollaborativeRoboticsLab/Omron_AMR_ROS2.git
git clone https://github.com/CollaborativeRoboticsLab/Omron_TM_ROS2.git
git clone https://github.com/CollaborativeRoboticsLab/tmr_ros2.git
finally buildby
cd ..
colcon build
Clone this reposiotory
git clone https://github.com/CollaborativeRoboticsLab/Omron_MoMa_ROS2.git
cd Omron_MoMa_ROS2/docker
Pull the Docker image and start compose (No need to run docker compose build
)
docker compose pull
docker compose up
To clean the system,
docker compose down
-
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.
-
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. -
Start TM Driver with the IP address of the robot using following command and replace the <robot_ip_address> with actual ip address.
source install/setup.bash
ros2 run tm_driver tm_driver robot_ip:=<robot_ip_address>
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 robot_ip:=<robot_ip_address>
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
-
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.
-
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. -
Start TM Driver by uncommenting the following line under
command
on the docker compose.yaml file and then runningdocker compose up
replace the <robot_ip_address> with actual ip address.
command:
- ros2 run tm_driver tm_driver robot_ip:=<robot_ip_address>
-
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
command: - ros2 launch tm12x_moveit_config tm12x_run_move_group_headless.launch.py robot_ip:=<robot_ip_address>
and run
docker compose up
-
On the remote computer run the following command,
source install/setup.bash ros2 launch tm12x_moveit_config tm12x_run_move_group_visualize.launch.py