MoveIt教程[21]:Kinematics Configuration
作者:互联网
在本节中,将研究为机器人配置运动学的一些参数。
一.The kinematics.yaml file
MoveIt Setup Assistant生成的kinematics.yam文件是MoveIt的主要运动学配置文件,可以在panda_moveit_config GitHub项目中看到Panda机器人的完整示例文件:
panda_arm:
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
kinematics_solver_search_resolution: 0.005
kinematics_solver_timeout: 0.05
kinematics_solver_attempts: 3
1.Parameters
可用的参数集包括:
[1]kinematics_solver:运动学求解器插件的名称。注意,它必须与插件描述文件中指定的名字相匹配。比如example_kinematics/ExampleKinematicsPlugin。
[2]kinematics_solver_search_resolution:这指定了求解器可能用于在冗余空间中搜索逆运动学的分辨率,例如使用指定为冗余关节的7 DOF臂的一个关节。
[3]kinematics_solver_timeout:这是为逆运动学求解器可能执行的每个内部迭代指定的默认超时[以秒为单位]。典型的迭代[例如,对于数值求解程序]包括从种子状态随机重新启动,然后是一个解决方案周期[适用此超时]。求解器可能尝试多次重新启动—默认的重新启动次数由下面的kinematics_solver_attempts参数定义。
[4]kinematics_solver_attempts:将在求解程序上执行的随机重新启动次数。重新启动后的每个解决方案周期都有一个由上面的kinematics_solver_timeout参数定义的超时。通常,最好将此超时设置为较低,并在单个解决方案周期中快速失败。
2.The KDL Kinematics Plugin
KDL运动学插件包含了Orocos KDL包提供的数值逆运动学求解器:
[1]这是MoveIt目前使用的默认运动学插件。
[2]它遵守URDF中指定的联合限制[如果URDF中指定了安全限制,则将使用它们]。
[3]KDL运动学插件目前只适用于串行链。
3.The LMA Kinematics Plugin
LMA[Levenberg-Marquardt]运动学插件也包含了Orocos KDL包提供的数值逆运动学求解器。
[1]它遵守URDF中指定的联合限制[如果URDF中指定了安全限制,则将使用它们]。
[2]LMA运动学插件目前只适用于串行链。
[3]用法:kinematics_solver: lma_kinematics_plugin/LMAKinematicsPlugin
二.Position Only IK
位置只有IK可以很容易地启用[只有当使用KDL运动学插件]通过添加following line到kinematics.yaml文件[针对想解决IK的特定组]:
position_only_ik: True
参考文献:
[1]Kinematics Configuration:http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/kinematics_configuration/kinematics_configuration_tutorial.html
标签:KDL,插件,21,solver,求解,运动学,kinematics,Kinematics,Configuration 来源: https://blog.csdn.net/shengshengwang/article/details/104099472