Quantcast
Channel: ROS Answers: Open Source Q&A Forum - RSS feed
Viewing all articles
Browse latest Browse all 1441

moveit getJacobian

$
0
0
Hi! I had a problem with moveit's computeVariableVelocity, which I tracked down to a weird Jacobian matrix in my model. The robot has X, Y and Z prismatic joints, then a Z revolute. But with the joint-states all zeroed out, I'm getting a jacobian 1.304 0.31889 0.41454 0 -0.03 0.97173 -0.06256 0.575 0.19219 0.23349 2.48029 0 0 0 0 0 0 0 0 0 0 0 0 1 which looks very wrong in a bunch of ways (not least, 1m of Z joint movement turns into 2.4m of worldspace Z!). Only the final revolute joint looks right. Stepping into getJacobian, things seem to go wrong around line 1161: joint_transform = reference_transform * getGlobalLinkTransform(link); joint_axis = joint_transform * static_cast(pjm)->getAxis(); When I hit this line, getGlobalLinkTransform returns a valid matrix that includes translation. There's nothing in reference transform to cancel this out, so prismatic axis gets rotated *and translated*, and joint_axis ends up totally wonky. Is there something wrong with my RobotModel here? Am I misunderstandingt the Jacobian?

Viewing all articles
Browse latest Browse all 1441

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>