Skip to content

littlebot_gazebo_EN

Nestor D. Pereira Neto edited this page Dec 16, 2019 · 1 revision

littlebot_gazebo pt-BR

inglês

No pacote littlebot_gazebo estão os arquivos responsáveis por lanar o modelo do robô e do mundo no gazebo.

A estrutura de diretórios do pacote littlebot_gazebo é apresentada abaixo:

littlebot_gazebo/
├── launch/
|   ├── gazebo.launch
|   └── littlebot_world.launch
├── world/
|   └── basic.world
├── CMakeLists.txt
└── package.xml

littlebot_world.launch

Arquivo de configuração para o mundo ultilizado na simulação do littlebot

gazebo.launch

Launch file responsável por iniciar a simulação detales do arquivo pode ser visto abaixo:

  <arg name="paused"        default="false"/>
  <arg name="use_sim_time"  default="true"/>
  <arg name="gui"           default="true"/>
  <arg name="headless"      default="false"/>
  <arg name="debug"         default="false"/>
  <arg name="model"         default="$(find littlebot_description)/urdf/littlebot.xacro"/>

Nas primeras linhas do código são passados valores para argumentos que serão ultilizados pelos nós que serão iniciados. Os argumentos podem receber valores diferente no memento em que o launch é chamado pelo terminal, por exemplo:

roslaunch littlebot_gazebo gazebo.launch paused:=true
  <include file="$(find gazebo_ros)/launch/empty_world.launch">
    <arg name="world_name"    value="$(find littlebot_gazebo)/worlds/basic.world"/>
    <arg name="debug"         value="$(arg debug)" />
    <arg name="gui"           value="$(arg gui)" />
    <arg name="paused"        value="$(arg paused)"/>
    <arg name="use_sim_time"  value="$(arg use_sim_time)"/>
    <arg name="headless"      value="$(arg headless)"/>
  </include>

No código acima o mundo é lançado à simulação.

  <param name="robot_description" command="$(find xacro)/xacro $(arg model)"/>

Nesta linha é carregado o modelo URDF do robô no servidor de parâmetros, assim o modelo pode ser acessado por todo o ROS, incluindo o Rviz e qualquer outro nó que preciso do modelo para funcionar corretamente

  <node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model" respawn="false" output="screen"
    args="-z 
          1.0 
          -unpause 
          -urdf 
          -model / 
          -param robot_description"/>

Lança o modelo do robô, que já se encontra no servidor de parâmeros, para a simulação.

  <include file="$(find littlebot_control)/launch/littlebot_control.launch"/>

Chama o launch file responsável pelo controlador da cinemática diferencial do littlebot.