使用xacro优化URDF的问题解决

在编写xacro文件时候遇到的问题总结:

一、XML parsing error: mismatched tag: line **, column *

提示某一行有问题,一定要注意检查标签格式是否正确

当其指向末行</robot>时,要检查前文中某行标签是否完整,比如我出错是由于引用宏时,末尾忘记加上结束标记   /  

<xacro:base >    ❌

<xacro:base />   ✔

因此要养成好习惯,运行前多检查格式

二、Invalid <param> tag: Cannot load command parameter [robot_description]: command [['/opt/ros/noetic/lib/xacro/xacro', '--inorder', 

或许关键点不在--inorder,看看这行红字上方是否有标出其他的错误

三、Failed to build tree: parent link [base_link] of joint [base_left_motor_joint] not found.

这是因为我将base_link所在模块进行了宏定义,但是引用格式出错,导致base_link不存在

notic版本引用宏定义时,要在前面加上<xacro:>,即:

<xacro:neme param1="value1" param2="value2".../>

该条参考:ROS 20.04版本(noetic 版本 ) ROS的xacro模型优化问题_丘 WH的博客-CSDN博客

四、Unable to parse component [-1*0.12] to a double (while parsing a vector value)

调用常量定义和数学公式的时候,一定要注意格式:

<origin xyz="0 0 ${number}*${plate_height}" rpy="0 0 0" />   ❌

<origin xyz="0 0 ${number*plate_height}" rpy="0 0 0" />      ✔

即便是几个常量的计算,也要写在一个{ }里。

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值