Artikelverzeichnis
1. Die ersten beiden Sätze
<?xml version="1.0"?>
<robot name="mbot" xmlns:xacro="http://www.ros.org/wiki/xacro">
Die zweite Zeile oben zeigt an, dass es sich um eine Deklaration der xacro-Datei handelt, mit der dem System mitgeteilt wird, dass die Datei im xacro-Dateiformat vorliegt
2. Konstante Definition
Definitionsformat:
<xacro:property name="常量名称" value="常量值">
Anrufformat
${常量名字/带有常量名字的计算}
3. Funktionsdefinition
<xacro:macro name="函数名称" param=“参数1名称 参数2名称 ...”>
函数内容
</xacro:macro>
noetic version call format
<xacro:函数1名称 参数1值 参数2值 .../>
4. Datei enthält
<xacro:include filename="$(find package_name)/xacoro文件路径/xacro文件名.xacro" />
Das obige Paket sollte durch den Namen des Funktionspakets ersetzt werden, in dem sich die xacro-Datei befindet, und der Dateipfad sollte durch den Pfad ersetzt werden, in dem Sie die xacro-Datei abgelegt haben (berechnet aus der nächsten Ebene des Funktionspakets), und dann Der Dateiname.
Zum Beispiel die xacro-Datei boot_xacro.xacro Im Ordner urdf unter dem Funktionspaket boot_xacro:
<xacro:include filename="$(find boat_xacro)/urdf/boat_base.xacro" />
5. Starten Sie die Datei (mit dem xacro-Datei-Parser).
<launch>
<arg name="model" default="$(find xacro)/xacro --inorder '$(find package_name)/xacro文件路径/xacro文件名.xacro'" />
<arg name="gui" default="true" />
<param name="robot_description" command="$(arg model)" />
<!-- 设置GUI参数,显示关节控制插件 -->
<param name="use_gui" value="$(arg gui)"/>
<!-- 运行joint_state_publisher节点,发布机器人的关节状态 -->
<node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" />
<!-- 运行robot_state_publisher节点,发布tf -->
<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" />
<!-- 运行rviz可视化界面 -->
<node name="rviz" pkg="rviz" type="rviz" args="-d $(find packgae_name)/config/需要保存rviz文件的名字.rviz" required="true" />
</launch>
Was geändert werden muss, ist der Name des Startfunktionspakets, der Pfad der xacro-Datei, der Name der xacro-Datei und der Pfad der rviz-Datei, die später gespeichert werden muss.
Die oben erwähnte Methode wird häufiger zum Kompilieren mit dem xacro-Datei-Compiler verwendet. Eine andere Methode besteht darin, sie in eine urdf-Datei zu konvertieren und dann zu kompilieren. Da sie nicht häufig verwendet wird, wird sie nicht erneut geschrieben.