moveit轨迹规划时怎么使另外添加的TF坐标系到达目标位置?
-
如果想自己广播的tool_link触碰物体,而不是最后一个末端法兰触碰物体,请问可以用哪些方法?
相当于在moveit配置时,没有描述机械臂末端。还有,是否只能有一个末端?比如我末端有2个位置可以到达目标位置。
-
@RongJC 针对第一个到达位置问题,有两个解决方案
1.到达问题解决方案
方法一
在urdf文件中添加一个虚拟的tool_link关节,然后修改moveit运动学规划链,把这个关节作为末端,这种虽然方便,但是相当于把位置写死了,不方便动态的tool_link规划
方法二
第二种方法就是自己推算下当toollink在目标点target上时flan的位姿,因为你知道
- 末端法兰和tool_link之间的关系:T_flan->toollink
- 最终目标点在机械臂坐标系下坐标:T_base->target
当toollink在目标点target上时
T_base->flan=T_base->toollink*T_flan->toollink的逆
将T_base->flan给到moveit进行规划即可。
2.是否只能有一个末端问题
因为moveit的规划是链式的,所以针对一个规划链,末端是只能有一个,你可以自己新建多个规划链,也可以用方法二的方案,多少个末端任你选。
-
@小鱼 感谢,对于多末端工具,方法二是可行的。