Package Summary

Tags No category tags.
Version 1.1.0
License BSD 3-Clause
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-planning/moveit.git
VCS Type git
VCS Version noetic-devel
Last Updated 2020-07-21
Dev Status DEVELOPED
CI status No Continuous Integration
Released UNRELEASED
Package Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Provides real-time manipulator Cartesian and joint servoing.

Additional Links

Maintainers

  • Blake Anderson
  • Andy Zelenak

Authors

  • Brian O'Neil
  • Andy Zelenak
  • Blake Anderson
  • Alexander Rössler
  • Tyler Weaver

Moveit Servo

Quick Start Guide for UR5 example

Clone the universal_robot repo into your catkin workspace:

git clone https://github.com/ros-industrial/universal_robot.git

Run rosdep install from the src folder to install dependencies.

rosdep install --from-paths . --ignore-src -y

Build and subsequently source the catkin workspace. Startup the robot and MoveIt:

roslaunch ur_gazebo ur5.launch

roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch sim:=true

roslaunch ur5_moveit_config moveit_rviz.launch config:=true

In RViz, "plan and execute" a motion to a non-singular position (not all zero joint angles) that is not close to a joint limit.

Switch to a compatible type of ros-control controller. It should be a JointGroupVelocityController or a JointGroupPositionController, not a trajectory controller like MoveIt usually requires.

rosservice call /controller_manager/switch_controller "start_controllers:
- 'joint_group_position_controller'
stop_controllers:
- 'arm_controller'
strictness: 2"

Launch the servo node. This example uses commands from a SpaceNavigator joystick-like device:

roslaunch moveit_servo spacenav_cpp.launch

If you dont have a SpaceNavigator, send commands like this:

rostopic pub -r 100 /servo_server/delta_twist_cmds geometry_msgs/TwistStamped "header: auto
twist:
  linear:
    x: 0.0
    y: 0.01
    z: -0.01
  angular:
    x: 0.0
    y: 0.0
    z: 0.0"

If you see a warning about "close to singularity", try changing the direction of motion.

Running Tests

Run tests from the moveit_servo folder:

catkin run_tests --no-deps --this
CHANGELOG
No CHANGELOG found.

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged moveit_servo at answers.ros.org

Package Summary

Tags No category tags.
Version 1.0.5
License BSD 3-Clause
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-planning/moveit.git
VCS Type git
VCS Version melodic-devel
Last Updated 2020-07-08
Dev Status DEVELOPED
CI status
Released RELEASED
Package Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Provides real-time manipulator Cartesian and joint servoing.

Additional Links

Maintainers

  • Blake Anderson
  • Andy Zelenak

Authors

  • Brian O'Neil
  • Andy Zelenak
  • Blake Anderson
  • Alexander Rössler
  • Tyler Weaver

Moveit Servo

Quick Start Guide for UR5 example

Clone the universal_robot repo into your catkin workspace:

git clone https://github.com/ros-industrial/universal_robot.git

Run rosdep install from the src folder to install dependencies.

rosdep install --from-paths . --ignore-src -y

Build and subsequently source the catkin workspace. Startup the robot and MoveIt:

roslaunch ur_gazebo ur5.launch

roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch sim:=true

roslaunch ur5_moveit_config moveit_rviz.launch config:=true

In RViz, "plan and execute" a motion to a non-singular position (not all zero joint angles) that is not close to a joint limit.

Switch to a compatible type of ros-control controller. It should be a JointGroupVelocityController or a JointGroupPositionController, not a trajectory controller like MoveIt usually requires.

rosservice call /controller_manager/switch_controller "start_controllers:
- 'joint_group_position_controller'
stop_controllers:
- 'arm_controller'
strictness: 2"

Launch the servo node. This example uses commands from a SpaceNavigator joystick-like device:

roslaunch moveit_servo spacenav_cpp.launch

If you dont have a SpaceNavigator, send commands like this:

rostopic pub -r 100 /servo_server/delta_twist_cmds geometry_msgs/TwistStamped "header: auto
twist:
  linear:
    x: 0.0
    y: 0.01
    z: -0.01
  angular:
    x: 0.0
    y: 0.0
    z: 0.0"

If you see a warning about "close to singularity", try changing the direction of motion.

Running Tests

Run tests from the moveit_servo folder:

catkin run_tests --no-deps --this
CHANGELOG

Changelog for package moveit_servo

