zhaojieming1990 2021-05-18 13:24 采纳率: 0%
浏览 257

ROS noetic moveit! 逆运动学碰到的问题

本人在应用胡春旭《ROS机器人开发实践》的10.9.2工作空间规划的moveit_ik_demo.py代码时发现如下问题:

Traceback (most recent call last):
  File "/home/ros-noetic/moveit_test/src/marm_planning/scripts/moveit_ik_demo.py", line 87, in <module>
    MoveItIkDemo()
  File "/home/ros-noetic/moveit_test/src/marm_planning/scripts/moveit_ik_demo.py", line 65, in __init__
    arm.execute(traj)
  File "/opt/ros/noetic/lib/python3/dist-packages/moveit_commander/move_group.py", line 671, in execute
    return self._g.execute(conversions.msg_to_string(plan_msg))
  File "/opt/ros/noetic/lib/python3/dist-packages/moveit_commander/conversions.py", line 53, in msg_to_string
    msg.serialize(buf)
AttributeError: 'tuple' object has no attribute 'serialize'

问题出在:

# 规划运动路径

traj = arm.plan()

# 按照规划的运动路径控制机械臂运动

arm.execute(traj)

rospy.sleep(1)

traj为元组,

    def execute(self, plan_msg, wait=True):
        """Execute a previously planned path"""
        if wait:
            return self._g.execute(conversions.msg_to_string(plan_msg))
        else:
            return self._g.async_execute(conversions.msg_to_string(plan_msg))
def msg_to_string(msg):

    buf = StringIO()

    msg.serialize(buf)

    return buf.getvalue()

所以爆出如下错误:

AttributeError: 'tuple' object has no attribute 'serialize'

请问,哪位高人告知这该如何解决?使得代码正确可靠运行。

  • 写回答

2条回答 默认 最新

  • General 5219 2022-02-21 15:35
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥15 关于移动机器人坐标计算
  • ¥30 模拟电路 logisim
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题