diffbot_description package from diffbot repodiffbot_base diffbot_bringup diffbot_control diffbot_description diffbot_gazebo diffbot_mbf diffbot_msgs diffbot_navigation diffbot_robot diffbot_slam |
|
Package Summary
Tags | No category tags. |
Version | 1.1.0 |
License | BSDv3 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-mobile-robots/diffbot.git |
VCS Type | git |
VCS Version | noetic-devel |
Last Updated | 2024-04-02 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Franz Pucher
Authors
diffbot_description
Version controlled source is managed in this fork: fjp/mobile_robot_description (diffbot branch)
mobile_robot_description
ROS Package with a modular structure to create mobile robots with differential drive configuration. The purpose of this package is to provide xacro modules to make it easier to build the URDF description file of your differential robot. To active this purpose, this package has some modules that are inside the file common_macro.urdf.xacro that can be parametrized using YAML files, making it easier, fast, and more flexible to create your robot model.
Package Organization
This project has the following folder structure.
-
config: Folder to place the config files with the parameters of the parts of the robot and also some config files to the RVIZ.
- sub-folder: The config files to a specific project should be placed in a sub-folder in order to make it possible to have different models in the same project.
- launch: Folder with the launch files for the robots.
-
meshes: Folder to place the mesh files for the links of the robot. These meshes files will be used only as visual. The collision of the links is set as basic shapes to reduce the computational cost as the Gazebo tutorial suggests.
- sub-folder: The specific mesh files of each project should be placed in the sub-folder with the name of the project.
- rviz: Folder with the RVIZ configuration for the robot.
-
urdf: Folder with the URDF and xacro files.
- include: Folder with the common module files, similar to the Libs.
Installation
To install this package, just clone it inside your ROS workspace, running:
$ git clone https://github.com/pxalcantara/mobile_robot_description.git
Usage
The basic modules of this package are inside the file common_macro.urdf.xacro that is at urdf/include folder as described above. This file work as a library and you can add it to your robot description like this:
<xacro:include filename="$(find ${package_name})/urdf/include/common_macros.urdf.xacro" />
⚠️ Note that in the command above, the package_name
is set as a variable so to use this command you must have been set the package_name variable with the name of your project.
⚠️ IMPORTANT! Before using the modules of the common_macro files, you MUST set a xacro property package_name
with the name of your project and the xacro property robot_name
with the name that you choose for your robot. This name should be the same as the folder where you organize the config and mesh files. It can be seen in the mobile_robot, quimera_robot and diffbot. In case of change the name of the package, as it is a template repository, the value of this variable MUST be updated with the name that you choose. Setting this property globally on the robot file makes the path for the config and mesh files correct, because it is made relatively.
In the common_macro.urdf.xacro, there is the xacro modules:
- Color properties: The color reference that appears on RVIZ.
- Basic shape inertia:
-
Base link: A macro to add a base link that can be parametrized using YAML file. The
collision
of this link has a box shape and thevisual
can have a basic shape or use a mesh. -
Wheel: A macro to add the wheel link, joint and transmission. This macro can be parametrized using YAML file. The
collision
has the cylinder shape and thevisual
can have a basic cylinder shape or a mesh. -
Caster_wheel: A macro to add a caster wheel link and joints. The caster_wheel only has passive joints, there is no
transmission
tag. This macro can be parametrized using YAML file. Thecollision
has basic shapes and thevisual
can have a basic shapes or meshes.
For more detailed information about the xacro modules or about the usage, see the Wiki
Contributing
If you have any comments, doubts, or suggestions, I’ll be more than happy to know them, so, feel free to open an issue or a Pull Request with your collaboration.
Changelog for package diffbot_description
1.1.0 (2022-03-28)
- fix deprecated warning using load_yaml (#53) Using xacro.load_yaml instead of just load_yaml
- Contributors: Franz Pucher
1.0.0 (2021-08-13)
- make use of non-gpu laser by default update min/max range to fix ghost objects (#27)
- update diffbot_description: add gpu arg for laser xacro macro (#27)
- fix diffbot_description laser link name
- update camera sensor parameters
- fix scale if statement in motor xacro macro
- update motor.yaml comment
- refactor diffbot_description
- move stl files
- use separate robot.gazebo.xacro
- add addon xacro macro for addon components
- simplify wheel and motor macros: remove top level name from yaml files
- move caster macro to its own xacro file
- add camera sensor macro
- add imu sensor macro
- refactor gpu laser macro
- update license to BSDv3
- Contributors: Franz Pucher
0.0.2 (2021-04-30)
0.0.1 (2020-12-22)
- Update README.md
- add z_offset to diffbot base_footprint description for moving on the ground in rviz
- add colors for gazebo
- update description configs: caster dz and increase mass to avoid slip
- include gpu_laser - rplidar a2 for diffbot
- change z offset in blender for rplidar stl
- add rplidar a2 mesh
- remove deprecated diffbot_description
- Update version, mail and license
- move packages from ros/src to repository toplevel folder
- Contributors: Franz Pucher
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
joint_state_publisher | |
robot_state_publisher | |
rviz | |
catkin |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
diffbot_gazebo | |
diffbot_robot |