Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged arm_api2 at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.0.0 |
License | TODO: License declaration |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | Code wrapper for MoveIt2! and ROS 2. |
Checkout URI | https://github.com/croboticsolutions/arm_api2.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-07-21 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | robotics manipulation ros2 moveit2 |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- root
Authors
arm_api2
:mechanical_arm: API for robotic manipulators based on ROS 2 and MoveIt2!
Docker for building required environment can be found here.
Use prebuilt docker
Pull and run docker container arm_api2_cont
:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
./pull_and_run_docker.sh
<robot>_sim (start robot in simulation)
Run move_group for that robot (see particular instructions for supported arms in How to use section). And after that run:
ros2 launch arm_api2 moveit2_simple_iface.launch.py robot_name:=<robot_name>
Currently supported robot names are: ur
, kinova
, franka
, piper
.
For full instructions check section How to use arm_api2?
Build your own docker
In order to build it easily, run following comands:
git clone git@github.com:CroboticSolutions/docker_files.git
cd ./docker_files/ros2/humble/arm_api2
docker build -t arm_api2_img:humble .
./run_docker.sh
After running docker, you can enter container with:
docker exec -it arm_api2_cont bash
Docker for building required environment can be found here.
For building ROS 2 packages and moveit, it is neccessary to use colcon.
Tell us anonymously what arms we should support here. :smile:
Depends on:
Aditional dependencies are (depending on the arm you use):
How to use arm_api2?
Change robot state:
The robot state can be changed via a ROS2 service.
- name:
arm/change_state
- srv:
/arm_api2_msgs/srv/ChangeState.srv
- values
JOINT_TRAJ_CTL || CART_TRAJ_CTL || SERVO_CTL
Example service call:
ros2 service call /arm/change_state arm_api2_msgs/srv/ChangeState "{state: JOINT_TRAJ_CTL}"
Currently implemented and available robot states are:
-
JOINT_TRAJ_CTL
, which is used for joint control -
CART_TRAJ_CTL
, which is used for cartesian control -
SERVO_CTL
, which is used for the end effector servoing
Set max velocity and acceleration scaling factor:
Set velocity and acceleration scaling factors via service call:
- name:
arm/set_vel_acc
- srv:
/arm_api2_msgs/srv/SetVelAcc.srv
- values
max_vel
andmax_acc
(both float64)
Example service call:
ros2 service call /arm/set_vel_acc arm_api2_msgs/srv/SetVelAcc "{max_vel: 0.5, max_acc: 0.5}"
Set end effector link:
Set end effector link via service call:
- name:
arm/set_eelink
- srv:
/arm_api2_msgs/srv/SetStringParam.srv
- values
value
(string)
File truncated at 100 lines see the full file
Changes added by KIT (Edgar Welte)
Sep 2024
- add frame_id to published current pose
- add service to set max_vel and max_acc scaling factor
- add action servers instead of subscribers to receive commands (pose, joint_state, or pose path)
- add example script to send pose to action server
- add LIN, EST and PRM Planner for pose action
Oct 2024
- add keyboard control node to control the robot via keyboard in servo mode
Nov 2024
- integrate xbox joy ctl
Jan 2025
- refactor code for planning
- add gripper functionality incl. action client for robotiq_2f
- add service for setting end effector link in moveit2 interface
- add servo watchdog node to monitor twist/jog commands and publish zero velocity if inactive
- add cumotion as planner
Feb 2025
- set proper planner priority: 1. cumotion, if failed then PRM, EST, LIN (each 3 times)
- add planonly mode
Future potential features
- realtime pose follower (teleoperation: servo via absolute position)
- constraints for planners (e.g. orientation constraint for cup transport)
- dynamic scene object update
Package Dependencies
System Dependencies
Name |
---|
python3 |