Moveit!使用注意事项

11 篇文章 0 订阅
在Rviz中的使用
  1. 创建自己的urdf模型
  2. 使用moveit助手创建配置文件。
  3. roslaunch moveit_demo move_group.launch
  4. roslaunch moveit_demo moveit_rviz.launch
  5. 如果以上launch启动不了,提示信息为缺失文件是,可以拷贝过来。
  6. Fixed Frame 输入: arm_base
  7. Displays 下面的add按钮可以添加“MotionPlanning”,添加之后在Planning里面指定Start State 和 Goal State 。然后就可以Plan和Execute了


附件为diego大神 diego1 plus 模型的机械臂部分。



万一所有的事情并没有按照预期进行的话,就需要用户进行debug了。这里有一些有用的提示,来告诉我们当错误出现时如何进行修复。

  • 机器人不动: 如果机器人的关节限制不合适的话,机器人是不会动的。检查机器人的URDF文件,确保每个关节有一个可移动的范围值。检查并确保最大关节值比最小关节值大。
  • 当我定义软限制时机器人不移动: 如果在机器人的URDF文件中定义软限制,这些限制都会被MoveIt!所使用,所以一定要确保它们是可用的。
  • 运动规划没能正确产生:检查关节配置中有没有两部分产生了自冲突。尤其是你在URDF中添加了新的部分但是还没有用MoveIt! Setup Assistant进行配置时。如果有机器人部件变红,则是他们产生了冲突。运行MoveIt! Setup Assistant来为配置整个机器人以确保碰撞检测。
  • GUI接口不能正确工作:6个或者更多自由度的机器人能够在Rviz中很好地运行。少于6个自由度的机器人是比较难通过这个插件进行使用的。
  • 动作规划到碰撞区域去了:MoveIt!用一个离散值来检查每一个运动规划片段,如果这个离散值太大的话,运动片段就不能被合适的检查,就有可能产生冲突。这个值在ompl_planning.yaml文件中的longest_valid_segment参数来配置。如果使用Rviz,请确保你在规划之前已经按下了Publish Planning Scene按钮。

IK不能正常运行的主要问题是位姿没有指定正确!!!!(Solution found but controller failed during execution)

[ INFO] [1510693940.160161651]: Planning request received for MoveGroup action. Forwarding to planning pipeline.
[ERROR] [1510693940.160435658]: Found empty JointState message
[ERROR] [1510693940.160521092]: Found empty JointState message
[ERROR] [1510693940.160867626]: Found empty JointState message
[ERROR] [1510693940.161946586]: Found empty JointState message
[ INFO] [1510693940.163882295]: No optimization objective specified, defaulting to PathLengthOptimizationObjective
[ INFO] [1510693940.164021761]: Planner configuration 'manipulator[RRTConnectkConfigDefault]' will use planner 'geometric::RRTConnect'. Additional configuration parameters will be set when the planner is constructed.
[ INFO] [1510693940.165740395]: manipulator[RRTConnectkConfigDefault]: Starting planning with 1 states already in datastructure
[ INFO] [1510693940.165801366]: manipulator[RRTConnectkConfigDefault]: Starting planning with 1 states already in datastructure
[ INFO] [1510693940.165919486]: manipulator[RRTConnectkConfigDefault]: Starting planning with 1 states already in datastructure
[ INFO] [1510693940.165986591]: manipulator[RRTConnectkConfigDefault]: Starting planning with 1 states already in datastructure
[ERROR] [1510693941.172900052]: manipulator[RRTConnectkConfigDefault]: Unable to sample any valid states for goal tree
[ INFO] [1510693941.172966059]: manipulator[RRTConnectkConfigDefault]: Created 1 states (1 start + 0 goal)
[ERROR] [1510693941.173111390]: manipulator[RRTConnectkConfigDefault]: Unable to sample any valid states for goal tree
[ERROR] [1510693941.173194763]: manipulator[RRTConnectkConfigDefault]: Unable to sample any valid states for goal tree
[ INFO] [1510693941.173277033]: manipulator[RRTConnectkConfigDefault]: Created 1 states (1 start + 0 goal)
[ERROR] [1510693941.173641889]: manipulator[RRTConnectkConfigDefault]: Unable to sample any valid states for goal tree
[ INFO] [1510693941.173697575]: manipulator[RRTConnectkConfigDefault]: Created 1 states (1 start + 0 goal)
[ INFO] [1510693941.173770942]: manipulator[RRTConnectkConfigDefault]: Created 1 states (1 start + 0 goal)
[ WARN] [1510693941.173893245]: ParallelPlan::solve(): Unable to find solution by any of the threads in 1.008947 seconds
[ INFO] [1510693942.177730249]: Unable to solve the planning problem
[ WARN] [1510693942.178190857]: Fail: ABORTED: No motion plan found. No execution attempted.
[ INFO] [1510693942.180097650]: Received new trajectory execution service request...
[ WARN] [1510693942.180181189]: The trajectory to execute is empty

Figured this out. Turns out, [0,1,0,0] is a valid quaternion, but doesn't have the required precision necessary for TRAC-IK to return a valid IK. Instead, I'd recommend using ROS's tf.transformations method to construct the quaternion for your target pose.


  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值