Weight for Pose Tolerances - inverseKinematics
7 次查看(过去 30 天)
显示 更早的评论
I need clarification on what exactly the weights parameter does in the call to inverseKinematics. The following is the documentation, but it is not clear to me:
"Weight for pose tolerances, specified as a six-element vector. The first three elements correspond to the weights on the error in orientation for the desired pose. The last three elements correspond to the weights on the error in xyz position for the desired pose."
What does pose tolerance mean, and if I assign a weights, say, [0, 1, 1, 0, 1, 1, 0] what does it do for me?
2 个评论
回答(1 个)
Karsh Tharyani
2024-5-23
编辑:Karsh Tharyani
2024-5-23
The inverse kinematics problem is formulated as a non-linear program in the Robotics Systems Toolbox. The objective function (to be minimized with argmin joint positions) is a weighted sum of square of errors between the end-effector pose (a weight is on each of the 6 degrees of freedom associated with a 3D pose) given joint positions and the desired end-effector pose.
When you specify a zero value for any of the weights, the error function ignores the cost/error in that dimension of the pose. For example, if it doesn't mattter to you that the solved joint configuration should result in an end-effector pose which matches the Z coordinate of the desired end-effector pose set the weights to [1,1,1,1,1,0].
The first three values of the weights are derived from an axis-angle representation of orientation. You can set those weights accordingly if you also want to ignore orientations in a particular plane, then.
I hope that helps!
Karsh
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Robotics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!