1.0.5 (2020-07-08)

  • [maint] Minor moveit_servo header cleanup (#2173)
  • [maint] Move and rename to moveit_ros/moveit_servo (#2165)
  • [maint] Changes before porting to ROS2 (#2151)
    • throttle warning logs
    • ROS1 Basic improvements and changes
    • Fixes to drift dimensions, singularity velocity scaling
    • tf name changes, const fixes, slight logic changes
    • Move ROS_LOG_THROTTLE_PERIOD to cpp files
    • Track staleness of joint and twist seperately
    • Ensure joint_trajectory output is always populated with something, even when no jog
    • Fix joint trajectory redundant points for gazebo pub
    • Fix crazy joint jog from bad Eigen init
    • Fix variable type in addJointIncrements()
    • Initialize last sent command in constructor
    • More explicit joint_jog_cmdand twist_stamped_cmdnames
    • Add comment clarying transform calculation / use
  • [fix] Fix access past end of array bug (#2155)
  • [maint] Remove duplicate line (#2154)
  • [maint] pragma once in jog_arm.h (#2152)
  • [feature] Simplify communication between threads (#2103)
    • get latest joint state c++ api
    • throttle warning logs
    • publish from jog calcs timer, removing redundant timer and internal messaging to main timer
    • outgoing message as pool allocated shared pointer for zero copy
    • replace jog_arm shared variables with ros pub/sub
    • use built in zero copy message passing instead of spsc_queues
    • use ros timers instead of threads in jog_arm
  • [feature] Added throttle to jogarm accel limit warning (#2141)
  • [feature] Time-based collision avoidance (#2100)
  • [fix] Fix crash on empty jog msgs (#2094)
  • [feature] Jog arm dimensions (#1724)
  • [maint] Clang-tidy fixes (#2050)
  • [feature] Keep updating joints, even while waiting for a valid command (#2027)
  • [fix] Fix param logic bug for self- and scene-collision proximity thresholds (#2022)
  • [feature] Split collision proximity threshold (#2008)
    • separate proximity threshold values for self-collisions and scene collisions
    • increase default value of scene collision proximity threshold
    • deprecate old parameters
  • [fix] Fix valid command flags (#2013)
    • Rename the \'zero command flag\' variables for readability
    • Reset flags when incoming commands timeout
    • Remove debug line, clang format
  • [maint] Use default move constructor + assignment operators for MoveItCpp. (#2004)
  • [fix] Fix low-pass filter initialization (#1982)
    • Pause/stop JogArm threads using shared atomic bool variables
    • Add pause/unpause flags for jog thread
    • Verify valid joints by filtering for active joint models only
    • Remove redundant joint state increments
    • Wait for initial jog commands in main loop
  • [fix] Remove duplicate collision check in JogArm (#1986)
  • [feature] Add a binary collision check (#1978)
  • [feature] Publish more detailed warnings (#1915)
  • [feature] Use wait_for_service() to fix flaky tests (#1946)
  • [maint] Fix versioning (#1948)
  • [feature] SRDF velocity and acceleration limit enforcement (#1863)
  • [maint] Replace namespaces robot_state and robot_model with moveit::core (#1924)
  • [fix] JogArm C++ API fixes (#1911)
  • [feature] A ROS service to enable task redundancy (#1855)
  • [fix] Fix segfault with uninitialized JogArm thread (#1882)
  • [feature] Add warnings to moveit_jog_arm low pass filter (#1872)
  • [maint] Use CMAKE_CXX_STANDARD to enforce c++14 for portability (#1607)
  • [fix] Fix initial end effector transform jump (#1871)
  • [feature] Rework the halt msg functionality (#1868)
  • [fix] Various small fixes (#1859)
  • [maint] Improve formatting in comments
  • [fix] Prevent a crash at velocity limit (#1837)
  • [feature] Remove scale/joint parameter (#1838)
  • [feature] Pass planning scene monitor into cpp interface (#1849)
  • [maint] Move attribution below license file, standardize with MoveIt (#1847)
  • [maint] Reduce console output warnings (#1845)
  • [fix] Fix command frame transform computation (#1842)
  • [maint] Fix dependencies + catkin_lint issues
  • [feature] Update link transforms before calling checkCollision on robot state in jog_arm (#1825)
  • [feature] Add atomic bool flags for terminating JogArm threads gracefully (#1816)
  • [feature] Get transforms from RobotState instead of TF (#1803)
  • [feature] Add a C++ API (#1763)
  • [maint] Fix unused parameter warnings (#1773)
  • [maint] Update license formatting (#1764)
  • [maint] Unify jog_arm package to be C++14 (#1762)
  • [fix] Fix jog_arm segfault (#1692)
  • [fix] Fix double mutex unlock (#1672)
  • [maint] Rename jog_arm->moveit_jog_arm (#1663)
  • [feature] Do not wait for command msg to start spinning (#1603)
  • [maint] Update jog_arm README with rviz config (#1614)
  • [maint] Switch from include guards to pragma once (#1615)
  • [maint] Separate moveit_experimental packages (#1606)
  • [feature] Use UR5 example (#1605)
  • [feature] Sudden stop for critical issues, filtered deceleration otherwise (#1468)
  • [feature] Change 2nd order Butterworth low pass filter to 1st order (#1483)
  • [maint] Remove ! from MoveIt name (#1590)
  • [feature] JogArm: Remove dependency on move_group node (#1569)
  • [fix] Fix jog arm CI integration test (#1466)
  • [feature] A jogging PR for Melodic. (#1360)
    • Allow for joints in the msg that are not part of the MoveGroup.
    • Switching to the Panda robot model for tests.
    • Blacklist the test as I can\'t get it to pass Travis (fine locally).
    • Throttling all warnings. Fix build warning re. unit vs int comparison.
    • Continue to publish commands even if stationary
    • Scale for \'unitless\' commands is not tied to publish_period.
    • New function name for checkIfJointsWithinBounds()
    • Configure the number of msgs to publish when stationary.
    • Run jog_calcs at the same rate as the publishing thread.
    • Better comments in config file, add spacenav_node dependency
    • Add spacenav_node to CMakeLists.
  • Contributors: AdamPettinger, AndyZe, Ayush Garg, Dale Koenig, Dave Coleman, Jonathan Binney, Paul Verhoeckx, Henning Kayser, Jafar Abdi, John Stechschulte, Mike Lautman, Robert Haschke, SansoneG, jschleicher, Tyler Weaver, rfeistenauer

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged moveit_servo at answers.ros.org