Comments (9)
Thanks for reporting this! Note that I've just added the allow_nonzero_velocity_at_trajectory_end: true
to the MoveIt Panda config, so that part at least should be okay going forward.
from moveit2_tutorials.
I think I was able to reproduce this issue, have you recently checked out the MoveIt 2 tutorials?
As shown in moveit/moveit_task_constructor#540, I suspect there might have been some recent breaking changes in the moveit_task_constructor
repo.
On your system could you:
- Go to the
src/moveit_task_constructor
folder in your repo - Do
git checkout ros2-old
- Rebuild your workspace
- Try again
And let us know if that resolves the issue?
from moveit2_tutorials.
And a different question -- when I run this demo on Rolling, the only "green" object that shows up is the cylinder, but not the larger cuboid at the bottom. Was this modification something you made, or are we running different versions of the tutorial? Wondering if this has any impact on the collision checks.
from moveit2_tutorials.
Hi @sea-bass , I have tested it out. Still the same issue. With regards to the extra shape I took a screenshot from another demo (moveit_task_contructor pick_place demo) but the issue is the same.
Based on moveit/moveit_task_constructor#540 I would say that the issue is based on ExecuteTaskSolutionCapability plugin. More specifically it seems like after the gripper is opened, ExecuteTaskSolutionCapability plugin is causing movegroup to not get the latest joint states of the gripper or hand and hence detects a false collision. Like I said if i make the initial joint position of the gripper open, the task execution is successful. You can replicate this by changing changing the contents of pand_hand.ros2_control.xacro to the following:
<?xml version="1.0"?>
<robot xmlns:xacro="http://www.ros.org/wiki/xacro">
<xacro:macro name="panda_hand_ros2_control" params="name prefix">
<ros2_control name="${name}" type="system">
<hardware>
<plugin>mock_components/GenericSystem</plugin>
</hardware>
<joint name="${prefix}panda_finger_joint1">
<command_interface name="position" />
<state_interface name="position">
<param name="initial_value">0.035</param>
</state_interface>
<state_interface name="velocity">
<param name="initial_value">0.0</param>
</state_interface>
</joint>
<joint name="${prefix}panda_finger_joint2">
<param name="mimic">${prefix}panda_finger_joint1</param>
<param name="multiplier">1</param>
<command_interface name="position" />
<state_interface name="position">
<param name="initial_value">0.035</param>
</state_interface>
<state_interface name="velocity">
<param name="initial_value">0.0</param>
</state_interface>
</joint>
</ros2_control>
</xacro:macro>
</robot>
This will start the gripper at "open state" and from that point on no matter what happen to the state of the gripper, movegroup sees it as this position/state.
I think @henningkayser should be able to tell us whats going on here.
from moveit2_tutorials.
This might be related to moveit/moveit#3538, which I strongly recommended for porting to ROS2.
from moveit2_tutorials.
I've just added the
allow_nonzero_velocity_at_trajectory_end: true
Nonzero velocities at the end of the trajectory are useful for servoing, but not for MTC: you want the robot to stop at a stage's end state. Otherwise end and new start will have different velocity vectors resulting in high jerk!
from moveit2_tutorials.
Nonzero velocities at the end of the trajectory are useful for servoing, but not for MTC: you want the robot to stop at a stage's end state. Otherwise end and new start will have different velocity vectors resulting in high jerk!
Yep, I had to add this in unrelated to this PR to address a Servo issue.
Unsure why this pick and place demo is trying to set nonzero end velocities though, as I agree all these planned motions should stop at rest.
from moveit2_tutorials.
@sea-bass @rhaschke so we dealing with two issues here:
- non zero velocitys at end of trajectory.
- MTC Task execution not getting getting updated planning scene using execution.
from moveit2_tutorials.
Unsure why this pick and place demo is trying to set nonzero end velocities though
Obviously, the time parameterization is broken.
from moveit2_tutorials.
Related Issues (20)
- MOVEIT MoveIt Quickstart in RViz - Robot trail not showing up? HOT 2
- failed running the moveit_resources_panda_moveit_config from demo.launch.py
- Collision object is not published in `moveit_cpp` tutorial HOT 2
- dual-robot built by myself planning succeeds but execution fails HOT 5
- Tutorial fails when instructions followed and CycloneDDS used on Iron
- MotionPlanning plan but do not execute HOT 2
- move_group error. ros2 HOT 3
- i cannot successfully run "ros2 launch moveit2_tutorials motion_planning_pipeline_tutorial.launch.py",The terminal shows file was not found in the share HOT 6
- RViz crashes during MoveIt Quickstart in RViz HOT 2
- ros2 launch moveit2_tutorials motion_planning_python_api_tutorial.launch.py HOT 1
- moveit colcon build fail CMake Error version HOT 1
- Importing moveit.planning or etc. libraries HOT 4
- Something wrong in "Pick and Place with MoveIt Task Constructor" :The class required for this view controller, 'rviz/Orbit', could not be loaded.
- Something wrong in "Pick and Place with MoveIt Task Constructor" : 'rviz/Orbit', could not be loaded. HOT 1
- Humble: MoveIt2 Getting Started Tutorial - colcon build failed(moveit_kinematics) HOT 1
- build fails : plan has no member trajectory it should be "trajectory_" HOT 1
- No IK solution found for round-off values of position and orientation HOT 1
- Issue with move group interface planning to pose-goal with ur10e
- High RAM usage during colcon build HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from moveit2_tutorials.