0
点赞
收藏
分享

微信扫一扫

5,xacro基本语法

青鸾惊鸿 2022-04-26 阅读 63
linux

xaro、urdf与rviz

前言

本文主要是跟着audolabor学习ROS笔记,多为操作性质,并从另一种角度对实现的顺序进行调整,想要多学习,可以参考autolabor教程

motivation

xacro可以封装urdf定义,在机器人的构型中,如果直接编写urdf文件有两个不便利的地方

  1. 没有变量定义,在计算一些数的时候需要重复计算
  2. 没有函数,机器人很多零件都是高度一致的,但是urdf中,只能一个零件编写一次复杂的代码

而ros提供xacro,xacro是一种编程方法,可以使用属性和宏定义简写urdf文件。

xacro语法

变量

<!--定义-->
<xacro:property name="varible" value="d123" />
<!--调用-->
<link name="${varible}" />

此时link的name自动替换成d123

函数

<!--定义-->
<xacro:macro name="func" params="v1 v2">
   <!--代码块-->
</xacro:macro>
<!--调用-->
<xacro:func v1="" v2="" />

使用宏定义的方式,可以使用一行代码,带入参数,就可以完成代码块的编写

使用方法

1, 将xacro生成urdf文件,在终端输入

会生成text.urdf文件
2,和rviz混合使用,在输入参数时,改为以下代码

 <param name="robot_description" command="$(find xacro)/xacro $(find demo01_urdf_helloworld)/urdf/xacro/my_base.urdf.xacro" />
举报

相关推荐

0 条评论